angular-auth-oidc-client
Version:
Angular Lib for OpenID Connect & OAuth2
28 lines • 3.59 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class ClosestMatchingRouteService {
getConfigIdForClosestMatchingRoute(route, configurations) {
for (const config of configurations) {
const { secureRoutes } = config;
for (const configuredRoute of secureRoutes ?? []) {
if (route.startsWith(configuredRoute)) {
return {
matchingRoute: configuredRoute,
matchingConfig: config,
};
}
}
}
return {
matchingRoute: null,
matchingConfig: null,
};
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ClosestMatchingRouteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ClosestMatchingRouteService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ClosestMatchingRouteService, decorators: [{
type: Injectable,
args: [{ providedIn: 'root' }]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvc2VzdC1tYXRjaGluZy1yb3V0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvaW50ZXJjZXB0b3IvY2xvc2VzdC1tYXRjaGluZy1yb3V0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTywyQkFBMkI7SUFDdEMsa0NBQWtDLENBQ2hDLEtBQWEsRUFDYixjQUFxQztRQUVyQyxLQUFLLE1BQU0sTUFBTSxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxNQUFNLENBQUM7WUFFaEMsS0FBSyxNQUFNLGVBQWUsSUFBSSxZQUFZLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ2pELElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO29CQUN0QyxPQUFPO3dCQUNMLGFBQWEsRUFBRSxlQUFlO3dCQUM5QixjQUFjLEVBQUUsTUFBTTtxQkFDdkIsQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPO1lBQ0wsYUFBYSxFQUFFLElBQUk7WUFDbkIsY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQztJQUNKLENBQUM7OEdBdEJVLDJCQUEyQjtrSEFBM0IsMkJBQTJCLGNBRGQsTUFBTTs7MkZBQ25CLDJCQUEyQjtrQkFEdkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPcGVuSWRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vY29uZmlnL29wZW5pZC1jb25maWd1cmF0aW9uJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBDbG9zZXN0TWF0Y2hpbmdSb3V0ZVNlcnZpY2Uge1xuICBnZXRDb25maWdJZEZvckNsb3Nlc3RNYXRjaGluZ1JvdXRlKFxuICAgIHJvdXRlOiBzdHJpbmcsXG4gICAgY29uZmlndXJhdGlvbnM6IE9wZW5JZENvbmZpZ3VyYXRpb25bXVxuICApOiBDbG9zZXN0TWF0Y2hpbmdSb3V0ZVJlc3VsdCB7XG4gICAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlndXJhdGlvbnMpIHtcbiAgICAgIGNvbnN0IHsgc2VjdXJlUm91dGVzIH0gPSBjb25maWc7XG5cbiAgICAgIGZvciAoY29uc3QgY29uZmlndXJlZFJvdXRlIG9mIHNlY3VyZVJvdXRlcyA/PyBbXSkge1xuICAgICAgICBpZiAocm91dGUuc3RhcnRzV2l0aChjb25maWd1cmVkUm91dGUpKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG1hdGNoaW5nUm91dGU6IGNvbmZpZ3VyZWRSb3V0ZSxcbiAgICAgICAgICAgIG1hdGNoaW5nQ29uZmlnOiBjb25maWcsXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBtYXRjaGluZ1JvdXRlOiBudWxsLFxuICAgICAgbWF0Y2hpbmdDb25maWc6IG51bGwsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENsb3Nlc3RNYXRjaGluZ1JvdXRlUmVzdWx0IHtcbiAgbWF0Y2hpbmdSb3V0ZTogc3RyaW5nIHwgbnVsbDtcbiAgbWF0Y2hpbmdDb25maWc6IE9wZW5JZENvbmZpZ3VyYXRpb24gfCBudWxsO1xufVxuIl19