@albi_scando/as-user-lib 0.0.1-rc10 → 0.0.1-rc3

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.
@@ -1,9 +1,10 @@
1
+ import { LANGUAGES } from '@albi_scando/as-language-lib/lib/enums/languages.enum';
1
2
  export const DEFAULT_USERNAME = 'guest';
2
3
  export const DEFAULT_LEVEL = "guest" /* USER_LEVELS.GUEST */;
4
+ export const DEFAULT_LANGUAGE = LANGUAGES.EnglishLanguageCode;
3
5
  export const defaultUser = {
4
6
  username: DEFAULT_USERNAME,
5
7
  level: DEFAULT_LEVEL,
6
- language: undefined,
7
- environment: undefined,
8
+ language: DEFAULT_LANGUAGE,
8
9
  };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC11c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXMtdXNlci1saWIvc3JjL2xpYi9kZWZhdWx0L2RlZmF1bHQtdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBVyxPQUFPLENBQUM7QUFDaEQsTUFBTSxDQUFDLE1BQU0sYUFBYSxrQ0FBaUMsQ0FBQztBQUU1RCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQVM7SUFDL0IsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixLQUFLLEVBQUUsYUFBNEI7SUFDbkMsUUFBUSxFQUFFLFNBQVM7SUFDbkIsV0FBVyxFQUFFLFNBQVM7Q0FDdkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVudW1zXHJcbmltcG9ydCB7IFVTRVJfTEVWRUxTIH0gZnJvbSAnLi4vZW51bXMvdXNlci1sZXZlbHMuZW51bSc7XHJcblxyXG4vLyBpbnRlcmZhY2VcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL2ludGVyZmFjZXMvdXNlci5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfVVNFUk5BTUU6IHN0cmluZyA9ICdndWVzdCc7XHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX0xFVkVMOiBVU0VSX0xFVkVMUyA9IFVTRVJfTEVWRUxTLkdVRVNUO1xyXG5cclxuZXhwb3J0IGNvbnN0IGRlZmF1bHRVc2VyOiBVc2VyID0ge1xyXG4gIHVzZXJuYW1lOiBERUZBVUxUX1VTRVJOQU1FLFxyXG4gIGxldmVsOiBERUZBVUxUX0xFVkVMIGFzIFVTRVJfTEVWRUxTLFxyXG4gIGxhbmd1YWdlOiB1bmRlZmluZWQsXHJcbiAgZW52aXJvbm1lbnQ6IHVuZGVmaW5lZCxcclxufTtcclxuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC11c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXMtdXNlci1saWIvc3JjL2xpYi9kZWZhdWx0L2RlZmF1bHQtdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFRbEYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVcsT0FBTyxDQUFDO0FBQ2hELE1BQU0sQ0FBQyxNQUFNLGFBQWEsa0NBQWlDLENBQUM7QUFDNUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQWMsU0FBUyxDQUFDLG1CQUFtQixDQUFDO0FBRXpFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBUztJQUMvQixRQUFRLEVBQUUsZ0JBQWdCO0lBQzFCLEtBQUssRUFBRSxhQUE0QjtJQUNuQyxRQUFRLEVBQUUsZ0JBQWdCO0NBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMQU5HVUFHRVMgfSBmcm9tICdAYWxiaV9zY2FuZG8vYXMtbGFuZ3VhZ2UtbGliL2xpYi9lbnVtcy9sYW5ndWFnZXMuZW51bSc7XHJcblxyXG4vLyBlbnVtc1xyXG5pbXBvcnQgeyBVU0VSX0xFVkVMUyB9IGZyb20gJy4uL2VudW1zL3VzZXItbGV2ZWxzLmVudW0nO1xyXG5cclxuLy8gaW50ZXJmYWNlXHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXIuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1VTRVJOQU1FOiBzdHJpbmcgPSAnZ3Vlc3QnO1xyXG5leHBvcnQgY29uc3QgREVGQVVMVF9MRVZFTDogVVNFUl9MRVZFTFMgPSBVU0VSX0xFVkVMUy5HVUVTVDtcclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTEFOR1VBR0U6IExBTkdVQUdFUyA9IExBTkdVQUdFUy5FbmdsaXNoTGFuZ3VhZ2VDb2RlO1xyXG5cclxuZXhwb3J0IGNvbnN0IGRlZmF1bHRVc2VyOiBVc2VyID0ge1xyXG4gIHVzZXJuYW1lOiBERUZBVUxUX1VTRVJOQU1FLFxyXG4gIGxldmVsOiBERUZBVUxUX0xFVkVMIGFzIFVTRVJfTEVWRUxTLFxyXG4gIGxhbmd1YWdlOiBERUZBVUxUX0xBTkdVQUdFLFxyXG59O1xyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcy11c2VyLWxpYi9zcmMvbGliL2ludGVyZmFjZXMvdXNlci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVudW1zXHJcbmltcG9ydCB7IExBTkdVQUdFUyB9IGZyb20gJ0BhbGJpX3NjYW5kby9hcy1jb25zdGFudHMtbGliJztcclxuaW1wb3J0IHsgVVNFUl9MRVZFTFMgfSBmcm9tICcuLi9lbnVtcy91c2VyLWxldmVscy5lbnVtJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XHJcbiAgdXNlcm5hbWU6IHN0cmluZztcclxuICBsZXZlbDogVVNFUl9MRVZFTFM7XHJcbiAgbGFuZ3VhZ2U6IExBTkdVQUdFUyB8IHVuZGVmaW5lZDtcclxuICBlbnZpcm9ubWVudDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcy11c2VyLWxpYi9zcmMvbGliL2ludGVyZmFjZXMvdXNlci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVudW1zXHJcbmltcG9ydCB7IExBTkdVQUdFUyB9IGZyb20gJ0BhbGJpX3NjYW5kby9hcy1sYW5ndWFnZS1saWIvbGliL2VudW1zL2xhbmd1YWdlcy5lbnVtJztcclxuaW1wb3J0IHsgVVNFUl9MRVZFTFMgfSBmcm9tICcuLi9lbnVtcy91c2VyLWxldmVscy5lbnVtJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XHJcbiAgdXNlcm5hbWU6IHN0cmluZztcclxuICBsZXZlbDogVVNFUl9MRVZFTFM7XHJcbiAgbGFuZ3VhZ2U6IExBTkdVQUdFUztcclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzLXVzZXItbGliL3NyYy9saWIvc2VydmljZXMvdXNlci91c2VyLnNlcnZpY2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vLyBJbnRlcmZhY2VzXHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3VzZXIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSVVzZXJMaWJTZXR1cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2V0dXAuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVVzZXJTZXJ2aWNlIHtcclxuICAvKipcclxuICAgKiBVc2VyIG9iamVjdFxyXG4gICAqL1xyXG4gIHVzZXI6IFVzZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb25cclxuICAgKiBAcGFyYW0ge1BhcnRpYWw8SVVzZXJMaWJTZXR1cD59IHNldHVwIGNvbmZpZ3VyYXRpb24gb2JqZWN0XHJcbiAgICogQHJldHVybnMge09ic2VydmFibGU8dm9pZD59XHJcbiAgICovXHJcbiAgc2V0dXAkKHNldHVwOiBQYXJ0aWFsPElVc2VyTGliU2V0dXA+KTogT2JzZXJ2YWJsZTx2b2lkPjtcclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIHVzZXIgb2JqZWN0IHdpdGggcHJvdmlkZWQgZGF0YVxyXG4gICAqIEBwYXJhbSB7UGFydGlhbDxVc2VyPn0gdXNlciBwYXJ0aWFsIHVzZXIgaW5mbyB0byBtb2RpZnlcclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn1cclxuICAgKi9cclxuICBwYXRjaFVzZXJEYXRhJCh1c2VyOiBQYXJ0aWFsPFVzZXI+KTogT2JzZXJ2YWJsZTx2b2lkPjtcclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHVzZXIgZGF0YVxyXG4gICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPFVzZXI+fSB1c2VyIGRhdGFcclxuICAgKi9cclxuICBnZXRVc2VyRGF0YSQoKTogT2JzZXJ2YWJsZTxVc2VyPjtcclxuXHJcbiAgLyoqXHJcbiAgICogSWYgdXNlciBkYXRhIHJlc2lkZSBvbiBhIGRiLCBmZXRjaCBpdCBhbmQgdXNlIGl0IHRvIHN5bmNocm9uaXplIHNlcnZpY2UgdXNlciBvYmplY3QuXHJcbiAgICogSWYgbm8gZGIgaXMgYXZhaWxhYmxlLCBzZXQgY3VycmVudCB1c2VyIGVxdWFsIHRvIGl0c2VsZi5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn1cclxuICAgKi9cclxuICBzeW5jVXNlckRhdGEkKCk6IE9ic2VydmFibGU8dm9pZD47XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzLXVzZXItbGliL3NyYy9saWIvc2VydmljZXMvdXNlci91c2VyLnNlcnZpY2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vLyBJbnRlcmZhY2VzXHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3VzZXIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSVVzZXJMaWJTZXR1cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2V0dXAuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVVzZXJTZXJ2aWNlIHtcclxuICAvKipcclxuICAgKiBVc2VyIG9iamVjdFxyXG4gICAqL1xyXG4gIHVzZXI6IFVzZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb25cclxuICAgKiBAcGFyYW0ge1BhcnRpYWw8SVVzZXJMaWJTZXR1cD59IHNldHVwIGNvbmZpZ3VyYXRpb24gb2JqZWN0XHJcbiAgICogQHJldHVybnMge09ic2VydmFibGU8dm9pZD59XHJcbiAgICovXHJcbiAgc2V0dXAkKHNldHVwOiBQYXJ0aWFsPElVc2VyTGliU2V0dXA+KTogT2JzZXJ2YWJsZTx2b2lkPjtcclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIHVzZXIgb2JqZWN0IHdpdGggcHJvdmlkZWQgZGF0YVxyXG4gICAqIEBwYXJhbSB7UGFydGlhbDxVc2VyPn0gdXNlciBwYXJ0aWFsIHVzZXIgaW5mbyB0byBtb2RpZnlcclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn1cclxuICAgKi9cclxuICBwYXRjaFVzZXJEYXRhJCh1c2VyOiBQYXJ0aWFsPFVzZXI+KTogT2JzZXJ2YWJsZTx2b2lkPjtcclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHVzZXIgZGF0YVxyXG4gICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPFVzZXI+fSB1c2VyIGRhdGFcclxuICAgKi9cclxuICBnZXRVc2VyRGF0YSQoKTogT2JzZXJ2YWJsZTxVc2VyPjtcclxuXHJcbiAgLyoqXHJcbiAgICogSWYgdXNlciBkYXRhIHJlc2lkZSBvbiBhIGRiLCBmZXRjaCBpdCBhbmQgdXNlIGl0IHRvIHN5bmNocm9uaXplIHNlcnZpY2UgdXNlciBvYmplY3QuXHJcbiAgICogSWYgbm8gZGIgaXMgYXZhaWxhYmxlLCBzZXQgY3VycmVudCB1c2VyIGVxdWFsIHRvIGl0c2VsZi5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx2b2lkPn1cclxuICAgKi9cclxuICBzeW5jVXNlckRhdGEkKCk6IE9ic2VydmFibGU8dm9pZD47XHJcbn1cclxuIl19
@@ -1,12 +1,11 @@
1
1
  import { Injectable, inject } from '@angular/core';
2
- import { of, switchMap } from 'rxjs';
2
+ import { iif, of, switchMap } from 'rxjs';
3
3
  import { HttpService } from '@albi_scando/as-http-lib';
4
4
  // Assets
5
5
  import { defaultUserLibSetup } from '../../default/default';
6
6
  import { defaultUser } from '../../default/default-user';
7
7
  // Constants
8
8
  import { observableEmpty$, stringEmpty } from '@albi_scando/as-constants-lib';
9
- import { LoggerService } from '@albi_scando/as-log-lib';
10
9
  import * as i0 from "@angular/core";
11
10
  /**
12
11
  *
@@ -26,10 +25,6 @@ export class UserService {
26
25
  * {@link HttpService}
27
26
  */
28
27
  this._httpService = inject(HttpService);
29
- /**
30
- * {@link LoggerService}
31
- */
32
- this._loggerService = inject(LoggerService);
33
28
  /**
34
29
  * PATCH user data api url
35
30
  */
@@ -57,25 +52,7 @@ export class UserService {
57
52
  body: user,
58
53
  };
59
54
  const updateUserData$ = this._httpService.patch(httpRequest);
60
- return observableEmpty$.pipe(switchMap(() => {
61
- if (httpRequest.url) {
62
- return updateUserData$;
63
- }
64
- else {
65
- this.user = { ...this.user, ...user };
66
- return observableEmpty$;
67
- }
68
- }), switchMap(() => this.syncUserData$()));
69
- }
70
- /**
71
- * {@link IUserService.syncUserData$}
72
- */
73
- syncUserData$() {
74
- return this.getUserData$().pipe(switchMap((user) => {
75
- this.user = user;
76
- this._loggerService.info('User info updated', this.user);
77
- return observableEmpty$;
78
- }));
55
+ return iif(() => httpRequest.url === stringEmpty, of(() => (this.user = { ...this.user, ...user })), updateUserData$).pipe(() => this.syncUserData$());
79
56
  }
80
57
  /**
81
58
  * {@link IUserService.getUserData$}
@@ -85,7 +62,16 @@ export class UserService {
85
62
  url: this._getUserDataAPIUrl,
86
63
  };
87
64
  const getUserData$ = this._httpService.get(httpRequest);
88
- return httpRequest.url ? getUserData$ : of(this.user);
65
+ return iif(() => httpRequest.url === stringEmpty, of(this.user), getUserData$);
66
+ }
67
+ /**
68
+ * {@link IUserService.syncUserData$}
69
+ */
70
+ syncUserData$() {
71
+ return this.getUserData$().pipe(switchMap((user) => {
72
+ this.user = user;
73
+ return observableEmpty$;
74
+ }));
89
75
  }
90
76
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
91
77
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserService, providedIn: 'root' }); }
@@ -96,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
96
82
  providedIn: 'root',
97
83
  }]
98
84
  }], ctorParameters: () => [] });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXMtdXNlci1saWIvc3JjL2xpYi9zZXJ2aWNlcy91c2VyL3VzZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdkQsU0FBUztBQUNULE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV6RCxZQUFZO0FBQ1osT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBVTlFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFFeEQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sV0FBVztJQTBCdEI7Ozs7T0FJRztJQUNIO1FBOUJBOztXQUVHO1FBQ0ksU0FBSSxHQUFTLFdBQVcsQ0FBQztRQUVoQzs7V0FFRztRQUNLLGlCQUFZLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV4RDs7V0FFRztRQUNLLG1CQUFjLEdBQWtCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUU5RDs7V0FFRztRQUNLLHlCQUFvQixHQUFXLFdBQVcsQ0FBQztRQUVuRDs7V0FFRztRQUNLLHVCQUFrQixHQUFXLFdBQVcsQ0FBQztRQVEvQyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLEtBQTZCO1FBQ3pDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUMsR0FBRyxFQUFFLG1CQUFtQixJQUFJLFdBQVcsQ0FBQztRQUMxRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsSUFBSSxXQUFXLENBQUM7UUFFdEUsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxjQUFjLENBQUMsSUFBbUI7UUFDdkMsTUFBTSxXQUFXLEdBQVU7WUFDekIsR0FBRyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7WUFDOUIsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDO1FBQ0YsTUFBTSxlQUFlLEdBQ25CLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUMxQixTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2IsSUFBSSxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3BCLE9BQU8sZUFBZSxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7Z0JBQ3RDLE9BQU8sZ0JBQWdCLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FDdEMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUM3QixTQUFTLENBQUMsQ0FBQyxJQUFVLEVBQUUsRUFBRTtZQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztZQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekQsT0FBTyxnQkFBZ0IsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ksWUFBWTtRQUNqQixNQUFNLFdBQVcsR0FBUTtZQUN2QixHQUFHLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtTQUM3QixDQUFDO1FBQ0YsTUFBTSxZQUFZLEdBQXFCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLE9BQU8sV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7OEdBMUZVLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnQGFsYmlfc2NhbmRvL2FzLWh0dHAtbGliJztcclxuXHJcbi8vIEFzc2V0c1xyXG5pbXBvcnQgeyBkZWZhdWx0VXNlckxpYlNldHVwIH0gZnJvbSAnLi4vLi4vZGVmYXVsdC9kZWZhdWx0JztcclxuaW1wb3J0IHsgZGVmYXVsdFVzZXIgfSBmcm9tICcuLi8uLi9kZWZhdWx0L2RlZmF1bHQtdXNlcic7XHJcblxyXG4vLyBDb25zdGFudHNcclxuaW1wb3J0IHsgb2JzZXJ2YWJsZUVtcHR5JCwgc3RyaW5nRW1wdHkgfSBmcm9tICdAYWxiaV9zY2FuZG8vYXMtY29uc3RhbnRzLWxpYic7XHJcblxyXG4vLyBFbnVtc1xyXG5cclxuLy8gSW50ZXJmYWNlc1xyXG5pbXBvcnQgeyBQYXRjaCB9IGZyb20gJ0BhbGJpX3NjYW5kby9hcy1odHRwLWxpYi9saWIvbW9kZWxzL3BhdGNoJztcclxuaW1wb3J0IHsgR2V0IH0gZnJvbSAnQGFsYmlfc2NhbmRvL2FzLWh0dHAtbGliL2xpYi9tb2RlbHMvZ2V0JztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvdXNlci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJVXNlclNlcnZpY2UgfSBmcm9tICcuL3VzZXIuc2VydmljZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJVXNlckxpYlNldHVwIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9zZXR1cC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnQGFsYmlfc2NhbmRvL2FzLWxvZy1saWInO1xyXG5cclxuLyoqXHJcbiAqXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlclNlcnZpY2UgaW1wbGVtZW50cyBJVXNlclNlcnZpY2Uge1xyXG4gIC8qKlxyXG4gICAqIHtAbGluayBJVXNlclNlcnZpY2UudXNlcn1cclxuICAgKi9cclxuICBwdWJsaWMgdXNlcjogVXNlciA9IGRlZmF1bHRVc2VyO1xyXG5cclxuICAvKipcclxuICAgKiB7QGxpbmsgSHR0cFNlcnZpY2V9XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlID0gaW5qZWN0KEh0dHBTZXJ2aWNlKTtcclxuXHJcbiAgLyoqXHJcbiAgICoge0BsaW5rIExvZ2dlclNlcnZpY2V9XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSA9IGluamVjdChMb2dnZXJTZXJ2aWNlKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUEFUQ0ggdXNlciBkYXRhIGFwaSB1cmxcclxuICAgKi9cclxuICBwcml2YXRlIF9wYXRjaFVzZXJEYXRhQVBJVXJsOiBzdHJpbmcgPSBzdHJpbmdFbXB0eTtcclxuXHJcbiAgLyoqXHJcbiAgICogR0VUIHVzZXIgZGF0YSBhcGkgdXJsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfZ2V0VXNlckRhdGFBUElVcmw6IHN0cmluZyA9IHN0cmluZ0VtcHR5O1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBjb25zdHJ1Y3RvclxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuc2V0dXAkKGRlZmF1bHRVc2VyTGliU2V0dXApLnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICoge0BsaW5rIElVc2VyU2VydmljZS5zZXR1cCR9XHJcbiAgICovXHJcbiAgcHVibGljIHNldHVwJChzZXR1cDogUGFydGlhbDxJVXNlckxpYlNldHVwPik6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgdGhpcy5fcGF0Y2hVc2VyRGF0YUFQSVVybCA9IHNldHVwLmFwaT8ucGF0Y2hVc2VyRGF0YUFQSVVybCB8fCBzdHJpbmdFbXB0eTtcclxuICAgIHRoaXMuX2dldFVzZXJEYXRhQVBJVXJsID0gc2V0dXAuYXBpPy5nZXRVc2VyRGF0YUFQSVVybCB8fCBzdHJpbmdFbXB0eTtcclxuXHJcbiAgICByZXR1cm4gb2JzZXJ2YWJsZUVtcHR5JDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHtAbGluayBJVXNlclNlcnZpY2UucGF0Y2hVc2VyRGF0YSR9XHJcbiAgICovXHJcbiAgcHVibGljIHBhdGNoVXNlckRhdGEkKHVzZXI6IFBhcnRpYWw8VXNlcj4pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIGNvbnN0IGh0dHBSZXF1ZXN0OiBQYXRjaCA9IHtcclxuICAgICAgdXJsOiB0aGlzLl9wYXRjaFVzZXJEYXRhQVBJVXJsLFxyXG4gICAgICBib2R5OiB1c2VyLFxyXG4gICAgfTtcclxuICAgIGNvbnN0IHVwZGF0ZVVzZXJEYXRhJDogT2JzZXJ2YWJsZTx2b2lkPiA9XHJcbiAgICAgIHRoaXMuX2h0dHBTZXJ2aWNlLnBhdGNoKGh0dHBSZXF1ZXN0KTtcclxuICAgIHJldHVybiBvYnNlcnZhYmxlRW1wdHkkLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGh0dHBSZXF1ZXN0LnVybCkge1xyXG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZVVzZXJEYXRhJDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy51c2VyID0geyAuLi50aGlzLnVzZXIsIC4uLnVzZXIgfTtcclxuICAgICAgICAgIHJldHVybiBvYnNlcnZhYmxlRW1wdHkkO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnN5bmNVc2VyRGF0YSQoKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB7QGxpbmsgSVVzZXJTZXJ2aWNlLnN5bmNVc2VyRGF0YSR9XHJcbiAgICovXHJcbiAgcHVibGljIHN5bmNVc2VyRGF0YSQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyRGF0YSQoKS5waXBlKFxyXG4gICAgICBzd2l0Y2hNYXAoKHVzZXI6IFVzZXIpID0+IHtcclxuICAgICAgICB0aGlzLnVzZXIgPSB1c2VyO1xyXG4gICAgICAgIHRoaXMuX2xvZ2dlclNlcnZpY2UuaW5mbygnVXNlciBpbmZvIHVwZGF0ZWQnLCB0aGlzLnVzZXIpO1xyXG4gICAgICAgIHJldHVybiBvYnNlcnZhYmxlRW1wdHkkO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHtAbGluayBJVXNlclNlcnZpY2UuZ2V0VXNlckRhdGEkfVxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRVc2VyRGF0YSQoKTogT2JzZXJ2YWJsZTxVc2VyPiB7XHJcbiAgICBjb25zdCBodHRwUmVxdWVzdDogR2V0ID0ge1xyXG4gICAgICB1cmw6IHRoaXMuX2dldFVzZXJEYXRhQVBJVXJsLFxyXG4gICAgfTtcclxuICAgIGNvbnN0IGdldFVzZXJEYXRhJDogT2JzZXJ2YWJsZTxVc2VyPiA9IHRoaXMuX2h0dHBTZXJ2aWNlLmdldChodHRwUmVxdWVzdCk7XHJcbiAgICByZXR1cm4gaHR0cFJlcXVlc3QudXJsID8gZ2V0VXNlckRhdGEkIDogb2YodGhpcy51c2VyKTtcclxuICB9XHJcbn1cclxuIl19
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXMtdXNlci1saWIvc3JjL2xpYi9zZXJ2aWNlcy91c2VyL3VzZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFrQixNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFjLEdBQUcsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXRELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RCxTQUFTO0FBQ1QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXpELFlBQVk7QUFDWixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBVzlFOztHQUVHO0FBSUgsTUFBTSxPQUFPLFdBQVc7SUFxQnRCOzs7O09BSUc7SUFDSDtRQXpCQTs7V0FFRztRQUNJLFNBQUksR0FBUyxXQUFXLENBQUM7UUFFaEM7O1dBRUc7UUFDSyxpQkFBWSxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFeEQ7O1dBRUc7UUFDSyx5QkFBb0IsR0FBVyxXQUFXLENBQUM7UUFFbkQ7O1dBRUc7UUFDSyx1QkFBa0IsR0FBVyxXQUFXLENBQUM7UUFRL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxLQUE2QjtRQUN6QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsSUFBSSxXQUFXLENBQUM7UUFDMUUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLElBQUksV0FBVyxDQUFDO1FBRXRFLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYyxDQUFDLElBQW1CO1FBQ3ZDLE1BQU0sV0FBVyxHQUFVO1lBQ3pCLEdBQUcsRUFBRSxJQUFJLENBQUMsb0JBQW9CO1lBQzlCLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQztRQUNGLE1BQU0sZUFBZSxHQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2QyxPQUFPLEdBQUcsQ0FDUixHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFDckMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLENBQUMsRUFDakQsZUFBZSxDQUNoQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZO1FBQ2pCLE1BQU0sV0FBVyxHQUFRO1lBQ3ZCLEdBQUcsRUFBRSxJQUFJLENBQUMsa0JBQWtCO1NBQzdCLENBQUM7UUFDRixNQUFNLFlBQVksR0FBcUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUUsT0FBTyxHQUFHLENBQ1IsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQ3JDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQ2IsWUFBWSxDQUNiLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDN0IsU0FBUyxDQUFDLENBQUMsSUFBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakIsT0FBTyxnQkFBZ0IsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0FsRlUsV0FBVztrSEFBWCxXQUFXLGNBRlYsTUFBTTs7MkZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBXcml0YWJsZVNpZ25hbCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgaWlmLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJ0BhbGJpX3NjYW5kby9hcy1odHRwLWxpYic7XHJcblxyXG4vLyBBc3NldHNcclxuaW1wb3J0IHsgZGVmYXVsdFVzZXJMaWJTZXR1cCB9IGZyb20gJy4uLy4uL2RlZmF1bHQvZGVmYXVsdCc7XHJcbmltcG9ydCB7IGRlZmF1bHRVc2VyIH0gZnJvbSAnLi4vLi4vZGVmYXVsdC9kZWZhdWx0LXVzZXInO1xyXG5cclxuLy8gQ29uc3RhbnRzXHJcbmltcG9ydCB7IG9ic2VydmFibGVFbXB0eSQsIHN0cmluZ0VtcHR5IH0gZnJvbSAnQGFsYmlfc2NhbmRvL2FzLWNvbnN0YW50cy1saWInO1xyXG5cclxuLy8gRW51bXNcclxuXHJcbi8vIEludGVyZmFjZXNcclxuaW1wb3J0IHsgUGF0Y2ggfSBmcm9tICdAYWxiaV9zY2FuZG8vYXMtaHR0cC1saWIvbGliL21vZGVscy9wYXRjaCc7XHJcbmltcG9ydCB7IEdldCB9IGZyb20gJ0BhbGJpX3NjYW5kby9hcy1odHRwLWxpYi9saWIvbW9kZWxzL2dldCc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3VzZXIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSVVzZXJTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLnNlcnZpY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSVVzZXJMaWJTZXR1cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2V0dXAuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKlxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVzZXJTZXJ2aWNlIGltcGxlbWVudHMgSVVzZXJTZXJ2aWNlIHtcclxuICAvKipcclxuICAgKiB7QGxpbmsgSVVzZXJTZXJ2aWNlLnVzZXJ9XHJcbiAgICovXHJcbiAgcHVibGljIHVzZXI6IFVzZXIgPSBkZWZhdWx0VXNlcjtcclxuXHJcbiAgLyoqXHJcbiAgICoge0BsaW5rIEh0dHBTZXJ2aWNlfVxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2h0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSA9IGluamVjdChIdHRwU2VydmljZSk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBBVENIIHVzZXIgZGF0YSBhcGkgdXJsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfcGF0Y2hVc2VyRGF0YUFQSVVybDogc3RyaW5nID0gc3RyaW5nRW1wdHk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdFVCB1c2VyIGRhdGEgYXBpIHVybFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2dldFVzZXJEYXRhQVBJVXJsOiBzdHJpbmcgPSBzdHJpbmdFbXB0eTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAY29uc3RydWN0b3JcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLnNldHVwJChkZWZhdWx0VXNlckxpYlNldHVwKS5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHtAbGluayBJVXNlclNlcnZpY2Uuc2V0dXAkfVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXR1cCQoc2V0dXA6IFBhcnRpYWw8SVVzZXJMaWJTZXR1cD4pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIHRoaXMuX3BhdGNoVXNlckRhdGFBUElVcmwgPSBzZXR1cC5hcGk/LnBhdGNoVXNlckRhdGFBUElVcmwgfHwgc3RyaW5nRW1wdHk7XHJcbiAgICB0aGlzLl9nZXRVc2VyRGF0YUFQSVVybCA9IHNldHVwLmFwaT8uZ2V0VXNlckRhdGFBUElVcmwgfHwgc3RyaW5nRW1wdHk7XHJcblxyXG4gICAgcmV0dXJuIG9ic2VydmFibGVFbXB0eSQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB7QGxpbmsgSVVzZXJTZXJ2aWNlLnBhdGNoVXNlckRhdGEkfVxyXG4gICAqL1xyXG4gIHB1YmxpYyBwYXRjaFVzZXJEYXRhJCh1c2VyOiBQYXJ0aWFsPFVzZXI+KTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICBjb25zdCBodHRwUmVxdWVzdDogUGF0Y2ggPSB7XHJcbiAgICAgIHVybDogdGhpcy5fcGF0Y2hVc2VyRGF0YUFQSVVybCxcclxuICAgICAgYm9keTogdXNlcixcclxuICAgIH07XHJcbiAgICBjb25zdCB1cGRhdGVVc2VyRGF0YSQ6IE9ic2VydmFibGU8dm9pZD4gPVxyXG4gICAgICB0aGlzLl9odHRwU2VydmljZS5wYXRjaChodHRwUmVxdWVzdCk7XHJcbiAgICByZXR1cm4gaWlmKFxyXG4gICAgICAoKSA9PiBodHRwUmVxdWVzdC51cmwgPT09IHN0cmluZ0VtcHR5LFxyXG4gICAgICBvZigoKSA9PiAodGhpcy51c2VyID0geyAuLi50aGlzLnVzZXIsIC4uLnVzZXIgfSkpLFxyXG4gICAgICB1cGRhdGVVc2VyRGF0YSRcclxuICAgICkucGlwZSgoKSA9PiB0aGlzLnN5bmNVc2VyRGF0YSQoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB7QGxpbmsgSVVzZXJTZXJ2aWNlLmdldFVzZXJEYXRhJH1cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0VXNlckRhdGEkKCk6IE9ic2VydmFibGU8VXNlcj4ge1xyXG4gICAgY29uc3QgaHR0cFJlcXVlc3Q6IEdldCA9IHtcclxuICAgICAgdXJsOiB0aGlzLl9nZXRVc2VyRGF0YUFQSVVybCxcclxuICAgIH07XHJcbiAgICBjb25zdCBnZXRVc2VyRGF0YSQ6IE9ic2VydmFibGU8VXNlcj4gPSB0aGlzLl9odHRwU2VydmljZS5nZXQoaHR0cFJlcXVlc3QpO1xyXG4gICAgcmV0dXJuIGlpZihcclxuICAgICAgKCkgPT4gaHR0cFJlcXVlc3QudXJsID09PSBzdHJpbmdFbXB0eSxcclxuICAgICAgb2YodGhpcy51c2VyKSxcclxuICAgICAgZ2V0VXNlckRhdGEkXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICoge0BsaW5rIElVc2VyU2VydmljZS5zeW5jVXNlckRhdGEkfVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzeW5jVXNlckRhdGEkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlckRhdGEkKCkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKCh1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcclxuICAgICAgICByZXR1cm4gb2JzZXJ2YWJsZUVtcHR5JDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, Injectable } from '@angular/core';
3
- import { switchMap, of } from 'rxjs';
3
+ import { iif, of, switchMap } from 'rxjs';
4
4
  import { HttpService } from '@albi_scando/as-http-lib';
5
5
  import { stringEmpty, observableEmpty$ } from '@albi_scando/as-constants-lib';
6
- import { LoggerService } from '@albi_scando/as-log-lib';
6
+ import { LANGUAGES } from '@albi_scando/as-language-lib/lib/enums/languages.enum';
7
7
 
8
8
  const defaultUserLibSetup = {
9
9
  api: {
@@ -14,11 +14,11 @@ const defaultUserLibSetup = {
14
14
 
15
15
  const DEFAULT_USERNAME = 'guest';
16
16
  const DEFAULT_LEVEL = "guest" /* USER_LEVELS.GUEST */;
17
+ const DEFAULT_LANGUAGE = LANGUAGES.EnglishLanguageCode;
17
18
  const defaultUser = {
18
19
  username: DEFAULT_USERNAME,
19
20
  level: DEFAULT_LEVEL,
20
- language: undefined,
21
- environment: undefined,
21
+ language: DEFAULT_LANGUAGE,
22
22
  };
23
23
 
24
24
  /**
@@ -39,10 +39,6 @@ class UserService {
39
39
  * {@link HttpService}
40
40
  */
41
41
  this._httpService = inject(HttpService);
42
- /**
43
- * {@link LoggerService}
44
- */
45
- this._loggerService = inject(LoggerService);
46
42
  /**
47
43
  * PATCH user data api url
48
44
  */
@@ -70,25 +66,7 @@ class UserService {
70
66
  body: user,
71
67
  };
72
68
  const updateUserData$ = this._httpService.patch(httpRequest);
73
- return observableEmpty$.pipe(switchMap(() => {
74
- if (httpRequest.url) {
75
- return updateUserData$;
76
- }
77
- else {
78
- this.user = { ...this.user, ...user };
79
- return observableEmpty$;
80
- }
81
- }), switchMap(() => this.syncUserData$()));
82
- }
83
- /**
84
- * {@link IUserService.syncUserData$}
85
- */
86
- syncUserData$() {
87
- return this.getUserData$().pipe(switchMap((user) => {
88
- this.user = user;
89
- this._loggerService.info('User info updated', this.user);
90
- return observableEmpty$;
91
- }));
69
+ return iif(() => httpRequest.url === stringEmpty, of(() => (this.user = { ...this.user, ...user })), updateUserData$).pipe(() => this.syncUserData$());
92
70
  }
93
71
  /**
94
72
  * {@link IUserService.getUserData$}
@@ -98,7 +76,16 @@ class UserService {
98
76
  url: this._getUserDataAPIUrl,
99
77
  };
100
78
  const getUserData$ = this._httpService.get(httpRequest);
101
- return httpRequest.url ? getUserData$ : of(this.user);
79
+ return iif(() => httpRequest.url === stringEmpty, of(this.user), getUserData$);
80
+ }
81
+ /**
82
+ * {@link IUserService.syncUserData$}
83
+ */
84
+ syncUserData$() {
85
+ return this.getUserData$().pipe(switchMap((user) => {
86
+ this.user = user;
87
+ return observableEmpty$;
88
+ }));
102
89
  }
103
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
104
91
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserService, providedIn: 'root' }); }
@@ -1 +1 @@
1
- {"version":3,"file":"albi_scando-as-user-lib.mjs","sources":["../../../projects/as-user-lib/src/lib/default/default.ts","../../../projects/as-user-lib/src/lib/default/default-user.ts","../../../projects/as-user-lib/src/lib/services/user/user.service.ts","../../../projects/as-user-lib/src/public-api.ts","../../../projects/as-user-lib/src/albi_scando-as-user-lib.ts"],"sourcesContent":["import { stringEmpty } from '@albi_scando/as-constants-lib';\r\n\r\n// interfaces\r\nimport { IUserLibSetup } from '../interfaces/setup.interface';\r\n\r\nexport const defaultUserLibSetup: IUserLibSetup = {\r\n api: {\r\n patchUserDataAPIUrl: stringEmpty,\r\n getUserDataAPIUrl: stringEmpty,\r\n },\r\n};\r\n","// enums\r\nimport { USER_LEVELS } from '../enums/user-levels.enum';\r\n\r\n// interface\r\nimport { User } from '../interfaces/user.interface';\r\n\r\nexport const DEFAULT_USERNAME: string = 'guest';\r\nexport const DEFAULT_LEVEL: USER_LEVELS = USER_LEVELS.GUEST;\r\n\r\nexport const defaultUser: User = {\r\n username: DEFAULT_USERNAME,\r\n level: DEFAULT_LEVEL as USER_LEVELS,\r\n language: undefined,\r\n environment: undefined,\r\n};\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { Observable, of, switchMap } from 'rxjs';\r\n\r\nimport { HttpService } from '@albi_scando/as-http-lib';\r\n\r\n// Assets\r\nimport { defaultUserLibSetup } from '../../default/default';\r\nimport { defaultUser } from '../../default/default-user';\r\n\r\n// Constants\r\nimport { observableEmpty$, stringEmpty } from '@albi_scando/as-constants-lib';\r\n\r\n// Enums\r\n\r\n// Interfaces\r\nimport { Patch } from '@albi_scando/as-http-lib/lib/models/patch';\r\nimport { Get } from '@albi_scando/as-http-lib/lib/models/get';\r\nimport { User } from '../../interfaces/user.interface';\r\nimport { IUserService } from './user.service.interface';\r\nimport { IUserLibSetup } from '../../interfaces/setup.interface';\r\nimport { LoggerService } from '@albi_scando/as-log-lib';\r\n\r\n/**\r\n *\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserService implements IUserService {\r\n /**\r\n * {@link IUserService.user}\r\n */\r\n public user: User = defaultUser;\r\n\r\n /**\r\n * {@link HttpService}\r\n */\r\n private _httpService: HttpService = inject(HttpService);\r\n\r\n /**\r\n * {@link LoggerService}\r\n */\r\n private _loggerService: LoggerService = inject(LoggerService);\r\n\r\n /**\r\n * PATCH user data api url\r\n */\r\n private _patchUserDataAPIUrl: string = stringEmpty;\r\n\r\n /**\r\n * GET user data api url\r\n */\r\n private _getUserDataAPIUrl: string = stringEmpty;\r\n\r\n /**\r\n * Constructor\r\n * @constructor\r\n * @ignore\r\n */\r\n constructor() {\r\n this.setup$(defaultUserLibSetup).subscribe();\r\n }\r\n\r\n /**\r\n * {@link IUserService.setup$}\r\n */\r\n public setup$(setup: Partial<IUserLibSetup>): Observable<void> {\r\n this._patchUserDataAPIUrl = setup.api?.patchUserDataAPIUrl || stringEmpty;\r\n this._getUserDataAPIUrl = setup.api?.getUserDataAPIUrl || stringEmpty;\r\n\r\n return observableEmpty$;\r\n }\r\n\r\n /**\r\n * {@link IUserService.patchUserData$}\r\n */\r\n public patchUserData$(user: Partial<User>): Observable<void> {\r\n const httpRequest: Patch = {\r\n url: this._patchUserDataAPIUrl,\r\n body: user,\r\n };\r\n const updateUserData$: Observable<void> =\r\n this._httpService.patch(httpRequest);\r\n return observableEmpty$.pipe(\r\n switchMap(() => {\r\n if (httpRequest.url) {\r\n return updateUserData$;\r\n } else {\r\n this.user = { ...this.user, ...user };\r\n return observableEmpty$;\r\n }\r\n }),\r\n switchMap(() => this.syncUserData$())\r\n );\r\n }\r\n\r\n /**\r\n * {@link IUserService.syncUserData$}\r\n */\r\n public syncUserData$(): Observable<void> {\r\n return this.getUserData$().pipe(\r\n switchMap((user: User) => {\r\n this.user = user;\r\n this._loggerService.info('User info updated', this.user);\r\n return observableEmpty$;\r\n })\r\n );\r\n }\r\n\r\n /**\r\n * {@link IUserService.getUserData$}\r\n */\r\n public getUserData$(): Observable<User> {\r\n const httpRequest: Get = {\r\n url: this._getUserDataAPIUrl,\r\n };\r\n const getUserData$: Observable<User> = this._httpService.get(httpRequest);\r\n return httpRequest.url ? getUserData$ : of(this.user);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of as-user-lib\r\n */\r\n\r\n// enums\r\n\r\n// services\r\nexport * from './lib/services/user/user.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;AAKO,MAAM,mBAAmB,GAAkB;AAChD,IAAA,GAAG,EAAE;AACH,QAAA,mBAAmB,EAAE,WAAW;AAChC,QAAA,iBAAiB,EAAE,WAAW;AAC/B,KAAA;CACF;;ACJM,MAAM,gBAAgB,GAAW,OAAO,CAAC;AACzC,MAAM,aAAa,GAAA,OAAA,yBAAkC;AAErD,MAAM,WAAW,GAAS;AAC/B,IAAA,QAAQ,EAAE,gBAAgB;AAC1B,IAAA,KAAK,EAAE,aAA4B;AACnC,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,WAAW,EAAE,SAAS;CACvB;;ACQD;;AAEG;MAIU,WAAW,CAAA;AA0BtB;;;;AAIG;AACH,IAAA,WAAA,GAAA;AA9BA;;AAEG;QACI,IAAI,CAAA,IAAA,GAAS,WAAW,CAAC;AAEhC;;AAEG;AACK,QAAA,IAAA,CAAA,YAAY,GAAgB,MAAM,CAAC,WAAW,CAAC,CAAC;AAExD;;AAEG;AACK,QAAA,IAAA,CAAA,cAAc,GAAkB,MAAM,CAAC,aAAa,CAAC,CAAC;AAE9D;;AAEG;QACK,IAAoB,CAAA,oBAAA,GAAW,WAAW,CAAC;AAEnD;;AAEG;QACK,IAAkB,CAAA,kBAAA,GAAW,WAAW,CAAC;QAQ/C,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,SAAS,EAAE,CAAC;KAC9C;AAED;;AAEG;AACI,IAAA,MAAM,CAAC,KAA6B,EAAA;QACzC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,GAAG,EAAE,mBAAmB,IAAI,WAAW,CAAC;QAC1E,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,EAAE,iBAAiB,IAAI,WAAW,CAAC;AAEtE,QAAA,OAAO,gBAAgB,CAAC;KACzB;AAED;;AAEG;AACI,IAAA,cAAc,CAAC,IAAmB,EAAA;AACvC,QAAA,MAAM,WAAW,GAAU;YACzB,GAAG,EAAE,IAAI,CAAC,oBAAoB;AAC9B,YAAA,IAAI,EAAE,IAAI;SACX,CAAC;QACF,MAAM,eAAe,GACnB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AACvC,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAC1B,SAAS,CAAC,MAAK;AACb,YAAA,IAAI,WAAW,CAAC,GAAG,EAAE;AACnB,gBAAA,OAAO,eAAe,CAAC;aACxB;iBAAM;AACL,gBAAA,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;AACtC,gBAAA,OAAO,gBAAgB,CAAC;aACzB;AACH,SAAC,CAAC,EACF,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CACtC,CAAC;KACH;AAED;;AAEG;IACI,aAAa,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAC7B,SAAS,CAAC,CAAC,IAAU,KAAI;AACvB,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACzD,YAAA,OAAO,gBAAgB,CAAC;SACzB,CAAC,CACH,CAAC;KACH;AAED;;AAEG;IACI,YAAY,GAAA;AACjB,QAAA,MAAM,WAAW,GAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,kBAAkB;SAC7B,CAAC;QACF,MAAM,YAAY,GAAqB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAC1E,QAAA,OAAO,WAAW,CAAC,GAAG,GAAG,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACvD;8GA1FU,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAX,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,cAFV,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,WAAW,EAAA,UAAA,EAAA,CAAA;kBAHvB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;AC3BD;;AAEG;AAEH;AAEA;;ACNA;;AAEG;;;;"}
1
+ {"version":3,"file":"albi_scando-as-user-lib.mjs","sources":["../../../projects/as-user-lib/src/lib/default/default.ts","../../../projects/as-user-lib/src/lib/default/default-user.ts","../../../projects/as-user-lib/src/lib/services/user/user.service.ts","../../../projects/as-user-lib/src/public-api.ts","../../../projects/as-user-lib/src/albi_scando-as-user-lib.ts"],"sourcesContent":["import { stringEmpty } from '@albi_scando/as-constants-lib';\r\n\r\n// interfaces\r\nimport { IUserLibSetup } from '../interfaces/setup.interface';\r\n\r\nexport const defaultUserLibSetup: IUserLibSetup = {\r\n api: {\r\n patchUserDataAPIUrl: stringEmpty,\r\n getUserDataAPIUrl: stringEmpty,\r\n },\r\n};\r\n","import { LANGUAGES } from '@albi_scando/as-language-lib/lib/enums/languages.enum';\r\n\r\n// enums\r\nimport { USER_LEVELS } from '../enums/user-levels.enum';\r\n\r\n// interface\r\nimport { User } from '../interfaces/user.interface';\r\n\r\nexport const DEFAULT_USERNAME: string = 'guest';\r\nexport const DEFAULT_LEVEL: USER_LEVELS = USER_LEVELS.GUEST;\r\nexport const DEFAULT_LANGUAGE: LANGUAGES = LANGUAGES.EnglishLanguageCode;\r\n\r\nexport const defaultUser: User = {\r\n username: DEFAULT_USERNAME,\r\n level: DEFAULT_LEVEL as USER_LEVELS,\r\n language: DEFAULT_LANGUAGE,\r\n};\r\n","import { Injectable, WritableSignal, inject, signal } from '@angular/core';\r\nimport { Observable, iif, of, switchMap } from 'rxjs';\r\n\r\nimport { HttpService } from '@albi_scando/as-http-lib';\r\n\r\n// Assets\r\nimport { defaultUserLibSetup } from '../../default/default';\r\nimport { defaultUser } from '../../default/default-user';\r\n\r\n// Constants\r\nimport { observableEmpty$, stringEmpty } from '@albi_scando/as-constants-lib';\r\n\r\n// Enums\r\n\r\n// Interfaces\r\nimport { Patch } from '@albi_scando/as-http-lib/lib/models/patch';\r\nimport { Get } from '@albi_scando/as-http-lib/lib/models/get';\r\nimport { User } from '../../interfaces/user.interface';\r\nimport { IUserService } from './user.service.interface';\r\nimport { IUserLibSetup } from '../../interfaces/setup.interface';\r\n\r\n/**\r\n *\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserService implements IUserService {\r\n /**\r\n * {@link IUserService.user}\r\n */\r\n public user: User = defaultUser;\r\n\r\n /**\r\n * {@link HttpService}\r\n */\r\n private _httpService: HttpService = inject(HttpService);\r\n\r\n /**\r\n * PATCH user data api url\r\n */\r\n private _patchUserDataAPIUrl: string = stringEmpty;\r\n\r\n /**\r\n * GET user data api url\r\n */\r\n private _getUserDataAPIUrl: string = stringEmpty;\r\n\r\n /**\r\n * Constructor\r\n * @constructor\r\n * @ignore\r\n */\r\n constructor() {\r\n this.setup$(defaultUserLibSetup).subscribe();\r\n }\r\n\r\n /**\r\n * {@link IUserService.setup$}\r\n */\r\n public setup$(setup: Partial<IUserLibSetup>): Observable<void> {\r\n this._patchUserDataAPIUrl = setup.api?.patchUserDataAPIUrl || stringEmpty;\r\n this._getUserDataAPIUrl = setup.api?.getUserDataAPIUrl || stringEmpty;\r\n\r\n return observableEmpty$;\r\n }\r\n\r\n /**\r\n * {@link IUserService.patchUserData$}\r\n */\r\n public patchUserData$(user: Partial<User>): Observable<void> {\r\n const httpRequest: Patch = {\r\n url: this._patchUserDataAPIUrl,\r\n body: user,\r\n };\r\n const updateUserData$: Observable<void> =\r\n this._httpService.patch(httpRequest);\r\n return iif(\r\n () => httpRequest.url === stringEmpty,\r\n of(() => (this.user = { ...this.user, ...user })),\r\n updateUserData$\r\n ).pipe(() => this.syncUserData$());\r\n }\r\n\r\n /**\r\n * {@link IUserService.getUserData$}\r\n */\r\n public getUserData$(): Observable<User> {\r\n const httpRequest: Get = {\r\n url: this._getUserDataAPIUrl,\r\n };\r\n const getUserData$: Observable<User> = this._httpService.get(httpRequest);\r\n return iif(\r\n () => httpRequest.url === stringEmpty,\r\n of(this.user),\r\n getUserData$\r\n );\r\n }\r\n\r\n /**\r\n * {@link IUserService.syncUserData$}\r\n */\r\n public syncUserData$(): Observable<void> {\r\n return this.getUserData$().pipe(\r\n switchMap((user: User) => {\r\n this.user = user;\r\n return observableEmpty$;\r\n })\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of as-user-lib\r\n */\r\n\r\n// enums\r\n\r\n// services\r\nexport * from './lib/services/user/user.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
+ import { LANGUAGES } from '@albi_scando/as-language-lib/lib/enums/languages.enum';
1
2
  import { USER_LEVELS } from '../enums/user-levels.enum';
2
3
  import { User } from '../interfaces/user.interface';
3
4
  export declare const DEFAULT_USERNAME: string;
4
5
  export declare const DEFAULT_LEVEL: USER_LEVELS;
6
+ export declare const DEFAULT_LANGUAGE: LANGUAGES;
5
7
  export declare const defaultUser: User;
@@ -1,8 +1,7 @@
1
- import { LANGUAGES } from '@albi_scando/as-constants-lib';
1
+ import { LANGUAGES } from '@albi_scando/as-language-lib/lib/enums/languages.enum';
2
2
  import { USER_LEVELS } from '../enums/user-levels.enum';
3
3
  export interface User {
4
4
  username: string;
5
5
  level: USER_LEVELS;
6
- language: LANGUAGES | undefined;
7
- environment: string | undefined;
6
+ language: LANGUAGES;
8
7
  }
@@ -15,10 +15,6 @@ export declare class UserService implements IUserService {
15
15
  * {@link HttpService}
16
16
  */
17
17
  private _httpService;
18
- /**
19
- * {@link LoggerService}
20
- */
21
- private _loggerService;
22
18
  /**
23
19
  * PATCH user data api url
24
20
  */
@@ -41,14 +37,14 @@ export declare class UserService implements IUserService {
41
37
  * {@link IUserService.patchUserData$}
42
38
  */
43
39
  patchUserData$(user: Partial<User>): Observable<void>;
44
- /**
45
- * {@link IUserService.syncUserData$}
46
- */
47
- syncUserData$(): Observable<void>;
48
40
  /**
49
41
  * {@link IUserService.getUserData$}
50
42
  */
51
43
  getUserData$(): Observable<User>;
44
+ /**
45
+ * {@link IUserService.syncUserData$}
46
+ */
47
+ syncUserData$(): Observable<void>;
52
48
  static ɵfac: i0.ɵɵFactoryDeclaration<UserService, never>;
53
49
  static ɵprov: i0.ɵɵInjectableDeclaration<UserService>;
54
50
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@albi_scando/as-user-lib",
3
- "version": "0.0.1-rc10",
3
+ "version": "0.0.1-rc3",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.2.0",
6
6
  "@angular/core": "^17.2.0"