@cardano-sdk/web-extension 0.38.13 → 0.38.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.
@@ -1 +1 @@
1
- {"version":3,"file":"persistentCacheStorage.d.ts","sourceRoot":"","sources":["../../../../src/storage/persistentCacheStorage/persistentCacheStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAgD,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,aAAK,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC;AAExE,aAAK,YAAY,GAAG;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAIpD,eAAO,MAAM,eAAe,iBAAkB,MAAM,WAA+B,CAAC;AAEpF,eAAO,MAAM,WAAW,iBAAkB,MAAM,OAAO,MAAM,WAAkC,CAAC;AAOhG,eAAO,MAAM,iCAAiC;2BAQnB,YAAY;qCACF,MAAM;kBACzB,MAAM;kBACN,MAAM;gBAiFrB,CAAC;AAEJ,eAAO,MAAM,4BAA4B;2BAtFd,YAAY;qCACF,MAAM;kBACzB,MAAM;kBACN,MAAM;gBAmFsE,CAAC;AAE/F,oBAAY,4BAA4B,GAAG,OAAO,4BAA4B,CAAC"}
1
+ {"version":3,"file":"persistentCacheStorage.d.ts","sourceRoot":"","sources":["../../../../src/storage/persistentCacheStorage/persistentCacheStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAgD,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,aAAK,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC;AAExE,aAAK,YAAY,GAAG;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAIpD,eAAO,MAAM,eAAe,iBAAkB,MAAM,WAA+B,CAAC;AAEpF,eAAO,MAAM,WAAW,iBAAkB,MAAM,OAAO,MAAM,WAAkC,CAAC;AAOhG,eAAO,MAAM,iCAAiC;2BAQnB,YAAY;qCACF,MAAM;kBACzB,MAAM;kBACN,MAAM;gBA0FrB,CAAC;AAEJ,eAAO,MAAM,4BAA4B;2BA/Fd,YAAY;qCACF,MAAM;kBACzB,MAAM;kBACN,MAAM;gBA4FsE,CAAC;AAE/F,oBAAY,4BAA4B,GAAG,OAAO,4BAA4B,CAAC"}
@@ -9,6 +9,7 @@ const makeItemKey = (resourceName, key) => `${resourceName}-item-${key}`;
9
9
  exports.makeItemKey = makeItemKey;
10
10
  const isGetBytesInUsePresent = (storageLocal) => 'getBytesInUse' in storageLocal;
11
11
  const makePersistentCacheStorageFactory = (createVolatileCache) => ({ extensionLocalStorage, fallbackMaxCollectionItemsGuard, resourceName, quotaInBytes }) => {
12
+ let metadataUpdateQueue = Promise.resolve();
12
13
  const loaded = createVolatileCache();
13
14
  const metadataKey = (0, exports.makeMetadataKey)(resourceName);
14
15
  const getItemKey = (key) => (0, exports.makeItemKey)(resourceName, key);
@@ -16,15 +17,21 @@ const makePersistentCacheStorageFactory = (createVolatileCache) => ({ extensionL
16
17
  const result = await extensionLocalStorage.get(metadataKey);
17
18
  return result[metadataKey];
18
19
  };
20
+ const updateMetadata = async (mutate) => {
21
+ metadataUpdateQueue = metadataUpdateQueue.then(async () => {
22
+ const currentMetadata = await getMetadata();
23
+ const nextMetadata = mutate(currentMetadata);
24
+ await extensionLocalStorage.set({ [metadataKey]: nextMetadata });
25
+ });
26
+ return metadataUpdateQueue;
27
+ };
19
28
  const updateAccessTime = async (key) => {
20
- const metadata = await getMetadata();
21
- const nextMetadata = {
29
+ await updateMetadata((metadata) => ({
22
30
  ...metadata,
23
31
  [key]: {
24
32
  accessTime: Date.now()
25
33
  }
26
- };
27
- await extensionLocalStorage.set({ [metadataKey]: nextMetadata });
34
+ }));
28
35
  };
29
36
  const isQuotaExceeded = async () => {
30
37
  const metadata = await getMetadata();
@@ -36,7 +43,7 @@ const makePersistentCacheStorageFactory = (createVolatileCache) => ({ extensionL
36
43
  return allCollectionKeys.length > fallbackMaxCollectionItemsGuard;
37
44
  };
38
45
  const evict = async () => {
39
- let metadata = await getMetadata();
46
+ const metadata = await getMetadata();
40
47
  const mostDatedKeysToPurge = Object.entries(metadata)
41
48
  .map(([key, { accessTime }]) => ({ accessTime, key }))
42
49
  .sort((a, b) => a.accessTime - b.accessTime)
@@ -46,11 +53,12 @@ const makePersistentCacheStorageFactory = (createVolatileCache) => ({ extensionL
46
53
  })
47
54
  .map((i) => i.key);
48
55
  await extensionLocalStorage.remove(mostDatedKeysToPurge);
49
- metadata = await getMetadata();
50
- for (const key of mostDatedKeysToPurge) {
51
- delete metadata[key];
52
- }
53
- await extensionLocalStorage.set({ [metadataKey]: metadata });
56
+ await updateMetadata((currentMetadata) => {
57
+ for (const key of mostDatedKeysToPurge) {
58
+ delete currentMetadata[key];
59
+ }
60
+ return currentMetadata;
61
+ });
54
62
  };
55
63
  return {
56
64
  async get(key) {
@@ -1 +1 @@
1
- {"version":3,"file":"persistentCacheStorage.js","sourceRoot":"","sources":["../../../../src/storage/persistentCacheStorage/persistentCacheStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistentCacheStorage.js","sourceRoot":"","sources":["../../../../src/storage/persistentCacheStorage/persistentCacheStorage.ts"],"names":[],"mappings":"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"}