@sentio/sdk 2.16.2-rc.1 → 2.16.2-rc.3

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.
Files changed (49) hide show
  1. package/lib/aptos/aptos-processor.d.ts +6 -2
  2. package/lib/aptos/aptos-processor.js +27 -23
  3. package/lib/aptos/aptos-processor.js.map +1 -1
  4. package/lib/aptos/index.d.ts +1 -1
  5. package/lib/aptos/index.js +1 -1
  6. package/lib/aptos/index.js.map +1 -1
  7. package/lib/eth/base-processor-template.d.ts +1 -1
  8. package/lib/eth/base-processor-template.js +5 -3
  9. package/lib/eth/base-processor-template.js.map +1 -1
  10. package/lib/eth/base-processor.d.ts +4 -4
  11. package/lib/eth/base-processor.js +17 -17
  12. package/lib/eth/base-processor.js.map +1 -1
  13. package/lib/eth/builtin/internal/eacaggregatorproxy-processor.js +31 -31
  14. package/lib/eth/builtin/internal/eacaggregatorproxy-processor.js.map +1 -1
  15. package/lib/eth/builtin/internal/erc1155-processor.js +16 -16
  16. package/lib/eth/builtin/internal/erc1155-processor.js.map +1 -1
  17. package/lib/eth/builtin/internal/erc20-processor.js +24 -24
  18. package/lib/eth/builtin/internal/erc20-processor.js.map +1 -1
  19. package/lib/eth/builtin/internal/erc20bytes-processor.js +13 -13
  20. package/lib/eth/builtin/internal/erc20bytes-processor.js.map +1 -1
  21. package/lib/eth/builtin/internal/erc721-processor.js +20 -20
  22. package/lib/eth/builtin/internal/erc721-processor.js.map +1 -1
  23. package/lib/eth/builtin/internal/weth9-processor.js +19 -19
  24. package/lib/eth/builtin/internal/weth9-processor.js.map +1 -1
  25. package/lib/eth/codegen/ethers-sentio.js +11 -11
  26. package/lib/eth/codegen/ethers-sentio.js.map +1 -1
  27. package/lib/eth/codegen/event-handler.js +1 -1
  28. package/lib/eth/codegen/event-handler.js.map +1 -1
  29. package/lib/eth/codegen/functions-handler.js +1 -1
  30. package/lib/eth/codegen/functions-handler.js.map +1 -1
  31. package/lib/eth/generic-processor.test.js.map +1 -1
  32. package/lib/sui/sui-processor.d.ts +8 -3
  33. package/lib/sui/sui-processor.js +29 -2
  34. package/lib/sui/sui-processor.js.map +1 -1
  35. package/package.json +3 -3
  36. package/src/aptos/aptos-processor.ts +44 -51
  37. package/src/aptos/index.ts +1 -1
  38. package/src/eth/base-processor-template.ts +5 -3
  39. package/src/eth/base-processor.ts +25 -25
  40. package/src/eth/builtin/internal/eacaggregatorproxy-processor.ts +31 -31
  41. package/src/eth/builtin/internal/erc1155-processor.ts +16 -16
  42. package/src/eth/builtin/internal/erc20-processor.ts +24 -24
  43. package/src/eth/builtin/internal/erc20bytes-processor.ts +13 -13
  44. package/src/eth/builtin/internal/erc721-processor.ts +20 -20
  45. package/src/eth/builtin/internal/weth9-processor.ts +19 -19
  46. package/src/eth/codegen/ethers-sentio.ts +11 -11
  47. package/src/eth/codegen/event-handler.ts +1 -1
  48. package/src/eth/codegen/functions-handler.ts +1 -1
  49. package/src/sui/sui-processor.ts +50 -4
@@ -1 +1 @@
1
- {"version":3,"file":"erc721-processor.js","sourceRoot":"","sources":["../../../../src/eth/builtin/internal/erc721-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { BigNumberish, Overrides, BytesLike } from \"ethers\";\nimport {\n addContractByABI,\n getContractByABI,\n addProcessor,\n getProcessor,\n getProvider,\n transformEtherError,\n BindOptions,\n BaseProcessor,\n BaseProcessorTemplate,\n BoundContractView,\n ContractContext,\n ContractView,\n DummyProvider,\n EthChainId,\n TypedCallTrace,\n EthContext,\n EthFetchConfig,\n} from \"@sentio/sdk/eth\";\n\nimport { ERC721__factory } from \"./index.js\";\nimport {\n ERC721,\n ApprovalEvent,\n ApprovalEventFilter,\n ApprovalForAllEvent,\n ApprovalForAllEventFilter,\n TransferEvent,\n TransferEventFilter,\n} from \"./ERC721.js\";\n\nexport interface ApproveCallObject {\n to: string;\n tokenId: bigint;\n}\n\nexport type ApproveCallTrace = TypedCallTrace<\n [string, bigint],\n ApproveCallObject\n>;\n\nexport interface TotalSupplyCallObject {}\n\nexport type TotalSupplyCallTrace = TypedCallTrace<[], TotalSupplyCallObject>;\n\nexport interface BalanceOfCallObject {\n owner: string;\n}\n\nexport type BalanceOfCallTrace = TypedCallTrace<[string], BalanceOfCallObject>;\n\nexport interface GetApprovedCallObject {\n tokenId: bigint;\n}\n\nexport type GetApprovedCallTrace = TypedCallTrace<\n [bigint],\n GetApprovedCallObject\n>;\n\nexport interface IsApprovedForAllCallObject {\n owner: string;\n operator: string;\n}\n\nexport type IsApprovedForAllCallTrace = TypedCallTrace<\n [string, string],\n IsApprovedForAllCallObject\n>;\n\nexport interface NameCallObject {}\n\nexport type NameCallTrace = TypedCallTrace<[], NameCallObject>;\n\nexport interface OwnerOfCallObject {\n tokenId: bigint;\n}\n\nexport type OwnerOfCallTrace = TypedCallTrace<[bigint], OwnerOfCallObject>;\n\nexport interface SafeTransferFrom_address_address_uint256CallObject {\n from: string;\n to: string;\n tokenId: bigint;\n}\n\nexport type SafeTransferFrom_address_address_uint256CallTrace = TypedCallTrace<\n [string, string, bigint],\n SafeTransferFrom_address_address_uint256CallObject\n>;\n\nexport interface SafeTransferFrom_address_address_uint256_bytesCallObject {\n from: string;\n to: string;\n tokenId: bigint;\n data: string;\n}\n\nexport type SafeTransferFrom_address_address_uint256_bytesCallTrace =\n TypedCallTrace<\n [string, string, bigint, string],\n SafeTransferFrom_address_address_uint256_bytesCallObject\n >;\n\nexport interface SetApprovalForAllCallObject {\n operator: string;\n _approved: boolean;\n}\n\nexport type SetApprovalForAllCallTrace = TypedCallTrace<\n [string, boolean],\n SetApprovalForAllCallObject\n>;\n\nexport interface SupportsInterfaceCallObject {\n interfaceId: string;\n}\n\nexport type SupportsInterfaceCallTrace = TypedCallTrace<\n [string],\n SupportsInterfaceCallObject\n>;\n\nexport interface SymbolCallObject {}\n\nexport type SymbolCallTrace = TypedCallTrace<[], SymbolCallObject>;\n\nexport interface TokenURICallObject {\n tokenId: bigint;\n}\n\nexport type TokenURICallTrace = TypedCallTrace<[bigint], TokenURICallObject>;\n\nexport interface TransferFromCallObject {\n from: string;\n to: string;\n tokenId: bigint;\n}\n\nexport type TransferFromCallTrace = TypedCallTrace<\n [string, string, bigint],\n TransferFromCallObject\n>;\n\nconst templateContract = ERC721__factory.connect(\"0x0\", DummyProvider);\n\nexport class ERC721ContractView extends ContractView<ERC721> {\n constructor(contract: ERC721) {\n super(contract);\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"totalSupply()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async balanceOf(owner: string, overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"balanceOf(address)\")(\n owner,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async getApproved(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n try {\n return await this.contract.getFunction(\"getApproved(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async isApprovedForAll(\n owner: string,\n operator: string,\n overrides?: Overrides\n ): Promise<boolean> {\n try {\n return await this.contract.getFunction(\n \"isApprovedForAll(address,address)\"\n )(owner, operator, overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async name(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"name()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async ownerOf(tokenId: BigNumberish, overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"ownerOf(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async supportsInterface(\n interfaceId: BytesLike,\n overrides?: Overrides\n ): Promise<boolean> {\n try {\n return await this.contract.getFunction(\"supportsInterface(bytes4)\")(\n interfaceId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"symbol()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async tokenURI(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n try {\n return await this.contract.getFunction(\"tokenURI(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n}\n\nexport class ERC721BoundContractView extends BoundContractView<\n ERC721,\n ERC721ContractView\n> {\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n return await this.view.totalSupply({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async balanceOf(owner: string, overrides?: Overrides): Promise<bigint> {\n return await this.view.balanceOf(owner, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async getApproved(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n return await this.view.getApproved(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async isApprovedForAll(\n owner: string,\n operator: string,\n overrides?: Overrides\n ): Promise<boolean> {\n return await this.view.isApprovedForAll(owner, operator, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async name(overrides?: Overrides): Promise<string> {\n return await this.view.name({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async ownerOf(tokenId: BigNumberish, overrides?: Overrides): Promise<string> {\n return await this.view.ownerOf(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async supportsInterface(\n interfaceId: BytesLike,\n overrides?: Overrides\n ): Promise<boolean> {\n return await this.view.supportsInterface(interfaceId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n return await this.view.symbol({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async tokenURI(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n return await this.view.tokenURI(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n}\n\nexport type ERC721Context = ContractContext<ERC721, ERC721BoundContractView>;\n\nexport class ERC721Processor extends BaseProcessor<\n ERC721,\n ERC721BoundContractView\n> {\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: ERC721Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventApprovalForAll(\n handler: (event: ApprovalForAllEvent, ctx: ERC721Context) => void,\n filter?: ApprovalForAllEventFilter | ApprovalForAllEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: ERC721Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onCallApprove(\n handler: (call: ApproveCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x095ea7b3\", handler as any, fetchConfig);\n }\n\n onCallTotalSupply(\n handler: (call: TotalSupplyCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x18160ddd\", handler as any, fetchConfig);\n }\n\n onCallBalanceOf(\n handler: (call: BalanceOfCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x70a08231\", handler as any, fetchConfig);\n }\n\n onCallGetApproved(\n handler: (call: GetApprovedCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x081812fc\", handler as any, fetchConfig);\n }\n\n onCallIsApprovedForAll(\n handler: (call: IsApprovedForAllCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xe985e9c5\", handler as any, fetchConfig);\n }\n\n onCallName(\n handler: (call: NameCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x06fdde03\", handler as any, fetchConfig);\n }\n\n onCallOwnerOf(\n handler: (call: OwnerOfCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x6352211e\", handler as any, fetchConfig);\n }\n\n onCallSafeTransferFrom_address_address_uint256(\n handler: (\n call: SafeTransferFrom_address_address_uint256CallTrace,\n ctx: ERC721Context\n ) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x42842e0e\", handler as any, fetchConfig);\n }\n\n onCallSafeTransferFrom_address_address_uint256_bytes(\n handler: (\n call: SafeTransferFrom_address_address_uint256_bytesCallTrace,\n ctx: ERC721Context\n ) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xb88d4fde\", handler as any, fetchConfig);\n }\n\n onCallSetApprovalForAll(\n handler: (call: SetApprovalForAllCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xa22cb465\", handler as any, fetchConfig);\n }\n\n onCallSupportsInterface(\n handler: (call: SupportsInterfaceCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x01ffc9a7\", handler as any, fetchConfig);\n }\n\n onCallSymbol(\n handler: (call: SymbolCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x95d89b41\", handler as any, fetchConfig);\n }\n\n onCallTokenURI(\n handler: (call: TokenURICallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xc87b56dd\", handler as any, fetchConfig);\n }\n\n onCallTransferFrom(\n handler: (call: TransferFromCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x23b872dd\", handler as any, fetchConfig);\n }\n\n public static filters = {\n Approval(\n owner?: string | null,\n approved?: string | null,\n tokenId?: BigNumberish | null\n ) {\n return templateContract.filters[\"Approval(address,address,uint256)\"](\n owner,\n approved,\n tokenId\n );\n },\n ApprovalForAll(\n owner?: string | null,\n operator?: string | null,\n approved?: null\n ) {\n return templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n owner,\n operator,\n approved\n );\n },\n Transfer(\n from?: string | null,\n to?: string | null,\n tokenId?: BigNumberish | null\n ) {\n return templateContract.filters[\"Transfer(address,address,uint256)\"](\n from,\n to,\n tokenId\n );\n },\n };\n\n protected CreateBoundContractView(): ERC721BoundContractView {\n const view = getERC721Contract(this.config.network, this.config.address);\n return new ERC721BoundContractView(this.config.address, view);\n }\n\n public static bind(options: BindOptions): ERC721Processor {\n if (!options.name) {\n options.name = \"ERC721\";\n }\n let processor = getProcessor(options) as ERC721Processor;\n if (!processor) {\n processor = new ERC721Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n}\n\nexport class ERC721ProcessorTemplate extends BaseProcessorTemplate<\n ERC721,\n ERC721BoundContractView\n> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"ERC721\";\n }\n let processor = getProcessor(options) as ERC721Processor;\n if (!processor) {\n processor = new ERC721Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: ERC721Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventApprovalForAll(\n handler: (event: ApprovalForAllEvent, ctx: ERC721Context) => void,\n filter?: ApprovalForAllEventFilter | ApprovalForAllEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: ERC721Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n}\n\nexport function getERC721Contract(\n chainId: EthChainId,\n address: string\n): ERC721ContractView {\n let contract = getContractByABI(\n \"ERC721\",\n address,\n chainId\n ) as ERC721ContractView;\n if (!contract) {\n const rawContract = ERC721__factory.connect(address, getProvider(chainId));\n contract = new ERC721ContractView(rawContract);\n addContractByABI(\"ERC721\", address, chainId, contract);\n }\n return contract;\n}\n\nexport function getERC721ContractOnContext(\n context: EthContext,\n address: string\n): ERC721BoundContractView {\n const view = getERC721Contract(context.getChainId(), address);\n const boundView = new ERC721BoundContractView(address, view);\n boundView.context = context as any;\n return boundView;\n}\n"]}
1
+ {"version":3,"file":"erc721-processor.js","sourceRoot":"","sources":["../../../../src/eth/builtin/internal/erc721-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { BigNumberish, Overrides, BytesLike } from \"ethers\";\nimport {\n addContractByABI,\n getContractByABI,\n addProcessor,\n getProcessor,\n getProvider,\n transformEtherError,\n BindOptions,\n BaseProcessor,\n BaseProcessorTemplate,\n BoundContractView,\n ContractContext,\n ContractView,\n DummyProvider,\n EthChainId,\n TypedCallTrace,\n EthContext,\n EthFetchConfig,\n} from \"@sentio/sdk/eth\";\n\nimport { ERC721__factory } from \"./index.js\";\nimport {\n ERC721,\n ApprovalEvent,\n ApprovalEventFilter,\n ApprovalForAllEvent,\n ApprovalForAllEventFilter,\n TransferEvent,\n TransferEventFilter,\n} from \"./ERC721.js\";\n\nexport interface ApproveCallObject {\n to: string;\n tokenId: bigint;\n}\n\nexport type ApproveCallTrace = TypedCallTrace<\n [string, bigint],\n ApproveCallObject\n>;\n\nexport interface TotalSupplyCallObject {}\n\nexport type TotalSupplyCallTrace = TypedCallTrace<[], TotalSupplyCallObject>;\n\nexport interface BalanceOfCallObject {\n owner: string;\n}\n\nexport type BalanceOfCallTrace = TypedCallTrace<[string], BalanceOfCallObject>;\n\nexport interface GetApprovedCallObject {\n tokenId: bigint;\n}\n\nexport type GetApprovedCallTrace = TypedCallTrace<\n [bigint],\n GetApprovedCallObject\n>;\n\nexport interface IsApprovedForAllCallObject {\n owner: string;\n operator: string;\n}\n\nexport type IsApprovedForAllCallTrace = TypedCallTrace<\n [string, string],\n IsApprovedForAllCallObject\n>;\n\nexport interface NameCallObject {}\n\nexport type NameCallTrace = TypedCallTrace<[], NameCallObject>;\n\nexport interface OwnerOfCallObject {\n tokenId: bigint;\n}\n\nexport type OwnerOfCallTrace = TypedCallTrace<[bigint], OwnerOfCallObject>;\n\nexport interface SafeTransferFrom_address_address_uint256CallObject {\n from: string;\n to: string;\n tokenId: bigint;\n}\n\nexport type SafeTransferFrom_address_address_uint256CallTrace = TypedCallTrace<\n [string, string, bigint],\n SafeTransferFrom_address_address_uint256CallObject\n>;\n\nexport interface SafeTransferFrom_address_address_uint256_bytesCallObject {\n from: string;\n to: string;\n tokenId: bigint;\n data: string;\n}\n\nexport type SafeTransferFrom_address_address_uint256_bytesCallTrace =\n TypedCallTrace<\n [string, string, bigint, string],\n SafeTransferFrom_address_address_uint256_bytesCallObject\n >;\n\nexport interface SetApprovalForAllCallObject {\n operator: string;\n _approved: boolean;\n}\n\nexport type SetApprovalForAllCallTrace = TypedCallTrace<\n [string, boolean],\n SetApprovalForAllCallObject\n>;\n\nexport interface SupportsInterfaceCallObject {\n interfaceId: string;\n}\n\nexport type SupportsInterfaceCallTrace = TypedCallTrace<\n [string],\n SupportsInterfaceCallObject\n>;\n\nexport interface SymbolCallObject {}\n\nexport type SymbolCallTrace = TypedCallTrace<[], SymbolCallObject>;\n\nexport interface TokenURICallObject {\n tokenId: bigint;\n}\n\nexport type TokenURICallTrace = TypedCallTrace<[bigint], TokenURICallObject>;\n\nexport interface TransferFromCallObject {\n from: string;\n to: string;\n tokenId: bigint;\n}\n\nexport type TransferFromCallTrace = TypedCallTrace<\n [string, string, bigint],\n TransferFromCallObject\n>;\n\nconst templateContract = ERC721__factory.connect(\"0x0\", DummyProvider);\n\nexport class ERC721ContractView extends ContractView<ERC721> {\n constructor(contract: ERC721) {\n super(contract);\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"totalSupply()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async balanceOf(owner: string, overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"balanceOf(address)\")(\n owner,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async getApproved(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n try {\n return await this.contract.getFunction(\"getApproved(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async isApprovedForAll(\n owner: string,\n operator: string,\n overrides?: Overrides\n ): Promise<boolean> {\n try {\n return await this.contract.getFunction(\n \"isApprovedForAll(address,address)\"\n )(owner, operator, overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async name(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"name()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async ownerOf(tokenId: BigNumberish, overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"ownerOf(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async supportsInterface(\n interfaceId: BytesLike,\n overrides?: Overrides\n ): Promise<boolean> {\n try {\n return await this.contract.getFunction(\"supportsInterface(bytes4)\")(\n interfaceId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"symbol()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async tokenURI(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n try {\n return await this.contract.getFunction(\"tokenURI(uint256)\")(\n tokenId,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n}\n\nexport class ERC721BoundContractView extends BoundContractView<\n ERC721,\n ERC721ContractView\n> {\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n return await this.view.totalSupply({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async balanceOf(owner: string, overrides?: Overrides): Promise<bigint> {\n return await this.view.balanceOf(owner, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async getApproved(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n return await this.view.getApproved(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async isApprovedForAll(\n owner: string,\n operator: string,\n overrides?: Overrides\n ): Promise<boolean> {\n return await this.view.isApprovedForAll(owner, operator, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async name(overrides?: Overrides): Promise<string> {\n return await this.view.name({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async ownerOf(tokenId: BigNumberish, overrides?: Overrides): Promise<string> {\n return await this.view.ownerOf(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async supportsInterface(\n interfaceId: BytesLike,\n overrides?: Overrides\n ): Promise<boolean> {\n return await this.view.supportsInterface(interfaceId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n return await this.view.symbol({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async tokenURI(\n tokenId: BigNumberish,\n overrides?: Overrides\n ): Promise<string> {\n return await this.view.tokenURI(tokenId, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n}\n\nexport type ERC721Context = ContractContext<ERC721, ERC721BoundContractView>;\n\nexport class ERC721Processor extends BaseProcessor<\n ERC721,\n ERC721BoundContractView\n> {\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: ERC721Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventApprovalForAll(\n handler: (event: ApprovalForAllEvent, ctx: ERC721Context) => void,\n filter?: ApprovalForAllEventFilter | ApprovalForAllEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: ERC721Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onCallApprove(\n handler: (call: ApproveCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x095ea7b3\", handler as any, fetchConfig);\n }\n\n onCallTotalSupply(\n handler: (call: TotalSupplyCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x18160ddd\", handler as any, fetchConfig);\n }\n\n onCallBalanceOf(\n handler: (call: BalanceOfCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x70a08231\", handler as any, fetchConfig);\n }\n\n onCallGetApproved(\n handler: (call: GetApprovedCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x081812fc\", handler as any, fetchConfig);\n }\n\n onCallIsApprovedForAll(\n handler: (call: IsApprovedForAllCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xe985e9c5\", handler as any, fetchConfig);\n }\n\n onCallName(\n handler: (call: NameCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x06fdde03\", handler as any, fetchConfig);\n }\n\n onCallOwnerOf(\n handler: (call: OwnerOfCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x6352211e\", handler as any, fetchConfig);\n }\n\n onCallSafeTransferFrom_address_address_uint256(\n handler: (\n call: SafeTransferFrom_address_address_uint256CallTrace,\n ctx: ERC721Context\n ) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x42842e0e\", handler as any, fetchConfig);\n }\n\n onCallSafeTransferFrom_address_address_uint256_bytes(\n handler: (\n call: SafeTransferFrom_address_address_uint256_bytesCallTrace,\n ctx: ERC721Context\n ) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xb88d4fde\", handler as any, fetchConfig);\n }\n\n onCallSetApprovalForAll(\n handler: (call: SetApprovalForAllCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xa22cb465\", handler as any, fetchConfig);\n }\n\n onCallSupportsInterface(\n handler: (call: SupportsInterfaceCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x01ffc9a7\", handler as any, fetchConfig);\n }\n\n onCallSymbol(\n handler: (call: SymbolCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x95d89b41\", handler as any, fetchConfig);\n }\n\n onCallTokenURI(\n handler: (call: TokenURICallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xc87b56dd\", handler as any, fetchConfig);\n }\n\n onCallTransferFrom(\n handler: (call: TransferFromCallTrace, ctx: ERC721Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x23b872dd\", handler as any, fetchConfig);\n }\n\n public static filters = {\n Approval(\n owner?: string | null,\n approved?: string | null,\n tokenId?: BigNumberish | null\n ) {\n return templateContract.filters[\"Approval(address,address,uint256)\"](\n owner,\n approved,\n tokenId\n );\n },\n ApprovalForAll(\n owner?: string | null,\n operator?: string | null,\n approved?: null\n ) {\n return templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n owner,\n operator,\n approved\n );\n },\n Transfer(\n from?: string | null,\n to?: string | null,\n tokenId?: BigNumberish | null\n ) {\n return templateContract.filters[\"Transfer(address,address,uint256)\"](\n from,\n to,\n tokenId\n );\n },\n };\n\n protected CreateBoundContractView(): ERC721BoundContractView {\n const view = getERC721Contract(this.config.network, this.config.address);\n return new ERC721BoundContractView(this.config.address, view);\n }\n\n public static bind(options: BindOptions): ERC721Processor {\n if (!options.name) {\n options.name = \"ERC721\";\n }\n let processor = getProcessor(options) as ERC721Processor;\n if (!processor) {\n processor = new ERC721Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n}\n\nexport class ERC721ProcessorTemplate extends BaseProcessorTemplate<\n ERC721,\n ERC721BoundContractView\n> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"ERC721\";\n }\n let processor = getProcessor(options) as ERC721Processor;\n if (!processor) {\n processor = new ERC721Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: ERC721Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventApprovalForAll(\n handler: (event: ApprovalForAllEvent, ctx: ERC721Context) => void,\n filter?: ApprovalForAllEventFilter | ApprovalForAllEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"ApprovalForAll(address,address,bool)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: ERC721Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n}\n\nexport function getERC721Contract(\n chainId: EthChainId,\n address: string\n): ERC721ContractView {\n let contract = getContractByABI(\n \"ERC721\",\n address,\n chainId\n ) as ERC721ContractView;\n if (!contract) {\n const rawContract = ERC721__factory.connect(address, getProvider(chainId));\n contract = new ERC721ContractView(rawContract);\n addContractByABI(\"ERC721\", address, chainId, contract);\n }\n return contract;\n}\n\nexport function getERC721ContractOnContext(\n context: EthContext,\n address: string\n): ERC721BoundContractView {\n const view = getERC721Contract(context.getChainId(), address);\n const boundView = new ERC721BoundContractView(address, view);\n boundView.context = context as any;\n return boundView;\n}\n"]}
@@ -97,58 +97,58 @@ class WETH9Processor extends BaseProcessor {
97
97
  if (!filter) {
98
98
  filter = templateContract.filters["Approval(address,address,uint256)"](null, null, null);
99
99
  }
100
- return super.onEvent(handler, filter, fetchConfig);
100
+ return super.onEthEvent(handler, filter, fetchConfig);
101
101
  }
102
102
  onEventTransfer(handler, filter, fetchConfig) {
103
103
  if (!filter) {
104
104
  filter = templateContract.filters["Transfer(address,address,uint256)"](null, null, null);
105
105
  }
106
- return super.onEvent(handler, filter, fetchConfig);
106
+ return super.onEthEvent(handler, filter, fetchConfig);
107
107
  }
108
108
  onEventDeposit(handler, filter, fetchConfig) {
109
109
  if (!filter) {
110
110
  filter = templateContract.filters["Deposit(address,uint256)"](null, null);
111
111
  }
112
- return super.onEvent(handler, filter, fetchConfig);
112
+ return super.onEthEvent(handler, filter, fetchConfig);
113
113
  }
114
114
  onEventWithdrawal(handler, filter, fetchConfig) {
115
115
  if (!filter) {
116
116
  filter = templateContract.filters["Withdrawal(address,uint256)"](null, null);
117
117
  }
118
- return super.onEvent(handler, filter, fetchConfig);
118
+ return super.onEthEvent(handler, filter, fetchConfig);
119
119
  }
120
120
  onCallName(handler, fetchConfig) {
121
- return super.onTrace("0x06fdde03", handler, fetchConfig);
121
+ return super.onEthTrace("0x06fdde03", handler, fetchConfig);
122
122
  }
123
123
  onCallApprove(handler, fetchConfig) {
124
- return super.onTrace("0x095ea7b3", handler, fetchConfig);
124
+ return super.onEthTrace("0x095ea7b3", handler, fetchConfig);
125
125
  }
126
126
  onCallTotalSupply(handler, fetchConfig) {
127
- return super.onTrace("0x18160ddd", handler, fetchConfig);
127
+ return super.onEthTrace("0x18160ddd", handler, fetchConfig);
128
128
  }
129
129
  onCallTransferFrom(handler, fetchConfig) {
130
- return super.onTrace("0x23b872dd", handler, fetchConfig);
130
+ return super.onEthTrace("0x23b872dd", handler, fetchConfig);
131
131
  }
132
132
  onCallWithdraw(handler, fetchConfig) {
133
- return super.onTrace("0x2e1a7d4d", handler, fetchConfig);
133
+ return super.onEthTrace("0x2e1a7d4d", handler, fetchConfig);
134
134
  }
135
135
  onCallDecimals(handler, fetchConfig) {
136
- return super.onTrace("0x313ce567", handler, fetchConfig);
136
+ return super.onEthTrace("0x313ce567", handler, fetchConfig);
137
137
  }
138
138
  onCallBalanceOf(handler, fetchConfig) {
139
- return super.onTrace("0x70a08231", handler, fetchConfig);
139
+ return super.onEthTrace("0x70a08231", handler, fetchConfig);
140
140
  }
141
141
  onCallSymbol(handler, fetchConfig) {
142
- return super.onTrace("0x95d89b41", handler, fetchConfig);
142
+ return super.onEthTrace("0x95d89b41", handler, fetchConfig);
143
143
  }
144
144
  onCallTransfer(handler, fetchConfig) {
145
- return super.onTrace("0xa9059cbb", handler, fetchConfig);
145
+ return super.onEthTrace("0xa9059cbb", handler, fetchConfig);
146
146
  }
147
147
  onCallDeposit(handler, fetchConfig) {
148
- return super.onTrace("0xd0e30db0", handler, fetchConfig);
148
+ return super.onEthTrace("0xd0e30db0", handler, fetchConfig);
149
149
  }
150
150
  onCallAllowance(handler, fetchConfig) {
151
- return super.onTrace("0xdd62ed3e", handler, fetchConfig);
151
+ return super.onEthTrace("0xdd62ed3e", handler, fetchConfig);
152
152
  }
153
153
  static filters = {
154
154
  Approval(src, guy, wad) {
@@ -197,25 +197,25 @@ export class WETH9ProcessorTemplate extends BaseProcessorTemplate {
197
197
  if (!filter) {
198
198
  filter = templateContract.filters["Approval(address,address,uint256)"](null, null, null);
199
199
  }
200
- return super.onEvent(handler, filter, fetchConfig);
200
+ return super.onEthEvent(handler, filter, fetchConfig);
201
201
  }
202
202
  onEventTransfer(handler, filter, fetchConfig) {
203
203
  if (!filter) {
204
204
  filter = templateContract.filters["Transfer(address,address,uint256)"](null, null, null);
205
205
  }
206
- return super.onEvent(handler, filter, fetchConfig);
206
+ return super.onEthEvent(handler, filter, fetchConfig);
207
207
  }
208
208
  onEventDeposit(handler, filter, fetchConfig) {
209
209
  if (!filter) {
210
210
  filter = templateContract.filters["Deposit(address,uint256)"](null, null);
211
211
  }
212
- return super.onEvent(handler, filter, fetchConfig);
212
+ return super.onEthEvent(handler, filter, fetchConfig);
213
213
  }
214
214
  onEventWithdrawal(handler, filter, fetchConfig) {
215
215
  if (!filter) {
216
216
  filter = templateContract.filters["Withdrawal(address,uint256)"](null, null);
217
217
  }
218
- return super.onEvent(handler, filter, fetchConfig);
218
+ return super.onEthEvent(handler, filter, fetchConfig);
219
219
  }
220
220
  }
221
221
  export function getWETH9Contract(chainId, address) {
@@ -1 +1 @@
1
- {"version":3,"file":"weth9-processor.js","sourceRoot":"","sources":["../../../../src/eth/builtin/internal/weth9-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { Overrides } from \"ethers\";\nimport {\n addContractByABI,\n getContractByABI,\n addProcessor,\n getProcessor,\n getProvider,\n transformEtherError,\n BindOptions,\n BaseProcessor,\n BaseProcessorTemplate,\n BoundContractView,\n ContractContext,\n ContractView,\n DummyProvider,\n EthChainId,\n TypedCallTrace,\n EthContext,\n EthFetchConfig,\n} from \"@sentio/sdk/eth\";\n\nimport { WETH9__factory } from \"./index.js\";\nimport {\n WETH9,\n ApprovalEvent,\n ApprovalEventFilter,\n TransferEvent,\n TransferEventFilter,\n DepositEvent,\n DepositEventFilter,\n WithdrawalEvent,\n WithdrawalEventFilter,\n} from \"./WETH9.js\";\n\nexport interface NameCallObject {}\n\nexport type NameCallTrace = TypedCallTrace<[], NameCallObject>;\n\nexport interface ApproveCallObject {\n guy: string;\n wad: bigint;\n}\n\nexport type ApproveCallTrace = TypedCallTrace<\n [string, bigint],\n ApproveCallObject\n>;\n\nexport interface TotalSupplyCallObject {}\n\nexport type TotalSupplyCallTrace = TypedCallTrace<[], TotalSupplyCallObject>;\n\nexport interface TransferFromCallObject {\n src: string;\n dst: string;\n wad: bigint;\n}\n\nexport type TransferFromCallTrace = TypedCallTrace<\n [string, string, bigint],\n TransferFromCallObject\n>;\n\nexport interface WithdrawCallObject {\n wad: bigint;\n}\n\nexport type WithdrawCallTrace = TypedCallTrace<[bigint], WithdrawCallObject>;\n\nexport interface DecimalsCallObject {}\n\nexport type DecimalsCallTrace = TypedCallTrace<[], DecimalsCallObject>;\n\nexport interface BalanceOfCallObject {}\n\nexport type BalanceOfCallTrace = TypedCallTrace<[string], BalanceOfCallObject>;\n\nexport interface SymbolCallObject {}\n\nexport type SymbolCallTrace = TypedCallTrace<[], SymbolCallObject>;\n\nexport interface TransferCallObject {\n dst: string;\n wad: bigint;\n}\n\nexport type TransferCallTrace = TypedCallTrace<\n [string, bigint],\n TransferCallObject\n>;\n\nexport interface DepositCallObject {}\n\nexport type DepositCallTrace = TypedCallTrace<[], DepositCallObject>;\n\nexport interface AllowanceCallObject {}\n\nexport type AllowanceCallTrace = TypedCallTrace<\n [string, string],\n AllowanceCallObject\n>;\n\nconst templateContract = WETH9__factory.connect(\"0x0\", DummyProvider);\n\nexport class WETH9ContractView extends ContractView<WETH9> {\n constructor(contract: WETH9) {\n super(contract);\n }\n\n async name(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"name()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"totalSupply()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"decimals()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"balanceOf(address)\")(\n arg0,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"symbol()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"allowance(address,address)\")(\n arg0,\n arg1,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n}\n\nexport class WETH9BoundContractView extends BoundContractView<\n WETH9,\n WETH9ContractView\n> {\n async name(overrides?: Overrides): Promise<string> {\n return await this.view.name({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n return await this.view.totalSupply({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n return await this.view.decimals({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n return await this.view.balanceOf(arg0, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n return await this.view.symbol({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n return await this.view.allowance(arg0, arg1, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n}\n\nexport type WETH9Context = ContractContext<WETH9, WETH9BoundContractView>;\n\nexport class WETH9Processor extends BaseProcessor<\n WETH9,\n WETH9BoundContractView\n> {\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onCallName(\n handler: (call: NameCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x06fdde03\", handler as any, fetchConfig);\n }\n\n onCallApprove(\n handler: (call: ApproveCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x095ea7b3\", handler as any, fetchConfig);\n }\n\n onCallTotalSupply(\n handler: (call: TotalSupplyCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x18160ddd\", handler as any, fetchConfig);\n }\n\n onCallTransferFrom(\n handler: (call: TransferFromCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x23b872dd\", handler as any, fetchConfig);\n }\n\n onCallWithdraw(\n handler: (call: WithdrawCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x2e1a7d4d\", handler as any, fetchConfig);\n }\n\n onCallDecimals(\n handler: (call: DecimalsCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x313ce567\", handler as any, fetchConfig);\n }\n\n onCallBalanceOf(\n handler: (call: BalanceOfCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x70a08231\", handler as any, fetchConfig);\n }\n\n onCallSymbol(\n handler: (call: SymbolCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0x95d89b41\", handler as any, fetchConfig);\n }\n\n onCallTransfer(\n handler: (call: TransferCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xa9059cbb\", handler as any, fetchConfig);\n }\n\n onCallDeposit(\n handler: (call: DepositCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xd0e30db0\", handler as any, fetchConfig);\n }\n\n onCallAllowance(\n handler: (call: AllowanceCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"0xdd62ed3e\", handler as any, fetchConfig);\n }\n\n public static filters = {\n Approval(src?: string | null, guy?: string | null, wad?: null) {\n return templateContract.filters[\"Approval(address,address,uint256)\"](\n src,\n guy,\n wad\n );\n },\n Transfer(src?: string | null, dst?: string | null, wad?: null) {\n return templateContract.filters[\"Transfer(address,address,uint256)\"](\n src,\n dst,\n wad\n );\n },\n Deposit(dst?: string | null, wad?: null) {\n return templateContract.filters[\"Deposit(address,uint256)\"](dst, wad);\n },\n Withdrawal(src?: string | null, wad?: null) {\n return templateContract.filters[\"Withdrawal(address,uint256)\"](src, wad);\n },\n };\n\n protected CreateBoundContractView(): WETH9BoundContractView {\n const view = getWETH9Contract(this.config.network, this.config.address);\n return new WETH9BoundContractView(this.config.address, view);\n }\n\n public static bind(options: BindOptions): WETH9Processor {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n}\n\nexport class WETH9ProcessorTemplate extends BaseProcessorTemplate<\n WETH9,\n WETH9BoundContractView\n> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n}\n\nexport function getWETH9Contract(\n chainId: EthChainId,\n address: string\n): WETH9ContractView {\n let contract = getContractByABI(\n \"WETH9\",\n address,\n chainId\n ) as WETH9ContractView;\n if (!contract) {\n const rawContract = WETH9__factory.connect(address, getProvider(chainId));\n contract = new WETH9ContractView(rawContract);\n addContractByABI(\"WETH9\", address, chainId, contract);\n }\n return contract;\n}\n\nexport function getWETH9ContractOnContext(\n context: EthContext,\n address: string\n): WETH9BoundContractView {\n const view = getWETH9Contract(context.getChainId(), address);\n const boundView = new WETH9BoundContractView(address, view);\n boundView.context = context as any;\n return boundView;\n}\n"]}
1
+ {"version":3,"file":"weth9-processor.js","sourceRoot":"","sources":["../../../../src/eth/builtin/internal/weth9-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { Overrides } from \"ethers\";\nimport {\n addContractByABI,\n getContractByABI,\n addProcessor,\n getProcessor,\n getProvider,\n transformEtherError,\n BindOptions,\n BaseProcessor,\n BaseProcessorTemplate,\n BoundContractView,\n ContractContext,\n ContractView,\n DummyProvider,\n EthChainId,\n TypedCallTrace,\n EthContext,\n EthFetchConfig,\n} from \"@sentio/sdk/eth\";\n\nimport { WETH9__factory } from \"./index.js\";\nimport {\n WETH9,\n ApprovalEvent,\n ApprovalEventFilter,\n TransferEvent,\n TransferEventFilter,\n DepositEvent,\n DepositEventFilter,\n WithdrawalEvent,\n WithdrawalEventFilter,\n} from \"./WETH9.js\";\n\nexport interface NameCallObject {}\n\nexport type NameCallTrace = TypedCallTrace<[], NameCallObject>;\n\nexport interface ApproveCallObject {\n guy: string;\n wad: bigint;\n}\n\nexport type ApproveCallTrace = TypedCallTrace<\n [string, bigint],\n ApproveCallObject\n>;\n\nexport interface TotalSupplyCallObject {}\n\nexport type TotalSupplyCallTrace = TypedCallTrace<[], TotalSupplyCallObject>;\n\nexport interface TransferFromCallObject {\n src: string;\n dst: string;\n wad: bigint;\n}\n\nexport type TransferFromCallTrace = TypedCallTrace<\n [string, string, bigint],\n TransferFromCallObject\n>;\n\nexport interface WithdrawCallObject {\n wad: bigint;\n}\n\nexport type WithdrawCallTrace = TypedCallTrace<[bigint], WithdrawCallObject>;\n\nexport interface DecimalsCallObject {}\n\nexport type DecimalsCallTrace = TypedCallTrace<[], DecimalsCallObject>;\n\nexport interface BalanceOfCallObject {}\n\nexport type BalanceOfCallTrace = TypedCallTrace<[string], BalanceOfCallObject>;\n\nexport interface SymbolCallObject {}\n\nexport type SymbolCallTrace = TypedCallTrace<[], SymbolCallObject>;\n\nexport interface TransferCallObject {\n dst: string;\n wad: bigint;\n}\n\nexport type TransferCallTrace = TypedCallTrace<\n [string, bigint],\n TransferCallObject\n>;\n\nexport interface DepositCallObject {}\n\nexport type DepositCallTrace = TypedCallTrace<[], DepositCallObject>;\n\nexport interface AllowanceCallObject {}\n\nexport type AllowanceCallTrace = TypedCallTrace<\n [string, string],\n AllowanceCallObject\n>;\n\nconst templateContract = WETH9__factory.connect(\"0x0\", DummyProvider);\n\nexport class WETH9ContractView extends ContractView<WETH9> {\n constructor(contract: WETH9) {\n super(contract);\n }\n\n async name(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"name()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"totalSupply()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"decimals()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"balanceOf(address)\")(\n arg0,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"symbol()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"allowance(address,address)\")(\n arg0,\n arg1,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n}\n\nexport class WETH9BoundContractView extends BoundContractView<\n WETH9,\n WETH9ContractView\n> {\n async name(overrides?: Overrides): Promise<string> {\n return await this.view.name({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n return await this.view.totalSupply({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n return await this.view.decimals({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n return await this.view.balanceOf(arg0, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n return await this.view.symbol({\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n return await this.view.allowance(arg0, arg1, {\n blockTag: this.context.blockNumber,\n ...overrides,\n });\n }\n}\n\nexport type WETH9Context = ContractContext<WETH9, WETH9BoundContractView>;\n\nexport class WETH9Processor extends BaseProcessor<\n WETH9,\n WETH9BoundContractView\n> {\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onCallName(\n handler: (call: NameCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x06fdde03\", handler as any, fetchConfig);\n }\n\n onCallApprove(\n handler: (call: ApproveCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x095ea7b3\", handler as any, fetchConfig);\n }\n\n onCallTotalSupply(\n handler: (call: TotalSupplyCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x18160ddd\", handler as any, fetchConfig);\n }\n\n onCallTransferFrom(\n handler: (call: TransferFromCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x23b872dd\", handler as any, fetchConfig);\n }\n\n onCallWithdraw(\n handler: (call: WithdrawCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x2e1a7d4d\", handler as any, fetchConfig);\n }\n\n onCallDecimals(\n handler: (call: DecimalsCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x313ce567\", handler as any, fetchConfig);\n }\n\n onCallBalanceOf(\n handler: (call: BalanceOfCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x70a08231\", handler as any, fetchConfig);\n }\n\n onCallSymbol(\n handler: (call: SymbolCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0x95d89b41\", handler as any, fetchConfig);\n }\n\n onCallTransfer(\n handler: (call: TransferCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xa9059cbb\", handler as any, fetchConfig);\n }\n\n onCallDeposit(\n handler: (call: DepositCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xd0e30db0\", handler as any, fetchConfig);\n }\n\n onCallAllowance(\n handler: (call: AllowanceCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"0xdd62ed3e\", handler as any, fetchConfig);\n }\n\n public static filters = {\n Approval(src?: string | null, guy?: string | null, wad?: null) {\n return templateContract.filters[\"Approval(address,address,uint256)\"](\n src,\n guy,\n wad\n );\n },\n Transfer(src?: string | null, dst?: string | null, wad?: null) {\n return templateContract.filters[\"Transfer(address,address,uint256)\"](\n src,\n dst,\n wad\n );\n },\n Deposit(dst?: string | null, wad?: null) {\n return templateContract.filters[\"Deposit(address,uint256)\"](dst, wad);\n },\n Withdrawal(src?: string | null, wad?: null) {\n return templateContract.filters[\"Withdrawal(address,uint256)\"](src, wad);\n },\n };\n\n protected CreateBoundContractView(): WETH9BoundContractView {\n const view = getWETH9Contract(this.config.network, this.config.address);\n return new WETH9BoundContractView(this.config.address, view);\n }\n\n public static bind(options: BindOptions): WETH9Processor {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n}\n\nexport class WETH9ProcessorTemplate extends BaseProcessorTemplate<\n WETH9,\n WETH9BoundContractView\n> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEthEvent(handler, filter!, fetchConfig);\n }\n}\n\nexport function getWETH9Contract(\n chainId: EthChainId,\n address: string\n): WETH9ContractView {\n let contract = getContractByABI(\n \"WETH9\",\n address,\n chainId\n ) as WETH9ContractView;\n if (!contract) {\n const rawContract = WETH9__factory.connect(address, getProvider(chainId));\n contract = new WETH9ContractView(rawContract);\n addContractByABI(\"WETH9\", address, chainId, contract);\n }\n return contract;\n}\n\nexport function getWETH9ContractOnContext(\n context: EthContext,\n address: string\n): WETH9BoundContractView {\n const view = getWETH9Contract(context.getChainId(), address);\n const boundView = new WETH9BoundContractView(address, view);\n boundView.context = context as any;\n return boundView;\n}\n"]}
@@ -91,25 +91,25 @@ export default class EthersSentio extends Ethers.default {
91
91
  const content = `
92
92
 
93
93
  ${contract.name}Processor.bind({ address: '${contract.address}', network: EthChainId.${chainKey} })
94
- .onAllEvents((evt, ctx) => {
94
+ .onEvent((evt, ctx) => {
95
95
  ctx.meter.Counter('event_count').add(1, { name: evt.name })
96
96
  ctx.eventLogger.emit(evt.name, {
97
97
  ...evt.args.toObject(),
98
98
  })
99
99
  })
100
- .onAllTraces(function (trace, ctx) {
101
- const succeed = trace.error === undefined
102
- ctx.meter.Counter('trace_count').add(1, { name: trace.name, success: String(succeed) })
103
- if (succeed) {
104
- ctx.eventLogger.emit(trace.name, {
105
- distinctId: trace.action.from,
106
- ...trace.args.toObject(),
107
- })
108
- }
109
- })
110
100
  `;
111
101
  exampleContent += content;
112
102
  }
103
+ // .onAllTraces(function (trace, ctx) {
104
+ // const succeed = trace.error === undefined
105
+ // ctx.meter.Counter('trace_count').add(1, { name: trace.name, success: String(succeed) })
106
+ // if (succeed) {
107
+ // ctx.eventLogger.emit(trace.name, {
108
+ // distinctId: trace.action.from,
109
+ // ...trace.args.toObject(),
110
+ // })
111
+ // }
112
+ // })
113
113
  files.push({
114
114
  path: join(rootDir, 'processor.eth.example.ts'),
115
115
  contents: exampleContent,
@@ -1 +1 @@
1
- {"version":3,"file":"ethers-sentio.js","sourceRoot":"","sources":["../../../src/eth/codegen/ethers-sentio.ts"],"names":[],"mappings":"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","sourcesContent":["import Ethers from '@sentio/ethers-v6'\nimport {\n Config,\n extractAbi,\n extractDocumentation,\n FileDescription,\n parse,\n shortenFullJsonFilePath,\n Contract,\n} from 'typechain'\nimport { dirname, join, relative } from 'path'\nimport { codeGenIndex, codeGenSentioFile, codeGenTestUtilsFile } from './file.js'\nimport { YamlContractConfig } from '../../core/yaml-contract-config.js'\nimport { ChainId, EthChainId } from '../../core/chain.js'\n\nexport interface SentioEthersConfig extends Config {\n contractsToGenExample: YamlContractConfig[]\n}\n\nexport default class EthersSentio extends Ethers.default {\n constructor(config: SentioEthersConfig) {\n if (!config.outDir) {\n throw new Error('Out put path not specificed')\n }\n super(config)\n }\n\n private processedABIs: Contract[] = []\n\n // TODO(pc): also have to override transformBinFile, transformFile\n override transformAbiOrFullJsonFile(file: FileDescription): FileDescription[] | void {\n const abi = extractAbi(file.contents)\n if (abi.length === 0) {\n return\n }\n\n const documentation = extractDocumentation(file.contents)\n\n const jsonPath = relative(this.cfg.inputDir, shortenFullJsonFilePath(file.path, this.cfg.allFiles))\n const contract = parse(abi, jsonPath, documentation)\n const files = super.transformAbiOrFullJsonFile(file)\n this.processedABIs.push(contract)\n\n if (files !== undefined) {\n // files.forEach(this.transformFilePath)\n // for (const file of files) {\n // this.transformFilePath(file)\n // }\n\n return [\n ...files,\n {\n path: join(dirname(files[0].path), `${contract.name.toLowerCase()}-processor.ts`),\n contents: codeGenSentioFile(contract),\n },\n {\n path: join(dirname(files[0].path), '..', `${contract.name.toLowerCase()}.ts`),\n contents: codeGenIndex(contract),\n },\n {\n path: join(dirname(files[0].path), `${contract.name.toLowerCase()}-test-utils.ts`),\n contents: codeGenTestUtilsFile(contract),\n },\n ]\n }\n }\n\n override afterRun() {\n const commonPath = join('internal', 'common.ts')\n const files = super.afterRun()\n for (const [idx, file] of files.entries()) {\n if (file.path.endsWith('__factory.ts')) {\n file.contents = '// @ts-nocheck\\n' + file.contents\n } else if (file.path.endsWith(join('factories', 'index.ts'))) {\n file.contents = file.contents.replaceAll(\"__factory'\", \"__factory.js'\")\n } else if (file.path.endsWith('_processor.ts')) {\n } else if (file.path.endsWith(commonPath)) {\n file.contents = COMMON_CONTENT\n }\n }\n\n let indexContent = ''\n for (const contract of this.processedABIs) {\n const content = `\n export * as ${contract.name.toLowerCase().replaceAll('-', '_')} from './${contract.name.toLowerCase()}.js'\n export { ${contract.name}Processor, ${\n contract.name\n }ProcessorTemplate } from './${contract.name.toLowerCase()}.js'\n `\n indexContent += content\n }\n files.push({\n path: join(dirname(files[0].path), '../index.ts'),\n contents: indexContent,\n })\n\n const rootDir = join(dirname(files[0].path), '../../..')\n\n const contractsToGenExample = (this.cfg as SentioEthersConfig).contractsToGenExample\n if (contractsToGenExample.length > 0) {\n const processors = this.processedABIs.map((abi) => `${abi.name}Processor`).join(',')\n let exampleContent = `\n import { EthChainId } from '@sentio/sdk/eth' \n import { ${processors} } from './types/eth/index.js'`\n\n const ethChainIdValues = new Map<ChainId, string>()\n for (const [key, value] of Object.entries(EthChainId)) {\n ethChainIdValues.set(value, key)\n }\n\n for (const contract of contractsToGenExample) {\n const chainKey = ethChainIdValues.get(contract.chain)\n if (!chainKey) {\n continue\n }\n const content = `\n\n${contract.name}Processor.bind({ address: '${contract.address}', network: EthChainId.${chainKey} })\n .onAllEvents((evt, ctx) => {\n ctx.meter.Counter('event_count').add(1, { name: evt.name })\n ctx.eventLogger.emit(evt.name, {\n ...evt.args.toObject(),\n })\n})\n .onAllTraces(function (trace, ctx) {\n const succeed = trace.error === undefined\n ctx.meter.Counter('trace_count').add(1, { name: trace.name, success: String(succeed) })\n if (succeed) {\n ctx.eventLogger.emit(trace.name, {\n distinctId: trace.action.from,\n ...trace.args.toObject(),\n })\n }\n })\n`\n exampleContent += content\n }\n\n files.push({\n path: join(rootDir, 'processor.eth.example.ts'),\n contents: exampleContent,\n })\n }\n return files\n }\n}\n\nconst COMMON_CONTENT = `/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type { TypedEvent, TypedEventFilter } from \"@sentio/sdk/eth\"\nexport type { PromiseOrValue } from '@sentio/sdk/core'\n`\n"]}
1
+ {"version":3,"file":"ethers-sentio.js","sourceRoot":"","sources":["../../../src/eth/codegen/ethers-sentio.ts"],"names":[],"mappings":"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","sourcesContent":["import Ethers from '@sentio/ethers-v6'\nimport {\n Config,\n extractAbi,\n extractDocumentation,\n FileDescription,\n parse,\n shortenFullJsonFilePath,\n Contract,\n} from 'typechain'\nimport { dirname, join, relative } from 'path'\nimport { codeGenIndex, codeGenSentioFile, codeGenTestUtilsFile } from './file.js'\nimport { YamlContractConfig } from '../../core/yaml-contract-config.js'\nimport { ChainId, EthChainId } from '../../core/chain.js'\n\nexport interface SentioEthersConfig extends Config {\n contractsToGenExample: YamlContractConfig[]\n}\n\nexport default class EthersSentio extends Ethers.default {\n constructor(config: SentioEthersConfig) {\n if (!config.outDir) {\n throw new Error('Out put path not specificed')\n }\n super(config)\n }\n\n private processedABIs: Contract[] = []\n\n // TODO(pc): also have to override transformBinFile, transformFile\n override transformAbiOrFullJsonFile(file: FileDescription): FileDescription[] | void {\n const abi = extractAbi(file.contents)\n if (abi.length === 0) {\n return\n }\n\n const documentation = extractDocumentation(file.contents)\n\n const jsonPath = relative(this.cfg.inputDir, shortenFullJsonFilePath(file.path, this.cfg.allFiles))\n const contract = parse(abi, jsonPath, documentation)\n const files = super.transformAbiOrFullJsonFile(file)\n this.processedABIs.push(contract)\n\n if (files !== undefined) {\n // files.forEach(this.transformFilePath)\n // for (const file of files) {\n // this.transformFilePath(file)\n // }\n\n return [\n ...files,\n {\n path: join(dirname(files[0].path), `${contract.name.toLowerCase()}-processor.ts`),\n contents: codeGenSentioFile(contract),\n },\n {\n path: join(dirname(files[0].path), '..', `${contract.name.toLowerCase()}.ts`),\n contents: codeGenIndex(contract),\n },\n {\n path: join(dirname(files[0].path), `${contract.name.toLowerCase()}-test-utils.ts`),\n contents: codeGenTestUtilsFile(contract),\n },\n ]\n }\n }\n\n override afterRun() {\n const commonPath = join('internal', 'common.ts')\n const files = super.afterRun()\n for (const [idx, file] of files.entries()) {\n if (file.path.endsWith('__factory.ts')) {\n file.contents = '// @ts-nocheck\\n' + file.contents\n } else if (file.path.endsWith(join('factories', 'index.ts'))) {\n file.contents = file.contents.replaceAll(\"__factory'\", \"__factory.js'\")\n } else if (file.path.endsWith('_processor.ts')) {\n } else if (file.path.endsWith(commonPath)) {\n file.contents = COMMON_CONTENT\n }\n }\n\n let indexContent = ''\n for (const contract of this.processedABIs) {\n const content = `\n export * as ${contract.name.toLowerCase().replaceAll('-', '_')} from './${contract.name.toLowerCase()}.js'\n export { ${contract.name}Processor, ${\n contract.name\n }ProcessorTemplate } from './${contract.name.toLowerCase()}.js'\n `\n indexContent += content\n }\n files.push({\n path: join(dirname(files[0].path), '../index.ts'),\n contents: indexContent,\n })\n\n const rootDir = join(dirname(files[0].path), '../../..')\n\n const contractsToGenExample = (this.cfg as SentioEthersConfig).contractsToGenExample\n if (contractsToGenExample.length > 0) {\n const processors = this.processedABIs.map((abi) => `${abi.name}Processor`).join(',')\n let exampleContent = `\n import { EthChainId } from '@sentio/sdk/eth' \n import { ${processors} } from './types/eth/index.js'`\n\n const ethChainIdValues = new Map<ChainId, string>()\n for (const [key, value] of Object.entries(EthChainId)) {\n ethChainIdValues.set(value, key)\n }\n\n for (const contract of contractsToGenExample) {\n const chainKey = ethChainIdValues.get(contract.chain)\n if (!chainKey) {\n continue\n }\n const content = `\n\n${contract.name}Processor.bind({ address: '${contract.address}', network: EthChainId.${chainKey} })\n .onEvent((evt, ctx) => {\n ctx.meter.Counter('event_count').add(1, { name: evt.name })\n ctx.eventLogger.emit(evt.name, {\n ...evt.args.toObject(),\n })\n})\n`\n exampleContent += content\n }\n // .onAllTraces(function (trace, ctx) {\n // const succeed = trace.error === undefined\n // ctx.meter.Counter('trace_count').add(1, { name: trace.name, success: String(succeed) })\n // if (succeed) {\n // ctx.eventLogger.emit(trace.name, {\n // distinctId: trace.action.from,\n // ...trace.args.toObject(),\n // })\n // }\n // })\n\n files.push({\n path: join(rootDir, 'processor.eth.example.ts'),\n contents: exampleContent,\n })\n }\n return files\n }\n}\n\nconst COMMON_CONTENT = `/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type { TypedEvent, TypedEventFilter } from \"@sentio/sdk/eth\"\nexport type { PromiseOrValue } from '@sentio/sdk/core'\n`\n"]}
@@ -14,7 +14,7 @@ export function generateEventHandler(event, contractName, includeArgTypes) {
14
14
  if (!filter) {
15
15
  filter = templateContract.filters['${filterName}'](${event.inputs.map(() => 'null').join(',')})
16
16
  }
17
- return super.onEvent(handler, filter!, fetchConfig)
17
+ return super.onEthEvent(handler, filter!, fetchConfig)
18
18
  }
19
19
  `;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/event-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,gCAAgC,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAE9E,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAE,YAAoB,EAAE,eAAwB;IAC1G,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IACxF,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAErE,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;WACE,SAAS;uBACG,eAAe,eAAe,YAAY;eAClD,eAAe,iBAAiB,eAAe;;;;2CAInB,UAAU,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;GAIhG,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA0B,EAAE,YAAoB;IACpF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;KAC5D;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACjF;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAuB,EAAE,eAAwB;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAExF,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;MACH,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,wCAAwC,UAAU,MAAM,KAAK,CAAC,MAAM;SACnH,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;SACtC,IAAI,CAAC,GAAG,CAAC;GACX,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA0B;IAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;KAC/C;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;KACvD;AACH,CAAC","sourcesContent":["import { EventDeclaration, getFullSignatureAsSymbolForEvent } from 'typechain'\nimport { getFullSignatureForEventPatched } from './types.js'\nimport { generateEventInputs } from '@sentio/ethers-v6/dist/codegen/events.js'\n\nexport function generateEventHandler(event: EventDeclaration, contractName: string, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n const eventNamePrefix = includeArgTypes ? eventName + '_' : eventName\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n onEvent${eventName}(\n handler: (event: ${eventNamePrefix}Event, ctx: ${contractName}Context) => void,\n filter?: ${eventNamePrefix}EventFilter | ${eventNamePrefix}EventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters['${filterName}'](${event.inputs.map(() => 'null').join(',')})\n }\n return super.onEvent(handler, filter!, fetchConfig)\n }\n `\n}\n\nexport function generateEventHandlers(events: EventDeclaration[], contractName: string): string {\n if (events.length === 1) {\n return generateEventHandler(events[0], contractName, false)\n } else {\n return events.map((e) => generateEventHandler(e, contractName, true)).join('\\n')\n }\n}\n\nfunction generateEventFilter(event: EventDeclaration, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n ${eventName}(${generateEventInputs(event.inputs)}) { return templateContract.filters['${filterName}'](${event.inputs\n .map((i, idx) => i.name || `arg${idx}`)\n .join(',')}) }\n `\n}\n\nexport function generateEventFilters(events: EventDeclaration[]): string[] {\n if (events.length === 1) {\n return [generateEventFilter(events[0], false)]\n } else {\n return events.map((e) => generateEventFilter(e, true))\n }\n}\n"]}
1
+ {"version":3,"file":"event-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/event-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,gCAAgC,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAE9E,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAE,YAAoB,EAAE,eAAwB;IAC1G,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IACxF,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAErE,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;WACE,SAAS;uBACG,eAAe,eAAe,YAAY;eAClD,eAAe,iBAAiB,eAAe;;;;2CAInB,UAAU,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;GAIhG,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA0B,EAAE,YAAoB;IACpF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;KAC5D;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACjF;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAuB,EAAE,eAAwB;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAExF,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;MACH,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,wCAAwC,UAAU,MAAM,KAAK,CAAC,MAAM;SACnH,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;SACtC,IAAI,CAAC,GAAG,CAAC;GACX,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA0B;IAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;KAC/C;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;KACvD;AACH,CAAC","sourcesContent":["import { EventDeclaration, getFullSignatureAsSymbolForEvent } from 'typechain'\nimport { getFullSignatureForEventPatched } from './types.js'\nimport { generateEventInputs } from '@sentio/ethers-v6/dist/codegen/events.js'\n\nexport function generateEventHandler(event: EventDeclaration, contractName: string, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n const eventNamePrefix = includeArgTypes ? eventName + '_' : eventName\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n onEvent${eventName}(\n handler: (event: ${eventNamePrefix}Event, ctx: ${contractName}Context) => void,\n filter?: ${eventNamePrefix}EventFilter | ${eventNamePrefix}EventFilter[],\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n if (!filter) {\n filter = templateContract.filters['${filterName}'](${event.inputs.map(() => 'null').join(',')})\n }\n return super.onEthEvent(handler, filter!, fetchConfig)\n }\n `\n}\n\nexport function generateEventHandlers(events: EventDeclaration[], contractName: string): string {\n if (events.length === 1) {\n return generateEventHandler(events[0], contractName, false)\n } else {\n return events.map((e) => generateEventHandler(e, contractName, true)).join('\\n')\n }\n}\n\nfunction generateEventFilter(event: EventDeclaration, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n ${eventName}(${generateEventInputs(event.inputs)}) { return templateContract.filters['${filterName}'](${event.inputs\n .map((i, idx) => i.name || `arg${idx}`)\n .join(',')}) }\n `\n}\n\nexport function generateEventFilters(events: EventDeclaration[]): string[] {\n if (events.length === 1) {\n return [generateEventFilter(events[0], false)]\n } else {\n return events.map((e) => generateEventFilter(e, true))\n }\n}\n"]}
@@ -35,7 +35,7 @@ function generateCallHandler(fn, contractName, overloadedName) {
35
35
  handler: (call: ${upperFirst(overloadedName ?? fn.name)}CallTrace, ctx: ${contractName}Context) => void,
36
36
  fetchConfig?: Partial<EthFetchConfig>
37
37
  ): this {
38
- return super.onTrace("${sighash}", handler as any, fetchConfig);
38
+ return super.onEthTrace("${sighash}", handler as any, fetchConfig);
39
39
  }
40
40
  `;
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"functions-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/functions-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gCAAgC,EAChC,kCAAkC,GACnC,MAAM,yCAAyC,CAAA;AAChD,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAuB,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,mCAAmC,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,UAAU,oBAAoB,CAAC,GAA0B,EAAE,YAAoB;IACnF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;KACjD;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACnH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAA0B;IAC9D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;KACpC;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACtG,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAuB,EAAE,cAAuB;IAC5E,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC,CAAA;IAExD,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAChH,MAAM,WAAW,GAAG,gCAAgC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IACtF,MAAM,YAAY,GAAG,kCAAkC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAA;IAEjG,OAAO;qBACY,UAAU,cAAc,YAAY;;gBAEzC,UAAU,8BAA8B,WAAW,KAAK,UAAU;GAC/E,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAuB,EAAE,YAAoB,EAAE,cAAuB;IACjG,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAA;IACvC,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE5D,OAAO;UACC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC;sBACzB,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC,mBAAmB,YAAY;;;4BAG9D,OAAO;;CAElC,CAAA;AACD,CAAC","sourcesContent":["import {\n generateOutputComplexTypeAsArray,\n generateOutputComplexTypesAsObject,\n} from '@sentio/ethers-v6/dist/codegen/types.js'\nimport sha3 from 'js-sha3'\nimport { FunctionDeclaration, getSignatureForFn } from 'typechain'\nimport { getFullSignatureAsSymbolForFunction } from './types.js'\nimport { upperFirst } from 'lodash-es'\n\nexport function generateCallHandlers(fns: FunctionDeclaration[], contractName: string): string {\n if (fns.length === 1) {\n return generateCallHandler(fns[0], contractName)\n }\n\n return fns.map((fn) => generateCallHandler(fn, contractName, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nexport function codegenCallTraceTypes(fns: FunctionDeclaration[]): string {\n if (fns.length === 1) {\n return codegenCallTraceType(fns[0])\n }\n\n return fns.map((fn) => codegenCallTraceType(fn, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nfunction codegenCallTraceType(fn: FunctionDeclaration, overloadedName?: string): string {\n const identifier = upperFirst(overloadedName ?? fn.name)\n\n const components = fn.inputs.map((input, i) => ({ name: input.name ?? `arg${i.toString()}`, type: input.type }))\n const arrayOutput = generateOutputComplexTypeAsArray(components, { useStructs: true })\n const objectOutput = generateOutputComplexTypesAsObject(components, { useStructs: true }) || '{}'\n\n return `\n export interface ${identifier}CallObject ${objectOutput}\n \n export type ${identifier}CallTrace = TypedCallTrace<${arrayOutput}, ${identifier}CallObject>\n `\n}\n\nfunction generateCallHandler(fn: FunctionDeclaration, contractName: string, overloadedName?: string): string {\n const signature = getSignatureForFn(fn)\n const test = new TextEncoder().encode(signature)\n const sighash = '0x' + sha3.keccak_256(test).substring(0, 8)\n\n return `\n onCall${upperFirst(overloadedName ?? fn.name)}(\n handler: (call: ${upperFirst(overloadedName ?? fn.name)}CallTrace, ctx: ${contractName}Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onTrace(\"${sighash}\", handler as any, fetchConfig);\n }\n`\n}\n"]}
1
+ {"version":3,"file":"functions-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/functions-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gCAAgC,EAChC,kCAAkC,GACnC,MAAM,yCAAyC,CAAA;AAChD,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAuB,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,mCAAmC,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,UAAU,oBAAoB,CAAC,GAA0B,EAAE,YAAoB;IACnF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;KACjD;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACnH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAA0B;IAC9D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;KACpC;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACtG,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAuB,EAAE,cAAuB;IAC5E,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC,CAAA;IAExD,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAChH,MAAM,WAAW,GAAG,gCAAgC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IACtF,MAAM,YAAY,GAAG,kCAAkC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAA;IAEjG,OAAO;qBACY,UAAU,cAAc,YAAY;;gBAEzC,UAAU,8BAA8B,WAAW,KAAK,UAAU;GAC/E,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAuB,EAAE,YAAoB,EAAE,cAAuB;IACjG,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAA;IACvC,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE5D,OAAO;UACC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC;sBACzB,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,CAAC,mBAAmB,YAAY;;;+BAG3D,OAAO;;CAErC,CAAA;AACD,CAAC","sourcesContent":["import {\n generateOutputComplexTypeAsArray,\n generateOutputComplexTypesAsObject,\n} from '@sentio/ethers-v6/dist/codegen/types.js'\nimport sha3 from 'js-sha3'\nimport { FunctionDeclaration, getSignatureForFn } from 'typechain'\nimport { getFullSignatureAsSymbolForFunction } from './types.js'\nimport { upperFirst } from 'lodash-es'\n\nexport function generateCallHandlers(fns: FunctionDeclaration[], contractName: string): string {\n if (fns.length === 1) {\n return generateCallHandler(fns[0], contractName)\n }\n\n return fns.map((fn) => generateCallHandler(fn, contractName, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nexport function codegenCallTraceTypes(fns: FunctionDeclaration[]): string {\n if (fns.length === 1) {\n return codegenCallTraceType(fns[0])\n }\n\n return fns.map((fn) => codegenCallTraceType(fn, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nfunction codegenCallTraceType(fn: FunctionDeclaration, overloadedName?: string): string {\n const identifier = upperFirst(overloadedName ?? fn.name)\n\n const components = fn.inputs.map((input, i) => ({ name: input.name ?? `arg${i.toString()}`, type: input.type }))\n const arrayOutput = generateOutputComplexTypeAsArray(components, { useStructs: true })\n const objectOutput = generateOutputComplexTypesAsObject(components, { useStructs: true }) || '{}'\n\n return `\n export interface ${identifier}CallObject ${objectOutput}\n \n export type ${identifier}CallTrace = TypedCallTrace<${arrayOutput}, ${identifier}CallObject>\n `\n}\n\nfunction generateCallHandler(fn: FunctionDeclaration, contractName: string, overloadedName?: string): string {\n const signature = getSignatureForFn(fn)\n const test = new TextEncoder().encode(signature)\n const sighash = '0x' + sha3.keccak_256(test).substring(0, 8)\n\n return `\n onCall${upperFirst(overloadedName ?? fn.name)}(\n handler: (call: ${upperFirst(overloadedName ?? fn.name)}CallTrace, ctx: ${contractName}Context) => void,\n fetchConfig?: Partial<EthFetchConfig>\n ): this {\n return super.onEthTrace(\"${sighash}\", handler as any, fetchConfig);\n }\n`\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"generic-processor.test.js","sourceRoot":"","sources":["../../src/eth/generic-processor.test.ts"],"names":[],"mappings":"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","sourcesContent":["// TODO move out of this package\n\nimport { expect } from 'chai'\n\nimport { HandlerType } from '@sentio/protos'\n\nimport { GenericProcessor } from '@sentio/sdk/eth'\nimport { TestProcessorServer, firstCounterValue } from '../testing/index.js'\n\ndescribe('Test Generic Processor', () => {\n const service = new TestProcessorServer(async () => {\n GenericProcessor.bind(\n [\n 'event Transfer(address indexed from, address indexed to, uint256 value)',\n 'event Approval(address indexed from, address indexed to, uint256 value)',\n 'function transferFrom(address from, address to, uint value)',\n 'function balanceOf(address owner) view returns (uint balance)',\n ],\n { address: '0x1E4EDE388cbc9F4b5c79681B7f94d36a11ABEBC9' }\n )\n .onAllEvents(function (log, ctx) {\n ctx.meter.Counter('event_num').add(1)\n })\n .onAllTraces(function (trace, ctx) {\n ctx.meter.Counter('trace_count').add(1, { name: trace.name })\n ctx.eventLogger.emit(trace.name, {\n distinctId: trace.action.from,\n ...trace.args.toObject(),\n })\n })\n\n GenericProcessor.bind('event WalletCreated(address wallet, address owner)', {\n address: '0x57E037F4d2c8BEa011Ad8a9A5AF4AaEEd508650f',\n }).onAllEvents(function (log, ctx) {\n ctx.meter.Counter('wallet').add(1)\n })\n })\n\n beforeAll(async () => {\n await service.start()\n })\n\n test('check configuration', async () => {\n const config = await service.getConfig({})\n expect(config.contractConfigs).length(2)\n expect(config.contractConfigs?.[0].contract?.name).equals('Generic')\n const traceConfigs = config.contractConfigs?.[0].traceConfigs\n expect(traceConfigs.length).equals(2)\n })\n\n test('Check log dispatch', async () => {\n const res = await service.eth.testLogs([logData, logData])\n const counters = res.result?.counters\n expect(counters).length(2)\n expect(firstCounterValue(res.result, 'event_num')).equals(1)\n expect(counters?.[0].runtimeInfo?.from).equals(HandlerType.ETH_LOG)\n })\n\n test('Check log dispatch no buffer over rune', async () => {\n const logStr =\n '{\"address\":\"0x57e037f4d2c8bea011ad8a9a5af4aaeed508650f\",\"topics\":[\"0x5b03bfed1c14a02bdeceb5fa582eb1a5765fc0bc64ca0e6af4c20afc9487f081\"],\"data\":\"0x00000000000000000000000093269483a70c68d5c5bb63aac1e8f4ac59f498800000000000000000000000000c520e51c055cf63bab075715c1b860b2e9b8e24\",\"blockNumber\":\"0xc9d6d7\",\"transactionHash\":\"0x208af3250499672c2f07138b9aa236153c65c78ae4341b23c2763017afdd61a2\",\"transactionIndex\":\"0xf3\",\"blockHash\":\"0x6e3b100c34b510049e922fbe1c1dab1b0793be3d1229b632688e6a518cdd11b6\",\"logIndex\":\"0x14b\",\"removed\":false}'\n const res = await service.eth.testLog(JSON.parse(logStr))\n console.log(JSON.stringify(res))\n })\n\n const logData = {\n index: 0,\n blockNumber: 14213252,\n blockHash: '0x83d646fac9350b281def8c4c37626f9d8efc95df801287b848c719edf35cdbaf',\n transactionIndex: 347,\n removed: false,\n address: '0x1E4EDE388cbc9F4b5c79681B7f94d36a11ABEBC9',\n data: '0x00000000000000000000000000000000000000000000009a71db64810aaa0000',\n topics: [\n '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef',\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n '0x000000000000000000000000b329e39ebefd16f40d38f07643652ce17ca5bac1',\n ],\n transactionHash: '0x93355e0cb2c3490cb8a747029ff2dc8cdbde2407025b8391398436955afae303',\n logIndex: 428,\n }\n})\n"]}
1
+ {"version":3,"file":"generic-processor.test.js","sourceRoot":"","sources":["../../src/eth/generic-processor.test.ts"],"names":[],"mappings":"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","sourcesContent":["// TODO move out of this package\n\nimport { expect } from 'chai'\n\nimport { HandlerType } from '@sentio/protos'\n\nimport { GenericProcessor } from '@sentio/sdk/eth'\nimport { TestProcessorServer, firstCounterValue } from '../testing/index.js'\n\ndescribe('Test Generic Processor', () => {\n const service = new TestProcessorServer(async () => {\n GenericProcessor.bind(\n [\n 'event Transfer(address indexed from, address indexed to, uint256 value)',\n 'event Approval(address indexed from, address indexed to, uint256 value)',\n 'function transferFrom(address from, address to, uint value)',\n 'function balanceOf(address owner) view returns (uint balance)',\n ],\n { address: '0x1E4EDE388cbc9F4b5c79681B7f94d36a11ABEBC9' }\n )\n .onEvent(function (log, ctx) {\n ctx.meter.Counter('event_num').add(1)\n })\n .onTrace(function (trace, ctx) {\n ctx.meter.Counter('trace_count').add(1, { name: trace.name })\n ctx.eventLogger.emit(trace.name, {\n distinctId: trace.action.from,\n ...trace.args.toObject(),\n })\n })\n\n GenericProcessor.bind('event WalletCreated(address wallet, address owner)', {\n address: '0x57E037F4d2c8BEa011Ad8a9A5AF4AaEEd508650f',\n }).onEvent(function (log, ctx) {\n ctx.meter.Counter('wallet').add(1)\n })\n })\n\n beforeAll(async () => {\n await service.start()\n })\n\n test('check configuration', async () => {\n const config = await service.getConfig({})\n expect(config.contractConfigs).length(2)\n expect(config.contractConfigs?.[0].contract?.name).equals('Generic')\n const traceConfigs = config.contractConfigs?.[0].traceConfigs\n expect(traceConfigs.length).equals(2)\n })\n\n test('Check log dispatch', async () => {\n const res = await service.eth.testLogs([logData, logData])\n const counters = res.result?.counters\n expect(counters).length(2)\n expect(firstCounterValue(res.result, 'event_num')).equals(1)\n expect(counters?.[0].runtimeInfo?.from).equals(HandlerType.ETH_LOG)\n })\n\n test('Check log dispatch no buffer over rune', async () => {\n const logStr =\n '{\"address\":\"0x57e037f4d2c8bea011ad8a9a5af4aaeed508650f\",\"topics\":[\"0x5b03bfed1c14a02bdeceb5fa582eb1a5765fc0bc64ca0e6af4c20afc9487f081\"],\"data\":\"0x00000000000000000000000093269483a70c68d5c5bb63aac1e8f4ac59f498800000000000000000000000000c520e51c055cf63bab075715c1b860b2e9b8e24\",\"blockNumber\":\"0xc9d6d7\",\"transactionHash\":\"0x208af3250499672c2f07138b9aa236153c65c78ae4341b23c2763017afdd61a2\",\"transactionIndex\":\"0xf3\",\"blockHash\":\"0x6e3b100c34b510049e922fbe1c1dab1b0793be3d1229b632688e6a518cdd11b6\",\"logIndex\":\"0x14b\",\"removed\":false}'\n const res = await service.eth.testLog(JSON.parse(logStr))\n console.log(JSON.stringify(res))\n })\n\n const logData = {\n index: 0,\n blockNumber: 14213252,\n blockHash: '0x83d646fac9350b281def8c4c37626f9d8efc95df801287b848c719edf35cdbaf',\n transactionIndex: 347,\n removed: false,\n address: '0x1E4EDE388cbc9F4b5c79681B7f94d36a11ABEBC9',\n data: '0x00000000000000000000000000000000000000000000009a71db64810aaa0000',\n topics: [\n '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef',\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n '0x000000000000000000000000b329e39ebefd16f40d38f07643652ce17ca5bac1',\n ],\n transactionHash: '0x93355e0cb2c3490cb8a747029ff2dc8cdbde2407025b8391398436955afae303',\n logIndex: 428,\n }\n})\n"]}
@@ -2,7 +2,7 @@ import { Data_SuiCall, Data_SuiEvent, MoveFetchConfig } from '@sentio/protos';
2
2
  import { ListStateStorage } from '@sentio/runtime';
3
3
  import { SuiNetwork } from './network.js';
4
4
  import { SuiContext } from './context.js';
5
- import { MoveCallSuiTransaction, SuiEvent } from '@mysten/sui.js';
5
+ import { MoveCallSuiTransaction, SuiEvent, SuiTransactionBlockResponse } from '@mysten/sui.js';
6
6
  import { CallHandler, EventFilter, EventHandler, FunctionNameAndCallFilter } from '../move/index.js';
7
7
  import { MoveCoder } from './move-coder.js';
8
8
  import { Labels } from '../core/index.js';
@@ -26,6 +26,11 @@ export declare class SuiBaseProcessor {
26
26
  coder: MoveCoder;
27
27
  constructor(name: string, options: SuiBindOptions);
28
28
  getChainId(): string;
29
- onMoveEvent(handler: (event: SuiEvent, ctx: SuiContext) => void, filter: EventFilter | EventFilter[], fetchConfig?: Partial<MoveFetchConfig>): SuiBaseProcessor;
30
- onEntryFunctionCall(handler: (call: MoveCallSuiTransaction, ctx: SuiContext) => void, filter: FunctionNameAndCallFilter | FunctionNameAndCallFilter[], fetchConfig?: Partial<MoveFetchConfig>): SuiBaseProcessor;
29
+ protected onMoveEvent(handler: (event: SuiEvent, ctx: SuiContext) => void, filter: EventFilter | EventFilter[], fetchConfig?: Partial<MoveFetchConfig>): SuiBaseProcessor;
30
+ protected onEntryFunctionCall(handler: (call: MoveCallSuiTransaction, ctx: SuiContext) => void, filter: FunctionNameAndCallFilter | FunctionNameAndCallFilter[], fetchConfig?: Partial<MoveFetchConfig>): SuiBaseProcessor;
31
+ onEvent(handler: (event: SuiEvent, ctx: SuiContext) => void, fetchConfig?: Partial<MoveFetchConfig>): this;
32
+ onTransactionBlock(handler: (call: SuiTransactionBlockResponse, ctx: SuiContext) => void, includeFailed?: boolean, fetchConfig?: Partial<MoveFetchConfig>): this;
33
+ }
34
+ export declare class SuiModulesProcessor extends SuiBaseProcessor {
35
+ constructor(options: SuiBindOptions);
31
36
  }
@@ -87,8 +87,6 @@ export class SuiBaseProcessor {
87
87
  else {
88
88
  _filters.push(filter);
89
89
  }
90
- // const address = this.config.address
91
- // const moduleName = this.moduleName
92
90
  const processor = this;
93
91
  const allFunctionType = new Set(_filters.map((f) => processor.config.address + '::' + f.function));
94
92
  this.callHandlers.push({
@@ -123,5 +121,34 @@ export class SuiBaseProcessor {
123
121
  });
124
122
  return this;
125
123
  }
124
+ onEvent(handler, fetchConfig) {
125
+ this.onMoveEvent(handler, { type: '' }, fetchConfig);
126
+ return this;
127
+ }
128
+ onTransactionBlock(handler, includeFailed = false, fetchConfig) {
129
+ const _fetchConfig = MoveFetchConfig.fromPartial({ ...DEFAULT_FETCH_CONFIG, ...fetchConfig });
130
+ const processor = this;
131
+ this.callHandlers.push({
132
+ handler: async function (data) {
133
+ if (!data.transaction) {
134
+ throw new ServerError(Status.INVALID_ARGUMENT, 'call is null');
135
+ }
136
+ const tx = data.transaction;
137
+ const ctx = new SuiContext(processor.moduleName, processor.config.network, processor.config.address, data.timestamp || new Date(0), data.slot, tx, 0, processor.config.baseLabels);
138
+ if (tx) {
139
+ await handler(tx, ctx);
140
+ }
141
+ return ctx.getProcessResult();
142
+ },
143
+ filters: [{ function: '', includeFailed }],
144
+ fetchConfig: _fetchConfig,
145
+ });
146
+ return this;
147
+ }
148
+ }
149
+ export class SuiModulesProcessor extends SuiBaseProcessor {
150
+ constructor(options) {
151
+ super('*', options);
152
+ }
126
153
  }
127
154
  //# sourceMappingURL=sui-processor.js.map