@ascentgl/ads-identity 20.1.0 → 21.0.1
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.
|
@@ -177,10 +177,10 @@ class TokenService {
|
|
|
177
177
|
}
|
|
178
178
|
return this.issuers;
|
|
179
179
|
}
|
|
180
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
181
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
180
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
181
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: TokenService, providedIn: 'root' }); }
|
|
182
182
|
}
|
|
183
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
183
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: TokenService, decorators: [{
|
|
184
184
|
type: Injectable,
|
|
185
185
|
args: [{ providedIn: 'root' }]
|
|
186
186
|
}] });
|
|
@@ -227,10 +227,10 @@ class IdentityService {
|
|
|
227
227
|
clearTokens() {
|
|
228
228
|
this.tokenService.clearTokens();
|
|
229
229
|
}
|
|
230
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
231
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
230
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IdentityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
231
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IdentityService, providedIn: 'root' }); }
|
|
232
232
|
}
|
|
233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
233
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: IdentityService, decorators: [{
|
|
234
234
|
type: Injectable,
|
|
235
235
|
args: [{ providedIn: 'root' }]
|
|
236
236
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ascentgl-ads-identity.mjs","sources":["../tmp-esm2022/lib/helpers/log.helper.js","../tmp-esm2022/lib/helpers/error.helper.js","../tmp-esm2022/lib/helpers/token.helper.js","../tmp-esm2022/lib/types/internal-consts.js","../tmp-esm2022/lib/services/token.service.js","../tmp-esm2022/lib/services/identity.service.js","../tmp-esm2022/lib/guards/auth.guard.js","../tmp-esm2022/lib/guards/auth-callback.guard.js","../tmp-esm2022/lib/helpers/request.helper.js","../tmp-esm2022/lib/interceptors/request.interceptor.js","../tmp-esm2022/lib/interceptors/response.interceptor.js","../tmp-esm2022/lib/providers/identity.provider.js"],"sourcesContent":["export class LogHelper {\n static { this.prefix = 'ADS-IDENTITY'; }\n static log(...args) {\n if (!this.options?.debugMode)\n return false;\n console.group(this.prefix, 'TOKEN UPDATE');\n console.log(...args);\n console.groupEnd();\n return true;\n }\n static error(...args) {\n if (!this.options?.debugMode)\n return false;\n console.group(this.prefix, 'EXCEPTION');\n console.error(...args);\n console.groupEnd();\n return true;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvaGVscGVycy9sb2cuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxTQUFTO2FBR0ksV0FBTSxHQUFHLGNBQWMsQ0FBQztJQUVoRCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBZTtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFM0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBRTNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUVyQixPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFbkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQWU7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRTNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUV4QyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFFdkIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRW5CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkZW50aXR5T3B0aW9ucyB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLXR5cGVzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBMb2dIZWxwZXIge1xyXG4gIHN0YXRpYyBvcHRpb25zPzogSWRlbnRpdHlPcHRpb25zO1xyXG5cclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBwcmVmaXggPSAnQURTLUlERU5USVRZJztcclxuXHJcbiAgc3RhdGljIGxvZyguLi5hcmdzOiB1bmtub3duW10pIHtcclxuICAgIGlmICghdGhpcy5vcHRpb25zPy5kZWJ1Z01vZGUpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICBjb25zb2xlLmdyb3VwKHRoaXMucHJlZml4LCAnVE9LRU4gVVBEQVRFJyk7XHJcblxyXG4gICAgY29uc29sZS5sb2coLi4uYXJncyk7XHJcblxyXG4gICAgY29uc29sZS5ncm91cEVuZCgpO1xyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGVycm9yKC4uLmFyZ3M6IHVua25vd25bXSkge1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnM/LmRlYnVnTW9kZSkgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGNvbnNvbGUuZ3JvdXAodGhpcy5wcmVmaXgsICdFWENFUFRJT04nKTtcclxuXHJcbiAgICBjb25zb2xlLmVycm9yKC4uLmFyZ3MpO1xyXG5cclxuICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTtcclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19","import { HttpErrorResponse } from '@angular/common/http';\nexport class ErrorHelper {\n static extractMessage(error) {\n if (typeof error === 'string' && error) {\n return error;\n }\n let errorMessage;\n if (error instanceof HttpErrorResponse) {\n errorMessage = error.error?.message ?? error.message;\n }\n if (!errorMessage && typeof error === 'object' && typeof error['message'] === 'string') {\n errorMessage = error['message'];\n }\n return errorMessage && typeof errorMessage === 'string' ? errorMessage : 'Unknown server error';\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZHMtaWRlbnRpdHkvc3JjL2xpYi9oZWxwZXJzL2Vycm9yLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUd6RCxNQUFNLE9BQU8sV0FBVztJQUN0QixNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWM7UUFDbEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxFQUFFLENBQUM7WUFDdkMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxZQUFxQixDQUFDO1FBRTFCLElBQUksS0FBSyxZQUFZLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsWUFBWSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDdkQsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQTJCLEtBQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM1RyxZQUFZLEdBQXVCLEtBQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBRUQsT0FBTyxZQUFZLElBQUksT0FBTyxZQUFZLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDO0lBQ2xHLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBHZW5lcmljQ29sbGVjdGlvbiB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLXR5cGVzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFcnJvckhlbHBlciB7XHJcbiAgc3RhdGljIGV4dHJhY3RNZXNzYWdlKGVycm9yOiB1bmtub3duKTogc3RyaW5nIHtcclxuICAgIGlmICh0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnICYmIGVycm9yKSB7XHJcbiAgICAgIHJldHVybiBlcnJvcjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgZXJyb3JNZXNzYWdlOiB1bmtub3duO1xyXG5cclxuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XHJcbiAgICAgIGVycm9yTWVzc2FnZSA9IGVycm9yLmVycm9yPy5tZXNzYWdlID8/IGVycm9yLm1lc3NhZ2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFlcnJvck1lc3NhZ2UgJiYgdHlwZW9mIGVycm9yID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgKDxHZW5lcmljQ29sbGVjdGlvbj5lcnJvcilbJ21lc3NhZ2UnXSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgZXJyb3JNZXNzYWdlID0gKDxHZW5lcmljQ29sbGVjdGlvbj5lcnJvcilbJ21lc3NhZ2UnXTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3JNZXNzYWdlICYmIHR5cGVvZiBlcnJvck1lc3NhZ2UgPT09ICdzdHJpbmcnID8gZXJyb3JNZXNzYWdlIDogJ1Vua25vd24gc2VydmVyIGVycm9yJztcclxuICB9XHJcbn1cclxuIl19","import { InvalidTokenError, jwtDecode } from 'jwt-decode';\nimport { LogHelper } from './log.helper';\nimport { ErrorHelper } from './error.helper';\nexport class TokenHelper {\n static getPayload(token, verifyClaims = {}, threshold = 0) {\n const payload = jwtDecode(token);\n if (this.isExpired(payload, 'exp', threshold)) {\n throw new InvalidTokenError('Token expired');\n }\n Object.keys(verifyClaims).forEach((claim) => {\n const tokenClaimValue = payload[claim];\n const requestedClaimValue = verifyClaims[claim];\n if (!this.isClaimValid(tokenClaimValue, requestedClaimValue)) {\n throw new InvalidTokenError(`Invalid \"${claim}\" claim value \"${tokenClaimValue}\" provided in token. Required value is \"${requestedClaimValue}\"`);\n }\n });\n return payload;\n }\n static isExpired(token, claim = 'exp', threshold = 0) {\n const throwInvalidColumnError = (column) => {\n throw new InvalidTokenError(`Column ${column} does not contain a valid number`);\n };\n try {\n let timestamp = token[claim];\n if (typeof timestamp === 'number') {\n if (threshold > 0) {\n timestamp -= threshold;\n }\n return !!timestamp && timestamp * 1000 < new Date().getTime();\n }\n return throwInvalidColumnError(claim.toString());\n }\n catch (error) {\n LogHelper.error(new InvalidTokenError(ErrorHelper.extractMessage(error)));\n return true;\n }\n }\n static isClaimValid(tokenClaim, valueToVerify) {\n if (tokenClaim instanceof Array || valueToVerify instanceof Array) {\n if (tokenClaim instanceof Array && valueToVerify instanceof Array) {\n return tokenClaim.filter((value) => valueToVerify.includes(value)).length > 0;\n }\n if (tokenClaim instanceof Array && typeof valueToVerify === 'string') {\n return tokenClaim.includes(valueToVerify);\n }\n if (valueToVerify instanceof Array && typeof tokenClaim === 'string') {\n return valueToVerify.includes(tokenClaim);\n }\n return false;\n }\n return tokenClaim === valueToVerify;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZHMtaWRlbnRpdHkvc3JjL2xpYi9oZWxwZXJzL3Rva2VuLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTFELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLE1BQU0sQ0FBQyxVQUFVLENBQ2YsS0FBYSxFQUNiLGVBQWtDLEVBQUUsRUFDcEMsU0FBUyxHQUFHLENBQUM7UUFFYixNQUFNLE9BQU8sR0FBTSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFLcEMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxNQUFNLElBQUksaUJBQWlCLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUtELE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDMUMsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZDLE1BQU0sbUJBQW1CLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRWhELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7Z0JBQzdELE1BQU0sSUFBSSxpQkFBaUIsQ0FDekIsWUFBWSxLQUFLLGtCQUFrQixlQUFlLDJDQUEyQyxtQkFBbUIsR0FBRyxDQUNwSCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxTQUFTLENBQ3RCLEtBQVEsRUFDUixRQUEwQixLQUFLLEVBQy9CLFNBQVMsR0FBRyxDQUFDO1FBRWIsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLE1BQWMsRUFBUSxFQUFFO1lBQ3ZELE1BQU0sSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLE1BQU0sa0NBQWtDLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUM7UUFFRixJQUFJLENBQUM7WUFJSCxJQUFJLFNBQVMsR0FBWSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFLdEMsSUFBSSxPQUFPLFNBQVMsS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFNbEMsSUFBSSxTQUFTLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ2xCLFNBQVMsSUFBSSxTQUFTLENBQUM7Z0JBQ3pCLENBQUM7Z0JBRUQsT0FBTyxDQUFDLENBQUMsU0FBUyxJQUFJLFNBQVMsR0FBRyxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNoRSxDQUFDO1lBRUQsT0FBTyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBQUMsT0FBTyxLQUFjLEVBQUUsQ0FBQztZQUN4QixTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksaUJBQWlCLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFMUUsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBbUIsRUFBRSxhQUFzQjtRQUtyRSxJQUFJLFVBQVUsWUFBWSxLQUFLLElBQUksYUFBYSxZQUFZLEtBQUssRUFBRSxDQUFDO1lBSWxFLElBQUksVUFBVSxZQUFZLEtBQUssSUFBSSxhQUFhLFlBQVksS0FBSyxFQUFFLENBQUM7Z0JBQ2xFLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDaEYsQ0FBQztZQU1ELElBQUksVUFBVSxZQUFZLEtBQUssSUFBSSxPQUFPLGFBQWEsS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDckUsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzVDLENBQUM7WUFNRCxJQUFJLGFBQWEsWUFBWSxLQUFLLElBQUksT0FBTyxVQUFVLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3JFLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1QyxDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsT0FBTyxVQUFVLEtBQUssYUFBYSxDQUFDO0lBQ3RDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRUb2tlbkVycm9yLCBqd3REZWNvZGUgfSBmcm9tICdqd3QtZGVjb2RlJztcclxuaW1wb3J0IHsgR2VuZXJpY0NvbGxlY3Rpb24sIElkZW50aXR5Snd0Q2xhaW0sIEFjY2Vzc1Rva2VuUGF5bG9hZCwgUmVmcmVzaFRva2VuUGF5bG9hZCB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLXR5cGVzJztcclxuaW1wb3J0IHsgTG9nSGVscGVyIH0gZnJvbSAnLi9sb2cuaGVscGVyJztcclxuaW1wb3J0IHsgRXJyb3JIZWxwZXIgfSBmcm9tICcuL2Vycm9yLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY2xhc3MgVG9rZW5IZWxwZXIge1xyXG4gIHN0YXRpYyBnZXRQYXlsb2FkPFQgZXh0ZW5kcyBBY2Nlc3NUb2tlblBheWxvYWQgfCBSZWZyZXNoVG9rZW5QYXlsb2FkPihcclxuICAgIHRva2VuOiBzdHJpbmcsXHJcbiAgICB2ZXJpZnlDbGFpbXM6IEdlbmVyaWNDb2xsZWN0aW9uID0ge30sXHJcbiAgICB0aHJlc2hvbGQgPSAwLFxyXG4gICk6IFQge1xyXG4gICAgY29uc3QgcGF5bG9hZDogVCA9IGp3dERlY29kZSh0b2tlbik7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiB0aHJvdyBlcnJvciBpZiB0b2tlbiBpcyBleHBpcmVkXHJcbiAgICAgKi9cclxuICAgIGlmICh0aGlzLmlzRXhwaXJlZChwYXlsb2FkLCAnZXhwJywgdGhyZXNob2xkKSkge1xyXG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRva2VuRXJyb3IoJ1Rva2VuIGV4cGlyZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIGxvb3AgdGhyb3VnaCBjbGFpbXMgdG8gdmVyaWZ5IGFuZCBtYWtlIHN1cmUgdGhlIHBheWxvYWQgbWF0Y2ggdGhlaXIgdmFsdWVzXHJcbiAgICAgKi9cclxuICAgIE9iamVjdC5rZXlzKHZlcmlmeUNsYWltcykuZm9yRWFjaCgoY2xhaW0pID0+IHtcclxuICAgICAgY29uc3QgdG9rZW5DbGFpbVZhbHVlID0gcGF5bG9hZFtjbGFpbV07XHJcbiAgICAgIGNvbnN0IHJlcXVlc3RlZENsYWltVmFsdWUgPSB2ZXJpZnlDbGFpbXNbY2xhaW1dO1xyXG5cclxuICAgICAgaWYgKCF0aGlzLmlzQ2xhaW1WYWxpZCh0b2tlbkNsYWltVmFsdWUsIHJlcXVlc3RlZENsYWltVmFsdWUpKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUb2tlbkVycm9yKFxyXG4gICAgICAgICAgYEludmFsaWQgXCIke2NsYWltfVwiIGNsYWltIHZhbHVlIFwiJHt0b2tlbkNsYWltVmFsdWV9XCIgcHJvdmlkZWQgaW4gdG9rZW4uIFJlcXVpcmVkIHZhbHVlIGlzIFwiJHtyZXF1ZXN0ZWRDbGFpbVZhbHVlfVwiYCxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gcGF5bG9hZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGlzRXhwaXJlZDxUIGV4dGVuZHMgQWNjZXNzVG9rZW5QYXlsb2FkIHwgUmVmcmVzaFRva2VuUGF5bG9hZD4oXHJcbiAgICB0b2tlbjogVCxcclxuICAgIGNsYWltOiBJZGVudGl0eUp3dENsYWltID0gJ2V4cCcsXHJcbiAgICB0aHJlc2hvbGQgPSAwLFxyXG4gICk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgdGhyb3dJbnZhbGlkQ29sdW1uRXJyb3IgPSAoY29sdW1uOiBzdHJpbmcpOiB0cnVlID0+IHtcclxuICAgICAgdGhyb3cgbmV3IEludmFsaWRUb2tlbkVycm9yKGBDb2x1bW4gJHtjb2x1bW59IGRvZXMgbm90IGNvbnRhaW4gYSB2YWxpZCBudW1iZXJgKTtcclxuICAgIH07XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqIGdldCB2YWx1ZSBmcm9tIHRoZSBjb2x1bW5cclxuICAgICAgICovXHJcbiAgICAgIGxldCB0aW1lc3RhbXA6IHVua25vd24gPSB0b2tlbltjbGFpbV07XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogaWYgdmFsdWVzIGlzIGEgbnVtYmVyIC0gY29tcGFyZSBpdCBhZ2FpbnN0IGN1cnJlbnQgZGF0ZVxyXG4gICAgICAgKi9cclxuICAgICAgaWYgKHR5cGVvZiB0aW1lc3RhbXAgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogaWYgdGhyZXNob2xkIGlzIHNldCAtIGV4dHJhY3QgaXQgZnJvbSB0aGUgdGltZXN0YW1wXHJcbiAgICAgICAgICogTk9URTogdGhyZXNob2xkIGFsbG93cyB0byBjb25zaWRlciB0aGUgdGltZXN0YW1wIGV4cGlyZWQgZWFybGllcjtcclxuICAgICAgICAgKiB0aGlzIGFsbG93cyB0byBtYWtlIHN1cmUgdGhlIHRva2VuIGRvZXMgbm90IGV4cGlyZSB3aGlsZSBiZWluZyB0cmFuc2ZlcnJlZCB0byBiYWNrZW5kXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgaWYgKHRocmVzaG9sZCA+IDApIHtcclxuICAgICAgICAgIHRpbWVzdGFtcCAtPSB0aHJlc2hvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gISF0aW1lc3RhbXAgJiYgdGltZXN0YW1wICogMTAwMCA8IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gdGhyb3dJbnZhbGlkQ29sdW1uRXJyb3IoY2xhaW0udG9TdHJpbmcoKSk7XHJcbiAgICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xyXG4gICAgICBMb2dIZWxwZXIuZXJyb3IobmV3IEludmFsaWRUb2tlbkVycm9yKEVycm9ySGVscGVyLmV4dHJhY3RNZXNzYWdlKGVycm9yKSkpO1xyXG5cclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBpc0NsYWltVmFsaWQodG9rZW5DbGFpbTogdW5rbm93biwgdmFsdWVUb1ZlcmlmeTogdW5rbm93bikge1xyXG4gICAgLyoqXHJcbiAgICAgKiBpZiBhbnkgb2YgdGhlIHZhbHVlcyBpcyBhbiBhcnJheSAtIGFwcGx5IHNwZWNpYWwgbG9naWM7XHJcbiAgICAgKiBvdGhlcndpc2UgZG8gc3RyaWN0IGNvbXBhcmlzb25cclxuICAgICAqL1xyXG4gICAgaWYgKHRva2VuQ2xhaW0gaW5zdGFuY2VvZiBBcnJheSB8fCB2YWx1ZVRvVmVyaWZ5IGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqIGlmIGJvdGggY2xhaW1zIGFyZSBhcnJheXMgLSBtYWtlIHN1cmUgdGhleSBpbnRlcnNlY3RcclxuICAgICAgICovXHJcbiAgICAgIGlmICh0b2tlbkNsYWltIGluc3RhbmNlb2YgQXJyYXkgJiYgdmFsdWVUb1ZlcmlmeSBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgICAgcmV0dXJuIHRva2VuQ2xhaW0uZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWVUb1ZlcmlmeS5pbmNsdWRlcyh2YWx1ZSkpLmxlbmd0aCA+IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBpZiB0aGUgZmlyc3QgY2xhaW0gaXMgYW4gYXJyYXkgYW5kIHRoZSBzZWNvbmQgaXMgYSBzdHJpbmcgLVxyXG4gICAgICAgKiBjaGVjayBpZiB0aGUgc2Vjb25kIGlzIHdpdGhpbiB0aGUgZmlyc3RcclxuICAgICAgICovXHJcbiAgICAgIGlmICh0b2tlbkNsYWltIGluc3RhbmNlb2YgQXJyYXkgJiYgdHlwZW9mIHZhbHVlVG9WZXJpZnkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgcmV0dXJuIHRva2VuQ2xhaW0uaW5jbHVkZXModmFsdWVUb1ZlcmlmeSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBpZiB0aGUgc2Vjb25kIGNsYWltIGlzIGFuIGFycmF5IGFuZCB0aGUgZmlyc3QgaXMgYSBzdHJpbmcgLVxyXG4gICAgICAgKiBjaGVjayBpZiB0aGUgZmlyc3QgaXMgd2l0aGluIHRoZSBzZWNvbmRcclxuICAgICAgICovXHJcbiAgICAgIGlmICh2YWx1ZVRvVmVyaWZ5IGluc3RhbmNlb2YgQXJyYXkgJiYgdHlwZW9mIHRva2VuQ2xhaW0gPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlVG9WZXJpZnkuaW5jbHVkZXModG9rZW5DbGFpbSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9rZW5DbGFpbSA9PT0gdmFsdWVUb1ZlcmlmeTtcclxuICB9XHJcbn1cclxuIl19","import { InjectionToken } from '@angular/core';\nexport const IDENTITY_OPTIONS = new InjectionToken('IDENTITY_OPTIONS');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtY29uc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZHMtaWRlbnRpdHkvc3JjL2xpYi90eXBlcy9pbnRlcm5hbC1jb25zdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBa0Isa0JBQWtCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElkZW50aXR5T3B0aW9ucyB9IGZyb20gJy4vaW50ZXJuYWwtdHlwZXMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IElERU5USVRZX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48SWRlbnRpdHlPcHRpb25zPignSURFTlRJVFlfT1BUSU9OUycpO1xyXG4iXX0=","import { computed, inject, Injectable, signal } from '@angular/core';\nimport { TokenHelper } from '../helpers/token.helper';\nimport { InvalidTokenError } from 'jwt-decode';\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\nimport { LogHelper } from '../helpers/log.helper';\nimport * as i0 from \"@angular/core\";\nexport class TokenService {\n constructor() {\n this.readonlyAccessToken = computed(() => this.accessToken(), ...(ngDevMode ? [{ debugName: \"readonlyAccessToken\" }] : []));\n this.readonlyRefreshToken = computed(() => this.refreshToken(), ...(ngDevMode ? [{ debugName: \"readonlyRefreshToken\" }] : []));\n this.accessToken = signal(null, ...(ngDevMode ? [{ debugName: \"accessToken\" }] : []));\n this.refreshToken = signal(null, ...(ngDevMode ? [{ debugName: \"refreshToken\" }] : []));\n this.options = inject(IDENTITY_OPTIONS);\n this.issuers = [];\n }\n setAccessToken(token) {\n return this.updateAccessTokenSignal(this.setToken(\"IDMS_AccessToken\", token));\n }\n getAccessToken() {\n return this.updateAccessTokenSignal(this.getToken(\"IDMS_AccessToken\"));\n }\n setRefreshToken(token) {\n return this.updateRefreshTokenSignal(this.setToken(\"IDMS_RefreshToken\", token));\n }\n getRefreshToken() {\n return this.updateRefreshTokenSignal(this.getToken(\"IDMS_RefreshToken\"));\n }\n clearTokens() {\n localStorage.removeItem(\"IDMS_AccessToken\");\n localStorage.removeItem(\"IDMS_RefreshToken\");\n this.updateAccessTokenSignal(null);\n this.updateRefreshTokenSignal(null);\n }\n updateAccessTokenSignal(newToken) {\n if (this.accessToken()?.token !== newToken?.token) {\n this.accessToken.set(newToken);\n }\n return this.accessToken();\n }\n updateRefreshTokenSignal(newToken) {\n if (this.refreshToken()?.token !== newToken?.token) {\n this.refreshToken.set(newToken);\n }\n return this.refreshToken();\n }\n setToken(key, token) {\n if (typeof token !== 'string') {\n throw new InvalidTokenError(`Provided ${key} value is not a string`);\n }\n const identityToken = this.wrapToken(token);\n if (identityToken) {\n localStorage.setItem(key, token);\n }\n LogHelper.log(key, identityToken);\n return identityToken;\n }\n getToken(key) {\n const actualToken = localStorage.getItem(key) ?? null;\n if (typeof actualToken === 'string') {\n try {\n return this.wrapToken(actualToken);\n }\n catch (error) {\n LogHelper.error(error);\n }\n }\n return null;\n }\n wrapToken(token) {\n const payload = TokenHelper.getPayload(token, {\n iss: this.getIssuers(),\n sub: this.options.application,\n }, 60);\n return { token, payload: payload };\n }\n getIssuers() {\n if (this.issuers.length) {\n return this.issuers;\n }\n const issuer = this.options.serviceIssuer ?? this.options.backendUrl;\n this.issuers = [issuer];\n if (issuer.endsWith('/api')) {\n this.issuers.push(issuer.substring(0, issuer.lastIndexOf('/api')));\n }\n else {\n this.issuers.push(`${issuer}/api`);\n }\n return this.issuers;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TokenService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: TokenService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvc2VydmljZXMvdG9rZW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUdsRCxNQUFNLE9BQU8sWUFBWTtJQUR6QjtRQU9FLHdCQUFtQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLCtEQUFDLENBQUM7UUFDekQseUJBQW9CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsZ0VBQUMsQ0FBQztRQUUxQyxnQkFBVyxHQUFHLE1BQU0sQ0FBd0IsSUFBSSx1REFBQyxDQUFDO1FBQ2xELGlCQUFZLEdBQUcsTUFBTSxDQUF5QixJQUFJLHdEQUFDLENBQUM7UUFFcEQsWUFBTyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVDLFlBQU8sR0FBYSxFQUFFLENBQUM7S0FtSWhDO0lBaklDLGNBQWMsQ0FBQyxLQUFjO1FBQzNCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFjLElBQUksQ0FBQyxRQUFRLHFCQUFvQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxD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T0FBTyxDQUFDO1FBQ3RCLENBQUM7UUFLRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUVyRSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFNeEIsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckUsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sTUFBTSxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzhHQWhKVSxZQUFZO2tIQUFaLFlBQVksY0FEQyxNQUFNOzsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0LCBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSWRlbnRpdHlUb2tlbiwgTnVsbGFibGUgfSBmcm9tICcuLi90eXBlcy9pbnRlcm5hbC10eXBlcyc7XHJcbmltcG9ydCB7IEFjY2Vzc1Rva2VuLCBSZWZyZXNoVG9rZW4gfSBmcm9tICcuLi90eXBlcy9nbG9iYWwtdHlwZXMnO1xyXG5pbXBvcnQgeyBUb2tlbkhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvdG9rZW4uaGVscGVyJztcclxuaW1wb3J0IHsgSW52YWxpZFRva2VuRXJyb3IgfSBmcm9tICdqd3QtZGVjb2RlJztcclxuaW1wb3J0IHsgSURFTlRJVFlfT1BUSU9OUyB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLWNvbnN0cyc7XHJcbmltcG9ydCB7IFRva2VuS2V5IH0gZnJvbSAnLi4vdHlwZXMvaW50ZXJuYWwtZW51bXMnO1xyXG5pbXBvcnQgeyBMb2dIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2xvZy5oZWxwZXInO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFRva2VuU2VydmljZSB7XHJcbiAgLyoqXHJcbiAgICogTk9URTogd2UgZXhwb3NlIGFjY2VzcyBhbmQgcmVmcmVzaCB0b2tlbnMgYXMgY29tcHV0ZWQgc2lnbmFscyBzbyB0aGF0IHRoZXkgY2FuIGJlXHJcbiAgICogdXNlZCBpbiBcIklkZW50aXR5U2VydmljZVwiIHRvIGFsbG93IGxpYnJhcnkgdXNlcnMgcmVhY3RpdmUgcmVhZG9ubHkgYWNjZXNzIHRvIHRva2VucyxcclxuICAgKiBzaW5jZSBcIklkZW50aXR5U2VydmljZVwiIGlzIHRoZSBvbmx5IFwicHVibGljXCIgc2VydmljZSBpbiB0aGUgbGlicmFyeVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5QWNjZXNzVG9rZW4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmFjY2Vzc1Rva2VuKCkpO1xyXG4gIHJlYWRvbmx5UmVmcmVzaFRva2VuID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5yZWZyZXNoVG9rZW4oKSk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgYWNjZXNzVG9rZW4gPSBzaWduYWw8TnVsbGFibGU8QWNjZXNzVG9rZW4+PihudWxsKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHJlZnJlc2hUb2tlbiA9IHNpZ25hbDxOdWxsYWJsZTxSZWZyZXNoVG9rZW4+PihudWxsKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KElERU5USVRZX09QVElPTlMpO1xyXG5cclxuICBwcml2YXRlIGlzc3VlcnM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gIHNldEFjY2Vzc1Rva2VuKHRva2VuOiB1bmtub3duKSB7XHJcbiAgICByZXR1cm4gdGhpcy51cGRhdGVBY2Nlc3NUb2tlblNpZ25hbDxBY2Nlc3NUb2tlbj4odGhpcy5zZXRUb2tlbjxBY2Nlc3NUb2tlbj4oVG9rZW5LZXkuYWNjZXNzVG9rZW4sIHRva2VuKSk7XHJcbiAgfVxyXG5cclxuICBnZXRBY2Nlc3NUb2tlbigpIHtcclxuICAgIHJldHVybiB0aGlzLnVwZGF0ZUFjY2Vzc1Rva2VuU2lnbmFsKHRoaXMuZ2V0VG9rZW4oVG9rZW5LZXkuYWNjZXNzVG9rZW4pKTtcclxuICB9XHJcblxyXG4gIHNldFJlZnJlc2hUb2tlbih0b2tlbjogdW5rbm93bikge1xyXG4gICAgcmV0dXJuIHRoaXMudXBkYXRlUmVmcmVzaFRva2VuU2lnbmFsPFJlZnJlc2hUb2tlbj4odGhpcy5zZXRUb2tlbihUb2tlbktleS5yZWZyZXNoVG9rZW4sIHRva2VuKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZWZyZXNoVG9rZW4oKSB7XHJcbiAgICByZXR1cm4gdGhpcy51cGRhdGVSZWZyZXNoVG9rZW5TaWduYWwodGhpcy5nZXRUb2tlbihUb2tlbktleS5yZWZyZXNoVG9rZW4pKTtcclxuICB9XHJcblxyXG4gIGNsZWFyVG9rZW5zKCkge1xyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oVG9rZW5LZXkuYWNjZXNzVG9rZW4pO1xyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oVG9rZW5LZXkucmVmcmVzaFRva2VuKTtcclxuXHJcbiAgICB0aGlzLnVwZGF0ZUFjY2Vzc1Rva2VuU2lnbmFsKG51bGwpO1xyXG4gICAgdGhpcy51cGRhdGVSZWZyZXNoVG9rZW5TaWduYWwobnVsbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUFjY2Vzc1Rva2VuU2lnbmFsPFQgZXh0ZW5kcyBOdWxsYWJsZTxBY2Nlc3NUb2tlbj4+KG5ld1Rva2VuOiBOdWxsYWJsZTxBY2Nlc3NUb2tlbj4pOiBUIHtcclxuICAgIGlmICh0aGlzLmFjY2Vzc1Rva2VuKCk/LnRva2VuICE9PSBuZXdUb2tlbj8udG9rZW4pIHtcclxuICAgICAgdGhpcy5hY2Nlc3NUb2tlbi5zZXQobmV3VG9rZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiA8VD50aGlzLmFjY2Vzc1Rva2VuKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVJlZnJlc2hUb2tlblNpZ25hbDxUIGV4dGVuZHMgTnVsbGFibGU8UmVmcmVzaFRva2VuPj4obmV3VG9rZW46IE51bGxhYmxlPFJlZnJlc2hUb2tlbj4pOiBUIHtcclxuICAgIGlmICh0aGlzLnJlZnJlc2hUb2tlbigpPy50b2tlbiAhPT0gbmV3VG9rZW4/LnRva2VuKSB7XHJcbiAgICAgIHRoaXMucmVmcmVzaFRva2VuLnNldChuZXdUb2tlbik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIDxUPnRoaXMucmVmcmVzaFRva2VuKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFRva2VuPFQgZXh0ZW5kcyBJZGVudGl0eVRva2VuPihrZXk6IFRva2VuS2V5LCB0b2tlbjogdW5rbm93bik6IFQge1xyXG4gICAgLyoqXHJcbiAgICAgKiBtYWtlIHN1cmUgcHJvdmlkZWQgdG9rZW4gaXMgYXQgbGVhc3QgYSBzdHJpbmdcclxuICAgICAqL1xyXG4gICAgaWYgKHR5cGVvZiB0b2tlbiAhPT0gJ3N0cmluZycpIHtcclxuICAgICAgdGhyb3cgbmV3IEludmFsaWRUb2tlbkVycm9yKGBQcm92aWRlZCAke2tleX0gdmFsdWUgaXMgbm90IGEgc3RyaW5nYCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBnZXQgaWRlbnRpdHkgdG9rZW5cclxuICAgICAqL1xyXG4gICAgY29uc3QgaWRlbnRpdHlUb2tlbiA9IHRoaXMud3JhcFRva2VuPFQ+KHRva2VuKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIGlmIHByb3ZpZGVkIC0gc2F2ZSBpdCB0byBsb2NhbCBzdG9yYWdlXHJcbiAgICAgKi9cclxuICAgIGlmIChpZGVudGl0eVRva2VuKSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdG9rZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIExvZ0hlbHBlci5sb2coa2V5LCBpZGVudGl0eVRva2VuKTtcclxuXHJcbiAgICByZXR1cm4gaWRlbnRpdHlUb2tlbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0VG9rZW48VCBleHRlbmRzIElkZW50aXR5VG9rZW4+KGtleTogVG9rZW5LZXkpOiBOdWxsYWJsZTxUPiB7XHJcbiAgICAvKipcclxuICAgICAqIGdldCB0b2tlbiB2YWx1ZSBmcm9tIGxvY2FsIHN0b3JhZ2Ugb3IgdXNlIG51bGxcclxuICAgICAqL1xyXG4gICAgY29uc3QgYWN0dWFsVG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpID8/IG51bGw7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBhY3R1YWxUb2tlbiA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICByZXR1cm4gdGhpcy53cmFwVG9rZW48VD4oYWN0dWFsVG9rZW4pO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIExvZ0hlbHBlci5lcnJvcihlcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd3JhcFRva2VuPFQgZXh0ZW5kcyBJZGVudGl0eVRva2VuPih0b2tlbjogc3RyaW5nKTogVCB7XHJcbiAgICAvKipcclxuICAgICAqIHBhcnNlIHRva2VuIGFuZCBvYnRhaW4gaXRzIHBheWxvYWRcclxuICAgICAqIE5PVEU6IGVycm9ycyB3aWxsIGJlIHRocm93biBpZiB0b2tlbiBpcyBleHBpcmVkIG9yIGhhcyBpbnZhbGlkIGNsYWltc1xyXG4gICAgICovXHJcbiAgICBjb25zdCBwYXlsb2FkID0gVG9rZW5IZWxwZXIuZ2V0UGF5bG9hZChcclxuICAgICAgdG9rZW4sXHJcbiAgICAgIHtcclxuICAgICAgICBpc3M6IHRoaXMuZ2V0SXNzdWVycygpLFxyXG4gICAgICAgIHN1YjogdGhpcy5vcHRpb25zLmFwcGxpY2F0aW9uLFxyXG4gICAgICB9LFxyXG4gICAgICA2MCxcclxuICAgICk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiByZXR1cm4gaWRlbnRpdHkgdG9rZW4gb2JqZWN0XHJcbiAgICAgKi9cclxuICAgIHJldHVybiA8VD57IHRva2VuLCBwYXlsb2FkOiBwYXlsb2FkIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldElzc3VlcnMoKTogc3RyaW5nW10ge1xyXG4gICAgLyoqXHJcbiAgICAgKiBpZiB3ZSBhbHJlYWR5IGhhdmUgaXNzdWVycyAtIGlzZSB0aGVtXHJcbiAgICAgKi9cclxuICAgIGlmICh0aGlzLmlzc3VlcnMubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmlzc3VlcnM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBnZXQgaXNzdWVyIHZhbHVlIGZyb20gdGhlIG9wdGlvbnNcclxuICAgICAqL1xyXG4gICAgY29uc3QgaXNzdWVyID0gdGhpcy5vcHRpb25zLnNlcnZpY2VJc3N1ZXIgPz8gdGhpcy5vcHRpb25zLmJhY2tlbmRVcmw7XHJcblxyXG4gICAgdGhpcy5pc3N1ZXJzID0gW2lzc3Vlcl07XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBtYWtlIHN1cmUgd2UgaGF2ZSBib3RoIHZhcmlhbnRzICh3aXRoIGFuZCB3aXRob3V0IFwiL2FwaVwiIHN1ZmZpeCkgYXMgaXNzdWVyc1xyXG4gICAgICogdG9kbyBcIi9hcGlcIiBzdWZmaXggdmVyaWZpY2F0aW9uIG11c3QgYmUgcmVtb3ZlZCB3aGVuIFwiL2FwaVwiIHN1ZmZpeCB3aWxsIGJlIHJlbW92ZWQgZnJvbSB0aGUgXCJpc3N1ZXJcIiBpbiBJRE1TXHJcbiAgICAgKi9cclxuICAgIGlmIChpc3N1ZXIuZW5kc1dpdGgoJy9hcGknKSkge1xyXG4gICAgICB0aGlzLmlzc3VlcnMucHVzaChpc3N1ZXIuc3Vic3RyaW5nKDAsIGlzc3Vlci5sYXN0SW5kZXhPZignL2FwaScpKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlzc3VlcnMucHVzaChgJHtpc3N1ZXJ9L2FwaWApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmlzc3VlcnM7XHJcbiAgfVxyXG59XHJcbiJdfQ==","import { computed, inject, Injectable } from '@angular/core';\nimport { catchError, map, of, throwError } from 'rxjs';\nimport { TokenService } from './token.service';\nimport { HttpClient } from '@angular/common/http';\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\nimport { LogHelper } from '../helpers/log.helper';\nimport { InvalidTokenError } from 'jwt-decode';\nimport { ErrorHelper } from '../helpers/error.helper';\nimport * as i0 from \"@angular/core\";\nexport class IdentityService {\n constructor() {\n this.accessToken = computed(() => this.tokenService.readonlyAccessToken(), ...(ngDevMode ? [{ debugName: \"accessToken\" }] : []));\n this.refreshToken = computed(() => this.tokenService.readonlyRefreshToken(), ...(ngDevMode ? [{ debugName: \"refreshToken\" }] : []));\n this.tokenService = inject(TokenService);\n this.httpClient = inject(HttpClient);\n this.options = inject(IDENTITY_OPTIONS);\n }\n isAuthenticated() {\n return !!this.tokenService.getAccessToken();\n }\n authenticate() {\n const accessToken = this.tokenService.getAccessToken();\n const refreshToken = this.tokenService.getRefreshToken();\n if (accessToken) {\n return of(accessToken);\n }\n if (refreshToken) {\n return this.refreshTokens();\n }\n return throwError(() => new InvalidTokenError('No valid tokens found'));\n }\n refreshTokens() {\n const refreshToken = this.tokenService.getRefreshToken();\n if (!refreshToken) {\n return throwError(() => new InvalidTokenError('No refresh token found'));\n }\n return this.httpClient\n .get(`${this.options.backendUrl}/api/v${this.options.apiVersion ?? 1}/refresh-token`, {\n headers: { Authorization: `Bearer ${refreshToken.token}` },\n })\n .pipe(catchError((error) => {\n LogHelper.error(new InvalidTokenError(`Failed to obtain tokens. Reason: ${ErrorHelper.extractMessage(error).toLowerCase()}`));\n return throwError(() => error);\n }), map((response) => {\n this.tokenService.setRefreshToken(response.refresh_token);\n return this.tokenService.setAccessToken(response.access_token);\n }));\n }\n clearTokens() {\n this.tokenService.clearTokens();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: IdentityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: IdentityService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.1\", ngImport: i0, type: IdentityService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvc2VydmljZXMvaWRlbnRpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUl0RCxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQU9XLGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsdURBQUMsQ0FBQztRQUN0RSxpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG9CQUFvQixFQUFFLHdEQUFDLENBQUM7UUFFaEUsaUJBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDcEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxZQUFPLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FnRnJEO0lBOUVDLGVBQWU7UUFDYixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFRCxZQUFZO1FBSVYsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2RCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBS3pELElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsQ0FBQztRQUtELElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQztRQUtELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxhQUFhO1FBQ1gsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUt6RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUtELE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsR0FBRyxDQUF1QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxTQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUcsT0FBTyxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFO1NBQzNELENBQUM7YUFDRCxJQUFJLENBQ0gsVUFBVSxDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUU7WUFJNUIsU0FBUyxDQUFDLEtBQUssQ0FDYixJQUFJLGlCQUFpQixDQUNuQixvQ0FBb0MsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUN0RixDQUNGLENBQUM7WUFFRixPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUlmLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUsxRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRSxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7OEdBMUZVLGVBQWU7a0hBQWYsZUFBZSxjQURGLE1BQU07OzJGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUb2tlblNlcnZpY2UgfSBmcm9tICcuL3Rva2VuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJREVOVElUWV9PUFRJT05TIH0gZnJvbSAnLi4vdHlwZXMvaW50ZXJuYWwtY29uc3RzJztcclxuaW1wb3J0IHsgUmVmcmVzaFRva2VuUmVzcG9uc2UgfSBmcm9tICcuLi90eXBlcy9pbnRlcm5hbC10eXBlcyc7XHJcbmltcG9ydCB7IExvZ0hlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvbG9nLmhlbHBlcic7XHJcbmltcG9ydCB7IEFjY2Vzc1Rva2VuIH0gZnJvbSAnLi4vdHlwZXMvZ2xvYmFsLXR5cGVzJztcclxuaW1wb3J0IHsgSW52YWxpZFRva2VuRXJyb3IgfSBmcm9tICdqd3QtZGVjb2RlJztcclxuaW1wb3J0IHsgRXJyb3JIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2Vycm9yLmhlbHBlcic7XHJcbmltcG9ydCB7IElkZW50aXR5U2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvaWRlbnRpdHktc2VydmljZS5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIElkZW50aXR5U2VydmljZSBpbXBsZW1lbnRzIElkZW50aXR5U2VydmljZUludGVyZmFjZSB7XHJcbiAgLyoqXHJcbiAgICogTk9URTogd2UgZXhwb3NlIGFjY2VzcyBhbmQgcmVmcmVzaCB0b2tlbnMgYXMgY29tcHV0ZWQgc2lnbmFscyB0byBhbGxvd1xyXG4gICAqIGxpYnJhcnkgdXNlcnMgcmVhY3RpdmUgcmVhZG9ubHkgYWNjZXNzIHRvIHRva2Vucywgc2luY2UgXCJJZGVudGl0eVNlcnZpY2VcIlxyXG4gICAqIGlzIHRoZSBvbmx5IFwicHVibGljXCIgc2VydmljZSBpbiB0aGUgbGlicmFyeVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IGFjY2Vzc1Rva2VuID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50b2tlblNlcnZpY2UucmVhZG9ubHlBY2Nlc3NUb2tlbigpKTtcclxuICByZWFkb25seSByZWZyZXNoVG9rZW4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLnRva2VuU2VydmljZS5yZWFkb25seVJlZnJlc2hUb2tlbigpKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSB0b2tlblNlcnZpY2UgPSBpbmplY3QoVG9rZW5TZXJ2aWNlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KElERU5USVRZX09QVElPTlMpO1xyXG5cclxuICBpc0F1dGhlbnRpY2F0ZWQoKSB7XHJcbiAgICByZXR1cm4gISF0aGlzLnRva2VuU2VydmljZS5nZXRBY2Nlc3NUb2tlbigpO1xyXG4gIH1cclxuXHJcbiAgYXV0aGVudGljYXRlKCk6IE9ic2VydmFibGU8QWNjZXNzVG9rZW4+IHtcclxuICAgIC8qKlxyXG4gICAgICogZ2V0IGFjY2VzcyBhbmQgcmVmcmVzaCB0b2tlblxyXG4gICAgICovXHJcbiAgICBjb25zdCBhY2Nlc3NUb2tlbiA9IHRoaXMudG9rZW5TZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCk7XHJcbiAgICBjb25zdCByZWZyZXNoVG9rZW4gPSB0aGlzLnRva2VuU2VydmljZS5nZXRSZWZyZXNoVG9rZW4oKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIGlmIGl0IGlzIGF2YWlsYWJsZSAtIHJldHVybiBpdDsgb3RoZXJ3aXNlIHRyeSByZWZyZXNoaW5nIHRoZSB0b2tlbnMgYnkgY2FsbGluZyBJRE1TXHJcbiAgICAgKi9cclxuICAgIGlmIChhY2Nlc3NUb2tlbikge1xyXG4gICAgICByZXR1cm4gb2YoYWNjZXNzVG9rZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogaWYgcmVmcmVzaCB0b2tlbiBpcyBhdmFpbGFibGUgLSB0cnkgZ2V0dGluZyBuZXcgdG9rZW5zXHJcbiAgICAgKi9cclxuICAgIGlmIChyZWZyZXNoVG9rZW4pIHtcclxuICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaFRva2VucygpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogdGhyb3cgZXJyb3IgaWYgbm8gdG9rZW5zIGFyZSBhdmFpbGFibGVcclxuICAgICAqL1xyXG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEludmFsaWRUb2tlbkVycm9yKCdObyB2YWxpZCB0b2tlbnMgZm91bmQnKSk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoVG9rZW5zKCk6IE9ic2VydmFibGU8QWNjZXNzVG9rZW4+IHtcclxuICAgIGNvbnN0IHJlZnJlc2hUb2tlbiA9IHRoaXMudG9rZW5TZXJ2aWNlLmdldFJlZnJlc2hUb2tlbigpO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogdGhyb3cgZXJyb3IgaWYgcmVmcmVzaCB0b2tlbiBpcyBub3QgYXZhaWxhYmxlXHJcbiAgICAgKi9cclxuICAgIGlmICghcmVmcmVzaFRva2VuKSB7XHJcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBJbnZhbGlkVG9rZW5FcnJvcignTm8gcmVmcmVzaCB0b2tlbiBmb3VuZCcpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIG1ha2UgcmVxdWVzdCB0byBJZGVudGl0eSBzZXJ2aWNlIHRvIGdldCBuZXcgdG9rZW5zXHJcbiAgICAgKi9cclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLmdldDxSZWZyZXNoVG9rZW5SZXNwb25zZT4oYCR7dGhpcy5vcHRpb25zLmJhY2tlbmRVcmx9L2FwaS92JHt0aGlzLm9wdGlvbnMuYXBpVmVyc2lvbiA/PyAxfS9yZWZyZXNoLXRva2VuYCwge1xyXG4gICAgICAgIGhlYWRlcnM6IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3JlZnJlc2hUb2tlbi50b2tlbn1gIH0sXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiB1bmtub3duKSA9PiB7XHJcbiAgICAgICAgICAvKipcclxuICAgICAgICAgICAqIGxvZyBlcnJvciBpZiBpdCBoYXBwZW5zXHJcbiAgICAgICAgICAgKi9cclxuICAgICAgICAgIExvZ0hlbHBlci5lcnJvcihcclxuICAgICAgICAgICAgbmV3IEludmFsaWRUb2tlbkVycm9yKFxyXG4gICAgICAgICAgICAgIGBGYWlsZWQgdG8gb2J0YWluIHRva2Vucy4gUmVhc29uOiAke0Vycm9ySGVscGVyLmV4dHJhY3RNZXNzYWdlKGVycm9yKS50b0xvd2VyQ2FzZSgpfWAsXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAvKipcclxuICAgICAgICAgICAqIHNldCByZWZyZXNoIHRva2VuXHJcbiAgICAgICAgICAgKi9cclxuICAgICAgICAgIHRoaXMudG9rZW5TZXJ2aWNlLnNldFJlZnJlc2hUb2tlbihyZXNwb25zZS5yZWZyZXNoX3Rva2VuKTtcclxuXHJcbiAgICAgICAgICAvKipcclxuICAgICAgICAgICAqIHNldCBhbmQgcmV0dXJuIGFjY2VzcyB0b2tlblxyXG4gICAgICAgICAgICovXHJcbiAgICAgICAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2Uuc2V0QWNjZXNzVG9rZW4ocmVzcG9uc2UuYWNjZXNzX3Rva2VuKTtcclxuICAgICAgICB9KSxcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIGNsZWFyVG9rZW5zKCkge1xyXG4gICAgdGhpcy50b2tlblNlcnZpY2UuY2xlYXJUb2tlbnMoKTtcclxuICB9XHJcbn1cclxuIl19","import { inject } from '@angular/core';\nimport { IdentityService } from '../services/identity.service';\nimport { catchError, map, of } from 'rxjs';\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\nimport { LogHelper } from '../helpers/log.helper';\nexport const IDENTITY_AUTH_GUARD = (_route, state) => {\n const identityService = inject(IdentityService);\n const options = inject(IDENTITY_OPTIONS);\n return identityService.authenticate().pipe(catchError((error) => {\n window.location.href = `${options.frontendUrl}/apps/${options.application}?redirect=true&redirect_path=${encodeURIComponent(state.url)}`;\n LogHelper.error(error);\n return of(null);\n }), map((accessToken) => !!accessToken));\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvZ3VhcmRzL2F1dGguZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBa0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7SUFDbEUsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2hELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBT3pDLE9BQU8sZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDeEMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDbkIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsR0FBRyxPQUFPLENBQUMsV0FBVyxTQUFTLE9BQU8sQ0FBQyxXQUFXLGdDQUFnQyxrQkFBa0IsQ0FDekgsS0FBSyxDQUFDLEdBQUcsQ0FDVixFQUFFLENBQUM7UUFFSixTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUNwQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FuQWN0aXZhdGVGbiB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJZGVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9pZGVudGl0eS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJREVOVElUWV9PUFRJT05TIH0gZnJvbSAnLi4vdHlwZXMvaW50ZXJuYWwtY29uc3RzJztcclxuaW1wb3J0IHsgTG9nSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9sb2cuaGVscGVyJztcclxuXHJcbmV4cG9ydCBjb25zdCBJREVOVElUWV9BVVRIX0dVQVJEOiBDYW5BY3RpdmF0ZUZuID0gKF9yb3V0ZSwgc3RhdGUpID0+IHtcclxuICBjb25zdCBpZGVudGl0eVNlcnZpY2UgPSBpbmplY3QoSWRlbnRpdHlTZXJ2aWNlKTtcclxuICBjb25zdCBvcHRpb25zID0gaW5qZWN0KElERU5USVRZX09QVElPTlMpO1xyXG5cclxuICAvKipcclxuICAgKiBjaGVjayBpZiB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQ7XHJcbiAgICogaWYgZXJyb3IgaGFwcGVuZWQgLSByZWRpcmVjdCB0byBJRE1TIHVybCB0byByZS1sb2dpbjtcclxuICAgKiByZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzIGFuZCBmYWxzZSBvbiBlcnJvclxyXG4gICAqL1xyXG4gIHJldHVybiBpZGVudGl0eVNlcnZpY2UuYXV0aGVudGljYXRlKCkucGlwZShcclxuICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XHJcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYCR7b3B0aW9ucy5mcm9udGVuZFVybH0vYXBwcy8ke29wdGlvbnMuYXBwbGljYXRpb259P3JlZGlyZWN0PXRydWUmcmVkaXJlY3RfcGF0aD0ke2VuY29kZVVSSUNvbXBvbmVudChcclxuICAgICAgICBzdGF0ZS51cmwsXHJcbiAgICAgICl9YDtcclxuXHJcbiAgICAgIExvZ0hlbHBlci5lcnJvcihlcnJvcik7XHJcblxyXG4gICAgICByZXR1cm4gb2YobnVsbCk7XHJcbiAgICB9KSxcclxuICAgIG1hcCgoYWNjZXNzVG9rZW4pID0+ICEhYWNjZXNzVG9rZW4pLFxyXG4gICk7XHJcbn07XHJcbiJdfQ==","import { Router } from '@angular/router';\nimport { inject } from '@angular/core';\nimport { TokenService } from '../services/token.service';\nimport { LogHelper } from '../helpers/log.helper';\nimport { ErrorHelper } from '../helpers/error.helper';\nexport const IDENTITY_AUTH_CALLBACK_GUARD = (route) => {\n const router = inject(Router);\n const tokenService = inject(TokenService);\n const throwAccessDenied = () => {\n throw new Error('Access denied');\n };\n try {\n if (!route.queryParams['access_token'] || !route.queryParams['access_token']) {\n throwAccessDenied();\n }\n tokenService.setAccessToken(route.queryParams['access_token']);\n tokenService.setRefreshToken(route.queryParams['refresh_token']);\n return router.navigateByUrl(route.queryParams['redirect_path'] || '/');\n }\n catch (error) {\n const routerOutlet = document.body.querySelector('router-outlet');\n if (routerOutlet) {\n routerOutlet.innerHTML = ErrorHelper.extractMessage(error);\n }\n LogHelper.error(error);\n return false;\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jYWxsYmFjay5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvZ3VhcmRzL2F1dGgtY2FsbGJhY2suZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFrQixDQUFDLEtBQUssRUFBRSxFQUFFO0lBQ25FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFMUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLEVBQUU7UUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUM7SUFNRixJQUFJLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUM3RSxpQkFBaUIsRUFBRSxDQUFDO1FBQ3RCLENBQUM7UUFFRCxZQUFZLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUUvRCxZQUFZLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUVqRSxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQUMsT0FBTyxLQUFjLEVBQUUsQ0FBQztRQUN4QixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVsRSxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLFlBQVksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBRUQsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYW5BY3RpdmF0ZUZuLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdG9rZW4uc2VydmljZSc7XHJcbmltcG9ydCB7IExvZ0hlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvbG9nLmhlbHBlcic7XHJcbmltcG9ydCB7IEVycm9ySGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9lcnJvci5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IElERU5USVRZX0FVVEhfQ0FMTEJBQ0tfR1VBUkQ6IENhbkFjdGl2YXRlRm4gPSAocm91dGUpID0+IHtcclxuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICBjb25zdCB0b2tlblNlcnZpY2UgPSBpbmplY3QoVG9rZW5TZXJ2aWNlKTtcclxuXHJcbiAgY29uc3QgdGhyb3dBY2Nlc3NEZW5pZWQgPSAoKSA9PiB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjY2VzcyBkZW5pZWQnKTtcclxuICB9O1xyXG5cclxuICAvKipcclxuICAgKiBzYXZlIGFjY2VzcyBhbmQgcmVmcmVzaCB0b2tlbnMgYW5kIHJlZGlyZWN0IGVpdGhlciB0byByb290IG9yIHRvIHByb3ZpZGVkIFwicmVkaXJlY3RfcGF0aFwiO1xyXG4gICAqIGlmIGVycm9yIGhhcHBlbmVkIC0gZGlzcGxheSBlcnJvciBtZXNzYWdlIG9uIHRoZSBwYWdlIGFuZCByZXR1cm4gZmFsc2UgdG8gc3RvcCBmdXJ0aGVyIG5hdmlnYXRpb25cclxuICAgKi9cclxuICB0cnkge1xyXG4gICAgaWYgKCFyb3V0ZS5xdWVyeVBhcmFtc1snYWNjZXNzX3Rva2VuJ10gfHwgIXJvdXRlLnF1ZXJ5UGFyYW1zWydhY2Nlc3NfdG9rZW4nXSkge1xyXG4gICAgICB0aHJvd0FjY2Vzc0RlbmllZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRva2VuU2VydmljZS5zZXRBY2Nlc3NUb2tlbihyb3V0ZS5xdWVyeVBhcmFtc1snYWNjZXNzX3Rva2VuJ10pO1xyXG5cclxuICAgIHRva2VuU2VydmljZS5zZXRSZWZyZXNoVG9rZW4ocm91dGUucXVlcnlQYXJhbXNbJ3JlZnJlc2hfdG9rZW4nXSk7XHJcblxyXG4gICAgcmV0dXJuIHJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHJvdXRlLnF1ZXJ5UGFyYW1zWydyZWRpcmVjdF9wYXRoJ10gfHwgJy8nKTtcclxuICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xyXG4gICAgY29uc3Qgcm91dGVyT3V0bGV0ID0gZG9jdW1lbnQuYm9keS5xdWVyeVNlbGVjdG9yKCdyb3V0ZXItb3V0bGV0Jyk7XHJcblxyXG4gICAgaWYgKHJvdXRlck91dGxldCkge1xyXG4gICAgICByb3V0ZXJPdXRsZXQuaW5uZXJIVE1MID0gRXJyb3JIZWxwZXIuZXh0cmFjdE1lc3NhZ2UoZXJyb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIExvZ0hlbHBlci5lcnJvcihlcnJvcik7XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxufTtcclxuIl19","import { HttpErrorResponse } from '@angular/common/http';\nimport { throwError } from 'rxjs';\nexport class RequestHelper {\n static isIdentityEndpointRequest(request) {\n return ((!!this.options?.backendUrl && request.url.startsWith(this.options?.backendUrl)) ||\n (!!this.options?.frontendUrl && request.url.startsWith(this.options?.frontendUrl)));\n }\n static isAuthorizedRequest(request) {\n return !this.options?.requestFilter || this.options.requestFilter(request);\n }\n static isAuthorizationError(error) {\n return error instanceof HttpErrorResponse && error.status === 401;\n }\n static attachAuthorizationHeader(request, accessToken) {\n return request.clone({\n setHeaders: { authorization: `Bearer ${accessToken.token}`, 'auth-source': 'IDMS' },\n });\n }\n static onAuthorizationError(error, injector) {\n if (this.options?.onAuthorizationError) {\n this.options?.onAuthorizationError(error, injector);\n }\n return throwError(() => error);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy1pZGVudGl0eS9zcmMvbGliL2hlbHBlcnMvcmVxdWVzdC5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUtsQyxNQUFNLE9BQU8sYUFBYTtJQUd4QixNQUFNLENBQUMseUJBQXlCLENBQUMsT0FBNkI7UUFDNUQsT0FBTyxDQUNMLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDaEYsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUNuRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxPQUE2QjtRQUN0RCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFjO1FBQ3hDLE9BQU8sS0FBSyxZQUFZLGlCQUFpQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMseUJBQXlCLENBQUMsT0FBNkIsRUFBRSxXQUF3QjtRQUN0RixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbkIsVUFBVSxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUU7U0FDcEYsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFjLEVBQUUsUUFBa0I7UUFDNUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLE9BQU8sRUFBRSxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJZGVudGl0eU9wdGlvbnMgfSBmcm9tICcuLi90eXBlcy9pbnRlcm5hbC10eXBlcyc7XHJcbmltcG9ydCB7IEFjY2Vzc1Rva2VuIH0gZnJvbSAnLi4vdHlwZXMvZ2xvYmFsLXR5cGVzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBSZXF1ZXN0SGVscGVyIHtcclxuICBzdGF0aWMgb3B0aW9ucz86IElkZW50aXR5T3B0aW9ucztcclxuXHJcbiAgc3RhdGljIGlzSWRlbnRpdHlFbmRwb2ludFJlcXVlc3QocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4pOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICghIXRoaXMub3B0aW9ucz8uYmFja2VuZFVybCAmJiByZXF1ZXN0LnVybC5zdGFydHNXaXRoKHRoaXMub3B0aW9ucz8uYmFja2VuZFVybCkpIHx8XHJcbiAgICAgICghIXRoaXMub3B0aW9ucz8uZnJvbnRlbmRVcmwgJiYgcmVxdWVzdC51cmwuc3RhcnRzV2l0aCh0aGlzLm9wdGlvbnM/LmZyb250ZW5kVXJsKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaXNBdXRob3JpemVkUmVxdWVzdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICF0aGlzLm9wdGlvbnM/LnJlcXVlc3RGaWx0ZXIgfHwgdGhpcy5vcHRpb25zLnJlcXVlc3RGaWx0ZXIocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaXNBdXRob3JpemF0aW9uRXJyb3IoZXJyb3I6IHVua25vd24pOiBib29sZWFuIHtcclxuICAgIHJldHVybiBlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlICYmIGVycm9yLnN0YXR1cyA9PT0gNDAxO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF0dGFjaEF1dGhvcml6YXRpb25IZWFkZXIocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIGFjY2Vzc1Rva2VuOiBBY2Nlc3NUb2tlbik6IEh0dHBSZXF1ZXN0PHVua25vd24+IHtcclxuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcclxuICAgICAgc2V0SGVhZGVyczogeyBhdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YWNjZXNzVG9rZW4udG9rZW59YCwgJ2F1dGgtc291cmNlJzogJ0lETVMnIH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBvbkF1dGhvcml6YXRpb25FcnJvcihlcnJvcjogdW5rbm93biwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zPy5vbkF1dGhvcml6YXRpb25FcnJvcikge1xyXG4gICAgICB0aGlzLm9wdGlvbnM/Lm9uQXV0aG9yaXphdGlvbkVycm9yKGVycm9yLCBpbmplY3Rvcik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xyXG4gIH1cclxufVxyXG4iXX0=","import { catchError, switchMap } from 'rxjs';\nimport { inject, Injector } from '@angular/core';\nimport { IdentityService } from '../services/identity.service';\nimport { RequestHelper } from '../helpers/request.helper';\nexport function requestInterceptor(request, next) {\n const identityService = inject(IdentityService);\n const injector = inject(Injector);\n if (RequestHelper.isIdentityEndpointRequest(request) || !RequestHelper.isAuthorizedRequest(request)) {\n return next(request);\n }\n return identityService.authenticate().pipe(catchError((error) => RequestHelper.onAuthorizationError(error, injector)), switchMap((accessToken) => next(RequestHelper.attachAuthorizationHeader(request, accessToken))));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLWlkZW50aXR5L3NyYy9saWIvaW50ZXJjZXB0b3JzL3JlcXVlc3QuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBNkIsRUFBRSxJQUFtQjtJQUNuRixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDaEQsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBS2xDLElBQUksYUFBYSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDcEcsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQU1ELE9BQU8sZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDeEMsVUFBVSxDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQ25GLFNBQVMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNoRyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXJGbiwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIE9ic2VydmFibGUsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBpbmplY3QsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElkZW50aXR5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2lkZW50aXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZXF1ZXN0SGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9yZXF1ZXN0LmhlbHBlcic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVxdWVzdEludGVyY2VwdG9yKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlckZuKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICBjb25zdCBpZGVudGl0eVNlcnZpY2UgPSBpbmplY3QoSWRlbnRpdHlTZXJ2aWNlKTtcclxuICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XHJcblxyXG4gIC8qKlxyXG4gICAqIGlmIGl0IGlzIGEgcmVxdWVzdCB0byBJZGVudGl0eSBTZXJ2aWNlIG9yIG5vdCBhbiBhdXRob3JpemVkIHJlcXVlc3QgLSBkbyBub3QgbW9kaWZ5IGl0XHJcbiAgICovXHJcbiAgaWYgKFJlcXVlc3RIZWxwZXIuaXNJZGVudGl0eUVuZHBvaW50UmVxdWVzdChyZXF1ZXN0KSB8fCAhUmVxdWVzdEhlbHBlci5pc0F1dGhvcml6ZWRSZXF1ZXN0KHJlcXVlc3QpKSB7XHJcbiAgICByZXR1cm4gbmV4dChyZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGlmIGN1cnJlbnQgdXNlciBpcyBhdXRoZW50aWNhdGVkIC0gYXR0YWNoIFwiQXV0aG9yaXphdGlvblwiIGhlYWRlciB0byB0aGUgcmVxdWVzdDtcclxuICAgKiBvciBwcm9jZXNzIHRoZSBlcnJvciBpZiBpdCBoYXBwZW5zXHJcbiAgICovXHJcbiAgcmV0dXJuIGlkZW50aXR5U2VydmljZS5hdXRoZW50aWNhdGUoKS5waXBlKFxyXG4gICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IFJlcXVlc3RIZWxwZXIub25BdXRob3JpemF0aW9uRXJyb3IoZXJyb3IsIGluamVjdG9yKSksXHJcbiAgICBzd2l0Y2hNYXAoKGFjY2Vzc1Rva2VuKSA9PiBuZXh0KFJlcXVlc3RIZWxwZXIuYXR0YWNoQXV0aG9yaXphdGlvbkhlYWRlcihyZXF1ZXN0LCBhY2Nlc3NUb2tlbikpKSxcclxuICApO1xyXG59XHJcbiJdfQ==","import { catchError, switchMap, throwError } from 'rxjs';\nimport { inject, Injector } from '@angular/core';\nimport { IdentityService } from '../services/identity.service';\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\nimport { RequestHelper } from '../helpers/request.helper';\nexport function responseInterceptor(request, next) {\n const options = inject(IDENTITY_OPTIONS);\n const identityService = inject(IdentityService);\n const injector = inject(Injector);\n return next(request).pipe(catchError((error) => {\n if (RequestHelper.isIdentityEndpointRequest(request) ||\n !RequestHelper.isAuthorizedRequest(request) ||\n !RequestHelper.isAuthorizationError(error)) {\n return throwError(() => error);\n }\n if (!options.refreshTokenOnAuthError) {\n return RequestHelper.onAuthorizationError(error, injector);\n }\n return identityService.refreshTokens().pipe(switchMap((accessToken) => next(RequestHelper.attachAuthorizationHeader(request, accessToken))), catchError((error) => RequestHelper.onAuthorizationError(error, injector)));\n }));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy1pZGVudGl0eS9zcmMvbGliL2ludGVyY2VwdG9ycy9yZXNwb25zZS5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFjLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLE9BQTZCLEVBQzdCLElBQW1CO0lBRW5CLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFLbEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUN2QixVQUFVLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtRQUs1QixJQUNFLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUM7WUFDaEQsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDO1lBQzNDLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUMxQyxDQUFDO1lBQ0QsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQztRQU1ELElBQUksQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNyQyxPQUFPLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQU1ELE9BQU8sZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FDekMsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQy9GLFVBQVUsQ0FBQyxDQUFDLEtBQWMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUNwRixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyRm4sIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJZGVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9pZGVudGl0eS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSURFTlRJVFlfT1BUSU9OUyB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLWNvbnN0cyc7XHJcbmltcG9ydCB7IFJlcXVlc3RIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL3JlcXVlc3QuaGVscGVyJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZXNwb25zZUludGVyY2VwdG9yKFxyXG4gIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxyXG4gIG5leHQ6IEh0dHBIYW5kbGVyRm4sXHJcbik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgY29uc3Qgb3B0aW9ucyA9IGluamVjdChJREVOVElUWV9PUFRJT05TKTtcclxuICBjb25zdCBpZGVudGl0eVNlcnZpY2UgPSBpbmplY3QoSWRlbnRpdHlTZXJ2aWNlKTtcclxuICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XHJcblxyXG4gIC8qKlxyXG4gICAqIHByb2Nlc3MgYWxsIHJlc3BvbnNlIGVycm9yc1xyXG4gICAqL1xyXG4gIHJldHVybiBuZXh0KHJlcXVlc3QpLnBpcGUoXHJcbiAgICBjYXRjaEVycm9yKChlcnJvcjogdW5rbm93bikgPT4ge1xyXG4gICAgICAvKipcclxuICAgICAgICogaWYgZXJyb3IgaGFwcGVuZWQgd2l0aCBJZGVudGl0eSBTZXJ2aWNlIHJlcXVlc3QsIG9yIG5vdC1hdXRob3JpemVkIHJlcXVlc3QsIG9yIGl0IGlzIG5vdCBhbiBhdXRob3JpemF0aW9uICg0MDEpIGVycm9yIC1cclxuICAgICAgICogZG8gbm90IGNoYW5nZSBhbnl0aGluZyBhbmQgcmV0dXJuIHRoZSBlcnJvciBhcyBpc1xyXG4gICAgICAgKi9cclxuICAgICAgaWYgKFxyXG4gICAgICAgIFJlcXVlc3RIZWxwZXIuaXNJZGVudGl0eUVuZHBvaW50UmVxdWVzdChyZXF1ZXN0KSB8fFxyXG4gICAgICAgICFSZXF1ZXN0SGVscGVyLmlzQXV0aG9yaXplZFJlcXVlc3QocmVxdWVzdCkgfHxcclxuICAgICAgICAhUmVxdWVzdEhlbHBlci5pc0F1dGhvcml6YXRpb25FcnJvcihlcnJvcilcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogaWYgb3B0aW9ucyBkbyBub3QgYWxsb3cgdG8gdHJ5IGFuZCByZWZyZXNoIHRva2VucyBvbiBlcnJvciA0MDEgLVxyXG4gICAgICAgKiBwcm9jZXNzIHRoZSBlcnJvciBhbmQgcmV0dXJuIGl0XHJcbiAgICAgICAqL1xyXG4gICAgICBpZiAoIW9wdGlvbnMucmVmcmVzaFRva2VuT25BdXRoRXJyb3IpIHtcclxuICAgICAgICByZXR1cm4gUmVxdWVzdEhlbHBlci5vbkF1dGhvcml6YXRpb25FcnJvcihlcnJvciwgaW5qZWN0b3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogaWYgdG9rZW5zIHdlcmUgcmVmcmVzaGVkIC0gYXR0YWNoIFwiQXV0aG9yaXphdGlvblwiIGhlYWRlciB0byB0aGUgcmVxdWVzdCBhbmQgY2FsbCBpdCBhZ2FpbjtcclxuICAgICAgICogb3IgcHJvY2VzcyB0aGUgZXJyb3IgaWYgaXQgaGFwcGVuc1xyXG4gICAgICAgKi9cclxuICAgICAgcmV0dXJuIGlkZW50aXR5U2VydmljZS5yZWZyZXNoVG9rZW5zKCkucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoKGFjY2Vzc1Rva2VuKSA9PiBuZXh0KFJlcXVlc3RIZWxwZXIuYXR0YWNoQXV0aG9yaXphdGlvbkhlYWRlcihyZXF1ZXN0LCBhY2Nlc3NUb2tlbikpKSxcclxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogdW5rbm93bikgPT4gUmVxdWVzdEhlbHBlci5vbkF1dGhvcml6YXRpb25FcnJvcihlcnJvciwgaW5qZWN0b3IpKSxcclxuICAgICAgKTtcclxuICAgIH0pLFxyXG4gICk7XHJcbn1cclxuIl19","import { provideHttpClient, withInterceptors } from '@angular/common/http';\nimport { requestInterceptor } from '../interceptors/request.interceptor';\nimport { responseInterceptor } from '../interceptors/response.interceptor';\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\nimport { LogHelper } from '../helpers/log.helper';\nimport { RequestHelper } from '../helpers/request.helper';\nexport function provideIdentity(options) {\n LogHelper.options = options;\n RequestHelper.options = options;\n return [\n { provide: IDENTITY_OPTIONS, useValue: options },\n provideHttpClient(withInterceptors([requestInterceptor, responseInterceptor])),\n ];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy1pZGVudGl0eS9zcmMvbGliL3Byb3ZpZGVycy9pZGVudGl0eS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzFELE1BQU0sVUFBVSxlQUFlLENBQUMsT0FBd0I7SUFDdEQsU0FBUyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDNUIsYUFBYSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFFaEMsT0FBTztRQUNMLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7UUFDaEQsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7S0FDL0UsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcm92aWRlSHR0cENsaWVudCwgd2l0aEludGVyY2VwdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgcmVxdWVzdEludGVyY2VwdG9yIH0gZnJvbSAnLi4vaW50ZXJjZXB0b3JzL3JlcXVlc3QuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyByZXNwb25zZUludGVyY2VwdG9yIH0gZnJvbSAnLi4vaW50ZXJjZXB0b3JzL3Jlc3BvbnNlLmludGVyY2VwdG9yJztcclxuaW1wb3J0IHsgSURFTlRJVFlfT1BUSU9OUyB9IGZyb20gJy4uL3R5cGVzL2ludGVybmFsLWNvbnN0cyc7XHJcbmltcG9ydCB7IExvZ0hlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvbG9nLmhlbHBlcic7XHJcbmltcG9ydCB7IFJlcXVlc3RIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL3JlcXVlc3QuaGVscGVyJztcclxuaW1wb3J0IHsgSWRlbnRpdHlPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMvaW50ZXJuYWwtdHlwZXMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVJZGVudGl0eShvcHRpb25zOiBJZGVudGl0eU9wdGlvbnMpIHtcclxuICBMb2dIZWxwZXIub3B0aW9ucyA9IG9wdGlvbnM7XHJcbiAgUmVxdWVzdEhlbHBlci5vcHRpb25zID0gb3B0aW9ucztcclxuXHJcbiAgcmV0dXJuIFtcclxuICAgIHsgcHJvdmlkZTogSURFTlRJVFlfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcclxuICAgIHByb3ZpZGVIdHRwQ2xpZW50KHdpdGhJbnRlcmNlcHRvcnMoW3JlcXVlc3RJbnRlcmNlcHRvciwgcmVzcG9uc2VJbnRlcmNlcHRvcl0pKSxcclxuICBdO1xyXG59XHJcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ascentgl-ads-identity.mjs","sources":["../../../../libs/ads-identity/src/lib/helpers/log.helper.ts","../../../../libs/ads-identity/src/lib/helpers/error.helper.ts","../../../../libs/ads-identity/src/lib/helpers/token.helper.ts","../../../../libs/ads-identity/src/lib/types/internal-consts.ts","../../../../libs/ads-identity/src/lib/services/token.service.ts","../../../../libs/ads-identity/src/lib/services/identity.service.ts","../../../../libs/ads-identity/src/lib/guards/auth.guard.ts","../../../../libs/ads-identity/src/lib/guards/auth-callback.guard.ts","../../../../libs/ads-identity/src/lib/helpers/request.helper.ts","../../../../libs/ads-identity/src/lib/interceptors/request.interceptor.ts","../../../../libs/ads-identity/src/lib/interceptors/response.interceptor.ts","../../../../libs/ads-identity/src/lib/providers/identity.provider.ts"],"sourcesContent":["import { IdentityOptions } from '../types/internal-types';\r\n\r\nexport class LogHelper {\r\n static options?: IdentityOptions;\r\n\r\n private static readonly prefix = 'ADS-IDENTITY';\r\n\r\n static log(...args: unknown[]) {\r\n if (!this.options?.debugMode) return false;\r\n\r\n console.group(this.prefix, 'TOKEN UPDATE');\r\n\r\n console.log(...args);\r\n\r\n console.groupEnd();\r\n\r\n return true;\r\n }\r\n\r\n static error(...args: unknown[]) {\r\n if (!this.options?.debugMode) return false;\r\n\r\n console.group(this.prefix, 'EXCEPTION');\r\n\r\n console.error(...args);\r\n\r\n console.groupEnd();\r\n\r\n return true;\r\n }\r\n}\r\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { GenericCollection } from '../types/internal-types';\r\n\r\nexport class ErrorHelper {\r\n static extractMessage(error: unknown): string {\r\n if (typeof error === 'string' && error) {\r\n return error;\r\n }\r\n\r\n let errorMessage: unknown;\r\n\r\n if (error instanceof HttpErrorResponse) {\r\n errorMessage = error.error?.message ?? error.message;\r\n }\r\n\r\n if (!errorMessage && typeof error === 'object' && typeof (<GenericCollection>error)['message'] === 'string') {\r\n errorMessage = (<GenericCollection>error)['message'];\r\n }\r\n\r\n return errorMessage && typeof errorMessage === 'string' ? errorMessage : 'Unknown server error';\r\n }\r\n}\r\n","import { InvalidTokenError, jwtDecode } from 'jwt-decode';\r\nimport { GenericCollection, IdentityJwtClaim, AccessTokenPayload, RefreshTokenPayload } from '../types/internal-types';\r\nimport { LogHelper } from './log.helper';\r\nimport { ErrorHelper } from './error.helper';\r\n\r\nexport class TokenHelper {\r\n static getPayload<T extends AccessTokenPayload | RefreshTokenPayload>(\r\n token: string,\r\n verifyClaims: GenericCollection = {},\r\n threshold = 0,\r\n ): T {\r\n const payload: T = jwtDecode(token);\r\n\r\n /**\r\n * throw error if token is expired\r\n */\r\n if (this.isExpired(payload, 'exp', threshold)) {\r\n throw new InvalidTokenError('Token expired');\r\n }\r\n\r\n /**\r\n * loop through claims to verify and make sure the payload match their values\r\n */\r\n Object.keys(verifyClaims).forEach((claim) => {\r\n const tokenClaimValue = payload[claim];\r\n const requestedClaimValue = verifyClaims[claim];\r\n\r\n if (!this.isClaimValid(tokenClaimValue, requestedClaimValue)) {\r\n throw new InvalidTokenError(\r\n `Invalid \"${claim}\" claim value \"${tokenClaimValue}\" provided in token. Required value is \"${requestedClaimValue}\"`,\r\n );\r\n }\r\n });\r\n\r\n return payload;\r\n }\r\n\r\n private static isExpired<T extends AccessTokenPayload | RefreshTokenPayload>(\r\n token: T,\r\n claim: IdentityJwtClaim = 'exp',\r\n threshold = 0,\r\n ): boolean {\r\n const throwInvalidColumnError = (column: string): true => {\r\n throw new InvalidTokenError(`Column ${column} does not contain a valid number`);\r\n };\r\n\r\n try {\r\n /**\r\n * get value from the column\r\n */\r\n let timestamp: unknown = token[claim];\r\n\r\n /**\r\n * if values is a number - compare it against current date\r\n */\r\n if (typeof timestamp === 'number') {\r\n /**\r\n * if threshold is set - extract it from the timestamp\r\n * NOTE: threshold allows to consider the timestamp expired earlier;\r\n * this allows to make sure the token does not expire while being transferred to backend\r\n */\r\n if (threshold > 0) {\r\n timestamp -= threshold;\r\n }\r\n\r\n return !!timestamp && timestamp * 1000 < new Date().getTime();\r\n }\r\n\r\n return throwInvalidColumnError(claim.toString());\r\n } catch (error: unknown) {\r\n LogHelper.error(new InvalidTokenError(ErrorHelper.extractMessage(error)));\r\n\r\n return true;\r\n }\r\n }\r\n\r\n private static isClaimValid(tokenClaim: unknown, valueToVerify: unknown) {\r\n /**\r\n * if any of the values is an array - apply special logic;\r\n * otherwise do strict comparison\r\n */\r\n if (tokenClaim instanceof Array || valueToVerify instanceof Array) {\r\n /**\r\n * if both claims are arrays - make sure they intersect\r\n */\r\n if (tokenClaim instanceof Array && valueToVerify instanceof Array) {\r\n return tokenClaim.filter((value) => valueToVerify.includes(value)).length > 0;\r\n }\r\n\r\n /**\r\n * if the first claim is an array and the second is a string -\r\n * check if the second is within the first\r\n */\r\n if (tokenClaim instanceof Array && typeof valueToVerify === 'string') {\r\n return tokenClaim.includes(valueToVerify);\r\n }\r\n\r\n /**\r\n * if the second claim is an array and the first is a string -\r\n * check if the first is within the second\r\n */\r\n if (valueToVerify instanceof Array && typeof tokenClaim === 'string') {\r\n return valueToVerify.includes(tokenClaim);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n return tokenClaim === valueToVerify;\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { IdentityOptions } from './internal-types';\r\n\r\nexport const IDENTITY_OPTIONS = new InjectionToken<IdentityOptions>('IDENTITY_OPTIONS');\r\n","import { computed, inject, Injectable, signal } from '@angular/core';\r\nimport { IdentityToken, Nullable } from '../types/internal-types';\r\nimport { AccessToken, RefreshToken } from '../types/global-types';\r\nimport { TokenHelper } from '../helpers/token.helper';\r\nimport { InvalidTokenError } from 'jwt-decode';\r\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\r\nimport { TokenKey } from '../types/internal-enums';\r\nimport { LogHelper } from '../helpers/log.helper';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TokenService {\r\n /**\r\n * NOTE: we expose access and refresh tokens as computed signals so that they can be\r\n * used in \"IdentityService\" to allow library users reactive readonly access to tokens,\r\n * since \"IdentityService\" is the only \"public\" service in the library\r\n */\r\n readonlyAccessToken = computed(() => this.accessToken());\r\n readonlyRefreshToken = computed(() => this.refreshToken());\r\n\r\n private readonly accessToken = signal<Nullable<AccessToken>>(null);\r\n private readonly refreshToken = signal<Nullable<RefreshToken>>(null);\r\n\r\n private readonly options = inject(IDENTITY_OPTIONS);\r\n\r\n private issuers: string[] = [];\r\n\r\n setAccessToken(token: unknown) {\r\n return this.updateAccessTokenSignal<AccessToken>(this.setToken<AccessToken>(TokenKey.accessToken, token));\r\n }\r\n\r\n getAccessToken() {\r\n return this.updateAccessTokenSignal(this.getToken(TokenKey.accessToken));\r\n }\r\n\r\n setRefreshToken(token: unknown) {\r\n return this.updateRefreshTokenSignal<RefreshToken>(this.setToken(TokenKey.refreshToken, token));\r\n }\r\n\r\n getRefreshToken() {\r\n return this.updateRefreshTokenSignal(this.getToken(TokenKey.refreshToken));\r\n }\r\n\r\n clearTokens() {\r\n localStorage.removeItem(TokenKey.accessToken);\r\n localStorage.removeItem(TokenKey.refreshToken);\r\n\r\n this.updateAccessTokenSignal(null);\r\n this.updateRefreshTokenSignal(null);\r\n }\r\n\r\n private updateAccessTokenSignal<T extends Nullable<AccessToken>>(newToken: Nullable<AccessToken>): T {\r\n if (this.accessToken()?.token !== newToken?.token) {\r\n this.accessToken.set(newToken);\r\n }\r\n\r\n return <T>this.accessToken();\r\n }\r\n\r\n private updateRefreshTokenSignal<T extends Nullable<RefreshToken>>(newToken: Nullable<RefreshToken>): T {\r\n if (this.refreshToken()?.token !== newToken?.token) {\r\n this.refreshToken.set(newToken);\r\n }\r\n\r\n return <T>this.refreshToken();\r\n }\r\n\r\n private setToken<T extends IdentityToken>(key: TokenKey, token: unknown): T {\r\n /**\r\n * make sure provided token is at least a string\r\n */\r\n if (typeof token !== 'string') {\r\n throw new InvalidTokenError(`Provided ${key} value is not a string`);\r\n }\r\n\r\n /**\r\n * get identity token\r\n */\r\n const identityToken = this.wrapToken<T>(token);\r\n\r\n /**\r\n * if provided - save it to local storage\r\n */\r\n if (identityToken) {\r\n localStorage.setItem(key, token);\r\n }\r\n\r\n LogHelper.log(key, identityToken);\r\n\r\n return identityToken;\r\n }\r\n\r\n private getToken<T extends IdentityToken>(key: TokenKey): Nullable<T> {\r\n /**\r\n * get token value from local storage or use null\r\n */\r\n const actualToken = localStorage.getItem(key) ?? null;\r\n\r\n if (typeof actualToken === 'string') {\r\n try {\r\n return this.wrapToken<T>(actualToken);\r\n } catch (error) {\r\n LogHelper.error(error);\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private wrapToken<T extends IdentityToken>(token: string): T {\r\n /**\r\n * parse token and obtain its payload\r\n * NOTE: errors will be thrown if token is expired or has invalid claims\r\n */\r\n const payload = TokenHelper.getPayload(\r\n token,\r\n {\r\n iss: this.getIssuers(),\r\n sub: this.options.application,\r\n },\r\n 60,\r\n );\r\n\r\n /**\r\n * return identity token object\r\n */\r\n return <T>{ token, payload: payload };\r\n }\r\n\r\n private getIssuers(): string[] {\r\n /**\r\n * if we already have issuers - ise them\r\n */\r\n if (this.issuers.length) {\r\n return this.issuers;\r\n }\r\n\r\n /**\r\n * get issuer value from the options\r\n */\r\n const issuer = this.options.serviceIssuer ?? this.options.backendUrl;\r\n\r\n this.issuers = [issuer];\r\n\r\n /**\r\n * make sure we have both variants (with and without \"/api\" suffix) as issuers\r\n * todo \"/api\" suffix verification must be removed when \"/api\" suffix will be removed from the \"issuer\" in IDMS\r\n */\r\n if (issuer.endsWith('/api')) {\r\n this.issuers.push(issuer.substring(0, issuer.lastIndexOf('/api')));\r\n } else {\r\n this.issuers.push(`${issuer}/api`);\r\n }\r\n\r\n return this.issuers;\r\n }\r\n}\r\n","import { computed, inject, Injectable } from '@angular/core';\r\nimport { catchError, map, Observable, of, throwError } from 'rxjs';\r\nimport { TokenService } from './token.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\r\nimport { RefreshTokenResponse } from '../types/internal-types';\r\nimport { LogHelper } from '../helpers/log.helper';\r\nimport { AccessToken } from '../types/global-types';\r\nimport { InvalidTokenError } from 'jwt-decode';\r\nimport { ErrorHelper } from '../helpers/error.helper';\r\nimport { IdentityServiceInterface } from '../interfaces/identity-service.interface';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class IdentityService implements IdentityServiceInterface {\r\n /**\r\n * NOTE: we expose access and refresh tokens as computed signals to allow\r\n * library users reactive readonly access to tokens, since \"IdentityService\"\r\n * is the only \"public\" service in the library\r\n */\r\n readonly accessToken = computed(() => this.tokenService.readonlyAccessToken());\r\n readonly refreshToken = computed(() => this.tokenService.readonlyRefreshToken());\r\n\r\n private readonly tokenService = inject(TokenService);\r\n private readonly httpClient = inject(HttpClient);\r\n private readonly options = inject(IDENTITY_OPTIONS);\r\n\r\n isAuthenticated() {\r\n return !!this.tokenService.getAccessToken();\r\n }\r\n\r\n authenticate(): Observable<AccessToken> {\r\n /**\r\n * get access and refresh token\r\n */\r\n const accessToken = this.tokenService.getAccessToken();\r\n const refreshToken = this.tokenService.getRefreshToken();\r\n\r\n /**\r\n * if it is available - return it; otherwise try refreshing the tokens by calling IDMS\r\n */\r\n if (accessToken) {\r\n return of(accessToken);\r\n }\r\n\r\n /**\r\n * if refresh token is available - try getting new tokens\r\n */\r\n if (refreshToken) {\r\n return this.refreshTokens();\r\n }\r\n\r\n /**\r\n * throw error if no tokens are available\r\n */\r\n return throwError(() => new InvalidTokenError('No valid tokens found'));\r\n }\r\n\r\n refreshTokens(): Observable<AccessToken> {\r\n const refreshToken = this.tokenService.getRefreshToken();\r\n\r\n /**\r\n * throw error if refresh token is not available\r\n */\r\n if (!refreshToken) {\r\n return throwError(() => new InvalidTokenError('No refresh token found'));\r\n }\r\n\r\n /**\r\n * make request to Identity service to get new tokens\r\n */\r\n return this.httpClient\r\n .get<RefreshTokenResponse>(`${this.options.backendUrl}/api/v${this.options.apiVersion ?? 1}/refresh-token`, {\r\n headers: { Authorization: `Bearer ${refreshToken.token}` },\r\n })\r\n .pipe(\r\n catchError((error: unknown) => {\r\n /**\r\n * log error if it happens\r\n */\r\n LogHelper.error(\r\n new InvalidTokenError(\r\n `Failed to obtain tokens. Reason: ${ErrorHelper.extractMessage(error).toLowerCase()}`,\r\n ),\r\n );\r\n\r\n return throwError(() => error);\r\n }),\r\n map((response) => {\r\n /**\r\n * set refresh token\r\n */\r\n this.tokenService.setRefreshToken(response.refresh_token);\r\n\r\n /**\r\n * set and return access token\r\n */\r\n return this.tokenService.setAccessToken(response.access_token);\r\n }),\r\n );\r\n }\r\n\r\n clearTokens() {\r\n this.tokenService.clearTokens();\r\n }\r\n}\r\n","import { CanActivateFn } from '@angular/router';\r\nimport { inject } from '@angular/core';\r\nimport { IdentityService } from '../services/identity.service';\r\nimport { catchError, map, of } from 'rxjs';\r\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\r\nimport { LogHelper } from '../helpers/log.helper';\r\n\r\nexport const IDENTITY_AUTH_GUARD: CanActivateFn = (_route, state) => {\r\n const identityService = inject(IdentityService);\r\n const options = inject(IDENTITY_OPTIONS);\r\n\r\n /**\r\n * check if user is authenticated;\r\n * if error happened - redirect to IDMS url to re-login;\r\n * return true on success and false on error\r\n */\r\n return identityService.authenticate().pipe(\r\n catchError((error) => {\r\n window.location.href = `${options.frontendUrl}/apps/${options.application}?redirect=true&redirect_path=${encodeURIComponent(\r\n state.url,\r\n )}`;\r\n\r\n LogHelper.error(error);\r\n\r\n return of(null);\r\n }),\r\n map((accessToken) => !!accessToken),\r\n );\r\n};\r\n","import { CanActivateFn, Router } from '@angular/router';\r\nimport { inject } from '@angular/core';\r\nimport { TokenService } from '../services/token.service';\r\nimport { LogHelper } from '../helpers/log.helper';\r\nimport { ErrorHelper } from '../helpers/error.helper';\r\n\r\nexport const IDENTITY_AUTH_CALLBACK_GUARD: CanActivateFn = (route) => {\r\n const router = inject(Router);\r\n const tokenService = inject(TokenService);\r\n\r\n const throwAccessDenied = () => {\r\n throw new Error('Access denied');\r\n };\r\n\r\n /**\r\n * save access and refresh tokens and redirect either to root or to provided \"redirect_path\";\r\n * if error happened - display error message on the page and return false to stop further navigation\r\n */\r\n try {\r\n if (!route.queryParams['access_token'] || !route.queryParams['access_token']) {\r\n throwAccessDenied();\r\n }\r\n\r\n tokenService.setAccessToken(route.queryParams['access_token']);\r\n\r\n tokenService.setRefreshToken(route.queryParams['refresh_token']);\r\n\r\n return router.navigateByUrl(route.queryParams['redirect_path'] || '/');\r\n } catch (error: unknown) {\r\n const routerOutlet = document.body.querySelector('router-outlet');\r\n\r\n if (routerOutlet) {\r\n routerOutlet.innerHTML = ErrorHelper.extractMessage(error);\r\n }\r\n\r\n LogHelper.error(error);\r\n\r\n return false;\r\n }\r\n};\r\n","import { HttpErrorResponse, HttpRequest } from '@angular/common/http';\r\nimport { throwError } from 'rxjs';\r\nimport { Injector } from '@angular/core';\r\nimport { IdentityOptions } from '../types/internal-types';\r\nimport { AccessToken } from '../types/global-types';\r\n\r\nexport class RequestHelper {\r\n static options?: IdentityOptions;\r\n\r\n static isIdentityEndpointRequest(request: HttpRequest<unknown>): boolean {\r\n return (\r\n (!!this.options?.backendUrl && request.url.startsWith(this.options?.backendUrl)) ||\r\n (!!this.options?.frontendUrl && request.url.startsWith(this.options?.frontendUrl))\r\n );\r\n }\r\n\r\n static isAuthorizedRequest(request: HttpRequest<unknown>): boolean {\r\n return !this.options?.requestFilter || this.options.requestFilter(request);\r\n }\r\n\r\n static isAuthorizationError(error: unknown): boolean {\r\n return error instanceof HttpErrorResponse && error.status === 401;\r\n }\r\n\r\n static attachAuthorizationHeader(request: HttpRequest<unknown>, accessToken: AccessToken): HttpRequest<unknown> {\r\n return request.clone({\r\n setHeaders: { authorization: `Bearer ${accessToken.token}`, 'auth-source': 'IDMS' },\r\n });\r\n }\r\n\r\n static onAuthorizationError(error: unknown, injector: Injector) {\r\n if (this.options?.onAuthorizationError) {\r\n this.options?.onAuthorizationError(error, injector);\r\n }\r\n\r\n return throwError(() => error);\r\n }\r\n}\r\n","import { HttpEvent, HttpHandlerFn, HttpRequest } from '@angular/common/http';\r\nimport { catchError, Observable, switchMap } from 'rxjs';\r\nimport { inject, Injector } from '@angular/core';\r\nimport { IdentityService } from '../services/identity.service';\r\nimport { RequestHelper } from '../helpers/request.helper';\r\n\r\nexport function requestInterceptor(request: HttpRequest<unknown>, next: HttpHandlerFn): Observable<HttpEvent<unknown>> {\r\n const identityService = inject(IdentityService);\r\n const injector = inject(Injector);\r\n\r\n /**\r\n * if it is a request to Identity Service or not an authorized request - do not modify it\r\n */\r\n if (RequestHelper.isIdentityEndpointRequest(request) || !RequestHelper.isAuthorizedRequest(request)) {\r\n return next(request);\r\n }\r\n\r\n /**\r\n * if current user is authenticated - attach \"Authorization\" header to the request;\r\n * or process the error if it happens\r\n */\r\n return identityService.authenticate().pipe(\r\n catchError((error: unknown) => RequestHelper.onAuthorizationError(error, injector)),\r\n switchMap((accessToken) => next(RequestHelper.attachAuthorizationHeader(request, accessToken))),\r\n );\r\n}\r\n","import { HttpEvent, HttpHandlerFn, HttpRequest } from '@angular/common/http';\r\nimport { catchError, Observable, switchMap, throwError } from 'rxjs';\r\nimport { inject, Injector } from '@angular/core';\r\nimport { IdentityService } from '../services/identity.service';\r\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\r\nimport { RequestHelper } from '../helpers/request.helper';\r\n\r\nexport function responseInterceptor(\r\n request: HttpRequest<unknown>,\r\n next: HttpHandlerFn,\r\n): Observable<HttpEvent<unknown>> {\r\n const options = inject(IDENTITY_OPTIONS);\r\n const identityService = inject(IdentityService);\r\n const injector = inject(Injector);\r\n\r\n /**\r\n * process all response errors\r\n */\r\n return next(request).pipe(\r\n catchError((error: unknown) => {\r\n /**\r\n * if error happened with Identity Service request, or not-authorized request, or it is not an authorization (401) error -\r\n * do not change anything and return the error as is\r\n */\r\n if (\r\n RequestHelper.isIdentityEndpointRequest(request) ||\r\n !RequestHelper.isAuthorizedRequest(request) ||\r\n !RequestHelper.isAuthorizationError(error)\r\n ) {\r\n return throwError(() => error);\r\n }\r\n\r\n /**\r\n * if options do not allow to try and refresh tokens on error 401 -\r\n * process the error and return it\r\n */\r\n if (!options.refreshTokenOnAuthError) {\r\n return RequestHelper.onAuthorizationError(error, injector);\r\n }\r\n\r\n /**\r\n * if tokens were refreshed - attach \"Authorization\" header to the request and call it again;\r\n * or process the error if it happens\r\n */\r\n return identityService.refreshTokens().pipe(\r\n switchMap((accessToken) => next(RequestHelper.attachAuthorizationHeader(request, accessToken))),\r\n catchError((error: unknown) => RequestHelper.onAuthorizationError(error, injector)),\r\n );\r\n }),\r\n );\r\n}\r\n","import { provideHttpClient, withInterceptors } from '@angular/common/http';\r\nimport { requestInterceptor } from '../interceptors/request.interceptor';\r\nimport { responseInterceptor } from '../interceptors/response.interceptor';\r\nimport { IDENTITY_OPTIONS } from '../types/internal-consts';\r\nimport { LogHelper } from '../helpers/log.helper';\r\nimport { RequestHelper } from '../helpers/request.helper';\r\nimport { IdentityOptions } from '../types/internal-types';\r\n\r\nexport function provideIdentity(options: IdentityOptions) {\r\n LogHelper.options = options;\r\n RequestHelper.options = options;\r\n\r\n return [\r\n { provide: IDENTITY_OPTIONS, useValue: options },\r\n provideHttpClient(withInterceptors([requestInterceptor, responseInterceptor])),\r\n ];\r\n}\r\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ascentgl/ads-identity",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "21.0.1",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"jwt-decode": ">=4.0.0"
|
|
6
6
|
},
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
"author": "Kirill Krasnobayev",
|
|
14
14
|
"license": "ISC",
|
|
15
15
|
"module": "fesm2022/ascentgl-ads-identity.mjs",
|
|
16
|
-
"typings": "
|
|
16
|
+
"typings": "types/ascentgl-ads-identity.d.ts",
|
|
17
17
|
"exports": {
|
|
18
18
|
"./package.json": {
|
|
19
19
|
"default": "./package.json"
|
|
20
20
|
},
|
|
21
21
|
".": {
|
|
22
|
-
"types": "./
|
|
22
|
+
"types": "./types/ascentgl-ads-identity.d.ts",
|
|
23
23
|
"default": "./fesm2022/ascentgl-ads-identity.mjs"
|
|
24
24
|
}
|
|
25
25
|
},
|
|
@@ -3,6 +3,7 @@ import * as _angular_core from '@angular/core';
|
|
|
3
3
|
import { Injector, Signal } from '@angular/core';
|
|
4
4
|
import { HttpRequest } from '@angular/common/http';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
6
|
+
import * as _ascentgl_ads_identity from '@ascentgl/ads-identity';
|
|
6
7
|
|
|
7
8
|
declare const IDENTITY_AUTH_GUARD: CanActivateFn;
|
|
8
9
|
|
|
@@ -62,7 +63,7 @@ declare function provideIdentity(options: IdentityOptions): (_angular_core.Envir
|
|
|
62
63
|
|
|
63
64
|
declare class IdentityService implements IdentityServiceInterface {
|
|
64
65
|
readonly accessToken: _angular_core.Signal<Nullable<AccessToken>>;
|
|
65
|
-
readonly refreshToken: _angular_core.Signal<Nullable<RefreshToken>>;
|
|
66
|
+
readonly refreshToken: _angular_core.Signal<Nullable<_ascentgl_ads_identity.RefreshToken>>;
|
|
66
67
|
private readonly tokenService;
|
|
67
68
|
private readonly httpClient;
|
|
68
69
|
private readonly options;
|