@frontegg/angular 5.7.1 → 5.8.0-alpha.3612311350

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.
@@ -1227,6 +1227,12 @@
1227
1227
  * Generated bundle index. Do not edit.
1228
1228
  */
1229
1229
 
1230
+ Object.defineProperty(exports, 'ContextHolder', {
1231
+ enumerable: true,
1232
+ get: function () {
1233
+ return restApi.ContextHolder;
1234
+ }
1235
+ });
1230
1236
  exports.AuthorizedContentDirective = AuthorizedContentDirective;
1231
1237
  exports.FronteggAppModule = FronteggAppModule;
1232
1238
  exports.FronteggAppService = FronteggAppService;
@@ -1 +1 @@
1
- {"version":3,"file":"frontegg-angular.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/frontegg-app/src/lib/guards/frontegg-load.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg.component.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.service.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-base-guard.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-auth.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg-auth.service.ts","../../../../projects/frontegg-app/src/lib/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-subscription.services.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts","../../../../projects/frontegg-app/src/public-api.ts","../../../../projects/frontegg-app/src/frontegg-angular.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggAppService } from '../frontegg-app.service';\n\n@Injectable()\nexport class FronteggLoadGuard implements CanActivate {\n constructor(protected fronteggAppService: FronteggAppService) {\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n return new Observable<boolean>(obs => {\n this.fronteggAppService.isLoading$.subscribe(loading => {\n if (!loading) {\n obs.next(true);\n }\n });\n });\n }\n}\n","import { Component } from '@angular/core';\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'frontegg',\n template: ``,\n})\nexport class FronteggComponent {\n}\n","import { Inject, Injectable, NgZone } from '@angular/core';\nimport { Route, Router } from '@angular/router';\nimport { FronteggApp, initialize } from '@frontegg/js';\nimport { AuthPageRoutes, FronteggState } from '@frontegg/redux-store';\nimport { FronteggAppOptions, FronteggCheckoutDialogOptions } from '@frontegg/types';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { ContextHolder, RedirectOptions } from '@frontegg/rest-api';\nimport { FronteggComponent } from './frontegg.component';\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://sub-domain.frontegg.com',\n };\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAppService {\n fronteggApp: FronteggApp;\n\n private isLoadingSubject = new BehaviorSubject<boolean>(true);\n private isAuthenticatedSubject = new BehaviorSubject<boolean>(false);\n private stateSubject = new BehaviorSubject<FronteggState>({} as FronteggState);\n private authStateSubject = new BehaviorSubject<FronteggState['auth']>({\n isLoading: true,\n isAuthenticated: false,\n } as FronteggState['auth']);\n private auditsStateSubject = new BehaviorSubject<FronteggState['audits']>({} as FronteggState['audits']);\n private connectivityStateSubject = new BehaviorSubject<FronteggState['connectivity']>({} as FronteggState['connectivity']);\n private subscriptionsStateSubject = new BehaviorSubject<FronteggState['subscriptions']>({} as FronteggState['subscriptions']);\n private vendorStateSubject = new BehaviorSubject<FronteggState['vendor']>({} as FronteggState['vendor']);\n\n\n get state$(): Observable<FronteggState> {\n return this.stateSubject.asObservable();\n }\n\n get authState$(): Observable<FronteggState['auth']> {\n return this.authStateSubject.asObservable();\n }\n\n get auditsState$(): Observable<FronteggState['audits']> {\n return this.auditsStateSubject.asObservable();\n }\n\n get connectivityState$(): Observable<FronteggState['connectivity']> {\n return this.connectivityStateSubject.asObservable();\n }\n\n get subscriptionsState$(): Observable<FronteggState['subscriptions']> {\n return this.subscriptionsStateSubject.asObservable();\n }\n\n get vendorState$(): Observable<FronteggState['vendor']> {\n return this.vendorStateSubject.asObservable();\n }\n\n get isLoading$(): Observable<boolean> {\n return this.isLoadingSubject.asObservable();\n };\n\n\n get isAuthenticated$(): Observable<boolean> {\n return this.isAuthenticatedSubject.asObservable();\n };\n\n constructor(@Inject(FronteggAppOptionsClass) private config: FronteggAppOptions, public router: Router, private ngZone: NgZone) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\n\n if ((window as any).CYPRESS_CONFIG) {\n this.config = (window as any).CYPRESS_CONFIG;\n }\n const onRedirectTo = (to: string, opts?: RedirectOptions) => {\n const baseName = window.location.origin;\n let path = to;\n if (path.startsWith(baseName) && baseName !== '/') {\n path = path.substring(baseName.length - 1);\n }\n\n if (opts?.refresh) {\n window.location.href = path;\n } else {\n this.ngZone.run(() => {\n if (opts?.replace) {\n this.router.navigateByUrl(path, { replaceUrl: true });\n } else {\n this.router.navigateByUrl(path);\n }\n });\n }\n };\n ContextHolder.setOnRedirectTo(onRedirectTo);\n this.fronteggApp = initialize({\n onRedirectTo,\n ...this.config,\n });\n\n\n // Add all login box routes to Angular router config\n this.router.resetConfig([\n ...this.mapAuthComponents,\n {\n path: '',\n canActivate: [ FronteggLoadGuard ],\n children: [ ...this.router.config ],\n },\n ]);\n const initialFronteggState = this.fronteggApp.store.getState() as FronteggState;\n this.updateState(initialFronteggState);\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n this.updateState(this.fronteggApp.store.getState() as FronteggState);\n });\n }\n\n private updateState(fronteggStore: FronteggState): void {\n if (this.isLoadingSubject.getValue() !== fronteggStore.auth.isLoading) {\n this.isLoadingSubject.next(fronteggStore.auth.isLoading);\n }\n if (this.isAuthenticatedSubject.getValue() !== fronteggStore.auth.isAuthenticated) {\n this.isAuthenticatedSubject.next(fronteggStore.auth.isAuthenticated);\n }\n\n this.stateSubject.next(fronteggStore);\n this.authStateSubject.next(fronteggStore.auth);\n this.auditsStateSubject.next(fronteggStore.audits);\n this.connectivityStateSubject.next(fronteggStore.connectivity);\n this.subscriptionsStateSubject.next(fronteggStore.subscriptions);\n this.vendorStateSubject.next(fronteggStore.vendor);\n }\n\n get mapAuthComponents(): Route[] {\n const authRoutes = this.authRoutes;\n return (Object.keys(authRoutes) as (keyof AuthPageRoutes)[])\n .filter((key: keyof AuthPageRoutes) => key !== 'authenticatedUrl' && key !== 'signUpSuccessUrl' && key != null)\n .map((key: keyof AuthPageRoutes) => ({\n path: authRoutes[key]?.substring(1),\n component: FronteggComponent,\n }));\n }\n\n get authRoutes(): AuthPageRoutes {\n return this.fronteggApp.store.getState().auth.routes;\n }\n\n // Open admin portal\n public showAdminPortal(): void {\n this.fronteggApp.showAdminPortal();\n }\n\n // Open admin portal\n public hideAdminPortal(): void {\n this.fronteggApp?.hideAdminPortal();\n }\n\n // Open checkout dialog\n public showCheckoutDialog(opts: FronteggCheckoutDialogOptions): void {\n this.fronteggApp.showCheckoutDialog(opts);\n }\n\n // Open checkout dialog\n public hideCheckoutDialog(): void {\n this.fronteggApp?.hideCheckoutDialog();\n }\n}\n","import { ActivatedRouteSnapshot, CanActivate, DefaultUrlSerializer, Router, RouterStateSnapshot, UrlSerializer, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport abstract class FronteggBaseGuard implements UrlSerializer, CanActivate {\n\n abstract canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\n : Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;\n\n parse(url: any): UrlTree {\n const dus = new DefaultUrlSerializer();\n return dus.parse(url);\n }\n\n serialize(tree: UrlTree): any {\n const dus = new DefaultUrlSerializer();\n\n return dus\n .serialize(tree)\n .replace(/%40/gi, '@')\n .replace(/%3A/gi, ':')\n .replace(/%24/gi, '$')\n .replace(/%2C/gi, ',')\n .replace(/%3B/gi, ';')\n .replace(/%2B/gi, '+')\n .replace(/%3D/gi, '=')\n .replace(/%3F/gi, '?')\n .replace(/%2F/gi, '/')\n .replace(/(https?):\\/([\\w\\d])/gi, '$1://$2');\n }\n}\n","import { Injectable, NgZone } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggBaseGuard } from './frontegg-base-guard';\nimport { FronteggAppService } from '../frontegg-app.service';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router, protected ngZone: NgZone) {\n super();\n }\n\n navigateToUrl(redirectUrl: string): void {\n this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(redirectUrl));\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n const redirectUrl = state.url;\n return new Promise<boolean>((resolve, reject) => {\n const subscription = this.fronteggAppService.isAuthenticated$.pipe(take(1)).subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n resolve(true);\n } else {\n if (NgZone.isInAngularZone()) {\n this.navigateToUrl(redirectUrl);\n } else {\n this.ngZone.run(() => {\n this.navigateToUrl(redirectUrl);\n });\n }\n reject('unauthorized');\n }\n });\n subscription.unsubscribe();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport {\n RolesState,\n TenantsState,\n AccountSettingsState,\n SaveSecurityPolicyPasswordHistoryPayload,\n SaveSecurityPolicyLockoutPayload,\n SaveSecurityPolicyMfaPayload,\n PasswordPolicyState,\n PasswordHistoryPolicyState,\n MfaPolicyState,\n CaptchaPolicyState,\n LockoutPolicyState,\n PublicPolicyState,\n GlobalPolicyState,\n SecurityPolicyState,\n AddUserApiTokenPayload,\n AddTenantApiTokenPayload,\n ApiTokenType,\n ApiTokensState,\n ApiStateIndicator,\n ISetDeleteUserDialog,\n ISetAddUserDialog,\n LoadRolesAndPermissionsPayload,\n TeamState,\n TeamStateIndicator,\n MFAState,\n SaveSSOConfigurationPayload,\n SSOState,\n ProfileState,\n SaveSSOConfigurationFilePayload,\n UpdateSSOAuthorizationRolesPayload,\n DeleteSamlGroupPayload,\n CreateSamlGroupPayload,\n SaveProfilePayload,\n SignUpState,\n ForgotPasswordState,\n AcceptInvitationState,\n AuthState,\n User,\n authStoreName,\n LoginState,\n ActivateAccountStrategyState,\n EnhancedStore,\n} from '@frontegg/redux-store';\nimport {\n ILogin,\n ILoginWithMfa,\n IPostLogin,\n IPreLogin,\n IRecoverMFAToken,\n IActivateAccount,\n ILoginViaSocialLogin,\n ISetSocialLoginError,\n IResendActivationEmail,\n IGetActivateAccountStrategy,\n IGetActivateAccountStrategyResponse,\n IAcceptInvitation,\n IForgotPassword,\n IResetPassword,\n IGetUserPasswordConfig,\n ISignUpUser,\n IChangePassword,\n IOidcPostLogin,\n IVerifyMfa,\n IDisableMfa,\n ILoadUsers,\n ITeamUser,\n IAddUser,\n IUpdateUser,\n IDeleteUser,\n IResendActivationLink,\n ISettingsResponse,\n ISwitchTenant,\n ITenantsResponse,\n IAddRole,\n IRole,\n IUpdateRole,\n IDeleteRole,\n IAttachPermissionsToRole,\n IResendInvitationLink,\n IRolePermission,\n} from '@frontegg/rest-api';\nimport type { FronteggState, ActivateAccountState, SocialLoginState } from '@frontegg/redux-store';\nimport { Observable } from 'rxjs';\nimport { Router } from '@angular/router';\n\ninterface AuthSubStates {\n field: Partial<keyof AuthState>;\n subject: BehaviorSubject<any>;\n}\n\nexport type WithCallback<T = {}, R = boolean> = T & {\n callback?: (data: R | null, error?: string) => void;\n};\n\nexport type WithSilentLoad<T> = T & {\n silentLoading?: boolean;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAuthService {\n private authStateSubject = new BehaviorSubject<AuthState>({ isAuthenticated: false, isLoading: true } as AuthState);\n private acceptInvitationStateSubject = new BehaviorSubject<AuthState['acceptInvitationState']>({} as AuthState['acceptInvitationState']);\n private accountSettingsStateSubject = new BehaviorSubject<AuthState['accountSettingsState']>({} as AuthState['accountSettingsState']);\n private activateStateSubject = new BehaviorSubject<AuthState['activateState']>({} as AuthState['activateState']);\n private apiTokensStateSubject = new BehaviorSubject<AuthState['apiTokensState']>({} as AuthState['apiTokensState']);\n private forgotPasswordStateSubject = new BehaviorSubject<AuthState['forgotPasswordState']>({} as AuthState['forgotPasswordState']);\n private loginStateSubject = new BehaviorSubject<AuthState['loginState']>({} as AuthState['loginState']);\n private mfaStateSubject = new BehaviorSubject<AuthState['mfaState']>({} as AuthState['mfaState']);\n private profileStateSubject = new BehaviorSubject<AuthState['profileState']>({} as AuthState['profileState']);\n private rolesStateSubject = new BehaviorSubject<AuthState['rolesState']>({} as AuthState['rolesState']);\n private routesSubject = new BehaviorSubject<AuthState['routes']>({} as AuthState['routes']);\n private securityPolicyStateSubject = new BehaviorSubject<AuthState['securityPolicyState']>({} as AuthState['securityPolicyState']);\n private signUpStateSubject = new BehaviorSubject<AuthState['signUpState']>({} as AuthState['signUpState']);\n private socialLoginStateSubject = new BehaviorSubject<AuthState['socialLoginState']>({} as AuthState['socialLoginState']);\n private ssoStateSubject = new BehaviorSubject<AuthState['ssoState']>({} as AuthState['ssoState']);\n private teamStateSubject = new BehaviorSubject<AuthState['teamState']>({} as AuthState['teamState']);\n private tenantsStateSubject = new BehaviorSubject<AuthState['tenantsState']>({} as AuthState['tenantsState']);\n private userSubject = new BehaviorSubject<AuthState['user']>({} as AuthState['user']);\n private isAuthenticatedSubject = new BehaviorSubject<AuthState['isAuthenticated']>(false);\n private isLoadingSubject = new BehaviorSubject<AuthState['isLoading']>(true);\n private isSSOAuthSubject = new BehaviorSubject<AuthState['isSSOAuth']>(false);\n private ssoACSSubject = new BehaviorSubject<AuthState['ssoACS']>('');\n\n\n get authState$(): Observable<AuthState> {\n return this.authStateSubject.asObservable();\n }\n\n get acceptInvitationState$(): Observable<AuthState['acceptInvitationState']> {\n return this.acceptInvitationStateSubject.asObservable();\n }\n\n get accountSettingsState$(): Observable<AuthState['accountSettingsState']> {\n return this.accountSettingsStateSubject.asObservable();\n }\n\n get activateState$(): Observable<AuthState['activateState']> {\n return this.activateStateSubject.asObservable();\n }\n\n get apiTokensState$(): Observable<AuthState['apiTokensState']> {\n return this.apiTokensStateSubject.asObservable();\n }\n\n get forgotPasswordState$(): Observable<AuthState['forgotPasswordState']> {\n return this.forgotPasswordStateSubject.asObservable();\n }\n\n get loginState$(): Observable<AuthState['loginState']> {\n return this.loginStateSubject.asObservable();\n }\n\n get mfaState$(): Observable<AuthState['mfaState']> {\n return this.mfaStateSubject.asObservable();\n }\n\n get profileState$(): Observable<AuthState['profileState']> {\n return this.profileStateSubject.asObservable();\n }\n\n get rolesState$(): Observable<AuthState['rolesState']> {\n return this.rolesStateSubject.asObservable();\n }\n\n get routesState$(): Observable<AuthState['routes']> {\n return this.routesSubject.asObservable();\n }\n\n get securityPolicyState$(): Observable<AuthState['securityPolicyState']> {\n return this.securityPolicyStateSubject.asObservable();\n }\n\n get signUpState$(): Observable<AuthState['signUpState']> {\n return this.signUpStateSubject.asObservable();\n }\n\n get socialLoginState$(): Observable<AuthState['socialLoginState']> {\n return this.socialLoginStateSubject.asObservable();\n }\n\n get ssoState$(): Observable<AuthState['ssoState']> {\n return this.ssoStateSubject.asObservable();\n }\n\n get teamState$(): Observable<AuthState['teamState']> {\n return this.teamStateSubject.asObservable();\n }\n\n get tenantsState$(): Observable<AuthState['tenantsState']> {\n return this.tenantsStateSubject.asObservable();\n }\n\n get user$(): Observable<AuthState['user']> {\n return this.userSubject.asObservable();\n }\n\n get user(): AuthState['user'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.user;\n }\n\n\n get isAuthenticated$(): Observable<AuthState['isAuthenticated']> {\n return this.isAuthenticatedSubject.asObservable();\n }\n\n get isAuthenticated(): AuthState['isAuthenticated'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated;\n }\n\n get isLoading$(): Observable<AuthState['isLoading']> {\n return this.isLoadingSubject.asObservable();\n }\n\n get isSSOAuth$(): Observable<AuthState['isSSOAuth']> {\n return this.isSSOAuthSubject.asObservable();\n }\n\n get ssoACS$(): Observable<AuthState['ssoACS']> {\n return this.ssoACSSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService, private router: Router) {\n const authSubStates: AuthSubStates[] = [\n { field: 'acceptInvitationState', subject: this.acceptInvitationStateSubject },\n { field: 'accountSettingsState', subject: this.accountSettingsStateSubject },\n { field: 'activateState', subject: this.activateStateSubject },\n { field: 'apiTokensState', subject: this.apiTokensStateSubject },\n { field: 'forgotPasswordState', subject: this.forgotPasswordStateSubject },\n { field: 'tenantsState', subject: this.tenantsStateSubject },\n { field: 'loginState', subject: this.loginStateSubject },\n { field: 'mfaState', subject: this.mfaStateSubject },\n { field: 'profileState', subject: this.profileStateSubject },\n { field: 'rolesState', subject: this.rolesStateSubject },\n { field: 'routes', subject: this.routesSubject },\n { field: 'securityPolicyState', subject: this.securityPolicyStateSubject },\n { field: 'signUpState', subject: this.signUpStateSubject },\n { field: 'socialLoginState', subject: this.socialLoginStateSubject },\n { field: 'ssoState', subject: this.ssoStateSubject },\n { field: 'teamState', subject: this.teamStateSubject },\n { field: 'user', subject: this.userSubject },\n { field: 'isSSOAuth', subject: this.isSSOAuthSubject },\n { field: 'ssoACS', subject: this.ssoACSSubject },\n ];\n\n const state = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(state.auth, authSubStates);\n // Memoized Auth State\n this.fronteggAppService.fronteggApp.store.subscribe(() => {\n const newState = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(newState.auth, authSubStates);\n });\n }\n\n private updateState(authState: AuthState, authSubStates: AuthSubStates[]): void {\n\n if (this.authStateSubject.value !== authState) {\n this.authStateSubject.next(authState);\n }\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.value, authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n if (this.isAuthenticatedSubject.value !== authState.isAuthenticated) {\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n }\n if (this.isLoadingSubject.value !== authState.isLoading) {\n this.isLoadingSubject.next(authState.isLoading);\n }\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\n }\n\n\n public isHostedLoginCallbackRoute(): boolean {\n const path = this.fronteggAppService.router.url;\n const hostedLoginRedirectUrl = this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;\n return path.startsWith(hostedLoginRedirectUrl ?? '/oauth/callback');\n }\n\n\n // Root Actions\n setState = (state: Partial<AuthState>) => this.dispatchAction('setState', state);\n resetState = () => this.dispatchAction('resetState');\n setUser = (user: User) => this.dispatchAction('setUser', user);\n\n // Login Actions\n setLoginState = (state: Partial<LoginState>) => this.dispatchAction('setLoginState', state);\n resetLoginState = () => this.dispatchAction('resetLoginState');\n requestAuthorize = (firstTime?: boolean) => this.dispatchAction('requestAuthorize', firstTime);\n loginWithRedirect = () => {\n if (this.isHostedLoginCallbackRoute()) {\n return;\n }\n this.dispatchAction('requestHostedLoginAuthorize');\n this.setState({ isLoading: true });\n };\n preLogin = (payload: IPreLogin) => this.dispatchAction('preLogin', payload);\n postLogin = (payload: IPostLogin) => this.dispatchAction('postLogin', payload);\n login = (payload: ILogin) => this.dispatchAction('login', payload);\n loginWithMfa = (payload: WithCallback<ILoginWithMfa>) => this.dispatchAction('loginWithMfa', payload);\n recoverMfa = (payload: IRecoverMFAToken) => this.dispatchAction('recoverMfa', payload);\n logout = (callback?: () => void) => this.dispatchAction('logout', callback);\n silentLogout = (callback?: () => void) => this.dispatchAction('silentLogout', callback);\n checkIfAllowToRememberMfaDevice = (payload: { mfaToken: string }) =>\n this.dispatchAction('checkIfAllowToRememberMfaDevice', payload);\n\n // Social Logins Actions\n setSocialLoginsState = (state: Partial<SocialLoginState>) => this.dispatchAction('setSocialLoginsState', state);\n resetSocialLoginsState = () => this.dispatchAction('resetSocialLoginsState');\n loadSocialLoginsConfiguration = () => this.dispatchAction('loadSocialLoginsConfiguration');\n loginViaSocialLogin = (payload: ILoginViaSocialLogin) => this.dispatchAction('loginViaSocialLogin', payload);\n setSocialLoginError = (payload: ISetSocialLoginError) => this.dispatchAction('setSocialLoginError', payload);\n\n // Activate Account Actions\n setActivateState = (state: Partial<ActivateAccountState>) => this.dispatchAction('setActivateState', state);\n resetActivateState = () => this.dispatchAction('resetActivateState');\n setActivateStrategyState = (state: Partial<ActivateAccountStrategyState>) =>\n this.dispatchAction('setActivateStrategyState', state);\n activateAccount = (payload: IActivateAccount) => this.dispatchAction('activateAccount', payload);\n resendActivationEmail = (payload: IResendActivationEmail) => this.dispatchAction('resendActivationEmail', payload);\n getActivateAccountStrategy = (\n payload: WithCallback<IGetActivateAccountStrategy, IGetActivateAccountStrategyResponse>,\n ) => this.dispatchAction('getActivateAccountStrategy', payload);\n\n // Accept Invitation Actions\n setAcceptInvitationState = (state: Partial<AcceptInvitationState>) =>\n this.dispatchAction('setAcceptInvitationState', state);\n resetAcceptInvitationState = () => this.dispatchAction('resetAcceptInvitationState');\n acceptInvitation = (payload: IAcceptInvitation) => this.dispatchAction('acceptInvitation', payload);\n\n // Forgot Password Actions\n setForgotPasswordState = (state: Partial<ForgotPasswordState>) =>\n this.dispatchAction('setForgotPasswordState', state);\n resetForgotPasswordState = () => this.dispatchAction('resetForgotPasswordState');\n forgotPassword = (payload: IForgotPassword) => this.dispatchAction('forgotPassword', payload);\n resetPassword = (payload: IResetPassword) => this.dispatchAction('resetPassword', payload);\n loadPasswordConfig = (payload?: IGetUserPasswordConfig) => this.dispatchAction('loadPasswordConfig', payload);\n\n // Sign Up Actions\n setSignUpState = (state: Partial<SignUpState>) => this.dispatchAction('setSignUpState', state);\n resetSignUpState = () => this.dispatchAction('resetSignUpState');\n signUpUser = (payload: ISignUpUser) => this.dispatchAction('signUpUser', payload);\n resetSignUpStateSoft = () => this.dispatchAction('resetSignUpStateSoft');\n\n // Profile Actions\n setProfileState = (state: Partial<ProfileState>) => this.dispatchAction('setProfileState', state);\n resetProfileState = () => this.dispatchAction('resetProfileState');\n loadProfile = () => this.dispatchAction('loadProfile');\n saveProfile = (payload: SaveProfilePayload) => this.dispatchAction('saveProfile', payload);\n changePassword = (payload: WithCallback<IChangePassword>) => this.dispatchAction('changePassword', payload);\n\n // SSO actions\n setSSOState = (state: Partial<SSOState>) => this.dispatchAction('setSSOState', state);\n resetSSOState = () => this.dispatchAction('resetSSOState');\n loadSSOConfigurations = () => this.dispatchAction('loadSSOConfigurations');\n loadSSOAuthorizationRoles = () => this.dispatchAction('loadSSOAuthorizationRoles');\n saveSSOConfigurations = (payload: SaveSSOConfigurationPayload) =>\n this.dispatchAction('saveSSOConfigurations', payload);\n saveSSOConfigurationsFile = (payload: File[]) => this.dispatchAction('saveSSOConfigurationsFile', payload);\n saveSSOConfigurationsFileWithCallback = (payload: SaveSSOConfigurationFilePayload) =>\n this.dispatchAction('saveSSOConfigurationsFileWithCallback', payload);\n validateSSODomain = (payload?: WithCallback) => this.dispatchAction('validateSSODomain', payload);\n updateSSOAuthorizationRoles = (payload: UpdateSSOAuthorizationRolesPayload) =>\n this.dispatchAction('updateSSOAuthorizationRoles', payload);\n deleteSamlGroup = (payload: DeleteSamlGroupPayload) => this.dispatchAction('deleteSamlGroup', payload);\n createSamlGroup = (payload: CreateSamlGroupPayload) => this.dispatchAction('createSamlGroup', payload);\n oidcPostlogin = (payload: IOidcPostLogin) => this.dispatchAction('oidcPostlogin', payload);\n\n // Mfa actions\n setMfaState = (state: Partial<MFAState>) => this.dispatchAction('setMfaState', state);\n resetMfaState = () => this.dispatchAction('resetMfaState');\n enrollMfa = () => this.dispatchAction('enrollMfa');\n verifyMfa = (payload: WithCallback<IVerifyMfa, string | undefined>) => this.dispatchAction('verifyMfa', payload);\n verifyMfaAfterForce = (payload: WithCallback<ILoginWithMfa, string | undefined>) =>\n this.dispatchAction('verifyMfaAfterForce', payload);\n disableMfa = (payload: WithCallback<IDisableMfa>) => this.dispatchAction('disableMfa', payload);\n\n // Team actions\n setTeamLoader = (payload: TeamStateIndicator) => this.dispatchAction('setTeamLoader', payload);\n setTeamError = (payload: TeamStateIndicator) => this.dispatchAction('setTeamError', payload);\n setTeamState = (payload: Partial<TeamState>) => this.dispatchAction('setTeamState', payload);\n resetTeamState = () => this.dispatchAction('resetTeamState');\n loadUsers = (payload: WithCallback<WithSilentLoad<ILoadUsers>, ITeamUser[]>) =>\n this.dispatchAction('loadUsers', payload);\n loadRoles = (payload?: LoadRolesAndPermissionsPayload) => this.dispatchAction('loadRoles', payload);\n addUser = (payload: WithCallback<IAddUser, ITeamUser>) => this.dispatchAction('addUser', payload);\n updateUser = (payload: WithCallback<IUpdateUser, ITeamUser>) => this.dispatchAction('updateUser', payload);\n deleteUser = (payload: WithCallback<IDeleteUser>) => this.dispatchAction('deleteUser', payload);\n resendActivationLink = (payload: WithCallback<IResendActivationLink>) =>\n this.dispatchAction('resendActivationLink', payload);\n resendInvitationLink = (payload: WithCallback<IResendInvitationLink>) =>\n this.dispatchAction('resendInvitationLink', payload);\n openAddUserDialog = (payload?: ISetAddUserDialog) => this.dispatchAction('openAddUserDialog', payload);\n closeAddUserDialog = (payload?: any) => this.dispatchAction('closeAddUserDialog', payload);\n openDeleteUserDialog = (payload?: ISetDeleteUserDialog) => this.dispatchAction('openDeleteUserDialog', payload);\n closeDeleteUserDialog = (payload?: any) => this.dispatchAction('closeDeleteUserDialog', payload);\n\n // API Token Actions\n setApiTokensLoader = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensLoader', payload);\n setApiTokensError = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensError', payload);\n setApiTokensState = (state: Partial<ApiTokensState>) => this.dispatchAction('setApiTokensState', state);\n resetApiTokensState = () => this.dispatchAction('resetApiTokensState');\n loadApiTokens = (payload?: WithSilentLoad<WithCallback>) => this.dispatchAction('loadApiTokens', payload);\n initApiTokensData = (payload: ApiTokenType) => this.dispatchAction('initApiTokensData', payload);\n addTenantApiToken = (payload: AddTenantApiTokenPayload) => this.dispatchAction('addTenantApiToken', payload);\n addUserApiToken = (payload: AddUserApiTokenPayload) => this.dispatchAction('addUserApiToken', payload);\n deleteUserApiToken = (payload: string) => this.dispatchAction('deleteUserApiToken', payload);\n deleteTenantApiToken = (payload: string) => this.dispatchAction('deleteTenantApiToken', payload);\n\n // Security Policy Actions\n setSecurityPolicyState = (state: Partial<SecurityPolicyState>) =>\n this.dispatchAction('setSecurityPolicyState', state);\n setSecurityPolicyGlobalState = (state: Partial<GlobalPolicyState>) =>\n this.dispatchAction('setSecurityPolicyGlobalState', state);\n setSecurityPolicyPublicState = (state: Partial<PublicPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPublicState', state);\n setSecurityPolicyMfaState = (state: Partial<MfaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyMfaState', state);\n setSecurityPolicyLockoutState = (state: Partial<LockoutPolicyState>) =>\n this.dispatchAction('setSecurityPolicyLockoutState', state);\n setSecurityPolicyCaptchaState = (state: Partial<CaptchaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyCaptchaState', state);\n setSecurityPolicyPasswordHistoryState = (state: Partial<PasswordHistoryPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordHistoryState', state);\n resetSecurityPolicyState = () => this.dispatchAction('resetSecurityPolicyState');\n setSecurityPolicyPasswordState = (state: Partial<PasswordPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordState', state);\n loadSecurityPolicy = () => this.dispatchAction('loadSecurityPolicy');\n loadPublicSecurityPolicy = () => this.dispatchAction('loadPublicSecurityPolicy');\n loadVendorPasswordConfig = () => this.dispatchAction('loadVendorPasswordConfig');\n loadSecurityPolicyMfa = () => this.dispatchAction('loadSecurityPolicyMfa');\n saveSecurityPolicyMfa = (payload: SaveSecurityPolicyMfaPayload) =>\n this.dispatchAction('saveSecurityPolicyMfa', payload);\n loadSecurityPolicyLockout = () => this.dispatchAction('loadSecurityPolicyLockout');\n saveSecurityPolicyLockout = (payload: SaveSecurityPolicyLockoutPayload) =>\n this.dispatchAction('saveSecurityPolicyLockout', payload);\n loadSecurityPolicyCaptcha = () => this.dispatchAction('loadSecurityPolicyCaptcha');\n loadSecurityPolicyPasswordHistory = () => this.dispatchAction('loadSecurityPolicyPasswordHistory');\n saveSecurityPolicyPasswordHistory = (payload: SaveSecurityPolicyPasswordHistoryPayload) =>\n this.dispatchAction('saveSecurityPolicyPasswordHistory', payload);\n\n // Account Settings Actions\n setAccountSettingsState = (state: Partial<AccountSettingsState>) =>\n this.dispatchAction('setAccountSettingsState', state);\n resetAccountSettingsState = () => this.dispatchAction('resetAccountSettingsState');\n loadAccountSettings = (payload?: WithCallback<WithSilentLoad<{}>>) =>\n this.dispatchAction('loadAccountSettings', payload);\n saveAccountSettings = (payload: WithCallback<ISettingsResponse, ISettingsResponse>) =>\n this.dispatchAction('saveAccountSettings', payload);\n\n // Tenants Actions\n setTenantsState = (state: Partial<TenantsState>) => this.dispatchAction('setTenantsState', state);\n resetTenantsState = () => this.dispatchAction('resetTenantsState');\n switchTenant = (payload: WithCallback<ISwitchTenant>) => this.dispatchAction('switchTenant', payload);\n loadTenants = (payload?: WithCallback<{}, ITenantsResponse[]>) => this.dispatchAction('loadTenants', payload);\n\n // Roles Actions\n setRolesState = (state: RolesState) => this.dispatchAction('setRolesState', state);\n resetRolesState = () => this.dispatchAction('resetRolesState');\n loadRolesAndPermissions = (payload?: WithSilentLoad<{}>) => this.dispatchAction('loadRolesAndPermissions', payload);\n addRole = (payload: WithCallback<IAddRole, IRole>) => this.dispatchAction('addRole', payload);\n updateRole = (payload: WithCallback<IUpdateRole, IRole>) => this.dispatchAction('updateRole', payload);\n deleteRole = (payload: WithCallback<IDeleteRole>) => this.dispatchAction('deleteRole', payload);\n attachPermissionsToRole = (payload: WithCallback<IAttachPermissionsToRole, IRole>) =>\n this.dispatchAction('attachPermissionsToRole', payload);\n\n attachPermissionToRoles = (\n payload: WithCallback<{\n permissionId: string;\n roleIds: string[];\n },\n IRolePermission>,\n ) => this.dispatchAction('attachPermissionToRoles', payload);\n}\n","import {\n AfterContentInit,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n } from '@angular/core';\n import { FronteggAuthService } from '../frontegg-auth.service';\n \n @Directive({\n selector: '[authorizedContent]',\n })\n export class AuthorizedContentDirective implements AfterContentInit {\n private _roles: string[] = [];\n \n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef,\n private fronteggAuthService: FronteggAuthService\n ) {}\n \n @Input()\n set authorizedContent(roles: string[]) {\n this._roles = roles;\n }\n \n ngAfterContentInit() {\n this.fronteggAuthService.user$.subscribe((user) => {\n if (user?.roles?.some((role) => this._roles.includes(role.name))) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n } else {\n this.viewContainer.clear();\n }\n });\n }\n }\n ","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport { EnhancedStore, SubscriptionsState, subscriptionsStoreName, SubscriptionState } from '@frontegg/redux-store';\n\nexport interface CheckoutDialogState {\n loading: boolean;\n open: boolean;\n success: boolean;\n error: string | null;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggSubscriptionService {\n private subscriptionStateSubject = new BehaviorSubject<SubscriptionState>({} as SubscriptionState);\n\n private checkoutStateSubject = new BehaviorSubject<CheckoutDialogState>({\n loading: false,\n open: false,\n success: false,\n error: null,\n });\n\n get subscriptionState$(): Observable<SubscriptionState> {\n return this.subscriptionStateSubject.asObservable();\n }\n\n get checkoutState$(): Observable<CheckoutDialogState> {\n return this.checkoutStateSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService) {\n // Memoized Subscription State\n this.fronteggAppService.subscriptionsState$.subscribe((subscriptionState: SubscriptionsState) => {\n if (subscriptionState != null) {\n const { billing: { subscription }, checkout: checkoutState } = subscriptionState;\n\n if (!FastDeepEqual(this.subscriptionStateSubject.getValue(), subscription)) {\n this.subscriptionStateSubject.next(subscription);\n }\n\n const checkoutSubjectState = this.checkoutStateSubject.getValue();\n if (checkoutSubjectState.loading !== checkoutState.loading) {\n this.checkoutStateSubject.next({\n ...checkoutSubjectState,\n loading: checkoutState.loading,\n });\n }\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${subscriptionsStoreName}/${type}`, payload });\n }\n\n public loadSubscription = () => this.dispatchAction('billing/subscription/loadSubscription');\n\n public openCheckout = (plan: string): void => {\n this.checkoutStateSubject.next({\n loading: false,\n open: true,\n success: false,\n error: null,\n });\n this.fronteggAppService.showCheckoutDialog({\n plan,\n onSuccess: () => {\n this.checkoutStateSubject.next({\n loading: false,\n open: false,\n success: true,\n error: null,\n });\n },\n onError: (error) => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n error,\n });\n },\n onClose: () => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n open: false,\n });\n },\n });\n };\n\n public hideCheckout = (): void => {\n this.fronteggAppService.hideCheckoutDialog();\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { FronteggAppOptionsClass, FronteggAppService } from './frontegg-app.service';\nimport { FronteggComponent } from './frontegg.component';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { FronteggAuthGuard } from './guards/frontegg-auth.guard';\nimport { FronteggAuthService } from './frontegg-auth.service';\nimport { AuthorizedContentDirective } from './directives/authorized-content.directive';\nimport { FronteggSubscriptionService } from './frontegg-subscription.services';\n\n@NgModule({\n imports: [CommonModule, RouterModule],\n declarations: [FronteggComponent, AuthorizedContentDirective],\n exports: [FronteggComponent, AuthorizedContentDirective],\n})\nexport class FronteggAppModule {\n static forRoot(config: FronteggAppOptions): ModuleWithProviders<FronteggAppModule> {\n return {\n ngModule: FronteggAppModule,\n providers: [\n FronteggAppService,\n FronteggAuthGuard,\n FronteggLoadGuard,\n FronteggAuthService,\n FronteggSubscriptionService,\n {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\n * Public API Surface of frontegg-app\n */\n\nexport { FronteggAppModule } from './lib/frontegg-app.module';\nexport { FronteggAppService } from './lib/frontegg-app.service';\nexport { FronteggComponent } from './lib/frontegg.component';\nexport { FronteggAuthService } from './lib/frontegg-auth.service';\nexport { FronteggSubscriptionService } from './lib/frontegg-subscription.services';\nexport * from './lib/directives/authorized-content.directive';\nexport * from './lib/guards/frontegg-auth.guard';\nexport * from './lib/guards/frontegg-load.guard';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {FronteggAppOptionsClass as ɵa} from './lib/frontegg-app.service';\nexport {FronteggBaseGuard as ɵb} from './lib/guards/frontegg-base-guard';"],"names":["Observable","Injectable","Component","BehaviorSubject","ContextHolder","initialize","Inject","Router","NgZone","DefaultUrlSerializer","take","FastDeepEqual","authStoreName","Directive","TemplateRef","ViewContainerRef","Input","subscriptionsStoreName","NgModule","CommonModule","RouterModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;YAC7D,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,EAAE,CAAC;IACd,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;;QCnOE,2BAAsB,kBAAsC;YAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;SAC3D;QAED,uCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;YAArE,iBAQC;YAPC,OAAO,IAAIA,eAAU,CAAU,UAAA,GAAG;gBAChC,KAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,UAAA,OAAO;oBAClD,IAAI,CAAC,OAAO,EAAE;wBACZ,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAChB;iBACF,CAAC,CAAC;aACJ,CAAC,CAAC;SACJ;;;;gBAbFC,aAAU;;;gBAFF,kBAAkB;;;;QCK3B;;;;;gBALCC,YAAS,SAAC;;oBAET,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,EAAE;iBACb;;;;QCGD;YACE,mBAAc,GAAyC;gBACrD,OAAO,EAAE,iCAAiC;aAC3C,CAAC;SACH;sCAAA;KAAA,IAAA;;QAsDC,4BAAqD,MAA0B,EAAS,MAAc,EAAU,MAAc;YAA9H,iBAiDC;YAjDoD,WAAM,GAAN,MAAM,CAAoB;YAAS,WAAM,GAAN,MAAM,CAAQ;YAAU,WAAM,GAAN,MAAM,CAAQ;YA9CtH,qBAAgB,GAAG,IAAIC,oBAAe,CAAU,IAAI,CAAC,CAAC;YACtD,2BAAsB,GAAG,IAAIA,oBAAe,CAAU,KAAK,CAAC,CAAC;YAC7D,iBAAY,GAAG,IAAIA,oBAAe,CAAgB,EAAmB,CAAC,CAAC;YACvE,qBAAgB,GAAG,IAAIA,oBAAe,CAAwB;gBACpE,SAAS,EAAE,IAAI;gBACf,eAAe,EAAE,KAAK;aACE,CAAC,CAAC;YACpB,uBAAkB,GAAG,IAAIA,oBAAe,CAA0B,EAA6B,CAAC,CAAC;YACjG,6BAAwB,GAAG,IAAIA,oBAAe,CAAgC,EAAmC,CAAC,CAAC;YACnH,8BAAyB,GAAG,IAAIA,oBAAe,CAAiC,EAAoC,CAAC,CAAC;YACtH,uBAAkB,GAAG,IAAIA,oBAAe,CAA0B,EAA6B,CAAC,CAAC;YAqCvG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,MAAM,KAAK,CAAC,iFAAiF,CAAC,CAAC;aAChG;YAED,IAAK,MAAc,CAAC,cAAc,EAAE;gBAClC,IAAI,CAAC,MAAM,GAAI,MAAc,CAAC,cAAc,CAAC;aAC9C;YACD,IAAM,YAAY,GAAG,UAAC,EAAU,EAAE,IAAsB;gBACtD,IAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACxC,IAAI,IAAI,GAAG,EAAE,CAAC;gBACd,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE;oBACjD,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;iBAC5C;gBAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;oBACjB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;iBAC7B;qBAAM;oBACL,KAAI,CAAC,MAAM,CAAC,GAAG,CAAC;wBACd,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;4BACjB,KAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;yBACvD;6BAAM;4BACL,KAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;yBACjC;qBACF,CAAC,CAAC;iBACJ;aACF,CAAC;YACFC,qBAAa,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,GAAGC,aAAU,iBAC3B,YAAY,cAAA,IACT,IAAI,CAAC,MAAM,EACd,CAAC;;YAIH,IAAI,CAAC,MAAM,CAAC,WAAW,wCAClB,IAAI,CAAC,iBAAiB;gBACzB;oBACE,IAAI,EAAE,EAAE;oBACR,WAAW,EAAE,CAAE,iBAAiB,CAAE;oBAClC,QAAQ,2BAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;iBACpC;eACD,CAAC;YACH,IAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;YAChF,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;;YAEvC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC/B,KAAI,CAAC,WAAW,CAAC,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC,CAAC;aACtE,CAAC,CAAC;SACJ;QAlFD,sBAAI,sCAAM;iBAAV;gBACE,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;aACzC;;;WAAA;QAED,sBAAI,0CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAED,sBAAI,4CAAY;iBAAhB;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;aAC/C;;;WAAA;QAED,sBAAI,kDAAkB;iBAAtB;gBACE,OAAO,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;aACrD;;;WAAA;QAED,sBAAI,mDAAmB;iBAAvB;gBACE,OAAO,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,CAAC;aACtD;;;WAAA;QAED,sBAAI,4CAAY;iBAAhB;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;aAC/C;;;WAAA;QAED,sBAAI,0CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAAA,CAAC;QAGF,sBAAI,gDAAgB;iBAApB;gBACE,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,CAAC;aACnD;;;WAAA;QAAA,CAAC;QAqDM,wCAAW,GAAX,UAAY,aAA4B;YAC9C,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE;gBACrE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC1D;YACD,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,aAAa,CAAC,IAAI,CAAC,eAAe,EAAE;gBACjF,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACtE;YAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAC/D,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACjE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;SACpD;QAED,sBAAI,iDAAiB;iBAArB;gBACE,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACnC,OAAQ,MAAM,CAAC,IAAI,CAAC,UAAU,CAA8B;qBACzD,MAAM,CAAC,UAAC,GAAyB,IAAK,OAAA,GAAG,KAAK,kBAAkB,IAAI,GAAG,KAAK,kBAAkB,IAAI,GAAG,IAAI,IAAI,GAAA,CAAC;qBAC9G,GAAG,CAAC,UAAC,GAAyB;;oBAAK,QAAC;wBACnC,IAAI,EAAE,MAAA,UAAU,CAAC,GAAG,CAAC,0CAAE,SAAS,CAAC,CAAC,CAAC;wBACnC,SAAS,EAAE,iBAAiB;qBAC7B,EAAC;iBAAA,CAAC,CAAC;aACP;;;WAAA;QAED,sBAAI,0CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;aACtD;;;WAAA;;QAGM,4CAAe,GAAf;YACL,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;SACpC;;QAGM,4CAAe,GAAf;;YACL,MAAA,IAAI,CAAC,WAAW,0CAAE,eAAe,EAAE,CAAC;SACrC;;QAGM,+CAAkB,GAAlB,UAAmB,IAAmC;YAC3D,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;SAC3C;;QAGM,+CAAkB,GAAlB;;YACL,MAAA,IAAI,CAAC,WAAW,0CAAE,kBAAkB,EAAE,CAAC;SACxC;;;;;gBAvJFJ,aAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;gDAkDcK,SAAM,SAAC,uBAAuB;gBAnE7BC,SAAM;gBADOC,SAAM;;;;QCGnC;SA0BC;QArBC,iCAAK,GAAL,UAAM,GAAQ;YACZ,IAAM,GAAG,GAAG,IAAIC,uBAAoB,EAAE,CAAC;YACvC,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACvB;QAED,qCAAS,GAAT,UAAU,IAAa;YACrB,IAAM,GAAG,GAAG,IAAIA,uBAAoB,EAAE,CAAC;YAEvC,OAAO,GAAG;iBACP,SAAS,CAAC,IAAI,CAAC;iBACf,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;SAChD;gCACF;KAAA;;;QCrBsC,qCAAiB;QAEtD,2BAAsB,kBAAsC,EAAY,MAAc,EAAY,MAAc;YAAhH,YACE,iBAAO,SACR;YAFqB,wBAAkB,GAAlB,kBAAkB,CAAoB;YAAY,YAAM,GAAN,MAAM,CAAQ;YAAY,YAAM,GAAN,MAAM,CAAQ;;SAE/G;QAED,yCAAa,GAAb,UAAc,WAAmB;YAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,GAAG,eAAe,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;SAC5H;QAED,uCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;YAArE,iBAmBC;YAlBC,IAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC;YAC9B,OAAO,IAAI,OAAO,CAAU,UAAC,OAAO,EAAE,MAAM;gBAC1C,IAAM,YAAY,GAAG,KAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAACC,cAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,eAAwB;oBAC7G,IAAI,eAAe,EAAE;wBACnB,OAAO,CAAC,IAAI,CAAC,CAAC;qBACf;yBAAM;wBACL,IAAIF,SAAM,CAAC,eAAe,EAAE,EAAE;4BAC5B,KAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;yBACjC;6BAAM;4BACL,KAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gCACd,KAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;6BACjC,CAAC,CAAC;yBACJ;wBACD,MAAM,CAAC,cAAc,CAAC,CAAC;qBACxB;iBACF,CAAC,CAAC;gBACH,YAAY,CAAC,WAAW,EAAE,CAAC;aAC5B,CAAC,CAAC;SACJ;;KA7BH,CAAuC,iBAAiB;;gBADvDP,aAAU;;;gBAHF,kBAAkB;gBAHMM,SAAM;gBADlBC,SAAM;;;;QCoOzB,6BAAoB,kBAAsC,EAAU,MAAc;YAAlF,iBA8BC;YA9BmB,uBAAkB,GAAlB,kBAAkB,CAAoB;YAAU,WAAM,GAAN,MAAM,CAAQ;YAzH1E,qBAAgB,GAAG,IAAIL,oBAAe,CAAY,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAe,CAAC,CAAC;YAC5G,iCAA4B,GAAG,IAAIA,oBAAe,CAAqC,EAAwC,CAAC,CAAC;YACjI,gCAA2B,GAAG,IAAIA,oBAAe,CAAoC,EAAuC,CAAC,CAAC;YAC9H,yBAAoB,GAAG,IAAIA,oBAAe,CAA6B,EAAgC,CAAC,CAAC;YACzG,0BAAqB,GAAG,IAAIA,oBAAe,CAA8B,EAAiC,CAAC,CAAC;YAC5G,+BAA0B,GAAG,IAAIA,oBAAe,CAAmC,EAAsC,CAAC,CAAC;YAC3H,sBAAiB,GAAG,IAAIA,oBAAe,CAA0B,EAA6B,CAAC,CAAC;YAChG,oBAAe,GAAG,IAAIA,oBAAe,CAAwB,EAA2B,CAAC,CAAC;YAC1F,wBAAmB,GAAG,IAAIA,oBAAe,CAA4B,EAA+B,CAAC,CAAC;YACtG,sBAAiB,GAAG,IAAIA,oBAAe,CAA0B,EAA6B,CAAC,CAAC;YAChG,kBAAa,GAAG,IAAIA,oBAAe,CAAsB,EAAyB,CAAC,CAAC;YACpF,+BAA0B,GAAG,IAAIA,oBAAe,CAAmC,EAAsC,CAAC,CAAC;YAC3H,uBAAkB,GAAG,IAAIA,oBAAe,CAA2B,EAA8B,CAAC,CAAC;YACnG,4BAAuB,GAAG,IAAIA,oBAAe,CAAgC,EAAmC,CAAC,CAAC;YAClH,oBAAe,GAAG,IAAIA,oBAAe,CAAwB,EAA2B,CAAC,CAAC;YAC1F,qBAAgB,GAAG,IAAIA,oBAAe,CAAyB,EAA4B,CAAC,CAAC;YAC7F,wBAAmB,GAAG,IAAIA,oBAAe,CAA4B,EAA+B,CAAC,CAAC;YACtG,gBAAW,GAAG,IAAIA,oBAAe,CAAoB,EAAuB,CAAC,CAAC;YAC9E,2BAAsB,GAAG,IAAIA,oBAAe,CAA+B,KAAK,CAAC,CAAC;YAClF,qBAAgB,GAAG,IAAIA,oBAAe,CAAyB,IAAI,CAAC,CAAC;YACrE,qBAAgB,GAAG,IAAIA,oBAAe,CAAyB,KAAK,CAAC,CAAC;YACtE,kBAAa,GAAG,IAAIA,oBAAe,CAAsB,EAAE,CAAC,CAAC;;YAqKrE,aAAQ,GAAG,UAAC,KAAyB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,GAAA,CAAC;YACjF,eAAU,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,CAAC,GAAA,CAAC;YACrD,YAAO,GAAG,UAAC,IAAU,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,GAAA,CAAC;;YAG/D,kBAAa,GAAG,UAAC,KAA0B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC,GAAA,CAAC;YAC5F,oBAAe,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,GAAA,CAAC;YAC/D,qBAAgB,GAAG,UAAC,SAAmB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC,GAAA,CAAC;YAC/F,sBAAiB,GAAG;gBAClB,IAAI,KAAI,CAAC,0BAA0B,EAAE,EAAE;oBACrC,OAAO;iBACR;gBACD,KAAI,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC;gBACnD,KAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;aACpC,CAAC;YACF,aAAQ,GAAG,UAAC,OAAkB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,GAAA,CAAC;YAC5E,cAAS,GAAG,UAAC,OAAmB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAA,CAAC;YAC/E,UAAK,GAAG,UAAC,OAAe,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,GAAA,CAAC;YACnE,iBAAY,GAAG,UAAC,OAAoC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,GAAA,CAAC;YACtG,eAAU,GAAG,UAAC,OAAyB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YACvF,WAAM,GAAG,UAAC,QAAqB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAA,CAAC;YAC5E,iBAAY,GAAG,UAAC,QAAqB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAA,CAAC;YACxF,oCAA+B,GAAG,UAAC,OAA6B,IAC9D,OAAA,KAAI,CAAC,cAAc,CAAC,iCAAiC,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGlE,yBAAoB,GAAG,UAAC,KAAgC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,GAAA,CAAC;YAChH,2BAAsB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,GAAA,CAAC;YAC7E,kCAA6B,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,+BAA+B,CAAC,GAAA,CAAC;YAC3F,wBAAmB,GAAG,UAAC,OAA6B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAA,CAAC;YAC7G,wBAAmB,GAAG,UAAC,OAA6B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAG7G,qBAAgB,GAAG,UAAC,KAAoC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAA,CAAC;YAC5G,uBAAkB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAA,CAAC;YACrE,6BAAwB,GAAG,UAAC,KAA4C,IACtE,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,GAAA,CAAC;YACzD,oBAAe,GAAG,UAAC,OAAyB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,GAAA,CAAC;YACjG,0BAAqB,GAAG,UAAC,OAA+B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,GAAA,CAAC;YACnH,+BAA0B,GAAG,UAC3B,OAAuF,IACpF,OAAA,KAAI,CAAC,cAAc,CAAC,4BAA4B,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGhE,6BAAwB,GAAG,UAAC,KAAqC,IAC/D,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,GAAA,CAAC;YACzD,+BAA0B,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,4BAA4B,CAAC,GAAA,CAAC;YACrF,qBAAgB,GAAG,UAAC,OAA0B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGpG,2BAAsB,GAAG,UAAC,KAAmC,IAC3D,OAAA,KAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,KAAK,CAAC,GAAA,CAAC;YACvD,6BAAwB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,GAAA,CAAC;YACjF,mBAAc,GAAG,UAAC,OAAwB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,GAAA,CAAC;YAC9F,kBAAa,GAAG,UAAC,OAAuB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,GAAA,CAAC;YAC3F,uBAAkB,GAAG,UAAC,OAAgC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAG9G,mBAAc,GAAG,UAAC,KAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAA,CAAC;YAC/F,qBAAgB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,GAAA,CAAC;YACjE,eAAU,GAAG,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YAClF,yBAAoB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,GAAA,CAAC;;YAGzE,oBAAe,GAAG,UAAC,KAA4B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAA,CAAC;YAClG,sBAAiB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAA,CAAC;YACnE,gBAAW,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,aAAa,CAAC,GAAA,CAAC;YACvD,gBAAW,GAAG,UAAC,OAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,GAAA,CAAC;YAC3F,mBAAc,GAAG,UAAC,OAAsC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAG5G,gBAAW,GAAG,UAAC,KAAwB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,GAAA,CAAC;YACtF,kBAAa,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAA,CAAC;YAC3D,0BAAqB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,GAAA,CAAC;YAC3E,8BAAyB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,GAAA,CAAC;YACnF,0BAAqB,GAAG,UAAC,OAAoC,IAC3D,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,GAAA,CAAC;YACxD,8BAAyB,GAAG,UAAC,OAAe,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,OAAO,CAAC,GAAA,CAAC;YAC3G,0CAAqC,GAAG,UAAC,OAAwC,IAC/E,OAAA,KAAI,CAAC,cAAc,CAAC,uCAAuC,EAAE,OAAO,CAAC,GAAA,CAAC;YACxE,sBAAiB,GAAG,UAAC,OAAsB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAA,CAAC;YAClG,gCAA2B,GAAG,UAAC,OAA2C,IACxE,OAAA,KAAI,CAAC,cAAc,CAAC,6BAA6B,EAAE,OAAO,CAAC,GAAA,CAAC;YAC9D,oBAAe,GAAG,UAAC,OAA+B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvG,oBAAe,GAAG,UAAC,OAA+B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvG,kBAAa,GAAG,UAAC,OAAuB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,GAAA,CAAC;;YAG3F,gBAAW,GAAG,UAAC,KAAwB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,GAAA,CAAC;YACtF,kBAAa,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAA,CAAC;YAC3D,cAAS,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAA,CAAC;YACnD,cAAS,GAAG,UAAC,OAAqD,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAA,CAAC;YACjH,wBAAmB,GAAG,UAAC,OAAwD,IAC7E,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAA,CAAC;YACtD,eAAU,GAAG,UAAC,OAAkC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGhG,kBAAa,GAAG,UAAC,OAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,GAAA,CAAC;YAC/F,iBAAY,GAAG,UAAC,OAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,GAAA,CAAC;YAC7F,iBAAY,GAAG,UAAC,OAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,GAAA,CAAC;YAC7F,mBAAc,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,GAAA,CAAC;YAC7D,cAAS,GAAG,UAAC,OAA8D,IACzE,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAA,CAAC;YAC5C,cAAS,GAAG,UAAC,OAAwC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAA,CAAC;YACpG,YAAO,GAAG,UAAC,OAA0C,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,GAAA,CAAC;YAClG,eAAU,GAAG,UAAC,OAA6C,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YAC3G,eAAU,GAAG,UAAC,OAAkC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YAChG,yBAAoB,GAAG,UAAC,OAA4C,IAClE,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvD,yBAAoB,GAAG,UAAC,OAA4C,IAClE,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvD,sBAAiB,GAAG,UAAC,OAA2B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvG,uBAAkB,GAAG,UAAC,OAAa,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAA,CAAC;YAC3F,yBAAoB,GAAG,UAAC,OAA8B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,GAAA,CAAC;YAChH,0BAAqB,GAAG,UAAC,OAAa,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGjG,uBAAkB,GAAG,UAAC,OAA0B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAA,CAAC;YACxG,sBAAiB,GAAG,UAAC,OAA0B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAA,CAAC;YACtG,sBAAiB,GAAG,UAAC,KAA8B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,KAAK,CAAC,GAAA,CAAC;YACxG,wBAAmB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,GAAA,CAAC;YACvE,kBAAa,GAAG,UAAC,OAAsC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,GAAA,CAAC;YAC1G,sBAAiB,GAAG,UAAC,OAAqB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAA,CAAC;YACjG,sBAAiB,GAAG,UAAC,OAAiC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAA,CAAC;YAC7G,oBAAe,GAAG,UAAC,OAA+B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,GAAA,CAAC;YACvG,uBAAkB,GAAG,UAAC,OAAe,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAA,CAAC;YAC7F,yBAAoB,GAAG,UAAC,OAAe,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGjG,2BAAsB,GAAG,UAAC,KAAmC,IAC3D,OAAA,KAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,KAAK,CAAC,GAAA,CAAC;YACvD,iCAA4B,GAAG,UAAC,KAAiC,IAC/D,OAAA,KAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,KAAK,CAAC,GAAA,CAAC;YAC7D,iCAA4B,GAAG,UAAC,KAAiC,IAC/D,OAAA,KAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,KAAK,CAAC,GAAA,CAAC;YAC7D,8BAAyB,GAAG,UAAC,KAA8B,IACzD,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,KAAK,CAAC,GAAA,CAAC;YAC1D,kCAA6B,GAAG,UAAC,KAAkC,IACjE,OAAA,KAAI,CAAC,cAAc,CAAC,+BAA+B,EAAE,KAAK,CAAC,GAAA,CAAC;YAC9D,kCAA6B,GAAG,UAAC,KAAkC,IACjE,OAAA,KAAI,CAAC,cAAc,CAAC,+BAA+B,EAAE,KAAK,CAAC,GAAA,CAAC;YAC9D,0CAAqC,GAAG,UAAC,KAA0C,IACjF,OAAA,KAAI,CAAC,cAAc,CAAC,uCAAuC,EAAE,KAAK,CAAC,GAAA,CAAC;YACtE,6BAAwB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,GAAA,CAAC;YACjF,mCAA8B,GAAG,UAAC,KAAmC,IACnE,OAAA,KAAI,CAAC,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC,GAAA,CAAC;YAC/D,uBAAkB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAA,CAAC;YACrE,6BAAwB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,GAAA,CAAC;YACjF,6BAAwB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,GAAA,CAAC;YACjF,0BAAqB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,GAAA,CAAC;YAC3E,0BAAqB,GAAG,UAAC,OAAqC,IAC5D,OAAA,KAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,GAAA,CAAC;YACxD,8BAAyB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,GAAA,CAAC;YACnF,8BAAyB,GAAG,UAAC,OAAyC,IACpE,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,OAAO,CAAC,GAAA,CAAC;YAC5D,8BAAyB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,GAAA,CAAC;YACnF,sCAAiC,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,mCAAmC,CAAC,GAAA,CAAC;YACnG,sCAAiC,GAAG,UAAC,OAAiD,IACpF,OAAA,KAAI,CAAC,cAAc,CAAC,mCAAmC,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGpE,4BAAuB,GAAG,UAAC,KAAoC,IAC7D,OAAA,KAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,KAAK,CAAC,GAAA,CAAC;YACxD,8BAAyB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,GAAA,CAAC;YACnF,wBAAmB,GAAG,UAAC,OAA0C,IAC/D,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAA,CAAC;YACtD,wBAAmB,GAAG,UAAC,OAA2D,IAChF,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,GAAA,CAAC;;YAGtD,oBAAe,GAAG,UAAC,KAA4B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAA,CAAC;YAClG,sBAAiB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAA,CAAC;YACnE,iBAAY,GAAG,UAAC,OAAoC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,GAAA,CAAC;YACtG,gBAAW,GAAG,UAAC,OAA8C,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,GAAA,CAAC;;YAG9G,kBAAa,GAAG,UAAC,KAAiB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC,GAAA,CAAC;YACnF,oBAAe,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,GAAA,CAAC;YAC/D,4BAAuB,GAAG,UAAC,OAA4B,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAA,CAAC;YACpH,YAAO,GAAG,UAAC,OAAsC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,GAAA,CAAC;YAC9F,eAAU,GAAG,UAAC,OAAyC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YACvG,eAAU,GAAG,UAAC,OAAkC,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,GAAA,CAAC;YAChG,4BAAuB,GAAG,UAAC,OAAsD,IAC/E,OAAA,KAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAA,CAAC;YAE1D,4BAAuB,GAAG,UACxB,OAIkB,IACf,OAAA,KAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAA,CAAC;YA/P3D,IAAM,aAAa,GAAoB;gBACrC,EAAE,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,IAAI,CAAC,4BAA4B,EAAE;gBAC9E,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE;gBAC5E,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE;gBAC9D,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE;gBAChE,EAAE,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;gBAC1E,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBAC5D,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACxD,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE;gBACpD,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBAC5D,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACxD,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE;gBAChD,EAAE,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;gBAC1E,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE;gBAC1D,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE;gBACpE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE;gBACpD,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBACtD,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC5C,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBACtD,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE;aACjD,CAAC;YAEF,IAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;YACpF,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;;YAE5C,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC;gBAClD,IAAM,QAAQ,GAAG,KAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;gBACvF,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;aAChD,CAAC,CAAC;SACJ;QA/HD,sBAAI,2CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAED,sBAAI,uDAAsB;iBAA1B;gBACE,OAAO,IAAI,CAAC,4BAA4B,CAAC,YAAY,EAAE,CAAC;aACzD;;;WAAA;QAED,sBAAI,sDAAqB;iBAAzB;gBACE,OAAO,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,CAAC;aACxD;;;WAAA;QAED,sBAAI,+CAAc;iBAAlB;gBACE,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;aACjD;;;WAAA;QAED,sBAAI,gDAAe;iBAAnB;gBACE,OAAO,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,CAAC;aAClD;;;WAAA;QAED,sBAAI,qDAAoB;iBAAxB;gBACE,OAAO,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;aACvD;;;WAAA;QAED,sBAAI,4CAAW;iBAAf;gBACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;aAC9C;;;WAAA;QAED,sBAAI,0CAAS;iBAAb;gBACE,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;aAC5C;;;WAAA;QAED,sBAAI,8CAAa;iBAAjB;gBACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;aAChD;;;WAAA;QAED,sBAAI,4CAAW;iBAAf;gBACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;aAC9C;;;WAAA;QAED,sBAAI,6CAAY;iBAAhB;gBACE,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;aAC1C;;;WAAA;QAED,sBAAI,qDAAoB;iBAAxB;gBACE,OAAO,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;aACvD;;;WAAA;QAED,sBAAI,6CAAY;iBAAhB;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;aAC/C;;;WAAA;QAED,sBAAI,kDAAiB;iBAArB;gBACE,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,CAAC;aACpD;;;WAAA;QAED,sBAAI,0CAAS;iBAAb;gBACE,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;aAC5C;;;WAAA;QAED,sBAAI,2CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAED,sBAAI,8CAAa;iBAAjB;gBACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;aAChD;;;WAAA;QAED,sBAAI,sCAAK;iBAAT;gBACE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;aACxC;;;WAAA;QAED,sBAAI,qCAAI;iBAAR;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aACvE;;;WAAA;QAGD,sBAAI,iDAAgB;iBAApB;gBACE,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,CAAC;aACnD;;;WAAA;QAED,sBAAI,gDAAe;iBAAnB;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC;aAClF;;;WAAA;QAED,sBAAI,2CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAED,sBAAI,2CAAU;iBAAd;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;aAC7C;;;WAAA;QAED,sBAAI,wCAAO;iBAAX;gBACE,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;aAC1C;;;WAAA;QAkCO,yCAAW,GAAX,UAAY,SAAoB,EAAE,aAA8B;;YAEtE,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvC;;gBACD,KAA2B,IAAA,kBAAA,SAAA,aAAa,CAAA,4CAAA,uEAAE;oBAArC,IAAM,YAAY,0BAAA;oBACrB,IAAI,CAACQ,iCAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE;wBAC7E,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;qBAC1D;iBACF;;;;;;;;;YACD,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,KAAK,SAAS,CAAC,eAAe,EAAE;gBACnE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;aAC7D;YACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,KAAK,SAAS,CAAC,SAAS,EAAE;gBACvD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;aACjD;SACF;QAEO,4CAAc,GAAd,UAAe,IAAY,EAAE,OAAa;YAChD,IAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;;YAExD,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAKC,wBAAa,SAAI,IAAM,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC;SAC/D;QAGM,wDAA0B,GAA1B;YACL,IAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC;YAChD,IAAM,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,sBAAsB,CAAC;YACzF,OAAO,IAAI,CAAC,UAAU,CAAC,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,iBAAiB,CAAC,CAAC;SACrE;;;;;gBA1LFX,aAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;gBAvGQ,kBAAkB;gBAsFlBM,SAAM;;;;QCzEX,oCACU,WAA6B,EAC7B,aAA+B,EAC/B,mBAAwC;YAFxC,gBAAW,GAAX,WAAW,CAAkB;YAC7B,kBAAa,GAAb,aAAa,CAAkB;YAC/B,wBAAmB,GAAnB,mBAAmB,CAAqB;YAL1C,WAAM,GAAa,EAAE,CAAC;SAM1B;QAEJ,sBACI,yDAAiB;iBADrB,UACsB,KAAe;gBACnC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;aACrB;;;WAAA;QAED,uDAAkB,GAAlB;YAAA,iBAQC;YAPC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,UAAC,IAAI;;gBAC5C,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAA,CAAC,EAAE;oBAChE,KAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC;iBACzD;qBAAM;oBACL,KAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;iBAC5B;aACF,CAAC,CAAC;SACJ;;;;gBAzBFM,YAAS,SAAC;oBACT,QAAQ,EAAE,qBAAqB;iBAChC;;;gBAPCC,cAAW;gBACXC,mBAAgB;gBAET,mBAAmB;;;oCAczBC,QAAK;;;;QCaR,qCAAoB,kBAAsC;YAA1D,iBAmBC;YAnBmB,uBAAkB,GAAlB,kBAAkB,CAAoB;YAjBlD,6BAAwB,GAAG,IAAIb,oBAAe,CAAoB,EAAuB,CAAC,CAAC;YAE3F,yBAAoB,GAAG,IAAIA,oBAAe,CAAsB;gBACtE,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YAqCI,qBAAgB,GAAG,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,uCAAuC,CAAC,GAAA,CAAC;YAEtF,iBAAY,GAAG,UAAC,IAAY;gBACjC,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;oBAC7B,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,IAAI;iBACZ,CAAC,CAAC;gBACH,KAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC;oBACzC,IAAI,MAAA;oBACJ,SAAS,EAAE;wBACT,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;4BAC7B,OAAO,EAAE,KAAK;4BACd,IAAI,EAAE,KAAK;4BACX,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE,IAAI;yBACZ,CAAC,CAAC;qBACJ;oBACD,OAAO,EAAE,UAAC,KAAK;wBACb,IAAM,aAAa,GAAG,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;wBACtD,KAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,aAAa,KAChB,KAAK,OAAA,IACL,CAAC;qBACJ;oBACD,OAAO,EAAE;wBACP,IAAM,aAAa,GAAG,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;wBACtD,KAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,aAAa,KAChB,IAAI,EAAE,KAAK,IACX,CAAC;qBACJ;iBACF,CAAC,CAAC;aACJ,CAAC;YAEK,iBAAY,GAAG;gBACpB,KAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;aAC9C,CAAC;;YA/DA,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,UAAC,iBAAqC;gBAC1F,IAAI,iBAAiB,IAAI,IAAI,EAAE;oBACV,IAAA,YAAY,GAAgC,iBAAiB,qBAAjD,EAAc,aAAa,GAAK,iBAAiB,SAAtB,CAAuB;oBAEjF,IAAI,CAACQ,iCAAa,CAAC,KAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,EAAE;wBAC1E,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;qBAClD;oBAED,IAAM,oBAAoB,GAAG,KAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;oBAClE,IAAI,oBAAoB,CAAC,OAAO,KAAK,aAAa,CAAC,OAAO,EAAE;wBAC1D,KAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,oBAAoB,KACvB,OAAO,EAAE,aAAa,CAAC,OAAO,IAC9B,CAAC;qBACJ;iBACF;aACF,CAAC,CAAC;SACJ;QA3BD,sBAAI,2DAAkB;iBAAtB;gBACE,OAAO,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;aACrD;;;WAAA;QAED,sBAAI,uDAAc;iBAAlB;gBACE,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;aACjD;;;WAAA;QAuBO,oDAAc,GAAd,UAAe,IAAY,EAAE,OAAa;YAChD,IAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;;YAExD,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAKM,iCAAsB,SAAI,IAAM,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC;SACxE;;;;;gBA9CFhB,aAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;gBAbQ,kBAAkB;;;;QCe3B;;QACS,yBAAO,GAAd,UAAe,MAA0B;YACvC,OAAO;gBACL,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE;oBACT,kBAAkB;oBAClB,iBAAiB;oBACjB,iBAAiB;oBACjB,mBAAmB;oBACnB,2BAA2B;oBAC3B;wBACE,OAAO,EAAE,uBAAuB;wBAChC,QAAQ,EAAE,MAAM;qBACjB;iBACF;aACF,CAAC;SACH;;;;gBArBFiB,WAAQ,SAAC;oBACR,OAAO,EAAE,CAACC,mBAAY,EAAEC,eAAY,CAAC;oBACrC,YAAY,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;oBAC7D,OAAO,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;iBACzD;;;IChBD;;;;ICAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"frontegg-angular.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/frontegg-app/src/lib/guards/frontegg-load.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg.component.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.service.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-base-guard.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-auth.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg-auth.service.ts","../../../../projects/frontegg-app/src/lib/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-subscription.services.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts","../../../../projects/frontegg-app/src/public-api.ts","../../../../projects/frontegg-app/src/frontegg-angular.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggAppService } from '../frontegg-app.service';\n\n@Injectable()\nexport class FronteggLoadGuard implements CanActivate {\n constructor(protected fronteggAppService: FronteggAppService) {\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n return new Observable<boolean>(obs => {\n this.fronteggAppService.isLoading$.subscribe(loading => {\n if (!loading) {\n obs.next(true);\n }\n });\n });\n }\n}\n","import { Component } from '@angular/core';\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'frontegg',\n template: ``,\n})\nexport class FronteggComponent {\n}\n","import { Inject, Injectable, NgZone } from '@angular/core';\nimport { Route, Router } from '@angular/router';\nimport { FronteggApp, initialize } from '@frontegg/js';\nimport { AuthPageRoutes, FronteggState } from '@frontegg/redux-store';\nimport { FronteggAppOptions, FronteggCheckoutDialogOptions } from '@frontegg/types';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { ContextHolder, RedirectOptions } from '@frontegg/rest-api';\nimport { FronteggComponent } from './frontegg.component';\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://sub-domain.frontegg.com',\n };\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAppService {\n fronteggApp: FronteggApp;\n\n private isLoadingSubject = new BehaviorSubject<boolean>(true);\n private isAuthenticatedSubject = new BehaviorSubject<boolean>(false);\n private stateSubject = new BehaviorSubject<FronteggState>({} as FronteggState);\n private authStateSubject = new BehaviorSubject<FronteggState['auth']>({\n isLoading: true,\n isAuthenticated: false,\n } as FronteggState['auth']);\n private auditsStateSubject = new BehaviorSubject<FronteggState['audits']>({} as FronteggState['audits']);\n private connectivityStateSubject = new BehaviorSubject<FronteggState['connectivity']>({} as FronteggState['connectivity']);\n private subscriptionsStateSubject = new BehaviorSubject<FronteggState['subscriptions']>({} as FronteggState['subscriptions']);\n private vendorStateSubject = new BehaviorSubject<FronteggState['vendor']>({} as FronteggState['vendor']);\n\n\n get state$(): Observable<FronteggState> {\n return this.stateSubject.asObservable();\n }\n\n get authState$(): Observable<FronteggState['auth']> {\n return this.authStateSubject.asObservable();\n }\n\n get auditsState$(): Observable<FronteggState['audits']> {\n return this.auditsStateSubject.asObservable();\n }\n\n get connectivityState$(): Observable<FronteggState['connectivity']> {\n return this.connectivityStateSubject.asObservable();\n }\n\n get subscriptionsState$(): Observable<FronteggState['subscriptions']> {\n return this.subscriptionsStateSubject.asObservable();\n }\n\n get vendorState$(): Observable<FronteggState['vendor']> {\n return this.vendorStateSubject.asObservable();\n }\n\n get isLoading$(): Observable<boolean> {\n return this.isLoadingSubject.asObservable();\n };\n\n\n get isAuthenticated$(): Observable<boolean> {\n return this.isAuthenticatedSubject.asObservable();\n };\n\n constructor(@Inject(FronteggAppOptionsClass) private config: FronteggAppOptions, public router: Router, private ngZone: NgZone) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\n\n if ((window as any).CYPRESS_CONFIG) {\n this.config = (window as any).CYPRESS_CONFIG;\n }\n const onRedirectTo = (to: string, opts?: RedirectOptions) => {\n const baseName = window.location.origin;\n let path = to;\n if (path.startsWith(baseName) && baseName !== '/') {\n path = path.substring(baseName.length - 1);\n }\n\n if (opts?.refresh) {\n window.location.href = path;\n } else {\n this.ngZone.run(() => {\n if (opts?.replace) {\n this.router.navigateByUrl(path, { replaceUrl: true });\n } else {\n this.router.navigateByUrl(path);\n }\n });\n }\n };\n ContextHolder.setOnRedirectTo(onRedirectTo);\n this.fronteggApp = initialize({\n onRedirectTo,\n ...this.config,\n });\n\n\n // Add all login box routes to Angular router config\n this.router.resetConfig([\n ...this.mapAuthComponents,\n {\n path: '',\n canActivate: [ FronteggLoadGuard ],\n children: [ ...this.router.config ],\n },\n ]);\n const initialFronteggState = this.fronteggApp.store.getState() as FronteggState;\n this.updateState(initialFronteggState);\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n this.updateState(this.fronteggApp.store.getState() as FronteggState);\n });\n }\n\n private updateState(fronteggStore: FronteggState): void {\n if (this.isLoadingSubject.getValue() !== fronteggStore.auth.isLoading) {\n this.isLoadingSubject.next(fronteggStore.auth.isLoading);\n }\n if (this.isAuthenticatedSubject.getValue() !== fronteggStore.auth.isAuthenticated) {\n this.isAuthenticatedSubject.next(fronteggStore.auth.isAuthenticated);\n }\n\n this.stateSubject.next(fronteggStore);\n this.authStateSubject.next(fronteggStore.auth);\n this.auditsStateSubject.next(fronteggStore.audits);\n this.connectivityStateSubject.next(fronteggStore.connectivity);\n this.subscriptionsStateSubject.next(fronteggStore.subscriptions);\n this.vendorStateSubject.next(fronteggStore.vendor);\n }\n\n get mapAuthComponents(): Route[] {\n const authRoutes = this.authRoutes;\n return (Object.keys(authRoutes) as (keyof AuthPageRoutes)[])\n .filter((key: keyof AuthPageRoutes) => key !== 'authenticatedUrl' && key !== 'signUpSuccessUrl' && key != null)\n .map((key: keyof AuthPageRoutes) => ({\n path: authRoutes[key]?.substring(1),\n component: FronteggComponent,\n }));\n }\n\n get authRoutes(): AuthPageRoutes {\n return this.fronteggApp.store.getState().auth.routes;\n }\n\n // Open admin portal\n public showAdminPortal(): void {\n this.fronteggApp.showAdminPortal();\n }\n\n // Open admin portal\n public hideAdminPortal(): void {\n this.fronteggApp?.hideAdminPortal();\n }\n\n // Open checkout dialog\n public showCheckoutDialog(opts: FronteggCheckoutDialogOptions): void {\n this.fronteggApp.showCheckoutDialog(opts);\n }\n\n // Open checkout dialog\n public hideCheckoutDialog(): void {\n this.fronteggApp?.hideCheckoutDialog();\n }\n}\n","import { ActivatedRouteSnapshot, CanActivate, DefaultUrlSerializer, Router, RouterStateSnapshot, UrlSerializer, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport abstract class FronteggBaseGuard implements UrlSerializer, CanActivate {\n\n abstract canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\n : Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;\n\n parse(url: any): UrlTree {\n const dus = new DefaultUrlSerializer();\n return dus.parse(url);\n }\n\n serialize(tree: UrlTree): any {\n const dus = new DefaultUrlSerializer();\n\n return dus\n .serialize(tree)\n .replace(/%40/gi, '@')\n .replace(/%3A/gi, ':')\n .replace(/%24/gi, '$')\n .replace(/%2C/gi, ',')\n .replace(/%3B/gi, ';')\n .replace(/%2B/gi, '+')\n .replace(/%3D/gi, '=')\n .replace(/%3F/gi, '?')\n .replace(/%2F/gi, '/')\n .replace(/(https?):\\/([\\w\\d])/gi, '$1://$2');\n }\n}\n","import { Injectable, NgZone } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggBaseGuard } from './frontegg-base-guard';\nimport { FronteggAppService } from '../frontegg-app.service';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router, protected ngZone: NgZone) {\n super();\n }\n\n navigateToUrl(redirectUrl: string): void {\n this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(redirectUrl));\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n const redirectUrl = state.url;\n return new Promise<boolean>((resolve, reject) => {\n const subscription = this.fronteggAppService.isAuthenticated$.pipe(take(1)).subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n resolve(true);\n } else {\n if (NgZone.isInAngularZone()) {\n this.navigateToUrl(redirectUrl);\n } else {\n this.ngZone.run(() => {\n this.navigateToUrl(redirectUrl);\n });\n }\n reject('unauthorized');\n }\n });\n subscription.unsubscribe();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport {\n RolesState,\n TenantsState,\n AccountSettingsState,\n SaveSecurityPolicyPasswordHistoryPayload,\n SaveSecurityPolicyLockoutPayload,\n SaveSecurityPolicyMfaPayload,\n PasswordPolicyState,\n PasswordHistoryPolicyState,\n MfaPolicyState,\n CaptchaPolicyState,\n LockoutPolicyState,\n PublicPolicyState,\n GlobalPolicyState,\n SecurityPolicyState,\n AddUserApiTokenPayload,\n AddTenantApiTokenPayload,\n ApiTokenType,\n ApiTokensState,\n ApiStateIndicator,\n ISetDeleteUserDialog,\n ISetAddUserDialog,\n LoadRolesAndPermissionsPayload,\n TeamState,\n TeamStateIndicator,\n MFAState,\n SaveSSOConfigurationPayload,\n SSOState,\n ProfileState,\n SaveSSOConfigurationFilePayload,\n UpdateSSOAuthorizationRolesPayload,\n DeleteSamlGroupPayload,\n CreateSamlGroupPayload,\n SaveProfilePayload,\n SignUpState,\n ForgotPasswordState,\n AcceptInvitationState,\n AuthState,\n User,\n authStoreName,\n LoginState,\n ActivateAccountStrategyState,\n EnhancedStore,\n} from '@frontegg/redux-store';\nimport {\n ILogin,\n ILoginWithMfa,\n IPostLogin,\n IPreLogin,\n IRecoverMFAToken,\n IActivateAccount,\n ILoginViaSocialLogin,\n ISetSocialLoginError,\n IResendActivationEmail,\n IGetActivateAccountStrategy,\n IGetActivateAccountStrategyResponse,\n IAcceptInvitation,\n IForgotPassword,\n IResetPassword,\n IGetUserPasswordConfig,\n ISignUpUser,\n IChangePassword,\n IOidcPostLogin,\n IVerifyMfa,\n IDisableMfa,\n ILoadUsers,\n ITeamUser,\n IAddUser,\n IUpdateUser,\n IDeleteUser,\n IResendActivationLink,\n ISettingsResponse,\n ISwitchTenant,\n ITenantsResponse,\n IAddRole,\n IRole,\n IUpdateRole,\n IDeleteRole,\n IAttachPermissionsToRole,\n IResendInvitationLink,\n IRolePermission,\n} from '@frontegg/rest-api';\nimport type { FronteggState, ActivateAccountState, SocialLoginState } from '@frontegg/redux-store';\nimport { Observable } from 'rxjs';\nimport { Router } from '@angular/router';\n\ninterface AuthSubStates {\n field: Partial<keyof AuthState>;\n subject: BehaviorSubject<any>;\n}\n\nexport type WithCallback<T = {}, R = boolean> = T & {\n callback?: (data: R | null, error?: string) => void;\n};\n\nexport type WithSilentLoad<T> = T & {\n silentLoading?: boolean;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAuthService {\n private authStateSubject = new BehaviorSubject<AuthState>({ isAuthenticated: false, isLoading: true } as AuthState);\n private acceptInvitationStateSubject = new BehaviorSubject<AuthState['acceptInvitationState']>({} as AuthState['acceptInvitationState']);\n private accountSettingsStateSubject = new BehaviorSubject<AuthState['accountSettingsState']>({} as AuthState['accountSettingsState']);\n private activateStateSubject = new BehaviorSubject<AuthState['activateState']>({} as AuthState['activateState']);\n private apiTokensStateSubject = new BehaviorSubject<AuthState['apiTokensState']>({} as AuthState['apiTokensState']);\n private forgotPasswordStateSubject = new BehaviorSubject<AuthState['forgotPasswordState']>({} as AuthState['forgotPasswordState']);\n private loginStateSubject = new BehaviorSubject<AuthState['loginState']>({} as AuthState['loginState']);\n private mfaStateSubject = new BehaviorSubject<AuthState['mfaState']>({} as AuthState['mfaState']);\n private profileStateSubject = new BehaviorSubject<AuthState['profileState']>({} as AuthState['profileState']);\n private rolesStateSubject = new BehaviorSubject<AuthState['rolesState']>({} as AuthState['rolesState']);\n private routesSubject = new BehaviorSubject<AuthState['routes']>({} as AuthState['routes']);\n private securityPolicyStateSubject = new BehaviorSubject<AuthState['securityPolicyState']>({} as AuthState['securityPolicyState']);\n private signUpStateSubject = new BehaviorSubject<AuthState['signUpState']>({} as AuthState['signUpState']);\n private socialLoginStateSubject = new BehaviorSubject<AuthState['socialLoginState']>({} as AuthState['socialLoginState']);\n private ssoStateSubject = new BehaviorSubject<AuthState['ssoState']>({} as AuthState['ssoState']);\n private teamStateSubject = new BehaviorSubject<AuthState['teamState']>({} as AuthState['teamState']);\n private tenantsStateSubject = new BehaviorSubject<AuthState['tenantsState']>({} as AuthState['tenantsState']);\n private userSubject = new BehaviorSubject<AuthState['user']>({} as AuthState['user']);\n private isAuthenticatedSubject = new BehaviorSubject<AuthState['isAuthenticated']>(false);\n private isLoadingSubject = new BehaviorSubject<AuthState['isLoading']>(true);\n private isSSOAuthSubject = new BehaviorSubject<AuthState['isSSOAuth']>(false);\n private ssoACSSubject = new BehaviorSubject<AuthState['ssoACS']>('');\n\n\n get authState$(): Observable<AuthState> {\n return this.authStateSubject.asObservable();\n }\n\n get acceptInvitationState$(): Observable<AuthState['acceptInvitationState']> {\n return this.acceptInvitationStateSubject.asObservable();\n }\n\n get accountSettingsState$(): Observable<AuthState['accountSettingsState']> {\n return this.accountSettingsStateSubject.asObservable();\n }\n\n get activateState$(): Observable<AuthState['activateState']> {\n return this.activateStateSubject.asObservable();\n }\n\n get apiTokensState$(): Observable<AuthState['apiTokensState']> {\n return this.apiTokensStateSubject.asObservable();\n }\n\n get forgotPasswordState$(): Observable<AuthState['forgotPasswordState']> {\n return this.forgotPasswordStateSubject.asObservable();\n }\n\n get loginState$(): Observable<AuthState['loginState']> {\n return this.loginStateSubject.asObservable();\n }\n\n get mfaState$(): Observable<AuthState['mfaState']> {\n return this.mfaStateSubject.asObservable();\n }\n\n get profileState$(): Observable<AuthState['profileState']> {\n return this.profileStateSubject.asObservable();\n }\n\n get rolesState$(): Observable<AuthState['rolesState']> {\n return this.rolesStateSubject.asObservable();\n }\n\n get routesState$(): Observable<AuthState['routes']> {\n return this.routesSubject.asObservable();\n }\n\n get securityPolicyState$(): Observable<AuthState['securityPolicyState']> {\n return this.securityPolicyStateSubject.asObservable();\n }\n\n get signUpState$(): Observable<AuthState['signUpState']> {\n return this.signUpStateSubject.asObservable();\n }\n\n get socialLoginState$(): Observable<AuthState['socialLoginState']> {\n return this.socialLoginStateSubject.asObservable();\n }\n\n get ssoState$(): Observable<AuthState['ssoState']> {\n return this.ssoStateSubject.asObservable();\n }\n\n get teamState$(): Observable<AuthState['teamState']> {\n return this.teamStateSubject.asObservable();\n }\n\n get tenantsState$(): Observable<AuthState['tenantsState']> {\n return this.tenantsStateSubject.asObservable();\n }\n\n get user$(): Observable<AuthState['user']> {\n return this.userSubject.asObservable();\n }\n\n get user(): AuthState['user'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.user;\n }\n\n\n get isAuthenticated$(): Observable<AuthState['isAuthenticated']> {\n return this.isAuthenticatedSubject.asObservable();\n }\n\n get isAuthenticated(): AuthState['isAuthenticated'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated;\n }\n\n get isLoading$(): Observable<AuthState['isLoading']> {\n return this.isLoadingSubject.asObservable();\n }\n\n get isSSOAuth$(): Observable<AuthState['isSSOAuth']> {\n return this.isSSOAuthSubject.asObservable();\n }\n\n get ssoACS$(): Observable<AuthState['ssoACS']> {\n return this.ssoACSSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService, private router: Router) {\n const authSubStates: AuthSubStates[] = [\n { field: 'acceptInvitationState', subject: this.acceptInvitationStateSubject },\n { field: 'accountSettingsState', subject: this.accountSettingsStateSubject },\n { field: 'activateState', subject: this.activateStateSubject },\n { field: 'apiTokensState', subject: this.apiTokensStateSubject },\n { field: 'forgotPasswordState', subject: this.forgotPasswordStateSubject },\n { field: 'tenantsState', subject: this.tenantsStateSubject },\n { field: 'loginState', subject: this.loginStateSubject },\n { field: 'mfaState', subject: this.mfaStateSubject },\n { field: 'profileState', subject: this.profileStateSubject },\n { field: 'rolesState', subject: this.rolesStateSubject },\n { field: 'routes', subject: this.routesSubject },\n { field: 'securityPolicyState', subject: this.securityPolicyStateSubject },\n { field: 'signUpState', subject: this.signUpStateSubject },\n { field: 'socialLoginState', subject: this.socialLoginStateSubject },\n { field: 'ssoState', subject: this.ssoStateSubject },\n { field: 'teamState', subject: this.teamStateSubject },\n { field: 'user', subject: this.userSubject },\n { field: 'isSSOAuth', subject: this.isSSOAuthSubject },\n { field: 'ssoACS', subject: this.ssoACSSubject },\n ];\n\n const state = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(state.auth, authSubStates);\n // Memoized Auth State\n this.fronteggAppService.fronteggApp.store.subscribe(() => {\n const newState = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(newState.auth, authSubStates);\n });\n }\n\n private updateState(authState: AuthState, authSubStates: AuthSubStates[]): void {\n\n if (this.authStateSubject.value !== authState) {\n this.authStateSubject.next(authState);\n }\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.value, authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n if (this.isAuthenticatedSubject.value !== authState.isAuthenticated) {\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n }\n if (this.isLoadingSubject.value !== authState.isLoading) {\n this.isLoadingSubject.next(authState.isLoading);\n }\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\n }\n\n\n public isHostedLoginCallbackRoute(): boolean {\n const path = this.fronteggAppService.router.url;\n const hostedLoginRedirectUrl = this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;\n return path.startsWith(hostedLoginRedirectUrl ?? '/oauth/callback');\n }\n\n\n // Root Actions\n setState = (state: Partial<AuthState>) => this.dispatchAction('setState', state);\n resetState = () => this.dispatchAction('resetState');\n setUser = (user: User) => this.dispatchAction('setUser', user);\n\n // Login Actions\n setLoginState = (state: Partial<LoginState>) => this.dispatchAction('setLoginState', state);\n resetLoginState = () => this.dispatchAction('resetLoginState');\n requestAuthorize = (firstTime?: boolean) => this.dispatchAction('requestAuthorize', firstTime);\n loginWithRedirect = () => {\n if (this.isHostedLoginCallbackRoute()) {\n return;\n }\n this.dispatchAction('requestHostedLoginAuthorize');\n this.setState({ isLoading: true });\n };\n preLogin = (payload: IPreLogin) => this.dispatchAction('preLogin', payload);\n postLogin = (payload: IPostLogin) => this.dispatchAction('postLogin', payload);\n login = (payload: ILogin) => this.dispatchAction('login', payload);\n loginWithMfa = (payload: WithCallback<ILoginWithMfa>) => this.dispatchAction('loginWithMfa', payload);\n recoverMfa = (payload: IRecoverMFAToken) => this.dispatchAction('recoverMfa', payload);\n logout = (callback?: () => void) => this.dispatchAction('logout', callback);\n silentLogout = (callback?: () => void) => this.dispatchAction('silentLogout', callback);\n checkIfAllowToRememberMfaDevice = (payload: { mfaToken: string }) =>\n this.dispatchAction('checkIfAllowToRememberMfaDevice', payload);\n\n // Social Logins Actions\n setSocialLoginsState = (state: Partial<SocialLoginState>) => this.dispatchAction('setSocialLoginsState', state);\n resetSocialLoginsState = () => this.dispatchAction('resetSocialLoginsState');\n loadSocialLoginsConfiguration = () => this.dispatchAction('loadSocialLoginsConfiguration');\n loginViaSocialLogin = (payload: ILoginViaSocialLogin) => this.dispatchAction('loginViaSocialLogin', payload);\n setSocialLoginError = (payload: ISetSocialLoginError) => this.dispatchAction('setSocialLoginError', payload);\n\n // Activate Account Actions\n setActivateState = (state: Partial<ActivateAccountState>) => this.dispatchAction('setActivateState', state);\n resetActivateState = () => this.dispatchAction('resetActivateState');\n setActivateStrategyState = (state: Partial<ActivateAccountStrategyState>) =>\n this.dispatchAction('setActivateStrategyState', state);\n activateAccount = (payload: IActivateAccount) => this.dispatchAction('activateAccount', payload);\n resendActivationEmail = (payload: IResendActivationEmail) => this.dispatchAction('resendActivationEmail', payload);\n getActivateAccountStrategy = (\n payload: WithCallback<IGetActivateAccountStrategy, IGetActivateAccountStrategyResponse>,\n ) => this.dispatchAction('getActivateAccountStrategy', payload);\n\n // Accept Invitation Actions\n setAcceptInvitationState = (state: Partial<AcceptInvitationState>) =>\n this.dispatchAction('setAcceptInvitationState', state);\n resetAcceptInvitationState = () => this.dispatchAction('resetAcceptInvitationState');\n acceptInvitation = (payload: IAcceptInvitation) => this.dispatchAction('acceptInvitation', payload);\n\n // Forgot Password Actions\n setForgotPasswordState = (state: Partial<ForgotPasswordState>) =>\n this.dispatchAction('setForgotPasswordState', state);\n resetForgotPasswordState = () => this.dispatchAction('resetForgotPasswordState');\n forgotPassword = (payload: IForgotPassword) => this.dispatchAction('forgotPassword', payload);\n resetPassword = (payload: IResetPassword) => this.dispatchAction('resetPassword', payload);\n loadPasswordConfig = (payload?: IGetUserPasswordConfig) => this.dispatchAction('loadPasswordConfig', payload);\n\n // Sign Up Actions\n setSignUpState = (state: Partial<SignUpState>) => this.dispatchAction('setSignUpState', state);\n resetSignUpState = () => this.dispatchAction('resetSignUpState');\n signUpUser = (payload: ISignUpUser) => this.dispatchAction('signUpUser', payload);\n resetSignUpStateSoft = () => this.dispatchAction('resetSignUpStateSoft');\n\n // Profile Actions\n setProfileState = (state: Partial<ProfileState>) => this.dispatchAction('setProfileState', state);\n resetProfileState = () => this.dispatchAction('resetProfileState');\n loadProfile = () => this.dispatchAction('loadProfile');\n saveProfile = (payload: SaveProfilePayload) => this.dispatchAction('saveProfile', payload);\n changePassword = (payload: WithCallback<IChangePassword>) => this.dispatchAction('changePassword', payload);\n\n // SSO actions\n setSSOState = (state: Partial<SSOState>) => this.dispatchAction('setSSOState', state);\n resetSSOState = () => this.dispatchAction('resetSSOState');\n loadSSOConfigurations = () => this.dispatchAction('loadSSOConfigurations');\n loadSSOAuthorizationRoles = () => this.dispatchAction('loadSSOAuthorizationRoles');\n saveSSOConfigurations = (payload: SaveSSOConfigurationPayload) =>\n this.dispatchAction('saveSSOConfigurations', payload);\n saveSSOConfigurationsFile = (payload: File[]) => this.dispatchAction('saveSSOConfigurationsFile', payload);\n saveSSOConfigurationsFileWithCallback = (payload: SaveSSOConfigurationFilePayload) =>\n this.dispatchAction('saveSSOConfigurationsFileWithCallback', payload);\n validateSSODomain = (payload?: WithCallback) => this.dispatchAction('validateSSODomain', payload);\n updateSSOAuthorizationRoles = (payload: UpdateSSOAuthorizationRolesPayload) =>\n this.dispatchAction('updateSSOAuthorizationRoles', payload);\n deleteSamlGroup = (payload: DeleteSamlGroupPayload) => this.dispatchAction('deleteSamlGroup', payload);\n createSamlGroup = (payload: CreateSamlGroupPayload) => this.dispatchAction('createSamlGroup', payload);\n oidcPostlogin = (payload: IOidcPostLogin) => this.dispatchAction('oidcPostlogin', payload);\n\n // Mfa actions\n setMfaState = (state: Partial<MFAState>) => this.dispatchAction('setMfaState', state);\n resetMfaState = () => this.dispatchAction('resetMfaState');\n enrollMfa = () => this.dispatchAction('enrollMfa');\n verifyMfa = (payload: WithCallback<IVerifyMfa, string | undefined>) => this.dispatchAction('verifyMfa', payload);\n verifyMfaAfterForce = (payload: WithCallback<ILoginWithMfa, string | undefined>) =>\n this.dispatchAction('verifyMfaAfterForce', payload);\n disableMfa = (payload: WithCallback<IDisableMfa>) => this.dispatchAction('disableMfa', payload);\n\n // Team actions\n setTeamLoader = (payload: TeamStateIndicator) => this.dispatchAction('setTeamLoader', payload);\n setTeamError = (payload: TeamStateIndicator) => this.dispatchAction('setTeamError', payload);\n setTeamState = (payload: Partial<TeamState>) => this.dispatchAction('setTeamState', payload);\n resetTeamState = () => this.dispatchAction('resetTeamState');\n loadUsers = (payload: WithCallback<WithSilentLoad<ILoadUsers>, ITeamUser[]>) =>\n this.dispatchAction('loadUsers', payload);\n loadRoles = (payload?: LoadRolesAndPermissionsPayload) => this.dispatchAction('loadRoles', payload);\n addUser = (payload: WithCallback<IAddUser, ITeamUser>) => this.dispatchAction('addUser', payload);\n updateUser = (payload: WithCallback<IUpdateUser, ITeamUser>) => this.dispatchAction('updateUser', payload);\n deleteUser = (payload: WithCallback<IDeleteUser>) => this.dispatchAction('deleteUser', payload);\n resendActivationLink = (payload: WithCallback<IResendActivationLink>) =>\n this.dispatchAction('resendActivationLink', payload);\n resendInvitationLink = (payload: WithCallback<IResendInvitationLink>) =>\n this.dispatchAction('resendInvitationLink', payload);\n openAddUserDialog = (payload?: ISetAddUserDialog) => this.dispatchAction('openAddUserDialog', payload);\n closeAddUserDialog = (payload?: any) => this.dispatchAction('closeAddUserDialog', payload);\n openDeleteUserDialog = (payload?: ISetDeleteUserDialog) => this.dispatchAction('openDeleteUserDialog', payload);\n closeDeleteUserDialog = (payload?: any) => this.dispatchAction('closeDeleteUserDialog', payload);\n\n // API Token Actions\n setApiTokensLoader = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensLoader', payload);\n setApiTokensError = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensError', payload);\n setApiTokensState = (state: Partial<ApiTokensState>) => this.dispatchAction('setApiTokensState', state);\n resetApiTokensState = () => this.dispatchAction('resetApiTokensState');\n loadApiTokens = (payload?: WithSilentLoad<WithCallback>) => this.dispatchAction('loadApiTokens', payload);\n initApiTokensData = (payload: ApiTokenType) => this.dispatchAction('initApiTokensData', payload);\n addTenantApiToken = (payload: AddTenantApiTokenPayload) => this.dispatchAction('addTenantApiToken', payload);\n addUserApiToken = (payload: AddUserApiTokenPayload) => this.dispatchAction('addUserApiToken', payload);\n deleteUserApiToken = (payload: string) => this.dispatchAction('deleteUserApiToken', payload);\n deleteTenantApiToken = (payload: string) => this.dispatchAction('deleteTenantApiToken', payload);\n\n // Security Policy Actions\n setSecurityPolicyState = (state: Partial<SecurityPolicyState>) =>\n this.dispatchAction('setSecurityPolicyState', state);\n setSecurityPolicyGlobalState = (state: Partial<GlobalPolicyState>) =>\n this.dispatchAction('setSecurityPolicyGlobalState', state);\n setSecurityPolicyPublicState = (state: Partial<PublicPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPublicState', state);\n setSecurityPolicyMfaState = (state: Partial<MfaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyMfaState', state);\n setSecurityPolicyLockoutState = (state: Partial<LockoutPolicyState>) =>\n this.dispatchAction('setSecurityPolicyLockoutState', state);\n setSecurityPolicyCaptchaState = (state: Partial<CaptchaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyCaptchaState', state);\n setSecurityPolicyPasswordHistoryState = (state: Partial<PasswordHistoryPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordHistoryState', state);\n resetSecurityPolicyState = () => this.dispatchAction('resetSecurityPolicyState');\n setSecurityPolicyPasswordState = (state: Partial<PasswordPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordState', state);\n loadSecurityPolicy = () => this.dispatchAction('loadSecurityPolicy');\n loadPublicSecurityPolicy = () => this.dispatchAction('loadPublicSecurityPolicy');\n loadVendorPasswordConfig = () => this.dispatchAction('loadVendorPasswordConfig');\n loadSecurityPolicyMfa = () => this.dispatchAction('loadSecurityPolicyMfa');\n saveSecurityPolicyMfa = (payload: SaveSecurityPolicyMfaPayload) =>\n this.dispatchAction('saveSecurityPolicyMfa', payload);\n loadSecurityPolicyLockout = () => this.dispatchAction('loadSecurityPolicyLockout');\n saveSecurityPolicyLockout = (payload: SaveSecurityPolicyLockoutPayload) =>\n this.dispatchAction('saveSecurityPolicyLockout', payload);\n loadSecurityPolicyCaptcha = () => this.dispatchAction('loadSecurityPolicyCaptcha');\n loadSecurityPolicyPasswordHistory = () => this.dispatchAction('loadSecurityPolicyPasswordHistory');\n saveSecurityPolicyPasswordHistory = (payload: SaveSecurityPolicyPasswordHistoryPayload) =>\n this.dispatchAction('saveSecurityPolicyPasswordHistory', payload);\n\n // Account Settings Actions\n setAccountSettingsState = (state: Partial<AccountSettingsState>) =>\n this.dispatchAction('setAccountSettingsState', state);\n resetAccountSettingsState = () => this.dispatchAction('resetAccountSettingsState');\n loadAccountSettings = (payload?: WithCallback<WithSilentLoad<{}>>) =>\n this.dispatchAction('loadAccountSettings', payload);\n saveAccountSettings = (payload: WithCallback<ISettingsResponse, ISettingsResponse>) =>\n this.dispatchAction('saveAccountSettings', payload);\n\n // Tenants Actions\n setTenantsState = (state: Partial<TenantsState>) => this.dispatchAction('setTenantsState', state);\n resetTenantsState = () => this.dispatchAction('resetTenantsState');\n switchTenant = (payload: WithCallback<ISwitchTenant>) => this.dispatchAction('switchTenant', payload);\n loadTenants = (payload?: WithCallback<{}, ITenantsResponse[]>) => this.dispatchAction('loadTenants', payload);\n\n // Roles Actions\n setRolesState = (state: RolesState) => this.dispatchAction('setRolesState', state);\n resetRolesState = () => this.dispatchAction('resetRolesState');\n loadRolesAndPermissions = (payload?: WithSilentLoad<{}>) => this.dispatchAction('loadRolesAndPermissions', payload);\n addRole = (payload: WithCallback<IAddRole, IRole>) => this.dispatchAction('addRole', payload);\n updateRole = (payload: WithCallback<IUpdateRole, IRole>) => this.dispatchAction('updateRole', payload);\n deleteRole = (payload: WithCallback<IDeleteRole>) => this.dispatchAction('deleteRole', payload);\n attachPermissionsToRole = (payload: WithCallback<IAttachPermissionsToRole, IRole>) =>\n this.dispatchAction('attachPermissionsToRole', payload);\n\n attachPermissionToRoles = (\n payload: WithCallback<{\n permissionId: string;\n roleIds: string[];\n },\n IRolePermission>,\n ) => this.dispatchAction('attachPermissionToRoles', payload);\n}\n","import {\n AfterContentInit,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n } from '@angular/core';\n import { FronteggAuthService } from '../frontegg-auth.service';\n \n @Directive({\n selector: '[authorizedContent]',\n })\n export class AuthorizedContentDirective implements AfterContentInit {\n private _roles: string[] = [];\n \n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef,\n private fronteggAuthService: FronteggAuthService\n ) {}\n \n @Input()\n set authorizedContent(roles: string[]) {\n this._roles = roles;\n }\n \n ngAfterContentInit() {\n this.fronteggAuthService.user$.subscribe((user) => {\n if (user?.roles?.some((role) => this._roles.includes(role.name))) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n } else {\n this.viewContainer.clear();\n }\n });\n }\n }\n ","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport { EnhancedStore, SubscriptionsState, subscriptionsStoreName, SubscriptionState } from '@frontegg/redux-store';\n\nexport interface CheckoutDialogState {\n loading: boolean;\n open: boolean;\n success: boolean;\n error: string | null;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggSubscriptionService {\n private subscriptionStateSubject = new BehaviorSubject<SubscriptionState>({} as SubscriptionState);\n\n private checkoutStateSubject = new BehaviorSubject<CheckoutDialogState>({\n loading: false,\n open: false,\n success: false,\n error: null,\n });\n\n get subscriptionState$(): Observable<SubscriptionState> {\n return this.subscriptionStateSubject.asObservable();\n }\n\n get checkoutState$(): Observable<CheckoutDialogState> {\n return this.checkoutStateSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService) {\n // Memoized Subscription State\n this.fronteggAppService.subscriptionsState$.subscribe((subscriptionState: SubscriptionsState) => {\n if (subscriptionState != null) {\n const { billing: { subscription }, checkout: checkoutState } = subscriptionState;\n\n if (!FastDeepEqual(this.subscriptionStateSubject.getValue(), subscription)) {\n this.subscriptionStateSubject.next(subscription);\n }\n\n const checkoutSubjectState = this.checkoutStateSubject.getValue();\n if (checkoutSubjectState.loading !== checkoutState.loading) {\n this.checkoutStateSubject.next({\n ...checkoutSubjectState,\n loading: checkoutState.loading,\n });\n }\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${subscriptionsStoreName}/${type}`, payload });\n }\n\n public loadSubscription = () => this.dispatchAction('billing/subscription/loadSubscription');\n\n public openCheckout = (plan: string): void => {\n this.checkoutStateSubject.next({\n loading: false,\n open: true,\n success: false,\n error: null,\n });\n this.fronteggAppService.showCheckoutDialog({\n plan,\n onSuccess: () => {\n this.checkoutStateSubject.next({\n loading: false,\n open: false,\n success: true,\n error: null,\n });\n },\n onError: (error) => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n error,\n });\n },\n onClose: () => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n open: false,\n });\n },\n });\n };\n\n public hideCheckout = (): void => {\n this.fronteggAppService.hideCheckoutDialog();\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { FronteggAppOptionsClass, FronteggAppService } from './frontegg-app.service';\nimport { FronteggComponent } from './frontegg.component';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { FronteggAuthGuard } from './guards/frontegg-auth.guard';\nimport { FronteggAuthService } from './frontegg-auth.service';\nimport { AuthorizedContentDirective } from './directives/authorized-content.directive';\nimport { FronteggSubscriptionService } from './frontegg-subscription.services';\n\n@NgModule({\n imports: [CommonModule, RouterModule],\n declarations: [FronteggComponent, AuthorizedContentDirective],\n exports: [FronteggComponent, AuthorizedContentDirective],\n})\nexport class FronteggAppModule {\n static forRoot(config: FronteggAppOptions): ModuleWithProviders<FronteggAppModule> {\n return {\n ngModule: FronteggAppModule,\n providers: [\n FronteggAppService,\n FronteggAuthGuard,\n FronteggLoadGuard,\n FronteggAuthService,\n FronteggSubscriptionService,\n {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\n * Public API Surface of frontegg-app\n */\n\nexport { FronteggAppModule } from './lib/frontegg-app.module';\nexport { FronteggAppService } from './lib/frontegg-app.service';\nexport { FronteggComponent } from './lib/frontegg.component';\nexport { FronteggAuthService } from './lib/frontegg-auth.service';\nexport { FronteggSubscriptionService } from './lib/frontegg-subscription.services';\nexport * from './lib/directives/authorized-content.directive';\nexport * from './lib/guards/frontegg-auth.guard';\nexport * from './lib/guards/frontegg-load.guard';\nexport { ContextHolder } from '@frontegg/rest-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {FronteggAppOptionsClass as ɵa} from './lib/frontegg-app.service';\nexport {FronteggBaseGuard as ɵb} from './lib/guards/frontegg-base-guard';"],"names":["Observable","Injectable","Component","BehaviorSubject","ContextHolder","initialize","Inject","Router","NgZone","DefaultUrlSerializer","take","FastDeepEqual","authStoreName","Directive","TemplateRef","ViewContainerRef","Input","subscriptionsStoreName","NgModule","CommonModule","RouterModule"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/router"),require("@frontegg/js"),require("rxjs"),require("@frontegg/rest-api"),require("rxjs/operators"),require("fast-deep-equal"),require("@frontegg/redux-store")):"function"==typeof define&&define.amd?define("@frontegg/angular",["exports","@angular/core","@angular/common","@angular/router","@frontegg/js","rxjs","@frontegg/rest-api","rxjs/operators","fast-deep-equal","@frontegg/redux-store"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).frontegg=t.frontegg||{},t.frontegg.angular={}),t.ng.core,t.ng.common,t.ng.router,t.FronteggJS,t.rxjs,t.FronteggRestApi,t.rxjs.operators,t.FastDeepEqual,t.FronteggReduxStore)}(this,(function(t,e,i,n,o,r,c,a,s,u){"use strict";function h(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function p(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(e,i,n.get?n:{enumerable:!0,get:function(){return t[i]}})}})),e.default=t,Object.freeze(e)}var l=p(e),f=p(n),S=h(s),d=function(t,e){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)};Object.create;function b(t){var e="function"==typeof Symbol&&Symbol.iterator,i=e&&t[e],n=0;if(i)return i.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,o,r=i.call(t),c=[];try{for(;(void 0===e||e-- >0)&&!(n=r.next()).done;)c.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return c}function A(t,e){for(var i=0,n=e.length,o=t.length;i<n;i++,o++)t[o]=e[i];return t}Object.create;var y=function(){function t(t){this.fronteggAppService=t}return t.prototype.canActivate=function(t,e){var i=this;return new r.Observable((function(t){i.fronteggAppService.isLoading$.subscribe((function(e){e||t.next(!0)}))}))},t}();y.decorators=[{type:e.Injectable}],y.ctorParameters=function(){return[{type:P}]};var v=function(){};v.decorators=[{type:e.Component,args:[{selector:"frontegg",template:""}]}];var j=function(){this.contextOptions={baseUrl:"https://sub-domain.frontegg.com"}},P=function(){function t(t,e,i){var n=this;if(this.config=t,this.router=e,this.ngZone=i,this.isLoadingSubject=new r.BehaviorSubject(!0),this.isAuthenticatedSubject=new r.BehaviorSubject(!1),this.stateSubject=new r.BehaviorSubject({}),this.authStateSubject=new r.BehaviorSubject({isLoading:!0,isAuthenticated:!1}),this.auditsStateSubject=new r.BehaviorSubject({}),this.connectivityStateSubject=new r.BehaviorSubject({}),this.subscriptionsStateSubject=new r.BehaviorSubject({}),this.vendorStateSubject=new r.BehaviorSubject({}),!this.config)throw Error("Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)");window.CYPRESS_CONFIG&&(this.config=window.CYPRESS_CONFIG);var a=function(t,e){var i=window.location.origin,o=t;o.startsWith(i)&&"/"!==i&&(o=o.substring(i.length-1)),(null==e?void 0:e.refresh)?window.location.href=o:n.ngZone.run((function(){(null==e?void 0:e.replace)?n.router.navigateByUrl(o,{replaceUrl:!0}):n.router.navigateByUrl(o)}))};c.ContextHolder.setOnRedirectTo(a),this.fronteggApp=o.initialize(Object.assign({onRedirectTo:a},this.config)),this.router.resetConfig(A(A([],g(this.mapAuthComponents)),[{path:"",canActivate:[y],children:A([],g(this.router.config))}]));var s=this.fronteggApp.store.getState();this.updateState(s),this.fronteggApp.store.subscribe((function(){n.updateState(n.fronteggApp.store.getState())}))}return Object.defineProperty(t.prototype,"state$",{get:function(){return this.stateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"authState$",{get:function(){return this.authStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"auditsState$",{get:function(){return this.auditsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"connectivityState$",{get:function(){return this.connectivityStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"subscriptionsState$",{get:function(){return this.subscriptionsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"vendorState$",{get:function(){return this.vendorStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isLoading$",{get:function(){return this.isLoadingSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated$",{get:function(){return this.isAuthenticatedSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.updateState=function(t){this.isLoadingSubject.getValue()!==t.auth.isLoading&&this.isLoadingSubject.next(t.auth.isLoading),this.isAuthenticatedSubject.getValue()!==t.auth.isAuthenticated&&this.isAuthenticatedSubject.next(t.auth.isAuthenticated),this.stateSubject.next(t),this.authStateSubject.next(t.auth),this.auditsStateSubject.next(t.audits),this.connectivityStateSubject.next(t.connectivity),this.subscriptionsStateSubject.next(t.subscriptions),this.vendorStateSubject.next(t.vendor)},Object.defineProperty(t.prototype,"mapAuthComponents",{get:function(){var t=this.authRoutes;return Object.keys(t).filter((function(t){return"authenticatedUrl"!==t&&"signUpSuccessUrl"!==t&&null!=t})).map((function(e){var i;return{path:null===(i=t[e])||void 0===i?void 0:i.substring(1),component:v}}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"authRoutes",{get:function(){return this.fronteggApp.store.getState().auth.routes},enumerable:!1,configurable:!0}),t.prototype.showAdminPortal=function(){this.fronteggApp.showAdminPortal()},t.prototype.hideAdminPortal=function(){var t;null===(t=this.fronteggApp)||void 0===t||t.hideAdminPortal()},t.prototype.showCheckoutDialog=function(t){this.fronteggApp.showCheckoutDialog(t)},t.prototype.hideCheckoutDialog=function(){var t;null===(t=this.fronteggApp)||void 0===t||t.hideCheckoutDialog()},t}();P.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new P(l.ɵɵinject(j),l.ɵɵinject(f.Router),l.ɵɵinject(l.NgZone))},token:P,providedIn:"root"}),P.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],P.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[j]}]},{type:n.Router},{type:e.NgZone}]};var m=function(){function t(){}return t.prototype.parse=function(t){return(new n.DefaultUrlSerializer).parse(t)},t.prototype.serialize=function(t){return(new n.DefaultUrlSerializer).serialize(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/").replace(/(https?):\/([\w\d])/gi,"$1://$2")},t}(),O=function(t){function i(e,i,n){var o=t.call(this)||this;return o.fronteggAppService=e,o.router=i,o.ngZone=n,o}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}d(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(i,t),i.prototype.navigateToUrl=function(t){this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl+"?redirectUrl="+encodeURIComponent(t))},i.prototype.canActivate=function(t,i){var n=this,o=i.url;return new Promise((function(t,i){n.fronteggAppService.isAuthenticated$.pipe(a.take(1)).subscribe((function(r){r?t(!0):(e.NgZone.isInAngularZone()?n.navigateToUrl(o):n.ngZone.run((function(){n.navigateToUrl(o)})),i("unauthorized"))})).unsubscribe()}))},i}(m);O.decorators=[{type:e.Injectable}],O.ctorParameters=function(){return[{type:P},{type:n.Router},{type:e.NgZone}]};var w=function(){function t(t,e){var i=this;this.fronteggAppService=t,this.router=e,this.authStateSubject=new r.BehaviorSubject({isAuthenticated:!1,isLoading:!0}),this.acceptInvitationStateSubject=new r.BehaviorSubject({}),this.accountSettingsStateSubject=new r.BehaviorSubject({}),this.activateStateSubject=new r.BehaviorSubject({}),this.apiTokensStateSubject=new r.BehaviorSubject({}),this.forgotPasswordStateSubject=new r.BehaviorSubject({}),this.loginStateSubject=new r.BehaviorSubject({}),this.mfaStateSubject=new r.BehaviorSubject({}),this.profileStateSubject=new r.BehaviorSubject({}),this.rolesStateSubject=new r.BehaviorSubject({}),this.routesSubject=new r.BehaviorSubject({}),this.securityPolicyStateSubject=new r.BehaviorSubject({}),this.signUpStateSubject=new r.BehaviorSubject({}),this.socialLoginStateSubject=new r.BehaviorSubject({}),this.ssoStateSubject=new r.BehaviorSubject({}),this.teamStateSubject=new r.BehaviorSubject({}),this.tenantsStateSubject=new r.BehaviorSubject({}),this.userSubject=new r.BehaviorSubject({}),this.isAuthenticatedSubject=new r.BehaviorSubject(!1),this.isLoadingSubject=new r.BehaviorSubject(!0),this.isSSOAuthSubject=new r.BehaviorSubject(!1),this.ssoACSSubject=new r.BehaviorSubject(""),this.setState=function(t){return i.dispatchAction("setState",t)},this.resetState=function(){return i.dispatchAction("resetState")},this.setUser=function(t){return i.dispatchAction("setUser",t)},this.setLoginState=function(t){return i.dispatchAction("setLoginState",t)},this.resetLoginState=function(){return i.dispatchAction("resetLoginState")},this.requestAuthorize=function(t){return i.dispatchAction("requestAuthorize",t)},this.loginWithRedirect=function(){i.isHostedLoginCallbackRoute()||(i.dispatchAction("requestHostedLoginAuthorize"),i.setState({isLoading:!0}))},this.preLogin=function(t){return i.dispatchAction("preLogin",t)},this.postLogin=function(t){return i.dispatchAction("postLogin",t)},this.login=function(t){return i.dispatchAction("login",t)},this.loginWithMfa=function(t){return i.dispatchAction("loginWithMfa",t)},this.recoverMfa=function(t){return i.dispatchAction("recoverMfa",t)},this.logout=function(t){return i.dispatchAction("logout",t)},this.silentLogout=function(t){return i.dispatchAction("silentLogout",t)},this.checkIfAllowToRememberMfaDevice=function(t){return i.dispatchAction("checkIfAllowToRememberMfaDevice",t)},this.setSocialLoginsState=function(t){return i.dispatchAction("setSocialLoginsState",t)},this.resetSocialLoginsState=function(){return i.dispatchAction("resetSocialLoginsState")},this.loadSocialLoginsConfiguration=function(){return i.dispatchAction("loadSocialLoginsConfiguration")},this.loginViaSocialLogin=function(t){return i.dispatchAction("loginViaSocialLogin",t)},this.setSocialLoginError=function(t){return i.dispatchAction("setSocialLoginError",t)},this.setActivateState=function(t){return i.dispatchAction("setActivateState",t)},this.resetActivateState=function(){return i.dispatchAction("resetActivateState")},this.setActivateStrategyState=function(t){return i.dispatchAction("setActivateStrategyState",t)},this.activateAccount=function(t){return i.dispatchAction("activateAccount",t)},this.resendActivationEmail=function(t){return i.dispatchAction("resendActivationEmail",t)},this.getActivateAccountStrategy=function(t){return i.dispatchAction("getActivateAccountStrategy",t)},this.setAcceptInvitationState=function(t){return i.dispatchAction("setAcceptInvitationState",t)},this.resetAcceptInvitationState=function(){return i.dispatchAction("resetAcceptInvitationState")},this.acceptInvitation=function(t){return i.dispatchAction("acceptInvitation",t)},this.setForgotPasswordState=function(t){return i.dispatchAction("setForgotPasswordState",t)},this.resetForgotPasswordState=function(){return i.dispatchAction("resetForgotPasswordState")},this.forgotPassword=function(t){return i.dispatchAction("forgotPassword",t)},this.resetPassword=function(t){return i.dispatchAction("resetPassword",t)},this.loadPasswordConfig=function(t){return i.dispatchAction("loadPasswordConfig",t)},this.setSignUpState=function(t){return i.dispatchAction("setSignUpState",t)},this.resetSignUpState=function(){return i.dispatchAction("resetSignUpState")},this.signUpUser=function(t){return i.dispatchAction("signUpUser",t)},this.resetSignUpStateSoft=function(){return i.dispatchAction("resetSignUpStateSoft")},this.setProfileState=function(t){return i.dispatchAction("setProfileState",t)},this.resetProfileState=function(){return i.dispatchAction("resetProfileState")},this.loadProfile=function(){return i.dispatchAction("loadProfile")},this.saveProfile=function(t){return i.dispatchAction("saveProfile",t)},this.changePassword=function(t){return i.dispatchAction("changePassword",t)},this.setSSOState=function(t){return i.dispatchAction("setSSOState",t)},this.resetSSOState=function(){return i.dispatchAction("resetSSOState")},this.loadSSOConfigurations=function(){return i.dispatchAction("loadSSOConfigurations")},this.loadSSOAuthorizationRoles=function(){return i.dispatchAction("loadSSOAuthorizationRoles")},this.saveSSOConfigurations=function(t){return i.dispatchAction("saveSSOConfigurations",t)},this.saveSSOConfigurationsFile=function(t){return i.dispatchAction("saveSSOConfigurationsFile",t)},this.saveSSOConfigurationsFileWithCallback=function(t){return i.dispatchAction("saveSSOConfigurationsFileWithCallback",t)},this.validateSSODomain=function(t){return i.dispatchAction("validateSSODomain",t)},this.updateSSOAuthorizationRoles=function(t){return i.dispatchAction("updateSSOAuthorizationRoles",t)},this.deleteSamlGroup=function(t){return i.dispatchAction("deleteSamlGroup",t)},this.createSamlGroup=function(t){return i.dispatchAction("createSamlGroup",t)},this.oidcPostlogin=function(t){return i.dispatchAction("oidcPostlogin",t)},this.setMfaState=function(t){return i.dispatchAction("setMfaState",t)},this.resetMfaState=function(){return i.dispatchAction("resetMfaState")},this.enrollMfa=function(){return i.dispatchAction("enrollMfa")},this.verifyMfa=function(t){return i.dispatchAction("verifyMfa",t)},this.verifyMfaAfterForce=function(t){return i.dispatchAction("verifyMfaAfterForce",t)},this.disableMfa=function(t){return i.dispatchAction("disableMfa",t)},this.setTeamLoader=function(t){return i.dispatchAction("setTeamLoader",t)},this.setTeamError=function(t){return i.dispatchAction("setTeamError",t)},this.setTeamState=function(t){return i.dispatchAction("setTeamState",t)},this.resetTeamState=function(){return i.dispatchAction("resetTeamState")},this.loadUsers=function(t){return i.dispatchAction("loadUsers",t)},this.loadRoles=function(t){return i.dispatchAction("loadRoles",t)},this.addUser=function(t){return i.dispatchAction("addUser",t)},this.updateUser=function(t){return i.dispatchAction("updateUser",t)},this.deleteUser=function(t){return i.dispatchAction("deleteUser",t)},this.resendActivationLink=function(t){return i.dispatchAction("resendActivationLink",t)},this.resendInvitationLink=function(t){return i.dispatchAction("resendInvitationLink",t)},this.openAddUserDialog=function(t){return i.dispatchAction("openAddUserDialog",t)},this.closeAddUserDialog=function(t){return i.dispatchAction("closeAddUserDialog",t)},this.openDeleteUserDialog=function(t){return i.dispatchAction("openDeleteUserDialog",t)},this.closeDeleteUserDialog=function(t){return i.dispatchAction("closeDeleteUserDialog",t)},this.setApiTokensLoader=function(t){return i.dispatchAction("setApiTokensLoader",t)},this.setApiTokensError=function(t){return i.dispatchAction("setApiTokensError",t)},this.setApiTokensState=function(t){return i.dispatchAction("setApiTokensState",t)},this.resetApiTokensState=function(){return i.dispatchAction("resetApiTokensState")},this.loadApiTokens=function(t){return i.dispatchAction("loadApiTokens",t)},this.initApiTokensData=function(t){return i.dispatchAction("initApiTokensData",t)},this.addTenantApiToken=function(t){return i.dispatchAction("addTenantApiToken",t)},this.addUserApiToken=function(t){return i.dispatchAction("addUserApiToken",t)},this.deleteUserApiToken=function(t){return i.dispatchAction("deleteUserApiToken",t)},this.deleteTenantApiToken=function(t){return i.dispatchAction("deleteTenantApiToken",t)},this.setSecurityPolicyState=function(t){return i.dispatchAction("setSecurityPolicyState",t)},this.setSecurityPolicyGlobalState=function(t){return i.dispatchAction("setSecurityPolicyGlobalState",t)},this.setSecurityPolicyPublicState=function(t){return i.dispatchAction("setSecurityPolicyPublicState",t)},this.setSecurityPolicyMfaState=function(t){return i.dispatchAction("setSecurityPolicyMfaState",t)},this.setSecurityPolicyLockoutState=function(t){return i.dispatchAction("setSecurityPolicyLockoutState",t)},this.setSecurityPolicyCaptchaState=function(t){return i.dispatchAction("setSecurityPolicyCaptchaState",t)},this.setSecurityPolicyPasswordHistoryState=function(t){return i.dispatchAction("setSecurityPolicyPasswordHistoryState",t)},this.resetSecurityPolicyState=function(){return i.dispatchAction("resetSecurityPolicyState")},this.setSecurityPolicyPasswordState=function(t){return i.dispatchAction("setSecurityPolicyPasswordState",t)},this.loadSecurityPolicy=function(){return i.dispatchAction("loadSecurityPolicy")},this.loadPublicSecurityPolicy=function(){return i.dispatchAction("loadPublicSecurityPolicy")},this.loadVendorPasswordConfig=function(){return i.dispatchAction("loadVendorPasswordConfig")},this.loadSecurityPolicyMfa=function(){return i.dispatchAction("loadSecurityPolicyMfa")},this.saveSecurityPolicyMfa=function(t){return i.dispatchAction("saveSecurityPolicyMfa",t)},this.loadSecurityPolicyLockout=function(){return i.dispatchAction("loadSecurityPolicyLockout")},this.saveSecurityPolicyLockout=function(t){return i.dispatchAction("saveSecurityPolicyLockout",t)},this.loadSecurityPolicyCaptcha=function(){return i.dispatchAction("loadSecurityPolicyCaptcha")},this.loadSecurityPolicyPasswordHistory=function(){return i.dispatchAction("loadSecurityPolicyPasswordHistory")},this.saveSecurityPolicyPasswordHistory=function(t){return i.dispatchAction("saveSecurityPolicyPasswordHistory",t)},this.setAccountSettingsState=function(t){return i.dispatchAction("setAccountSettingsState",t)},this.resetAccountSettingsState=function(){return i.dispatchAction("resetAccountSettingsState")},this.loadAccountSettings=function(t){return i.dispatchAction("loadAccountSettings",t)},this.saveAccountSettings=function(t){return i.dispatchAction("saveAccountSettings",t)},this.setTenantsState=function(t){return i.dispatchAction("setTenantsState",t)},this.resetTenantsState=function(){return i.dispatchAction("resetTenantsState")},this.switchTenant=function(t){return i.dispatchAction("switchTenant",t)},this.loadTenants=function(t){return i.dispatchAction("loadTenants",t)},this.setRolesState=function(t){return i.dispatchAction("setRolesState",t)},this.resetRolesState=function(){return i.dispatchAction("resetRolesState")},this.loadRolesAndPermissions=function(t){return i.dispatchAction("loadRolesAndPermissions",t)},this.addRole=function(t){return i.dispatchAction("addRole",t)},this.updateRole=function(t){return i.dispatchAction("updateRole",t)},this.deleteRole=function(t){return i.dispatchAction("deleteRole",t)},this.attachPermissionsToRole=function(t){return i.dispatchAction("attachPermissionsToRole",t)},this.attachPermissionToRoles=function(t){return i.dispatchAction("attachPermissionToRoles",t)};var n=[{field:"acceptInvitationState",subject:this.acceptInvitationStateSubject},{field:"accountSettingsState",subject:this.accountSettingsStateSubject},{field:"activateState",subject:this.activateStateSubject},{field:"apiTokensState",subject:this.apiTokensStateSubject},{field:"forgotPasswordState",subject:this.forgotPasswordStateSubject},{field:"tenantsState",subject:this.tenantsStateSubject},{field:"loginState",subject:this.loginStateSubject},{field:"mfaState",subject:this.mfaStateSubject},{field:"profileState",subject:this.profileStateSubject},{field:"rolesState",subject:this.rolesStateSubject},{field:"routes",subject:this.routesSubject},{field:"securityPolicyState",subject:this.securityPolicyStateSubject},{field:"signUpState",subject:this.signUpStateSubject},{field:"socialLoginState",subject:this.socialLoginStateSubject},{field:"ssoState",subject:this.ssoStateSubject},{field:"teamState",subject:this.teamStateSubject},{field:"user",subject:this.userSubject},{field:"isSSOAuth",subject:this.isSSOAuthSubject},{field:"ssoACS",subject:this.ssoACSSubject}],o=this.fronteggAppService.fronteggApp.store.getState();this.updateState(o.auth,n),this.fronteggAppService.fronteggApp.store.subscribe((function(){var t=i.fronteggAppService.fronteggApp.store.getState();i.updateState(t.auth,n)}))}return Object.defineProperty(t.prototype,"authState$",{get:function(){return this.authStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"acceptInvitationState$",{get:function(){return this.acceptInvitationStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"accountSettingsState$",{get:function(){return this.accountSettingsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"activateState$",{get:function(){return this.activateStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"apiTokensState$",{get:function(){return this.apiTokensStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"forgotPasswordState$",{get:function(){return this.forgotPasswordStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"loginState$",{get:function(){return this.loginStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"mfaState$",{get:function(){return this.mfaStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"profileState$",{get:function(){return this.profileStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rolesState$",{get:function(){return this.rolesStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"routesState$",{get:function(){return this.routesSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"securityPolicyState$",{get:function(){return this.securityPolicyStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"signUpState$",{get:function(){return this.signUpStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"socialLoginState$",{get:function(){return this.socialLoginStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ssoState$",{get:function(){return this.ssoStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"teamState$",{get:function(){return this.teamStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tenantsState$",{get:function(){return this.tenantsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"user$",{get:function(){return this.userSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"user",{get:function(){return this.fronteggAppService.fronteggApp.store.getState().auth.user},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated$",{get:function(){return this.isAuthenticatedSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated",{get:function(){return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isLoading$",{get:function(){return this.isLoadingSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isSSOAuth$",{get:function(){return this.isSSOAuthSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ssoACS$",{get:function(){return this.ssoACSSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.updateState=function(t,e){var i,n;this.authStateSubject.value!==t&&this.authStateSubject.next(t);try{for(var o=b(e),r=o.next();!r.done;r=o.next()){var c=r.value;S.default(c.subject.value,t[c.field])||c.subject.next(t[c.field])}}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}this.isAuthenticatedSubject.value!==t.isAuthenticated&&this.isAuthenticatedSubject.next(t.isAuthenticated),this.isLoadingSubject.value!==t.isLoading&&this.isLoadingSubject.next(t.isLoading)},t.prototype.dispatchAction=function(t,e){this.fronteggAppService.fronteggApp.store.dispatch({type:u.authStoreName+"/"+t,payload:e})},t.prototype.isHostedLoginCallbackRoute=function(){var t=this.fronteggAppService.router.url,e=this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;return t.startsWith(null!=e?e:"/oauth/callback")},t}();w.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new w(l.ɵɵinject(P),l.ɵɵinject(f.Router))},token:w,providedIn:"root"}),w.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],w.ctorParameters=function(){return[{type:P},{type:n.Router}]};var k=function(){function t(t,e,i){this.templateRef=t,this.viewContainer=e,this.fronteggAuthService=i,this._roles=[]}return Object.defineProperty(t.prototype,"authorizedContent",{set:function(t){this._roles=t},enumerable:!1,configurable:!0}),t.prototype.ngAfterContentInit=function(){var t=this;this.fronteggAuthService.user$.subscribe((function(e){var i;(null===(i=null==e?void 0:e.roles)||void 0===i?void 0:i.some((function(e){return t._roles.includes(e.name)})))?t.viewContainer.createEmbeddedView(t.templateRef):t.viewContainer.clear()}))},t}();k.decorators=[{type:e.Directive,args:[{selector:"[authorizedContent]"}]}],k.ctorParameters=function(){return[{type:e.TemplateRef},{type:e.ViewContainerRef},{type:w}]},k.propDecorators={authorizedContent:[{type:e.Input}]};var L=function(){function t(t){var e=this;this.fronteggAppService=t,this.subscriptionStateSubject=new r.BehaviorSubject({}),this.checkoutStateSubject=new r.BehaviorSubject({loading:!1,open:!1,success:!1,error:null}),this.loadSubscription=function(){return e.dispatchAction("billing/subscription/loadSubscription")},this.openCheckout=function(t){e.checkoutStateSubject.next({loading:!1,open:!0,success:!1,error:null}),e.fronteggAppService.showCheckoutDialog({plan:t,onSuccess:function(){e.checkoutStateSubject.next({loading:!1,open:!1,success:!0,error:null})},onError:function(t){var i=e.checkoutStateSubject.value;e.checkoutStateSubject.next(Object.assign(Object.assign({},i),{error:t}))},onClose:function(){var t=e.checkoutStateSubject.value;e.checkoutStateSubject.next(Object.assign(Object.assign({},t),{open:!1}))}})},this.hideCheckout=function(){e.fronteggAppService.hideCheckoutDialog()},this.fronteggAppService.subscriptionsState$.subscribe((function(t){if(null!=t){var i=t.billing.subscription,n=t.checkout;S.default(e.subscriptionStateSubject.getValue(),i)||e.subscriptionStateSubject.next(i);var o=e.checkoutStateSubject.getValue();o.loading!==n.loading&&e.checkoutStateSubject.next(Object.assign(Object.assign({},o),{loading:n.loading}))}}))}return Object.defineProperty(t.prototype,"subscriptionState$",{get:function(){return this.subscriptionStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"checkoutState$",{get:function(){return this.checkoutStateSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.dispatchAction=function(t,e){this.fronteggAppService.fronteggApp.store.dispatch({type:u.subscriptionsStoreName+"/"+t,payload:e})},t}();L.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new L(l.ɵɵinject(P))},token:L,providedIn:"root"}),L.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],L.ctorParameters=function(){return[{type:P}]};var T=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[P,O,y,w,L,{provide:j,useValue:e}]}},t}();T.decorators=[{type:e.NgModule,args:[{imports:[i.CommonModule,n.RouterModule],declarations:[v,k],exports:[v,k]}]}],t.AuthorizedContentDirective=k,t.FronteggAppModule=T,t.FronteggAppService=P,t.FronteggAuthGuard=O,t.FronteggAuthService=w,t.FronteggComponent=v,t.FronteggLoadGuard=y,t.FronteggSubscriptionService=L,t.ɵa=j,t.ɵb=m,Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/router"),require("@frontegg/js"),require("rxjs"),require("@frontegg/rest-api"),require("rxjs/operators"),require("fast-deep-equal"),require("@frontegg/redux-store")):"function"==typeof define&&define.amd?define("@frontegg/angular",["exports","@angular/core","@angular/common","@angular/router","@frontegg/js","rxjs","@frontegg/rest-api","rxjs/operators","fast-deep-equal","@frontegg/redux-store"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).frontegg=t.frontegg||{},t.frontegg.angular={}),t.ng.core,t.ng.common,t.ng.router,t.FronteggJS,t.rxjs,t.FronteggRestApi,t.rxjs.operators,t.FastDeepEqual,t.FronteggReduxStore)}(this,(function(t,e,i,n,o,r,c,a,s,u){"use strict";function h(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function p(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(i){if("default"!==i){var n=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(e,i,n.get?n:{enumerable:!0,get:function(){return t[i]}})}})),e.default=t,Object.freeze(e)}var l=p(e),f=p(n),S=h(s),d=function(t,e){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)};Object.create;function b(t){var e="function"==typeof Symbol&&Symbol.iterator,i=e&&t[e],n=0;if(i)return i.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,o,r=i.call(t),c=[];try{for(;(void 0===e||e-- >0)&&!(n=r.next()).done;)c.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return c}function A(t,e){for(var i=0,n=e.length,o=t.length;i<n;i++,o++)t[o]=e[i];return t}Object.create;var y=function(){function t(t){this.fronteggAppService=t}return t.prototype.canActivate=function(t,e){var i=this;return new r.Observable((function(t){i.fronteggAppService.isLoading$.subscribe((function(e){e||t.next(!0)}))}))},t}();y.decorators=[{type:e.Injectable}],y.ctorParameters=function(){return[{type:P}]};var v=function(){};v.decorators=[{type:e.Component,args:[{selector:"frontegg",template:""}]}];var j=function(){this.contextOptions={baseUrl:"https://sub-domain.frontegg.com"}},P=function(){function t(t,e,i){var n=this;if(this.config=t,this.router=e,this.ngZone=i,this.isLoadingSubject=new r.BehaviorSubject(!0),this.isAuthenticatedSubject=new r.BehaviorSubject(!1),this.stateSubject=new r.BehaviorSubject({}),this.authStateSubject=new r.BehaviorSubject({isLoading:!0,isAuthenticated:!1}),this.auditsStateSubject=new r.BehaviorSubject({}),this.connectivityStateSubject=new r.BehaviorSubject({}),this.subscriptionsStateSubject=new r.BehaviorSubject({}),this.vendorStateSubject=new r.BehaviorSubject({}),!this.config)throw Error("Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)");window.CYPRESS_CONFIG&&(this.config=window.CYPRESS_CONFIG);var a=function(t,e){var i=window.location.origin,o=t;o.startsWith(i)&&"/"!==i&&(o=o.substring(i.length-1)),(null==e?void 0:e.refresh)?window.location.href=o:n.ngZone.run((function(){(null==e?void 0:e.replace)?n.router.navigateByUrl(o,{replaceUrl:!0}):n.router.navigateByUrl(o)}))};c.ContextHolder.setOnRedirectTo(a),this.fronteggApp=o.initialize(Object.assign({onRedirectTo:a},this.config)),this.router.resetConfig(A(A([],g(this.mapAuthComponents)),[{path:"",canActivate:[y],children:A([],g(this.router.config))}]));var s=this.fronteggApp.store.getState();this.updateState(s),this.fronteggApp.store.subscribe((function(){n.updateState(n.fronteggApp.store.getState())}))}return Object.defineProperty(t.prototype,"state$",{get:function(){return this.stateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"authState$",{get:function(){return this.authStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"auditsState$",{get:function(){return this.auditsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"connectivityState$",{get:function(){return this.connectivityStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"subscriptionsState$",{get:function(){return this.subscriptionsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"vendorState$",{get:function(){return this.vendorStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isLoading$",{get:function(){return this.isLoadingSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated$",{get:function(){return this.isAuthenticatedSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.updateState=function(t){this.isLoadingSubject.getValue()!==t.auth.isLoading&&this.isLoadingSubject.next(t.auth.isLoading),this.isAuthenticatedSubject.getValue()!==t.auth.isAuthenticated&&this.isAuthenticatedSubject.next(t.auth.isAuthenticated),this.stateSubject.next(t),this.authStateSubject.next(t.auth),this.auditsStateSubject.next(t.audits),this.connectivityStateSubject.next(t.connectivity),this.subscriptionsStateSubject.next(t.subscriptions),this.vendorStateSubject.next(t.vendor)},Object.defineProperty(t.prototype,"mapAuthComponents",{get:function(){var t=this.authRoutes;return Object.keys(t).filter((function(t){return"authenticatedUrl"!==t&&"signUpSuccessUrl"!==t&&null!=t})).map((function(e){var i;return{path:null===(i=t[e])||void 0===i?void 0:i.substring(1),component:v}}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"authRoutes",{get:function(){return this.fronteggApp.store.getState().auth.routes},enumerable:!1,configurable:!0}),t.prototype.showAdminPortal=function(){this.fronteggApp.showAdminPortal()},t.prototype.hideAdminPortal=function(){var t;null===(t=this.fronteggApp)||void 0===t||t.hideAdminPortal()},t.prototype.showCheckoutDialog=function(t){this.fronteggApp.showCheckoutDialog(t)},t.prototype.hideCheckoutDialog=function(){var t;null===(t=this.fronteggApp)||void 0===t||t.hideCheckoutDialog()},t}();P.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new P(l.ɵɵinject(j),l.ɵɵinject(f.Router),l.ɵɵinject(l.NgZone))},token:P,providedIn:"root"}),P.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],P.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[j]}]},{type:n.Router},{type:e.NgZone}]};var m=function(){function t(){}return t.prototype.parse=function(t){return(new n.DefaultUrlSerializer).parse(t)},t.prototype.serialize=function(t){return(new n.DefaultUrlSerializer).serialize(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/").replace(/(https?):\/([\w\d])/gi,"$1://$2")},t}(),O=function(t){function i(e,i,n){var o=t.call(this)||this;return o.fronteggAppService=e,o.router=i,o.ngZone=n,o}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}d(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(i,t),i.prototype.navigateToUrl=function(t){this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl+"?redirectUrl="+encodeURIComponent(t))},i.prototype.canActivate=function(t,i){var n=this,o=i.url;return new Promise((function(t,i){n.fronteggAppService.isAuthenticated$.pipe(a.take(1)).subscribe((function(r){r?t(!0):(e.NgZone.isInAngularZone()?n.navigateToUrl(o):n.ngZone.run((function(){n.navigateToUrl(o)})),i("unauthorized"))})).unsubscribe()}))},i}(m);O.decorators=[{type:e.Injectable}],O.ctorParameters=function(){return[{type:P},{type:n.Router},{type:e.NgZone}]};var w=function(){function t(t,e){var i=this;this.fronteggAppService=t,this.router=e,this.authStateSubject=new r.BehaviorSubject({isAuthenticated:!1,isLoading:!0}),this.acceptInvitationStateSubject=new r.BehaviorSubject({}),this.accountSettingsStateSubject=new r.BehaviorSubject({}),this.activateStateSubject=new r.BehaviorSubject({}),this.apiTokensStateSubject=new r.BehaviorSubject({}),this.forgotPasswordStateSubject=new r.BehaviorSubject({}),this.loginStateSubject=new r.BehaviorSubject({}),this.mfaStateSubject=new r.BehaviorSubject({}),this.profileStateSubject=new r.BehaviorSubject({}),this.rolesStateSubject=new r.BehaviorSubject({}),this.routesSubject=new r.BehaviorSubject({}),this.securityPolicyStateSubject=new r.BehaviorSubject({}),this.signUpStateSubject=new r.BehaviorSubject({}),this.socialLoginStateSubject=new r.BehaviorSubject({}),this.ssoStateSubject=new r.BehaviorSubject({}),this.teamStateSubject=new r.BehaviorSubject({}),this.tenantsStateSubject=new r.BehaviorSubject({}),this.userSubject=new r.BehaviorSubject({}),this.isAuthenticatedSubject=new r.BehaviorSubject(!1),this.isLoadingSubject=new r.BehaviorSubject(!0),this.isSSOAuthSubject=new r.BehaviorSubject(!1),this.ssoACSSubject=new r.BehaviorSubject(""),this.setState=function(t){return i.dispatchAction("setState",t)},this.resetState=function(){return i.dispatchAction("resetState")},this.setUser=function(t){return i.dispatchAction("setUser",t)},this.setLoginState=function(t){return i.dispatchAction("setLoginState",t)},this.resetLoginState=function(){return i.dispatchAction("resetLoginState")},this.requestAuthorize=function(t){return i.dispatchAction("requestAuthorize",t)},this.loginWithRedirect=function(){i.isHostedLoginCallbackRoute()||(i.dispatchAction("requestHostedLoginAuthorize"),i.setState({isLoading:!0}))},this.preLogin=function(t){return i.dispatchAction("preLogin",t)},this.postLogin=function(t){return i.dispatchAction("postLogin",t)},this.login=function(t){return i.dispatchAction("login",t)},this.loginWithMfa=function(t){return i.dispatchAction("loginWithMfa",t)},this.recoverMfa=function(t){return i.dispatchAction("recoverMfa",t)},this.logout=function(t){return i.dispatchAction("logout",t)},this.silentLogout=function(t){return i.dispatchAction("silentLogout",t)},this.checkIfAllowToRememberMfaDevice=function(t){return i.dispatchAction("checkIfAllowToRememberMfaDevice",t)},this.setSocialLoginsState=function(t){return i.dispatchAction("setSocialLoginsState",t)},this.resetSocialLoginsState=function(){return i.dispatchAction("resetSocialLoginsState")},this.loadSocialLoginsConfiguration=function(){return i.dispatchAction("loadSocialLoginsConfiguration")},this.loginViaSocialLogin=function(t){return i.dispatchAction("loginViaSocialLogin",t)},this.setSocialLoginError=function(t){return i.dispatchAction("setSocialLoginError",t)},this.setActivateState=function(t){return i.dispatchAction("setActivateState",t)},this.resetActivateState=function(){return i.dispatchAction("resetActivateState")},this.setActivateStrategyState=function(t){return i.dispatchAction("setActivateStrategyState",t)},this.activateAccount=function(t){return i.dispatchAction("activateAccount",t)},this.resendActivationEmail=function(t){return i.dispatchAction("resendActivationEmail",t)},this.getActivateAccountStrategy=function(t){return i.dispatchAction("getActivateAccountStrategy",t)},this.setAcceptInvitationState=function(t){return i.dispatchAction("setAcceptInvitationState",t)},this.resetAcceptInvitationState=function(){return i.dispatchAction("resetAcceptInvitationState")},this.acceptInvitation=function(t){return i.dispatchAction("acceptInvitation",t)},this.setForgotPasswordState=function(t){return i.dispatchAction("setForgotPasswordState",t)},this.resetForgotPasswordState=function(){return i.dispatchAction("resetForgotPasswordState")},this.forgotPassword=function(t){return i.dispatchAction("forgotPassword",t)},this.resetPassword=function(t){return i.dispatchAction("resetPassword",t)},this.loadPasswordConfig=function(t){return i.dispatchAction("loadPasswordConfig",t)},this.setSignUpState=function(t){return i.dispatchAction("setSignUpState",t)},this.resetSignUpState=function(){return i.dispatchAction("resetSignUpState")},this.signUpUser=function(t){return i.dispatchAction("signUpUser",t)},this.resetSignUpStateSoft=function(){return i.dispatchAction("resetSignUpStateSoft")},this.setProfileState=function(t){return i.dispatchAction("setProfileState",t)},this.resetProfileState=function(){return i.dispatchAction("resetProfileState")},this.loadProfile=function(){return i.dispatchAction("loadProfile")},this.saveProfile=function(t){return i.dispatchAction("saveProfile",t)},this.changePassword=function(t){return i.dispatchAction("changePassword",t)},this.setSSOState=function(t){return i.dispatchAction("setSSOState",t)},this.resetSSOState=function(){return i.dispatchAction("resetSSOState")},this.loadSSOConfigurations=function(){return i.dispatchAction("loadSSOConfigurations")},this.loadSSOAuthorizationRoles=function(){return i.dispatchAction("loadSSOAuthorizationRoles")},this.saveSSOConfigurations=function(t){return i.dispatchAction("saveSSOConfigurations",t)},this.saveSSOConfigurationsFile=function(t){return i.dispatchAction("saveSSOConfigurationsFile",t)},this.saveSSOConfigurationsFileWithCallback=function(t){return i.dispatchAction("saveSSOConfigurationsFileWithCallback",t)},this.validateSSODomain=function(t){return i.dispatchAction("validateSSODomain",t)},this.updateSSOAuthorizationRoles=function(t){return i.dispatchAction("updateSSOAuthorizationRoles",t)},this.deleteSamlGroup=function(t){return i.dispatchAction("deleteSamlGroup",t)},this.createSamlGroup=function(t){return i.dispatchAction("createSamlGroup",t)},this.oidcPostlogin=function(t){return i.dispatchAction("oidcPostlogin",t)},this.setMfaState=function(t){return i.dispatchAction("setMfaState",t)},this.resetMfaState=function(){return i.dispatchAction("resetMfaState")},this.enrollMfa=function(){return i.dispatchAction("enrollMfa")},this.verifyMfa=function(t){return i.dispatchAction("verifyMfa",t)},this.verifyMfaAfterForce=function(t){return i.dispatchAction("verifyMfaAfterForce",t)},this.disableMfa=function(t){return i.dispatchAction("disableMfa",t)},this.setTeamLoader=function(t){return i.dispatchAction("setTeamLoader",t)},this.setTeamError=function(t){return i.dispatchAction("setTeamError",t)},this.setTeamState=function(t){return i.dispatchAction("setTeamState",t)},this.resetTeamState=function(){return i.dispatchAction("resetTeamState")},this.loadUsers=function(t){return i.dispatchAction("loadUsers",t)},this.loadRoles=function(t){return i.dispatchAction("loadRoles",t)},this.addUser=function(t){return i.dispatchAction("addUser",t)},this.updateUser=function(t){return i.dispatchAction("updateUser",t)},this.deleteUser=function(t){return i.dispatchAction("deleteUser",t)},this.resendActivationLink=function(t){return i.dispatchAction("resendActivationLink",t)},this.resendInvitationLink=function(t){return i.dispatchAction("resendInvitationLink",t)},this.openAddUserDialog=function(t){return i.dispatchAction("openAddUserDialog",t)},this.closeAddUserDialog=function(t){return i.dispatchAction("closeAddUserDialog",t)},this.openDeleteUserDialog=function(t){return i.dispatchAction("openDeleteUserDialog",t)},this.closeDeleteUserDialog=function(t){return i.dispatchAction("closeDeleteUserDialog",t)},this.setApiTokensLoader=function(t){return i.dispatchAction("setApiTokensLoader",t)},this.setApiTokensError=function(t){return i.dispatchAction("setApiTokensError",t)},this.setApiTokensState=function(t){return i.dispatchAction("setApiTokensState",t)},this.resetApiTokensState=function(){return i.dispatchAction("resetApiTokensState")},this.loadApiTokens=function(t){return i.dispatchAction("loadApiTokens",t)},this.initApiTokensData=function(t){return i.dispatchAction("initApiTokensData",t)},this.addTenantApiToken=function(t){return i.dispatchAction("addTenantApiToken",t)},this.addUserApiToken=function(t){return i.dispatchAction("addUserApiToken",t)},this.deleteUserApiToken=function(t){return i.dispatchAction("deleteUserApiToken",t)},this.deleteTenantApiToken=function(t){return i.dispatchAction("deleteTenantApiToken",t)},this.setSecurityPolicyState=function(t){return i.dispatchAction("setSecurityPolicyState",t)},this.setSecurityPolicyGlobalState=function(t){return i.dispatchAction("setSecurityPolicyGlobalState",t)},this.setSecurityPolicyPublicState=function(t){return i.dispatchAction("setSecurityPolicyPublicState",t)},this.setSecurityPolicyMfaState=function(t){return i.dispatchAction("setSecurityPolicyMfaState",t)},this.setSecurityPolicyLockoutState=function(t){return i.dispatchAction("setSecurityPolicyLockoutState",t)},this.setSecurityPolicyCaptchaState=function(t){return i.dispatchAction("setSecurityPolicyCaptchaState",t)},this.setSecurityPolicyPasswordHistoryState=function(t){return i.dispatchAction("setSecurityPolicyPasswordHistoryState",t)},this.resetSecurityPolicyState=function(){return i.dispatchAction("resetSecurityPolicyState")},this.setSecurityPolicyPasswordState=function(t){return i.dispatchAction("setSecurityPolicyPasswordState",t)},this.loadSecurityPolicy=function(){return i.dispatchAction("loadSecurityPolicy")},this.loadPublicSecurityPolicy=function(){return i.dispatchAction("loadPublicSecurityPolicy")},this.loadVendorPasswordConfig=function(){return i.dispatchAction("loadVendorPasswordConfig")},this.loadSecurityPolicyMfa=function(){return i.dispatchAction("loadSecurityPolicyMfa")},this.saveSecurityPolicyMfa=function(t){return i.dispatchAction("saveSecurityPolicyMfa",t)},this.loadSecurityPolicyLockout=function(){return i.dispatchAction("loadSecurityPolicyLockout")},this.saveSecurityPolicyLockout=function(t){return i.dispatchAction("saveSecurityPolicyLockout",t)},this.loadSecurityPolicyCaptcha=function(){return i.dispatchAction("loadSecurityPolicyCaptcha")},this.loadSecurityPolicyPasswordHistory=function(){return i.dispatchAction("loadSecurityPolicyPasswordHistory")},this.saveSecurityPolicyPasswordHistory=function(t){return i.dispatchAction("saveSecurityPolicyPasswordHistory",t)},this.setAccountSettingsState=function(t){return i.dispatchAction("setAccountSettingsState",t)},this.resetAccountSettingsState=function(){return i.dispatchAction("resetAccountSettingsState")},this.loadAccountSettings=function(t){return i.dispatchAction("loadAccountSettings",t)},this.saveAccountSettings=function(t){return i.dispatchAction("saveAccountSettings",t)},this.setTenantsState=function(t){return i.dispatchAction("setTenantsState",t)},this.resetTenantsState=function(){return i.dispatchAction("resetTenantsState")},this.switchTenant=function(t){return i.dispatchAction("switchTenant",t)},this.loadTenants=function(t){return i.dispatchAction("loadTenants",t)},this.setRolesState=function(t){return i.dispatchAction("setRolesState",t)},this.resetRolesState=function(){return i.dispatchAction("resetRolesState")},this.loadRolesAndPermissions=function(t){return i.dispatchAction("loadRolesAndPermissions",t)},this.addRole=function(t){return i.dispatchAction("addRole",t)},this.updateRole=function(t){return i.dispatchAction("updateRole",t)},this.deleteRole=function(t){return i.dispatchAction("deleteRole",t)},this.attachPermissionsToRole=function(t){return i.dispatchAction("attachPermissionsToRole",t)},this.attachPermissionToRoles=function(t){return i.dispatchAction("attachPermissionToRoles",t)};var n=[{field:"acceptInvitationState",subject:this.acceptInvitationStateSubject},{field:"accountSettingsState",subject:this.accountSettingsStateSubject},{field:"activateState",subject:this.activateStateSubject},{field:"apiTokensState",subject:this.apiTokensStateSubject},{field:"forgotPasswordState",subject:this.forgotPasswordStateSubject},{field:"tenantsState",subject:this.tenantsStateSubject},{field:"loginState",subject:this.loginStateSubject},{field:"mfaState",subject:this.mfaStateSubject},{field:"profileState",subject:this.profileStateSubject},{field:"rolesState",subject:this.rolesStateSubject},{field:"routes",subject:this.routesSubject},{field:"securityPolicyState",subject:this.securityPolicyStateSubject},{field:"signUpState",subject:this.signUpStateSubject},{field:"socialLoginState",subject:this.socialLoginStateSubject},{field:"ssoState",subject:this.ssoStateSubject},{field:"teamState",subject:this.teamStateSubject},{field:"user",subject:this.userSubject},{field:"isSSOAuth",subject:this.isSSOAuthSubject},{field:"ssoACS",subject:this.ssoACSSubject}],o=this.fronteggAppService.fronteggApp.store.getState();this.updateState(o.auth,n),this.fronteggAppService.fronteggApp.store.subscribe((function(){var t=i.fronteggAppService.fronteggApp.store.getState();i.updateState(t.auth,n)}))}return Object.defineProperty(t.prototype,"authState$",{get:function(){return this.authStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"acceptInvitationState$",{get:function(){return this.acceptInvitationStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"accountSettingsState$",{get:function(){return this.accountSettingsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"activateState$",{get:function(){return this.activateStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"apiTokensState$",{get:function(){return this.apiTokensStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"forgotPasswordState$",{get:function(){return this.forgotPasswordStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"loginState$",{get:function(){return this.loginStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"mfaState$",{get:function(){return this.mfaStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"profileState$",{get:function(){return this.profileStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rolesState$",{get:function(){return this.rolesStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"routesState$",{get:function(){return this.routesSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"securityPolicyState$",{get:function(){return this.securityPolicyStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"signUpState$",{get:function(){return this.signUpStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"socialLoginState$",{get:function(){return this.socialLoginStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ssoState$",{get:function(){return this.ssoStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"teamState$",{get:function(){return this.teamStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tenantsState$",{get:function(){return this.tenantsStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"user$",{get:function(){return this.userSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"user",{get:function(){return this.fronteggAppService.fronteggApp.store.getState().auth.user},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated$",{get:function(){return this.isAuthenticatedSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isAuthenticated",{get:function(){return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isLoading$",{get:function(){return this.isLoadingSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isSSOAuth$",{get:function(){return this.isSSOAuthSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ssoACS$",{get:function(){return this.ssoACSSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.updateState=function(t,e){var i,n;this.authStateSubject.value!==t&&this.authStateSubject.next(t);try{for(var o=b(e),r=o.next();!r.done;r=o.next()){var c=r.value;S.default(c.subject.value,t[c.field])||c.subject.next(t[c.field])}}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}this.isAuthenticatedSubject.value!==t.isAuthenticated&&this.isAuthenticatedSubject.next(t.isAuthenticated),this.isLoadingSubject.value!==t.isLoading&&this.isLoadingSubject.next(t.isLoading)},t.prototype.dispatchAction=function(t,e){this.fronteggAppService.fronteggApp.store.dispatch({type:u.authStoreName+"/"+t,payload:e})},t.prototype.isHostedLoginCallbackRoute=function(){var t=this.fronteggAppService.router.url,e=this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;return t.startsWith(null!=e?e:"/oauth/callback")},t}();w.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new w(l.ɵɵinject(P),l.ɵɵinject(f.Router))},token:w,providedIn:"root"}),w.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],w.ctorParameters=function(){return[{type:P},{type:n.Router}]};var k=function(){function t(t,e,i){this.templateRef=t,this.viewContainer=e,this.fronteggAuthService=i,this._roles=[]}return Object.defineProperty(t.prototype,"authorizedContent",{set:function(t){this._roles=t},enumerable:!1,configurable:!0}),t.prototype.ngAfterContentInit=function(){var t=this;this.fronteggAuthService.user$.subscribe((function(e){var i;(null===(i=null==e?void 0:e.roles)||void 0===i?void 0:i.some((function(e){return t._roles.includes(e.name)})))?t.viewContainer.createEmbeddedView(t.templateRef):t.viewContainer.clear()}))},t}();k.decorators=[{type:e.Directive,args:[{selector:"[authorizedContent]"}]}],k.ctorParameters=function(){return[{type:e.TemplateRef},{type:e.ViewContainerRef},{type:w}]},k.propDecorators={authorizedContent:[{type:e.Input}]};var C=function(){function t(t){var e=this;this.fronteggAppService=t,this.subscriptionStateSubject=new r.BehaviorSubject({}),this.checkoutStateSubject=new r.BehaviorSubject({loading:!1,open:!1,success:!1,error:null}),this.loadSubscription=function(){return e.dispatchAction("billing/subscription/loadSubscription")},this.openCheckout=function(t){e.checkoutStateSubject.next({loading:!1,open:!0,success:!1,error:null}),e.fronteggAppService.showCheckoutDialog({plan:t,onSuccess:function(){e.checkoutStateSubject.next({loading:!1,open:!1,success:!0,error:null})},onError:function(t){var i=e.checkoutStateSubject.value;e.checkoutStateSubject.next(Object.assign(Object.assign({},i),{error:t}))},onClose:function(){var t=e.checkoutStateSubject.value;e.checkoutStateSubject.next(Object.assign(Object.assign({},t),{open:!1}))}})},this.hideCheckout=function(){e.fronteggAppService.hideCheckoutDialog()},this.fronteggAppService.subscriptionsState$.subscribe((function(t){if(null!=t){var i=t.billing.subscription,n=t.checkout;S.default(e.subscriptionStateSubject.getValue(),i)||e.subscriptionStateSubject.next(i);var o=e.checkoutStateSubject.getValue();o.loading!==n.loading&&e.checkoutStateSubject.next(Object.assign(Object.assign({},o),{loading:n.loading}))}}))}return Object.defineProperty(t.prototype,"subscriptionState$",{get:function(){return this.subscriptionStateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"checkoutState$",{get:function(){return this.checkoutStateSubject.asObservable()},enumerable:!1,configurable:!0}),t.prototype.dispatchAction=function(t,e){this.fronteggAppService.fronteggApp.store.dispatch({type:u.subscriptionsStoreName+"/"+t,payload:e})},t}();C.ɵprov=l.ɵɵdefineInjectable({factory:function(){return new C(l.ɵɵinject(P))},token:C,providedIn:"root"}),C.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],C.ctorParameters=function(){return[{type:P}]};var L=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[P,O,y,w,C,{provide:j,useValue:e}]}},t}();L.decorators=[{type:e.NgModule,args:[{imports:[i.CommonModule,n.RouterModule],declarations:[v,k],exports:[v,k]}]}],Object.defineProperty(t,"ContextHolder",{enumerable:!0,get:function(){return c.ContextHolder}}),t.AuthorizedContentDirective=k,t.FronteggAppModule=L,t.FronteggAppService=P,t.FronteggAuthGuard=O,t.FronteggAuthService=w,t.FronteggComponent=v,t.FronteggLoadGuard=y,t.FronteggSubscriptionService=C,t.ɵa=j,t.ɵb=m,Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=frontegg-angular.umd.min.js.map
@@ -9,4 +9,5 @@ export { FronteggSubscriptionService } from './lib/frontegg-subscription.service
9
9
  export * from './lib/directives/authorized-content.directive';
10
10
  export * from './lib/guards/frontegg-auth.guard';
11
11
  export * from './lib/guards/frontegg-load.guard';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Zyb250ZWdnLWFwcC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25GLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBmcm9udGVnZy1hcHBcbiAqL1xuXG5leHBvcnQgeyBGcm9udGVnZ0FwcE1vZHVsZSB9IGZyb20gJy4vbGliL2Zyb250ZWdnLWFwcC5tb2R1bGUnO1xuZXhwb3J0IHsgRnJvbnRlZ2dBcHBTZXJ2aWNlIH0gZnJvbSAnLi9saWIvZnJvbnRlZ2ctYXBwLnNlcnZpY2UnO1xuZXhwb3J0IHsgRnJvbnRlZ2dDb21wb25lbnQgfSBmcm9tICcuL2xpYi9mcm9udGVnZy5jb21wb25lbnQnO1xuZXhwb3J0IHsgRnJvbnRlZ2dBdXRoU2VydmljZSB9IGZyb20gJy4vbGliL2Zyb250ZWdnLWF1dGguc2VydmljZSc7XG5leHBvcnQgeyBGcm9udGVnZ1N1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuL2xpYi9mcm9udGVnZy1zdWJzY3JpcHRpb24uc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9hdXRob3JpemVkLWNvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2d1YXJkcy9mcm9udGVnZy1hdXRoLmd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2d1YXJkcy9mcm9udGVnZy1sb2FkLmd1YXJkJztcbiJdfQ==
12
+ export { ContextHolder } from '@frontegg/rest-api';
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Zyb250ZWdnLWFwcC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25GLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgZnJvbnRlZ2ctYXBwXG4gKi9cblxuZXhwb3J0IHsgRnJvbnRlZ2dBcHBNb2R1bGUgfSBmcm9tICcuL2xpYi9mcm9udGVnZy1hcHAubW9kdWxlJztcbmV4cG9ydCB7IEZyb250ZWdnQXBwU2VydmljZSB9IGZyb20gJy4vbGliL2Zyb250ZWdnLWFwcC5zZXJ2aWNlJztcbmV4cG9ydCB7IEZyb250ZWdnQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZnJvbnRlZ2cuY29tcG9uZW50JztcbmV4cG9ydCB7IEZyb250ZWdnQXV0aFNlcnZpY2UgfSBmcm9tICcuL2xpYi9mcm9udGVnZy1hdXRoLnNlcnZpY2UnO1xuZXhwb3J0IHsgRnJvbnRlZ2dTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi9saWIvZnJvbnRlZ2ctc3Vic2NyaXB0aW9uLnNlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvYXV0aG9yaXplZC1jb250ZW50LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMvZnJvbnRlZ2ctYXV0aC5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMvZnJvbnRlZ2ctbG9hZC5ndWFyZCc7XG5leHBvcnQgeyBDb250ZXh0SG9sZGVyIH0gZnJvbSAnQGZyb250ZWdnL3Jlc3QtYXBpJztcbiJdfQ==
@@ -6,6 +6,7 @@ import { Router, DefaultUrlSerializer, RouterModule } from '@angular/router';
6
6
  import { initialize } from '@frontegg/js';
7
7
  import { Observable, BehaviorSubject } from 'rxjs';
8
8
  import { ContextHolder } from '@frontegg/rest-api';
9
+ export { ContextHolder } from '@frontegg/rest-api';
9
10
  import { take } from 'rxjs/operators';
10
11
  import FastDeepEqual from 'fast-deep-equal';
11
12
  import { authStoreName, subscriptionsStoreName } from '@frontegg/redux-store';
@@ -1 +1 @@
1
- {"version":3,"file":"frontegg-angular.js","sources":["../../../../projects/frontegg-app/src/lib/guards/frontegg-load.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg.component.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.service.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-base-guard.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-auth.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg-auth.service.ts","../../../../projects/frontegg-app/src/lib/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-subscription.services.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts","../../../../projects/frontegg-app/src/public-api.ts","../../../../projects/frontegg-app/src/frontegg-angular.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggAppService } from '../frontegg-app.service';\n\n@Injectable()\nexport class FronteggLoadGuard implements CanActivate {\n constructor(protected fronteggAppService: FronteggAppService) {\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n return new Observable<boolean>(obs => {\n this.fronteggAppService.isLoading$.subscribe(loading => {\n if (!loading) {\n obs.next(true);\n }\n });\n });\n }\n}\n","import { Component } from '@angular/core';\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'frontegg',\n template: ``,\n})\nexport class FronteggComponent {\n}\n","import { Inject, Injectable, NgZone } from '@angular/core';\nimport { Route, Router } from '@angular/router';\nimport { FronteggApp, initialize } from '@frontegg/js';\nimport { AuthPageRoutes, FronteggState } from '@frontegg/redux-store';\nimport { FronteggAppOptions, FronteggCheckoutDialogOptions } from '@frontegg/types';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { ContextHolder, RedirectOptions } from '@frontegg/rest-api';\nimport { FronteggComponent } from './frontegg.component';\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://sub-domain.frontegg.com',\n };\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAppService {\n fronteggApp: FronteggApp;\n\n private isLoadingSubject = new BehaviorSubject<boolean>(true);\n private isAuthenticatedSubject = new BehaviorSubject<boolean>(false);\n private stateSubject = new BehaviorSubject<FronteggState>({} as FronteggState);\n private authStateSubject = new BehaviorSubject<FronteggState['auth']>({\n isLoading: true,\n isAuthenticated: false,\n } as FronteggState['auth']);\n private auditsStateSubject = new BehaviorSubject<FronteggState['audits']>({} as FronteggState['audits']);\n private connectivityStateSubject = new BehaviorSubject<FronteggState['connectivity']>({} as FronteggState['connectivity']);\n private subscriptionsStateSubject = new BehaviorSubject<FronteggState['subscriptions']>({} as FronteggState['subscriptions']);\n private vendorStateSubject = new BehaviorSubject<FronteggState['vendor']>({} as FronteggState['vendor']);\n\n\n get state$(): Observable<FronteggState> {\n return this.stateSubject.asObservable();\n }\n\n get authState$(): Observable<FronteggState['auth']> {\n return this.authStateSubject.asObservable();\n }\n\n get auditsState$(): Observable<FronteggState['audits']> {\n return this.auditsStateSubject.asObservable();\n }\n\n get connectivityState$(): Observable<FronteggState['connectivity']> {\n return this.connectivityStateSubject.asObservable();\n }\n\n get subscriptionsState$(): Observable<FronteggState['subscriptions']> {\n return this.subscriptionsStateSubject.asObservable();\n }\n\n get vendorState$(): Observable<FronteggState['vendor']> {\n return this.vendorStateSubject.asObservable();\n }\n\n get isLoading$(): Observable<boolean> {\n return this.isLoadingSubject.asObservable();\n };\n\n\n get isAuthenticated$(): Observable<boolean> {\n return this.isAuthenticatedSubject.asObservable();\n };\n\n constructor(@Inject(FronteggAppOptionsClass) private config: FronteggAppOptions, public router: Router, private ngZone: NgZone) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\n\n if ((window as any).CYPRESS_CONFIG) {\n this.config = (window as any).CYPRESS_CONFIG;\n }\n const onRedirectTo = (to: string, opts?: RedirectOptions) => {\n const baseName = window.location.origin;\n let path = to;\n if (path.startsWith(baseName) && baseName !== '/') {\n path = path.substring(baseName.length - 1);\n }\n\n if (opts?.refresh) {\n window.location.href = path;\n } else {\n this.ngZone.run(() => {\n if (opts?.replace) {\n this.router.navigateByUrl(path, { replaceUrl: true });\n } else {\n this.router.navigateByUrl(path);\n }\n });\n }\n };\n ContextHolder.setOnRedirectTo(onRedirectTo);\n this.fronteggApp = initialize({\n onRedirectTo,\n ...this.config,\n });\n\n\n // Add all login box routes to Angular router config\n this.router.resetConfig([\n ...this.mapAuthComponents,\n {\n path: '',\n canActivate: [ FronteggLoadGuard ],\n children: [ ...this.router.config ],\n },\n ]);\n const initialFronteggState = this.fronteggApp.store.getState() as FronteggState;\n this.updateState(initialFronteggState);\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n this.updateState(this.fronteggApp.store.getState() as FronteggState);\n });\n }\n\n private updateState(fronteggStore: FronteggState): void {\n if (this.isLoadingSubject.getValue() !== fronteggStore.auth.isLoading) {\n this.isLoadingSubject.next(fronteggStore.auth.isLoading);\n }\n if (this.isAuthenticatedSubject.getValue() !== fronteggStore.auth.isAuthenticated) {\n this.isAuthenticatedSubject.next(fronteggStore.auth.isAuthenticated);\n }\n\n this.stateSubject.next(fronteggStore);\n this.authStateSubject.next(fronteggStore.auth);\n this.auditsStateSubject.next(fronteggStore.audits);\n this.connectivityStateSubject.next(fronteggStore.connectivity);\n this.subscriptionsStateSubject.next(fronteggStore.subscriptions);\n this.vendorStateSubject.next(fronteggStore.vendor);\n }\n\n get mapAuthComponents(): Route[] {\n const authRoutes = this.authRoutes;\n return (Object.keys(authRoutes) as (keyof AuthPageRoutes)[])\n .filter((key: keyof AuthPageRoutes) => key !== 'authenticatedUrl' && key !== 'signUpSuccessUrl' && key != null)\n .map((key: keyof AuthPageRoutes) => ({\n path: authRoutes[key]?.substring(1),\n component: FronteggComponent,\n }));\n }\n\n get authRoutes(): AuthPageRoutes {\n return this.fronteggApp.store.getState().auth.routes;\n }\n\n // Open admin portal\n public showAdminPortal(): void {\n this.fronteggApp.showAdminPortal();\n }\n\n // Open admin portal\n public hideAdminPortal(): void {\n this.fronteggApp?.hideAdminPortal();\n }\n\n // Open checkout dialog\n public showCheckoutDialog(opts: FronteggCheckoutDialogOptions): void {\n this.fronteggApp.showCheckoutDialog(opts);\n }\n\n // Open checkout dialog\n public hideCheckoutDialog(): void {\n this.fronteggApp?.hideCheckoutDialog();\n }\n}\n","import { ActivatedRouteSnapshot, CanActivate, DefaultUrlSerializer, Router, RouterStateSnapshot, UrlSerializer, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport abstract class FronteggBaseGuard implements UrlSerializer, CanActivate {\n\n abstract canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\n : Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;\n\n parse(url: any): UrlTree {\n const dus = new DefaultUrlSerializer();\n return dus.parse(url);\n }\n\n serialize(tree: UrlTree): any {\n const dus = new DefaultUrlSerializer();\n\n return dus\n .serialize(tree)\n .replace(/%40/gi, '@')\n .replace(/%3A/gi, ':')\n .replace(/%24/gi, '$')\n .replace(/%2C/gi, ',')\n .replace(/%3B/gi, ';')\n .replace(/%2B/gi, '+')\n .replace(/%3D/gi, '=')\n .replace(/%3F/gi, '?')\n .replace(/%2F/gi, '/')\n .replace(/(https?):\\/([\\w\\d])/gi, '$1://$2');\n }\n}\n","import { Injectable, NgZone } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggBaseGuard } from './frontegg-base-guard';\nimport { FronteggAppService } from '../frontegg-app.service';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router, protected ngZone: NgZone) {\n super();\n }\n\n navigateToUrl(redirectUrl: string): void {\n this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(redirectUrl));\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n const redirectUrl = state.url;\n return new Promise<boolean>((resolve, reject) => {\n const subscription = this.fronteggAppService.isAuthenticated$.pipe(take(1)).subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n resolve(true);\n } else {\n if (NgZone.isInAngularZone()) {\n this.navigateToUrl(redirectUrl);\n } else {\n this.ngZone.run(() => {\n this.navigateToUrl(redirectUrl);\n });\n }\n reject('unauthorized');\n }\n });\n subscription.unsubscribe();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport {\n RolesState,\n TenantsState,\n AccountSettingsState,\n SaveSecurityPolicyPasswordHistoryPayload,\n SaveSecurityPolicyLockoutPayload,\n SaveSecurityPolicyMfaPayload,\n PasswordPolicyState,\n PasswordHistoryPolicyState,\n MfaPolicyState,\n CaptchaPolicyState,\n LockoutPolicyState,\n PublicPolicyState,\n GlobalPolicyState,\n SecurityPolicyState,\n AddUserApiTokenPayload,\n AddTenantApiTokenPayload,\n ApiTokenType,\n ApiTokensState,\n ApiStateIndicator,\n ISetDeleteUserDialog,\n ISetAddUserDialog,\n LoadRolesAndPermissionsPayload,\n TeamState,\n TeamStateIndicator,\n MFAState,\n SaveSSOConfigurationPayload,\n SSOState,\n ProfileState,\n SaveSSOConfigurationFilePayload,\n UpdateSSOAuthorizationRolesPayload,\n DeleteSamlGroupPayload,\n CreateSamlGroupPayload,\n SaveProfilePayload,\n SignUpState,\n ForgotPasswordState,\n AcceptInvitationState,\n AuthState,\n User,\n authStoreName,\n LoginState,\n ActivateAccountStrategyState,\n EnhancedStore,\n} from '@frontegg/redux-store';\nimport {\n ILogin,\n ILoginWithMfa,\n IPostLogin,\n IPreLogin,\n IRecoverMFAToken,\n IActivateAccount,\n ILoginViaSocialLogin,\n ISetSocialLoginError,\n IResendActivationEmail,\n IGetActivateAccountStrategy,\n IGetActivateAccountStrategyResponse,\n IAcceptInvitation,\n IForgotPassword,\n IResetPassword,\n IGetUserPasswordConfig,\n ISignUpUser,\n IChangePassword,\n IOidcPostLogin,\n IVerifyMfa,\n IDisableMfa,\n ILoadUsers,\n ITeamUser,\n IAddUser,\n IUpdateUser,\n IDeleteUser,\n IResendActivationLink,\n ISettingsResponse,\n ISwitchTenant,\n ITenantsResponse,\n IAddRole,\n IRole,\n IUpdateRole,\n IDeleteRole,\n IAttachPermissionsToRole,\n IResendInvitationLink,\n IRolePermission,\n} from '@frontegg/rest-api';\nimport type { FronteggState, ActivateAccountState, SocialLoginState } from '@frontegg/redux-store';\nimport { Observable } from 'rxjs';\nimport { Router } from '@angular/router';\n\ninterface AuthSubStates {\n field: Partial<keyof AuthState>;\n subject: BehaviorSubject<any>;\n}\n\nexport type WithCallback<T = {}, R = boolean> = T & {\n callback?: (data: R | null, error?: string) => void;\n};\n\nexport type WithSilentLoad<T> = T & {\n silentLoading?: boolean;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAuthService {\n private authStateSubject = new BehaviorSubject<AuthState>({ isAuthenticated: false, isLoading: true } as AuthState);\n private acceptInvitationStateSubject = new BehaviorSubject<AuthState['acceptInvitationState']>({} as AuthState['acceptInvitationState']);\n private accountSettingsStateSubject = new BehaviorSubject<AuthState['accountSettingsState']>({} as AuthState['accountSettingsState']);\n private activateStateSubject = new BehaviorSubject<AuthState['activateState']>({} as AuthState['activateState']);\n private apiTokensStateSubject = new BehaviorSubject<AuthState['apiTokensState']>({} as AuthState['apiTokensState']);\n private forgotPasswordStateSubject = new BehaviorSubject<AuthState['forgotPasswordState']>({} as AuthState['forgotPasswordState']);\n private loginStateSubject = new BehaviorSubject<AuthState['loginState']>({} as AuthState['loginState']);\n private mfaStateSubject = new BehaviorSubject<AuthState['mfaState']>({} as AuthState['mfaState']);\n private profileStateSubject = new BehaviorSubject<AuthState['profileState']>({} as AuthState['profileState']);\n private rolesStateSubject = new BehaviorSubject<AuthState['rolesState']>({} as AuthState['rolesState']);\n private routesSubject = new BehaviorSubject<AuthState['routes']>({} as AuthState['routes']);\n private securityPolicyStateSubject = new BehaviorSubject<AuthState['securityPolicyState']>({} as AuthState['securityPolicyState']);\n private signUpStateSubject = new BehaviorSubject<AuthState['signUpState']>({} as AuthState['signUpState']);\n private socialLoginStateSubject = new BehaviorSubject<AuthState['socialLoginState']>({} as AuthState['socialLoginState']);\n private ssoStateSubject = new BehaviorSubject<AuthState['ssoState']>({} as AuthState['ssoState']);\n private teamStateSubject = new BehaviorSubject<AuthState['teamState']>({} as AuthState['teamState']);\n private tenantsStateSubject = new BehaviorSubject<AuthState['tenantsState']>({} as AuthState['tenantsState']);\n private userSubject = new BehaviorSubject<AuthState['user']>({} as AuthState['user']);\n private isAuthenticatedSubject = new BehaviorSubject<AuthState['isAuthenticated']>(false);\n private isLoadingSubject = new BehaviorSubject<AuthState['isLoading']>(true);\n private isSSOAuthSubject = new BehaviorSubject<AuthState['isSSOAuth']>(false);\n private ssoACSSubject = new BehaviorSubject<AuthState['ssoACS']>('');\n\n\n get authState$(): Observable<AuthState> {\n return this.authStateSubject.asObservable();\n }\n\n get acceptInvitationState$(): Observable<AuthState['acceptInvitationState']> {\n return this.acceptInvitationStateSubject.asObservable();\n }\n\n get accountSettingsState$(): Observable<AuthState['accountSettingsState']> {\n return this.accountSettingsStateSubject.asObservable();\n }\n\n get activateState$(): Observable<AuthState['activateState']> {\n return this.activateStateSubject.asObservable();\n }\n\n get apiTokensState$(): Observable<AuthState['apiTokensState']> {\n return this.apiTokensStateSubject.asObservable();\n }\n\n get forgotPasswordState$(): Observable<AuthState['forgotPasswordState']> {\n return this.forgotPasswordStateSubject.asObservable();\n }\n\n get loginState$(): Observable<AuthState['loginState']> {\n return this.loginStateSubject.asObservable();\n }\n\n get mfaState$(): Observable<AuthState['mfaState']> {\n return this.mfaStateSubject.asObservable();\n }\n\n get profileState$(): Observable<AuthState['profileState']> {\n return this.profileStateSubject.asObservable();\n }\n\n get rolesState$(): Observable<AuthState['rolesState']> {\n return this.rolesStateSubject.asObservable();\n }\n\n get routesState$(): Observable<AuthState['routes']> {\n return this.routesSubject.asObservable();\n }\n\n get securityPolicyState$(): Observable<AuthState['securityPolicyState']> {\n return this.securityPolicyStateSubject.asObservable();\n }\n\n get signUpState$(): Observable<AuthState['signUpState']> {\n return this.signUpStateSubject.asObservable();\n }\n\n get socialLoginState$(): Observable<AuthState['socialLoginState']> {\n return this.socialLoginStateSubject.asObservable();\n }\n\n get ssoState$(): Observable<AuthState['ssoState']> {\n return this.ssoStateSubject.asObservable();\n }\n\n get teamState$(): Observable<AuthState['teamState']> {\n return this.teamStateSubject.asObservable();\n }\n\n get tenantsState$(): Observable<AuthState['tenantsState']> {\n return this.tenantsStateSubject.asObservable();\n }\n\n get user$(): Observable<AuthState['user']> {\n return this.userSubject.asObservable();\n }\n\n get user(): AuthState['user'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.user;\n }\n\n\n get isAuthenticated$(): Observable<AuthState['isAuthenticated']> {\n return this.isAuthenticatedSubject.asObservable();\n }\n\n get isAuthenticated(): AuthState['isAuthenticated'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated;\n }\n\n get isLoading$(): Observable<AuthState['isLoading']> {\n return this.isLoadingSubject.asObservable();\n }\n\n get isSSOAuth$(): Observable<AuthState['isSSOAuth']> {\n return this.isSSOAuthSubject.asObservable();\n }\n\n get ssoACS$(): Observable<AuthState['ssoACS']> {\n return this.ssoACSSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService, private router: Router) {\n const authSubStates: AuthSubStates[] = [\n { field: 'acceptInvitationState', subject: this.acceptInvitationStateSubject },\n { field: 'accountSettingsState', subject: this.accountSettingsStateSubject },\n { field: 'activateState', subject: this.activateStateSubject },\n { field: 'apiTokensState', subject: this.apiTokensStateSubject },\n { field: 'forgotPasswordState', subject: this.forgotPasswordStateSubject },\n { field: 'tenantsState', subject: this.tenantsStateSubject },\n { field: 'loginState', subject: this.loginStateSubject },\n { field: 'mfaState', subject: this.mfaStateSubject },\n { field: 'profileState', subject: this.profileStateSubject },\n { field: 'rolesState', subject: this.rolesStateSubject },\n { field: 'routes', subject: this.routesSubject },\n { field: 'securityPolicyState', subject: this.securityPolicyStateSubject },\n { field: 'signUpState', subject: this.signUpStateSubject },\n { field: 'socialLoginState', subject: this.socialLoginStateSubject },\n { field: 'ssoState', subject: this.ssoStateSubject },\n { field: 'teamState', subject: this.teamStateSubject },\n { field: 'user', subject: this.userSubject },\n { field: 'isSSOAuth', subject: this.isSSOAuthSubject },\n { field: 'ssoACS', subject: this.ssoACSSubject },\n ];\n\n const state = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(state.auth, authSubStates);\n // Memoized Auth State\n this.fronteggAppService.fronteggApp.store.subscribe(() => {\n const newState = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(newState.auth, authSubStates);\n });\n }\n\n private updateState(authState: AuthState, authSubStates: AuthSubStates[]): void {\n\n if (this.authStateSubject.value !== authState) {\n this.authStateSubject.next(authState);\n }\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.value, authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n if (this.isAuthenticatedSubject.value !== authState.isAuthenticated) {\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n }\n if (this.isLoadingSubject.value !== authState.isLoading) {\n this.isLoadingSubject.next(authState.isLoading);\n }\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\n }\n\n\n public isHostedLoginCallbackRoute(): boolean {\n const path = this.fronteggAppService.router.url;\n const hostedLoginRedirectUrl = this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;\n return path.startsWith(hostedLoginRedirectUrl ?? '/oauth/callback');\n }\n\n\n // Root Actions\n setState = (state: Partial<AuthState>) => this.dispatchAction('setState', state);\n resetState = () => this.dispatchAction('resetState');\n setUser = (user: User) => this.dispatchAction('setUser', user);\n\n // Login Actions\n setLoginState = (state: Partial<LoginState>) => this.dispatchAction('setLoginState', state);\n resetLoginState = () => this.dispatchAction('resetLoginState');\n requestAuthorize = (firstTime?: boolean) => this.dispatchAction('requestAuthorize', firstTime);\n loginWithRedirect = () => {\n if (this.isHostedLoginCallbackRoute()) {\n return;\n }\n this.dispatchAction('requestHostedLoginAuthorize');\n this.setState({ isLoading: true });\n };\n preLogin = (payload: IPreLogin) => this.dispatchAction('preLogin', payload);\n postLogin = (payload: IPostLogin) => this.dispatchAction('postLogin', payload);\n login = (payload: ILogin) => this.dispatchAction('login', payload);\n loginWithMfa = (payload: WithCallback<ILoginWithMfa>) => this.dispatchAction('loginWithMfa', payload);\n recoverMfa = (payload: IRecoverMFAToken) => this.dispatchAction('recoverMfa', payload);\n logout = (callback?: () => void) => this.dispatchAction('logout', callback);\n silentLogout = (callback?: () => void) => this.dispatchAction('silentLogout', callback);\n checkIfAllowToRememberMfaDevice = (payload: { mfaToken: string }) =>\n this.dispatchAction('checkIfAllowToRememberMfaDevice', payload);\n\n // Social Logins Actions\n setSocialLoginsState = (state: Partial<SocialLoginState>) => this.dispatchAction('setSocialLoginsState', state);\n resetSocialLoginsState = () => this.dispatchAction('resetSocialLoginsState');\n loadSocialLoginsConfiguration = () => this.dispatchAction('loadSocialLoginsConfiguration');\n loginViaSocialLogin = (payload: ILoginViaSocialLogin) => this.dispatchAction('loginViaSocialLogin', payload);\n setSocialLoginError = (payload: ISetSocialLoginError) => this.dispatchAction('setSocialLoginError', payload);\n\n // Activate Account Actions\n setActivateState = (state: Partial<ActivateAccountState>) => this.dispatchAction('setActivateState', state);\n resetActivateState = () => this.dispatchAction('resetActivateState');\n setActivateStrategyState = (state: Partial<ActivateAccountStrategyState>) =>\n this.dispatchAction('setActivateStrategyState', state);\n activateAccount = (payload: IActivateAccount) => this.dispatchAction('activateAccount', payload);\n resendActivationEmail = (payload: IResendActivationEmail) => this.dispatchAction('resendActivationEmail', payload);\n getActivateAccountStrategy = (\n payload: WithCallback<IGetActivateAccountStrategy, IGetActivateAccountStrategyResponse>,\n ) => this.dispatchAction('getActivateAccountStrategy', payload);\n\n // Accept Invitation Actions\n setAcceptInvitationState = (state: Partial<AcceptInvitationState>) =>\n this.dispatchAction('setAcceptInvitationState', state);\n resetAcceptInvitationState = () => this.dispatchAction('resetAcceptInvitationState');\n acceptInvitation = (payload: IAcceptInvitation) => this.dispatchAction('acceptInvitation', payload);\n\n // Forgot Password Actions\n setForgotPasswordState = (state: Partial<ForgotPasswordState>) =>\n this.dispatchAction('setForgotPasswordState', state);\n resetForgotPasswordState = () => this.dispatchAction('resetForgotPasswordState');\n forgotPassword = (payload: IForgotPassword) => this.dispatchAction('forgotPassword', payload);\n resetPassword = (payload: IResetPassword) => this.dispatchAction('resetPassword', payload);\n loadPasswordConfig = (payload?: IGetUserPasswordConfig) => this.dispatchAction('loadPasswordConfig', payload);\n\n // Sign Up Actions\n setSignUpState = (state: Partial<SignUpState>) => this.dispatchAction('setSignUpState', state);\n resetSignUpState = () => this.dispatchAction('resetSignUpState');\n signUpUser = (payload: ISignUpUser) => this.dispatchAction('signUpUser', payload);\n resetSignUpStateSoft = () => this.dispatchAction('resetSignUpStateSoft');\n\n // Profile Actions\n setProfileState = (state: Partial<ProfileState>) => this.dispatchAction('setProfileState', state);\n resetProfileState = () => this.dispatchAction('resetProfileState');\n loadProfile = () => this.dispatchAction('loadProfile');\n saveProfile = (payload: SaveProfilePayload) => this.dispatchAction('saveProfile', payload);\n changePassword = (payload: WithCallback<IChangePassword>) => this.dispatchAction('changePassword', payload);\n\n // SSO actions\n setSSOState = (state: Partial<SSOState>) => this.dispatchAction('setSSOState', state);\n resetSSOState = () => this.dispatchAction('resetSSOState');\n loadSSOConfigurations = () => this.dispatchAction('loadSSOConfigurations');\n loadSSOAuthorizationRoles = () => this.dispatchAction('loadSSOAuthorizationRoles');\n saveSSOConfigurations = (payload: SaveSSOConfigurationPayload) =>\n this.dispatchAction('saveSSOConfigurations', payload);\n saveSSOConfigurationsFile = (payload: File[]) => this.dispatchAction('saveSSOConfigurationsFile', payload);\n saveSSOConfigurationsFileWithCallback = (payload: SaveSSOConfigurationFilePayload) =>\n this.dispatchAction('saveSSOConfigurationsFileWithCallback', payload);\n validateSSODomain = (payload?: WithCallback) => this.dispatchAction('validateSSODomain', payload);\n updateSSOAuthorizationRoles = (payload: UpdateSSOAuthorizationRolesPayload) =>\n this.dispatchAction('updateSSOAuthorizationRoles', payload);\n deleteSamlGroup = (payload: DeleteSamlGroupPayload) => this.dispatchAction('deleteSamlGroup', payload);\n createSamlGroup = (payload: CreateSamlGroupPayload) => this.dispatchAction('createSamlGroup', payload);\n oidcPostlogin = (payload: IOidcPostLogin) => this.dispatchAction('oidcPostlogin', payload);\n\n // Mfa actions\n setMfaState = (state: Partial<MFAState>) => this.dispatchAction('setMfaState', state);\n resetMfaState = () => this.dispatchAction('resetMfaState');\n enrollMfa = () => this.dispatchAction('enrollMfa');\n verifyMfa = (payload: WithCallback<IVerifyMfa, string | undefined>) => this.dispatchAction('verifyMfa', payload);\n verifyMfaAfterForce = (payload: WithCallback<ILoginWithMfa, string | undefined>) =>\n this.dispatchAction('verifyMfaAfterForce', payload);\n disableMfa = (payload: WithCallback<IDisableMfa>) => this.dispatchAction('disableMfa', payload);\n\n // Team actions\n setTeamLoader = (payload: TeamStateIndicator) => this.dispatchAction('setTeamLoader', payload);\n setTeamError = (payload: TeamStateIndicator) => this.dispatchAction('setTeamError', payload);\n setTeamState = (payload: Partial<TeamState>) => this.dispatchAction('setTeamState', payload);\n resetTeamState = () => this.dispatchAction('resetTeamState');\n loadUsers = (payload: WithCallback<WithSilentLoad<ILoadUsers>, ITeamUser[]>) =>\n this.dispatchAction('loadUsers', payload);\n loadRoles = (payload?: LoadRolesAndPermissionsPayload) => this.dispatchAction('loadRoles', payload);\n addUser = (payload: WithCallback<IAddUser, ITeamUser>) => this.dispatchAction('addUser', payload);\n updateUser = (payload: WithCallback<IUpdateUser, ITeamUser>) => this.dispatchAction('updateUser', payload);\n deleteUser = (payload: WithCallback<IDeleteUser>) => this.dispatchAction('deleteUser', payload);\n resendActivationLink = (payload: WithCallback<IResendActivationLink>) =>\n this.dispatchAction('resendActivationLink', payload);\n resendInvitationLink = (payload: WithCallback<IResendInvitationLink>) =>\n this.dispatchAction('resendInvitationLink', payload);\n openAddUserDialog = (payload?: ISetAddUserDialog) => this.dispatchAction('openAddUserDialog', payload);\n closeAddUserDialog = (payload?: any) => this.dispatchAction('closeAddUserDialog', payload);\n openDeleteUserDialog = (payload?: ISetDeleteUserDialog) => this.dispatchAction('openDeleteUserDialog', payload);\n closeDeleteUserDialog = (payload?: any) => this.dispatchAction('closeDeleteUserDialog', payload);\n\n // API Token Actions\n setApiTokensLoader = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensLoader', payload);\n setApiTokensError = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensError', payload);\n setApiTokensState = (state: Partial<ApiTokensState>) => this.dispatchAction('setApiTokensState', state);\n resetApiTokensState = () => this.dispatchAction('resetApiTokensState');\n loadApiTokens = (payload?: WithSilentLoad<WithCallback>) => this.dispatchAction('loadApiTokens', payload);\n initApiTokensData = (payload: ApiTokenType) => this.dispatchAction('initApiTokensData', payload);\n addTenantApiToken = (payload: AddTenantApiTokenPayload) => this.dispatchAction('addTenantApiToken', payload);\n addUserApiToken = (payload: AddUserApiTokenPayload) => this.dispatchAction('addUserApiToken', payload);\n deleteUserApiToken = (payload: string) => this.dispatchAction('deleteUserApiToken', payload);\n deleteTenantApiToken = (payload: string) => this.dispatchAction('deleteTenantApiToken', payload);\n\n // Security Policy Actions\n setSecurityPolicyState = (state: Partial<SecurityPolicyState>) =>\n this.dispatchAction('setSecurityPolicyState', state);\n setSecurityPolicyGlobalState = (state: Partial<GlobalPolicyState>) =>\n this.dispatchAction('setSecurityPolicyGlobalState', state);\n setSecurityPolicyPublicState = (state: Partial<PublicPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPublicState', state);\n setSecurityPolicyMfaState = (state: Partial<MfaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyMfaState', state);\n setSecurityPolicyLockoutState = (state: Partial<LockoutPolicyState>) =>\n this.dispatchAction('setSecurityPolicyLockoutState', state);\n setSecurityPolicyCaptchaState = (state: Partial<CaptchaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyCaptchaState', state);\n setSecurityPolicyPasswordHistoryState = (state: Partial<PasswordHistoryPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordHistoryState', state);\n resetSecurityPolicyState = () => this.dispatchAction('resetSecurityPolicyState');\n setSecurityPolicyPasswordState = (state: Partial<PasswordPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordState', state);\n loadSecurityPolicy = () => this.dispatchAction('loadSecurityPolicy');\n loadPublicSecurityPolicy = () => this.dispatchAction('loadPublicSecurityPolicy');\n loadVendorPasswordConfig = () => this.dispatchAction('loadVendorPasswordConfig');\n loadSecurityPolicyMfa = () => this.dispatchAction('loadSecurityPolicyMfa');\n saveSecurityPolicyMfa = (payload: SaveSecurityPolicyMfaPayload) =>\n this.dispatchAction('saveSecurityPolicyMfa', payload);\n loadSecurityPolicyLockout = () => this.dispatchAction('loadSecurityPolicyLockout');\n saveSecurityPolicyLockout = (payload: SaveSecurityPolicyLockoutPayload) =>\n this.dispatchAction('saveSecurityPolicyLockout', payload);\n loadSecurityPolicyCaptcha = () => this.dispatchAction('loadSecurityPolicyCaptcha');\n loadSecurityPolicyPasswordHistory = () => this.dispatchAction('loadSecurityPolicyPasswordHistory');\n saveSecurityPolicyPasswordHistory = (payload: SaveSecurityPolicyPasswordHistoryPayload) =>\n this.dispatchAction('saveSecurityPolicyPasswordHistory', payload);\n\n // Account Settings Actions\n setAccountSettingsState = (state: Partial<AccountSettingsState>) =>\n this.dispatchAction('setAccountSettingsState', state);\n resetAccountSettingsState = () => this.dispatchAction('resetAccountSettingsState');\n loadAccountSettings = (payload?: WithCallback<WithSilentLoad<{}>>) =>\n this.dispatchAction('loadAccountSettings', payload);\n saveAccountSettings = (payload: WithCallback<ISettingsResponse, ISettingsResponse>) =>\n this.dispatchAction('saveAccountSettings', payload);\n\n // Tenants Actions\n setTenantsState = (state: Partial<TenantsState>) => this.dispatchAction('setTenantsState', state);\n resetTenantsState = () => this.dispatchAction('resetTenantsState');\n switchTenant = (payload: WithCallback<ISwitchTenant>) => this.dispatchAction('switchTenant', payload);\n loadTenants = (payload?: WithCallback<{}, ITenantsResponse[]>) => this.dispatchAction('loadTenants', payload);\n\n // Roles Actions\n setRolesState = (state: RolesState) => this.dispatchAction('setRolesState', state);\n resetRolesState = () => this.dispatchAction('resetRolesState');\n loadRolesAndPermissions = (payload?: WithSilentLoad<{}>) => this.dispatchAction('loadRolesAndPermissions', payload);\n addRole = (payload: WithCallback<IAddRole, IRole>) => this.dispatchAction('addRole', payload);\n updateRole = (payload: WithCallback<IUpdateRole, IRole>) => this.dispatchAction('updateRole', payload);\n deleteRole = (payload: WithCallback<IDeleteRole>) => this.dispatchAction('deleteRole', payload);\n attachPermissionsToRole = (payload: WithCallback<IAttachPermissionsToRole, IRole>) =>\n this.dispatchAction('attachPermissionsToRole', payload);\n\n attachPermissionToRoles = (\n payload: WithCallback<{\n permissionId: string;\n roleIds: string[];\n },\n IRolePermission>,\n ) => this.dispatchAction('attachPermissionToRoles', payload);\n}\n","import {\n AfterContentInit,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n } from '@angular/core';\n import { FronteggAuthService } from '../frontegg-auth.service';\n \n @Directive({\n selector: '[authorizedContent]',\n })\n export class AuthorizedContentDirective implements AfterContentInit {\n private _roles: string[] = [];\n \n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef,\n private fronteggAuthService: FronteggAuthService\n ) {}\n \n @Input()\n set authorizedContent(roles: string[]) {\n this._roles = roles;\n }\n \n ngAfterContentInit() {\n this.fronteggAuthService.user$.subscribe((user) => {\n if (user?.roles?.some((role) => this._roles.includes(role.name))) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n } else {\n this.viewContainer.clear();\n }\n });\n }\n }\n ","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport { EnhancedStore, SubscriptionsState, subscriptionsStoreName, SubscriptionState } from '@frontegg/redux-store';\n\nexport interface CheckoutDialogState {\n loading: boolean;\n open: boolean;\n success: boolean;\n error: string | null;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggSubscriptionService {\n private subscriptionStateSubject = new BehaviorSubject<SubscriptionState>({} as SubscriptionState);\n\n private checkoutStateSubject = new BehaviorSubject<CheckoutDialogState>({\n loading: false,\n open: false,\n success: false,\n error: null,\n });\n\n get subscriptionState$(): Observable<SubscriptionState> {\n return this.subscriptionStateSubject.asObservable();\n }\n\n get checkoutState$(): Observable<CheckoutDialogState> {\n return this.checkoutStateSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService) {\n // Memoized Subscription State\n this.fronteggAppService.subscriptionsState$.subscribe((subscriptionState: SubscriptionsState) => {\n if (subscriptionState != null) {\n const { billing: { subscription }, checkout: checkoutState } = subscriptionState;\n\n if (!FastDeepEqual(this.subscriptionStateSubject.getValue(), subscription)) {\n this.subscriptionStateSubject.next(subscription);\n }\n\n const checkoutSubjectState = this.checkoutStateSubject.getValue();\n if (checkoutSubjectState.loading !== checkoutState.loading) {\n this.checkoutStateSubject.next({\n ...checkoutSubjectState,\n loading: checkoutState.loading,\n });\n }\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${subscriptionsStoreName}/${type}`, payload });\n }\n\n public loadSubscription = () => this.dispatchAction('billing/subscription/loadSubscription');\n\n public openCheckout = (plan: string): void => {\n this.checkoutStateSubject.next({\n loading: false,\n open: true,\n success: false,\n error: null,\n });\n this.fronteggAppService.showCheckoutDialog({\n plan,\n onSuccess: () => {\n this.checkoutStateSubject.next({\n loading: false,\n open: false,\n success: true,\n error: null,\n });\n },\n onError: (error) => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n error,\n });\n },\n onClose: () => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n open: false,\n });\n },\n });\n };\n\n public hideCheckout = (): void => {\n this.fronteggAppService.hideCheckoutDialog();\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { FronteggAppOptionsClass, FronteggAppService } from './frontegg-app.service';\nimport { FronteggComponent } from './frontegg.component';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { FronteggAuthGuard } from './guards/frontegg-auth.guard';\nimport { FronteggAuthService } from './frontegg-auth.service';\nimport { AuthorizedContentDirective } from './directives/authorized-content.directive';\nimport { FronteggSubscriptionService } from './frontegg-subscription.services';\n\n@NgModule({\n imports: [CommonModule, RouterModule],\n declarations: [FronteggComponent, AuthorizedContentDirective],\n exports: [FronteggComponent, AuthorizedContentDirective],\n})\nexport class FronteggAppModule {\n static forRoot(config: FronteggAppOptions): ModuleWithProviders<FronteggAppModule> {\n return {\n ngModule: FronteggAppModule,\n providers: [\n FronteggAppService,\n FronteggAuthGuard,\n FronteggLoadGuard,\n FronteggAuthService,\n FronteggSubscriptionService,\n {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\n * Public API Surface of frontegg-app\n */\n\nexport { FronteggAppModule } from './lib/frontegg-app.module';\nexport { FronteggAppService } from './lib/frontegg-app.service';\nexport { FronteggComponent } from './lib/frontegg.component';\nexport { FronteggAuthService } from './lib/frontegg-auth.service';\nexport { FronteggSubscriptionService } from './lib/frontegg-subscription.services';\nexport * from './lib/directives/authorized-content.directive';\nexport * from './lib/guards/frontegg-auth.guard';\nexport * from './lib/guards/frontegg-load.guard';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {FronteggAppOptionsClass as ɵa} from './lib/frontegg-app.service';\nexport {FronteggBaseGuard as ɵb} from './lib/guards/frontegg-base-guard';"],"names":[],"mappings":";;;;;;;;;;;;MAMa,iBAAiB;IAC5B,YAAsB,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;KAC3D;IAED,WAAW,CAAC,KAA6B,EAAE,KAA0B;QACnE,OAAO,IAAI,UAAU,CAAU,GAAG;YAChC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO;gBAClD,IAAI,CAAC,OAAO,EAAE;oBACZ,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAChB;aACF,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ;;;YAbF,UAAU;;;YAFF,kBAAkB;;;MCKd,iBAAiB;;;YAL7B,SAAS,SAAC;;gBAET,QAAQ,EAAE,UAAU;gBACpB,QAAQ,EAAE,EAAE;aACb;;;MCGY,uBAAuB;IAApC;QACE,mBAAc,GAAyC;YACrD,OAAO,EAAE,iCAAiC;SAC3C,CAAC;KACH;CAAA;MAKY,kBAAkB;IAiD7B,YAAqD,MAA0B,EAAS,MAAc,EAAU,MAAc;QAAzE,WAAM,GAAN,MAAM,CAAoB;QAAS,WAAM,GAAN,MAAM,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAQ;QA9CtH,qBAAgB,GAAG,IAAI,eAAe,CAAU,IAAI,CAAC,CAAC;QACtD,2BAAsB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QAC7D,iBAAY,GAAG,IAAI,eAAe,CAAgB,EAAmB,CAAC,CAAC;QACvE,qBAAgB,GAAG,IAAI,eAAe,CAAwB;YACpE,SAAS,EAAE,IAAI;YACf,eAAe,EAAE,KAAK;SACE,CAAC,CAAC;QACpB,uBAAkB,GAAG,IAAI,eAAe,CAA0B,EAA6B,CAAC,CAAC;QACjG,6BAAwB,GAAG,IAAI,eAAe,CAAgC,EAAmC,CAAC,CAAC;QACnH,8BAAyB,GAAG,IAAI,eAAe,CAAiC,EAAoC,CAAC,CAAC;QACtH,uBAAkB,GAAG,IAAI,eAAe,CAA0B,EAA6B,CAAC,CAAC;QAqCvG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,KAAK,CAAC,iFAAiF,CAAC,CAAC;SAChG;QAED,IAAK,MAAc,CAAC,cAAc,EAAE;YAClC,IAAI,CAAC,MAAM,GAAI,MAAc,CAAC,cAAc,CAAC;SAC9C;QACD,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,IAAsB;YACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE;gBACjD,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;aAC5C;YAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;gBACjB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;aAC7B;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;oBACd,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;wBACjB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;qBACvD;yBAAM;wBACL,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;qBACjC;iBACF,CAAC,CAAC;aACJ;SACF,CAAC;QACF,aAAa,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,UAAU,iBAC3B,YAAY,IACT,IAAI,CAAC,MAAM,EACd,CAAC;;QAIH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,GAAG,IAAI,CAAC,iBAAiB;YACzB;gBACE,IAAI,EAAE,EAAE;gBACR,WAAW,EAAE,CAAE,iBAAiB,CAAE;gBAClC,QAAQ,EAAE,CAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAE;aACpC;SACF,CAAC,CAAC;QACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;QAChF,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;;QAEvC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC;YAC/B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC,CAAC;SACtE,CAAC,CAAC;KACJ;IAlFD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;KACzC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;KAC/C;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;KACrD;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,CAAC;KACtD;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;KAC/C;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;;IAGD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,CAAC;KACnD;;IAqDO,WAAW,CAAC,aAA4B;QAC9C,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE;YACrE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC1D;QACD,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,aAAa,CAAC,IAAI,CAAC,eAAe,EAAE;YACjF,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACtE;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KACpD;IAED,IAAI,iBAAiB;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,OAAQ,MAAM,CAAC,IAAI,CAAC,UAAU,CAA8B;aACzD,MAAM,CAAC,CAAC,GAAyB,KAAK,GAAG,KAAK,kBAAkB,IAAI,GAAG,KAAK,kBAAkB,IAAI,GAAG,IAAI,IAAI,CAAC;aAC9G,GAAG,CAAC,CAAC,GAAyB;;YAAK,QAAC;gBACnC,IAAI,EAAE,MAAA,UAAU,CAAC,GAAG,CAAC,0CAAE,SAAS,CAAC,CAAC,CAAC;gBACnC,SAAS,EAAE,iBAAiB;aAC7B,EAAC;SAAA,CAAC,CAAC;KACP;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;KACtD;;IAGM,eAAe;QACpB,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;KACpC;;IAGM,eAAe;;QACpB,MAAA,IAAI,CAAC,WAAW,0CAAE,eAAe,EAAE,CAAC;KACrC;;IAGM,kBAAkB,CAAC,IAAmC;QAC3D,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;KAC3C;;IAGM,kBAAkB;;QACvB,MAAA,IAAI,CAAC,WAAW,0CAAE,kBAAkB,EAAE,CAAC;KACxC;;;;YAvJF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;4CAkDc,MAAM,SAAC,uBAAuB;YAnE7B,MAAM;YADO,MAAM;;;MCGb,iBAAiB;IAKrC,KAAK,CAAC,GAAQ;QACZ,MAAM,GAAG,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACvC,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACvB;IAED,SAAS,CAAC,IAAa;QACrB,MAAM,GAAG,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAEvC,OAAO,GAAG;aACP,SAAS,CAAC,IAAI,CAAC;aACf,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;aACrB,OAAO,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;KAChD;;;MCpBU,iBAAkB,SAAQ,iBAAiB;IAEtD,YAAsB,kBAAsC,EAAY,MAAc,EAAY,MAAc;QAC9G,KAAK,EAAE,CAAC;QADY,uBAAkB,GAAlB,kBAAkB,CAAoB;QAAY,WAAM,GAAN,MAAM,CAAQ;QAAY,WAAM,GAAN,MAAM,CAAQ;KAE/G;IAED,aAAa,CAAC,WAAmB;QAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,GAAG,eAAe,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;KAC5H;IAED,WAAW,CAAC,KAA6B,EAAE,KAA0B;QACnE,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC;QAC9B,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM;YAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,eAAwB;gBAC7G,IAAI,eAAe,EAAE;oBACnB,OAAO,CAAC,IAAI,CAAC,CAAC;iBACf;qBAAM;oBACL,IAAI,MAAM,CAAC,eAAe,EAAE,EAAE;wBAC5B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;qBACjC;yBAAM;wBACL,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;4BACd,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;yBACjC,CAAC,CAAC;qBACJ;oBACD,MAAM,CAAC,cAAc,CAAC,CAAC;iBACxB;aACF,CAAC,CAAC;YACH,YAAY,CAAC,WAAW,EAAE,CAAC;SAC5B,CAAC,CAAC;KACJ;;;YA9BF,UAAU;;;YAHF,kBAAkB;YAHM,MAAM;YADlB,MAAM;;;MC0Gd,mBAAmB;IA0H9B,YAAoB,kBAAsC,EAAU,MAAc;QAA9D,uBAAkB,GAAlB,kBAAkB,CAAoB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAzH1E,qBAAgB,GAAG,IAAI,eAAe,CAAY,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAe,CAAC,CAAC;QAC5G,iCAA4B,GAAG,IAAI,eAAe,CAAqC,EAAwC,CAAC,CAAC;QACjI,gCAA2B,GAAG,IAAI,eAAe,CAAoC,EAAuC,CAAC,CAAC;QAC9H,yBAAoB,GAAG,IAAI,eAAe,CAA6B,EAAgC,CAAC,CAAC;QACzG,0BAAqB,GAAG,IAAI,eAAe,CAA8B,EAAiC,CAAC,CAAC;QAC5G,+BAA0B,GAAG,IAAI,eAAe,CAAmC,EAAsC,CAAC,CAAC;QAC3H,sBAAiB,GAAG,IAAI,eAAe,CAA0B,EAA6B,CAAC,CAAC;QAChG,oBAAe,GAAG,IAAI,eAAe,CAAwB,EAA2B,CAAC,CAAC;QAC1F,wBAAmB,GAAG,IAAI,eAAe,CAA4B,EAA+B,CAAC,CAAC;QACtG,sBAAiB,GAAG,IAAI,eAAe,CAA0B,EAA6B,CAAC,CAAC;QAChG,kBAAa,GAAG,IAAI,eAAe,CAAsB,EAAyB,CAAC,CAAC;QACpF,+BAA0B,GAAG,IAAI,eAAe,CAAmC,EAAsC,CAAC,CAAC;QAC3H,uBAAkB,GAAG,IAAI,eAAe,CAA2B,EAA8B,CAAC,CAAC;QACnG,4BAAuB,GAAG,IAAI,eAAe,CAAgC,EAAmC,CAAC,CAAC;QAClH,oBAAe,GAAG,IAAI,eAAe,CAAwB,EAA2B,CAAC,CAAC;QAC1F,qBAAgB,GAAG,IAAI,eAAe,CAAyB,EAA4B,CAAC,CAAC;QAC7F,wBAAmB,GAAG,IAAI,eAAe,CAA4B,EAA+B,CAAC,CAAC;QACtG,gBAAW,GAAG,IAAI,eAAe,CAAoB,EAAuB,CAAC,CAAC;QAC9E,2BAAsB,GAAG,IAAI,eAAe,CAA+B,KAAK,CAAC,CAAC;QAClF,qBAAgB,GAAG,IAAI,eAAe,CAAyB,IAAI,CAAC,CAAC;QACrE,qBAAgB,GAAG,IAAI,eAAe,CAAyB,KAAK,CAAC,CAAC;QACtE,kBAAa,GAAG,IAAI,eAAe,CAAsB,EAAE,CAAC,CAAC;;QAqKrE,aAAQ,GAAG,CAAC,KAAyB,KAAK,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACjF,eAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACrD,YAAO,GAAG,CAAC,IAAU,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;;QAG/D,kBAAa,GAAG,CAAC,KAA0B,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAC5F,oBAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC/D,qBAAgB,GAAG,CAAC,SAAmB,KAAK,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC/F,sBAAiB,GAAG;YAClB,IAAI,IAAI,CAAC,0BAA0B,EAAE,EAAE;gBACrC,OAAO;aACR;YACD,IAAI,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;SACpC,CAAC;QACF,aAAQ,GAAG,CAAC,OAAkB,KAAK,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC5E,cAAS,GAAG,CAAC,OAAmB,KAAK,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC/E,UAAK,GAAG,CAAC,OAAe,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnE,iBAAY,GAAG,CAAC,OAAoC,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACtG,eAAU,GAAG,CAAC,OAAyB,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvF,WAAM,GAAG,CAAC,QAAqB,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5E,iBAAY,GAAG,CAAC,QAAqB,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACxF,oCAA+B,GAAG,CAAC,OAA6B,KAC9D,IAAI,CAAC,cAAc,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;;QAGlE,yBAAoB,GAAG,CAAC,KAAgC,KAAK,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAChH,2BAAsB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;QAC7E,kCAA6B,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,+BAA+B,CAAC,CAAC;QAC3F,wBAAmB,GAAG,CAAC,OAA6B,KAAK,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC7G,wBAAmB,GAAG,CAAC,OAA6B,KAAK,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;;QAG7G,qBAAgB,GAAG,CAAC,KAAoC,KAAK,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAC5G,uBAAkB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACrE,6BAAwB,GAAG,CAAC,KAA4C,KACtE,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACzD,oBAAe,GAAG,CAAC,OAAyB,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACjG,0BAAqB,GAAG,CAAC,OAA+B,KAAK,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACnH,+BAA0B,GAAG,CAC3B,OAAuF,KACpF,IAAI,CAAC,cAAc,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;;QAGhE,6BAAwB,GAAG,CAAC,KAAqC,KAC/D,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACzD,+BAA0B,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAAC;QACrF,qBAAgB,GAAG,CAAC,OAA0B,KAAK,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;;QAGpG,2BAAsB,GAAG,CAAC,KAAmC,KAC3D,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACvD,6BAAwB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;QACjF,mBAAc,GAAG,CAAC,OAAwB,KAAK,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC9F,kBAAa,GAAG,CAAC,OAAuB,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC3F,uBAAkB,GAAG,CAAC,OAAgC,KAAK,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;;QAG9G,mBAAc,GAAG,CAAC,KAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAC/F,qBAAgB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACjE,eAAU,GAAG,CAAC,OAAoB,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAClF,yBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;;QAGzE,oBAAe,GAAG,CAAC,KAA4B,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAClG,sBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QACnE,gBAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACvD,gBAAW,GAAG,CAAC,OAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC3F,mBAAc,GAAG,CAAC,OAAsC,KAAK,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;;QAG5G,gBAAW,GAAG,CAAC,KAAwB,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACtF,kBAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAC3D,0BAAqB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QAC3E,8BAAyB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;QACnF,0BAAqB,GAAG,CAAC,OAAoC,KAC3D,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACxD,8BAAyB,GAAG,CAAC,OAAe,KAAK,IAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;QAC3G,0CAAqC,GAAG,CAAC,OAAwC,KAC/E,IAAI,CAAC,cAAc,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;QACxE,sBAAiB,GAAG,CAAC,OAAsB,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAClG,gCAA2B,GAAG,CAAC,OAA2C,KACxE,IAAI,CAAC,cAAc,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;QAC9D,oBAAe,GAAG,CAAC,OAA+B,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACvG,oBAAe,GAAG,CAAC,OAA+B,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACvG,kBAAa,GAAG,CAAC,OAAuB,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;;QAG3F,gBAAW,GAAG,CAAC,KAAwB,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACtF,kBAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAC3D,cAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACnD,cAAS,GAAG,CAAC,OAAqD,KAAK,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACjH,wBAAmB,GAAG,CAAC,OAAwD,KAC7E,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACtD,eAAU,GAAG,CAAC,OAAkC,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;;QAGhG,kBAAa,GAAG,CAAC,OAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC/F,iBAAY,GAAG,CAAC,OAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC7F,iBAAY,GAAG,CAAC,OAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC7F,mBAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC7D,cAAS,GAAG,CAAC,OAA8D,KACzE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5C,cAAS,GAAG,CAAC,OAAwC,KAAK,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpG,YAAO,GAAG,CAAC,OAA0C,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAClG,eAAU,GAAG,CAAC,OAA6C,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC3G,eAAU,GAAG,CAAC,OAAkC,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAChG,yBAAoB,GAAG,CAAC,OAA4C,KAClE,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QACvD,yBAAoB,GAAG,CAAC,OAA4C,KAClE,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QACvD,sBAAiB,GAAG,CAAC,OAA2B,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACvG,uBAAkB,GAAG,CAAC,OAAa,KAAK,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QAC3F,yBAAoB,GAAG,CAAC,OAA8B,KAAK,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAChH,0BAAqB,GAAG,CAAC,OAAa,KAAK,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;;QAGjG,uBAAkB,GAAG,CAAC,OAA0B,KAAK,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACxG,sBAAiB,GAAG,CAAC,OAA0B,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACtG,sBAAiB,GAAG,CAAC,KAA8B,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QACxG,wBAAmB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC;QACvE,kBAAa,GAAG,CAAC,OAAsC,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC1G,sBAAiB,GAAG,CAAC,OAAqB,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACjG,sBAAiB,GAAG,CAAC,OAAiC,KAAK,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAC7G,oBAAe,GAAG,CAAC,OAA+B,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACvG,uBAAkB,GAAG,CAAC,OAAe,KAAK,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QAC7F,yBAAoB,GAAG,CAAC,OAAe,KAAK,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;;QAGjG,2BAAsB,GAAG,CAAC,KAAmC,KAC3D,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACvD,iCAA4B,GAAG,CAAC,KAAiC,KAC/D,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QAC7D,iCAA4B,GAAG,CAAC,KAAiC,KAC/D,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QAC7D,8BAAyB,GAAG,CAAC,KAA8B,KACzD,IAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAC1D,kCAA6B,GAAG,CAAC,KAAkC,KACjE,IAAI,CAAC,cAAc,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QAC9D,kCAA6B,GAAG,CAAC,KAAkC,KACjE,IAAI,CAAC,cAAc,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QAC9D,0CAAqC,GAAG,CAAC,KAA0C,KACjF,IAAI,CAAC,cAAc,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;QACtE,6BAAwB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;QACjF,mCAA8B,GAAG,CAAC,KAAmC,KACnE,IAAI,CAAC,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QAC/D,uBAAkB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACrE,6BAAwB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;QACjF,6BAAwB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;QACjF,0BAAqB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QAC3E,0BAAqB,GAAG,CAAC,OAAqC,KAC5D,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACxD,8BAAyB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;QACnF,8BAAyB,GAAG,CAAC,OAAyC,KACpE,IAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;QAC5D,8BAAyB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;QACnF,sCAAiC,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mCAAmC,CAAC,CAAC;QACnG,sCAAiC,GAAG,CAAC,OAAiD,KACpF,IAAI,CAAC,cAAc,CAAC,mCAAmC,EAAE,OAAO,CAAC,CAAC;;QAGpE,4BAAuB,GAAG,CAAC,KAAoC,KAC7D,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QACxD,8BAAyB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;QACnF,wBAAmB,GAAG,CAAC,OAA0C,KAC/D,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACtD,wBAAmB,GAAG,CAAC,OAA2D,KAChF,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;;QAGtD,oBAAe,GAAG,CAAC,KAA4B,KAAK,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAClG,sBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QACnE,iBAAY,GAAG,CAAC,OAAoC,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACtG,gBAAW,GAAG,CAAC,OAA8C,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;;QAG9G,kBAAa,GAAG,CAAC,KAAiB,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QACnF,oBAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC/D,4BAAuB,GAAG,CAAC,OAA4B,KAAK,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACpH,YAAO,GAAG,CAAC,OAAsC,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9F,eAAU,GAAG,CAAC,OAAyC,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvG,eAAU,GAAG,CAAC,OAAkC,KAAK,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAChG,4BAAuB,GAAG,CAAC,OAAsD,KAC/E,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QAE1D,4BAAuB,GAAG,CACxB,OAIkB,KACf,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QA/P3D,MAAM,aAAa,GAAoB;YACrC,EAAE,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,IAAI,CAAC,4BAA4B,EAAE;YAC9E,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE;YAC5E,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE;YAC9D,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE;YAChE,EAAE,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;YAC1E,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE;YAC5D,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE;YACxD,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE;YACpD,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE;YAC5D,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE;YACxD,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE;YAChD,EAAE,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;YAC1E,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE;YAC1D,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE;YACpE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE;YACpD,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACtD,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5C,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACtD,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE;SACjD,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;QACpF,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;;QAE5C,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAmB,CAAC;YACvF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;SAChD,CAAC,CAAC;KACJ;IA/HD,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;IAED,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,4BAA4B,CAAC,YAAY,EAAE,CAAC;KACzD;IAED,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,CAAC;KACxD;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;KACjD;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,CAAC;KAClD;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;KACvD;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KAC9C;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;KAC5C;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;KAChD;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KAC9C;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAC1C;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;KACvD;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;KAC/C;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,CAAC;KACpD;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;KAC5C;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;KAChD;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;KACxC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KACvE;IAGD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,CAAC;KACnD;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC;KAClF;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAC1C;IAkCO,WAAW,CAAC,SAAoB,EAAE,aAA8B;QAEtE,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,KAAK,SAAS,EAAE;YAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACvC;QACD,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE;YACxC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC7E,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;aAC1D;SACF;QACD,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,KAAK,SAAS,CAAC,eAAe,EAAE;YACnE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;SAC7D;QACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,KAAK,SAAS,CAAC,SAAS,EAAE;YACvD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;SACjD;KACF;IAEO,cAAc,CAAC,IAAY,EAAE,OAAa;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;;QAExD,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAG,aAAa,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;KAC/D;IAGM,0BAA0B;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC;QAChD,MAAM,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,sBAAsB,CAAC;QACzF,OAAO,IAAI,CAAC,UAAU,CAAC,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,iBAAiB,CAAC,CAAC;KACrE;;;;YA1LF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;YAvGQ,kBAAkB;YAsFlB,MAAM;;;MC5EA,0BAA0B;IAGrC,YACU,WAA6B,EAC7B,aAA+B,EAC/B,mBAAwC;QAFxC,gBAAW,GAAX,WAAW,CAAkB;QAC7B,kBAAa,GAAb,aAAa,CAAkB;QAC/B,wBAAmB,GAAnB,mBAAmB,CAAqB;QAL1C,WAAM,GAAa,EAAE,CAAC;KAM1B;IAEJ,IACI,iBAAiB,CAAC,KAAe;QACnC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI;;YAC5C,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;gBAChE,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aACzD;iBAAM;gBACL,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;aAC5B;SACF,CAAC,CAAC;KACJ;;;YAzBF,SAAS,SAAC;gBACT,QAAQ,EAAE,qBAAqB;aAChC;;;YAPC,WAAW;YACX,gBAAgB;YAET,mBAAmB;;;gCAczB,KAAK;;;MCLG,2BAA2B;IAkBtC,YAAoB,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAjBlD,6BAAwB,GAAG,IAAI,eAAe,CAAoB,EAAuB,CAAC,CAAC;QAE3F,yBAAoB,GAAG,IAAI,eAAe,CAAsB;YACtE,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAqCI,qBAAgB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uCAAuC,CAAC,CAAC;QAEtF,iBAAY,GAAG,CAAC,IAAY;YACjC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAC7B,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YACH,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC;gBACzC,IAAI;gBACJ,SAAS,EAAE;oBACT,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;wBAC7B,OAAO,EAAE,KAAK;wBACd,IAAI,EAAE,KAAK;wBACX,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,IAAI;qBACZ,CAAC,CAAC;iBACJ;gBACD,OAAO,EAAE,CAAC,KAAK;oBACb,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACtD,IAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,aAAa,KAChB,KAAK,IACL,CAAC;iBACJ;gBACD,OAAO,EAAE;oBACP,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACtD,IAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,aAAa,KAChB,IAAI,EAAE,KAAK,IACX,CAAC;iBACJ;aACF,CAAC,CAAC;SACJ,CAAC;QAEK,iBAAY,GAAG;YACpB,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;SAC9C,CAAC;;QA/DA,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,iBAAqC;YAC1F,IAAI,iBAAiB,IAAI,IAAI,EAAE;gBAC7B,MAAM,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAAC;gBAEjF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,EAAE;oBAC1E,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;iBAClD;gBAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBAClE,IAAI,oBAAoB,CAAC,OAAO,KAAK,aAAa,CAAC,OAAO,EAAE;oBAC1D,IAAI,CAAC,oBAAoB,CAAC,IAAI,iCACzB,oBAAoB,KACvB,OAAO,EAAE,aAAa,CAAC,OAAO,IAC9B,CAAC;iBACJ;aACF;SACF,CAAC,CAAC;KACJ;IA3BD,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;KACrD;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;KACjD;IAuBO,cAAc,CAAC,IAAY,EAAE,OAAa;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;;QAExD,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAG,sBAAsB,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;KACxE;;;;YA9CF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;YAbQ,kBAAkB;;;MCed,iBAAiB;IAC5B,OAAO,OAAO,CAAC,MAA0B;QACvC,OAAO;YACL,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE;gBACT,kBAAkB;gBAClB,iBAAiB;gBACjB,iBAAiB;gBACjB,mBAAmB;gBACnB,2BAA2B;gBAC3B;oBACE,OAAO,EAAE,uBAAuB;oBAChC,QAAQ,EAAE,MAAM;iBACjB;aACF;SACF,CAAC;KACH;;;YArBF,QAAQ,SAAC;gBACR,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;gBACrC,YAAY,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;gBAC7D,OAAO,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;aACzD;;;AChBD;;;;ACAA;;;;;;"}
1
+ {"version":3,"file":"frontegg-angular.js","sources":["../../../../projects/frontegg-app/src/lib/guards/frontegg-load.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg.component.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.service.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-base-guard.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-auth.guard.ts","../../../../projects/frontegg-app/src/lib/frontegg-auth.service.ts","../../../../projects/frontegg-app/src/lib/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-subscription.services.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts","../../../../projects/frontegg-app/src/public-api.ts","../../../../projects/frontegg-app/src/frontegg-angular.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggAppService } from '../frontegg-app.service';\n\n@Injectable()\nexport class FronteggLoadGuard implements CanActivate {\n constructor(protected fronteggAppService: FronteggAppService) {\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n return new Observable<boolean>(obs => {\n this.fronteggAppService.isLoading$.subscribe(loading => {\n if (!loading) {\n obs.next(true);\n }\n });\n });\n }\n}\n","import { Component } from '@angular/core';\n\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'frontegg',\n template: ``,\n})\nexport class FronteggComponent {\n}\n","import { Inject, Injectable, NgZone } from '@angular/core';\nimport { Route, Router } from '@angular/router';\nimport { FronteggApp, initialize } from '@frontegg/js';\nimport { AuthPageRoutes, FronteggState } from '@frontegg/redux-store';\nimport { FronteggAppOptions, FronteggCheckoutDialogOptions } from '@frontegg/types';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { ContextHolder, RedirectOptions } from '@frontegg/rest-api';\nimport { FronteggComponent } from './frontegg.component';\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://sub-domain.frontegg.com',\n };\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAppService {\n fronteggApp: FronteggApp;\n\n private isLoadingSubject = new BehaviorSubject<boolean>(true);\n private isAuthenticatedSubject = new BehaviorSubject<boolean>(false);\n private stateSubject = new BehaviorSubject<FronteggState>({} as FronteggState);\n private authStateSubject = new BehaviorSubject<FronteggState['auth']>({\n isLoading: true,\n isAuthenticated: false,\n } as FronteggState['auth']);\n private auditsStateSubject = new BehaviorSubject<FronteggState['audits']>({} as FronteggState['audits']);\n private connectivityStateSubject = new BehaviorSubject<FronteggState['connectivity']>({} as FronteggState['connectivity']);\n private subscriptionsStateSubject = new BehaviorSubject<FronteggState['subscriptions']>({} as FronteggState['subscriptions']);\n private vendorStateSubject = new BehaviorSubject<FronteggState['vendor']>({} as FronteggState['vendor']);\n\n\n get state$(): Observable<FronteggState> {\n return this.stateSubject.asObservable();\n }\n\n get authState$(): Observable<FronteggState['auth']> {\n return this.authStateSubject.asObservable();\n }\n\n get auditsState$(): Observable<FronteggState['audits']> {\n return this.auditsStateSubject.asObservable();\n }\n\n get connectivityState$(): Observable<FronteggState['connectivity']> {\n return this.connectivityStateSubject.asObservable();\n }\n\n get subscriptionsState$(): Observable<FronteggState['subscriptions']> {\n return this.subscriptionsStateSubject.asObservable();\n }\n\n get vendorState$(): Observable<FronteggState['vendor']> {\n return this.vendorStateSubject.asObservable();\n }\n\n get isLoading$(): Observable<boolean> {\n return this.isLoadingSubject.asObservable();\n };\n\n\n get isAuthenticated$(): Observable<boolean> {\n return this.isAuthenticatedSubject.asObservable();\n };\n\n constructor(@Inject(FronteggAppOptionsClass) private config: FronteggAppOptions, public router: Router, private ngZone: NgZone) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\n\n if ((window as any).CYPRESS_CONFIG) {\n this.config = (window as any).CYPRESS_CONFIG;\n }\n const onRedirectTo = (to: string, opts?: RedirectOptions) => {\n const baseName = window.location.origin;\n let path = to;\n if (path.startsWith(baseName) && baseName !== '/') {\n path = path.substring(baseName.length - 1);\n }\n\n if (opts?.refresh) {\n window.location.href = path;\n } else {\n this.ngZone.run(() => {\n if (opts?.replace) {\n this.router.navigateByUrl(path, { replaceUrl: true });\n } else {\n this.router.navigateByUrl(path);\n }\n });\n }\n };\n ContextHolder.setOnRedirectTo(onRedirectTo);\n this.fronteggApp = initialize({\n onRedirectTo,\n ...this.config,\n });\n\n\n // Add all login box routes to Angular router config\n this.router.resetConfig([\n ...this.mapAuthComponents,\n {\n path: '',\n canActivate: [ FronteggLoadGuard ],\n children: [ ...this.router.config ],\n },\n ]);\n const initialFronteggState = this.fronteggApp.store.getState() as FronteggState;\n this.updateState(initialFronteggState);\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n this.updateState(this.fronteggApp.store.getState() as FronteggState);\n });\n }\n\n private updateState(fronteggStore: FronteggState): void {\n if (this.isLoadingSubject.getValue() !== fronteggStore.auth.isLoading) {\n this.isLoadingSubject.next(fronteggStore.auth.isLoading);\n }\n if (this.isAuthenticatedSubject.getValue() !== fronteggStore.auth.isAuthenticated) {\n this.isAuthenticatedSubject.next(fronteggStore.auth.isAuthenticated);\n }\n\n this.stateSubject.next(fronteggStore);\n this.authStateSubject.next(fronteggStore.auth);\n this.auditsStateSubject.next(fronteggStore.audits);\n this.connectivityStateSubject.next(fronteggStore.connectivity);\n this.subscriptionsStateSubject.next(fronteggStore.subscriptions);\n this.vendorStateSubject.next(fronteggStore.vendor);\n }\n\n get mapAuthComponents(): Route[] {\n const authRoutes = this.authRoutes;\n return (Object.keys(authRoutes) as (keyof AuthPageRoutes)[])\n .filter((key: keyof AuthPageRoutes) => key !== 'authenticatedUrl' && key !== 'signUpSuccessUrl' && key != null)\n .map((key: keyof AuthPageRoutes) => ({\n path: authRoutes[key]?.substring(1),\n component: FronteggComponent,\n }));\n }\n\n get authRoutes(): AuthPageRoutes {\n return this.fronteggApp.store.getState().auth.routes;\n }\n\n // Open admin portal\n public showAdminPortal(): void {\n this.fronteggApp.showAdminPortal();\n }\n\n // Open admin portal\n public hideAdminPortal(): void {\n this.fronteggApp?.hideAdminPortal();\n }\n\n // Open checkout dialog\n public showCheckoutDialog(opts: FronteggCheckoutDialogOptions): void {\n this.fronteggApp.showCheckoutDialog(opts);\n }\n\n // Open checkout dialog\n public hideCheckoutDialog(): void {\n this.fronteggApp?.hideCheckoutDialog();\n }\n}\n","import { ActivatedRouteSnapshot, CanActivate, DefaultUrlSerializer, Router, RouterStateSnapshot, UrlSerializer, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport abstract class FronteggBaseGuard implements UrlSerializer, CanActivate {\n\n abstract canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)\n : Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;\n\n parse(url: any): UrlTree {\n const dus = new DefaultUrlSerializer();\n return dus.parse(url);\n }\n\n serialize(tree: UrlTree): any {\n const dus = new DefaultUrlSerializer();\n\n return dus\n .serialize(tree)\n .replace(/%40/gi, '@')\n .replace(/%3A/gi, ':')\n .replace(/%24/gi, '$')\n .replace(/%2C/gi, ',')\n .replace(/%3B/gi, ';')\n .replace(/%2B/gi, '+')\n .replace(/%3D/gi, '=')\n .replace(/%3F/gi, '?')\n .replace(/%2F/gi, '/')\n .replace(/(https?):\\/([\\w\\d])/gi, '$1://$2');\n }\n}\n","import { Injectable, NgZone } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { FronteggBaseGuard } from './frontegg-base-guard';\nimport { FronteggAppService } from '../frontegg-app.service';\nimport { take } from 'rxjs/operators';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router, protected ngZone: NgZone) {\n super();\n }\n\n navigateToUrl(redirectUrl: string): void {\n this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(redirectUrl));\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n const redirectUrl = state.url;\n return new Promise<boolean>((resolve, reject) => {\n const subscription = this.fronteggAppService.isAuthenticated$.pipe(take(1)).subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n resolve(true);\n } else {\n if (NgZone.isInAngularZone()) {\n this.navigateToUrl(redirectUrl);\n } else {\n this.ngZone.run(() => {\n this.navigateToUrl(redirectUrl);\n });\n }\n reject('unauthorized');\n }\n });\n subscription.unsubscribe();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport {\n RolesState,\n TenantsState,\n AccountSettingsState,\n SaveSecurityPolicyPasswordHistoryPayload,\n SaveSecurityPolicyLockoutPayload,\n SaveSecurityPolicyMfaPayload,\n PasswordPolicyState,\n PasswordHistoryPolicyState,\n MfaPolicyState,\n CaptchaPolicyState,\n LockoutPolicyState,\n PublicPolicyState,\n GlobalPolicyState,\n SecurityPolicyState,\n AddUserApiTokenPayload,\n AddTenantApiTokenPayload,\n ApiTokenType,\n ApiTokensState,\n ApiStateIndicator,\n ISetDeleteUserDialog,\n ISetAddUserDialog,\n LoadRolesAndPermissionsPayload,\n TeamState,\n TeamStateIndicator,\n MFAState,\n SaveSSOConfigurationPayload,\n SSOState,\n ProfileState,\n SaveSSOConfigurationFilePayload,\n UpdateSSOAuthorizationRolesPayload,\n DeleteSamlGroupPayload,\n CreateSamlGroupPayload,\n SaveProfilePayload,\n SignUpState,\n ForgotPasswordState,\n AcceptInvitationState,\n AuthState,\n User,\n authStoreName,\n LoginState,\n ActivateAccountStrategyState,\n EnhancedStore,\n} from '@frontegg/redux-store';\nimport {\n ILogin,\n ILoginWithMfa,\n IPostLogin,\n IPreLogin,\n IRecoverMFAToken,\n IActivateAccount,\n ILoginViaSocialLogin,\n ISetSocialLoginError,\n IResendActivationEmail,\n IGetActivateAccountStrategy,\n IGetActivateAccountStrategyResponse,\n IAcceptInvitation,\n IForgotPassword,\n IResetPassword,\n IGetUserPasswordConfig,\n ISignUpUser,\n IChangePassword,\n IOidcPostLogin,\n IVerifyMfa,\n IDisableMfa,\n ILoadUsers,\n ITeamUser,\n IAddUser,\n IUpdateUser,\n IDeleteUser,\n IResendActivationLink,\n ISettingsResponse,\n ISwitchTenant,\n ITenantsResponse,\n IAddRole,\n IRole,\n IUpdateRole,\n IDeleteRole,\n IAttachPermissionsToRole,\n IResendInvitationLink,\n IRolePermission,\n} from '@frontegg/rest-api';\nimport type { FronteggState, ActivateAccountState, SocialLoginState } from '@frontegg/redux-store';\nimport { Observable } from 'rxjs';\nimport { Router } from '@angular/router';\n\ninterface AuthSubStates {\n field: Partial<keyof AuthState>;\n subject: BehaviorSubject<any>;\n}\n\nexport type WithCallback<T = {}, R = boolean> = T & {\n callback?: (data: R | null, error?: string) => void;\n};\n\nexport type WithSilentLoad<T> = T & {\n silentLoading?: boolean;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggAuthService {\n private authStateSubject = new BehaviorSubject<AuthState>({ isAuthenticated: false, isLoading: true } as AuthState);\n private acceptInvitationStateSubject = new BehaviorSubject<AuthState['acceptInvitationState']>({} as AuthState['acceptInvitationState']);\n private accountSettingsStateSubject = new BehaviorSubject<AuthState['accountSettingsState']>({} as AuthState['accountSettingsState']);\n private activateStateSubject = new BehaviorSubject<AuthState['activateState']>({} as AuthState['activateState']);\n private apiTokensStateSubject = new BehaviorSubject<AuthState['apiTokensState']>({} as AuthState['apiTokensState']);\n private forgotPasswordStateSubject = new BehaviorSubject<AuthState['forgotPasswordState']>({} as AuthState['forgotPasswordState']);\n private loginStateSubject = new BehaviorSubject<AuthState['loginState']>({} as AuthState['loginState']);\n private mfaStateSubject = new BehaviorSubject<AuthState['mfaState']>({} as AuthState['mfaState']);\n private profileStateSubject = new BehaviorSubject<AuthState['profileState']>({} as AuthState['profileState']);\n private rolesStateSubject = new BehaviorSubject<AuthState['rolesState']>({} as AuthState['rolesState']);\n private routesSubject = new BehaviorSubject<AuthState['routes']>({} as AuthState['routes']);\n private securityPolicyStateSubject = new BehaviorSubject<AuthState['securityPolicyState']>({} as AuthState['securityPolicyState']);\n private signUpStateSubject = new BehaviorSubject<AuthState['signUpState']>({} as AuthState['signUpState']);\n private socialLoginStateSubject = new BehaviorSubject<AuthState['socialLoginState']>({} as AuthState['socialLoginState']);\n private ssoStateSubject = new BehaviorSubject<AuthState['ssoState']>({} as AuthState['ssoState']);\n private teamStateSubject = new BehaviorSubject<AuthState['teamState']>({} as AuthState['teamState']);\n private tenantsStateSubject = new BehaviorSubject<AuthState['tenantsState']>({} as AuthState['tenantsState']);\n private userSubject = new BehaviorSubject<AuthState['user']>({} as AuthState['user']);\n private isAuthenticatedSubject = new BehaviorSubject<AuthState['isAuthenticated']>(false);\n private isLoadingSubject = new BehaviorSubject<AuthState['isLoading']>(true);\n private isSSOAuthSubject = new BehaviorSubject<AuthState['isSSOAuth']>(false);\n private ssoACSSubject = new BehaviorSubject<AuthState['ssoACS']>('');\n\n\n get authState$(): Observable<AuthState> {\n return this.authStateSubject.asObservable();\n }\n\n get acceptInvitationState$(): Observable<AuthState['acceptInvitationState']> {\n return this.acceptInvitationStateSubject.asObservable();\n }\n\n get accountSettingsState$(): Observable<AuthState['accountSettingsState']> {\n return this.accountSettingsStateSubject.asObservable();\n }\n\n get activateState$(): Observable<AuthState['activateState']> {\n return this.activateStateSubject.asObservable();\n }\n\n get apiTokensState$(): Observable<AuthState['apiTokensState']> {\n return this.apiTokensStateSubject.asObservable();\n }\n\n get forgotPasswordState$(): Observable<AuthState['forgotPasswordState']> {\n return this.forgotPasswordStateSubject.asObservable();\n }\n\n get loginState$(): Observable<AuthState['loginState']> {\n return this.loginStateSubject.asObservable();\n }\n\n get mfaState$(): Observable<AuthState['mfaState']> {\n return this.mfaStateSubject.asObservable();\n }\n\n get profileState$(): Observable<AuthState['profileState']> {\n return this.profileStateSubject.asObservable();\n }\n\n get rolesState$(): Observable<AuthState['rolesState']> {\n return this.rolesStateSubject.asObservable();\n }\n\n get routesState$(): Observable<AuthState['routes']> {\n return this.routesSubject.asObservable();\n }\n\n get securityPolicyState$(): Observable<AuthState['securityPolicyState']> {\n return this.securityPolicyStateSubject.asObservable();\n }\n\n get signUpState$(): Observable<AuthState['signUpState']> {\n return this.signUpStateSubject.asObservable();\n }\n\n get socialLoginState$(): Observable<AuthState['socialLoginState']> {\n return this.socialLoginStateSubject.asObservable();\n }\n\n get ssoState$(): Observable<AuthState['ssoState']> {\n return this.ssoStateSubject.asObservable();\n }\n\n get teamState$(): Observable<AuthState['teamState']> {\n return this.teamStateSubject.asObservable();\n }\n\n get tenantsState$(): Observable<AuthState['tenantsState']> {\n return this.tenantsStateSubject.asObservable();\n }\n\n get user$(): Observable<AuthState['user']> {\n return this.userSubject.asObservable();\n }\n\n get user(): AuthState['user'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.user;\n }\n\n\n get isAuthenticated$(): Observable<AuthState['isAuthenticated']> {\n return this.isAuthenticatedSubject.asObservable();\n }\n\n get isAuthenticated(): AuthState['isAuthenticated'] {\n return this.fronteggAppService.fronteggApp.store.getState().auth.isAuthenticated;\n }\n\n get isLoading$(): Observable<AuthState['isLoading']> {\n return this.isLoadingSubject.asObservable();\n }\n\n get isSSOAuth$(): Observable<AuthState['isSSOAuth']> {\n return this.isSSOAuthSubject.asObservable();\n }\n\n get ssoACS$(): Observable<AuthState['ssoACS']> {\n return this.ssoACSSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService, private router: Router) {\n const authSubStates: AuthSubStates[] = [\n { field: 'acceptInvitationState', subject: this.acceptInvitationStateSubject },\n { field: 'accountSettingsState', subject: this.accountSettingsStateSubject },\n { field: 'activateState', subject: this.activateStateSubject },\n { field: 'apiTokensState', subject: this.apiTokensStateSubject },\n { field: 'forgotPasswordState', subject: this.forgotPasswordStateSubject },\n { field: 'tenantsState', subject: this.tenantsStateSubject },\n { field: 'loginState', subject: this.loginStateSubject },\n { field: 'mfaState', subject: this.mfaStateSubject },\n { field: 'profileState', subject: this.profileStateSubject },\n { field: 'rolesState', subject: this.rolesStateSubject },\n { field: 'routes', subject: this.routesSubject },\n { field: 'securityPolicyState', subject: this.securityPolicyStateSubject },\n { field: 'signUpState', subject: this.signUpStateSubject },\n { field: 'socialLoginState', subject: this.socialLoginStateSubject },\n { field: 'ssoState', subject: this.ssoStateSubject },\n { field: 'teamState', subject: this.teamStateSubject },\n { field: 'user', subject: this.userSubject },\n { field: 'isSSOAuth', subject: this.isSSOAuthSubject },\n { field: 'ssoACS', subject: this.ssoACSSubject },\n ];\n\n const state = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(state.auth, authSubStates);\n // Memoized Auth State\n this.fronteggAppService.fronteggApp.store.subscribe(() => {\n const newState = this.fronteggAppService.fronteggApp.store.getState() as FronteggState;\n this.updateState(newState.auth, authSubStates);\n });\n }\n\n private updateState(authState: AuthState, authSubStates: AuthSubStates[]): void {\n\n if (this.authStateSubject.value !== authState) {\n this.authStateSubject.next(authState);\n }\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.value, authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n if (this.isAuthenticatedSubject.value !== authState.isAuthenticated) {\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n }\n if (this.isLoadingSubject.value !== authState.isLoading) {\n this.isLoadingSubject.next(authState.isLoading);\n }\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\n }\n\n\n public isHostedLoginCallbackRoute(): boolean {\n const path = this.fronteggAppService.router.url;\n const hostedLoginRedirectUrl = this.fronteggAppService.authRoutes.hostedLoginRedirectUrl;\n return path.startsWith(hostedLoginRedirectUrl ?? '/oauth/callback');\n }\n\n\n // Root Actions\n setState = (state: Partial<AuthState>) => this.dispatchAction('setState', state);\n resetState = () => this.dispatchAction('resetState');\n setUser = (user: User) => this.dispatchAction('setUser', user);\n\n // Login Actions\n setLoginState = (state: Partial<LoginState>) => this.dispatchAction('setLoginState', state);\n resetLoginState = () => this.dispatchAction('resetLoginState');\n requestAuthorize = (firstTime?: boolean) => this.dispatchAction('requestAuthorize', firstTime);\n loginWithRedirect = () => {\n if (this.isHostedLoginCallbackRoute()) {\n return;\n }\n this.dispatchAction('requestHostedLoginAuthorize');\n this.setState({ isLoading: true });\n };\n preLogin = (payload: IPreLogin) => this.dispatchAction('preLogin', payload);\n postLogin = (payload: IPostLogin) => this.dispatchAction('postLogin', payload);\n login = (payload: ILogin) => this.dispatchAction('login', payload);\n loginWithMfa = (payload: WithCallback<ILoginWithMfa>) => this.dispatchAction('loginWithMfa', payload);\n recoverMfa = (payload: IRecoverMFAToken) => this.dispatchAction('recoverMfa', payload);\n logout = (callback?: () => void) => this.dispatchAction('logout', callback);\n silentLogout = (callback?: () => void) => this.dispatchAction('silentLogout', callback);\n checkIfAllowToRememberMfaDevice = (payload: { mfaToken: string }) =>\n this.dispatchAction('checkIfAllowToRememberMfaDevice', payload);\n\n // Social Logins Actions\n setSocialLoginsState = (state: Partial<SocialLoginState>) => this.dispatchAction('setSocialLoginsState', state);\n resetSocialLoginsState = () => this.dispatchAction('resetSocialLoginsState');\n loadSocialLoginsConfiguration = () => this.dispatchAction('loadSocialLoginsConfiguration');\n loginViaSocialLogin = (payload: ILoginViaSocialLogin) => this.dispatchAction('loginViaSocialLogin', payload);\n setSocialLoginError = (payload: ISetSocialLoginError) => this.dispatchAction('setSocialLoginError', payload);\n\n // Activate Account Actions\n setActivateState = (state: Partial<ActivateAccountState>) => this.dispatchAction('setActivateState', state);\n resetActivateState = () => this.dispatchAction('resetActivateState');\n setActivateStrategyState = (state: Partial<ActivateAccountStrategyState>) =>\n this.dispatchAction('setActivateStrategyState', state);\n activateAccount = (payload: IActivateAccount) => this.dispatchAction('activateAccount', payload);\n resendActivationEmail = (payload: IResendActivationEmail) => this.dispatchAction('resendActivationEmail', payload);\n getActivateAccountStrategy = (\n payload: WithCallback<IGetActivateAccountStrategy, IGetActivateAccountStrategyResponse>,\n ) => this.dispatchAction('getActivateAccountStrategy', payload);\n\n // Accept Invitation Actions\n setAcceptInvitationState = (state: Partial<AcceptInvitationState>) =>\n this.dispatchAction('setAcceptInvitationState', state);\n resetAcceptInvitationState = () => this.dispatchAction('resetAcceptInvitationState');\n acceptInvitation = (payload: IAcceptInvitation) => this.dispatchAction('acceptInvitation', payload);\n\n // Forgot Password Actions\n setForgotPasswordState = (state: Partial<ForgotPasswordState>) =>\n this.dispatchAction('setForgotPasswordState', state);\n resetForgotPasswordState = () => this.dispatchAction('resetForgotPasswordState');\n forgotPassword = (payload: IForgotPassword) => this.dispatchAction('forgotPassword', payload);\n resetPassword = (payload: IResetPassword) => this.dispatchAction('resetPassword', payload);\n loadPasswordConfig = (payload?: IGetUserPasswordConfig) => this.dispatchAction('loadPasswordConfig', payload);\n\n // Sign Up Actions\n setSignUpState = (state: Partial<SignUpState>) => this.dispatchAction('setSignUpState', state);\n resetSignUpState = () => this.dispatchAction('resetSignUpState');\n signUpUser = (payload: ISignUpUser) => this.dispatchAction('signUpUser', payload);\n resetSignUpStateSoft = () => this.dispatchAction('resetSignUpStateSoft');\n\n // Profile Actions\n setProfileState = (state: Partial<ProfileState>) => this.dispatchAction('setProfileState', state);\n resetProfileState = () => this.dispatchAction('resetProfileState');\n loadProfile = () => this.dispatchAction('loadProfile');\n saveProfile = (payload: SaveProfilePayload) => this.dispatchAction('saveProfile', payload);\n changePassword = (payload: WithCallback<IChangePassword>) => this.dispatchAction('changePassword', payload);\n\n // SSO actions\n setSSOState = (state: Partial<SSOState>) => this.dispatchAction('setSSOState', state);\n resetSSOState = () => this.dispatchAction('resetSSOState');\n loadSSOConfigurations = () => this.dispatchAction('loadSSOConfigurations');\n loadSSOAuthorizationRoles = () => this.dispatchAction('loadSSOAuthorizationRoles');\n saveSSOConfigurations = (payload: SaveSSOConfigurationPayload) =>\n this.dispatchAction('saveSSOConfigurations', payload);\n saveSSOConfigurationsFile = (payload: File[]) => this.dispatchAction('saveSSOConfigurationsFile', payload);\n saveSSOConfigurationsFileWithCallback = (payload: SaveSSOConfigurationFilePayload) =>\n this.dispatchAction('saveSSOConfigurationsFileWithCallback', payload);\n validateSSODomain = (payload?: WithCallback) => this.dispatchAction('validateSSODomain', payload);\n updateSSOAuthorizationRoles = (payload: UpdateSSOAuthorizationRolesPayload) =>\n this.dispatchAction('updateSSOAuthorizationRoles', payload);\n deleteSamlGroup = (payload: DeleteSamlGroupPayload) => this.dispatchAction('deleteSamlGroup', payload);\n createSamlGroup = (payload: CreateSamlGroupPayload) => this.dispatchAction('createSamlGroup', payload);\n oidcPostlogin = (payload: IOidcPostLogin) => this.dispatchAction('oidcPostlogin', payload);\n\n // Mfa actions\n setMfaState = (state: Partial<MFAState>) => this.dispatchAction('setMfaState', state);\n resetMfaState = () => this.dispatchAction('resetMfaState');\n enrollMfa = () => this.dispatchAction('enrollMfa');\n verifyMfa = (payload: WithCallback<IVerifyMfa, string | undefined>) => this.dispatchAction('verifyMfa', payload);\n verifyMfaAfterForce = (payload: WithCallback<ILoginWithMfa, string | undefined>) =>\n this.dispatchAction('verifyMfaAfterForce', payload);\n disableMfa = (payload: WithCallback<IDisableMfa>) => this.dispatchAction('disableMfa', payload);\n\n // Team actions\n setTeamLoader = (payload: TeamStateIndicator) => this.dispatchAction('setTeamLoader', payload);\n setTeamError = (payload: TeamStateIndicator) => this.dispatchAction('setTeamError', payload);\n setTeamState = (payload: Partial<TeamState>) => this.dispatchAction('setTeamState', payload);\n resetTeamState = () => this.dispatchAction('resetTeamState');\n loadUsers = (payload: WithCallback<WithSilentLoad<ILoadUsers>, ITeamUser[]>) =>\n this.dispatchAction('loadUsers', payload);\n loadRoles = (payload?: LoadRolesAndPermissionsPayload) => this.dispatchAction('loadRoles', payload);\n addUser = (payload: WithCallback<IAddUser, ITeamUser>) => this.dispatchAction('addUser', payload);\n updateUser = (payload: WithCallback<IUpdateUser, ITeamUser>) => this.dispatchAction('updateUser', payload);\n deleteUser = (payload: WithCallback<IDeleteUser>) => this.dispatchAction('deleteUser', payload);\n resendActivationLink = (payload: WithCallback<IResendActivationLink>) =>\n this.dispatchAction('resendActivationLink', payload);\n resendInvitationLink = (payload: WithCallback<IResendInvitationLink>) =>\n this.dispatchAction('resendInvitationLink', payload);\n openAddUserDialog = (payload?: ISetAddUserDialog) => this.dispatchAction('openAddUserDialog', payload);\n closeAddUserDialog = (payload?: any) => this.dispatchAction('closeAddUserDialog', payload);\n openDeleteUserDialog = (payload?: ISetDeleteUserDialog) => this.dispatchAction('openDeleteUserDialog', payload);\n closeDeleteUserDialog = (payload?: any) => this.dispatchAction('closeDeleteUserDialog', payload);\n\n // API Token Actions\n setApiTokensLoader = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensLoader', payload);\n setApiTokensError = (payload: ApiStateIndicator) => this.dispatchAction('setApiTokensError', payload);\n setApiTokensState = (state: Partial<ApiTokensState>) => this.dispatchAction('setApiTokensState', state);\n resetApiTokensState = () => this.dispatchAction('resetApiTokensState');\n loadApiTokens = (payload?: WithSilentLoad<WithCallback>) => this.dispatchAction('loadApiTokens', payload);\n initApiTokensData = (payload: ApiTokenType) => this.dispatchAction('initApiTokensData', payload);\n addTenantApiToken = (payload: AddTenantApiTokenPayload) => this.dispatchAction('addTenantApiToken', payload);\n addUserApiToken = (payload: AddUserApiTokenPayload) => this.dispatchAction('addUserApiToken', payload);\n deleteUserApiToken = (payload: string) => this.dispatchAction('deleteUserApiToken', payload);\n deleteTenantApiToken = (payload: string) => this.dispatchAction('deleteTenantApiToken', payload);\n\n // Security Policy Actions\n setSecurityPolicyState = (state: Partial<SecurityPolicyState>) =>\n this.dispatchAction('setSecurityPolicyState', state);\n setSecurityPolicyGlobalState = (state: Partial<GlobalPolicyState>) =>\n this.dispatchAction('setSecurityPolicyGlobalState', state);\n setSecurityPolicyPublicState = (state: Partial<PublicPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPublicState', state);\n setSecurityPolicyMfaState = (state: Partial<MfaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyMfaState', state);\n setSecurityPolicyLockoutState = (state: Partial<LockoutPolicyState>) =>\n this.dispatchAction('setSecurityPolicyLockoutState', state);\n setSecurityPolicyCaptchaState = (state: Partial<CaptchaPolicyState>) =>\n this.dispatchAction('setSecurityPolicyCaptchaState', state);\n setSecurityPolicyPasswordHistoryState = (state: Partial<PasswordHistoryPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordHistoryState', state);\n resetSecurityPolicyState = () => this.dispatchAction('resetSecurityPolicyState');\n setSecurityPolicyPasswordState = (state: Partial<PasswordPolicyState>) =>\n this.dispatchAction('setSecurityPolicyPasswordState', state);\n loadSecurityPolicy = () => this.dispatchAction('loadSecurityPolicy');\n loadPublicSecurityPolicy = () => this.dispatchAction('loadPublicSecurityPolicy');\n loadVendorPasswordConfig = () => this.dispatchAction('loadVendorPasswordConfig');\n loadSecurityPolicyMfa = () => this.dispatchAction('loadSecurityPolicyMfa');\n saveSecurityPolicyMfa = (payload: SaveSecurityPolicyMfaPayload) =>\n this.dispatchAction('saveSecurityPolicyMfa', payload);\n loadSecurityPolicyLockout = () => this.dispatchAction('loadSecurityPolicyLockout');\n saveSecurityPolicyLockout = (payload: SaveSecurityPolicyLockoutPayload) =>\n this.dispatchAction('saveSecurityPolicyLockout', payload);\n loadSecurityPolicyCaptcha = () => this.dispatchAction('loadSecurityPolicyCaptcha');\n loadSecurityPolicyPasswordHistory = () => this.dispatchAction('loadSecurityPolicyPasswordHistory');\n saveSecurityPolicyPasswordHistory = (payload: SaveSecurityPolicyPasswordHistoryPayload) =>\n this.dispatchAction('saveSecurityPolicyPasswordHistory', payload);\n\n // Account Settings Actions\n setAccountSettingsState = (state: Partial<AccountSettingsState>) =>\n this.dispatchAction('setAccountSettingsState', state);\n resetAccountSettingsState = () => this.dispatchAction('resetAccountSettingsState');\n loadAccountSettings = (payload?: WithCallback<WithSilentLoad<{}>>) =>\n this.dispatchAction('loadAccountSettings', payload);\n saveAccountSettings = (payload: WithCallback<ISettingsResponse, ISettingsResponse>) =>\n this.dispatchAction('saveAccountSettings', payload);\n\n // Tenants Actions\n setTenantsState = (state: Partial<TenantsState>) => this.dispatchAction('setTenantsState', state);\n resetTenantsState = () => this.dispatchAction('resetTenantsState');\n switchTenant = (payload: WithCallback<ISwitchTenant>) => this.dispatchAction('switchTenant', payload);\n loadTenants = (payload?: WithCallback<{}, ITenantsResponse[]>) => this.dispatchAction('loadTenants', payload);\n\n // Roles Actions\n setRolesState = (state: RolesState) => this.dispatchAction('setRolesState', state);\n resetRolesState = () => this.dispatchAction('resetRolesState');\n loadRolesAndPermissions = (payload?: WithSilentLoad<{}>) => this.dispatchAction('loadRolesAndPermissions', payload);\n addRole = (payload: WithCallback<IAddRole, IRole>) => this.dispatchAction('addRole', payload);\n updateRole = (payload: WithCallback<IUpdateRole, IRole>) => this.dispatchAction('updateRole', payload);\n deleteRole = (payload: WithCallback<IDeleteRole>) => this.dispatchAction('deleteRole', payload);\n attachPermissionsToRole = (payload: WithCallback<IAttachPermissionsToRole, IRole>) =>\n this.dispatchAction('attachPermissionsToRole', payload);\n\n attachPermissionToRoles = (\n payload: WithCallback<{\n permissionId: string;\n roleIds: string[];\n },\n IRolePermission>,\n ) => this.dispatchAction('attachPermissionToRoles', payload);\n}\n","import {\n AfterContentInit,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n } from '@angular/core';\n import { FronteggAuthService } from '../frontegg-auth.service';\n \n @Directive({\n selector: '[authorizedContent]',\n })\n export class AuthorizedContentDirective implements AfterContentInit {\n private _roles: string[] = [];\n \n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef,\n private fronteggAuthService: FronteggAuthService\n ) {}\n \n @Input()\n set authorizedContent(roles: string[]) {\n this._roles = roles;\n }\n \n ngAfterContentInit() {\n this.fronteggAuthService.user$.subscribe((user) => {\n if (user?.roles?.some((role) => this._roles.includes(role.name))) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n } else {\n this.viewContainer.clear();\n }\n });\n }\n }\n ","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FronteggAppService } from './frontegg-app.service';\nimport FastDeepEqual from 'fast-deep-equal';\nimport { EnhancedStore, SubscriptionsState, subscriptionsStoreName, SubscriptionState } from '@frontegg/redux-store';\n\nexport interface CheckoutDialogState {\n loading: boolean;\n open: boolean;\n success: boolean;\n error: string | null;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FronteggSubscriptionService {\n private subscriptionStateSubject = new BehaviorSubject<SubscriptionState>({} as SubscriptionState);\n\n private checkoutStateSubject = new BehaviorSubject<CheckoutDialogState>({\n loading: false,\n open: false,\n success: false,\n error: null,\n });\n\n get subscriptionState$(): Observable<SubscriptionState> {\n return this.subscriptionStateSubject.asObservable();\n }\n\n get checkoutState$(): Observable<CheckoutDialogState> {\n return this.checkoutStateSubject.asObservable();\n }\n\n constructor(private fronteggAppService: FronteggAppService) {\n // Memoized Subscription State\n this.fronteggAppService.subscriptionsState$.subscribe((subscriptionState: SubscriptionsState) => {\n if (subscriptionState != null) {\n const { billing: { subscription }, checkout: checkoutState } = subscriptionState;\n\n if (!FastDeepEqual(this.subscriptionStateSubject.getValue(), subscription)) {\n this.subscriptionStateSubject.next(subscription);\n }\n\n const checkoutSubjectState = this.checkoutStateSubject.getValue();\n if (checkoutSubjectState.loading !== checkoutState.loading) {\n this.checkoutStateSubject.next({\n ...checkoutSubjectState,\n loading: checkoutState.loading,\n });\n }\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store = this.fronteggAppService.fronteggApp.store;\n // @ts-ignore\n store.dispatch({ type: `${subscriptionsStoreName}/${type}`, payload });\n }\n\n public loadSubscription = () => this.dispatchAction('billing/subscription/loadSubscription');\n\n public openCheckout = (plan: string): void => {\n this.checkoutStateSubject.next({\n loading: false,\n open: true,\n success: false,\n error: null,\n });\n this.fronteggAppService.showCheckoutDialog({\n plan,\n onSuccess: () => {\n this.checkoutStateSubject.next({\n loading: false,\n open: false,\n success: true,\n error: null,\n });\n },\n onError: (error) => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n error,\n });\n },\n onClose: () => {\n const checkoutState = this.checkoutStateSubject.value;\n this.checkoutStateSubject.next({\n ...checkoutState,\n open: false,\n });\n },\n });\n };\n\n public hideCheckout = (): void => {\n this.fronteggAppService.hideCheckoutDialog();\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { FronteggAppOptionsClass, FronteggAppService } from './frontegg-app.service';\nimport { FronteggComponent } from './frontegg.component';\nimport { FronteggLoadGuard } from './guards/frontegg-load.guard';\nimport { FronteggAuthGuard } from './guards/frontegg-auth.guard';\nimport { FronteggAuthService } from './frontegg-auth.service';\nimport { AuthorizedContentDirective } from './directives/authorized-content.directive';\nimport { FronteggSubscriptionService } from './frontegg-subscription.services';\n\n@NgModule({\n imports: [CommonModule, RouterModule],\n declarations: [FronteggComponent, AuthorizedContentDirective],\n exports: [FronteggComponent, AuthorizedContentDirective],\n})\nexport class FronteggAppModule {\n static forRoot(config: FronteggAppOptions): ModuleWithProviders<FronteggAppModule> {\n return {\n ngModule: FronteggAppModule,\n providers: [\n FronteggAppService,\n FronteggAuthGuard,\n FronteggLoadGuard,\n FronteggAuthService,\n FronteggSubscriptionService,\n {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n","/*\n * Public API Surface of frontegg-app\n */\n\nexport { FronteggAppModule } from './lib/frontegg-app.module';\nexport { FronteggAppService } from './lib/frontegg-app.service';\nexport { FronteggComponent } from './lib/frontegg.component';\nexport { FronteggAuthService } from './lib/frontegg-auth.service';\nexport { FronteggSubscriptionService } from './lib/frontegg-subscription.services';\nexport * from './lib/directives/authorized-content.directive';\nexport * from './lib/guards/frontegg-auth.guard';\nexport * from './lib/guards/frontegg-load.guard';\nexport { ContextHolder } from '@frontegg/rest-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {FronteggAppOptionsClass as ɵa} from './lib/frontegg-app.service';\nexport {FronteggBaseGuard as ɵb} from './lib/guards/frontegg-base-guard';"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"FronteggAppModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":12},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":13,"character":26}],"declarations":[{"__symbolic":"reference","name":"FronteggComponent"},{"__symbolic":"reference","name":"AuthorizedContentDirective"}],"exports":[{"__symbolic":"reference","name":"FronteggComponent"},{"__symbolic":"reference","name":"AuthorizedContentDirective"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"FronteggAppModule"},"providers":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","name":"FronteggAuthGuard"},{"__symbolic":"reference","name":"FronteggLoadGuard"},{"__symbolic":"reference","name":"FronteggAuthService"},{"__symbolic":"reference","name":"FronteggSubscriptionService"},{"provide":{"__symbolic":"reference","name":"ɵa"},"useValue":{"__symbolic":"reference","name":"config"}}]}}}},"ɵa":{"__symbolic":"class","members":{}},"FronteggAppService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":16,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":68,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵa"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@frontegg/types","name":"FronteggAppOptions","line":68,"character":63},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":68,"character":98},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":68,"character":122}]}],"updateState":[{"__symbolic":"method"}],"showAdminPortal":[{"__symbolic":"method"}],"hideAdminPortal":[{"__symbolic":"method"}],"showCheckoutDialog":[{"__symbolic":"method"}],"hideCheckoutDialog":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FronteggComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"frontegg","template":""}]}],"members":{}},"FronteggAuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":103,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":228,"character":78}]}],"updateState":[{"__symbolic":"method"}],"dispatchAction":[{"__symbolic":"method"}],"isHostedLoginCallbackRoute":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FronteggSubscriptionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"}]}],"dispatchAction":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"AuthorizedContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":9,"character":3},"arguments":[{"selector":"[authorizedContent]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":17,"character":29},{"__symbolic":"reference","name":"FronteggAuthService"}]}],"authorizedContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":5}}]}],"ngAfterContentInit":[{"__symbolic":"method"}]}},"FronteggAuthGuard":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":10,"character":82},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":10,"character":108}]}],"navigateToUrl":[{"__symbolic":"method"}],"canActivate":[{"__symbolic":"method"}]}},"FronteggLoadGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"}]}],"canActivate":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"canActivate":[{"__symbolic":"method"}],"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}}},"origins":{"FronteggAppModule":"./lib/frontegg-app.module","ɵa":"./lib/frontegg-app.service","FronteggAppService":"./lib/frontegg-app.service","FronteggComponent":"./lib/frontegg.component","FronteggAuthService":"./lib/frontegg-auth.service","FronteggSubscriptionService":"./lib/frontegg-subscription.services","AuthorizedContentDirective":"./lib/directives/authorized-content.directive","FronteggAuthGuard":"./lib/guards/frontegg-auth.guard","FronteggLoadGuard":"./lib/guards/frontegg-load.guard","ɵb":"./lib/guards/frontegg-base-guard"},"importAs":"@frontegg/angular"}
1
+ {"__symbolic":"module","version":4,"exports":[{"export":[{"name":"ContextHolder","as":"ContextHolder"}],"from":"@frontegg/rest-api"}],"metadata":{"FronteggAppModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":12},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":13,"character":26}],"declarations":[{"__symbolic":"reference","name":"FronteggComponent"},{"__symbolic":"reference","name":"AuthorizedContentDirective"}],"exports":[{"__symbolic":"reference","name":"FronteggComponent"},{"__symbolic":"reference","name":"AuthorizedContentDirective"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"FronteggAppModule"},"providers":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","name":"FronteggAuthGuard"},{"__symbolic":"reference","name":"FronteggLoadGuard"},{"__symbolic":"reference","name":"FronteggAuthService"},{"__symbolic":"reference","name":"FronteggSubscriptionService"},{"provide":{"__symbolic":"reference","name":"ɵa"},"useValue":{"__symbolic":"reference","name":"config"}}]}}}},"ɵa":{"__symbolic":"class","members":{}},"FronteggAppService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":16,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":68,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵa"}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@frontegg/types","name":"FronteggAppOptions","line":68,"character":63},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":68,"character":98},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":68,"character":122}]}],"updateState":[{"__symbolic":"method"}],"showAdminPortal":[{"__symbolic":"method"}],"hideAdminPortal":[{"__symbolic":"method"}],"showCheckoutDialog":[{"__symbolic":"method"}],"hideCheckoutDialog":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FronteggComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"frontegg","template":""}]}],"members":{}},"FronteggAuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":103,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":228,"character":78}]}],"updateState":[{"__symbolic":"method"}],"dispatchAction":[{"__symbolic":"method"}],"isHostedLoginCallbackRoute":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FronteggSubscriptionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"}]}],"dispatchAction":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"AuthorizedContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":9,"character":3},"arguments":[{"selector":"[authorizedContent]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":17,"character":29},{"__symbolic":"reference","name":"FronteggAuthService"}]}],"authorizedContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":5}}]}],"ngAfterContentInit":[{"__symbolic":"method"}]}},"FronteggAuthGuard":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":10,"character":82},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":10,"character":108}]}],"navigateToUrl":[{"__symbolic":"method"}],"canActivate":[{"__symbolic":"method"}]}},"FronteggLoadGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FronteggAppService"}]}],"canActivate":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"canActivate":[{"__symbolic":"method"}],"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}}},"origins":{"FronteggAppModule":"./lib/frontegg-app.module","ɵa":"./lib/frontegg-app.service","FronteggAppService":"./lib/frontegg-app.service","FronteggComponent":"./lib/frontegg.component","FronteggAuthService":"./lib/frontegg-auth.service","FronteggSubscriptionService":"./lib/frontegg-subscription.services","AuthorizedContentDirective":"./lib/directives/authorized-content.directive","FronteggAuthGuard":"./lib/guards/frontegg-auth.guard","FronteggLoadGuard":"./lib/guards/frontegg-load.guard","ɵb":"./lib/guards/frontegg-base-guard"},"importAs":"@frontegg/angular"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@frontegg/angular",
3
- "version": "5.7.1",
3
+ "version": "5.8.0-alpha.3612311350",
4
4
  "license": "MIT",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=12.0.0",
7
7
  "@angular/core": ">=12.0.0"
8
8
  },
9
9
  "dependencies": {
10
- "@frontegg/js": "6.46.0",
10
+ "@frontegg/js": "6.48.0",
11
11
  "csstype": "^3.0.8",
12
12
  "fast-deep-equal": "^3.1.3",
13
13
  "stream": "^0.0.2",
package/public-api.d.ts CHANGED
@@ -6,4 +6,5 @@ export { FronteggSubscriptionService } from './lib/frontegg-subscription.service
6
6
  export * from './lib/directives/authorized-content.directive';
7
7
  export * from './lib/guards/frontegg-auth.guard';
8
8
  export * from './lib/guards/frontegg-load.guard';
9
+ export { ContextHolder } from '@frontegg/rest-api';
9
10
  //# sourceMappingURL=public-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../../projects/frontegg-app/src/public-api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,cAAc,+CAA+C,CAAC;AAC9D,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC"}
1
+ {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../../projects/frontegg-app/src/public-api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,cAAc,+CAA+C,CAAC;AAC9D,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
package/CHANGELOG.md DELETED
@@ -1,65 +0,0 @@
1
- # Change Log
2
-
3
- ## [5.7.1](https://github.com/frontegg/frontegg-angular/compare/v5.7.0...v5.7.1) (2022-11-28)
4
-
5
- - FR-9750 - change api according to the new names security tabs
6
- - FR-9717 - update rest api to have optional name in add user payload - and make sure to not send name if not exist
7
- - FR-9826 - fix table header in dark theme
8
- - FR-9237 - Max length for secret fields increased to 100
9
- - FR-9742 - enroll mfa list
10
- - FR-9772 - Send NULL on profilePictureUrl rather than null
11
- - FR-9717 - Invite user customize form API
12
- - FR-9597 - Webhooks - missing validation error on UI when added not allowed URL
13
-
14
-
15
- ## [5.7.0](https://github.com/frontegg/frontegg-angular/compare/v5.6.0...v5.7.0) (2022-11-23)
16
-
17
- - Added support for admin portal pre-defined theme options (dark, vivid, modern, and classic themes)
18
- - Added support for customizing admin portal navigation hover color
19
- - Fixed typo of Andorra country in countries dropdown
20
- - Fixed select popup alignment issue
21
- - Changed no local authentication feature to also hide the sign-up form when there is no local authentication option (use only social logins and SSO for signing up)
22
- - Added mock for feature flags API for admin portal preview mode
23
- - Fixed resend invitation and activate your account API calls
24
- - Fixed creating custom webhook on the Admin Portal is sent with the event ID and not with the event Key
25
- - Added support for customizing fields and tabs in the admin portal
26
-
27
- ### Angular Wrapper 5.7.0:
28
- - Updated README.md with the current integration guide
29
-
30
- ## [5.6.0](https://github.com/frontegg/frontegg-angular/compare/v5.5.3...v5.6.0) (2022-11-10)
31
-
32
- - FR-9186 - support ssr with session and refresh token
33
- - FR-9614 - Add support for innerThemeProvider for admin portal pages and tabs
34
-
35
- - FR-9186 - fix pipeline
36
- ### AdminPortal 6.36.0:
37
- -
38
-
39
- ### AdminPortal 6.35.0:
40
- -
41
- ### AdminPortal 6.34.0:
42
- -
43
-
44
- ### Angular Wrapper 5.6.0:
45
- - FR-9186 - Fix changelog
46
- - Add karma.conf.js and adjust docker file
47
- - Adjust Test runnner flags, to run in docker
48
- - FR-9186 - Generate changelog based on AdminPortal and LoginBox changes
49
- - Change docker image to allow chromium to be installed
50
- - Sanity Check
51
-
52
- ## [5.5.3](https://github.com/frontegg/frontegg-angular/compare/v5.5.2...v5.5.3) (2022-10-26)
53
-
54
- ### AdminPortal 6.34.0:
55
- -
56
-
57
- ### Angular Wrapper 5.5.3:
58
- - FR-9186 - Fix changelog
59
- - Add karma.conf.js and adjust docker file
60
- - Adjust Test runnner flags, to run in docker
61
- - FR-9186 - Generate changelog based on AdminPortal and LoginBox changes
62
- - Change docker image to allow chromium to be installed
63
- - Sanity Check
64
- - Sanity check for angular
65
-