imng-oidc-client 8.332.2 → 9.13.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,10 +15,10 @@ class OidcMockFacade {
15
15
  waitForAuthenticationLoaded() {
16
16
  return of(true);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcMockFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
19
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcMockFacade, providedIn: 'root' }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcMockFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
19
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcMockFacade, providedIn: 'root' }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcMockFacade, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcMockFacade, decorators: [{
22
22
  type: Injectable,
23
23
  args: [{
24
24
  providedIn: 'root',
@@ -26,11 +26,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImpor
26
26
  }] });
27
27
 
28
28
  class TestingModule {
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
30
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: TestingModule, imports: [CommonModule] }); }
31
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TestingModule, providers: [OidcMockFacade], imports: [CommonModule] }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
30
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: TestingModule, imports: [CommonModule] }); }
31
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TestingModule, providers: [OidcMockFacade], imports: [CommonModule] }); }
32
32
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TestingModule, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TestingModule, decorators: [{
34
34
  type: NgModule,
35
35
  args: [{
36
36
  imports: [CommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"imng-oidc-client-testing.mjs","sources":["../tmp-esm2022/testing/lib/oidc-mock.facade.js","../tmp-esm2022/testing/lib/testing.module.js","../tmp-esm2022/testing/lib/provide-oidc-mock-facade.js","../tmp-esm2022/testing/imng-oidc-client-testing.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable } from '@angular/core';\nimport { of } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class OidcMockFacade {\n constructor() {\n this.loggedIn$ = of(true);\n }\n /**\n * Convenient function to wait for OIDC dependencies to be loaded.\n */\n waitForAuthenticationLoaded() {\n return of(true);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcMockFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcMockFacade, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcMockFacade, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy1tb2NrLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC90ZXN0aW5nL3NyYy9saWIvb2lkYy1tb2NrLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUt0QyxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUtFLGNBQVMsR0FBd0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBTzNDO0lBTkM7O09BRUc7SUFDSSwyQkFBMkI7UUFDaEMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEIsQ0FBQzs4R0FSVSxjQUFjO2tIQUFkLGNBQWMsY0FGYixNQUFNOzsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBPaWRjTW9ja0ZhY2FkZSB7XG5cbiAgbG9nZ2VkSW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gb2YodHJ1ZSk7XG4gIC8qKlxuICAgKiBDb252ZW5pZW50IGZ1bmN0aW9uIHRvIHdhaXQgZm9yIE9JREMgZGVwZW5kZW5jaWVzIHRvIGJlIGxvYWRlZC5cbiAgICovXG4gIHB1YmxpYyB3YWl0Rm9yQXV0aGVudGljYXRpb25Mb2FkZWQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIG9mKHRydWUpO1xuICB9XG59XG4iXX0=","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OidcMockFacade } from './oidc-mock.facade';\nimport * as i0 from \"@angular/core\";\nexport class TestingModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: TestingModule, imports: [CommonModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TestingModule, providers: [OidcMockFacade], imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TestingModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n providers: [OidcMockFacade],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvdGVzdGluZy9zcmMvbGliL3Rlc3RpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLFlBSGQsWUFBWTsrR0FHWCxhQUFhLGFBRmIsQ0FBQyxjQUFjLENBQUMsWUFEakIsWUFBWTs7MkZBR1gsYUFBYTtrQkFKekIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFNBQVMsRUFBRSxDQUFDLGNBQWMsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE9pZGNNb2NrRmFjYWRlIH0gZnJvbSAnLi9vaWRjLW1vY2suZmFjYWRlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW09pZGNNb2NrRmFjYWRlXSxcbn0pXG5leHBvcnQgY2xhc3MgVGVzdGluZ01vZHVsZSB7fVxuIl19","import { OidcFacade } from 'imng-oidc-client';\nimport { OidcMockFacade } from './oidc-mock.facade';\nexport function provideOidcMockFacade() {\n return {\n provide: OidcFacade,\n useValue: new OidcMockFacade(),\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1vaWRjLW1vY2stZmFjYWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3Rlc3Rpbmcvc3JjL2xpYi9wcm92aWRlLW9pZGMtbW9jay1mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLE9BQU87UUFDTCxPQUFPLEVBQUUsVUFBVTtRQUNuQixRQUFRLEVBQUUsSUFBSSxjQUFjLEVBQUU7S0FDL0IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPaWRjRmFjYWRlIH0gZnJvbSAnaW1uZy1vaWRjLWNsaWVudCc7XG5pbXBvcnQgeyBPaWRjTW9ja0ZhY2FkZSB9IGZyb20gJy4vb2lkYy1tb2NrLmZhY2FkZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlT2lkY01vY2tGYWNhZGUoKSB7XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTogT2lkY0ZhY2FkZSxcbiAgICB1c2VWYWx1ZTogbmV3IE9pZGNNb2NrRmFjYWRlKCksXG4gIH07XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1uZy1vaWRjLWNsaWVudC10ZXN0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3Rlc3Rpbmcvc3JjL2ltbmctb2lkYy1jbGllbnQtdGVzdGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;;AAAA;AAIO,MAAM,cAAc,CAAC;AAC5B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC;AACjC;AACA;AACA;AACA;AACA,IAAI,2BAA2B,GAAG;AAClC,QAAQ,OAAO,EAAE,CAAC,IAAI,CAAC;AACvB;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACjL,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACxJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AClBN,MAAM,aAAa,CAAC;AAC3B,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9K,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AACzJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AACtL;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvH,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,YAAY,CAAC;AAC3C,oBAAoB,SAAS,EAAE,CAAC,cAAc,CAAC;AAC/C,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACbN,SAAS,qBAAqB,GAAG;AACxC,IAAI,OAAO;AACX,QAAQ,OAAO,EAAE,UAAU;AAC3B,QAAQ,QAAQ,EAAE,IAAI,cAAc,EAAE;AACtC,KAAK;AACL;;ACPA;AACA;AACA;;;;"}
1
+ {"version":3,"file":"imng-oidc-client-testing.mjs","sources":["../../../../libs/imng-oidc-client/testing/src/lib/oidc-mock.facade.ts","../../../../libs/imng-oidc-client/testing/src/lib/testing.module.ts","../../../../libs/imng-oidc-client/testing/src/lib/provide-oidc-mock-facade.ts","../../../../libs/imng-oidc-client/testing/src/imng-oidc-client-testing.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable } from '@angular/core';\nimport { Observable, of } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OidcMockFacade {\n\n loggedIn$: Observable<boolean> = of(true);\n /**\n * Convenient function to wait for OIDC dependencies to be loaded.\n */\n public waitForAuthenticationLoaded(): Observable<boolean> {\n return of(true);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OidcMockFacade } from './oidc-mock.facade';\n\n@NgModule({\n imports: [CommonModule],\n providers: [OidcMockFacade],\n})\nexport class TestingModule {}\n","import { OidcFacade } from 'imng-oidc-client';\nimport { OidcMockFacade } from './oidc-mock.facade';\n\nexport function provideOidcMockFacade() {\n return {\n provide: OidcFacade,\n useValue: new OidcMockFacade(),\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAAA;MAOa,cAAc,CAAA;AAH3B,IAAA,WAAA,GAAA;AAKE,QAAA,IAAA,CAAA,SAAS,GAAwB,EAAE,CAAC,IAAI,CAAC;AAO1C;AANC;;AAEG;IACI,2BAA2B,GAAA;AAChC,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC;;8GAPN,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA,CAAA;;2FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCEY,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHd,YAAY,CAAA,EAAA,CAAA,CAAA;AAGX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAAA,SAAA,EAFb,CAAC,cAAc,CAAC,YADjB,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAGX,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,SAAS,EAAE,CAAC,cAAc,CAAC;AAC5B,iBAAA;;;SCJe,qBAAqB,GAAA;IACnC,OAAO;AACL,QAAA,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,IAAI,cAAc,EAAE;KAC/B;AACH;;ACRA;;AAEG;;;;"}
@@ -250,10 +250,10 @@ class OidcUserFacade {
250
250
  return this.permissions$.pipe(map((t) => -1 <
251
251
  requiredPermissions.findIndex((f) => -1 < (t?.findIndex((i) => i === f) ?? -1))));
252
252
  }
253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcUserFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
254
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcUserFacade, providedIn: 'root' }); }
253
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcUserFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
254
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcUserFacade, providedIn: 'root' }); }
255
255
  }
256
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcUserFacade, decorators: [{
256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcUserFacade, decorators: [{
257
257
  type: Injectable,
258
258
  args: [{
259
259
  providedIn: 'root',
@@ -426,10 +426,10 @@ class OidcService {
426
426
  localStorage.setItem(StorageKeys.OidcSettings, JSON.stringify(this._userManagerSettings));
427
427
  }
428
428
  }
429
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
430
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcService, providedIn: 'root' }); }
429
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
430
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcService, providedIn: 'root' }); }
431
431
  }
432
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcService, decorators: [{
432
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcService, decorators: [{
433
433
  type: Injectable,
434
434
  args: [{
435
435
  providedIn: 'root',
@@ -550,10 +550,10 @@ class OidcFacade {
550
550
  this.registerEvent(OidcEvent.UserSignedOut, this.addUserSignedOut);
551
551
  this.registerEvent(OidcEvent.UserSessionChanged, this.addUserSessionChanged);
552
552
  }
553
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
554
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcFacade, providedIn: 'root' }); }
553
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
554
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcFacade, providedIn: 'root' }); }
555
555
  }
556
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcFacade, decorators: [{
556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcFacade, decorators: [{
557
557
  type: Injectable,
558
558
  args: [{
559
559
  providedIn: 'root',
@@ -570,8 +570,8 @@ class SupportComponent {
570
570
  value: x[propertyKey], //NOSONAR
571
571
  }))));
572
572
  }
573
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: SupportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
574
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: SupportComponent, isStandalone: false, selector: "imng-support", ngImport: i0, template: `<div class="container pt-5 mt-5">
573
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SupportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
574
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: SupportComponent, isStandalone: false, selector: "imng-support", ngImport: i0, template: `<div class="container pt-5 mt-5">
575
575
  <div class="row h3 text-center">
576
576
  <div class="col-md-12 text-center">OIDC Support</div>
577
577
  </div>
@@ -621,7 +621,7 @@ class SupportComponent {
621
621
  }
622
622
  </div>`, isInline: true, dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
623
623
  }
624
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: SupportComponent, decorators: [{
624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SupportComponent, decorators: [{
625
625
  type: Component,
626
626
  args: [{
627
627
  selector: 'imng-support',
@@ -679,10 +679,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImpor
679
679
  }], ctorParameters: () => [] });
680
680
 
681
681
  class AccessDeniedComponent {
682
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
683
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AccessDeniedComponent, isStandalone: false, selector: "imng-access-denied", ngImport: i0, template: '<div class="p-5 m-5 text-danger">Access denied.</div>', isInline: true }); }
682
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
683
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.8", type: AccessDeniedComponent, isStandalone: false, selector: "imng-access-denied", ngImport: i0, template: '<div class="p-5 m-5 text-danger">Access denied.</div>', isInline: true }); }
684
684
  }
685
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AccessDeniedComponent, decorators: [{
685
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: AccessDeniedComponent, decorators: [{
686
686
  type: Component,
687
687
  args: [{
688
688
  selector: 'imng-access-denied',
@@ -718,10 +718,10 @@ class AuthGuard {
718
718
  canActivateChild() {
719
719
  return this.isLoggedInPipe$;
720
720
  }
721
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
722
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AuthGuard, providedIn: 'root' }); }
721
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: AuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
722
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: AuthGuard, providedIn: 'root' }); }
723
723
  }
724
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AuthGuard, decorators: [{
724
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: AuthGuard, decorators: [{
725
725
  type: Injectable,
726
726
  args: [{
727
727
  providedIn: 'root',
@@ -729,12 +729,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImpor
729
729
  }] });
730
730
 
731
731
  class LogoutSuccessComponent {
732
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: LogoutSuccessComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
733
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: LogoutSuccessComponent, isStandalone: false, selector: "imng-logout-success", ngImport: i0, template:
732
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LogoutSuccessComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
733
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.8", type: LogoutSuccessComponent, isStandalone: false, selector: "imng-logout-success", ngImport: i0, template:
734
734
  // eslint-disable-next-line max-len
735
735
  '<div class="p-5 m-5 text-center">You have successfully logged out.<br/>Please close this browser window to ensure you are completely logged out of the session.</div>', isInline: true }); }
736
736
  }
737
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: LogoutSuccessComponent, decorators: [{
737
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LogoutSuccessComponent, decorators: [{
738
738
  type: Component,
739
739
  args: [{
740
740
  selector: 'imng-logout-success',
@@ -751,11 +751,11 @@ const routes = [
751
751
  { path: 'logout', component: LogoutSuccessComponent },
752
752
  ];
753
753
  class ImngOidcClientRoutingModule {
754
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
755
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] }); }
756
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
754
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
755
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] }); }
756
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
757
757
  }
758
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientRoutingModule, decorators: [{
758
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientRoutingModule, decorators: [{
759
759
  type: NgModule,
760
760
  args: [{
761
761
  imports: [RouterModule.forChild(routes)],
@@ -845,10 +845,10 @@ class OidcEffects {
845
845
  }
846
846
  return user;
847
847
  }
848
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcEffects, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
849
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcEffects, providedIn: 'root' }); }
848
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcEffects, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
849
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcEffects, providedIn: 'root' }); }
850
850
  }
851
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: OidcEffects, decorators: [{
851
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: OidcEffects, decorators: [{
852
852
  type: Injectable,
853
853
  args: [{
854
854
  providedIn: 'root',
@@ -876,10 +876,10 @@ class TokenInterceptorService {
876
876
  }));
877
877
  }));
878
878
  }
879
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TokenInterceptorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
880
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TokenInterceptorService, providedIn: 'root' }); }
879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TokenInterceptorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
880
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TokenInterceptorService, providedIn: 'root' }); }
881
881
  }
882
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TokenInterceptorService, decorators: [{
882
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TokenInterceptorService, decorators: [{
883
883
  type: Injectable,
884
884
  args: [{ providedIn: 'root' }]
885
885
  }] });
@@ -913,11 +913,11 @@ class ImngOidcClientModule {
913
913
  providers: [{ provide: OIDC_CLIENT_CONFIG, useValue: oidc0ptions }],
914
914
  };
915
915
  }
916
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
917
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientModule, declarations: [AccessDeniedComponent,
916
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
917
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientModule, declarations: [AccessDeniedComponent,
918
918
  SupportComponent,
919
919
  LogoutSuccessComponent], imports: [CommonModule, i1$2.StoreFeatureModule, i2.EffectsFeatureModule, ImngOidcClientRoutingModule], exports: [AccessDeniedComponent, SupportComponent, LogoutSuccessComponent] }); }
920
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientModule, providers: [
920
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientModule, providers: [
921
921
  {
922
922
  provide: OIDC_LIBRARY_CONFIG,
923
923
  useFactory: oidcConfigurator,
@@ -939,7 +939,7 @@ class ImngOidcClientModule {
939
939
  EffectsModule.forFeature([OidcEffects]),
940
940
  ImngOidcClientRoutingModule] }); }
941
941
  }
942
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ImngOidcClientModule, decorators: [{
942
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngOidcClientModule, decorators: [{
943
943
  type: NgModule,
944
944
  args: [{
945
945
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"imng-oidc-client.mjs","sources":["../tmp-esm2022/lib/+state/oidc.actions.js","../tmp-esm2022/lib/util/jwt-decoder.js","../tmp-esm2022/lib/+state/oidc.reducer.js","../tmp-esm2022/lib/+state/oidc.selectors.js","../tmp-esm2022/lib/+state/oidc-user.selectors.js","../tmp-esm2022/lib/+state/oidc-user.facade.js","../tmp-esm2022/lib/models/constants.js","../tmp-esm2022/lib/models/oidc-library-config.js","../tmp-esm2022/lib/services/oidc.service.js","../tmp-esm2022/lib/+state/oidc.facade.js","../tmp-esm2022/lib/support/support.component.js","../tmp-esm2022/lib/components/access-denied.component.js","../tmp-esm2022/lib/services/auth-guard.js","../tmp-esm2022/lib/components/logout-success.component.js","../tmp-esm2022/lib/img-oidc-client-routing.module.js","../tmp-esm2022/lib/+state/oidc.effects.js","../tmp-esm2022/lib/models/oidc-client-config.js","../tmp-esm2022/lib/services/token-interceptor.service.js","../tmp-esm2022/lib/util/oidc-client-configurator.js","../tmp-esm2022/lib/imng-oidc-client.module.js","../tmp-esm2022/lib/services/permissions.guard.js","../tmp-esm2022/imng-oidc-client.js"],"sourcesContent":["import { createAction } from '@ngrx/store';\nimport { createPayloadAction } from 'imng-ngrx-utils';\nexport const clearCurrentEmployee = createAction('[Employees] Clear Current Employee');\n// OIDC COMMANDS\nexport const getOidcUser = createAction('[Oidc] get oidc user');\nexport const removeOidcUser = createAction('[Oidc] remove oidc user');\nexport const userExpired = createAction('[Oidc] user expired');\nexport const userFound = createPayloadAction('[Oidc] user found');\nexport const onSessionChanged = createAction('[Oidc] session changed');\nexport const onAccessTokenExpired = createAction('[Oidc] on access token expired');\nexport const onAccessTokenExpiring = createAction('[Oidc] user expiring');\nexport const onUserLoading = createAction('[Oidc] user loading');\nexport const userDoneLoading = createAction('[Oidc] user done loading');\nexport const userDoneLoadingError = createPayloadAction('[Oidc] user done loading error');\nexport const onUserMetadataLoaded = createPayloadAction('[Oidc] on User Metadata Loaded');\n// OIDC EVENTS\nexport const onSignInPopup = createPayloadAction('[Oidc] on SignInPopup');\nexport const onSignInRedirect = createPayloadAction('[Oidc] on onSignInRedirect');\nexport const onSignInSilent = createPayloadAction('[Oidc] on onSignInSilent');\nexport const onUserLoaded = createPayloadAction('[Oidc] on user loaded');\nexport const onUserloadError = createPayloadAction('[Oidc] user load error');\nexport const onUserUnloaded = createAction('[Oidc] on user unloaded');\nexport const onUserSignedOut = createAction('[Oidc] on user signed out');\nexport const onSilentRenewError = createPayloadAction('[Oidc] on silent renew error');\nexport const signInPopup = createPayloadAction('[Oidc] sign in popup');\nexport const signInRedirect = createPayloadAction('[Oidc] sign in redirect');\nexport const signInError = createPayloadAction('[Oidc] sign in popup error');\nexport const signOutPopup = createPayloadAction('[Oidc] sign out popup');\nexport const signOutPopupError = createPayloadAction('[Oidc] sign out popup error');\nexport const signOutRedirect = createPayloadAction('[Oidc] sign out redirect');\nexport const signOutRedirectError = createPayloadAction('[Oidc] sign out redirect error');\nexport const signInSilent = createPayloadAction('[Oidc] sign in silent');\nexport const oidcError = createPayloadAction('[Oidc] error');\n// HTTP\nexport const setHttpError = createPayloadAction('[HTTP] Set Http Error');\nexport const clearErrors = createAction('[HTTP] Clear Errors');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvK3N0YXRlL29pZGMuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLFlBQVksQ0FDOUMsb0NBQW9DLENBQ3JDLENBQUM7QUFFRixnQkFBZ0I7QUFFaEIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMseUJBQXlCLENBQUMsQ0FBQztBQUN0RSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFDL0QsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFZLG1CQUFtQixDQUFDLENBQUM7QUFDN0UsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDdkUsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsWUFBWSxDQUM5QyxnQ0FBZ0MsQ0FDakMsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUNqRSxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLDBCQUEwQixDQUFDLENBQUM7QUFDeEUsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsbUJBQW1CLENBQ3JELGdDQUFnQyxDQUNqQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsbUJBQW1CLENBQ3JELGdDQUFnQyxDQUNqQyxDQUFDO0FBRUYsY0FBYztBQUNkLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FDOUMsdUJBQXVCLENBQ3hCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FDakQsNEJBQTRCLENBQzdCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQy9DLDBCQUEwQixDQUMzQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLG1CQUFtQixDQUM3Qyx1QkFBdUIsQ0FDeEIsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FDaEQsd0JBQXdCLENBQ3pCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDdEUsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0FBQ3pFLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUNuRCw4QkFBOEIsQ0FDL0IsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxtQkFBbUIsQ0FDNUMsc0JBQXNCLENBQ3ZCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQy9DLHlCQUF5QixDQUMxQixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLG1CQUFtQixDQUM1Qyw0QkFBNEIsQ0FDN0IsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxtQkFBbUIsQ0FDN0MsdUJBQXVCLENBQ3hCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FDbEQsNkJBQTZCLENBQzlCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsbUJBQW1CLENBRWhELDBCQUEwQixDQUFDLENBQUM7QUFDOUIsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsbUJBQW1CLENBQ3JELGdDQUFnQyxDQUNqQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLG1CQUFtQixDQUM3Qyx1QkFBdUIsQ0FDeEIsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxtQkFBbUIsQ0FBUSxjQUFjLENBQUMsQ0FBQztBQUVwRSxPQUFPO0FBQ1AsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLG1CQUFtQixDQUM3Qyx1QkFBdUIsQ0FDeEIsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMscUJBQXFCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGlvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFJlcXVlc3RBcnVnbWVudHMgfSBmcm9tICcuLi9tb2RlbHMvYXJndW1lbnRzLm1vZGVsJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSU9pZGNVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlcic7XG5pbXBvcnQgeyBjcmVhdGVQYXlsb2FkQWN0aW9uIH0gZnJvbSAnaW1uZy1uZ3J4LXV0aWxzJztcblxuZXhwb3J0IGNvbnN0IGNsZWFyQ3VycmVudEVtcGxveWVlID0gY3JlYXRlQWN0aW9uKFxuICAnW0VtcGxveWVlc10gQ2xlYXIgQ3VycmVudCBFbXBsb3llZSdcbik7XG5cbi8vIE9JREMgQ09NTUFORFNcblxuZXhwb3J0IGNvbnN0IGdldE9pZGNVc2VyID0gY3JlYXRlQWN0aW9uKCdbT2lkY10gZ2V0IG9pZGMgdXNlcicpO1xuZXhwb3J0IGNvbnN0IHJlbW92ZU9pZGNVc2VyID0gY3JlYXRlQWN0aW9uKCdbT2lkY10gcmVtb3ZlIG9pZGMgdXNlcicpO1xuZXhwb3J0IGNvbnN0IHVzZXJFeHBpcmVkID0gY3JlYXRlQWN0aW9uKCdbT2lkY10gdXNlciBleHBpcmVkJyk7XG5leHBvcnQgY29uc3QgdXNlckZvdW5kID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxJT2lkY1VzZXI+KCdbT2lkY10gdXNlciBmb3VuZCcpO1xuZXhwb3J0IGNvbnN0IG9uU2Vzc2lvbkNoYW5nZWQgPSBjcmVhdGVBY3Rpb24oJ1tPaWRjXSBzZXNzaW9uIGNoYW5nZWQnKTtcbmV4cG9ydCBjb25zdCBvbkFjY2Vzc1Rva2VuRXhwaXJlZCA9IGNyZWF0ZUFjdGlvbihcbiAgJ1tPaWRjXSBvbiBhY2Nlc3MgdG9rZW4gZXhwaXJlZCdcbik7XG5leHBvcnQgY29uc3Qgb25BY2Nlc3NUb2tlbkV4cGlyaW5nID0gY3JlYXRlQWN0aW9uKCdbT2lkY10gdXNlciBleHBpcmluZycpO1xuZXhwb3J0IGNvbnN0IG9uVXNlckxvYWRpbmcgPSBjcmVhdGVBY3Rpb24oJ1tPaWRjXSB1c2VyIGxvYWRpbmcnKTtcbmV4cG9ydCBjb25zdCB1c2VyRG9uZUxvYWRpbmcgPSBjcmVhdGVBY3Rpb24oJ1tPaWRjXSB1c2VyIGRvbmUgbG9hZGluZycpO1xuZXhwb3J0IGNvbnN0IHVzZXJEb25lTG9hZGluZ0Vycm9yID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxFcnJvcj4oXG4gICdbT2lkY10gdXNlciBkb25lIGxvYWRpbmcgZXJyb3InXG4pO1xuZXhwb3J0IGNvbnN0IG9uVXNlck1ldGFkYXRhTG9hZGVkID0gY3JlYXRlUGF5bG9hZEFjdGlvbjx1bmtub3duPihcbiAgJ1tPaWRjXSBvbiBVc2VyIE1ldGFkYXRhIExvYWRlZCdcbik7XG5cbi8vIE9JREMgRVZFTlRTXG5leHBvcnQgY29uc3Qgb25TaWduSW5Qb3B1cCA9IGNyZWF0ZVBheWxvYWRBY3Rpb248SU9pZGNVc2VyPihcbiAgJ1tPaWRjXSBvbiBTaWduSW5Qb3B1cCdcbik7XG5leHBvcnQgY29uc3Qgb25TaWduSW5SZWRpcmVjdCA9IGNyZWF0ZVBheWxvYWRBY3Rpb248SU9pZGNVc2VyPihcbiAgJ1tPaWRjXSBvbiBvblNpZ25JblJlZGlyZWN0J1xuKTtcbmV4cG9ydCBjb25zdCBvblNpZ25JblNpbGVudCA9IGNyZWF0ZVBheWxvYWRBY3Rpb248SU9pZGNVc2VyPihcbiAgJ1tPaWRjXSBvbiBvblNpZ25JblNpbGVudCdcbik7XG5cbmV4cG9ydCBjb25zdCBvblVzZXJMb2FkZWQgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPElPaWRjVXNlcj4oXG4gICdbT2lkY10gb24gdXNlciBsb2FkZWQnXG4pO1xuZXhwb3J0IGNvbnN0IG9uVXNlcmxvYWRFcnJvciA9IGNyZWF0ZVBheWxvYWRBY3Rpb248RXJyb3I+KFxuICAnW09pZGNdIHVzZXIgbG9hZCBlcnJvcidcbik7XG5leHBvcnQgY29uc3Qgb25Vc2VyVW5sb2FkZWQgPSBjcmVhdGVBY3Rpb24oJ1tPaWRjXSBvbiB1c2VyIHVubG9hZGVkJyk7XG5leHBvcnQgY29uc3Qgb25Vc2VyU2lnbmVkT3V0ID0gY3JlYXRlQWN0aW9uKCdbT2lkY10gb24gdXNlciBzaWduZWQgb3V0Jyk7XG5leHBvcnQgY29uc3Qgb25TaWxlbnRSZW5ld0Vycm9yID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxFcnJvcj4oXG4gICdbT2lkY10gb24gc2lsZW50IHJlbmV3IGVycm9yJ1xuKTtcbmV4cG9ydCBjb25zdCBzaWduSW5Qb3B1cCA9IGNyZWF0ZVBheWxvYWRBY3Rpb248UmVxdWVzdEFydWdtZW50cz4oXG4gICdbT2lkY10gc2lnbiBpbiBwb3B1cCdcbik7XG5leHBvcnQgY29uc3Qgc2lnbkluUmVkaXJlY3QgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPFJlcXVlc3RBcnVnbWVudHMgfCB1bmRlZmluZWQ+KFxuICAnW09pZGNdIHNpZ24gaW4gcmVkaXJlY3QnXG4pO1xuZXhwb3J0IGNvbnN0IHNpZ25JbkVycm9yID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxFcnJvcj4oXG4gICdbT2lkY10gc2lnbiBpbiBwb3B1cCBlcnJvcidcbik7XG5leHBvcnQgY29uc3Qgc2lnbk91dFBvcHVwID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxSZXF1ZXN0QXJ1Z21lbnRzPihcbiAgJ1tPaWRjXSBzaWduIG91dCBwb3B1cCdcbik7XG5leHBvcnQgY29uc3Qgc2lnbk91dFBvcHVwRXJyb3IgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPHN0cmluZz4oXG4gICdbT2lkY10gc2lnbiBvdXQgcG9wdXAgZXJyb3InXG4pO1xuZXhwb3J0IGNvbnN0IHNpZ25PdXRSZWRpcmVjdCA9IGNyZWF0ZVBheWxvYWRBY3Rpb248XG4gIFJlcXVlc3RBcnVnbWVudHMgfCB1bmRlZmluZWRcbj4oJ1tPaWRjXSBzaWduIG91dCByZWRpcmVjdCcpO1xuZXhwb3J0IGNvbnN0IHNpZ25PdXRSZWRpcmVjdEVycm9yID0gY3JlYXRlUGF5bG9hZEFjdGlvbjxzdHJpbmc+KFxuICAnW09pZGNdIHNpZ24gb3V0IHJlZGlyZWN0IGVycm9yJ1xuKTtcbmV4cG9ydCBjb25zdCBzaWduSW5TaWxlbnQgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPFJlcXVlc3RBcnVnbWVudHM+KFxuICAnW09pZGNdIHNpZ24gaW4gc2lsZW50J1xuKTtcbmV4cG9ydCBjb25zdCBvaWRjRXJyb3IgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPEVycm9yPignW09pZGNdIGVycm9yJyk7XG5cbi8vIEhUVFBcbmV4cG9ydCBjb25zdCBzZXRIdHRwRXJyb3IgPSBjcmVhdGVQYXlsb2FkQWN0aW9uPEh0dHBFcnJvclJlc3BvbnNlPihcbiAgJ1tIVFRQXSBTZXQgSHR0cCBFcnJvcidcbik7XG5leHBvcnQgY29uc3QgY2xlYXJFcnJvcnMgPSBjcmVhdGVBY3Rpb24oJ1tIVFRQXSBDbGVhciBFcnJvcnMnKTtcbiJdfQ==","export function jwtDecoder(rawToken) {\n const splits = rawToken?.split('.');\n if (splits?.length > 1) {\n const payload = splits[1];\n return JSON.parse(window.atob(payload));\n }\n else {\n return null;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LWRlY29kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi91dGlsL2p3dC1kZWNvZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxVQUFVLENBQU8sUUFBZ0I7SUFDL0MsTUFBTSxNQUFNLEdBQUcsUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxJQUFJLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDdkIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFTLENBQUM7SUFDbEQsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGp3dERlY29kZXI8VFlQRT4ocmF3VG9rZW46IHN0cmluZyk6IFRZUEUgfCBudWxsIHtcbiAgY29uc3Qgc3BsaXRzID0gcmF3VG9rZW4/LnNwbGl0KCcuJyk7XG4gIGlmIChzcGxpdHM/Lmxlbmd0aCA+IDEpIHtcbiAgICBjb25zdCBwYXlsb2FkID0gc3BsaXRzWzFdO1xuICAgIHJldHVybiBKU09OLnBhcnNlKHdpbmRvdy5hdG9iKHBheWxvYWQpKSBhcyBUWVBFO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=","import * as oidcActions from './oidc.actions';\nimport { jwtDecoder } from '../util/jwt-decoder';\nimport { on, createReducer, createFeature } from '@ngrx/store';\nexport const OIDC_FEATURE_KEY = 'oidc';\nexport const initialState = {\n audiences: [],\n permissions: [],\n isLoading: true,\n isLoggedIn: false,\n isExpiring: false,\n isExpired: false,\n identity: undefined,\n userMetadata: undefined,\n errors: {\n silentRenewError: undefined,\n signInError: undefined,\n httpError: undefined,\n },\n};\nexport const oidcFeature = createFeature({\n name: OIDC_FEATURE_KEY,\n reducer: createReducer(initialState, on(oidcActions.getOidcUser, (state) => ({\n ...state,\n isLoading: false,\n isLoggedIn: false,\n })), on(oidcActions.onUserLoading, (state) => ({\n ...state,\n isLoading: true,\n isLoggedIn: false,\n })), on(oidcActions.removeOidcUser, (state) => ({\n ...state,\n isLoading: true,\n isLoggedIn: false,\n identity: undefined,\n })), on(oidcActions.setHttpError, (state, err) => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n httpError: err.payload,\n },\n })), on(oidcActions.onUserMetadataLoaded, (state, userMetadata) => ({\n ...state,\n userMetadata: userMetadata.payload,\n isLoading: false,\n })), on(oidcActions.clearErrors, (state) => ({\n ...state, errors: {\n signInError: undefined,\n silentRenewError: undefined,\n httpError: undefined\n }\n })), on(oidcActions.userDoneLoading, (state) => ({\n ...state,\n isLoading: false\n })), on(oidcActions.onAccessTokenExpiring, (state) => ({\n ...state,\n isExpiring: true,\n })), on(oidcActions.onAccessTokenExpired, (state) => ({\n ...state,\n isLoggedIn: false,\n isExpiring: false,\n isExpired: true,\n })), on(oidcActions.onUserLoaded, (state) => ({\n ...state,\n isLoading: false,\n isExpiring: false,\n })), on(oidcActions.onUserUnloaded, oidcActions.onUserSignedOut, oidcActions.signOutPopupError, oidcActions.signOutRedirectError, (state) => ({\n ...state,\n isLoggedIn: false,\n identity: undefined,\n isExpired: true,\n isExpiring: false,\n userMetadata: undefined,\n })), on(oidcActions.signOutRedirect, oidcActions.signOutPopup, (state) => ({\n ...state,\n identity: undefined,\n userMetadata: null,\n isLoggedIn: false,\n })), on(oidcActions.userFound, oidcActions.onSignInPopup, oidcActions.onSignInRedirect, oidcActions.onSignInSilent, (state, { payload }) => ({\n ...state,\n identity: payload,\n isLoggedIn: true,\n audiences: jwtDecoder(payload.access_token)?.aud,\n permissions: jwtDecoder(payload.access_token)?.permissions,\n })), on(oidcActions.userExpired, (state) => ({\n ...state,\n isLoggedIn: false,\n isExpiring: false,\n })), on(oidcActions.onSilentRenewError, (state, err) => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n silentRenewError: err.payload,\n },\n })), on(oidcActions.userDoneLoadingError, oidcActions.signInError, (state, err) => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n signInError: err.payload,\n },\n })))\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvK3N0YXRlL29pZGMucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJL0QsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDO0FBcUJ2QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQWM7SUFDckMsU0FBUyxFQUFFLEVBQUU7SUFDYixXQUFXLEVBQUUsRUFBRTtJQUNmLFNBQVMsRUFBRSxJQUFJO0lBQ2YsVUFBVSxFQUFFLEtBQUs7SUFDakIsVUFBVSxFQUFFLEtBQUs7SUFDakIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsUUFBUSxFQUFFLFNBQVM7SUFDbkIsWUFBWSxFQUFFLFNBQVM7SUFDdkIsTUFBTSxFQUFFO1FBQ04sZ0JBQWdCLEVBQUUsU0FBUztRQUMzQixXQUFXLEVBQUUsU0FBUztRQUN0QixTQUFTLEVBQUUsU0FBUztLQUNyQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDO0lBQ3ZDLElBQUksRUFBRSxnQkFBZ0I7SUFDdEIsT0FBTyxFQUFFLGFBQWEsQ0FBQyxZQUFZLEVBQ2pDLEVBQUUsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUN4QixDQUFDLEtBQUssRUFBYSxFQUFFLENBQUMsQ0FBQztRQUNyQixHQUFHLEtBQUs7UUFDUixTQUFTLEVBQUUsS0FBSztRQUNoQixVQUFVLEVBQUUsS0FBSztLQUNsQixDQUFDLENBQUMsRUFDTCxFQUFFLENBQUMsV0FBVyxDQUFDLGFB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O0tBQ0YsQ0FBQyxDQUNILENBQUM7Q0FDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBvaWRjQWN0aW9ucyBmcm9tICcuL29pZGMuYWN0aW9ucyc7XG5pbXBvcnQgeyBqd3REZWNvZGVyIH0gZnJvbSAnLi4vdXRpbC9qd3QtZGVjb2Rlcic7XG5pbXBvcnQgeyBvbiwgY3JlYXRlUmVkdWNlciwgY3JlYXRlRmVhdHVyZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSU9pZGNVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlcic7XG5cbmV4cG9ydCBjb25zdCBPSURDX0ZFQVRVUkVfS0VZID0gJ29pZGMnO1xuZXhwb3J0IGludGVyZmFjZSBPaWRjU3RhdGUge1xuICBpZGVudGl0eTogSU9pZGNVc2VyIHwgdW5kZWZpbmVkO1xuICBhdWRpZW5jZXM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICB1c2VyTWV0YWRhdGE6IHVua25vd24gfCB1bmRlZmluZWQ7XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuICBpc0xvZ2dlZEluOiBib29sZWFuO1xuICBpc0V4cGlyaW5nOiBib29sZWFuO1xuICBpc0V4cGlyZWQ6IGJvb2xlYW47XG4gIGVycm9yczogRXJyb3JTdGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFcnJvclN0YXRlIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgc2lsZW50UmVuZXdFcnJvcjogdW5rbm93biB8IHVuZGVmaW5lZDtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgc2lnbkluRXJyb3I6IHVua25vd24gfCB1bmRlZmluZWQ7XG4gIGh0dHBFcnJvcjogSHR0cEVycm9yUmVzcG9uc2UgfCB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IE9pZGNTdGF0ZSA9IHtcbiAgYXVkaWVuY2VzOiBbXSxcbiAgcGVybWlzc2lvbnM6IFtdLFxuICBpc0xvYWRpbmc6IHRydWUsXG4gIGlzTG9nZ2VkSW46IGZhbHNlLFxuICBpc0V4cGlyaW5nOiBmYWxzZSxcbiAgaXNFeHBpcmVkOiBmYWxzZSxcbiAgaWRlbnRpdHk6IHVuZGVmaW5lZCxcbiAgdXNlck1ldGFkYXRhOiB1bmRlZmluZWQsXG4gIGVycm9yczoge1xuICAgIHNpbGVudFJlbmV3RXJyb3I6IHVuZGVmaW5lZCxcbiAgICBzaWduSW5FcnJvcjogdW5kZWZpbmVkLFxuICAgIGh0dHBFcnJvcjogdW5kZWZpbmVkLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IG9pZGNGZWF0dXJlID0gY3JlYXRlRmVhdHVyZSh7XG4gIG5hbWU6IE9JRENfRkVBVFVSRV9LRVksXG4gIHJlZHVjZXI6IGNyZWF0ZVJlZHVjZXIoaW5pdGlhbFN0YXRlLFxuICAgIG9uKG9pZGNBY3Rpb25zLmdldE9pZGNVc2VyLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICBpc0xvZ2dlZEluOiBmYWxzZSxcbiAgICAgIH0pKSxcbiAgICBvbihvaWRjQWN0aW9ucy5vblVzZXJMb2FkaW5nLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvYWRpbmc6IHRydWUsXG4gICAgICAgIGlzTG9nZ2VkSW46IGZhbHNlLFxuICAgICAgfSkpLFxuICAgIG9uKG9pZGNBY3Rpb25zLnJlbW92ZU9pZGNVc2VyLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvYWRpbmc6IHRydWUsXG4gICAgICAgIGlzTG9nZ2VkSW46IGZhbHNlLFxuICAgICAgICBpZGVudGl0eTogdW5kZWZpbmVkLFxuICAgICAgfSkpLFxuICAgIG9uKG9pZGNBY3Rpb25zLnNldEh0dHBFcnJvcixcbiAgICAgIChzdGF0ZSwgZXJyKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICBlcnJvcnM6IHtcbiAgICAgICAgICAuLi5zdGF0ZS5lcnJvcnMsXG4gICAgICAgICAgaHR0cEVycm9yOiBlcnIucGF5bG9hZCxcbiAgICAgICAgfSxcbiAgICAgIH0pKSxcbiAgICBvbihvaWRjQWN0aW9ucy5vblVzZXJNZXRhZGF0YUxvYWRlZCxcbiAgICAgIChzdGF0ZSwgdXNlck1ldGFkYXRhKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICB1c2VyTWV0YWRhdGE6IHVzZXJNZXRhZGF0YS5wYXlsb2FkLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgfSkpLFxuICAgIG9uKG9pZGNBY3Rpb25zLmNsZWFyRXJyb3JzLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLCBlcnJvcnM6IHtcbiAgICAgICAgICBzaWduSW5FcnJvcjogdW5kZWZpbmVkLFxuICAgICAgICAgIHNpbGVudFJlbmV3RXJyb3I6IHVuZGVmaW5lZCxcbiAgICAgICAgICBodHRwRXJyb3I6IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgICB9KSksXG4gICAgb24ob2lkY0FjdGlvbnMudXNlckRvbmVMb2FkaW5nLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlXG4gICAgICB9KSksXG4gICAgb24ob2lkY0FjdGlvbnMub25BY2Nlc3NUb2tlbkV4cGlyaW5nLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0V4cGlyaW5nOiB0cnVlLFxuICAgICAgfSkpLFxuICAgIG9uKG9pZGNBY3Rpb25zLm9uQWNjZXNzVG9rZW5FeHBpcmVkLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvZ2dlZEluOiBmYWxzZSxcbiAgICAgICAgaXNFeHBpcmluZzogZmFsc2UsXG4gICAgICAgIGlzRXhwaXJlZDogdHJ1ZSxcbiAgICAgIH0pKSxcbiAgICBvbihvaWRjQWN0aW9ucy5vblVzZXJMb2FkZWQsXG4gICAgICAoc3RhdGUpOiBPaWRjU3RhdGUgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICAgIGlzRXhwaXJpbmc6IGZhbHNlLFxuICAgICAgfSkpLFxuICAgIG9uKFxuICAgICAgb2lkY0FjdGlvbnMub25Vc2VyVW5sb2FkZWQsXG4gICAgICBvaWRjQWN0aW9ucy5vblVzZXJTaWduZWRPdXQsXG4gICAgICBvaWRjQWN0aW9ucy5zaWduT3V0UG9wdXBFcnJvcixcbiAgICAgIG9pZGNBY3Rpb25zLnNpZ25PdXRSZWRpcmVjdEVycm9yLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpc0xvZ2dlZEluOiBmYWxzZSxcbiAgICAgICAgaWRlbnRpdHk6IHVuZGVmaW5lZCxcbiAgICAgICAgaXNFeHBpcmVkOiB0cnVlLFxuICAgICAgICBpc0V4cGlyaW5nOiBmYWxzZSxcbiAgICAgICAgdXNlck1ldGFkYXRhOiB1bmRlZmluZWQsXG4gICAgICB9KVxuICAgICksXG4gICAgb24ob2lkY0FjdGlvbnMuc2lnbk91dFJlZGlyZWN0LFxuICAgICAgb2lkY0FjdGlvbnMuc2lnbk91dFBvcHVwLFxuICAgICAgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBpZGVudGl0eTogdW5kZWZpbmVkLFxuICAgICAgICB1c2VyTWV0YWRhdGE6IG51bGwsXG4gICAgICAgIGlzTG9nZ2VkSW46IGZhbHNlLFxuICAgICAgfSkpLFxuICAgIG9uKFxuICAgICAgb2lkY0FjdGlvbnMudXNlckZvdW5kLFxuICAgICAgb2lkY0FjdGlvbnMub25TaWduSW5Qb3B1cCxcbiAgICAgIG9pZGNBY3Rpb25zLm9uU2lnbkluUmVkaXJlY3QsXG4gICAgICBvaWRjQWN0aW9ucy5vblNpZ25JblNpbGVudCxcbiAgICAgIChzdGF0ZSwgeyBwYXlsb2FkIH0pOiBPaWRjU3RhdGUgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGlkZW50aXR5OiBwYXlsb2FkLFxuICAgICAgICBpc0xvZ2dlZEluOiB0cnVlLFxuICAgICAgICBhdWRpZW5jZXM6IGp3dERlY29kZXI8eyBhdWQ/OiBbXTsgfT4ocGF5bG9hZC5hY2Nlc3NfdG9rZW4pPy5hdWQsXG4gICAgICAgIHBlcm1pc3Npb25zOiBqd3REZWNvZGVyPHsgcGVybWlzc2lvbnM/OiBbXTsgfT4ocGF5bG9hZC5hY2Nlc3NfdG9rZW4pPy5wZXJtaXNzaW9ucyxcbiAgICAgIH0pXG4gICAgKSxcbiAgICBvbihvaWRjQWN0aW9ucy51c2VyRXhwaXJlZCwgKHN0YXRlKTogT2lkY1N0YXRlID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIGlzTG9nZ2VkSW46IGZhbHNlLFxuICAgICAgaXNFeHBpcmluZzogZmFsc2UsXG4gICAgfSkpLFxuICAgIG9uKG9pZGNBY3Rpb25zLm9uU2lsZW50UmVuZXdFcnJvciwgKHN0YXRlLCBlcnIpOiBPaWRjU3RhdGUgPT4gKHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgIGVycm9yczoge1xuICAgICAgICAuLi5zdGF0ZS5lcnJvcnMsXG4gICAgICAgIHNpbGVudFJlbmV3RXJyb3I6IGVyci5wYXlsb2FkLFxuICAgICAgfSxcbiAgICB9KSksXG4gICAgb24oXG4gICAgICBvaWRjQWN0aW9ucy51c2VyRG9uZUxvYWRpbmdFcnJvcixcbiAgICAgIG9pZGNBY3Rpb25zLnNpZ25JbkVycm9yLFxuICAgICAgKHN0YXRlLCBlcnIpOiBPaWRjU3RhdGUgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICAgIGVycm9yczoge1xuICAgICAgICAgIC4uLnN0YXRlLmVycm9ycyxcbiAgICAgICAgICBzaWduSW5FcnJvcjogZXJyLnBheWxvYWQsXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICkpXG59KTtcbiJdfQ==","import { createSelector } from '@ngrx/store';\nimport { oidcFeature } from './oidc.reducer';\n// State Selectors\nconst selectAccessToken = createSelector(oidcFeature.selectIdentity, (user) => (user || { access_token: undefined }).access_token);\n// errors\nconst selectOidcErrorState = createSelector(oidcFeature.selectErrors, (errors) => errors);\nconst selectHasErrors = createSelector(selectOidcErrorState, (state) => !!state.httpError || !!state.signInError || !!state.silentRenewError);\nconst selectSignInError = createSelector(selectOidcErrorState, (errors) => errors.signInError);\nconst selectSilentRenewError = createSelector(selectOidcErrorState, (errors) => errors.silentRenewError);\nconst selectHttpError = createSelector(selectOidcErrorState, (errors) => errors.httpError);\nconst selectExpiresAt = createSelector(oidcFeature.selectIdentity, (state) => state?.expires_at ? new Date(state.expires_at * 1000) : null);\nexport const oidcSelectors = {\n selectExpiresAt,\n selectPermissions: oidcFeature.selectPermissions,\n selectIsLoading: oidcFeature.selectIsLoading,\n selectIdentity: oidcFeature.selectIdentity,\n selectAccessToken,\n selectIsExpiring: oidcFeature.selectIsExpiring,\n selectIsExpired: oidcFeature.selectIsExpired,\n selectIsLoggedIn: oidcFeature.selectIsLoggedIn,\n selectSilentRenewError,\n selectSignInError,\n selectHttpError,\n selectHasErrors,\n selectAudiences: oidcFeature.selectAudiences,\n selectUserMetadata: oidcFeature.selectUserMetadata,\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi8rc3RhdGUvb2lkYy5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsa0JBQWtCO0FBRWxCLE1BQU0saUJBQWlCLEdBQUcsY0FBYyxDQUN0QyxXQUFXLENBQUMsY0FBYyxFQUMxQixDQUFDLElBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUN6RSxDQUFDO0FBRUYsU0FBUztBQUNULE1BQU0sb0JBQW9CLEdBQUcsY0FBYyxDQUN6QyxXQUFXLENBQUMsWUFBWSxFQUN4QixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUNuQixDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUNwQyxvQkFBb0IsRUFDcEIsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FDcEIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDdkUsQ0FBQztBQUVGLE1BQU0saUJBQWlCLEdBQUcsY0FBYyxDQUN0QyxvQkFBb0IsRUFDcEIsQ0FBQyxNQUFrQixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUMzQyxDQUFDO0FBRUYsTUFBTSxzQkFBc0IsR0FBRyxjQUFjLENBQzNDLG9CQUFvQixFQUNwQixDQUFDLE1BQWtCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FDaEQsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFHLGNBQWMsQ0FDcEMsb0JBQW9CLEVBQ3BCLENBQUMsTUFBa0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FDekMsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFHLGNBQWMsQ0FDcEMsV0FBVyxDQUFDLGNBQWMsRUFDMUIsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FDcEIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMvRCxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLGVBQWU7SUFDZixpQkFBaUIsRUFBRSxXQUFXLENBQUMsaUJBQWlCO0lBQ2hELGVBQWUsRUFBRSxXQUFXLENBQUMsZUFBZTtJQUM1QyxjQUFjLEVBQUUsV0FBVyxDQUFDLGNBQWM7SUFDMUMsaUJBQWlCO0lBQ2pCLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7SUFDOUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxlQUFlO0lBQzVDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7SUFDOUMsc0JBQXNCO0lBQ3RCLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2YsZUFBZTtJQUNmLGVBQWUsRUFBRSxXQUFXLENBQUMsZUFBZTtJQUM1QyxrQkFBa0IsRUFBRSxXQUFXLENBQUMsa0JBQWtCO0NBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTZWxlY3RvciB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEVycm9yU3RhdGUsIG9pZGNGZWF0dXJlIH0gZnJvbSAnLi9vaWRjLnJlZHVjZXInO1xuaW1wb3J0IHsgSU9pZGNVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlcic7XG4vLyBTdGF0ZSBTZWxlY3RvcnNcblxuY29uc3Qgc2VsZWN0QWNjZXNzVG9rZW4gPSBjcmVhdGVTZWxlY3RvcihcbiAgb2lkY0ZlYXR1cmUuc2VsZWN0SWRlbnRpdHksXG4gICh1c2VyPzogSU9pZGNVc2VyKSA9PiAodXNlciB8fCB7IGFjY2Vzc190b2tlbjogdW5kZWZpbmVkIH0pLmFjY2Vzc190b2tlbixcbik7XG5cbi8vIGVycm9yc1xuY29uc3Qgc2VsZWN0T2lkY0Vycm9yU3RhdGUgPSBjcmVhdGVTZWxlY3RvcihcbiAgb2lkY0ZlYXR1cmUuc2VsZWN0RXJyb3JzLFxuICAoZXJyb3JzKSA9PiBlcnJvcnMsXG4pO1xuXG5jb25zdCBzZWxlY3RIYXNFcnJvcnMgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0T2lkY0Vycm9yU3RhdGUsXG4gIChzdGF0ZTogRXJyb3JTdGF0ZSkgPT5cbiAgICAhIXN0YXRlLmh0dHBFcnJvciB8fCAhIXN0YXRlLnNpZ25JbkVycm9yIHx8ICEhc3RhdGUuc2lsZW50UmVuZXdFcnJvcixcbik7XG5cbmNvbnN0IHNlbGVjdFNpZ25JbkVycm9yID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdE9pZGNFcnJvclN0YXRlLFxuICAoZXJyb3JzOiBFcnJvclN0YXRlKSA9PiBlcnJvcnMuc2lnbkluRXJyb3IsXG4pO1xuXG5jb25zdCBzZWxlY3RTaWxlbnRSZW5ld0Vycm9yID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdE9pZGNFcnJvclN0YXRlLFxuICAoZXJyb3JzOiBFcnJvclN0YXRlKSA9PiBlcnJvcnMuc2lsZW50UmVuZXdFcnJvcixcbik7XG5cbmNvbnN0IHNlbGVjdEh0dHBFcnJvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RPaWRjRXJyb3JTdGF0ZSxcbiAgKGVycm9yczogRXJyb3JTdGF0ZSkgPT4gZXJyb3JzLmh0dHBFcnJvcixcbik7XG5cbmNvbnN0IHNlbGVjdEV4cGlyZXNBdCA9IGNyZWF0ZVNlbGVjdG9yKFxuICBvaWRjRmVhdHVyZS5zZWxlY3RJZGVudGl0eSxcbiAgKHN0YXRlPzogSU9pZGNVc2VyKSA9PlxuICAgIHN0YXRlPy5leHBpcmVzX2F0ID8gbmV3IERhdGUoc3RhdGUuZXhwaXJlc19hdCAqIDEwMDApIDogbnVsbCwgLy9OT1NPTkFSXG4pO1xuZXhwb3J0IGNvbnN0IG9pZGNTZWxlY3RvcnMgPSB7XG4gIHNlbGVjdEV4cGlyZXNBdCxcbiAgc2VsZWN0UGVybWlzc2lvbnM6IG9pZGNGZWF0dXJlLnNlbGVjdFBlcm1pc3Npb25zLFxuICBzZWxlY3RJc0xvYWRpbmc6IG9pZGNGZWF0dXJlLnNlbGVjdElzTG9hZGluZyxcbiAgc2VsZWN0SWRlbnRpdHk6IG9pZGNGZWF0dXJlLnNlbGVjdElkZW50aXR5LFxuICBzZWxlY3RBY2Nlc3NUb2tlbixcbiAgc2VsZWN0SXNFeHBpcmluZzogb2lkY0ZlYXR1cmUuc2VsZWN0SXNFeHBpcmluZyxcbiAgc2VsZWN0SXNFeHBpcmVkOiBvaWRjRmVhdHVyZS5zZWxlY3RJc0V4cGlyZWQsXG4gIHNlbGVjdElzTG9nZ2VkSW46IG9pZGNGZWF0dXJlLnNlbGVjdElzTG9nZ2VkSW4sXG4gIHNlbGVjdFNpbGVudFJlbmV3RXJyb3IsXG4gIHNlbGVjdFNpZ25JbkVycm9yLFxuICBzZWxlY3RIdHRwRXJyb3IsXG4gIHNlbGVjdEhhc0Vycm9ycyxcbiAgc2VsZWN0QXVkaWVuY2VzOiBvaWRjRmVhdHVyZS5zZWxlY3RBdWRpZW5jZXMsXG4gIHNlbGVjdFVzZXJNZXRhZGF0YTogb2lkY0ZlYXR1cmUuc2VsZWN0VXNlck1ldGFkYXRhLFxufTtcbiJdfQ==","import { createSelector } from '@ngrx/store';\nimport { oidcSelectors } from './oidc.selectors';\nimport { oidcFeature } from './oidc.reducer';\nconst selectProfile = createSelector(oidcSelectors.selectIdentity, (identity) => identity?.profile);\nconst selectScopes = createSelector(oidcSelectors.selectIdentity, (identity) => identity?.scope?.split(' ') || identity?.scopes);\nconst getPermissions = oidcFeature.selectPermissions;\nconst selectEmail = createSelector(selectProfile, (profile) => profile?.email);\nconst selectProfilePicture = createSelector(selectProfile, (profile) => profile?.picture);\nexport const oidcUserSelectors = {\n getScopes: selectScopes,\n getProfile: selectProfile,\n getEmail: selectEmail,\n getProfilePicture: selectProfilePicture,\n getPermissions,\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy11c2VyLnNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvbGliLytzdGF0ZS9vaWRjLXVzZXIuc2VsZWN0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc3QyxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQ2xDLGFBQWEsQ0FBQyxjQUFjLEVBQzVCLENBQUMsUUFBb0IsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLE9BQTBCLENBQy9ELENBQUM7QUFFRixNQUFNLFlBQVksR0FBRyxjQUFjLENBQ2pDLGFBQWEsQ0FBQyxjQUFjLEVBQzVCLENBQUMsUUFBb0IsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksUUFBUSxFQUFFLE1BQU0sQ0FDMUUsQ0FBQztBQUNGLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQztBQUVyRCxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFFL0UsTUFBTSxvQkFBb0IsR0FBRyxjQUFjLENBQ3pDLGFBQWEsRUFDYixDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FDOUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQy9CLFNBQVMsRUFBRSxZQUFZO0lBQ3ZCLFVBQVUsRUFBRSxhQUFhO0lBQ3pCLFFBQVEsRUFBRSxXQUFXO0lBQ3JCLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxjQUFjO0NBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVNlbGVjdG9yIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgT2lkY1VzZXJQcm9maWxlIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlci1wcm9maWxlJztcbmltcG9ydCB7IG9pZGNTZWxlY3RvcnMgfSBmcm9tICcuL29pZGMuc2VsZWN0b3JzJztcbmltcG9ydCB7IG9pZGNGZWF0dXJlIH0gZnJvbSAnLi9vaWRjLnJlZHVjZXInO1xuaW1wb3J0IHsgSU9pZGNVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlcic7XG5cbmNvbnN0IHNlbGVjdFByb2ZpbGUgPSBjcmVhdGVTZWxlY3RvcihcbiAgb2lkY1NlbGVjdG9ycy5zZWxlY3RJZGVudGl0eSxcbiAgKGlkZW50aXR5PzogSU9pZGNVc2VyKSA9PiBpZGVudGl0eT8ucHJvZmlsZSBhcyBPaWRjVXNlclByb2ZpbGUsXG4pO1xuXG5jb25zdCBzZWxlY3RTY29wZXMgPSBjcmVhdGVTZWxlY3RvcihcbiAgb2lkY1NlbGVjdG9ycy5zZWxlY3RJZGVudGl0eSxcbiAgKGlkZW50aXR5PzogSU9pZGNVc2VyKSA9PiBpZGVudGl0eT8uc2NvcGU/LnNwbGl0KCcgJykgfHwgaWRlbnRpdHk/LnNjb3Blcyxcbik7XG5jb25zdCBnZXRQZXJtaXNzaW9ucyA9IG9pZGNGZWF0dXJlLnNlbGVjdFBlcm1pc3Npb25zO1xuXG5jb25zdCBzZWxlY3RFbWFpbCA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdFByb2ZpbGUsIChwcm9maWxlKSA9PiBwcm9maWxlPy5lbWFpbCk7XG5cbmNvbnN0IHNlbGVjdFByb2ZpbGVQaWN0dXJlID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdFByb2ZpbGUsXG4gIChwcm9maWxlKSA9PiBwcm9maWxlPy5waWN0dXJlLFxuKTtcblxuZXhwb3J0IGNvbnN0IG9pZGNVc2VyU2VsZWN0b3JzID0ge1xuICBnZXRTY29wZXM6IHNlbGVjdFNjb3BlcyxcbiAgZ2V0UHJvZmlsZTogc2VsZWN0UHJvZmlsZSxcbiAgZ2V0RW1haWw6IHNlbGVjdEVtYWlsLFxuICBnZXRQcm9maWxlUGljdHVyZTogc2VsZWN0UHJvZmlsZVBpY3R1cmUsXG4gIGdldFBlcm1pc3Npb25zLFxufTtcbiJdfQ==","import { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { oidcUserSelectors } from './oidc-user.selectors';\nimport { map } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class OidcUserFacade {\n constructor() {\n this.store = inject(Store);\n this.profile$ = this.store.select(oidcUserSelectors.getProfile);\n this.scopes$ = this.store.select(oidcUserSelectors.getScopes);\n this.email$ = this.store.select(oidcUserSelectors.getEmail);\n this.profilePicture$ = this.store.select(oidcUserSelectors.getProfilePicture);\n this.permissions$ = this.store.select(oidcUserSelectors.getPermissions);\n }\n hasPermissions(requiredPermissions) {\n return this.permissions$.pipe(map((t) => -1 <\n requiredPermissions.findIndex((f) => -1 < (t?.findIndex((i) => i === f) ?? -1))));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcUserFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcUserFacade, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcUserFacade, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy11c2VyLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvbGliLytzdGF0ZS9vaWRjLXVzZXIuZmFjYWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFcEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUtyQyxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUltQixVQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDLGFBQVEsR0FBZ0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3ZELGlCQUFpQixDQUFDLFVBQVUsQ0FDN0IsQ0FBQztRQUNGLFlBQU8sR0FBcUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQzNELGlCQUFpQixDQUFDLFNBQVMsQ0FDNUIsQ0FBQztRQUNGLFdBQU0sR0FBbUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3hELGlCQUFpQixDQUFDLFFBQVEsQ0FDM0IsQ0FBQztRQUNGLG9CQUFlLEdBQW1DLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNqRSxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FDcEMsQ0FBQztRQUNGLGlCQUFZLEdBQXFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNoRSxpQkFBaUIsQ0FBQyxjQUFjLENBQ2pDLENBQUM7S0FlSDtJQWJRLGNBQWMsQ0FDbkIsbUJBQWtDO1FBRWxDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzNCLEdBQUcsQ0FDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osQ0FBQyxDQUFDO1lBQ0YsbUJBQW1CLENBQUMsU0FBUyxDQUMzQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDakQsQ0FDSixDQUNGLENBQUM7SUFDSixDQUFDOzhHQS9CVSxjQUFjO2tIQUFkLGNBQWMsY0FGYixNQUFNOzsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBvaWRjVXNlclNlbGVjdG9ycyB9IGZyb20gJy4vb2lkYy11c2VyLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBPaWRjVXNlclByb2ZpbGUgfSBmcm9tICcuLi9tb2RlbHMvb2lkYy11c2VyLXByb2ZpbGUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgT2lkY1VzZXJGYWNhZGUge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlKTtcblxuICBwcm9maWxlJDogT2JzZXJ2YWJsZTxPaWRjVXNlclByb2ZpbGU+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1VzZXJTZWxlY3RvcnMuZ2V0UHJvZmlsZSxcbiAgKTtcbiAgc2NvcGVzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXSB8IHVuZGVmaW5lZD4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjVXNlclNlbGVjdG9ycy5nZXRTY29wZXMsXG4gICk7XG4gIGVtYWlsJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1VzZXJTZWxlY3RvcnMuZ2V0RW1haWwsXG4gICk7XG4gIHByb2ZpbGVQaWN0dXJlJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1VzZXJTZWxlY3RvcnMuZ2V0UHJvZmlsZVBpY3R1cmUsXG4gICk7XG4gIHBlcm1pc3Npb25zJDogT2JzZXJ2YWJsZTxzdHJpbmdbXSB8IHVuZGVmaW5lZD4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjVXNlclNlbGVjdG9ycy5nZXRQZXJtaXNzaW9ucyxcbiAgKTtcblxuICBwdWJsaWMgaGFzUGVybWlzc2lvbnMoXG4gICAgcmVxdWlyZWRQZXJtaXNzaW9uczogQXJyYXk8c3RyaW5nPixcbiAgKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMkLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgICh0KSA9PlxuICAgICAgICAgIC0xIDxcbiAgICAgICAgICByZXF1aXJlZFBlcm1pc3Npb25zLmZpbmRJbmRleChcbiAgICAgICAgICAgIChmKSA9PiAtMSA8ICh0Py5maW5kSW5kZXgoKGkpID0+IGkgPT09IGYpID8/IC0xKSxcbiAgICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=","export var OidcEvent;\n(function (OidcEvent) {\n OidcEvent[\"AccessTokenExpired\"] = \"addAccessTokenExpired\";\n OidcEvent[\"AccessTokenExpiring\"] = \"addAccessTokenExpiring\";\n OidcEvent[\"SilentRenewError\"] = \"AddSilentRenewError\";\n OidcEvent[\"UserLoaded\"] = \"addUserLoaded\";\n OidcEvent[\"UserUnloaded\"] = \"addUserUnloaded\";\n OidcEvent[\"UserSignedOut\"] = \"addUserSignedOut\";\n OidcEvent[\"UserSessionChanged\"] = \"addUserSessionChanged\";\n})(OidcEvent || (OidcEvent = {}));\nexport var StorageKeys;\n(function (StorageKeys) {\n StorageKeys[\"PopupCallback\"] = \"ngoidc:isPopupCallback\";\n StorageKeys[\"OidcSettings\"] = \"ngoidc:settings\";\n})(StorageKeys || (StorageKeys = {}));\nexport const ACTION_NO_ACTION = 'NO_ACTION';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvbW9kZWxzL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHlEQUE0QyxDQUFBO0lBQzVDLDJEQUE4QyxDQUFBO0lBQzlDLHFEQUF3QyxDQUFBO0lBQ3hDLHlDQUE0QixDQUFBO0lBQzVCLDZDQUFnQyxDQUFBO0lBQ2hDLCtDQUFrQyxDQUFBO0lBQ2xDLHlEQUE0QyxDQUFBO0FBQzlDLENBQUMsRUFSVyxTQUFTLEtBQVQsU0FBUyxRQVFwQjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsdURBQXdDLENBQUE7SUFDeEMsK0NBQWdDLENBQUE7QUFDbEMsQ0FBQyxFQUhXLFdBQVcsS0FBWCxXQUFXLFFBR3RCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gT2lkY0V2ZW50IHtcbiAgQWNjZXNzVG9rZW5FeHBpcmVkID0gJ2FkZEFjY2Vzc1Rva2VuRXhwaXJlZCcsXG4gIEFjY2Vzc1Rva2VuRXhwaXJpbmcgPSAnYWRkQWNjZXNzVG9rZW5FeHBpcmluZycsXG4gIFNpbGVudFJlbmV3RXJyb3IgPSAnQWRkU2lsZW50UmVuZXdFcnJvcicsXG4gIFVzZXJMb2FkZWQgPSAnYWRkVXNlckxvYWRlZCcsXG4gIFVzZXJVbmxvYWRlZCA9ICdhZGRVc2VyVW5sb2FkZWQnLFxuICBVc2VyU2lnbmVkT3V0ID0gJ2FkZFVzZXJTaWduZWRPdXQnLFxuICBVc2VyU2Vzc2lvbkNoYW5nZWQgPSAnYWRkVXNlclNlc3Npb25DaGFuZ2VkJ1xufVxuXG5leHBvcnQgZW51bSBTdG9yYWdlS2V5cyB7XG4gIFBvcHVwQ2FsbGJhY2sgPSAnbmdvaWRjOmlzUG9wdXBDYWxsYmFjaycsXG4gIE9pZGNTZXR0aW5ncyA9ICduZ29pZGM6c2V0dGluZ3MnLFxufVxuXG5leHBvcnQgY29uc3QgQUNUSU9OX05PX0FDVElPTiA9ICdOT19BQ1RJT04nO1xuIl19","import { InjectionToken } from '@angular/core';\nexport const OIDC_LIBRARY_CONFIG = new InjectionToken('OIDC_LIBRARY_CONFIG');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy1saWJyYXJ5LWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvbGliL21vZGVscy9vaWRjLWxpYnJhcnktY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFZL0MsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQ25ELHFCQUFxQixDQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJNYW5hZ2VyU2V0dGluZ3MsIExvZ2dlciB9IGZyb20gJ29pZGMtY2xpZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBPaWRjTGlicmFyeUNvbmZpZyB7XG4gIG9pZGNfY29uZmlnOiBVc2VyTWFuYWdlclNldHRpbmdzO1xuICB1c2VDYWxsYmFja0ZsYWc6IGJvb2xlYW47XG4gIGdldFVzZXJNZXRhZGF0YTogYm9vbGVhbjtcbiAgbG9nPzoge1xuICAgIGxvZ2dlcjogTG9nZ2VyO1xuICAgIGxldmVsOiBudW1iZXI7XG4gIH07XG59XG5leHBvcnQgY29uc3QgT0lEQ19MSUJSQVJZX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPaWRjTGlicmFyeUNvbmZpZz4oXG4gICdPSURDX0xJQlJBUllfQ09ORklHJ1xuKTtcbiJdfQ==","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isPlatformBrowser } from '@angular/common';\nimport { Injectable, PLATFORM_ID, inject } from '@angular/core';\nimport { Log, OidcClient, UserManager, } from 'oidc-client';\nimport { from } from 'rxjs';\nimport { OidcEvent, StorageKeys } from '../models/constants';\nimport { switchMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { OIDC_LIBRARY_CONFIG, } from '../models/oidc-library-config';\nimport * as i0 from \"@angular/core\";\nexport class OidcService {\n constructor() {\n this.oidcLibraryConfig = inject(OIDC_LIBRARY_CONFIG);\n this.platformId = inject(PLATFORM_ID);\n this.httpClient = inject(HttpClient);\n const logSettings = this.oidcLibraryConfig.log;\n let clientSettings = this.oidcLibraryConfig.oidc_config;\n if (logSettings) {\n Log.level = logSettings.level;\n Log.logger = logSettings.logger;\n }\n if (clientSettings?.userStore != null) {\n clientSettings = {\n ...clientSettings,\n userStore: clientSettings.userStore,\n };\n }\n this._userManagerSettings = { ...clientSettings };\n this.OidcUserManager = new UserManager(clientSettings);\n this._oidcClient = new OidcClient(clientSettings);\n }\n getUserMetadata() {\n return this.httpClient\n .get(this.oidcLibraryConfig.oidc_config?.metadataUrl ?? '')\n .pipe(switchMap((openidConfig) => this.httpClient.get(openidConfig.userinfo_endpoint)));\n }\n getUserManager() {\n return this.OidcUserManager;\n }\n getOidcClient() {\n return this._oidcClient;\n }\n getOidcUser() {\n return from(this.OidcUserManager.getUser());\n }\n removeOidcUser() {\n return from(this.OidcUserManager.removeUser());\n }\n registerOidcEvent(event, callback) {\n switch (event) {\n case OidcEvent.AccessTokenExpired:\n this.OidcUserManager.events.addAccessTokenExpired(callback);\n break;\n case OidcEvent.AccessTokenExpiring:\n this.OidcUserManager.events.addAccessTokenExpiring(callback);\n break;\n case OidcEvent.SilentRenewError:\n this.OidcUserManager.events.addSilentRenewError(callback);\n break;\n case OidcEvent.UserLoaded:\n this.OidcUserManager.events.addUserLoaded(callback);\n break;\n case OidcEvent.UserSessionChanged:\n this.OidcUserManager.events.addUserSessionChanged(callback);\n break;\n case OidcEvent.UserSignedOut:\n this.OidcUserManager.events.addUserSignedOut(callback);\n break;\n case OidcEvent.UserUnloaded:\n this.OidcUserManager.events.addUserUnloaded(callback);\n break;\n default:\n break;\n }\n }\n removeOidcEvent(event, callback) {\n switch (event) {\n case OidcEvent.AccessTokenExpired:\n this.OidcUserManager.events.removeAccessTokenExpired(callback);\n break;\n case OidcEvent.AccessTokenExpiring:\n this.OidcUserManager.events.removeAccessTokenExpiring(callback);\n break;\n case OidcEvent.SilentRenewError:\n this.OidcUserManager.events.removeSilentRenewError(callback);\n break;\n case OidcEvent.UserLoaded:\n this.OidcUserManager.events.removeUserLoaded(callback);\n break;\n case OidcEvent.UserSessionChanged:\n this.OidcUserManager.events.removeUserSessionChanged(callback);\n break;\n case OidcEvent.UserSignedOut:\n this.OidcUserManager.events.removeUserSignedOut(callback);\n break;\n case OidcEvent.UserUnloaded:\n this.OidcUserManager.events.removeUserUnloaded(callback);\n break;\n default:\n break;\n }\n }\n signInPopup(args) {\n //NOSONAR\n this.setCallbackInformation(true);\n return from(this.OidcUserManager.signinPopup({ ...args }));\n }\n signInRedirect(args) {\n //NOSONAR\n this.setCallbackInformation(false);\n return from(this.OidcUserManager.signinRedirect({ ...args }));\n }\n signOutPopup(args) {\n //NOSONAR\n this.setCallbackInformation(true);\n return from(this.OidcUserManager.signoutPopup({ ...args }));\n }\n signOutRedirect(args) {\n //NOSONAR\n this.setCallbackInformation(false);\n return from(this.OidcUserManager.signoutRedirect({ ...args }));\n }\n signInSilent(args) {\n //NOSONAR\n return from(this.OidcUserManager.signinSilent({ ...args }));\n }\n signinPopupCallback() {\n //NOSONAR\n return from(this.OidcUserManager.signinPopupCallback());\n }\n signinRedirectCallback() {\n return from(this.OidcUserManager.signinRedirectCallback());\n }\n signoutPopupCallback() {\n return from(this.OidcUserManager.signoutPopupCallback());\n }\n signoutRedirectCallback() {\n //NOSONAR\n return from(this.OidcUserManager.signoutRedirectCallback());\n }\n getSigninUrl(args) {\n //NOSONAR\n return from(this.OidcUserManager.createSigninRequest(args));\n }\n getSignoutUrl(args) {\n //NOSONAR\n return from(this.OidcUserManager.createSignoutRequest(args));\n }\n setCallbackInformation(isPopupCallback) {\n // is browser and useCallbackFlag set to true or defaults to true\n if (isPlatformBrowser(this.platformId) &&\n this.oidcLibraryConfig.useCallbackFlag) {\n localStorage.setItem(StorageKeys.PopupCallback, `${isPopupCallback}`);\n localStorage.setItem(StorageKeys.OidcSettings, JSON.stringify(this._userManagerSettings));\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvc2VydmljZXMvb2lkYy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUNMLEdBQUcsRUFDSCxVQUFVLEVBR1YsV0FBVyxHQUVaLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxJQUFJLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFFTCxtQkFBbUIsR0FDcEIsTUFBTSwrQkFBK0IsQ0FBQzs7QUFLdkMsTUFBTSxPQUFPLFdBQVc7SUFVdEI7UUFUaUIsc0JBQWlCLEdBQ2hDLE1BQU0sQ0FBb0IsbUJBQW1CLENBQUMsQ0FBQztRQUNoQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFPL0MsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQztRQUMvQyxJQUFJLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDO1FBRXhELElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsR0FBRyxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxD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SUFBSSxDQUFDLGVBQWUsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFVO1FBQ3JCLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFVO1FBQ3RCLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVPLHNCQUFzQixDQUFDLGVBQXdCO1FBQ3JELGlFQUFpRTtRQUNqRSxJQUNFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDbEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFDdEMsQ0FBQztZQUNELFlBQVksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxHQUFHLGVBQWUsRUFBRSxDQUFDLENBQUM7WUFDdEUsWUFBWSxDQUFDLE9BQU8sQ0FDbEIsV0FBVyxDQUFDLFlBQVksRUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FDMUMsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDOzhHQWhNVSxXQUFXO2tIQUFYLFdBQVcsY0FGVixNQUFNOzsyRkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdGFibGUsIFBMQVRGT1JNX0lELCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIExvZyxcbiAgT2lkY0NsaWVudCxcbiAgU2lnbmluUmVxdWVzdCxcbiAgU2lnbm91dFJlcXVlc3QsXG4gIFVzZXJNYW5hZ2VyLFxuICBVc2VyTWFuYWdlclNldHRpbmdzLFxufSBmcm9tICdvaWRjLWNsaWVudCc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPaWRjRXZlbnQsIFN0b3JhZ2VLZXlzIH0gZnJvbSAnLi4vbW9kZWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBJT2lkY1VzZXIgfSBmcm9tICcuLi9tb2RlbHMvb2lkYy11c2VyJztcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge1xuICBPaWRjTGlicmFyeUNvbmZpZyxcbiAgT0lEQ19MSUJSQVJZX0NPTkZJRyxcbn0gZnJvbSAnLi4vbW9kZWxzL29pZGMtbGlicmFyeS1jb25maWcnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgT2lkY1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IG9pZGNMaWJyYXJ5Q29uZmlnID1cbiAgICBpbmplY3Q8T2lkY0xpYnJhcnlDb25maWc+KE9JRENfTElCUkFSWV9DT05GSUcpO1xuICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IE9pZGNVc2VyTWFuYWdlcjogVXNlck1hbmFnZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgX29pZGNDbGllbnQ6IE9pZGNDbGllbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3VzZXJNYW5hZ2VyU2V0dGluZ3M6IFVzZXJNYW5hZ2VyU2V0dGluZ3M7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgbG9nU2V0dGluZ3MgPSB0aGlzLm9pZGNMaWJyYXJ5Q29uZmlnLmxvZztcbiAgICBsZXQgY2xpZW50U2V0dGluZ3MgPSB0aGlzLm9pZGNMaWJyYXJ5Q29uZmlnLm9pZGNfY29uZmlnO1xuXG4gICAgaWYgKGxvZ1NldHRpbmdzKSB7XG4gICAgICBMb2cubGV2ZWwgPSBsb2dTZXR0aW5ncy5sZXZlbDtcbiAgICAgIExvZy5sb2dnZXIgPSBsb2dTZXR0aW5ncy5sb2dnZXI7XG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFNldHRpbmdzPy51c2VyU3RvcmUgIT0gbnVsbCkge1xuICAgICAgY2xpZW50U2V0dGluZ3MgPSB7XG4gICAgICAgIC4uLmNsaWVudFNldHRpbmdzLFxuICAgICAgICB1c2VyU3RvcmU6IGNsaWVudFNldHRpbmdzLnVzZXJTdG9yZSxcbiAgICAgIH07XG4gICAgfVxuICAgIHRoaXMuX3VzZXJNYW5hZ2VyU2V0dGluZ3MgPSB7IC4uLmNsaWVudFNldHRpbmdzIH07XG4gICAgdGhpcy5PaWRjVXNlck1hbmFnZXIgPSBuZXcgVXNlck1hbmFnZXIoY2xpZW50U2V0dGluZ3MpO1xuICAgIHRoaXMuX29pZGNDbGllbnQgPSBuZXcgT2lkY0NsaWVudChjbGllbnRTZXR0aW5ncyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VXNlck1ldGFkYXRhKCk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQ8e1xuICAgICAgICB1c2VyaW5mb19lbmRwb2ludDogc3RyaW5nO1xuICAgICAgfT4odGhpcy5vaWRjTGlicmFyeUNvbmZpZy5vaWRjX2NvbmZpZz8ubWV0YWRhdGFVcmwgPz8gJycpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChvcGVuaWRDb25maWcpID0+XG4gICAgICAgICAgdGhpcy5odHRwQ2xpZW50LmdldDx1bmtub3duPihvcGVuaWRDb25maWcudXNlcmluZm9fZW5kcG9pbnQpLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgfVxuXG4gIGdldFVzZXJNYW5hZ2VyKCk6IFVzZXJNYW5hZ2VyIHtcbiAgICByZXR1cm4gdGhpcy5PaWRjVXNlck1hbmFnZXI7XG4gIH1cblxuICBnZXRPaWRjQ2xpZW50KCk6IE9pZGNDbGllbnQge1xuICAgIHJldHVybiB0aGlzLl9vaWRjQ2xpZW50O1xuICB9XG5cbiAgZ2V0T2lkY1VzZXIoKTogT2JzZXJ2YWJsZTxJT2lkY1VzZXIgfCBudWxsPiB7XG4gICAgcmV0dXJuIGZyb20odGhpcy5PaWRjVXNlck1hbmFnZXIuZ2V0VXNlcigpKTtcbiAgfVxuXG4gIHJlbW92ZU9pZGNVc2VyKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLnJlbW92ZVVzZXIoKSk7XG4gIH1cblxuICByZWdpc3Rlck9pZGNFdmVudChcbiAgICBldmVudDogT2lkY0V2ZW50LFxuICAgIGNhbGxiYWNrOiAoLi4uZXY6IHVua25vd25bXSkgPT4gdm9pZCxcbiAgKTogdm9pZCB7XG4gICAgc3dpdGNoIChldmVudCkge1xuICAgICAgY2FzZSBPaWRjRXZlbnQuQWNjZXNzVG9rZW5FeHBpcmVkOlxuICAgICAgICB0aGlzLk9pZGNVc2VyTWFuYWdlci5ldmVudHMuYWRkQWNjZXNzVG9rZW5FeHBpcmVkKGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5BY2Nlc3NUb2tlbkV4cGlyaW5nOlxuICAgICAgICB0aGlzLk9pZGNVc2VyTWFuYWdlci5ldmVudHMuYWRkQWNjZXNzVG9rZW5FeHBpcmluZyhjYWxsYmFjayk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBPaWRjRXZlbnQuU2lsZW50UmVuZXdFcnJvcjpcbiAgICAgICAgdGhpcy5PaWRjVXNlck1hbmFnZXIuZXZlbnRzLmFkZFNpbGVudFJlbmV3RXJyb3IoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT2lkY0V2ZW50LlVzZXJMb2FkZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5hZGRVc2VyTG9hZGVkKGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5Vc2VyU2Vzc2lvbkNoYW5nZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5hZGRVc2VyU2Vzc2lvbkNoYW5nZWQoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT2lkY0V2ZW50LlVzZXJTaWduZWRPdXQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5hZGRVc2VyU2lnbmVkT3V0KGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5Vc2VyVW5sb2FkZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5hZGRVc2VyVW5sb2FkZWQoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZU9pZGNFdmVudChcbiAgICBldmVudDogT2lkY0V2ZW50LFxuICAgIGNhbGxiYWNrOiAoLi4uZXY6IHVua25vd25bXSkgPT4gdm9pZCxcbiAgKTogdm9pZCB7XG4gICAgc3dpdGNoIChldmVudCkge1xuICAgICAgY2FzZSBPaWRjRXZlbnQuQWNjZXNzVG9rZW5FeHBpcmVkOlxuICAgICAgICB0aGlzLk9pZGNVc2VyTWFuYWdlci5ldmVudHMucmVtb3ZlQWNjZXNzVG9rZW5FeHBpcmVkKGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5BY2Nlc3NUb2tlbkV4cGlyaW5nOlxuICAgICAgICB0aGlzLk9pZGNVc2VyTWFuYWdlci5ldmVudHMucmVtb3ZlQWNjZXNzVG9rZW5FeHBpcmluZyhjYWxsYmFjayk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBPaWRjRXZlbnQuU2lsZW50UmVuZXdFcnJvcjpcbiAgICAgICAgdGhpcy5PaWRjVXNlck1hbmFnZXIuZXZlbnRzLnJlbW92ZVNpbGVudFJlbmV3RXJyb3IoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT2lkY0V2ZW50LlVzZXJMb2FkZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5yZW1vdmVVc2VyTG9hZGVkKGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5Vc2VyU2Vzc2lvbkNoYW5nZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5yZW1vdmVVc2VyU2Vzc2lvbkNoYW5nZWQoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT2lkY0V2ZW50LlVzZXJTaWduZWRPdXQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5yZW1vdmVVc2VyU2lnbmVkT3V0KGNhbGxiYWNrKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9pZGNFdmVudC5Vc2VyVW5sb2FkZWQ6XG4gICAgICAgIHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmV2ZW50cy5yZW1vdmVVc2VyVW5sb2FkZWQoY2FsbGJhY2spO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHNpZ25JblBvcHVwKGFyZ3M/OiBhbnkpOiBPYnNlcnZhYmxlPElPaWRjVXNlcj4ge1xuICAgIC8vTk9TT05BUlxuICAgIHRoaXMuc2V0Q2FsbGJhY2tJbmZvcm1hdGlvbih0cnVlKTtcblxuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLnNpZ25pblBvcHVwKHsgLi4uYXJncyB9KSk7XG4gIH1cblxuICBzaWduSW5SZWRpcmVjdChhcmdzPzogYW55KTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgLy9OT1NPTkFSXG4gICAgdGhpcy5zZXRDYWxsYmFja0luZm9ybWF0aW9uKGZhbHNlKTtcblxuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLnNpZ25pblJlZGlyZWN0KHsgLi4uYXJncyB9KSk7XG4gIH1cblxuICBzaWduT3V0UG9wdXAoYXJncz86IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgLy9OT1NPTkFSXG4gICAgdGhpcy5zZXRDYWxsYmFja0luZm9ybWF0aW9uKHRydWUpO1xuXG4gICAgcmV0dXJuIGZyb20odGhpcy5PaWRjVXNlck1hbmFnZXIuc2lnbm91dFBvcHVwKHsgLi4uYXJncyB9KSk7XG4gIH1cblxuICBzaWduT3V0UmVkaXJlY3QoYXJncz86IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgLy9OT1NPTkFSXG4gICAgdGhpcy5zZXRDYWxsYmFja0luZm9ybWF0aW9uKGZhbHNlKTtcbiAgICByZXR1cm4gZnJvbSh0aGlzLk9pZGNVc2VyTWFuYWdlci5zaWdub3V0UmVkaXJlY3QoeyAuLi5hcmdzIH0pKTtcbiAgfVxuXG4gIHNpZ25JblNpbGVudChhcmdzPzogYW55KTogT2JzZXJ2YWJsZTxJT2lkY1VzZXI+IHtcbiAgICAvL05PU09OQVJcbiAgICByZXR1cm4gZnJvbSh0aGlzLk9pZGNVc2VyTWFuYWdlci5zaWduaW5TaWxlbnQoeyAuLi5hcmdzIH0pKTtcbiAgfVxuXG4gIHNpZ25pblBvcHVwQ2FsbGJhY2soKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAvL05PU09OQVJcbiAgICByZXR1cm4gZnJvbSh0aGlzLk9pZGNVc2VyTWFuYWdlci5zaWduaW5Qb3B1cENhbGxiYWNrKCkpO1xuICB9XG5cbiAgc2lnbmluUmVkaXJlY3RDYWxsYmFjaygpOiBPYnNlcnZhYmxlPElPaWRjVXNlcj4ge1xuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLnNpZ25pblJlZGlyZWN0Q2FsbGJhY2soKSk7XG4gIH1cblxuICBzaWdub3V0UG9wdXBDYWxsYmFjaygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gZnJvbSh0aGlzLk9pZGNVc2VyTWFuYWdlci5zaWdub3V0UG9wdXBDYWxsYmFjaygpKTtcbiAgfVxuXG4gIHNpZ25vdXRSZWRpcmVjdENhbGxiYWNrKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgLy9OT1NPTkFSXG4gICAgcmV0dXJuIGZyb20odGhpcy5PaWRjVXNlck1hbmFnZXIuc2lnbm91dFJlZGlyZWN0Q2FsbGJhY2soKSk7XG4gIH1cblxuICBnZXRTaWduaW5VcmwoYXJncz86IGFueSk6IE9ic2VydmFibGU8U2lnbmluUmVxdWVzdD4ge1xuICAgIC8vTk9TT05BUlxuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmNyZWF0ZVNpZ25pblJlcXVlc3QoYXJncykpO1xuICB9XG5cbiAgZ2V0U2lnbm91dFVybChhcmdzPzogYW55KTogT2JzZXJ2YWJsZTxTaWdub3V0UmVxdWVzdD4ge1xuICAgIC8vTk9TT05BUlxuICAgIHJldHVybiBmcm9tKHRoaXMuT2lkY1VzZXJNYW5hZ2VyLmNyZWF0ZVNpZ25vdXRSZXF1ZXN0KGFyZ3MpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2FsbGJhY2tJbmZvcm1hdGlvbihpc1BvcHVwQ2FsbGJhY2s6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBpcyBicm93c2VyIGFuZCB1c2VDYWxsYmFja0ZsYWcgc2V0IHRvIHRydWUgb3IgZGVmYXVsdHMgdG8gdHJ1ZVxuICAgIGlmIChcbiAgICAgIGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiZcbiAgICAgIHRoaXMub2lkY0xpYnJhcnlDb25maWcudXNlQ2FsbGJhY2tGbGFnXG4gICAgKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShTdG9yYWdlS2V5cy5Qb3B1cENhbGxiYWNrLCBgJHtpc1BvcHVwQ2FsbGJhY2t9YCk7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICAgU3RvcmFnZUtleXMuT2lkY1NldHRpbmdzLFxuICAgICAgICBKU09OLnN0cmluZ2lmeSh0aGlzLl91c2VyTWFuYWdlclNldHRpbmdzKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { filter, take, map } from 'rxjs/operators';\nimport { oidcSelectors } from './oidc.selectors';\nimport { OidcService } from '../services/oidc.service';\nimport { OidcEvent } from '../models/constants';\nimport * as oidcActions from './oidc.actions';\nimport * as i0 from \"@angular/core\";\nexport class OidcFacade {\n constructor() {\n this.store = inject(Store);\n this.oidcService = inject(OidcService);\n this.loading$ = this.store.select(oidcSelectors.selectIsLoading);\n this.expiring$ = this.store.select(oidcSelectors.selectIsExpiring);\n this.expired$ = this.store.select(oidcSelectors.selectIsExpired);\n this.loggedIn$ = this.store.select(oidcSelectors.selectIsLoggedIn);\n this.identity$ = this.store.select(oidcSelectors.selectIdentity);\n this.accessToken$ = this.store.select(oidcSelectors.selectAccessToken);\n this.httpError$ = this.store.select(oidcSelectors.selectHttpError);\n this.signInError$ = this.store.select(oidcSelectors.selectSignInError);\n this.silentRenewError$ = this.store.select(oidcSelectors.selectSilentRenewError);\n this.hasErrors$ = this.store.select(oidcSelectors.selectHasErrors);\n this.permissions$ = this.store.select(oidcSelectors.selectPermissions);\n this.audiences$ = this.store.select(oidcSelectors.selectAudiences);\n this.expiresAt$ = this.store.select(oidcSelectors.selectExpiresAt);\n this.userMetadata$ = this.store.select(oidcSelectors.selectUserMetadata);\n this.registerDefaultEvents();\n }\n // default bindings to events\n addUserUnLoaded() {\n this.store?.dispatch(oidcActions.onUserUnloaded());\n }\n accessTokenExpired() {\n if (this.store) {\n this.store.dispatch(oidcActions.onAccessTokenExpired());\n }\n else {\n sessionStorage.clear();\n localStorage.clear();\n window.location.reload();\n }\n }\n accessTokenExpiring() {\n if (this.store) {\n this.store.dispatch(oidcActions.onAccessTokenExpiring());\n }\n else {\n this.accessTokenExpired();\n }\n }\n addSilentRenewError(...ev) {\n this.store.dispatch(oidcActions.onSilentRenewError(ev[0]));\n }\n addUserLoaded(...ev) {\n this.store.dispatch(oidcActions.onUserLoaded(ev[0]));\n }\n addUserSignedOut() {\n this.oidcService?.removeOidcUser();\n this.store?.dispatch(oidcActions.onUserSignedOut());\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n addUserSessionChanged() {\n this.store.dispatch(oidcActions.onSessionChanged());\n }\n clearErrors() {\n this.store.dispatch(oidcActions.clearErrors());\n }\n // OIDC Methods\n getOidcUser() {\n this.store.dispatch(oidcActions.getOidcUser());\n }\n removeOidcUser() {\n this.store.dispatch(oidcActions.removeOidcUser());\n }\n getUserManager() {\n return this.oidcService.getUserManager();\n }\n getOidcClient() {\n return this.oidcService.getOidcClient();\n }\n /**\n * Convenient function to wait for OIDC dependencies to be loaded.\n */\n waitForAuthenticationLoaded() {\n return this.loading$.pipe(filter((loading) => loading === false), take(1), map(() => true));\n }\n signinPopup(args) {\n this.store.dispatch(oidcActions.signInPopup(args));\n }\n signinRedirect(args) {\n this.store.dispatch(oidcActions.signInRedirect(args));\n }\n signinSilent(args) {\n this.store.dispatch(oidcActions.signInSilent(args));\n }\n signoutPopup(args) {\n this.store.dispatch(oidcActions.signOutPopup(args));\n }\n signoutRedirect(args) {\n this.store.dispatch(oidcActions.signOutRedirect(args));\n }\n getSigninUrl(args) {\n return this.oidcService.getSigninUrl(args);\n }\n getSignoutUrl(args) {\n return this.oidcService.getSignoutUrl(args);\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerEvent(event, callback) {\n this.oidcService.registerOidcEvent(event, callback);\n }\n registerDefaultEvents() {\n // add simple loggers\n this.registerEvent(OidcEvent.AccessTokenExpired, this.accessTokenExpired);\n this.registerEvent(OidcEvent.AccessTokenExpiring, this.accessTokenExpiring);\n this.registerEvent(OidcEvent.SilentRenewError, this.addSilentRenewError);\n this.registerEvent(OidcEvent.UserLoaded, this.addUserLoaded);\n this.registerEvent(OidcEvent.UserUnloaded, this.addUserUnLoaded);\n this.registerEvent(OidcEvent.UserSignedOut, this.addUserSignedOut);\n this.registerEvent(OidcEvent.UserSessionChanged, this.addUserSessionChanged);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcFacade, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcFacade, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi8rc3RhdGUvb2lkYy5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFRcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLFdBQVcsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFPOUMsTUFBTSxPQUFPLFVBQVU7SUFJckI7UUFIaUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQU1uRCxhQUFRLEdBQXdCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUMvQyxhQUFhLENBQUMsZUFBZSxDQUM5QixDQUFDO1FBQ0YsY0FBUyxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDaEQsYUFBYSxDQUFDLGdCQUFnQixDQUMvQixDQUFDO1FBQ0YsYUFBUSxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDL0MsYUFBYSxDQUFDLGVBQWUsQ0FDOUIsQ0FBQztRQUNGLGNBQVMsR0FBd0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ2hELGFBQWEsQ0FBQyxnQkFBZ0IsQ0FDL0IsQ0FB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O1FBQzdELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxhQUFhLENBQ2hCLFNBQVMsQ0FBQyxrQkFBa0IsRUFDNUIsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO0lBQ0osQ0FBQzs4R0EzS1UsVUFBVTtrSEFBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgT2lkY0NsaWVudCxcbiAgU2lnbmluUmVxdWVzdCxcbiAgU2lnbm91dFJlcXVlc3QsXG4gIFVzZXJNYW5hZ2VyLFxufSBmcm9tICdvaWRjLWNsaWVudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHRha2UsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IG9pZGNTZWxlY3RvcnMgfSBmcm9tICcuL29pZGMuc2VsZWN0b3JzJztcbmltcG9ydCB7IE9pZGNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvb2lkYy5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcXVlc3RBcnVnbWVudHMgfSBmcm9tICcuLi9tb2RlbHMvYXJndW1lbnRzLm1vZGVsJztcbmltcG9ydCB7IE9pZGNFdmVudCB9IGZyb20gJy4uL21vZGVscy9jb25zdGFudHMnO1xuaW1wb3J0ICogYXMgb2lkY0FjdGlvbnMgZnJvbSAnLi9vaWRjLmFjdGlvbnMnO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJT2lkY1VzZXIgfSBmcm9tICcuLi9tb2RlbHMvb2lkYy11c2VyJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE9pZGNGYWNhZGUge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvaWRjU2VydmljZSA9IGluamVjdChPaWRjU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5yZWdpc3RlckRlZmF1bHRFdmVudHMoKTtcbiAgfVxuXG4gIGxvYWRpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1NlbGVjdG9ycy5zZWxlY3RJc0xvYWRpbmcsXG4gICk7XG4gIGV4cGlyaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RvcmUuc2VsZWN0KFxuICAgIG9pZGNTZWxlY3RvcnMuc2VsZWN0SXNFeHBpcmluZyxcbiAgKTtcbiAgZXhwaXJlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjU2VsZWN0b3JzLnNlbGVjdElzRXhwaXJlZCxcbiAgKTtcbiAgbG9nZ2VkSW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1NlbGVjdG9ycy5zZWxlY3RJc0xvZ2dlZEluLFxuICApO1xuICBpZGVudGl0eSQ6IE9ic2VydmFibGU8SU9pZGNVc2VyIHwgdW5kZWZpbmVkPiA9IHRoaXMuc3RvcmUuc2VsZWN0KFxuICAgIG9pZGNTZWxlY3RvcnMuc2VsZWN0SWRlbnRpdHksXG4gICk7XG4gIGFjY2Vzc1Rva2VuJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1NlbGVjdG9ycy5zZWxlY3RBY2Nlc3NUb2tlbixcbiAgKTtcbiAgaHR0cEVycm9yJDogT2JzZXJ2YWJsZTxIdHRwRXJyb3JSZXNwb25zZSB8IHVuZGVmaW5lZD4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjU2VsZWN0b3JzLnNlbGVjdEh0dHBFcnJvcixcbiAgKTtcbiAgc2lnbkluRXJyb3IkOiBPYnNlcnZhYmxlPHVua25vd24+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1NlbGVjdG9ycy5zZWxlY3RTaWduSW5FcnJvcixcbiAgKTtcbiAgc2lsZW50UmVuZXdFcnJvciQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjU2VsZWN0b3JzLnNlbGVjdFNpbGVudFJlbmV3RXJyb3IsXG4gICk7XG4gIGhhc0Vycm9ycyQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0b3JlLnNlbGVjdChcbiAgICBvaWRjU2VsZWN0b3JzLnNlbGVjdEhhc0Vycm9ycyxcbiAgKTtcbiAgcGVybWlzc2lvbnMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdIHwgdW5kZWZpbmVkPiA9IHRoaXMuc3RvcmUuc2VsZWN0KFxuICAgIG9pZGNTZWxlY3RvcnMuc2VsZWN0UGVybWlzc2lvbnMsXG4gICk7XG4gIGF1ZGllbmNlcyQ6IE9ic2VydmFibGU8c3RyaW5nW10gfCBudWxsIHwgdW5kZWZpbmVkPiA9IHRoaXMuc3RvcmUuc2VsZWN0KFxuICAgIG9pZGNTZWxlY3RvcnMuc2VsZWN0QXVkaWVuY2VzLFxuICApO1xuICBleHBpcmVzQXQkOiBPYnNlcnZhYmxlPERhdGUgfCBudWxsPiA9IHRoaXMuc3RvcmUuc2VsZWN0KFxuICAgIG9pZGNTZWxlY3RvcnMuc2VsZWN0RXhwaXJlc0F0LFxuICApO1xuICB1c2VyTWV0YWRhdGEkOiBPYnNlcnZhYmxlPHVua25vd24+ID0gdGhpcy5zdG9yZS5zZWxlY3QoXG4gICAgb2lkY1NlbGVjdG9ycy5zZWxlY3RVc2VyTWV0YWRhdGEsXG4gICk7XG5cbiAgLy8gZGVmYXVsdCBiaW5kaW5ncyB0byBldmVudHNcbiAgcHVibGljIGFkZFVzZXJVbkxvYWRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlPy5kaXNwYXRjaChvaWRjQWN0aW9ucy5vblVzZXJVbmxvYWRlZCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBhY2Nlc3NUb2tlbkV4cGlyZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RvcmUpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob2lkY0FjdGlvbnMub25BY2Nlc3NUb2tlbkV4cGlyZWQoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNlc3Npb25TdG9yYWdlLmNsZWFyKCk7XG4gICAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWNjZXNzVG9rZW5FeHBpcmluZygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdG9yZSkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChvaWRjQWN0aW9ucy5vbkFjY2Vzc1Rva2VuRXhwaXJpbmcoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWNjZXNzVG9rZW5FeHBpcmVkKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkZFNpbGVudFJlbmV3RXJyb3IoLi4uZXY6IHVua25vd25bXSk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob2lkY0FjdGlvbnMub25TaWxlbnRSZW5ld0Vycm9yKGV2WzBdIGFzIEVycm9yKSk7XG4gIH1cblxuICBwdWJsaWMgYWRkVXNlckxvYWRlZCguLi5ldjogdW5rbm93bltdKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChvaWRjQWN0aW9ucy5vblVzZXJMb2FkZWQoZXZbMF0gYXMgSU9pZGNVc2VyKSk7XG4gIH1cblxuICBwdWJsaWMgYWRkVXNlclNpZ25lZE91dCgpOiB2b2lkIHtcbiAgICB0aGlzLm9pZGNTZXJ2aWNlPy5yZW1vdmVPaWRjVXNlcigpO1xuICAgIHRoaXMuc3RvcmU/LmRpc3BhdGNoKG9pZGNBY3Rpb25zLm9uVXNlclNpZ25lZE91dCgpKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHVibGljIGFkZFVzZXJTZXNzaW9uQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9pZGNBY3Rpb25zLm9uU2Vzc2lvbkNoYW5nZWQoKSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJFcnJvcnMoKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChvaWRjQWN0aW9ucy5jbGVhckVycm9ycygpKTtcbiAgfVxuXG4gIC8vIE9JREMgTWV0aG9kc1xuXG4gIHB1YmxpYyBnZXRPaWRjVXNlcigpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9pZGNBY3Rpb25zLmdldE9pZGNVc2VyKCkpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZU9pZGNVc2VyKCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob2lkY0FjdGlvbnMucmVtb3ZlT2lkY1VzZXIoKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VXNlck1hbmFnZXIoKTogVXNlck1hbmFnZXIge1xuICAgIHJldHVybiB0aGlzLm9pZGNTZXJ2aWNlLmdldFVzZXJNYW5hZ2VyKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0T2lkY0NsaWVudCgpOiBPaWRjQ2xpZW50IHtcbiAgICByZXR1cm4gdGhpcy5vaWRjU2VydmljZS5nZXRPaWRjQ2xpZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVuaWVudCBmdW5jdGlvbiB0byB3YWl0IGZvciBPSURDIGRlcGVuZGVuY2llcyB0byBiZSBsb2FkZWQuXG4gICAqL1xuICBwdWJsaWMgd2FpdEZvckF1dGhlbnRpY2F0aW9uTG9hZGVkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRpbmckLnBpcGUoXG4gICAgICBmaWx0ZXIoKGxvYWRpbmcpID0+IGxvYWRpbmcgPT09IGZhbHNlKSxcbiAgICAgIHRha2UoMSksXG4gICAgICBtYXAoKCkgPT4gdHJ1ZSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzaWduaW5Qb3B1cChhcmdzOiBSZXF1ZXN0QXJ1Z21lbnRzKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChvaWRjQWN0aW9ucy5zaWduSW5Qb3B1cChhcmdzKSk7XG4gIH1cblxuICBwdWJsaWMgc2lnbmluUmVkaXJlY3QoYXJncz86IFJlcXVlc3RBcnVnbWVudHMpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9pZGNBY3Rpb25zLnNpZ25JblJlZGlyZWN0KGFyZ3MpKTtcbiAgfVxuXG4gIHB1YmxpYyBzaWduaW5TaWxlbnQoYXJnczogUmVxdWVzdEFydWdtZW50cyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob2lkY0FjdGlvbnMuc2lnbkluU2lsZW50KGFyZ3MpKTtcbiAgfVxuXG4gIHB1YmxpYyBzaWdub3V0UG9wdXAoYXJnczogUmVxdWVzdEFydWdtZW50cyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob2lkY0FjdGlvbnMuc2lnbk91dFBvcHVwKGFyZ3MpKTtcbiAgfVxuXG4gIHB1YmxpYyBzaWdub3V0UmVkaXJlY3QoYXJncz86IFJlcXVlc3RBcnVnbWVudHMpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9pZGNBY3Rpb25zLnNpZ25PdXRSZWRpcmVjdChhcmdzKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2lnbmluVXJsKGFyZ3M/OiBSZXF1ZXN0QXJ1Z21lbnRzKTogT2JzZXJ2YWJsZTxTaWduaW5SZXF1ZXN0PiB7XG4gICAgcmV0dXJuIHRoaXMub2lkY1NlcnZpY2UuZ2V0U2lnbmluVXJsKGFyZ3MpO1xuICB9XG5cbiAgZ2V0U2lnbm91dFVybChhcmdzPzogUmVxdWVzdEFydWdtZW50cyk6IE9ic2VydmFibGU8U2lnbm91dFJlcXVlc3Q+IHtcbiAgICByZXR1cm4gdGhpcy5vaWRjU2VydmljZS5nZXRTaWdub3V0VXJsKGFyZ3MpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcmVnaXN0ZXJFdmVudChldmVudDogT2lkY0V2ZW50LCBjYWxsYmFjazogKC4uLmV2OiB1bmtub3duW10pID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9pZGNTZXJ2aWNlLnJlZ2lzdGVyT2lkY0V2ZW50KGV2ZW50LCBjYWxsYmFjayk7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyRGVmYXVsdEV2ZW50cygpOiB2b2lkIHtcbiAgICAvLyBhZGQgc2ltcGxlIGxvZ2dlcnNcbiAgICB0aGlzLnJlZ2lzdGVyRXZlbnQoT2lkY0V2ZW50LkFjY2Vzc1Rva2VuRXhwaXJlZCwgdGhpcy5hY2Nlc3NUb2tlbkV4cGlyZWQpO1xuICAgIHRoaXMucmVnaXN0ZXJFdmVudChPaWRjRXZlbnQuQWNjZXNzVG9rZW5FeHBpcmluZywgdGhpcy5hY2Nlc3NUb2tlbkV4cGlyaW5nKTtcbiAgICB0aGlzLnJlZ2lzdGVyRXZlbnQoT2lkY0V2ZW50LlNpbGVudFJlbmV3RXJyb3IsIHRoaXMuYWRkU2lsZW50UmVuZXdFcnJvcik7XG5cbiAgICB0aGlzLnJlZ2lzdGVyRXZlbnQoT2lkY0V2ZW50LlVzZXJMb2FkZWQsIHRoaXMuYWRkVXNlckxvYWRlZCk7XG4gICAgdGhpcy5yZWdpc3RlckV2ZW50KE9pZGNFdmVudC5Vc2VyVW5sb2FkZWQsIHRoaXMuYWRkVXNlclVuTG9hZGVkKTtcbiAgICB0aGlzLnJlZ2lzdGVyRXZlbnQoT2lkY0V2ZW50LlVzZXJTaWduZWRPdXQsIHRoaXMuYWRkVXNlclNpZ25lZE91dCk7XG4gICAgdGhpcy5yZWdpc3RlckV2ZW50KFxuICAgICAgT2lkY0V2ZW50LlVzZXJTZXNzaW9uQ2hhbmdlZCxcbiAgICAgIHRoaXMuYWRkVXNlclNlc3Npb25DaGFuZ2VkLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Component, inject } from '@angular/core';\nimport { OidcFacade } from '../+state/oidc.facade';\nimport { OidcUserFacade } from '../+state/oidc-user.facade';\nimport { map } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class SupportComponent {\n constructor() {\n this.facade = inject(OidcFacade);\n this.oidcUserFacade = inject(OidcUserFacade);\n this.profileValue$ = this.oidcUserFacade.profile$.pipe(map((x) => Object.keys(x).map((propertyKey) => ({\n key: propertyKey,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: x[propertyKey], //NOSONAR\n }))));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: SupportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: SupportComponent, isStandalone: false, selector: \"imng-support\", ngImport: i0, template: `<div class=\"container pt-5 mt-5\">\n <div class=\"row h3 text-center\">\n <div class=\"col-md-12 text-center\">OIDC Support</div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Audiences</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.audiences$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Permissions</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.permissions$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Expires</div>\n <div class=\"col-md-8\">{{ facade.expiresAt$ | async }}</div>\n </div>\n @for (item of profileValue$ | async; track item) {\n <div class=\"row\">\n <div class=\"col-md-3\">{{ item.key }}</div>\n <div class=\"col-md-8\">{{ item.value }}</div>\n </div>\n }\n </div>`, isInline: true, dependencies: [{ kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: SupportComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'imng-support',\n template: `<div class=\"container pt-5 mt-5\">\n <div class=\"row h3 text-center\">\n <div class=\"col-md-12 text-center\">OIDC Support</div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Audiences</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.audiences$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Permissions</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.permissions$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Expires</div>\n <div class=\"col-md-8\">{{ facade.expiresAt$ | async }}</div>\n </div>\n @for (item of profileValue$ | async; track item) {\n <div class=\"row\">\n <div class=\"col-md-3\">{{ item.key }}</div>\n <div class=\"col-md-8\">{{ item.value }}</div>\n </div>\n }\n </div>`,\n standalone: false,\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi9zdXBwb3J0L3N1cHBvcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUF1RHJDLE1BQU0sT0FBTyxnQkFBZ0I7SUFLM0I7UUFKUyxXQUFNLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBSS9DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNwRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNSLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLEdBQUcsRUFBRSxXQUFXO1lBQ2hCLDhEQUE4RDtZQUM5RCxLQUFLLEVBQUcsQ0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFNBQVM7U0FDMUMsQ0FBQyxDQUFDLENBQ0osQ0FDRixDQUFDO0lBQ0osQ0FBQzs4R0FmVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix5RUFuRGpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnREg7OzJGQUdJLGdCQUFnQjtrQkFyRDVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBZ0RIO29CQUNQLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPaWRjRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL29pZGMuZmFjYWRlJztcbmltcG9ydCB7IE9pZGNVc2VyRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL29pZGMtdXNlci5mYWNhZGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbW5nLXN1cHBvcnQnLFxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJjb250YWluZXIgcHQtNSBtdC01XCI+XG4gICAgPGRpdiBjbGFzcz1cInJvdyBoMyB0ZXh0LWNlbnRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiB0ZXh0LWNlbnRlclwiPk9JREMgU3VwcG9ydDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPkF1ZGllbmNlczwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+XG4gICAgICAgIEBmb3IgKFxuICAgICAgICAgIGl0ZW0gb2YgZmFjYWRlLmF1ZGllbmNlcyQgfCBhc3luYztcbiAgICAgICAgICB0cmFjayBpdGVtO1xuICAgICAgICAgIGxldCBpc0xhc3QgPSAkbGFzdFxuICAgICAgICApIHtcbiAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgIHt7IGl0ZW0gfX1cbiAgICAgICAgICAgIEBpZiAoIWlzTGFzdCkge1xuICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPlBlcm1pc3Npb25zPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgQGZvciAoXG4gICAgICAgICAgaXRlbSBvZiBmYWNhZGUucGVybWlzc2lvbnMkIHwgYXN5bmM7XG4gICAgICAgICAgdHJhY2sgaXRlbTtcbiAgICAgICAgICBsZXQgaXNMYXN0ID0gJGxhc3RcbiAgICAgICAgKSB7XG4gICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICB7eyBpdGVtIH19XG4gICAgICAgICAgICBAaWYgKCFpc0xhc3QpIHtcbiAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj5FeHBpcmVzPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj57eyBmYWNhZGUuZXhwaXJlc0F0JCB8IGFzeW5jIH19PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGZvciAoaXRlbSBvZiBwcm9maWxlVmFsdWUkIHwgYXN5bmM7IHRyYWNrIGl0ZW0pIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+e3sgaXRlbS5rZXkgfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+e3sgaXRlbS52YWx1ZSB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5gLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU3VwcG9ydENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGZhY2FkZSA9IGluamVjdChPaWRjRmFjYWRlKTtcbiAgcmVhZG9ubHkgb2lkY1VzZXJGYWNhZGUgPSBpbmplY3QoT2lkY1VzZXJGYWNhZGUpO1xuXG4gIHB1YmxpYyBwcm9maWxlVmFsdWUkOiBPYnNlcnZhYmxlPHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdPjtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5wcm9maWxlVmFsdWUkID0gdGhpcy5vaWRjVXNlckZhY2FkZS5wcm9maWxlJC5waXBlKFxuICAgICAgbWFwKCh4KSA9PlxuICAgICAgICBPYmplY3Qua2V5cyh4KS5tYXAoKHByb3BlcnR5S2V5KSA9PiAoe1xuICAgICAgICAgIGtleTogcHJvcGVydHlLZXksXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgICB2YWx1ZTogKHggYXMgYW55KVtwcm9wZXJ0eUtleV0sIC8vTk9TT05BUlxuICAgICAgICB9KSksXG4gICAgICApLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AccessDeniedComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: AccessDeniedComponent, isStandalone: false, selector: \"imng-access-denied\", ngImport: i0, template: '<div class=\"p-5 m-5 text-danger\">Access denied.</div>', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AccessDeniedComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'imng-access-denied',\n template: '<div class=\"p-5 m-5 text-danger\">Access denied.</div>',\n standalone: false\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWRlbmllZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi9jb21wb25lbnRzL2FjY2Vzcy1kZW5pZWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7OEdBQXJCLHFCQUFxQjtrR0FBckIscUJBQXFCLCtFQUhwQix1REFBdUQ7OzJGQUd4RCxxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLHVEQUF1RDtvQkFDakUsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnaW1uZy1hY2Nlc3MtZGVuaWVkJyxcbiAgICB0ZW1wbGF0ZTogJzxkaXYgY2xhc3M9XCJwLTUgbS01IHRleHQtZGFuZ2VyXCI+QWNjZXNzIGRlbmllZC48L2Rpdj4nLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIEFjY2Vzc0RlbmllZENvbXBvbmVudCB7IH1cbiJdfQ==","import { OidcFacade } from '../+state/oidc.facade';\nimport { Injectable, inject } from '@angular/core';\nimport { tap, switchMap } from 'rxjs/operators';\nimport { DOCUMENT } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nexport class AuthGuard {\n constructor() {\n this.document = inject(DOCUMENT);\n this.oidcFacade = inject(OidcFacade);\n //NOSONAR\n /**\n * This will automatically attempt to authenticate you when trying to access a protected route.\n */\n this.isLoggedInPipe$ = this.oidcFacade\n .waitForAuthenticationLoaded()\n .pipe(switchMap(() => this.oidcFacade.loggedIn$), tap((t) => {\n if (!t) {\n this.oidcFacade.signinRedirect({\n data: { redirect_url: this.document.location.href },\n });\n }\n }));\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n canActivate() {\n //NOSONAR\n return this.isLoggedInPipe$;\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n canActivateChild() {\n return this.isLoggedInPipe$;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AuthGuard, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AuthGuard, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvbGliL3NlcnZpY2VzL2F1dGgtZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUszQyxNQUFNLE9BQU8sU0FBUztJQUh0QjtRQUltQixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakQsU0FBUztRQUNUOztXQUVHO1FBQ2Esb0JBQWUsR0FBRyxJQUFJLENBQUMsVUFBVTthQUM5QywyQkFBMkIsRUFBRTthQUM3QixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQzFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO29CQUM3QixJQUFJLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO2lCQUNwRCxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztLQVlMO0lBVkMsNkRBQTZEO0lBQ3RELFdBQVc7UUFDaEIsU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsNkRBQTZEO0lBQ3RELGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQzs4R0E3QlUsU0FBUztrSEFBVCxTQUFTLGNBRlIsTUFBTTs7MkZBRVAsU0FBUztrQkFIckIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPaWRjRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL29pZGMuZmFjYWRlJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRoR3VhcmQge1xuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvaWRjRmFjYWRlID0gaW5qZWN0KE9pZGNGYWNhZGUpO1xuICAvL05PU09OQVJcbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBhdXRvbWF0aWNhbGx5IGF0dGVtcHQgdG8gYXV0aGVudGljYXRlIHlvdSB3aGVuIHRyeWluZyB0byBhY2Nlc3MgYSBwcm90ZWN0ZWQgcm91dGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaXNMb2dnZWRJblBpcGUkID0gdGhpcy5vaWRjRmFjYWRlXG4gICAgLndhaXRGb3JBdXRoZW50aWNhdGlvbkxvYWRlZCgpXG4gICAgLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5vaWRjRmFjYWRlLmxvZ2dlZEluJCksXG4gICAgICB0YXAoKHQpID0+IHtcbiAgICAgICAgaWYgKCF0KSB7XG4gICAgICAgICAgdGhpcy5vaWRjRmFjYWRlLnNpZ25pblJlZGlyZWN0KHtcbiAgICAgICAgICAgIGRhdGE6IHsgcmVkaXJlY3RfdXJsOiB0aGlzLmRvY3VtZW50LmxvY2F0aW9uLmhyZWYgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHB1YmxpYyBjYW5BY3RpdmF0ZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAvL05PU09OQVJcbiAgICByZXR1cm4gdGhpcy5pc0xvZ2dlZEluUGlwZSQ7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHB1YmxpYyBjYW5BY3RpdmF0ZUNoaWxkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmlzTG9nZ2VkSW5QaXBlJDtcbiAgfVxufVxuIl19","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class LogoutSuccessComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: LogoutSuccessComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: LogoutSuccessComponent, isStandalone: false, selector: \"imng-logout-success\", ngImport: i0, template: \n // eslint-disable-next-line max-len\n '<div class=\"p-5 m-5 text-center\">You have successfully logged out.<br/>Please close this browser window to ensure you are completely logged out of the session.</div>', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: LogoutSuccessComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'imng-logout-success',\n template: \n // eslint-disable-next-line max-len\n '<div class=\"p-5 m-5 text-center\">You have successfully logged out.<br/>Please close this browser window to ensure you are completely logged out of the session.</div>',\n standalone: false\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LXN1Y2Nlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvY29tcG9uZW50cy9sb2dvdXQtc3VjY2Vzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTMUMsTUFBTSxPQUFPLHNCQUFzQjs4R0FBdEIsc0JBQXNCO2tHQUF0QixzQkFBc0I7UUFKL0IsbUNBQW1DO1FBQ25DLHVLQUF1Szs7MkZBRzlKLHNCQUFzQjtrQkFQbEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRO29CQUNSLG1DQUFtQztvQkFDbkMsdUtBQXVLO29CQUN2SyxVQUFVLEVBQUUsS0FBSztpQkFDcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpbW5nLWxvZ291dC1zdWNjZXNzJyxcbiAgICB0ZW1wbGF0ZTogXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAnPGRpdiBjbGFzcz1cInAtNSBtLTUgdGV4dC1jZW50ZXJcIj5Zb3UgaGF2ZSBzdWNjZXNzZnVsbHkgbG9nZ2VkIG91dC48YnIvPlBsZWFzZSBjbG9zZSB0aGlzIGJyb3dzZXIgd2luZG93IHRvIGVuc3VyZSB5b3UgYXJlIGNvbXBsZXRlbHkgbG9nZ2VkIG91dCBvZiB0aGUgc2Vzc2lvbi48L2Rpdj4nLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIExvZ291dFN1Y2Nlc3NDb21wb25lbnQgeyB9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SupportComponent } from './support/support.component';\nimport { AccessDeniedComponent } from './components/access-denied.component';\nimport { AuthGuard } from './services/auth-guard';\nimport { LogoutSuccessComponent } from './components/logout-success.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/router\";\nconst routes = [\n { path: 'support', component: SupportComponent },\n { path: 'access-denied', component: AccessDeniedComponent },\n { path: 'logout', component: LogoutSuccessComponent },\n];\nexport class ImngOidcClientRoutingModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientRoutingModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n }]\n }] });\nexport const oidcSupportRoute = {\n path: 'oidc/support',\n component: SupportComponent,\n canActivate: [AuthGuard],\n};\nexport const oidcAccessDeniedRoute = {\n path: 'oidc/access-denied',\n component: AccessDeniedComponent,\n};\nexport const oidcLogoutRoute = {\n path: 'oidc/logout',\n component: LogoutSuccessComponent,\n};\nexport const oidcRoutes = [\n oidcSupportRoute,\n oidcAccessDeniedRoute,\n oidcLogoutRoute,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLW9pZGMtY2xpZW50LXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvaW1nLW9pZGMtY2xpZW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBUyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBRS9FLE1BQU0sTUFBTSxHQUFXO0lBQ3JCLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7SUFDaEQsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtJQUMzRCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFO0NBQ3RELENBQUM7QUFNRixNQUFNLE9BQU8sMkJBQTJCOzhHQUEzQiwyQkFBMkI7K0dBQTNCLDJCQUEyQix3Q0FGNUIsWUFBWTsrR0FFWCwyQkFBMkIsWUFINUIsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFDN0IsWUFBWTs7MkZBRVgsMkJBQTJCO2tCQUp2QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEI7O0FBR0QsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVU7SUFDckMsSUFBSSxFQUFFLGNBQWM7SUFDcEIsU0FBUyxFQUFFLGdCQUFnQjtJQUMzQixXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUM7Q0FDekIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFVO0lBQzFDLElBQUksRUFBRSxvQkFBb0I7SUFDMUIsU0FBUyxFQUFFLHFCQUFxQjtDQUNqQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFVO0lBQ3BDLElBQUksRUFBRSxhQUFhO0lBQ25CLFNBQVMsRUFBRSxzQkFBc0I7Q0FDbEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBWTtJQUNqQyxnQkFBZ0I7SUFDaEIscUJBQXFCO0lBQ3JCLGVBQWU7Q0FDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSwgUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3VwcG9ydENvbXBvbmVudCB9IGZyb20gJy4vc3VwcG9ydC9zdXBwb3J0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY2Nlc3NEZW5pZWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWNjZXNzLWRlbmllZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aEd1YXJkIH0gZnJvbSAnLi9zZXJ2aWNlcy9hdXRoLWd1YXJkJztcbmltcG9ydCB7IExvZ291dFN1Y2Nlc3NDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9nb3V0LXN1Y2Nlc3MuY29tcG9uZW50JztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHsgcGF0aDogJ3N1cHBvcnQnLCBjb21wb25lbnQ6IFN1cHBvcnRDb21wb25lbnQgfSxcbiAgeyBwYXRoOiAnYWNjZXNzLWRlbmllZCcsIGNvbXBvbmVudDogQWNjZXNzRGVuaWVkQ29tcG9uZW50IH0sXG4gIHsgcGF0aDogJ2xvZ291dCcsIGNvbXBvbmVudDogTG9nb3V0U3VjY2Vzc0NvbXBvbmVudCB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEltbmdPaWRjQ2xpZW50Um91dGluZ01vZHVsZSB7fVxuXG5leHBvcnQgY29uc3Qgb2lkY1N1cHBvcnRSb3V0ZTogUm91dGUgPSB7XG4gIHBhdGg6ICdvaWRjL3N1cHBvcnQnLFxuICBjb21wb25lbnQ6IFN1cHBvcnRDb21wb25lbnQsXG4gIGNhbkFjdGl2YXRlOiBbQXV0aEd1YXJkXSxcbn07XG5cbmV4cG9ydCBjb25zdCBvaWRjQWNjZXNzRGVuaWVkUm91dGU6IFJvdXRlID0ge1xuICBwYXRoOiAnb2lkYy9hY2Nlc3MtZGVuaWVkJyxcbiAgY29tcG9uZW50OiBBY2Nlc3NEZW5pZWRDb21wb25lbnQsXG59O1xuXG5leHBvcnQgY29uc3Qgb2lkY0xvZ291dFJvdXRlOiBSb3V0ZSA9IHtcbiAgcGF0aDogJ29pZGMvbG9nb3V0JyxcbiAgY29tcG9uZW50OiBMb2dvdXRTdWNjZXNzQ29tcG9uZW50LFxufTtcblxuZXhwb3J0IGNvbnN0IG9pZGNSb3V0ZXM6IFJvdXRlW10gPSBbXG4gIG9pZGNTdXBwb3J0Um91dGUsXG4gIG9pZGNBY2Nlc3NEZW5pZWRSb3V0ZSxcbiAgb2lkY0xvZ291dFJvdXRlLFxuXTtcbiJdfQ==","import { OidcService } from '../services/oidc.service';\nimport * as oidcActions from './oidc.actions';\nimport { Injectable, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\nimport { switchMap, map, filter, catchError, of, concatMap, tap } from 'rxjs';\nimport { oidcLogoutRoute } from '../img-oidc-client-routing.module';\nimport { OIDC_LIBRARY_CONFIG, } from '../models/oidc-library-config';\nimport * as i0 from \"@angular/core\";\nexport class OidcEffects {\n constructor() {\n this.actions$ = inject(Actions);\n this.oidcService = inject(OidcService);\n this.oidcLibraryOptions = inject(OIDC_LIBRARY_CONFIG);\n this.router = inject(Router);\n this.getOidcUser$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.getOidcUser), switchMap(() => this.oidcService.getOidcUser().pipe(map((userData) => this.makeOidcUserSerializable(userData)), filter((userData) => !!userData), map((userData) => oidcActions.userFound(userData)), catchError((err) => of(oidcActions.userDoneLoadingError(err))))));\n });\n this.silentRenew$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.userFound), filter((userFound) => \n // user expired, initiate silent sign-in if configured to automatic\n (userFound.payload != null &&\n userFound.payload.expired &&\n this.oidcLibraryOptions.oidc_config?.automaticSilentRenew) ||\n false), map((userFound) => oidcActions.signInSilent(userFound.payload)));\n });\n this.removeOidcUser$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.removeOidcUser), concatMap(() => this.oidcService.removeOidcUser().pipe(map(() => oidcActions.userDoneLoading()), catchError((err) => of(oidcActions.oidcError(err))))));\n });\n this.userDoneLoadingNoMetadata$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.userFound), filter(() => !this.oidcLibraryOptions.getUserMetadata), map(() => oidcActions.userDoneLoading()));\n });\n this.userDoneLoadingWithMetadata$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.userFound), filter(() => this.oidcLibraryOptions.getUserMetadata || false), switchMap(() => this.oidcService.getUserMetadata()), map((metadata) => oidcActions.onUserMetadataLoaded(metadata)));\n });\n this.onAccessTokenExpired$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.onAccessTokenExpired), map(() => oidcActions.removeOidcUser()));\n });\n this.signInPopup$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.signInPopup), concatMap((args) => this.oidcService.signInPopup(args.payload).pipe(map((user) => oidcActions.onSignInPopup(this.makeOidcUserSerializable(user))), catchError((err) => of(oidcActions.signInError(err))))));\n });\n this.signInRedirect$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.signInRedirect), concatMap((args) => this.oidcService.signInRedirect(args.payload).pipe(concatMap(() => this.oidcService.signinRedirectCallback()), map((user) => oidcActions.onSignInRedirect(this.makeOidcUserSerializable(user))), catchError((err) => of(oidcActions.signInError(err))))));\n });\n this.signInSilent$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.signInSilent), concatMap((args) => this.oidcService.signInSilent(args.payload).pipe(map((user) => oidcActions.onSignInSilent(this.makeOidcUserSerializable(user))), catchError((err) => of(oidcActions.onSilentRenewError(err))))));\n });\n this.signOutPopup$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.signOutPopup), concatMap((args) => this.oidcService.signOutPopup(args.payload).pipe(map(() => oidcActions.onUserSignedOut()), catchError((err) => of(oidcActions.signOutPopupError(err.message))))));\n });\n this.signOutRedirect$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.signOutRedirect), concatMap((args) => this.oidcService.signOutRedirect(args.payload).pipe(map(() => oidcActions.onUserSignedOut()), catchError((err) => of(oidcActions.signOutRedirectError(err.message))))));\n });\n this.onUserSignedOut$ = createEffect(() => {\n return this.actions$.pipe(ofType(oidcActions.onUserSignedOut, oidcActions.signOutPopupError, oidcActions.signOutRedirectError), tap(() => {\n localStorage.clear();\n sessionStorage.clear();\n this.router.navigateByUrl(oidcLogoutRoute.path ?? '');\n }));\n }, { dispatch: false });\n }\n ngrxOnInitEffects() {\n return oidcActions.getOidcUser();\n }\n makeOidcUserSerializable(user) {\n if (user?.toStorageString) {\n user = {\n ...user,\n toStorageString: undefined,\n };\n }\n return user;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcEffects, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcEffects, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: OidcEffects, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvK3N0YXRlL29pZGMuZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxLQUFLLFdBQVcsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFpQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQ0wsbUJBQW1CLEdBRXBCLE1BQU0sK0JBQStCLENBQUM7O0FBS3ZDLE1BQU0sT0FBTyxXQUFXO0lBSHhCO1FBSW1CLGFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsZ0JBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEMsdUJBQWtCLEdBQ2pDLE1BQU0sQ0FBb0IsbUJBQW1CLENBQUMsQ0FBQztRQUNoQyxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXpDLGlCQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRTtZQUMvQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUN2QixNQUFNLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUMv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LENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3hELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDLEVBQ0QsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQ3BCLENBQUM7S0FlSDtJQWJDLGlCQUFpQjtRQUNmLE9BQU8sV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxJQUFzQjtRQUM3QyxJQUFJLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQztZQUMxQixJQUFJLEdBQUc7Z0JBQ0wsR0FBRyxJQUFJO2dCQUNQLGVBQWUsRUFBRSxTQUFTO2FBQzNCLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxJQUFpQixDQUFDO0lBQzNCLENBQUM7OEdBN0tVLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2lkY1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9vaWRjLnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgb2lkY0FjdGlvbnMgZnJvbSAnLi9vaWRjLmFjdGlvbnMnO1xuaW1wb3J0IHsgSU9pZGNVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL29pZGMtdXNlcic7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPbkluaXRFZmZlY3RzLCBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCBtYXAsIGZpbHRlciwgY2F0Y2hFcnJvciwgb2YsIGNvbmNhdE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBvaWRjTG9nb3V0Um91dGUgfSBmcm9tICcuLi9pbWctb2lkYy1jbGllbnQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHtcbiAgT0lEQ19MSUJSQVJZX0NPTkZJRyxcbiAgT2lkY0xpYnJhcnlDb25maWcsXG59IGZyb20gJy4uL21vZGVscy9vaWRjLWxpYnJhcnktY29uZmlnJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE9pZGNFZmZlY3RzIGltcGxlbWVudHMgT25Jbml0RWZmZWN0cyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aW9ucyQgPSBpbmplY3QoQWN0aW9ucyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgb2lkY1NlcnZpY2UgPSBpbmplY3QoT2lkY1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IG9pZGNMaWJyYXJ5T3B0aW9ucyA9XG4gICAgaW5qZWN0PE9pZGNMaWJyYXJ5Q29uZmlnPihPSURDX0xJQlJBUllfQ09ORklHKTtcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBnZXRPaWRjVXNlciQgPSBjcmVhdGVFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUob2lkY0FjdGlvbnMuZ2V0T2lkY1VzZXIpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgIHRoaXMub2lkY1NlcnZpY2UuZ2V0T2lkY1VzZXIoKS5waXBlKFxuICAgICAgICAgIG1hcCgodXNlckRhdGE6IElPaWRjVXNlciB8IG51bGwpID0+XG4gICAgICAgICAgICB0aGlzLm1ha2VPaWRjVXNlclNlcmlhbGl6YWJsZSh1c2VyRGF0YSksXG4gICAgICAgICAgKSxcbiAgICAgICAgICBmaWx0ZXIoKHVzZXJEYXRhOiBJT2lkY1VzZXIpID0+ICEhdXNlckRhdGEpLFxuICAgICAgICAgIG1hcCgodXNlckRhdGE6IElPaWRjVXNlcikgPT4gb2lkY0FjdGlvbnMudXNlckZvdW5kKHVzZXJEYXRhKSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiBvZihvaWRjQWN0aW9ucy51c2VyRG9uZUxvYWRpbmdFcnJvcihlcnIpKSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG4gIH0pO1xuXG4gIHNpbGVudFJlbmV3JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShvaWRjQWN0aW9ucy51c2VyRm91bmQpLFxuICAgICAgZmlsdGVyKFxuICAgICAgICAodXNlckZvdW5kOiB7IHBheWxvYWQ6IElPaWRjVXNlciB9KSA9PlxuICAgICAgICAgIC8vIHVzZXIgZXhwaXJlZCwgaW5pdGlhdGUgc2lsZW50IHNpZ24taW4gaWYgY29uZmlndXJlZCB0byBhdXRvbWF0aWNcbiAgICAgICAgICAodXNlckZvdW5kLnBheWxvYWQgIT0gbnVsbCAmJlxuICAgICAgICAgICAgdXNlckZvdW5kLnBheWxvYWQuZXhwaXJlZCAmJlxuICAgICAgICAgICAgdGhpcy5vaWRjTGlicmFyeU9wdGlvbnMub2lkY19jb25maWc/LmF1dG9tYXRpY1NpbGVudFJlbmV3KSB8fFxuICAgICAgICAgIGZhbHNlLFxuICAgICAgKSxcbiAgICAgIG1hcCgodXNlckZvdW5kKSA9PiBvaWRjQWN0aW9ucy5zaWduSW5TaWxlbnQodXNlckZvdW5kLnBheWxvYWQpKSxcbiAgICApO1xuICB9KTtcblxuICByZW1vdmVPaWRjVXNlciQgPSBjcmVhdGVFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUob2lkY0FjdGlvbnMucmVtb3ZlT2lkY1VzZXIpLFxuICAgICAgY29uY2F0TWFwKCgpID0+XG4gICAgICAgIHRoaXMub2lkY1NlcnZpY2UucmVtb3ZlT2lkY1VzZXIoKS5waXBlKFxuICAgICAgICAgIG1hcCgoKSA9PiBvaWRjQWN0aW9ucy51c2VyRG9uZUxvYWRpbmcoKSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiBvZihvaWRjQWN0aW9ucy5vaWRjRXJyb3IoZXJyKSkpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9KTtcblxuICB1c2VyRG9uZUxvYWRpbmdOb01ldGFkYXRhJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShvaWRjQWN0aW9ucy51c2VyRm91bmQpLFxuICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLm9pZGNMaWJyYXJ5T3B0aW9ucy5nZXRVc2VyTWV0YWRhdGEpLFxuICAgICAgbWFwKCgpID0+IG9pZGNBY3Rpb25zLnVzZXJEb25lTG9hZGluZygpKSxcbiAgICApO1xuICB9KTtcblxuICB1c2VyRG9uZUxvYWRpbmdXaXRoTWV0YWRhdGEkID0gY3JlYXRlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKG9pZGNBY3Rpb25zLnVzZXJGb3VuZCksXG4gICAgICBmaWx0ZXIoKCkgPT4gdGhpcy5vaWRjTGlicmFyeU9wdGlvbnMuZ2V0VXNlck1ldGFkYXRhIHx8IGZhbHNlKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLm9pZGNTZXJ2aWNlLmdldFVzZXJNZXRhZGF0YSgpKSxcbiAgICAgIG1hcCgobWV0YWRhdGEpID0+IG9pZGNBY3Rpb25zLm9uVXNlck1ldGFkYXRhTG9hZGVkKG1ldGFkYXRhKSksXG4gICAgKTtcbiAgfSk7XG5cbiAgb25BY2Nlc3NUb2tlbkV4cGlyZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKG9pZGNBY3Rpb25zLm9uQWNjZXNzVG9rZW5FeHBpcmVkKSxcbiAgICAgIG1hcCgoKSA9PiBvaWRjQWN0aW9ucy5yZW1vdmVPaWRjVXNlcigpKSxcbiAgICApO1xuICB9KTtcblxuICBzaWduSW5Qb3B1cCQgPSBjcmVhdGVFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUob2lkY0FjdGlvbnMuc2lnbkluUG9wdXApLFxuICAgICAgY29uY2F0TWFwKChhcmdzKSA9PlxuICAgICAgICB0aGlzLm9pZGNTZXJ2aWNlLnNpZ25JblBvcHVwKGFyZ3MucGF5bG9hZCkucGlwZShcbiAgICAgICAgICBtYXAoKHVzZXIpID0+XG4gICAgICAgICAgICBvaWRjQWN0aW9ucy5vblNpZ25JblBvcHVwKHRoaXMubWFrZU9pZGNVc2VyU2VyaWFsaXphYmxlKHVzZXIpKSxcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gb2Yob2lkY0FjdGlvbnMuc2lnbkluRXJyb3IoZXJyKSkpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9KTtcblxuICBzaWduSW5SZWRpcmVjdCQgPSBjcmVhdGVFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUob2lkY0FjdGlvbnMuc2lnbkluUmVkaXJlY3QpLFxuICAgICAgY29uY2F0TWFwKChhcmdzKSA9PlxuICAgICAgICB0aGlzLm9pZGNTZXJ2aWNlLnNpZ25JblJlZGlyZWN0KGFyZ3MucGF5bG9hZCkucGlwZShcbiAgICAgICAgICBjb25jYXRNYXAoKCkgPT4gdGhpcy5vaWRjU2VydmljZS5zaWduaW5SZWRpcmVjdENhbGxiYWNrKCkpLFxuICAgICAgICAgIG1hcCgodXNlcikgPT5cbiAgICAgICAgICAgIG9pZGNBY3Rpb25zLm9uU2lnbkluUmVkaXJlY3QodGhpcy5tYWtlT2lkY1VzZXJTZXJpYWxpemFibGUodXNlcikpLFxuICAgICAgICAgICksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiBvZihvaWRjQWN0aW9ucy5zaWduSW5FcnJvcihlcnIpKSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG4gIH0pO1xuXG4gIHNpZ25JblNpbGVudCQgPSBjcmVhdGVFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUob2lkY0FjdGlvbnMuc2lnbkluU2lsZW50KSxcbiAgICAgIGNvbmNhdE1hcCgoYXJncykgPT5cbiAgICAgICAgdGhpcy5vaWRjU2VydmljZS5zaWduSW5TaWxlbnQoYXJncy5wYXlsb2FkKS5waXBlKFxuICAgICAgICAgIG1hcCgodXNlcikgPT5cbiAgICAgICAgICAgIG9pZGNBY3Rpb25zLm9uU2lnbkluU2lsZW50KHRoaXMubWFrZU9pZGNVc2VyU2VyaWFsaXphYmxlKHVzZXIpKSxcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gb2Yob2lkY0FjdGlvbnMub25TaWxlbnRSZW5ld0Vycm9yKGVycikpKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKTtcbiAgfSk7XG5cbiAgc2lnbk91dFBvcHVwJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShvaWRjQWN0aW9ucy5zaWduT3V0UG9wdXApLFxuICAgICAgY29uY2F0TWFwKChhcmdzKSA9PlxuICAgICAgICB0aGlzLm9pZGNTZXJ2aWNlLnNpZ25PdXRQb3B1cChhcmdzLnBheWxvYWQpLnBpcGUoXG4gICAgICAgICAgbWFwKCgpID0+IG9pZGNBY3Rpb25zLm9uVXNlclNpZ25lZE91dCgpKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IG9mKG9pZGNBY3Rpb25zLnNpZ25PdXRQb3B1cEVycm9yKGVyci5tZXNzYWdlKSkpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9KTtcblxuICBzaWduT3V0UmVkaXJlY3QkID0gY3JlYXRlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKG9pZGNBY3Rpb25zLnNpZ25PdXRSZWRpcmVjdCksXG4gICAgICBjb25jYXRNYXAoKGFyZ3MpID0+XG4gICAgICAgIHRoaXMub2lkY1NlcnZpY2Uuc2lnbk91dFJlZGlyZWN0KGFyZ3MucGF5bG9hZCkucGlwZShcbiAgICAgICAgICBtYXAoKCkgPT4gb2lkY0FjdGlvbnMub25Vc2VyU2lnbmVkT3V0KCkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT5cbiAgICAgICAgICAgIG9mKG9pZGNBY3Rpb25zLnNpZ25PdXRSZWRpcmVjdEVycm9yKGVyci5tZXNzYWdlKSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKTtcbiAgfSk7XG5cbiAgb25Vc2VyU2lnbmVkT3V0JCA9IGNyZWF0ZUVmZmVjdChcbiAgICAoKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoXG4gICAgICAgICAgb2lkY0FjdGlvbnMub25Vc2VyU2lnbmVkT3V0LFxuICAgICAgICAgIG9pZGNBY3Rpb25zLnNpZ25PdXRQb3B1cEVycm9yLFxuICAgICAgICAgIG9pZGNBY3Rpb25zLnNpZ25PdXRSZWRpcmVjdEVycm9yLFxuICAgICAgICApLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xuICAgICAgICAgIHNlc3Npb25TdG9yYWdlLmNsZWFyKCk7XG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChvaWRjTG9nb3V0Um91dGUucGF0aCA/PyAnJyk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9LFxuICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH0sXG4gICk7XG5cbiAgbmdyeE9uSW5pdEVmZmVjdHMoKTogQWN0aW9uIHtcbiAgICByZXR1cm4gb2lkY0FjdGlvbnMuZ2V0T2lkY1VzZXIoKTtcbiAgfVxuXG4gIG1ha2VPaWRjVXNlclNlcmlhbGl6YWJsZSh1c2VyOiBJT2lkY1VzZXIgfCBudWxsKTogSU9pZGNVc2VyIHtcbiAgICBpZiAodXNlcj8udG9TdG9yYWdlU3RyaW5nKSB7XG4gICAgICB1c2VyID0ge1xuICAgICAgICAuLi51c2VyLFxuICAgICAgICB0b1N0b3JhZ2VTdHJpbmc6IHVuZGVmaW5lZCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB1c2VyIGFzIElPaWRjVXNlcjtcbiAgfVxufVxuIl19","import { InjectionToken } from '@angular/core';\nexport const OIDC_CLIENT_CONFIG = new InjectionToken('oidc-client-config');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy1jbGllbnQtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvbW9kZWxzL29pZGMtY2xpZW50LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBcUMvQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FDbEQsb0JBQW9CLENBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9pZGNDbGllbnRDb25maWcge1xuICBhdWRpZW5jZTogc3RyaW5nO1xuICBjbGllbnRfaWQ6IHN0cmluZztcbiAgY2xpZW50X3NlY3JldD86IHN0cmluZztcbiAgYXV0aG9yaXR5OiBzdHJpbmc7XG4gIHNjb3BlPzpcbiAgICB8ICdvcGVuaWQnXG4gICAgfCAncHJvZmlsZSdcbiAgICB8ICdvZmZsaW5lX2FjY2VzcydcbiAgICB8ICduYW1lJ1xuICAgIHwgJ2dpdmVuX25hbWUnXG4gICAgfCAnZmFtaWx5X25hbWUnXG4gICAgfCAnbmlja25hbWUnXG4gICAgfCAnZW1haWwnXG4gICAgfCAnZW1haWxfdmVyaWZpZWQnXG4gICAgfCAncGljdHVyZSdcbiAgICB8ICdjcmVhdGVkX2F0J1xuICAgIHwgJ2lkZW50aXRpZXMnXG4gICAgfCAncGhvbmUnXG4gICAgfCAnYWRkcmVzcydcbiAgICB8IHN0cmluZzsgLy9OT1NPTkFSXG4gIHJlc3BvbnNlX3R5cGU/OlxuICAgIHwgJ2NvZGUnXG4gICAgfCAndG9rZW4nXG4gICAgfCAnaWRfdG9rZW4nXG4gICAgfCAnY29kZSB0b2tlbidcbiAgICB8ICdjb2RlIGlkX3Rva2VuJ1xuICAgIHwgJ3Rva2VuIGlkX3Rva2VuJ1xuICAgIHwgJ2NvZGUgdG9rZW4gaWRfdG9rZW4nXG4gICAgfCBzdHJpbmc7IC8vTk9TT05BUlxuICBhdXRvbWF0aWNTaWxlbnRSZW5ldz86IGJvb2xlYW47XG4gIGdldFVzZXJNZXRhZGF0YTogYm9vbGVhbjtcbiAgdXNlQ2FsbGJhY2tGbGFnPzogYm9vbGVhbjtcbiAgbWV0YWRhdGFVcmw/OiBzdHJpbmc7XG59XG5leHBvcnQgY29uc3QgT0lEQ19DTElFTlRfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPE9pZGNDbGllbnRDb25maWc+KFxuICAnb2lkYy1jbGllbnQtY29uZmlnJyxcbik7XG4iXX0=","import { throwError } from 'rxjs';\nimport { first, catchError, mergeMap } from 'rxjs/operators';\nimport { HttpErrorResponse, } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { oidcSelectors } from '../+state/oidc.selectors';\nimport * as oidcActions from '../+state/oidc.actions';\nimport * as i0 from \"@angular/core\";\nexport class TokenInterceptorService {\n constructor() {\n this.store = inject(Store);\n }\n intercept(req, next) {\n return this.store.select(oidcSelectors.selectAccessToken).pipe(first(), mergeMap((accessToken) => {\n if (accessToken) {\n req = req.clone({\n setHeaders: { Authorization: `Bearer ${accessToken}` },\n });\n }\n return next.handle(req).pipe(catchError((err) => {\n if (err instanceof HttpErrorResponse) {\n this.store.dispatch(oidcActions.setHttpError(err));\n }\n return throwError(() => err);\n }));\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TokenInterceptorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TokenInterceptorService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: TokenInterceptorService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4taW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvbGliL3NlcnZpY2VzL3Rva2VuLWludGVyY2VwdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RCxPQUFPLEVBS0wsaUJBQWlCLEdBQ2xCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxLQUFLLFdBQVcsTUFBTSx3QkFBd0IsQ0FBQzs7QUFHdEQsTUFBTSxPQUFPLHVCQUF1QjtJQURwQztRQUVtQixVQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBeUJ4QztJQXZCQyxTQUFTLENBQ1AsR0FBeUIsRUFDekIsSUFBaUI7UUFFakIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQzVELEtBQUssRUFBRSxFQUNQLFFBQVEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3ZCLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2hCLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO29CQUNkLFVBQVUsRUFBRSxFQUFFLGFBQWEsRUFBRSxVQUFVLFdBQVcsRUFBRSxFQUFFO2lCQUN2RCxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDMUIsVUFBVSxDQUFDLENBQUMsR0FBVSxFQUFFLEVBQUU7Z0JBQ3hCLElBQUksR0FBRyxZQUFZLGlCQUFpQixFQUFFLENBQUM7b0JBQ3JDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDckQsQ0FBQztnQkFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBekJVLHVCQUF1QjtrSEFBdkIsdUJBQXVCLGNBRFYsTUFBTTs7MkZBQ25CLHVCQUF1QjtrQkFEbkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCwgY2F0Y2hFcnJvciwgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBIdHRwSW50ZXJjZXB0b3IsXG4gIEh0dHBSZXF1ZXN0LFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEV2ZW50LFxuICBIdHRwRXJyb3JSZXNwb25zZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IG9pZGNTZWxlY3RvcnMgfSBmcm9tICcuLi8rc3RhdGUvb2lkYy5zZWxlY3RvcnMnO1xuaW1wb3J0ICogYXMgb2lkY0FjdGlvbnMgZnJvbSAnLi4vK3N0YXRlL29pZGMuYWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVG9rZW5JbnRlcmNlcHRvclNlcnZpY2UgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlKTtcblxuICBpbnRlcmNlcHQoXG4gICAgcmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgICBuZXh0OiBIdHRwSGFuZGxlcixcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3Qob2lkY1NlbGVjdG9ycy5zZWxlY3RBY2Nlc3NUb2tlbikucGlwZShcbiAgICAgIGZpcnN0KCksXG4gICAgICBtZXJnZU1hcCgoYWNjZXNzVG9rZW4pID0+IHtcbiAgICAgICAgaWYgKGFjY2Vzc1Rva2VuKSB7XG4gICAgICAgICAgcmVxID0gcmVxLmNsb25lKHtcbiAgICAgICAgICAgIHNldEhlYWRlcnM6IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2FjY2Vzc1Rva2VufWAgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycjogRXJyb3IpID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9pZGNBY3Rpb25zLnNldEh0dHBFcnJvcihlcnIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycik7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=","import { isNullOrUndefined } from 'imng-nrsrx-client-utils';\nexport function oidcConfigurator(oidcClientConfig, document) {\n return {\n oidc_config: {\n ...oidcClientConfig,\n extraQueryParams: { audience: oidcClientConfig.audience },\n redirect_uri: `${document.location.origin}/callback.html`,\n response_type: oidcClientConfig.response_type ?? 'id_token token',\n post_logout_redirect_uri: `${document.location.origin}/signout-callback.html`,\n silent_redirect_uri: `${document.location.origin}/renew-callback.html`,\n automaticSilentRenew: isNullOrUndefined(oidcClientConfig.automaticSilentRenew)\n ? true\n : oidcClientConfig.automaticSilentRenew,\n metadataUrl: oidcClientConfig.metadataUrl ??\n `${oidcClientConfig.authority}/.well-known/openid-configuration`,\n },\n getUserMetadata: oidcClientConfig.getUserMetadata,\n useCallbackFlag: isNullOrUndefined(oidcClientConfig.useCallbackFlag)\n ? true\n : oidcClientConfig.useCallbackFlag,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy1jbGllbnQtY29uZmlndXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9pbW5nLW9pZGMtY2xpZW50L3NyYy9saWIvdXRpbC9vaWRjLWNsaWVudC1jb25maWd1cmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJNUQsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixnQkFBa0MsRUFDbEMsUUFBa0I7SUFFbEIsT0FBTztRQUNMLFdBQVcsRUFBRTtZQUNYLEdBQUcsZ0JBQWdCO1lBQ25CLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFFBQVEsRUFBRTtZQUN6RCxZQUFZLEVBQUUsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sZ0JBQWdCO1lBQ3pELGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLElBQUksZ0JBQWdCO1lBQ2pFLHdCQUF3QixFQUFFLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLHdCQUF3QjtZQUM3RSxtQkFBbUIsRUFBRSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxzQkFBc0I7WUFDdEUsb0JBQW9CLEVBQUUsaUJBQWlCLENBQ3JDLGdCQUFnQixDQUFDLG9CQUFvQixDQUN0QztnQkFDQyxDQUFDLENBQUMsSUFBSTtnQkFDTixDQUFDLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CO1lBQ3pDLFdBQVcsRUFDVCxnQkFBZ0IsQ0FBQyxXQUFXO2dCQUM1QixHQUFHLGdCQUFnQixDQUFDLFNBQVMsbUNBQW1DO1NBQ25FO1FBQ0QsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7UUFDakQsZUFBZSxFQUFFLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztZQUNsRSxDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBRSxnQkFBZ0IsQ0FBQyxlQUEyQjtLQUNsRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnaW1uZy1ucnNyeC1jbGllbnQtdXRpbHMnO1xuaW1wb3J0IHsgT2lkY0NsaWVudENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9vaWRjLWNsaWVudC1jb25maWcnO1xuaW1wb3J0IHsgT2lkY0xpYnJhcnlDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvb2lkYy1saWJyYXJ5LWNvbmZpZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBvaWRjQ29uZmlndXJhdG9yKFxuICBvaWRjQ2xpZW50Q29uZmlnOiBPaWRjQ2xpZW50Q29uZmlnLFxuICBkb2N1bWVudDogRG9jdW1lbnQsXG4pOiBPaWRjTGlicmFyeUNvbmZpZyB7XG4gIHJldHVybiB7XG4gICAgb2lkY19jb25maWc6IHtcbiAgICAgIC4uLm9pZGNDbGllbnRDb25maWcsXG4gICAgICBleHRyYVF1ZXJ5UGFyYW1zOiB7IGF1ZGllbmNlOiBvaWRjQ2xpZW50Q29uZmlnLmF1ZGllbmNlIH0sXG4gICAgICByZWRpcmVjdF91cmk6IGAke2RvY3VtZW50LmxvY2F0aW9uLm9yaWdpbn0vY2FsbGJhY2suaHRtbGAsXG4gICAgICByZXNwb25zZV90eXBlOiBvaWRjQ2xpZW50Q29uZmlnLnJlc3BvbnNlX3R5cGUgPz8gJ2lkX3Rva2VuIHRva2VuJyxcbiAgICAgIHBvc3RfbG9nb3V0X3JlZGlyZWN0X3VyaTogYCR7ZG9jdW1lbnQubG9jYXRpb24ub3JpZ2lufS9zaWdub3V0LWNhbGxiYWNrLmh0bWxgLFxuICAgICAgc2lsZW50X3JlZGlyZWN0X3VyaTogYCR7ZG9jdW1lbnQubG9jYXRpb24ub3JpZ2lufS9yZW5ldy1jYWxsYmFjay5odG1sYCxcbiAgICAgIGF1dG9tYXRpY1NpbGVudFJlbmV3OiBpc051bGxPclVuZGVmaW5lZChcbiAgICAgICAgb2lkY0NsaWVudENvbmZpZy5hdXRvbWF0aWNTaWxlbnRSZW5ldyxcbiAgICAgIClcbiAgICAgICAgPyB0cnVlXG4gICAgICAgIDogb2lkY0NsaWVudENvbmZpZy5hdXRvbWF0aWNTaWxlbnRSZW5ldyxcbiAgICAgIG1ldGFkYXRhVXJsOlxuICAgICAgICBvaWRjQ2xpZW50Q29uZmlnLm1ldGFkYXRhVXJsID8/XG4gICAgICAgIGAke29pZGNDbGllbnRDb25maWcuYXV0aG9yaXR5fS8ud2VsbC1rbm93bi9vcGVuaWQtY29uZmlndXJhdGlvbmAsXG4gICAgfSxcbiAgICBnZXRVc2VyTWV0YWRhdGE6IG9pZGNDbGllbnRDb25maWcuZ2V0VXNlck1ldGFkYXRhLFxuICAgIHVzZUNhbGxiYWNrRmxhZzogaXNOdWxsT3JVbmRlZmluZWQob2lkY0NsaWVudENvbmZpZy51c2VDYWxsYmFja0ZsYWcpXG4gICAgICA/IHRydWVcbiAgICAgIDogKG9pZGNDbGllbnRDb25maWcudXNlQ2FsbGJhY2tGbGFnIGFzIGJvb2xlYW4pLFxuICB9O1xufVxuIl19","import { CommonModule } from '@angular/common';\nimport { HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi, } from '@angular/common/http';\nimport { NgModule, DOCUMENT } from '@angular/core';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule, Store } from '@ngrx/store';\nimport { OidcUserFacade } from './+state/oidc-user.facade';\nimport { OidcEffects } from './+state/oidc.effects';\nimport { OidcFacade } from './+state/oidc.facade';\nimport { oidcFeature } from './+state/oidc.reducer';\nimport { AccessDeniedComponent } from './components/access-denied.component';\nimport { LogoutSuccessComponent } from './components/logout-success.component';\nimport { ImngOidcClientRoutingModule } from './img-oidc-client-routing.module';\nimport { OIDC_CLIENT_CONFIG, } from './models/oidc-client-config';\nimport { OIDC_LIBRARY_CONFIG } from './models/oidc-library-config';\nimport { AuthGuard } from './services/auth-guard';\nimport { OidcService } from './services/oidc.service';\nimport { TokenInterceptorService } from './services/token-interceptor.service';\nimport { SupportComponent } from './support/support.component';\nimport { oidcConfigurator } from './util/oidc-client-configurator';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@ngrx/store\";\nimport * as i2 from \"@ngrx/effects\";\nexport class ImngOidcClientModule {\n static forRoot(oidc0ptions) {\n return {\n ngModule: ImngOidcClientModule,\n providers: [{ provide: OIDC_CLIENT_CONFIG, useValue: oidc0ptions }],\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientModule, declarations: [AccessDeniedComponent,\n SupportComponent,\n LogoutSuccessComponent], imports: [CommonModule, i1.StoreFeatureModule, i2.EffectsFeatureModule, ImngOidcClientRoutingModule], exports: [AccessDeniedComponent, SupportComponent, LogoutSuccessComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientModule, providers: [\n {\n provide: OIDC_LIBRARY_CONFIG,\n useFactory: oidcConfigurator,\n deps: [OIDC_CLIENT_CONFIG, DOCUMENT],\n },\n OidcService,\n OidcFacade,\n OidcUserFacade,\n AuthGuard,\n provideHttpClient(withInterceptorsFromDi()),\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptorService,\n multi: true,\n deps: [Store],\n },\n ], imports: [CommonModule,\n StoreModule.forFeature(oidcFeature),\n EffectsModule.forFeature([OidcEffects]),\n ImngOidcClientRoutingModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ImngOidcClientModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [\n AccessDeniedComponent,\n SupportComponent,\n LogoutSuccessComponent,\n ],\n imports: [\n CommonModule,\n StoreModule.forFeature(oidcFeature),\n EffectsModule.forFeature([OidcEffects]),\n ImngOidcClientRoutingModule,\n ],\n exports: [AccessDeniedComponent, SupportComponent, LogoutSuccessComponent],\n providers: [\n {\n provide: OIDC_LIBRARY_CONFIG,\n useFactory: oidcConfigurator,\n deps: [OIDC_CLIENT_CONFIG, DOCUMENT],\n },\n OidcService,\n OidcFacade,\n OidcUserFacade,\n AuthGuard,\n provideHttpClient(withInterceptorsFromDi()),\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptorService,\n multi: true,\n deps: [Store],\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1uZy1vaWRjLWNsaWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi9pbW5nLW9pZGMtY2xpZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsc0JBQXNCLEdBQ3ZCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFDTCxrQkFBa0IsR0FFbkIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBa0NuRSxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLE1BQU0sQ0FBQyxPQUFPLENBQ1osV0FBNkI7UUFFN0IsT0FBTztZQUNMLFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDO1NBQ3BFLENBQUM7SUFDSixDQUFDOzhHQVJVLG9CQUFvQjsrR0FBcEIsb0JBQW9CLGlCQTlCN0IscUJBQXFCO1lBQ3JCLGdCQUFnQjtZQUNoQixzQkFBc0IsYUFHdEIsWUFBWSxrREFHWiwyQkFBMkIsYUFFbkIscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsc0JBQXNCOytHQW9COUQsb0JBQW9CLGFBbkJwQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFVBQVUsRUFBRSxnQkFBZ0I7Z0JBQzVCLElBQUksRUFBRSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQzthQUNyQztZQUNELFdBQVc7WUFDWCxVQUFVO1lBQ1YsY0FBYztZQUNkLFNBQVM7WUFDVCxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzNDO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLEtBQUssRUFBRSxJQUFJO2dCQUNYLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQzthQUNkO1NBQ0YsWUF2QkMsWUFBWTtZQUNaLFdBQVcsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDO1lBQ25DLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN2QywyQkFBMkI7OzJGQXNCbEIsb0JBQW9CO2tCQWhDaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUM7d0JBQ25DLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzt3QkFDdkMsMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsQ0FBQztvQkFDMUUsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFVBQVUsRUFBRSxnQkFBZ0I7NEJBQzVCLElBQUksRUFBRSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQzt5QkFDckM7d0JBQ0QsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGNBQWM7d0JBQ2QsU0FBUzt3QkFDVCxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO3dCQUMzQzs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixRQUFRLEVBQUUsdUJBQXVCOzRCQUNqQyxLQUFLLEVBQUUsSUFBSTs0QkFDWCxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7eUJBQ2Q7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgSFRUUF9JTlRFUkNFUFRPUlMsXG4gIHByb3ZpZGVIdHRwQ2xpZW50LFxuICB3aXRoSW50ZXJjZXB0b3JzRnJvbURpLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlTW9kdWxlLCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IE9pZGNVc2VyRmFjYWRlIH0gZnJvbSAnLi8rc3RhdGUvb2lkYy11c2VyLmZhY2FkZSc7XG5pbXBvcnQgeyBPaWRjRWZmZWN0cyB9IGZyb20gJy4vK3N0YXRlL29pZGMuZWZmZWN0cyc7XG5pbXBvcnQgeyBPaWRjRmFjYWRlIH0gZnJvbSAnLi8rc3RhdGUvb2lkYy5mYWNhZGUnO1xuaW1wb3J0IHsgb2lkY0ZlYXR1cmUgfSBmcm9tICcuLytzdGF0ZS9vaWRjLnJlZHVjZXInO1xuaW1wb3J0IHsgQWNjZXNzRGVuaWVkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2FjY2Vzcy1kZW5pZWQuY29tcG9uZW50JztcbmltcG9ydCB7IExvZ291dFN1Y2Nlc3NDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9nb3V0LXN1Y2Nlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IEltbmdPaWRjQ2xpZW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vaW1nLW9pZGMtY2xpZW50LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7XG4gIE9JRENfQ0xJRU5UX0NPTkZJRyxcbiAgT2lkY0NsaWVudENvbmZpZyxcbn0gZnJvbSAnLi9tb2RlbHMvb2lkYy1jbGllbnQtY29uZmlnJztcbmltcG9ydCB7IE9JRENfTElCUkFSWV9DT05GSUcgfSBmcm9tICcuL21vZGVscy9vaWRjLWxpYnJhcnktY29uZmlnJztcbmltcG9ydCB7IEF1dGhHdWFyZCB9IGZyb20gJy4vc2VydmljZXMvYXV0aC1ndWFyZCc7XG5pbXBvcnQgeyBPaWRjU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvb2lkYy5zZXJ2aWNlJztcbmltcG9ydCB7IFRva2VuSW50ZXJjZXB0b3JTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy90b2tlbi1pbnRlcmNlcHRvci5zZXJ2aWNlJztcbmltcG9ydCB7IFN1cHBvcnRDb21wb25lbnQgfSBmcm9tICcuL3N1cHBvcnQvc3VwcG9ydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgb2lkY0NvbmZpZ3VyYXRvciB9IGZyb20gJy4vdXRpbC9vaWRjLWNsaWVudC1jb25maWd1cmF0b3InO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBBY2Nlc3NEZW5pZWRDb21wb25lbnQsXG4gICAgU3VwcG9ydENvbXBvbmVudCxcbiAgICBMb2dvdXRTdWNjZXNzQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUob2lkY0ZlYXR1cmUpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbT2lkY0VmZmVjdHNdKSxcbiAgICBJbW5nT2lkY0NsaWVudFJvdXRpbmdNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtBY2Nlc3NEZW5pZWRDb21wb25lbnQsIFN1cHBvcnRDb21wb25lbnQsIExvZ291dFN1Y2Nlc3NDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBPSURDX0xJQlJBUllfQ09ORklHLFxuICAgICAgdXNlRmFjdG9yeTogb2lkY0NvbmZpZ3VyYXRvcixcbiAgICAgIGRlcHM6IFtPSURDX0NMSUVOVF9DT05GSUcsIERPQ1VNRU5UXSxcbiAgICB9LFxuICAgIE9pZGNTZXJ2aWNlLFxuICAgIE9pZGNGYWNhZGUsXG4gICAgT2lkY1VzZXJGYWNhZGUsXG4gICAgQXV0aEd1YXJkLFxuICAgIHByb3ZpZGVIdHRwQ2xpZW50KHdpdGhJbnRlcmNlcHRvcnNGcm9tRGkoKSksXG4gICAge1xuICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICB1c2VDbGFzczogVG9rZW5JbnRlcmNlcHRvclNlcnZpY2UsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIGRlcHM6IFtTdG9yZV0sXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSW1uZ09pZGNDbGllbnRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChcbiAgICBvaWRjMHB0aW9uczogT2lkY0NsaWVudENvbmZpZyxcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJbW5nT2lkY0NsaWVudE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogSW1uZ09pZGNDbGllbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE9JRENfQ0xJRU5UX0NPTkZJRywgdXNlVmFsdWU6IG9pZGMwcHRpb25zIH1dLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==","import { switchMap, tap } from 'rxjs/operators';\nexport class PermissionsGuard {\n constructor(oidcFacade, oidcUserFacade, router) {\n this.oidcFacade = oidcFacade;\n this.oidcUserFacade = oidcUserFacade;\n this.router = router;\n }\n canActivate(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n route, //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n state //NOSONAR\n ) {\n return this.oidcFacade.waitForAuthenticationLoaded().pipe(switchMap(() => this.oidcUserFacade.hasPermissions(this.permissions)), tap((t) => {\n if (!t) {\n this.router.navigate(['oidc/access-denied'], {\n relativeTo: this.router.routerState.root,\n });\n }\n }));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbnMuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctb2lkYy1jbGllbnQvc3JjL2xpYi9zZXJ2aWNlcy9wZXJtaXNzaW9ucy5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2hELE1BQU0sT0FBZ0IsZ0JBQWdCO0lBQ3BDLFlBQ21CLFVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLE1BQWM7UUFGZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQzdCLENBQUM7SUFJRSxXQUFXO0lBQ2hCLDZEQUE2RDtJQUM3RCxLQUE2QixFQUFFLFNBQVM7SUFDeEMsNkRBQTZEO0lBQzdELEtBQTBCLENBQUMsU0FBUzs7UUFFcEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLDJCQUEyQixFQUFFLENBQUMsSUFBSSxDQUN2RCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ3JFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsb0JBQW9CLENBQUMsRUFBRTtvQkFDM0MsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUk7aUJBQ3pDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9pZGNGYWNhZGUgfSBmcm9tICcuLi8rc3RhdGUvb2lkYy5mYWNhZGUnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBPaWRjVXNlckZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9vaWRjLXVzZXIuZmFjYWRlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBlcm1pc3Npb25zR3VhcmQgIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBvaWRjRmFjYWRlOiBPaWRjRmFjYWRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgb2lkY1VzZXJGYWNhZGU6IE9pZGNVc2VyRmFjYWRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXJcbiAgKSB7IH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuXG4gIHB1YmxpYyBjYW5BY3RpdmF0ZShcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIC8vTk9TT05BUlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCAvL05PU09OQVJcbiAgKTogT2JzZXJ2YWJsZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9pZGNGYWNhZGUud2FpdEZvckF1dGhlbnRpY2F0aW9uTG9hZGVkKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLm9pZGNVc2VyRmFjYWRlLmhhc1Blcm1pc3Npb25zKHRoaXMucGVybWlzc2lvbnMpKSxcbiAgICAgIHRhcCgodCkgPT4ge1xuICAgICAgICBpZiAoIXQpIHtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ29pZGMvYWNjZXNzLWRlbmllZCddLCB7XG4gICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5yb290LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1uZy1vaWRjLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvaW1uZy1vaWRjLWNsaWVudC9zcmMvaW1uZy1vaWRjLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":["oidcActions.getOidcUser","oidcActions.onUserLoading","oidcActions.removeOidcUser","oidcActions.setHttpError","oidcActions.onUserMetadataLoaded","oidcActions.clearErrors","oidcActions.userDoneLoading","oidcActions.onAccessTokenExpiring","oidcActions.onAccessTokenExpired","oidcActions.onUserLoaded","oidcActions.onUserUnloaded","oidcActions.onUserSignedOut","oidcActions.signOutPopupError","oidcActions.signOutRedirectError","oidcActions.signOutRedirect","oidcActions.signOutPopup","oidcActions.userFound","oidcActions.onSignInPopup","oidcActions.onSignInRedirect","oidcActions.onSignInSilent","oidcActions.userExpired","oidcActions.onSilentRenewError","oidcActions.userDoneLoadingError","oidcActions.signInError","oidcActions.onSessionChanged","oidcActions.signInPopup","oidcActions.signInRedirect","oidcActions.signInSilent","i1","switchMap","map","filter","oidcActions.oidcError","tap","catchError","DOCUMENT"],"mappings":"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"}
1
+ {"version":3,"file":"imng-oidc-client.mjs","sources":["../../../../libs/imng-oidc-client/src/lib/+state/oidc.actions.ts","../../../../libs/imng-oidc-client/src/lib/util/jwt-decoder.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc.reducer.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc.selectors.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc-user.selectors.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc-user.facade.ts","../../../../libs/imng-oidc-client/src/lib/models/constants.ts","../../../../libs/imng-oidc-client/src/lib/models/oidc-library-config.ts","../../../../libs/imng-oidc-client/src/lib/services/oidc.service.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc.facade.ts","../../../../libs/imng-oidc-client/src/lib/support/support.component.ts","../../../../libs/imng-oidc-client/src/lib/components/access-denied.component.ts","../../../../libs/imng-oidc-client/src/lib/services/auth-guard.ts","../../../../libs/imng-oidc-client/src/lib/components/logout-success.component.ts","../../../../libs/imng-oidc-client/src/lib/img-oidc-client-routing.module.ts","../../../../libs/imng-oidc-client/src/lib/+state/oidc.effects.ts","../../../../libs/imng-oidc-client/src/lib/models/oidc-client-config.ts","../../../../libs/imng-oidc-client/src/lib/services/token-interceptor.service.ts","../../../../libs/imng-oidc-client/src/lib/util/oidc-client-configurator.ts","../../../../libs/imng-oidc-client/src/lib/imng-oidc-client.module.ts","../../../../libs/imng-oidc-client/src/lib/services/permissions.guard.ts","../../../../libs/imng-oidc-client/src/imng-oidc-client.ts"],"sourcesContent":["import { createAction } from '@ngrx/store';\nimport { RequestArugments } from '../models/arguments.model';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { IOidcUser } from '../models/oidc-user';\nimport { createPayloadAction } from 'imng-ngrx-utils';\n\nexport const clearCurrentEmployee = createAction(\n '[Employees] Clear Current Employee'\n);\n\n// OIDC COMMANDS\n\nexport const getOidcUser = createAction('[Oidc] get oidc user');\nexport const removeOidcUser = createAction('[Oidc] remove oidc user');\nexport const userExpired = createAction('[Oidc] user expired');\nexport const userFound = createPayloadAction<IOidcUser>('[Oidc] user found');\nexport const onSessionChanged = createAction('[Oidc] session changed');\nexport const onAccessTokenExpired = createAction(\n '[Oidc] on access token expired'\n);\nexport const onAccessTokenExpiring = createAction('[Oidc] user expiring');\nexport const onUserLoading = createAction('[Oidc] user loading');\nexport const userDoneLoading = createAction('[Oidc] user done loading');\nexport const userDoneLoadingError = createPayloadAction<Error>(\n '[Oidc] user done loading error'\n);\nexport const onUserMetadataLoaded = createPayloadAction<unknown>(\n '[Oidc] on User Metadata Loaded'\n);\n\n// OIDC EVENTS\nexport const onSignInPopup = createPayloadAction<IOidcUser>(\n '[Oidc] on SignInPopup'\n);\nexport const onSignInRedirect = createPayloadAction<IOidcUser>(\n '[Oidc] on onSignInRedirect'\n);\nexport const onSignInSilent = createPayloadAction<IOidcUser>(\n '[Oidc] on onSignInSilent'\n);\n\nexport const onUserLoaded = createPayloadAction<IOidcUser>(\n '[Oidc] on user loaded'\n);\nexport const onUserloadError = createPayloadAction<Error>(\n '[Oidc] user load error'\n);\nexport const onUserUnloaded = createAction('[Oidc] on user unloaded');\nexport const onUserSignedOut = createAction('[Oidc] on user signed out');\nexport const onSilentRenewError = createPayloadAction<Error>(\n '[Oidc] on silent renew error'\n);\nexport const signInPopup = createPayloadAction<RequestArugments>(\n '[Oidc] sign in popup'\n);\nexport const signInRedirect = createPayloadAction<RequestArugments | undefined>(\n '[Oidc] sign in redirect'\n);\nexport const signInError = createPayloadAction<Error>(\n '[Oidc] sign in popup error'\n);\nexport const signOutPopup = createPayloadAction<RequestArugments>(\n '[Oidc] sign out popup'\n);\nexport const signOutPopupError = createPayloadAction<string>(\n '[Oidc] sign out popup error'\n);\nexport const signOutRedirect = createPayloadAction<\n RequestArugments | undefined\n>('[Oidc] sign out redirect');\nexport const signOutRedirectError = createPayloadAction<string>(\n '[Oidc] sign out redirect error'\n);\nexport const signInSilent = createPayloadAction<RequestArugments>(\n '[Oidc] sign in silent'\n);\nexport const oidcError = createPayloadAction<Error>('[Oidc] error');\n\n// HTTP\nexport const setHttpError = createPayloadAction<HttpErrorResponse>(\n '[HTTP] Set Http Error'\n);\nexport const clearErrors = createAction('[HTTP] Clear Errors');\n","export function jwtDecoder<TYPE>(rawToken: string): TYPE | null {\n const splits = rawToken?.split('.');\n if (splits?.length > 1) {\n const payload = splits[1];\n return JSON.parse(window.atob(payload)) as TYPE;\n } else {\n return null;\n }\n}\n","import * as oidcActions from './oidc.actions';\nimport { jwtDecoder } from '../util/jwt-decoder';\nimport { on, createReducer, createFeature } from '@ngrx/store';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { IOidcUser } from '../models/oidc-user';\n\nexport const OIDC_FEATURE_KEY = 'oidc';\nexport interface OidcState {\n identity: IOidcUser | undefined;\n audiences: string[] | undefined;\n userMetadata: unknown | undefined;\n permissions: string[] | undefined;\n isLoading: boolean;\n isLoggedIn: boolean;\n isExpiring: boolean;\n isExpired: boolean;\n errors: ErrorState;\n}\n\nexport interface ErrorState {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n silentRenewError: unknown | undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n signInError: unknown | undefined;\n httpError: HttpErrorResponse | undefined;\n}\n\nexport const initialState: OidcState = {\n audiences: [],\n permissions: [],\n isLoading: true,\n isLoggedIn: false,\n isExpiring: false,\n isExpired: false,\n identity: undefined,\n userMetadata: undefined,\n errors: {\n silentRenewError: undefined,\n signInError: undefined,\n httpError: undefined,\n },\n};\n\nexport const oidcFeature = createFeature({\n name: OIDC_FEATURE_KEY,\n reducer: createReducer(initialState,\n on(oidcActions.getOidcUser,\n (state): OidcState => ({\n ...state,\n isLoading: false,\n isLoggedIn: false,\n })),\n on(oidcActions.onUserLoading,\n (state): OidcState => ({\n ...state,\n isLoading: true,\n isLoggedIn: false,\n })),\n on(oidcActions.removeOidcUser,\n (state): OidcState => ({\n ...state,\n isLoading: true,\n isLoggedIn: false,\n identity: undefined,\n })),\n on(oidcActions.setHttpError,\n (state, err): OidcState => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n httpError: err.payload,\n },\n })),\n on(oidcActions.onUserMetadataLoaded,\n (state, userMetadata): OidcState => ({\n ...state,\n userMetadata: userMetadata.payload,\n isLoading: false,\n })),\n on(oidcActions.clearErrors,\n (state): OidcState => ({\n ...state, errors: {\n signInError: undefined,\n silentRenewError: undefined,\n httpError: undefined\n }\n })),\n on(oidcActions.userDoneLoading,\n (state): OidcState => ({\n ...state,\n isLoading: false\n })),\n on(oidcActions.onAccessTokenExpiring,\n (state): OidcState => ({\n ...state,\n isExpiring: true,\n })),\n on(oidcActions.onAccessTokenExpired,\n (state): OidcState => ({\n ...state,\n isLoggedIn: false,\n isExpiring: false,\n isExpired: true,\n })),\n on(oidcActions.onUserLoaded,\n (state): OidcState => ({\n ...state,\n isLoading: false,\n isExpiring: false,\n })),\n on(\n oidcActions.onUserUnloaded,\n oidcActions.onUserSignedOut,\n oidcActions.signOutPopupError,\n oidcActions.signOutRedirectError,\n (state): OidcState => ({\n ...state,\n isLoggedIn: false,\n identity: undefined,\n isExpired: true,\n isExpiring: false,\n userMetadata: undefined,\n })\n ),\n on(oidcActions.signOutRedirect,\n oidcActions.signOutPopup,\n (state): OidcState => ({\n ...state,\n identity: undefined,\n userMetadata: null,\n isLoggedIn: false,\n })),\n on(\n oidcActions.userFound,\n oidcActions.onSignInPopup,\n oidcActions.onSignInRedirect,\n oidcActions.onSignInSilent,\n (state, { payload }): OidcState => ({\n ...state,\n identity: payload,\n isLoggedIn: true,\n audiences: jwtDecoder<{ aud?: []; }>(payload.access_token)?.aud,\n permissions: jwtDecoder<{ permissions?: []; }>(payload.access_token)?.permissions,\n })\n ),\n on(oidcActions.userExpired, (state): OidcState => ({\n ...state,\n isLoggedIn: false,\n isExpiring: false,\n })),\n on(oidcActions.onSilentRenewError, (state, err): OidcState => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n silentRenewError: err.payload,\n },\n })),\n on(\n oidcActions.userDoneLoadingError,\n oidcActions.signInError,\n (state, err): OidcState => ({\n ...state,\n isLoading: false,\n errors: {\n ...state.errors,\n signInError: err.payload,\n },\n })\n ))\n});\n","import { createSelector } from '@ngrx/store';\nimport { ErrorState, oidcFeature } from './oidc.reducer';\nimport { IOidcUser } from '../models/oidc-user';\n// State Selectors\n\nconst selectAccessToken = createSelector(\n oidcFeature.selectIdentity,\n (user?: IOidcUser) => (user || { access_token: undefined }).access_token,\n);\n\n// errors\nconst selectOidcErrorState = createSelector(\n oidcFeature.selectErrors,\n (errors) => errors,\n);\n\nconst selectHasErrors = createSelector(\n selectOidcErrorState,\n (state: ErrorState) =>\n !!state.httpError || !!state.signInError || !!state.silentRenewError,\n);\n\nconst selectSignInError = createSelector(\n selectOidcErrorState,\n (errors: ErrorState) => errors.signInError,\n);\n\nconst selectSilentRenewError = createSelector(\n selectOidcErrorState,\n (errors: ErrorState) => errors.silentRenewError,\n);\n\nconst selectHttpError = createSelector(\n selectOidcErrorState,\n (errors: ErrorState) => errors.httpError,\n);\n\nconst selectExpiresAt = createSelector(\n oidcFeature.selectIdentity,\n (state?: IOidcUser) =>\n state?.expires_at ? new Date(state.expires_at * 1000) : null, //NOSONAR\n);\nexport const oidcSelectors = {\n selectExpiresAt,\n selectPermissions: oidcFeature.selectPermissions,\n selectIsLoading: oidcFeature.selectIsLoading,\n selectIdentity: oidcFeature.selectIdentity,\n selectAccessToken,\n selectIsExpiring: oidcFeature.selectIsExpiring,\n selectIsExpired: oidcFeature.selectIsExpired,\n selectIsLoggedIn: oidcFeature.selectIsLoggedIn,\n selectSilentRenewError,\n selectSignInError,\n selectHttpError,\n selectHasErrors,\n selectAudiences: oidcFeature.selectAudiences,\n selectUserMetadata: oidcFeature.selectUserMetadata,\n};\n","import { createSelector } from '@ngrx/store';\nimport { OidcUserProfile } from '../models/oidc-user-profile';\nimport { oidcSelectors } from './oidc.selectors';\nimport { oidcFeature } from './oidc.reducer';\nimport { IOidcUser } from '../models/oidc-user';\n\nconst selectProfile = createSelector(\n oidcSelectors.selectIdentity,\n (identity?: IOidcUser) => identity?.profile as OidcUserProfile,\n);\n\nconst selectScopes = createSelector(\n oidcSelectors.selectIdentity,\n (identity?: IOidcUser) => identity?.scope?.split(' ') || identity?.scopes,\n);\nconst getPermissions = oidcFeature.selectPermissions;\n\nconst selectEmail = createSelector(selectProfile, (profile) => profile?.email);\n\nconst selectProfilePicture = createSelector(\n selectProfile,\n (profile) => profile?.picture,\n);\n\nexport const oidcUserSelectors = {\n getScopes: selectScopes,\n getProfile: selectProfile,\n getEmail: selectEmail,\n getProfilePicture: selectProfilePicture,\n getPermissions,\n};\n","import { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { oidcUserSelectors } from './oidc-user.selectors';\nimport { OidcUserProfile } from '../models/oidc-user-profile';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OidcUserFacade {\n private readonly store = inject(Store);\n\n profile$: Observable<OidcUserProfile> = this.store.select(\n oidcUserSelectors.getProfile,\n );\n scopes$: Observable<string[] | undefined> = this.store.select(\n oidcUserSelectors.getScopes,\n );\n email$: Observable<string | undefined> = this.store.select(\n oidcUserSelectors.getEmail,\n );\n profilePicture$: Observable<string | undefined> = this.store.select(\n oidcUserSelectors.getProfilePicture,\n );\n permissions$: Observable<string[] | undefined> = this.store.select(\n oidcUserSelectors.getPermissions,\n );\n\n public hasPermissions(\n requiredPermissions: Array<string>,\n ): Observable<boolean> {\n return this.permissions$.pipe(\n map(\n (t) =>\n -1 <\n requiredPermissions.findIndex(\n (f) => -1 < (t?.findIndex((i) => i === f) ?? -1),\n ),\n ),\n );\n }\n}\n","export enum OidcEvent {\n AccessTokenExpired = 'addAccessTokenExpired',\n AccessTokenExpiring = 'addAccessTokenExpiring',\n SilentRenewError = 'AddSilentRenewError',\n UserLoaded = 'addUserLoaded',\n UserUnloaded = 'addUserUnloaded',\n UserSignedOut = 'addUserSignedOut',\n UserSessionChanged = 'addUserSessionChanged'\n}\n\nexport enum StorageKeys {\n PopupCallback = 'ngoidc:isPopupCallback',\n OidcSettings = 'ngoidc:settings',\n}\n\nexport const ACTION_NO_ACTION = 'NO_ACTION';\n","import { InjectionToken } from '@angular/core';\nimport { UserManagerSettings, Logger } from 'oidc-client';\n\nexport interface OidcLibraryConfig {\n oidc_config: UserManagerSettings;\n useCallbackFlag: boolean;\n getUserMetadata: boolean;\n log?: {\n logger: Logger;\n level: number;\n };\n}\nexport const OIDC_LIBRARY_CONFIG = new InjectionToken<OidcLibraryConfig>(\n 'OIDC_LIBRARY_CONFIG'\n);\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isPlatformBrowser } from '@angular/common';\nimport { Injectable, PLATFORM_ID, inject } from '@angular/core';\nimport {\n Log,\n OidcClient,\n SigninRequest,\n SignoutRequest,\n UserManager,\n UserManagerSettings,\n} from 'oidc-client';\nimport { from, Observable } from 'rxjs';\nimport { OidcEvent, StorageKeys } from '../models/constants';\nimport { IOidcUser } from '../models/oidc-user';\nimport { switchMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport {\n OidcLibraryConfig,\n OIDC_LIBRARY_CONFIG,\n} from '../models/oidc-library-config';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OidcService {\n private readonly oidcLibraryConfig =\n inject<OidcLibraryConfig>(OIDC_LIBRARY_CONFIG);\n private readonly platformId = inject(PLATFORM_ID);\n private readonly httpClient = inject(HttpClient);\n\n public readonly OidcUserManager: UserManager;\n private readonly _oidcClient: OidcClient;\n private readonly _userManagerSettings: UserManagerSettings;\n\n constructor() {\n const logSettings = this.oidcLibraryConfig.log;\n let clientSettings = this.oidcLibraryConfig.oidc_config;\n\n if (logSettings) {\n Log.level = logSettings.level;\n Log.logger = logSettings.logger;\n }\n\n if (clientSettings?.userStore != null) {\n clientSettings = {\n ...clientSettings,\n userStore: clientSettings.userStore,\n };\n }\n this._userManagerSettings = { ...clientSettings };\n this.OidcUserManager = new UserManager(clientSettings);\n this._oidcClient = new OidcClient(clientSettings);\n }\n\n public getUserMetadata(): Observable<unknown> {\n return this.httpClient\n .get<{\n userinfo_endpoint: string;\n }>(this.oidcLibraryConfig.oidc_config?.metadataUrl ?? '')\n .pipe(\n switchMap((openidConfig) =>\n this.httpClient.get<unknown>(openidConfig.userinfo_endpoint),\n ),\n );\n }\n\n getUserManager(): UserManager {\n return this.OidcUserManager;\n }\n\n getOidcClient(): OidcClient {\n return this._oidcClient;\n }\n\n getOidcUser(): Observable<IOidcUser | null> {\n return from(this.OidcUserManager.getUser());\n }\n\n removeOidcUser(): Observable<void> {\n return from(this.OidcUserManager.removeUser());\n }\n\n registerOidcEvent(\n event: OidcEvent,\n callback: (...ev: unknown[]) => void,\n ): void {\n switch (event) {\n case OidcEvent.AccessTokenExpired:\n this.OidcUserManager.events.addAccessTokenExpired(callback);\n break;\n case OidcEvent.AccessTokenExpiring:\n this.OidcUserManager.events.addAccessTokenExpiring(callback);\n break;\n case OidcEvent.SilentRenewError:\n this.OidcUserManager.events.addSilentRenewError(callback);\n break;\n case OidcEvent.UserLoaded:\n this.OidcUserManager.events.addUserLoaded(callback);\n break;\n case OidcEvent.UserSessionChanged:\n this.OidcUserManager.events.addUserSessionChanged(callback);\n break;\n case OidcEvent.UserSignedOut:\n this.OidcUserManager.events.addUserSignedOut(callback);\n break;\n case OidcEvent.UserUnloaded:\n this.OidcUserManager.events.addUserUnloaded(callback);\n break;\n default:\n break;\n }\n }\n\n removeOidcEvent(\n event: OidcEvent,\n callback: (...ev: unknown[]) => void,\n ): void {\n switch (event) {\n case OidcEvent.AccessTokenExpired:\n this.OidcUserManager.events.removeAccessTokenExpired(callback);\n break;\n case OidcEvent.AccessTokenExpiring:\n this.OidcUserManager.events.removeAccessTokenExpiring(callback);\n break;\n case OidcEvent.SilentRenewError:\n this.OidcUserManager.events.removeSilentRenewError(callback);\n break;\n case OidcEvent.UserLoaded:\n this.OidcUserManager.events.removeUserLoaded(callback);\n break;\n case OidcEvent.UserSessionChanged:\n this.OidcUserManager.events.removeUserSessionChanged(callback);\n break;\n case OidcEvent.UserSignedOut:\n this.OidcUserManager.events.removeUserSignedOut(callback);\n break;\n case OidcEvent.UserUnloaded:\n this.OidcUserManager.events.removeUserUnloaded(callback);\n break;\n default:\n break;\n }\n }\n\n signInPopup(args?: any): Observable<IOidcUser> {\n //NOSONAR\n this.setCallbackInformation(true);\n\n return from(this.OidcUserManager.signinPopup({ ...args }));\n }\n\n signInRedirect(args?: any): Observable<void> {\n //NOSONAR\n this.setCallbackInformation(false);\n\n return from(this.OidcUserManager.signinRedirect({ ...args }));\n }\n\n signOutPopup(args?: any): Observable<any> {\n //NOSONAR\n this.setCallbackInformation(true);\n\n return from(this.OidcUserManager.signoutPopup({ ...args }));\n }\n\n signOutRedirect(args?: any): Observable<any> {\n //NOSONAR\n this.setCallbackInformation(false);\n return from(this.OidcUserManager.signoutRedirect({ ...args }));\n }\n\n signInSilent(args?: any): Observable<IOidcUser> {\n //NOSONAR\n return from(this.OidcUserManager.signinSilent({ ...args }));\n }\n\n signinPopupCallback(): Observable<any> {\n //NOSONAR\n return from(this.OidcUserManager.signinPopupCallback());\n }\n\n signinRedirectCallback(): Observable<IOidcUser> {\n return from(this.OidcUserManager.signinRedirectCallback());\n }\n\n signoutPopupCallback(): Observable<void> {\n return from(this.OidcUserManager.signoutPopupCallback());\n }\n\n signoutRedirectCallback(): Observable<any> {\n //NOSONAR\n return from(this.OidcUserManager.signoutRedirectCallback());\n }\n\n getSigninUrl(args?: any): Observable<SigninRequest> {\n //NOSONAR\n return from(this.OidcUserManager.createSigninRequest(args));\n }\n\n getSignoutUrl(args?: any): Observable<SignoutRequest> {\n //NOSONAR\n return from(this.OidcUserManager.createSignoutRequest(args));\n }\n\n private setCallbackInformation(isPopupCallback: boolean): void {\n // is browser and useCallbackFlag set to true or defaults to true\n if (\n isPlatformBrowser(this.platformId) &&\n this.oidcLibraryConfig.useCallbackFlag\n ) {\n localStorage.setItem(StorageKeys.PopupCallback, `${isPopupCallback}`);\n localStorage.setItem(\n StorageKeys.OidcSettings,\n JSON.stringify(this._userManagerSettings),\n );\n }\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport {\n OidcClient,\n SigninRequest,\n SignoutRequest,\n UserManager,\n} from 'oidc-client';\nimport { Observable } from 'rxjs';\nimport { filter, take, map } from 'rxjs/operators';\nimport { oidcSelectors } from './oidc.selectors';\nimport { OidcService } from '../services/oidc.service';\nimport { RequestArugments } from '../models/arguments.model';\nimport { OidcEvent } from '../models/constants';\nimport * as oidcActions from './oidc.actions';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { IOidcUser } from '../models/oidc-user';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OidcFacade {\n private readonly store = inject(Store);\n private readonly oidcService = inject(OidcService);\n\n constructor() {\n this.registerDefaultEvents();\n }\n\n loading$: Observable<boolean> = this.store.select(\n oidcSelectors.selectIsLoading,\n );\n expiring$: Observable<boolean> = this.store.select(\n oidcSelectors.selectIsExpiring,\n );\n expired$: Observable<boolean> = this.store.select(\n oidcSelectors.selectIsExpired,\n );\n loggedIn$: Observable<boolean> = this.store.select(\n oidcSelectors.selectIsLoggedIn,\n );\n identity$: Observable<IOidcUser | undefined> = this.store.select(\n oidcSelectors.selectIdentity,\n );\n accessToken$: Observable<string | undefined> = this.store.select(\n oidcSelectors.selectAccessToken,\n );\n httpError$: Observable<HttpErrorResponse | undefined> = this.store.select(\n oidcSelectors.selectHttpError,\n );\n signInError$: Observable<unknown> = this.store.select(\n oidcSelectors.selectSignInError,\n );\n silentRenewError$: Observable<unknown> = this.store.select(\n oidcSelectors.selectSilentRenewError,\n );\n hasErrors$: Observable<boolean> = this.store.select(\n oidcSelectors.selectHasErrors,\n );\n permissions$: Observable<string[] | undefined> = this.store.select(\n oidcSelectors.selectPermissions,\n );\n audiences$: Observable<string[] | null | undefined> = this.store.select(\n oidcSelectors.selectAudiences,\n );\n expiresAt$: Observable<Date | null> = this.store.select(\n oidcSelectors.selectExpiresAt,\n );\n userMetadata$: Observable<unknown> = this.store.select(\n oidcSelectors.selectUserMetadata,\n );\n\n // default bindings to events\n public addUserUnLoaded(): void {\n this.store?.dispatch(oidcActions.onUserUnloaded());\n }\n\n public accessTokenExpired(): void {\n if (this.store) {\n this.store.dispatch(oidcActions.onAccessTokenExpired());\n } else {\n sessionStorage.clear();\n localStorage.clear();\n window.location.reload();\n }\n }\n\n public accessTokenExpiring(): void {\n if (this.store) {\n this.store.dispatch(oidcActions.onAccessTokenExpiring());\n } else {\n this.accessTokenExpired();\n }\n }\n\n public addSilentRenewError(...ev: unknown[]): void {\n this.store.dispatch(oidcActions.onSilentRenewError(ev[0] as Error));\n }\n\n public addUserLoaded(...ev: unknown[]): void {\n this.store.dispatch(oidcActions.onUserLoaded(ev[0] as IOidcUser));\n }\n\n public addUserSignedOut(): void {\n this.oidcService?.removeOidcUser();\n this.store?.dispatch(oidcActions.onUserSignedOut());\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public addUserSessionChanged(): void {\n this.store.dispatch(oidcActions.onSessionChanged());\n }\n\n public clearErrors(): void {\n this.store.dispatch(oidcActions.clearErrors());\n }\n\n // OIDC Methods\n\n public getOidcUser(): void {\n this.store.dispatch(oidcActions.getOidcUser());\n }\n\n public removeOidcUser(): void {\n this.store.dispatch(oidcActions.removeOidcUser());\n }\n\n public getUserManager(): UserManager {\n return this.oidcService.getUserManager();\n }\n\n public getOidcClient(): OidcClient {\n return this.oidcService.getOidcClient();\n }\n\n /**\n * Convenient function to wait for OIDC dependencies to be loaded.\n */\n public waitForAuthenticationLoaded(): Observable<boolean> {\n return this.loading$.pipe(\n filter((loading) => loading === false),\n take(1),\n map(() => true),\n );\n }\n\n public signinPopup(args: RequestArugments): void {\n this.store.dispatch(oidcActions.signInPopup(args));\n }\n\n public signinRedirect(args?: RequestArugments): void {\n this.store.dispatch(oidcActions.signInRedirect(args));\n }\n\n public signinSilent(args: RequestArugments): void {\n this.store.dispatch(oidcActions.signInSilent(args));\n }\n\n public signoutPopup(args: RequestArugments): void {\n this.store.dispatch(oidcActions.signOutPopup(args));\n }\n\n public signoutRedirect(args?: RequestArugments): void {\n this.store.dispatch(oidcActions.signOutRedirect(args));\n }\n\n public getSigninUrl(args?: RequestArugments): Observable<SigninRequest> {\n return this.oidcService.getSigninUrl(args);\n }\n\n getSignoutUrl(args?: RequestArugments): Observable<SignoutRequest> {\n return this.oidcService.getSignoutUrl(args);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerEvent(event: OidcEvent, callback: (...ev: unknown[]) => void): void {\n this.oidcService.registerOidcEvent(event, callback);\n }\n\n private registerDefaultEvents(): void {\n // add simple loggers\n this.registerEvent(OidcEvent.AccessTokenExpired, this.accessTokenExpired);\n this.registerEvent(OidcEvent.AccessTokenExpiring, this.accessTokenExpiring);\n this.registerEvent(OidcEvent.SilentRenewError, this.addSilentRenewError);\n\n this.registerEvent(OidcEvent.UserLoaded, this.addUserLoaded);\n this.registerEvent(OidcEvent.UserUnloaded, this.addUserUnLoaded);\n this.registerEvent(OidcEvent.UserSignedOut, this.addUserSignedOut);\n this.registerEvent(\n OidcEvent.UserSessionChanged,\n this.addUserSessionChanged,\n );\n }\n}\n","import { Component, inject } from '@angular/core';\nimport { OidcFacade } from '../+state/oidc.facade';\nimport { OidcUserFacade } from '../+state/oidc-user.facade';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n@Component({\n selector: 'imng-support',\n template: `<div class=\"container pt-5 mt-5\">\n <div class=\"row h3 text-center\">\n <div class=\"col-md-12 text-center\">OIDC Support</div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Audiences</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.audiences$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Permissions</div>\n <div class=\"col-md-8\">\n @for (\n item of facade.permissions$ | async;\n track item;\n let isLast = $last\n ) {\n <span>\n {{ item }}\n @if (!isLast) {\n <br />\n }\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-3\">Expires</div>\n <div class=\"col-md-8\">{{ facade.expiresAt$ | async }}</div>\n </div>\n @for (item of profileValue$ | async; track item) {\n <div class=\"row\">\n <div class=\"col-md-3\">{{ item.key }}</div>\n <div class=\"col-md-8\">{{ item.value }}</div>\n </div>\n }\n </div>`,\n standalone: false,\n})\nexport class SupportComponent {\n readonly facade = inject(OidcFacade);\n readonly oidcUserFacade = inject(OidcUserFacade);\n\n public profileValue$: Observable<{ key: string; value: string }[]>;\n constructor() {\n this.profileValue$ = this.oidcUserFacade.profile$.pipe(\n map((x) =>\n Object.keys(x).map((propertyKey) => ({\n key: propertyKey,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: (x as any)[propertyKey], //NOSONAR\n })),\n ),\n );\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'imng-access-denied',\n template: '<div class=\"p-5 m-5 text-danger\">Access denied.</div>',\n standalone: false\n})\nexport class AccessDeniedComponent { }\n","import { Observable } from 'rxjs';\nimport { OidcFacade } from '../+state/oidc.facade';\nimport { Injectable, inject } from '@angular/core';\nimport { tap, switchMap } from 'rxjs/operators';\nimport { DOCUMENT } from '@angular/common';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard {\n private readonly document = inject(DOCUMENT);\n private readonly oidcFacade = inject(OidcFacade);\n //NOSONAR\n /**\n * This will automatically attempt to authenticate you when trying to access a protected route.\n */\n public readonly isLoggedInPipe$ = this.oidcFacade\n .waitForAuthenticationLoaded()\n .pipe(\n switchMap(() => this.oidcFacade.loggedIn$),\n tap((t) => {\n if (!t) {\n this.oidcFacade.signinRedirect({\n data: { redirect_url: this.document.location.href },\n });\n }\n }),\n );\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public canActivate(): Observable<boolean> {\n //NOSONAR\n return this.isLoggedInPipe$;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public canActivateChild(): Observable<boolean> {\n return this.isLoggedInPipe$;\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'imng-logout-success',\n template: \n // eslint-disable-next-line max-len\n '<div class=\"p-5 m-5 text-center\">You have successfully logged out.<br/>Please close this browser window to ensure you are completely logged out of the session.</div>',\n standalone: false\n})\nexport class LogoutSuccessComponent { }\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule, Route } from '@angular/router';\nimport { SupportComponent } from './support/support.component';\nimport { AccessDeniedComponent } from './components/access-denied.component';\nimport { AuthGuard } from './services/auth-guard';\nimport { LogoutSuccessComponent } from './components/logout-success.component';\n\nconst routes: Routes = [\n { path: 'support', component: SupportComponent },\n { path: 'access-denied', component: AccessDeniedComponent },\n { path: 'logout', component: LogoutSuccessComponent },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class ImngOidcClientRoutingModule {}\n\nexport const oidcSupportRoute: Route = {\n path: 'oidc/support',\n component: SupportComponent,\n canActivate: [AuthGuard],\n};\n\nexport const oidcAccessDeniedRoute: Route = {\n path: 'oidc/access-denied',\n component: AccessDeniedComponent,\n};\n\nexport const oidcLogoutRoute: Route = {\n path: 'oidc/logout',\n component: LogoutSuccessComponent,\n};\n\nexport const oidcRoutes: Route[] = [\n oidcSupportRoute,\n oidcAccessDeniedRoute,\n oidcLogoutRoute,\n];\n","import { OidcService } from '../services/oidc.service';\nimport * as oidcActions from './oidc.actions';\nimport { IOidcUser } from '../models/oidc-user';\nimport { Injectable, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { OnInitEffects, Actions, createEffect, ofType } from '@ngrx/effects';\nimport { Action } from '@ngrx/store';\nimport { switchMap, map, filter, catchError, of, concatMap, tap } from 'rxjs';\nimport { oidcLogoutRoute } from '../img-oidc-client-routing.module';\nimport {\n OIDC_LIBRARY_CONFIG,\n OidcLibraryConfig,\n} from '../models/oidc-library-config';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OidcEffects implements OnInitEffects {\n private readonly actions$ = inject(Actions);\n private readonly oidcService = inject(OidcService);\n private readonly oidcLibraryOptions =\n inject<OidcLibraryConfig>(OIDC_LIBRARY_CONFIG);\n private readonly router = inject(Router);\n\n getOidcUser$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.getOidcUser),\n switchMap(() =>\n this.oidcService.getOidcUser().pipe(\n map((userData: IOidcUser | null) =>\n this.makeOidcUserSerializable(userData),\n ),\n filter((userData: IOidcUser) => !!userData),\n map((userData: IOidcUser) => oidcActions.userFound(userData)),\n catchError((err) => of(oidcActions.userDoneLoadingError(err))),\n ),\n ),\n );\n });\n\n silentRenew$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.userFound),\n filter(\n (userFound: { payload: IOidcUser }) =>\n // user expired, initiate silent sign-in if configured to automatic\n (userFound.payload != null &&\n userFound.payload.expired &&\n this.oidcLibraryOptions.oidc_config?.automaticSilentRenew) ||\n false,\n ),\n map((userFound) => oidcActions.signInSilent(userFound.payload)),\n );\n });\n\n removeOidcUser$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.removeOidcUser),\n concatMap(() =>\n this.oidcService.removeOidcUser().pipe(\n map(() => oidcActions.userDoneLoading()),\n catchError((err) => of(oidcActions.oidcError(err))),\n ),\n ),\n );\n });\n\n userDoneLoadingNoMetadata$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.userFound),\n filter(() => !this.oidcLibraryOptions.getUserMetadata),\n map(() => oidcActions.userDoneLoading()),\n );\n });\n\n userDoneLoadingWithMetadata$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.userFound),\n filter(() => this.oidcLibraryOptions.getUserMetadata || false),\n switchMap(() => this.oidcService.getUserMetadata()),\n map((metadata) => oidcActions.onUserMetadataLoaded(metadata)),\n );\n });\n\n onAccessTokenExpired$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.onAccessTokenExpired),\n map(() => oidcActions.removeOidcUser()),\n );\n });\n\n signInPopup$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.signInPopup),\n concatMap((args) =>\n this.oidcService.signInPopup(args.payload).pipe(\n map((user) =>\n oidcActions.onSignInPopup(this.makeOidcUserSerializable(user)),\n ),\n catchError((err) => of(oidcActions.signInError(err))),\n ),\n ),\n );\n });\n\n signInRedirect$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.signInRedirect),\n concatMap((args) =>\n this.oidcService.signInRedirect(args.payload).pipe(\n concatMap(() => this.oidcService.signinRedirectCallback()),\n map((user) =>\n oidcActions.onSignInRedirect(this.makeOidcUserSerializable(user)),\n ),\n catchError((err) => of(oidcActions.signInError(err))),\n ),\n ),\n );\n });\n\n signInSilent$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.signInSilent),\n concatMap((args) =>\n this.oidcService.signInSilent(args.payload).pipe(\n map((user) =>\n oidcActions.onSignInSilent(this.makeOidcUserSerializable(user)),\n ),\n catchError((err) => of(oidcActions.onSilentRenewError(err))),\n ),\n ),\n );\n });\n\n signOutPopup$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.signOutPopup),\n concatMap((args) =>\n this.oidcService.signOutPopup(args.payload).pipe(\n map(() => oidcActions.onUserSignedOut()),\n catchError((err) => of(oidcActions.signOutPopupError(err.message))),\n ),\n ),\n );\n });\n\n signOutRedirect$ = createEffect(() => {\n return this.actions$.pipe(\n ofType(oidcActions.signOutRedirect),\n concatMap((args) =>\n this.oidcService.signOutRedirect(args.payload).pipe(\n map(() => oidcActions.onUserSignedOut()),\n catchError((err) =>\n of(oidcActions.signOutRedirectError(err.message)),\n ),\n ),\n ),\n );\n });\n\n onUserSignedOut$ = createEffect(\n () => {\n return this.actions$.pipe(\n ofType(\n oidcActions.onUserSignedOut,\n oidcActions.signOutPopupError,\n oidcActions.signOutRedirectError,\n ),\n tap(() => {\n localStorage.clear();\n sessionStorage.clear();\n this.router.navigateByUrl(oidcLogoutRoute.path ?? '');\n }),\n );\n },\n { dispatch: false },\n );\n\n ngrxOnInitEffects(): Action {\n return oidcActions.getOidcUser();\n }\n\n makeOidcUserSerializable(user: IOidcUser | null): IOidcUser {\n if (user?.toStorageString) {\n user = {\n ...user,\n toStorageString: undefined,\n };\n }\n return user as IOidcUser;\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport interface OidcClientConfig {\n audience: string;\n client_id: string;\n client_secret?: string;\n authority: string;\n scope?:\n | 'openid'\n | 'profile'\n | 'offline_access'\n | 'name'\n | 'given_name'\n | 'family_name'\n | 'nickname'\n | 'email'\n | 'email_verified'\n | 'picture'\n | 'created_at'\n | 'identities'\n | 'phone'\n | 'address'\n | string; //NOSONAR\n response_type?:\n | 'code'\n | 'token'\n | 'id_token'\n | 'code token'\n | 'code id_token'\n | 'token id_token'\n | 'code token id_token'\n | string; //NOSONAR\n automaticSilentRenew?: boolean;\n getUserMetadata: boolean;\n useCallbackFlag?: boolean;\n metadataUrl?: string;\n}\nexport const OIDC_CLIENT_CONFIG = new InjectionToken<OidcClientConfig>(\n 'oidc-client-config',\n);\n","import { Observable, throwError } from 'rxjs';\nimport { first, catchError, mergeMap } from 'rxjs/operators';\nimport {\n HttpInterceptor,\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpErrorResponse,\n} from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { oidcSelectors } from '../+state/oidc.selectors';\nimport * as oidcActions from '../+state/oidc.actions';\n\n@Injectable({ providedIn: 'root' })\nexport class TokenInterceptorService implements HttpInterceptor {\n private readonly store = inject(Store);\n\n intercept(\n req: HttpRequest<unknown>,\n next: HttpHandler,\n ): Observable<HttpEvent<unknown>> {\n return this.store.select(oidcSelectors.selectAccessToken).pipe(\n first(),\n mergeMap((accessToken) => {\n if (accessToken) {\n req = req.clone({\n setHeaders: { Authorization: `Bearer ${accessToken}` },\n });\n }\n return next.handle(req).pipe(\n catchError((err: Error) => {\n if (err instanceof HttpErrorResponse) {\n this.store.dispatch(oidcActions.setHttpError(err));\n }\n return throwError(() => err);\n }),\n );\n }),\n );\n }\n}\n","import { isNullOrUndefined } from 'imng-nrsrx-client-utils';\nimport { OidcClientConfig } from '../models/oidc-client-config';\nimport { OidcLibraryConfig } from '../models/oidc-library-config';\n\nexport function oidcConfigurator(\n oidcClientConfig: OidcClientConfig,\n document: Document,\n): OidcLibraryConfig {\n return {\n oidc_config: {\n ...oidcClientConfig,\n extraQueryParams: { audience: oidcClientConfig.audience },\n redirect_uri: `${document.location.origin}/callback.html`,\n response_type: oidcClientConfig.response_type ?? 'id_token token',\n post_logout_redirect_uri: `${document.location.origin}/signout-callback.html`,\n silent_redirect_uri: `${document.location.origin}/renew-callback.html`,\n automaticSilentRenew: isNullOrUndefined(\n oidcClientConfig.automaticSilentRenew,\n )\n ? true\n : oidcClientConfig.automaticSilentRenew,\n metadataUrl:\n oidcClientConfig.metadataUrl ??\n `${oidcClientConfig.authority}/.well-known/openid-configuration`,\n },\n getUserMetadata: oidcClientConfig.getUserMetadata,\n useCallbackFlag: isNullOrUndefined(oidcClientConfig.useCallbackFlag)\n ? true\n : (oidcClientConfig.useCallbackFlag as boolean),\n };\n}\n","import { CommonModule } from '@angular/common';\nimport {\n HTTP_INTERCEPTORS,\n provideHttpClient,\n withInterceptorsFromDi,\n} from '@angular/common/http';\nimport { NgModule, ModuleWithProviders, DOCUMENT } from '@angular/core';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule, Store } from '@ngrx/store';\nimport { OidcUserFacade } from './+state/oidc-user.facade';\nimport { OidcEffects } from './+state/oidc.effects';\nimport { OidcFacade } from './+state/oidc.facade';\nimport { oidcFeature } from './+state/oidc.reducer';\nimport { AccessDeniedComponent } from './components/access-denied.component';\nimport { LogoutSuccessComponent } from './components/logout-success.component';\nimport { ImngOidcClientRoutingModule } from './img-oidc-client-routing.module';\nimport {\n OIDC_CLIENT_CONFIG,\n OidcClientConfig,\n} from './models/oidc-client-config';\nimport { OIDC_LIBRARY_CONFIG } from './models/oidc-library-config';\nimport { AuthGuard } from './services/auth-guard';\nimport { OidcService } from './services/oidc.service';\nimport { TokenInterceptorService } from './services/token-interceptor.service';\nimport { SupportComponent } from './support/support.component';\nimport { oidcConfigurator } from './util/oidc-client-configurator';\n\n@NgModule({\n declarations: [\n AccessDeniedComponent,\n SupportComponent,\n LogoutSuccessComponent,\n ],\n imports: [\n CommonModule,\n StoreModule.forFeature(oidcFeature),\n EffectsModule.forFeature([OidcEffects]),\n ImngOidcClientRoutingModule,\n ],\n exports: [AccessDeniedComponent, SupportComponent, LogoutSuccessComponent],\n providers: [\n {\n provide: OIDC_LIBRARY_CONFIG,\n useFactory: oidcConfigurator,\n deps: [OIDC_CLIENT_CONFIG, DOCUMENT],\n },\n OidcService,\n OidcFacade,\n OidcUserFacade,\n AuthGuard,\n provideHttpClient(withInterceptorsFromDi()),\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptorService,\n multi: true,\n deps: [Store],\n },\n ],\n})\nexport class ImngOidcClientModule {\n static forRoot(\n oidc0ptions: OidcClientConfig,\n ): ModuleWithProviders<ImngOidcClientModule> {\n return {\n ngModule: ImngOidcClientModule,\n providers: [{ provide: OIDC_CLIENT_CONFIG, useValue: oidc0ptions }],\n };\n }\n}\n","import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { OidcFacade } from '../+state/oidc.facade';\nimport { switchMap, tap } from 'rxjs/operators';\nimport { OidcUserFacade } from '../+state/oidc-user.facade';\n\nexport abstract class PermissionsGuard {\n constructor(\n private readonly oidcFacade: OidcFacade,\n private readonly oidcUserFacade: OidcUserFacade,\n private readonly router: Router\n ) { }\n\n protected abstract permissions: string[];\n\n public canActivate(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n route: ActivatedRouteSnapshot, //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n state: RouterStateSnapshot //NOSONAR\n ): Observable<boolean> | boolean {\n return this.oidcFacade.waitForAuthenticationLoaded().pipe(\n switchMap(() => this.oidcUserFacade.hasPermissions(this.permissions)),\n tap((t) => {\n if (!t) {\n this.router.navigate(['oidc/access-denied'], {\n relativeTo: this.router.routerState.root,\n });\n }\n })\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["oidcActions.getOidcUser","oidcActions.onUserLoading","oidcActions.removeOidcUser","oidcActions.setHttpError","oidcActions.onUserMetadataLoaded","oidcActions.clearErrors","oidcActions.userDoneLoading","oidcActions.onAccessTokenExpiring","oidcActions.onAccessTokenExpired","oidcActions.onUserLoaded","oidcActions.onUserUnloaded","oidcActions.onUserSignedOut","oidcActions.signOutPopupError","oidcActions.signOutRedirectError","oidcActions.signOutRedirect","oidcActions.signOutPopup","oidcActions.userFound","oidcActions.onSignInPopup","oidcActions.onSignInRedirect","oidcActions.onSignInSilent","oidcActions.userExpired","oidcActions.onSilentRenewError","oidcActions.userDoneLoadingError","oidcActions.signInError","oidcActions.onSessionChanged","oidcActions.signInPopup","oidcActions.signInRedirect","oidcActions.signInSilent","switchMap","map","filter","oidcActions.oidcError","tap","catchError","i1","DOCUMENT"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "imng-oidc-client",
3
- "version": "8.332.2",
3
+ "version": "9.13.5",
4
4
  "description": "Small library to facilitate the integration of the ng-oidc-client library with the Auth0 identity provider.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">= 14",
@@ -33,17 +33,17 @@
33
33
  "url": "https://github.com/ikemtz"
34
34
  },
35
35
  "module": "fesm2022/imng-oidc-client.mjs",
36
- "typings": "index.d.ts",
36
+ "typings": "types/imng-oidc-client.d.ts",
37
37
  "exports": {
38
38
  "./package.json": {
39
39
  "default": "./package.json"
40
40
  },
41
41
  ".": {
42
- "types": "./index.d.ts",
42
+ "types": "./types/imng-oidc-client.d.ts",
43
43
  "default": "./fesm2022/imng-oidc-client.mjs"
44
44
  },
45
45
  "./testing": {
46
- "types": "./testing/index.d.ts",
46
+ "types": "./types/imng-oidc-client-testing.d.ts",
47
47
  "default": "./fesm2022/imng-oidc-client-testing.mjs"
48
48
  }
49
49
  },
File without changes