{ "version": 3, "sources": ["libs/core/src/lib/environment.service.ts", "libs/core/src/lib/util.ts", "libs/core/src/lib/session.service.ts", "libs/core/src/lib/auth.interceptor.ts", "libs/core/src/lib/core.module.ts", "libs/core/src/lib/index.ts", "libs/core/src/index.ts"], "sourcesContent": ["import { Injectable } from '@angular/core';\n\nexport enum Environment {\n LOCAL = 0,\n TEST = 1,\n DEMO = 2,\n PROD = 3,\n}\n\nconst environment: string = (globalThis as { environment?: string }).environment || 'prod';\n\n@Injectable({ providedIn: 'root' })\nexport class EnvironmentService {\n private environment!: Environment;\n\n constructor() {\n this.setEnvironment(environment);\n }\n\n private setEnvironment(env: string): void {\n switch (env) {\n case 'local':\n this.environment = Environment.LOCAL;\n break;\n case 'test':\n this.environment = Environment.TEST;\n break;\n case 'demo':\n this.environment = Environment.DEMO;\n break;\n case 'prod':\n this.environment = Environment.PROD;\n break;\n }\n }\n\n getEnvironment(): Environment {\n return this.environment;\n }\n\n getEnvironmentString(): string {\n switch (this.environment) {\n case Environment.LOCAL:\n return 'local';\n case Environment.TEST:\n return 'test';\n case Environment.DEMO:\n return 'demo';\n case Environment.PROD:\n default:\n return 'prod';\n }\n }\n}\n", "/**\n * If a component is being used in an iframe with a different domain\n * localstorage access will fail on Chrome\n * https://www.chromium.org/for-testers/bug-reporting-guidelines/uncaught-securityer\\\n * ror-failed-to-read-the-localstorage-property-from-window-access-is-denied-for-thi\\\n * s-document\n *\n * this solution is cited here:\n * https://michalzalecki.com/why-using-localStorage-directly-is-a-bad-idea/\n */\nexport function isLocalStorageAvailable(): boolean {\n try {\n const key = '__some_random_key_just_to_test_localstorage__';\n window.localStorage.setItem(key, key);\n window.localStorage.removeItem(key);\n return true;\n } catch (e) {\n return false;\n }\n}\n", "import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { isLocalStorageAvailable } from './util';\n\ndeclare const iamSession: string;\nconst LOCAL_SESSION_KEY = 'local_session';\nconst USE_LOCAL_STORAGE = isLocalStorageAvailable();\n\n@Injectable({ providedIn: 'root' })\nexport class SessionService {\n private sessionIdSubject$$: BehaviorSubject;\n\n constructor() {\n if (typeof iamSession !== 'undefined' && !!iamSession) {\n this.sessionIdSubject$$ = new BehaviorSubject(iamSession);\n } else if (USE_LOCAL_STORAGE) {\n const localSession = this.getLocalStoredSession();\n this.sessionIdSubject$$ = new BehaviorSubject(localSession);\n } else {\n this.sessionIdSubject$$ = new BehaviorSubject(null);\n }\n\n this.sessionIdSubject$$.subscribe((sessionId) => {\n if (USE_LOCAL_STORAGE) {\n this.setLocalStoredSession(sessionId);\n }\n });\n }\n\n getSessionId(): Observable {\n return this.sessionIdSubject$$.asObservable();\n }\n\n setSessionId(sessionId: string): void {\n this.sessionIdSubject$$.next(sessionId);\n }\n\n clearSessionId(): void {\n this.sessionIdSubject$$.next('');\n }\n\n private getLocalStoredSession(): string | null {\n return localStorage.getItem(LOCAL_SESSION_KEY);\n }\n\n private setLocalStoredSession(session: string | null): void {\n localStorage.setItem(LOCAL_SESSION_KEY, session ?? '');\n }\n}\n", "import { Injectable, Injector } from '@angular/core';\nimport { HttpEvent, HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { switchMap, first } from 'rxjs/operators';\nimport { SessionService } from './session.service';\n\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n constructor(private inj: Injector) {}\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n if (!req.withCredentials) {\n return next.handle(req);\n }\n const auth = this.inj.get(SessionService); // Work around for cyclic dependency with app config service\n return auth.getSessionId().pipe(\n first(),\n switchMap((sessionId) => {\n if (sessionId) {\n return next.handle(req.clone({ headers: req.headers.set('Authorization', `Bearer ${sessionId}`) }));\n }\n return next.handle(req);\n }),\n );\n }\n}\n", "import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { AuthInterceptor } from './auth.interceptor';\n\n@NgModule({\n imports: [],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: AuthInterceptor,\n multi: true,\n },\n ],\n})\nexport class CoreModule {}\n", "export * from './environment.service';\nexport * from './session.service';\nexport * from './core.module';\nexport * from './auth.interceptor';\nexport * from './util';\n", "export * from './lib';\n"], "mappings": "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", "names": ["Environment", "environment", "EnvironmentService", "init_environment_service", "__esmMin", "globalThis", "constructor", "setEnvironment", "env", "LOCAL", "TEST", "DEMO", "PROD", "getEnvironment", "getEnvironmentString", "factory", "\u0275fac", "providedIn", "_EnvironmentService", "isLocalStorageAvailable", "key", "window", "localStorage", "setItem", "removeItem", "init_util", "__esmMin", "LOCAL_SESSION_KEY", "USE_LOCAL_STORAGE", "SessionService", "init_session_service", "__esmMin", "init_esm", "init_util", "isLocalStorageAvailable", "constructor", "iamSession", "sessionIdSubject$$", "BehaviorSubject", "localSession", "getLocalStoredSession", "subscribe", "sessionId", "setLocalStoredSession", "getSessionId", "asObservable", "setSessionId", "next", "clearSessionId", "localStorage", "getItem", "session", "setItem", "factory", "\u0275fac", "providedIn", "_SessionService", "AuthInterceptor", "init_auth_interceptor", "__esmMin", "init_operators", "init_session_service", "constructor", "inj", "intercept", "req", "next", "withCredentials", "get", "SessionService", "getSessionId", "pipe", "first", "switchMap", "sessionId", "handle", "clone", "headers", "set", "\u0275\u0275inject", "Injector", "factory", "\u0275fac", "_AuthInterceptor", "CoreModule", "init_core_module", "__esmMin", "init_http", "init_auth_interceptor", "provide", "HTTP_INTERCEPTORS", "useClass", "AuthInterceptor", "multi", "_CoreModule", "init_lib", "__esmMin", "init_environment_service", "init_session_service", "init_core_module", "init_auth_interceptor", "init_util", "init_src", "__esmMin", "init_lib"] }