@cardano-sdk/web-extension 0.38.13 → 0.38.14
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/cjs/storage/persistentCacheStorage/persistentCacheStorage.d.ts.map +1 -1
- package/dist/cjs/storage/persistentCacheStorage/persistentCacheStorage.js +18 -10
- package/dist/cjs/storage/persistentCacheStorage/persistentCacheStorage.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/storage/persistentCacheStorage/persistentCacheStorage.d.ts.map +1 -1
- package/dist/esm/storage/persistentCacheStorage/persistentCacheStorage.js +18 -10
- package/dist/esm/storage/persistentCacheStorage/persistentCacheStorage.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -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;
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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":";;;AAAA,4CAA6F;AAW7F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAE3B,MAAM,eAAe,GAAG,CAAC,YAAoB,EAAE,EAAE,CAAC,GAAG,YAAY,WAAW,CAAC;AAAvE,QAAA,eAAe,mBAAwD;AAE7E,MAAM,WAAW,GAAG,CAAC,YAAoB,EAAE,GAAW,EAAE,EAAE,CAAC,GAAG,YAAY,SAAS,GAAG,EAAE,CAAC;AAAnF,QAAA,WAAW,eAAwE;AAEhG,MAAM,sBAAsB,GAAG,CAC7B,YAA0B,EACuE,EAAE,CACnG,eAAe,IAAI,YAAY,CAAC;AAE3B,MAAM,iCAAiC,GAC5C,CAAC,mBAA4C,EAAE,EAAE,CACjD,CAAI,EACF,qBAAqB,EACrB,+BAA+B,EAC/B,YAAY,EACZ,YAAY,EAMb,EAAY,EAAE;IACb,MAAM,MAAM,GAAG,mBAAmB,EAAK,CAAC;IACxC,MAAM,WAAW,GAAG,IAAA,uBAAe,EAAC,YAAY,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IAEnE,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;QAC7B,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC,WAAW,CAAa,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"persistentCacheStorage.js","sourceRoot":"","sources":["../../../../src/storage/persistentCacheStorage/persistentCacheStorage.ts"],"names":[],"mappings":"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"}
|