@ng-atomic/common 17.9.0 → 17.11.0

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.
Files changed (47) hide show
  1. package/esm2022/interceptors/authorization/authorization.interceptor.mjs +9 -3
  2. package/esm2022/interceptors/interceptors.module.mjs +9 -9
  3. package/esm2022/services/app/app.service.mjs +3 -1
  4. package/esm2022/services/auth/auth.service.mjs +9 -3
  5. package/esm2022/services/initializer/index.mjs +2 -0
  6. package/esm2022/services/initializer/initializer.service.mjs +44 -0
  7. package/esm2022/services/initializer/ng-atomic-common-services-initializer.mjs +5 -0
  8. package/esm2022/services/root-property/index.mjs +2 -1
  9. package/esm2022/services/root-property/root-property.di.mjs +14 -0
  10. package/esm2022/services/root-property/root-property.service.mjs +47 -15
  11. package/esm2022/services/side-nav-mode/side-nav-mode.service.mjs +1 -1
  12. package/esm2022/services/ui/ui.helpers.mjs +15 -6
  13. package/esm2022/stores/entities/di.mjs +3 -3
  14. package/esm2022/utils/inject/inject.mjs +26 -8
  15. package/fesm2022/ng-atomic-common-interceptors-authorization.mjs +9 -3
  16. package/fesm2022/ng-atomic-common-interceptors-authorization.mjs.map +1 -1
  17. package/fesm2022/ng-atomic-common-interceptors.mjs +10 -10
  18. package/fesm2022/ng-atomic-common-interceptors.mjs.map +1 -1
  19. package/fesm2022/ng-atomic-common-services-app.mjs +2 -0
  20. package/fesm2022/ng-atomic-common-services-app.mjs.map +1 -1
  21. package/fesm2022/ng-atomic-common-services-auth.mjs +9 -3
  22. package/fesm2022/ng-atomic-common-services-auth.mjs.map +1 -1
  23. package/fesm2022/ng-atomic-common-services-initializer.mjs +50 -0
  24. package/fesm2022/ng-atomic-common-services-initializer.mjs.map +1 -0
  25. package/fesm2022/ng-atomic-common-services-root-property.mjs +58 -15
  26. package/fesm2022/ng-atomic-common-services-root-property.mjs.map +1 -1
  27. package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs.map +1 -1
  28. package/fesm2022/ng-atomic-common-services-ui.mjs +15 -6
  29. package/fesm2022/ng-atomic-common-services-ui.mjs.map +1 -1
  30. package/fesm2022/ng-atomic-common-stores-entities.mjs +2 -2
  31. package/fesm2022/ng-atomic-common-stores-entities.mjs.map +1 -1
  32. package/fesm2022/ng-atomic-common-utils.mjs +26 -8
  33. package/fesm2022/ng-atomic-common-utils.mjs.map +1 -1
  34. package/interceptors/authorization/authorization.interceptor.d.ts +3 -2
  35. package/interceptors/interceptors.module.d.ts +4 -0
  36. package/package.json +8 -2
  37. package/services/app/app.service.d.ts +2 -0
  38. package/services/auth/auth.service.d.ts +3 -0
  39. package/services/initializer/index.d.ts +1 -0
  40. package/services/initializer/initializer.service.d.ts +22 -0
  41. package/services/root-property/index.d.ts +1 -0
  42. package/services/root-property/root-property.di.d.ts +6 -0
  43. package/services/root-property/root-property.service.d.ts +7 -5
  44. package/services/side-nav-mode/side-nav-mode.service.d.ts +2 -1
  45. package/services/ui/ui.helpers.d.ts +6 -4
  46. package/stores/entities/di.d.ts +11 -3
  47. package/utils/inject/inject.d.ts +5 -1
@@ -5,12 +5,12 @@ import * as i0 from "@angular/core";
5
5
  export const PROVIDE_AUTHORIZATION = new InjectionToken('PROVIDE_AUTHORIZATION');
6
6
  export class AuthorizationInterceptor {
7
7
  constructor() {
8
- this.provide = inject(PROVIDE_AUTHORIZATION);
8
+ this.getAuth = inject(PROVIDE_AUTHORIZATION);
9
9
  }
10
10
  intercept(req, next) {
11
11
  if (!req.url.startsWith('/api'))
12
12
  return next.handle(req);
13
- return from(this.provide())
13
+ return from(this.getAuth())
14
14
  .pipe(take(1))
15
15
  .pipe(mergeMap(idToken => next.handle(idToken ? this.getRequestWithToken(req, idToken) : req)));
16
16
  }
@@ -23,4 +23,10 @@ export class AuthorizationInterceptor {
23
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AuthorizationInterceptor, decorators: [{
24
24
  type: Injectable
25
25
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24vYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUdoRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBdUIsdUJBQXVCLENBQUMsQ0FBQztBQUd2RyxNQUFNLE9BQU8sd0JBQXdCO0lBRHJDO1FBR1UsWUFBTyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBYWpEO0lBWEMsU0FBUyxDQUFDLEdBQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxHQUF5QixFQUFFLEtBQWE7UUFDbEUsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUMsYUFBYSxFQUFFLEtBQUssRUFBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQWRVLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1lcmdlTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgdHlwZSBQcm92aWRlQXV0aG9yaXphdGlvbiA9ICgpID0+IFByb21pc2U8c3RyaW5nIHwgbnVsbD4gfCBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+O1xuZXhwb3J0IGNvbnN0IFBST1ZJREVfQVVUSE9SSVpBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQcm92aWRlQXV0aG9yaXphdGlvbj4oJ1BST1ZJREVfQVVUSE9SSVpBVElPTicpO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcblxuICBwcml2YXRlIHByb3ZpZGUgPSBpbmplY3QoUFJPVklERV9BVVRIT1JJWkFUSU9OKTtcblxuICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIGlmICghcmVxLnVybC5zdGFydHNXaXRoKCcvYXBpJykpIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xuXG4gICAgcmV0dXJuIGZyb20odGhpcy5wcm92aWRlKCkpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnBpcGUobWVyZ2VNYXAoaWRUb2tlbiA9PiBuZXh0LmhhbmRsZShpZFRva2VuID8gdGhpcy5nZXRSZXF1ZXN0V2l0aFRva2VuKHJlcSwgaWRUb2tlbikgOiByZXEpKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlcXVlc3RXaXRoVG9rZW4ocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgdG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiByZXEuY2xvbmUoeyBzZXRIZWFkZXJzOiB7QXV0aG9yaXphdGlvbjogdG9rZW59IH0pO1xuICB9XG59XG4iXX0=
26
+ export const authorizationInterceptor = (req, next) => {
27
+ const getAuth = inject(PROVIDE_AUTHORIZATION);
28
+ if (!req.url.startsWith('/api'))
29
+ return next(req);
30
+ return from(getAuth()).pipe(take(1), mergeMap(token => next(token ? req.clone({ setHeaders: { Authorization: token } }) : req)));
31
+ };
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24vYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUdoRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBdUIsdUJBQXVCLENBQUMsQ0FBQztBQUd2RyxNQUFNLE9BQU8sd0JBQXdCO0lBRHJDO1FBR1UsWUFBTyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBYWpEO0lBWEMsU0FBUyxDQUFDLEdBQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxHQUF5QixFQUFFLEtBQWE7UUFDbEUsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUMsYUFBYSxFQUFFLEtBQUssRUFBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQWRVLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOztBQWtCWCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBc0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDdkUsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDOUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWxELE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN6QixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ3pGLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCwgSHR0cEhhbmRsZXIsIEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yLCBIdHRwSW50ZXJjZXB0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1lcmdlTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgdHlwZSBQcm92aWRlQXV0aG9yaXphdGlvbiA9ICgpID0+IFByb21pc2U8c3RyaW5nIHwgbnVsbD4gfCBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+O1xuZXhwb3J0IGNvbnN0IFBST1ZJREVfQVVUSE9SSVpBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQcm92aWRlQXV0aG9yaXphdGlvbj4oJ1BST1ZJREVfQVVUSE9SSVpBVElPTicpO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcblxuICBwcml2YXRlIGdldEF1dGggPSBpbmplY3QoUFJPVklERV9BVVRIT1JJWkFUSU9OKTtcblxuICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIGlmICghcmVxLnVybC5zdGFydHNXaXRoKCcvYXBpJykpIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xuXG4gICAgcmV0dXJuIGZyb20odGhpcy5nZXRBdXRoKCkpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnBpcGUobWVyZ2VNYXAoaWRUb2tlbiA9PiBuZXh0LmhhbmRsZShpZFRva2VuID8gdGhpcy5nZXRSZXF1ZXN0V2l0aFRva2VuKHJlcSwgaWRUb2tlbikgOiByZXEpKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlcXVlc3RXaXRoVG9rZW4ocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgdG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiByZXEuY2xvbmUoeyBzZXRIZWFkZXJzOiB7QXV0aG9yaXphdGlvbjogdG9rZW59IH0pO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBhdXRob3JpemF0aW9uSW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKHJlcSwgbmV4dCkgPT4ge1xuICBjb25zdCBnZXRBdXRoID0gaW5qZWN0KFBST1ZJREVfQVVUSE9SSVpBVElPTik7XG4gIGlmICghcmVxLnVybC5zdGFydHNXaXRoKCcvYXBpJykpIHJldHVybiBuZXh0KHJlcSk7XG5cbiAgcmV0dXJuIGZyb20oZ2V0QXV0aCgpKS5waXBlKFxuICAgIHRha2UoMSksXG4gICAgbWVyZ2VNYXAodG9rZW4gPT4gbmV4dCh0b2tlbiA/IHJlcS5jbG9uZSh7IHNldEhlYWRlcnM6IHtBdXRob3JpemF0aW9uOiB0b2tlbn0gfSkgOiByZXEpKSxcbiAgKTtcbn07XG4iXX0=
@@ -20,10 +20,7 @@ export class InterceptorsModule {
20
20
  useClass: ThrottleInterceptor,
21
21
  multi: true
22
22
  },
23
- {
24
- provide: PROVIDE_AUTHORIZATION,
25
- useValue: () => inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth.getIdToken() : of(``)), map(token => `Bearer ${token}`)),
26
- },
23
+ provideAuthorization()
27
24
  ], imports: [CommonModule] }); }
28
25
  }
29
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: InterceptorsModule, decorators: [{
@@ -44,11 +41,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
44
41
  useClass: ThrottleInterceptor,
45
42
  multi: true
46
43
  },
47
- {
48
- provide: PROVIDE_AUTHORIZATION,
49
- useValue: () => inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth.getIdToken() : of(``)), map(token => `Bearer ${token}`)),
50
- },
44
+ provideAuthorization()
51
45
  ],
52
46
  }]
53
47
  }] });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3JzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2ludGVyY2VwdG9ycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBMkIxQyxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixZQXRCM0IsWUFBWTsrR0FzQkgsa0JBQWtCLGFBcEJsQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FDaEM7YUFDRjtTQUNGLFlBcEJDLFlBQVk7OzJGQXNCSCxrQkFBa0I7a0JBekI5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLHdCQUF3Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLG1CQUFtQjs0QkFDN0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FDaEM7eUJBQ0Y7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBdXRob3JpemF0aW9uSW50ZXJjZXB0b3IsIFBST1ZJREVfQVVUSE9SSVpBVElPTiB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL2ludGVyY2VwdG9ycy9hdXRob3JpemF0aW9uJztcbmltcG9ydCB7IFRocm90dGxlSW50ZXJjZXB0b3IgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9pbnRlcmNlcHRvcnMvdGhyb3R0bGUnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9hdXRoJztcbmltcG9ydCB7IG1hcCwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IEF1dGhvcml6YXRpb25JbnRlcmNlcHRvcixcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgIHVzZUNsYXNzOiBUaHJvdHRsZUludGVyY2VwdG9yLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFBST1ZJREVfQVVUSE9SSVpBVElPTixcbiAgICAgIHVzZVZhbHVlOiAoKSA9PiBpbmplY3QoQXV0aFNlcnZpY2UpLmF1dGgkLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcChhdXRoID0+IGF1dGggPyBhdXRoLmdldElkVG9rZW4oKSA6IG9mKGBgKSksXG4gICAgICAgIG1hcCh0b2tlbiA9PiBgQmVhcmVyICR7dG9rZW59YCksXG4gICAgICApLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEludGVyY2VwdG9yc01vZHVsZSB7IH1cbiJdfQ==
48
+ export function provideAuthorization() {
49
+ return {
50
+ provide: PROVIDE_AUTHORIZATION,
51
+ useValue: () => inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth.getIdToken() : of('')), map(token => `Bearer ${token}`)),
52
+ };
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3JzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2ludGVyY2VwdG9ycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBcUIxQyxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixZQWhCM0IsWUFBWTsrR0FnQkgsa0JBQWtCLGFBZGxCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRCxvQkFBb0IsRUFBRTtTQUN2QixZQWRDLFlBQVk7OzJGQWdCSCxrQkFBa0I7a0JBbkI5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLHdCQUF3Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLG1CQUFtQjs0QkFDN0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Qsb0JBQW9CLEVBQUU7cUJBQ3ZCO2lCQUNGOztBQUdELE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTztRQUNMLE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FDaEM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIVFRQX0lOVEVSQ0VQVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciwgUFJPVklERV9BVVRIT1JJWkFUSU9OIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vaW50ZXJjZXB0b3JzL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgVGhyb3R0bGVJbnRlcmNlcHRvciB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL2ludGVyY2VwdG9ycy90aHJvdHRsZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2F1dGgnO1xuaW1wb3J0IHsgbWFwLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICB1c2VDbGFzczogQXV0aG9yaXphdGlvbkludGVyY2VwdG9yLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IFRocm90dGxlSW50ZXJjZXB0b3IsXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAgcHJvdmlkZUF1dGhvcml6YXRpb24oKVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmNlcHRvcnNNb2R1bGUgeyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQXV0aG9yaXphdGlvbigpIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBQUk9WSURFX0FVVEhPUklaQVRJT04sXG4gICAgdXNlVmFsdWU6ICgpID0+IGluamVjdChBdXRoU2VydmljZSkuYXV0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChhdXRoID0+IGF1dGggPyBhdXRoLmdldElkVG9rZW4oKSA6IG9mKCcnKSksXG4gICAgICBtYXAodG9rZW4gPT4gYEJlYXJlciAke3Rva2VufWApLFxuICAgICksXG4gIH07XG59XG4iXX0=
@@ -6,9 +6,11 @@ import { SideNavModeService } from '@ng-atomic/common/services/side-nav-mode';
6
6
  import { FabService } from '@ng-atomic/common/services/fab';
7
7
  import { SnackBarService } from '@ng-atomic/common/services/snack-bar';
8
8
  import { Clipboard } from '@angular/cdk/clipboard';
9
+ import { MatDialog } from '@angular/material/dialog';
9
10
  import * as i0 from "@angular/core";
10
11
  export class AppService {
11
12
  constructor() {
13
+ this.dialog = inject(MatDialog);
12
14
  this.loading = inject(LoadingService);
13
15
  this.sideApp = inject(SideAppService);
14
16
  this.sideNavMode = inject(SideNavModeService);
@@ -27,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
27
29
  providedIn: 'root'
28
30
  }]
29
31
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2FwcC9hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLFVBQVU7SUFIdkI7UUFJVyxZQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN6QyxZQUFPLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDbkMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUN4Qzs4R0FUWSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvbG9hZGluZyc7XG5pbXBvcnQgeyBTaWRlQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtYXBwJztcbmltcG9ydCB7IFNpZGVOYXZNb2RlU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtbmF2LW1vZGUnO1xuaW1wb3J0IHsgRmFiU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2ZhYic7XG5pbXBvcnQgeyBTbmFja0JhclNlcnZpY2UgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9zbmFjay1iYXInO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFwcFNlcnZpY2Uge1xuICByZWFkb25seSBsb2FkaW5nID0gaW5qZWN0KExvYWRpbmdTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc2lkZUFwcCA9IGluamVjdChTaWRlQXBwU2VydmljZSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZNb2RlID0gaW5qZWN0KFNpZGVOYXZNb2RlU2VydmljZSk7XG4gIHJlYWRvbmx5IHNpZGVOYXYgPSBpbmplY3QoU2lkZU5hdk1vZGVTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHJlYWRvbmx5IGZhYiA9IGluamVjdChGYWJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc25hY2tCYXIgPSBpbmplY3QoU25hY2tCYXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgY2xpcGJvYXJkID0gaW5qZWN0KENsaXBib2FyZCk7XG59XG4iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2FwcC9hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBS3JELE1BQU0sT0FBTyxVQUFVO0lBSHZCO1FBSVcsV0FBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixZQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN6QyxZQUFPLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDbkMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUN4Qzs4R0FWWSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvbG9hZGluZyc7XG5pbXBvcnQgeyBTaWRlQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtYXBwJztcbmltcG9ydCB7IFNpZGVOYXZNb2RlU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtbmF2LW1vZGUnO1xuaW1wb3J0IHsgRmFiU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2ZhYic7XG5pbXBvcnQgeyBTbmFja0JhclNlcnZpY2UgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9zbmFjay1iYXInO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBcHBTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gIHJlYWRvbmx5IGxvYWRpbmcgPSBpbmplY3QoTG9hZGluZ1NlcnZpY2UpO1xuICByZWFkb25seSBzaWRlQXBwID0gaW5qZWN0KFNpZGVBcHBTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc2lkZU5hdk1vZGUgPSBpbmplY3QoU2lkZU5hdk1vZGVTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc2lkZU5hdiA9IGluamVjdChTaWRlTmF2TW9kZVNlcnZpY2UpO1xuICByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcmVhZG9ubHkgZmFiID0gaW5qZWN0KEZhYlNlcnZpY2UpO1xuICByZWFkb25seSBzbmFja0JhciA9IGluamVjdChTbmFja0JhclNlcnZpY2UpO1xuICByZWFkb25seSBjbGlwYm9hcmQgPSBpbmplY3QoQ2xpcGJvYXJkKTtcbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  import { Injectable, inject } from '@angular/core';
2
2
  import { toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
3
  import { Auth, authState, signInWithCustomToken, GoogleAuthProvider, TwitterAuthProvider, signInWithPopup, signOut, signInWithEmailAndPassword, createUserWithEmailAndPassword } from '@angular/fire/auth';
4
+ import { get } from 'lodash-es';
4
5
  import { distinctUntilChanged, map, of, shareReplay, switchMap } from 'rxjs';
5
6
  import * as i0 from "@angular/core";
6
7
  export class AuthService {
@@ -8,6 +9,8 @@ export class AuthService {
8
9
  this.#auth = inject(Auth);
9
10
  this.auth$ = authState(this.#auth);
10
11
  this.auth = toSignal(this.auth$);
12
+ this.userId$ = this.auth$.pipe(map(auth => auth?.uid ?? null), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
13
+ this.customClaims$ = this.auth$.pipe(switchMap(auth => auth ? auth.getIdTokenResult() : of(null)), map(token => token?.claims ?? {}), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
11
14
  }
12
15
  #auth;
13
16
  signInWithTwitter() {
@@ -46,7 +49,7 @@ export function injectAuthState() {
46
49
  return toSignal(injectAuthState$());
47
50
  }
48
51
  export function injectUserId$() {
49
- return inject(AuthService).auth$.pipe(map(auth => auth?.uid ?? null), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
52
+ return inject(AuthService).userId$.pipe(distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
50
53
  }
51
54
  export function injectUserId() {
52
55
  return toSignal(injectUserId$());
@@ -55,6 +58,9 @@ export function injectTwitterId$() {
55
58
  return inject(AuthService).auth$.pipe(map(auth => auth?.providerData?.[0]?.uid ?? null), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
56
59
  }
57
60
  export function injectClaim$(claim) {
58
- return inject(AuthService).auth$.pipe(switchMap(auth => auth ? auth?.getIdTokenResult() : of(null)), map(token => token?.claims?.[claim] ?? false), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
61
+ return inject(AuthService).customClaims$.pipe(map(token => claim ? get(token, claim) : token), distinctUntilChanged(), shareReplay(1), takeUntilDestroyed());
59
62
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL2F1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBa0IsMEJBQTBCLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzTixPQUFPLEVBQWMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQTJCekYsTUFBTSxPQUFPLFdBQVc7SUFIeEI7UUFLRSxVQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JCLFVBQUssR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLFNBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBMkI3QjtJQTdCQyxLQUFLLENBQWdCO0lBSXJCLGlCQUFpQjtRQUNmLE1BQU0sUUFBUSxHQUFHLElBQUksbUJBQW1CLEVBQUUsQ0FBQztRQUMzQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBb0IsQ0FBQTtJQUNqRSxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsTUFBTSxRQUFRLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQzFDLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELDBCQUEwQixDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUN4RCxPQUFPLDBCQUEwQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCw4QkFBOEIsQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDNUQsT0FBTyw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQscUJBQXFCLENBQUMsV0FBbUI7UUFDdkMsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBb0IsQ0FBQztJQUMzRSxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQTlCVSxXQUFXO2tIQUFYLFdBQVcsY0FGVixNQUFNOzsyRkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7QUFrQ0QsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDbkMsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlO0lBQzdCLE9BQU8sUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDbkMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsRUFDOUIsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLGtCQUFrQixFQUFFLENBQ3JCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVk7SUFDMUIsT0FBTyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNuQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxFQUNqRCxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQ2Qsa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFhLEtBQWE7SUFDcEQsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDbkMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzdELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsRUFDN0Msb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLGtCQUFrQixFQUFFLENBQ2QsQ0FBQztBQUNYLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBTaWduYWwsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwsIHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEF1dGgsIGF1dGhTdGF0ZSwgc2lnbkluV2l0aEN1c3RvbVRva2VuLCBHb29nbGVBdXRoUHJvdmlkZXIsIFR3aXR0ZXJBdXRoUHJvdmlkZXIsIHNpZ25JbldpdGhQb3B1cCwgc2lnbk91dCwgVXNlckNyZWRlbnRpYWwsIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkLCBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQgfSBmcm9tICdAYW5ndWxhci9maXJlL2F1dGgnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBUd2l0dGVyQ3JlZGVudGlhbCB7XG4gIGNvbnRleHQ6IHN0cmluZztcbiAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAgZW1haWxWZXJpZmllZDogYm9vbGVhbjtcbiAgZXhwaXJlc0luOiBzdHJpbmc7XG4gIGZlZGVyYXRlZElkOiBzdHJpbmc7XG4gIGZ1bGxOYW1lOiBzdHJpbmc7XG4gIGlkVG9rZW46IHN0cmluZztcbiAga2luZDogJ2lkZW50aXR5dG9vbGtpdCNWZXJpZnlBc3NlcnRpb25SZXNwb25zZSc7XG4gIGxvY2FsSWQ6IHN0cmluZztcbiAgb2F1dGhBY2Nlc3NUb2tlbjogc3RyaW5nO1xuICBvYXV0aFRva2VuU2VjcmV0OiBzdHJpbmc7XG4gIHBob3RvVXJsOiBzdHJpbmc7XG4gIHByb3ZpZGVySWQ6ICd0d2l0dGVyLmNvbSc7XG4gIHJhd1VzZXJJbmZvOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICBzY3JlZW5OYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFJlc3VsdCA9IFVzZXJDcmVkZW50aWFsICYge190b2tlblJlc3BvbnNlOiBUd2l0dGVyQ3JlZGVudGlhbH07XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIHtcblxuICAjYXV0aCA9IGluamVjdChBdXRoKTtcbiAgYXV0aCQgPSBhdXRoU3RhdGUodGhpcy4jYXV0aCk7XG4gIGF1dGggPSB0b1NpZ25hbCh0aGlzLmF1dGgkKTtcblxuICBzaWduSW5XaXRoVHdpdHRlcigpOiBQcm9taXNlPFJlc3VsdD4ge1xuICAgIGNvbnN0IHByb3ZpZGVyID0gbmV3IFR3aXR0ZXJBdXRoUHJvdmlkZXIoKTtcbiAgICByZXR1cm4gc2lnbkluV2l0aFBvcHVwKHRoaXMuI2F1dGgsIHByb3ZpZGVyKSBhcyBQcm9taXNlPFJlc3VsdD5cbiAgfVxuXG4gIHNpZ25JbldpdGhHb29nbGUoKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgR29vZ2xlQXV0aFByb3ZpZGVyKCk7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhQb3B1cCh0aGlzLiNhdXRoLCBwcm92aWRlcik7XG4gIH1cblxuICBzaWduSW5XaXRoRW1haWxBbmRQYXNzd29yZChlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkKHRoaXMuI2F1dGgsIGVtYWlsLCBwYXNzd29yZCk7XG4gIH1cblxuICBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQoZW1haWw6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZykge1xuICAgIHJldHVybiBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQodGhpcy4jYXV0aCwgZW1haWwsIHBhc3N3b3JkKTtcbiAgfVxuXG4gIHNpZ25JbldpdGhDdXN0b21Ub2tlbihjdXN0b21Ub2tlbjogc3RyaW5nKTogUHJvbWlzZTxSZXN1bHQ+IHtcbiAgICByZXR1cm4gc2lnbkluV2l0aEN1c3RvbVRva2VuKHRoaXMuI2F1dGgsIGN1c3RvbVRva2VuKSBhcyBQcm9taXNlPFJlc3VsdD47XG4gIH1cblxuICBzaWduT3V0KCkge1xuICAgIHJldHVybiBzaWduT3V0KHRoaXMuI2F1dGgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RBdXRoU3RhdGUkKCkge1xuICByZXR1cm4gaW5qZWN0KEF1dGhTZXJ2aWNlKS5hdXRoJDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEF1dGhTdGF0ZSgpIHtcbiAgcmV0dXJuIHRvU2lnbmFsKGluamVjdEF1dGhTdGF0ZSQoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RVc2VySWQkKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICByZXR1cm4gaW5qZWN0KEF1dGhTZXJ2aWNlKS5hdXRoJC5waXBlKFxuICAgIG1hcChhdXRoID0+IGF1dGg/LnVpZCA/PyBudWxsKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0VXNlcklkKCk6IFNpZ25hbDxzdHJpbmcgfCBudWxsPiB7XG4gIHJldHVybiB0b1NpZ25hbChpbmplY3RVc2VySWQkKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0VHdpdHRlcklkJCgpIHtcbiAgcmV0dXJuIGluamVjdChBdXRoU2VydmljZSkuYXV0aCQucGlwZShcbiAgICBtYXAoYXV0aCA9PiBhdXRoPy5wcm92aWRlckRhdGE/LlswXT8udWlkID8/IG51bGwpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RDbGFpbSQ8VCA9IHN0cmluZz4oY2xhaW06IHN0cmluZyk6IE9ic2VydmFibGU8VD4ge1xuICByZXR1cm4gaW5qZWN0KEF1dGhTZXJ2aWNlKS5hdXRoJC5waXBlKFxuICAgIHN3aXRjaE1hcChhdXRoID0+IGF1dGggPyBhdXRoPy5nZXRJZFRva2VuUmVzdWx0KCkgOiBvZihudWxsKSksXG4gICAgbWFwKHRva2VuID0+IHRva2VuPy5jbGFpbXM/LltjbGFpbV0gPz8gZmFsc2UpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICkgYXMgYW55O1xufSJdfQ==
63
+ export function injectClaim(claim) {
64
+ return toSignal(injectClaim$(claim));
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL2F1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBa0IsMEJBQTBCLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzTixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBYyxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBMkJ6RixNQUFNLE9BQU8sV0FBVztJQUh4QjtRQUtFLFVBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckIsVUFBSyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsU0FBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUIsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUN2QixHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxFQUM5QixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQ2Qsa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQztRQUVGLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQzdCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUM1RCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxFQUNqQyxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQ2Qsa0JBQWtCLEVBQUUsQ0FDckIsQ0FBQztLQTJCSDtJQTVDQyxLQUFLLENBQWdCO0lBbUJyQixpQkFBaUI7UUFDZixNQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDM0MsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQW9CLENBQUE7SUFDakUsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUMxQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDeEQsT0FBTywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsOEJBQThCLENBQUMsS0FBYSxFQUFFLFFBQWdCO1FBQzVELE9BQU8sOEJBQThCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELHFCQUFxQixDQUFDLFdBQW1CO1FBQ3ZDLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQW9CLENBQUM7SUFDM0UsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs4R0E3Q1UsV0FBVztrSEFBWCxXQUFXLGNBRlYsTUFBTTs7MkZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7O0FBaURELE1BQU0sVUFBVSxnQkFBZ0I7SUFDOUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZTtJQUM3QixPQUFPLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhO0lBQzNCLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ3JDLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFDZCxrQkFBa0IsRUFBRSxDQUNyQixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZO0lBQzFCLE9BQU8sUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7QUFDbkMsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0I7SUFDOUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDbkMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsRUFDakQsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLGtCQUFrQixFQUFFLENBQ3JCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBYSxLQUFhO0lBQ3BELE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQzNDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQy9DLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFDZCxrQkFBa0IsRUFBRSxDQUNkLENBQUM7QUFDWCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBYSxLQUFhO0lBQ25ELE9BQU8sUUFBUSxDQUFDLFlBQVksQ0FBSSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBTaWduYWwsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwsIHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEF1dGgsIGF1dGhTdGF0ZSwgc2lnbkluV2l0aEN1c3RvbVRva2VuLCBHb29nbGVBdXRoUHJvdmlkZXIsIFR3aXR0ZXJBdXRoUHJvdmlkZXIsIHNpZ25JbldpdGhQb3B1cCwgc2lnbk91dCwgVXNlckNyZWRlbnRpYWwsIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkLCBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQgfSBmcm9tICdAYW5ndWxhci9maXJlL2F1dGgnO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIG9mLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHdpdHRlckNyZWRlbnRpYWwge1xuICBjb250ZXh0OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGVtYWlsVmVyaWZpZWQ6IGJvb2xlYW47XG4gIGV4cGlyZXNJbjogc3RyaW5nO1xuICBmZWRlcmF0ZWRJZDogc3RyaW5nO1xuICBmdWxsTmFtZTogc3RyaW5nO1xuICBpZFRva2VuOiBzdHJpbmc7XG4gIGtpbmQ6ICdpZGVudGl0eXRvb2xraXQjVmVyaWZ5QXNzZXJ0aW9uUmVzcG9uc2UnO1xuICBsb2NhbElkOiBzdHJpbmc7XG4gIG9hdXRoQWNjZXNzVG9rZW46IHN0cmluZztcbiAgb2F1dGhUb2tlblNlY3JldDogc3RyaW5nO1xuICBwaG90b1VybDogc3RyaW5nO1xuICBwcm92aWRlcklkOiAndHdpdHRlci5jb20nO1xuICByYXdVc2VySW5mbzogc3RyaW5nO1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbiAgc2NyZWVuTmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBSZXN1bHQgPSBVc2VyQ3JlZGVudGlhbCAmIHtfdG9rZW5SZXNwb25zZTogVHdpdHRlckNyZWRlbnRpYWx9O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBdXRoU2VydmljZSB7XG5cbiAgI2F1dGggPSBpbmplY3QoQXV0aCk7XG4gIGF1dGgkID0gYXV0aFN0YXRlKHRoaXMuI2F1dGgpO1xuICBhdXRoID0gdG9TaWduYWwodGhpcy5hdXRoJCk7XG5cbiAgdXNlcklkJCA9IHRoaXMuYXV0aCQucGlwZShcbiAgICBtYXAoYXV0aCA9PiBhdXRoPy51aWQgPz8gbnVsbCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKSxcbiAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgKTtcblxuICBjdXN0b21DbGFpbXMkID0gdGhpcy5hdXRoJC5waXBlKFxuICAgIHN3aXRjaE1hcChhdXRoID0+IGF1dGggPyBhdXRoLmdldElkVG9rZW5SZXN1bHQoKSA6IG9mKG51bGwpKSxcbiAgICBtYXAodG9rZW4gPT4gdG9rZW4/LmNsYWltcyA/PyB7fSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKSxcbiAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgKTtcblxuICBzaWduSW5XaXRoVHdpdHRlcigpOiBQcm9taXNlPFJlc3VsdD4ge1xuICAgIGNvbnN0IHByb3ZpZGVyID0gbmV3IFR3aXR0ZXJBdXRoUHJvdmlkZXIoKTtcbiAgICByZXR1cm4gc2lnbkluV2l0aFBvcHVwKHRoaXMuI2F1dGgsIHByb3ZpZGVyKSBhcyBQcm9taXNlPFJlc3VsdD5cbiAgfVxuXG4gIHNpZ25JbldpdGhHb29nbGUoKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgR29vZ2xlQXV0aFByb3ZpZGVyKCk7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhQb3B1cCh0aGlzLiNhdXRoLCBwcm92aWRlcik7XG4gIH1cblxuICBzaWduSW5XaXRoRW1haWxBbmRQYXNzd29yZChlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkKHRoaXMuI2F1dGgsIGVtYWlsLCBwYXNzd29yZCk7XG4gIH1cblxuICBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQoZW1haWw6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZykge1xuICAgIHJldHVybiBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQodGhpcy4jYXV0aCwgZW1haWwsIHBhc3N3b3JkKTtcbiAgfVxuXG4gIHNpZ25JbldpdGhDdXN0b21Ub2tlbihjdXN0b21Ub2tlbjogc3RyaW5nKTogUHJvbWlzZTxSZXN1bHQ+IHtcbiAgICByZXR1cm4gc2lnbkluV2l0aEN1c3RvbVRva2VuKHRoaXMuI2F1dGgsIGN1c3RvbVRva2VuKSBhcyBQcm9taXNlPFJlc3VsdD47XG4gIH1cblxuICBzaWduT3V0KCkge1xuICAgIHJldHVybiBzaWduT3V0KHRoaXMuI2F1dGgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RBdXRoU3RhdGUkKCkge1xuICByZXR1cm4gaW5qZWN0KEF1dGhTZXJ2aWNlKS5hdXRoJDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEF1dGhTdGF0ZSgpIHtcbiAgcmV0dXJuIHRvU2lnbmFsKGluamVjdEF1dGhTdGF0ZSQoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RVc2VySWQkKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICByZXR1cm4gaW5qZWN0KEF1dGhTZXJ2aWNlKS51c2VySWQkLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKSxcbiAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdFVzZXJJZCgpOiBTaWduYWw8c3RyaW5nIHwgbnVsbD4ge1xuICByZXR1cm4gdG9TaWduYWwoaW5qZWN0VXNlcklkJCgpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdFR3aXR0ZXJJZCQoKSB7XG4gIHJldHVybiBpbmplY3QoQXV0aFNlcnZpY2UpLmF1dGgkLnBpcGUoXG4gICAgbWFwKGF1dGggPT4gYXV0aD8ucHJvdmlkZXJEYXRhPy5bMF0/LnVpZCA/PyBudWxsKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Q2xhaW0kPFQgPSBzdHJpbmc+KGNsYWltOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgcmV0dXJuIGluamVjdChBdXRoU2VydmljZSkuY3VzdG9tQ2xhaW1zJC5waXBlKFxuICAgIG1hcCh0b2tlbiA9PiBjbGFpbSA/IGdldCh0b2tlbiwgY2xhaW0pIDogdG9rZW4pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICkgYXMgYW55O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Q2xhaW08VCA9IHN0cmluZz4oY2xhaW06IHN0cmluZyk6IFNpZ25hbDxUPiB7XG4gIHJldHVybiB0b1NpZ25hbChpbmplY3RDbGFpbSQ8VD4oY2xhaW0pKTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './initializer.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2luaXRpYWxpemVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2luaXRpYWxpemVyLnNlcnZpY2UnO1xuXG4iXX0=
@@ -0,0 +1,44 @@
1
+ import { Injectable, Injector, inject, runInInjectionContext } from '@angular/core';
2
+ import { InjectionToken } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ const STORE_INITIALIZER = new InjectionToken('[@ng-atomic/components/pages/form] StoreInitializer');
5
+ function provideStoreInitializer(key, initializer) {
6
+ return [
7
+ { provide: STORE_INITIALIZER, useValue: { key, initializer }, multi: true },
8
+ ];
9
+ }
10
+ function injectInitializerEntries() {
11
+ return inject(STORE_INITIALIZER, { optional: true }) ?? [];
12
+ }
13
+ function injectStoreInitializers(key) {
14
+ const entries = injectInitializerEntries();
15
+ return entries.filter(entry => entry.key === key).map(entry => entry.initializer);
16
+ }
17
+ export function makeInitializerConfig(klass) {
18
+ return {
19
+ provide(initializer) {
20
+ return provideStoreInitializer(klass, initializer);
21
+ },
22
+ inject() {
23
+ return injectStoreInitializers(klass);
24
+ },
25
+ async initializeStore(store) {
26
+ const injector = inject(Injector);
27
+ const initializers = injectStoreInitializers(klass);
28
+ for (const initializer of initializers) {
29
+ await runInInjectionContext(injector, () => initializer(store));
30
+ }
31
+ },
32
+ };
33
+ }
34
+ export class InitializerService {
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: InitializerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: InitializerService, providedIn: 'root' }); }
37
+ }
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: InitializerService, decorators: [{
39
+ type: Injectable,
40
+ args: [{
41
+ providedIn: 'root'
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvc2VydmljZXMvaW5pdGlhbGl6ZXIvaW5pdGlhbGl6ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTL0MsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FBd0IscURBQXFELENBQUMsQ0FBQztBQUUzSCxTQUFTLHVCQUF1QixDQUFJLEdBQWUsRUFBRSxXQUFnQztJQUNuRixPQUFPO1FBQ0wsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7S0FDM0UsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHdCQUF3QjtJQUMvQixPQUFPLE1BQU0sQ0FBNkIsaUJBQWlCLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDdkYsQ0FBQztBQUVELFNBQVMsdUJBQXVCLENBQUksR0FBZTtJQUNqRCxNQUFNLE9BQU8sR0FBRyx3QkFBd0IsRUFBSyxDQUFDO0lBQzlDLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3BGLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUksS0FBaUI7SUFDeEQsT0FBTztRQUNMLE9BQU8sQ0FBaUMsV0FBZTtZQUNyRCxPQUFPLHVCQUF1QixDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsTUFBTTtZQUNKLE9BQU8sdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBUTtZQUM1QixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsTUFBTSxZQUFZLEdBQUcsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEQsS0FBSyxNQUFNLFdBQVcsSUFBSSxZQUFZLEVBQUU7Z0JBQ3RDLE1BQU0scUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ2pFO1FBQ0gsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDO0FBS0QsTUFBTSxPQUFPLGtCQUFrQjs4R0FBbEIsa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QsIHJ1bkluSW5qZWN0aW9uQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG50eXBlIFN0b3JlSW5pdGlhbGl6ZXI8Uz4gPSAoc3RvcmU6IFMpID0+IFByb21pc2U8dm9pZD4gfCB2b2lkO1xuXG5pbnRlcmZhY2UgU3RvcmVJbml0aWFsaXplckVudHJ5PFM+IHtcbiAga2V5OiB7IG5ldygpOiBTIH07XG4gIGluaXRpYWxpemVyOiBTdG9yZUluaXRpYWxpemVyPFM+O1xufVxuXG5jb25zdCBTVE9SRV9JTklUSUFMSVpFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yZUluaXRpYWxpemVyPGFueT4+KCdbQG5nLWF0b21pYy9jb21wb25lbnRzL3BhZ2VzL2Zvcm1dIFN0b3JlSW5pdGlhbGl6ZXInKTtcblxuZnVuY3Rpb24gcHJvdmlkZVN0b3JlSW5pdGlhbGl6ZXI8Uz4oa2V5OiB7bmV3KCk6IFN9LCBpbml0aWFsaXplcjogU3RvcmVJbml0aWFsaXplcjxTPikge1xuICByZXR1cm4gW1xuICAgIHsgcHJvdmlkZTogU1RPUkVfSU5JVElBTElaRVIsIHVzZVZhbHVlOiB7IGtleSwgaW5pdGlhbGl6ZXJ9LCBtdWx0aTogdHJ1ZSB9LFxuICBdO1xufVxuXG5mdW5jdGlvbiBpbmplY3RJbml0aWFsaXplckVudHJpZXM8Uz4oKTogU3RvcmVJbml0aWFsaXplckVudHJ5PFM+W10ge1xuICByZXR1cm4gaW5qZWN0PFN0b3JlSW5pdGlhbGl6ZXJFbnRyeTxTPltdPihTVE9SRV9JTklUSUFMSVpFUiwge29wdGlvbmFsOiB0cnVlfSkgPz8gW107XG59XG5cbmZ1bmN0aW9uIGluamVjdFN0b3JlSW5pdGlhbGl6ZXJzPFM+KGtleToge25ldygpOiBTfSk6IFN0b3JlSW5pdGlhbGl6ZXI8Uz5bXSB7XG4gIGNvbnN0IGVudHJpZXMgPSBpbmplY3RJbml0aWFsaXplckVudHJpZXM8Uz4oKTtcbiAgcmV0dXJuIGVudHJpZXMuZmlsdGVyKGVudHJ5ID0+IGVudHJ5LmtleSA9PT0ga2V5KS5tYXAoZW50cnkgPT4gZW50cnkuaW5pdGlhbGl6ZXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZUluaXRpYWxpemVyQ29uZmlnPFM+KGtsYXNzOiB7bmV3KCk6IFN9KSB7XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTxTSSBleHRlbmRzIFN0b3JlSW5pdGlhbGl6ZXI8Uz4+KGluaXRpYWxpemVyOiBTSSkge1xuICAgICAgcmV0dXJuIHByb3ZpZGVTdG9yZUluaXRpYWxpemVyKGtsYXNzLCBpbml0aWFsaXplcik7XG4gICAgfSxcbiAgICBpbmplY3QoKTogU3RvcmVJbml0aWFsaXplcjxTPltdIHtcbiAgICAgIHJldHVybiBpbmplY3RTdG9yZUluaXRpYWxpemVycyhrbGFzcyk7XG4gICAgfSxcbiAgICBhc3luYyBpbml0aWFsaXplU3RvcmUoc3RvcmU6IFMpIHtcbiAgICAgIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICAgIGNvbnN0IGluaXRpYWxpemVycyA9IGluamVjdFN0b3JlSW5pdGlhbGl6ZXJzKGtsYXNzKTtcbiAgICAgIGZvciAoY29uc3QgaW5pdGlhbGl6ZXIgb2YgaW5pdGlhbGl6ZXJzKSB7XG4gICAgICAgIGF3YWl0IHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4gaW5pdGlhbGl6ZXIoc3RvcmUpKTtcbiAgICAgIH1cbiAgICB9LFxuICB9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEluaXRpYWxpemVyU2VydmljZSB7XG5cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbW1vbi1zZXJ2aWNlcy1pbml0aWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvc2VydmljZXMvaW5pdGlhbGl6ZXIvbmctYXRvbWljLWNvbW1vbi1zZXJ2aWNlcy1pbml0aWFsaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,2 +1,3 @@
1
+ export * from './root-property.di';
1
2
  export * from './root-property.service';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3Jvb3QtcHJvcGVydHkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm9vdC1wcm9wZXJ0eS5zZXJ2aWNlJztcbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3Jvb3QtcHJvcGVydHkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yb290LXByb3BlcnR5LmRpJztcbmV4cG9ydCAqIGZyb20gJy4vcm9vdC1wcm9wZXJ0eS5zZXJ2aWNlJztcbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { ENVIRONMENT_INITIALIZER, inject } from "@angular/core";
2
+ import { provideMaterialCssVars } from "angular-material-css-vars";
3
+ import { RootPropertyService } from "./root-property.service";
4
+ export function provideRootProperty() {
5
+ return [
6
+ {
7
+ provide: ENVIRONMENT_INITIALIZER,
8
+ useFactory: () => () => inject(RootPropertyService),
9
+ multi: true,
10
+ },
11
+ provideMaterialCssVars({}),
12
+ ];
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wcm9wZXJ0eS5kaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvc2VydmljZXMvcm9vdC1wcm9wZXJ0eS9yb290LXByb3BlcnR5LmRpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxVQUFVLG1CQUFtQjtJQUNqQyxPQUFPO1FBQ0w7WUFDRSxPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUM7WUFDbkQsS0FBSyxFQUFFLElBQUk7U0FDWjtRQUNELHNCQUFzQixDQUFDLEVBQUUsQ0FBQztLQUMzQixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVOVklST05NRU5UX0lOSVRJQUxJWkVSLCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgcHJvdmlkZU1hdGVyaWFsQ3NzVmFycyB9IGZyb20gXCJhbmd1bGFyLW1hdGVyaWFsLWNzcy12YXJzXCI7XG5pbXBvcnQgeyBSb290UHJvcGVydHlTZXJ2aWNlIH0gZnJvbSBcIi4vcm9vdC1wcm9wZXJ0eS5zZXJ2aWNlXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUm9vdFByb3BlcnR5KCkge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVOVklST05NRU5UX0lOSVRJQUxJWkVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKCkgPT4gaW5qZWN0KFJvb3RQcm9wZXJ0eVNlcnZpY2UpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICBwcm92aWRlTWF0ZXJpYWxDc3NWYXJzKHt9KSxcbiAgXVxufVxuIl19
@@ -1,12 +1,13 @@
1
1
  import { isPlatformBrowser, isPlatformServer } from '@angular/common';
2
- import { Directive, ENVIRONMENT_INITIALIZER, ElementRef, Injectable, PLATFORM_ID, effect, inject } from '@angular/core';
2
+ import { Directive, ElementRef, Injectable, PLATFORM_ID, effect, inject } from '@angular/core';
3
3
  import { toObservable } from '@angular/core/rxjs-interop';
4
4
  import { makeConfig } from '@ng-atomic/common/services/ui';
5
+ import { MaterialCssVarsService } from 'angular-material-css-vars';
5
6
  import { delay, filter, map, of } from 'rxjs';
6
7
  import * as i0 from "@angular/core";
7
8
  export class RootPropertyService {
8
9
  static { this.Config = makeConfig(() => {
9
- return (_, context) => {
10
+ return (context) => {
10
11
  switch (context.breakpoint) {
11
12
  case 'xSmall': return {
12
13
  '--primary-color': '#404040',
@@ -64,15 +65,58 @@ export class RootPropertyService {
64
65
  }
65
66
  };
66
67
  }, ['root', 'properties']); }
68
+ static provideColorSchema1() {
69
+ return RootPropertyService.Config.provide(() => {
70
+ return (config) => ({
71
+ ...config,
72
+ '--primary-color': '#404040',
73
+ '--on-primary-color': '#f0f0f0',
74
+ '--accent-color': '#d8ab12',
75
+ '--background-color': '#ffffff',
76
+ '--on-background-color': '#404040',
77
+ '--menu-background-color': '#404040',
78
+ '--menu-on-background-color': '#f0f0f0',
79
+ '--navigator-background-color': '#404040',
80
+ '--navigator-on-background-color': '#f0f0f0',
81
+ '--loading-primary-color': 'var(--accent-color)',
82
+ '--background-primary-color': 'var(--primary-color)',
83
+ '--background-on-primary-color': 'var(--on-primary-color)',
84
+ '--selection-color': 'var(--background-color)',
85
+ '--selection-background-color': 'var(--on-background-color)',
86
+ });
87
+ });
88
+ }
89
+ static provideMenuWidthForIconButtonMenu() {
90
+ return RootPropertyService.Config.provide(() => {
91
+ const getMenuWidth = (context) => {
92
+ switch (context.breakpoint) {
93
+ case 'xSmall': return '220px';
94
+ case 'small':
95
+ case 'medium':
96
+ case 'large':
97
+ case 'xLarge': return '64px';
98
+ }
99
+ };
100
+ return (config, context) => ({
101
+ ...config,
102
+ '--menu-width': getMenuWidth(context),
103
+ });
104
+ });
105
+ }
67
106
  constructor() {
68
107
  this.config = RootPropertyService.Config.inject();
69
108
  this.platformId = inject(PLATFORM_ID);
109
+ this.matCssVar = inject(MaterialCssVarsService);
70
110
  effect(() => {
71
111
  if (isPlatformBrowser(this.platformId)) {
72
112
  for (const [key, value] of Object.entries(this.config?.() ?? {})) {
73
113
  document.documentElement.style.setProperty(key, value);
74
114
  }
75
115
  }
116
+ this.matCssVar.setPrimaryColor(this.config()['--primary-color']);
117
+ this.matCssVar.setAccentColor(this.config()['--accent-color']);
118
+ this.matCssVar.setWarnColor(this.config()['--warn-color']);
119
+ this.matCssVar.setDarkTheme(false);
76
120
  });
77
121
  }
78
122
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: RootPropertyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
@@ -82,18 +126,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
82
126
  type: Injectable,
83
127
  args: [{ providedIn: 'root' }]
84
128
  }], ctorParameters: () => [] });
85
- export function provideRootProperty(resolverFactoryFactory) {
86
- return [
87
- {
88
- provide: ENVIRONMENT_INITIALIZER,
89
- useFactory: () => {
90
- return () => inject(RootPropertyService);
91
- },
92
- multi: true,
93
- },
94
- RootPropertyService.Config.provide(resolverFactoryFactory),
95
- ];
96
- }
97
129
  export class NgAtomicStyleDirective {
98
130
  #el;
99
131
  constructor(rootPropertyService) {
@@ -131,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
131
163
  type: Injectable,
132
164
  args: [{ providedIn: 'root' }]
133
165
  }] });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wcm9wZXJ0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9yb290LXByb3BlcnR5L3Jvb3QtcHJvcGVydHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFZLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQWMsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcxRCxNQUFNLE9BQU8sbUJBQW1CO2FBQ2QsV0FBTSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDdkMsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNwQixRQUFRLE9BQU8sQ0FBQyxVQUFVLEVBQUU7Z0JBQzFCLEtBQUssUUFBUSxDQUFDLENBQUMsT0FBTztvQkFDcEIsaUJBQWlCLEVBQUUsU0FBUztvQkFDNUIsb0JBQW9CLEVBQUUsU0FBUztvQkFDL0IsaUJBQWlCLEVBQUUsTUFBTTtvQkFDekIsb0JBQW9CLEVBQUUsU0FBUztvQkFDL0Isb0JBQW9CLEVBQUUsTUFBTTtvQkFDNUIsY0FBYyxFQUFFLE9BQU87b0JBQ3ZCLGtCQUFrQixFQUFFLE9BQU87b0JBQzNCLGtCQUFrQixFQUFFLE9BQU87b0JBQzNCLGtCQUFrQixFQUFFLE9BQU87b0JB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LFVBQVUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEtBQU0sU0FBUyxDQUFDLEVBQ3JFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFDVixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2YsQ0FBQztJQUNILENBQUM7OEdBWlcsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FETCxNQUFNOzsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyLCBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRU5WSVJPTk1FTlRfSU5JVElBTElaRVIsIEVsZW1lbnRSZWYsIEluamVjdGFibGUsIFBMQVRGT1JNX0lELCBQcm92aWRlciwgZWZmZWN0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IG1ha2VDb25maWcgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy91aSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBkZWxheSwgZmlsdGVyLCBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUm9vdFByb3BlcnR5U2VydmljZSB7XG4gIHN0YXRpYyByZWFkb25seSBDb25maWcgPSBtYWtlQ29uZmlnKCgpID0+IHtcbiAgICByZXR1cm4gKF8sIGNvbnRleHQpID0+IHtcbiAgICAgIHN3aXRjaCAoY29udGV4dC5icmVha3BvaW50KSB7XG4gICAgICAgIGNhc2UgJ3hTbWFsbCc6IHJldHVybiB7XG4gICAgICAgICAgJy0tcHJpbWFyeS1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgICAnLS1vbi1wcmltYXJ5LWNvbG9yJzogJyNmMGYwZjAnLFxuICAgICAgICAgICctLXN1cmZhY2UtY29sb3InOiAnI2ZmZicsXG4gICAgICAgICAgJy0tb24tc3VyZmFjZS1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgICAnLS1iYWNrZ3JvdW5kLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW1lbnUtd2lkdGgnOiAnMjIwcHgnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYxJzogJzEwMHZ3JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2Mic6ICcxMDB2dycsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjMnOiAnMTAwdncnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHY0JzogJzEwMHZ3JyxcbiAgICAgICAgICAnLS1wYWdlLWhlaWdodC1sdjEnOiAnMTAwdmgnLFxuICAgICAgICB9O1xuICAgICAgICBjYXNlICdzbWFsbCc6XG4gICAgICAgIGNhc2UgJ21lZGl1bSc6IHJldHVybiB7XG4gICAgICAgICAgJy0tcHJpbWFyeS1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgICAnLS1vbi1wcmltYXJ5LWNvbG9yJzogJyNmMGYwZjAnLFxuICAgICAgICAgICctLXN1cmZhY2UtY29sb3InOiAnI2ZmZicsXG4gICAgICAgICAgJy0tb24tc3VyZmFjZS1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgICAnLS1iYWNrZ3JvdW5kLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW1lbnUtd2lkdGgnOiAnNjRweCcsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjEnOiAnMzYwcHgnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYyJzogJ21heChjYWxjKG1pbigxMDB2dywgMTYwMHB4KSAtIDM2MHB4IC0gdmFyKC0tbWVudS13aWR0aCkpLCAzNjBweCknLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYzJzogJ21heChjYWxjKG1pbigxMDB2dywgMTYwMHB4KSAtIHZhcigtLW1lbnUtd2lkdGgpKSwgMzYwcHgpJyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2NCc6ICcxMDB2dycsXG4gICAgICAgICAgJy0tcGFnZS1oZWlnaHQtbHYxJzogJzEwMHZoJyxcbiAgICAgICAgfTtcbiAgICAgICAgY2FzZSAnbGFyZ2UnOiByZXR1cm4ge1xuICAgICAgICAgICctLXByaW1hcnktY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tb24tcHJpbWFyeS1jb2xvcic6ICcjZjBmMGYwJyxcbiAgICAgICAgICAnLS1zdXJmYWNlLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW9uLXN1cmZhY2UtY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tYmFja2dyb3VuZC1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1tZW51LXdpZHRoJzogJzIyMHB4JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2MSc6ICczNjBweCcsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjInOiAnbWF4KGNhbGMobWluKDEwMHZ3LCAxNjAwcHgpIC0gdmFyKC0tcGFnZS13aWR0aC1sdjEpIC0gdmFyKC0tbWVudS13aWR0aCkpLCB2YXIoLS1wYWdlLXdpZHRoLWx2MSkpJyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2Myc6ICdtYXgoY2FsYyhtaW4oMTAwdncsIDE2MDBweCkgLSB2YXIoLS1tZW51LXdpZHRoKSksIHZhcigtLXBhZ2Utd2lkdGgtbHYxKSknLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHY0JzogJzEwMHZ3JyxcbiAgICAgICAgICAnLS1wYWdlLWhlaWdodC1sdjEnOiAnMTAwdmgnLFxuICAgICAgICB9O1xuICAgICAgICBjYXNlICd4TGFyZ2UnOiByZXR1cm4ge1xuICAgICAgICAgICctLXByaW1hcnktY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tb24tcHJpbWFyeS1jb2xvcic6ICcjZjBmMGYwJyxcbiAgICAgICAgICAnLS1zdXJmYWNlLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW9uLXN1cmZhY2UtY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tYmFja2dyb3VuZC1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1tZW51LXdpZHRoJzogJzIyMHB4JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2MSc6ICczNjBweCcsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjInOiAnbWF4KGNhbGMobWluKDEwMHZ3KSAtIHZhcigtLXBhZ2Utd2lkdGgtbHYxKSAtIHZhcigtLW1lbnUtd2lkdGgpKSwgdmFyKC0tcGFnZS13aWR0aC1sdjEpKScsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjMnOiAnbWF4KGNhbGMobWluKDEwMHZ3KSAtIHZhcigtLW1lbnUtd2lkdGgpKSwgdmFyKC0tcGFnZS13aWR0aC1sdjEpKScsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjQnOiAnMTAwdncnLFxuICAgICAgICAgICctLXBhZ2UtaGVpZ2h0LWx2MSc6ICcxMDB2aCcsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfTtcbiAgfSwgWydyb290JywgJ3Byb3BlcnRpZXMnXSk7XG4gIHJlYWRvbmx5IGNvbmZpZyA9IFJvb3RQcm9wZXJ0eVNlcnZpY2UuQ29uZmlnLmluamVjdCgpO1xuXG4gIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh0aGlzLmNvbmZpZz8uKCkgPz8ge30pKSB7XG4gICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVSb290UHJvcGVydHkoXG4gIHJlc29sdmVyRmFjdG9yeUZhY3Rvcnk/OiBQYXJhbWV0ZXJzPHR5cGVvZiBSb290UHJvcGVydHlTZXJ2aWNlLkNvbmZpZy5wcm92aWRlPlswXSxcbik6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVOVklST05NRU5UX0lOSVRJQUxJWkVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICByZXR1cm4gKCkgPT4gaW5qZWN0KFJvb3RQcm9wZXJ0eVNlcnZpY2UpO1xuICAgICAgfSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAgUm9vdFByb3BlcnR5U2VydmljZS5Db25maWcucHJvdmlkZShyZXNvbHZlckZhY3RvcnlGYWN0b3J5KSxcbiAgXVxufVxuXG5ARGlyZWN0aXZlKHsgc3RhbmRhbG9uZTogdHJ1ZSwgc2VsZWN0b3I6ICdbYXRvbWljU3R5bGVdJyB9KVxuZXhwb3J0IGNsYXNzIE5nQXRvbWljU3R5bGVEaXJlY3RpdmUge1xuICByZWFkb25seSAjZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm9vdFByb3BlcnR5U2VydmljZTogUm9vdFByb3BlcnR5U2VydmljZSkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh0aGlzLnJvb3RQcm9wZXJ0eVNlcnZpY2UuY29uZmlnPy4oKSA/PyB7fSkpIHtcbiAgICAgICAgdGhpcy4jZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShrZXksIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFJvb3RQcm9wZXJ0eUd1YXJkIHtcblx0cmVhZG9ubHkgcHJvcGVydGllcyA9IFJvb3RQcm9wZXJ0eVNlcnZpY2UuQ29uZmlnLmluamVjdCgpO1xuXHRyZWFkb25seSBwcm9wZXJ0aWVzJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnByb3BlcnRpZXMpO1xuXHRyZWFkb25seSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuXHRjYW5BY3RpdmF0ZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcblx0XHRpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm4gb2YobnVsbCk7XHRcblx0XHRyZXR1cm4gdGhpcy5wcm9wZXJ0aWVzJC5waXBlKFxuXHRcdFx0ZmlsdGVyKHByb3BlcnRpZXMgPT4gcHJvcGVydGllc1snLS1iYWNrZ3JvdW5kLWNvbG9yJ10gID09PSAnI2YwZjBmMCcpLFxuXHRcdFx0ZGVsYXkoNTAwKSxcblx0XHRcdG1hcCgoKSA9PiB0cnVlKSxcblx0XHQpO1xuXHR9XG59Il19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wcm9wZXJ0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9yb290LXByb3BlcnR5L3Jvb3QtcHJvcGVydHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQWMsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcxRCxNQUFNLE9BQU8sbUJBQW1CO2FBQ2QsV0FBTSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDdkMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2pCLFFBQVEsT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDMUIsS0FBSyxRQUFRLENBQUMsQ0FBQyxPQUFPO29CQUNwQixpQkFBaUIsRUFBRSxTQUFTO29CQUM1QixvQkFBb0IsRUFBRSxTQUFTO29CQUMvQixpQkFBaUIsRUFBRSxNQUFNO29CQUN6QixvQkFBb0IsRUFBRSxTQUFTO29CQUMvQixvQkFBb0IsRUFBRSxNQUFNO29CQUM1QixjQUFjLEVBQUUsT0FBTztvQkFDdkIsa0JBQWtCLEVBQUUsT0FBTztvQkFDM0Isa0JBQWtCLEVBQUUsT0FBTztvQkFD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LENBQUMsQ0FBQztRQUM1QyxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBVTFDO0lBUkEsV0FBVztRQUNWLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzNCLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFNLFNBQVMsQ0FBQyxFQUNyRSxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQ1YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNmLENBQUM7SUFDSCxDQUFDOzhHQVpXLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREwsTUFBTTs7MkZBQ2xCLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdGFibGUsIFBMQVRGT1JNX0lELCBlZmZlY3QsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgbWFrZUNvbmZpZywgVUlDb250ZXh0IH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvdWknO1xuaW1wb3J0IHsgTWF0ZXJpYWxDc3NWYXJzU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItbWF0ZXJpYWwtY3NzLXZhcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVsYXksIGZpbHRlciwgbWFwLCBvZiB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFJvb3RQcm9wZXJ0eVNlcnZpY2Uge1xuICBzdGF0aWMgcmVhZG9ubHkgQ29uZmlnID0gbWFrZUNvbmZpZygoKSA9PiB7XG4gICAgcmV0dXJuIChjb250ZXh0KSA9PiB7XG4gICAgICBzd2l0Y2ggKGNvbnRleHQuYnJlYWtwb2ludCkge1xuICAgICAgICBjYXNlICd4U21hbGwnOiByZXR1cm4ge1xuICAgICAgICAgICctLXByaW1hcnktY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tb24tcHJpbWFyeS1jb2xvcic6ICcjZjBmMGYwJyxcbiAgICAgICAgICAnLS1zdXJmYWNlLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW9uLXN1cmZhY2UtY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tYmFja2dyb3VuZC1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1tZW51LXdpZHRoJzogJzIyMHB4JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2MSc6ICcxMDB2dycsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjInOiAnMTAwdncnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYzJzogJzEwMHZ3JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2NCc6ICcxMDB2dycsXG4gICAgICAgICAgJy0tcGFnZS1oZWlnaHQtbHYxJzogJzEwMHZoJyxcbiAgICAgICAgfTtcbiAgICAgICAgY2FzZSAnc21hbGwnOlxuICAgICAgICBjYXNlICdtZWRpdW0nOiByZXR1cm4ge1xuICAgICAgICAgICctLXByaW1hcnktY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tb24tcHJpbWFyeS1jb2xvcic6ICcjZjBmMGYwJyxcbiAgICAgICAgICAnLS1zdXJmYWNlLWNvbG9yJzogJyNmZmYnLFxuICAgICAgICAgICctLW9uLXN1cmZhY2UtY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICAgJy0tYmFja2dyb3VuZC1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1tZW51LXdpZHRoJzogJzY0cHgnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYxJzogJzM2MHB4JyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2Mic6ICdtYXgoY2FsYyhtaW4oMTAwdncsIDE2MDBweCkgLSAzNjBweCAtIHZhcigtLW1lbnUtd2lkdGgpKSwgMzYwcHgpJyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2Myc6ICdtYXgoY2FsYyhtaW4oMTAwdncsIDE2MDBweCkgLSB2YXIoLS1tZW51LXdpZHRoKSksIDM2MHB4KScsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjQnOiAnMTAwdncnLFxuICAgICAgICAgICctLXBhZ2UtaGVpZ2h0LWx2MSc6ICcxMDB2aCcsXG4gICAgICAgIH07XG4gICAgICAgIGNhc2UgJ2xhcmdlJzogcmV0dXJuIHtcbiAgICAgICAgICAnLS1wcmltYXJ5LWNvbG9yJzogJyM0MDQwNDAnLFxuICAgICAgICAgICctLW9uLXByaW1hcnktY29sb3InOiAnI2YwZjBmMCcsXG4gICAgICAgICAgJy0tc3VyZmFjZS1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1vbi1zdXJmYWNlLWNvbG9yJzogJyM0MDQwNDAnLFxuICAgICAgICAgICctLWJhY2tncm91bmQtY29sb3InOiAnI2ZmZicsXG4gICAgICAgICAgJy0tbWVudS13aWR0aCc6ICcyMjBweCcsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjEnOiAnMzYwcHgnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYyJzogJ21heChjYWxjKG1pbigxMDB2dywgMTYwMHB4KSAtIHZhcigtLXBhZ2Utd2lkdGgtbHYxKSAtIHZhcigtLW1lbnUtd2lkdGgpKSwgdmFyKC0tcGFnZS13aWR0aC1sdjEpKScsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjMnOiAnbWF4KGNhbGMobWluKDEwMHZ3LCAxNjAwcHgpIC0gdmFyKC0tbWVudS13aWR0aCkpLCB2YXIoLS1wYWdlLXdpZHRoLWx2MSkpJyxcbiAgICAgICAgICAnLS1wYWdlLXdpZHRoLWx2NCc6ICcxMDB2dycsXG4gICAgICAgICAgJy0tcGFnZS1oZWlnaHQtbHYxJzogJzEwMHZoJyxcbiAgICAgICAgfTtcbiAgICAgICAgY2FzZSAneExhcmdlJzogcmV0dXJuIHtcbiAgICAgICAgICAnLS1wcmltYXJ5LWNvbG9yJzogJyM0MDQwNDAnLFxuICAgICAgICAgICctLW9uLXByaW1hcnktY29sb3InOiAnI2YwZjBmMCcsXG4gICAgICAgICAgJy0tc3VyZmFjZS1jb2xvcic6ICcjZmZmJyxcbiAgICAgICAgICAnLS1vbi1zdXJmYWNlLWNvbG9yJzogJyM0MDQwNDAnLFxuICAgICAgICAgICctLWJhY2tncm91bmQtY29sb3InOiAnI2ZmZicsXG4gICAgICAgICAgJy0tbWVudS13aWR0aCc6ICcyMjBweCcsXG4gICAgICAgICAgJy0tcGFnZS13aWR0aC1sdjEnOiAnMzYwcHgnLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYyJzogJ21heChjYWxjKG1pbigxMDB2dykgLSB2YXIoLS1wYWdlLXdpZHRoLWx2MSkgLSB2YXIoLS1tZW51LXdpZHRoKSksIHZhcigtLXBhZ2Utd2lkdGgtbHYxKSknLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHYzJzogJ21heChjYWxjKG1pbigxMDB2dykgLSB2YXIoLS1tZW51LXdpZHRoKSksIHZhcigtLXBhZ2Utd2lkdGgtbHYxKSknLFxuICAgICAgICAgICctLXBhZ2Utd2lkdGgtbHY0JzogJzEwMHZ3JyxcbiAgICAgICAgICAnLS1wYWdlLWhlaWdodC1sdjEnOiAnMTAwdmgnLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH07XG4gIH0sIFsncm9vdCcsICdwcm9wZXJ0aWVzJ10pO1xuICBzdGF0aWMgcHJvdmlkZUNvbG9yU2NoZW1hMSgpIHtcbiAgICByZXR1cm4gUm9vdFByb3BlcnR5U2VydmljZS5Db25maWcucHJvdmlkZSgoKSA9PiB7XG4gICAgICByZXR1cm4gKGNvbmZpZykgPT4gKHtcbiAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICAnLS1wcmltYXJ5LWNvbG9yJzogJyM0MDQwNDAnLFxuICAgICAgICAnLS1vbi1wcmltYXJ5LWNvbG9yJzogJyNmMGYwZjAnLFxuICAgICAgICAnLS1hY2NlbnQtY29sb3InOiAnI2Q4YWIxMicsXG4gICAgICAgICctLWJhY2tncm91bmQtY29sb3InOiAnI2ZmZmZmZicsXG4gICAgICAgICctLW9uLWJhY2tncm91bmQtY29sb3InOiAnIzQwNDA0MCcsXG4gICAgICAgICctLW1lbnUtYmFja2dyb3VuZC1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgJy0tbWVudS1vbi1iYWNrZ3JvdW5kLWNvbG9yJzogJyNmMGYwZjAnLFxuICAgICAgICAnLS1uYXZpZ2F0b3ItYmFja2dyb3VuZC1jb2xvcic6ICcjNDA0MDQwJyxcbiAgICAgICAgJy0tbmF2aWdhdG9yLW9uLWJhY2tncm91bmQtY29sb3InOiAnI2YwZjBmMCcsXG4gICAgICAgICctLWxvYWRpbmctcHJpbWFyeS1jb2xvcic6ICd2YXIoLS1hY2NlbnQtY29sb3IpJyxcbiAgICAgICAgJy0tYmFja2dyb3VuZC1wcmltYXJ5LWNvbG9yJzogJ3ZhcigtLXByaW1hcnktY29sb3IpJyxcbiAgICAgICAgJy0tYmFja2dyb3VuZC1vbi1wcmltYXJ5LWNvbG9yJzogJ3ZhcigtLW9uLXByaW1hcnktY29sb3IpJyxcbiAgICAgICAgJy0tc2VsZWN0aW9uLWNvbG9yJzogJ3ZhcigtLWJhY2tncm91bmQtY29sb3IpJyxcbiAgICAgICAgJy0tc2VsZWN0aW9uLWJhY2tncm91bmQtY29sb3InOiAndmFyKC0tb24tYmFja2dyb3VuZC1jb2xvciknLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgcHJvdmlkZU1lbnVXaWR0aEZvckljb25CdXR0b25NZW51KCkge1xuICAgIHJldHVybiBSb290UHJvcGVydHlTZXJ2aWNlLkNvbmZpZy5wcm92aWRlKCgpID0+IHtcbiAgICAgIGNvbnN0IGdldE1lbnVXaWR0aCA9IChjb250ZXh0OiBVSUNvbnRleHQpID0+IHtcbiAgICAgICAgc3dpdGNoIChjb250ZXh0LmJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBjYXNlICd4U21hbGwnOiByZXR1cm4gJzIyMHB4JztcbiAgICAgICAgICBjYXNlICdzbWFsbCc6XG4gICAgICAgICAgY2FzZSAnbWVkaXVtJzpcbiAgICAgICAgICBjYXNlICdsYXJnZSc6XG4gICAgICAgICAgY2FzZSAneExhcmdlJzogcmV0dXJuICc2NHB4JztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIChjb25maWcsIGNvbnRleHQpID0+ICh7XG4gICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgJy0tbWVudS13aWR0aCc6IGdldE1lbnVXaWR0aChjb250ZXh0KSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcmVhZG9ubHkgY29uZmlnID0gUm9vdFByb3BlcnR5U2VydmljZS5Db25maWcuaW5qZWN0KCk7XG5cbiAgcmVhZG9ubHkgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHJlYWRvbmx5IG1hdENzc1ZhciA9IGluamVjdChNYXRlcmlhbENzc1ZhcnNTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5jb25maWc/LigpID8/IHt9KSkge1xuICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5tYXRDc3NWYXIuc2V0UHJpbWFyeUNvbG9yKHRoaXMuY29uZmlnKClbJy0tcHJpbWFyeS1jb2xvciddKTtcbiAgICAgIHRoaXMubWF0Q3NzVmFyLnNldEFjY2VudENvbG9yKHRoaXMuY29uZmlnKClbJy0tYWNjZW50LWNvbG9yJ10pO1xuICAgICAgdGhpcy5tYXRDc3NWYXIuc2V0V2FybkNvbG9yKHRoaXMuY29uZmlnKClbJy0td2Fybi1jb2xvciddKTtcbiAgICAgIHRoaXMubWF0Q3NzVmFyLnNldERhcmtUaGVtZShmYWxzZSk7XG4gICAgfSk7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnW2F0b21pY1N0eWxlXScgfSlcbmV4cG9ydCBjbGFzcyBOZ0F0b21pY1N0eWxlRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgI2VsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICByZWFkb25seSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvb3RQcm9wZXJ0eVNlcnZpY2U6IFJvb3RQcm9wZXJ0eVNlcnZpY2UpIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5yb290UHJvcGVydHlTZXJ2aWNlLmNvbmZpZz8uKCkgPz8ge30pKSB7XG4gICAgICAgIHRoaXMuI2VsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoa2V5LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgUm9vdFByb3BlcnR5R3VhcmQge1xuXHRyZWFkb25seSBwcm9wZXJ0aWVzID0gUm9vdFByb3BlcnR5U2VydmljZS5Db25maWcuaW5qZWN0KCk7XG5cdHJlYWRvbmx5IHByb3BlcnRpZXMkID0gdG9PYnNlcnZhYmxlKHRoaXMucHJvcGVydGllcyk7XG5cdHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG5cdGNhbkFjdGl2YXRlKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuXHRcdGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHJldHVybiBvZihudWxsKTtcdFxuXHRcdHJldHVybiB0aGlzLnByb3BlcnRpZXMkLnBpcGUoXG5cdFx0XHRmaWx0ZXIocHJvcGVydGllcyA9PiBwcm9wZXJ0aWVzWyctLWJhY2tncm91bmQtY29sb3InXSAgPT09ICcjZjBmMGYwJyksXG5cdFx0XHRkZWxheSg1MDApLFxuXHRcdFx0bWFwKCgpID0+IHRydWUpLFxuXHRcdCk7XG5cdH1cbn1cbiJdfQ==
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
24
24
  type: Injectable,
25
25
  args: [{ providedIn: 'root' }]
26
26
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYtbW9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9zaWRlLW5hdi1tb2RlL3NpZGUtbmF2LW1vZGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLGtCQUFrQjtJQUQvQjtRQUVXLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBa0I1QztJQWhCQyx1Q0FBdUM7SUFDdkMsYUFBYTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDOzhHQWxCVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQURMLE1BQU07OzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2lkZU5hdk1vZGVTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgc2lkZU5hdk1vZGUgPSBzaWduYWwoJ2NvbGxhcHNlZCcpO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgdG9nZ2xlKCkgaW5zdGVhZCAqL1xuICB0b2dnbGVTaWRlTmF2KCkge1xuICAgIHRoaXMuc2lkZU5hdk1vZGUuc2V0KHRoaXMuc2lkZU5hdk1vZGUoKSA9PT0gJ2V4cGFuZGVkJyA/ICdjb2xsYXBzZWQnIDogJ2V4cGFuZGVkJyk7XG4gIH1cblxuICB0b2dnbGUoKSB7XG4gICAgdGhpcy5zaWRlTmF2TW9kZS5zZXQodGhpcy5zaWRlTmF2TW9kZSgpID09PSAnZXhwYW5kZWQnID8gJ2NvbGxhcHNlZCcgOiAnZXhwYW5kZWQnKTtcbiAgfVxuXG4gIGNvbGxhcHNlKCkge1xuICAgIHRoaXMuc2lkZU5hdk1vZGUuc2V0KCdjb2xsYXBzZWQnKTtcbiAgfVxuXG4gIGV4cGFuZCgpIHtcbiAgICB0aGlzLnNpZGVOYXZNb2RlLnNldCgnZXhwYW5kZWQnKTtcbiAgfVxufVxuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYtbW9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9zaWRlLW5hdi1tb2RlL3NpZGUtbmF2LW1vZGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLGtCQUFrQjtJQUQvQjtRQUVXLGdCQUFXLEdBQUcsTUFBTSxDQUFjLFdBQVcsQ0FBQyxDQUFDO0tBa0J6RDtJQWhCQyx1Q0FBdUM7SUFDdkMsYUFBYTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDOzhHQWxCVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQURMLE1BQU07OzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIFNpZGVOYXZNb2RlID0gJ2V4cGFuZGVkJyB8ICdjb2xsYXBzZWQnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNpZGVOYXZNb2RlU2VydmljZSB7XG4gIHJlYWRvbmx5IHNpZGVOYXZNb2RlID0gc2lnbmFsPFNpZGVOYXZNb2RlPignY29sbGFwc2VkJyk7XG5cbiAgLyoqIEBkZXByZWNhdGVkIHVzZSB0b2dnbGUoKSBpbnN0ZWFkICovXG4gIHRvZ2dsZVNpZGVOYXYoKSB7XG4gICAgdGhpcy5zaWRlTmF2TW9kZS5zZXQodGhpcy5zaWRlTmF2TW9kZSgpID09PSAnZXhwYW5kZWQnID8gJ2NvbGxhcHNlZCcgOiAnZXhwYW5kZWQnKTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLnNpZGVOYXZNb2RlLnNldCh0aGlzLnNpZGVOYXZNb2RlKCkgPT09ICdleHBhbmRlZCcgPyAnY29sbGFwc2VkJyA6ICdleHBhbmRlZCcpO1xuICB9XG5cbiAgY29sbGFwc2UoKSB7XG4gICAgdGhpcy5zaWRlTmF2TW9kZS5zZXQoJ2NvbGxhcHNlZCcpO1xuICB9XG5cbiAgZXhwYW5kKCkge1xuICAgIHRoaXMuc2lkZU5hdk1vZGUuc2V0KCdleHBhbmRlZCcpO1xuICB9XG59XG4iXX0=