@zajno/common 2.3.10 → 2.3.12
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/api/call.d.ts +10 -4
- package/api/call.d.ts.map +1 -1
- package/api/call.js +3 -2
- package/api/call.js.map +1 -1
- package/package.json +1 -1
- package/storage/index.d.ts +2 -3
- package/storage/index.d.ts.map +1 -1
- package/storage/index.js +2 -3
- package/storage/index.js.map +1 -1
- package/storage/types.d.ts +13 -0
- package/storage/types.d.ts.map +1 -0
- package/storage/{abstractions.js → types.js} +1 -1
- package/storage/types.js.map +1 -0
- package/storage/wrappers.d.ts +11 -0
- package/storage/wrappers.d.ts.map +1 -0
- package/storage/wrappers.js +54 -0
- package/storage/wrappers.js.map +1 -0
- package/structures/path/builder.d.ts.map +1 -1
- package/structures/path/builder.js +41 -9
- package/structures/path/builder.js.map +1 -1
- package/structures/path/types.d.ts +7 -0
- package/structures/path/types.d.ts.map +1 -1
- package/structures/promiseCache.d.ts +25 -2
- package/structures/promiseCache.d.ts.map +1 -1
- package/structures/promiseCache.js +43 -7
- package/structures/promiseCache.js.map +1 -1
- package/structures/promiseExtended.d.ts +1 -1
- package/structures/promiseExtended.d.ts.map +1 -1
- package/structures/promiseExtended.js +2 -2
- package/structures/promiseExtended.js.map +1 -1
- package/types/functions.d.ts +8 -0
- package/types/functions.d.ts.map +1 -1
- package/storage/abstractions.d.ts +0 -13
- package/storage/abstractions.d.ts.map +0 -1
- package/storage/abstractions.js.map +0 -1
- package/storage/asyncWrapper.d.ts +0 -10
- package/storage/asyncWrapper.d.ts.map +0 -1
- package/storage/asyncWrapper.js +0 -25
- package/storage/asyncWrapper.js.map +0 -1
- package/storage/keyStorage.d.ts +0 -15
- package/storage/keyStorage.d.ts.map +0 -1
- package/storage/keyStorage.js +0 -38
- package/storage/keyStorage.js.map +0 -1
- package/storage/keyStorage.sync.d.ts +0 -21
- package/storage/keyStorage.sync.d.ts.map +0 -1
- package/storage/keyStorage.sync.js +0 -40
- package/storage/keyStorage.sync.js.map +0 -1
package/api/call.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { AnyObject } from '../types';
|
|
|
2
2
|
import { IEndpointInfo } from './endpoint';
|
|
3
3
|
import { EndpointMethods } from './methods';
|
|
4
4
|
import { LogTypes } from './logging';
|
|
5
|
+
/** Request options to be used by call implementation (e.g. interceptor). Passed as separate object argument to the call method. */
|
|
5
6
|
type Extra<T> = {
|
|
6
7
|
headers?: IEndpointInfo.ExtractHeaders<T>;
|
|
7
8
|
log?: LogTypes<IEndpointInfo.ExtractIn<T>, IEndpointInfo.ExtractOut<T>>;
|
|
@@ -13,18 +14,23 @@ export type RequestConfig<TIn> = {
|
|
|
13
14
|
data: TIn | null | undefined;
|
|
14
15
|
headers: AnyObject;
|
|
15
16
|
};
|
|
16
|
-
|
|
17
|
+
/** Compiled request config object passed to `request` implementation */
|
|
18
|
+
export type RequestConfigDetails<T extends IEndpointInfo = IEndpointInfo, TIn = IEndpointInfo.ExtractIn<T>, TExtra extends object = Record<string, any>> = RequestConfig<TIn> & {
|
|
17
19
|
_api: T;
|
|
18
20
|
_noLoader?: boolean;
|
|
19
21
|
_log?: LogTypes;
|
|
22
|
+
/** Additional data passed to the request implementation */
|
|
23
|
+
_extra?: TExtra;
|
|
20
24
|
};
|
|
21
|
-
type CallerOptions = {
|
|
25
|
+
type CallerOptions<TExtra extends object = Record<string, any>> = {
|
|
26
|
+
/** Additional hook before hading request config to implementation */
|
|
22
27
|
bodyValidation?: (api: IEndpointInfo, input: any) => Promise<void>;
|
|
23
|
-
|
|
28
|
+
/** Request implementation */
|
|
29
|
+
request: <TIn, TOut>(config: RequestConfigDetails<IEndpointInfo, TIn, TExtra>) => Promise<{
|
|
24
30
|
data: TOut;
|
|
25
31
|
}>;
|
|
26
32
|
};
|
|
27
33
|
export type EndpointCallArgs<T extends IEndpointInfo> = IEndpointInfo.ExtractIn<T> | IEndpointInfo.ExtractPath<T> | IEndpointInfo.ExtractQuery<T>;
|
|
28
|
-
export declare function buildApiCaller(options: CallerOptions): <T extends IEndpointInfo>(api: T, data: EndpointCallArgs<T>, extra?: Extra<T>) => Promise<IEndpointInfo.ExtractOut<T>>;
|
|
34
|
+
export declare function buildApiCaller<TExtra extends object = Record<string, any>>(options: CallerOptions<TExtra>): <T extends IEndpointInfo>(api: T, data: EndpointCallArgs<T>, extra?: Extra<T> & TExtra) => Promise<IEndpointInfo.ExtractOut<T>>;
|
|
29
35
|
export {};
|
|
30
36
|
//# sourceMappingURL=call.d.ts.map
|
package/api/call.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/api/call.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,KAAK,KAAK,CAAC,CAAC,IAAI;IACZ,OAAO,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,GAAG,IAAI;IAC7B,MAAM,EAAE,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7B,OAAO,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/api/call.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,oIAAoI;AACpI,KAAK,KAAK,CAAC,CAAC,IAAI;IACZ,OAAO,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,GAAG,IAAI;IAC7B,MAAM,EAAE,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7B,OAAO,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,oBAAoB,CAC5B,CAAC,SAAS,aAAa,GAAG,aAAa,EACvC,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAChC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAC3C,aAAa,CAAC,GAAG,CAAC,GAAG;IACrB,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,aAAa,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;IAC9D,qEAAqE;IACrE,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE,6BAA6B;IAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;CAC7G,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,aAAa,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAElJ,wBAAgB,cAAc,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,kCAK7F,CAAC,QACA,iBAAiB,CAAC,CAAC,UACjB,MAAM,CAAC,CAAC,GAAG,MAAM,0CAwEhC"}
|
package/api/call.js
CHANGED
|
@@ -6,7 +6,7 @@ const helpers_1 = require("./helpers");
|
|
|
6
6
|
function buildApiCaller(options) {
|
|
7
7
|
const { bodyValidation, request } = options;
|
|
8
8
|
return async function callApi(api, data, extra) {
|
|
9
|
-
const { headers, log = 'res' } = extra || {};
|
|
9
|
+
const { headers, log = 'res', noLoader, ...restExtra } = extra || {};
|
|
10
10
|
const resultInput = data && { ...data };
|
|
11
11
|
const pathInputs = {};
|
|
12
12
|
let queryStr = '';
|
|
@@ -47,8 +47,9 @@ function buildApiCaller(options) {
|
|
|
47
47
|
data: register_1.PreProcessors.process(api, sendingData) || undefined,
|
|
48
48
|
headers: headers || {},
|
|
49
49
|
_api: api,
|
|
50
|
-
_noLoader:
|
|
50
|
+
_noLoader: noLoader ?? method === 'GET',
|
|
51
51
|
_log: log,
|
|
52
|
+
_extra: restExtra,
|
|
52
53
|
};
|
|
53
54
|
if (api.isForm) {
|
|
54
55
|
config.headers['Content-Type'] = 'multipart/form-data';
|
package/api/call.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/api/call.ts"],"names":[],"mappings":";;;AAAA,yCAA2D;AAK3D,uCAAoC;
|
|
1
|
+
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/api/call.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/storage/index.d.ts
CHANGED
package/storage/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
package/storage/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./
|
|
5
|
-
tslib_1.__exportStar(require("./
|
|
6
|
-
tslib_1.__exportStar(require("./keyStorage"), exports);
|
|
4
|
+
tslib_1.__exportStar(require("./types"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./wrappers"), exports);
|
|
7
6
|
//# sourceMappingURL=index.js.map
|
package/storage/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":";;;AACA,kDAAwB;AACxB,qDAA2B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RemoveFirstParameter, Awaitify } from '../types/functions';
|
|
2
|
+
export interface IStorage<T = string> {
|
|
3
|
+
getValue(key: string): Promise<T | null>;
|
|
4
|
+
setValue(key: string, value: T): Promise<void>;
|
|
5
|
+
hasValue(key: string): Promise<boolean>;
|
|
6
|
+
removeValue(key: string): Promise<boolean>;
|
|
7
|
+
}
|
|
8
|
+
export type IKeyedStorage<T = string> = {
|
|
9
|
+
[P in keyof IStorage<T>]: RemoveFirstParameter<IStorage<T>[P]>;
|
|
10
|
+
};
|
|
11
|
+
export type IStorageSync<T = string> = Awaitify<IStorage<T>>;
|
|
12
|
+
export type IKeyedStorageSync<T = string> = Awaitify<IKeyedStorage<T>>;
|
|
13
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,WAAW,QAAQ,CAAC,CAAC,GAAG,MAAM;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACzC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9C;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,MAAM,IAAI;KACnC,CAAC,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IKeyedStorage, IKeyedStorageSync, IStorage, IStorageSync } from './types';
|
|
2
|
+
export declare namespace Storages {
|
|
3
|
+
function toAsync<T = string>(storage: IStorageSync<T>): IStorage<T>;
|
|
4
|
+
function toKeyed<T = string>(storage: IStorage<T>, storageKey: string): IKeyedStorage<T>;
|
|
5
|
+
function toKeyed<T = string>(storage: IStorageSync<T>, storageKey: string): IKeyedStorageSync<T>;
|
|
6
|
+
function toConverted<T, C = string>(storage: IStorage<C>, convertOutput: (s: C | null) => T, convertInput: (v: T) => C): IStorage<T>;
|
|
7
|
+
function toConverted<T, C = string>(storage: IStorageSync<C>, convertOutput: (s: C | null) => T, convertInput: (v: T) => C): IStorageSync<T>;
|
|
8
|
+
function toJSONConverted<T>(storage: IStorage<string>): IStorage<T>;
|
|
9
|
+
function toJSONConverted<T>(storage: IStorageSync<string>): IStorageSync<T>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=wrappers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrappers.d.ts","sourceRoot":"","sources":["../../src/storage/wrappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnF,yBAAiB,QAAQ,CAAC;IAItB,SAAgB,OAAO,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CASzE;IAED,SAAgB,OAAO,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAChG,SAAgB,OAAO,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAaxG,SAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5I,SAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAwBpJ,SAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3E,SAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;CAStF"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Storages = void 0;
|
|
4
|
+
var Storages;
|
|
5
|
+
(function (Storages) {
|
|
6
|
+
const InstanceKeys = ['getValue', 'hasValue', 'setValue', 'removeValue'];
|
|
7
|
+
function toAsync(storage) {
|
|
8
|
+
const result = {};
|
|
9
|
+
InstanceKeys.forEach(key => {
|
|
10
|
+
const original = storage[key]?.bind(storage);
|
|
11
|
+
if (original) {
|
|
12
|
+
result[key] = ((...args) => Promise.resolve(original(...args)));
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
Storages.toAsync = toAsync;
|
|
18
|
+
function toKeyed(storage, storageKey) {
|
|
19
|
+
const result = {};
|
|
20
|
+
InstanceKeys.forEach(key => {
|
|
21
|
+
const original = storage[key]?.bind(storage);
|
|
22
|
+
if (original) {
|
|
23
|
+
result[key] = ((...args) => original(storageKey, ...args));
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return result;
|
|
27
|
+
}
|
|
28
|
+
Storages.toKeyed = toKeyed;
|
|
29
|
+
function toConverted(storage, convertOutput, convertInput) {
|
|
30
|
+
const getValue = (key => {
|
|
31
|
+
const res = storage.getValue(key);
|
|
32
|
+
if (res instanceof Promise) {
|
|
33
|
+
return res.then(r => convertOutput(r));
|
|
34
|
+
}
|
|
35
|
+
return convertOutput(res);
|
|
36
|
+
});
|
|
37
|
+
const hasValue = (key => storage.hasValue(key));
|
|
38
|
+
const removeValue = (key => storage.removeValue(key));
|
|
39
|
+
return {
|
|
40
|
+
getValue,
|
|
41
|
+
setValue: (key, value) => {
|
|
42
|
+
return storage.setValue(key, convertInput(value));
|
|
43
|
+
},
|
|
44
|
+
hasValue,
|
|
45
|
+
removeValue,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
Storages.toConverted = toConverted;
|
|
49
|
+
function toJSONConverted(storage) {
|
|
50
|
+
return toConverted(storage, s => JSON.parse(s || 'null'), v => JSON.stringify(v));
|
|
51
|
+
}
|
|
52
|
+
Storages.toJSONConverted = toJSONConverted;
|
|
53
|
+
})(Storages || (exports.Storages = Storages = {}));
|
|
54
|
+
//# sourceMappingURL=wrappers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrappers.js","sourceRoot":"","sources":["../../src/storage/wrappers.ts"],"names":[],"mappings":";;;AAEA,IAAiB,QAAQ,CAgExB;AAhED,WAAiB,QAAQ;IAErB,MAAM,YAAY,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,CAA2C,CAAC;IAEnH,SAAgB,OAAO,CAAa,OAAwB;QACxD,MAAM,MAAM,GAAG,EAAiB,CAAC;QACjC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAoC,CAAC;YAChF,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAQ,CAAC;YACtF,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;IATe,gBAAO,UAStB,CAAA;IAKD,SAAgB,OAAO,CAAC,OAAgC,EAAE,UAAkB;QACxE,MAAM,MAAM,GAAG,EAAuC,CAAC;QACvD,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAoC,CAAC;YAChF,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAQ,CAAC;YACjF,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;IATe,gBAAO,UAStB,CAAA;IAKD,SAAgB,WAAW,CAAI,OAAgC,EAAE,aAAsC,EAAE,YAA8B;QACnI,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE;YACpB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,GAAG,YAAY,OAAO,EAAE,CAAC;gBACzB,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAgD,CAAC;QAElD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAgD,CAAC;QAC/F,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAmD,CAAC;QAExG,OAAO;YACH,QAAQ;YACR,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACrB,OAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACtD,CAAC;YACD,QAAQ;YACR,WAAW;SACmB,CAAC;IACvC,CAAC;IApBe,oBAAW,cAoB1B,CAAA;IAKD,SAAgB,eAAe,CAAI,OAAgD;QAC/E,OAAO,WAAW,CACd,OAAc,EACd,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,EAC5B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CACzB,CAAC;IACN,CAAC;IANe,wBAAe,kBAM9B,CAAA;AACL,CAAC,EAhEgB,QAAQ,wBAAR,QAAQ,QAgExB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/structures/path/builder.ts"],"names":[],"mappings":"AACA,OAAO,EACH,SAAS,EAGT,eAAe,EACf,aAAa,EAEb,aAAa,
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/structures/path/builder.ts"],"names":[],"mappings":"AACA,OAAO,EACH,SAAS,EAGT,eAAe,EACf,aAAa,EAEb,aAAa,EAGhB,MAAM,SAAS,CAAC;AAGjB,cAAc,SAAS,CAAC;AAmBxB,uDAAuD;AACvD,wBAAgB,KAAK,CAAC,KAAK,SAAS,MAAM,EAAE,EACxC,OAAO,EAAE,oBAAoB,EAC7B,GAAG,MAAM,EAAE,KAAK,GACjB,aAAa,CAAC,KAAK,CAAC,CAmFtB;AAqBD,eAAO,MAAM,KAAK,eAAU,CAAC;AAE7B;;;;;;;;EAQE;AACF,wBAAgB,SAAS,CAAC,IAAI,SAAS,SAAS,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAsD1F"}
|
|
@@ -16,6 +16,8 @@ const staticFactory = (strings) => {
|
|
|
16
16
|
defaultOptions = defaults;
|
|
17
17
|
return this;
|
|
18
18
|
},
|
|
19
|
+
withBuildTransform() { return this; },
|
|
20
|
+
withTemplateTransform() { return this; },
|
|
19
21
|
};
|
|
20
22
|
};
|
|
21
23
|
/** Tagged template literal to create a path builder */
|
|
@@ -23,10 +25,10 @@ function build(strings, ...params) {
|
|
|
23
25
|
if (params.length === 0) {
|
|
24
26
|
return staticFactory(strings);
|
|
25
27
|
}
|
|
26
|
-
const appendParts = [];
|
|
27
|
-
const prependParts = [];
|
|
28
28
|
let defaultOptions = undefined;
|
|
29
|
-
|
|
29
|
+
let buildTransforms = null;
|
|
30
|
+
let templateTransforms = null;
|
|
31
|
+
const build = (args, options, transforms = buildTransforms) => {
|
|
30
32
|
const parts = [];
|
|
31
33
|
const getValue = !args
|
|
32
34
|
? (() => null)
|
|
@@ -36,26 +38,36 @@ function build(strings, ...params) {
|
|
|
36
38
|
for (let i = 0; i < strings.length; ++i) {
|
|
37
39
|
parts.push(strings[i]);
|
|
38
40
|
if (i < params.length) {
|
|
39
|
-
|
|
41
|
+
let v = getValue(params[i], i);
|
|
40
42
|
if (v != null) {
|
|
43
|
+
const t = transforms?.[params[i]];
|
|
44
|
+
if (t) {
|
|
45
|
+
v = t(v);
|
|
46
|
+
}
|
|
41
47
|
parts.push(v);
|
|
42
48
|
}
|
|
43
49
|
}
|
|
44
50
|
}
|
|
45
|
-
return (0, utils_1.combineUrls)(utils_1.CombineOptions.merge(defaultOptions, options), ...
|
|
51
|
+
return (0, utils_1.combineUrls)(utils_1.CombineOptions.merge(defaultOptions, options), ...parts);
|
|
46
52
|
};
|
|
47
53
|
const template = (prefix, options) => {
|
|
48
54
|
let args;
|
|
55
|
+
const t = templateTransforms
|
|
56
|
+
? (v) => {
|
|
57
|
+
const t = templateTransforms[v];
|
|
58
|
+
return t ? t(v) : v;
|
|
59
|
+
}
|
|
60
|
+
: (v) => v;
|
|
49
61
|
if (typeof prefix === 'string') {
|
|
50
|
-
args = params.map(p => prefix + p);
|
|
62
|
+
args = params.map(p => prefix + t(p));
|
|
51
63
|
}
|
|
52
64
|
else if (typeof prefix === 'function') {
|
|
53
|
-
args = params.map(prefix);
|
|
65
|
+
args = params.map((p, i) => prefix(t(p), i));
|
|
54
66
|
}
|
|
55
67
|
else {
|
|
56
|
-
args = params;
|
|
68
|
+
args = params.map(t);
|
|
57
69
|
}
|
|
58
|
-
return build(args, options);
|
|
70
|
+
return build(args, options, {});
|
|
59
71
|
};
|
|
60
72
|
const result = {
|
|
61
73
|
build,
|
|
@@ -66,6 +78,14 @@ function build(strings, ...params) {
|
|
|
66
78
|
defaultOptions = defaults;
|
|
67
79
|
return this;
|
|
68
80
|
},
|
|
81
|
+
withBuildTransform(transforms) {
|
|
82
|
+
buildTransforms = transforms;
|
|
83
|
+
return this;
|
|
84
|
+
},
|
|
85
|
+
withTemplateTransform(transforms) {
|
|
86
|
+
templateTransforms = transforms;
|
|
87
|
+
return this;
|
|
88
|
+
},
|
|
69
89
|
};
|
|
70
90
|
return result;
|
|
71
91
|
}
|
|
@@ -131,6 +151,18 @@ function construct(...inputs) {
|
|
|
131
151
|
},
|
|
132
152
|
args,
|
|
133
153
|
as() { return this; },
|
|
154
|
+
withDefaults(defaults) {
|
|
155
|
+
outputs.forEach(o => o.withDefaults(defaults));
|
|
156
|
+
return this;
|
|
157
|
+
},
|
|
158
|
+
withBuildTransform(transforms) {
|
|
159
|
+
outputs.forEach(o => o.withBuildTransform(transforms));
|
|
160
|
+
return this;
|
|
161
|
+
},
|
|
162
|
+
withTemplateTransform(transforms) {
|
|
163
|
+
outputs.forEach(o => o.withTemplateTransform(transforms));
|
|
164
|
+
return this;
|
|
165
|
+
},
|
|
134
166
|
};
|
|
135
167
|
return result;
|
|
136
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/structures/path/builder.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/structures/path/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,14 @@ interface BaseBuilder<A extends readonly string[], B, P = TemplatePrefixing> {
|
|
|
35
35
|
as<TOther>(marker?: TOther): TOther extends readonly string[] ? SwitchBuilder<TOther> : (TOther extends BaseBuilder<any, any> ? TOther : never);
|
|
36
36
|
/** Allows to specify default combine options for the current builder instance. */
|
|
37
37
|
withDefaults: (defaults: CombineOptions) => this;
|
|
38
|
+
/** Allows to specify **build** transformation per key for the current builder instance. */
|
|
39
|
+
withBuildTransform: (transforms: TransformMap<A>) => this;
|
|
40
|
+
/** Allows to specify **template** transformation per key for the current builder instance. */
|
|
41
|
+
withTemplateTransform: (transforms: TransformMap<A>) => this;
|
|
38
42
|
}
|
|
43
|
+
export type TransformMap<A extends readonly string[]> = {
|
|
44
|
+
[K in A[number]]?: (v: ArgValue) => string;
|
|
45
|
+
};
|
|
39
46
|
type EmptyBuilderArgs = [] | Record<PropertyKey, never>;
|
|
40
47
|
type ReadonlyArr<TArr extends ReadonlyArray<any>> = TArr extends ReadonlyArray<infer T> ? ReadonlyArray<T> : never;
|
|
41
48
|
export interface Builder<TArgs extends readonly string[]> extends BaseBuilder<ReadonlyArr<TArgs>, BuilderArgs<TArgs[number], TArgs['length']>> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/structures/path/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC9E,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC9H,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;AAE5F,UAAU,WAAW,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,iBAAiB;IACvE;;;;;;OAMG;IACH,KAAK,EAAE,CACH,IAAI,CAAC,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,cAAc,KACvB,MAAM,CAAC;IAEZ;;;;;;;OAOG;IACH,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,MAAM,CAAC;IAE3D,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAEjB;;;;;;;MAOE;IACF,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,SAAS,SAAS,MAAM,EAAE,GACvD,aAAa,CAAC,MAAM,CAAC,GACrB,CAAC,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,GACjC,MAAM,GACN,KAAK,CACV,CAAC;IAKN,kFAAkF;IAClF,YAAY,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/structures/path/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,13 @@ export declare namespace DeferredGetter {
|
|
|
11
11
|
readonly busy: boolean;
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
+
/** Caches items by key which are resolve by a promise.
|
|
15
|
+
*
|
|
16
|
+
* Supports:
|
|
17
|
+
* - custom key adapter and parser for non-string keys.
|
|
18
|
+
* - batching of fetches.
|
|
19
|
+
* - auto-invalidation of cached items.
|
|
20
|
+
*/
|
|
14
21
|
export declare class PromiseCache<T, K = string> {
|
|
15
22
|
private readonly fetcher;
|
|
16
23
|
private readonly keyAdapter?;
|
|
@@ -18,7 +25,9 @@ export declare class PromiseCache<T, K = string> {
|
|
|
18
25
|
protected _itemsCache: Record<string, T | null | undefined>;
|
|
19
26
|
protected _itemsStatus: Record<string, boolean>;
|
|
20
27
|
private _fetchCache;
|
|
28
|
+
private _timestamps;
|
|
21
29
|
private _batch;
|
|
30
|
+
private _invalidationTimeMs;
|
|
22
31
|
private _logger;
|
|
23
32
|
private _version;
|
|
24
33
|
protected _busyCount: number;
|
|
@@ -26,7 +35,20 @@ export declare class PromiseCache<T, K = string> {
|
|
|
26
35
|
get busyCount(): number;
|
|
27
36
|
private _pk;
|
|
28
37
|
useLogger(nameOrLogger?: string | ILogger | undefined): this;
|
|
38
|
+
/**
|
|
39
|
+
* Provide a fetcher function that takes multiple ids and returns multiple results at once. Will be called with a slight delay to allow multiple ids to be collected.
|
|
40
|
+
*
|
|
41
|
+
* Warning: resolved array should have the same order as the input array.
|
|
42
|
+
*
|
|
43
|
+
* When provided, effectively replaces the main fetcher; but in case of fail, fallbacks to the main fetcher.
|
|
44
|
+
*/
|
|
29
45
|
useBatching(fetcher: (ids: K[]) => Promise<T[]>): this;
|
|
46
|
+
/**
|
|
47
|
+
* Enables auto-invalidation of cached items.
|
|
48
|
+
*
|
|
49
|
+
* @param ms Time in milliseconds after which the item will be considered invalid. If null, auto-invalidation is disabled.
|
|
50
|
+
*/
|
|
51
|
+
useInvalidationTime(ms: number | null): this;
|
|
30
52
|
getDeferred(key: K): DeferredGetter<T>;
|
|
31
53
|
getIsBusy(id: K): boolean;
|
|
32
54
|
getCurrent(id: K, initiateFetch?: boolean): T | null | undefined;
|
|
@@ -39,17 +61,18 @@ export declare class PromiseCache<T, K = string> {
|
|
|
39
61
|
keysParsed(): K[] | null;
|
|
40
62
|
clear(): void;
|
|
41
63
|
protected _set(key: string, item: T | null | undefined, promise: Promise<T> | undefined, busy: boolean | undefined): void;
|
|
64
|
+
protected getIsInvalidated(key: string): boolean;
|
|
42
65
|
/** @override */
|
|
43
66
|
protected setStatus(key: string, status: boolean): void;
|
|
44
67
|
/** @override */
|
|
45
68
|
protected setPromise(key: string, promise: Promise<T | null>): void;
|
|
46
69
|
/** @override */
|
|
70
|
+
protected storeResult(key: string, res: T | null): void;
|
|
71
|
+
/** @override */
|
|
47
72
|
protected onBeforeFetch(_key: string): void;
|
|
48
73
|
/** @override */
|
|
49
74
|
protected prepareResult(res: T | null): NonNullable<T> | null;
|
|
50
75
|
/** @override */
|
|
51
|
-
protected storeResult(key: string, res: T | null): void;
|
|
52
|
-
/** @override */
|
|
53
76
|
protected onFetchComplete(key: string): void;
|
|
54
77
|
/** @pure */
|
|
55
78
|
protected tryFetchInBatch(id: K): Promise<T | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseCache.d.ts","sourceRoot":"","sources":["../../src/structures/promiseCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,OAAO,EAAE,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC5B,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,yBAAiB,cAAc,CAAC;IAGrB,MAAM,KAAK;;;;KAIc,CAAC;CACpC;
|
|
1
|
+
{"version":3,"file":"promiseCache.d.ts","sourceRoot":"","sources":["../../src/structures/promiseCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,14 @@ var DeferredGetter;
|
|
|
12
12
|
get busy() { return false; },
|
|
13
13
|
};
|
|
14
14
|
})(DeferredGetter || (exports.DeferredGetter = DeferredGetter = {}));
|
|
15
|
+
const BATCHING_DELAY = 200;
|
|
16
|
+
/** Caches items by key which are resolve by a promise.
|
|
17
|
+
*
|
|
18
|
+
* Supports:
|
|
19
|
+
* - custom key adapter and parser for non-string keys.
|
|
20
|
+
* - batching of fetches.
|
|
21
|
+
* - auto-invalidation of cached items.
|
|
22
|
+
*/
|
|
15
23
|
class PromiseCache {
|
|
16
24
|
fetcher;
|
|
17
25
|
keyAdapter;
|
|
@@ -19,7 +27,9 @@ class PromiseCache {
|
|
|
19
27
|
_itemsCache = {};
|
|
20
28
|
_itemsStatus = {};
|
|
21
29
|
_fetchCache = {};
|
|
30
|
+
_timestamps = new Map();
|
|
22
31
|
_batch = null;
|
|
32
|
+
_invalidationTimeMs = null;
|
|
23
33
|
_logger = null;
|
|
24
34
|
_version = 0;
|
|
25
35
|
_busyCount = 0;
|
|
@@ -51,8 +61,24 @@ class PromiseCache {
|
|
|
51
61
|
}
|
|
52
62
|
return this;
|
|
53
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Provide a fetcher function that takes multiple ids and returns multiple results at once. Will be called with a slight delay to allow multiple ids to be collected.
|
|
66
|
+
*
|
|
67
|
+
* Warning: resolved array should have the same order as the input array.
|
|
68
|
+
*
|
|
69
|
+
* When provided, effectively replaces the main fetcher; but in case of fail, fallbacks to the main fetcher.
|
|
70
|
+
*/
|
|
54
71
|
useBatching(fetcher) {
|
|
55
|
-
this._batch = fetcher ? new throttle_1.ThrottleProcessor(fetcher,
|
|
72
|
+
this._batch = fetcher ? new throttle_1.ThrottleProcessor(fetcher, BATCHING_DELAY) : null;
|
|
73
|
+
return this;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Enables auto-invalidation of cached items.
|
|
77
|
+
*
|
|
78
|
+
* @param ms Time in milliseconds after which the item will be considered invalid. If null, auto-invalidation is disabled.
|
|
79
|
+
*/
|
|
80
|
+
useInvalidationTime(ms) {
|
|
81
|
+
this._invalidationTimeMs = ms;
|
|
56
82
|
return this;
|
|
57
83
|
}
|
|
58
84
|
getDeferred(key) {
|
|
@@ -70,7 +96,8 @@ class PromiseCache {
|
|
|
70
96
|
}
|
|
71
97
|
getCurrent(id, initiateFetch = true) {
|
|
72
98
|
const key = this._pk(id);
|
|
73
|
-
const
|
|
99
|
+
const isInvalid = this.getIsInvalidated(key);
|
|
100
|
+
const item = isInvalid ? undefined : this._itemsCache[key];
|
|
74
101
|
if (initiateFetch) {
|
|
75
102
|
this.get(id);
|
|
76
103
|
}
|
|
@@ -79,7 +106,8 @@ class PromiseCache {
|
|
|
79
106
|
}
|
|
80
107
|
get(id) {
|
|
81
108
|
const key = this._pk(id);
|
|
82
|
-
const
|
|
109
|
+
const isInvalid = this.getIsInvalidated(key);
|
|
110
|
+
const item = isInvalid ? undefined : this._itemsCache[key];
|
|
83
111
|
if (item !== undefined) {
|
|
84
112
|
this._logger?.log(key, 'item resolved to', item);
|
|
85
113
|
return Promise.resolve(item);
|
|
@@ -155,6 +183,13 @@ class PromiseCache {
|
|
|
155
183
|
_setX(key, this._itemsStatus, busy);
|
|
156
184
|
_setX(key, this._itemsCache, item);
|
|
157
185
|
}
|
|
186
|
+
getIsInvalidated(key) {
|
|
187
|
+
if (!this._invalidationTimeMs) {
|
|
188
|
+
return false;
|
|
189
|
+
}
|
|
190
|
+
const ts = this._timestamps.get(key);
|
|
191
|
+
return ts != null && Date.now() - ts > this._invalidationTimeMs;
|
|
192
|
+
}
|
|
158
193
|
/** @override */
|
|
159
194
|
setStatus(key, status) {
|
|
160
195
|
this._itemsStatus[key] = status;
|
|
@@ -164,6 +199,11 @@ class PromiseCache {
|
|
|
164
199
|
this._fetchCache[key] = promise;
|
|
165
200
|
}
|
|
166
201
|
/** @override */
|
|
202
|
+
storeResult(key, res) {
|
|
203
|
+
this._itemsCache[key] = res;
|
|
204
|
+
this._timestamps.set(key, Date.now());
|
|
205
|
+
}
|
|
206
|
+
/** @override */
|
|
167
207
|
onBeforeFetch(_key) {
|
|
168
208
|
++this._busyCount;
|
|
169
209
|
}
|
|
@@ -172,10 +212,6 @@ class PromiseCache {
|
|
|
172
212
|
return res || null;
|
|
173
213
|
}
|
|
174
214
|
/** @override */
|
|
175
|
-
storeResult(key, res) {
|
|
176
|
-
this._itemsCache[key] = res;
|
|
177
|
-
}
|
|
178
|
-
/** @override */
|
|
179
215
|
onFetchComplete(key) {
|
|
180
216
|
--this._busyCount;
|
|
181
217
|
delete this._fetchCache[key];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseCache.js","sourceRoot":"","sources":["../../src/structures/promiseCache.ts"],"names":[],"mappings":";;;AAAA,oDAA0D;AAC1D,sCAAkD;AAQlD,IAAiB,cAAc,CAQ9B;AARD,WAAiB,cAAc;IAC3B,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAO,IAAI,CAAC,CAAC;IAExC,oBAAK,GAAG;QACjB,IAAI,OAAO,KAAW,OAAO,IAAI,CAAC,CAAC,CAAC;QACpC,IAAI,OAAO,KAAoB,OAAO,gBAAgB,CAAC,CAAC,CAAC;QACzD,IAAI,IAAI,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC;KACA,CAAC;AACrC,CAAC,EARgB,cAAc,8BAAd,cAAc,QAQ9B;AAED,MAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"promiseCache.js","sourceRoot":"","sources":["../../src/structures/promiseCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ export declare class PromiseExtended<T, TCustomErrors extends Record<string, unk
|
|
|
47
47
|
static errored<T, TErrors extends Record<string, unknown>>(source: Error | Error[] | string): PromiseExtended<T, TErrors>;
|
|
48
48
|
onError(cb: Nullable<(data: PromiseExtended.ErrorData & TCustomErrors) => void>): this;
|
|
49
49
|
onSuccess(cb: Nullable<(data: T) => void>): this;
|
|
50
|
-
expectError<TName extends string, TError2 extends Error>(name: TName, ErrCtor: new (...args: any[]) => TError2, processor?: (value: TError2) => void): PromiseExtended<T, TCustomErrors & Record<TName, TError2>>;
|
|
50
|
+
expectError<TName extends string, TError2 extends Error>(name: TName, ErrCtor: new (...args: any[]) => TError2, processor?: (value: TError2) => void | Partial<TCustomErrors & Record<TName, TError2>>): PromiseExtended<T, TCustomErrors & Record<TName, TError2>>;
|
|
51
51
|
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null | undefined): PromiseExtended<TResult1 | TResult2, TCustomErrors>;
|
|
52
52
|
catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null | undefined): PromiseExtended<T | TResult, TCustomErrors>;
|
|
53
53
|
finally(onfinally?: (() => void) | null | undefined): this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseExtended.d.ts","sourceRoot":"","sources":["../../src/structures/promiseExtended.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,eAAe,CAAC,CAAC,EAAE,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAE,YAAW,OAAO,CAAC,CAAC,CAAC;IAEzH,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,SAAS,GAAG,IAAI,CAAQ;IAE1D,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqD;IAEtF,OAAO;WAIO,GAAG,CAAC,CAAC,EAAE,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;WAY9I,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;WAIzC,OAAO,CAAC,CAAC,EAAE,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,MAAM,GAAG,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;IAMzH,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,GAAG,aAAa,KAAK,IAAI,CAAC,GAAG,IAAI;IAYtF,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI;IAYhD,WAAW,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,KAAK,EAC1D,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,EACxC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"promiseExtended.d.ts","sourceRoot":"","sources":["../../src/structures/promiseExtended.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,8 +89,8 @@ class PromiseExtended {
|
|
|
89
89
|
this._errorProcessors.push(errorData => {
|
|
90
90
|
const src = errorData?.source;
|
|
91
91
|
if (src && src instanceof ErrCtor) {
|
|
92
|
-
processor?.(src);
|
|
93
|
-
Object.assign(errorData, { [name]:
|
|
92
|
+
const res = processor?.(src);
|
|
93
|
+
Object.assign(errorData, { [name]: src }, res);
|
|
94
94
|
}
|
|
95
95
|
});
|
|
96
96
|
return this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promiseExtended.js","sourceRoot":"","sources":["../../src/structures/promiseExtended.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAa,eAAe;IAEd,MAAM,GAAqC,IAAI,CAAC;IAElD,QAAQ,CAAa;IACZ,gBAAgB,GAAkD,EAAE,CAAC;IAEtF,YAAoB,OAAmB;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAe,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,GAAG,CAAsE,MAAuC;QAC1H,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK,UAAU;YACxC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;YACxB,CAAC,CAAC,MAAM,CAAC;QAEb,IAAI,OAAO,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,eAAe,CAAa,OAAO,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,IAAO;QAC9B,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IAEM,MAAM,CAAC,OAAO,CAA6C,MAAgC;QAC9F,MAAM,GAAG,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpE,MAAM,OAAO,GAAG,IAAI,eAAe,CAAa,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,OAAO,CAAC,EAAuE;QAClF,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxB,CAAC;gBACD,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,EAA+B;QAC5C,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACf,EAAE,CAAC,IAAI,CAAC,CAAC;gBACb,CAAC;gBACD,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,WAAW,CACd,IAAW,EACX,OAAwC,EACxC,
|
|
1
|
+
{"version":3,"file":"promiseExtended.js","sourceRoot":"","sources":["../../src/structures/promiseExtended.ts"],"names":[],"mappings":"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"}
|
package/types/functions.d.ts
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { AnyFunction } from './misc';
|
|
2
|
+
export type TypedFn<A extends unknown[], R> = (...args: A) => R;
|
|
3
|
+
export type Asyncify<T> = {
|
|
4
|
+
[P in keyof T]: T[P] extends TypedFn<unknown[], Promise<unknown>> ? T[P] : (T[P] extends TypedFn<infer A, infer R> ? (...args: A) => Promise<R> : T[P]);
|
|
5
|
+
};
|
|
6
|
+
export type Awaitify<T> = {
|
|
7
|
+
[P in keyof T]: T[P] extends TypedFn<infer A, Promise<infer R>> ? (...args: A) => R : T[P];
|
|
8
|
+
};
|
|
2
9
|
export type PropertiesOf<T> = Exclude<{
|
|
3
10
|
[K in keyof T]: T[K] extends AnyFunction ? never : K;
|
|
4
11
|
}[keyof T], undefined>;
|
|
5
12
|
export type RemoveFunctionFields<T> = {
|
|
6
13
|
readonly [P in PropertiesOf<T>]: T[P];
|
|
7
14
|
};
|
|
15
|
+
export type RemoveFirstParameter<T> = T extends (a: any, ...args: infer A) => infer R ? (...args: A) => R : T;
|
|
8
16
|
//# sourceMappingURL=functions.d.ts.map
|
package/types/functions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/types/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC;KACjC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,GAAG,CAAC;CACvD,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEvB,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI;IAClC,QAAQ,EAAE,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC"}
|
|
1
|
+
{"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/types/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;AAEhE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACrB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,GAC3D,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACnC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAC1B,CAAC,CAAC,CAAC,CAAC,CACT;CACR,CAAC;AAEF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACrB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GACzD,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GACjB,CAAC,CAAC,CAAC,CAAC;CACb,CAAC;AAGF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC;KACjC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,GAAG,CAAC;CACvD,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEvB,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI;IAClC,QAAQ,EAAE,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GAC/E,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GACjB,CAAC,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export interface IStorage {
|
|
2
|
-
getValue(key: string): Promise<string | null>;
|
|
3
|
-
setValue(key: string, value: string): Promise<void>;
|
|
4
|
-
hasValue(key: string): Promise<boolean>;
|
|
5
|
-
remove(key: string): Promise<void>;
|
|
6
|
-
}
|
|
7
|
-
export interface IStorageSync {
|
|
8
|
-
getValue(key: string): string | null;
|
|
9
|
-
setValue(key: string, value: string): void;
|
|
10
|
-
removeValue(key: string): boolean;
|
|
11
|
-
hasValue(key: string): boolean;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=abstractions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abstractions.d.ts","sourceRoot":"","sources":["../../src/storage/abstractions.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAClC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abstractions.js","sourceRoot":"","sources":["../../src/storage/abstractions.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IStorage, IStorageSync } from './abstractions';
|
|
2
|
-
export declare class StorageAsyncWrapper implements IStorage {
|
|
3
|
-
readonly webStorage: IStorageSync;
|
|
4
|
-
constructor(webStorage: IStorageSync);
|
|
5
|
-
getValue(key: string): Promise<string | null>;
|
|
6
|
-
setValue(key: string, value: string): Promise<void>;
|
|
7
|
-
hasValue(key: string): Promise<boolean>;
|
|
8
|
-
remove(key: string): Promise<void>;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=asyncWrapper.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"asyncWrapper.d.ts","sourceRoot":"","sources":["../../src/storage/asyncWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAExD,qBAAa,mBAAoB,YAAW,QAAQ;IAEpC,QAAQ,CAAC,UAAU,EAAE,YAAY;gBAAxB,UAAU,EAAE,YAAY;IAE7C,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAKnC,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,MAAM,CAAC,GAAG,EAAE,MAAM;CAIrB"}
|
package/storage/asyncWrapper.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.StorageAsyncWrapper = void 0;
|
|
4
|
-
class StorageAsyncWrapper {
|
|
5
|
-
webStorage;
|
|
6
|
-
constructor(webStorage) {
|
|
7
|
-
this.webStorage = webStorage;
|
|
8
|
-
}
|
|
9
|
-
getValue(key) {
|
|
10
|
-
return Promise.resolve(this.webStorage.getValue(key));
|
|
11
|
-
}
|
|
12
|
-
setValue(key, value) {
|
|
13
|
-
this.webStorage.setValue(key, value);
|
|
14
|
-
return Promise.resolve();
|
|
15
|
-
}
|
|
16
|
-
hasValue(key) {
|
|
17
|
-
return Promise.resolve(this.webStorage.hasValue(key));
|
|
18
|
-
}
|
|
19
|
-
remove(key) {
|
|
20
|
-
this.webStorage.removeValue(key);
|
|
21
|
-
return Promise.resolve();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.StorageAsyncWrapper = StorageAsyncWrapper;
|
|
25
|
-
//# sourceMappingURL=asyncWrapper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"asyncWrapper.js","sourceRoot":"","sources":["../../src/storage/asyncWrapper.ts"],"names":[],"mappings":";;;AAEA,MAAa,mBAAmB;IAEP;IAArB,YAAqB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAI,CAAC;IAElD,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,KAAa;QAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,GAAW;QACd,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACJ;AArBD,kDAqBC"}
|
package/storage/keyStorage.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { IStorage } from './abstractions';
|
|
2
|
-
export declare class KeyStorage<T = string> {
|
|
3
|
-
readonly storage: IStorage;
|
|
4
|
-
readonly key: string;
|
|
5
|
-
private _convertInput;
|
|
6
|
-
private _convertOutput;
|
|
7
|
-
constructor(storage: IStorage, key: string);
|
|
8
|
-
addConverters<K>(convertInput: (v: K) => string, convertOutput: (s: string | null) => K): KeyStorage<K>;
|
|
9
|
-
addJSONConverters<K>(): KeyStorage<K>;
|
|
10
|
-
get(): Promise<T | null>;
|
|
11
|
-
set(v: T): Promise<void>;
|
|
12
|
-
clean(): Promise<void>;
|
|
13
|
-
getHasValue(): Promise<boolean>;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=keyStorage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyStorage.d.ts","sourceRoot":"","sources":["../../src/storage/keyStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,qBAAa,UAAU,CAAC,CAAC,GAAG,MAAM;IAKlB,QAAQ,CAAC,OAAO,EAAE,QAAQ;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM;IAH5D,OAAO,CAAC,aAAa,CAAiD;IACtE,OAAO,CAAC,cAAc,CAAmD;gBAEpD,OAAO,EAAE,QAAQ,EAAW,GAAG,EAAE,MAAM;IAE5D,aAAa,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,CAAC;IAOvF,iBAAiB,CAAC,CAAC;IAOb,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKxB,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAGzC"}
|
package/storage/keyStorage.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KeyStorage = void 0;
|
|
4
|
-
class KeyStorage {
|
|
5
|
-
storage;
|
|
6
|
-
key;
|
|
7
|
-
_convertInput = v => v;
|
|
8
|
-
_convertOutput = s => s;
|
|
9
|
-
constructor(storage, key) {
|
|
10
|
-
this.storage = storage;
|
|
11
|
-
this.key = key;
|
|
12
|
-
}
|
|
13
|
-
addConverters(convertInput, convertOutput) {
|
|
14
|
-
const res = this;
|
|
15
|
-
res._convertInput = convertInput;
|
|
16
|
-
res._convertOutput = convertOutput;
|
|
17
|
-
return res;
|
|
18
|
-
}
|
|
19
|
-
addJSONConverters() {
|
|
20
|
-
return this.addConverters(v => JSON.stringify(v), s => JSON.parse(s || 'null'));
|
|
21
|
-
}
|
|
22
|
-
async get() {
|
|
23
|
-
const res = await this.storage.getValue(this.key);
|
|
24
|
-
return this._convertOutput(res);
|
|
25
|
-
}
|
|
26
|
-
async set(v) {
|
|
27
|
-
const data = this._convertInput(v);
|
|
28
|
-
return this.storage.setValue(this.key, data);
|
|
29
|
-
}
|
|
30
|
-
async clean() {
|
|
31
|
-
await this.storage.remove(this.key);
|
|
32
|
-
}
|
|
33
|
-
getHasValue() {
|
|
34
|
-
return this.storage.hasValue(this.key);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
exports.KeyStorage = KeyStorage;
|
|
38
|
-
//# sourceMappingURL=keyStorage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyStorage.js","sourceRoot":"","sources":["../../src/storage/keyStorage.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IAKE;IAA4B;IAHzC,aAAa,GAAqB,CAAC,CAAC,EAAE,CAAC,CAAsB,CAAC;IAC9D,cAAc,GAA4B,CAAC,CAAC,EAAE,CAAC,CAAiB,CAAC;IAEzE,YAAqB,OAAiB,EAAW,GAAW;QAAvC,YAAO,GAAP,OAAO,CAAU;QAAW,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAEjE,aAAa,CAAI,YAA8B,EAAE,aAAsC;QACnF,MAAM,GAAG,GAAG,IAAgC,CAAC;QAC7C,GAAG,CAAC,aAAa,GAAG,YAAY,CAAC;QACjC,GAAG,CAAC,cAAc,GAAG,aAAa,CAAC;QACnC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,aAAa,CACrB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAM,CACpC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,GAAG;QACL,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,CAAI;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,KAAK;QACd,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;CACJ;AAtCD,gCAsCC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { IStorageSync } from './abstractions';
|
|
2
|
-
export declare class KeyStorageSync {
|
|
3
|
-
readonly storage: IStorageSync;
|
|
4
|
-
readonly key: string;
|
|
5
|
-
constructor(storage: IStorageSync, key: string);
|
|
6
|
-
get value(): string | null;
|
|
7
|
-
set value(v: string);
|
|
8
|
-
clean(): void;
|
|
9
|
-
getHasValue(): boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare class KeyStorageSyncConverted<T> {
|
|
12
|
-
readonly input: (v: T) => string;
|
|
13
|
-
readonly output: (s: string | null) => T;
|
|
14
|
-
private readonly _storage;
|
|
15
|
-
constructor(storage: IStorageSync, key: string, input?: (v: T) => string, output?: (s: string | null) => T);
|
|
16
|
-
get value(): T | null;
|
|
17
|
-
set value(v: T);
|
|
18
|
-
clean(): void;
|
|
19
|
-
getHasValue(): boolean;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=keyStorage.sync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyStorage.sync.d.ts","sourceRoot":"","sources":["../../src/storage/keyStorage.sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,cAAc;IACX,QAAQ,CAAC,OAAO,EAAE,YAAY;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM;gBAA3C,OAAO,EAAE,YAAY,EAAW,GAAG,EAAE,MAAM;IAEhE,IAAI,KAAK,IAAI,MAAM,GAAG,IAAI,CAA4C;IACtE,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,EAAyC;IAErD,KAAK;IAIL,WAAW;CAGrB;AAED,qBAAa,uBAAuB,CAAC,CAAC;IAM9B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM;IAChC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,CAAC;IAN5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;gBAGtC,OAAO,EAAE,YAAY,EACrB,GAAG,EAAE,MAAM,EACF,KAAK,GAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAiC,EAClD,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,CAAuC;IAKlF,IAAI,KAAK,IAAI,CAAC,GAAG,IAAI,CAA6C;IAClE,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAA0C;IAEjD,KAAK;IAIL,WAAW;CAGrB"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KeyStorageSyncConverted = exports.KeyStorageSync = void 0;
|
|
4
|
-
class KeyStorageSync {
|
|
5
|
-
storage;
|
|
6
|
-
key;
|
|
7
|
-
constructor(storage, key) {
|
|
8
|
-
this.storage = storage;
|
|
9
|
-
this.key = key;
|
|
10
|
-
}
|
|
11
|
-
get value() { return this.storage.getValue(this.key); }
|
|
12
|
-
set value(v) { this.storage.setValue(this.key, v); }
|
|
13
|
-
clean() {
|
|
14
|
-
this.storage.removeValue(this.key);
|
|
15
|
-
}
|
|
16
|
-
getHasValue() {
|
|
17
|
-
return this.storage.hasValue(this.key);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.KeyStorageSync = KeyStorageSync;
|
|
21
|
-
class KeyStorageSyncConverted {
|
|
22
|
-
input;
|
|
23
|
-
output;
|
|
24
|
-
_storage;
|
|
25
|
-
constructor(storage, key, input = (v => JSON.stringify(v)), output = (s => JSON.parse(s || 'null'))) {
|
|
26
|
-
this.input = input;
|
|
27
|
-
this.output = output;
|
|
28
|
-
this._storage = new KeyStorageSync(storage, key);
|
|
29
|
-
}
|
|
30
|
-
get value() { return this.output(this._storage.value); }
|
|
31
|
-
set value(v) { this._storage.value = this.input(v); }
|
|
32
|
-
clean() {
|
|
33
|
-
this._storage.clean();
|
|
34
|
-
}
|
|
35
|
-
getHasValue() {
|
|
36
|
-
return this._storage.getHasValue();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
exports.KeyStorageSyncConverted = KeyStorageSyncConverted;
|
|
40
|
-
//# sourceMappingURL=keyStorage.sync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyStorage.sync.js","sourceRoot":"","sources":["../../src/storage/keyStorage.sync.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IACF;IAAgC;IAArD,YAAqB,OAAqB,EAAW,GAAW;QAA3C,YAAO,GAAP,OAAO,CAAc;QAAW,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAErE,IAAI,KAAK,KAAoB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,KAAK,CAAC,CAAS,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,KAAK;QACR,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;CACJ;AAbD,wCAaC;AAED,MAAa,uBAAuB;IAMnB;IACA;IANI,QAAQ,CAAiB;IAE1C,YACI,OAAqB,EACrB,GAAW,EACF,QAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAClD,SAAkC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAM,CAAC;QADrE,UAAK,GAAL,KAAK,CAA6C;QAClD,WAAM,GAAN,MAAM,CAA+D;QAE9E,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,KAAK,KAAe,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClE,IAAI,KAAK,CAAC,CAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,KAAK;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;CACJ;AAtBD,0DAsBC"}
|