@ts-core/angular 15.0.35 → 15.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/VIModule.d.ts CHANGED
@@ -5,9 +5,9 @@ import { ILanguageServiceOptions } from '@ts-core/frontend';
5
5
  import { NativeWindowService } from '@ts-core/frontend';
6
6
  import { IThemeServiceOptions } from '@ts-core/frontend';
7
7
  import { ViewUtil } from './util/ViewUtil';
8
- import { StorageService } from './storage/StorageService';
9
8
  import { CookieService } from './cookie/CookieService';
10
9
  import { LoginTokenStorage } from './login/LoginTokenStorage';
10
+ import { LocalStorageService } from './storage/LocalStorageService';
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "./pipe/TimePipe";
13
13
  import * as i2 from "./pipe/FinancePipe";
@@ -53,6 +53,6 @@ export declare class IVIOptions extends ICookieOptions {
53
53
  export declare function initializerFactory(nativeWindow: NativeWindowService, rendererFactory2: RendererFactory2): ViewUtil;
54
54
  export declare function loggerServiceFactory(options: IVIOptions): ILogger;
55
55
  export declare function nativeWindowServiceFactory(document: Document): NativeWindowService;
56
- export declare function storageServiceFactory(nativeWindow: NativeWindowService): StorageService;
57
- export declare function loginTokenStorageServiceFactory(storage: StorageService, cookies: CookieService): LoginTokenStorage;
56
+ export declare function localStorageServiceFactory(nativeWindow: NativeWindowService): LocalStorageService;
57
+ export declare function loginTokenStorageServiceFactory(storage: LocalStorageService, cookies: CookieService): LoginTokenStorage;
58
58
  export declare const VI_ANGULAR_OPTIONS: InjectionToken<IVIOptions>;
@@ -38,9 +38,9 @@ import { IsBrowserDirective } from './directive/IsBrowserDirective';
38
38
  import { DOCUMENT } from '@angular/common';
39
39
  import { PlatformService } from './service/PlatformService';
40
40
  import { ViewUtil } from './util/ViewUtil';
41
- import { StorageService } from './storage/StorageService';
42
41
  import { CookieService } from './cookie/CookieService';
43
42
  import { LoginTokenStorage } from './login/LoginTokenStorage';
43
+ import { LocalStorageService } from './storage/LocalStorageService';
44
44
  import * as i0 from "@angular/core";
45
45
  const IMPORTS = [CookieModule, ThemeModule, LanguageModule, AssetModule];
46
46
  const DECLARATIONS = [
@@ -93,8 +93,8 @@ export class VIModule {
93
93
  { provide: VI_ANGULAR_OPTIONS, useValue: options || {} },
94
94
  { provide: Logger, deps: [VI_ANGULAR_OPTIONS], useFactory: loggerServiceFactory },
95
95
  { provide: NativeWindowService, deps: [DOCUMENT], useFactory: nativeWindowServiceFactory },
96
- { provide: StorageService, deps: [NativeWindowService], useFactory: storageServiceFactory },
97
- { provide: LoginTokenStorage, deps: [StorageService, CookieService], useFactory: loginTokenStorageServiceFactory },
96
+ { provide: LocalStorageService, deps: [NativeWindowService], useFactory: localStorageServiceFactory },
97
+ { provide: LoginTokenStorage, deps: [LocalStorageService, CookieService], useFactory: loginTokenStorageServiceFactory },
98
98
  ...CookieModule.forRoot(options).providers,
99
99
  ...ThemeModule.forRoot(options ? options.themeOptions : null).providers,
100
100
  ...LanguageModule.forRoot(options ? options.languageOptions : null).providers
@@ -176,11 +176,11 @@ export function loggerServiceFactory(options) {
176
176
  export function nativeWindowServiceFactory(document) {
177
177
  return new NativeWindowService(document);
178
178
  }
179
- export function storageServiceFactory(nativeWindow) {
180
- return new StorageService(nativeWindow);
179
+ export function localStorageServiceFactory(nativeWindow) {
180
+ return new LocalStorageService(nativeWindow);
181
181
  }
182
182
  export function loginTokenStorageServiceFactory(storage, cookies) {
183
183
  return new LoginTokenStorage(storage, cookies);
184
184
  }
185
185
  export const VI_ANGULAR_OPTIONS = new InjectionToken(`VI_ANGULAR_OPTIONS`);
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVklNb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVklNb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQXVCLFFBQVEsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQVcsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXhFLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFD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QUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNoRSxRQUFRLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDMUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7QUFDbkMsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxPQUFtQjtJQUNwRCxPQUFPLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNwRyxDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLFFBQWtCO0lBQ3pELE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFlBQWlDO0lBQ25FLE9BQU8sSUFBSSxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDNUMsQ0FBQztBQUVELE1BQU0sVUFBVSwrQkFBK0IsQ0FBQyxPQUF1QixFQUFFLE9BQXNCO0lBQzNGLE9BQU8sSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFhLG9CQUFvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdGlvblRva2VuLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTG9nZ2VyLCBMb2dnZXIsIExvZ2dlckxldmVsIH0gZnJvbSAnQHRzLWNvcmUvY29tbW9uJztcbmltcG9ydCB7IElDb29raWVPcHRpb25zIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQnO1xuaW1wb3J0IHsgSUxhbmd1YWdlU2VydmljZU9wdGlvbnMgfSBmcm9tICdAdHMtY29yZS9mcm9udGVuZCc7XG5pbXBvcnQgeyBEZWZhdWx0TG9nZ2VyIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQnO1xuaW1wb3J0IHsgTG9hZGluZ1NlcnZpY2UsIE5hdGl2ZVdpbmRvd1NlcnZpY2UgfSBmcm9tICdAdHMtY29yZS9mcm9udGVuZCc7XG5pbXBvcnQgeyBJVGhlbWVTZXJ2aWNlT3B0aW9ucyB9IGZyb20gJ0B0cy1jb3JlL2Zyb250ZW5kJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEFzc2V0TW9kdWxlIH0gZnJvbSAnLi9hc3NldC9Bc3NldE1vZHVsZSc7XG5pbXBvcnQgeyBDb29raWVNb2R1bGUgfSBmcm9tICcuL2Nvb2tpZS9Db29raWVNb2R1bGUnO1xuaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZUd1YXJkIH0gZnJvbSAnLi9zZXJ2aWNlL3JvdXRlL0NhbkRlYWN0aXZhdGVHdWFyZCc7XG5pbXBvcnQgeyBBc3BlY3RSYXRpb1Jlc2l6ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0FzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlJztcbmltcG9ydCB7IEF1dG9TY3JvbGxCb3R0b21EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9BdXRvU2Nyb2xsQm90dG9tRGlyZWN0aXZlJztcbmltcG9ydCB7IENsaWNrVG9Db3B5RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb0NvcHlEaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0NsaWNrVG9TZWxlY3REaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9jdXNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9Gb2N1c0RpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RPbkZvY3VzRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvU2VsZWN0T25Gb2N1c0RpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIVE1MVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9IVE1MVGl0bGVEaXJlY3RpdmUnO1xuaW1wb3J0IHsgSFRNTENvbnRlbnRUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0hUTUxDb250ZW50VGl0bGVEaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9JbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZXNpemVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9SZXNpemVEaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2Nyb2xsQ2hlY2tEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9TY3JvbGxDaGVja0RpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9TY3JvbGxEaXJlY3RpdmUnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlTW9kdWxlJztcbmltcG9ydCB7IENhbWVsQ2FzZVBpcGUgfSBmcm9tICcuL3BpcGUvQ2FtZWxDYXNlUGlwZSc7XG5pbXBvcnQgeyBGaW5hbmNlUGlwZSB9IGZyb20gJy4vcGlwZS9GaW5hbmNlUGlwZSc7XG5pbXBvcnQgeyBNb21lbnREYXRlQWRhcHRpdmVQaXBlIH0gZnJvbSAnLi9waXBlL01vbWVudERhdGVBZGFwdGl2ZVBpcGUnO1xuaW1wb3J0IHsgTW9tZW50RGF0ZUZyb21Ob3dQaXBlIH0gZnJvbSAnLi9waXBlL01vbWVudERhdGVGcm9tTm93UGlwZSc7XG5pbXBvcnQgeyBNb21lbnREYXRlUGlwZSB9IGZyb20gJy4vcGlwZS9Nb21lbnREYXRlUGlwZSc7XG5pbXBvcnQgeyBNb21lbnRUaW1lUGlwZSB9IGZyb20gJy4vcGlwZS9Nb21lbnRUaW1lUGlwZSc7XG5pbXBvcnQgeyBOZ01vZGVsRXJyb3JQaXBlIH0gZnJvbSAnLi9waXBlL05nTW9kZWxFcnJvclBpcGUnO1xuaW1wb3J0IHsgU2FuaXRpemVQaXBlIH0gZnJvbSAnLi9waXBlL1Nhbml0aXplUGlwZSc7XG5pbXBvcnQgeyBTdGFydENhc2VQaXBlIH0gZnJvbSAnLi9waXBlL1N0YXJ0Q2FzZVBpcGUnO1xuaW1wb3J0IHsgVGltZVBpcGUgfSBmcm9tICcuL3BpcGUvVGltZVBpcGUnO1xuaW1wb3J0IHsgVHJ1bmNhdGVQaXBlIH0gZnJvbSAnLi9waXBlL1RydW5jYXRlUGlwZSc7XG5pbXBvcnQgeyBQcmV0dGlmeVBpcGUgfSBmcm9tICcuL3BpcGUvUHJldHRpZnlQaXBlJztcbmltcG9ydCB7IFRoZW1lTW9kdWxlIH0gZnJvbSAnLi90aGVtZS9UaGVtZU1vZHVsZSc7XG5pbXBvcnQgeyBJc1NlcnZlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0lzU2VydmVyRGlyZWN0aXZlJztcbmltcG9ydCB7IElzQnJvd3NlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0lzQnJvd3NlckRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBQbGF0Zm9ybVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2UvUGxhdGZvcm1TZXJ2aWNlJztcbmltcG9ydCB7IFZpZXdVdGlsIH0gZnJvbSAnLi91dGlsL1ZpZXdVdGlsJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlL1N0b3JhZ2VTZXJ2aWNlJztcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICcuL2Nvb2tpZS9Db29raWVTZXJ2aWNlJztcbmltcG9ydCB7IExvZ2luVG9rZW5TdG9yYWdlIH0gZnJvbSAnLi9sb2dpbi9Mb2dpblRva2VuU3RvcmFnZSc7XG5cbmNvbnN0IElNUE9SVFMgPSBbQ29va2llTW9kdWxlLCBUaGVtZU1vZHVsZSwgTGFuZ3VhZ2VNb2R1bGUsIEFzc2V0TW9kdWxlXTtcblxuY29uc3QgREVDTEFSQVRJT05TID0gW1xuICAgIFRpbWVQaXBlLFxuICAgIEZpbmFuY2VQaXBlLFxuICAgIFNhbml0aXplUGlwZSxcbiAgICBUcnVuY2F0ZVBpcGUsXG4gICAgUHJldHRpZnlQaXBlLFxuICAgIENhbWVsQ2FzZVBpcGUsXG4gICAgU3RhcnRDYXNlUGlwZSxcbiAgICBOZ01vZGVsRXJyb3JQaXBlLFxuXG4gICAgSXNTZXJ2ZXJEaXJlY3RpdmUsXG4gICAgSXNCcm93c2VyRGlyZWN0aXZlLFxuXG4gICAgTW9tZW50RGF0ZVBpcGUsXG4gICAgTW9tZW50VGltZVBpcGUsXG4gICAgTW9tZW50RGF0ZUZyb21Ob3dQaXBlLFxuICAgIE1vbWVudERhdGVBZGFwdGl2ZVBpcGUsXG5cbiAgICBGb2N1c0RpcmVjdGl2ZSxcbiAgICBSZXNpemVEaXJlY3RpdmUsXG4gICAgU2Nyb2xsRGlyZWN0aXZlLFxuICAgIFNjcm9sbENoZWNrRGlyZWN0aXZlLFxuICAgIENsaWNrVG9Db3B5RGlyZWN0aXZlLFxuICAgIFNlbGVjdE9uRm9jdXNEaXJlY3RpdmUsXG4gICAgQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSxcbiAgICBJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSxcbiAgICBIVE1MVGl0bGVEaXJlY3RpdmUsXG4gICAgSFRNTENvbnRlbnRUaXRsZURpcmVjdGl2ZSxcbiAgICBBdXRvU2Nyb2xsQm90dG9tRGlyZWN0aXZlLFxuICAgIEFzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IElNUE9SVFMsXG4gICAgZGVjbGFyYXRpb25zOiBERUNMQVJBVElPTlMsXG4gICAgZXhwb3J0czogWy4uLklNUE9SVFMsIC4uLkRFQ0xBUkFUSU9OU11cbn0pXG5leHBvcnQgY2xhc3MgVklNb2R1bGUge1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFN0YXRpYyBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIHN0YXRpYyBmb3JSb290KG9wdGlvbnM/OiBJVklPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxWSU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IFZJTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtOYXRpdmVXaW5kb3dTZXJ2aWNlLCBSZW5kZXJlckZhY3RvcnkyXSxcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogaW5pdGlhbGl6ZXJGYWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICBMb2FkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBQbGF0Zm9ybVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQ2FuRGVhY3RpdmF0ZUd1YXJkLFxuXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBWSV9BTkdVTEFSX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIHx8IHt9IH0sXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBMb2dnZXIsIGRlcHM6IFtWSV9BTkdVTEFSX09QVElPTlNdLCB1c2VGYWN0b3J5OiBsb2dnZXJTZXJ2aWNlRmFjdG9yeSB9LFxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTmF0aXZlV2luZG93U2VydmljZSwgZGVwczogW0RPQ1VNRU5UXSwgdXNlRmFjdG9yeTogbmF0aXZlV2luZG93U2VydmljZUZhY3RvcnkgfSxcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFN0b3JhZ2VTZXJ2aWNlLCBkZXBzOiBbTmF0aXZlV2luZG93U2VydmljZV0sIHVzZUZhY3Rvcnk6IHN0b3JhZ2VTZXJ2aWNlRmFjdG9yeSB9LFxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTG9naW5Ub2tlblN0b3JhZ2UsIGRlcHM6IFtTdG9yYWdlU2VydmljZSwgQ29va2llU2VydmljZV0sIHVzZUZhY3Rvcnk6IGxvZ2luVG9rZW5TdG9yYWdlU2VydmljZUZhY3RvcnkgfSxcblxuICAgICAgICAgICAgICAgIC4uLkNvb2tpZU1vZHVsZS5mb3JSb290KG9wdGlvbnMpLnByb3ZpZGVycyxcbiAgICAgICAgICAgICAgICAuLi5UaGVtZU1vZHVsZS5mb3JSb290KG9wdGlvbnMgPyBvcHRpb25zLnRoZW1lT3B0aW9ucyA6IG51bGwpLnByb3ZpZGVycyxcbiAgICAgICAgICAgICAgICAuLi5MYW5ndWFnZU1vZHVsZS5mb3JSb290KG9wdGlvbnMgPyBvcHRpb25zLmxhbmd1YWdlT3B0aW9ucyA6IG51bGwpLnByb3ZpZGVyc1xuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIElWSU9wdGlvbnMgZXh0ZW5kcyBJQ29va2llT3B0aW9ucyB7XG4gICAgbG9nZ2VyTGV2ZWw/OiBMb2dnZXJMZXZlbDtcbiAgICB0aGVtZU9wdGlvbnM/OiBJVGhlbWVTZXJ2aWNlT3B0aW9ucztcbiAgICBsYW5ndWFnZU9wdGlvbnM/OiBJTGFuZ3VhZ2VTZXJ2aWNlT3B0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemVyRmFjdG9yeShuYXRpdmVXaW5kb3c6IE5hdGl2ZVdpbmRvd1NlcnZpY2UsIHJlbmRlcmVyRmFjdG9yeTI6IFJlbmRlcmVyRmFjdG9yeTIpOiBWaWV3VXRpbCB7XG4gICAgVmlld1V0aWwucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkyLmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIFZpZXdVdGlsLmRvY3VtZW50ID0gbmF0aXZlV2luZG93LmRvY3VtZW50O1xuICAgIHJldHVybiAoKSA9PiBQcm9taXNlLnJlc29sdmUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2dlclNlcnZpY2VGYWN0b3J5KG9wdGlvbnM6IElWSU9wdGlvbnMpOiBJTG9nZ2VyIHtcbiAgICByZXR1cm4gbmV3IERlZmF1bHRMb2dnZXIoIV8uaXNOaWwob3B0aW9ucy5sb2dnZXJMZXZlbCkgPyBvcHRpb25zLmxvZ2dlckxldmVsIDogTG9nZ2VyTGV2ZWwuQUxMKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5hdGl2ZVdpbmRvd1NlcnZpY2VGYWN0b3J5KGRvY3VtZW50OiBEb2N1bWVudCk6IE5hdGl2ZVdpbmRvd1NlcnZpY2Uge1xuICAgIHJldHVybiBuZXcgTmF0aXZlV2luZG93U2VydmljZShkb2N1bWVudCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdG9yYWdlU2VydmljZUZhY3RvcnkobmF0aXZlV2luZG93OiBOYXRpdmVXaW5kb3dTZXJ2aWNlKTogU3RvcmFnZVNlcnZpY2Uge1xuICAgIHJldHVybiBuZXcgU3RvcmFnZVNlcnZpY2UobmF0aXZlV2luZG93KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2luVG9rZW5TdG9yYWdlU2VydmljZUZhY3Rvcnkoc3RvcmFnZTogU3RvcmFnZVNlcnZpY2UsIGNvb2tpZXM6IENvb2tpZVNlcnZpY2UpOiBMb2dpblRva2VuU3RvcmFnZSB7XG4gICAgcmV0dXJuIG5ldyBMb2dpblRva2VuU3RvcmFnZShzdG9yYWdlLCBjb29raWVzKTtcbn1cblxuZXhwb3J0IGNvbnN0IFZJX0FOR1VMQVJfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJVklPcHRpb25zPihgVklfQU5HVUxBUl9PUFRJT05TYCk7XG4iXX0=
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVklNb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVklNb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQXVCLFFBQVEsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQVcsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXhFLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFD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QUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNoRSxRQUFRLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDMUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7QUFDbkMsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxPQUFtQjtJQUNwRCxPQUFPLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNwRyxDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLFFBQWtCO0lBQ3pELE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLFlBQWlDO0lBQ3hFLE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLCtCQUErQixDQUFDLE9BQTRCLEVBQUUsT0FBc0I7SUFDaEcsT0FBTyxJQUFJLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQWEsb0JBQW9CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgSW5qZWN0aW9uVG9rZW4sIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlLCBSZW5kZXJlcjIsIFJlbmRlcmVyRmFjdG9yeTIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElMb2dnZXIsIExvZ2dlciwgTG9nZ2VyTGV2ZWwgfSBmcm9tICdAdHMtY29yZS9jb21tb24nO1xuaW1wb3J0IHsgSUNvb2tpZU9wdGlvbnMgfSBmcm9tICdAdHMtY29yZS9mcm9udGVuZCc7XG5pbXBvcnQgeyBJTGFuZ3VhZ2VTZXJ2aWNlT3B0aW9ucyB9IGZyb20gJ0B0cy1jb3JlL2Zyb250ZW5kJztcbmltcG9ydCB7IERlZmF1bHRMb2dnZXIgfSBmcm9tICdAdHMtY29yZS9mcm9udGVuZCc7XG5pbXBvcnQgeyBMb2FkaW5nU2VydmljZSwgTmF0aXZlV2luZG93U2VydmljZSB9IGZyb20gJ0B0cy1jb3JlL2Zyb250ZW5kJztcbmltcG9ydCB7IElUaGVtZVNlcnZpY2VPcHRpb25zIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQXNzZXRNb2R1bGUgfSBmcm9tICcuL2Fzc2V0L0Fzc2V0TW9kdWxlJztcbmltcG9ydCB7IENvb2tpZU1vZHVsZSB9IGZyb20gJy4vY29va2llL0Nvb2tpZU1vZHVsZSc7XG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlR3VhcmQgfSBmcm9tICcuL3NlcnZpY2Uvcm91dGUvQ2FuRGVhY3RpdmF0ZUd1YXJkJztcbmltcG9ydCB7IEFzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvQXNwZWN0UmF0aW9SZXNpemVEaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXV0b1Njcm9sbEJvdHRvbURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0F1dG9TY3JvbGxCb3R0b21EaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpY2tUb0NvcHlEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9DbGlja1RvQ29weURpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGlja1RvU2VsZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0ZvY3VzRGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdE9uRm9jdXNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9TZWxlY3RPbkZvY3VzRGlyZWN0aXZlJztcbmltcG9ydCB7IEhUTUxUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0hUTUxUaXRsZURpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIVE1MQ29udGVudFRpdGxlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvSFRNTENvbnRlbnRUaXRsZURpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL0luZmluaXRlU2Nyb2xsRGlyZWN0aXZlJztcbmltcG9ydCB7IFJlc2l6ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL1Jlc2l6ZURpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTY3JvbGxDaGVja0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL1Njcm9sbENoZWNrRGlyZWN0aXZlJztcbmltcG9ydCB7IFNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlL1Njcm9sbERpcmVjdGl2ZSc7XG5pbXBvcnQgeyBMYW5ndWFnZU1vZHVsZSB9IGZyb20gJy4vbGFuZ3VhZ2UvTGFuZ3VhZ2VNb2R1bGUnO1xuaW1wb3J0IHsgQ2FtZWxDYXNlUGlwZSB9IGZyb20gJy4vcGlwZS9DYW1lbENhc2VQaXBlJztcbmltcG9ydCB7IEZpbmFuY2VQaXBlIH0gZnJvbSAnLi9waXBlL0ZpbmFuY2VQaXBlJztcbmltcG9ydCB7IE1vbWVudERhdGVBZGFwdGl2ZVBpcGUgfSBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUFkYXB0aXZlUGlwZSc7XG5pbXBvcnQgeyBNb21lbnREYXRlRnJvbU5vd1BpcGUgfSBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUZyb21Ob3dQaXBlJztcbmltcG9ydCB7IE1vbWVudERhdGVQaXBlIH0gZnJvbSAnLi9waXBlL01vbWVudERhdGVQaXBlJztcbmltcG9ydCB7IE1vbWVudFRpbWVQaXBlIH0gZnJvbSAnLi9waXBlL01vbWVudFRpbWVQaXBlJztcbmltcG9ydCB7IE5nTW9kZWxFcnJvclBpcGUgfSBmcm9tICcuL3BpcGUvTmdNb2RlbEVycm9yUGlwZSc7XG5pbXBvcnQgeyBTYW5pdGl6ZVBpcGUgfSBmcm9tICcuL3BpcGUvU2FuaXRpemVQaXBlJztcbmltcG9ydCB7IFN0YXJ0Q2FzZVBpcGUgfSBmcm9tICcuL3BpcGUvU3RhcnRDYXNlUGlwZSc7XG5pbXBvcnQgeyBUaW1lUGlwZSB9IGZyb20gJy4vcGlwZS9UaW1lUGlwZSc7XG5pbXBvcnQgeyBUcnVuY2F0ZVBpcGUgfSBmcm9tICcuL3BpcGUvVHJ1bmNhdGVQaXBlJztcbmltcG9ydCB7IFByZXR0aWZ5UGlwZSB9IGZyb20gJy4vcGlwZS9QcmV0dGlmeVBpcGUnO1xuaW1wb3J0IHsgVGhlbWVNb2R1bGUgfSBmcm9tICcuL3RoZW1lL1RoZW1lTW9kdWxlJztcbmltcG9ydCB7IElzU2VydmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvSXNTZXJ2ZXJEaXJlY3RpdmUnO1xuaW1wb3J0IHsgSXNCcm93c2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvSXNCcm93c2VyRGlyZWN0aXZlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZSB9IGZyb20gJy4vc2VydmljZS9QbGF0Zm9ybVNlcnZpY2UnO1xuaW1wb3J0IHsgVmlld1V0aWwgfSBmcm9tICcuL3V0aWwvVmlld1V0aWwnO1xuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJy4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5Ub2tlblN0b3JhZ2UgfSBmcm9tICcuL2xvZ2luL0xvZ2luVG9rZW5TdG9yYWdlJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JhZ2UvTG9jYWxTdG9yYWdlU2VydmljZSc7XG5cbmNvbnN0IElNUE9SVFMgPSBbQ29va2llTW9kdWxlLCBUaGVtZU1vZHVsZSwgTGFuZ3VhZ2VNb2R1bGUsIEFzc2V0TW9kdWxlXTtcblxuY29uc3QgREVDTEFSQVRJT05TID0gW1xuICAgIFRpbWVQaXBlLFxuICAgIEZpbmFuY2VQaXBlLFxuICAgIFNhbml0aXplUGlwZSxcbiAgICBUcnVuY2F0ZVBpcGUsXG4gICAgUHJldHRpZnlQaXBlLFxuICAgIENhbWVsQ2FzZVBpcGUsXG4gICAgU3RhcnRDYXNlUGlwZSxcbiAgICBOZ01vZGVsRXJyb3JQaXBlLFxuXG4gICAgSXNTZXJ2ZXJEaXJlY3RpdmUsXG4gICAgSXNCcm93c2VyRGlyZWN0aXZlLFxuXG4gICAgTW9tZW50RGF0ZVBpcGUsXG4gICAgTW9tZW50VGltZVBpcGUsXG4gICAgTW9tZW50RGF0ZUZyb21Ob3dQaXBlLFxuICAgIE1vbWVudERhdGVBZGFwdGl2ZVBpcGUsXG5cbiAgICBGb2N1c0RpcmVjdGl2ZSxcbiAgICBSZXNpemVEaXJlY3RpdmUsXG4gICAgU2Nyb2xsRGlyZWN0aXZlLFxuICAgIFNjcm9sbENoZWNrRGlyZWN0aXZlLFxuICAgIENsaWNrVG9Db3B5RGlyZWN0aXZlLFxuICAgIFNlbGVjdE9uRm9jdXNEaXJlY3RpdmUsXG4gICAgQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSxcbiAgICBJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSxcbiAgICBIVE1MVGl0bGVEaXJlY3RpdmUsXG4gICAgSFRNTENvbnRlbnRUaXRsZURpcmVjdGl2ZSxcbiAgICBBdXRvU2Nyb2xsQm90dG9tRGlyZWN0aXZlLFxuICAgIEFzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IElNUE9SVFMsXG4gICAgZGVjbGFyYXRpb25zOiBERUNMQVJBVElPTlMsXG4gICAgZXhwb3J0czogWy4uLklNUE9SVFMsIC4uLkRFQ0xBUkFUSU9OU11cbn0pXG5leHBvcnQgY2xhc3MgVklNb2R1bGUge1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFN0YXRpYyBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIHN0YXRpYyBmb3JSb290KG9wdGlvbnM/OiBJVklPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxWSU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IFZJTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtOYXRpdmVXaW5kb3dTZXJ2aWNlLCBSZW5kZXJlckZhY3RvcnkyXSxcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogaW5pdGlhbGl6ZXJGYWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICBMb2FkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBQbGF0Zm9ybVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQ2FuRGVhY3RpdmF0ZUd1YXJkLFxuXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBWSV9BTkdVTEFSX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIHx8IHt9IH0sXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBMb2dnZXIsIGRlcHM6IFtWSV9BTkdVTEFSX09QVElPTlNdLCB1c2VGYWN0b3J5OiBsb2dnZXJTZXJ2aWNlRmFjdG9yeSB9LFxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTmF0aXZlV2luZG93U2VydmljZSwgZGVwczogW0RPQ1VNRU5UXSwgdXNlRmFjdG9yeTogbmF0aXZlV2luZG93U2VydmljZUZhY3RvcnkgfSxcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IExvY2FsU3RvcmFnZVNlcnZpY2UsIGRlcHM6IFtOYXRpdmVXaW5kb3dTZXJ2aWNlXSwgdXNlRmFjdG9yeTogbG9jYWxTdG9yYWdlU2VydmljZUZhY3RvcnkgfSxcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IExvZ2luVG9rZW5TdG9yYWdlLCBkZXBzOiBbTG9jYWxTdG9yYWdlU2VydmljZSwgQ29va2llU2VydmljZV0sIHVzZUZhY3Rvcnk6IGxvZ2luVG9rZW5TdG9yYWdlU2VydmljZUZhY3RvcnkgfSxcblxuICAgICAgICAgICAgICAgIC4uLkNvb2tpZU1vZHVsZS5mb3JSb290KG9wdGlvbnMpLnByb3ZpZGVycyxcbiAgICAgICAgICAgICAgICAuLi5UaGVtZU1vZHVsZS5mb3JSb290KG9wdGlvbnMgPyBvcHRpb25zLnRoZW1lT3B0aW9ucyA6IG51bGwpLnByb3ZpZGVycyxcbiAgICAgICAgICAgICAgICAuLi5MYW5ndWFnZU1vZHVsZS5mb3JSb290KG9wdGlvbnMgPyBvcHRpb25zLmxhbmd1YWdlT3B0aW9ucyA6IG51bGwpLnByb3ZpZGVyc1xuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIElWSU9wdGlvbnMgZXh0ZW5kcyBJQ29va2llT3B0aW9ucyB7XG4gICAgbG9nZ2VyTGV2ZWw/OiBMb2dnZXJMZXZlbDtcbiAgICB0aGVtZU9wdGlvbnM/OiBJVGhlbWVTZXJ2aWNlT3B0aW9ucztcbiAgICBsYW5ndWFnZU9wdGlvbnM/OiBJTGFuZ3VhZ2VTZXJ2aWNlT3B0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemVyRmFjdG9yeShuYXRpdmVXaW5kb3c6IE5hdGl2ZVdpbmRvd1NlcnZpY2UsIHJlbmRlcmVyRmFjdG9yeTI6IFJlbmRlcmVyRmFjdG9yeTIpOiBWaWV3VXRpbCB7XG4gICAgVmlld1V0aWwucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkyLmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIFZpZXdVdGlsLmRvY3VtZW50ID0gbmF0aXZlV2luZG93LmRvY3VtZW50O1xuICAgIHJldHVybiAoKSA9PiBQcm9taXNlLnJlc29sdmUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2dlclNlcnZpY2VGYWN0b3J5KG9wdGlvbnM6IElWSU9wdGlvbnMpOiBJTG9nZ2VyIHtcbiAgICByZXR1cm4gbmV3IERlZmF1bHRMb2dnZXIoIV8uaXNOaWwob3B0aW9ucy5sb2dnZXJMZXZlbCkgPyBvcHRpb25zLmxvZ2dlckxldmVsIDogTG9nZ2VyTGV2ZWwuQUxMKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5hdGl2ZVdpbmRvd1NlcnZpY2VGYWN0b3J5KGRvY3VtZW50OiBEb2N1bWVudCk6IE5hdGl2ZVdpbmRvd1NlcnZpY2Uge1xuICAgIHJldHVybiBuZXcgTmF0aXZlV2luZG93U2VydmljZShkb2N1bWVudCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2NhbFN0b3JhZ2VTZXJ2aWNlRmFjdG9yeShuYXRpdmVXaW5kb3c6IE5hdGl2ZVdpbmRvd1NlcnZpY2UpOiBMb2NhbFN0b3JhZ2VTZXJ2aWNlIHtcbiAgICByZXR1cm4gbmV3IExvY2FsU3RvcmFnZVNlcnZpY2UobmF0aXZlV2luZG93KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2luVG9rZW5TdG9yYWdlU2VydmljZUZhY3Rvcnkoc3RvcmFnZTogTG9jYWxTdG9yYWdlU2VydmljZSwgY29va2llczogQ29va2llU2VydmljZSk6IExvZ2luVG9rZW5TdG9yYWdlIHtcbiAgICByZXR1cm4gbmV3IExvZ2luVG9rZW5TdG9yYWdlKHN0b3JhZ2UsIGNvb2tpZXMpO1xufVxuXG5leHBvcnQgY29uc3QgVklfQU5HVUxBUl9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPElWSU9wdGlvbnM+KGBWSV9BTkdVTEFSX09QVElPTlNgKTtcbiJdfQ==
@@ -1,34 +1,12 @@
1
- import { DestroyableContainer } from '@ts-core/common';
2
- export class LoginTokenStorage extends DestroyableContainer {
1
+ import { ValueStorage } from '../storage/ValueStorage';
2
+ export class LoginTokenStorage extends ValueStorage {
3
3
  //--------------------------------------------------------------------------
4
4
  //
5
5
  // Constructor
6
6
  //
7
7
  //--------------------------------------------------------------------------
8
- constructor(storage, cookies) {
9
- super();
10
- this.storage = storage;
11
- this.cookies = cookies;
12
- }
13
- //--------------------------------------------------------------------------
14
- //
15
- // Public Methods
16
- //
17
- //--------------------------------------------------------------------------
18
- get() {
19
- return this.storage.has(LoginTokenStorage.TOKEN_KEY) ? this.storage.get(LoginTokenStorage.TOKEN_KEY) : this.cookies.get(LoginTokenStorage.TOKEN_KEY);
20
- }
21
- set(value) {
22
- this.storage.set(LoginTokenStorage.TOKEN_KEY, value);
23
- this.cookies.put(LoginTokenStorage.TOKEN_KEY, value);
24
- }
25
- destroy() {
26
- if (this.isDestroyed) {
27
- return;
28
- }
29
- super.destroy();
30
- this.storage = null;
31
- this.cookies = null;
8
+ constructor(localStorage, cookies) {
9
+ super(LoginTokenStorage.TOKEN_KEY, localStorage, cookies);
32
10
  }
33
11
  }
34
12
  //--------------------------------------------------------------------------
@@ -37,4 +15,4 @@ export class LoginTokenStorage extends DestroyableContainer {
37
15
  //
38
16
  //--------------------------------------------------------------------------
39
17
  LoginTokenStorage.TOKEN_KEY = 'sid';
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9naW5Ub2tlblN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9naW4vTG9naW5Ub2tlblN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFLdkQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLG9CQUFvQjtJQVN2RCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNEVBQTRFO0lBRTVFLFlBQW9CLE9BQXVCLEVBQVUsT0FBc0I7UUFDdkUsS0FBSyxFQUFFLENBQUM7UUFEUSxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWU7SUFFM0UsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSxFQUFFO0lBQ0Ysa0JBQWtCO0lBQ2xCLEVBQUU7SUFDRiw0RUFBNEU7SUFFckUsR0FBRztRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6SixDQUFDO0lBRU0sR0FBRyxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixPQUFPO1NBQ1Y7UUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQzs7QUF4Q0QsNEVBQTRFO0FBQzVFLEVBQUU7QUFDRixjQUFjO0FBQ2QsRUFBRTtBQUNGLDRFQUE0RTtBQUU5RCwyQkFBUyxHQUFHLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lhYmxlQ29udGFpbmVyIH0gZnJvbSAnQHRzLWNvcmUvY29tbW9uJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vc3RvcmFnZS9TdG9yYWdlU2VydmljZSc7XG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnLi4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY2xhc3MgTG9naW5Ub2tlblN0b3JhZ2UgZXh0ZW5kcyBEZXN0cm95YWJsZUNvbnRhaW5lciB7XG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgc3RhdGljIFRPS0VOX0tFWSA9ICdzaWQnO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRDb25zdHJ1Y3RvclxuICAgIC8vXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yYWdlOiBTdG9yYWdlU2VydmljZSwgcHJpdmF0ZSBjb29raWVzOiBDb29raWVTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQdWJsaWMgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIGdldCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlLmhhcyhMb2dpblRva2VuU3RvcmFnZS5UT0tFTl9LRVkpID8gdGhpcy5zdG9yYWdlLmdldChMb2dpblRva2VuU3RvcmFnZS5UT0tFTl9LRVkpIDogdGhpcy5jb29raWVzLmdldChMb2dpblRva2VuU3RvcmFnZS5UT0tFTl9LRVkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JhZ2Uuc2V0KExvZ2luVG9rZW5TdG9yYWdlLlRPS0VOX0tFWSwgdmFsdWUpO1xuICAgICAgICB0aGlzLmNvb2tpZXMucHV0KExvZ2luVG9rZW5TdG9yYWdlLlRPS0VOX0tFWSwgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5zdG9yYWdlID0gbnVsbDtcbiAgICAgICAgdGhpcy5jb29raWVzID0gbnVsbDtcbiAgICB9XG59XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9naW5Ub2tlblN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9naW4vTG9naW5Ub2tlblN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXZELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxZQUFZO0lBUy9DLDRFQUE0RTtJQUM1RSxFQUFFO0lBQ0YsZUFBZTtJQUNmLEVBQUU7SUFDRiw0RUFBNEU7SUFFNUUsWUFBWSxZQUFpQyxFQUFFLE9BQXNCO1FBQ2pFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlELENBQUM7O0FBaEJELDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsY0FBYztBQUNkLEVBQUU7QUFDRiw0RUFBNEU7QUFFOUQsMkJBQVMsR0FBRyxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnLi4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuaW1wb3J0IHsgVmFsdWVTdG9yYWdlIH0gZnJvbSAnLi4vc3RvcmFnZS9WYWx1ZVN0b3JhZ2UnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2UvTG9jYWxTdG9yYWdlU2VydmljZSc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBjbGFzcyBMb2dpblRva2VuU3RvcmFnZSBleHRlbmRzIFZhbHVlU3RvcmFnZSB7XG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgc3RhdGljIFRPS0VOX0tFWSA9ICdzaWQnO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRDb25zdHJ1Y3RvclxuICAgIC8vXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgY29uc3RydWN0b3IobG9jYWxTdG9yYWdlOiBMb2NhbFN0b3JhZ2VTZXJ2aWNlLCBjb29raWVzOiBDb29raWVTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKExvZ2luVG9rZW5TdG9yYWdlLlRPS0VOX0tFWSwgbG9jYWxTdG9yYWdlLCBjb29raWVzKTtcbiAgICB9XG59XG4iXX0=
@@ -122,7 +122,10 @@ export * from './notification/NotificationServiceEvent';
122
122
  //
123
123
  export * from './bottomSheet/BottomSheetService';
124
124
  //
125
- export * from './storage/StorageService';
125
+ export * from './storage/LocalStorageService';
126
+ export * from './storage/ValueStorage';
127
+ export * from './storage/IValueStorage';
128
+ export * from './storage/DateValueStorage';
126
129
  //
127
130
  export * from './module/LazyModuleLoader';
128
131
  //
@@ -133,4 +136,4 @@ export * from './transport/TransportLazyModuleLoadedEvent';
133
136
  export * from './util/ViewUtil';
134
137
  //
135
138
  export * from './VIModule';
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEVBQUU7QUFDRixjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxFQUFFO0FBQ0YsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxFQUFFO0FBQ0YsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLEVBQUU7QUFDRixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxFQUFFO0FBQ0YsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsRUFBRTtBQUNGLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxFQUFFO0FBQ0YsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsRUFBRTtBQUNGLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsRUFBRTtBQUNGLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxFQUFFO0FBQ0YsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxFQUFFO0FBQ0YsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsRUFBRTtBQUNGLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLEVBQUU7QUFDRixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsRUFBRTtBQUNGLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxFQUFFO0FBQ0YsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLEVBQUU7QUFDRixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLEVBQUU7QUFDRixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsRUFBRTtBQUNGLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELEVBQUU7QUFDRixjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELEVBQUU7QUFDRixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLEVBQUU7QUFDRixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLEVBQUU7QUFDRixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxFQUFFO0FBQ0YsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxFQUFFO0FBQ0YsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi9BcHBsaWNhdGlvbkJhc2VDb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi9BcHBsaWNhdGlvbkNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2FwcGxpY2F0aW9uL01lc3NhZ2VCYXNlQ29tcG9uZW50Jztcbi8vXG5leHBvcnQgKiBmcm9tICcuL0FwcGxpY2F0aW9uSW5qZWN0b3InO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRCYWNrZ3JvdW5kRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRCYWNrZ3JvdW5kUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0L0Fzc2V0SWNvblBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hc3NldC9Bc3NldEZpbGVQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRWaWRlb1BpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hc3NldC9Bc3NldFNvdW5kUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0L0Fzc2V0SW1hZ2VQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRNb2R1bGUnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vY29va2llL0Nvb2tpZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Nvb2tpZS9Db29raWVPcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0FzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0F1dG9TY3JvbGxCb3R0b21EaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb0NvcHlEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9Gb2N1c0RpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9TZWxlY3RPbkZvY3VzRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0luZmluaXRlU2Nyb2xsRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL1Jlc2l6ZURpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9TdHJ1Y3R1cmVEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvU2Nyb2xsRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL1Njcm9sbENoZWNrRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0hUTUxUaXRsZURpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9IVE1MQ29udGVudFRpdGxlRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0lzQnJvd3NlckRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9Jc1NlcnZlckRpcmVjdGl2ZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtL0Zvcm1FbGVtZW50QXN5bmMnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtL0Zvcm1FbGVtZW50U3luYyc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUGlwZVB1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZVBpcGVIYXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZVBpcGVIYXNQdXJlJztcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UvTGFuZ3VhZ2VSZXNvbHZlcic7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUmVxdWlyZVJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UvTGFuZ3VhZ2VEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZUhhc0RpcmVjdGl2ZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpbkd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5JZkNhbkd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5Ob3RHdWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL0xvZ2luUmVzb2x2ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpbkJhc2VTZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5SZXF1aXJlUmVzb2x2ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpblRva2VuU3RvcmFnZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2VyL0ZvY3VzTWFuYWdlcic7XG5leHBvcnQgKiBmcm9tICcuL21hbmFnZXIvUmVzaXplTWFuYWdlcic7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9tZW51L01lbnVJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbWVudS9NZW51SXRlbUJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tZW51L01lbnVJdGVtcyc7XG5leHBvcnQgKiBmcm9tICcuL21lbnUvTmF2aWdhdGlvbk1lbnVJdGVtJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL2xpc3QvSUxpc3RJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9MaXN0SXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3QvTGlzdEl0ZW1zJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9zZWxlY3QvSVNlbGVjdExpc3RJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9zZWxlY3QvU2VsZWN0TGlzdEl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0L3NlbGVjdC9TZWxlY3RMaXN0SXRlbXMnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9DYW1lbENhc2VQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9GaW5hbmNlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUFkYXB0aXZlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUZyb21Ob3dQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9Nb21lbnREYXRlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50VGltZVBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL05nTW9kZWxFcnJvclBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL1Nhbml0aXplUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvU3RhcnRDYXNlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvVHJ1bmNhdGVQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9QcmV0dGlmeVBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL1RpbWVQaXBlJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uL0lRdWVzdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uL1F1ZXN0aW9uTWFuYWdlcic7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL1BpcGVCYXNlU2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UvUGxhdGZvcm1TZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9Sb3V0ZXJCYXNlU2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2Uvcm91dGUvQ2FuRGVhY3RpdmF0ZUd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9yb3V0ZS9JUm91dGVyRGVhY3RpdmF0YWJsZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZVN0eWxlSG92ZXJEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZVN0eWxlRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGhlbWUvVGhlbWVBc3NldEJhY2tncm91bmREaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZUFzc2V0SW1hZ2VEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZUFzc2V0SWNvbkRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RoZW1lL1RoZW1lQXNzZXREaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RoZW1lL1RoZW1lVG9nZ2xlRGlyZWN0aXZlJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3VzZXIvSVVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyL1VzZXJCYXNlU2VydmljZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi93aW5kb3cvSVdpbmRvdyc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9XaW5kb3dCYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd0NvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9XaW5kb3dTZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd1NlcnZpY2VFdmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9JV2luZG93Q29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L0lXaW5kb3dDb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd0Nsb3NlZEVycm9yJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi9JTm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL0lOb3RpZmljYXRpb25Db25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vSU5vdGlmaWNhdGlvbkNvbnRlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vTm90aWZpY2F0aW9uQ29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL05vdGlmaWNhdGlvblNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vTm90aWZpY2F0aW9uU2VydmljZUV2ZW50Jztcbi8vXG5leHBvcnQgKiBmcm9tICcuL2JvdHRvbVNoZWV0L0JvdHRvbVNoZWV0U2VydmljZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlL1N0b3JhZ2VTZXJ2aWNlJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL21vZHVsZS9MYXp5TW9kdWxlTG9hZGVyJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3RyYW5zcG9ydC9UcmFuc3BvcnRMYXp5JztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNwb3J0L1RyYW5zcG9ydExhenlNb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc3BvcnQvVHJhbnNwb3J0TGF6eU1vZHVsZUxvYWRlZEV2ZW50Jztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3V0aWwvVmlld1V0aWwnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vVklNb2R1bGUnO1xuIl19
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEVBQUU7QUFDRixjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxFQUFFO0FBQ0YsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxFQUFFO0FBQ0YsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLEVBQUU7QUFDRixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxFQUFFO0FBQ0YsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsRUFBRTtBQUNGLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFB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QUU7QUFDRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLEVBQUU7QUFDRixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLEVBQUU7QUFDRixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxFQUFFO0FBQ0YsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxFQUFFO0FBQ0YsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi9BcHBsaWNhdGlvbkJhc2VDb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi9BcHBsaWNhdGlvbkNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2FwcGxpY2F0aW9uL01lc3NhZ2VCYXNlQ29tcG9uZW50Jztcbi8vXG5leHBvcnQgKiBmcm9tICcuL0FwcGxpY2F0aW9uSW5qZWN0b3InO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRCYWNrZ3JvdW5kRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRCYWNrZ3JvdW5kUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0L0Fzc2V0SWNvblBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hc3NldC9Bc3NldEZpbGVQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRWaWRlb1BpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hc3NldC9Bc3NldFNvdW5kUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0L0Fzc2V0SW1hZ2VQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQvQXNzZXRNb2R1bGUnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vY29va2llL0Nvb2tpZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Nvb2tpZS9Db29raWVPcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0FzcGVjdFJhdGlvUmVzaXplRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0F1dG9TY3JvbGxCb3R0b21EaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb0NvcHlEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvQ2xpY2tUb1NlbGVjdERpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9Gb2N1c0RpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9TZWxlY3RPbkZvY3VzRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0luZmluaXRlU2Nyb2xsRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL1Jlc2l6ZURpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9TdHJ1Y3R1cmVEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmUvU2Nyb2xsRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL1Njcm9sbENoZWNrRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0hUTUxUaXRsZURpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9IVE1MQ29udGVudFRpdGxlRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlL0lzQnJvd3NlckRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZS9Jc1NlcnZlckRpcmVjdGl2ZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtL0Zvcm1FbGVtZW50QXN5bmMnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtL0Zvcm1FbGVtZW50U3luYyc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUGlwZVB1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZVBpcGVIYXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZVBpcGVIYXNQdXJlJztcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UvTGFuZ3VhZ2VSZXNvbHZlcic7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlL0xhbmd1YWdlUmVxdWlyZVJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UvTGFuZ3VhZ2VEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS9MYW5ndWFnZUhhc0RpcmVjdGl2ZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpbkd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5JZkNhbkd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5Ob3RHdWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL0xvZ2luUmVzb2x2ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpbkJhc2VTZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vTG9naW5SZXF1aXJlUmVzb2x2ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9Mb2dpblRva2VuU3RvcmFnZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2VyL0ZvY3VzTWFuYWdlcic7XG5leHBvcnQgKiBmcm9tICcuL21hbmFnZXIvUmVzaXplTWFuYWdlcic7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9tZW51L01lbnVJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbWVudS9NZW51SXRlbUJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tZW51L01lbnVJdGVtcyc7XG5leHBvcnQgKiBmcm9tICcuL21lbnUvTmF2aWdhdGlvbk1lbnVJdGVtJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL2xpc3QvSUxpc3RJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9MaXN0SXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpc3QvTGlzdEl0ZW1zJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9zZWxlY3QvSVNlbGVjdExpc3RJdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC9zZWxlY3QvU2VsZWN0TGlzdEl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0L3NlbGVjdC9TZWxlY3RMaXN0SXRlbXMnO1xuLy9cbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9DYW1lbENhc2VQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9GaW5hbmNlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUFkYXB0aXZlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50RGF0ZUZyb21Ob3dQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9Nb21lbnREYXRlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvTW9tZW50VGltZVBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL05nTW9kZWxFcnJvclBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL1Nhbml0aXplUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvU3RhcnRDYXNlUGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvVHJ1bmNhdGVQaXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9QcmV0dGlmeVBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlL1RpbWVQaXBlJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uL0lRdWVzdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uL1F1ZXN0aW9uTWFuYWdlcic7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL1BpcGVCYXNlU2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UvUGxhdGZvcm1TZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9Sb3V0ZXJCYXNlU2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2Uvcm91dGUvQ2FuRGVhY3RpdmF0ZUd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9yb3V0ZS9JUm91dGVyRGVhY3RpdmF0YWJsZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZVN0eWxlSG92ZXJEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZVN0eWxlRGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGhlbWUvVGhlbWVBc3NldEJhY2tncm91bmREaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZUFzc2V0SW1hZ2VEaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZUFzc2V0SWNvbkRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RoZW1lL1RoZW1lQXNzZXREaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS9UaGVtZU1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RoZW1lL1RoZW1lVG9nZ2xlRGlyZWN0aXZlJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL3VzZXIvSVVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyL1VzZXJCYXNlU2VydmljZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi93aW5kb3cvSVdpbmRvdyc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9XaW5kb3dCYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd0NvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9XaW5kb3dTZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd1NlcnZpY2VFdmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy9JV2luZG93Q29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L0lXaW5kb3dDb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vd2luZG93L1dpbmRvd0Nsb3NlZEVycm9yJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi9JTm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL0lOb3RpZmljYXRpb25Db25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vSU5vdGlmaWNhdGlvbkNvbnRlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vTm90aWZpY2F0aW9uQ29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL05vdGlmaWNhdGlvblNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24vTm90aWZpY2F0aW9uU2VydmljZUV2ZW50Jztcbi8vXG5leHBvcnQgKiBmcm9tICcuL2JvdHRvbVNoZWV0L0JvdHRvbVNoZWV0U2VydmljZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlL0xvY2FsU3RvcmFnZVNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlL1ZhbHVlU3RvcmFnZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3JhZ2UvSVZhbHVlU3RvcmFnZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3JhZ2UvRGF0ZVZhbHVlU3RvcmFnZSc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi9tb2R1bGUvTGF6eU1vZHVsZUxvYWRlcic7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc3BvcnQvVHJhbnNwb3J0TGF6eSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zcG9ydC9UcmFuc3BvcnRMYXp5TW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNwb3J0L1RyYW5zcG9ydExhenlNb2R1bGVMb2FkZWRFdmVudCc7XG4vL1xuZXhwb3J0ICogZnJvbSAnLi91dGlsL1ZpZXdVdGlsJztcbi8vXG5leHBvcnQgKiBmcm9tICcuL1ZJTW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { ValueStorage } from './ValueStorage';
2
+ import * as _ from 'lodash';
3
+ export class DateValueStorage extends ValueStorage {
4
+ //--------------------------------------------------------------------------
5
+ //
6
+ // Protected Methods
7
+ //
8
+ //--------------------------------------------------------------------------
9
+ serialize(value) {
10
+ return new Date(value);
11
+ }
12
+ deserialize(value) {
13
+ return value.toISOString();
14
+ }
15
+ //--------------------------------------------------------------------------
16
+ //
17
+ // Public Methods
18
+ //
19
+ //--------------------------------------------------------------------------
20
+ isExpired(item) {
21
+ if (_.isNil(item)) {
22
+ item = new Date();
23
+ }
24
+ return this.has() ? this.get().getTime() < item.getTime() : true;
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVZhbHVlU3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdG9yYWdlL0RhdGVWYWx1ZVN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxZQUFrQjtJQUNwRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLHFCQUFxQjtJQUNyQixFQUFFO0lBQ0YsNEVBQTRFO0lBRWxFLFNBQVMsQ0FBQyxLQUFhO1FBQzdCLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVTLFdBQVcsQ0FBQyxLQUFXO1FBQzdCLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGtCQUFrQjtJQUNsQixFQUFFO0lBQ0YsNEVBQTRFO0lBRXJFLFNBQVMsQ0FBQyxJQUFXO1FBQ3hCLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNmLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1NBQ3JCO1FBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNyRSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWx1ZVN0b3JhZ2UgfSBmcm9tICcuL1ZhbHVlU3RvcmFnZSc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBjbGFzcyBEYXRlVmFsdWVTdG9yYWdlIGV4dGVuZHMgVmFsdWVTdG9yYWdlPERhdGU+IHtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFByb3RlY3RlZCBNZXRob2RzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcm90ZWN0ZWQgc2VyaWFsaXplKHZhbHVlOiBzdHJpbmcpOiBEYXRlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGVzZXJpYWxpemUodmFsdWU6IERhdGUpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUudG9JU09TdHJpbmcoKTtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFB1YmxpYyBNZXRob2RzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgaXNFeHBpcmVkKGl0ZW0/OiBEYXRlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmIChfLmlzTmlsKGl0ZW0pKSB7XG4gICAgICAgICAgICBpdGVtID0gbmV3IERhdGUoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5oYXMoKSA/IHRoaXMuZ2V0KCkuZ2V0VGltZSgpIDwgaXRlbS5nZXRUaW1lKCkgOiB0cnVlO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVZhbHVlU3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdG9yYWdlL0lWYWx1ZVN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEZXN0cm95YWJsZSB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbic7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVZhbHVlU3RvcmFnZTxUPiBleHRlbmRzIElEZXN0cm95YWJsZSB7XG4gICAgZ2V0KGRlZmF1bHRWYWx1ZT86IFQpOiBUO1xuICAgIHNldCh2YWx1ZTogVCk6IHZvaWQ7XG4gICAgaGFzKCk6IGJvb2xlYW47XG4gICAgZGVzdHJveSgpOiB2b2lkO1xuXG4gICAgZ2V0IG5hbWUoKTogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,57 @@
1
+ import { DestroyableContainer } from '@ts-core/common';
2
+ import * as _ from 'lodash';
3
+ export class LocalStorageService extends DestroyableContainer {
4
+ //--------------------------------------------------------------------------
5
+ //
6
+ // Constructor
7
+ //
8
+ //--------------------------------------------------------------------------
9
+ constructor(nativeWindow) {
10
+ super();
11
+ this.nativeWindow = nativeWindow;
12
+ }
13
+ //--------------------------------------------------------------------------
14
+ //
15
+ // Public Methods
16
+ //
17
+ //--------------------------------------------------------------------------
18
+ get(key, defaultValue) {
19
+ return this.has(key) ? this.storage.getItem(key) : defaultValue;
20
+ }
21
+ has(key) {
22
+ return !_.isNil(this.storage.getItem(key));
23
+ }
24
+ set(key, value) {
25
+ if (!_.isNil(value)) {
26
+ this.storage.setItem(key, value);
27
+ }
28
+ else {
29
+ this.remove(key);
30
+ }
31
+ }
32
+ remove(key) {
33
+ this.storage.removeItem(key);
34
+ }
35
+ clear() {
36
+ this.storage.clear();
37
+ }
38
+ destroy() {
39
+ if (this.isDestroyed) {
40
+ return;
41
+ }
42
+ super.destroy();
43
+ this.nativeWindow = null;
44
+ }
45
+ //--------------------------------------------------------------------------
46
+ //
47
+ // Protected Properties
48
+ //
49
+ //--------------------------------------------------------------------------
50
+ get length() {
51
+ return this.storage.length;
52
+ }
53
+ get storage() {
54
+ return this.nativeWindow.window.localStorage;
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxTdG9yYWdlU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdG9yYWdlL0xvY2FsU3RvcmFnZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsTUFBTSxPQUFPLG1CQUFvQixTQUFRLG9CQUFvQjtJQUN6RCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNEVBQTRFO0lBRTVFLFlBQW9CLFlBQWlDO1FBQ2pELEtBQUssRUFBRSxDQUFDO1FBRFEsaUJBQVksR0FBWixZQUFZLENBQXFCO0lBRXJELENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGtCQUFrQjtJQUNsQixFQUFFO0lBQ0YsNEVBQTRFO0lBRXJFLEdBQUcsQ0FBQyxHQUFXLEVBQUUsWUFBcUI7UUFDekMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ3BFLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVztRQUNsQixPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDakMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO2FBQU07WUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUFXO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxLQUFLO1FBQ1IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixPQUFPO1NBQ1Y7UUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSxFQUFFO0lBQ0Ysd0JBQXdCO0lBQ3hCLEVBQUU7SUFDRiw0RUFBNEU7SUFFNUUsSUFBYyxNQUFNO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQWMsT0FBTztRQUNqQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztJQUNqRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95YWJsZUNvbnRhaW5lciB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbic7XG5pbXBvcnQgeyBOYXRpdmVXaW5kb3dTZXJ2aWNlIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlU2VydmljZSBleHRlbmRzIERlc3Ryb3lhYmxlQ29udGFpbmVyIHtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdENvbnN0cnVjdG9yXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5hdGl2ZVdpbmRvdzogTmF0aXZlV2luZG93U2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0UHVibGljIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBnZXQoa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhcyhrZXkpID8gdGhpcy5zdG9yYWdlLmdldEl0ZW0oa2V5KSA6IGRlZmF1bHRWYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFzKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhXy5pc05pbCh0aGlzLnN0b3JhZ2UuZ2V0SXRlbShrZXkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghXy5pc05pbCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmUoa2V5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmUoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmFnZS5jbGVhcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5uYXRpdmVXaW5kb3cgPSBudWxsO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0UHJvdGVjdGVkIFByb3BlcnRpZXNcbiAgICAvL1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHByb3RlY3RlZCBnZXQgbGVuZ3RoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2UubGVuZ3RoO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgc3RvcmFnZSgpOiBTdG9yYWdlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlV2luZG93LndpbmRvdy5sb2NhbFN0b3JhZ2U7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,66 @@
1
+ import { DestroyableContainer } from '@ts-core/common';
2
+ import * as _ from 'lodash';
3
+ export class ValueStorage extends DestroyableContainer {
4
+ //--------------------------------------------------------------------------
5
+ //
6
+ // Constructor
7
+ //
8
+ //--------------------------------------------------------------------------
9
+ constructor(name, storage, cookies) {
10
+ super();
11
+ this.storage = storage;
12
+ this.cookies = cookies;
13
+ this._name = name;
14
+ }
15
+ //--------------------------------------------------------------------------
16
+ //
17
+ // Protected Methods
18
+ //
19
+ //--------------------------------------------------------------------------
20
+ serialize(value) {
21
+ return value;
22
+ }
23
+ deserialize(value) {
24
+ return value;
25
+ }
26
+ //--------------------------------------------------------------------------
27
+ //
28
+ // Public Methods
29
+ //
30
+ //--------------------------------------------------------------------------
31
+ get(defaultValue) {
32
+ let item = null;
33
+ if (this.storage.has(this.name)) {
34
+ item = this.storage.get(this.name);
35
+ }
36
+ else if (this.cookies.has(this.name)) {
37
+ item = this.cookies.get(this.name);
38
+ }
39
+ return !_.isNil(item) ? this.serialize(item) : defaultValue;
40
+ }
41
+ has() {
42
+ return this.storage.has(this.name) || this.cookies.has(this.name);
43
+ }
44
+ set(value) {
45
+ let item = !_.isNil(value) ? this.deserialize(value) : null;
46
+ this.cookies.put(this.name, item);
47
+ this.storage.set(this.name, item);
48
+ }
49
+ destroy() {
50
+ if (this.isDestroyed) {
51
+ return;
52
+ }
53
+ super.destroy();
54
+ this.cookies = null;
55
+ this.storage = null;
56
+ }
57
+ //--------------------------------------------------------------------------
58
+ //
59
+ // Public Properties
60
+ //
61
+ //--------------------------------------------------------------------------
62
+ get name() {
63
+ return this._name;
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmFsdWVTdG9yYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0b3JhZ2UvVmFsdWVTdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSXZELE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE1BQU0sT0FBTyxZQUF5QixTQUFRLG9CQUFvQjtJQVM5RCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNEVBQTRFO0lBRTVFLFlBQVksSUFBWSxFQUFZLE9BQTRCLEVBQVksT0FBc0I7UUFDOUYsS0FBSyxFQUFFLENBQUM7UUFEd0IsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUFBWSxZQUFPLEdBQVAsT0FBTyxDQUFlO1FBRTlGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLHFCQUFxQjtJQUNyQixFQUFFO0lBQ0YsNEVBQTRFO0lBRWxFLFNBQVMsQ0FBQyxLQUFhO1FBQzdCLE9BQU8sS0FBVSxDQUFDO0lBQ3RCLENBQUM7SUFFUyxXQUFXLENBQUMsS0FBUTtRQUMxQixPQUFPLEtBQWUsQ0FBQztJQUMzQixDQUFDO0lBRUQsNEVBQTRFO0lBQzVFLEVBQUU7SUFDRixrQkFBa0I7SUFDbEIsRUFBRTtJQUNGLDRFQUE0RTtJQUVyRSxHQUFHLENBQUMsWUFBZ0I7UUFDdkIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7YUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3RDO1FBQ0QsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUNoRSxDQUFDO0lBRU0sR0FBRztRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRU0sR0FBRyxDQUFDLEtBQVE7UUFDZixJQUFJLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVNLE9BQU87UUFDVixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsT0FBTztTQUNWO1FBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLHFCQUFxQjtJQUNyQixFQUFFO0lBQ0YsNEVBQTRFO0lBRTVFLElBQVcsSUFBSTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95YWJsZUNvbnRhaW5lciB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbic7XG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnLi4vY29va2llL0Nvb2tpZVNlcnZpY2UnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2UvTG9jYWxTdG9yYWdlU2VydmljZSc7XG5pbXBvcnQgeyBJVmFsdWVTdG9yYWdlIH0gZnJvbSAnLi9JVmFsdWVTdG9yYWdlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcblxuZXhwb3J0IGNsYXNzIFZhbHVlU3RvcmFnZTxUID0gc3RyaW5nPiBleHRlbmRzIERlc3Ryb3lhYmxlQ29udGFpbmVyIGltcGxlbWVudHMgSVZhbHVlU3RvcmFnZTxUPiB7XG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcm90ZWN0ZWQgX25hbWU6IHN0cmluZztcblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0Q29uc3RydWN0b3JcbiAgICAvL1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgcHJvdGVjdGVkIHN0b3JhZ2U6IExvY2FsU3RvcmFnZVNlcnZpY2UsIHByb3RlY3RlZCBjb29raWVzOiBDb29raWVTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX25hbWUgPSBuYW1lO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0UHJvdGVjdGVkIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHByb3RlY3RlZCBzZXJpYWxpemUodmFsdWU6IHN0cmluZyk6IFQge1xuICAgICAgICByZXR1cm4gdmFsdWUgYXMgVDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGVzZXJpYWxpemUodmFsdWU6IFQpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUgYXMgc3RyaW5nO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0UHVibGljIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBnZXQoZGVmYXVsdFZhbHVlPzogVCk6IFQge1xuICAgICAgICBsZXQgaXRlbSA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLnN0b3JhZ2UuaGFzKHRoaXMubmFtZSkpIHtcbiAgICAgICAgICAgIGl0ZW0gPSB0aGlzLnN0b3JhZ2UuZ2V0KHRoaXMubmFtZSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb29raWVzLmhhcyh0aGlzLm5hbWUpKSB7XG4gICAgICAgICAgICBpdGVtID0gdGhpcy5jb29raWVzLmdldCh0aGlzLm5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAhXy5pc05pbChpdGVtKSA/IHRoaXMuc2VyaWFsaXplKGl0ZW0pIDogZGVmYXVsdFZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2UuaGFzKHRoaXMubmFtZSkgfHwgdGhpcy5jb29raWVzLmhhcyh0aGlzLm5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQodmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgbGV0IGl0ZW0gPSAhXy5pc05pbCh2YWx1ZSkgPyB0aGlzLmRlc2VyaWFsaXplKHZhbHVlKSA6IG51bGw7XG4gICAgICAgIHRoaXMuY29va2llcy5wdXQodGhpcy5uYW1lLCBpdGVtKTtcbiAgICAgICAgdGhpcy5zdG9yYWdlLnNldCh0aGlzLm5hbWUsIGl0ZW0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5jb29raWVzID0gbnVsbDtcbiAgICAgICAgdGhpcy5zdG9yYWdlID0gbnVsbDtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFB1YmxpYyBQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25hbWU7XG4gICAgfVxufVxuIl19
@@ -3370,36 +3370,78 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
3370
3370
  }] }];
3371
3371
  } });
3372
3372
 
3373
- class LoginTokenStorage extends DestroyableContainer {
3373
+ class ValueStorage extends DestroyableContainer {
3374
3374
  //--------------------------------------------------------------------------
3375
3375
  //
3376
3376
  // Constructor
3377
3377
  //
3378
3378
  //--------------------------------------------------------------------------
3379
- constructor(storage, cookies) {
3379
+ constructor(name, storage, cookies) {
3380
3380
  super();
3381
3381
  this.storage = storage;
3382
3382
  this.cookies = cookies;
3383
+ this._name = name;
3384
+ }
3385
+ //--------------------------------------------------------------------------
3386
+ //
3387
+ // Protected Methods
3388
+ //
3389
+ //--------------------------------------------------------------------------
3390
+ serialize(value) {
3391
+ return value;
3392
+ }
3393
+ deserialize(value) {
3394
+ return value;
3383
3395
  }
3384
3396
  //--------------------------------------------------------------------------
3385
3397
  //
3386
3398
  // Public Methods
3387
3399
  //
3388
3400
  //--------------------------------------------------------------------------
3389
- get() {
3390
- return this.storage.has(LoginTokenStorage.TOKEN_KEY) ? this.storage.get(LoginTokenStorage.TOKEN_KEY) : this.cookies.get(LoginTokenStorage.TOKEN_KEY);
3401
+ get(defaultValue) {
3402
+ let item = null;
3403
+ if (this.storage.has(this.name)) {
3404
+ item = this.storage.get(this.name);
3405
+ }
3406
+ else if (this.cookies.has(this.name)) {
3407
+ item = this.cookies.get(this.name);
3408
+ }
3409
+ return !_.isNil(item) ? this.serialize(item) : defaultValue;
3410
+ }
3411
+ has() {
3412
+ return this.storage.has(this.name) || this.cookies.has(this.name);
3391
3413
  }
3392
3414
  set(value) {
3393
- this.storage.set(LoginTokenStorage.TOKEN_KEY, value);
3394
- this.cookies.put(LoginTokenStorage.TOKEN_KEY, value);
3415
+ let item = !_.isNil(value) ? this.deserialize(value) : null;
3416
+ this.cookies.put(this.name, item);
3417
+ this.storage.set(this.name, item);
3395
3418
  }
3396
3419
  destroy() {
3397
3420
  if (this.isDestroyed) {
3398
3421
  return;
3399
3422
  }
3400
3423
  super.destroy();
3401
- this.storage = null;
3402
3424
  this.cookies = null;
3425
+ this.storage = null;
3426
+ }
3427
+ //--------------------------------------------------------------------------
3428
+ //
3429
+ // Public Properties
3430
+ //
3431
+ //--------------------------------------------------------------------------
3432
+ get name() {
3433
+ return this._name;
3434
+ }
3435
+ }
3436
+
3437
+ class LoginTokenStorage extends ValueStorage {
3438
+ //--------------------------------------------------------------------------
3439
+ //
3440
+ // Constructor
3441
+ //
3442
+ //--------------------------------------------------------------------------
3443
+ constructor(localStorage, cookies) {
3444
+ super(LoginTokenStorage.TOKEN_KEY, localStorage, cookies);
3403
3445
  }
3404
3446
  }
3405
3447
  //--------------------------------------------------------------------------
@@ -6394,7 +6436,7 @@ var NotificationServiceEvent;
6394
6436
  class BottomSheetService extends Destroyable {
6395
6437
  }
6396
6438
 
6397
- class StorageService extends DestroyableContainer {
6439
+ class LocalStorageService extends DestroyableContainer {
6398
6440
  //--------------------------------------------------------------------------
6399
6441
  //
6400
6442
  // Constructor
@@ -6449,6 +6491,31 @@ class StorageService extends DestroyableContainer {
6449
6491
  }
6450
6492
  }
6451
6493
 
6494
+ class DateValueStorage extends ValueStorage {
6495
+ //--------------------------------------------------------------------------
6496
+ //
6497
+ // Protected Methods
6498
+ //
6499
+ //--------------------------------------------------------------------------
6500
+ serialize(value) {
6501
+ return new Date(value);
6502
+ }
6503
+ deserialize(value) {
6504
+ return value.toISOString();
6505
+ }
6506
+ //--------------------------------------------------------------------------
6507
+ //
6508
+ // Public Methods
6509
+ //
6510
+ //--------------------------------------------------------------------------
6511
+ isExpired(item) {
6512
+ if (_.isNil(item)) {
6513
+ item = new Date();
6514
+ }
6515
+ return this.has() ? this.get().getTime() < item.getTime() : true;
6516
+ }
6517
+ }
6518
+
6452
6519
  class LazyModuleLoader extends Loadable {
6453
6520
  //--------------------------------------------------------------------------
6454
6521
  //
@@ -6731,8 +6798,8 @@ class VIModule {
6731
6798
  { provide: VI_ANGULAR_OPTIONS, useValue: options || {} },
6732
6799
  { provide: Logger, deps: [VI_ANGULAR_OPTIONS], useFactory: loggerServiceFactory },
6733
6800
  { provide: NativeWindowService, deps: [DOCUMENT], useFactory: nativeWindowServiceFactory },
6734
- { provide: StorageService, deps: [NativeWindowService], useFactory: storageServiceFactory },
6735
- { provide: LoginTokenStorage, deps: [StorageService, CookieService], useFactory: loginTokenStorageServiceFactory },
6801
+ { provide: LocalStorageService, deps: [NativeWindowService], useFactory: localStorageServiceFactory },
6802
+ { provide: LoginTokenStorage, deps: [LocalStorageService, CookieService], useFactory: loginTokenStorageServiceFactory },
6736
6803
  ...CookieModule.forRoot(options).providers,
6737
6804
  ...ThemeModule.forRoot(options ? options.themeOptions : null).providers,
6738
6805
  ...LanguageModule.forRoot(options ? options.languageOptions : null).providers
@@ -6814,8 +6881,8 @@ function loggerServiceFactory(options) {
6814
6881
  function nativeWindowServiceFactory(document) {
6815
6882
  return new NativeWindowService(document);
6816
6883
  }
6817
- function storageServiceFactory(nativeWindow) {
6818
- return new StorageService(nativeWindow);
6884
+ function localStorageServiceFactory(nativeWindow) {
6885
+ return new LocalStorageService(nativeWindow);
6819
6886
  }
6820
6887
  function loginTokenStorageServiceFactory(storage, cookies) {
6821
6888
  return new LoginTokenStorage(storage, cookies);
@@ -6828,5 +6895,5 @@ const VI_ANGULAR_OPTIONS = new InjectionToken(`VI_ANGULAR_OPTIONS`);
6828
6895
  * Generated bundle index. Do not edit.
6829
6896
  */
6830
6897
 
6831
- export { APPLICATION_INJECTOR, ApplicationBaseComponent, ApplicationComponent, AspectRatioResizeDirective, AssetBackgroundDirective, AssetBackgroundPipe, AssetFilePipe, AssetIconPipe, AssetImagePipe, AssetModule, AssetSoundPipe, AssetVideoPipe, AutoScrollBottomDirective, BottomSheetService, COOKIE_OPTIONS, CamelCasePipe, CanDeactivateGuard, ClickToCopyDirective, ClickToSelectDirective, CookieModule, CookieOptions, CookieService, Direction, FinancePipe, FocusDirective, FocusManager, FormElementAsync, FormElementSync, HTMLContentTitleDirective, HTMLTitleDirective, INotification, INotificationContent, IUser, IVIOptions, IWindow, IWindowContent, InfiniteScrollDirective, IsBrowserDirective, IsServerDirective, LANGUAGE_OPTIONS, LanguageDirective, LanguageHasDirective, LanguageModule, LanguagePipe, LanguagePipeHas, LanguagePipeHasPure, LanguagePipePure, LanguageRequireResolver, LanguageResolver, LazyModuleLoader, ListItem, ListItems, LoginBaseService, LoginBaseServiceEvent, LoginGuard, LoginIfCanGuard, LoginNotGuard, LoginRequireResolver, LoginResolver, LoginTokenStorage, MenuItem, MenuItemBase, MenuItems, MessageBaseComponent, MomentDateAdaptivePipe, MomentDateFromNowPipe, MomentDatePipe, MomentTimePipe, NavigationMenuItem, NgModelErrorPipe, NotificationConfig, NotificationEvent, NotificationService, NotificationServiceEvent, PipeBaseService, PlatformService, PrettifyPipe, QuestionEvent, QuestionManager, QuestionMode, ResizeDirective, ResizeManager, RouterBaseService, SanitizePipe, ScrollCheckDirective, ScrollDirective, SelectListItem, SelectListItems, SelectOnFocusDirective, StartCasePipe, StorageService, StructureDirective, THEME_OPTIONS, ThemeAssetBackgroundDirective, ThemeAssetDirective, ThemeAssetIconDirective, ThemeAssetImageDirective, ThemeModule, ThemeStyleDirective, ThemeStyleHoverDirective, ThemeToggleDirective, TimePipe, TransportLazy, TransportLazyModule, TransportLazyModuleLoadedEvent, TruncatePipe, UserBaseService, UserBaseServiceEvent, VIModule, VI_ANGULAR_OPTIONS, ViewUtil, WINDOW_CONTENT_CONTAINER, WindowAlign, WindowBase, WindowClosedError, WindowConfig, WindowEvent, WindowService, WindowServiceEvent, cookieServiceFactory, initializerFactory, languageServiceFactory, loggerServiceFactory, loginTokenStorageServiceFactory, nativeWindowServiceFactory, storageServiceFactory, themeAssetServiceFactory, themeServiceFactory };
6898
+ export { APPLICATION_INJECTOR, ApplicationBaseComponent, ApplicationComponent, AspectRatioResizeDirective, AssetBackgroundDirective, AssetBackgroundPipe, AssetFilePipe, AssetIconPipe, AssetImagePipe, AssetModule, AssetSoundPipe, AssetVideoPipe, AutoScrollBottomDirective, BottomSheetService, COOKIE_OPTIONS, CamelCasePipe, CanDeactivateGuard, ClickToCopyDirective, ClickToSelectDirective, CookieModule, CookieOptions, CookieService, DateValueStorage, Direction, FinancePipe, FocusDirective, FocusManager, FormElementAsync, FormElementSync, HTMLContentTitleDirective, HTMLTitleDirective, INotification, INotificationContent, IUser, IVIOptions, IWindow, IWindowContent, InfiniteScrollDirective, IsBrowserDirective, IsServerDirective, LANGUAGE_OPTIONS, LanguageDirective, LanguageHasDirective, LanguageModule, LanguagePipe, LanguagePipeHas, LanguagePipeHasPure, LanguagePipePure, LanguageRequireResolver, LanguageResolver, LazyModuleLoader, ListItem, ListItems, LocalStorageService, LoginBaseService, LoginBaseServiceEvent, LoginGuard, LoginIfCanGuard, LoginNotGuard, LoginRequireResolver, LoginResolver, LoginTokenStorage, MenuItem, MenuItemBase, MenuItems, MessageBaseComponent, MomentDateAdaptivePipe, MomentDateFromNowPipe, MomentDatePipe, MomentTimePipe, NavigationMenuItem, NgModelErrorPipe, NotificationConfig, NotificationEvent, NotificationService, NotificationServiceEvent, PipeBaseService, PlatformService, PrettifyPipe, QuestionEvent, QuestionManager, QuestionMode, ResizeDirective, ResizeManager, RouterBaseService, SanitizePipe, ScrollCheckDirective, ScrollDirective, SelectListItem, SelectListItems, SelectOnFocusDirective, StartCasePipe, StructureDirective, THEME_OPTIONS, ThemeAssetBackgroundDirective, ThemeAssetDirective, ThemeAssetIconDirective, ThemeAssetImageDirective, ThemeModule, ThemeStyleDirective, ThemeStyleHoverDirective, ThemeToggleDirective, TimePipe, TransportLazy, TransportLazyModule, TransportLazyModuleLoadedEvent, TruncatePipe, UserBaseService, UserBaseServiceEvent, VIModule, VI_ANGULAR_OPTIONS, ValueStorage, ViewUtil, WINDOW_CONTENT_CONTAINER, WindowAlign, WindowBase, WindowClosedError, WindowConfig, WindowEvent, WindowService, WindowServiceEvent, cookieServiceFactory, initializerFactory, languageServiceFactory, localStorageServiceFactory, loggerServiceFactory, loginTokenStorageServiceFactory, nativeWindowServiceFactory, themeAssetServiceFactory, themeServiceFactory };
6832
6899
  //# sourceMappingURL=ts-core-angular.mjs.map