@hyperlane-xyz/sdk 3.9.0 → 3.11.0-beta-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 (522) hide show
  1. package/README.md +11 -3
  2. package/dist/app/HyperlaneApp.d.ts +6 -7
  3. package/dist/app/HyperlaneApp.d.ts.map +1 -1
  4. package/dist/app/HyperlaneApp.js +10 -15
  5. package/dist/app/HyperlaneApp.js.map +1 -1
  6. package/dist/app/MultiProtocolApp.d.ts +10 -11
  7. package/dist/app/MultiProtocolApp.d.ts.map +1 -1
  8. package/dist/app/MultiProtocolApp.js +25 -43
  9. package/dist/app/MultiProtocolApp.js.map +1 -1
  10. package/dist/app/MultiProtocolApp.test.js +15 -17
  11. package/dist/app/MultiProtocolApp.test.js.map +1 -1
  12. package/dist/consts/bytecode.d.ts +8 -8
  13. package/dist/consts/bytecode.d.ts.map +1 -1
  14. package/dist/consts/bytecode.js +2 -5
  15. package/dist/consts/bytecode.js.map +1 -1
  16. package/dist/consts/chainMetadata.d.ts +2 -3
  17. package/dist/consts/chainMetadata.d.ts.map +1 -1
  18. package/dist/consts/chainMetadata.js +198 -234
  19. package/dist/consts/chainMetadata.js.map +1 -1
  20. package/dist/consts/chains.d.ts +0 -1
  21. package/dist/consts/chains.d.ts.map +1 -1
  22. package/dist/consts/chains.js +12 -17
  23. package/dist/consts/chains.js.map +1 -1
  24. package/dist/consts/environments/index.d.ts +292 -244
  25. package/dist/consts/environments/index.d.ts.map +1 -1
  26. package/dist/consts/environments/index.js +5 -11
  27. package/dist/consts/environments/index.js.map +1 -1
  28. package/dist/consts/environments/mainnet.json +287 -244
  29. package/dist/consts/environments/testnet.json +49 -47
  30. package/dist/consts/igp.js +1 -4
  31. package/dist/consts/igp.js.map +1 -1
  32. package/dist/consts/mailbox.js +1 -4
  33. package/dist/consts/mailbox.js.map +1 -1
  34. package/dist/consts/multisigIsm.d.ts +2 -2
  35. package/dist/consts/multisigIsm.d.ts.map +1 -1
  36. package/dist/consts/multisigIsm.js +43 -54
  37. package/dist/consts/multisigIsm.js.map +1 -1
  38. package/dist/consts/sealevel.js +1 -4
  39. package/dist/consts/sealevel.js.map +1 -1
  40. package/dist/contracts/contracts.d.ts +4 -4
  41. package/dist/contracts/contracts.d.ts.map +1 -1
  42. package/dist/contracts/contracts.js +33 -48
  43. package/dist/contracts/contracts.js.map +1 -1
  44. package/dist/contracts/types.d.ts +1 -1
  45. package/dist/contracts/types.d.ts.map +1 -1
  46. package/dist/contracts/types.js +1 -2
  47. package/dist/core/CoreDeployer.hardhat-test.js +43 -48
  48. package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
  49. package/dist/core/HyperlaneCore.d.ts +9 -9
  50. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  51. package/dist/core/HyperlaneCore.js +31 -38
  52. package/dist/core/HyperlaneCore.js.map +1 -1
  53. package/dist/core/HyperlaneCore.test.js +6 -8
  54. package/dist/core/HyperlaneCore.test.js.map +1 -1
  55. package/dist/core/HyperlaneCoreChecker.d.ts +6 -6
  56. package/dist/core/HyperlaneCoreChecker.d.ts.map +1 -1
  57. package/dist/core/HyperlaneCoreChecker.js +25 -28
  58. package/dist/core/HyperlaneCoreChecker.js.map +1 -1
  59. package/dist/core/HyperlaneCoreDeployer.d.ts +12 -12
  60. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  61. package/dist/core/HyperlaneCoreDeployer.js +26 -27
  62. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  63. package/dist/core/MultiProtocolCore.d.ts +9 -10
  64. package/dist/core/MultiProtocolCore.d.ts.map +1 -1
  65. package/dist/core/MultiProtocolCore.js +18 -23
  66. package/dist/core/MultiProtocolCore.js.map +1 -1
  67. package/dist/core/MultiProtocolCore.test.js +30 -32
  68. package/dist/core/MultiProtocolCore.test.js.map +1 -1
  69. package/dist/core/TestCoreApp.d.ts +3 -3
  70. package/dist/core/TestCoreApp.d.ts.map +1 -1
  71. package/dist/core/TestCoreApp.js +9 -13
  72. package/dist/core/TestCoreApp.js.map +1 -1
  73. package/dist/core/TestCoreDeployer.d.ts +5 -5
  74. package/dist/core/TestCoreDeployer.d.ts.map +1 -1
  75. package/dist/core/TestCoreDeployer.js +7 -11
  76. package/dist/core/TestCoreDeployer.js.map +1 -1
  77. package/dist/core/TestRecipientDeployer.d.ts +5 -5
  78. package/dist/core/TestRecipientDeployer.d.ts.map +1 -1
  79. package/dist/core/TestRecipientDeployer.js +11 -18
  80. package/dist/core/TestRecipientDeployer.js.map +1 -1
  81. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts +6 -6
  82. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts.map +1 -1
  83. package/dist/core/adapters/CosmWasmCoreAdapter.js +12 -13
  84. package/dist/core/adapters/CosmWasmCoreAdapter.js.map +1 -1
  85. package/dist/core/adapters/CosmWasmCoreAdapter.test.js +11 -13
  86. package/dist/core/adapters/CosmWasmCoreAdapter.test.js.map +1 -1
  87. package/dist/core/adapters/CosmWasmIgpAdapter.d.ts +4 -4
  88. package/dist/core/adapters/CosmWasmIgpAdapter.d.ts.map +1 -1
  89. package/dist/core/adapters/CosmWasmIgpAdapter.js +5 -6
  90. package/dist/core/adapters/CosmWasmIgpAdapter.js.map +1 -1
  91. package/dist/core/adapters/EvmCoreAdapter.d.ts +6 -6
  92. package/dist/core/adapters/EvmCoreAdapter.d.ts.map +1 -1
  93. package/dist/core/adapters/EvmCoreAdapter.js +12 -12
  94. package/dist/core/adapters/EvmCoreAdapter.js.map +1 -1
  95. package/dist/core/adapters/SealevelCoreAdapter.d.ts +5 -5
  96. package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
  97. package/dist/core/adapters/SealevelCoreAdapter.js +14 -15
  98. package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
  99. package/dist/core/adapters/SealevelCoreAdapter.test.js +5 -7
  100. package/dist/core/adapters/SealevelCoreAdapter.test.js.map +1 -1
  101. package/dist/core/adapters/types.d.ts +3 -3
  102. package/dist/core/adapters/types.d.ts.map +1 -1
  103. package/dist/core/adapters/types.js +1 -2
  104. package/dist/core/contracts.d.ts +1 -1
  105. package/dist/core/contracts.d.ts.map +1 -1
  106. package/dist/core/contracts.js +5 -8
  107. package/dist/core/contracts.js.map +1 -1
  108. package/dist/core/events.d.ts +1 -1
  109. package/dist/core/events.d.ts.map +1 -1
  110. package/dist/core/events.js +1 -2
  111. package/dist/core/testHyperlaneDeploy.hardhat-test.js +29 -31
  112. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  113. package/dist/core/types.d.ts +6 -6
  114. package/dist/core/types.d.ts.map +1 -1
  115. package/dist/core/types.js +4 -7
  116. package/dist/core/types.js.map +1 -1
  117. package/dist/cw-types/Cw20Base.types.js +1 -2
  118. package/dist/cw-types/Cw20Base.types.js.map +1 -1
  119. package/dist/cw-types/HookAggregate.types.js +1 -2
  120. package/dist/cw-types/HookAggregate.types.js.map +1 -1
  121. package/dist/cw-types/HookMerkle.types.js +1 -2
  122. package/dist/cw-types/HookMerkle.types.js.map +1 -1
  123. package/dist/cw-types/HookPausable.types.js +1 -2
  124. package/dist/cw-types/HookPausable.types.js.map +1 -1
  125. package/dist/cw-types/HookRouting.types.js +1 -2
  126. package/dist/cw-types/HookRouting.types.js.map +1 -1
  127. package/dist/cw-types/HookRoutingCustom.types.js +1 -2
  128. package/dist/cw-types/HookRoutingCustom.types.js.map +1 -1
  129. package/dist/cw-types/HookRoutingFallback.types.js +1 -2
  130. package/dist/cw-types/HookRoutingFallback.types.js.map +1 -1
  131. package/dist/cw-types/Igp.types.js +1 -2
  132. package/dist/cw-types/Igp.types.js.map +1 -1
  133. package/dist/cw-types/IgpOracle.types.js +1 -2
  134. package/dist/cw-types/IgpOracle.types.js.map +1 -1
  135. package/dist/cw-types/IsmAggregate.types.js +1 -2
  136. package/dist/cw-types/IsmAggregate.types.js.map +1 -1
  137. package/dist/cw-types/IsmMultisig.types.js +1 -2
  138. package/dist/cw-types/IsmMultisig.types.js.map +1 -1
  139. package/dist/cw-types/IsmRouting.types.js +1 -2
  140. package/dist/cw-types/IsmRouting.types.js.map +1 -1
  141. package/dist/cw-types/Mailbox.types.js +1 -2
  142. package/dist/cw-types/Mailbox.types.js.map +1 -1
  143. package/dist/cw-types/ValidatorAnnounce.types.js +1 -2
  144. package/dist/cw-types/ValidatorAnnounce.types.js.map +1 -1
  145. package/dist/cw-types/WarpCw20.types.js +1 -2
  146. package/dist/cw-types/WarpCw20.types.js.map +1 -1
  147. package/dist/cw-types/WarpNative.types.js +1 -2
  148. package/dist/cw-types/WarpNative.types.js.map +1 -1
  149. package/dist/deploy/HyperlaneAppChecker.d.ts +6 -6
  150. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  151. package/dist/deploy/HyperlaneAppChecker.js +39 -36
  152. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  153. package/dist/deploy/HyperlaneDeployer.d.ts +34 -16
  154. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  155. package/dist/deploy/HyperlaneDeployer.js +112 -79
  156. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  157. package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts +6 -6
  158. package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -1
  159. package/dist/deploy/HyperlaneProxyFactoryDeployer.js +7 -14
  160. package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -1
  161. package/dist/deploy/contracts.js +8 -11
  162. package/dist/deploy/contracts.js.map +1 -1
  163. package/dist/deploy/proxy.js +9 -16
  164. package/dist/deploy/proxy.js.map +1 -1
  165. package/dist/deploy/types.d.ts +6 -2
  166. package/dist/deploy/types.d.ts.map +1 -1
  167. package/dist/deploy/types.js +16 -7
  168. package/dist/deploy/types.js.map +1 -1
  169. package/dist/deploy/verify/ContractVerifier.d.ts +8 -7
  170. package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
  171. package/dist/deploy/verify/ContractVerifier.js +52 -56
  172. package/dist/deploy/verify/ContractVerifier.js.map +1 -1
  173. package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts +6 -7
  174. package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts.map +1 -1
  175. package/dist/deploy/verify/PostDeploymentContractVerifier.js +14 -14
  176. package/dist/deploy/verify/PostDeploymentContractVerifier.js.map +1 -1
  177. package/dist/deploy/verify/types.js +7 -10
  178. package/dist/deploy/verify/types.js.map +1 -1
  179. package/dist/deploy/verify/utils.d.ts +1 -1
  180. package/dist/deploy/verify/utils.d.ts.map +1 -1
  181. package/dist/deploy/verify/utils.js +4 -11
  182. package/dist/deploy/verify/utils.js.map +1 -1
  183. package/dist/gas/HyperlaneIgp.d.ts +6 -6
  184. package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
  185. package/dist/gas/HyperlaneIgp.js +9 -13
  186. package/dist/gas/HyperlaneIgp.js.map +1 -1
  187. package/dist/gas/HyperlaneIgpChecker.d.ts +4 -4
  188. package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
  189. package/dist/gas/HyperlaneIgpChecker.js +20 -24
  190. package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
  191. package/dist/gas/HyperlaneIgpDeployer.d.ts +7 -7
  192. package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
  193. package/dist/gas/HyperlaneIgpDeployer.js +16 -25
  194. package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
  195. package/dist/gas/adapters/SealevelIgpAdapter.d.ts +4 -4
  196. package/dist/gas/adapters/SealevelIgpAdapter.d.ts.map +1 -1
  197. package/dist/gas/adapters/SealevelIgpAdapter.js +11 -12
  198. package/dist/gas/adapters/SealevelIgpAdapter.js.map +1 -1
  199. package/dist/gas/adapters/serialization.js +33 -19
  200. package/dist/gas/adapters/serialization.js.map +1 -1
  201. package/dist/gas/contracts.js +5 -8
  202. package/dist/gas/contracts.js.map +1 -1
  203. package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js +14 -15
  204. package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js.map +1 -1
  205. package/dist/gas/oracle/types.js +9 -14
  206. package/dist/gas/oracle/types.js.map +1 -1
  207. package/dist/gas/token-prices.d.ts +2 -2
  208. package/dist/gas/token-prices.d.ts.map +1 -1
  209. package/dist/gas/token-prices.js +17 -17
  210. package/dist/gas/token-prices.js.map +1 -1
  211. package/dist/gas/token-prices.test.js +10 -12
  212. package/dist/gas/token-prices.test.js.map +1 -1
  213. package/dist/gas/types.d.ts +4 -4
  214. package/dist/gas/types.d.ts.map +1 -1
  215. package/dist/gas/types.js +2 -5
  216. package/dist/gas/types.js.map +1 -1
  217. package/dist/hook/HyperlaneHookDeployer.d.ts +16 -16
  218. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  219. package/dist/hook/HyperlaneHookDeployer.js +52 -55
  220. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  221. package/dist/hook/contracts.js +11 -14
  222. package/dist/hook/contracts.js.map +1 -1
  223. package/dist/hook/types.d.ts +3 -3
  224. package/dist/hook/types.d.ts.map +1 -1
  225. package/dist/hook/types.js +2 -5
  226. package/dist/hook/types.js.map +1 -1
  227. package/dist/index.d.ts +106 -105
  228. package/dist/index.d.ts.map +1 -1
  229. package/dist/index.js +97 -320
  230. package/dist/index.js.map +1 -1
  231. package/dist/ism/HyperlaneIsmFactory.d.ts +13 -13
  232. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  233. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +77 -79
  234. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  235. package/dist/ism/HyperlaneIsmFactory.js +62 -67
  236. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  237. package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts +5 -5
  238. package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts.map +1 -1
  239. package/dist/ism/adapters/CosmWasmMultisigAdapter.js +9 -10
  240. package/dist/ism/adapters/CosmWasmMultisigAdapter.js.map +1 -1
  241. package/dist/ism/multisig.d.ts +2 -2
  242. package/dist/ism/multisig.d.ts.map +1 -1
  243. package/dist/ism/multisig.js +9 -14
  244. package/dist/ism/multisig.js.map +1 -1
  245. package/dist/ism/types.d.ts +3 -3
  246. package/dist/ism/types.d.ts.map +1 -1
  247. package/dist/ism/types.js +5 -9
  248. package/dist/ism/types.js.map +1 -1
  249. package/dist/ism/utils.d.ts +5 -5
  250. package/dist/ism/utils.d.ts.map +1 -1
  251. package/dist/ism/utils.js +77 -82
  252. package/dist/ism/utils.js.map +1 -1
  253. package/dist/metadata/ChainMetadataManager.d.ts +5 -5
  254. package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
  255. package/dist/metadata/ChainMetadataManager.js +22 -22
  256. package/dist/metadata/ChainMetadataManager.js.map +1 -1
  257. package/dist/metadata/agentConfig.d.ts +95 -95
  258. package/dist/metadata/agentConfig.d.ts.map +1 -1
  259. package/dist/metadata/agentConfig.js +100 -104
  260. package/dist/metadata/agentConfig.js.map +1 -1
  261. package/dist/metadata/agentConfig.test.js +12 -14
  262. package/dist/metadata/agentConfig.test.js.map +1 -1
  263. package/dist/metadata/blockExplorer.d.ts +1 -1
  264. package/dist/metadata/blockExplorer.d.ts.map +1 -1
  265. package/dist/metadata/blockExplorer.js +12 -20
  266. package/dist/metadata/blockExplorer.js.map +1 -1
  267. package/dist/metadata/chainMetadata.test.js +22 -24
  268. package/dist/metadata/chainMetadata.test.js.map +1 -1
  269. package/dist/metadata/chainMetadataTypes.js +71 -79
  270. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  271. package/dist/metadata/customZodTypes.js +6 -9
  272. package/dist/metadata/customZodTypes.js.map +1 -1
  273. package/dist/metadata/deploymentArtifacts.js +8 -11
  274. package/dist/metadata/deploymentArtifacts.js.map +1 -1
  275. package/dist/metadata/health.d.ts +2 -2
  276. package/dist/metadata/health.d.ts.map +1 -1
  277. package/dist/metadata/health.js +44 -52
  278. package/dist/metadata/health.js.map +1 -1
  279. package/dist/metadata/matchingList.js +9 -12
  280. package/dist/metadata/matchingList.js.map +1 -1
  281. package/dist/metadata/warpRouteConfig.d.ts +2 -2
  282. package/dist/metadata/warpRouteConfig.d.ts.map +1 -1
  283. package/dist/metadata/warpRouteConfig.js +18 -21
  284. package/dist/metadata/warpRouteConfig.js.map +1 -1
  285. package/dist/middleware/account/InterchainAccount.d.ts +15 -5
  286. package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
  287. package/dist/middleware/account/InterchainAccount.js +71 -13
  288. package/dist/middleware/account/InterchainAccount.js.map +1 -1
  289. package/dist/middleware/account/InterchainAccountChecker.d.ts +6 -6
  290. package/dist/middleware/account/InterchainAccountChecker.d.ts.map +1 -1
  291. package/dist/middleware/account/InterchainAccountChecker.js +4 -8
  292. package/dist/middleware/account/InterchainAccountChecker.js.map +1 -1
  293. package/dist/middleware/account/InterchainAccountDeployer.d.ts +14 -11
  294. package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
  295. package/dist/middleware/account/InterchainAccountDeployer.js +16 -12
  296. package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
  297. package/dist/middleware/account/accounts.hardhat-test.js +44 -30
  298. package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
  299. package/dist/middleware/account/contracts.js +6 -9
  300. package/dist/middleware/account/contracts.js.map +1 -1
  301. package/dist/middleware/account/types.d.ts +10 -0
  302. package/dist/middleware/account/types.d.ts.map +1 -0
  303. package/dist/middleware/account/types.js +2 -0
  304. package/dist/middleware/account/types.js.map +1 -0
  305. package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts +6 -6
  306. package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts.map +1 -1
  307. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js +23 -24
  308. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js.map +1 -1
  309. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +14 -12
  310. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
  311. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +32 -28
  312. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
  313. package/dist/middleware/liquidity-layer/contracts.js +7 -10
  314. package/dist/middleware/liquidity-layer/contracts.js.map +1 -1
  315. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +36 -38
  316. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
  317. package/dist/middleware/query/InterchainQuery.d.ts +5 -5
  318. package/dist/middleware/query/InterchainQuery.d.ts.map +1 -1
  319. package/dist/middleware/query/InterchainQuery.js +7 -11
  320. package/dist/middleware/query/InterchainQuery.js.map +1 -1
  321. package/dist/middleware/query/InterchainQueryChecker.d.ts +4 -4
  322. package/dist/middleware/query/InterchainQueryChecker.d.ts.map +1 -1
  323. package/dist/middleware/query/InterchainQueryChecker.js +2 -6
  324. package/dist/middleware/query/InterchainQueryChecker.js.map +1 -1
  325. package/dist/middleware/query/InterchainQueryDeployer.d.ts +13 -9
  326. package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
  327. package/dist/middleware/query/InterchainQueryDeployer.js +16 -12
  328. package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
  329. package/dist/middleware/query/contracts.js +5 -8
  330. package/dist/middleware/query/contracts.js.map +1 -1
  331. package/dist/middleware/query/queries.hardhat-test.js +32 -34
  332. package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
  333. package/dist/providers/MultiProtocolProvider.d.ts +10 -10
  334. package/dist/providers/MultiProtocolProvider.d.ts.map +1 -1
  335. package/dist/providers/MultiProtocolProvider.js +37 -35
  336. package/dist/providers/MultiProtocolProvider.js.map +1 -1
  337. package/dist/providers/MultiProtocolProvider.test.js +12 -14
  338. package/dist/providers/MultiProtocolProvider.test.js.map +1 -1
  339. package/dist/providers/MultiProvider.d.ts +7 -7
  340. package/dist/providers/MultiProvider.d.ts.map +1 -1
  341. package/dist/providers/MultiProvider.js +27 -23
  342. package/dist/providers/MultiProvider.js.map +1 -1
  343. package/dist/providers/ProviderType.js +8 -11
  344. package/dist/providers/ProviderType.js.map +1 -1
  345. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts +3 -4
  346. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts.map +1 -1
  347. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js +19 -25
  348. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js.map +1 -1
  349. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts +3 -4
  350. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
  351. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +32 -38
  352. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
  353. package/dist/providers/SmartProvider/ProviderMethods.js +5 -9
  354. package/dist/providers/SmartProvider/ProviderMethods.js.map +1 -1
  355. package/dist/providers/SmartProvider/SmartProvider.d.ts +7 -7
  356. package/dist/providers/SmartProvider/SmartProvider.d.ts.map +1 -1
  357. package/dist/providers/SmartProvider/SmartProvider.foundry-test.js +22 -24
  358. package/dist/providers/SmartProvider/SmartProvider.foundry-test.js.map +1 -1
  359. package/dist/providers/SmartProvider/SmartProvider.js +45 -45
  360. package/dist/providers/SmartProvider/SmartProvider.js.map +1 -1
  361. package/dist/providers/SmartProvider/SmartProvider.test.js +45 -47
  362. package/dist/providers/SmartProvider/SmartProvider.test.js.map +1 -1
  363. package/dist/providers/SmartProvider/types.d.ts +1 -1
  364. package/dist/providers/SmartProvider/types.d.ts.map +1 -1
  365. package/dist/providers/SmartProvider/types.js +2 -5
  366. package/dist/providers/SmartProvider/types.js.map +1 -1
  367. package/dist/providers/providerBuilders.d.ts +3 -3
  368. package/dist/providers/providerBuilders.d.ts.map +1 -1
  369. package/dist/providers/providerBuilders.js +38 -48
  370. package/dist/providers/providerBuilders.js.map +1 -1
  371. package/dist/providers/transactionFeeEstimators.d.ts +2 -2
  372. package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
  373. package/dist/providers/transactionFeeEstimators.js +40 -50
  374. package/dist/providers/transactionFeeEstimators.js.map +1 -1
  375. package/dist/router/GasRouterDeployer.d.ts +5 -5
  376. package/dist/router/GasRouterDeployer.d.ts.map +1 -1
  377. package/dist/router/GasRouterDeployer.js +4 -8
  378. package/dist/router/GasRouterDeployer.js.map +1 -1
  379. package/dist/router/HyperlaneRouterChecker.d.ts +7 -7
  380. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  381. package/dist/router/HyperlaneRouterChecker.js +22 -25
  382. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  383. package/dist/router/HyperlaneRouterDeployer.d.ts +4 -4
  384. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  385. package/dist/router/HyperlaneRouterDeployer.js +14 -18
  386. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  387. package/dist/router/MultiProtocolRouterApps.d.ts +4 -5
  388. package/dist/router/MultiProtocolRouterApps.d.ts.map +1 -1
  389. package/dist/router/MultiProtocolRouterApps.js +14 -19
  390. package/dist/router/MultiProtocolRouterApps.js.map +1 -1
  391. package/dist/router/MultiProtocolRouterApps.test.js +13 -15
  392. package/dist/router/MultiProtocolRouterApps.test.js.map +1 -1
  393. package/dist/router/ProxiedRouterChecker.d.ts +4 -4
  394. package/dist/router/ProxiedRouterChecker.d.ts.map +1 -1
  395. package/dist/router/ProxiedRouterChecker.js +2 -6
  396. package/dist/router/ProxiedRouterChecker.js.map +1 -1
  397. package/dist/router/ProxiedRouterDeployer.d.ts +28 -9
  398. package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
  399. package/dist/router/ProxiedRouterDeployer.js +13 -19
  400. package/dist/router/ProxiedRouterDeployer.js.map +1 -1
  401. package/dist/router/RouterApps.d.ts +6 -7
  402. package/dist/router/RouterApps.d.ts.map +1 -1
  403. package/dist/router/RouterApps.js +8 -12
  404. package/dist/router/RouterApps.js.map +1 -1
  405. package/dist/router/adapters/EvmRouterAdapter.d.ts +4 -4
  406. package/dist/router/adapters/EvmRouterAdapter.d.ts.map +1 -1
  407. package/dist/router/adapters/EvmRouterAdapter.js +11 -13
  408. package/dist/router/adapters/EvmRouterAdapter.js.map +1 -1
  409. package/dist/router/adapters/SealevelRouterAdapter.d.ts +4 -4
  410. package/dist/router/adapters/SealevelRouterAdapter.d.ts.map +1 -1
  411. package/dist/router/adapters/SealevelRouterAdapter.js +6 -8
  412. package/dist/router/adapters/SealevelRouterAdapter.js.map +1 -1
  413. package/dist/router/adapters/types.d.ts +2 -2
  414. package/dist/router/adapters/types.d.ts.map +1 -1
  415. package/dist/router/adapters/types.js +1 -2
  416. package/dist/router/types.d.ts +4 -4
  417. package/dist/router/types.d.ts.map +1 -1
  418. package/dist/router/types.js +8 -11
  419. package/dist/router/types.js.map +1 -1
  420. package/dist/test/metadata-check.js +17 -20
  421. package/dist/test/metadata-check.js.map +1 -1
  422. package/dist/test/testUtils.d.ts +8 -8
  423. package/dist/test/testUtils.d.ts.map +1 -1
  424. package/dist/test/testUtils.js +29 -34
  425. package/dist/test/testUtils.js.map +1 -1
  426. package/dist/token/IToken.d.ts +21 -21
  427. package/dist/token/IToken.d.ts.map +1 -1
  428. package/dist/token/IToken.js +18 -21
  429. package/dist/token/IToken.js.map +1 -1
  430. package/dist/token/Token.d.ts +7 -7
  431. package/dist/token/Token.d.ts.map +1 -1
  432. package/dist/token/Token.js +77 -80
  433. package/dist/token/Token.js.map +1 -1
  434. package/dist/token/Token.test.js +68 -70
  435. package/dist/token/Token.test.js.map +1 -1
  436. package/dist/token/TokenAmount.d.ts +1 -1
  437. package/dist/token/TokenAmount.d.ts.map +1 -1
  438. package/dist/token/TokenAmount.js +5 -7
  439. package/dist/token/TokenAmount.js.map +1 -1
  440. package/dist/token/TokenAmount.test.js +22 -24
  441. package/dist/token/TokenAmount.test.js.map +1 -1
  442. package/dist/token/TokenConnection.d.ts +2 -2
  443. package/dist/token/TokenConnection.d.ts.map +1 -1
  444. package/dist/token/TokenConnection.js +26 -31
  445. package/dist/token/TokenConnection.js.map +1 -1
  446. package/dist/token/TokenStandard.d.ts +2 -2
  447. package/dist/token/TokenStandard.d.ts.map +1 -1
  448. package/dist/token/TokenStandard.js +54 -57
  449. package/dist/token/TokenStandard.js.map +1 -1
  450. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts +9 -9
  451. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts.map +1 -1
  452. package/dist/token/adapters/CosmWasmTokenAdapter.js +28 -19
  453. package/dist/token/adapters/CosmWasmTokenAdapter.js.map +1 -1
  454. package/dist/token/adapters/CosmWasmTokenAdapter.test.js +39 -47
  455. package/dist/token/adapters/CosmWasmTokenAdapter.test.js.map +1 -1
  456. package/dist/token/adapters/CosmosTokenAdapter.d.ts +6 -6
  457. package/dist/token/adapters/CosmosTokenAdapter.d.ts.map +1 -1
  458. package/dist/token/adapters/CosmosTokenAdapter.js +22 -19
  459. package/dist/token/adapters/CosmosTokenAdapter.js.map +1 -1
  460. package/dist/token/adapters/EvmTokenAdapter.d.ts +6 -6
  461. package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
  462. package/dist/token/adapters/EvmTokenAdapter.js +32 -26
  463. package/dist/token/adapters/EvmTokenAdapter.js.map +1 -1
  464. package/dist/token/adapters/ITokenAdapter.d.ts +2 -2
  465. package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -1
  466. package/dist/token/adapters/ITokenAdapter.js +1 -2
  467. package/dist/token/adapters/SealevelTokenAdapter.d.ts +7 -7
  468. package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
  469. package/dist/token/adapters/SealevelTokenAdapter.js +68 -61
  470. package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
  471. package/dist/token/adapters/serialization.d.ts +1 -1
  472. package/dist/token/adapters/serialization.d.ts.map +1 -1
  473. package/dist/token/adapters/serialization.js +58 -28
  474. package/dist/token/adapters/serialization.js.map +1 -1
  475. package/dist/token/config.d.ts +2 -1
  476. package/dist/token/config.d.ts.map +1 -1
  477. package/dist/token/config.js +10 -19
  478. package/dist/token/config.js.map +1 -1
  479. package/dist/token/contracts.d.ts +21 -0
  480. package/dist/token/contracts.d.ts.map +1 -1
  481. package/dist/token/contracts.js +33 -18
  482. package/dist/token/contracts.js.map +1 -1
  483. package/dist/token/deploy.d.ts +26 -19
  484. package/dist/token/deploy.d.ts.map +1 -1
  485. package/dist/token/deploy.hardhat-test.js +16 -18
  486. package/dist/token/deploy.hardhat-test.js.map +1 -1
  487. package/dist/token/deploy.js +142 -112
  488. package/dist/token/deploy.js.map +1 -1
  489. package/dist/types.js +1 -2
  490. package/dist/utils/MultiGeneric.d.ts +1 -1
  491. package/dist/utils/MultiGeneric.d.ts.map +1 -1
  492. package/dist/utils/MultiGeneric.js +4 -7
  493. package/dist/utils/MultiGeneric.js.map +1 -1
  494. package/dist/utils/fetch.js +3 -10
  495. package/dist/utils/fetch.js.map +1 -1
  496. package/dist/utils/filter.d.ts +1 -1
  497. package/dist/utils/filter.d.ts.map +1 -1
  498. package/dist/utils/filter.js +1 -5
  499. package/dist/utils/filter.js.map +1 -1
  500. package/dist/utils/ism.js +5 -12
  501. package/dist/utils/ism.js.map +1 -1
  502. package/dist/utils/sealevelSerialization.js +10 -9
  503. package/dist/utils/sealevelSerialization.js.map +1 -1
  504. package/dist/utils/wagmi.d.ts +2 -2
  505. package/dist/utils/wagmi.d.ts.map +1 -1
  506. package/dist/utils/wagmi.js +7 -11
  507. package/dist/utils/wagmi.js.map +1 -1
  508. package/dist/warp/WarpCore.d.ts +10 -10
  509. package/dist/warp/WarpCore.d.ts.map +1 -1
  510. package/dist/warp/WarpCore.js +53 -51
  511. package/dist/warp/WarpCore.js.map +1 -1
  512. package/dist/warp/WarpCore.test.js +67 -73
  513. package/dist/warp/WarpCore.test.js.map +1 -1
  514. package/dist/warp/types.d.ts +29 -29
  515. package/dist/warp/types.d.ts.map +1 -1
  516. package/dist/warp/types.js +17 -20
  517. package/dist/warp/types.js.map +1 -1
  518. package/package.json +22 -14
  519. package/dist/logger.d.ts +0 -3
  520. package/dist/logger.d.ts.map +0 -1
  521. package/dist/logger.js +0 -11
  522. package/dist/logger.js.map +0 -1
@@ -1,50 +1,46 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isBlockExplorerHealthy = exports.isCosmJsProviderHealthy = exports.isSolanaWeb3ProviderHealthy = exports.isEthersV5ProviderHealthy = exports.isRpcHealthy = void 0;
4
- const core_1 = require("@hyperlane-xyz/core");
5
- const utils_1 = require("@hyperlane-xyz/utils");
6
- const chainMetadata_1 = require("../consts/chainMetadata");
7
- const environments_1 = require("../consts/environments");
8
- const logger_1 = require("../logger");
9
- const ProviderType_1 = require("../providers/ProviderType");
10
- const providerBuilders_1 = require("../providers/providerBuilders");
11
- const blockExplorer_1 = require("./blockExplorer");
1
+ import { Mailbox__factory } from '@hyperlane-xyz/core';
2
+ import { rootLogger, timeout, } from '@hyperlane-xyz/utils';
3
+ import { chainIdToMetadata } from '../consts/chainMetadata.js';
4
+ import { hyperlaneContractAddresses } from '../consts/environments/index.js';
5
+ import { ProviderType, } from '../providers/ProviderType.js';
6
+ import { protocolToDefaultProviderBuilder } from '../providers/providerBuilders.js';
7
+ import { getExplorerAddressUrl, getExplorerBaseUrl, getExplorerTxUrl, } from './blockExplorer.js';
12
8
  const HEALTH_CHECK_TIMEOUT = 5000; // 5s
13
- async function isRpcHealthy(rpc, chainId, protocol) {
9
+ const logger = rootLogger.child({ module: 'metadata-health' });
10
+ export async function isRpcHealthy(rpc, chainId, protocol) {
14
11
  try {
15
- const builder = providerBuilders_1.protocolToDefaultProviderBuilder[protocol];
12
+ const builder = protocolToDefaultProviderBuilder[protocol];
16
13
  const provider = builder([rpc], chainId);
17
14
  let resultPromise;
18
- if (provider.type === ProviderType_1.ProviderType.EthersV5)
15
+ if (provider.type === ProviderType.EthersV5)
19
16
  resultPromise = isEthersV5ProviderHealthy(provider.provider, chainId);
20
- else if (provider.type === ProviderType_1.ProviderType.SolanaWeb3)
17
+ else if (provider.type === ProviderType.SolanaWeb3)
21
18
  resultPromise = isSolanaWeb3ProviderHealthy(provider.provider, chainId);
22
- else if (provider.type === ProviderType_1.ProviderType.CosmJsWasm ||
23
- provider.type === ProviderType_1.ProviderType.CosmJs)
19
+ else if (provider.type === ProviderType.CosmJsWasm ||
20
+ provider.type === ProviderType.CosmJs)
24
21
  resultPromise = isCosmJsProviderHealthy(provider.provider, chainId);
25
22
  else
26
23
  throw new Error(`Unsupported provider type ${provider.type}, new health check required`);
27
- const result = await (0, utils_1.timeout)(resultPromise, HEALTH_CHECK_TIMEOUT, 'RPC health check timed out');
24
+ const result = await timeout(resultPromise, HEALTH_CHECK_TIMEOUT, 'RPC health check timed out');
28
25
  return result;
29
26
  }
30
27
  catch (error) {
31
- (0, logger_1.logger)(`Provider error for ${rpc.http}`, error);
28
+ logger.error(`Provider error for ${rpc.http}`, error);
32
29
  return false;
33
30
  }
34
31
  }
35
- exports.isRpcHealthy = isRpcHealthy;
36
- async function isEthersV5ProviderHealthy(provider, chainId) {
37
- (0, logger_1.logger)(`Checking ethers provider for ${chainId}`);
32
+ export async function isEthersV5ProviderHealthy(provider, chainId) {
33
+ logger.debug(`Checking ethers provider for ${chainId}`);
38
34
  const blockNumber = await provider.getBlockNumber();
39
35
  if (!blockNumber || blockNumber < 0)
40
36
  return false;
41
- (0, logger_1.logger)(`Block number is okay for ${chainId}`);
42
- const chainName = chainMetadata_1.chainIdToMetadata[chainId]?.name;
43
- if (chainName && environments_1.hyperlaneContractAddresses[chainName]) {
44
- const mailboxAddr = environments_1.hyperlaneContractAddresses[chainName].mailbox;
45
- const mailbox = core_1.Mailbox__factory.createInterface();
37
+ logger.debug(`Block number is okay for ${chainId}`);
38
+ const chainName = chainIdToMetadata[chainId]?.name;
39
+ if (chainName && hyperlaneContractAddresses[chainName]) {
40
+ const mailboxAddr = hyperlaneContractAddresses[chainName].mailbox;
41
+ const mailbox = Mailbox__factory.createInterface();
46
42
  const topics = mailbox.encodeFilterTopics(mailbox.events['DispatchId(bytes32)'], []);
47
- (0, logger_1.logger)(`Checking mailbox logs for ${chainId}`);
43
+ logger.debug(`Checking mailbox logs for ${chainId}`);
48
44
  const mailboxLogs = await provider.getLogs({
49
45
  address: mailboxAddr,
50
46
  topics,
@@ -53,68 +49,64 @@ async function isEthersV5ProviderHealthy(provider, chainId) {
53
49
  });
54
50
  if (!mailboxLogs)
55
51
  return false;
56
- (0, logger_1.logger)(`Mailbox logs okay for ${chainId}`);
52
+ logger.debug(`Mailbox logs okay for ${chainId}`);
57
53
  }
58
54
  return true;
59
55
  }
60
- exports.isEthersV5ProviderHealthy = isEthersV5ProviderHealthy;
61
- async function isSolanaWeb3ProviderHealthy(provider, chainId) {
62
- (0, logger_1.logger)(`Checking solana provider for ${chainId}`);
56
+ export async function isSolanaWeb3ProviderHealthy(provider, chainId) {
57
+ logger.debug(`Checking solana provider for ${chainId}`);
63
58
  const blockNumber = await provider.getBlockHeight();
64
59
  if (!blockNumber || blockNumber < 0)
65
60
  return false;
66
- (0, logger_1.logger)(`Block number is okay for ${chainId}`);
61
+ logger.debug(`Block number is okay for ${chainId}`);
67
62
  return true;
68
63
  }
69
- exports.isSolanaWeb3ProviderHealthy = isSolanaWeb3ProviderHealthy;
70
- async function isCosmJsProviderHealthy(provider, chainId) {
64
+ export async function isCosmJsProviderHealthy(provider, chainId) {
71
65
  const readyProvider = await provider;
72
66
  const blockNumber = await readyProvider.getHeight();
73
67
  if (!blockNumber || blockNumber < 0)
74
68
  return false;
75
- (0, logger_1.logger)(`Block number is okay for ${chainId}`);
69
+ logger.debug(`Block number is okay for ${chainId}`);
76
70
  return true;
77
71
  }
78
- exports.isCosmJsProviderHealthy = isCosmJsProviderHealthy;
79
- async function isBlockExplorerHealthy(chainMetadata, address, txHash) {
72
+ export async function isBlockExplorerHealthy(chainMetadata, address, txHash) {
80
73
  try {
81
- const baseUrl = (0, blockExplorer_1.getExplorerBaseUrl)(chainMetadata);
74
+ const baseUrl = getExplorerBaseUrl(chainMetadata);
82
75
  if (!baseUrl)
83
76
  return false;
84
- (0, logger_1.logger)(`Got base url: ${baseUrl}`);
85
- (0, logger_1.logger)(`Checking explorer home for ${chainMetadata.name}`);
77
+ logger.debug(`Got base url: ${baseUrl}`);
78
+ logger.debug(`Checking explorer home for ${chainMetadata.name}`);
86
79
  const homeReq = await fetch(baseUrl);
87
80
  if (!homeReq.ok)
88
81
  return false;
89
- (0, logger_1.logger)(`Explorer home okay for ${chainMetadata.name}`);
82
+ logger.debug(`Explorer home okay for ${chainMetadata.name}`);
90
83
  if (address) {
91
- (0, logger_1.logger)(`Checking explorer address page for ${chainMetadata.name}`);
92
- const addressUrl = (0, blockExplorer_1.getExplorerAddressUrl)(chainMetadata, address);
84
+ logger.debug(`Checking explorer address page for ${chainMetadata.name}`);
85
+ const addressUrl = getExplorerAddressUrl(chainMetadata, address);
93
86
  if (!addressUrl)
94
87
  return false;
95
- (0, logger_1.logger)(`Got address url: ${addressUrl}`);
88
+ logger.debug(`Got address url: ${addressUrl}`);
96
89
  const addressReq = await fetch(addressUrl);
97
90
  if (!addressReq.ok && addressReq.status !== 404)
98
91
  return false;
99
- (0, logger_1.logger)(`Explorer address page okay for ${chainMetadata.name}`);
92
+ logger.debug(`Explorer address page okay for ${chainMetadata.name}`);
100
93
  }
101
94
  if (txHash) {
102
- (0, logger_1.logger)(`Checking explorer tx page for ${chainMetadata.name}`);
103
- const txUrl = (0, blockExplorer_1.getExplorerTxUrl)(chainMetadata, txHash);
95
+ logger.debug(`Checking explorer tx page for ${chainMetadata.name}`);
96
+ const txUrl = getExplorerTxUrl(chainMetadata, txHash);
104
97
  if (!txUrl)
105
98
  return false;
106
- (0, logger_1.logger)(`Got tx url: ${txUrl}`);
99
+ logger.debug(`Got tx url: ${txUrl}`);
107
100
  const txReq = await fetch(txUrl);
108
101
  if (!txReq.ok && txReq.status !== 404)
109
102
  return false;
110
- (0, logger_1.logger)(`Explorer tx page okay for ${chainMetadata.name}`);
103
+ logger.debug(`Explorer tx page okay for ${chainMetadata.name}`);
111
104
  }
112
105
  return true;
113
106
  }
114
107
  catch (error) {
115
- (0, logger_1.logger)(`Explorer error for ${chainMetadata.name}`, error);
108
+ logger.error(`Explorer error for ${chainMetadata.name}`, error);
116
109
  return false;
117
110
  }
118
111
  }
119
- exports.isBlockExplorerHealthy = isBlockExplorerHealthy;
120
112
  //# sourceMappingURL=health.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/metadata/health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/metadata/health.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MatchingListSchema = void 0;
4
1
  /**
5
2
  * The types defined here are the source of truth for chain metadata.
6
3
  * ANY CHANGES HERE NEED TO BE REFLECTED IN HYPERLANE-BASE CONFIG PARSING.
7
4
  */
8
- const zod_1 = require("zod");
9
- const customZodTypes_1 = require("./customZodTypes");
10
- const DomainSchema = zod_1.z.union([
11
- zod_1.z.literal('*'),
12
- customZodTypes_1.ZNzUint,
13
- zod_1.z.array(customZodTypes_1.ZNzUint).nonempty(),
5
+ import { z } from 'zod';
6
+ import { ZHash, ZNzUint } from './customZodTypes.js';
7
+ const DomainSchema = z.union([
8
+ z.literal('*'),
9
+ ZNzUint,
10
+ z.array(ZNzUint).nonempty(),
14
11
  ]);
15
- const AddressSchema = zod_1.z.union([zod_1.z.literal('*'), customZodTypes_1.ZHash, zod_1.z.array(customZodTypes_1.ZHash)]);
16
- const MatchingListElementSchema = zod_1.z.object({
12
+ const AddressSchema = z.union([z.literal('*'), ZHash, z.array(ZHash)]);
13
+ const MatchingListElementSchema = z.object({
17
14
  originDomain: DomainSchema.optional(),
18
15
  senderAddress: AddressSchema.optional(),
19
16
  destinationDomain: DomainSchema.optional(),
20
17
  recipientAddress: AddressSchema.optional(),
21
18
  });
22
- exports.MatchingListSchema = zod_1.z.array(MatchingListElementSchema);
19
+ export const MatchingListSchema = z.array(MatchingListElementSchema);
23
20
  //# sourceMappingURL=matchingList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"matchingList.js","sourceRoot":"","sources":["../../src/metadata/matchingList.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,6BAAwB;AAExB,qDAAkD;AAElD,MAAM,YAAY,GAAG,OAAC,CAAC,KAAK,CAAC;IAC3B,OAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IACd,wBAAO;IACP,OAAC,CAAC,KAAK,CAAC,wBAAO,CAAC,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,sBAAK,EAAE,OAAC,CAAC,KAAK,CAAC,sBAAK,CAAC,CAAC,CAAC,CAAC;AAEvE,MAAM,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;IACrC,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;IACvC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC1C,gBAAgB,EAAE,aAAa,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,OAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"matchingList.js","sourceRoot":"","sources":["../../src/metadata/matchingList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3B,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IACd,OAAO;IACP,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEvE,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;IACrC,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;IACvC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC1C,gBAAgB,EAAE,aAAa,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { ProtocolType } from '@hyperlane-xyz/utils';
3
- import { TokenType } from '../token/config';
4
- import { ChainMap } from '../types';
3
+ import { TokenType } from '../token/config.js';
4
+ import { ChainMap } from '../types.js';
5
5
  declare const TokenConfigSchema: z.ZodObject<{
6
6
  protocolType: z.ZodNativeEnum<typeof ProtocolType>;
7
7
  type: z.ZodNativeEnum<typeof TokenType>;
@@ -1 +1 @@
1
- {"version":3,"file":"warpRouteConfig.d.ts","sourceRoot":"","sources":["../../src/metadata/warpRouteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUrB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"warpRouteConfig.d.ts","sourceRoot":"","sources":["../../src/metadata/warpRouteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUrB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC"}
@@ -1,24 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WarpRouteConfigSchema = void 0;
4
- const zod_1 = require("zod");
5
- const utils_1 = require("@hyperlane-xyz/utils");
6
- const config_1 = require("../token/config");
7
- const TokenConfigSchema = zod_1.z.object({
8
- protocolType: zod_1.z.nativeEnum(utils_1.ProtocolType),
9
- type: zod_1.z.nativeEnum(config_1.TokenType),
10
- hypAddress: zod_1.z.string(),
11
- tokenAddress: zod_1.z.string().optional(),
12
- name: zod_1.z.string(),
13
- symbol: zod_1.z.string(),
14
- decimals: zod_1.z.number(),
15
- isSpl2022: zod_1.z.boolean().optional(),
16
- ibcDenom: zod_1.z.string().optional(), // IBC denom for cosmos native token
1
+ import { z } from 'zod';
2
+ import { ProtocolType } from '@hyperlane-xyz/utils';
3
+ import { TokenType } from '../token/config.js';
4
+ const TokenConfigSchema = z.object({
5
+ protocolType: z.nativeEnum(ProtocolType),
6
+ type: z.nativeEnum(TokenType),
7
+ hypAddress: z.string(), // HypERC20Collateral, HypERC20Synthetic, HypNativeToken address
8
+ tokenAddress: z.string().optional(), // external token address needed for collateral type eg tokenAddress.balanceOf(hypAddress)
9
+ name: z.string(),
10
+ symbol: z.string(),
11
+ decimals: z.number(),
12
+ isSpl2022: z.boolean().optional(), // Solana Program Library 2022, sealevel specific
13
+ ibcDenom: z.string().optional(), // IBC denom for cosmos native token
17
14
  });
18
- exports.WarpRouteConfigSchema = zod_1.z.object({
19
- description: zod_1.z.string().optional(),
20
- timeStamp: zod_1.z.string().optional(),
21
- deployer: zod_1.z.string().optional(),
22
- data: zod_1.z.object({ config: zod_1.z.record(TokenConfigSchema) }),
15
+ export const WarpRouteConfigSchema = z.object({
16
+ description: z.string().optional(),
17
+ timeStamp: z.string().optional(), // can make it non-optional if we make it part of the warp route deployment progress
18
+ deployer: z.string().optional(),
19
+ data: z.object({ config: z.record(TokenConfigSchema) }),
23
20
  });
24
21
  //# sourceMappingURL=warpRouteConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"warpRouteConfig.js","sourceRoot":"","sources":["../../src/metadata/warpRouteConfig.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,gDAAoD;AAEpD,4CAA4C;AAG5C,MAAM,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,YAAY,EAAE,OAAC,CAAC,UAAU,CAAC,oBAAY,CAAC;IACxC,IAAI,EAAE,OAAC,CAAC,UAAU,CAAC,kBAAS,CAAC;IAC7B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,oCAAoC;CACtE,CAAC,CAAC;AAEU,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;CACxD,CAAC,CAAC"}
1
+ {"version":3,"file":"warpRouteConfig.js","sourceRoot":"","sources":["../../src/metadata/warpRouteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,gEAAgE;IACxF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0FAA0F;IAC/H,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,iDAAiD;IACpF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,oCAAoC;CACtE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,oFAAoF;IACtH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;CACxD,CAAC,CAAC"}
@@ -1,12 +1,22 @@
1
+ import { BytesLike, PopulatedTransaction } from 'ethers';
1
2
  import { InterchainAccountRouter } from '@hyperlane-xyz/core';
2
- import { HyperlaneEnvironment } from '../../consts/environments';
3
- import { HyperlaneAddressesMap, HyperlaneContracts } from '../../contracts/types';
4
- import { MultiProvider } from '../../providers/MultiProvider';
5
- import { RouterApp } from '../../router/RouterApps';
6
- import { InterchainAccountFactories } from './contracts';
3
+ import { Address, CallData } from '@hyperlane-xyz/utils';
4
+ import { HyperlaneEnvironment } from '../../consts/environments/index.js';
5
+ import { HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap } from '../../contracts/types.js';
6
+ import { MultiProvider } from '../../providers/MultiProvider.js';
7
+ import { RouterApp } from '../../router/RouterApps.js';
8
+ import { ChainName } from '../../types.js';
9
+ import { InterchainAccountFactories } from './contracts.js';
10
+ import { AccountConfig } from './types.js';
7
11
  export declare class InterchainAccount extends RouterApp<InterchainAccountFactories> {
12
+ constructor(contractsMap: HyperlaneContractsMap<InterchainAccountFactories>, multiProvider: MultiProvider);
8
13
  router(contracts: HyperlaneContracts<InterchainAccountFactories>): InterchainAccountRouter;
9
14
  static fromEnvironment<Env extends HyperlaneEnvironment>(env: Env, multiProvider: MultiProvider): InterchainAccount;
10
15
  static fromAddressesMap(addressesMap: HyperlaneAddressesMap<any>, multiProvider: MultiProvider): InterchainAccount;
16
+ deployAccount(chain: ChainName, config: AccountConfig, routerOverride?: Address, ismOverride?: Address): Promise<Address>;
17
+ getCallRemote(chain: ChainName, destination: ChainName, innerCalls: CallData[], config: AccountConfig, hookMetadata?: BytesLike): Promise<PopulatedTransaction>;
18
+ getAccountConfig(chain: ChainName, account: Address): Promise<AccountConfig>;
19
+ callRemote(chain: ChainName, destination: ChainName, calls: Array<CallData>, config: AccountConfig, hookMetadata?: string): Promise<void>;
11
20
  }
21
+ export declare function deployInterchainAccount(multiProvider: MultiProvider, chain: ChainName, config: AccountConfig): Promise<Address>;
12
22
  //# sourceMappingURL=InterchainAccount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterchainAccount.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,EACL,oBAAoB,EAErB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EACL,0BAA0B,EAE3B,MAAM,aAAa,CAAC;AAErB,qBAAa,iBAAkB,SAAQ,SAAS,CAAC,0BAA0B,CAAC;IAC1E,MAAM,CACJ,SAAS,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,GACxD,uBAAuB;IAI1B,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,iBAAiB;IAcpB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,iBAAiB;CAQrB"}
1
+ {"version":3,"file":"InterchainAccount.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAEpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,OAAO,EACP,QAAQ,EAIT,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,oBAAoB,EAErB,MAAM,oCAAoC,CAAC;AAK5C,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,0BAA0B,EAE3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,qBAAa,iBAAkB,SAAQ,SAAS,CAAC,0BAA0B,CAAC;gBAExE,YAAY,EAAE,qBAAqB,CAAC,0BAA0B,CAAC,EAC/D,aAAa,EAAE,aAAa;IAK9B,MAAM,CACJ,SAAS,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,GACxD,uBAAuB;IAI1B,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,iBAAiB;IAcpB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,iBAAiB;IASd,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,aAAa,EACrB,cAAc,CAAC,EAAE,OAAO,EACxB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,OAAO,CAAC;IAiCb,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,SAAS,EACtB,UAAU,EAAE,QAAQ,EAAE,EACtB,MAAM,EAAE,aAAa,EACrB,YAAY,CAAC,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC;IA4B1B,gBAAgB,CACpB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,aAAa,CAAC;IAcnB,UAAU,CACd,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,SAAS,EACtB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EACtB,MAAM,EAAE,aAAa,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;CAMjB;AAED,wBAAsB,uBAAuB,CAC3C,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,OAAO,CAAC,CAYlB"}
@@ -1,28 +1,86 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InterchainAccount = void 0;
4
- const utils_1 = require("@hyperlane-xyz/utils");
5
- const environments_1 = require("../../consts/environments");
6
- const contracts_1 = require("../../contracts/contracts");
7
- const RouterApps_1 = require("../../router/RouterApps");
8
- const contracts_2 = require("./contracts");
9
- class InterchainAccount extends RouterApps_1.RouterApp {
1
+ import { BigNumber } from 'ethers';
2
+ import { ProtocolType, addressToBytes32, bytes32ToAddress, } from '@hyperlane-xyz/utils';
3
+ import { hyperlaneEnvironments, } from '../../consts/environments/index.js';
4
+ import { appFromAddressesMapHelper, filterChainMapToProtocol, } from '../../contracts/contracts.js';
5
+ import { RouterApp } from '../../router/RouterApps.js';
6
+ import { interchainAccountFactories, } from './contracts.js';
7
+ export class InterchainAccount extends RouterApp {
8
+ constructor(contractsMap, multiProvider) {
9
+ super(contractsMap, multiProvider);
10
+ }
10
11
  router(contracts) {
11
12
  return contracts.interchainAccountRouter;
12
13
  }
13
14
  static fromEnvironment(env, multiProvider) {
14
- const envAddresses = environments_1.hyperlaneEnvironments[env];
15
+ const envAddresses = hyperlaneEnvironments[env];
15
16
  if (!envAddresses) {
16
17
  throw new Error(`No addresses found for ${env}`);
17
18
  }
18
19
  // Filter out non-EVM chains, as interchain accounts are EVM only at the moment.
19
- const ethAddresses = (0, contracts_1.filterChainMapToProtocol)(envAddresses, utils_1.ProtocolType.Ethereum, multiProvider);
20
+ const ethAddresses = filterChainMapToProtocol(envAddresses, ProtocolType.Ethereum, multiProvider);
20
21
  return InterchainAccount.fromAddressesMap(ethAddresses, multiProvider);
21
22
  }
22
23
  static fromAddressesMap(addressesMap, multiProvider) {
23
- const helper = (0, contracts_1.appFromAddressesMapHelper)(addressesMap, contracts_2.interchainAccountFactories, multiProvider);
24
+ const helper = appFromAddressesMapHelper(addressesMap, interchainAccountFactories, multiProvider);
24
25
  return new InterchainAccount(helper.contractsMap, helper.multiProvider);
25
26
  }
27
+ async deployAccount(chain, config, routerOverride, ismOverride) {
28
+ const originDomain = this.multiProvider.tryGetDomainId(config.origin);
29
+ if (!originDomain) {
30
+ throw new Error(`Origin chain (${config.origin}) metadata needed for deploying ICAs ...`);
31
+ }
32
+ const localRouter = this.router(this.contractsMap[chain]);
33
+ const routerAddress = routerOverride ??
34
+ bytes32ToAddress(await localRouter.routers(originDomain));
35
+ const ismAddress = ismOverride ?? bytes32ToAddress(await localRouter.isms(originDomain));
36
+ const account = await localRouter['getLocalInterchainAccount(uint32,address,address,address)'](originDomain, config.owner, routerAddress, ismAddress);
37
+ if ((await this.multiProvider.getProvider(chain).getCode(account)) === '0x') {
38
+ await this.multiProvider.handleTx(chain, localRouter['getDeployedInterchainAccount(uint32,address,address,address)'](originDomain, config.owner, routerAddress, ismAddress));
39
+ this.logger.debug(`Interchain account deployed at ${account}`);
40
+ }
41
+ else {
42
+ this.logger.debug(`Interchain account recovered at ${account}`);
43
+ }
44
+ return account;
45
+ }
46
+ // meant for ICA governance to return the populatedTx
47
+ async getCallRemote(chain, destination, innerCalls, config, hookMetadata) {
48
+ const localRouter = this.router(this.contractsMap[chain]);
49
+ const remoteDomain = this.multiProvider.getDomainId(destination);
50
+ const quote = await localRouter['quoteGasPayment(uint32)'](remoteDomain);
51
+ const remoteRouter = addressToBytes32(config.routerOverride ?? this.routerAddress(destination));
52
+ const remoteIsm = addressToBytes32(config.ismOverride ??
53
+ (await this.router(this.contractsMap[destination]).isms(remoteDomain)));
54
+ const callEncoded = await localRouter.populateTransaction['callRemoteWithOverrides(uint32,bytes32,bytes32,(bytes32,uint256,bytes)[],bytes)'](remoteDomain, remoteRouter, remoteIsm, innerCalls.map((call) => ({
55
+ to: addressToBytes32(call.to),
56
+ value: call.value ?? BigNumber.from('0'),
57
+ data: call.data,
58
+ })), hookMetadata ?? '0x', { value: quote });
59
+ return callEncoded;
60
+ }
61
+ async getAccountConfig(chain, account) {
62
+ const accountOwner = await this.router(this.contractsMap[chain]).accountOwners(account);
63
+ const originChain = this.multiProvider.getChainName(accountOwner.origin);
64
+ return {
65
+ origin: originChain,
66
+ owner: accountOwner.owner,
67
+ localRouter: this.router(this.contractsMap[chain]).address,
68
+ };
69
+ }
70
+ // general helper for different overloaded callRemote functions
71
+ // can override the gasLimit by StandardHookMetadata.overrideGasLimit for optional hookMetadata here
72
+ async callRemote(chain, destination, calls, config, hookMetadata) {
73
+ await this.multiProvider.sendTransaction(chain, this.getCallRemote(chain, destination, calls, config, hookMetadata));
74
+ }
75
+ }
76
+ export async function deployInterchainAccount(multiProvider, chain, config) {
77
+ if (!config.localRouter) {
78
+ throw new Error('localRouter is required for account deployment');
79
+ }
80
+ const addressesMap = {
81
+ [chain]: { interchainAccountRouter: config.localRouter },
82
+ };
83
+ const router = InterchainAccount.fromAddressesMap(addressesMap, multiProvider);
84
+ return router.deployAccount(chain, config);
26
85
  }
27
- exports.InterchainAccount = InterchainAccount;
28
86
  //# sourceMappingURL=InterchainAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterchainAccount.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccount.ts"],"names":[],"mappings":";;;AACA,gDAAoD;AAEpD,4DAGmC;AACnC,yDAGmC;AAMnC,wDAAoD;AAEpD,2CAGqB;AAErB,MAAa,iBAAkB,SAAQ,sBAAqC;IAC1E,MAAM,CACJ,SAAyD;QAEzD,OAAO,SAAS,CAAC,uBAAuB,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAA4B;QAE5B,MAAM,YAAY,GAAG,oCAAqB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;SAClD;QACD,gFAAgF;QAChF,MAAM,YAAY,GAAG,IAAA,oCAAwB,EAC3C,YAAY,EACZ,oBAAY,CAAC,QAAQ,EACrB,aAAa,CACd,CAAC;QACF,OAAO,iBAAiB,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAwC,EACxC,aAA4B;QAE5B,MAAM,MAAM,GAAG,IAAA,qCAAyB,EACtC,YAAY,EACZ,sCAA0B,EAC1B,aAAa,CACd,CAAC;QACF,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IAC1E,CAAC;CACF;AAnCD,8CAmCC"}
1
+ {"version":3,"file":"InterchainAccount.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccount.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { MultiProvider } from '../../providers/MultiProvider';
2
- import { ProxiedRouterChecker } from '../../router/ProxiedRouterChecker';
3
- import { ChainMap } from '../../types';
4
- import { InterchainAccount } from './InterchainAccount';
5
- import { InterchainAccountConfig } from './InterchainAccountDeployer';
6
- import { InterchainAccountFactories } from './contracts';
1
+ import { MultiProvider } from '../../providers/MultiProvider.js';
2
+ import { ProxiedRouterChecker } from '../../router/ProxiedRouterChecker.js';
3
+ import { ChainMap } from '../../types.js';
4
+ import { InterchainAccount } from './InterchainAccount.js';
5
+ import { InterchainAccountConfig } from './InterchainAccountDeployer.js';
6
+ import { InterchainAccountFactories } from './contracts.js';
7
7
  export declare class InterchainAccountChecker extends ProxiedRouterChecker<InterchainAccountFactories, InterchainAccount, InterchainAccountConfig> {
8
8
  constructor(multiProvider: MultiProvider, app: InterchainAccount, configMap: ChainMap<InterchainAccountConfig>);
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InterchainAccountChecker.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEzD,qBAAa,wBAAyB,SAAQ,oBAAoB,CAChE,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,CACxB;gBAEG,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,iBAAiB,EACtB,SAAS,EAAE,QAAQ,CAAC,uBAAuB,CAAC;CAkB/C"}
1
+ {"version":3,"file":"InterchainAccountChecker.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAE5D,qBAAa,wBAAyB,SAAQ,oBAAoB,CAChE,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,CACxB;gBAEG,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,iBAAiB,EACtB,SAAS,EAAE,QAAQ,CAAC,uBAAuB,CAAC;CAkB/C"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InterchainAccountChecker = void 0;
4
- const utils_1 = require("@hyperlane-xyz/utils");
5
- const ProxiedRouterChecker_1 = require("../../router/ProxiedRouterChecker");
6
- class InterchainAccountChecker extends ProxiedRouterChecker_1.ProxiedRouterChecker {
1
+ import { objMap } from '@hyperlane-xyz/utils';
2
+ import { ProxiedRouterChecker } from '../../router/ProxiedRouterChecker.js';
3
+ export class InterchainAccountChecker extends ProxiedRouterChecker {
7
4
  constructor(multiProvider, app, configMap) {
8
5
  // The checker does not expect an ISM in it's config.
9
6
  // Instead, we set the ISM to match the ISM address from the app.
10
- const configMapWithIsm = (0, utils_1.objMap)(configMap, (chain, config) => {
7
+ const configMapWithIsm = objMap(configMap, (chain, config) => {
11
8
  if (config.interchainSecurityModule) {
12
9
  throw new Error('Configuration of ISM address not supported in ICA checker');
13
10
  }
@@ -19,5 +16,4 @@ class InterchainAccountChecker extends ProxiedRouterChecker_1.ProxiedRouterCheck
19
16
  super(multiProvider, app, configMapWithIsm);
20
17
  }
21
18
  }
22
- exports.InterchainAccountChecker = InterchainAccountChecker;
23
19
  //# sourceMappingURL=InterchainAccountChecker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterchainAccountChecker.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountChecker.ts"],"names":[],"mappings":";;;AAAA,gDAA8C;AAG9C,4EAAyE;AAOzE,MAAa,wBAAyB,SAAQ,2CAI7C;IACC,YACE,aAA4B,EAC5B,GAAsB,EACtB,SAA4C;QAE5C,qDAAqD;QACrD,iEAAiE;QACjE,MAAM,gBAAgB,GAAG,IAAA,cAAM,EAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC3D,IAAI,MAAM,CAAC,wBAAwB,EAAE;gBACnC,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;aACH;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,wBAAwB,EACtB,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,OAAO;aACvD,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC9C,CAAC;CACF;AA1BD,4DA0BC"}
1
+ {"version":3,"file":"InterchainAccountChecker.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountChecker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAO5E,MAAM,OAAO,wBAAyB,SAAQ,oBAI7C;IACC,YACE,aAA4B,EAC5B,GAAsB,EACtB,SAA4C;QAE5C,qDAAqD;QACrD,iEAAiE;QACjE,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC3D,IAAI,MAAM,CAAC,wBAAwB,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,wBAAwB,EACtB,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,OAAO;aACvD,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC9C,CAAC;CACF"}
@@ -1,16 +1,19 @@
1
- import { HyperlaneContracts } from '../../contracts/types';
2
- import { ContractVerifier } from '../../deploy/verify/ContractVerifier';
3
- import { MultiProvider } from '../../providers/MultiProvider';
4
- import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer';
5
- import { ProxiedRouterConfig, RouterConfig } from '../../router/types';
6
- import { ChainName } from '../../types';
7
- import { InterchainAccountFactories } from './contracts';
1
+ import { Router } from '@hyperlane-xyz/core';
2
+ import { HyperlaneContracts } from '../../contracts/types.js';
3
+ import { ContractVerifier } from '../../deploy/verify/ContractVerifier.js';
4
+ import { MultiProvider } from '../../providers/MultiProvider.js';
5
+ import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer.js';
6
+ import { ProxiedRouterConfig, RouterConfig } from '../../router/types.js';
7
+ import { ChainName } from '../../types.js';
8
+ import { InterchainAccountFactories } from './contracts.js';
8
9
  export type InterchainAccountConfig = ProxiedRouterConfig;
9
- export declare class InterchainAccountDeployer extends ProxiedRouterDeployer<InterchainAccountConfig, InterchainAccountFactories, 'interchainAccountRouter'> {
10
- readonly routerContractName = "interchainAccountRouter";
10
+ export declare class InterchainAccountDeployer extends ProxiedRouterDeployer<InterchainAccountConfig, InterchainAccountFactories> {
11
11
  constructor(multiProvider: MultiProvider, contractVerifier?: ContractVerifier);
12
- constructorArgs(_: string, config: RouterConfig): Promise<[string]>;
13
- initializeArgs(chain: string, config: RouterConfig): Promise<[string, string, string]>;
12
+ routerContractName(): string;
13
+ routerContractKey<K extends keyof InterchainAccountFactories>(): K;
14
+ router(contracts: HyperlaneContracts<InterchainAccountFactories>): Router;
15
+ constructorArgs<K extends keyof InterchainAccountFactories>(_: string, config: RouterConfig): Promise<Parameters<InterchainAccountFactories[K]['deploy']>>;
16
+ initializeArgs(chain: string, config: RouterConfig): Promise<any>;
14
17
  deployContracts(chain: ChainName, config: InterchainAccountConfig): Promise<HyperlaneContracts<InterchainAccountFactories>>;
15
18
  }
16
19
  //# sourceMappingURL=InterchainAccountDeployer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InterchainAccountDeployer.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,0BAA0B,EAE3B,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE1D,qBAAa,yBAA0B,SAAQ,qBAAqB,CAClE,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,CAC1B;IACC,QAAQ,CAAC,kBAAkB,6BAA6B;gBAGtD,aAAa,EAAE,aAAa,EAC5B,gBAAgB,CAAC,EAAE,gBAAgB;IAO/B,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IAInE,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAS9B,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;CAqB3D"}
1
+ {"version":3,"file":"InterchainAccountDeployer.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,0BAA0B,EAE3B,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE1D,qBAAa,yBAA0B,SAAQ,qBAAqB,CAClE,uBAAuB,EACvB,0BAA0B,CAC3B;gBAEG,aAAa,EAAE,aAAa,EAC5B,gBAAgB,CAAC,EAAE,gBAAgB;IAMrC,kBAAkB,IAAI,MAAM;IAI5B,iBAAiB,CAAC,CAAC,SAAS,MAAM,0BAA0B,KAAK,CAAC;IAIlE,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,GAAG,MAAM;IAInE,eAAe,CAAC,CAAC,SAAS,MAAM,0BAA0B,EAC9D,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAIzD,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;IASjE,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;CAqB3D"}