@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.
@@ -1,12 +1,7 @@
1
- import { DestroyableContainer } from '@ts-core/common';
2
- import { StorageService } from '../storage/StorageService';
3
1
  import { CookieService } from '../cookie/CookieService';
4
- export declare class LoginTokenStorage extends DestroyableContainer {
5
- private storage;
6
- private cookies;
2
+ import { ValueStorage } from '../storage/ValueStorage';
3
+ import { LocalStorageService } from '../storage/LocalStorageService';
4
+ export declare class LoginTokenStorage extends ValueStorage {
7
5
  static TOKEN_KEY: string;
8
- constructor(storage: StorageService, cookies: CookieService);
9
- get(): string;
10
- set(value: string): void;
11
- destroy(): void;
6
+ constructor(localStorage: LocalStorageService, cookies: CookieService);
12
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ts-core/angular",
3
- "version": "15.0.35",
3
+ "version": "15.0.37",
4
4
  "description": "Modules for frontend based on angular",
5
5
  "main": "public-api.js",
6
6
  "author": {
package/public-api.d.ts CHANGED
@@ -102,7 +102,10 @@ export * from './notification/NotificationConfig';
102
102
  export * from './notification/NotificationService';
103
103
  export * from './notification/NotificationServiceEvent';
104
104
  export * from './bottomSheet/BottomSheetService';
105
- export * from './storage/StorageService';
105
+ export * from './storage/LocalStorageService';
106
+ export * from './storage/ValueStorage';
107
+ export * from './storage/IValueStorage';
108
+ export * from './storage/DateValueStorage';
106
109
  export * from './module/LazyModuleLoader';
107
110
  export * from './transport/TransportLazy';
108
111
  export * from './transport/TransportLazyModule';
@@ -0,0 +1,6 @@
1
+ import { ValueStorage } from './ValueStorage';
2
+ export declare class DateValueStorage extends ValueStorage<Date> {
3
+ protected serialize(value: string): Date;
4
+ protected deserialize(value: Date): string;
5
+ isExpired(item?: Date): boolean;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { IDestroyable } from '@ts-core/common';
2
+ export interface IValueStorage<T> extends IDestroyable {
3
+ get(defaultValue?: T): T;
4
+ set(value: T): void;
5
+ has(): boolean;
6
+ destroy(): void;
7
+ get name(): string;
8
+ }
@@ -1,6 +1,6 @@
1
1
  import { DestroyableContainer } from '@ts-core/common';
2
2
  import { NativeWindowService } from '@ts-core/frontend';
3
- export declare class StorageService extends DestroyableContainer {
3
+ export declare class LocalStorageService extends DestroyableContainer {
4
4
  private nativeWindow;
5
5
  constructor(nativeWindow: NativeWindowService);
6
6
  get(key: string, defaultValue?: string): string;
@@ -0,0 +1,17 @@
1
+ import { DestroyableContainer } from '@ts-core/common';
2
+ import { CookieService } from '../cookie/CookieService';
3
+ import { LocalStorageService } from '../storage/LocalStorageService';
4
+ import { IValueStorage } from './IValueStorage';
5
+ export declare class ValueStorage<T = string> extends DestroyableContainer implements IValueStorage<T> {
6
+ protected storage: LocalStorageService;
7
+ protected cookies: CookieService;
8
+ protected _name: string;
9
+ constructor(name: string, storage: LocalStorageService, cookies: CookieService);
10
+ protected serialize(value: string): T;
11
+ protected deserialize(value: T): string;
12
+ get(defaultValue?: T): T;
13
+ has(): boolean;
14
+ set(value: T): void;
15
+ destroy(): void;
16
+ get name(): string;
17
+ }
@@ -1,57 +0,0 @@
1
- import { DestroyableContainer } from '@ts-core/common';
2
- import * as _ from 'lodash';
3
- export class StorageService 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RvcmFnZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RvcmFnZS9TdG9yYWdlU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixNQUFNLE9BQU8sY0FBZSxTQUFRLG9CQUFvQjtJQUNwRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNEVBQTRFO0lBRTVFLFlBQW9CLFlBQWlDO1FBQ2pELEtBQUssRUFBRSxDQUFDO1FBRFEsaUJBQVksR0FBWixZQUFZLENBQXFCO0lBRXJELENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsRUFBRTtJQUNGLGtCQUFrQjtJQUNsQixFQUFFO0lBQ0YsNEVBQTRFO0lBRXJFLEdBQUcsQ0FBQyxHQUFXLEVBQUUsWUFBcUI7UUFDekMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ3BFLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVztRQUNsQixPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDakMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO2FBQU07WUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUFXO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxLQUFLO1FBQ1IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixPQUFPO1NBQ1Y7UUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSxFQUFFO0lBQ0Ysd0JBQXdCO0lBQ3hCLEVBQUU7SUFDRiw0RUFBNEU7SUFFNUUsSUFBYyxNQUFNO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQWMsT0FBTztRQUNqQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztJQUNqRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95YWJsZUNvbnRhaW5lciB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbic7XG5pbXBvcnQgeyBOYXRpdmVXaW5kb3dTZXJ2aWNlIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY2xhc3MgU3RvcmFnZVNlcnZpY2UgZXh0ZW5kcyBEZXN0cm95YWJsZUNvbnRhaW5lciB7XG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRDb25zdHJ1Y3RvclxuICAgIC8vXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXRpdmVXaW5kb3c6IE5hdGl2ZVdpbmRvd1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFB1YmxpYyBNZXRob2RzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgZ2V0KGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXMoa2V5KSA/IHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSkgOiBkZWZhdWx0VmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGhhcyhrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIV8uaXNOaWwodGhpcy5zdG9yYWdlLmdldEl0ZW0oa2V5KSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIV8uaXNOaWwodmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlKGtleSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JhZ2UuY2xlYXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMubmF0aXZlV2luZG93ID0gbnVsbDtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFByb3RlY3RlZCBQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGxlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlLmxlbmd0aDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHN0b3JhZ2UoKTogU3RvcmFnZSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZVdpbmRvdy53aW5kb3cubG9jYWxTdG9yYWdlO1xuICAgIH1cbn1cbiJdfQ==