@frontegg/angular 4.5.2-alpha.1663220219 → 4.5.3-alpha.80880
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.
- package/bundles/frontegg-angular.umd.js +75 -62
- package/bundles/frontegg-angular.umd.js.map +1 -1
- package/bundles/frontegg-angular.umd.min.js +1 -1
- package/bundles/frontegg-angular.umd.min.js.map +1 -1
- package/esm2015/lib/frontegg-app.service.js +21 -19
- package/esm2015/lib/guards/frontegg-auth.guard.js +28 -8
- package/esm2015/lib/guards/frontegg-load.guard.js +4 -9
- package/fesm2015/frontegg-angular.js +71 -52
- package/fesm2015/frontegg-angular.js.map +1 -1
- package/frontegg-angular.metadata.json +1 -1
- package/lib/frontegg-app.service.d.ts +3 -1
- package/lib/frontegg-app.service.d.ts.map +1 -1
- package/lib/guards/frontegg-auth.guard.d.ts +5 -1
- package/lib/guards/frontegg-auth.guard.d.ts.map +1 -1
- package/lib/guards/frontegg-load.guard.d.ts +3 -5
- package/lib/guards/frontegg-load.guard.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/frontegg-app/src/lib/guards/frontegg-base-guard.ts","../../../../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/frontegg-auth.service.ts","../../../../projects/frontegg-app/src/lib/guards/frontegg-auth.guard.ts","../../../../projects/frontegg-app/src/lib/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","__read","n","r","e","ar","push","error","__spreadArray","to","from","il","j","FronteggBaseGuard","parse","url","DefaultUrlSerializer","serialize","tree","replace","FronteggLoadGuard","fronteggAppService","router","_this","_super","canActivate","route","state","Observable","obs","isLoading$","subscribe","loading","Injectable","FronteggAppService","Router","Component","args","selector","template","contextOptions","baseUrl","config","isLoadingSubject","BehaviorSubject","isAuthenticatedSubject","stateSubject","authStateSubject","auditsStateSubject","connectivityStateSubject","subscriptionsStateSubject","vendorStateSubject","Error","onRedirectTo","opts","baseName","window","location","origin","path","startsWith","substring","refresh","href","navigate","replaceUrl","ContextHolder","setOnRedirectTo","fronteggApp","initialize","assign","resetConfig","mapAuthComponents","children","events","event","NavigationStart","curr","map","_b","find","split","navigateByUrl","decodeURIComponent","store","fronteggStore","getState","getValue","auth","isLoading","isAuthenticated","audits","connectivity","subscriptions","vendor","defineProperty","asObservable","authRoutes","keys","filter","key","_a","component","FronteggComponent","routes","showAdminPortal","hideAdminPortal","providedIn","Inject","FronteggAppOptionsClass","FronteggAuthService","acceptInvitationStateSubject","accountSettingsStateSubject","activateStateSubject","apiTokensStateSubject","forgotPasswordStateSubject","loginStateSubject","mfaStateSubject","profileStateSubject","rolesStateSubject","routesSubject","securityPolicyStateSubject","signUpStateSubject","socialLoginStateSubject","ssoStateSubject","teamStateSubject","tenantsStateSubject","userSubject","isSSOAuthSubject","ssoACSSubject","setState","dispatchAction","resetState","setUser","user","setLoginState","resetLoginState","requestAuthorize","firstTime","loginWithRedirect","preLogin","payload","postLogin","login","loginWithMfa","recoverMfa","logout","callback","silentLogout","checkIfAllowToRememberMfaDevice","setSocialLoginsState","resetSocialLoginsState","loadSocialLoginsConfiguration","loginViaSocialLogin","setSocialLoginError","setActivateState","resetActivateState","setActivateStrategyState","activateAccount","resendActivationEmail","getActivateAccountStrategy","setAcceptInvitationState","resetAcceptInvitationState","acceptInvitation","setForgotPasswordState","resetForgotPasswordState","forgotPassword","resetPassword","loadPasswordConfig","setSignUpState","resetSignUpState","signUpUser","resetSignUpStateSoft","setProfileState","resetProfileState","loadProfile","saveProfile","changePassword","setSSOState","resetSSOState","loadSSOConfigurations","loadSSOAuthorizationRoles","saveSSOConfigurations","saveSSOConfigurationsFile","saveSSOConfigurationsFileWithCallback","validateSSODomain","updateSSOAuthorizationRoles","deleteSamlGroup","createSamlGroup","oidcPostlogin","setMfaState","resetMfaState","enrollMfa","verifyMfa","verifyMfaAfterForce","disableMfa","setTeamLoader","setTeamError","setTeamState","resetTeamState","loadUsers","loadRoles","addUser","updateUser","deleteUser","resendActivationLink","resendInvitationLink","openAddUserDialog","closeAddUserDialog","openDeleteUserDialog","closeDeleteUserDialog","setApiTokensLoader","setApiTokensError","setApiTokensState","resetApiTokensState","loadApiTokens","initApiTokensData","addTenantApiToken","addUserApiToken","deleteUserApiToken","deleteTenantApiToken","setSecurityPolicyState","setSecurityPolicyGlobalState","setSecurityPolicyPublicState","setSecurityPolicyMfaState","setSecurityPolicyLockoutState","setSecurityPolicyCaptchaState","setSecurityPolicyPasswordHistoryState","resetSecurityPolicyState","setSecurityPolicyPasswordState","loadSecurityPolicy","loadPublicSecurityPolicy","loadVendorPasswordConfig","loadSecurityPolicyMfa","saveSecurityPolicyMfa","loadSecurityPolicyLockout","saveSecurityPolicyLockout","loadSecurityPolicyCaptcha","loadSecurityPolicyPasswordHistory","saveSecurityPolicyPasswordHistory","setAccountSettingsState","resetAccountSettingsState","loadAccountSettings","saveAccountSettings","setTenantsState","resetTenantsState","switchTenant","loadTenants","setRolesState","resetRolesState","loadRolesAndPermissions","addRole","updateRole","deleteRole","attachPermissionsToRole","attachPermissionToRoles","authSubStates","field","subject","authState$","authState","authSubStates_1","authSubStates_1_1","authSubState","FastDeepEqual","type","dispatch","authStoreName","FronteggAuthGuard","isAuthenticated$","loginUrl","encodeURIComponent","queryParamsHandling","AuthorizedContentDirective","templateRef","viewContainer","fronteggAuthService","_roles","roles","ngAfterContentInit","user$","some","role","includes","name","createEmbeddedView","clear","Directive","TemplateRef","ViewContainerRef","Input","FronteggAppModule","forRoot","ngModule","providers","provide","useValue","NgModule","imports","CommonModule","RouterModule","declarations","exports"],"mappings":"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","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 { 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 } 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';\n\n@Injectable()\nexport class FronteggLoadGuard extends FronteggBaseGuard {\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router) {\n super();\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 } from '@angular/core';\nimport { NavigationStart, Route, Router, RoutesRecognized } from '@angular/router';\nimport { AuthPageRoutes, FronteggState, initialize } from '@frontegg/admin-portal';\nimport { FronteggAppInstance, FronteggAppOptions } 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\ntype FronteggApp = FronteggAppInstance & {\n showAdminPortal(): void;\n hideAdminPortal(): void;\n};\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://david.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']>({} 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, private router: Router) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\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 if (opts?.replace) {\n this.router.navigate([path], { replaceUrl: true });\n } else {\n this.router.navigate([path]);\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\n this.router.events.subscribe((event) => {\n if(event instanceof NavigationStart) {\n const authRoutes = this.mapAuthComponents.map(({path}) => path?.startsWith('/')? path : `/${path}`);\n const curr = authRoutes.find((path) => event.url.split('?')[0] !== path && event.url.startsWith(path));\n if(curr){\n this.router.navigateByUrl(`${curr}${decodeURIComponent(event.url.split(curr)[1])}`);\n }\n }\n });\n\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n const fronteggStore = this.fronteggApp.store.getState() as FronteggState;\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\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","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 { ActivateAccountState, SocialLoginState } from '@frontegg/redux-store/auth';\nimport { Observable } from 'rxjs';\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 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 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) {\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 // Memoized Auth State\n this.fronteggAppService.authState$.subscribe((authState) => {\n if (authState != null) {\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.getValue(), authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n this.isLoadingSubject.next(authState.isLoading);\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store: EnhancedStore = this.fronteggAppService.fronteggApp.store;\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\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 = () => this.dispatchAction('requestHostedLoginAuthorize');\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 { Injectable } 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';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router) {\n super();\n }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {\n return new Observable<boolean>(obs => {\n this.fronteggAppService.isAuthenticated$.subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n obs.next(true);\n } else {\n this.router.navigate([this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(state.url)], { queryParamsHandling: \"merge\" });\n obs.next(false);\n }\n });\n });\n }\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 { 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';\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 {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"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/frontegg-auth.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/directives/authorized-content.directive.ts","../../../../projects/frontegg-app/src/lib/frontegg-app.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","TypeError","__read","n","r","e","ar","push","error","__spreadArray","to","from","il","j","FronteggLoadGuard","fronteggAppService","this","canActivate","route","state","_this","Observable","obs","isLoading$","subscribe","loading","Injectable","FronteggAppService","Component","args","selector","template","contextOptions","baseUrl","config","router","ngZone","isLoadingSubject","BehaviorSubject","isAuthenticatedSubject","stateSubject","authStateSubject","auditsStateSubject","connectivityStateSubject","subscriptionsStateSubject","vendorStateSubject","Error","onRedirectTo","opts","baseName","window","location","origin","path","startsWith","substring","refresh","href","console","warn","isStable","NgZone","isInAngularZone","run","replace","navigateByUrl","replaceUrl","ContextHolder","setOnRedirectTo","fronteggApp","initialize","assign","resetConfig","mapAuthComponents","children","store","fronteggStore","getState","getValue","auth","isLoading","isAuthenticated","audits","connectivity","subscriptions","vendor","defineProperty","asObservable","authRoutes","keys","filter","key","map","_a","component","FronteggComponent","routes","showAdminPortal","hideAdminPortal","providedIn","Inject","FronteggAppOptionsClass","Router","FronteggAuthService","acceptInvitationStateSubject","accountSettingsStateSubject","activateStateSubject","apiTokensStateSubject","forgotPasswordStateSubject","loginStateSubject","mfaStateSubject","profileStateSubject","rolesStateSubject","routesSubject","securityPolicyStateSubject","signUpStateSubject","socialLoginStateSubject","ssoStateSubject","teamStateSubject","tenantsStateSubject","userSubject","isSSOAuthSubject","ssoACSSubject","setState","dispatchAction","resetState","setUser","user","setLoginState","resetLoginState","requestAuthorize","firstTime","loginWithRedirect","preLogin","payload","postLogin","login","loginWithMfa","recoverMfa","logout","callback","silentLogout","checkIfAllowToRememberMfaDevice","setSocialLoginsState","resetSocialLoginsState","loadSocialLoginsConfiguration","loginViaSocialLogin","setSocialLoginError","setActivateState","resetActivateState","setActivateStrategyState","activateAccount","resendActivationEmail","getActivateAccountStrategy","setAcceptInvitationState","resetAcceptInvitationState","acceptInvitation","setForgotPasswordState","resetForgotPasswordState","forgotPassword","resetPassword","loadPasswordConfig","setSignUpState","resetSignUpState","signUpUser","resetSignUpStateSoft","setProfileState","resetProfileState","loadProfile","saveProfile","changePassword","setSSOState","resetSSOState","loadSSOConfigurations","loadSSOAuthorizationRoles","saveSSOConfigurations","saveSSOConfigurationsFile","saveSSOConfigurationsFileWithCallback","validateSSODomain","updateSSOAuthorizationRoles","deleteSamlGroup","createSamlGroup","oidcPostlogin","setMfaState","resetMfaState","enrollMfa","verifyMfa","verifyMfaAfterForce","disableMfa","setTeamLoader","setTeamError","setTeamState","resetTeamState","loadUsers","loadRoles","addUser","updateUser","deleteUser","resendActivationLink","resendInvitationLink","openAddUserDialog","closeAddUserDialog","openDeleteUserDialog","closeDeleteUserDialog","setApiTokensLoader","setApiTokensError","setApiTokensState","resetApiTokensState","loadApiTokens","initApiTokensData","addTenantApiToken","addUserApiToken","deleteUserApiToken","deleteTenantApiToken","setSecurityPolicyState","setSecurityPolicyGlobalState","setSecurityPolicyPublicState","setSecurityPolicyMfaState","setSecurityPolicyLockoutState","setSecurityPolicyCaptchaState","setSecurityPolicyPasswordHistoryState","resetSecurityPolicyState","setSecurityPolicyPasswordState","loadSecurityPolicy","loadPublicSecurityPolicy","loadVendorPasswordConfig","loadSecurityPolicyMfa","saveSecurityPolicyMfa","loadSecurityPolicyLockout","saveSecurityPolicyLockout","loadSecurityPolicyCaptcha","loadSecurityPolicyPasswordHistory","saveSecurityPolicyPasswordHistory","setAccountSettingsState","resetAccountSettingsState","loadAccountSettings","saveAccountSettings","setTenantsState","resetTenantsState","switchTenant","loadTenants","setRolesState","resetRolesState","loadRolesAndPermissions","addRole","updateRole","deleteRole","attachPermissionsToRole","attachPermissionToRoles","authSubStates","field","subject","authState$","authState","authSubStates_1","authSubStates_1_1","authSubState","FastDeepEqual","type","dispatch","authStoreName","FronteggBaseGuard","parse","url","DefaultUrlSerializer","serialize","tree","FronteggAuthGuard","_super","authObservable","isAuthenticated$","navigateToUrl","String","__","constructor","__extends","redirectUrl","routerState","snapshot","loginUrl","encodeURIComponent","AuthorizedContentDirective","templateRef","viewContainer","fronteggAuthService","_roles","roles","ngAfterContentInit","user$","some","role","includes","name","createEmbeddedView","clear","Directive","TemplateRef","ViewContainerRef","Input","FronteggAppModule","forRoot","ngModule","providers","provide","useValue","NgModule","imports","CommonModule","RouterModule","declarations","exports"],"mappings":"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","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 { NavigationStart, Route, Router, RoutesRecognized } from '@angular/router';\nimport { AuthPageRoutes, FronteggState, initialize } from '@frontegg/admin-portal';\nimport { FronteggAppInstance, FronteggAppOptions } 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\ntype FronteggApp = FronteggAppInstance & {\n showAdminPortal(): void;\n hideAdminPortal(): void;\n};\n\nexport class FronteggAppOptionsClass implements FronteggAppOptions {\n contextOptions: FronteggAppOptions['contextOptions'] = {\n baseUrl: 'https://david.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']>({} 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, private router: Router, private ngZone: NgZone) {\n if (!this.config) {\n throw Error('Need to pass config: FronteggConfigOptions in FronteggAppModule.forRoot(config)');\n }\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 console.warn('FronteggRouting.start');\n try {\n console.warn('FronteggRouting', ngZone.isStable, NgZone.isInAngularZone());\n } catch (e) {\n }\n this.ngZone.run(() => {\n console.warn('FronteggRouting.inside-ngZone');\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\n // Subscribe on fronteggApp store to change state subjects\n this.fronteggApp.store.subscribe(() => {\n const fronteggStore = this.fronteggApp.store.getState() as FronteggState;\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\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","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 { ActivateAccountState, SocialLoginState } from '@frontegg/redux-store/auth';\nimport { Observable } from 'rxjs';\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 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 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) {\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 // Memoized Auth State\n this.fronteggAppService.authState$.subscribe((authState) => {\n if (authState != null) {\n for (const authSubState of authSubStates) {\n if (!FastDeepEqual(authSubState.subject.getValue(), authState[authSubState.field])) {\n authSubState.subject.next(authState[authSubState.field]);\n }\n }\n this.isAuthenticatedSubject.next(authState.isAuthenticated);\n this.isLoadingSubject.next(authState.isLoading);\n }\n });\n }\n\n private dispatchAction(type: string, payload?: any): void {\n const store: EnhancedStore = this.fronteggAppService.fronteggApp.store;\n store.dispatch({ type: `${authStoreName}/${type}`, payload });\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 = () => this.dispatchAction('requestHostedLoginAuthorize');\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 { 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';\n\n@Injectable()\nexport class FronteggAuthGuard extends FronteggBaseGuard {\n private readonly authObservable: Observable<boolean>;\n\n constructor(protected fronteggAppService: FronteggAppService, protected router: Router, protected ngZone: NgZone) {\n super();\n this.authObservable = new Observable<boolean>(obs => {\n this.fronteggAppService.isAuthenticated$.subscribe((isAuthenticated: boolean) => {\n if (isAuthenticated) {\n obs.next(true);\n } else {\n console.warn('FronteggAuthGuard.start');\n try {\n console.warn('FronteggAuthGuard', ngZone.isStable, NgZone.isInAngularZone());\n } catch (e) {\n }\n if (NgZone.isInAngularZone()) {\n this.navigateToUrl();\n } else {\n this.ngZone.run(() => {\n this.navigateToUrl();\n });\n }\n obs.next(false);\n }\n });\n });\n }\n\n navigateToUrl(): void {\n const redirectUrl = this.router.routerState.snapshot.url;\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 return this.authObservable;\n }\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 { 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';\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 {\n provide: FronteggAppOptionsClass,\n useValue: config,\n },\n ],\n };\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import {
|
|
1
|
+
import { Inject, Injectable, NgZone } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
3
|
import { initialize } from '@frontegg/admin-portal';
|
|
4
4
|
import { BehaviorSubject } from 'rxjs';
|
|
5
5
|
import { FronteggLoadGuard } from './guards/frontegg-load.guard';
|
|
@@ -15,9 +15,10 @@ export class FronteggAppOptionsClass {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
export class FronteggAppService {
|
|
18
|
-
constructor(config, router) {
|
|
18
|
+
constructor(config, router, ngZone) {
|
|
19
19
|
this.config = config;
|
|
20
20
|
this.router = router;
|
|
21
|
+
this.ngZone = ngZone;
|
|
21
22
|
this.isLoadingSubject = new BehaviorSubject(true);
|
|
22
23
|
this.isAuthenticatedSubject = new BehaviorSubject(false);
|
|
23
24
|
this.stateSubject = new BehaviorSubject({});
|
|
@@ -39,12 +40,21 @@ export class FronteggAppService {
|
|
|
39
40
|
window.location.href = path;
|
|
40
41
|
}
|
|
41
42
|
else {
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
console.warn('FronteggRouting.start');
|
|
44
|
+
try {
|
|
45
|
+
console.warn('FronteggRouting', ngZone.isStable, NgZone.isInAngularZone());
|
|
44
46
|
}
|
|
45
|
-
|
|
46
|
-
this.router.navigate([path]);
|
|
47
|
+
catch (e) {
|
|
47
48
|
}
|
|
49
|
+
this.ngZone.run(() => {
|
|
50
|
+
console.warn('FronteggRouting.inside-ngZone');
|
|
51
|
+
if (opts === null || opts === void 0 ? void 0 : opts.replace) {
|
|
52
|
+
this.router.navigateByUrl(path, { replaceUrl: true });
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
this.router.navigateByUrl(path);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
48
58
|
}
|
|
49
59
|
};
|
|
50
60
|
ContextHolder.setOnRedirectTo(onRedirectTo);
|
|
@@ -58,15 +68,6 @@ export class FronteggAppService {
|
|
|
58
68
|
children: [...this.router.config],
|
|
59
69
|
},
|
|
60
70
|
]);
|
|
61
|
-
this.router.events.subscribe((event) => {
|
|
62
|
-
if (event instanceof NavigationStart) {
|
|
63
|
-
const authRoutes = this.mapAuthComponents.map(({ path }) => (path === null || path === void 0 ? void 0 : path.startsWith('/')) ? path : `/${path}`);
|
|
64
|
-
const curr = authRoutes.find((path) => event.url.split('?')[0] !== path && event.url.startsWith(path));
|
|
65
|
-
if (curr) {
|
|
66
|
-
this.router.navigateByUrl(`${curr}${decodeURIComponent(event.url.split(curr)[1])}`);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
71
|
// Subscribe on fronteggApp store to change state subjects
|
|
71
72
|
this.fronteggApp.store.subscribe(() => {
|
|
72
73
|
const fronteggStore = this.fronteggApp.store.getState();
|
|
@@ -135,7 +136,7 @@ export class FronteggAppService {
|
|
|
135
136
|
(_a = this.fronteggApp) === null || _a === void 0 ? void 0 : _a.hideAdminPortal();
|
|
136
137
|
}
|
|
137
138
|
}
|
|
138
|
-
FronteggAppService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FronteggAppService_Factory() { return new FronteggAppService(i0.ɵɵinject(FronteggAppOptionsClass), i0.ɵɵinject(i1.Router)); }, token: FronteggAppService, providedIn: "root" });
|
|
139
|
+
FronteggAppService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FronteggAppService_Factory() { return new FronteggAppService(i0.ɵɵinject(FronteggAppOptionsClass), i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.NgZone)); }, token: FronteggAppService, providedIn: "root" });
|
|
139
140
|
FronteggAppService.decorators = [
|
|
140
141
|
{ type: Injectable, args: [{
|
|
141
142
|
providedIn: 'root',
|
|
@@ -143,6 +144,7 @@ FronteggAppService.decorators = [
|
|
|
143
144
|
];
|
|
144
145
|
FronteggAppService.ctorParameters = () => [
|
|
145
146
|
{ type: undefined, decorators: [{ type: Inject, args: [FronteggAppOptionsClass,] }] },
|
|
146
|
-
{ type: Router }
|
|
147
|
+
{ type: Router },
|
|
148
|
+
{ type: NgZone }
|
|
147
149
|
];
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnRlZ2ctYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mcm9udGVnZy1hcHAvc3JjL2xpYi9mcm9udGVnZy1hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFTLE1BQU0sRUFBb0IsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRixPQUFPLEVBQWlDLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBbUIsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBT3pELE1BQU0sT0FBTyx1QkFBdUI7SUFBcEM7UUFDRSxtQkFBYyxHQUF5QztZQUNyRCxPQUFPLEVBQUUsNEJBQTRCO1NBQ3RDLENBQUM7SUFDSixDQUFDO0NBQUE7QUFLRCxNQUFNLE9BQU8sa0JBQWtCO0lBOEM3QixZQUFxRCxNQUEwQixFQUFVLE1BQWM7UUFBbEQsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBM0MvRixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN0RCwyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM3RCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdkUscUJBQWdCLEdBQUcsSUFBSSxlQUFlLENBQXdCLEVBQTJCLENBQUMsQ0FBQztRQUMzRix1QkFBa0Is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QUUsRUFBRTs7WUFBQyxPQUFBLENBQUM7Z0JBQ25DLElBQUksRUFBRSxNQUFBLFVBQVUsQ0FBQyxHQUFHLENBQUMsMENBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDbkMsU0FBUyxFQUFFLGlCQUFpQjthQUM3QixDQUFDLENBQUE7U0FBQSxDQUFDLENBQUM7SUFDUixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxvQkFBb0I7SUFDYixlQUFlO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELG9CQUFvQjtJQUNiLGVBQWU7O1FBQ3BCLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsZUFBZSxFQUFFLENBQUM7SUFDdEMsQ0FBQzs7OztZQTNJRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs0Q0ErQ2MsTUFBTSxTQUFDLHVCQUF1QjtZQXBFWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlLCBSb3V0ZXIsIFJvdXRlc1JlY29nbml6ZWQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFBhZ2VSb3V0ZXMsIEZyb250ZWdnU3RhdGUsIGluaXRpYWxpemUgfSBmcm9tICdAZnJvbnRlZ2cvYWRtaW4tcG9ydGFsJztcbmltcG9ydCB7IEZyb250ZWdnQXBwSW5zdGFuY2UsIEZyb250ZWdnQXBwT3B0aW9ucyB9IGZyb20gJ0Bmcm9udGVnZy90eXBlcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZyb250ZWdnTG9hZEd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvZnJvbnRlZ2ctbG9hZC5ndWFyZCc7XG5pbXBvcnQgeyBDb250ZXh0SG9sZGVyLCBSZWRpcmVjdE9wdGlvbnMgfSBmcm9tICdAZnJvbnRlZ2cvcmVzdC1hcGknO1xuaW1wb3J0IHsgRnJvbnRlZ2dDb21wb25lbnQgfSBmcm9tICcuL2Zyb250ZWdnLmNvbXBvbmVudCc7XG5cbnR5cGUgRnJvbnRlZ2dBcHAgPSBGcm9udGVnZ0FwcEluc3RhbmNlICYge1xuICBzaG93QWRtaW5Qb3J0YWwoKTogdm9pZDtcbiAgaGlkZUFkbWluUG9ydGFsKCk6IHZvaWQ7XG59O1xuXG5leHBvcnQgY2xhc3MgRnJvbnRlZ2dBcHBPcHRpb25zQ2xhc3MgaW1wbGVtZW50cyBGcm9udGVnZ0FwcE9wdGlvbnMge1xuICBjb250ZXh0T3B0aW9uczogRnJvbnRlZ2dBcHBPcHRpb25zWydjb250ZXh0T3B0aW9ucyddID0ge1xuICAgIGJhc2VVcmw6ICdodHRwczovL2RhdmlkLmZyb250ZWdnLmNvbScsXG4gIH07XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGcm9udGVnZ0FwcFNlcnZpY2Uge1xuICBmcm9udGVnZ0FwcDogRnJvbnRlZ2dBcHA7XG5cbiAgcHJpdmF0ZSBpc0xvYWRpbmdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSBpc0F1dGhlbnRpY2F0ZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgc3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlPih7fSBhcyBGcm9udGVnZ1N0YXRlKTtcbiAgcHJpdmF0ZSBhdXRoU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydhdXRoJ10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ2F1dGgnXSk7XG4gIHByaXZhdGUgYXVkaXRzU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydhdWRpdHMnXT4oe30gYXMgRnJvbnRlZ2dTdGF0ZVsnYXVkaXRzJ10pO1xuICBwcml2YXRlIGNvbm5lY3Rpdml0eVN0YXRlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RnJvbnRlZ2dTdGF0ZVsnY29ubmVjdGl2aXR5J10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ2Nvbm5lY3Rpdml0eSddKTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydzdWJzY3JpcHRpb25zJ10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ3N1YnNjcmlwdGlvbnMnXSk7XG4gIHByaXZhdGUgdmVuZG9yU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWyd2ZW5kb3InXT4oe30gYXMgRnJvbnRlZ2dTdGF0ZVsndmVuZG9yJ10pO1xuXG5cbiAgZ2V0IHN0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgYXV0aFN0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGVbJ2F1dGgnXT4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgYXVkaXRzU3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsnYXVkaXRzJ10+IHtcbiAgICByZXR1cm4gdGhpcy5hdWRpdHNTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY29ubmVjdGl2aXR5U3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsnY29ubmVjdGl2aXR5J10+IHtcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0aXZpdHlTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgc3Vic2NyaXB0aW9uc1N0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGVbJ3N1YnNjcmlwdGlvbnMnXT4ge1xuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnNTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgdmVuZG9yU3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsndmVuZG9yJ10+IHtcbiAgICByZXR1cm4gdGhpcy52ZW5kb3JTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgaXNMb2FkaW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5pc0xvYWRpbmdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9O1xuXG5cbiAgZ2V0IGlzQXV0aGVudGljYXRlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEZyb250ZWdnQXBwT3B0aW9uc0NsYXNzKSBwcml2YXRlIGNvbmZpZzogRnJvbnRlZ2dBcHBPcHRpb25zLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xuICAgICAgdGhyb3cgRXJyb3IoJ05lZWQgdG8gcGFzcyBjb25maWc6IEZyb250ZWdnQ29uZmlnT3B0aW9ucyBpbiBGcm9udGVnZ0FwcE1vZHVsZS5mb3JSb290KGNvbmZpZyknKTtcbiAgICB9XG5cbiAgICBjb25zdCBvblJlZGlyZWN0VG8gPSAodG86IHN0cmluZywgb3B0cz86IFJlZGlyZWN0T3B0aW9ucykgPT4ge1xuICAgICAgY29uc3QgYmFzZU5hbWUgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luO1xuICAgICAgbGV0IHBhdGggPSB0bztcbiAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoYmFzZU5hbWUpICYmIGJhc2VOYW1lICE9PSAnLycpIHtcbiAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKGJhc2VOYW1lLmxlbmd0aCAtIDEpO1xuICAgICAgfVxuXG4gICAgICBpZiAob3B0cz8ucmVmcmVzaCkge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHBhdGg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAob3B0cz8ucmVwbGFjZSkge1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSwgeyByZXBsYWNlVXJsOiB0cnVlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICAgIENvbnRleHRIb2xkZXIuc2V0T25SZWRpcmVjdFRvKG9uUmVkaXJlY3RUbyk7XG4gICAgdGhpcy5mcm9udGVnZ0FwcCA9IGluaXRpYWxpemUoe1xuICAgICAgb25SZWRpcmVjdFRvLFxuICAgICAgLi4udGhpcy5jb25maWcsXG4gICAgfSk7XG5cblxuICAgIC8vIEFkZCBhbGwgbG9naW4gYm94IHJvdXRlcyB0byBBbmd1bGFyIHJvdXRlciBjb25maWdcbiAgICB0aGlzLnJvdXRlci5yZXNldENvbmZpZyhbXG4gICAgICAuLi50aGlzLm1hcEF1dGhDb21wb25lbnRzLFxuICAgICAge1xuICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgY2FuQWN0aXZhdGU6IFtGcm9udGVnZ0xvYWRHdWFyZF0sXG4gICAgICAgIGNoaWxkcmVuOiBbLi4udGhpcy5yb3V0ZXIuY29uZmlnXSxcbiAgICAgIH0sXG4gICAgXSk7XG5cbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgaWYoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgY29uc3QgYXV0aFJvdXRlcyA9IHRoaXMubWFwQXV0aENvbXBvbmVudHMubWFwKCh7cGF0aH0pID0+IHBhdGg/LnN0YXJ0c1dpdGgoJy8nKT8gcGF0aCA6IGAvJHtwYXRofWApO1xuICAgICAgICBjb25zdCBjdXJyID0gYXV0aFJvdXRlcy5maW5kKChwYXRoKSA9PiBldmVudC51cmwuc3BsaXQoJz8nKVswXSAhPT0gcGF0aCAmJiBldmVudC51cmwuc3RhcnRzV2l0aChwYXRoKSk7XG4gICAgICAgIGlmKGN1cnIpe1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoYCR7Y3Vycn0ke2RlY29kZVVSSUNvbXBvbmVudChldmVudC51cmwuc3BsaXQoY3VycilbMV0pfWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBTdWJzY3JpYmUgb24gZnJvbnRlZ2dBcHAgc3RvcmUgdG8gY2hhbmdlIHN0YXRlIHN1YmplY3RzXG4gICAgdGhpcy5mcm9udGVnZ0FwcC5zdG9yZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgY29uc3QgZnJvbnRlZ2dTdG9yZSA9IHRoaXMuZnJvbnRlZ2dBcHAuc3RvcmUuZ2V0U3RhdGUoKSBhcyBGcm9udGVnZ1N0YXRlO1xuICAgICAgaWYgKHRoaXMuaXNMb2FkaW5nU3ViamVjdC5nZXRWYWx1ZSgpICE9PSBmcm9udGVnZ1N0b3JlLmF1dGguaXNMb2FkaW5nKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nU3ViamVjdC5uZXh0KGZyb250ZWdnU3RvcmUuYXV0aC5pc0xvYWRpbmcpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5nZXRWYWx1ZSgpICE9PSBmcm9udGVnZ1N0b3JlLmF1dGguaXNBdXRoZW50aWNhdGVkKSB7XG4gICAgICAgIHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5uZXh0KGZyb250ZWdnU3RvcmUuYXV0aC5pc0F1dGhlbnRpY2F0ZWQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnN0YXRlU3ViamVjdC5uZXh0KGZyb250ZWdnU3RvcmUpO1xuICAgICAgdGhpcy5hdXRoU3RhdGVTdWJqZWN0Lm5leHQoZnJvbnRlZ2dTdG9yZS5hdXRoKTtcbiAgICAgIHRoaXMuYXVkaXRzU3RhdGVTdWJqZWN0Lm5leHQoZnJvbnRlZ2dTdG9yZS5hdWRpdHMpO1xuICAgICAgdGhpcy5jb25uZWN0aXZpdHlTdGF0ZVN1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlLmNvbm5lY3Rpdml0eSk7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNTdGF0ZVN1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlLnN1YnNjcmlwdGlvbnMpO1xuICAgICAgdGhpcy52ZW5kb3JTdGF0ZVN1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlLnZlbmRvcik7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgbWFwQXV0aENvbXBvbmVudHMoKTogUm91dGVbXSB7XG4gICAgY29uc3QgYXV0aFJvdXRlcyA9IHRoaXMuYXV0aFJvdXRlcztcbiAgICByZXR1cm4gKE9iamVjdC5rZXlzKGF1dGhSb3V0ZXMpIGFzIChrZXlvZiBBdXRoUGFnZVJvdXRlcylbXSlcbiAgICAgIC5maWx0ZXIoKGtleToga2V5b2YgQXV0aFBhZ2VSb3V0ZXMpID0+IGtleSAhPT0gJ2F1dGhlbnRpY2F0ZWRVcmwnICYmIGtleSAhPT0gJ3NpZ25VcFN1Y2Nlc3NVcmwnICYmIGtleSAhPSBudWxsKVxuICAgICAgLm1hcCgoa2V5OiBrZXlvZiBBdXRoUGFnZVJvdXRlcykgPT4gKHtcbiAgICAgICAgcGF0aDogYXV0aFJvdXRlc1trZXldPy5zdWJzdHJpbmcoMSksXG4gICAgICAgIGNvbXBvbmVudDogRnJvbnRlZ2dDb21wb25lbnQsXG4gICAgICB9KSk7XG4gIH1cblxuICBnZXQgYXV0aFJvdXRlcygpOiBBdXRoUGFnZVJvdXRlcyB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbnRlZ2dBcHAuc3RvcmUuZ2V0U3RhdGUoKS5hdXRoLnJvdXRlcztcbiAgfVxuXG4gIC8vIE9wZW4gYWRtaW4gcG9ydGFsXG4gIHB1YmxpYyBzaG93QWRtaW5Qb3J0YWwoKTogdm9pZCB7XG4gICAgdGhpcy5mcm9udGVnZ0FwcC5zaG93QWRtaW5Qb3J0YWwoKTtcbiAgfVxuXG4gIC8vIE9wZW4gYWRtaW4gcG9ydGFsXG4gIHB1YmxpYyBoaWRlQWRtaW5Qb3J0YWwoKTogdm9pZCB7XG4gICAgdGhpcy5mcm9udGVnZ0FwcD8uaGlkZUFkbWluUG9ydGFsKCk7XG4gIH1cbn1cbiJdfQ==
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnRlZ2ctYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mcm9udGVnZy1hcHAvc3JjL2xpYi9mcm9udGVnZy1hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUEwQixNQUFNLEVBQW9CLE1BQU0saUJBQWlCLENBQUM7QUFDbkYsT0FBTyxFQUFpQyxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQW1CLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQU96RCxNQUFNLE9BQU8sdUJBQXVCO0lBQXBDO1FBQ0UsbUJBQWMsR0FBeUM7WUFDckQsT0FBTyxFQUFFLDRCQUE0QjtTQUN0QyxDQUFDO0lBQ0osQ0FBQztDQUFBO0FBS0QsTUFBTSxPQUFPLGtCQUFrQjtJQThDN0IsWUFBcUQsTUFBMEIsRUFBVSxNQUFjLEVBQVUsTUFBYztRQUExRSxXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBM0N2SCxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN0RCwyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM3RCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdkUscUJBQWdCLEdBQUcsSUFBSSxlQUFl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LFdBQVcsMENBQUUsZUFBZSxFQUFFLENBQUM7SUFDdEMsQ0FBQzs7OztZQXpJRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs0Q0ErQ2MsTUFBTSxTQUFDLHVCQUF1QjtZQXBFWixNQUFNO1lBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlLCBSb3V0ZXIsIFJvdXRlc1JlY29nbml6ZWQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFBhZ2VSb3V0ZXMsIEZyb250ZWdnU3RhdGUsIGluaXRpYWxpemUgfSBmcm9tICdAZnJvbnRlZ2cvYWRtaW4tcG9ydGFsJztcbmltcG9ydCB7IEZyb250ZWdnQXBwSW5zdGFuY2UsIEZyb250ZWdnQXBwT3B0aW9ucyB9IGZyb20gJ0Bmcm9udGVnZy90eXBlcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZyb250ZWdnTG9hZEd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvZnJvbnRlZ2ctbG9hZC5ndWFyZCc7XG5pbXBvcnQgeyBDb250ZXh0SG9sZGVyLCBSZWRpcmVjdE9wdGlvbnMgfSBmcm9tICdAZnJvbnRlZ2cvcmVzdC1hcGknO1xuaW1wb3J0IHsgRnJvbnRlZ2dDb21wb25lbnQgfSBmcm9tICcuL2Zyb250ZWdnLmNvbXBvbmVudCc7XG5cbnR5cGUgRnJvbnRlZ2dBcHAgPSBGcm9udGVnZ0FwcEluc3RhbmNlICYge1xuICBzaG93QWRtaW5Qb3J0YWwoKTogdm9pZDtcbiAgaGlkZUFkbWluUG9ydGFsKCk6IHZvaWQ7XG59O1xuXG5leHBvcnQgY2xhc3MgRnJvbnRlZ2dBcHBPcHRpb25zQ2xhc3MgaW1wbGVtZW50cyBGcm9udGVnZ0FwcE9wdGlvbnMge1xuICBjb250ZXh0T3B0aW9uczogRnJvbnRlZ2dBcHBPcHRpb25zWydjb250ZXh0T3B0aW9ucyddID0ge1xuICAgIGJhc2VVcmw6ICdodHRwczovL2RhdmlkLmZyb250ZWdnLmNvbScsXG4gIH07XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGcm9udGVnZ0FwcFNlcnZpY2Uge1xuICBmcm9udGVnZ0FwcDogRnJvbnRlZ2dBcHA7XG5cbiAgcHJpdmF0ZSBpc0xvYWRpbmdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSBpc0F1dGhlbnRpY2F0ZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgc3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlPih7fSBhcyBGcm9udGVnZ1N0YXRlKTtcbiAgcHJpdmF0ZSBhdXRoU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydhdXRoJ10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ2F1dGgnXSk7XG4gIHByaXZhdGUgYXVkaXRzU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydhdWRpdHMnXT4oe30gYXMgRnJvbnRlZ2dTdGF0ZVsnYXVkaXRzJ10pO1xuICBwcml2YXRlIGNvbm5lY3Rpdml0eVN0YXRlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RnJvbnRlZ2dTdGF0ZVsnY29ubmVjdGl2aXR5J10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ2Nvbm5lY3Rpdml0eSddKTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWydzdWJzY3JpcHRpb25zJ10+KHt9IGFzIEZyb250ZWdnU3RhdGVbJ3N1YnNjcmlwdGlvbnMnXSk7XG4gIHByaXZhdGUgdmVuZG9yU3RhdGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGcm9udGVnZ1N0YXRlWyd2ZW5kb3InXT4oe30gYXMgRnJvbnRlZ2dTdGF0ZVsndmVuZG9yJ10pO1xuXG5cbiAgZ2V0IHN0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgYXV0aFN0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGVbJ2F1dGgnXT4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgYXVkaXRzU3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsnYXVkaXRzJ10+IHtcbiAgICByZXR1cm4gdGhpcy5hdWRpdHNTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY29ubmVjdGl2aXR5U3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsnY29ubmVjdGl2aXR5J10+IHtcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0aXZpdHlTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgc3Vic2NyaXB0aW9uc1N0YXRlJCgpOiBPYnNlcnZhYmxlPEZyb250ZWdnU3RhdGVbJ3N1YnNjcmlwdGlvbnMnXT4ge1xuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnNTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgdmVuZG9yU3RhdGUkKCk6IE9ic2VydmFibGU8RnJvbnRlZ2dTdGF0ZVsndmVuZG9yJ10+IHtcbiAgICByZXR1cm4gdGhpcy52ZW5kb3JTdGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgaXNMb2FkaW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5pc0xvYWRpbmdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9O1xuXG5cbiAgZ2V0IGlzQXV0aGVudGljYXRlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEZyb250ZWdnQXBwT3B0aW9uc0NsYXNzKSBwcml2YXRlIGNvbmZpZzogRnJvbnRlZ2dBcHBPcHRpb25zLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIG5nWm9uZTogTmdab25lKSB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xuICAgICAgdGhyb3cgRXJyb3IoJ05lZWQgdG8gcGFzcyBjb25maWc6IEZyb250ZWdnQ29uZmlnT3B0aW9ucyBpbiBGcm9udGVnZ0FwcE1vZHVsZS5mb3JSb290KGNvbmZpZyknKTtcbiAgICB9XG5cbiAgICBjb25zdCBvblJlZGlyZWN0VG8gPSAodG86IHN0cmluZywgb3B0cz86IFJlZGlyZWN0T3B0aW9ucykgPT4ge1xuICAgICAgY29uc3QgYmFzZU5hbWUgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luO1xuICAgICAgbGV0IHBhdGggPSB0bztcbiAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoYmFzZU5hbWUpICYmIGJhc2VOYW1lICE9PSAnLycpIHtcbiAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKGJhc2VOYW1lLmxlbmd0aCAtIDEpO1xuICAgICAgfVxuXG4gICAgICBpZiAob3B0cz8ucmVmcmVzaCkge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHBhdGg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLndhcm4oJ0Zyb250ZWdnUm91dGluZy5zdGFydCcpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnNvbGUud2FybignRnJvbnRlZ2dSb3V0aW5nJywgbmdab25lLmlzU3RhYmxlLCBOZ1pvbmUuaXNJbkFuZ3VsYXJab25lKCkpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oJ0Zyb250ZWdnUm91dGluZy5pbnNpZGUtbmdab25lJyk7XG4gICAgICAgICAgaWYgKG9wdHM/LnJlcGxhY2UpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwocGF0aCwgeyByZXBsYWNlVXJsOiB0cnVlIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHBhdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcbiAgICBDb250ZXh0SG9sZGVyLnNldE9uUmVkaXJlY3RUbyhvblJlZGlyZWN0VG8pO1xuICAgIHRoaXMuZnJvbnRlZ2dBcHAgPSBpbml0aWFsaXplKHtcbiAgICAgIG9uUmVkaXJlY3RUbyxcbiAgICAgIC4uLnRoaXMuY29uZmlnLFxuICAgIH0pO1xuXG5cbiAgICAvLyBBZGQgYWxsIGxvZ2luIGJveCByb3V0ZXMgdG8gQW5ndWxhciByb3V0ZXIgY29uZmlnXG4gICAgdGhpcy5yb3V0ZXIucmVzZXRDb25maWcoW1xuICAgICAgLi4udGhpcy5tYXBBdXRoQ29tcG9uZW50cyxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJycsXG4gICAgICAgIGNhbkFjdGl2YXRlOiBbRnJvbnRlZ2dMb2FkR3VhcmRdLFxuICAgICAgICBjaGlsZHJlbjogWy4uLnRoaXMucm91dGVyLmNvbmZpZ10sXG4gICAgICB9LFxuICAgIF0pO1xuXG4gICAgLy8gU3Vic2NyaWJlIG9uIGZyb250ZWdnQXBwIHN0b3JlIHRvIGNoYW5nZSBzdGF0ZSBzdWJqZWN0c1xuICAgIHRoaXMuZnJvbnRlZ2dBcHAuc3RvcmUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGNvbnN0IGZyb250ZWdnU3RvcmUgPSB0aGlzLmZyb250ZWdnQXBwLnN0b3JlLmdldFN0YXRlKCkgYXMgRnJvbnRlZ2dTdGF0ZTtcbiAgICAgIGlmICh0aGlzLmlzTG9hZGluZ1N1YmplY3QuZ2V0VmFsdWUoKSAhPT0gZnJvbnRlZ2dTdG9yZS5hdXRoLmlzTG9hZGluZykge1xuICAgICAgICB0aGlzLmlzTG9hZGluZ1N1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlLmF1dGguaXNMb2FkaW5nKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmlzQXV0aGVudGljYXRlZFN1YmplY3QuZ2V0VmFsdWUoKSAhPT0gZnJvbnRlZ2dTdG9yZS5hdXRoLmlzQXV0aGVudGljYXRlZCkge1xuICAgICAgICB0aGlzLmlzQXV0aGVudGljYXRlZFN1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlLmF1dGguaXNBdXRoZW50aWNhdGVkKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zdGF0ZVN1YmplY3QubmV4dChmcm9udGVnZ1N0b3JlKTtcbiAgICAgIHRoaXMuYXV0aFN0YXRlU3ViamVjdC5uZXh0KGZyb250ZWdnU3RvcmUuYXV0aCk7XG4gICAgICB0aGlzLmF1ZGl0c1N0YXRlU3ViamVjdC5uZXh0KGZyb250ZWdnU3RvcmUuYXVkaXRzKTtcbiAgICAgIHRoaXMuY29ubmVjdGl2aXR5U3RhdGVTdWJqZWN0Lm5leHQoZnJvbnRlZ2dTdG9yZS5jb25uZWN0aXZpdHkpO1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zU3RhdGVTdWJqZWN0Lm5leHQoZnJvbnRlZ2dTdG9yZS5zdWJzY3JpcHRpb25zKTtcbiAgICAgIHRoaXMudmVuZG9yU3RhdGVTdWJqZWN0Lm5leHQoZnJvbnRlZ2dTdG9yZS52ZW5kb3IpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IG1hcEF1dGhDb21wb25lbnRzKCk6IFJvdXRlW10ge1xuICAgIGNvbnN0IGF1dGhSb3V0ZXMgPSB0aGlzLmF1dGhSb3V0ZXM7XG4gICAgcmV0dXJuIChPYmplY3Qua2V5cyhhdXRoUm91dGVzKSBhcyAoa2V5b2YgQXV0aFBhZ2VSb3V0ZXMpW10pXG4gICAgICAuZmlsdGVyKChrZXk6IGtleW9mIEF1dGhQYWdlUm91dGVzKSA9PiBrZXkgIT09ICdhdXRoZW50aWNhdGVkVXJsJyAmJiBrZXkgIT09ICdzaWduVXBTdWNjZXNzVXJsJyAmJiBrZXkgIT0gbnVsbClcbiAgICAgIC5tYXAoKGtleToga2V5b2YgQXV0aFBhZ2VSb3V0ZXMpID0+ICh7XG4gICAgICAgIHBhdGg6IGF1dGhSb3V0ZXNba2V5XT8uc3Vic3RyaW5nKDEpLFxuICAgICAgICBjb21wb25lbnQ6IEZyb250ZWdnQ29tcG9uZW50LFxuICAgICAgfSkpO1xuICB9XG5cbiAgZ2V0IGF1dGhSb3V0ZXMoKTogQXV0aFBhZ2VSb3V0ZXMge1xuICAgIHJldHVybiB0aGlzLmZyb250ZWdnQXBwLnN0b3JlLmdldFN0YXRlKCkuYXV0aC5yb3V0ZXM7XG4gIH1cblxuICAvLyBPcGVuIGFkbWluIHBvcnRhbFxuICBwdWJsaWMgc2hvd0FkbWluUG9ydGFsKCk6IHZvaWQge1xuICAgIHRoaXMuZnJvbnRlZ2dBcHAuc2hvd0FkbWluUG9ydGFsKCk7XG4gIH1cblxuICAvLyBPcGVuIGFkbWluIHBvcnRhbFxuICBwdWJsaWMgaGlkZUFkbWluUG9ydGFsKCk6IHZvaWQge1xuICAgIHRoaXMuZnJvbnRlZ2dBcHA/LmhpZGVBZG1pblBvcnRhbCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,33 +1,53 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
1
|
+
import { Injectable, NgZone } from '@angular/core';
|
|
2
2
|
import { Router } from '@angular/router';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import { FronteggBaseGuard } from './frontegg-base-guard';
|
|
5
5
|
import { FronteggAppService } from '../frontegg-app.service';
|
|
6
6
|
export class FronteggAuthGuard extends FronteggBaseGuard {
|
|
7
|
-
constructor(fronteggAppService, router) {
|
|
7
|
+
constructor(fronteggAppService, router, ngZone) {
|
|
8
8
|
super();
|
|
9
9
|
this.fronteggAppService = fronteggAppService;
|
|
10
10
|
this.router = router;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return new Observable(obs => {
|
|
11
|
+
this.ngZone = ngZone;
|
|
12
|
+
this.authObservable = new Observable(obs => {
|
|
14
13
|
this.fronteggAppService.isAuthenticated$.subscribe((isAuthenticated) => {
|
|
15
14
|
if (isAuthenticated) {
|
|
16
15
|
obs.next(true);
|
|
17
16
|
}
|
|
18
17
|
else {
|
|
19
|
-
|
|
18
|
+
console.warn('FronteggAuthGuard.start');
|
|
19
|
+
try {
|
|
20
|
+
console.warn('FronteggAuthGuard', ngZone.isStable, NgZone.isInAngularZone());
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
}
|
|
24
|
+
if (NgZone.isInAngularZone()) {
|
|
25
|
+
this.navigateToUrl();
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
this.ngZone.run(() => {
|
|
29
|
+
this.navigateToUrl();
|
|
30
|
+
});
|
|
31
|
+
}
|
|
20
32
|
obs.next(false);
|
|
21
33
|
}
|
|
22
34
|
});
|
|
23
35
|
});
|
|
24
36
|
}
|
|
37
|
+
navigateToUrl() {
|
|
38
|
+
const redirectUrl = this.router.routerState.snapshot.url;
|
|
39
|
+
this.router.navigateByUrl(this.fronteggAppService.authRoutes.loginUrl + '?redirectUrl=' + encodeURIComponent(redirectUrl));
|
|
40
|
+
}
|
|
41
|
+
canActivate(route, state) {
|
|
42
|
+
return this.authObservable;
|
|
43
|
+
}
|
|
25
44
|
}
|
|
26
45
|
FronteggAuthGuard.decorators = [
|
|
27
46
|
{ type: Injectable }
|
|
28
47
|
];
|
|
29
48
|
FronteggAuthGuard.ctorParameters = () => [
|
|
30
49
|
{ type: FronteggAppService },
|
|
31
|
-
{ type: Router }
|
|
50
|
+
{ type: Router },
|
|
51
|
+
{ type: NgZone }
|
|
32
52
|
];
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnRlZ2ctYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zyb250ZWdnLWFwcC9zcmMvbGliL2d1YXJkcy9mcm9udGVnZy1hdXRoLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBMEIsTUFBTSxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHN0QsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGlCQUFpQjtJQUd0RCxZQUFzQixrQkFBc0MsRUFBWSxNQUFjLEVBQVksTUFBYztRQUM5RyxLQUFLLEVBQUUsQ0FBQztRQURZLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFBWSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVksV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUU5RyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksVUFBVSxDQUFVLEdBQUcsQ0FBQyxFQUFFO1lBQ2xELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxlQUF3QixFQUFFLEVBQUU7Z0JBQzlFLElBQUksZUFBZSxFQUFFO29CQUNuQixHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNoQjtxQkFBTTtvQkFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7b0JBQ3hDLElBQUk7d0JBQ0YsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO3FCQUM5RTtvQkFBQyxPQUFPLENBQUMsRUFBRTtxQkFDWDtvQkFDRCxJQUFJLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBRTt3QkFDNUIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO3FCQUN0Qjt5QkFBTTt3QkFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7NEJBQ25CLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzt3QkFDdkIsQ0FBQyxDQUFDLENBQUM7cUJBQ0o7b0JBQ0QsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDakI7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1FBQ3pELElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsUUFBUSxHQUFHLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzdILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQzs7O1lBcENGLFVBQVU7OztZQUZGLGtCQUFrQjtZQUhNLE1BQU07WUFEbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZyb250ZWdnQmFzZUd1YXJkIH0gZnJvbSAnLi9mcm9udGVnZy1iYXNlLWd1YXJkJztcbmltcG9ydCB7IEZyb250ZWdnQXBwU2VydmljZSB9IGZyb20gJy4uL2Zyb250ZWdnLWFwcC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZyb250ZWdnQXV0aEd1YXJkIGV4dGVuZHMgRnJvbnRlZ2dCYXNlR3VhcmQge1xuICBwcml2YXRlIHJlYWRvbmx5IGF1dGhPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBmcm9udGVnZ0FwcFNlcnZpY2U6IEZyb250ZWdnQXBwU2VydmljZSwgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLCBwcm90ZWN0ZWQgbmdab25lOiBOZ1pvbmUpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYXV0aE9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihvYnMgPT4ge1xuICAgICAgdGhpcy5mcm9udGVnZ0FwcFNlcnZpY2UuaXNBdXRoZW50aWNhdGVkJC5zdWJzY3JpYmUoKGlzQXV0aGVudGljYXRlZDogYm9vbGVhbikgPT4ge1xuICAgICAgICBpZiAoaXNBdXRoZW50aWNhdGVkKSB7XG4gICAgICAgICAgb2JzLm5leHQodHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdGcm9udGVnZ0F1dGhHdWFyZC5zdGFydCcpO1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0Zyb250ZWdnQXV0aEd1YXJkJywgbmdab25lLmlzU3RhYmxlLCBOZ1pvbmUuaXNJbkFuZ3VsYXJab25lKCkpO1xuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKE5nWm9uZS5pc0luQW5ndWxhclpvbmUoKSkge1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvVXJsKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubmF2aWdhdGVUb1VybCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIG9icy5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvVXJsKCk6IHZvaWQge1xuICAgIGNvbnN0IHJlZGlyZWN0VXJsID0gdGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QudXJsO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5mcm9udGVnZ0FwcFNlcnZpY2UuYXV0aFJvdXRlcy5sb2dpblVybCArICc/cmVkaXJlY3RVcmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChyZWRpcmVjdFVybCkpO1xuICB9XG5cbiAgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogT2JzZXJ2YWJsZTxib29sZWFuPiB8IFByb21pc2U8Ym9vbGVhbj4gfCBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoT2JzZXJ2YWJsZTtcbiAgfVxufVxuIl19
|