codefoxcore 0.0.18 → 0.0.19

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.
@@ -8,11 +8,11 @@ export class TokenInterceptor extends BaseInterceptor {
8
8
  if (this.skipInterceptor()) {
9
9
  return next.handle(request);
10
10
  }
11
- const accessToken = this.tokenService.accessToken;
12
- if (accessToken !== null) {
11
+ const sessionToken = this.tokenService.sessionToken;
12
+ if (sessionToken !== null) {
13
13
  request = request.clone({
14
14
  setHeaders: {
15
- Token: accessToken
15
+ Token: sessionToken
16
16
  }
17
17
  });
18
18
  }
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
31
31
  providedIn: 'root'
32
32
  }]
33
33
  }], ctorParameters: function () { return []; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy90b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUtoRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZUFBZTtJQUlwRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNyRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDNUI7UUFDRCxNQUFNLFdBQVcsR0FBa0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7UUFDakUsSUFBSSxXQUFXLEtBQUssSUFBSSxFQUFFO1lBQ3pCLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN2QixVQUFVLEVBQUU7b0JBQ1gsS0FBSyxFQUFFLFdBQVc7aUJBQ2xCO2FBQ0QsQ0FBQyxDQUFDO1NBQ0g7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEO1FBQ0MsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWxCdEIsaUJBQVksR0FBaUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBbUIxRCxDQUFDOytHQXJCVyxnQkFBZ0I7bUhBQWhCLGdCQUFnQixjQUZoQixNQUFNOzs0RkFFTixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBCYXNlSW50ZXJjZXB0b3IgfSBmcm9tICcuL2Jhc2UuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyBJbnRlcmNlcHRvclR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRva2VuSW50ZXJjZXB0b3IgZXh0ZW5kcyBCYXNlSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG5cclxuXHRwcml2YXRlIHRva2VuU2VydmljZTogVG9rZW5TZXJ2aWNlID0gaW5qZWN0KFRva2VuU2VydmljZSk7XHJcblxyXG5cdGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuXHRcdGlmICh0aGlzLnNraXBJbnRlcmNlcHRvcigpKSB7XHJcblx0XHRcdHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcclxuXHRcdH1cclxuXHRcdGNvbnN0IGFjY2Vzc1Rva2VuOiBzdHJpbmcgfCBudWxsID0gdGhpcy50b2tlblNlcnZpY2UuYWNjZXNzVG9rZW47XHJcblx0XHRpZiAoYWNjZXNzVG9rZW4gIT09IG51bGwpIHtcclxuXHRcdFx0cmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xyXG5cdFx0XHRcdHNldEhlYWRlcnM6IHtcclxuXHRcdFx0XHRcdFRva2VuOiBhY2Nlc3NUb2tlblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XHJcblx0fVxyXG5cclxuXHRjb25zdHJ1Y3RvcigpIHtcclxuXHRcdHN1cGVyKEludGVyY2VwdG9yVHlwZS5UT0tFTik7XHJcblx0fVxyXG59XHJcbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy90b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUtoRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZUFBZTtJQUlwRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNyRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDNUI7UUFDRCxNQUFNLFlBQVksR0FBa0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUM7UUFDbkUsSUFBSSxZQUFZLEtBQUssSUFBSSxFQUFFO1lBQzFCLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN2QixVQUFVLEVBQUU7b0JBQ1gsS0FBSyxFQUFFLFlBQVk7aUJBQ25CO2FBQ0QsQ0FBQyxDQUFDO1NBQ0g7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEO1FBQ0MsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWxCdEIsaUJBQVksR0FBaUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBbUIxRCxDQUFDOytHQXJCVyxnQkFBZ0I7bUhBQWhCLGdCQUFnQixjQUZoQixNQUFNOzs0RkFFTixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBCYXNlSW50ZXJjZXB0b3IgfSBmcm9tICcuL2Jhc2UuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyBJbnRlcmNlcHRvclR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRva2VuSW50ZXJjZXB0b3IgZXh0ZW5kcyBCYXNlSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG5cclxuXHRwcml2YXRlIHRva2VuU2VydmljZTogVG9rZW5TZXJ2aWNlID0gaW5qZWN0KFRva2VuU2VydmljZSk7XHJcblxyXG5cdGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuXHRcdGlmICh0aGlzLnNraXBJbnRlcmNlcHRvcigpKSB7XHJcblx0XHRcdHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcclxuXHRcdH1cclxuXHRcdGNvbnN0IHNlc3Npb25Ub2tlbjogc3RyaW5nIHwgbnVsbCA9IHRoaXMudG9rZW5TZXJ2aWNlLnNlc3Npb25Ub2tlbjtcclxuXHRcdGlmIChzZXNzaW9uVG9rZW4gIT09IG51bGwpIHtcclxuXHRcdFx0cmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xyXG5cdFx0XHRcdHNldEhlYWRlcnM6IHtcclxuXHRcdFx0XHRcdFRva2VuOiBzZXNzaW9uVG9rZW5cclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xyXG5cdH1cclxuXHJcblx0Y29uc3RydWN0b3IoKSB7XHJcblx0XHRzdXBlcihJbnRlcmNlcHRvclR5cGUuVE9LRU4pO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { Pipe } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class ImageSizePipe {
4
+ transform(originalUrl, size = null) {
5
+ try {
6
+ const url = new URL(originalUrl);
7
+ if (size !== null) {
8
+ url.searchParams.append('size', size.toString());
9
+ }
10
+ return url.toString();
11
+ }
12
+ catch (e) { }
13
+ return originalUrl;
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
16
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, isStandalone: true, name: "imagesize" }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, decorators: [{
19
+ type: Pipe,
20
+ args: [{
21
+ standalone: true,
22
+ name: 'imagesize'
23
+ }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VzaXplLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3BpcGVzL2ltYWdlc2l6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sYUFBYTtJQUV6QixTQUFTLENBQUMsV0FBbUIsRUFBRSxPQUFzQixJQUFJO1FBQ3hELElBQUk7WUFDSCxNQUFNLEdBQUcsR0FBUSxJQUFJLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0QyxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7Z0JBQ2xCLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQzthQUNqRDtZQUNELE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ3RCO1FBQUMsT0FBTSxDQUFDLEVBQUUsR0FBRTtRQUNiLE9BQU8sV0FBVyxDQUFDO0lBQ3BCLENBQUM7K0dBWFcsYUFBYTs2R0FBYixhQUFhOzs0RkFBYixhQUFhO2tCQUp6QixJQUFJO21CQUFDO29CQUNMLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUUsV0FBVztpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBQaXBlKHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdG5hbWU6ICdpbWFnZXNpemUnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbWFnZVNpemVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblx0XHJcblx0dHJhbnNmb3JtKG9yaWdpbmFsVXJsOiBzdHJpbmcsIHNpemU6IG51bWJlciB8IG51bGwgPSBudWxsKTogc3RyaW5nIHtcclxuXHRcdHRyeSB7XHJcblx0XHRcdGNvbnN0IHVybDogVVJMID0gbmV3IFVSTChvcmlnaW5hbFVybCk7XHJcblx0XHRcdGlmIChzaXplICE9PSBudWxsKSB7XHJcblx0XHRcdFx0dXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ3NpemUnLCBzaXplLnRvU3RyaW5nKCkpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHJldHVybiB1cmwudG9TdHJpbmcoKTtcclxuXHRcdH0gY2F0Y2goZSkge31cclxuXHRcdHJldHVybiBvcmlnaW5hbFVybDtcclxuXHR9XHJcbn1cclxuIl19
@@ -1,3 +1,4 @@
1
1
  export * from './translate.pipe';
2
2
  export * from './microdata.pipe';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRlLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL21pY3JvZGF0YS5waXBlJztcclxuIl19
3
+ export * from './imagesize.pipe';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGUucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbWljcm9kYXRhLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ltYWdlc2l6ZS5waXBlJztcclxuIl19
@@ -1,7 +1,7 @@
1
1
  import { HTTP_INTERCEPTORS } from "@angular/common/http";
2
2
  import { makeEnvironmentProviders } from "@angular/core";
3
3
  import { TokenInterceptor } from "./interceptors/token.interceptor";
4
- import { CONFIRM_CONFIGURATIONS, DIALOG_ALERT_COMPONENT, DIALOG_CONFIRM_COMPONENT, GOOGLE_MAPS_API_KEY, OPENED_DIALOG_BODY_CLASS, PREDEFINED_DIALOGS } from "./tokens";
4
+ import { API_BASE_URL, CONFIRM_CONFIGURATIONS, DIALOG_ALERT_COMPONENT, DIALOG_CONFIRM_COMPONENT, GOOGLE_MAPS_API_KEY, OPENED_DIALOG_BODY_CLASS, PREDEFINED_DIALOGS } from "./tokens";
5
5
  export function provideTokenInterceptor() {
6
6
  return makeEnvironmentProviders([{
7
7
  provide: HTTP_INTERCEPTORS,
@@ -45,4 +45,10 @@ export function provideDialogAlertComponent(component) {
45
45
  useValue: component
46
46
  }]);
47
47
  }
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kZWZveGNvcmUvc3JjL2xpYi9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUF3Qix3QkFBd0IsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHdkssTUFBTSxVQUFVLHVCQUF1QjtJQUNuQyxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDN0IsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixRQUFRLEVBQUUsZ0JBQWdCO1lBQzFCLEtBQUssRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDLENBQUM7QUFDUixDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLGlCQUFvQztJQUN6RSxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDN0IsT0FBTyxFQUFFLGtCQUFrQjtZQUMzQixRQUFRLEVBQUUsaUJBQWlCO1NBQzlCLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQztBQUVELE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxxQkFBNEQ7SUFDeEcsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsUUFBUSxFQUFFLHFCQUFxQjtTQUMvQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsNEJBQTRCLENBQUMscUJBQW9DO0lBQzdFLE9BQU8sd0JBQXdCLENBQUMsQ0FBQztZQUM3QixPQUFPLEVBQUUsd0JBQXdCO1lBQ2pDLFFBQVEsRUFBRSxxQkFBcUI7U0FDbEMsQ0FBQyxDQUFDLENBQUM7QUFDUixDQUFDO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUFDLGdCQUErQjtJQUN0RSxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDaEMsT0FBTyxFQUFFLG1CQUFtQjtZQUM1QixRQUFRLEVBQUUsZ0JBQWdCO1NBQzFCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSw2QkFBNkIsQ0FBQyxTQUFvQjtJQUNqRSxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDaEMsT0FBTyxFQUFFLHdCQUF3QjtZQUNqQyxRQUFRLEVBQUUsU0FBUztTQUNuQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsU0FBb0I7SUFDL0QsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsUUFBUSxFQUFFLFNBQVM7U0FDbkIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycywgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRva2VuSW50ZXJjZXB0b3IgfSBmcm9tIFwiLi9pbnRlcmNlcHRvcnMvdG9rZW4uaW50ZXJjZXB0b3JcIjtcclxuaW1wb3J0IHsgQ09ORklSTV9DT05GSUdVUkFUSU9OUywgRElBTE9HX0FMRVJUX0NPTVBPTkVOVCwgRElBTE9HX0NPTkZJUk1fQ09NUE9ORU5ULCBHT09HTEVfTUFQU19BUElfS0VZLCBPUEVORURfRElBTE9HX0JPRFlfQ0xBU1MsIFBSRURFRklORURfRElBTE9HUyB9IGZyb20gXCIuL3Rva2Vuc1wiO1xyXG5pbXBvcnQgeyBDb25maXJtQ29uZmlndXJhdGlvbiwgUHJlZGVmaW5lZERpYWxvZ3MgfSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVRva2VuSW50ZXJjZXB0b3IoKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG4gICAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbe1xyXG4gICAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxyXG4gICAgICAgIHVzZUNsYXNzOiBUb2tlbkludGVyY2VwdG9yLFxyXG4gICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUHJlZGVmaW5lZERpYWxvZ3MocHJlZGVmaW5lZERpYWxvZ3M6IFByZWRlZmluZWREaWFsb2dzKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG4gICAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbe1xyXG4gICAgICAgIHByb3ZpZGU6IFBSRURFRklORURfRElBTE9HUyxcclxuICAgICAgICB1c2VWYWx1ZTogcHJlZGVmaW5lZERpYWxvZ3NcclxuICAgIH1dKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVDb25maXJtQ29uZmlndXJhdGlvbnMoY29uZmlybUNvbmZpZ3VyYXRpb25zOiB7W2tleTogc3RyaW5nXTogQ29uZmlybUNvbmZpZ3VyYXRpb259KTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG5cdHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW3tcclxuXHRcdHByb3ZpZGU6IENPTkZJUk1fQ09ORklHVVJBVElPTlMsXHJcblx0XHR1c2VWYWx1ZTogY29uZmlybUNvbmZpZ3VyYXRpb25zXHJcblx0fV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZU9wZW5lZERpYWxvZ0JvZHlDbGFzcyhvcGVuZWREaWFsb2dCb2R5Q2xhc3M6IHN0cmluZyB8IG51bGwpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcbiAgICAgICAgcHJvdmlkZTogT1BFTkVEX0RJQUxPR19CT0RZX0NMQVNTLFxyXG4gICAgICAgIHVzZVZhbHVlOiBvcGVuZWREaWFsb2dCb2R5Q2xhc3NcclxuICAgIH1dKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVHb29nbGVNYXBzQXBpS2V5KGdvb2dsZU1hcHNBcGlLZXk6IHN0cmluZyB8IG51bGwpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcblx0cmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbe1xyXG5cdFx0cHJvdmlkZTogR09PR0xFX01BUFNfQVBJX0tFWSxcclxuXHRcdHVzZVZhbHVlOiBnb29nbGVNYXBzQXBpS2V5XHJcblx0fV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURpYWxvZ0NvbmZpcm1Db21wb25lbnQoY29tcG9uZW50OiBUeXBlPGFueT4pOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcblx0cmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbe1xyXG5cdFx0cHJvdmlkZTogRElBTE9HX0NPTkZJUk1fQ09NUE9ORU5ULFxyXG5cdFx0dXNlVmFsdWU6IGNvbXBvbmVudFxyXG5cdH1dKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVEaWFsb2dBbGVydENvbXBvbmVudChjb21wb25lbnQ6IFR5cGU8YW55Pik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcclxuXHRyZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcblx0XHRwcm92aWRlOiBESUFMT0dfQUxFUlRfQ09NUE9ORU5ULFxyXG5cdFx0dXNlVmFsdWU6IGNvbXBvbmVudFxyXG5cdH1dKTtcclxufVxyXG4iXX0=
48
+ export function provideApiBaseUrl(apiBaseUrl) {
49
+ return makeEnvironmentProviders([{
50
+ provide: API_BASE_URL,
51
+ useValue: apiBaseUrl
52
+ }]);
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kZWZveGNvcmUvc3JjL2xpYi9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUF3Qix3QkFBd0IsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLG1CQUFtQixFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR3JMLE1BQU0sVUFBVSx1QkFBdUI7SUFDbkMsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzdCLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixLQUFLLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQztBQUVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxpQkFBb0M7SUFDekUsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzdCLE9BQU8sRUFBRSxrQkFBa0I7WUFDM0IsUUFBUSxFQUFFLGlCQUFpQjtTQUM5QixDQUFDLENBQUMsQ0FBQztBQUNSLENBQUM7QUFFRCxNQUFNLFVBQVUsNEJBQTRCLENBQUMscUJBQTREO0lBQ3hHLE9BQU8sd0JBQXdCLENBQUMsQ0FBQztZQUNoQyxPQUFPLEVBQUUsc0JBQXNCO1lBQy9CLFFBQVEsRUFBRSxxQkFBcUI7U0FDL0IsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUFDLHFCQUFvQztJQUM3RSxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDN0IsT0FBTyxFQUFFLHdCQUF3QjtZQUNqQyxRQUFRLEVBQUUscUJBQXFCO1NBQ2xDLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxnQkFBK0I7SUFDdEUsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsUUFBUSxFQUFFLGdCQUFnQjtTQUMxQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCLENBQUMsU0FBb0I7SUFDakUsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sRUFBRSx3QkFBd0I7WUFDakMsUUFBUSxFQUFFLFNBQVM7U0FDbkIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLDJCQUEyQixDQUFDLFNBQW9CO0lBQy9ELE9BQU8sd0JBQXdCLENBQUMsQ0FBQztZQUNoQyxPQUFPLEVBQUUsc0JBQXNCO1lBQy9CLFFBQVEsRUFBRSxTQUFTO1NBQ25CLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxVQUFrQjtJQUNuRCxPQUFPLHdCQUF3QixDQUFDLENBQUM7WUFDaEMsT0FBTyxFQUFFLFlBQVk7WUFDckIsUUFBUSxFQUFFLFVBQVU7U0FDcEIsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycywgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRva2VuSW50ZXJjZXB0b3IgfSBmcm9tIFwiLi9pbnRlcmNlcHRvcnMvdG9rZW4uaW50ZXJjZXB0b3JcIjtcclxuaW1wb3J0IHsgQVBJX0JBU0VfVVJMLCBDT05GSVJNX0NPTkZJR1VSQVRJT05TLCBESUFMT0dfQUxFUlRfQ09NUE9ORU5ULCBESUFMT0dfQ09ORklSTV9DT01QT05FTlQsIEdPT0dMRV9NQVBTX0FQSV9LRVksIE9QRU5FRF9ESUFMT0dfQk9EWV9DTEFTUywgUFJFREVGSU5FRF9ESUFMT0dTIH0gZnJvbSBcIi4vdG9rZW5zXCI7XHJcbmltcG9ydCB7IENvbmZpcm1Db25maWd1cmF0aW9uLCBQcmVkZWZpbmVkRGlhbG9ncyB9IGZyb20gXCIuL2ludGVyZmFjZXNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlVG9rZW5JbnRlcmNlcHRvcigpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcbiAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXHJcbiAgICAgICAgdXNlQ2xhc3M6IFRva2VuSW50ZXJjZXB0b3IsXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1dKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVQcmVkZWZpbmVkRGlhbG9ncyhwcmVkZWZpbmVkRGlhbG9nczogUHJlZGVmaW5lZERpYWxvZ3MpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcbiAgICAgICAgcHJvdmlkZTogUFJFREVGSU5FRF9ESUFMT0dTLFxyXG4gICAgICAgIHVzZVZhbHVlOiBwcmVkZWZpbmVkRGlhbG9nc1xyXG4gICAgfV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUNvbmZpcm1Db25maWd1cmF0aW9ucyhjb25maXJtQ29uZmlndXJhdGlvbnM6IHtba2V5OiBzdHJpbmddOiBDb25maXJtQ29uZmlndXJhdGlvbn0pOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XHJcblx0cmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbe1xyXG5cdFx0cHJvdmlkZTogQ09ORklSTV9DT05GSUdVUkFUSU9OUyxcclxuXHRcdHVzZVZhbHVlOiBjb25maXJtQ29uZmlndXJhdGlvbnNcclxuXHR9XSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlT3BlbmVkRGlhbG9nQm9keUNsYXNzKG9wZW5lZERpYWxvZ0JvZHlDbGFzczogc3RyaW5nIHwgbnVsbCk6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcclxuICAgIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW3tcclxuICAgICAgICBwcm92aWRlOiBPUEVORURfRElBTE9HX0JPRFlfQ0xBU1MsXHJcbiAgICAgICAgdXNlVmFsdWU6IG9wZW5lZERpYWxvZ0JvZHlDbGFzc1xyXG4gICAgfV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUdvb2dsZU1hcHNBcGlLZXkoZ29vZ2xlTWFwc0FwaUtleTogc3RyaW5nIHwgbnVsbCk6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcclxuXHRyZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcblx0XHRwcm92aWRlOiBHT09HTEVfTUFQU19BUElfS0VZLFxyXG5cdFx0dXNlVmFsdWU6IGdvb2dsZU1hcHNBcGlLZXlcclxuXHR9XSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGlhbG9nQ29uZmlybUNvbXBvbmVudChjb21wb25lbnQ6IFR5cGU8YW55Pik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcclxuXHRyZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7XHJcblx0XHRwcm92aWRlOiBESUFMT0dfQ09ORklSTV9DT01QT05FTlQsXHJcblx0XHR1c2VWYWx1ZTogY29tcG9uZW50XHJcblx0fV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURpYWxvZ0FsZXJ0Q29tcG9uZW50KGNvbXBvbmVudDogVHlwZTxhbnk+KTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG5cdHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW3tcclxuXHRcdHByb3ZpZGU6IERJQUxPR19BTEVSVF9DT01QT05FTlQsXHJcblx0XHR1c2VWYWx1ZTogY29tcG9uZW50XHJcblx0fV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUFwaUJhc2VVcmwoYXBpQmFzZVVybDogc3RyaW5nKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG5cdHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW3tcclxuXHRcdHByb3ZpZGU6IEFQSV9CQVNFX1VSTCxcclxuXHRcdHVzZVZhbHVlOiBhcGlCYXNlVXJsXHJcblx0fV0pXHJcbn1cclxuIl19
@@ -1,12 +1,13 @@
1
1
  import { HttpClient } from "@angular/common/http";
2
2
  import { inject, Injectable } from "@angular/core";
3
3
  import { LoggerService } from "./logger.service";
4
+ import { API_BASE_URL } from "../tokens";
4
5
  import * as i0 from "@angular/core";
5
6
  export class ApiService {
6
7
  constructor() {
7
8
  this.httpClient = inject(HttpClient);
8
9
  this.loggerService = inject(LoggerService);
9
- this._apiBaseUrl = null;
10
+ this._apiBaseUrl = inject(API_BASE_URL);
10
11
  }
11
12
  post(endPoint, body) {
12
13
  return this.httpClient.post(this.generateUrl(endPoint), body);
@@ -81,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
81
82
  providedIn: 'root'
82
83
  }]
83
84
  }] });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3NlcnZpY2VzL2FwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBS2pELE1BQU0sT0FBTyxVQUFVO0lBSHZCO1FBS0MsZUFBVSxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxrQkFBYSxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0MsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO0tBNkUxQztJQTNFTyxJQUFJLENBQUksUUFBMkIsRUFBRSxJQUFTO1FBQ3BELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU0sR0FBRyxDQUFJLFFBQTJCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxRQUEyQjtRQUNwRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdEQsWUFBWSxFQUFFLGFBQWE7U0FDM0IsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVcsQ0FBQyxRQUEyQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUks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QUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN4RDtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDYixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDekIsQ0FBQzsrR0FqRlcsVUFBVTttSEFBVixVQUFVLGNBRlYsTUFBTTs7NEZBRU4sVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSBcIi4vbG9nZ2VyLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaVNlcnZpY2Uge1xyXG5cclxuXHRodHRwQ2xpZW50OiBIdHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xyXG5cdGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UgPSBpbmplY3QoTG9nZ2VyU2VydmljZSk7XHJcblxyXG5cdHByaXZhdGUgX2FwaUJhc2VVcmw6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuXHRwdWJsaWMgcG9zdDxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10sIGJvZHk6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCksIGJvZHkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldDxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldEZpbGVBcnJheUJ1ZmZlcihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10pOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSwge1xyXG5cdFx0XHRyZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcidcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldEZpbGVUZXh0KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSwge1xyXG5cdFx0XHRyZXNwb25zZVR5cGU6ICd0ZXh0J1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0V2l0aEh0dHBQYXJhbXM8VD4oZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdLCBwYXJhbXM6IEh0dHBQYXJhbXMgfCBudWxsID0gbnVsbCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRpZiAocGFyYW1zID09PSBudWxsKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmdldChlbmRQb2ludCk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUPih0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSwge1xyXG5cdFx0XHRcdHBhcmFtc1xyXG5cdFx0XHR9KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBkZWxldGU8VD4oZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZGVsZXRlPFQ+KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBwYXRjaDxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10sIGJvZHk6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPFQ+KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpLCBib2R5KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBoZWFkPFQ+KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmhlYWQ8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIG9wdGlvbnM8VD4oZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQub3B0aW9uczxUPih0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgcHV0PFQ+KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSwgYm9keTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0PFQ+KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpLCBib2R5KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZW5lcmF0ZVVybChlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10pOiBzdHJpbmcge1xyXG5cdFx0aWYgKHRoaXMuX2FwaUJhc2VVcmwgPT09IG51bGwpIHtcclxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdObyBBUEkgYmFzZSB1cmwgc2V0IGluIGdlbmVyYXRlVXJsIGNhbGwhJyk7XHJcblx0XHR9XHJcbiAgICAgICAgaWYgKGVuZFBvaW50Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fYXBpQmFzZVVybDtcclxuICAgICAgICB9XHJcblx0XHRpZiAodHlwZW9mIGVuZFBvaW50WzBdID09PSAnc3RyaW5nJyAmJiBlbmRQb2ludFswXS5zdGFydHNXaXRoKCcjJykpIHtcclxuICAgICAgICAgICAgZW5kUG9pbnRbMF0gPSBlbmRQb2ludFswXS5zbGljZSgxKTtcclxuXHRcdFx0cmV0dXJuIGVuZFBvaW50Lm1hcCgodiwgaSkgPT4gaSA9PT0gMCA/IHYgOiBlbmNvZGVVUklDb21wb25lbnQodikpLmpvaW4oJy8nKTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBbdGhpcy5fYXBpQmFzZVVybCwgLi4uZW5kUG9pbnQubWFwKCh2KSA9PiBlbmNvZGVVUklDb21wb25lbnQodikpXS5qb2luKCcvJyk7XHJcblx0fVxyXG5cclxuXHRzZXQgYXBpQmFzZVVybChhcGlCYXNlVXJsOiBzdHJpbmcpIHtcclxuXHRcdHRoaXMubG9nZ2VyU2VydmljZS5pbmZvKCdBcGkgU2VydmljZSBiYXNlIHVybCBzZXQgdG86ICcgKyBhcGlCYXNlVXJsKTtcclxuXHRcdGlmIChhcGlCYXNlVXJsW2FwaUJhc2VVcmwubGVuZ3RoIC0gMV0gPT09ICcvJykge1xyXG5cdFx0XHRhcGlCYXNlVXJsID0gYXBpQmFzZVVybC5zbGljZSgwLCBhcGlCYXNlVXJsLmxlbmd0aCAtIDEpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5fYXBpQmFzZVVybCA9IGFwaUJhc2VVcmw7XHJcblx0fVxyXG5cclxuXHRnZXQgYXBpQmFzZVVybCgpOiBzdHJpbmcgfCBudWxsIHtcclxuXHRcdHJldHVybiB0aGlzLl9hcGlCYXNlVXJsO1xyXG5cdH1cclxufVxyXG4iXX0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3NlcnZpY2VzL2FwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFLekMsTUFBTSxPQUFPLFVBQVU7SUFIdkI7UUFLQyxlQUFVLEdBQWUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVDLGtCQUFhLEdBQWtCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUU3QyxnQkFBVyxHQUFrQixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7S0E2RTFEO0lBM0VPLElBQUksQ0FBSSxRQUEyQixFQUFFLElBQVM7UUFDcEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFTSxHQUFHLENBQUksUUFBMkI7UUFDeEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFFBQTJCO1FBQ3BELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUN0RCxZQUFZLEVBQUUsYUFBYTtTQUMzQixDQUFDLENBQUM7SUFDSixDQUFDO0lBRU0sV0FBVyxD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QVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO1lBQzlDLFVBQVUsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksVUFBVTtRQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN6QixDQUFDOytHQWpGVyxVQUFVO21IQUFWLFVBQVUsY0FGVixNQUFNOzs0RkFFTixVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNYLFVBQVUsRUFBRSxNQUFNO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tIFwiLi9sb2dnZXIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBUElfQkFTRV9VUkwgfSBmcm9tIFwiLi4vdG9rZW5zXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcGlTZXJ2aWNlIHtcclxuXHJcblx0aHR0cENsaWVudDogSHR0cENsaWVudCA9IGluamVjdChIdHRwQ2xpZW50KTtcclxuXHRsb2dnZXJTZXJ2aWNlOiBMb2dnZXJTZXJ2aWNlID0gaW5qZWN0KExvZ2dlclNlcnZpY2UpO1xyXG5cclxuXHRwcml2YXRlIF9hcGlCYXNlVXJsOiBzdHJpbmcgfCBudWxsID0gaW5qZWN0KEFQSV9CQVNFX1VSTCk7XHJcblxyXG5cdHB1YmxpYyBwb3N0PFQ+KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSwgYm9keTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxUPih0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSwgYm9keSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0PFQ+KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUPih0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0RmlsZUFycmF5QnVmZmVyKGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXI+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpLCB7XHJcblx0XHRcdHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJ1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0RmlsZVRleHQoZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpLCB7XHJcblx0XHRcdHJlc3BvbnNlVHlwZTogJ3RleHQnXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZXRXaXRoSHR0cFBhcmFtczxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10sIHBhcmFtczogSHR0cFBhcmFtcyB8IG51bGwgPSBudWxsKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdGlmIChwYXJhbXMgPT09IG51bGwpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMuZ2V0KGVuZFBvaW50KTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PFQ+KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpLCB7XHJcblx0XHRcdFx0cGFyYW1zXHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cHVibGljIGRlbGV0ZTxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5kZWxldGU8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHBhdGNoPFQ+KGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSwgYm9keTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCksIGJvZHkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGhlYWQ8VD4oZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuaGVhZDxUPih0aGlzLmdlbmVyYXRlVXJsKGVuZFBvaW50KSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgb3B0aW9uczxUPihlbmRQb2ludDogKHN0cmluZ3xudW1iZXIpW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5vcHRpb25zPFQ+KHRoaXMuZ2VuZXJhdGVVcmwoZW5kUG9pbnQpKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBwdXQ8VD4oZW5kUG9pbnQ6IChzdHJpbmd8bnVtYmVyKVtdLCBib2R5OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQ8VD4odGhpcy5nZW5lcmF0ZVVybChlbmRQb2ludCksIGJvZHkpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdlbmVyYXRlVXJsKGVuZFBvaW50OiAoc3RyaW5nfG51bWJlcilbXSk6IHN0cmluZyB7XHJcblx0XHRpZiAodGhpcy5fYXBpQmFzZVVybCA9PT0gbnVsbCkge1xyXG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ05vIEFQSSBiYXNlIHVybCBzZXQgaW4gZ2VuZXJhdGVVcmwgY2FsbCEnKTtcclxuXHRcdH1cclxuICAgICAgICBpZiAoZW5kUG9pbnQubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9hcGlCYXNlVXJsO1xyXG4gICAgICAgIH1cclxuXHRcdGlmICh0eXBlb2YgZW5kUG9pbnRbMF0gPT09ICdzdHJpbmcnICYmIGVuZFBvaW50WzBdLnN0YXJ0c1dpdGgoJyMnKSkge1xyXG4gICAgICAgICAgICBlbmRQb2ludFswXSA9IGVuZFBvaW50WzBdLnNsaWNlKDEpO1xyXG5cdFx0XHRyZXR1cm4gZW5kUG9pbnQubWFwKCh2LCBpKSA9PiBpID09PSAwID8gdiA6IGVuY29kZVVSSUNvbXBvbmVudCh2KSkuam9pbignLycpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIFt0aGlzLl9hcGlCYXNlVXJsLCAuLi5lbmRQb2ludC5tYXAoKHYpID0+IGVuY29kZVVSSUNvbXBvbmVudCh2KSldLmpvaW4oJy8nKTtcclxuXHR9XHJcblxyXG5cdHNldCBhcGlCYXNlVXJsKGFwaUJhc2VVcmw6IHN0cmluZykge1xyXG5cdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmluZm8oJ0FwaSBTZXJ2aWNlIGJhc2UgdXJsIHNldCB0bzogJyArIGFwaUJhc2VVcmwpO1xyXG5cdFx0aWYgKGFwaUJhc2VVcmxbYXBpQmFzZVVybC5sZW5ndGggLSAxXSA9PT0gJy8nKSB7XHJcblx0XHRcdGFwaUJhc2VVcmwgPSBhcGlCYXNlVXJsLnNsaWNlKDAsIGFwaUJhc2VVcmwubGVuZ3RoIC0gMSk7XHJcblx0XHR9XHJcblx0XHR0aGlzLl9hcGlCYXNlVXJsID0gYXBpQmFzZVVybDtcclxuXHR9XHJcblxyXG5cdGdldCBhcGlCYXNlVXJsKCk6IHN0cmluZyB8IG51bGwge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2FwaUJhc2VVcmw7XHJcblx0fVxyXG59XHJcbiJdfQ==
@@ -3,6 +3,7 @@ import { TokenServiceMode } from '../interfaces';
3
3
  import { isBrowser, localStorage, sessionStorage } from '../helpers';
4
4
  import { CookieService } from './cookie.service';
5
5
  import { LoggerService } from './logger.service';
6
+ import { tap } from 'rxjs';
6
7
  import * as i0 from "@angular/core";
7
8
  export class TokenService {
8
9
  constructor() {
@@ -12,30 +13,40 @@ export class TokenService {
12
13
  this.sessionStorage = sessionStorage();
13
14
  this.isBrowser = isBrowser();
14
15
  this.cookiePath = null;
15
- this.accessToken = null;
16
- this.accessTokenKey = 'acccessToken';
17
- this.accessTokenCookieExpireDays = 30;
16
+ this.sessionToken = null;
17
+ this.sessionTokenKey = 'acccessToken';
18
+ this.sessionTokenCookieExpireDays = 30;
18
19
  this.mode = TokenServiceMode.LOCALSTORAGE;
19
20
  }
20
- init(accessTokenKey, mode = null, readAndStore = true) {
21
- this.accessTokenKey = accessTokenKey;
21
+ init(sessionTokenKey, mode = null, readAndStore = true) {
22
+ this.sessionTokenKey = sessionTokenKey;
22
23
  if (mode !== null) {
23
24
  this.mode = mode;
24
25
  }
25
26
  if (readAndStore) {
26
- this.accessToken = this.read();
27
+ this.sessionToken = this.read();
27
28
  }
28
29
  }
29
- write(accessToken, mode = null) {
30
- this.accessToken = accessToken;
30
+ initWithCall(sessionTokenKey, mode, initCall) {
31
+ this.sessionTokenKey = sessionTokenKey;
32
+ this.mode = mode;
33
+ this.sessionToken = this.read(this.mode);
34
+ return initCall.pipe(tap(({ sessionToken }) => {
35
+ if (this.sessionToken !== sessionToken) {
36
+ this.write(sessionToken, this.mode);
37
+ }
38
+ }));
39
+ }
40
+ write(sessionToken, mode = null) {
41
+ this.sessionToken = sessionToken;
31
42
  if (mode === null) {
32
43
  mode = this.mode;
33
44
  }
34
45
  switch (mode) {
35
46
  case TokenServiceMode.LOCALSTORAGE:
36
47
  if (this.isBrowser && this.localStorage !== null) {
37
- this.localStorage.setItem(this.accessTokenKey, this.accessToken);
38
- this.loggerService.debug('Token set to local storage: ' + this.accessToken);
48
+ this.localStorage.setItem(this.sessionTokenKey, this.sessionToken);
49
+ this.loggerService.debug('Token set to local storage: ' + this.sessionToken);
39
50
  }
40
51
  else {
41
52
  this.loggerService.error('Trying to set localStorage on not a browser platform!');
@@ -43,16 +54,16 @@ export class TokenService {
43
54
  break;
44
55
  case TokenServiceMode.SESSIONSTORAGE:
45
56
  if (this.isBrowser && this.sessionStorage !== null) {
46
- this.sessionStorage.setItem(this.accessTokenKey, this.accessToken);
47
- this.loggerService.debug('Token set to session storage: ' + this.accessToken);
57
+ this.sessionStorage.setItem(this.sessionTokenKey, this.sessionToken);
58
+ this.loggerService.debug('Token set to session storage: ' + this.sessionToken);
48
59
  }
49
60
  else {
50
61
  this.loggerService.error('Trying to set sessionStorage on not a browser platform!');
51
62
  }
52
63
  break;
53
64
  case TokenServiceMode.COOKIE:
54
- this.cookieService.set(this.accessTokenKey, this.accessToken, this.accessTokenCookieExpireDays * 24 * 60 * 60, this.cookiePath);
55
- this.loggerService.debug('Token set to cookie: ' + this.accessToken);
65
+ this.cookieService.set(this.sessionTokenKey, this.sessionToken, this.sessionTokenCookieExpireDays * 24 * 60 * 60, this.cookiePath);
66
+ this.loggerService.debug('Token set to cookie: ' + this.sessionToken);
56
67
  break;
57
68
  }
58
69
  }
@@ -64,7 +75,7 @@ export class TokenService {
64
75
  case TokenServiceMode.LOCALSTORAGE:
65
76
  this.loggerService.debug('Trying to read token from local storage');
66
77
  if (this.isBrowser && this.localStorage !== null) {
67
- const tokenLocalStorage = this.localStorage.getItem(this.accessTokenKey);
78
+ const tokenLocalStorage = this.localStorage.getItem(this.sessionTokenKey);
68
79
  if (tokenLocalStorage !== null) {
69
80
  this.loggerService.debug('Token read from local storage: ' + tokenLocalStorage);
70
81
  }
@@ -77,7 +88,7 @@ export class TokenService {
77
88
  case TokenServiceMode.SESSIONSTORAGE:
78
89
  if (this.isBrowser && this.sessionStorage !== null) {
79
90
  this.loggerService.debug('Trying to read token from session storage');
80
- const tokenSessionStorage = this.sessionStorage.getItem(this.accessTokenKey);
91
+ const tokenSessionStorage = this.sessionStorage.getItem(this.sessionTokenKey);
81
92
  if (tokenSessionStorage !== null) {
82
93
  this.loggerService.debug('Token read from session storage: ' + tokenSessionStorage);
83
94
  }
@@ -89,7 +100,7 @@ export class TokenService {
89
100
  }
90
101
  case TokenServiceMode.COOKIE: {
91
102
  this.loggerService.debug('Trying to read token from session cookie');
92
- const cookieAccessToken = this.cookieService.get(this.accessTokenKey);
103
+ const cookieAccessToken = this.cookieService.get(this.sessionTokenKey);
93
104
  if (cookieAccessToken !== null) {
94
105
  this.loggerService.debug('Token read from cookie: ' + cookieAccessToken);
95
106
  }
@@ -107,22 +118,22 @@ export class TokenService {
107
118
  case TokenServiceMode.LOCALSTORAGE:
108
119
  if (this.localStorage !== null) {
109
120
  this.loggerService.debug('Token deleted from local storage');
110
- this.localStorage.removeItem(this.accessTokenKey);
121
+ this.localStorage.removeItem(this.sessionTokenKey);
111
122
  }
112
123
  break;
113
124
  case TokenServiceMode.SESSIONSTORAGE:
114
125
  if (this.sessionStorage !== null) {
115
126
  this.loggerService.debug('Token deleted from session storage');
116
- this.sessionStorage.removeItem(this.accessTokenKey);
127
+ this.sessionStorage.removeItem(this.sessionTokenKey);
117
128
  }
118
129
  break;
119
130
  case TokenServiceMode.COOKIE: {
120
131
  this.loggerService.debug('Token deleted from cookie');
121
- this.cookieService.delete(this.accessTokenKey);
132
+ this.cookieService.delete(this.sessionTokenKey);
122
133
  break;
123
134
  }
124
135
  }
125
- this.accessToken = null;
136
+ this.sessionToken = null;
126
137
  }
127
138
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
128
139
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, providedIn: 'root' }); }
@@ -133,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
133
144
  providedIn: 'root'
134
145
  }]
135
146
  }] });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvZGVmb3hjb3JlL3NyYy9saWIvc2VydmljZXMvdG9rZW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBS2pELE1BQU0sT0FBTyxZQUFZO0lBSHpCO1FBS0Msa0JBQWEsR0FBa0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELGtCQUFhLEdBQWtCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRCxpQkFBWSxHQUFtQixZQUFZLEVBQUUsQ0FBQztRQUM5QyxtQkFBYyxHQUFtQixjQUFjLEVBQUUsQ0FBQztRQUNsRCxjQUFTLEdBQVksU0FBUyxFQUFFLENBQUM7UUFFakMsZUFBVSxHQUFrQixJQUFJLENBQUM7UUFDakMsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ2hDLGdDQUEyQixHQUFHLEVBQUUsQ0FBQztRQUNqQyxTQUFJLEdBQXFCLGdCQUFnQixDQUFDLFlBQVksQ0FBQztLQThHdkQ7SUE1R08sSUFBSSxDQUFDLGNBQXNCLEVBQUUsT0FBZ0MsSUFBSSxFQUFFLGVBQXdCLElBQUk7UUFDckcsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ2xCLElBQUks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LElBQUksRUFBRTtZQUNiLEtBQUssZ0JBQWdCLENBQUMsWUFBWTtnQkFDakMsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksRUFBRTtvQkFDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztvQkFDN0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNsRDtnQkFDRCxNQUFNO1lBQ1AsS0FBSyxnQkFBZ0IsQ0FBQyxjQUFjO2dCQUNuQyxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssSUFBSSxFQUFFO29CQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO29CQUMvRCxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7aUJBQ3BEO2dCQUNELE1BQU07WUFDUCxLQUFLLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2dCQUN0RCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQy9DLE1BQU07YUFDTjtTQUNEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQzsrR0F6SFcsWUFBWTttSEFBWixZQUFZLGNBRlQsTUFBTTs7NEZBRVQsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlTW9kZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBpc0Jyb3dzZXIsIGxvY2FsU3RvcmFnZSwgc2Vzc2lvblN0b3JhZ2UgfSBmcm9tICcuLi9oZWxwZXJzJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJy4vY29va2llLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi9sb2dnZXIuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRva2VuU2VydmljZSB7XHJcblxyXG5cdGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UgPSBpbmplY3QoQ29va2llU2VydmljZSk7XHJcblx0bG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSA9IGluamVjdChMb2dnZXJTZXJ2aWNlKTtcclxuXHRsb2NhbFN0b3JhZ2U6IFN0b3JhZ2UgfCBudWxsID0gbG9jYWxTdG9yYWdlKCk7XHJcblx0c2Vzc2lvblN0b3JhZ2U6IFN0b3JhZ2UgfCBudWxsID0gc2Vzc2lvblN0b3JhZ2UoKTtcclxuXHRpc0Jyb3dzZXI6IGJvb2xlYW4gPSBpc0Jyb3dzZXIoKTtcclxuXHJcblx0Y29va2llUGF0aDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblx0YWNjZXNzVG9rZW46IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cdGFjY2Vzc1Rva2VuS2V5ID0gJ2FjY2Nlc3NUb2tlbic7XHJcblx0YWNjZXNzVG9rZW5Db29raWVFeHBpcmVEYXlzID0gMzA7XHJcblx0bW9kZTogVG9rZW5TZXJ2aWNlTW9kZSA9IFRva2VuU2VydmljZU1vZGUuTE9DQUxTVE9SQUdFO1xyXG5cclxuXHRwdWJsaWMgaW5pdChhY2Nlc3NUb2tlbktleTogc3RyaW5nLCBtb2RlOiBUb2tlblNlcnZpY2VNb2RlIHwgbnVsbCA9IG51bGwsIHJlYWRBbmRTdG9yZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWNjZXNzVG9rZW5LZXkgPSBhY2Nlc3NUb2tlbktleTtcclxuXHRcdGlmIChtb2RlICE9PSBudWxsKSB7XHJcblx0XHRcdHRoaXMubW9kZSA9IG1vZGU7XHJcblx0XHR9XHJcblx0XHRpZiAocmVhZEFuZFN0b3JlKSB7XHJcblx0XHRcdHRoaXMuYWNjZXNzVG9rZW4gPSB0aGlzLnJlYWQoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyB3cml0ZShhY2Nlc3NUb2tlbjogc3RyaW5nLCBtb2RlOiBUb2tlblNlcnZpY2VNb2RlIHwgbnVsbCA9IG51bGwpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWNjZXNzVG9rZW4gPSBhY2Nlc3NUb2tlbjtcclxuXHRcdGlmIChtb2RlID09PSBudWxsKSB7XHJcblx0XHRcdG1vZGUgPSB0aGlzLm1vZGU7XHJcblx0XHR9XHJcblx0XHRzd2l0Y2ggKG1vZGUpIHtcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLkxPQ0FMU1RPUkFHRTpcclxuXHRcdFx0XHRpZiAodGhpcy5pc0Jyb3dzZXIgJiYgdGhpcy5sb2NhbFN0b3JhZ2UgIT09IG51bGwpIHtcclxuXHRcdFx0XHRcdHRoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5hY2Nlc3NUb2tlbktleSwgdGhpcy5hY2Nlc3NUb2tlbik7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIHNldCB0byBsb2NhbCBzdG9yYWdlOiAnICsgdGhpcy5hY2Nlc3NUb2tlbik7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignVHJ5aW5nIHRvIHNldCBsb2NhbFN0b3JhZ2Ugb24gbm90IGEgYnJvd3NlciBwbGF0Zm9ybSEnKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5TRVNTSU9OU1RPUkFHRTpcclxuXHRcdFx0XHRpZiAodGhpcy5pc0Jyb3dzZXIgJiYgdGhpcy5zZXNzaW9uU3RvcmFnZSAhPT0gbnVsbCkge1xyXG5cdFx0XHRcdFx0dGhpcy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHRoaXMuYWNjZXNzVG9rZW5LZXksIHRoaXMuYWNjZXNzVG9rZW4pO1xyXG5cdFx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmRlYnVnKCdUb2tlbiBzZXQgdG8gc2Vzc2lvbiBzdG9yYWdlOiAnICsgdGhpcy5hY2Nlc3NUb2tlbik7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignVHJ5aW5nIHRvIHNldCBzZXNzaW9uU3RvcmFnZSBvbiBub3QgYSBicm93c2VyIHBsYXRmb3JtIScpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRicmVhaztcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLkNPT0tJRTpcclxuXHRcdFx0XHR0aGlzLmNvb2tpZVNlcnZpY2Uuc2V0KHRoaXMuYWNjZXNzVG9rZW5LZXksIHRoaXMuYWNjZXNzVG9rZW4sIHRoaXMuYWNjZXNzVG9rZW5Db29raWVFeHBpcmVEYXlzICogMjQgKiA2MCAqIDYwLCB0aGlzLmNvb2tpZVBhdGgpO1xyXG5cdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gc2V0IHRvIGNvb2tpZTogJyArIHRoaXMuYWNjZXNzVG9rZW4pO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHR9XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgcmVhZChtb2RlOiBUb2tlblNlcnZpY2VNb2RlIHwgbnVsbCA9IG51bGwpOiBzdHJpbmcgfCBudWxsIHtcclxuXHRcdGlmIChtb2RlID09PSBudWxsKSB7XHJcblx0XHRcdG1vZGUgPSB0aGlzLm1vZGU7XHJcblx0XHR9XHJcblx0XHRzd2l0Y2ggKG1vZGUpIHtcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLkxPQ0FMU1RPUkFHRTpcclxuXHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1RyeWluZyB0byByZWFkIHRva2VuIGZyb20gbG9jYWwgc3RvcmFnZScpO1xyXG5cdFx0XHRcdGlmICh0aGlzLmlzQnJvd3NlciAmJiB0aGlzLmxvY2FsU3RvcmFnZSAhPT0gbnVsbCkge1xyXG5cdFx0XHRcdFx0Y29uc3QgdG9rZW5Mb2NhbFN0b3JhZ2U6IHN0cmluZyB8IG51bGwgPSB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuYWNjZXNzVG9rZW5LZXkpO1xyXG5cdFx0XHRcdFx0aWYgKHRva2VuTG9jYWxTdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gcmVhZCBmcm9tIGxvY2FsIHN0b3JhZ2U6ICcgKyB0b2tlbkxvY2FsU3RvcmFnZSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRyZXR1cm4gdG9rZW5Mb2NhbFN0b3JhZ2U7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignVHJ5aW5nIHRvIHJlYWQgZnJvbSBsb2NhbFN0b3JhZ2Ugb24gbm90IGEgYnJvd3NlciBwbGF0Zm9ybSEnKTtcclxuXHRcdFx0XHRcdHJldHVybiBudWxsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLlNFU1NJT05TVE9SQUdFOlxyXG5cdFx0XHRcdGlmICh0aGlzLmlzQnJvd3NlciAmJiB0aGlzLnNlc3Npb25TdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1RyeWluZyB0byByZWFkIHRva2VuIGZyb20gc2Vzc2lvbiBzdG9yYWdlJyk7XHJcblx0XHRcdFx0XHRjb25zdCB0b2tlblNlc3Npb25TdG9yYWdlOiBzdHJpbmcgfCBudWxsID0gdGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuYWNjZXNzVG9rZW5LZXkpO1xyXG5cdFx0XHRcdFx0aWYgKHRva2VuU2Vzc2lvblN0b3JhZ2UgIT09IG51bGwpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmRlYnVnKCdUb2tlbiByZWFkIGZyb20gc2Vzc2lvbiBzdG9yYWdlOiAnICsgdG9rZW5TZXNzaW9uU3RvcmFnZSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRyZXR1cm4gdG9rZW5TZXNzaW9uU3RvcmFnZTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmVycm9yKCdUcnlpbmcgdG8gcmVhZCBmcm9tIHNlc3Npb25TdG9yYWdlIG9uIG5vdCBhIGJyb3dzZXIgcGxhdGZvcm0hJyk7XHJcblx0XHRcdFx0XHRyZXR1cm4gbnVsbDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5DT09LSUU6IHtcclxuXHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1RyeWluZyB0byByZWFkIHRva2VuIGZyb20gc2Vzc2lvbiBjb29raWUnKTtcclxuXHRcdFx0XHRjb25zdCBjb29raWVBY2Nlc3NUb2tlbjogc3RyaW5nIHwgbnVsbCA9IHRoaXMuY29va2llU2VydmljZS5nZXQodGhpcy5hY2Nlc3NUb2tlbktleSk7XHJcblx0XHRcdFx0aWYgKGNvb2tpZUFjY2Vzc1Rva2VuICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIHJlYWQgZnJvbSBjb29raWU6ICcgKyBjb29raWVBY2Nlc3NUb2tlbik7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJldHVybiBjb29raWVBY2Nlc3NUb2tlbjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cHVibGljIHJlYWRBbmRTdG9yZSgpOiB2b2lkIHtcclxuXHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZGVsZXRlKG1vZGU6IFRva2VuU2VydmljZU1vZGUgfCBudWxsKTogdm9pZCB7XHJcblx0XHRpZiAobW9kZSA9PT0gbnVsbCkge1xyXG5cdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZXJyb3IoJ0ludmFsaWQgbW9kZSBmb3IgdG9rZW4gZGVsZXRlIScpO1xyXG5cdFx0fVxyXG5cdFx0c3dpdGNoIChtb2RlKSB7XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5MT0NBTFNUT1JBR0U6XHJcblx0XHRcdFx0aWYgKHRoaXMubG9jYWxTdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIGRlbGV0ZWQgZnJvbSBsb2NhbCBzdG9yYWdlJyk7XHJcblx0XHRcdFx0XHR0aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMuYWNjZXNzVG9rZW5LZXkpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRicmVhaztcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLlNFU1NJT05TVE9SQUdFOlxyXG5cdFx0XHRcdGlmICh0aGlzLnNlc3Npb25TdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIGRlbGV0ZWQgZnJvbSBzZXNzaW9uIHN0b3JhZ2UnKTtcclxuXHRcdFx0XHRcdHRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLmFjY2Vzc1Rva2VuS2V5KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5DT09LSUU6IHtcclxuXHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIGRlbGV0ZWQgZnJvbSBjb29raWUnKTtcclxuXHRcdFx0XHR0aGlzLmNvb2tpZVNlcnZpY2UuZGVsZXRlKHRoaXMuYWNjZXNzVG9rZW5LZXkpO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHR0aGlzLmFjY2Vzc1Rva2VuID0gbnVsbDtcclxuXHR9XHJcbn1cclxuIl19
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvZGVmb3hjb3JlL3NyYy9saWIvc2VydmljZXMvdG9rZW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLdkMsTUFBTSxPQUFPLFlBQVk7SUFIekI7UUFLQyxrQkFBYSxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBa0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELGlCQUFZLEdBQW1CLFlBQVksRUFBRSxDQUFDO1FBQzlDLG1CQUFjLEdBQW1CLGNBQWMsRUFBRSxDQUFDO1FBQ2xELGNBQVMsR0FBWSxTQUFTLEVBQUUsQ0FBQztRQUVqQyxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUNqQyxpQkFBWSxHQUFrQixJQUFJLENBQUM7UUFDbkMsb0JBQWUsR0FBRyxjQUFjLENBQUM7UUFDakMsaUNBQTRCLEdBQUcsRUFBRSxDQUFDO1FBQ2xDLFNBQUksR0FBcUIsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO0tBeUh2RDtJQXZITyxJQUFJLENBQUMsZUFBdUIsRUFBRSxPQUFnQyxJQUFJLEVBQUUsZUFBd0IsSUFBSTtRQUN0RyxJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztR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N0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUNoRCxNQUFNO2FBQ047U0FDRDtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7K0dBcElXLFlBQVk7bUhBQVosWUFBWSxjQUZULE1BQU07OzRGQUVULFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRva2VuU2VydmljZU1vZGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgaXNCcm93c2VyLCBsb2NhbFN0b3JhZ2UsIHNlc3Npb25TdG9yYWdlIH0gZnJvbSAnLi4vaGVscGVycyc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICcuL2Nvb2tpZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4vbG9nZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0YXAgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9rZW5TZXJ2aWNlIHtcclxuXHJcblx0Y29va2llU2VydmljZTogQ29va2llU2VydmljZSA9IGluamVjdChDb29raWVTZXJ2aWNlKTtcclxuXHRsb2dnZXJTZXJ2aWNlOiBMb2dnZXJTZXJ2aWNlID0gaW5qZWN0KExvZ2dlclNlcnZpY2UpO1xyXG5cdGxvY2FsU3RvcmFnZTogU3RvcmFnZSB8IG51bGwgPSBsb2NhbFN0b3JhZ2UoKTtcclxuXHRzZXNzaW9uU3RvcmFnZTogU3RvcmFnZSB8IG51bGwgPSBzZXNzaW9uU3RvcmFnZSgpO1xyXG5cdGlzQnJvd3NlcjogYm9vbGVhbiA9IGlzQnJvd3NlcigpO1xyXG5cclxuXHRjb29raWVQYXRoOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHRzZXNzaW9uVG9rZW46IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cdHNlc3Npb25Ub2tlbktleSA9ICdhY2NjZXNzVG9rZW4nO1xyXG5cdHNlc3Npb25Ub2tlbkNvb2tpZUV4cGlyZURheXMgPSAzMDtcclxuXHRtb2RlOiBUb2tlblNlcnZpY2VNb2RlID0gVG9rZW5TZXJ2aWNlTW9kZS5MT0NBTFNUT1JBR0U7XHJcblxyXG5cdHB1YmxpYyBpbml0KHNlc3Npb25Ub2tlbktleTogc3RyaW5nLCBtb2RlOiBUb2tlblNlcnZpY2VNb2RlIHwgbnVsbCA9IG51bGwsIHJlYWRBbmRTdG9yZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuXHRcdHRoaXMuc2Vzc2lvblRva2VuS2V5ID0gc2Vzc2lvblRva2VuS2V5O1xyXG5cdFx0aWYgKG1vZGUgIT09IG51bGwpIHtcclxuXHRcdFx0dGhpcy5tb2RlID0gbW9kZTtcclxuXHRcdH1cclxuXHRcdGlmIChyZWFkQW5kU3RvcmUpIHtcclxuXHRcdFx0dGhpcy5zZXNzaW9uVG9rZW4gPSB0aGlzLnJlYWQoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBpbml0V2l0aENhbGw8VD4oc2Vzc2lvblRva2VuS2V5OiBzdHJpbmcsIG1vZGU6IFRva2VuU2VydmljZU1vZGUsIGluaXRDYWxsOiBPYnNlcnZhYmxlPFQgJiB7c2Vzc2lvblRva2VuOiBzdHJpbmd9Pik6IE9ic2VydmFibGU8VD4ge1xyXG5cdFx0dGhpcy5zZXNzaW9uVG9rZW5LZXkgPSBzZXNzaW9uVG9rZW5LZXk7XHJcblx0XHR0aGlzLm1vZGUgPSBtb2RlO1xyXG5cdFx0dGhpcy5zZXNzaW9uVG9rZW4gPSB0aGlzLnJlYWQodGhpcy5tb2RlKTtcclxuXHRcdHJldHVybiBpbml0Q2FsbC5waXBlKHRhcCgoeyBzZXNzaW9uVG9rZW4gfSkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5zZXNzaW9uVG9rZW4gIT09IHNlc3Npb25Ub2tlbikge1xyXG5cdFx0XHRcdHRoaXMud3JpdGUoc2Vzc2lvblRva2VuLCB0aGlzLm1vZGUpO1xyXG5cdFx0XHR9XHJcblx0XHR9KSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgd3JpdGUoc2Vzc2lvblRva2VuOiBzdHJpbmcsIG1vZGU6IFRva2VuU2VydmljZU1vZGUgfCBudWxsID0gbnVsbCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zZXNzaW9uVG9rZW4gPSBzZXNzaW9uVG9rZW47XHJcblx0XHRpZiAobW9kZSA9PT0gbnVsbCkge1xyXG5cdFx0XHRtb2RlID0gdGhpcy5tb2RlO1xyXG5cdFx0fVxyXG5cdFx0c3dpdGNoIChtb2RlKSB7XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5MT0NBTFNUT1JBR0U6XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNCcm93c2VyICYmIHRoaXMubG9jYWxTdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuc2Vzc2lvblRva2VuS2V5LCB0aGlzLnNlc3Npb25Ub2tlbik7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIHNldCB0byBsb2NhbCBzdG9yYWdlOiAnICsgdGhpcy5zZXNzaW9uVG9rZW4pO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZXJyb3IoJ1RyeWluZyB0byBzZXQgbG9jYWxTdG9yYWdlIG9uIG5vdCBhIGJyb3dzZXIgcGxhdGZvcm0hJyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRjYXNlIFRva2VuU2VydmljZU1vZGUuU0VTU0lPTlNUT1JBR0U6XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNCcm93c2VyICYmIHRoaXMuc2Vzc2lvblN0b3JhZ2UgIT09IG51bGwpIHtcclxuXHRcdFx0XHRcdHRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnNlc3Npb25Ub2tlbktleSwgdGhpcy5zZXNzaW9uVG9rZW4pO1xyXG5cdFx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmRlYnVnKCdUb2tlbiBzZXQgdG8gc2Vzc2lvbiBzdG9yYWdlOiAnICsgdGhpcy5zZXNzaW9uVG9rZW4pO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZXJyb3IoJ1RyeWluZyB0byBzZXQgc2Vzc2lvblN0b3JhZ2Ugb24gbm90IGEgYnJvd3NlciBwbGF0Zm9ybSEnKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdGNhc2UgVG9rZW5TZXJ2aWNlTW9kZS5DT09LSUU6XHJcblx0XHRcdFx0dGhpcy5jb29raWVTZXJ2aWNlLnNldCh0aGlzLnNlc3Npb25Ub2tlbktleSwgdGhpcy5zZXNzaW9uVG9rZW4sIHRoaXMuc2Vzc2lvblRva2VuQ29va2llRXhwaXJlRGF5cyAqIDI0ICogNjAgKiA2MCwgdGhpcy5jb29raWVQYXRoKTtcclxuXHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIHNldCB0byBjb29raWU6ICcgKyB0aGlzLnNlc3Npb25Ub2tlbik7XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyByZWFkKG1vZGU6IFRva2VuU2VydmljZU1vZGUgfCBudWxsID0gbnVsbCk6IHN0cmluZyB8IG51bGwge1xyXG5cdFx0aWYgKG1vZGUgPT09IG51bGwpIHtcclxuXHRcdFx0bW9kZSA9IHRoaXMubW9kZTtcclxuXHRcdH1cclxuXHRcdHN3aXRjaCAobW9kZSkge1xyXG5cdFx0XHRjYXNlIFRva2VuU2VydmljZU1vZGUuTE9DQUxTVE9SQUdFOlxyXG5cdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVHJ5aW5nIHRvIHJlYWQgdG9rZW4gZnJvbSBsb2NhbCBzdG9yYWdlJyk7XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNCcm93c2VyICYmIHRoaXMubG9jYWxTdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHRjb25zdCB0b2tlbkxvY2FsU3RvcmFnZTogc3RyaW5nIHwgbnVsbCA9IHRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5zZXNzaW9uVG9rZW5LZXkpO1xyXG5cdFx0XHRcdFx0aWYgKHRva2VuTG9jYWxTdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gcmVhZCBmcm9tIGxvY2FsIHN0b3JhZ2U6ICcgKyB0b2tlbkxvY2FsU3RvcmFnZSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRyZXR1cm4gdG9rZW5Mb2NhbFN0b3JhZ2U7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignVHJ5aW5nIHRvIHJlYWQgZnJvbSBsb2NhbFN0b3JhZ2Ugb24gbm90IGEgYnJvd3NlciBwbGF0Zm9ybSEnKTtcclxuXHRcdFx0XHRcdHJldHVybiBudWxsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLlNFU1NJT05TVE9SQUdFOlxyXG5cdFx0XHRcdGlmICh0aGlzLmlzQnJvd3NlciAmJiB0aGlzLnNlc3Npb25TdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1RyeWluZyB0byByZWFkIHRva2VuIGZyb20gc2Vzc2lvbiBzdG9yYWdlJyk7XHJcblx0XHRcdFx0XHRjb25zdCB0b2tlblNlc3Npb25TdG9yYWdlOiBzdHJpbmcgfCBudWxsID0gdGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc2Vzc2lvblRva2VuS2V5KTtcclxuXHRcdFx0XHRcdGlmICh0b2tlblNlc3Npb25TdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gcmVhZCBmcm9tIHNlc3Npb24gc3RvcmFnZTogJyArIHRva2VuU2Vzc2lvblN0b3JhZ2UpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0cmV0dXJuIHRva2VuU2Vzc2lvblN0b3JhZ2U7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignVHJ5aW5nIHRvIHJlYWQgZnJvbSBzZXNzaW9uU3RvcmFnZSBvbiBub3QgYSBicm93c2VyIHBsYXRmb3JtIScpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIG51bGw7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRjYXNlIFRva2VuU2VydmljZU1vZGUuQ09PS0lFOiB7XHJcblx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmRlYnVnKCdUcnlpbmcgdG8gcmVhZCB0b2tlbiBmcm9tIHNlc3Npb24gY29va2llJyk7XHJcblx0XHRcdFx0Y29uc3QgY29va2llQWNjZXNzVG9rZW46IHN0cmluZyB8IG51bGwgPSB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KHRoaXMuc2Vzc2lvblRva2VuS2V5KTtcclxuXHRcdFx0XHRpZiAoY29va2llQWNjZXNzVG9rZW4gIT09IG51bGwpIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gcmVhZCBmcm9tIGNvb2tpZTogJyArIGNvb2tpZUFjY2Vzc1Rva2VuKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIGNvb2tpZUFjY2Vzc1Rva2VuO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgcmVhZEFuZFN0b3JlKCk6IHZvaWQge1xyXG5cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBkZWxldGUobW9kZTogVG9rZW5TZXJ2aWNlTW9kZSB8IG51bGwpOiB2b2lkIHtcclxuXHRcdGlmIChtb2RlID09PSBudWxsKSB7XHJcblx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5lcnJvcignSW52YWxpZCBtb2RlIGZvciB0b2tlbiBkZWxldGUhJyk7XHJcblx0XHR9XHJcblx0XHRzd2l0Y2ggKG1vZGUpIHtcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLkxPQ0FMU1RPUkFHRTpcclxuXHRcdFx0XHRpZiAodGhpcy5sb2NhbFN0b3JhZ2UgIT09IG51bGwpIHtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VyU2VydmljZS5kZWJ1ZygnVG9rZW4gZGVsZXRlZCBmcm9tIGxvY2FsIHN0b3JhZ2UnKTtcclxuXHRcdFx0XHRcdHRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy5zZXNzaW9uVG9rZW5LZXkpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRicmVhaztcclxuXHRcdFx0Y2FzZSBUb2tlblNlcnZpY2VNb2RlLlNFU1NJT05TVE9SQUdFOlxyXG5cdFx0XHRcdGlmICh0aGlzLnNlc3Npb25TdG9yYWdlICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvZ2dlclNlcnZpY2UuZGVidWcoJ1Rva2VuIGRlbGV0ZWQgZnJvbSBzZXNzaW9uIHN0b3JhZ2UnKTtcclxuXHRcdFx0XHRcdHRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLnNlc3Npb25Ub2tlbktleSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRjYXNlIFRva2VuU2VydmljZU1vZGUuQ09PS0lFOiB7XHJcblx0XHRcdFx0dGhpcy5sb2dnZXJTZXJ2aWNlLmRlYnVnKCdUb2tlbiBkZWxldGVkIGZyb20gY29va2llJyk7XHJcblx0XHRcdFx0dGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZSh0aGlzLnNlc3Npb25Ub2tlbktleSk7XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHRoaXMuc2Vzc2lvblRva2VuID0gbnVsbDtcclxuXHR9XHJcbn1cclxuIl19
@@ -0,0 +1,7 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ export const API_BASE_URL = new InjectionToken('Api base url', {
3
+ factory: () => {
4
+ return null;
5
+ }
6
+ });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kZWZveGNvcmUvc3JjL2xpYi90b2tlbnMvYXBpLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFrQyxJQUFJLGNBQWMsQ0FBQyxjQUFjLEVBQUU7SUFDMUYsT0FBTyxFQUFFLEdBQWtCLEVBQUU7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBBUElfQkFTRV9VUkw6IEluamVjdGlvblRva2VuPHN0cmluZyB8IG51bGw+ID0gbmV3IEluamVjdGlvblRva2VuKCdBcGkgYmFzZSB1cmwnLCB7XHJcbiAgICBmYWN0b3J5OiAoKTogc3RyaW5nIHwgbnVsbCA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbn0pO1xyXG4iXX0=
@@ -4,4 +4,5 @@ export * from './confirm.token';
4
4
  export * from './message.token';
5
5
  export * from './loglevel.token';
6
6
  export * from './google.maps.token';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3Rva2Vucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FsZXJ0LnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cudG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpcm0udG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UudG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xvZ2xldmVsLnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9nb29nbGUubWFwcy50b2tlbic7XHJcbiJdfQ==
7
+ export * from './api.token';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2RlZm94Y29yZS9zcmMvbGliL3Rva2Vucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FsZXJ0LnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cudG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpcm0udG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UudG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xvZ2xldmVsLnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9nb29nbGUubWFwcy50b2tlbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXBpLnRva2VuJztcclxuIl19
@@ -1,4 +1,4 @@
1
- import { Subject, filter, Observable, takeUntil, timer, catchError, EMPTY, of, tap, map, throwError } from 'rxjs';
1
+ import { Subject, filter, Observable, takeUntil, timer, catchError, EMPTY, tap, of, map, throwError } from 'rxjs';
2
2
  import * as i0 from '@angular/core';
3
3
  import { InjectionToken, inject, Injector, PLATFORM_ID, ApplicationRef, createComponent, Injectable, ChangeDetectorRef, DestroyRef, makeEnvironmentProviders, Pipe } from '@angular/core';
4
4
  import { isPlatformBrowser, DOCUMENT } from '@angular/common';
@@ -238,6 +238,12 @@ const GOOGLE_MAPS_API_KEY = new InjectionToken('Google Maps Api Key', {
238
238
  }
239
239
  });
240
240
 
241
+ const API_BASE_URL = new InjectionToken('Api base url', {
242
+ factory: () => {
243
+ return null;
244
+ }
245
+ });
246
+
241
247
  class DialogService {
242
248
  constructor() {
243
249
  this.injector = inject(Injector);
@@ -858,7 +864,7 @@ class ApiService {
858
864
  constructor() {
859
865
  this.httpClient = inject(HttpClient);
860
866
  this.loggerService = inject(LoggerService);
861
- this._apiBaseUrl = null;
867
+ this._apiBaseUrl = inject(API_BASE_URL);
862
868
  }
863
869
  post(endPoint, body) {
864
870
  return this.httpClient.post(this.generateUrl(endPoint), body);
@@ -1029,30 +1035,40 @@ class TokenService {
1029
1035
  this.sessionStorage = sessionStorage();
1030
1036
  this.isBrowser = isBrowser();
1031
1037
  this.cookiePath = null;
1032
- this.accessToken = null;
1033
- this.accessTokenKey = 'acccessToken';
1034
- this.accessTokenCookieExpireDays = 30;
1038
+ this.sessionToken = null;
1039
+ this.sessionTokenKey = 'acccessToken';
1040
+ this.sessionTokenCookieExpireDays = 30;
1035
1041
  this.mode = TokenServiceMode.LOCALSTORAGE;
1036
1042
  }
1037
- init(accessTokenKey, mode = null, readAndStore = true) {
1038
- this.accessTokenKey = accessTokenKey;
1043
+ init(sessionTokenKey, mode = null, readAndStore = true) {
1044
+ this.sessionTokenKey = sessionTokenKey;
1039
1045
  if (mode !== null) {
1040
1046
  this.mode = mode;
1041
1047
  }
1042
1048
  if (readAndStore) {
1043
- this.accessToken = this.read();
1049
+ this.sessionToken = this.read();
1044
1050
  }
1045
1051
  }
1046
- write(accessToken, mode = null) {
1047
- this.accessToken = accessToken;
1052
+ initWithCall(sessionTokenKey, mode, initCall) {
1053
+ this.sessionTokenKey = sessionTokenKey;
1054
+ this.mode = mode;
1055
+ this.sessionToken = this.read(this.mode);
1056
+ return initCall.pipe(tap(({ sessionToken }) => {
1057
+ if (this.sessionToken !== sessionToken) {
1058
+ this.write(sessionToken, this.mode);
1059
+ }
1060
+ }));
1061
+ }
1062
+ write(sessionToken, mode = null) {
1063
+ this.sessionToken = sessionToken;
1048
1064
  if (mode === null) {
1049
1065
  mode = this.mode;
1050
1066
  }
1051
1067
  switch (mode) {
1052
1068
  case TokenServiceMode.LOCALSTORAGE:
1053
1069
  if (this.isBrowser && this.localStorage !== null) {
1054
- this.localStorage.setItem(this.accessTokenKey, this.accessToken);
1055
- this.loggerService.debug('Token set to local storage: ' + this.accessToken);
1070
+ this.localStorage.setItem(this.sessionTokenKey, this.sessionToken);
1071
+ this.loggerService.debug('Token set to local storage: ' + this.sessionToken);
1056
1072
  }
1057
1073
  else {
1058
1074
  this.loggerService.error('Trying to set localStorage on not a browser platform!');
@@ -1060,16 +1076,16 @@ class TokenService {
1060
1076
  break;
1061
1077
  case TokenServiceMode.SESSIONSTORAGE:
1062
1078
  if (this.isBrowser && this.sessionStorage !== null) {
1063
- this.sessionStorage.setItem(this.accessTokenKey, this.accessToken);
1064
- this.loggerService.debug('Token set to session storage: ' + this.accessToken);
1079
+ this.sessionStorage.setItem(this.sessionTokenKey, this.sessionToken);
1080
+ this.loggerService.debug('Token set to session storage: ' + this.sessionToken);
1065
1081
  }
1066
1082
  else {
1067
1083
  this.loggerService.error('Trying to set sessionStorage on not a browser platform!');
1068
1084
  }
1069
1085
  break;
1070
1086
  case TokenServiceMode.COOKIE:
1071
- this.cookieService.set(this.accessTokenKey, this.accessToken, this.accessTokenCookieExpireDays * 24 * 60 * 60, this.cookiePath);
1072
- this.loggerService.debug('Token set to cookie: ' + this.accessToken);
1087
+ this.cookieService.set(this.sessionTokenKey, this.sessionToken, this.sessionTokenCookieExpireDays * 24 * 60 * 60, this.cookiePath);
1088
+ this.loggerService.debug('Token set to cookie: ' + this.sessionToken);
1073
1089
  break;
1074
1090
  }
1075
1091
  }
@@ -1081,7 +1097,7 @@ class TokenService {
1081
1097
  case TokenServiceMode.LOCALSTORAGE:
1082
1098
  this.loggerService.debug('Trying to read token from local storage');
1083
1099
  if (this.isBrowser && this.localStorage !== null) {
1084
- const tokenLocalStorage = this.localStorage.getItem(this.accessTokenKey);
1100
+ const tokenLocalStorage = this.localStorage.getItem(this.sessionTokenKey);
1085
1101
  if (tokenLocalStorage !== null) {
1086
1102
  this.loggerService.debug('Token read from local storage: ' + tokenLocalStorage);
1087
1103
  }
@@ -1094,7 +1110,7 @@ class TokenService {
1094
1110
  case TokenServiceMode.SESSIONSTORAGE:
1095
1111
  if (this.isBrowser && this.sessionStorage !== null) {
1096
1112
  this.loggerService.debug('Trying to read token from session storage');
1097
- const tokenSessionStorage = this.sessionStorage.getItem(this.accessTokenKey);
1113
+ const tokenSessionStorage = this.sessionStorage.getItem(this.sessionTokenKey);
1098
1114
  if (tokenSessionStorage !== null) {
1099
1115
  this.loggerService.debug('Token read from session storage: ' + tokenSessionStorage);
1100
1116
  }
@@ -1106,7 +1122,7 @@ class TokenService {
1106
1122
  }
1107
1123
  case TokenServiceMode.COOKIE: {
1108
1124
  this.loggerService.debug('Trying to read token from session cookie');
1109
- const cookieAccessToken = this.cookieService.get(this.accessTokenKey);
1125
+ const cookieAccessToken = this.cookieService.get(this.sessionTokenKey);
1110
1126
  if (cookieAccessToken !== null) {
1111
1127
  this.loggerService.debug('Token read from cookie: ' + cookieAccessToken);
1112
1128
  }
@@ -1124,22 +1140,22 @@ class TokenService {
1124
1140
  case TokenServiceMode.LOCALSTORAGE:
1125
1141
  if (this.localStorage !== null) {
1126
1142
  this.loggerService.debug('Token deleted from local storage');
1127
- this.localStorage.removeItem(this.accessTokenKey);
1143
+ this.localStorage.removeItem(this.sessionTokenKey);
1128
1144
  }
1129
1145
  break;
1130
1146
  case TokenServiceMode.SESSIONSTORAGE:
1131
1147
  if (this.sessionStorage !== null) {
1132
1148
  this.loggerService.debug('Token deleted from session storage');
1133
- this.sessionStorage.removeItem(this.accessTokenKey);
1149
+ this.sessionStorage.removeItem(this.sessionTokenKey);
1134
1150
  }
1135
1151
  break;
1136
1152
  case TokenServiceMode.COOKIE: {
1137
1153
  this.loggerService.debug('Token deleted from cookie');
1138
- this.cookieService.delete(this.accessTokenKey);
1154
+ this.cookieService.delete(this.sessionTokenKey);
1139
1155
  break;
1140
1156
  }
1141
1157
  }
1142
- this.accessToken = null;
1158
+ this.sessionToken = null;
1143
1159
  }
1144
1160
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1145
1161
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, providedIn: 'root' }); }
@@ -1408,11 +1424,11 @@ class TokenInterceptor extends BaseInterceptor {
1408
1424
  if (this.skipInterceptor()) {
1409
1425
  return next.handle(request);
1410
1426
  }
1411
- const accessToken = this.tokenService.accessToken;
1412
- if (accessToken !== null) {
1427
+ const sessionToken = this.tokenService.sessionToken;
1428
+ if (sessionToken !== null) {
1413
1429
  request = request.clone({
1414
1430
  setHeaders: {
1415
- Token: accessToken
1431
+ Token: sessionToken
1416
1432
  }
1417
1433
  });
1418
1434
  }
@@ -1531,6 +1547,12 @@ function provideDialogAlertComponent(component) {
1531
1547
  useValue: component
1532
1548
  }]);
1533
1549
  }
1550
+ function provideApiBaseUrl(apiBaseUrl) {
1551
+ return makeEnvironmentProviders([{
1552
+ provide: API_BASE_URL,
1553
+ useValue: apiBaseUrl
1554
+ }]);
1555
+ }
1534
1556
 
1535
1557
  class TranslatePipe {
1536
1558
  constructor() {
@@ -1568,9 +1590,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1568
1590
  }]
1569
1591
  }] });
1570
1592
 
1593
+ class ImageSizePipe {
1594
+ transform(originalUrl, size = null) {
1595
+ try {
1596
+ const url = new URL(originalUrl);
1597
+ if (size !== null) {
1598
+ url.searchParams.append('size', size.toString());
1599
+ }
1600
+ return url.toString();
1601
+ }
1602
+ catch (e) { }
1603
+ return originalUrl;
1604
+ }
1605
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1606
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, isStandalone: true, name: "imagesize" }); }
1607
+ }
1608
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSizePipe, decorators: [{
1609
+ type: Pipe,
1610
+ args: [{
1611
+ standalone: true,
1612
+ name: 'imagesize'
1613
+ }]
1614
+ }] });
1615
+
1571
1616
  /**
1572
1617
  * Generated bundle index. Do not edit.
1573
1618
  */
1574
1619
 
1575
- export { ALERT_CONFIGURATIONS, ALERT_DEFAULT_BUTTON_CONFIGURATION, AcceptValidationMode, ApiService, CONFIRM_CONFIGURATIONS, ConfirmDialog, CookieService, DIALOG_ALERT_COMPONENT, DIALOG_CONFIRM_COMPONENT, Dialog, DialogConfig, DialogInjector, DialogRef, DialogService, ErrorInterceptor, GOOGLE_MAPS_API_KEY, GoogleMapsService, InterceptorType, LOG_LEVEL, LogLevel, LoggerService, MESSAGE_DEFAULT_CONFIGURATION, MESSAGE_DEFAULT_ERROR_TITLE, MessagePosition, MessageService, MessageSeverity, MicroDataPipe, MicroDataService, OPENED_DIALOG_BODY_CLASS, PREDEFINED_DIALOGS, Precheck, PrecheckInterceptor, TokenInterceptor, TokenService, TokenServiceMode, TranslatePipe, TranslateService, isBrowser, isServerError, localStorage, provideConfirmConfigurations, provideDialogAlertComponent, provideDialogConfirmComponent, provideGoogleMapsApiKey, provideOpenedDialogBodyClass, providePredefinedDialogs, provideTokenInterceptor, sessionStorage };
1620
+ export { ALERT_CONFIGURATIONS, ALERT_DEFAULT_BUTTON_CONFIGURATION, API_BASE_URL, AcceptValidationMode, ApiService, CONFIRM_CONFIGURATIONS, ConfirmDialog, CookieService, DIALOG_ALERT_COMPONENT, DIALOG_CONFIRM_COMPONENT, Dialog, DialogConfig, DialogInjector, DialogRef, DialogService, ErrorInterceptor, GOOGLE_MAPS_API_KEY, GoogleMapsService, ImageSizePipe, InterceptorType, LOG_LEVEL, LogLevel, LoggerService, MESSAGE_DEFAULT_CONFIGURATION, MESSAGE_DEFAULT_ERROR_TITLE, MessagePosition, MessageService, MessageSeverity, MicroDataPipe, MicroDataService, OPENED_DIALOG_BODY_CLASS, PREDEFINED_DIALOGS, Precheck, PrecheckInterceptor, TokenInterceptor, TokenService, TokenServiceMode, TranslatePipe, TranslateService, isBrowser, isServerError, localStorage, provideApiBaseUrl, provideConfirmConfigurations, provideDialogAlertComponent, provideDialogConfirmComponent, provideGoogleMapsApiKey, provideOpenedDialogBodyClass, providePredefinedDialogs, provideTokenInterceptor, sessionStorage };
1576
1621
  //# sourceMappingURL=codefoxcore.mjs.map