@aztec/archiver 0.24.0 → 0.26.1
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/dest/archiver/archiver.d.ts +15 -11
- package/dest/archiver/archiver.d.ts.map +1 -1
- package/dest/archiver/archiver.js +67 -72
- package/dest/archiver/archiver_store.d.ts +37 -15
- package/dest/archiver/archiver_store.d.ts.map +1 -1
- package/dest/archiver/archiver_store_test_suite.d.ts.map +1 -1
- package/dest/archiver/archiver_store_test_suite.js +70 -54
- package/dest/archiver/data_retrieval.d.ts +18 -8
- package/dest/archiver/data_retrieval.d.ts.map +1 -1
- package/dest/archiver/data_retrieval.js +39 -14
- package/dest/archiver/eth_log_handlers.d.ts +25 -23
- package/dest/archiver/eth_log_handlers.d.ts.map +1 -1
- package/dest/archiver/eth_log_handlers.js +98 -57
- package/dest/archiver/kv_archiver_store/block_body_store.d.ts +27 -0
- package/dest/archiver/kv_archiver_store/block_body_store.d.ts.map +1 -0
- package/dest/archiver/kv_archiver_store/block_body_store.js +47 -0
- package/dest/archiver/kv_archiver_store/block_store.d.ts +19 -11
- package/dest/archiver/kv_archiver_store/block_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/block_store.js +58 -30
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts +1 -0
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/contract_class_store.js +4 -1
- package/dest/archiver/kv_archiver_store/contract_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/contract_store.js +6 -3
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +36 -16
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/kv_archiver_store.js +52 -22
- package/dest/archiver/kv_archiver_store/log_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/log_store.js +4 -3
- package/dest/archiver/kv_archiver_store/message_store.d.ts +9 -9
- package/dest/archiver/kv_archiver_store/message_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/message_store.js +34 -31
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts +6 -6
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts.map +1 -1
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.js +18 -18
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts +41 -16
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts.map +1 -1
- package/dest/archiver/memory_archiver_store/memory_archiver_store.js +78 -29
- package/dest/index.js +2 -2
- package/dest/rpc/archiver_client.d.ts.map +1 -1
- package/dest/rpc/archiver_client.js +3 -3
- package/dest/rpc/archiver_server.d.ts.map +1 -1
- package/dest/rpc/archiver_server.js +4 -3
- package/package.json +10 -10
- package/src/archiver/archiver.ts +95 -92
- package/src/archiver/archiver_store.ts +42 -15
- package/src/archiver/archiver_store_test_suite.ts +73 -58
- package/src/archiver/data_retrieval.ts +61 -16
- package/src/archiver/eth_log_handlers.ts +142 -68
- package/src/archiver/kv_archiver_store/block_body_store.ts +54 -0
- package/src/archiver/kv_archiver_store/block_store.ts +71 -36
- package/src/archiver/kv_archiver_store/contract_class_store.ts +4 -0
- package/src/archiver/kv_archiver_store/contract_store.ts +7 -2
- package/src/archiver/kv_archiver_store/kv_archiver_store.ts +56 -20
- package/src/archiver/kv_archiver_store/log_store.ts +2 -2
- package/src/archiver/kv_archiver_store/message_store.ts +34 -30
- package/src/archiver/memory_archiver_store/l1_to_l2_message_store.ts +17 -17
- package/src/archiver/memory_archiver_store/memory_archiver_store.ts +91 -29
- package/src/index.ts +1 -0
- package/src/rpc/archiver_client.ts +3 -1
- package/src/rpc/archiver_server.ts +5 -1
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { L2Block,
|
|
1
|
+
import { L2Block, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
2
|
import { AztecAddress } from '@aztec/circuits.js';
|
|
3
3
|
import { AztecKVStore } from '@aztec/kv-store';
|
|
4
|
+
import { BlockBodyStore } from './block_body_store.js';
|
|
4
5
|
/**
|
|
5
6
|
* LMDB implementation of the ArchiverDataStore interface.
|
|
6
7
|
*/
|
|
7
8
|
export declare class BlockStore {
|
|
8
9
|
#private;
|
|
9
10
|
private db;
|
|
10
|
-
constructor(db: AztecKVStore);
|
|
11
|
+
constructor(db: AztecKVStore, blockBodyStore: BlockBodyStore);
|
|
11
12
|
/**
|
|
12
13
|
* Append new blocks to the store's list.
|
|
13
14
|
* @param blocks - The L2 blocks to be added to the store.
|
|
@@ -18,27 +19,34 @@ export declare class BlockStore {
|
|
|
18
19
|
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
19
20
|
* @param start - Number of the first block to return (inclusive).
|
|
20
21
|
* @param limit - The number of blocks to return.
|
|
21
|
-
* @returns The requested L2 blocks
|
|
22
|
+
* @returns The requested L2 blocks
|
|
22
23
|
*/
|
|
23
24
|
getBlocks(start: number, limit: number): IterableIterator<L2Block>;
|
|
24
25
|
/**
|
|
25
26
|
* Gets an L2 block.
|
|
26
27
|
* @param blockNumber - The number of the block to return.
|
|
27
|
-
* @returns The requested L2 block
|
|
28
|
+
* @returns The requested L2 block.
|
|
28
29
|
*/
|
|
29
30
|
getBlock(blockNumber: number): L2Block | undefined;
|
|
31
|
+
private getBlockFromBlockStorage;
|
|
30
32
|
/**
|
|
31
|
-
* Gets
|
|
32
|
-
* @param txHash - The txHash of the
|
|
33
|
-
* @returns The requested
|
|
33
|
+
* Gets a tx effect.
|
|
34
|
+
* @param txHash - The txHash of the tx corresponding to the tx effect.
|
|
35
|
+
* @returns The requested tx effect (or undefined if not found).
|
|
34
36
|
*/
|
|
35
|
-
|
|
37
|
+
getTxEffect(txHash: TxHash): TxEffect | undefined;
|
|
36
38
|
/**
|
|
37
|
-
*
|
|
38
|
-
* @param txHash - The
|
|
39
|
+
* Gets a receipt of a settled tx.
|
|
40
|
+
* @param txHash - The hash of a tx we try to get the receipt for.
|
|
41
|
+
* @returns The requested tx receipt (or undefined if not found).
|
|
42
|
+
*/
|
|
43
|
+
getSettledTxReceipt(txHash: TxHash): TxReceipt | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Looks up which block included the requested tx effect.
|
|
46
|
+
* @param txHash - The txHash of the tx.
|
|
39
47
|
* @returns The block number and index of the tx.
|
|
40
48
|
*/
|
|
41
|
-
|
|
49
|
+
getTxLocation(txHash: TxHash): [blockNumber: number, txIndex: number] | undefined;
|
|
42
50
|
/**
|
|
43
51
|
* Looks up which block deployed a particular contract.
|
|
44
52
|
* @param contractAddress - The address of the contract to look up.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/block_store.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/block_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAY,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAA0B,YAAY,EAAgC,MAAM,oBAAoB,CAAC;AAExG,OAAO,EAAE,YAAY,EAAmB,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAUvD;;GAEG;AACH,qBAAa,UAAU;;IAcT,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc;IAQpE;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA4B9C;;;;;OAKG;IACF,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAMnE;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IASlD,OAAO,CAAC,wBAAwB;IAgBhC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAUjD;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAU1D;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,SAAS;IAIjF;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,YAAY,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,SAAS;IAIpG;;;OAGG;IACH,cAAc,IAAI,MAAM;IAKxB;;;OAGG;IACH,gBAAgB,IAAI,MAAM;CAsB3B"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
var _BlockStore_instances, _BlockStore_blocks, _BlockStore_txIndex, _BlockStore_contractIndex, _BlockStore_log, _BlockStore_computeBlockRange;
|
|
1
|
+
var _BlockStore_instances, _BlockStore_blocks, _BlockStore_txIndex, _BlockStore_contractIndex, _BlockStore_log, _BlockStore_blockBodyStore, _BlockStore_computeBlockRange;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
-
import {
|
|
3
|
+
import { L2Block, TxReceipt, TxStatus } from '@aztec/circuit-types';
|
|
4
|
+
import { AppendOnlyTreeSnapshot, Header, INITIAL_L2_BLOCK_NUM } from '@aztec/circuits.js';
|
|
4
5
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
5
6
|
/**
|
|
6
7
|
* LMDB implementation of the ArchiverDataStore interface.
|
|
7
8
|
*/
|
|
8
9
|
export class BlockStore {
|
|
9
|
-
constructor(db) {
|
|
10
|
+
constructor(db, blockBodyStore) {
|
|
10
11
|
_BlockStore_instances.add(this);
|
|
11
12
|
this.db = db;
|
|
12
13
|
/** Map block number to block data */
|
|
@@ -16,6 +17,8 @@ export class BlockStore {
|
|
|
16
17
|
/** Index mapping a contract's address (as a string) to its location in a block */
|
|
17
18
|
_BlockStore_contractIndex.set(this, void 0);
|
|
18
19
|
_BlockStore_log.set(this, createDebugLogger('aztec:archiver:block_store'));
|
|
20
|
+
_BlockStore_blockBodyStore.set(this, void 0);
|
|
21
|
+
__classPrivateFieldSet(this, _BlockStore_blockBodyStore, blockBodyStore, "f");
|
|
19
22
|
__classPrivateFieldSet(this, _BlockStore_blocks, db.openMap('archiver_blocks'), "f");
|
|
20
23
|
__classPrivateFieldSet(this, _BlockStore_txIndex, db.openMap('archiver_tx_index'), "f");
|
|
21
24
|
__classPrivateFieldSet(this, _BlockStore_contractIndex, db.openMap('archiver_contract_index'), "f");
|
|
@@ -29,22 +32,21 @@ export class BlockStore {
|
|
|
29
32
|
return this.db.transaction(() => {
|
|
30
33
|
for (const block of blocks) {
|
|
31
34
|
void __classPrivateFieldGet(this, _BlockStore_blocks, "f").set(block.number, {
|
|
32
|
-
|
|
33
|
-
|
|
35
|
+
header: block.header.toBuffer(),
|
|
36
|
+
archive: block.archive.toBuffer(),
|
|
34
37
|
l1BlockNumber: block.getL1BlockNumber(),
|
|
35
38
|
});
|
|
36
|
-
|
|
37
|
-
if (tx.txHash.isZero()) {
|
|
38
|
-
continue;
|
|
39
|
-
}
|
|
39
|
+
block.getTxs().forEach((tx, i) => {
|
|
40
40
|
void __classPrivateFieldGet(this, _BlockStore_txIndex, "f").set(tx.txHash.toString(), [block.number, i]);
|
|
41
|
-
}
|
|
42
|
-
|
|
41
|
+
});
|
|
42
|
+
block.body.txEffects
|
|
43
|
+
.flatMap(txEffect => txEffect.contractData)
|
|
44
|
+
.forEach((contractData, i) => {
|
|
43
45
|
if (contractData.contractAddress.isZero()) {
|
|
44
|
-
|
|
46
|
+
return;
|
|
45
47
|
}
|
|
46
48
|
void __classPrivateFieldGet(this, _BlockStore_contractIndex, "f").set(contractData.contractAddress.toString(), [block.number, i]);
|
|
47
|
-
}
|
|
49
|
+
});
|
|
48
50
|
}
|
|
49
51
|
return true;
|
|
50
52
|
});
|
|
@@ -53,32 +55,45 @@ export class BlockStore {
|
|
|
53
55
|
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
54
56
|
* @param start - Number of the first block to return (inclusive).
|
|
55
57
|
* @param limit - The number of blocks to return.
|
|
56
|
-
* @returns The requested L2 blocks
|
|
58
|
+
* @returns The requested L2 blocks
|
|
57
59
|
*/
|
|
58
60
|
*getBlocks(start, limit) {
|
|
59
|
-
for (const
|
|
60
|
-
yield
|
|
61
|
+
for (const blockStorage of __classPrivateFieldGet(this, _BlockStore_blocks, "f").values(__classPrivateFieldGet(this, _BlockStore_instances, "m", _BlockStore_computeBlockRange).call(this, start, limit))) {
|
|
62
|
+
yield this.getBlockFromBlockStorage(blockStorage);
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
/**
|
|
64
66
|
* Gets an L2 block.
|
|
65
67
|
* @param blockNumber - The number of the block to return.
|
|
66
|
-
* @returns The requested L2 block
|
|
68
|
+
* @returns The requested L2 block.
|
|
67
69
|
*/
|
|
68
70
|
getBlock(blockNumber) {
|
|
69
|
-
const
|
|
70
|
-
if (!
|
|
71
|
+
const blockStorage = __classPrivateFieldGet(this, _BlockStore_blocks, "f").get(blockNumber);
|
|
72
|
+
if (!blockStorage || !blockStorage.header) {
|
|
71
73
|
return undefined;
|
|
72
74
|
}
|
|
73
|
-
return
|
|
75
|
+
return this.getBlockFromBlockStorage(blockStorage);
|
|
76
|
+
}
|
|
77
|
+
getBlockFromBlockStorage(blockStorage) {
|
|
78
|
+
const header = Header.fromBuffer(blockStorage.header);
|
|
79
|
+
const archive = AppendOnlyTreeSnapshot.fromBuffer(blockStorage.archive);
|
|
80
|
+
const body = __classPrivateFieldGet(this, _BlockStore_blockBodyStore, "f").getBlockBody(header.contentCommitment.txsHash);
|
|
81
|
+
if (body === undefined) {
|
|
82
|
+
throw new Error('Body is not able to be retrieved from BodyStore');
|
|
83
|
+
}
|
|
84
|
+
return L2Block.fromFields({
|
|
85
|
+
header,
|
|
86
|
+
archive,
|
|
87
|
+
body,
|
|
88
|
+
});
|
|
74
89
|
}
|
|
75
90
|
/**
|
|
76
|
-
* Gets
|
|
77
|
-
* @param txHash - The txHash of the
|
|
78
|
-
* @returns The requested
|
|
91
|
+
* Gets a tx effect.
|
|
92
|
+
* @param txHash - The txHash of the tx corresponding to the tx effect.
|
|
93
|
+
* @returns The requested tx effect (or undefined if not found).
|
|
79
94
|
*/
|
|
80
|
-
|
|
81
|
-
const [blockNumber, txIndex] = this.
|
|
95
|
+
getTxEffect(txHash) {
|
|
96
|
+
const [blockNumber, txIndex] = this.getTxLocation(txHash) ?? [];
|
|
82
97
|
if (typeof blockNumber !== 'number' || typeof txIndex !== 'number') {
|
|
83
98
|
return undefined;
|
|
84
99
|
}
|
|
@@ -86,11 +101,24 @@ export class BlockStore {
|
|
|
86
101
|
return block?.getTx(txIndex);
|
|
87
102
|
}
|
|
88
103
|
/**
|
|
89
|
-
*
|
|
90
|
-
* @param txHash - The
|
|
104
|
+
* Gets a receipt of a settled tx.
|
|
105
|
+
* @param txHash - The hash of a tx we try to get the receipt for.
|
|
106
|
+
* @returns The requested tx receipt (or undefined if not found).
|
|
107
|
+
*/
|
|
108
|
+
getSettledTxReceipt(txHash) {
|
|
109
|
+
const [blockNumber, txIndex] = this.getTxLocation(txHash) ?? [];
|
|
110
|
+
if (typeof blockNumber !== 'number' || typeof txIndex !== 'number') {
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
const block = this.getBlock(blockNumber);
|
|
114
|
+
return new TxReceipt(txHash, TxStatus.MINED, '', block.hash().toBuffer(), block.number);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Looks up which block included the requested tx effect.
|
|
118
|
+
* @param txHash - The txHash of the tx.
|
|
91
119
|
* @returns The block number and index of the tx.
|
|
92
120
|
*/
|
|
93
|
-
|
|
121
|
+
getTxLocation(txHash) {
|
|
94
122
|
return __classPrivateFieldGet(this, _BlockStore_txIndex, "f").get(txHash.toString());
|
|
95
123
|
}
|
|
96
124
|
/**
|
|
@@ -123,7 +151,7 @@ export class BlockStore {
|
|
|
123
151
|
}
|
|
124
152
|
}
|
|
125
153
|
}
|
|
126
|
-
_BlockStore_blocks = new WeakMap(), _BlockStore_txIndex = new WeakMap(), _BlockStore_contractIndex = new WeakMap(), _BlockStore_log = new WeakMap(), _BlockStore_instances = new WeakSet(), _BlockStore_computeBlockRange = function _BlockStore_computeBlockRange(start, limit) {
|
|
154
|
+
_BlockStore_blocks = new WeakMap(), _BlockStore_txIndex = new WeakMap(), _BlockStore_contractIndex = new WeakMap(), _BlockStore_log = new WeakMap(), _BlockStore_blockBodyStore = new WeakMap(), _BlockStore_instances = new WeakSet(), _BlockStore_computeBlockRange = function _BlockStore_computeBlockRange(start, limit) {
|
|
127
155
|
if (limit < 1) {
|
|
128
156
|
throw new Error(`Invalid limit: ${limit}`);
|
|
129
157
|
}
|
|
@@ -134,4 +162,4 @@ _BlockStore_blocks = new WeakMap(), _BlockStore_txIndex = new WeakMap(), _BlockS
|
|
|
134
162
|
const end = start + limit;
|
|
135
163
|
return { start, end };
|
|
136
164
|
};
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUvYmxvY2tfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFvQixTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEYsT0FBTyxFQUFFLHNCQUFzQixFQUFnQixNQUFNLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQWExRDs7R0FFRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBY3JCLFlBQW9CLEVBQWdCLEVBQUUsY0FBOEI7O1FBQWhELE9BQUUsR0FBRixFQUFFLENBQWM7UUFicEMscUNBQXFDO1FBQ3JDLHFDQUF3QztRQUV4Qyw4RUFBOEU7UUFDOUUsc0NBQTRDO1FBRTVDLGtGQUFrRjtRQUNsRiw0Q0FBa0Q7UUFFbEQsMEJBQU8saUJBQWlCLENBQUMsNEJBQTRCLENBQUMsRUFBQztRQUV2RCw2Q0FBZ0M7UUFHOUIsdUJBQUEsSUFBSSw4QkFBbUIsY0FBYyxNQUFBLENBQUM7UUFFdEMsdUJBQUEsSUFBSSxzQkFBVyxFQUFFLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLE1BQUEsQ0FBQztRQUM3Qyx1QkFBQSxJQUFJLHVCQUFZLEVBQUUsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsTUFBQSxDQUFDO1FBQ2hELHVCQUFBLElBQUksNkJBQWtCLEVBQUUsQ0FBQyxPQUFPLENBQUMseUJBQXlCLENBQUMsTUFBQSxDQUFDO0lBQzlELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsU0FBUyxDQUFDLE1BQWlCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQzlCLEtBQUssTUFBTSxLQUFLLElBQUks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
|
|
@@ -10,6 +10,7 @@ export declare class ContractClassStore {
|
|
|
10
10
|
constructor(db: AztecKVStore);
|
|
11
11
|
addContractClass(contractClass: ContractClassPublic): Promise<boolean>;
|
|
12
12
|
getContractClass(id: Fr): ContractClassPublic | undefined;
|
|
13
|
+
getContractClassIds(): Fr[];
|
|
13
14
|
}
|
|
14
15
|
export declare function serializeContractClassPublic(contractClass: ContractClassPublic): Buffer;
|
|
15
16
|
export declare function deserializeContractClassPublic(buffer: Buffer): Omit<ContractClassPublic, 'id'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_class_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/contract_class_store.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAoB,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;GAEG;AACH,qBAAa,kBAAkB;;gBAGjB,EAAE,EAAE,YAAY;IAI5B,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAItE,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,mBAAmB,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"contract_class_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/contract_class_store.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAoB,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;GAEG;AACH,qBAAa,kBAAkB;;gBAGjB,EAAE,EAAE,YAAY;IAI5B,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAItE,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,mBAAmB,GAAG,SAAS;IAKzD,mBAAmB,IAAI,EAAE,EAAE;CAG5B;AAED,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,mBAAmB,GAAG,MAAM,CAcvF;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAsB9F"}
|
|
@@ -17,6 +17,9 @@ export class ContractClassStore {
|
|
|
17
17
|
const contractClass = __classPrivateFieldGet(this, _ContractClassStore_contractClasses, "f").get(id.toString());
|
|
18
18
|
return contractClass && { ...deserializeContractClassPublic(contractClass), id };
|
|
19
19
|
}
|
|
20
|
+
getContractClassIds() {
|
|
21
|
+
return Array.from(__classPrivateFieldGet(this, _ContractClassStore_contractClasses, "f").keys()).map(key => Fr.fromString(key));
|
|
22
|
+
}
|
|
20
23
|
}
|
|
21
24
|
_ContractClassStore_contractClasses = new WeakMap();
|
|
22
25
|
export function serializeContractClassPublic(contractClass) {
|
|
@@ -45,4 +48,4 @@ export function deserializeContractClassPublic(buffer) {
|
|
|
45
48
|
privateFunctionsRoot: reader.readObject(Fr),
|
|
46
49
|
};
|
|
47
50
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfY2xhc3Nfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUvY29udHJhY3RfY2xhc3Nfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUkxRjs7R0FFRztBQUNILE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFBWSxFQUFnQjtRQUY1QixzREFBMkM7UUFHekMsdUJBQUEsSUFBSSx1Q0FBb0IsRUFBRSxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxNQUFBLENBQUM7SUFDbEUsQ0FBQztJQUVELGdCQUFnQixDQUFDLGFBQWtDO1FBQ2pELE9BQU8sdUJBQUEsSUFBSSwyQ0FBaUIsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSw0QkFBNEIsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFNO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLHVCQUFBLElBQUksMkNBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sYUFBYSxJQUFJLEVBQUUsR0FBRyw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNuRixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyx1QkFBQSxJQUFJLDJDQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7Q0FDRjs7QUFFRCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsYUFBa0M7SUFDN0UsT0FBTyxpQkFBaUIsQ0FDdEIsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFDakMsYUFBYSxDQUFDLFlBQVksRUFDMUIsYUFBYSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQzNDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUNyRyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFDcEMsYUFBYSxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDckMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FDM0UsSUFBSSxFQUFFLEVBQ1AsYUFBYSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQ25DLGFBQWEsQ0FBQyxjQUFjLEVBQzVCLGFBQWEsQ0FBQyxvQkFBb0IsQ0FDbkMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsOEJBQThCLENBQUMsTUFBYztJQUMzRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdDLE9BQU87UUFDTCxPQUFPLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBTztRQUNoQyxZQUFZLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDbkMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNsQyxVQUFVLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQixRQUFRLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDN0MsTUFBTSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUM3QixVQUFVLEVBQUUsTUFBTSxDQUFDLFdBQVcsRUFBRTthQUNqQyxDQUFDO1NBQ0gsQ0FBQztRQUNGLGVBQWUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2pDLFVBQVUsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3JCLFFBQVEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDO2dCQUM3QyxRQUFRLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRTtnQkFDN0IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxXQUFXLEVBQUU7YUFDakMsQ0FBQztTQUNILENBQUM7UUFDRixjQUFjLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRTtRQUNuQyxvQkFBb0IsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztLQUM1QyxDQUFDO0FBQ0osQ0FBQyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/contract_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,aAAa;;IAKZ,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU;IAK5D;;;;;OAKG;IACH,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOzF;;;;OAIG;IACH,uBAAuB,CAAC,eAAe,EAAE,YAAY,GAAG,oBAAoB,GAAG,SAAS;IAiBxF;;;;OAIG;IACH,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAMhF;;;;;OAKG;IACH,eAAe,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"contract_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/contract_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,aAAa;;IAKZ,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU;IAK5D;;;;;OAKG;IACH,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOzF;;;;OAIG;IACH,uBAAuB,CAAC,eAAe,EAAE,YAAY,GAAG,oBAAoB,GAAG,SAAS;IAiBxF;;;;OAIG;IACH,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAMhF;;;;;OAKG;IACH,eAAe,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS;IAexE;;;;;OAKG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,EAAE;CAI5D"}
|
|
@@ -64,7 +64,10 @@ export class ContractStore {
|
|
|
64
64
|
return undefined;
|
|
65
65
|
}
|
|
66
66
|
const block = __classPrivateFieldGet(this, _ContractStore_blockStore, "f").getBlock(blockNumber);
|
|
67
|
-
|
|
67
|
+
if (block?.body.txEffects[index].contractData.length !== 1) {
|
|
68
|
+
throw new Error(`Contract data at block: ${blockNumber}, tx: ${index} does not have length of 1`);
|
|
69
|
+
}
|
|
70
|
+
return block?.body.txEffects[index].contractData[0];
|
|
68
71
|
}
|
|
69
72
|
/**
|
|
70
73
|
* Get basic info for an all L2 contracts deployed in a block.
|
|
@@ -74,8 +77,8 @@ export class ContractStore {
|
|
|
74
77
|
*/
|
|
75
78
|
getContractDataInBlock(blockNumber) {
|
|
76
79
|
const block = __classPrivateFieldGet(this, _ContractStore_blockStore, "f").getBlock(blockNumber);
|
|
77
|
-
return block?.
|
|
80
|
+
return block?.body.txEffects.flatMap(txEffect => txEffect.contractData) ?? [];
|
|
78
81
|
}
|
|
79
82
|
}
|
|
80
83
|
_ContractStore_blockStore = new WeakMap(), _ContractStore_extendedContractData = new WeakMap(), _ContractStore_log = new WeakMap();
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3Rfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUvY29udHJhY3Rfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQWdCLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFLMUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYTtJQUt4QixZQUFvQixFQUFnQixFQUFFLFVBQXNCO1FBQXhDLE9BQUUsR0FBRixFQUFFLENBQWM7UUFKcEMsNENBQXdCO1FBQ3hCLHNEQUFrRDtRQUNsRCw2QkFBTyxpQkFBaUIsQ0FBQywrQkFBK0IsQ0FBQyxFQUFDO1FBR3hELHVCQUFBLElBQUksdUNBQXlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUNBQWlDLENBQUMsTUFBQSxDQUFDO1FBQzNFLHVCQUFBLElBQUksNkJBQWUsVUFBVSxNQUFBLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsdUJBQXVCLENBQUMsSUFBNEIsRUFBRSxRQUFnQjtRQUNwRSxPQUFPLHVCQUFBLElBQUksMkNBQXNCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFlBQVksR0FBRyxFQUFFLEVBQUUsRUFBRTtZQUNyRSxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxZQUFZLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHVCQUF1QixDQUFDLGVBQTZCO1FBQ25ELE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLEdBQUcsdUJBQUEsSUFBSSxpQ0FBWSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVyRixJQUFJLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxLQUFLLE1BQU0sUUFBUSxJQUFJLHVCQUFBLElBQUksMkNBQXNCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3pFLE1BQU0sb0JBQW9CLEdBQUcsb0JBQW9CLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZFLElBQUksb0JBQW9CLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztnQkFDOUUsT0FBTyxvQkFBb0IsQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsOEJBQThCLENBQUMsV0FBbUI7UUFDaEQsT0FBTyxDQUFDLHVCQUFBLElBQUksMkNBQXNCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUN4RSxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQzFDLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxlQUFlLENBQUMsZUFBNkI7UUFDM0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsR0FBRyx1QkFBQSxJQUFJLGlDQUFZLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pGLElBQUksT0FBTyxXQUFXLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2pFLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyx1QkFBQSxJQUFJLGlDQUFZLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXJELElBQUksS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMzRCxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixXQUFXLFNBQVMsS0FBSyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFFRCxPQUFPLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxzQkFBc0IsQ0FBQyxXQUFtQjtRQUN4QyxNQUFNLEtBQUssR0FBRyx1QkFBQSxJQUFJLGlDQUFZLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoRixDQUFDO0NBQ0YifQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { Body, ContractData, ExtendedContractData, GetUnencryptedLogsResponse, L1ToL2Message, L2Block, L2BlockL2Logs, LogFilter, LogType, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
3
|
import { Fr } from '@aztec/circuits.js';
|
|
3
4
|
import { AztecAddress } from '@aztec/foundation/aztec-address';
|
|
4
5
|
import { AztecKVStore } from '@aztec/kv-store';
|
|
@@ -11,9 +12,23 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
|
|
|
11
12
|
#private;
|
|
12
13
|
constructor(db: AztecKVStore, logsMaxPageSize?: number);
|
|
13
14
|
getContractClass(id: Fr): Promise<ContractClassPublic | undefined>;
|
|
15
|
+
getContractClassIds(): Promise<Fr[]>;
|
|
14
16
|
getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
15
17
|
addContractClasses(data: ContractClassPublic[], _blockNumber: number): Promise<boolean>;
|
|
16
18
|
addContractInstances(data: ContractInstanceWithAddress[], _blockNumber: number): Promise<boolean>;
|
|
19
|
+
/**
|
|
20
|
+
* Append new block bodies to the store's list.
|
|
21
|
+
* @param blockBodies - The L2 block bodies to be added to the store.
|
|
22
|
+
* @returns True if the operation is successful.
|
|
23
|
+
*/
|
|
24
|
+
addBlockBodies(blockBodies: Body[]): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Gets block bodies that have the same txHashes as we supply.
|
|
27
|
+
*
|
|
28
|
+
* @param txsHashes - A list of txsHashes (body hashes).
|
|
29
|
+
* @returns The requested L2 block bodies
|
|
30
|
+
*/
|
|
31
|
+
getBlockBodies(txsHashes: Buffer[]): Promise<Body[]>;
|
|
17
32
|
/**
|
|
18
33
|
* Append new blocks to the store's list.
|
|
19
34
|
* @param blocks - The L2 blocks to be added to the store.
|
|
@@ -22,19 +37,24 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
|
|
|
22
37
|
addBlocks(blocks: L2Block[]): Promise<boolean>;
|
|
23
38
|
/**
|
|
24
39
|
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
25
|
-
* The blocks returned do not contain any logs.
|
|
26
40
|
*
|
|
27
41
|
* @param start - Number of the first block to return (inclusive).
|
|
28
42
|
* @param limit - The number of blocks to return.
|
|
29
|
-
* @returns The requested L2 blocks
|
|
43
|
+
* @returns The requested L2 blocks
|
|
30
44
|
*/
|
|
31
45
|
getBlocks(start: number, limit: number): Promise<L2Block[]>;
|
|
32
46
|
/**
|
|
33
|
-
* Gets
|
|
34
|
-
* @param txHash - The txHash of the
|
|
35
|
-
* @returns The requested
|
|
47
|
+
* Gets a tx effect.
|
|
48
|
+
* @param txHash - The txHash of the tx corresponding to the tx effect.
|
|
49
|
+
* @returns The requested tx effect (or undefined if not found).
|
|
50
|
+
*/
|
|
51
|
+
getTxEffect(txHash: TxHash): Promise<TxEffect | undefined>;
|
|
52
|
+
/**
|
|
53
|
+
* Gets a receipt of a settled tx.
|
|
54
|
+
* @param txHash - The hash of a tx we try to get the receipt for.
|
|
55
|
+
* @returns The requested tx receipt (or undefined if not found).
|
|
36
56
|
*/
|
|
37
|
-
|
|
57
|
+
getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
|
|
38
58
|
/**
|
|
39
59
|
* Append new logs to the store's list.
|
|
40
60
|
* @param encryptedLogs - The logs to be added to the store.
|
|
@@ -52,31 +72,31 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
|
|
|
52
72
|
addPendingL1ToL2Messages(messages: L1ToL2Message[], l1BlockNumber: bigint): Promise<boolean>;
|
|
53
73
|
/**
|
|
54
74
|
* Remove pending L1 to L2 messages from the store (if they were cancelled).
|
|
55
|
-
* @param messages - The
|
|
75
|
+
* @param messages - The entry keys to be removed from the store.
|
|
56
76
|
* @param l1BlockNumber - The L1 block number for which to remove the messages.
|
|
57
77
|
* @returns True if the operation is successful.
|
|
58
78
|
*/
|
|
59
|
-
|
|
79
|
+
cancelPendingL1ToL2EntryKeys(messages: Fr[], l1BlockNumber: bigint): Promise<boolean>;
|
|
60
80
|
/**
|
|
61
81
|
* Messages that have been published in an L2 block are confirmed.
|
|
62
82
|
* Add them to the confirmed store, also remove them from the pending store.
|
|
63
|
-
* @param entryKeys - The
|
|
83
|
+
* @param entryKeys - The entry keys to be removed from the store.
|
|
64
84
|
* @param blockNumber - The block for which to add the messages.
|
|
65
85
|
* @returns True if the operation is successful.
|
|
66
86
|
*/
|
|
67
|
-
|
|
87
|
+
confirmL1ToL2EntryKeys(entryKeys: Fr[]): Promise<boolean>;
|
|
68
88
|
/**
|
|
69
89
|
* Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
|
|
70
90
|
* @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
|
|
71
|
-
* @returns The requested L1 to L2
|
|
91
|
+
* @returns The requested L1 to L2 entry keys.
|
|
72
92
|
*/
|
|
73
|
-
|
|
93
|
+
getPendingL1ToL2EntryKeys(limit: number): Promise<Fr[]>;
|
|
74
94
|
/**
|
|
75
|
-
* Gets the confirmed L1 to L2 message corresponding to the given
|
|
76
|
-
* @param
|
|
95
|
+
* Gets the confirmed L1 to L2 message corresponding to the given entry key.
|
|
96
|
+
* @param entryKey - The entry key to look up.
|
|
77
97
|
* @returns The requested L1 to L2 message or throws if not found.
|
|
78
98
|
*/
|
|
79
|
-
getConfirmedL1ToL2Message(
|
|
99
|
+
getConfirmedL1ToL2Message(entryKey: Fr): Promise<L1ToL2Message>;
|
|
80
100
|
/**
|
|
81
101
|
* Gets up to `limit` amount of logs starting from `from`.
|
|
82
102
|
* @param start - Number of the L2 block to which corresponds the first logs to be returned.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/kv_archiver_store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,OAAO,EACP,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/kv_archiver_store.ts"],"names":[],"mappings":"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"}
|