@sphereon/ssi-sdk.kv-store-temp 0.33.1-next.3 → 0.33.1-next.68

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.
Files changed (60) hide show
  1. package/dist/index.cjs +709 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.d.cts +324 -0
  4. package/dist/index.d.ts +321 -8
  5. package/dist/index.js +676 -27
  6. package/dist/index.js.map +1 -1
  7. package/package.json +25 -12
  8. package/src/__tests__/keyv.test.ts +3 -3
  9. package/src/__tests__/kvstore.test.ts +1 -0
  10. package/src/store-adapters/typeorm/entities/keyValueStoreEntity.ts +3 -5
  11. package/src/store-adapters/typeorm/index.ts +1 -3
  12. package/dist/index.d.ts.map +0 -1
  13. package/dist/key-value-store.d.ts +0 -27
  14. package/dist/key-value-store.d.ts.map +0 -1
  15. package/dist/key-value-store.js +0 -123
  16. package/dist/key-value-store.js.map +0 -1
  17. package/dist/key-value-types.d.ts +0 -118
  18. package/dist/key-value-types.d.ts.map +0 -1
  19. package/dist/key-value-types.js +0 -3
  20. package/dist/key-value-types.js.map +0 -1
  21. package/dist/keyv/keyv-types.d.ts +0 -56
  22. package/dist/keyv/keyv-types.d.ts.map +0 -1
  23. package/dist/keyv/keyv-types.js +0 -3
  24. package/dist/keyv/keyv-types.js.map +0 -1
  25. package/dist/keyv/keyv.d.ts +0 -48
  26. package/dist/keyv/keyv.d.ts.map +0 -1
  27. package/dist/keyv/keyv.js +0 -302
  28. package/dist/keyv/keyv.js.map +0 -1
  29. package/dist/store-adapters/index.d.ts +0 -3
  30. package/dist/store-adapters/index.d.ts.map +0 -1
  31. package/dist/store-adapters/index.js +0 -19
  32. package/dist/store-adapters/index.js.map +0 -1
  33. package/dist/store-adapters/tiered/index.d.ts +0 -29
  34. package/dist/store-adapters/tiered/index.d.ts.map +0 -1
  35. package/dist/store-adapters/tiered/index.js +0 -198
  36. package/dist/store-adapters/tiered/index.js.map +0 -1
  37. package/dist/store-adapters/tiered/types.d.ts +0 -14
  38. package/dist/store-adapters/tiered/types.d.ts.map +0 -1
  39. package/dist/store-adapters/tiered/types.js +0 -3
  40. package/dist/store-adapters/tiered/types.js.map +0 -1
  41. package/dist/store-adapters/typeorm/entities/keyValueStoreEntity.d.ts +0 -11
  42. package/dist/store-adapters/typeorm/entities/keyValueStoreEntity.d.ts.map +0 -1
  43. package/dist/store-adapters/typeorm/entities/keyValueStoreEntity.js +0 -38
  44. package/dist/store-adapters/typeorm/entities/keyValueStoreEntity.js.map +0 -1
  45. package/dist/store-adapters/typeorm/index.d.ts +0 -39
  46. package/dist/store-adapters/typeorm/index.d.ts.map +0 -1
  47. package/dist/store-adapters/typeorm/index.js +0 -141
  48. package/dist/store-adapters/typeorm/index.js.map +0 -1
  49. package/dist/store-adapters/typeorm/migrations/1.createKVDatabase.d.ts +0 -14
  50. package/dist/store-adapters/typeorm/migrations/1.createKVDatabase.d.ts.map +0 -1
  51. package/dist/store-adapters/typeorm/migrations/1.createKVDatabase.js +0 -59
  52. package/dist/store-adapters/typeorm/migrations/1.createKVDatabase.js.map +0 -1
  53. package/dist/store-adapters/typeorm/migrations/index.d.ts +0 -10
  54. package/dist/store-adapters/typeorm/migrations/index.d.ts.map +0 -1
  55. package/dist/store-adapters/typeorm/migrations/index.js +0 -13
  56. package/dist/store-adapters/typeorm/migrations/index.js.map +0 -1
  57. package/dist/store-adapters/typeorm/types.d.ts +0 -22
  58. package/dist/store-adapters/typeorm/types.d.ts.map +0 -1
  59. package/dist/store-adapters/typeorm/types.js +0 -3
  60. package/dist/store-adapters/typeorm/types.js.map +0 -1
@@ -1,48 +0,0 @@
1
- import { EventEmitter } from 'events';
2
- import { KeyvDeserializedData, KeyvOptions, KeyvStore, KeyvStoredData } from './keyv-types';
3
- /**
4
- * Please note that this is code adapted from @link https://github.com/jaredwray/keyv to support Typescript and ESM in Veramo
5
- *
6
- * The code should support the storage plugins available for the keyv project.
7
- * Veramo itself supports NodeJS, Browser and React-Native environment.
8
- * Please be aware that these requirements probably aren't true for any keyv storage plugins.
9
- *
10
- * One of the big changes compared to the upstream project is that this port does not have dynamic loading of store-adapters based on URIs.
11
- * We believe that any Veramo Key Value store should use explicitly defined store-adapters.
12
- *
13
- * The port is part of the Veramo Key Value Store module, as we do not want to make an official maintained port out of it.
14
- * Veramo exposes its own API/interfaces for the Key Value store, meaning we could also support any other implementation in the future
15
- *
16
- * The Veramo kv-store module provides out of the box support for in memory/maps, sqlite and typeorm implementations,
17
- * including a tiered local/remote implementation that support all environments.
18
- *
19
- * We welcome any new storage modules
20
- */
21
- export declare class Keyv<Value = any> extends EventEmitter implements KeyvStore<Value> {
22
- readonly opts: KeyvOptions<Value>;
23
- readonly namespace: string;
24
- iterator?: (namespace?: string) => AsyncGenerator<any, void>;
25
- constructor(uri?: string | Map<string, Value | undefined> | KeyvStore<Value> | undefined, options?: KeyvOptions<Value>);
26
- get store(): Required<KeyvStore<Value>>;
27
- get deserialize(): (data: any) => import("@veramo/utils").OrPromise<KeyvDeserializedData<Value> | undefined>;
28
- get serialize(): (data: KeyvDeserializedData<Value>) => import("@veramo/utils").OrPromise<string | undefined>;
29
- _checkIterableAdapter(): any;
30
- _getKeyPrefix(key: string): string;
31
- _getKeyPrefixArray(keys: string[]): string[];
32
- _getKeyUnprefix(key: string): string;
33
- getMany(keys: string[], options?: {
34
- raw?: boolean;
35
- }): Promise<Array<KeyvStoredData<Value>>>;
36
- private isMapWithEntries;
37
- private getFromMapWithPrefix;
38
- get(key: string | string[], options?: {
39
- raw?: boolean;
40
- }): Promise<Value | string | KeyvDeserializedData<Value> | KeyvStoredData<Value>[] | undefined>;
41
- private isExpired;
42
- set(key: string, value: Value, ttl?: number): Promise<boolean>;
43
- delete(key: string | string[]): Promise<boolean>;
44
- clear(): Promise<void>;
45
- has(key: string): Promise<boolean>;
46
- disconnect(): void;
47
- }
48
- //# sourceMappingURL=keyv.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyv.d.ts","sourceRoot":"","sources":["../../src/keyv/keyv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE3F;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,IAAI,CAAC,KAAK,GAAG,GAAG,CAAE,SAAQ,YAAa,YAAW,SAAS,CAAC,KAAK,CAAC;IAC7E,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;gBAEhD,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC;IAkEtH,IAAI,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAEtC;IAED,IAAI,WAAW,8FAEd;IAED,IAAI,SAAS,iGAEZ;IAED,qBAAqB;IAOrB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIlC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAI5C,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAoCjG,OAAO,CAAC,gBAAgB;YAIV,oBAAoB;IAgB5B,GAAG,CACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1B,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,GAAG,SAAS,CAAC;IAuC9F,OAAO,CAAC,SAAS;IAWjB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,MAAM;IAwB3C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAmBvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,GAAG,CAAC,GAAG,EAAE,MAAM;IAYf,UAAU;CAKX"}
package/dist/keyv/keyv.js DELETED
@@ -1,302 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __asyncValues = (this && this.__asyncValues) || function (o) {
12
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
- var m = o[Symbol.asyncIterator], i;
14
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
- };
18
- var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
19
- var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
20
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
21
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
22
- return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
23
- function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
24
- function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
25
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
26
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
27
- function fulfill(value) { resume("next", value); }
28
- function reject(value) { resume("throw", value); }
29
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
30
- };
31
- var __importDefault = (this && this.__importDefault) || function (mod) {
32
- return (mod && mod.__esModule) ? mod : { "default": mod };
33
- };
34
- Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.Keyv = void 0;
36
- const events_1 = require("events");
37
- const json_buffer_1 = __importDefault(require("json-buffer"));
38
- /**
39
- * Please note that this is code adapted from @link https://github.com/jaredwray/keyv to support Typescript and ESM in Veramo
40
- *
41
- * The code should support the storage plugins available for the keyv project.
42
- * Veramo itself supports NodeJS, Browser and React-Native environment.
43
- * Please be aware that these requirements probably aren't true for any keyv storage plugins.
44
- *
45
- * One of the big changes compared to the upstream project is that this port does not have dynamic loading of store-adapters based on URIs.
46
- * We believe that any Veramo Key Value store should use explicitly defined store-adapters.
47
- *
48
- * The port is part of the Veramo Key Value Store module, as we do not want to make an official maintained port out of it.
49
- * Veramo exposes its own API/interfaces for the Key Value store, meaning we could also support any other implementation in the future
50
- *
51
- * The Veramo kv-store module provides out of the box support for in memory/maps, sqlite and typeorm implementations,
52
- * including a tiered local/remote implementation that support all environments.
53
- *
54
- * We welcome any new storage modules
55
- */
56
- class Keyv extends events_1.EventEmitter {
57
- constructor(uri, options) {
58
- super();
59
- const emitErrors = (options === null || options === void 0 ? void 0 : options.emitErrors) === undefined ? true : options.emitErrors;
60
- uri = uri !== null && uri !== void 0 ? uri : options === null || options === void 0 ? void 0 : options.uri;
61
- /*if (!uri) {
62
- throw Error('No URI provided')
63
- }*/
64
- this.opts = Object.assign(Object.assign({ namespace: 'keyv', serialize: json_buffer_1.default.stringify, deserialize: json_buffer_1.default.parse }, (typeof uri === 'string' ? { uri } : uri)), options);
65
- if (!this.opts.store) {
66
- if (typeof uri !== 'string') {
67
- this.opts.store = uri;
68
- } /* else {
69
- const adapterOptions = { ...this.opts }
70
- this.opts.store = loadStore(adapterOptions)
71
- }*/
72
- }
73
- if (!this.opts.store) {
74
- throw Error('No store');
75
- }
76
- if (this.opts.compression) {
77
- const compression = this.opts.compression;
78
- this.opts.serialize = compression.serialize.bind(compression);
79
- this.opts.deserialize = compression.deserialize.bind(compression);
80
- }
81
- if (typeof this.opts.store.on === 'function' && emitErrors) {
82
- this.opts.store.on('error', (error) => this.emit('error', error));
83
- }
84
- this.opts.store.namespace = this.opts.namespace || 'keyv';
85
- this.namespace = this.opts.store.namespace;
86
- const generateIterator = (iterator, keyv) => function () {
87
- return __asyncGenerator(this, arguments, function* () {
88
- var _a, e_1, _b, _c;
89
- try {
90
- for (var _d = true, _e = __asyncValues(typeof iterator === 'function' ? iterator(keyv.store.namespace) : iterator), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) {
91
- _c = _f.value;
92
- _d = false;
93
- const [key, raw] = _c;
94
- const data = yield __await(keyv.deserialize(raw));
95
- if (keyv.store.namespace && !key.includes(keyv.store.namespace)) {
96
- continue;
97
- }
98
- if (data && typeof data.expires === 'number' && Date.now() > data.expires) {
99
- keyv.delete(key);
100
- continue;
101
- }
102
- yield yield __await([keyv._getKeyUnprefix(key), data === null || data === void 0 ? void 0 : data.value]);
103
- }
104
- }
105
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
106
- finally {
107
- try {
108
- if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e));
109
- }
110
- finally { if (e_1) throw e_1.error; }
111
- }
112
- });
113
- };
114
- // Attach iterators
115
- // @ts-ignore
116
- if (typeof this.store[Symbol.iterator] === 'function' && this.store instanceof Map) {
117
- this.iterator = generateIterator(this.store, this);
118
- }
119
- else if (typeof this.store.iterator === 'function' && this.store.opts && this._checkIterableAdapter()) {
120
- this.iterator = generateIterator(this.store.iterator.bind(this.store), this);
121
- }
122
- }
123
- get store() {
124
- return this.opts.store;
125
- }
126
- get deserialize() {
127
- return this.opts.deserialize;
128
- }
129
- get serialize() {
130
- return this.opts.serialize;
131
- }
132
- _checkIterableAdapter() {
133
- return ((this.store.opts.dialect && iterableAdapters.includes(this.store.opts.dialect)) ||
134
- (this.store.opts.url && iterableAdapters.findIndex((element) => this.store.opts.url.includes(element)) >= 0));
135
- }
136
- _getKeyPrefix(key) {
137
- return `${this.opts.namespace}:${key}`;
138
- }
139
- _getKeyPrefixArray(keys) {
140
- return keys.map((key) => this._getKeyPrefix(key));
141
- }
142
- _getKeyUnprefix(key) {
143
- return key.split(':').splice(1).join(':');
144
- }
145
- getMany(keys, options) {
146
- return __awaiter(this, void 0, void 0, function* () {
147
- const keyPrefixed = this._getKeyPrefixArray(keys);
148
- let promise;
149
- if (this.store.getMany !== undefined) {
150
- // todo: Probably wise to check expired ValueData here, if the getMany does not implement this feature itself!
151
- promise = this.store.getMany(keyPrefixed, options);
152
- }
153
- else if (this.isMapWithEntries(this.store)) {
154
- // Handle Map-based stores with prefix matching
155
- promise = this.getFromMapWithPrefix(keyPrefixed);
156
- }
157
- else {
158
- promise = Promise.all(keyPrefixed.map((k) => this.store.get(k, options)));
159
- }
160
- const allValues = Promise.resolve(promise);
161
- const results = [];
162
- return Promise.resolve(allValues)
163
- .then((all) => {
164
- const entries = Array.isArray(all) ? all : [all];
165
- entries.forEach((data, index) => {
166
- let result = typeof data === 'string' ? this.deserialize(data) : !!data && this.opts.compression ? this.deserialize(data) : data;
167
- if (result && typeof result === 'object' && 'expires' in result && typeof result.expires === 'number' && Date.now() > result.expires) {
168
- this.delete(keys[index]);
169
- result = undefined;
170
- }
171
- const final = (options && options.raw ? result : result && typeof result === 'object' && 'value' in result ? result.value : result);
172
- results.push(final);
173
- });
174
- })
175
- .then(() => Promise.all(results));
176
- });
177
- }
178
- isMapWithEntries(store) {
179
- return store instanceof Map && typeof store.entries === 'function';
180
- }
181
- getFromMapWithPrefix(prefixes) {
182
- return __awaiter(this, void 0, void 0, function* () {
183
- if (!this.isMapWithEntries(this.store)) {
184
- return [];
185
- }
186
- const map = this.store;
187
- return prefixes.flatMap((prefix) => {
188
- const matchedValues = Array.from(map.entries())
189
- .filter(([key]) => key.startsWith(prefix))
190
- .map(([, value]) => value);
191
- return matchedValues.length > 0 ? matchedValues : [undefined];
192
- });
193
- });
194
- }
195
- get(key, options) {
196
- return __awaiter(this, void 0, void 0, function* () {
197
- const isArray = Array.isArray(key);
198
- return Promise.resolve()
199
- .then(() => (isArray ? this.getMany(this._getKeyPrefixArray(key), options) : this.store.get(this._getKeyPrefix(key))))
200
- .then((data) => (typeof data === 'string' ? this.deserialize(data) : this.opts.compression ? this.deserialize(data) : data))
201
- .then((data) => {
202
- if (data === undefined || data === null) {
203
- return undefined;
204
- }
205
- const rows = Array.isArray(data) ? data : [data];
206
- if (isArray) {
207
- const result = [];
208
- for (let row of rows) {
209
- if (row === undefined || row === null) {
210
- result.push(undefined);
211
- continue;
212
- }
213
- if (this.isExpired(row)) {
214
- this.delete(key).then(() => undefined);
215
- result.push(undefined);
216
- }
217
- else {
218
- result.push(options && options.raw ? row : toValue(row));
219
- }
220
- }
221
- return result;
222
- }
223
- else if (!Array.isArray(data)) {
224
- if (this.isExpired(data)) {
225
- return this.delete(key).then(() => undefined);
226
- }
227
- }
228
- return options && options.raw ? data : Array.isArray(data) ? data.map((d) => toValue(d)) : toValue(data);
229
- });
230
- });
231
- }
232
- isExpired(data) {
233
- return (typeof data !== 'string' &&
234
- data &&
235
- typeof data === 'object' &&
236
- 'expires' in data &&
237
- typeof data.expires === 'number' &&
238
- Date.now() > data.expires);
239
- }
240
- set(key, value, ttl) {
241
- const keyPrefixed = this._getKeyPrefix(key);
242
- if (typeof ttl === 'undefined') {
243
- ttl = this.opts.ttl;
244
- }
245
- if (ttl === 0) {
246
- ttl = undefined;
247
- }
248
- // @ts-ignore
249
- return Promise.resolve()
250
- .then(() => {
251
- const expires = typeof ttl === 'number' ? Date.now() + ttl : undefined;
252
- if (typeof value === 'symbol') {
253
- this.emit('error', 'symbol cannot be serialized');
254
- }
255
- const input = { value, expires };
256
- return this.serialize(input);
257
- })
258
- .then((value) => this.store.set(keyPrefixed, value, ttl))
259
- .then(() => true);
260
- }
261
- delete(key) {
262
- if (!Array.isArray(key)) {
263
- const keyPrefixed = this._getKeyPrefix(key);
264
- return Promise.resolve().then(() => this.store.delete(keyPrefixed));
265
- }
266
- const keyPrefixed = this._getKeyPrefixArray(key);
267
- if (this.store.deleteMany !== undefined) {
268
- return Promise.resolve().then(() => this.store.deleteMany(keyPrefixed));
269
- }
270
- const promises = [];
271
- for (const key of keyPrefixed) {
272
- promises.push(this.store.delete(key));
273
- }
274
- return Promise.allSettled(promises).then((values) => values.every((x) => x.valueOf() === true));
275
- }
276
- clear() {
277
- return __awaiter(this, void 0, void 0, function* () {
278
- return Promise.resolve().then(() => this.store.clear());
279
- });
280
- }
281
- has(key) {
282
- const keyPrefixed = this._getKeyPrefix(key);
283
- return Promise.resolve().then(() => __awaiter(this, void 0, void 0, function* () {
284
- if (typeof this.store.has === 'function') {
285
- return this.store.has(keyPrefixed);
286
- }
287
- const value = yield this.store.get(keyPrefixed);
288
- return value !== undefined;
289
- }));
290
- }
291
- disconnect() {
292
- if (typeof this.store.disconnect === 'function') {
293
- return this.store.disconnect();
294
- }
295
- }
296
- }
297
- exports.Keyv = Keyv;
298
- const iterableAdapters = ['sqlite', 'postgres', 'mysql', 'mongo', 'redis', 'tiered'];
299
- function toValue(input) {
300
- return input !== null && typeof input === 'object' && 'value' in input ? input.value : input;
301
- }
302
- //# sourceMappingURL=keyv.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyv.js","sourceRoot":"","sources":["../../src/keyv/keyv.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './tiered/index';
2
- export * from './typeorm/index';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/store-adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA"}
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./tiered/index"), exports);
18
- __exportStar(require("./typeorm/index"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/store-adapters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA8B;AAC9B,kDAA+B"}
@@ -1,29 +0,0 @@
1
- import { EventEmitter } from 'events';
2
- import type { Options, Options_ } from './types';
3
- import { KeyvStore, KeyvStoredData } from '../../keyv/keyv-types';
4
- import { IKeyValueStoreAdapter } from '../../key-value-types';
5
- /**
6
- * Tiered keyv store adapter, combining 2 adapters/stores into one
7
- * @alpha
8
- */
9
- export declare class KeyValueTieredStoreAdapter<Value> extends EventEmitter implements KeyvStore<Value>, IKeyValueStoreAdapter<Value> {
10
- opts: Options_;
11
- remote: KeyvStore<Value>;
12
- local: KeyvStore<Value>;
13
- iterationLimit?: string | number;
14
- namespace?: string | undefined;
15
- constructor({ remote, local, ...options }: Options<Value>);
16
- get(key: string | string[], options?: {
17
- raw?: boolean;
18
- }): Promise<KeyvStoredData<Value> | Array<KeyvStoredData<Value>>>;
19
- getMany(keys: string[], options?: {
20
- raw?: boolean;
21
- }): Promise<Array<KeyvStoredData<Value>>>;
22
- set(key: string, value: any, ttl?: number): Promise<any[]>;
23
- clear(): Promise<undefined>;
24
- delete(key: string): Promise<boolean>;
25
- deleteMany(keys: string[]): Promise<boolean>;
26
- has(key: string): Promise<boolean>;
27
- iterator(namespace?: string): AsyncGenerator<any, void, any>;
28
- }
29
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/store-adapters/tiered/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAI7D;;;GAGG;AACH,qBAAa,0BAA0B,CAAC,KAAK,CAAE,SAAQ,YAAa,YAAW,SAAS,CAAC,KAAK,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC;IAC3H,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IACxB,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEhC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;gBAElB,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC;IAenD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IA6BvH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAc3F,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM;IAKzC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC;IAW3B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWrC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAW5C,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;CASpE"}
@@ -1,198 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __rest = (this && this.__rest) || function (s, e) {
12
- var t = {};
13
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
- t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
- t[p[i]] = s[p[i]];
19
- }
20
- return t;
21
- };
22
- var __asyncValues = (this && this.__asyncValues) || function (o) {
23
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
24
- var m = o[Symbol.asyncIterator], i;
25
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
26
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
27
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
28
- };
29
- var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
30
- var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
31
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
32
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
33
- return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
34
- function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
35
- function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
36
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
37
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
38
- function fulfill(value) { resume("next", value); }
39
- function reject(value) { resume("throw", value); }
40
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
41
- };
42
- Object.defineProperty(exports, "__esModule", { value: true });
43
- exports.KeyValueTieredStoreAdapter = void 0;
44
- const events_1 = require("events");
45
- const keyv_1 = require("../../keyv/keyv");
46
- /**
47
- * Tiered keyv store adapter, combining 2 adapters/stores into one
48
- * @alpha
49
- */
50
- class KeyValueTieredStoreAdapter extends events_1.EventEmitter {
51
- constructor(_a) {
52
- var { remote, local } = _a, options = __rest(_a, ["remote", "local"]);
53
- super();
54
- this.opts = Object.assign({ validator: () => true, dialect: 'tiered' }, options);
55
- // todo: since we are instantiating a new Keyv object in case we encounter a map, the key prefix applied twice, given it will be part of a an outer keyv object as well.
56
- // Probably wise to simply create a Map Store class. As it is an in memory construct, and will work in terms of resolution it does not have highest priority
57
- this.local = (isMap(local) ? new keyv_1.Keyv(local) : local);
58
- this.remote = (isMap(remote) ? new keyv_1.Keyv(remote) : remote);
59
- this.namespace = this.local.namespace;
60
- }
61
- get(key, options) {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- if (Array.isArray(key)) {
64
- return yield this.getMany(key, options);
65
- }
66
- const localResult = (yield this.local.get(key, options));
67
- if (localResult === undefined || !this.opts.validator(localResult, key)) {
68
- const remoteResult = yield this.remote.get(key, options);
69
- if (remoteResult !== localResult) {
70
- const value = (!!remoteResult ? (typeof remoteResult === 'object' && 'value' in remoteResult ? remoteResult.value : remoteResult) : undefined);
71
- const ttl = !!remoteResult && typeof remoteResult === 'object' && 'expires' in remoteResult && remoteResult.expires
72
- ? remoteResult.expires - Date.now()
73
- : undefined;
74
- if (!ttl || ttl > 0) {
75
- yield this.local.set(key, value, ttl);
76
- }
77
- else {
78
- this.local.delete(key);
79
- }
80
- }
81
- return remoteResult;
82
- }
83
- return localResult;
84
- });
85
- }
86
- getMany(keys, options) {
87
- return __awaiter(this, void 0, void 0, function* () {
88
- const promises = [];
89
- for (const key of keys) {
90
- promises.push(this.get(key, options));
91
- }
92
- const values = yield Promise.all(promises);
93
- const data = [];
94
- for (const value of values) {
95
- data.push(value);
96
- }
97
- return data;
98
- });
99
- }
100
- set(key, value, ttl) {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- const toSet = ['local', 'remote'];
103
- return Promise.all(toSet.map((store) => __awaiter(this, void 0, void 0, function* () { return this[store].set(key, value, ttl); })));
104
- });
105
- }
106
- clear() {
107
- return __awaiter(this, void 0, void 0, function* () {
108
- const toClear = ['local'];
109
- if (!this.opts.localOnly) {
110
- toClear.push('remote');
111
- }
112
- yield Promise.all(toClear.map((store) => __awaiter(this, void 0, void 0, function* () { return this[store].clear(); })));
113
- return undefined;
114
- });
115
- }
116
- delete(key) {
117
- return __awaiter(this, void 0, void 0, function* () {
118
- const toDelete = ['local'];
119
- if (!this.opts.localOnly) {
120
- toDelete.push('remote');
121
- }
122
- const deleted = yield Promise.all(toDelete.map((store) => __awaiter(this, void 0, void 0, function* () { return this[store].delete(key); })));
123
- return deleted.every(Boolean);
124
- });
125
- }
126
- deleteMany(keys) {
127
- return __awaiter(this, void 0, void 0, function* () {
128
- const promises = [];
129
- for (const key of keys) {
130
- promises.push(this.delete(key));
131
- }
132
- const values = yield Promise.all(promises);
133
- return values.every(Boolean);
134
- });
135
- }
136
- has(key) {
137
- return __awaiter(this, void 0, void 0, function* () {
138
- let response;
139
- if (typeof this.local.has === 'function') {
140
- response = this.local.has(key);
141
- }
142
- else {
143
- const value = yield this.local.get(key);
144
- response = value !== undefined;
145
- }
146
- if (!response || !this.opts.validator(response, key)) {
147
- if (typeof this.remote.has === 'function') {
148
- response = this.remote.has(key);
149
- }
150
- else {
151
- const value = yield this.remote.get(key);
152
- response = value !== undefined;
153
- }
154
- }
155
- return response;
156
- });
157
- }
158
- iterator(namespace) {
159
- return __asyncGenerator(this, arguments, function* iterator_1() {
160
- var _a, e_1, _b, _c;
161
- const limit = Number.parseInt(this.iterationLimit, 10) || 10;
162
- this.remote.opts.iterationLimit = limit;
163
- if (this.remote && typeof this.remote.iterator === 'function') {
164
- try {
165
- for (var _d = true, _e = __asyncValues(this.remote.iterator(namespace)), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) {
166
- _c = _f.value;
167
- _d = false;
168
- const entries = _c;
169
- yield yield __await(entries);
170
- }
171
- }
172
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
173
- finally {
174
- try {
175
- if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e));
176
- }
177
- finally { if (e_1) throw e_1.error; }
178
- }
179
- }
180
- });
181
- }
182
- }
183
- exports.KeyValueTieredStoreAdapter = KeyValueTieredStoreAdapter;
184
- function isMap(map) {
185
- if (map instanceof Map) {
186
- return true;
187
- }
188
- else if (map &&
189
- typeof map.clear === 'function' &&
190
- typeof map.delete === 'function' &&
191
- typeof map.get === 'function' &&
192
- typeof map.has === 'function' &&
193
- typeof map.set === 'function') {
194
- return true;
195
- }
196
- return false;
197
- }
198
- //# sourceMappingURL=index.js.map