keyv 5.0.0 → 5.0.1
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/README.md +3 -3
- package/dist/index.cjs +455 -0
- package/dist/{esm/index.d.ts → index.d.cts} +52 -13
- package/dist/{cjs/index.d.ts → index.d.ts} +52 -13
- package/dist/index.js +429 -0
- package/package.json +9 -7
- package/dist/cjs/event-manager.d.ts +0 -16
- package/dist/cjs/event-manager.js +0 -95
- package/dist/cjs/event-manager.js.map +0 -1
- package/dist/cjs/hooks-manager.d.ts +0 -11
- package/dist/cjs/hooks-manager.js +0 -55
- package/dist/cjs/hooks-manager.js.map +0 -1
- package/dist/cjs/index.js +0 -267
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/stats-manager.d.ts +0 -16
- package/dist/cjs/stats-manager.js +0 -51
- package/dist/cjs/stats-manager.js.map +0 -1
- package/dist/esm/event-manager.d.ts +0 -16
- package/dist/esm/event-manager.js +0 -93
- package/dist/esm/event-manager.js.map +0 -1
- package/dist/esm/hooks-manager.d.ts +0 -11
- package/dist/esm/hooks-manager.js +0 -50
- package/dist/esm/hooks-manager.js.map +0 -1
- package/dist/esm/index.js +0 -261
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/stats-manager.d.ts +0 -16
- package/dist/esm/stats-manager.js +0 -46
- package/dist/esm/stats-manager.js.map +0 -1
package/dist/esm/index.js
DELETED
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
import { defaultSerialize, defaultDeserialize } from '@keyv/serialize';
|
|
2
|
-
import HooksManager from './hooks-manager.js';
|
|
3
|
-
import EventManager from './event-manager.js';
|
|
4
|
-
import StatsManager from './stats-manager.js';
|
|
5
|
-
export var KeyvHooks;
|
|
6
|
-
(function (KeyvHooks) {
|
|
7
|
-
KeyvHooks["PRE_SET"] = "preSet";
|
|
8
|
-
KeyvHooks["POST_SET"] = "postSet";
|
|
9
|
-
KeyvHooks["PRE_GET"] = "preGet";
|
|
10
|
-
KeyvHooks["POST_GET"] = "postGet";
|
|
11
|
-
KeyvHooks["PRE_GET_MANY"] = "preGetMany";
|
|
12
|
-
KeyvHooks["POST_GET_MANY"] = "postGetMany";
|
|
13
|
-
KeyvHooks["PRE_DELETE"] = "preDelete";
|
|
14
|
-
KeyvHooks["POST_DELETE"] = "postDelete";
|
|
15
|
-
})(KeyvHooks || (KeyvHooks = {}));
|
|
16
|
-
const iterableAdapters = [
|
|
17
|
-
'sqlite',
|
|
18
|
-
'postgres',
|
|
19
|
-
'mysql',
|
|
20
|
-
'mongo',
|
|
21
|
-
'redis',
|
|
22
|
-
'tiered',
|
|
23
|
-
];
|
|
24
|
-
class Keyv extends EventManager {
|
|
25
|
-
opts;
|
|
26
|
-
iterator;
|
|
27
|
-
hooks = new HooksManager();
|
|
28
|
-
stats = new StatsManager(false);
|
|
29
|
-
constructor(store, options) {
|
|
30
|
-
super();
|
|
31
|
-
options ??= {};
|
|
32
|
-
store ??= {};
|
|
33
|
-
this.opts = {
|
|
34
|
-
namespace: 'keyv',
|
|
35
|
-
serialize: defaultSerialize,
|
|
36
|
-
deserialize: defaultDeserialize,
|
|
37
|
-
emitErrors: true,
|
|
38
|
-
// @ts-expect-error - Map is not a KeyvStoreAdapter
|
|
39
|
-
store: new Map(),
|
|
40
|
-
...options,
|
|
41
|
-
};
|
|
42
|
-
if (store && store.get) {
|
|
43
|
-
this.opts.store = store;
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
this.opts = {
|
|
47
|
-
...this.opts,
|
|
48
|
-
...store,
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
if (this.opts.compression) {
|
|
52
|
-
const compression = this.opts.compression;
|
|
53
|
-
this.opts.serialize = compression.serialize.bind(compression);
|
|
54
|
-
this.opts.deserialize = compression.deserialize.bind(compression);
|
|
55
|
-
}
|
|
56
|
-
if (this.opts.store) {
|
|
57
|
-
if (!this._isValidStorageAdapter(this.opts.store)) {
|
|
58
|
-
throw new Error('Invalid storage adapter');
|
|
59
|
-
}
|
|
60
|
-
if (typeof this.opts.store.on === 'function' && this.opts.emitErrors) {
|
|
61
|
-
this.opts.store.on('error', (error) => this.emit('error', error));
|
|
62
|
-
}
|
|
63
|
-
this.opts.store.namespace = this.opts.namespace;
|
|
64
|
-
// Attach iterators
|
|
65
|
-
// @ts-ignore
|
|
66
|
-
if (typeof this.opts.store[Symbol.iterator] === 'function' && this.opts.store instanceof Map) {
|
|
67
|
-
this.iterator = this.generateIterator(this.opts.store);
|
|
68
|
-
}
|
|
69
|
-
else if ('iterator' in this.opts.store && this.opts.store.opts && this._checkIterableAdapter()) {
|
|
70
|
-
this.iterator = this.generateIterator(this.opts.store.iterator.bind(this.opts.store));
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
if (this.opts.stats) {
|
|
74
|
-
this.stats.enabled = this.opts.stats;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
generateIterator(iterator) {
|
|
78
|
-
const function_ = async function* () {
|
|
79
|
-
for await (const [key, raw] of (typeof iterator === 'function'
|
|
80
|
-
? iterator(this.opts.store.namespace)
|
|
81
|
-
: iterator)) {
|
|
82
|
-
const data = await this.opts.deserialize(raw);
|
|
83
|
-
if (this.opts.store.namespace && !key.includes(this.opts.store.namespace)) {
|
|
84
|
-
continue;
|
|
85
|
-
}
|
|
86
|
-
if (typeof data.expires === 'number' && Date.now() > data.expires) {
|
|
87
|
-
this.delete(key);
|
|
88
|
-
continue;
|
|
89
|
-
}
|
|
90
|
-
yield [this._getKeyUnprefix(key), data.value];
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
return function_.bind(this);
|
|
94
|
-
}
|
|
95
|
-
_checkIterableAdapter() {
|
|
96
|
-
return iterableAdapters.includes(this.opts.store.opts.dialect)
|
|
97
|
-
|| iterableAdapters.some(element => this.opts.store.opts.url.includes(element));
|
|
98
|
-
}
|
|
99
|
-
_getKeyPrefix(key) {
|
|
100
|
-
return `${this.opts.namespace}:${key}`;
|
|
101
|
-
}
|
|
102
|
-
_getKeyPrefixArray(keys) {
|
|
103
|
-
return keys.map(key => `${this.opts.namespace}:${key}`);
|
|
104
|
-
}
|
|
105
|
-
_getKeyUnprefix(key) {
|
|
106
|
-
return key
|
|
107
|
-
.split(':')
|
|
108
|
-
.splice(1)
|
|
109
|
-
.join(':');
|
|
110
|
-
}
|
|
111
|
-
_isValidStorageAdapter(store) {
|
|
112
|
-
return (store instanceof Map || (typeof store.get === 'function'
|
|
113
|
-
&& typeof store.set === 'function'
|
|
114
|
-
&& typeof store.delete === 'function'
|
|
115
|
-
&& typeof store.clear === 'function'));
|
|
116
|
-
}
|
|
117
|
-
async get(key, options) {
|
|
118
|
-
const { store } = this.opts;
|
|
119
|
-
const isArray = Array.isArray(key);
|
|
120
|
-
const keyPrefixed = isArray ? this._getKeyPrefixArray(key) : this._getKeyPrefix(key);
|
|
121
|
-
const isDataExpired = (data) => typeof data.expires === 'number' && Date.now() > data.expires;
|
|
122
|
-
if (isArray) {
|
|
123
|
-
this.hooks.trigger(KeyvHooks.PRE_GET_MANY, { keys: keyPrefixed });
|
|
124
|
-
if (store.getMany === undefined) {
|
|
125
|
-
const promises = keyPrefixed.map(async (key) => {
|
|
126
|
-
const rawData = await store.get(key);
|
|
127
|
-
const deserializedRow = (typeof rawData === 'string' || this.opts.compression) ? await this.opts.deserialize(rawData) : rawData;
|
|
128
|
-
if (deserializedRow === undefined || deserializedRow === null) {
|
|
129
|
-
return undefined;
|
|
130
|
-
}
|
|
131
|
-
if (isDataExpired(deserializedRow)) {
|
|
132
|
-
await this.delete(key);
|
|
133
|
-
return undefined;
|
|
134
|
-
}
|
|
135
|
-
return (options?.raw) ? deserializedRow : deserializedRow.value;
|
|
136
|
-
});
|
|
137
|
-
const deserializedRows = await Promise.allSettled(promises);
|
|
138
|
-
const result = deserializedRows.map(row => row.value);
|
|
139
|
-
this.hooks.trigger(KeyvHooks.POST_GET_MANY, result);
|
|
140
|
-
if (result.length > 0) {
|
|
141
|
-
this.stats.hit();
|
|
142
|
-
}
|
|
143
|
-
return result;
|
|
144
|
-
}
|
|
145
|
-
const rawData = await store.getMany(keyPrefixed);
|
|
146
|
-
const result = [];
|
|
147
|
-
for (const index in rawData) {
|
|
148
|
-
let row = rawData[index];
|
|
149
|
-
if ((typeof row === 'string')) {
|
|
150
|
-
row = await this.opts.deserialize(row);
|
|
151
|
-
}
|
|
152
|
-
if (row === undefined || row === null) {
|
|
153
|
-
result.push(undefined);
|
|
154
|
-
continue;
|
|
155
|
-
}
|
|
156
|
-
if (isDataExpired(row)) {
|
|
157
|
-
await this.delete(key[index]);
|
|
158
|
-
result.push(undefined);
|
|
159
|
-
continue;
|
|
160
|
-
}
|
|
161
|
-
const value = (options?.raw) ? row : row.value;
|
|
162
|
-
result.push(value);
|
|
163
|
-
}
|
|
164
|
-
this.hooks.trigger(KeyvHooks.POST_GET_MANY, result);
|
|
165
|
-
if (result.length > 0) {
|
|
166
|
-
this.stats.hit();
|
|
167
|
-
}
|
|
168
|
-
return result;
|
|
169
|
-
}
|
|
170
|
-
this.hooks.trigger(KeyvHooks.PRE_GET, { key: keyPrefixed });
|
|
171
|
-
const rawData = await store.get(keyPrefixed);
|
|
172
|
-
const deserializedData = (typeof rawData === 'string' || this.opts.compression) ? await this.opts.deserialize(rawData) : rawData;
|
|
173
|
-
if (deserializedData === undefined || deserializedData === null) {
|
|
174
|
-
this.stats.miss();
|
|
175
|
-
return undefined;
|
|
176
|
-
}
|
|
177
|
-
if (isDataExpired(deserializedData)) {
|
|
178
|
-
await this.delete(key);
|
|
179
|
-
this.stats.miss();
|
|
180
|
-
return undefined;
|
|
181
|
-
}
|
|
182
|
-
this.hooks.trigger(KeyvHooks.POST_GET, { key: keyPrefixed, value: deserializedData });
|
|
183
|
-
this.stats.hit();
|
|
184
|
-
return (options?.raw) ? deserializedData : deserializedData.value;
|
|
185
|
-
}
|
|
186
|
-
async set(key, value, ttl) {
|
|
187
|
-
this.hooks.trigger(KeyvHooks.PRE_SET, { key, value, ttl });
|
|
188
|
-
const keyPrefixed = this._getKeyPrefix(key);
|
|
189
|
-
if (typeof ttl === 'undefined') {
|
|
190
|
-
ttl = this.opts.ttl;
|
|
191
|
-
}
|
|
192
|
-
if (ttl === 0) {
|
|
193
|
-
ttl = undefined;
|
|
194
|
-
}
|
|
195
|
-
const { store } = this.opts;
|
|
196
|
-
const expires = (typeof ttl === 'number') ? (Date.now() + ttl) : null;
|
|
197
|
-
if (typeof value === 'symbol') {
|
|
198
|
-
this.emit('error', 'symbol cannot be serialized');
|
|
199
|
-
}
|
|
200
|
-
value = { value, expires };
|
|
201
|
-
value = await this.opts.serialize(value);
|
|
202
|
-
await store.set(keyPrefixed, value, ttl);
|
|
203
|
-
this.hooks.trigger(KeyvHooks.POST_SET, { key: keyPrefixed, value, ttl });
|
|
204
|
-
this.stats.set();
|
|
205
|
-
return true;
|
|
206
|
-
}
|
|
207
|
-
async delete(key) {
|
|
208
|
-
const { store } = this.opts;
|
|
209
|
-
if (Array.isArray(key)) {
|
|
210
|
-
const keyPrefixed = this._getKeyPrefixArray(key);
|
|
211
|
-
this.hooks.trigger(KeyvHooks.PRE_DELETE, { key: keyPrefixed });
|
|
212
|
-
if (store.deleteMany !== undefined) {
|
|
213
|
-
return store.deleteMany(keyPrefixed);
|
|
214
|
-
}
|
|
215
|
-
const promises = keyPrefixed.map(async (key) => store.delete(key));
|
|
216
|
-
const results = await Promise.allSettled(promises);
|
|
217
|
-
const returnResult = results.every(x => x.value === true);
|
|
218
|
-
this.hooks.trigger(KeyvHooks.POST_DELETE, returnResult);
|
|
219
|
-
return returnResult;
|
|
220
|
-
}
|
|
221
|
-
const keyPrefixed = this._getKeyPrefix(key);
|
|
222
|
-
const result = store.delete(keyPrefixed);
|
|
223
|
-
this.hooks.trigger(KeyvHooks.POST_DELETE, result);
|
|
224
|
-
this.stats.delete();
|
|
225
|
-
return result;
|
|
226
|
-
}
|
|
227
|
-
async clear() {
|
|
228
|
-
this.emit('clear');
|
|
229
|
-
const { store } = this.opts;
|
|
230
|
-
await store.clear();
|
|
231
|
-
}
|
|
232
|
-
async has(key) {
|
|
233
|
-
const keyPrefixed = this._getKeyPrefix(key);
|
|
234
|
-
const { store } = this.opts;
|
|
235
|
-
if (store.has !== undefined && !(store instanceof Map)) {
|
|
236
|
-
return store.has(keyPrefixed);
|
|
237
|
-
}
|
|
238
|
-
const rawData = await store.get(keyPrefixed);
|
|
239
|
-
if (rawData) {
|
|
240
|
-
const data = this.opts.deserialize(rawData);
|
|
241
|
-
if (data) {
|
|
242
|
-
if (data.expires === undefined || data.expires === null) {
|
|
243
|
-
return true;
|
|
244
|
-
}
|
|
245
|
-
return data.expires > Date.now();
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
return false;
|
|
249
|
-
}
|
|
250
|
-
async disconnect() {
|
|
251
|
-
const { store } = this.opts;
|
|
252
|
-
this.emit('disconnect');
|
|
253
|
-
if (typeof store.disconnect === 'function') {
|
|
254
|
-
return store.disconnect();
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
export default Keyv;
|
|
259
|
-
module.exports = Keyv;
|
|
260
|
-
module.exports.KeyvHooks = KeyvHooks;
|
|
261
|
-
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import EventManager from './event-manager.js';
|
|
2
|
-
declare class StatsManager extends EventManager {
|
|
3
|
-
enabled: boolean;
|
|
4
|
-
hits: number;
|
|
5
|
-
misses: number;
|
|
6
|
-
sets: number;
|
|
7
|
-
deletes: number;
|
|
8
|
-
errors: number;
|
|
9
|
-
constructor(enabled?: boolean);
|
|
10
|
-
hit(): void;
|
|
11
|
-
miss(): void;
|
|
12
|
-
set(): void;
|
|
13
|
-
delete(): void;
|
|
14
|
-
reset(): void;
|
|
15
|
-
}
|
|
16
|
-
export default StatsManager;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import EventManager from './event-manager.js';
|
|
2
|
-
class StatsManager extends EventManager {
|
|
3
|
-
enabled = true;
|
|
4
|
-
hits = 0;
|
|
5
|
-
misses = 0;
|
|
6
|
-
sets = 0;
|
|
7
|
-
deletes = 0;
|
|
8
|
-
errors = 0;
|
|
9
|
-
constructor(enabled) {
|
|
10
|
-
super();
|
|
11
|
-
if (enabled !== undefined) {
|
|
12
|
-
this.enabled = enabled;
|
|
13
|
-
}
|
|
14
|
-
this.reset();
|
|
15
|
-
}
|
|
16
|
-
hit() {
|
|
17
|
-
if (this.enabled) {
|
|
18
|
-
this.hits++;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
miss() {
|
|
22
|
-
if (this.enabled) {
|
|
23
|
-
this.misses++;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
set() {
|
|
27
|
-
if (this.enabled) {
|
|
28
|
-
this.sets++;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
delete() {
|
|
32
|
-
if (this.enabled) {
|
|
33
|
-
this.deletes++;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
reset() {
|
|
37
|
-
this.hits = 0;
|
|
38
|
-
this.misses = 0;
|
|
39
|
-
this.sets = 0;
|
|
40
|
-
this.deletes = 0;
|
|
41
|
-
this.errors = 0;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
export default StatsManager;
|
|
45
|
-
module.exports = StatsManager;
|
|
46
|
-
//# sourceMappingURL=stats-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stats-manager.js","sourceRoot":"","sources":["../../src/stats-manager.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAE9C,MAAM,YAAa,SAAQ,YAAY;IAC/B,OAAO,GAAG,IAAI,CAAC;IAEf,IAAI,GAAG,CAAC,CAAC;IACT,MAAM,GAAG,CAAC,CAAC;IACX,IAAI,GAAG,CAAC,CAAC;IACT,OAAO,GAAG,CAAC,CAAC;IACZ,MAAM,GAAG,CAAC,CAAC;IAElB,YAAY,OAAiB;QAC5B,KAAK,EAAE,CAAC;QACR,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAED,GAAG;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;QACb,CAAC;IACF,CAAC;IAED,IAAI;QACH,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,CAAC;IACF,CAAC;IAED,GAAG;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;QACb,CAAC;IACF,CAAC;IAED,MAAM;QACL,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC;IACF,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACjB,CAAC;CACD;AAED,eAAe,YAAY,CAAC;AAC5B,MAAM,CAAC,OAAO,GAAG,YAAY,CAAC"}
|