@goatlab/node-backend 1.1.13 → 1.1.15
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/dist/Cache.js
CHANGED
|
@@ -53,6 +53,12 @@ class Cache extends Keyv {
|
|
|
53
53
|
...opts,
|
|
54
54
|
namespace: fullNamespace
|
|
55
55
|
});
|
|
56
|
+
// Manually set up iterator for LazyRedisStore as a fallback.
|
|
57
|
+
// With opts.dialect='redis', Keyv should detect it automatically, but this ensures
|
|
58
|
+
// deleteWhereStartsWith and getValueWhereKeyStartsWith work even if detection fails.
|
|
59
|
+
if (lazyStore && typeof lazyStore.iterator === 'function') {
|
|
60
|
+
this.iterator = lazyStore.iterator.bind(lazyStore);
|
|
61
|
+
}
|
|
56
62
|
this.connectionString = connection;
|
|
57
63
|
this.connectionPool = pool;
|
|
58
64
|
this.lazyStore = lazyStore;
|
|
@@ -213,26 +219,17 @@ class Cache extends Keyv {
|
|
|
213
219
|
});
|
|
214
220
|
return;
|
|
215
221
|
}
|
|
216
|
-
//
|
|
217
|
-
//
|
|
218
|
-
const
|
|
219
|
-
const hasCompoundNamespace = namespaceParts.length > 1;
|
|
222
|
+
// The Redis iterator returns keys with full namespace prefix (e.g., "namespace:foo:1")
|
|
223
|
+
// We need to strip the namespace to get the actual key
|
|
224
|
+
const namespacePrefix = this.ns ? `${this.ns}:` : '';
|
|
220
225
|
for await (const [key] of this.iterator(this.ns)) {
|
|
226
|
+
// Strip namespace prefix from key
|
|
221
227
|
let keyToCheck = key;
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
if (hasCompoundNamespace && key.includes(':')) {
|
|
225
|
-
// Check if the key starts with any remaining namespace parts
|
|
226
|
-
for (let i = 1; i < namespaceParts.length; i++) {
|
|
227
|
-
const remainingNamespace = namespaceParts.slice(i).join(':');
|
|
228
|
-
if (key.startsWith(`${remainingNamespace}:`)) {
|
|
229
|
-
keyToCheck = key.substring(remainingNamespace.length + 1);
|
|
230
|
-
break;
|
|
231
|
-
}
|
|
232
|
-
}
|
|
228
|
+
if (namespacePrefix && key.startsWith(namespacePrefix)) {
|
|
229
|
+
keyToCheck = key.substring(namespacePrefix.length);
|
|
233
230
|
}
|
|
234
231
|
if (keyToCheck.startsWith(value)) {
|
|
235
|
-
//
|
|
232
|
+
// Delete using the key without namespace (Keyv handles namespace internally)
|
|
236
233
|
await this.delete(keyToCheck);
|
|
237
234
|
}
|
|
238
235
|
}
|
|
@@ -248,26 +245,30 @@ class Cache extends Keyv {
|
|
|
248
245
|
});
|
|
249
246
|
return result;
|
|
250
247
|
}
|
|
251
|
-
//
|
|
252
|
-
//
|
|
253
|
-
|
|
254
|
-
const
|
|
248
|
+
// The Redis iterator returns keys with full namespace prefix (e.g., "namespace:foo:1")
|
|
249
|
+
// and values as JSON strings (e.g., '{"value":"a","expires":null}')
|
|
250
|
+
// We need to strip the namespace and parse the values
|
|
251
|
+
const namespacePrefix = this.ns ? `${this.ns}:` : '';
|
|
255
252
|
for await (const [key, val] of this.iterator(this.ns)) {
|
|
253
|
+
// Strip namespace prefix from key
|
|
256
254
|
let keyToCheck = key;
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
if (hasCompoundNamespace && key.includes(':')) {
|
|
260
|
-
// Check if the key starts with any remaining namespace parts
|
|
261
|
-
for (let i = 1; i < namespaceParts.length; i++) {
|
|
262
|
-
const remainingNamespace = namespaceParts.slice(i).join(':');
|
|
263
|
-
if (key.startsWith(`${remainingNamespace}:`)) {
|
|
264
|
-
keyToCheck = key.substring(remainingNamespace.length + 1);
|
|
265
|
-
break;
|
|
266
|
-
}
|
|
267
|
-
}
|
|
255
|
+
if (namespacePrefix && key.startsWith(namespacePrefix)) {
|
|
256
|
+
keyToCheck = key.substring(namespacePrefix.length);
|
|
268
257
|
}
|
|
269
258
|
if (keyToCheck.startsWith(value)) {
|
|
270
|
-
|
|
259
|
+
// Parse JSON value if it's a string (Redis returns raw JSON)
|
|
260
|
+
let parsedValue = val;
|
|
261
|
+
if (typeof val === 'string') {
|
|
262
|
+
try {
|
|
263
|
+
const parsed = JSON.parse(val);
|
|
264
|
+
parsedValue = parsed.value !== undefined ? parsed.value : parsed;
|
|
265
|
+
}
|
|
266
|
+
catch {
|
|
267
|
+
// If parsing fails, use the raw value
|
|
268
|
+
parsedValue = val;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
result.push(parsedValue);
|
|
271
272
|
}
|
|
272
273
|
}
|
|
273
274
|
return result;
|
package/dist/Cache.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,25 @@ export declare class LazyRedisStore {
|
|
|
17
17
|
private pool;
|
|
18
18
|
private _store;
|
|
19
19
|
private _connecting;
|
|
20
|
+
private _namespace;
|
|
21
|
+
/**
|
|
22
|
+
* Opts property for Keyv compatibility.
|
|
23
|
+
* Keyv checks for store.opts to detect if iteration is supported.
|
|
24
|
+
* It looks for opts.dialect or opts.url containing 'redis', 'postgres', etc.
|
|
25
|
+
* @see https://github.com/jaredwray/keyv/blob/main/packages/keyv/src/index.ts
|
|
26
|
+
*/
|
|
27
|
+
readonly opts: {
|
|
28
|
+
dialect: string;
|
|
29
|
+
url: string;
|
|
30
|
+
};
|
|
20
31
|
constructor(connectionString: string);
|
|
32
|
+
/**
|
|
33
|
+
* Namespace property for Keyv compatibility.
|
|
34
|
+
* Keyv sets this after construction to enable namespace-scoped operations.
|
|
35
|
+
* We forward it to the underlying KeyvRedis store when connected.
|
|
36
|
+
*/
|
|
37
|
+
get namespace(): string | undefined;
|
|
38
|
+
set namespace(value: string | undefined);
|
|
21
39
|
/**
|
|
22
40
|
* Get the underlying KeyvRedis store, creating connection if needed.
|
|
23
41
|
* Uses a promise to ensure only one connection attempt happens even
|
|
@@ -21,12 +21,42 @@ class LazyRedisStore {
|
|
|
21
21
|
pool;
|
|
22
22
|
_store;
|
|
23
23
|
_connecting;
|
|
24
|
+
_namespace;
|
|
25
|
+
/**
|
|
26
|
+
* Opts property for Keyv compatibility.
|
|
27
|
+
* Keyv checks for store.opts to detect if iteration is supported.
|
|
28
|
+
* It looks for opts.dialect or opts.url containing 'redis', 'postgres', etc.
|
|
29
|
+
* @see https://github.com/jaredwray/keyv/blob/main/packages/keyv/src/index.ts
|
|
30
|
+
*/
|
|
31
|
+
opts;
|
|
24
32
|
constructor(connectionString) {
|
|
25
33
|
this.connectionString = connectionString;
|
|
26
34
|
this.pool = RedisConnectionPool_1.RedisConnectionPool.getInstance();
|
|
35
|
+
// Set opts for Keyv iterator detection
|
|
36
|
+
// Keyv's _checkIterableAdapter() checks if opts.dialect is in iterableAdapters
|
|
37
|
+
// or if opts.url contains one of the adapter names
|
|
38
|
+
this.opts = {
|
|
39
|
+
dialect: 'redis',
|
|
40
|
+
url: connectionString
|
|
41
|
+
};
|
|
27
42
|
// Bind the iterator to this instance for Keyv compatibility
|
|
28
43
|
this.iterator = this.iterator.bind(this);
|
|
29
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Namespace property for Keyv compatibility.
|
|
47
|
+
* Keyv sets this after construction to enable namespace-scoped operations.
|
|
48
|
+
* We forward it to the underlying KeyvRedis store when connected.
|
|
49
|
+
*/
|
|
50
|
+
get namespace() {
|
|
51
|
+
return this._namespace;
|
|
52
|
+
}
|
|
53
|
+
set namespace(value) {
|
|
54
|
+
this._namespace = value;
|
|
55
|
+
// Forward to underlying store if already connected
|
|
56
|
+
if (this._store) {
|
|
57
|
+
this._store.namespace = value;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
30
60
|
/**
|
|
31
61
|
* Get the underlying KeyvRedis store, creating connection if needed.
|
|
32
62
|
* Uses a promise to ensure only one connection attempt happens even
|
|
@@ -44,6 +74,11 @@ class LazyRedisStore {
|
|
|
44
74
|
this._connecting = new Promise((resolve, reject) => {
|
|
45
75
|
try {
|
|
46
76
|
this._store = this.pool.getConnection(this.connectionString);
|
|
77
|
+
// Forward namespace to the underlying store if set
|
|
78
|
+
// This is critical for clear() and other namespace-scoped operations
|
|
79
|
+
if (this._namespace !== undefined) {
|
|
80
|
+
this._store.namespace = this._namespace;
|
|
81
|
+
}
|
|
47
82
|
resolve(this._store);
|
|
48
83
|
}
|
|
49
84
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LazyRedisStore.js","sourceRoot":"","sources":["../../src/cache/LazyRedisStore.ts"],"names":[],"mappings":";;;AACA,+DAA2D;AAE3D;;;;;;;;;;;;;GAaG;AACH,MAAa,cAAc;IACjB,gBAAgB,CAAQ;IACxB,IAAI,CAAqB;IACzB,MAAM,CAAuB;IAC7B,WAAW,CAAgC;
|
|
1
|
+
{"version":3,"file":"LazyRedisStore.js","sourceRoot":"","sources":["../../src/cache/LazyRedisStore.ts"],"names":[],"mappings":"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"}
|