@aztec/archiver 0.1.0-alpha47 → 0.1.0-alpha49

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.
@@ -3,7 +3,7 @@ import { AztecAddress } from '@aztec/foundation/aztec-address';
3
3
  import { EthAddress } from '@aztec/foundation/eth-address';
4
4
  import { Fr } from '@aztec/foundation/fields';
5
5
  import { DebugLogger } from '@aztec/foundation/log';
6
- import { ContractData, ContractDataAndBytecode, ContractDataSource, EncodedContractFunction, L1ToL2Message, L1ToL2MessageSource, L2Block, L2BlockL2Logs, L2BlockSource, L2LogsSource, LogType } from '@aztec/types';
6
+ import { ContractData, ContractDataSource, EncodedContractFunction, ExtendedContractData, L1ToL2Message, L1ToL2MessageSource, L2Block, L2BlockL2Logs, L2BlockSource, L2LogsSource, L2Tx, LogType, TxHash } from '@aztec/types';
7
7
  import { Chain, HttpTransport, PublicClient } from 'viem';
8
8
  import { ArchiverDataStore } from './archiver_store.js';
9
9
  import { ArchiverConfig } from './config.js';
@@ -84,19 +84,19 @@ export declare class Archiver implements L2BlockSource, L2LogsSource, ContractDa
84
84
  * @returns The requested L2 block.
85
85
  */
86
86
  getL2Block(number: number): Promise<L2Block | undefined>;
87
+ getL2Tx(txHash: TxHash): Promise<L2Tx | undefined>;
87
88
  /**
88
- * Lookup the L2 contract data for this contract.
89
- * Contains the contract's public function bytecode.
89
+ * Get the extended contract data for this contract.
90
90
  * @param contractAddress - The contract data address.
91
- * @returns The contract data.
91
+ * @returns The extended contract data or undefined if not found.
92
92
  */
93
- getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined>;
93
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
94
94
  /**
95
95
  * Lookup all contract data in an L2 block.
96
96
  * @param blockNum - The block number to get all contract data from.
97
97
  * @returns All new contract data in the block (if found).
98
98
  */
99
- getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]>;
99
+ getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]>;
100
100
  /**
101
101
  * Lookup the contract data for this contract.
102
102
  * Contains contract address & the ethereum portal address.
@@ -1 +1 @@
1
- {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"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"}
@@ -134,9 +134,9 @@ export class Archiver {
134
134
  // store contracts for which we have retrieved L2 blocks
135
135
  const lastKnownL2BlockNum = retrievedBlocks.retrievedData[retrievedBlocks.retrievedData.length - 1].number;
136
136
  retrievedContracts.retrievedData.forEach(async ([contracts, l2BlockNum], index) => {
137
- this.log(`Retrieved contract data and bytecode for l2 block number: ${index}`);
137
+ this.log(`Retrieved extended contract data for l2 block number: ${index}`);
138
138
  if (l2BlockNum <= lastKnownL2BlockNum) {
139
- await this.store.addContractDataAndBytecode(contracts, l2BlockNum);
139
+ await this.store.addExtendedContractData(contracts, l2BlockNum);
140
140
  }
141
141
  });
142
142
  // from retrieved L2Blocks, confirm L1 to L2 messages that have been published
@@ -146,7 +146,7 @@ export class Archiver {
146
146
  await this.store.confirmL1ToL2Messages(messageKeysToRemove);
147
147
  // store retrieved L2 blocks after removing new logs information.
148
148
  // remove logs to serve "lightweight" block information. Logs can be fetched separately if needed.
149
- await this.store.addL2Blocks(retrievedBlocks.retrievedData.map(block => L2Block.fromFields(omit(block, ['newEncryptedLogs', 'newUnencryptedLogs']))));
149
+ await this.store.addL2Blocks(retrievedBlocks.retrievedData.map(block => L2Block.fromFields(omit(block, ['newEncryptedLogs', 'newUnencryptedLogs']), block.getBlockHash())));
150
150
  // set the L1 block for the next search
151
151
  this.nextL2BlockFromBlock = retrievedBlocks.nextEthBlockNumber;
152
152
  }
@@ -185,22 +185,24 @@ export class Archiver {
185
185
  const blocks = await this.store.getL2Blocks(number, 1);
186
186
  return blocks.length === 0 ? undefined : blocks[0];
187
187
  }
188
+ getL2Tx(txHash) {
189
+ return this.store.getL2Tx(txHash);
190
+ }
188
191
  /**
189
- * Lookup the L2 contract data for this contract.
190
- * Contains the contract's public function bytecode.
192
+ * Get the extended contract data for this contract.
191
193
  * @param contractAddress - The contract data address.
192
- * @returns The contract data.
194
+ * @returns The extended contract data or undefined if not found.
193
195
  */
194
- getContractDataAndBytecode(contractAddress) {
195
- return this.store.getContractDataAndBytecode(contractAddress);
196
+ getExtendedContractData(contractAddress) {
197
+ return this.store.getExtendedContractData(contractAddress);
196
198
  }
197
199
  /**
198
200
  * Lookup all contract data in an L2 block.
199
201
  * @param blockNum - The block number to get all contract data from.
200
202
  * @returns All new contract data in the block (if found).
201
203
  */
202
- getContractDataAndBytecodeInBlock(blockNum) {
203
- return this.store.getContractDataAndBytecodeInBlock(blockNum);
204
+ getExtendedContractDataInBlock(blockNum) {
205
+ return this.store.getExtendedContractDataInBlock(blockNum);
204
206
  }
205
207
  /**
206
208
  * Lookup the contract data for this contract.
@@ -227,7 +229,7 @@ export class Archiver {
227
229
  * @returns The public function data (if found).
228
230
  */
229
231
  async getPublicFunction(contractAddress, selector) {
230
- const contractData = await this.getContractDataAndBytecode(contractAddress);
232
+ const contractData = await this.getExtendedContractData(contractAddress);
231
233
  return contractData?.getPublicFunction(selector);
232
234
  }
233
235
  /**
@@ -264,4 +266,4 @@ export class Archiver {
264
266
  return this.store.getConfirmedL1ToL2Message(messageKey);
265
267
  }
266
268
  }
267
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJdEQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFLTCxvQkFBb0IsRUFHcEIsT0FBTyxFQUlQLE9BQU8sR0FDUixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFDL0IsT0FBTyxFQUFzQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEYsT0FBTyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTdFLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsa0NBQWtDLEVBQ2xDLHVCQUF1QixFQUN2QixnQ0FBZ0MsR0FDakMsTUFBTSxxQkFBcUIsQ0FBQztBQUU3Qjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFFBQVE7SUFxQm5COzs7Ozs7Ozs7O09BVUc7SUFDSCxZQUNtQixZQUFnRCxFQUNoRCxhQUF5QixFQUN6QixZQUF3QixFQUN4QixnQ0FBNEMsRUFDN0QsZ0JBQXdCLEVBQ1AsS0FBd0IsRUFDeEIsb0JBQW9CLEtBQU0sRUFDMUIsTUFBbUIsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUM7UUFQdEQsaUJBQVksR0FBWixZQUFZLENBQW9DO1FBQ2hELGtCQUFhLEdBQWIsYUFBYSxDQUFZO1FBQ3pCLGlCQUFZLEdBQVosWUFBWSxDQUFZO1FBQ3hCLHFDQUFnQyxHQUFoQyxnQ0FBZ0MsQ0FBWTtRQUU1QyxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQVM7UUFDMUIsUUFBRyxHQUFI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
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJdEQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFLTCxvQkFBb0IsRUFHcEIsT0FBTyxFQUtQLE9BQU8sR0FFUixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFDL0IsT0FBTyxFQUFzQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEYsT0FBTyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTdFLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsa0NBQWtDLEVBQ2xDLHVCQUF1QixFQUN2QixnQ0FBZ0MsR0FDakMsTUFBTSxxQkFBcUIsQ0FBQztBQUU3Qjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFFBQVE7SUFxQm5COzs7Ozs7Ozs7O09BVUc7SUFDSCxZQUNtQixZQUFnRCxFQUNoRCxhQUF5QixFQUN6QixZQUF3QixFQUN4QixnQ0FBNEMsRUFDN0QsZ0JBQXdCLEVBQ1AsS0FBd0IsRUFDeEIsb0JBQW9CLEtBQU0sRUFDMUIsTUFBbUIsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUM7UUFQdEQsaUJBQVksR0FBWixZQUFZLENBQW9DO1FBQ2hELGtCQUFhLEdBQWIsYUFBYSxDQUFZO1FBQ3pCLGlCQUFZLEdBQVosWUFBWSxDQUFZO1FBQ3hCLHFDQUFnQyxHQUFoQyxnQ0FBZ0MsQ0FBWTtRQUU1QyxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQVM7UUFDMUIsUUFBRyxHQUFI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
@@ -3,7 +3,7 @@ import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  import { sleep } from '@aztec/foundation/sleep';
5
5
  import { RollupAbi } from '@aztec/l1-artifacts';
6
- import { ContractData, ContractDataAndBytecode, EncodedContractFunction, L2Block, L2BlockL2Logs, LogType, } from '@aztec/types';
6
+ import { ExtendedContractData, L2Block, L2BlockL2Logs, LogType } from '@aztec/types';
7
7
  import { mock } from 'jest-mock-extended';
8
8
  import { encodeFunctionData, toHex } from 'viem';
9
9
  import { Archiver } from './archiver.js';
@@ -111,21 +111,18 @@ function makeL2BlockProcessedEvent(l1BlockNum, l2BlockNum) {
111
111
  * @returns An ContractDeployment event.
112
112
  */
113
113
  function makeContractDeploymentEvent(l1BlockNum, l2Block) {
114
- // const contractData = ContractData.random();
115
- const aztecAddress = AztecAddress.random();
116
- const portalAddress = EthAddress.random();
117
- const contractData = new ContractDataAndBytecode(new ContractData(aztecAddress, portalAddress), [
118
- EncodedContractFunction.random(),
119
- EncodedContractFunction.random(),
120
- ]);
121
- const acir = contractData.bytecode?.toString('hex');
114
+ const extendedContractData = ExtendedContractData.random();
115
+ const acir = extendedContractData.bytecode?.toString('hex');
122
116
  return {
123
117
  blockNumber: l1BlockNum,
124
118
  args: {
125
119
  l2BlockNum: BigInt(l2Block.number),
126
- aztecAddress: aztecAddress.toString(),
127
- portalAddress: portalAddress.toString(),
120
+ aztecAddress: extendedContractData.contractData.contractAddress.toString(),
121
+ portalAddress: extendedContractData.contractData.portalContractAddress.toString(),
128
122
  l2BlockHash: `0x${l2Block.getCalldataHash().toString('hex')}`,
123
+ partialAddress: extendedContractData.partialAddress.toString(true),
124
+ pubKeyX: extendedContractData.publicKey.x.toString(true),
125
+ pubKeyY: extendedContractData.publicKey.y.toString(true),
129
126
  acir: '0x' + acir,
130
127
  },
131
128
  transactionHash: `0x${l2Block.number}`,
@@ -184,4 +181,4 @@ function makeRollupTx(l2Block) {
184
181
  const input = encodeFunctionData({ abi: RollupAbi, functionName: 'process', args: [proof, block] });
185
182
  return { input };
186
183
  }
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlci9hcmNoaXZlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQTBDLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFDTCxZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixPQUFPLEVBQ1AsYUFBYSxFQUNiLE9BQU8sR0FDUixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQWEsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUF3RCxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQXFCLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0UsUUFBUSxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUU7SUFDeEIsTUFBTSxhQUFhLEdBQUcsNENBQTRDLENBQUM7SUFDbkUsTUFBTSxZQUFZLEdBQUcsNENBQTRDLENBQUM7SUFDbEUsTUFBTSxnQ0FBZ0MsR0FBRyw0Q0FBNEMsQ0FBQztJQUN0RixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUIsSUFBSSxZQUEyRCxDQUFDO0lBQ2hFLElBQUksYUFBZ0MsQ0FBQztJQUVyQyxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsWUFB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
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlci9hcmNoaXZlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQTBDLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVyRixPQUFPLEVBQWEsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUF3RCxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQXFCLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0UsUUFBUSxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUU7SUFDeEIsTUFBTSxhQUFhLEdBQUcsNENBQTRDLENBQUM7SUFDbkUsTUFBTSxZQUFZLEdBQUcsNENBQTRDLENBQUM7SUFDbEUsTUFBTSxnQ0FBZ0MsR0FBRyw0Q0FBNEMsQ0FBQztJQUN0RixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUIsSUFBSSxZQUEyRCxDQUFDO0lBQ2hFLElBQUksYUFBZ0MsQ0FBQztJQUVyQyxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsWUFBWSxHQUFHLElBQUksRUFBc0MsQ0FBQztR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
@@ -1,9 +1,9 @@
1
1
  import { Fr } from '@aztec/circuits.js';
2
2
  import { AztecAddress } from '@aztec/foundation/aztec-address';
3
- import { ContractData, ContractDataAndBytecode, L1ToL2Message, L2Block, L2BlockL2Logs, LogType } from '@aztec/types';
3
+ import { ContractData, ExtendedContractData, L1ToL2Message, L2Block, L2BlockL2Logs, L2Tx, LogType, TxHash } from '@aztec/types';
4
4
  /**
5
5
  * Interface describing a data store to be used by the archiver to store all its relevant data
6
- * (blocks, encrypted logs, aztec contract data and bytecode).
6
+ * (blocks, encrypted logs, aztec contract data extended contract data).
7
7
  */
8
8
  export interface ArchiverDataStore {
9
9
  /**
@@ -19,6 +19,12 @@ export interface ArchiverDataStore {
19
19
  * @returns The requested L2 blocks.
20
20
  */
21
21
  getL2Blocks(from: number, limit: number): Promise<L2Block[]>;
22
+ /**
23
+ * Gets an l2 tx.
24
+ * @param txHash - The txHash of the l2 tx.
25
+ * @returns The requested L2 tx.
26
+ */
27
+ getL2Tx(txHash: TxHash): Promise<L2Tx | undefined>;
22
28
  /**
23
29
  * Append new logs to the store's list.
24
30
  * @param data - The logs to be added to the store.
@@ -66,24 +72,24 @@ export interface ArchiverDataStore {
66
72
  */
67
73
  getLogs(from: number, limit: number, logType: LogType): Promise<L2BlockL2Logs[]>;
68
74
  /**
69
- * Store new Contract data and bytecode from an L2 block to the store's list.
75
+ * Add new extended contract data from an L2 block to the store's list.
70
76
  * @param data - List of contracts' data to be added.
71
77
  * @param blockNum - Number of the L2 block the contract data was deployed in.
72
78
  * @returns True if the operation is successful.
73
79
  */
74
- addContractDataAndBytecode(data: ContractDataAndBytecode[], blockNum: number): Promise<boolean>;
80
+ addExtendedContractData(data: ExtendedContractData[], blockNum: number): Promise<boolean>;
75
81
  /**
76
- * Lookup the L2 contract data for a contract address.
82
+ * Get the extended contract data for this contract.
77
83
  * @param contractAddress - The contract data address.
78
- * @returns The contract's public data.
84
+ * @returns The extended contract data or undefined if not found.
79
85
  */
80
- getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined>;
86
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
81
87
  /**
82
- * Lookup all contract data and bytecode in an L2 block.
88
+ * Lookup all extended contract data in an L2 block.
83
89
  * @param blockNum - The block number to get all contract data from.
84
- * @returns All contract data and bytecode in the block (if found).
90
+ * @returns All extended contract data in the block (if found).
85
91
  */
86
- getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]>;
92
+ getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]>;
87
93
  /**
88
94
  * Get basic info for an L2 contract.
89
95
  * Contains contract address & the ethereum portal address.
@@ -117,6 +123,10 @@ export declare class MemoryArchiverStore implements ArchiverDataStore {
117
123
  * An array containing all the L2 blocks that have been fetched so far.
118
124
  */
119
125
  private l2Blocks;
126
+ /**
127
+ * An array containing all the L2 Txs in the L2 blocks that have been fetched so far.
128
+ */
129
+ private l2Txs;
120
130
  /**
121
131
  * An array containing all the encrypted logs that have been fetched so far.
122
132
  * Note: Index in the "outer" array equals to (corresponding L2 block's number - INITIAL_L2_BLOCK_NUM).
@@ -128,13 +138,13 @@ export declare class MemoryArchiverStore implements ArchiverDataStore {
128
138
  */
129
139
  private unencryptedLogs;
130
140
  /**
131
- * A sparse array containing all the contract data and bytecode that have been fetched so far.
141
+ * A sparse array containing all the extended contract data that have been fetched so far.
132
142
  */
133
- private contractDataAndBytecodeByBlock;
143
+ private extendedContractDataByBlock;
134
144
  /**
135
- * A mapping of contract address to contract data and bytecode.
145
+ * A mapping of contract address to extended contract data.
136
146
  */
137
- private contractDataAndBytecode;
147
+ private extendedContractData;
138
148
  /**
139
149
  * Contains all the confirmed L1 to L2 messages (i.e. messages that were consumed in an L2 block)
140
150
  * It is a map of entryKey to the corresponding L1 to L2 message and the number of times it has appeared
@@ -178,12 +188,12 @@ export declare class MemoryArchiverStore implements ArchiverDataStore {
178
188
  */
179
189
  confirmL1ToL2Messages(messageKeys: Fr[]): Promise<boolean>;
180
190
  /**
181
- * Store new Contract data and bytecode from an L2 block to the store's list.
191
+ * Store new extended contract data from an L2 block to the store's list.
182
192
  * @param data - List of contracts' data to be added.
183
193
  * @param blockNum - Number of the L2 block the contract data was deployed in.
184
194
  * @returns True if the operation is successful (always in this implementation).
185
195
  */
186
- addContractDataAndBytecode(data: ContractDataAndBytecode[], blockNum: number): Promise<boolean>;
196
+ addExtendedContractData(data: ExtendedContractData[], blockNum: number): Promise<boolean>;
187
197
  /**
188
198
  * Gets up to `limit` amount of L2 blocks starting from `from`.
189
199
  * @param from - Number of the first block to return (inclusive).
@@ -191,6 +201,12 @@ export declare class MemoryArchiverStore implements ArchiverDataStore {
191
201
  * @returns The requested L2 blocks.
192
202
  */
193
203
  getL2Blocks(from: number, limit: number): Promise<L2Block[]>;
204
+ /**
205
+ * Gets an l2 tx.
206
+ * @param txHash - The txHash of the l2 tx.
207
+ * @returns The requested L2 tx.
208
+ */
209
+ getL2Tx(txHash: TxHash): Promise<L2Tx | undefined>;
194
210
  /**
195
211
  * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
196
212
  * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
@@ -212,17 +228,17 @@ export declare class MemoryArchiverStore implements ArchiverDataStore {
212
228
  */
213
229
  getLogs(from: number, limit: number, logType: LogType): Promise<L2BlockL2Logs[]>;
214
230
  /**
215
- * Lookup the L2 contract data for a contract address.
231
+ * Get the extended contract data for this contract.
216
232
  * @param contractAddress - The contract data address.
217
- * @returns The contract's public data.
233
+ * @returns The extended contract data or undefined if not found.
218
234
  */
219
- getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined>;
235
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
220
236
  /**
221
237
  * Lookup all contract data in an L2 block.
222
238
  * @param blockNum - The block number to get all contract data from.
223
- * @returns All contract data and bytecode in the block (if found).
239
+ * @returns All extended contract data in the block (if found).
224
240
  */
225
- getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]>;
241
+ getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]>;
226
242
  /**
227
243
  * Get basic info for an L2 contract.
228
244
  * Contains contract address & the ethereum portal address.
@@ -1 +1 @@
1
- {"version":3,"file":"archiver_store.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archiver_store.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ export class MemoryArchiverStore {
10
10
  * An array containing all the L2 blocks that have been fetched so far.
11
11
  */
12
12
  this.l2Blocks = [];
13
+ /**
14
+ * An array containing all the L2 Txs in the L2 blocks that have been fetched so far.
15
+ */
16
+ this.l2Txs = [];
13
17
  /**
14
18
  * An array containing all the encrypted logs that have been fetched so far.
15
19
  * Note: Index in the "outer" array equals to (corresponding L2 block's number - INITIAL_L2_BLOCK_NUM).
@@ -21,13 +25,13 @@ export class MemoryArchiverStore {
21
25
  */
22
26
  this.unencryptedLogs = [];
23
27
  /**
24
- * A sparse array containing all the contract data and bytecode that have been fetched so far.
28
+ * A sparse array containing all the extended contract data that have been fetched so far.
25
29
  */
26
- this.contractDataAndBytecodeByBlock = [];
30
+ this.extendedContractDataByBlock = [];
27
31
  /**
28
- * A mapping of contract address to contract data and bytecode.
32
+ * A mapping of contract address to extended contract data.
29
33
  */
30
- this.contractDataAndBytecode = new Map();
34
+ this.extendedContractData = new Map();
31
35
  /**
32
36
  * Contains all the confirmed L1 to L2 messages (i.e. messages that were consumed in an L2 block)
33
37
  * It is a map of entryKey to the corresponding L1 to L2 message and the number of times it has appeared
@@ -45,6 +49,7 @@ export class MemoryArchiverStore {
45
49
  */
46
50
  addL2Blocks(blocks) {
47
51
  this.l2Blocks.push(...blocks);
52
+ this.l2Txs.push(...blocks.flatMap(b => b.getTxs()));
48
53
  return Promise.resolve(true);
49
54
  }
50
55
  /**
@@ -93,23 +98,23 @@ export class MemoryArchiverStore {
93
98
  return Promise.resolve(true);
94
99
  }
95
100
  /**
96
- * Store new Contract data and bytecode from an L2 block to the store's list.
101
+ * Store new extended contract data from an L2 block to the store's list.
97
102
  * @param data - List of contracts' data to be added.
98
103
  * @param blockNum - Number of the L2 block the contract data was deployed in.
99
104
  * @returns True if the operation is successful (always in this implementation).
100
105
  */
101
- addContractDataAndBytecode(data, blockNum) {
106
+ addExtendedContractData(data, blockNum) {
102
107
  // Add to the contracts mapping
103
108
  for (const contractData of data) {
104
109
  const key = contractData.contractData.contractAddress.toString();
105
- this.contractDataAndBytecode.set(key, contractData);
110
+ this.extendedContractData.set(key, contractData);
106
111
  }
107
112
  // Add the index per block
108
- if (this.contractDataAndBytecodeByBlock[blockNum]?.length) {
109
- this.contractDataAndBytecodeByBlock[blockNum]?.push(...data);
113
+ if (this.extendedContractDataByBlock[blockNum]?.length) {
114
+ this.extendedContractDataByBlock[blockNum]?.push(...data);
110
115
  }
111
116
  else {
112
- this.contractDataAndBytecodeByBlock[blockNum] = [...data];
117
+ this.extendedContractDataByBlock[blockNum] = [...data];
113
118
  }
114
119
  return Promise.resolve(true);
115
120
  }
@@ -131,6 +136,15 @@ export class MemoryArchiverStore {
131
136
  const endIndex = startIndex + limit;
132
137
  return Promise.resolve(this.l2Blocks.slice(startIndex, endIndex));
133
138
  }
139
+ /**
140
+ * Gets an l2 tx.
141
+ * @param txHash - The txHash of the l2 tx.
142
+ * @returns The requested L2 tx.
143
+ */
144
+ getL2Tx(txHash) {
145
+ const l2Tx = this.l2Txs.find(tx => tx.txHash.equals(txHash));
146
+ return Promise.resolve(l2Tx);
147
+ }
134
148
  /**
135
149
  * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
136
150
  * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
@@ -171,24 +185,24 @@ export class MemoryArchiverStore {
171
185
  return Promise.resolve(logs.slice(startIndex, endIndex));
172
186
  }
173
187
  /**
174
- * Lookup the L2 contract data for a contract address.
188
+ * Get the extended contract data for this contract.
175
189
  * @param contractAddress - The contract data address.
176
- * @returns The contract's public data.
190
+ * @returns The extended contract data or undefined if not found.
177
191
  */
178
- getContractDataAndBytecode(contractAddress) {
179
- const result = this.contractDataAndBytecode.get(contractAddress.toString());
192
+ getExtendedContractData(contractAddress) {
193
+ const result = this.extendedContractData.get(contractAddress.toString());
180
194
  return Promise.resolve(result);
181
195
  }
182
196
  /**
183
197
  * Lookup all contract data in an L2 block.
184
198
  * @param blockNum - The block number to get all contract data from.
185
- * @returns All contract data and bytecode in the block (if found).
199
+ * @returns All extended contract data in the block (if found).
186
200
  */
187
- getContractDataAndBytecodeInBlock(blockNum) {
201
+ getExtendedContractDataInBlock(blockNum) {
188
202
  if (blockNum > this.l2Blocks.length) {
189
203
  return Promise.resolve([]);
190
204
  }
191
- return Promise.resolve(this.contractDataAndBytecodeByBlock[blockNum] || []);
205
+ return Promise.resolve(this.extendedContractDataByBlock[blockNum] || []);
192
206
  }
193
207
  /**
194
208
  * Get basic info for an L2 contract.
@@ -239,4 +253,4 @@ export class MemoryArchiverStore {
239
253
  return this.l2Blocks.length;
240
254
  }
241
255
  }
242
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXJfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXJfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFNLG1DQUFtQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFN0UsT0FBTyxFQUdMLG9CQUFvQixFQUlwQixPQUFPLEdBQ1IsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUE4SDVGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQXVDOUI7UUF0Q0E7O1dBRUc7UUFDSyxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBRWpDOzs7V0FHRztRQUNLLGtCQUFhLEdBQW9CLEVBQUUsQ0FBQztRQUU1Qzs7O1dBR0c7UUFDSyxvQkFBZSxHQUFvQixFQUFFLENBQUM7UUFFOUM7O1dBRUc7UUFDSyxtQ0FBOEIsR0FBOEMsRUFBRSxDQUFDO1FBRXZGOztXQUVHO1FBQ0ssNEJBQXVCLEdBQXlDLElBQUksR0FBRyxFQUFFLENBQUM7UUFFbEY7OztXQUdHO1FBQ0ssNEJBQXVCLEdBQXVCLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUUvRTs7V0FFRztRQUNLLDBCQUFxQixHQUE4QixJQUFJLHlCQUF5QixFQUFFLENBQUM7SUFFNUUsQ0FBQztJQUVoQjs7OztPQUlHO0lBQ0ksV0FBVyxDQUFDLE1BQWlCO1FBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDOUIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxJQUFxQixFQUFFLE9BQWdCO1FBQzdDLE9BQU8sS0FBSyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMs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
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXJfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXJfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFNLG1DQUFtQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFN0UsT0FBTyxFQUdMLG9CQUFvQixFQUtwQixPQUFPLEdBRVIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFxSTVGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQTRDOUI7UUEzQ0E7O1dBRUc7UUFDSyxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBRWpDOztXQUVHO1FBQ0ssVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUUzQjs7O1dBR0c7UUFDSyxrQkFBYSxHQUFvQixFQUFFLENBQUM7UUFFNUM7OztXQUdHO1FBQ0ssb0JBQWUsR0FBb0IsRUFBRSxDQUFDO1FBRTlDOztXQUVHO1FBQ0ssZ0NBQTJCLEdBQTJDLEVBQUUsQ0FBQztRQUVqRjs7V0FFRztRQUNLLHlCQUFvQixHQUFzQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRTVFOzs7V0FHRztRQUNLLDRCQUF1QixHQUF1QixJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFFL0U7O1dBRUc7UUFDSywwQkFBcUIsR0FBOEIsSUFBSSx5QkFBeUIsRUFBRSxDQUFDO0lBRTVFLENBQUM7SUFFaEI7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxNQUFpQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQs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
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
- import { ContractDataAndBytecode, L1ToL2Message, L2Block } from '@aztec/types';
4
+ import { ExtendedContractData, L1ToL2Message, L2Block } from '@aztec/types';
5
5
  import { PublicClient } from 'viem';
6
6
  /**
7
7
  * Data retrieved from logs
@@ -35,11 +35,11 @@ export declare function retrieveBlocks(publicClient: PublicClient, rollupAddress
35
35
  * @param currentBlockNumber - Latest available block number in the ETH node.
36
36
  * @param searchStartBlock - The block number to use for starting the search.
37
37
  * @param blockHashMapping - A mapping from block number to relevant block hash.
38
- * @returns An array of ContractDataAndBytecode and their equivalent L2 Block number along with the next eth block to search from..
38
+ * @returns An array of ExtendedContractData and their equivalent L2 Block number along with the next eth block to search from..
39
39
  */
40
40
  export declare function retrieveNewContractData(publicClient: PublicClient, contractDeploymentEmitterAddress: EthAddress, blockUntilSynced: boolean, currentBlockNumber: bigint, searchStartBlock: bigint, blockHashMapping: {
41
41
  [key: number]: Buffer | undefined;
42
- }): Promise<DataRetrieval<[ContractDataAndBytecode[], number]>>;
42
+ }): Promise<DataRetrieval<[ExtendedContractData[], number]>>;
43
43
  /**
44
44
  * Fetch new pending L1 to L2 messages.
45
45
  * @param publicClient - The viem public client to use for transaction retrieval.
@@ -1 +1 @@
1
- {"version":3,"file":"data_retrieval.d.ts","sourceRoot":"","sources":["../../src/archiver/data_retrieval.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAapC;;GAEG;AACH,KAAK,aAAa,CAAC,CAAC,IAAI;IACtB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,aAAa,EAAE,CAAC,EAAE,CAAC;CACpB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,UAAU,EACzB,gBAAgB,EAAE,OAAO,EACzB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,MAAM,EACxB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAiBjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,gCAAgC,EAAE,UAAU,EAC5C,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,GACtD,OAAO,CAAC,aAAa,CAAC,CAAC,uBAAuB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAmB7D;AAED;;;;;;;;GAQG;AACH,wBAAsB,gCAAgC,CACpD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAavC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kCAAkC,CACtD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAkB5B"}
1
+ {"version":3,"file":"data_retrieval.d.ts","sourceRoot":"","sources":["../../src/archiver/data_retrieval.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAapC;;GAEG;AACH,KAAK,aAAa,CAAC,CAAC,IAAI;IACtB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,aAAa,EAAE,CAAC,EAAE,CAAC;CACpB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,UAAU,EACzB,gBAAgB,EAAE,OAAO,EACzB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,MAAM,EACxB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAiBjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,gCAAgC,EAAE,UAAU,EAC5C,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,GACtD,OAAO,CAAC,aAAa,CAAC,CAAC,oBAAoB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAmB1D;AAED;;;;;;;;GAQG;AACH,wBAAsB,gCAAgC,CACpD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAavC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kCAAkC,CACtD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,gBAAgB,EAAE,OAAO,EACzB,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAkB5B"}
@@ -34,7 +34,7 @@ export async function retrieveBlocks(publicClient, rollupAddress, blockUntilSync
34
34
  * @param currentBlockNumber - Latest available block number in the ETH node.
35
35
  * @param searchStartBlock - The block number to use for starting the search.
36
36
  * @param blockHashMapping - A mapping from block number to relevant block hash.
37
- * @returns An array of ContractDataAndBytecode and their equivalent L2 Block number along with the next eth block to search from..
37
+ * @returns An array of ExtendedContractData and their equivalent L2 Block number along with the next eth block to search from..
38
38
  */
39
39
  export async function retrieveNewContractData(publicClient, contractDeploymentEmitterAddress, blockUntilSynced, currentBlockNumber, searchStartBlock, blockHashMapping) {
40
40
  let retrievedNewContracts = [];
@@ -99,4 +99,4 @@ export async function retrieveNewCancelledL1ToL2Messages(publicClient, inboxAddr
99
99
  } while (blockUntilSynced && searchStartBlock <= currentBlockNumber);
100
100
  return { nextEthBlockNumber: searchStartBlock, retrievedData: retrievedNewCancelledL1ToL2Messages };
101
101
  }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV9yZXRyaWV2YWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvZGF0YV9yZXRyaWV2YWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUNMLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0IsdUJBQXVCLEVBQ3ZCLDJCQUEyQixFQUMzQixnQkFBZ0IsRUFDaEIsa0NBQWtDLEVBQ2xDLDZCQUE2QixFQUM3QixvQ0FBb0MsR0FDckMsTUFBTSx1QkFBdUIsQ0FBQztBQWdCL0I7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2xDLFlBQTBCLEVBQzFCLGFBQXlCLEVBQ3pCLGdCQUF5QixFQUN6QixpQkFBeUIsRUFDekIsZ0JBQXdCLEVBQ3hCLHNCQUE4QjtJQUU5QixNQUFNLGVBQWUsR0FBYyxFQUFFLENBQUM7SUFDdEMsR0FBRztRQUNELElBQUksZ0JBQWdCLEdBQUcsaUJBQWlCLEVBQUU7WUFDeEMsTUFBTTtTQUNQO1FBQ0QsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLHVCQUF1QixDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUMxRyxJQUFJLG9CQUFvQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckMsTUFBTTtTQUNQO1FBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUNyRyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQWdCLEdBQUcsb0JBQW9CLENBQUMsb0JBQW9CLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVksR0FBRyxFQUFFLENBQUM7UUFDM0Ysc0JBQXNCLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUNwRCxRQUFRLGdCQUFnQixJ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
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV9yZXRyaWV2YWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvZGF0YV9yZXRyaWV2YWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUNMLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0IsdUJBQXVCLEVBQ3ZCLDJCQUEyQixFQUMzQixnQkFBZ0IsRUFDaEIsa0NBQWtDLEVBQ2xDLDZCQUE2QixFQUM3QixvQ0FBb0MsR0FDckMsTUFBTSx1QkFBdUIsQ0FBQztBQWdCL0I7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2xDLFlBQTBCLEVBQzFCLGFBQXlCLEVBQ3pCLGdCQUF5QixFQUN6QixpQkFBeUIsRUFDekIsZ0JBQXdCLEVBQ3hCLHNCQUE4QjtJQUU5QixNQUFNLGVBQWUsR0FBYyxFQUFFLENBQUM7SUFDdEMsR0FBRztRQUNELElBQUksZ0JBQWdCLEdBQUcsaUJBQWlCLEVBQUU7WUFDeEMsTUFBTTtTQUNQO1FBQ0QsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLHVCQUF1QixDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUMxRyxJQUFJLG9CQUFvQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckMsTUFBTTtTQUNQO1FBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUNyRyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQWdCLEdBQUcsb0JBQW9CLENBQUMsb0JBQW9CLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVksR0FBRyxFQUFFLENBQUM7UUFDM0Ysc0JBQXNCLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUNwRCxRQUFRLGdCQUFnQixJ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