@0xsequence/marketplace-sdk 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/.ctirc +32 -0
  2. package/dist/chess-tile-6BS5MQT5.png +0 -0
  3. package/dist/{chunk-RNUHUVLC.js → chunk-6JWGELXL.js} +1 -1
  4. package/dist/chunk-6JWGELXL.js.map +1 -0
  5. package/dist/chunk-BJE7AG6V.js +1441 -0
  6. package/dist/chunk-BJE7AG6V.js.map +1 -0
  7. package/dist/{chunk-SNOEEUPZ.js → chunk-CSN7YD5Q.js} +2 -2
  8. package/dist/chunk-CSN7YD5Q.js.map +1 -0
  9. package/dist/{chunk-G3YU4NQ2.js → chunk-G33554LK.js} +4 -1
  10. package/dist/chunk-G33554LK.js.map +1 -0
  11. package/dist/{chunk-HGBEC3WX.js → chunk-GZG2QO64.js} +22 -6
  12. package/dist/chunk-GZG2QO64.js.map +1 -0
  13. package/dist/{chunk-TZGLKJRF.js → chunk-MQR6SHXZ.js} +94 -94
  14. package/dist/chunk-MQR6SHXZ.js.map +1 -0
  15. package/dist/{chunk-EDTC7UES.js → chunk-NII6JJGH.js} +9 -4
  16. package/dist/chunk-NII6JJGH.js.map +1 -0
  17. package/dist/{chunk-LFQB477Y.js → chunk-OUWB3FHZ.js} +17 -17
  18. package/dist/chunk-OUWB3FHZ.js.map +1 -0
  19. package/dist/{chunk-BBB3XUB4.js → chunk-PE2LLUTJ.js} +1 -1
  20. package/dist/chunk-PE2LLUTJ.js.map +1 -0
  21. package/dist/{chunk-7CL54NCX.js → chunk-Q2BVDQ3G.js} +1 -1
  22. package/dist/chunk-Q2BVDQ3G.js.map +1 -0
  23. package/dist/{chunk-GNB736ZE.js → chunk-QXLZPSSR.js} +1667 -1109
  24. package/dist/chunk-QXLZPSSR.js.map +1 -0
  25. package/dist/{chunk-3TYUQEFM.js → chunk-VEX7FDL6.js} +2 -2
  26. package/dist/chunk-VEX7FDL6.js.map +1 -0
  27. package/dist/index.d.ts +2 -2
  28. package/dist/index.js +7 -7
  29. package/dist/{marketplace.gen-Ceofb9Cs.d.ts → marketplace.gen-BLP7822q.d.ts} +17 -5
  30. package/dist/react/_internal/api/index.d.ts +4 -2
  31. package/dist/react/_internal/api/index.js +1 -1
  32. package/dist/react/_internal/index.d.ts +4 -4
  33. package/dist/react/_internal/index.js +3 -3
  34. package/dist/react/_internal/wagmi/index.d.ts +2 -2
  35. package/dist/react/_internal/wagmi/index.js +1 -1
  36. package/dist/react/hooks/index.d.ts +574 -37
  37. package/dist/react/hooks/index.js +39 -21
  38. package/dist/react/index.css +66 -26
  39. package/dist/react/index.css.map +1 -1
  40. package/dist/react/index.d.ts +7 -6
  41. package/dist/react/index.js +48 -28
  42. package/dist/react/ssr/index.d.ts +24 -24
  43. package/dist/react/ssr/index.js +15 -7
  44. package/dist/react/ssr/index.js.map +1 -1
  45. package/dist/react/ui/components/index.css +276 -0
  46. package/dist/react/ui/components/index.css.map +1 -0
  47. package/dist/react/ui/components/index.d.ts +17 -0
  48. package/dist/react/ui/components/index.js +24 -0
  49. package/dist/react/ui/components/index.js.map +1 -0
  50. package/dist/react/ui/icons/index.js +2 -2
  51. package/dist/react/ui/index.css +66 -26
  52. package/dist/react/ui/index.css.map +1 -1
  53. package/dist/react/ui/index.d.ts +48 -40
  54. package/dist/react/ui/index.js +13 -11
  55. package/dist/react/ui/modals/_internal/components/actionModal/index.js +4 -4
  56. package/dist/{services-BIwQ1C1c.d.ts → services-C9-lvWcC.d.ts} +2 -2
  57. package/dist/styles/index.js +4 -4
  58. package/dist/types/index.d.ts +2 -2
  59. package/dist/types/index.js +3 -3
  60. package/dist/{types-BzZVURNL.d.ts → types-QqXjNuUP.d.ts} +1 -1
  61. package/dist/utils/abi/clients/index.js +1 -1
  62. package/dist/utils/index.d.ts +2 -2
  63. package/dist/utils/index.js +4 -4
  64. package/package.json +18 -25
  65. package/src/react/_internal/api/get-query-client.ts +3 -3
  66. package/src/react/_internal/api/marketplace.gen.ts +33 -6
  67. package/src/react/_internal/api/query-keys.ts +8 -0
  68. package/src/react/_internal/types.ts +1 -1
  69. package/src/react/_internal/wagmi/create-config.ts +9 -3
  70. package/src/react/_internal/wagmi/embedded.ts +1 -1
  71. package/src/react/_internal/wagmi/universal.ts +1 -1
  72. package/src/react/hooks/index.ts +5 -0
  73. package/src/react/hooks/options/marketplaceConfigOptions.ts +2 -2
  74. package/src/react/hooks/useBalanceOfCollectible.tsx +10 -9
  75. package/src/react/hooks/useCheckoutOptions.tsx +63 -0
  76. package/src/react/hooks/useCollectible.tsx +4 -4
  77. package/src/react/hooks/useCollection.tsx +30 -30
  78. package/src/react/hooks/useCountOfCollectables.tsx +4 -4
  79. package/src/react/hooks/useCurrencies.tsx +10 -10
  80. package/src/react/hooks/useCurrency.tsx +64 -0
  81. package/src/react/hooks/useFilters.tsx +4 -4
  82. package/src/react/hooks/useFloorOrder.tsx +4 -4
  83. package/src/react/hooks/useGenerateCancleTransaction.tsx +50 -0
  84. package/src/react/hooks/useGenerateListingTransaction.tsx +8 -7
  85. package/src/react/hooks/useGenerateOfferTransaction.tsx +5 -5
  86. package/src/react/hooks/useGenerateSellTransaction.tsx +4 -4
  87. package/src/react/hooks/useHighestOffer.tsx +4 -4
  88. package/src/react/hooks/useListBalances.tsx +6 -7
  89. package/src/react/hooks/useListCollectibles.tsx +8 -9
  90. package/src/react/hooks/useListCollections.tsx +88 -0
  91. package/src/react/hooks/useListListingsForCollectible.tsx +61 -0
  92. package/src/react/hooks/useListOffersForCollectible.tsx +17 -18
  93. package/src/react/hooks/useLowestListing.tsx +4 -4
  94. package/src/react/hooks/useRoyaltyPercentage.tsx +6 -6
  95. package/src/react/hooks/useTransferTokens.tsx +1 -1
  96. package/src/react/provider.tsx +1 -1
  97. package/src/react/ssr/create-ssr-client.ts +1 -1
  98. package/src/react/ui/components/_internals/action-button/ActionButton.tsx +164 -0
  99. package/src/react/ui/components/_internals/custom-network-image/CustomNetworkImage.tsx +27 -0
  100. package/src/react/ui/components/_internals/custom-network-image/styles.css.ts +51 -0
  101. package/src/react/ui/components/_internals/pill/Pill.tsx +20 -0
  102. package/src/react/ui/components/collectible-card/CollectibleCard.tsx +194 -0
  103. package/src/react/ui/components/collectible-card/Footer.tsx +121 -0
  104. package/src/react/ui/components/collectible-card/styles.css.ts +62 -0
  105. package/src/react/ui/components/index.ts +1 -0
  106. package/src/react/ui/icons/Bell.tsx +31 -0
  107. package/src/react/ui/icons/DiamondEye.tsx +31 -0
  108. package/src/react/ui/images/chess-tile.png +0 -0
  109. package/src/react/ui/index.ts +3 -0
  110. package/src/react/ui/modals/CreateListingModal/_store.ts +37 -38
  111. package/src/react/ui/modals/CreateListingModal/index.tsx +25 -4
  112. package/src/react/ui/modals/MakeOfferModal/_store.ts +35 -37
  113. package/src/react/ui/modals/MakeOfferModal/index.tsx +25 -4
  114. package/src/react/ui/modals/SellModal/_store.ts +48 -51
  115. package/src/react/ui/modals/SellModal/index.tsx +27 -7
  116. package/src/react/ui/modals/SuccessfulPurchaseModal/_store.ts +1 -1
  117. package/src/react/ui/modals/SuccessfulPurchaseModal/index.tsx +14 -14
  118. package/src/react/ui/modals/TransferModal/_store.ts +11 -11
  119. package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/index.tsx +7 -5
  120. package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/useHandleTransfer.tsx +114 -0
  121. package/src/react/ui/modals/TransferModal/_views/followWalletInstructions/index.tsx +0 -96
  122. package/src/react/ui/modals/TransferModal/index.tsx +24 -3
  123. package/src/react/ui/modals/_internal/components/actionModal/ActionModal.tsx +1 -1
  124. package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +2 -3
  125. package/src/react/ui/modals/_internal/components/floorPriceText/index.tsx +2 -2
  126. package/src/react/ui/modals/_internal/components/priceInput/index.tsx +4 -4
  127. package/src/react/ui/modals/_internal/components/quantityInput/index.tsx +1 -1
  128. package/src/react/ui/modals/_internal/components/switchChainModal/index.tsx +4 -4
  129. package/src/react/ui/modals/_internal/components/switchChainModal/store.ts +4 -4
  130. package/src/react/ui/modals/_internal/components/tokenPreview/index.tsx +1 -1
  131. package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +5 -3
  132. package/src/react/ui/modals/_internal/components/transactionPreview/index.tsx +3 -3
  133. package/src/react/ui/modals/_internal/components/transactionStatusModal/index.tsx +35 -2
  134. package/src/react/ui/modals/_internal/components/transactionStatusModal/store.ts +10 -2
  135. package/src/react/ui/modals/modal-provider.tsx +2 -3
  136. package/src/types/api-types.ts +2 -2
  137. package/src/types/callbacks.ts +51 -0
  138. package/src/types/custom.d.ts +1 -0
  139. package/src/types/types.ts +1 -1
  140. package/src/utils/get-public-rpc-client.ts +1 -1
  141. package/tsconfig.json +24 -0
  142. package/tsconfig.tsbuildinfo +1 -0
  143. package/tsup.config.ts +35 -0
  144. package/README.md +0 -8
  145. package/dist/chunk-3TYUQEFM.js.map +0 -1
  146. package/dist/chunk-7CL54NCX.js.map +0 -1
  147. package/dist/chunk-BBB3XUB4.js.map +0 -1
  148. package/dist/chunk-EDTC7UES.js.map +0 -1
  149. package/dist/chunk-G3YU4NQ2.js.map +0 -1
  150. package/dist/chunk-GNB736ZE.js.map +0 -1
  151. package/dist/chunk-HGBEC3WX.js.map +0 -1
  152. package/dist/chunk-ITJEOCDV.js +0 -1006
  153. package/dist/chunk-ITJEOCDV.js.map +0 -1
  154. package/dist/chunk-LFQB477Y.js.map +0 -1
  155. package/dist/chunk-M4MXVMAM.js +0 -271
  156. package/dist/chunk-M4MXVMAM.js.map +0 -1
  157. package/dist/chunk-RNUHUVLC.js.map +0 -1
  158. package/dist/chunk-SNOEEUPZ.js.map +0 -1
  159. package/dist/chunk-TZGLKJRF.js.map +0 -1
  160. package/dist/{create-config-Cto2ehcz.d.ts → create-config-CgtmCzvb.d.ts} +1 -1
package/.ctirc ADDED
@@ -0,0 +1,32 @@
1
+ "options": [
2
+ {
3
+ "mode": "create",
4
+ "project": "tsconfig.json",
5
+ "exportFilename": "index.ts",
6
+ "overwrite": true,
7
+ "backup": false,
8
+ "include": ["**/_internal/**/*.{ts,tsx}"],
9
+ "exclude": [],
10
+ "startFrom": "./src"
11
+ },
12
+ {
13
+ "mode": "create",
14
+ "project": "tsconfig.json",
15
+ "exportFilename": "index.ts",
16
+ "overwrite": true,
17
+ "backup": false,
18
+ "include": ["**/*.{ts,tsx}"],
19
+ "exclude": ["**/_internal/**"],
20
+ "startFrom": "./src/react"
21
+ },
22
+ {
23
+ "mode": "create",
24
+ "project": "tsconfig.json",
25
+ "exportFilename": "index.ts",
26
+ "overwrite": true,
27
+ "backup": false,
28
+ "include": ["**/*.{ts,tsx}"],
29
+ "exclude": ["**/_internal/**", "**/react/**"],
30
+ "startFrom": "./src"
31
+ }
32
+ ]
Binary file
@@ -211,4 +211,4 @@ export {
211
211
  ERC20,
212
212
  ERC721
213
213
  };
214
- //# sourceMappingURL=chunk-RNUHUVLC.js.map
214
+ //# sourceMappingURL=chunk-6JWGELXL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/abi/clients/ERC1155.ts","../src/utils/get-public-rpc-client.ts","../src/utils/abi/clients/ERC20.ts","../src/utils/abi/clients/ERC721.ts"],"sourcesContent":["import type { Hex, WalletClient } from 'viem';\nimport { encodeFunctionData, getContract } from 'viem';\nimport type { GetWalletClientData } from 'wagmi/query';\n\nimport { getPublicRpcClient } from '../../get-public-rpc-client';\nimport { ERC1155_ABI } from '../abi/token/ERC1155';\n\n// biome-ignore lint/complexity/noStaticOnlyClass: In this case, this provide a pretty nice API\nexport class ERC1155 {\n\tstatic setApprovalForAll = async (\n\t\terc1155Address: string,\n\t\toperator: string,\n\t\tapproved: boolean,\n\t\tsigner: GetWalletClientData<any, any>,\n\t): Promise<string> => {\n\t\tconst txHash = await signer.writeContract({\n\t\t\tchain: signer.chain,\n\t\t\taddress: erc1155Address as Hex,\n\t\t\tabi: ERC1155_ABI,\n\t\t\tfunctionName: 'setApprovalForAll',\n\t\t\targs: [operator as Hex, approved],\n\t\t});\n\n\t\treturn txHash;\n\t};\n\n\tstatic setApprovalForAll_data = (\n\t\toperator: string,\n\t\tapproved: boolean,\n\t): string => {\n\t\treturn encodeFunctionData({\n\t\t\tabi: ERC1155_ABI,\n\t\t\tfunctionName: 'setApprovalForAll',\n\t\t\targs: [operator as Hex, approved],\n\t\t});\n\t};\n\n\tstatic isApprovedForAll = async (\n\t\terc1155Address: string,\n\t\towner: string,\n\t\toperator: string,\n\t\tchainId: number,\n\t) => {\n\t\tconst contract = getERC1155Contract({\n\t\t\tcontractAddress: erc1155Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.isApprovedForAll([owner as Hex, operator as Hex]);\n\t};\n\n\tstatic balanceOf = async (\n\t\terc1155Address: string,\n\t\towner: string,\n\t\ttokenId: string,\n\t\tchainId: number,\n\t): Promise<bigint> => {\n\t\tconst contract = getERC1155Contract({\n\t\t\tcontractAddress: erc1155Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.balanceOf([owner as Hex, BigInt(tokenId)]);\n\t};\n}\n\ninterface ContractInstanceParams {\n\tcontractAddress: string;\n\tchainId: number;\n\tsigner?: WalletClient;\n}\n\nconst getERC1155Contract = (args: ContractInstanceParams) => {\n\tconst publicClient = getPublicRpcClient(args.chainId);\n\n\treturn getContract({\n\t\taddress: args.contractAddress as Hex,\n\t\tabi: ERC1155_ABI,\n\t\tclient: {\n\t\t\tpublic: publicClient,\n\t\t\twallet: args.signer,\n\t\t},\n\t});\n};\n","import { allNetworks, findNetworkConfig } from '@0xsequence/network';\nimport { http, type PublicClient, createPublicClient } from 'viem';\nimport type { ChainId } from '../react/_internal';\n\nexport const getPublicRpcClient = (chainId: ChainId): PublicClient => {\n\tconst network = findNetworkConfig(allNetworks, chainId);\n\n\tif (!network) {\n\t\tthrow new Error(`Unsupported chainId: ${chainId}`);\n\t}\n\n\treturn createPublicClient({\n\t\tchain: {\n\t\t\t...network,\n\t\t\tid: Number(chainId),\n\t\t\tname: network.name,\n\t\t\tnativeCurrency: { ...network.nativeToken },\n\t\t\trpcUrls: {\n\t\t\t\tdefault: {\n\t\t\t\t\thttp: [network.rpcUrl],\n\t\t\t\t},\n\t\t\t\tpublic: {\n\t\t\t\t\thttp: [network.rpcUrl],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tbatch: {\n\t\t\tmulticall: true,\n\t\t},\n\t\ttransport: http(),\n\t});\n};\n","import type { Hex, WalletClient } from 'viem';\nimport { encodeFunctionData, getContract, maxUint256 } from 'viem';\nimport type { GetWalletClientData } from 'wagmi/query';\n\nimport { getPublicRpcClient } from '../../get-public-rpc-client';\nimport { ERC20_ABI } from '../abi/token/ERC20';\n\nexport class ERC20 {\n\tstatic approve = async (\n\t\terc20Address: string,\n\t\tspender: string,\n\t\tamount: bigint,\n\t\tsigner: GetWalletClientData<any, any>,\n\t): Promise<string> => {\n\t\tconst txHash = await signer.writeContract({\n\t\t\tchain: signer.chain,\n\t\t\taddress: erc20Address as Hex,\n\t\t\tabi: ERC20_ABI,\n\t\t\tfunctionName: 'approve',\n\t\t\targs: [spender as Hex, amount],\n\t\t});\n\n\t\treturn txHash;\n\t};\n\n\tstatic approve_data = (spender: string, amount: bigint): string => {\n\t\treturn encodeFunctionData({\n\t\t\tabi: ERC20_ABI,\n\t\t\tfunctionName: 'approve',\n\t\t\targs: [spender as Hex, amount],\n\t\t});\n\t};\n\n\tstatic approveInfinite = async (\n\t\terc20Address: string,\n\t\tspender: string,\n\t\tsigner: GetWalletClientData<any, any>,\n\t): Promise<string> => {\n\t\tconst txHash = await signer.writeContract({\n\t\t\tchain: signer.chain,\n\t\t\taddress: erc20Address as Hex,\n\t\t\tabi: ERC20_ABI,\n\t\t\tfunctionName: 'approve',\n\t\t\targs: [spender as Hex, maxUint256],\n\t\t});\n\n\t\treturn txHash;\n\t};\n\n\tstatic approveInfinite_data = (spender: string): string => {\n\t\treturn encodeFunctionData({\n\t\t\tabi: ERC20_ABI,\n\t\t\tfunctionName: 'approve',\n\t\t\targs: [spender as Hex, maxUint256],\n\t\t});\n\t};\n\n\tstatic getAllowance = async (\n\t\terc20Address: string,\n\t\towner: string,\n\t\tspender: string,\n\t\tchainId: number,\n\t): Promise<bigint> => {\n\t\tconst contract = getERC20Contract({\n\t\t\tcontractAddress: erc20Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.allowance([owner as Hex, spender as Hex]);\n\t};\n\n\tstatic balanceOf = async (\n\t\terc20Address: string,\n\t\towner: string,\n\t\tchainId: number,\n\t): Promise<bigint> => {\n\t\tconst contract = getERC20Contract({\n\t\t\tcontractAddress: erc20Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.balanceOf([owner as Hex]);\n\t};\n}\n\ninterface ContractInstanceParams {\n\tcontractAddress: string;\n\tchainId: number;\n\tsigner?: WalletClient;\n}\n\nconst getERC20Contract = (args: ContractInstanceParams) => {\n\tconst publicClient = getPublicRpcClient(args.chainId);\n\n\treturn getContract({\n\t\taddress: args.contractAddress as Hex,\n\t\tabi: ERC20_ABI,\n\t\tclient: {\n\t\t\tpublic: publicClient,\n\t\t\twallet: args.signer,\n\t\t},\n\t});\n};\n","import type { Hex, WalletClient } from 'viem';\nimport { encodeFunctionData, getContract } from 'viem';\nimport type { GetWalletClientData } from 'wagmi/query';\n\nimport { getPublicRpcClient } from '../../get-public-rpc-client';\nimport { ERC721_ABI } from '../abi/token/ERC721';\n\nexport class ERC721 {\n\tstatic setApprovalForAll = async (\n\t\tERC721Address: string,\n\t\toperator: string,\n\t\tapproved: boolean,\n\t\tsigner: GetWalletClientData<any, any>,\n\t): Promise<string> => {\n\t\tconst txHash = await signer.writeContract({\n\t\t\tchain: signer.chain,\n\t\t\taddress: ERC721Address as Hex,\n\t\t\tabi: ERC721_ABI,\n\t\t\tfunctionName: 'setApprovalForAll',\n\t\t\targs: [operator as Hex, approved],\n\t\t});\n\n\t\treturn txHash;\n\t};\n\n\tstatic setApprovalForAll_data = (\n\t\toperator: string,\n\t\tapproved: boolean,\n\t): string => {\n\t\treturn encodeFunctionData({\n\t\t\tabi: ERC721_ABI,\n\t\t\tfunctionName: 'setApprovalForAll',\n\t\t\targs: [operator as Hex, approved],\n\t\t});\n\t};\n\n\tstatic approve = async (\n\t\tERC721Address: string,\n\t\tto: string,\n\t\ttokenId: string,\n\t\tsigner: GetWalletClientData<any, any>,\n\t): Promise<string> => {\n\t\tconst txHash = await signer.writeContract({\n\t\t\tchain: signer.chain,\n\t\t\taddress: ERC721Address as Hex,\n\t\t\tabi: ERC721_ABI,\n\t\t\tfunctionName: 'approve',\n\t\t\targs: [to as Hex, BigInt(tokenId)],\n\t\t});\n\n\t\treturn txHash;\n\t};\n\n\tstatic isApprovedForAll = async (\n\t\tERC721Address: string,\n\t\towner: string,\n\t\toperator: string,\n\t\tchainId: number,\n\t) => {\n\t\tconst contract = getERC721Contract({\n\t\t\tcontractAddress: ERC721Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.isApprovedForAll([owner as Hex, operator as Hex]);\n\t};\n\n\tstatic balanceOf = async (\n\t\tERC721Address: string,\n\t\towner: string,\n\t\tchainId: number,\n\t): Promise<bigint> => {\n\t\tconst contract = getERC721Contract({\n\t\t\tcontractAddress: ERC721Address,\n\t\t\tchainId,\n\t\t});\n\t\treturn contract.read.balanceOf([owner as Hex]);\n\t};\n}\n\ninterface ContractInstanceParams {\n\tcontractAddress: string;\n\tchainId: number;\n\tsigner?: WalletClient;\n}\n\nconst getERC721Contract = (args: ContractInstanceParams) => {\n\tconst publicClient = getPublicRpcClient(args.chainId);\n\n\treturn getContract({\n\t\taddress: args.contractAddress as Hex,\n\t\tabi: ERC721_ABI,\n\t\tclient: {\n\t\t\tpublic: publicClient,\n\t\t\twallet: args.signer,\n\t\t},\n\t});\n};\n"],"mappings":"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","names":["encodeFunctionData","getContract","encodeFunctionData","getContract","encodeFunctionData","getContract","encodeFunctionData","getContract"]}