namirasoft-core 1.4.52 → 1.4.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,7 +8,7 @@ export declare class BaseMetaTable {
8
8
  [name: string]: BaseMetaColumn;
9
9
  };
10
10
  constructor(database: BaseMetaDatabase | null, name: string, text: string);
11
- forEachColumn<T, MC extends BaseMetaColumn>(handler: (table: MC) => T | null): T | null;
11
+ forEachColumn<T, MC extends BaseMetaColumn>(handler: (column: MC) => T | null): T | null;
12
12
  getColumns<MC extends BaseMetaColumn>(): MC[];
13
13
  hasColumn(name: string): boolean;
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseMetaTable.js","sourceRoot":"","sources":["../src/BaseMetaTable.ts"],"names":[],"mappings":";;;AAGA,MAAa,aAAa;IAMtB,YAAY,QAAiC,EAAE,IAAY,EAAE,IAAY;QADlE,YAAO,GAAuC,EAAE,CAAC;QAGpD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,aAAa,CAA+B,OAAgC;QAExE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAC9B,CAAC;YACG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,GAAG,GAAG,OAAO,CAAC,OAAa,CAAC,CAAC;YACjC,IAAI,GAAG,IAAI,IAAI;gBACX,OAAO,GAAG,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,UAAU;QAEN,IAAI,GAAG,GAAS,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,EAAE;YAE1B,GAAG,CAAC,IAAI,CAAC,MAAY,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS,CAAC,IAAY;QAElB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACtC,CAAC;CACJ;AArCD,sCAqCC"}
1
+ {"version":3,"file":"BaseMetaTable.js","sourceRoot":"","sources":["../src/BaseMetaTable.ts"],"names":[],"mappings":";;;AAGA,MAAa,aAAa;IAMtB,YAAY,QAAiC,EAAE,IAAY,EAAE,IAAY;QADlE,YAAO,GAAuC,EAAE,CAAC;QAGpD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,aAAa,CAA+B,OAAiC;QAEzE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAC9B,CAAC;YACG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,GAAG,GAAG,OAAO,CAAC,OAAa,CAAC,CAAC;YACjC,IAAI,GAAG,IAAI,IAAI;gBACX,OAAO,GAAG,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,UAAU;QAEN,IAAI,GAAG,GAAS,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,EAAE;YAE1B,GAAG,CAAC,IAAI,CAAC,MAAY,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS,CAAC,IAAY;QAElB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACtC,CAAC;CACJ;AArCD,sCAqCC"}
@@ -1,3 +1,4 @@
1
+ import { Mutex } from "async-mutex";
1
2
  import { IStorage } from "./IStorage";
2
3
  export declare class CacheService<DataType> {
3
4
  private name;
@@ -6,6 +7,7 @@ export declare class CacheService<DataType> {
6
7
  private getVersion;
7
8
  private getFromSource;
8
9
  onExpired?: () => void;
10
+ runGetOn?: Mutex;
9
11
  constructor(name: string, storage: IStorage, duration_minutes: number, getVersion: () => Promise<string>, getFromSource: () => Promise<DataType>);
10
12
  get(): Promise<DataType>;
11
13
  set(data: DataType, version?: string): Promise<void>;
@@ -20,17 +20,24 @@ class CacheService {
20
20
  }
21
21
  get() {
22
22
  return __awaiter(this, void 0, void 0, function* () {
23
- let version = yield this.getVersion();
24
- let value = this.storage.get(this.name, "");
25
- if (value) {
26
- let cache = JSON.parse(value);
27
- if (cache.version == version)
28
- if (new Date(cache.expires_at) > new Date())
29
- return cache.data;
30
- }
31
- let ans = yield this.getFromSource();
32
- yield this.set(ans, version);
33
- return ans;
23
+ let innerGet = () => __awaiter(this, void 0, void 0, function* () {
24
+ let version = yield this.getVersion();
25
+ let value = this.storage.get(this.name, "");
26
+ if (value) {
27
+ let cache = JSON.parse(value);
28
+ if (cache.version == version)
29
+ if (new Date(cache.expires_at) > new Date())
30
+ return cache.data;
31
+ }
32
+ let ans = yield this.getFromSource();
33
+ yield this.set(ans, version);
34
+ return ans;
35
+ });
36
+ if (this.runGetOn)
37
+ return yield this.runGetOn.runExclusive(() => __awaiter(this, void 0, void 0, function* () {
38
+ return yield innerGet();
39
+ }));
40
+ return yield innerGet();
34
41
  });
35
42
  }
36
43
  set(data, version) {
@@ -1 +1 @@
1
- {"version":3,"file":"CacheService.js","sourceRoot":"","sources":["../src/CacheService.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,MAAa,YAAY;IAQrB,YAAY,IAAY,EAAE,OAAiB,EAAE,gBAAwB,EAAE,UAAiC,EAAE,aAAsC;QAE5I,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IACK,GAAG;;YAEL,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,KAAK,EACT,CAAC;gBACG,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAA4B,CAAC;gBACzD,IAAI,KAAK,CAAC,OAAO,IAAI,OAAO;oBACxB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,IAAI,EAAE;wBACvC,OAAO,KAAK,CAAC,IAAI,CAAC;YAC9B,CAAC;YACD,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC7B,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IACK,GAAG,CAAC,IAAc,EAAE,OAAgB;;YAEtC,IAAI,CAAC,OAAO;gBACR,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAC5B,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvE,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEnC,IAAI,IAAI,CAAC,SAAS,EAClB,CAAC;gBACG,IAAI,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACxD,IAAI,KAAK,IAAI,CAAC;oBACV,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;gBACrB,UAAU,CAAC,GAAG,EAAE;;oBAEZ,MAAA,IAAI,CAAC,SAAS,oDAAI,CAAC;gBACvB,CAAC,EAAE,KAAK,CAAC,CAAC;YACd,CAAC;QACL,CAAC;KAAA;IACD,GAAG;QAEC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACJ;AAvDD,oCAuDC"}
1
+ {"version":3,"file":"CacheService.js","sourceRoot":"","sources":["../src/CacheService.ts"],"names":[],"mappings":";;;;;;;;;;;;AAUA,MAAa,YAAY;IASrB,YAAY,IAAY,EAAE,OAAiB,EAAE,gBAAwB,EAAE,UAAiC,EAAE,aAAsC;QAE5I,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IACK,GAAG;;YAEL,IAAI,QAAQ,GAAG,GAAS,EAAE;gBAEtB,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5C,IAAI,KAAK,EACT,CAAC;oBACG,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAA2B,CAAC;oBACxD,IAAI,KAAK,CAAC,OAAO,IAAI,OAAO;wBACxB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,IAAI,EAAE;4BACvC,OAAO,KAAK,CAAC,IAAI,CAAC;gBAC9B,CAAC;gBACD,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBAC7B,OAAO,GAAG,CAAC;YACf,CAAC,CAAA,CAAC;YACF,IAAI,IAAI,CAAC,QAAQ;gBACb,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAS,EAAE;oBAE/C,OAAO,MAAM,QAAQ,EAAE,CAAC;gBAC5B,CAAC,CAAA,CAAC,CAAC;YACP,OAAO,MAAM,QAAQ,EAAE,CAAC;QAC5B,CAAC;KAAA;IACK,GAAG,CAAC,IAAc,EAAE,OAAgB;;YAEtC,IAAI,CAAC,OAAO;gBACR,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAC5B,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvE,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEnC,IAAI,IAAI,CAAC,SAAS,EAClB,CAAC;gBACG,IAAI,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACxD,IAAI,KAAK,IAAI,CAAC;oBACV,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;gBACrB,UAAU,CAAC,GAAG,EAAE;;oBAEZ,MAAA,IAAI,CAAC,SAAS,oDAAI,CAAC;gBACvB,CAAC,EAAE,KAAK,CAAC,CAAC;YACd,CAAC;QACL,CAAC;KAAA;IACD,GAAG;QAEC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACJ;AAjED,oCAiEC"}
@@ -0,0 +1,6 @@
1
+ import { IStorage } from "./IStorage.js";
2
+ export declare class IStorageSession extends IStorage {
3
+ get(name: string, defaultValue: string): string;
4
+ set(name: string, value: string): void;
5
+ del(name: string): void;
6
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IStorageSession = void 0;
4
+ const IStorage_js_1 = require("./IStorage.js");
5
+ class IStorageSession extends IStorage_js_1.IStorage {
6
+ get(name, defaultValue) {
7
+ var _a;
8
+ return (_a = sessionStorage.getItem(name)) !== null && _a !== void 0 ? _a : defaultValue;
9
+ }
10
+ set(name, value) {
11
+ sessionStorage.setItem(name, value);
12
+ }
13
+ del(name) {
14
+ sessionStorage.removeItem(name);
15
+ }
16
+ }
17
+ exports.IStorageSession = IStorageSession;
18
+ //# sourceMappingURL=IStorageSession.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IStorageSession.js","sourceRoot":"","sources":["../src/IStorageSession.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAEzC,MAAa,eAAgB,SAAQ,sBAAQ;IAEhC,GAAG,CAAC,IAAY,EAAE,YAAoB;;QAE3C,OAAO,MAAA,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAI,YAAY,CAAC;IACxD,CAAC;IACQ,GAAG,CAAC,IAAY,EAAE,KAAa;QAEpC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IACQ,GAAG,CAAC,IAAY;QAErB,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACJ;AAdD,0CAcC"}
package/dist/index.d.ts CHANGED
@@ -28,6 +28,7 @@ export * from "./IStorageCookie";
28
28
  export * from "./IStorageJsonFile";
29
29
  export * from "./IStorageLocal";
30
30
  export * from "./IStorageMemory";
31
+ export * from "./IStorageSession";
31
32
  export * from "./NamingConvention";
32
33
  export * from "./ObjectService";
33
34
  export * from "./PackageService";
package/dist/index.js CHANGED
@@ -44,6 +44,7 @@ __exportStar(require("./IStorageCookie"), exports);
44
44
  __exportStar(require("./IStorageJsonFile"), exports);
45
45
  __exportStar(require("./IStorageLocal"), exports);
46
46
  __exportStar(require("./IStorageMemory"), exports);
47
+ __exportStar(require("./IStorageSession"), exports);
47
48
  __exportStar(require("./NamingConvention"), exports);
48
49
  __exportStar(require("./ObjectService"), exports);
49
50
  __exportStar(require("./PackageService"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,iDAA+B;AAC/B,qDAAmC;AACnC,kDAAgC;AAChC,8CAA4B;AAC5B,mDAAiC;AACjC,4CAA0B;AAC1B,qDAAmC;AACnC,sDAAoC;AACpC,wDAAsC;AACtC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,+CAA6B;AAC7B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC;AAClC,6CAA2B;AAC3B,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,iDAA+B;AAC/B,qDAAmC;AACnC,kDAAgC;AAChC,8CAA4B;AAC5B,mDAAiC;AACjC,4CAA0B;AAC1B,qDAAmC;AACnC,sDAAoC;AACpC,wDAAsC;AACtC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,+CAA6B;AAC7B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC;AAClC,6CAA2B;AAC3B,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,qDAAmC"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.4.52",
11
+ "version": "1.4.54",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/index.js",
@@ -18,6 +18,7 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@types/node": "^22.13.9",
21
+ "async-mutex": "^0.5.0",
21
22
  "axios": "^1.8.1",
22
23
  "buffer": "^6.0.3",
23
24
  "moment": "^2.30.1",
@@ -13,7 +13,7 @@ export class BaseMetaTable
13
13
  this.name = name;
14
14
  this.text = text;
15
15
  }
16
- forEachColumn<T, MC extends BaseMetaColumn>(handler: (table: MC) => T | null): T | null
16
+ forEachColumn<T, MC extends BaseMetaColumn>(handler: (column: MC) => T | null): T | null
17
17
  {
18
18
  for (const key in this.columns)
19
19
  {
@@ -1,6 +1,7 @@
1
+ import { Mutex } from "async-mutex";
1
2
  import { IStorage } from "./IStorage";
2
3
 
3
- interface NSCachStorage<DataType>
4
+ interface CacheStorage<DataType>
4
5
  {
5
6
  version?: string;
6
7
  expires_at: Date;
@@ -15,6 +16,7 @@ export class CacheService<DataType>
15
16
  private getVersion: () => Promise<string>;
16
17
  private getFromSource: () => Promise<DataType>;
17
18
  public onExpired?: () => void;
19
+ public runGetOn?: Mutex;
18
20
  constructor(name: string, storage: IStorage, duration_minutes: number, getVersion: () => Promise<string>, getFromSource: () => Promise<DataType>)
19
21
  {
20
22
  this.name = name;
@@ -25,18 +27,27 @@ export class CacheService<DataType>
25
27
  }
26
28
  async get(): Promise<DataType>
27
29
  {
28
- let version = await this.getVersion();
29
- let value = this.storage.get(this.name, "");
30
- if (value)
30
+ let innerGet = async () =>
31
31
  {
32
- let cache = JSON.parse(value) as NSCachStorage<DataType>;
33
- if (cache.version == version)
34
- if (new Date(cache.expires_at) > new Date())
35
- return cache.data;
36
- }
37
- let ans = await this.getFromSource();
38
- await this.set(ans, version);
39
- return ans;
32
+ let version = await this.getVersion();
33
+ let value = this.storage.get(this.name, "");
34
+ if (value)
35
+ {
36
+ let cache = JSON.parse(value) as CacheStorage<DataType>;
37
+ if (cache.version == version)
38
+ if (new Date(cache.expires_at) > new Date())
39
+ return cache.data;
40
+ }
41
+ let ans = await this.getFromSource();
42
+ await this.set(ans, version);
43
+ return ans;
44
+ };
45
+ if (this.runGetOn)
46
+ return await this.runGetOn.runExclusive(async () =>
47
+ {
48
+ return await innerGet();
49
+ });
50
+ return await innerGet();
40
51
  }
41
52
  async set(data: DataType, version?: string)
42
53
  {
@@ -0,0 +1,17 @@
1
+ import { IStorage } from "./IStorage.js";
2
+
3
+ export class IStorageSession extends IStorage
4
+ {
5
+ override get(name: string, defaultValue: string)
6
+ {
7
+ return sessionStorage.getItem(name) ?? defaultValue;
8
+ }
9
+ override set(name: string, value: string)
10
+ {
11
+ sessionStorage.setItem(name, value);
12
+ }
13
+ override del(name: string)
14
+ {
15
+ sessionStorage.removeItem(name);
16
+ }
17
+ }
package/src/index.ts CHANGED
@@ -28,6 +28,7 @@ export * from "./IStorageCookie";
28
28
  export * from "./IStorageJsonFile";
29
29
  export * from "./IStorageLocal";
30
30
  export * from "./IStorageMemory";
31
+ export * from "./IStorageSession";
31
32
  export * from "./NamingConvention";
32
33
  export * from "./ObjectService";
33
34
  export * from "./PackageService";