@ckb-ccc/core 1.1.0 → 1.2.0
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/CHANGELOG.md +12 -0
- package/dist/ckb/transaction.d.ts.map +1 -1
- package/dist/ckb/transaction.js +0 -3
- package/dist/client/cache/memory.advanced.d.ts +13 -1
- package/dist/client/cache/memory.advanced.d.ts.map +1 -1
- package/dist/client/cache/memory.advanced.js +26 -0
- package/dist/client/cache/memory.d.ts +3 -0
- package/dist/client/cache/memory.d.ts.map +1 -1
- package/dist/client/cache/memory.js +11 -15
- package/dist.commonjs/ckb/transaction.d.ts.map +1 -1
- package/dist.commonjs/ckb/transaction.js +0 -3
- package/dist.commonjs/client/cache/memory.advanced.d.ts +13 -1
- package/dist.commonjs/client/cache/memory.advanced.d.ts.map +1 -1
- package/dist.commonjs/client/cache/memory.advanced.js +28 -0
- package/dist.commonjs/client/cache/memory.d.ts +3 -0
- package/dist.commonjs/client/cache/memory.d.ts.map +1 -1
- package/dist.commonjs/client/cache/memory.js +10 -14
- package/package.json +1 -1
- package/src/ckb/transaction.ts +0 -4
- package/src/client/cache/memory.advanced.ts +39 -0
- package/src/client/cache/memory.ts +18 -17
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @ckb-ccc/core
|
|
2
2
|
|
|
3
|
+
## 1.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#116](https://github.com/ckb-devrel/ccc/pull/116) [`128e87b`](https://github.com/ckb-devrel/ccc/commit/128e87b5ca3e97bfe7842e76f786aa6aec010797) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat: Client LRU cache
|
|
8
|
+
|
|
9
|
+
## 1.1.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [#114](https://github.com/ckb-devrel/ccc/pull/114) [`925991c`](https://github.com/ckb-devrel/ccc/commit/925991c8a24b1f34667e30b28b69812e936e3928) Thanks [@Hanssen0](https://github.com/Hanssen0)! - fix: udtBalanceFrom
|
|
14
|
+
|
|
3
15
|
## 1.1.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,mCAAmC,CAAC;AAC9F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAM/E,OAAO,EAAE,MAAM,EAAsB,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EACL,GAAG,EACH,OAAO,EAKR,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAa,MAAM,aAAa,CAAC;AAE5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAIvD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACnD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAgBrD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,KAAK,CAE1D;AAED;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAE1D;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAMa,QAAS,SAAQ,aAAyC;IAS5D,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IATnB;;;;;OAKG;gBAGM,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,GAAG;IAKnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,QAAQ;CAM9C;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,UAAW,SAAQ,eAA6C;IAUlE,QAAQ,EAAE,GAAG;IACb,IAAI,EAAE,MAAM;IACZ,IAAI,CAAC,EAAE,MAAM;IAXtB;;;;;;OAMG;gBAGM,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,YAAA;IAKtB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;CAWpD;AACD,eAAO,MAAM,aAAa,2CAAyB,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AACF;;GAEG;AACH,qBAAa,IAAI;IAUN,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,GAAG;IAXxB;;;;;;OAMG;gBAGM,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,GAAG;IAGxB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAYjC;;;;;;;;;OASG;IACH,KAAK,IAAI,IAAI;CAOd;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACpD;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACpC;;GAEG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,KAAK,CAErD;AACD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAQhD;AACD;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,GAAG,CAQpD;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB;IACE,QAAQ,EAAE,UAAU,GAAG,UAAU,CAAC;IAClC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW,CAAC;IAC9C,KAAK,EAAE,OAAO,CAAC;CAChB,GACD,OAAO,CAAC;;;;;;;;;;;;;AACZ;;GAEG;AACH,qBAGa,KAAM,SAAQ,UAAmC;IAUnD,QAAQ,EAAE,UAAU,GAAG,UAAU;IACjC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW;IAC7C,KAAK,EAAE,GAAG;IAXnB;;;;;;OAMG;gBAGM,QAAQ,EAAE,UAAU,GAAG,UAAU,EACjC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW,EAC7C,KAAK,EAAE,GAAG;IAKnB;;;;;;;;;OASG;IACH,KAAK,IAAI,KAAK;IAId;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;IAYpC;;;;;;;;;OASG;IAEH,KAAK,IAAI,GAAG;IAYZ;;;;;;;;;;OAUG;IAEH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK;CAWxC;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,EAAE,YAAY,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAWa,SAAU,SAAQ,cAA2C;IAW/D,cAAc,EAAE,QAAQ;IACxB,KAAK,EAAE,GAAG;IACV,UAAU,CAAC,EAAE,UAAU;IACvB,UAAU,CAAC,EAAE,GAAG;IAbzB;;;;;;;OAOG;gBAGM,cAAc,EAAE,QAAQ,EACxB,KAAK,EAAE,GAAG,EACV,UAAU,CAAC,EAAE,UAAU,YAAA,EACvB,UAAU,CAAC,EAAE,GAAG,YAAA;IAKzB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,SAAS;IAahD;;;;;;;;;OASG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAaxD;AACD,eAAO,MAAM,YAAY,yCAAwB,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAMa,OAAQ,SAAQ,YAAuC;IASzD,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,OAAO;IATzB;;;;;OAKG;gBAGM,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO;IAKzB;;;;;;;;;OASG;IAEH,KAAK,IAAI,OAAO;IAIhB;;;;;;;;;;;;;OAaG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;CAU3C;AACD,eAAO,MAAM,UAAU,qCAAsB,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,WAAY,SAAQ,gBAG9B;IAUQ,IAAI,CAAC,EAAE,GAAG;IACV,SAAS,CAAC,EAAE,GAAG;IACf,UAAU,CAAC,EAAE,GAAG;IAXzB;;;;;;OAMG;gBAGM,IAAI,CAAC,EAAE,GAAG,YAAA,EACV,SAAS,CAAC,EAAE,GAAG,YAAA,EACf,UAAU,CAAC,EAAE,GAAG,YAAA;IAKzB;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,WAAW;CAWvD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
|
package/dist/ckb/transaction.js
CHANGED
|
@@ -515,9 +515,6 @@ export { WitnessArgs };
|
|
|
515
515
|
*/
|
|
516
516
|
export function udtBalanceFrom(dataLike) {
|
|
517
517
|
const data = bytesFrom(dataLike).slice(0, 16);
|
|
518
|
-
if (data.length !== 16) {
|
|
519
|
-
throw new Error("Invalid UDT cell data");
|
|
520
|
-
}
|
|
521
518
|
return numFromBytes(data);
|
|
522
519
|
}
|
|
523
520
|
export const RawTransaction = mol.table({
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import { CellLike, ScriptLike } from "../../ckb/index.js";
|
|
1
|
+
import { Cell, CellLike, ScriptLike } from "../../ckb/index.js";
|
|
2
2
|
import { HexLike } from "../../hex/index.js";
|
|
3
3
|
import { NumLike } from "../../num/index.js";
|
|
4
4
|
import { ClientCollectableSearchKeyLike } from "../clientTypes.advanced.js";
|
|
5
|
+
export type CellRecord = [
|
|
6
|
+
false,
|
|
7
|
+
Pick<Cell, "outPoint"> & Partial<Pick<Cell, "cellOutput" | "outputData">>
|
|
8
|
+
] | [true, Cell] | [undefined, Cell];
|
|
5
9
|
export declare function filterData(dataLike: HexLike, filterLike: HexLike | undefined, filterMode: "exact" | "prefix" | "partial"): boolean;
|
|
6
10
|
export declare function filterScript(valueLike: ScriptLike | undefined, filterLike: ScriptLike | undefined, filterMode: "prefix" | "exact" | "partial"): boolean;
|
|
7
11
|
export declare function filterNumByRange(lengthLike: NumLike, range: [NumLike, NumLike] | undefined): boolean;
|
|
8
12
|
export declare function filterScriptByLenRange(valueLike?: ScriptLike, scriptLenRange?: [NumLike, NumLike]): boolean;
|
|
9
13
|
export declare function filterCell(searchKeyLike: ClientCollectableSearchKeyLike, cellLike: CellLike): boolean;
|
|
14
|
+
export declare class MapLru<K, V> extends Map<K, V> {
|
|
15
|
+
private readonly capacity;
|
|
16
|
+
private readonly lru;
|
|
17
|
+
constructor(capacity: number);
|
|
18
|
+
access(key: K): void;
|
|
19
|
+
get(key: K): V | undefined;
|
|
20
|
+
set(key: K, value: V): this;
|
|
21
|
+
}
|
|
10
22
|
//# sourceMappingURL=memory.advanced.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.advanced.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.advanced.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"memory.advanced.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.advanced.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAU,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,8BAA8B,EAE/B,MAAM,4BAA4B,CAAC;AAIpC,MAAM,MAAM,UAAU,GAClB;IACE,KAAK;IACL,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC;CAC1E,GACD,CAAC,IAAI,EAAE,IAAI,CAAC,GACZ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEtB,wBAAgB,UAAU,CACxB,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GACzC,OAAO,CAgBT;AAED,wBAAgB,YAAY,CAC1B,SAAS,EAAE,UAAU,GAAG,SAAS,EACjC,UAAU,EAAE,UAAU,GAAG,SAAS,EAClC,UAAU,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GACzC,OAAO,CAkBT;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,OAAO,EACnB,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,SAAS,GACpC,OAAO,CAQT;AAED,wBAAgB,sBAAsB,CACpC,SAAS,CAAC,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,GAClC,OAAO,CAYT;AAED,wBAAgB,UAAU,CACxB,aAAa,EAAE,8BAA8B,EAC7C,QAAQ,EAAE,QAAQ,GACjB,OAAO,CA4CT;AAED,qBAAa,MAAM,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAG7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAW;gBAEF,QAAQ,EAAE,MAAM;IAI7C,MAAM,CAAC,GAAG,EAAE,CAAC;IAYb,GAAG,CAAC,GAAG,EAAE,CAAC;IAKV,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;CAIrB"}
|
|
@@ -78,3 +78,29 @@ export function filterCell(searchKeyLike, cellLike) {
|
|
|
78
78
|
}
|
|
79
79
|
return true;
|
|
80
80
|
}
|
|
81
|
+
export class MapLru extends Map {
|
|
82
|
+
constructor(capacity) {
|
|
83
|
+
super();
|
|
84
|
+
this.capacity = capacity;
|
|
85
|
+
this.lru = [];
|
|
86
|
+
}
|
|
87
|
+
access(key) {
|
|
88
|
+
const index = this.lru.indexOf(key);
|
|
89
|
+
if (index !== -1) {
|
|
90
|
+
this.lru.splice(index, 1);
|
|
91
|
+
}
|
|
92
|
+
this.lru.push(key);
|
|
93
|
+
if (this.lru.length > this.capacity) {
|
|
94
|
+
this.delete(this.lru[0]);
|
|
95
|
+
this.lru.shift();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
get(key) {
|
|
99
|
+
this.access(key);
|
|
100
|
+
return super.get(key);
|
|
101
|
+
}
|
|
102
|
+
set(key, value) {
|
|
103
|
+
this.access(key);
|
|
104
|
+
return super.set(key, value);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -3,6 +3,8 @@ import { HexLike } from "../../hex/index.js";
|
|
|
3
3
|
import { ClientCollectableSearchKeyLike } from "../clientTypes.advanced.js";
|
|
4
4
|
import { ClientCache } from "./cache.js";
|
|
5
5
|
export declare class ClientCacheMemory extends ClientCache {
|
|
6
|
+
private readonly maxCells;
|
|
7
|
+
private readonly maxTxs;
|
|
6
8
|
/**
|
|
7
9
|
* OutPoint => [isLive, Cell | OutPoint]
|
|
8
10
|
*/
|
|
@@ -11,6 +13,7 @@ export declare class ClientCacheMemory extends ClientCache {
|
|
|
11
13
|
* TX Hash => Transaction
|
|
12
14
|
*/
|
|
13
15
|
private readonly knownTransactions;
|
|
16
|
+
constructor(maxCells?: number, maxTxs?: number);
|
|
14
17
|
markUsable(...cellLikes: (CellLike | CellLike[])[]): Promise<void>;
|
|
15
18
|
markUnusable(...outPointLikes: (OutPointLike | OutPointLike[])[]): Promise<void>;
|
|
16
19
|
clear(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,QAAQ,EAER,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,QAAQ,EAER,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,qBAAa,iBAAkB,SAAQ,WAAW;IAY9C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZzB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IAEnD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA8B;gBAG7C,QAAQ,SAAM,EACd,MAAM,SAAM;IAQzB,UAAU,CAAC,GAAG,SAAS,EAAE,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IASlE,YAAY,CAChB,GAAG,aAAa,EAAE,CAAC,YAAY,GAAG,YAAY,EAAE,CAAC,EAAE,GAClD,OAAO,CAAC,IAAI,CAAC;IAcV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,SAAS,CACd,OAAO,EAAE,8BAA8B,GACtC,cAAc,CAAC,IAAI,CAAC;IAajB,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IAS9D,UAAU,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAMxD,kBAAkB,CACtB,GAAG,YAAY,EAAE,CAAC,eAAe,GAAG,eAAe,EAAE,CAAC,EAAE,GACvD,OAAO,CAAC,IAAI,CAAC;IAMV,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAKrE,WAAW,CAAC,GAAG,KAAK,EAAE,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAWtE"}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
import { Cell, OutPoint, Transaction, } from "../../ckb/index.js";
|
|
2
2
|
import { hexFrom } from "../../hex/index.js";
|
|
3
3
|
import { ClientCache } from "./cache.js";
|
|
4
|
-
import { filterCell } from "./memory.advanced.js";
|
|
4
|
+
import { filterCell, MapLru } from "./memory.advanced.js";
|
|
5
5
|
export class ClientCacheMemory extends ClientCache {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.
|
|
12
|
-
/**
|
|
13
|
-
* TX Hash => Transaction
|
|
14
|
-
*/
|
|
15
|
-
this.knownTransactions = new Map();
|
|
6
|
+
constructor(maxCells = 512, maxTxs = 256) {
|
|
7
|
+
super();
|
|
8
|
+
this.maxCells = maxCells;
|
|
9
|
+
this.maxTxs = maxTxs;
|
|
10
|
+
this.cells = new MapLru(this.maxCells);
|
|
11
|
+
this.knownTransactions = new MapLru(this.maxTxs);
|
|
16
12
|
}
|
|
17
13
|
async markUsable(...cellLikes) {
|
|
18
14
|
cellLikes.flat().forEach((cellLike) => {
|
|
@@ -34,18 +30,18 @@ export class ClientCacheMemory extends ClientCache {
|
|
|
34
30
|
});
|
|
35
31
|
}
|
|
36
32
|
async clear() {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
33
|
+
this.cells.clear();
|
|
34
|
+
this.knownTransactions.clear();
|
|
40
35
|
}
|
|
41
36
|
async *findCells(keyLike) {
|
|
42
|
-
for (const [isLive, cell] of this.cells.
|
|
37
|
+
for (const [key, [isLive, cell]] of this.cells.entries()) {
|
|
43
38
|
if (!isLive) {
|
|
44
39
|
continue;
|
|
45
40
|
}
|
|
46
41
|
if (!filterCell(keyLike, cell)) {
|
|
47
42
|
continue;
|
|
48
43
|
}
|
|
44
|
+
this.cells.access(key);
|
|
49
45
|
yield cell.clone();
|
|
50
46
|
}
|
|
51
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -526,9 +526,6 @@ exports.WitnessArgs = WitnessArgs = WitnessArgs_1 = __decorate([
|
|
|
526
526
|
*/
|
|
527
527
|
function udtBalanceFrom(dataLike) {
|
|
528
528
|
const data = (0, index_js_1.bytesFrom)(dataLike).slice(0, 16);
|
|
529
|
-
if (data.length !== 16) {
|
|
530
|
-
throw new Error("Invalid UDT cell data");
|
|
531
|
-
}
|
|
532
529
|
return (0, index_js_6.numFromBytes)(data);
|
|
533
530
|
}
|
|
534
531
|
exports.RawTransaction = index_js_5.mol.table({
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import { CellLike, ScriptLike } from "../../ckb/index.js";
|
|
1
|
+
import { Cell, CellLike, ScriptLike } from "../../ckb/index.js";
|
|
2
2
|
import { HexLike } from "../../hex/index.js";
|
|
3
3
|
import { NumLike } from "../../num/index.js";
|
|
4
4
|
import { ClientCollectableSearchKeyLike } from "../clientTypes.advanced.js";
|
|
5
|
+
export type CellRecord = [
|
|
6
|
+
false,
|
|
7
|
+
Pick<Cell, "outPoint"> & Partial<Pick<Cell, "cellOutput" | "outputData">>
|
|
8
|
+
] | [true, Cell] | [undefined, Cell];
|
|
5
9
|
export declare function filterData(dataLike: HexLike, filterLike: HexLike | undefined, filterMode: "exact" | "prefix" | "partial"): boolean;
|
|
6
10
|
export declare function filterScript(valueLike: ScriptLike | undefined, filterLike: ScriptLike | undefined, filterMode: "prefix" | "exact" | "partial"): boolean;
|
|
7
11
|
export declare function filterNumByRange(lengthLike: NumLike, range: [NumLike, NumLike] | undefined): boolean;
|
|
8
12
|
export declare function filterScriptByLenRange(valueLike?: ScriptLike, scriptLenRange?: [NumLike, NumLike]): boolean;
|
|
9
13
|
export declare function filterCell(searchKeyLike: ClientCollectableSearchKeyLike, cellLike: CellLike): boolean;
|
|
14
|
+
export declare class MapLru<K, V> extends Map<K, V> {
|
|
15
|
+
private readonly capacity;
|
|
16
|
+
private readonly lru;
|
|
17
|
+
constructor(capacity: number);
|
|
18
|
+
access(key: K): void;
|
|
19
|
+
get(key: K): V | undefined;
|
|
20
|
+
set(key: K, value: V): this;
|
|
21
|
+
}
|
|
10
22
|
//# sourceMappingURL=memory.advanced.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.advanced.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.advanced.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"memory.advanced.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.advanced.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAU,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,8BAA8B,EAE/B,MAAM,4BAA4B,CAAC;AAIpC,MAAM,MAAM,UAAU,GAClB;IACE,KAAK;IACL,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC;CAC1E,GACD,CAAC,IAAI,EAAE,IAAI,CAAC,GACZ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEtB,wBAAgB,UAAU,CACxB,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GACzC,OAAO,CAgBT;AAED,wBAAgB,YAAY,CAC1B,SAAS,EAAE,UAAU,GAAG,SAAS,EACjC,UAAU,EAAE,UAAU,GAAG,SAAS,EAClC,UAAU,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GACzC,OAAO,CAkBT;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,OAAO,EACnB,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,SAAS,GACpC,OAAO,CAQT;AAED,wBAAgB,sBAAsB,CACpC,SAAS,CAAC,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,GAClC,OAAO,CAYT;AAED,wBAAgB,UAAU,CACxB,aAAa,EAAE,8BAA8B,EAC7C,QAAQ,EAAE,QAAQ,GACjB,OAAO,CA4CT;AAED,qBAAa,MAAM,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAG7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAW;gBAEF,QAAQ,EAAE,MAAM;IAI7C,MAAM,CAAC,GAAG,EAAE,CAAC;IAYb,GAAG,CAAC,GAAG,EAAE,CAAC;IAKV,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;CAIrB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MapLru = void 0;
|
|
3
4
|
exports.filterData = filterData;
|
|
4
5
|
exports.filterScript = filterScript;
|
|
5
6
|
exports.filterNumByRange = filterNumByRange;
|
|
@@ -85,3 +86,30 @@ function filterCell(searchKeyLike, cellLike) {
|
|
|
85
86
|
}
|
|
86
87
|
return true;
|
|
87
88
|
}
|
|
89
|
+
class MapLru extends Map {
|
|
90
|
+
constructor(capacity) {
|
|
91
|
+
super();
|
|
92
|
+
this.capacity = capacity;
|
|
93
|
+
this.lru = [];
|
|
94
|
+
}
|
|
95
|
+
access(key) {
|
|
96
|
+
const index = this.lru.indexOf(key);
|
|
97
|
+
if (index !== -1) {
|
|
98
|
+
this.lru.splice(index, 1);
|
|
99
|
+
}
|
|
100
|
+
this.lru.push(key);
|
|
101
|
+
if (this.lru.length > this.capacity) {
|
|
102
|
+
this.delete(this.lru[0]);
|
|
103
|
+
this.lru.shift();
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
get(key) {
|
|
107
|
+
this.access(key);
|
|
108
|
+
return super.get(key);
|
|
109
|
+
}
|
|
110
|
+
set(key, value) {
|
|
111
|
+
this.access(key);
|
|
112
|
+
return super.set(key, value);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
exports.MapLru = MapLru;
|
|
@@ -3,6 +3,8 @@ import { HexLike } from "../../hex/index.js";
|
|
|
3
3
|
import { ClientCollectableSearchKeyLike } from "../clientTypes.advanced.js";
|
|
4
4
|
import { ClientCache } from "./cache.js";
|
|
5
5
|
export declare class ClientCacheMemory extends ClientCache {
|
|
6
|
+
private readonly maxCells;
|
|
7
|
+
private readonly maxTxs;
|
|
6
8
|
/**
|
|
7
9
|
* OutPoint => [isLive, Cell | OutPoint]
|
|
8
10
|
*/
|
|
@@ -11,6 +13,7 @@ export declare class ClientCacheMemory extends ClientCache {
|
|
|
11
13
|
* TX Hash => Transaction
|
|
12
14
|
*/
|
|
13
15
|
private readonly knownTransactions;
|
|
16
|
+
constructor(maxCells?: number, maxTxs?: number);
|
|
14
17
|
markUsable(...cellLikes: (CellLike | CellLike[])[]): Promise<void>;
|
|
15
18
|
markUnusable(...outPointLikes: (OutPointLike | OutPointLike[])[]): Promise<void>;
|
|
16
19
|
clear(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,QAAQ,EAER,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/client/cache/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,QAAQ,EAER,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,qBAAa,iBAAkB,SAAQ,WAAW;IAY9C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZzB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IAEnD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA8B;gBAG7C,QAAQ,SAAM,EACd,MAAM,SAAM;IAQzB,UAAU,CAAC,GAAG,SAAS,EAAE,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IASlE,YAAY,CAChB,GAAG,aAAa,EAAE,CAAC,YAAY,GAAG,YAAY,EAAE,CAAC,EAAE,GAClD,OAAO,CAAC,IAAI,CAAC;IAcV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,SAAS,CACd,OAAO,EAAE,8BAA8B,GACtC,cAAc,CAAC,IAAI,CAAC;IAajB,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IAS9D,UAAU,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAMxD,kBAAkB,CACtB,GAAG,YAAY,EAAE,CAAC,eAAe,GAAG,eAAe,EAAE,CAAC,EAAE,GACvD,OAAO,CAAC,IAAI,CAAC;IAMV,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAKrE,WAAW,CAAC,GAAG,KAAK,EAAE,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAWtE"}
|
|
@@ -6,16 +6,12 @@ const index_js_2 = require("../../hex/index.js");
|
|
|
6
6
|
const cache_js_1 = require("./cache.js");
|
|
7
7
|
const memory_advanced_js_1 = require("./memory.advanced.js");
|
|
8
8
|
class ClientCacheMemory extends cache_js_1.ClientCache {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this.
|
|
15
|
-
/**
|
|
16
|
-
* TX Hash => Transaction
|
|
17
|
-
*/
|
|
18
|
-
this.knownTransactions = new Map();
|
|
9
|
+
constructor(maxCells = 512, maxTxs = 256) {
|
|
10
|
+
super();
|
|
11
|
+
this.maxCells = maxCells;
|
|
12
|
+
this.maxTxs = maxTxs;
|
|
13
|
+
this.cells = new memory_advanced_js_1.MapLru(this.maxCells);
|
|
14
|
+
this.knownTransactions = new memory_advanced_js_1.MapLru(this.maxTxs);
|
|
19
15
|
}
|
|
20
16
|
async markUsable(...cellLikes) {
|
|
21
17
|
cellLikes.flat().forEach((cellLike) => {
|
|
@@ -37,18 +33,18 @@ class ClientCacheMemory extends cache_js_1.ClientCache {
|
|
|
37
33
|
});
|
|
38
34
|
}
|
|
39
35
|
async clear() {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
36
|
+
this.cells.clear();
|
|
37
|
+
this.knownTransactions.clear();
|
|
43
38
|
}
|
|
44
39
|
async *findCells(keyLike) {
|
|
45
|
-
for (const [isLive, cell] of this.cells.
|
|
40
|
+
for (const [key, [isLive, cell]] of this.cells.entries()) {
|
|
46
41
|
if (!isLive) {
|
|
47
42
|
continue;
|
|
48
43
|
}
|
|
49
44
|
if (!(0, memory_advanced_js_1.filterCell)(keyLike, cell)) {
|
|
50
45
|
continue;
|
|
51
46
|
}
|
|
47
|
+
this.cells.access(key);
|
|
52
48
|
yield cell.clone();
|
|
53
49
|
}
|
|
54
50
|
}
|
package/package.json
CHANGED
package/src/ckb/transaction.ts
CHANGED
|
@@ -688,10 +688,6 @@ export class WitnessArgs extends mol.Entity.Base<
|
|
|
688
688
|
*/
|
|
689
689
|
export function udtBalanceFrom(dataLike: BytesLike): Num {
|
|
690
690
|
const data = bytesFrom(dataLike).slice(0, 16);
|
|
691
|
-
if (data.length !== 16) {
|
|
692
|
-
throw new Error("Invalid UDT cell data");
|
|
693
|
-
}
|
|
694
|
-
|
|
695
691
|
return numFromBytes(data);
|
|
696
692
|
}
|
|
697
693
|
|
|
@@ -8,6 +8,15 @@ import {
|
|
|
8
8
|
} from "../clientTypes.advanced.js";
|
|
9
9
|
import { ClientIndexerSearchKey } from "../clientTypes.js";
|
|
10
10
|
|
|
11
|
+
// [isLive, Cell | OutPoint]
|
|
12
|
+
export type CellRecord =
|
|
13
|
+
| [
|
|
14
|
+
false,
|
|
15
|
+
Pick<Cell, "outPoint"> & Partial<Pick<Cell, "cellOutput" | "outputData">>,
|
|
16
|
+
]
|
|
17
|
+
| [true, Cell]
|
|
18
|
+
| [undefined, Cell];
|
|
19
|
+
|
|
11
20
|
export function filterData(
|
|
12
21
|
dataLike: HexLike,
|
|
13
22
|
filterLike: HexLike | undefined,
|
|
@@ -132,3 +141,33 @@ export function filterCell(
|
|
|
132
141
|
|
|
133
142
|
return true;
|
|
134
143
|
}
|
|
144
|
+
|
|
145
|
+
export class MapLru<K, V> extends Map<K, V> {
|
|
146
|
+
private readonly lru: K[] = [];
|
|
147
|
+
|
|
148
|
+
constructor(private readonly capacity: number) {
|
|
149
|
+
super();
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
access(key: K) {
|
|
153
|
+
const index = this.lru.indexOf(key);
|
|
154
|
+
if (index !== -1) {
|
|
155
|
+
this.lru.splice(index, 1);
|
|
156
|
+
}
|
|
157
|
+
this.lru.push(key);
|
|
158
|
+
if (this.lru.length > this.capacity) {
|
|
159
|
+
this.delete(this.lru[0]);
|
|
160
|
+
this.lru.shift();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
get(key: K) {
|
|
165
|
+
this.access(key);
|
|
166
|
+
return super.get(key);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
set(key: K, value: V) {
|
|
170
|
+
this.access(key);
|
|
171
|
+
return super.set(key, value);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
@@ -6,30 +6,31 @@ import {
|
|
|
6
6
|
Transaction,
|
|
7
7
|
TransactionLike,
|
|
8
8
|
} from "../../ckb/index.js";
|
|
9
|
-
import {
|
|
9
|
+
import { hexFrom, HexLike } from "../../hex/index.js";
|
|
10
10
|
import { ClientCollectableSearchKeyLike } from "../clientTypes.advanced.js";
|
|
11
11
|
import { ClientCache } from "./cache.js";
|
|
12
|
-
import { filterCell } from "./memory.advanced.js";
|
|
12
|
+
import { CellRecord, filterCell, MapLru } from "./memory.advanced.js";
|
|
13
13
|
|
|
14
14
|
export class ClientCacheMemory extends ClientCache {
|
|
15
15
|
/**
|
|
16
16
|
* OutPoint => [isLive, Cell | OutPoint]
|
|
17
17
|
*/
|
|
18
|
-
private readonly cells:
|
|
19
|
-
string,
|
|
20
|
-
| [
|
|
21
|
-
false,
|
|
22
|
-
Pick<Cell, "outPoint"> &
|
|
23
|
-
Partial<Pick<Cell, "cellOutput" | "outputData">>,
|
|
24
|
-
]
|
|
25
|
-
| [true, Cell]
|
|
26
|
-
| [undefined, Cell]
|
|
27
|
-
> = new Map();
|
|
18
|
+
private readonly cells: MapLru<string, CellRecord>;
|
|
28
19
|
|
|
29
20
|
/**
|
|
30
21
|
* TX Hash => Transaction
|
|
31
22
|
*/
|
|
32
|
-
private readonly knownTransactions:
|
|
23
|
+
private readonly knownTransactions: MapLru<string, Transaction>;
|
|
24
|
+
|
|
25
|
+
constructor(
|
|
26
|
+
private readonly maxCells = 512,
|
|
27
|
+
private readonly maxTxs = 256,
|
|
28
|
+
) {
|
|
29
|
+
super();
|
|
30
|
+
|
|
31
|
+
this.cells = new MapLru<string, CellRecord>(this.maxCells);
|
|
32
|
+
this.knownTransactions = new MapLru<string, Transaction>(this.maxTxs);
|
|
33
|
+
}
|
|
33
34
|
|
|
34
35
|
async markUsable(...cellLikes: (CellLike | CellLike[])[]): Promise<void> {
|
|
35
36
|
cellLikes.flat().forEach((cellLike) => {
|
|
@@ -57,15 +58,14 @@ export class ClientCacheMemory extends ClientCache {
|
|
|
57
58
|
}
|
|
58
59
|
|
|
59
60
|
async clear(): Promise<void> {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}
|
|
61
|
+
this.cells.clear();
|
|
62
|
+
this.knownTransactions.clear();
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
async *findCells(
|
|
66
66
|
keyLike: ClientCollectableSearchKeyLike,
|
|
67
67
|
): AsyncGenerator<Cell> {
|
|
68
|
-
for (const [isLive, cell] of this.cells.
|
|
68
|
+
for (const [key, [isLive, cell]] of this.cells.entries()) {
|
|
69
69
|
if (!isLive) {
|
|
70
70
|
continue;
|
|
71
71
|
}
|
|
@@ -73,6 +73,7 @@ export class ClientCacheMemory extends ClientCache {
|
|
|
73
73
|
continue;
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
+
this.cells.access(key);
|
|
76
77
|
yield cell.clone();
|
|
77
78
|
}
|
|
78
79
|
}
|