@fjell/cache 4.7.8 → 4.7.10

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/debug-test.js ADDED
@@ -0,0 +1,64 @@
1
+ import { MemoryCacheMap } from './dist/index.js';
2
+
3
+ // Test data types
4
+ const priKey1 = { kt: 'test', pk: '1' };
5
+ const comKey1 = {
6
+ kt: 'test',
7
+ pk: '3',
8
+ loc: [{ kt: 'container', lk: 'container1' }]
9
+ };
10
+
11
+ // Create cache map
12
+ const cacheMap = new MemoryCacheMap(['test', 'container']);
13
+
14
+ // Add test items
15
+ await cacheMap.set(priKey1, { key: priKey1, id: '1', name: 'Item 1', value: 100 });
16
+ await cacheMap.set(comKey1, { key: comKey1, id: '3', name: 'Item 3', value: 300 });
17
+
18
+ // Set query result
19
+ const queryHash = 'test_query';
20
+ cacheMap.setQueryResult(queryHash, [priKey1, comKey1]);
21
+
22
+ console.log('Before invalidation:');
23
+ console.log('Query result exists:', await cacheMap.hasQueryResult(queryHash));
24
+ console.log('priKey1 exists:', await cacheMap.includesKey(priKey1));
25
+ console.log('comKey1 exists:', await cacheMap.includesKey(comKey1));
26
+
27
+ // Check the query result content
28
+ const queryResult = await cacheMap.getQueryResult(queryHash);
29
+ console.log('Query result content:', queryResult);
30
+
31
+ // Check the internal query result cache
32
+ console.log('Internal query result cache keys:', Object.keys(cacheMap.queryResultCache || {}));
33
+
34
+ // Invalidate location
35
+ const location = [{ kt: 'container', lk: 'container1' }];
36
+ console.log('\nInvalidating location:', location);
37
+
38
+ // Check what keys will be invalidated
39
+ const itemsInLocation = await cacheMap.allIn(location);
40
+ console.log('Items in location:', itemsInLocation);
41
+ const keysToInvalidate = itemsInLocation.map(item => item.key);
42
+ console.log('Keys to invalidate:', keysToInvalidate);
43
+
44
+ await cacheMap.invalidateLocation(location);
45
+
46
+ console.log('\nAfter invalidation:');
47
+ console.log('Query result exists:', await cacheMap.hasQueryResult(queryHash));
48
+ console.log('priKey1 exists:', await cacheMap.includesKey(priKey1));
49
+ console.log('comKey1 exists:', await cacheMap.includesKey(comKey1));
50
+
51
+ // Check what keys were actually invalidated
52
+ console.log('\nAll keys after invalidation:', await cacheMap.keys());
53
+
54
+ // Check if the query result was modified
55
+ const queryResultAfter = await cacheMap.getQueryResult(queryHash);
56
+ console.log('Query result content after:', queryResultAfter);
57
+
58
+ // Check the internal query result cache again
59
+ console.log('Internal query result cache keys after:', Object.keys(cacheMap.queryResultCache || {}));
60
+
61
+ // Try to manually delete the query result to see if that works
62
+ console.log('\nManually deleting query result...');
63
+ await cacheMap.deleteQueryResult(queryHash);
64
+ console.log('Query result exists after manual deletion:', await cacheMap.hasQueryResult(queryHash));
@@ -1 +1 @@
1
- {"version":3,"file":"Cache.d.ts","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cache.d.ts","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAoB,UAAU,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAiC,OAAO,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAE3G,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,sEAAsE;IACtE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,WAAW,EAAE,OAAO,CAAC;IACrB,2DAA2D;IAC3D,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,KAAK,CACpB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,CACzB,SAAQ,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC3C,2DAA2D;IAC3D,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzC,6CAA6C;IAC7C,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAE7C,6DAA6D;IAC7D,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAEjD,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAE5C,qCAAqC;IACrC,YAAY,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAE1D,4EAA4E;IAC5E,eAAe,EAAE,eAAe,CAAC;IAEjC,qEAAqE;IACrE,UAAU,EAAE,UAAU,CAAC;IAEvB,oDAAoD;IACpD,YAAY,EAAE,iBAAiB,CAAC;IAEhC;;;OAGG;IACH,YAAY,IAAI,SAAS,CAAC;IAE1B;;;OAGG;IACH,QAAQ,IAAI,UAAU,CAAC;IAEvB;;;;;OAKG;IACH,SAAS,CACP,QAAQ,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACtD,OAAO,CAAC,EAAE,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACxD,iBAAiB,CAAC;IAErB;;;;OAIG;IACH,WAAW,CAAC,YAAY,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAEtD;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,eAAO,MAAM,WAAW,GACtB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEvB,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACxC,YAAY,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC7C,UAAU,QAAQ,EAClB,UAAU,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KACnD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAkHlC,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,OAAO,GAAG,KAAG,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAQpF,CAAC"}
@@ -50,6 +50,11 @@ export declare class AsyncIndexDBCacheMap<V extends Item<S, L1, L2, L3, L4, L5>,
50
50
  hasQueryResult(queryHash: string): Promise<boolean>;
51
51
  deleteQueryResult(queryHash: string): Promise<void>;
52
52
  invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
53
+ /**
54
+ * Intelligently invalidate only queries that reference the affected keys
55
+ * This prevents clearing all query results when only specific items change
56
+ */
57
+ private invalidateQueriesReferencingKeys;
53
58
  invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
54
59
  clearQueryResults(): Promise<void>;
55
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AsyncIndexDBCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/AsyncIndexDBCacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AsyncIndexDBCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/AsyncIndexDBCacheMap.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,MAAM,EAGN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,MAAM,EACP,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAajE;;;;;;;GAOG;AACH,qBAAa,oBAAoB,CAC/B,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK;IAEzB,SAAS,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,sBAAsB,CAA6D;IAC3F,OAAO,CAAC,SAAS,CAAqC;IAGtD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAK;gBAG1C,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC/C,MAAM,GAAE,MAA8B,EACtC,SAAS,GAAE,MAAgB,EAC3B,OAAO,GAAE,MAAU;YASP,KAAK;IAoCnB,OAAO,CAAC,aAAa;IAIR,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IA+BnF;;OAEG;IACU,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAA;KAAE,GAAG,IAAI,CAAC;IAkC3H,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvH;;OAEG;IACU,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAevG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IA+B7E,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBrE,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IA4BpE,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAM7F,OAAO,CAClB,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAO,GACnD,OAAO,CAAC,CAAC,EAAE,CAAC;IAMR,KAAK,IAAI,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAKjD,IAAI,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAiC3E;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAoCzD,MAAM,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IAiCtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B7B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCzG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;IAyDhG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWnD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCnD,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB5F;;;OAGG;YACW,gCAAgC;IA+ExC,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlF,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;CAsEzC"}
@@ -45,6 +45,11 @@ export declare class IndexDBCacheMap<V extends Item<S, L1, L2, L3, L4, L5>, S ex
45
45
  deleteQueryResult(queryHash: string): Promise<void>;
46
46
  clearQueryResults(): Promise<void>;
47
47
  invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
48
+ /**
49
+ * Intelligently invalidate only queries that reference the affected keys
50
+ * This prevents clearing all query results when only specific items change
51
+ */
52
+ private invalidateQueriesReferencingKeys;
48
53
  invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
49
54
  getMetadata(key: string): Promise<CacheItemMetadata | null>;
50
55
  setMetadata(key: string, metadata: CacheItemMetadata): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"IndexDBCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/IndexDBCacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndexDBCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/IndexDBCacheMap.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,11 @@ export declare class LocalStorageCacheMap<V extends Item<S, L1, L2, L3, L4, L5>,
41
41
  hasQueryResult(queryHash: string): Promise<boolean>;
42
42
  deleteQueryResult(queryHash: string): Promise<void>;
43
43
  invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
44
+ /**
45
+ * Intelligently invalidate only queries that reference the affected keys
46
+ * This prevents clearing all query results when only specific items change
47
+ */
48
+ private invalidateQueriesReferencingKeys;
44
49
  invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
45
50
  clearQueryResults(): Promise<void>;
46
51
  getMetadata(key: string): Promise<CacheItemMetadata | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalStorageCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/LocalStorageCacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalStorageCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/LocalStorageCacheMap.ts"],"names":[],"mappings":"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"}
@@ -32,14 +32,19 @@ export declare class SessionStorageCacheMap<V extends Item<S, L1, L2, L3, L4, L5
32
32
  getQueryResult(queryHash: string): Promise<(ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[] | null>;
33
33
  hasQueryResult(queryHash: string): Promise<boolean>;
34
34
  deleteQueryResult(queryHash: string): Promise<void>;
35
- invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
36
- invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
37
35
  clearQueryResults(): Promise<void>;
38
36
  getMetadata(key: string): Promise<CacheItemMetadata | null>;
39
37
  setMetadata(key: string, metadata: CacheItemMetadata): Promise<void>;
40
38
  deleteMetadata(key: string): Promise<void>;
41
39
  getAllMetadata(): Promise<Map<string, CacheItemMetadata>>;
42
40
  clearMetadata(): Promise<void>;
41
+ invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
42
+ /**
43
+ * Intelligently invalidate only queries that reference the affected keys
44
+ * This prevents clearing all query results when only specific items change
45
+ */
46
+ private invalidateQueriesReferencingKeys;
47
+ invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
43
48
  getCurrentSize(): Promise<{
44
49
  itemCount: number;
45
50
  sizeBytes: number;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionStorageCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/SessionStorageCacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionStorageCacheMap.d.ts","sourceRoot":"","sources":["../../src/browser/SessionStorageCacheMap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CacheEventEmitter.d.ts","sourceRoot":"","sources":["../../src/events/CacheEventEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,IAAI,EAA0C,MAAM,aAAa,CAAC;AACnF,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AA0B3B;;GAEG;AACH,qBAAa,iBAAiB,CAC5B,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK;IAEzB,OAAO,CAAC,aAAa,CAAqE;IAC1F,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;IAC/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;;IAMnE;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACI,SAAS,CACd,QAAQ,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACtD,OAAO,GAAE,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAM,GAC5D,iBAAiB;IAoCpB;;OAEG;IACI,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAkBnD;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI;IAgBjE;;OAEG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;OAEG;IACI,gBAAgB,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;KAAE,CAAC;IAM1G;;OAEG;IACI,OAAO,IAAI,IAAI;IAoBtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAwEhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8D1B;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAiBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAmB5B"}
1
+ {"version":3,"file":"CacheEventEmitter.d.ts","sourceRoot":"","sources":["../../src/events/CacheEventEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,IAAI,EAA0C,MAAM,aAAa,CAAC;AACnF,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AA0B3B;;GAEG;AACH,qBAAa,iBAAiB,CAC5B,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK;IAEzB,OAAO,CAAC,aAAa,CAAqE;IAC1F,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;IAC/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;;IAMnE;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACI,SAAS,CACd,QAAQ,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACtD,OAAO,GAAE,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAM,GAC5D,iBAAiB;IAoCpB;;OAEG;IACI,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAkBnD;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI;IAkBjE;;OAEG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;OAEG;IACI,gBAAgB,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;KAAE,CAAC;IAM1G;;OAEG;IACI,OAAO,IAAI,IAAI;IAoBtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAwEhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA+D1B;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAiBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAmB5B"}
package/dist/index.js CHANGED
@@ -641,8 +641,16 @@ var create = async (v, locations = [], context) => {
641
641
  const parsedKey = JSON.parse(evictedKey);
642
642
  await cacheMap.delete(parsedKey);
643
643
  }
644
- const event = CacheEventFactory.itemCreated(created.key, created, "api");
645
- eventEmitter.emit(event);
644
+ await cacheMap.clearQueryResults();
645
+ const itemEvent = CacheEventFactory.itemCreated(created.key, created, "api");
646
+ eventEmitter.emit(itemEvent);
647
+ const queryInvalidatedEvent = CacheEventFactory.createQueryInvalidatedEvent(
648
+ [],
649
+ // We don't track which specific queries were invalidated
650
+ "item_changed",
651
+ { source: "operation", context: { operation: "create" } }
652
+ );
653
+ eventEmitter.emit(queryInvalidatedEvent);
646
654
  return [context, validatePK3(created, pkType)];
647
655
  };
648
656
 
@@ -812,10 +820,18 @@ var remove = async (key, context) => {
812
820
  const previousItem = await cacheMap.get(key);
813
821
  await api.remove(key);
814
822
  cacheMap.delete(key);
823
+ await cacheMap.clearQueryResults();
815
824
  if (previousItem) {
816
- const event = CacheEventFactory.itemRemoved(key, previousItem, "api");
817
- context.eventEmitter.emit(event);
818
- }
825
+ const itemEvent = CacheEventFactory.itemRemoved(key, previousItem, "api");
826
+ context.eventEmitter.emit(itemEvent);
827
+ }
828
+ const queryInvalidatedEvent = CacheEventFactory.createQueryInvalidatedEvent(
829
+ [],
830
+ // We don't track which specific queries were invalidated
831
+ "item_changed",
832
+ { source: "operation", context: { operation: "remove" } }
833
+ );
834
+ context.eventEmitter.emit(queryInvalidatedEvent);
819
835
  logger6.debug("Successfully removed item from API and cache", { key });
820
836
  } catch (e) {
821
837
  logger6.error("Error deleting item", { error: e });
@@ -845,6 +861,7 @@ var update = async (key, v, context) => {
845
861
  const updated = await api.update(key, v);
846
862
  logger7.debug("Caching update result", { updatedKey: updated.key });
847
863
  await cacheMap.set(updated.key, updated);
864
+ const cachedItem = await cacheMap.get(updated.key);
848
865
  const keyStr = JSON.stringify(updated.key);
849
866
  const metadata = await cacheMap.getMetadata(keyStr);
850
867
  if (!metadata) {
@@ -864,8 +881,15 @@ var update = async (key, v, context) => {
864
881
  const parsedKey = JSON.parse(evictedKey);
865
882
  await cacheMap.delete(parsedKey);
866
883
  }
867
- const event = CacheEventFactory.itemUpdated(updated.key, updated, previousItem, "api");
868
- context.eventEmitter.emit(event);
884
+ const itemEvent = CacheEventFactory.itemUpdated(updated.key, updated, previousItem, "api");
885
+ context.eventEmitter.emit(itemEvent);
886
+ const queryInvalidatedEvent = CacheEventFactory.createQueryInvalidatedEvent(
887
+ [],
888
+ // We don't track which specific queries were invalidated
889
+ "item_changed",
890
+ { source: "operation", context: { operation: "update" } }
891
+ );
892
+ context.eventEmitter.emit(queryInvalidatedEvent);
869
893
  return [context, validatePK6(updated, pkType)];
870
894
  } catch (e) {
871
895
  logger7.error("Error updating item", { error: e });
@@ -905,6 +929,24 @@ var action = async (key, action2, body = {}, context) => {
905
929
  });
906
930
  }
907
931
  }
932
+ logger8.debug("Emitting itemUpdated event after action", {
933
+ key: updated.key,
934
+ action: action2
935
+ });
936
+ const itemEvent = CacheEventFactory.itemUpdated(updated.key, updated, null, "api");
937
+ context.eventEmitter.emit(itemEvent);
938
+ logger8.debug("Emitting queryInvalidatedEvent after action", {
939
+ eventType: "query_invalidated",
940
+ reason: "item_changed",
941
+ action: action2
942
+ });
943
+ const queryInvalidatedEvent = CacheEventFactory.createQueryInvalidatedEvent(
944
+ [],
945
+ // We don't track which specific queries were invalidated
946
+ "item_changed",
947
+ { source: "operation", context: { operation: "action" } }
948
+ );
949
+ context.eventEmitter.emit(queryInvalidatedEvent);
908
950
  return [context, validatePK7(updated, pkType)];
909
951
  };
910
952
 
@@ -1313,22 +1355,54 @@ var MemoryCacheMap = class _MemoryCacheMap extends CacheMap {
1313
1355
  }
1314
1356
  async invalidateItemKeys(keys) {
1315
1357
  logger15.debug("invalidateItemKeys", { keys });
1358
+ if (keys.length === 0) {
1359
+ return;
1360
+ }
1316
1361
  for (const key of keys) {
1317
1362
  await this.delete(key);
1318
1363
  }
1364
+ this.invalidateQueriesReferencingKeys(keys);
1365
+ }
1366
+ /**
1367
+ * Intelligently invalidate only queries that reference the affected keys
1368
+ * This prevents clearing all query results when only specific items change
1369
+ */
1370
+ invalidateQueriesReferencingKeys(keys) {
1371
+ if (keys.length === 0) {
1372
+ return;
1373
+ }
1374
+ const hashedKeysToInvalidate = new Set(keys.map((key) => this.normalizedHashFunction(key)));
1375
+ const queriesToRemove = [];
1376
+ for (const [queryHash, entry] of Object.entries(this.queryResultCache)) {
1377
+ const queryReferencesInvalidatedKey = entry.itemKeys.some((itemKey) => {
1378
+ const hashedItemKey = this.normalizedHashFunction(itemKey);
1379
+ return hashedKeysToInvalidate.has(hashedItemKey);
1380
+ });
1381
+ if (queryReferencesInvalidatedKey) {
1382
+ queriesToRemove.push(queryHash);
1383
+ }
1384
+ }
1385
+ queriesToRemove.forEach((queryHash) => {
1386
+ this.deleteQueryResult(queryHash);
1387
+ });
1388
+ logger15.debug("Selectively invalidated queries referencing affected keys", {
1389
+ affectedKeys: keys.length,
1390
+ queriesRemoved: queriesToRemove.length,
1391
+ totalQueries: Object.keys(this.queryResultCache).length
1392
+ });
1319
1393
  }
1320
1394
  async invalidateLocation(locations) {
1321
1395
  logger15.debug("invalidateLocation", { locations });
1396
+ let keysToInvalidate = [];
1322
1397
  if (locations.length === 0) {
1323
1398
  const allKeys = await this.keys();
1324
1399
  const primaryKeys = allKeys.filter((key) => !isComKey(key));
1325
- await this.invalidateItemKeys(primaryKeys);
1400
+ keysToInvalidate = primaryKeys;
1326
1401
  } else {
1327
1402
  const itemsInLocation = await this.allIn(locations);
1328
- const keysToInvalidate = itemsInLocation.map((item) => item.key);
1329
- await this.invalidateItemKeys(keysToInvalidate);
1403
+ keysToInvalidate = itemsInLocation.map((item) => item.key);
1330
1404
  }
1331
- await this.clearQueryResults();
1405
+ await this.invalidateItemKeys(keysToInvalidate);
1332
1406
  }
1333
1407
  async clearQueryResults() {
1334
1408
  logger15.trace("clearQueryResults");
@@ -2120,32 +2194,72 @@ var LocalStorageCacheMap = class _LocalStorageCacheMap extends CacheMap {
2120
2194
  }
2121
2195
  async invalidateItemKeys(keys) {
2122
2196
  logger17.debug("invalidateItemKeys", { keys });
2197
+ if (keys.length === 0) {
2198
+ return;
2199
+ }
2123
2200
  for (const key of keys) {
2124
- try {
2125
- await this.delete(key);
2126
- } catch (error) {
2127
- logger17.error("Failed to delete key during invalidation", { key, error });
2128
- }
2201
+ await this.delete(key);
2129
2202
  }
2203
+ await this.invalidateQueriesReferencingKeys(keys);
2130
2204
  }
2131
- async invalidateLocation(locations) {
2132
- logger17.debug("invalidateLocation", { locations });
2205
+ /**
2206
+ * Intelligently invalidate only queries that reference the affected keys
2207
+ * This prevents clearing all query results when only specific items change
2208
+ */
2209
+ async invalidateQueriesReferencingKeys(keys) {
2210
+ if (keys.length === 0) {
2211
+ return;
2212
+ }
2213
+ const hashedKeysToInvalidate = new Set(keys.map((key) => this.normalizedHashFunction(key)));
2133
2214
  try {
2134
- if (locations.length === 0) {
2135
- const allKeys = await this.keys();
2136
- const primaryKeys = allKeys.filter((key) => !isComKey3(key));
2137
- await this.invalidateItemKeys(primaryKeys);
2138
- } else {
2139
- const allKeys = await this.keys();
2140
- const keysToInvalidate = allKeys.filter((key) => key && isComKey3(key)).filter((key) => {
2141
- const compositeKey = key;
2142
- return isLocKeyArrayEqual(locations, compositeKey.loc);
2143
- });
2144
- await this.invalidateItemKeys(keysToInvalidate);
2215
+ const queryPrefix = `${this.keyPrefix}:query:`;
2216
+ const queryKeys = this.getAllKeysStartingWith(queryPrefix);
2217
+ const queriesToRemove = [];
2218
+ for (const queryKey of queryKeys) {
2219
+ const queryHash = queryKey.substring(queryPrefix.length);
2220
+ const stored = localStorage.getItem(queryKey);
2221
+ if (!stored) continue;
2222
+ try {
2223
+ const itemKeys = JSON.parse(stored);
2224
+ if (Array.isArray(itemKeys)) {
2225
+ const queryReferencesInvalidatedKey = itemKeys.some((itemKey) => {
2226
+ const hashedItemKey = this.normalizedHashFunction(itemKey);
2227
+ return hashedKeysToInvalidate.has(hashedItemKey);
2228
+ });
2229
+ if (queryReferencesInvalidatedKey) {
2230
+ queriesToRemove.push(queryKey);
2231
+ }
2232
+ }
2233
+ } catch (error) {
2234
+ logger17.debug("Failed to parse query result", { queryKey, error });
2235
+ }
2145
2236
  }
2146
- await this.clearQueryResults();
2237
+ queriesToRemove.forEach((queryKey) => {
2238
+ localStorage.removeItem(queryKey);
2239
+ });
2240
+ logger17.debug("Selectively invalidated queries referencing affected keys", {
2241
+ affectedKeys: keys.length,
2242
+ queriesRemoved: queriesToRemove.length,
2243
+ totalQueries: queryKeys.length
2244
+ });
2147
2245
  } catch (error) {
2148
- logger17.error("Error in invalidateLocation", { locations, error });
2246
+ logger17.error("Error during selective query invalidation, falling back to clearing all queries", { error });
2247
+ await this.clearQueryResults();
2248
+ }
2249
+ }
2250
+ async invalidateLocation(locations) {
2251
+ logger17.debug("invalidateLocation", { locations });
2252
+ let keysToInvalidate = [];
2253
+ if (locations.length === 0) {
2254
+ const allKeys = await this.keys();
2255
+ const primaryKeys = allKeys.filter((key) => !isComKey3(key));
2256
+ keysToInvalidate = primaryKeys;
2257
+ } else {
2258
+ const itemsInLocation = await this.allIn(locations);
2259
+ keysToInvalidate = itemsInLocation.map((item) => item.key);
2260
+ }
2261
+ if (keysToInvalidate.length > 0) {
2262
+ await this.invalidateItemKeys(keysToInvalidate);
2149
2263
  }
2150
2264
  }
2151
2265
  async clearQueryResults() {
@@ -2579,25 +2693,6 @@ var SessionStorageCacheMap = class _SessionStorageCacheMap extends CacheMap {
2579
2693
  logger18.error("Failed to delete query result from sessionStorage", { queryHash, error });
2580
2694
  }
2581
2695
  }
2582
- async invalidateItemKeys(keys) {
2583
- logger18.debug("invalidateItemKeys", { keys });
2584
- for (const key of keys) {
2585
- await this.delete(key);
2586
- }
2587
- }
2588
- async invalidateLocation(locations) {
2589
- logger18.debug("invalidateLocation", { locations });
2590
- if (locations.length === 0) {
2591
- const allKeys = await this.keys();
2592
- const primaryKeys = allKeys.filter((key) => !isComKey4(key));
2593
- await this.invalidateItemKeys(primaryKeys);
2594
- } else {
2595
- const itemsInLocation = await this.allIn(locations);
2596
- const keysToInvalidate = itemsInLocation.map((item) => item.key);
2597
- await this.invalidateItemKeys(keysToInvalidate);
2598
- }
2599
- await this.clearQueryResults();
2600
- }
2601
2696
  async clearQueryResults() {
2602
2697
  logger18.trace("clearQueryResults");
2603
2698
  const queryPrefix = `${this.keyPrefix}:query:`;
@@ -2676,6 +2771,83 @@ var SessionStorageCacheMap = class _SessionStorageCacheMap extends CacheMap {
2676
2771
  } catch {
2677
2772
  }
2678
2773
  }
2774
+ // Invalidation methods
2775
+ async invalidateItemKeys(keys) {
2776
+ logger18.debug("invalidateItemKeys", { keys });
2777
+ if (keys.length === 0) {
2778
+ return;
2779
+ }
2780
+ for (const key of keys) {
2781
+ await this.delete(key);
2782
+ }
2783
+ await this.invalidateQueriesReferencingKeys(keys);
2784
+ }
2785
+ /**
2786
+ * Intelligently invalidate only queries that reference the affected keys
2787
+ * This prevents clearing all query results when only specific items change
2788
+ */
2789
+ async invalidateQueriesReferencingKeys(keys) {
2790
+ if (keys.length === 0) {
2791
+ return;
2792
+ }
2793
+ const hashedKeysToInvalidate = new Set(keys.map((key) => this.normalizedHashFunction(key)));
2794
+ try {
2795
+ const queryPrefix = `${this.keyPrefix}:query:`;
2796
+ const queryKeys = [];
2797
+ for (let i = 0; i < sessionStorage.length; i++) {
2798
+ const key = sessionStorage.key(i);
2799
+ if (key && key.startsWith(queryPrefix)) {
2800
+ queryKeys.push(key);
2801
+ }
2802
+ }
2803
+ const queriesToRemove = [];
2804
+ for (const queryKey of queryKeys) {
2805
+ const queryHash = queryKey.substring(queryPrefix.length);
2806
+ const stored = sessionStorage.getItem(queryKey);
2807
+ if (!stored) continue;
2808
+ try {
2809
+ const itemKeys = JSON.parse(stored);
2810
+ if (Array.isArray(itemKeys)) {
2811
+ const queryReferencesInvalidatedKey = itemKeys.some((itemKey) => {
2812
+ const hashedItemKey = this.normalizedHashFunction(itemKey);
2813
+ return hashedKeysToInvalidate.has(hashedItemKey);
2814
+ });
2815
+ if (queryReferencesInvalidatedKey) {
2816
+ queriesToRemove.push(queryKey);
2817
+ }
2818
+ }
2819
+ } catch (error) {
2820
+ logger18.debug("Failed to parse query result", { queryKey, error });
2821
+ }
2822
+ }
2823
+ queriesToRemove.forEach((queryKey) => {
2824
+ sessionStorage.removeItem(queryKey);
2825
+ });
2826
+ logger18.debug("Selectively invalidated queries referencing affected keys", {
2827
+ affectedKeys: keys.length,
2828
+ queriesRemoved: queriesToRemove.length,
2829
+ totalQueries: queryKeys.length
2830
+ });
2831
+ } catch (error) {
2832
+ logger18.error("Error during selective query invalidation, falling back to clearing all queries", { error });
2833
+ await this.clearQueryResults();
2834
+ }
2835
+ }
2836
+ async invalidateLocation(locations) {
2837
+ logger18.debug("invalidateLocation", { locations });
2838
+ let keysToInvalidate = [];
2839
+ if (locations.length === 0) {
2840
+ const allKeys = await this.keys();
2841
+ const primaryKeys = allKeys.filter((key) => !isComKey4(key));
2842
+ keysToInvalidate = primaryKeys;
2843
+ } else {
2844
+ const itemsInLocation = await this.allIn(locations);
2845
+ keysToInvalidate = itemsInLocation.map((item) => item.key);
2846
+ }
2847
+ if (keysToInvalidate.length > 0) {
2848
+ await this.invalidateItemKeys(keysToInvalidate);
2849
+ }
2850
+ }
2679
2851
  async getCurrentSize() {
2680
2852
  let itemCount = 0;
2681
2853
  let sizeBytes = 0;
@@ -3193,20 +3365,92 @@ var AsyncIndexDBCacheMap = class _AsyncIndexDBCacheMap {
3193
3365
  }
3194
3366
  async invalidateItemKeys(keys) {
3195
3367
  logger19.debug("invalidateItemKeys", { keys });
3368
+ if (keys.length === 0) {
3369
+ return;
3370
+ }
3196
3371
  for (const key of keys) {
3197
3372
  await this.delete(key);
3198
3373
  }
3374
+ await this.invalidateQueriesReferencingKeys(keys);
3375
+ }
3376
+ /**
3377
+ * Intelligently invalidate only queries that reference the affected keys
3378
+ * This prevents clearing all query results when only specific items change
3379
+ */
3380
+ async invalidateQueriesReferencingKeys(keys) {
3381
+ if (keys.length === 0) {
3382
+ return;
3383
+ }
3384
+ const hashedKeysToInvalidate = new Set(keys.map((key) => this.normalizedHashFunction(key)));
3385
+ try {
3386
+ const db = await this.getDB();
3387
+ const transaction = db.transaction([this.storeName], "readonly");
3388
+ const store = transaction.objectStore(this.storeName);
3389
+ const queryResults = await new Promise((resolve, reject) => {
3390
+ const request = store.getAll();
3391
+ request.onerror = () => reject(request.error);
3392
+ request.onsuccess = () => {
3393
+ const allData = request.result;
3394
+ const queryResults2 = {};
3395
+ for (const item of allData) {
3396
+ if (item.key && typeof item.key === "string" && item.key.startsWith("query:") && item.value) {
3397
+ try {
3398
+ const queryHash = item.key.substring(6);
3399
+ const itemKeys = JSON.parse(item.value);
3400
+ if (Array.isArray(itemKeys)) {
3401
+ queryResults2[queryHash] = itemKeys;
3402
+ }
3403
+ } catch (error) {
3404
+ logger19.debug("Failed to parse query result", { key: item.key, error });
3405
+ }
3406
+ }
3407
+ }
3408
+ resolve(queryResults2);
3409
+ };
3410
+ });
3411
+ const queriesToRemove = [];
3412
+ for (const [queryHash, itemKeys] of Object.entries(queryResults)) {
3413
+ const queryReferencesInvalidatedKey = itemKeys.some((itemKey) => {
3414
+ const hashedItemKey = this.normalizedHashFunction(itemKey);
3415
+ return hashedKeysToInvalidate.has(hashedItemKey);
3416
+ });
3417
+ if (queryReferencesInvalidatedKey) {
3418
+ queriesToRemove.push(queryHash);
3419
+ }
3420
+ }
3421
+ if (queriesToRemove.length > 0) {
3422
+ const writeTransaction = db.transaction([this.storeName], "readwrite");
3423
+ const writeStore = writeTransaction.objectStore(this.storeName);
3424
+ for (const queryHash of queriesToRemove) {
3425
+ const deleteRequest = writeStore.delete(`query:${queryHash}`);
3426
+ await new Promise((resolve, reject) => {
3427
+ deleteRequest.onerror = () => reject(deleteRequest.error);
3428
+ deleteRequest.onsuccess = () => resolve();
3429
+ });
3430
+ }
3431
+ }
3432
+ logger19.debug("Selectively invalidated queries referencing affected keys", {
3433
+ affectedKeys: keys.length,
3434
+ queriesRemoved: queriesToRemove.length,
3435
+ totalQueries: Object.keys(queryResults).length
3436
+ });
3437
+ } catch (error) {
3438
+ logger19.error("Error during selective query invalidation, falling back to clearing all queries", { error });
3439
+ await this.clearQueryResults();
3440
+ }
3199
3441
  }
3200
3442
  async invalidateLocation(locations) {
3201
3443
  logger19.debug("invalidateLocation", { locations });
3444
+ let keysToInvalidate = [];
3202
3445
  if (locations.length === 0) {
3203
3446
  await this.clearQueryResults();
3204
3447
  } else {
3205
3448
  const itemsInLocation = await this.allIn(locations);
3206
- const keysToInvalidate = itemsInLocation.map((item) => item.key);
3449
+ keysToInvalidate = itemsInLocation.map((item) => item.key);
3450
+ }
3451
+ if (keysToInvalidate.length > 0) {
3207
3452
  await this.invalidateItemKeys(keysToInvalidate);
3208
3453
  }
3209
- await this.clearQueryResults();
3210
3454
  }
3211
3455
  async clearQueryResults() {
3212
3456
  logger19.trace("clearQueryResults");
@@ -3454,14 +3698,41 @@ var IndexDBCacheMap = class _IndexDBCacheMap extends CacheMap {
3454
3698
  }
3455
3699
  // Invalidation methods
3456
3700
  async invalidateItemKeys(keys) {
3701
+ logger20.debug("invalidateItemKeys", { keys });
3702
+ if (keys.length === 0) {
3703
+ return;
3704
+ }
3705
+ for (const key of keys) {
3706
+ await this.delete(key);
3707
+ }
3708
+ this.invalidateQueriesReferencingKeys(keys);
3709
+ }
3710
+ /**
3711
+ * Intelligently invalidate only queries that reference the affected keys
3712
+ * This prevents clearing all query results when only specific items change
3713
+ */
3714
+ invalidateQueriesReferencingKeys(keys) {
3715
+ if (keys.length === 0) {
3716
+ return;
3717
+ }
3718
+ const hashedKeysToInvalidate = new Set(keys.map((key) => this.normalizedHashFunction(key)));
3719
+ const queriesToRemove = [];
3457
3720
  for (const queryHash in this.queryResultCache) {
3458
3721
  const entry = this.queryResultCache[queryHash];
3459
3722
  if (entry && entry.itemKeys.some((key) => keys.some(
3460
3723
  (affectedKey) => this.normalizedHashFunction(affectedKey) === this.normalizedHashFunction(key)
3461
3724
  ))) {
3462
- delete this.queryResultCache[queryHash];
3725
+ queriesToRemove.push(queryHash);
3463
3726
  }
3464
3727
  }
3728
+ queriesToRemove.forEach((queryHash) => {
3729
+ delete this.queryResultCache[queryHash];
3730
+ });
3731
+ logger20.debug("Selectively invalidated queries referencing affected keys", {
3732
+ affectedKeys: keys.length,
3733
+ queriesRemoved: queriesToRemove.length,
3734
+ totalQueries: Object.keys(this.queryResultCache).length
3735
+ });
3465
3736
  }
3466
3737
  async invalidateLocation(locations) {
3467
3738
  const itemsToDelete = [];
@@ -3471,7 +3742,7 @@ var IndexDBCacheMap = class _IndexDBCacheMap extends CacheMap {
3471
3742
  itemsToDelete.push(key);
3472
3743
  }
3473
3744
  }
3474
- this.invalidateItemKeys(itemsToDelete);
3745
+ await this.invalidateItemKeys(itemsToDelete);
3475
3746
  }
3476
3747
  // Metadata operations
3477
3748
  async getMetadata(key) {
@@ -5511,12 +5782,14 @@ var CacheEventEmitter = class {
5511
5782
  if (this.isDestroyed) {
5512
5783
  return;
5513
5784
  }
5785
+ let emittedCount = 0;
5514
5786
  for (const subscription of this.subscriptions.values()) {
5515
5787
  if (!subscription.isActive) {
5516
5788
  continue;
5517
5789
  }
5518
5790
  if (this.shouldEmitToSubscription(event, subscription)) {
5519
5791
  this.emitToSubscription(event, subscription);
5792
+ emittedCount++;
5520
5793
  }
5521
5794
  }
5522
5795
  }
@@ -5856,7 +6129,8 @@ var createCache = (api, coordinate, registry, options) => {
5856
6129
  getStats: () => statsManager.getStats(),
5857
6130
  subscribe: (listener, options2) => {
5858
6131
  statsManager.incrementSubscriptions();
5859
- return eventEmitter.subscribe(listener, options2);
6132
+ const subscription = eventEmitter.subscribe(listener, options2);
6133
+ return subscription;
5860
6134
  },
5861
6135
  unsubscribe: (subscription) => {
5862
6136
  const result = eventEmitter.unsubscribe(subscription.id);
@@ -30,6 +30,11 @@ export declare class MemoryCacheMap<V extends Item<S, L1, L2, L3, L4, L5>, S ext
30
30
  hasQueryResult(queryHash: string): Promise<boolean>;
31
31
  deleteQueryResult(queryHash: string): Promise<void>;
32
32
  invalidateItemKeys(keys: (ComKey<S, L1, L2, L3, L4, L5> | PriKey<S>)[]): Promise<void>;
33
+ /**
34
+ * Intelligently invalidate only queries that reference the affected keys
35
+ * This prevents clearing all query results when only specific items change
36
+ */
37
+ private invalidateQueriesReferencingKeys;
33
38
  invalidateLocation(locations: LocKeyArray<L1, L2, L3, L4, L5> | []): Promise<void>;
34
39
  clearQueryResults(): Promise<void>;
35
40
  getMetadata(key: string): Promise<CacheItemMetadata | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryCacheMap.d.ts","sourceRoot":"","sources":["../../src/memory/MemoryCacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryCacheMap.d.ts","sourceRoot":"","sources":["../../src/memory/MemoryCacheMap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/ops/action.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAK/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,QAAQ,MAAM,EACd,MAAM,GAAG,YAAK,EACd,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAwCrD,CAAC"}
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/ops/action.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,QAAQ,MAAM,EACd,MAAM,GAAG,YAAK,EACd,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CA6DrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/ops/create.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EAEZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EACvC,YAAW,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,aAAK,EACpD,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAuBrD,CAAC"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/ops/create.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EAEZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EACvC,YAAW,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,aAAK,EACpD,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAiCrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/ops/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CA+BhD,CAAC"}
1
+ {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/ops/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAyChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/ops/update.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EACvC,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CA6DrD,CAAC"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/ops/update.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,IAAI,EACJ,MAAM,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EAEzB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAC9C,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EACvC,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAC9C,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAwErD,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fjell/cache",
3
3
  "description": "Cache for Fjell",
4
- "version": "4.7.8",
4
+ "version": "4.7.10",
5
5
  "keywords": [
6
6
  "cache",
7
7
  "fjell"
@@ -36,18 +36,18 @@
36
36
  "docs:test": "cd docs && npm run test"
37
37
  },
38
38
  "dependencies": {
39
- "@fjell/client-api": "^4.4.26",
40
- "@fjell/core": "^4.4.37",
41
- "@fjell/http-api": "^4.4.35",
42
- "@fjell/logging": "^4.4.43",
43
- "@fjell/registry": "^4.4.31",
39
+ "@fjell/client-api": "^4.4.27",
40
+ "@fjell/core": "^4.4.38",
41
+ "@fjell/http-api": "^4.4.36",
42
+ "@fjell/logging": "^4.4.44",
43
+ "@fjell/registry": "^4.4.32",
44
44
  "fast-safe-stringify": "^2.1.1",
45
45
  "flatted": "^3.3.3"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@eslint/eslintrc": "^3.3.1",
49
49
  "@eslint/js": "^9.33.0",
50
- "@fjell/eslint-config": "^1.1.20",
50
+ "@fjell/eslint-config": "^1.1.21",
51
51
  "@swc/core": "^1.13.3",
52
52
  "@tsconfig/recommended": "^1.0.10",
53
53
  "@types/multer": "^2.0.0",