@hyperlane-xyz/sdk 0.5.4-3 → 1.0.0-beta0

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 (248) hide show
  1. package/package.json +4 -5
  2. package/dist/HyperlaneApp.d.ts +0 -13
  3. package/dist/HyperlaneApp.d.ts.map +0 -1
  4. package/dist/HyperlaneApp.js +0 -25
  5. package/dist/HyperlaneApp.js.map +0 -1
  6. package/dist/consts/chainConnectionConfigs.d.ts +0 -27
  7. package/dist/consts/chainConnectionConfigs.d.ts.map +0 -1
  8. package/dist/consts/chainConnectionConfigs.js +0 -134
  9. package/dist/consts/chainConnectionConfigs.js.map +0 -1
  10. package/dist/consts/chainMetadata.d.ts +0 -44
  11. package/dist/consts/chainMetadata.d.ts.map +0 -1
  12. package/dist/consts/chainMetadata.js +0 -144
  13. package/dist/consts/chainMetadata.js.map +0 -1
  14. package/dist/consts/chains.d.ts +0 -36
  15. package/dist/consts/chains.d.ts.map +0 -1
  16. package/dist/consts/chains.js +0 -50
  17. package/dist/consts/chains.js.map +0 -1
  18. package/dist/consts/environments/index.d.ts +0 -382
  19. package/dist/consts/environments/index.d.ts.map +0 -1
  20. package/dist/consts/environments/index.js +0 -21
  21. package/dist/consts/environments/index.js.map +0 -1
  22. package/dist/consts/environments/mainnet.json +0 -154
  23. package/dist/consts/environments/test.json +0 -59
  24. package/dist/consts/environments/testnet2.json +0 -154
  25. package/dist/consts/metamask.d.ts +0 -17
  26. package/dist/consts/metamask.d.ts.map +0 -1
  27. package/dist/consts/metamask.js +0 -50
  28. package/dist/consts/metamask.js.map +0 -1
  29. package/dist/contracts.d.ts +0 -17
  30. package/dist/contracts.d.ts.map +0 -1
  31. package/dist/contracts.js +0 -61
  32. package/dist/contracts.js.map +0 -1
  33. package/dist/core/HyperlaneCore.d.ts +0 -404
  34. package/dist/core/HyperlaneCore.d.ts.map +0 -1
  35. package/dist/core/HyperlaneCore.js +0 -93
  36. package/dist/core/HyperlaneCore.js.map +0 -1
  37. package/dist/core/HyperlaneCore.test.d.ts +0 -2
  38. package/dist/core/HyperlaneCore.test.d.ts.map +0 -1
  39. package/dist/core/HyperlaneCore.test.js +0 -27
  40. package/dist/core/HyperlaneCore.test.js.map +0 -1
  41. package/dist/core/TestCoreApp.d.ts +0 -21
  42. package/dist/core/TestCoreApp.d.ts.map +0 -1
  43. package/dist/core/TestCoreApp.js +0 -63
  44. package/dist/core/TestCoreApp.js.map +0 -1
  45. package/dist/core/TestCoreDeployer.d.ts +0 -14
  46. package/dist/core/TestCoreDeployer.d.ts.map +0 -1
  47. package/dist/core/TestCoreDeployer.js +0 -63
  48. package/dist/core/TestCoreDeployer.js.map +0 -1
  49. package/dist/core/contracts.d.ts +0 -21
  50. package/dist/core/contracts.d.ts.map +0 -1
  51. package/dist/core/contracts.js +0 -14
  52. package/dist/core/contracts.js.map +0 -1
  53. package/dist/core/events.d.ts +0 -8
  54. package/dist/core/events.d.ts.map +0 -1
  55. package/dist/core/events.js +0 -3
  56. package/dist/core/events.js.map +0 -1
  57. package/dist/core/message.d.ts +0 -146
  58. package/dist/core/message.d.ts.map +0 -1
  59. package/dist/core/message.js +0 -285
  60. package/dist/core/message.js.map +0 -1
  61. package/dist/core/testHyperlaneDeploy.hardhat-test.d.ts +0 -3
  62. package/dist/core/testHyperlaneDeploy.hardhat-test.d.ts.map +0 -1
  63. package/dist/core/testHyperlaneDeploy.hardhat-test.js +0 -66
  64. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +0 -1
  65. package/dist/deploy/HyperlaneAppChecker.d.ts +0 -22
  66. package/dist/deploy/HyperlaneAppChecker.d.ts.map +0 -1
  67. package/dist/deploy/HyperlaneAppChecker.js +0 -84
  68. package/dist/deploy/HyperlaneAppChecker.js.map +0 -1
  69. package/dist/deploy/HyperlaneDeployer.d.ts +0 -45
  70. package/dist/deploy/HyperlaneDeployer.d.ts.map +0 -1
  71. package/dist/deploy/HyperlaneDeployer.js +0 -187
  72. package/dist/deploy/HyperlaneDeployer.js.map +0 -1
  73. package/dist/deploy/core/HyperlaneCoreChecker.d.ts +0 -14
  74. package/dist/deploy/core/HyperlaneCoreChecker.d.ts.map +0 -1
  75. package/dist/deploy/core/HyperlaneCoreChecker.js +0 -128
  76. package/dist/deploy/core/HyperlaneCoreChecker.js.map +0 -1
  77. package/dist/deploy/core/HyperlaneCoreDeployer.d.ts +0 -29
  78. package/dist/deploy/core/HyperlaneCoreDeployer.d.ts.map +0 -1
  79. package/dist/deploy/core/HyperlaneCoreDeployer.js +0 -109
  80. package/dist/deploy/core/HyperlaneCoreDeployer.js.map +0 -1
  81. package/dist/deploy/core/types.d.ts +0 -51
  82. package/dist/deploy/core/types.d.ts.map +0 -1
  83. package/dist/deploy/core/types.js +0 -19
  84. package/dist/deploy/core/types.js.map +0 -1
  85. package/dist/deploy/middleware/LiquidityLayerApp.d.ts +0 -26
  86. package/dist/deploy/middleware/LiquidityLayerApp.d.ts.map +0 -1
  87. package/dist/deploy/middleware/LiquidityLayerApp.js +0 -115
  88. package/dist/deploy/middleware/LiquidityLayerApp.js.map +0 -1
  89. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts +0 -33
  90. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts.map +0 -1
  91. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js +0 -93
  92. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js.map +0 -1
  93. package/dist/deploy/middleware/deploy.d.ts +0 -21
  94. package/dist/deploy/middleware/deploy.d.ts.map +0 -1
  95. package/dist/deploy/middleware/deploy.js +0 -62
  96. package/dist/deploy/middleware/deploy.js.map +0 -1
  97. package/dist/deploy/proxy.d.ts +0 -17
  98. package/dist/deploy/proxy.d.ts.map +0 -1
  99. package/dist/deploy/proxy.js +0 -35
  100. package/dist/deploy/proxy.js.map +0 -1
  101. package/dist/deploy/router/HyperlaneRouterChecker.d.ts +0 -13
  102. package/dist/deploy/router/HyperlaneRouterChecker.d.ts.map +0 -1
  103. package/dist/deploy/router/HyperlaneRouterChecker.js +0 -44
  104. package/dist/deploy/router/HyperlaneRouterChecker.js.map +0 -1
  105. package/dist/deploy/router/HyperlaneRouterDeployer.d.ts +0 -13
  106. package/dist/deploy/router/HyperlaneRouterDeployer.d.ts.map +0 -1
  107. package/dist/deploy/router/HyperlaneRouterDeployer.js +0 -110
  108. package/dist/deploy/router/HyperlaneRouterDeployer.js.map +0 -1
  109. package/dist/deploy/router/types.d.ts +0 -7
  110. package/dist/deploy/router/types.d.ts.map +0 -1
  111. package/dist/deploy/router/types.js +0 -3
  112. package/dist/deploy/router/types.js.map +0 -1
  113. package/dist/deploy/types.d.ts +0 -23
  114. package/dist/deploy/types.d.ts.map +0 -1
  115. package/dist/deploy/types.js +0 -9
  116. package/dist/deploy/types.js.map +0 -1
  117. package/dist/deploy/utils.d.ts +0 -10
  118. package/dist/deploy/utils.d.ts.map +0 -1
  119. package/dist/deploy/utils.js +0 -38
  120. package/dist/deploy/utils.js.map +0 -1
  121. package/dist/deploy/verify/ContractVerifier.d.ts +0 -19
  122. package/dist/deploy/verify/ContractVerifier.d.ts.map +0 -1
  123. package/dist/deploy/verify/ContractVerifier.js +0 -135
  124. package/dist/deploy/verify/ContractVerifier.js.map +0 -1
  125. package/dist/deploy/verify/types.d.ts +0 -14
  126. package/dist/deploy/verify/types.d.ts.map +0 -1
  127. package/dist/deploy/verify/types.js +0 -3
  128. package/dist/deploy/verify/types.js.map +0 -1
  129. package/dist/deploy/verify/utils.d.ts +0 -6
  130. package/dist/deploy/verify/utils.d.ts.map +0 -1
  131. package/dist/deploy/verify/utils.js +0 -25
  132. package/dist/deploy/verify/utils.js.map +0 -1
  133. package/dist/domains.d.ts +0 -4
  134. package/dist/domains.d.ts.map +0 -1
  135. package/dist/domains.js +0 -12
  136. package/dist/domains.js.map +0 -1
  137. package/dist/events.d.ts +0 -25
  138. package/dist/events.d.ts.map +0 -1
  139. package/dist/events.js +0 -161
  140. package/dist/events.js.map +0 -1
  141. package/dist/gas/calculator.d.ts +0 -134
  142. package/dist/gas/calculator.d.ts.map +0 -1
  143. package/dist/gas/calculator.js +0 -237
  144. package/dist/gas/calculator.js.map +0 -1
  145. package/dist/gas/calculator.test.d.ts +0 -2
  146. package/dist/gas/calculator.test.d.ts.map +0 -1
  147. package/dist/gas/calculator.test.js +0 -208
  148. package/dist/gas/calculator.test.js.map +0 -1
  149. package/dist/gas/token-prices.d.ts +0 -34
  150. package/dist/gas/token-prices.d.ts.map +0 -1
  151. package/dist/gas/token-prices.js +0 -103
  152. package/dist/gas/token-prices.js.map +0 -1
  153. package/dist/gas/token-prices.test.d.ts +0 -2
  154. package/dist/gas/token-prices.test.d.ts.map +0 -1
  155. package/dist/gas/token-prices.test.js +0 -46
  156. package/dist/gas/token-prices.test.js.map +0 -1
  157. package/dist/index.d.ts +0 -46
  158. package/dist/index.d.ts.map +0 -1
  159. package/dist/index.js +0 -133
  160. package/dist/index.js.map +0 -1
  161. package/dist/middleware/accounts.hardhat-test.d.ts +0 -2
  162. package/dist/middleware/accounts.hardhat-test.d.ts.map +0 -1
  163. package/dist/middleware/accounts.hardhat-test.js +0 -61
  164. package/dist/middleware/accounts.hardhat-test.js.map +0 -1
  165. package/dist/middleware/liquidity-layer.hardhat-test.d.ts +0 -2
  166. package/dist/middleware/liquidity-layer.hardhat-test.d.ts.map +0 -1
  167. package/dist/middleware/liquidity-layer.hardhat-test.js +0 -89
  168. package/dist/middleware/liquidity-layer.hardhat-test.js.map +0 -1
  169. package/dist/middleware/queries.hardhat-test.d.ts +0 -2
  170. package/dist/middleware/queries.hardhat-test.d.ts.map +0 -1
  171. package/dist/middleware/queries.hardhat-test.js +0 -69
  172. package/dist/middleware/queries.hardhat-test.js.map +0 -1
  173. package/dist/middleware.d.ts +0 -16
  174. package/dist/middleware.d.ts.map +0 -1
  175. package/dist/middleware.js +0 -15
  176. package/dist/middleware.js.map +0 -1
  177. package/dist/providers/ChainConnection.d.ts +0 -22
  178. package/dist/providers/ChainConnection.d.ts.map +0 -1
  179. package/dist/providers/ChainConnection.js +0 -67
  180. package/dist/providers/ChainConnection.js.map +0 -1
  181. package/dist/providers/MultiProvider.d.ts +0 -56
  182. package/dist/providers/MultiProvider.d.ts.map +0 -1
  183. package/dist/providers/MultiProvider.js +0 -111
  184. package/dist/providers/MultiProvider.js.map +0 -1
  185. package/dist/providers/RetryProvider.d.ts +0 -18
  186. package/dist/providers/RetryProvider.d.ts.map +0 -1
  187. package/dist/providers/RetryProvider.js +0 -49
  188. package/dist/providers/RetryProvider.js.map +0 -1
  189. package/dist/proxy.d.ts +0 -23
  190. package/dist/proxy.d.ts.map +0 -1
  191. package/dist/proxy.js +0 -30
  192. package/dist/proxy.js.map +0 -1
  193. package/dist/router.d.ts +0 -20
  194. package/dist/router.d.ts.map +0 -1
  195. package/dist/router.js +0 -3
  196. package/dist/router.js.map +0 -1
  197. package/dist/test/envSubsetDeployer/app.d.ts +0 -36
  198. package/dist/test/envSubsetDeployer/app.d.ts.map +0 -1
  199. package/dist/test/envSubsetDeployer/app.js +0 -77
  200. package/dist/test/envSubsetDeployer/app.js.map +0 -1
  201. package/dist/test/envSubsetDeployer/check-single-chain.d.ts +0 -2
  202. package/dist/test/envSubsetDeployer/check-single-chain.d.ts.map +0 -1
  203. package/dist/test/envSubsetDeployer/check-single-chain.js +0 -49
  204. package/dist/test/envSubsetDeployer/check-single-chain.js.map +0 -1
  205. package/dist/test/envSubsetDeployer/deploy-single-chain.d.ts +0 -2
  206. package/dist/test/envSubsetDeployer/deploy-single-chain.d.ts.map +0 -1
  207. package/dist/test/envSubsetDeployer/deploy-single-chain.js +0 -42
  208. package/dist/test/envSubsetDeployer/deploy-single-chain.js.map +0 -1
  209. package/dist/test/envSubsetDeployer/deploy.hardhat-test.d.ts +0 -2
  210. package/dist/test/envSubsetDeployer/deploy.hardhat-test.d.ts.map +0 -1
  211. package/dist/test/envSubsetDeployer/deploy.hardhat-test.js +0 -83
  212. package/dist/test/envSubsetDeployer/deploy.hardhat-test.js.map +0 -1
  213. package/dist/test/envSubsetDeployer/utils.d.ts +0 -7
  214. package/dist/test/envSubsetDeployer/utils.d.ts.map +0 -1
  215. package/dist/test/envSubsetDeployer/utils.js +0 -25
  216. package/dist/test/envSubsetDeployer/utils.js.map +0 -1
  217. package/dist/test/testUtils.d.ts +0 -31
  218. package/dist/test/testUtils.d.ts.map +0 -1
  219. package/dist/test/testUtils.js +0 -106
  220. package/dist/test/testUtils.js.map +0 -1
  221. package/dist/types.d.ts +0 -21
  222. package/dist/types.d.ts.map +0 -1
  223. package/dist/types.js +0 -3
  224. package/dist/types.js.map +0 -1
  225. package/dist/utils/MultiGeneric.d.ts +0 -27
  226. package/dist/utils/MultiGeneric.d.ts.map +0 -1
  227. package/dist/utils/MultiGeneric.js +0 -70
  228. package/dist/utils/MultiGeneric.js.map +0 -1
  229. package/dist/utils/ids.d.ts +0 -20
  230. package/dist/utils/ids.d.ts.map +0 -1
  231. package/dist/utils/ids.js +0 -47
  232. package/dist/utils/ids.js.map +0 -1
  233. package/dist/utils/number.d.ts +0 -32
  234. package/dist/utils/number.d.ts.map +0 -1
  235. package/dist/utils/number.js +0 -59
  236. package/dist/utils/number.js.map +0 -1
  237. package/dist/utils/objects.d.ts +0 -7
  238. package/dist/utils/objects.d.ts.map +0 -1
  239. package/dist/utils/objects.js +0 -29
  240. package/dist/utils/objects.js.map +0 -1
  241. package/dist/utils/time.d.ts +0 -8
  242. package/dist/utils/time.d.ts.map +0 -1
  243. package/dist/utils/time.js +0 -15
  244. package/dist/utils/time.js.map +0 -1
  245. package/dist/utils/utils.test.d.ts +0 -2
  246. package/dist/utils/utils.test.d.ts.map +0 -1
  247. package/dist/utils/utils.test.js +0 -41
  248. package/dist/utils/utils.test.js.map +0 -1
@@ -1,29 +0,0 @@
1
- import { ethers } from 'ethers';
2
- import { Mailbox, MultisigIsm } from '@hyperlane-xyz/core';
3
- import type { types } from '@hyperlane-xyz/utils';
4
- import { HyperlaneCore } from '../../core/HyperlaneCore';
5
- import { CoreContracts, coreFactories } from '../../core/contracts';
6
- import { ChainConnection } from '../../providers/ChainConnection';
7
- import { MultiProvider } from '../../providers/MultiProvider';
8
- import { BeaconProxyAddresses, ProxiedContract } from '../../proxy';
9
- import { ChainMap, ChainName } from '../../types';
10
- import { HyperlaneDeployer } from '../HyperlaneDeployer';
11
- import { CoreConfig } from './types';
12
- export declare class HyperlaneCoreDeployer<Chain extends ChainName> extends HyperlaneDeployer<Chain, CoreConfig, CoreContracts, typeof coreFactories> {
13
- startingBlockNumbers: ChainMap<Chain, number | undefined>;
14
- constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, CoreConfig>, factoriesOverride?: {
15
- interchainAccountRouter: import("@hyperlane-xyz/core").InterchainAccountRouter__factory;
16
- interchainQueryRouter: import("@hyperlane-xyz/core").InterchainQueryRouter__factory;
17
- create2Factory: import("@hyperlane-xyz/core").Create2Factory__factory;
18
- upgradeBeaconController: import("@hyperlane-xyz/core").UpgradeBeaconController__factory;
19
- interchainGasPaymaster: import("@hyperlane-xyz/core").InterchainGasPaymaster__factory;
20
- multisigIsm: import("@hyperlane-xyz/core").MultisigIsm__factory;
21
- mailbox: import("@hyperlane-xyz/core").Mailbox__factory;
22
- });
23
- deployMailbox<LocalChain extends Chain>(chain: LocalChain, defaultIsmAddress: types.Address, ubcAddress: types.Address): Promise<ProxiedContract<Mailbox, BeaconProxyAddresses>>;
24
- deployMultisigIsm<LocalChain extends Chain>(chain: LocalChain): Promise<MultisigIsm>;
25
- deployContracts<LocalChain extends Chain>(chain: LocalChain, config: CoreConfig): Promise<CoreContracts>;
26
- static transferOwnership<CoreChains extends ChainName>(core: HyperlaneCore<CoreChains>, owners: ChainMap<CoreChains, types.Address>, multiProvider: MultiProvider<CoreChains>): Promise<ChainMap<CoreChains, ethers.ContractReceipt[]>>;
27
- static transferOwnershipOfChain(coreContracts: CoreContracts, owner: types.Address, chainConnection: ChainConnection): Promise<ethers.ContractReceipt[]>;
28
- }
29
- //# sourceMappingURL=HyperlaneCoreDeployer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HyperlaneCoreDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAW,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,qBAAa,qBAAqB,CAChC,KAAK,SAAS,SAAS,CACvB,SAAQ,iBAAiB,CACzB,KAAK,EACL,UAAU,EACV,aAAa,EACb,OAAO,aAAa,CACrB;IACC,oBAAoB,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;gBAGxD,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,EACtC,iBAAiB;;;;;;;;KAAgB;IAQ7B,aAAa,CAAC,UAAU,SAAS,KAAK,EAC1C,KAAK,EAAE,UAAU,EACjB,iBAAiB,EAAE,KAAK,CAAC,OAAO,EAChC,UAAU,EAAE,KAAK,CAAC,OAAO,GACxB,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IAapD,iBAAiB,CAAC,UAAU,SAAS,KAAK,EAC9C,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,WAAW,CAAC;IAiCjB,eAAe,CAAC,UAAU,SAAS,KAAK,EAC5C,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,aAAa,CAAC;WAyCZ,iBAAiB,CAAC,UAAU,SAAS,SAAS,EACzD,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,EAC/B,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,EAC3C,aAAa,EAAE,aAAa,CAAC,UAAU,CAAC,GACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;WAY7C,wBAAwB,CACnC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,KAAK,CAAC,OAAO,EACpB,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;CAcrC"}
@@ -1,109 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.HyperlaneCoreDeployer = void 0;
16
- const debug_1 = __importDefault(require("debug"));
17
- const chainMetadata_1 = require("../../consts/chainMetadata");
18
- const contracts_1 = require("../../core/contracts");
19
- const domains_1 = require("../../domains");
20
- const objects_1 = require("../../utils/objects");
21
- const HyperlaneDeployer_1 = require("../HyperlaneDeployer");
22
- class HyperlaneCoreDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
23
- constructor(multiProvider, configMap, factoriesOverride = contracts_1.coreFactories) {
24
- super(multiProvider, configMap, factoriesOverride, {
25
- logger: (0, debug_1.default)('hyperlane:CoreDeployer'),
26
- });
27
- this.startingBlockNumbers = (0, objects_1.objMap)(configMap, () => undefined);
28
- }
29
- deployMailbox(chain, defaultIsmAddress, ubcAddress) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- const domain = chainMetadata_1.chainMetadata[chain].id;
32
- const mailbox = yield this.deployProxiedContract(chain, 'mailbox', [domain], ubcAddress, [defaultIsmAddress]);
33
- return mailbox;
34
- });
35
- }
36
- deployMultisigIsm(chain) {
37
- const _super = Object.create(null, {
38
- runIfOwner: { get: () => super.runIfOwner }
39
- });
40
- return __awaiter(this, void 0, void 0, function* () {
41
- const multisigIsm = yield this.deployContract(chain, 'multisigIsm', []);
42
- const configChains = Object.keys(this.configMap);
43
- const remotes = this.multiProvider
44
- .intersect(configChains, false)
45
- .multiProvider.remoteChains(chain);
46
- yield _super.runIfOwner.call(this, chain, multisigIsm, () => __awaiter(this, void 0, void 0, function* () {
47
- // TODO: Remove extraneous validators
48
- for (const remote of remotes) {
49
- const multisigIsmConfig = this.configMap[remote].multisigIsm;
50
- const domain = domains_1.ChainNameToDomainId[remote];
51
- for (const validator of multisigIsmConfig.validators) {
52
- const isValidator = yield multisigIsm.isEnrolled(domain, validator);
53
- if (!isValidator) {
54
- this.logger(`Enrolling ${validator} as ${remote} validator on ${chain}`);
55
- yield multisigIsm.enrollValidator(domain, validator);
56
- }
57
- }
58
- const threshold = yield multisigIsm.threshold(domain);
59
- if (!threshold.eq(multisigIsmConfig.threshold)) {
60
- this.logger(`Setting ${remote} threshold to ${multisigIsmConfig.threshold} on ${chain}`);
61
- yield multisigIsm.setThreshold(domain, multisigIsmConfig.threshold);
62
- }
63
- }
64
- }));
65
- return multisigIsm;
66
- });
67
- }
68
- deployContracts(chain, config) {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- if (config.remove) {
71
- // skip deploying to chains configured to be removed
72
- return undefined;
73
- }
74
- const dc = this.multiProvider.getChainConnection(chain);
75
- const provider = dc.provider;
76
- const startingBlockNumber = yield provider.getBlockNumber();
77
- this.startingBlockNumbers[chain] = startingBlockNumber;
78
- const upgradeBeaconController = yield this.deployContract(chain, 'upgradeBeaconController', []);
79
- const interchainGasPaymaster = yield this.deployProxiedContract(chain, 'interchainGasPaymaster', [], upgradeBeaconController.address, []);
80
- const multisigIsm = yield this.deployMultisigIsm(chain);
81
- const mailbox = yield this.deployMailbox(chain, multisigIsm.address, upgradeBeaconController.address);
82
- return {
83
- upgradeBeaconController,
84
- interchainGasPaymaster,
85
- mailbox,
86
- multisigIsm,
87
- };
88
- });
89
- }
90
- static transferOwnership(core, owners, multiProvider) {
91
- return __awaiter(this, void 0, void 0, function* () {
92
- return (0, objects_1.promiseObjAll)((0, objects_1.objMap)(core.contractsMap, (chain, coreContracts) => __awaiter(this, void 0, void 0, function* () {
93
- return HyperlaneCoreDeployer.transferOwnershipOfChain(coreContracts, owners[chain], multiProvider.getChainConnection(chain));
94
- })));
95
- });
96
- }
97
- static transferOwnershipOfChain(coreContracts, owner, chainConnection) {
98
- return __awaiter(this, void 0, void 0, function* () {
99
- const ownables = [
100
- coreContracts.mailbox.contract,
101
- coreContracts.multisigIsm,
102
- coreContracts.upgradeBeaconController,
103
- ];
104
- return Promise.all(ownables.map((ownable) => chainConnection.handleTx(ownable.transferOwnership(owner, chainConnection.overrides))));
105
- });
106
- }
107
- }
108
- exports.HyperlaneCoreDeployer = HyperlaneCoreDeployer;
109
- //# sourceMappingURL=HyperlaneCoreDeployer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HyperlaneCoreDeployer.js","sourceRoot":"","sources":["../../../src/deploy/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- import { Mailbox, MultisigIsm } from '@hyperlane-xyz/core';
2
- import type { types } from '@hyperlane-xyz/utils';
3
- import { ChainName } from '../../types';
4
- import type { CheckerViolation } from '../types';
5
- export declare type MultisigIsmConfig = {
6
- validators: Array<types.Address>;
7
- threshold: number;
8
- };
9
- export declare type CoreConfig = {
10
- multisigIsm: MultisigIsmConfig;
11
- owner?: types.Address;
12
- remove?: boolean;
13
- };
14
- export declare enum CoreViolationType {
15
- MultisigIsm = "MultisigIsm",
16
- Mailbox = "Mailbox",
17
- ConnectionManager = "ConnectionManager"
18
- }
19
- export declare enum MultisigIsmViolationType {
20
- EnrolledValidators = "EnrolledValidators",
21
- Threshold = "Threshold"
22
- }
23
- export declare enum MailboxViolationType {
24
- DefaultIsm = "DefaultIsm"
25
- }
26
- export interface MailboxViolation extends CheckerViolation {
27
- type: CoreViolationType.Mailbox;
28
- contract: Mailbox;
29
- mailboxType: MailboxViolationType;
30
- }
31
- export interface MailboxMultisigIsmViolation extends MailboxViolation {
32
- actual: types.Address;
33
- expected: types.Address;
34
- }
35
- export interface MultisigIsmViolation extends CheckerViolation {
36
- type: CoreViolationType.MultisigIsm;
37
- contract: MultisigIsm;
38
- subType: MultisigIsmViolationType;
39
- remote: ChainName;
40
- }
41
- export interface EnrolledValidatorsViolation extends MultisigIsmViolation {
42
- subType: MultisigIsmViolationType.EnrolledValidators;
43
- actual: Set<types.Address>;
44
- expected: Set<types.Address>;
45
- }
46
- export interface ThresholdViolation extends MultisigIsmViolation {
47
- subType: MultisigIsmViolationType.Threshold;
48
- actual: number;
49
- expected: number;
50
- }
51
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/deploy/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,oBAAY,iBAAiB,GAAG;IAC9B,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;CACxC;AAED,oBAAY,wBAAwB;IAClC,kBAAkB,uBAAuB;IACzC,SAAS,cAAc;CACxB;AAED,oBAAY,oBAAoB;IAC9B,UAAU,eAAe;CAC1B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC;IACpC,QAAQ,EAAE,WAAW,CAAC;IACtB,OAAO,EAAE,wBAAwB,CAAC;IAClC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,2BAA4B,SAAQ,oBAAoB;IACvE,OAAO,EAAE,wBAAwB,CAAC,kBAAkB,CAAC;IACrD,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAmB,SAAQ,oBAAoB;IAC9D,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB"}
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MailboxViolationType = exports.MultisigIsmViolationType = exports.CoreViolationType = void 0;
4
- var CoreViolationType;
5
- (function (CoreViolationType) {
6
- CoreViolationType["MultisigIsm"] = "MultisigIsm";
7
- CoreViolationType["Mailbox"] = "Mailbox";
8
- CoreViolationType["ConnectionManager"] = "ConnectionManager";
9
- })(CoreViolationType = exports.CoreViolationType || (exports.CoreViolationType = {}));
10
- var MultisigIsmViolationType;
11
- (function (MultisigIsmViolationType) {
12
- MultisigIsmViolationType["EnrolledValidators"] = "EnrolledValidators";
13
- MultisigIsmViolationType["Threshold"] = "Threshold";
14
- })(MultisigIsmViolationType = exports.MultisigIsmViolationType || (exports.MultisigIsmViolationType = {}));
15
- var MailboxViolationType;
16
- (function (MailboxViolationType) {
17
- MailboxViolationType["DefaultIsm"] = "DefaultIsm";
18
- })(MailboxViolationType = exports.MailboxViolationType || (exports.MailboxViolationType = {}));
19
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/deploy/core/types.ts"],"names":[],"mappings":";;;AAiBA,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,gDAA2B,CAAA;IAC3B,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;AACzC,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAED,IAAY,wBAGX;AAHD,WAAY,wBAAwB;IAClC,qEAAyC,CAAA;IACzC,mDAAuB,CAAA;AACzB,CAAC,EAHW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAGnC;AAED,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,iDAAyB,CAAA;AAC3B,CAAC,EAFW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAE/B"}
@@ -1,26 +0,0 @@
1
- import { HyperlaneApp } from '../../HyperlaneApp';
2
- import { LiquidityLayerContracts } from '../../middleware';
3
- import { MultiProvider } from '../../providers/MultiProvider';
4
- import { ChainMap, ChainName } from '../../types';
5
- import { BridgeAdapterConfig, CircleBridgeAdapterConfig } from './LiquidityLayerRouterDeployer';
6
- interface CircleBridgeMessage<Chain> {
7
- chain: Chain;
8
- remoteChain: Chain;
9
- txHash: string;
10
- message: string;
11
- nonce: number;
12
- domain: number;
13
- nonceHash: string;
14
- }
15
- export declare class LiquidityLayerApp<Chain extends ChainName = ChainName> extends HyperlaneApp<LiquidityLayerContracts, Chain> {
16
- readonly contractsMap: ChainMap<Chain, LiquidityLayerContracts>;
17
- readonly multiProvider: MultiProvider<Chain>;
18
- readonly bridgeAdapterConfigs: ChainMap<Chain, BridgeAdapterConfig[]>;
19
- constructor(contractsMap: ChainMap<Chain, LiquidityLayerContracts>, multiProvider: MultiProvider<Chain>, bridgeAdapterConfigs: ChainMap<Chain, BridgeAdapterConfig[]>);
20
- circleBridgeAdapterConfig(): ChainMap<Chain, CircleBridgeAdapterConfig>;
21
- fetchCircleMessageTransactions(chain: Chain): Promise<string[]>;
22
- parseCircleMessages(chain: Chain, txHash: string): Promise<CircleBridgeMessage<Chain>[]>;
23
- attemptCircleAttestationSubmission(message: CircleBridgeMessage<Chain>): Promise<void>;
24
- }
25
- export {};
26
- //# sourceMappingURL=LiquidityLayerApp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LiquidityLayerApp.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,EACL,mBAAmB,EAEnB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC;AAUxC,UAAU,mBAAmB,CAAC,KAAK;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,KAAK,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,qBAAa,iBAAiB,CAC5B,KAAK,SAAS,SAAS,GAAG,SAAS,CACnC,SAAQ,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC;aAElC,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;aACtD,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC;aACnC,oBAAoB,EAAE,QAAQ,CAC5C,KAAK,EACL,mBAAmB,EAAE,CACtB;gBALe,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,EACtD,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,oBAAoB,EAAE,QAAQ,CAC5C,KAAK,EACL,mBAAmB,EAAE,CACtB;IAKH,yBAAyB,IAAI,QAAQ,CAAC,KAAK,EAAE,yBAAyB,CAAC;IAUjE,8BAA8B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAc/D,mBAAmB,CACvB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;IAyClC,kCAAkC,CACtC,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC;CAuCjB"}
@@ -1,115 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.LiquidityLayerApp = void 0;
16
- const cross_fetch_1 = __importDefault(require("cross-fetch"));
17
- const ethers_1 = require("ethers");
18
- const core_1 = require("@hyperlane-xyz/core");
19
- const HyperlaneApp_1 = require("../../HyperlaneApp");
20
- const chains_1 = require("../../consts/chains");
21
- const objects_1 = require("../../utils/objects");
22
- const LiquidityLayerRouterDeployer_1 = require("./LiquidityLayerRouterDeployer");
23
- const CircleBridgeInterface = core_1.ICircleBridge__factory.createInterface();
24
- const CircleBridgeAdapterInterface = core_1.CircleBridgeAdapter__factory.createInterface();
25
- const BridgedTokenTopic = CircleBridgeAdapterInterface.getEventTopic(CircleBridgeAdapterInterface.getEvent('BridgedToken'));
26
- class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
27
- constructor(contractsMap, multiProvider, bridgeAdapterConfigs) {
28
- super(contractsMap, multiProvider);
29
- this.contractsMap = contractsMap;
30
- this.multiProvider = multiProvider;
31
- this.bridgeAdapterConfigs = bridgeAdapterConfigs;
32
- }
33
- circleBridgeAdapterConfig() {
34
- return (0, objects_1.objMap)(this.bridgeAdapterConfigs, (_chain, config) => config.find((_) => _.type === LiquidityLayerRouterDeployer_1.BridgeAdapterType.Circle));
35
- }
36
- fetchCircleMessageTransactions(chain) {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- const cc = this.multiProvider.getChainConnection(chain);
39
- const params = new URLSearchParams({
40
- module: 'logs',
41
- action: 'getLogs',
42
- address: this.getContracts(chain).circleBridgeAdapter.address,
43
- topic0: BridgedTokenTopic,
44
- });
45
- const req = yield (0, cross_fetch_1.default)(`${cc.getApiUrl()}?${params}`);
46
- const response = yield req.json();
47
- return response.result.map((_) => _.transactionHash).flat();
48
- });
49
- }
50
- parseCircleMessages(chain, txHash) {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- const connection = this.multiProvider.getChainConnection(chain);
53
- const receipt = yield connection.provider.getTransactionReceipt(txHash);
54
- const matchingLogs = receipt.logs
55
- .map((_) => {
56
- try {
57
- return [CircleBridgeInterface.parseLog(_)];
58
- }
59
- catch (_a) {
60
- try {
61
- return [CircleBridgeAdapterInterface.parseLog(_)];
62
- }
63
- catch (_b) {
64
- return [];
65
- }
66
- }
67
- })
68
- .flat();
69
- if (matchingLogs.length == 0)
70
- return [];
71
- const message = matchingLogs.find((_) => _.name === 'MessageSent').args
72
- .message;
73
- const nonce = matchingLogs.find((_) => _.name === 'BridgedToken').args
74
- .nonce;
75
- const remoteChain = message.chain === chains_1.Chains.fuji ? chains_1.Chains.goerli : chains_1.Chains.fuji;
76
- return [
77
- {
78
- chain,
79
- // @ts-ignore
80
- remoteChain,
81
- txHash,
82
- message,
83
- nonce,
84
- domain: 0,
85
- nonceHash: ethers_1.ethers.utils.solidityKeccak256(['uint32', 'uint256'], [0, nonce]),
86
- },
87
- ];
88
- });
89
- }
90
- attemptCircleAttestationSubmission(message) {
91
- return __awaiter(this, void 0, void 0, function* () {
92
- const connection = this.multiProvider.getChainConnection(message.remoteChain);
93
- const transmitter = core_1.ICircleMessageTransmitter__factory.connect(this.circleBridgeAdapterConfig()[message.remoteChain]
94
- .messageTransmitterAddress, connection.signer);
95
- const alreadyProcessed = yield transmitter.usedNonces(message.nonceHash);
96
- if (alreadyProcessed) {
97
- console.log(`Message sent on ${message.txHash} was already processed`);
98
- return;
99
- }
100
- const messageHash = ethers_1.ethers.utils.keccak256(message.message);
101
- const attestationsB = yield (0, cross_fetch_1.default)(`https://iris-api-sandbox.circle.com/attestations/${messageHash}`);
102
- const attestations = yield attestationsB.json();
103
- if (attestations.status !== 'complete') {
104
- console.log(`Attestations not available for message nonce ${message.nonce} on ${message.txHash}`);
105
- return;
106
- }
107
- console.log(`Ready to submit attestations for message ${message.nonce}`);
108
- const tx = yield transmitter.receiveMessage(message.message, attestations.attestation);
109
- console.log(`Submitted attestations in ${yield connection.getTxUrl(tx)}`);
110
- yield connection.handleTx(tx);
111
- });
112
- }
113
- }
114
- exports.LiquidityLayerApp = LiquidityLayerApp;
115
- //# sourceMappingURL=LiquidityLayerApp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { CircleBridgeAdapter, LiquidityLayerRouter } from '@hyperlane-xyz/core';
2
- import { HyperlaneCore } from '../../core/HyperlaneCore';
3
- import { LiquidityLayerContracts, LiquidityLayerFactories } from '../../middleware';
4
- import { MultiProvider } from '../../providers/MultiProvider';
5
- import { ChainMap, ChainName } from '../../types';
6
- import { HyperlaneRouterDeployer } from '../router/HyperlaneRouterDeployer';
7
- import { RouterConfig } from '../router/types';
8
- export declare enum BridgeAdapterType {
9
- Circle = "Circle"
10
- }
11
- export interface CircleBridgeAdapterConfig {
12
- type: BridgeAdapterType.Circle;
13
- circleBridgeAddress: string;
14
- messageTransmitterAddress: string;
15
- usdcAddress: string;
16
- circleDomainMapping: {
17
- hyperlaneDomain: number;
18
- circleDomain: number;
19
- }[];
20
- }
21
- export declare type BridgeAdapterConfig = CircleBridgeAdapterConfig;
22
- export declare type LiquidityLayerConfig = RouterConfig & {
23
- bridgeAdapterConfigs: BridgeAdapterConfig[];
24
- };
25
- export declare class LiquidityLayerDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, LiquidityLayerConfig, LiquidityLayerContracts, LiquidityLayerFactories> {
26
- protected core: HyperlaneCore<Chain>;
27
- protected create2salt: string;
28
- constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, LiquidityLayerConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
29
- enrollRemoteRouters(contractsMap: ChainMap<Chain, LiquidityLayerContracts>): Promise<void>;
30
- deployContracts(chain: Chain, config: LiquidityLayerConfig): Promise<LiquidityLayerContracts>;
31
- deployCircleBridgeAdapter(chain: Chain, adapterConfig: CircleBridgeAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<CircleBridgeAdapter>;
32
- }
33
- //# sourceMappingURL=LiquidityLayerRouterDeployer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EAEnB,oBAAoB,EAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,iBAAiB;IAC3B,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yBAAyB,EAAE,MAAM,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;CACL;AAED,oBAAY,mBAAmB,GAAG,yBAAyB,CAAC;AAE5D,oBAAY,oBAAoB,GAAG,YAAY,GAAG;IAChD,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;CAC7C,CAAC;AAEF,qBAAa,sBAAsB,CACjC,KAAK,SAAS,SAAS,CACvB,SAAQ,uBAAuB,CAC/B,KAAK,EACL,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,CACxB;IAIG,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IACpC,SAAS,CAAC,WAAW;gBAHrB,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC,EACtC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAC1B,WAAW,SAA+B;IAKhD,mBAAmB,CACvB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC;IAcV,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,uBAAuB,CAAC;IA+B7B,yBAAyB,CAC7B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,yBAAyB,EACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;CA2DhC"}
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.LiquidityLayerDeployer = exports.BridgeAdapterType = void 0;
13
- const ethers_1 = require("ethers");
14
- const core_1 = require("@hyperlane-xyz/core");
15
- const middleware_1 = require("../../middleware");
16
- const objects_1 = require("../../utils/objects");
17
- const HyperlaneRouterDeployer_1 = require("../router/HyperlaneRouterDeployer");
18
- var BridgeAdapterType;
19
- (function (BridgeAdapterType) {
20
- BridgeAdapterType["Circle"] = "Circle";
21
- })(BridgeAdapterType = exports.BridgeAdapterType || (exports.BridgeAdapterType = {}));
22
- class LiquidityLayerDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDeployer {
23
- constructor(multiProvider, configMap, core, create2salt = 'LiquidityLayerDeployerSalt') {
24
- super(multiProvider, configMap, middleware_1.liquidityLayerFactories, {});
25
- this.core = core;
26
- this.create2salt = create2salt;
27
- }
28
- enrollRemoteRouters(contractsMap) {
29
- const _super = Object.create(null, {
30
- enrollRemoteRouters: { get: () => super.enrollRemoteRouters }
31
- });
32
- return __awaiter(this, void 0, void 0, function* () {
33
- // Enroll the LiquidityLayerRouter with each other
34
- yield _super.enrollRemoteRouters.call(this, contractsMap);
35
- // Enroll the circle adapters with each other
36
- yield _super.enrollRemoteRouters.call(this, (0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
37
- router: contracts.circleBridgeAdapter,
38
- })));
39
- });
40
- }
41
- // Custom contract deployment logic can go here
42
- // If no custom logic is needed, call deployContract for the router
43
- deployContracts(chain, config) {
44
- return __awaiter(this, void 0, void 0, function* () {
45
- const initCalldata = core_1.LiquidityLayerRouter__factory.createInterface().encodeFunctionData('initialize', [config.owner, config.mailbox, config.interchainGasPaymaster]);
46
- const router = yield this.deployContract(chain, 'router', [], {
47
- create2Salt: this.create2salt,
48
- initCalldata,
49
- });
50
- const bridgeAdapters = {};
51
- for (const adapterConfig of config.bridgeAdapterConfigs) {
52
- if (adapterConfig.type === BridgeAdapterType.Circle) {
53
- bridgeAdapters.circleBridgeAdapter =
54
- yield this.deployCircleBridgeAdapter(chain, adapterConfig, config.owner, router);
55
- }
56
- }
57
- return Object.assign(Object.assign({}, bridgeAdapters), { router });
58
- });
59
- }
60
- deployCircleBridgeAdapter(chain, adapterConfig, owner, router) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- const cc = this.multiProvider.getChainConnection(chain);
63
- const initCalldata = core_1.CircleBridgeAdapter__factory.createInterface().encodeFunctionData('initialize', [
64
- owner,
65
- adapterConfig.circleBridgeAddress,
66
- adapterConfig.messageTransmitterAddress,
67
- router.address,
68
- ]);
69
- const circleBridgeAdapter = yield this.deployContract(chain, 'circleBridgeAdapter', [], {
70
- create2Salt: this.create2salt,
71
- initCalldata,
72
- });
73
- if ((yield circleBridgeAdapter.tokenSymbolToAddress('USDC')) ===
74
- ethers_1.ethers.constants.AddressZero) {
75
- this.logger(`Set USDC token contract`);
76
- yield cc.handleTx(circleBridgeAdapter.addToken(adapterConfig.usdcAddress, 'USDC'));
77
- }
78
- // Set domain mappings
79
- for (const { circleDomain, hyperlaneDomain, } of adapterConfig.circleDomainMapping) {
80
- const expectedCircleDomain = yield circleBridgeAdapter.hyperlaneDomainToCircleDomain(hyperlaneDomain);
81
- if (expectedCircleDomain === circleDomain)
82
- continue;
83
- this.logger(`Set circle domain ${circleDomain} for hyperlane domain ${hyperlaneDomain}`);
84
- yield cc.handleTx(circleBridgeAdapter.addDomain(hyperlaneDomain, circleDomain));
85
- }
86
- this.logger('Set CircleLiquidityLayerAdapter on Router');
87
- yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, circleBridgeAdapter.address));
88
- return circleBridgeAdapter;
89
- });
90
- }
91
- }
92
- exports.LiquidityLayerDeployer = LiquidityLayerDeployer;
93
- //# sourceMappingURL=LiquidityLayerRouterDeployer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LiquidityLayerRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- import { HyperlaneCore } from '../../core/HyperlaneCore';
2
- import { InterchainAccountContracts, InterchainAccountFactories, InterchainQueryContracts, InterchainQueryFactories } from '../../middleware';
3
- import { MultiProvider } from '../../providers/MultiProvider';
4
- import { ChainMap, ChainName } from '../../types';
5
- import { HyperlaneRouterDeployer } from '../router/HyperlaneRouterDeployer';
6
- import { RouterConfig } from '../router/types';
7
- export declare type InterchainAccountConfig = RouterConfig;
8
- export declare class InterchainAccountDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, InterchainAccountConfig, InterchainAccountContracts, InterchainAccountFactories> {
9
- protected core: HyperlaneCore<Chain>;
10
- protected create2salt: string;
11
- constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, InterchainAccountConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
12
- deployContracts(chain: Chain, config: InterchainAccountConfig): Promise<InterchainAccountContracts>;
13
- }
14
- export declare type InterchainQueryConfig = RouterConfig;
15
- export declare class InterchainQueryDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, InterchainQueryConfig, InterchainQueryContracts, InterchainQueryFactories> {
16
- protected core: HyperlaneCore<Chain>;
17
- protected create2salt: string;
18
- constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, InterchainQueryConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
19
- deployContracts(chain: Chain, config: InterchainQueryConfig): Promise<InterchainQueryContracts>;
20
- }
21
- //# sourceMappingURL=deploy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,uBAAuB,GAAG,YAAY,CAAC;AAEnD,qBAAa,yBAAyB,CACpC,KAAK,SAAS,SAAS,CACvB,SAAQ,uBAAuB,CAC/B,KAAK,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,CAC3B;IAIG,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IACpC,SAAS,CAAC,WAAW;gBAHrB,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,EACzC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAC1B,WAAW,SAAa;IAO9B,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,0BAA0B,CAAC;CAcvC;AAED,oBAAY,qBAAqB,GAAG,YAAY,CAAC;AAEjD,qBAAa,uBAAuB,CAClC,KAAK,SAAS,SAAS,CACvB,SAAQ,uBAAuB,CAC/B,KAAK,EACL,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,CACzB;IAIG,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IAEpC,SAAS,CAAC,WAAW;gBAJrB,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC,EACvC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAE1B,WAAW,SAAa;IAO9B,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,wBAAwB,CAAC;CAcrC"}
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.InterchainQueryDeployer = exports.InterchainAccountDeployer = void 0;
13
- const core_1 = require("@hyperlane-xyz/core");
14
- const middleware_1 = require("../../middleware");
15
- const HyperlaneRouterDeployer_1 = require("../router/HyperlaneRouterDeployer");
16
- class InterchainAccountDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDeployer {
17
- constructor(multiProvider, configMap, core, create2salt = 'asdasdsd') {
18
- super(multiProvider, configMap, middleware_1.interchainAccountFactories, {});
19
- this.core = core;
20
- this.create2salt = create2salt;
21
- }
22
- // Custom contract deployment logic can go here
23
- // If no custom logic is needed, call deployContract for the router
24
- deployContracts(chain, config) {
25
- return __awaiter(this, void 0, void 0, function* () {
26
- const initCalldata = core_1.InterchainAccountRouter__factory.createInterface().encodeFunctionData('initialize', [config.owner, config.mailbox, config.interchainGasPaymaster]);
27
- const router = yield this.deployContract(chain, 'router', [], {
28
- create2Salt: this.create2salt + 'router',
29
- initCalldata,
30
- });
31
- return {
32
- router,
33
- };
34
- });
35
- }
36
- }
37
- exports.InterchainAccountDeployer = InterchainAccountDeployer;
38
- class InterchainQueryDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDeployer {
39
- constructor(multiProvider, configMap, core,
40
- // TODO replace salt with 'hyperlane' before next redeploy
41
- create2salt = 'asdasdsd') {
42
- super(multiProvider, configMap, middleware_1.interchainQueryFactories, {});
43
- this.core = core;
44
- this.create2salt = create2salt;
45
- }
46
- // Custom contract deployment logic can go here
47
- // If no custom logic is needed, call deployContract for the router
48
- deployContracts(chain, config) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- const initCalldata = core_1.InterchainQueryRouter__factory.createInterface().encodeFunctionData('initialize', [config.owner, config.mailbox, config.interchainGasPaymaster]);
51
- const router = yield this.deployContract(chain, 'router', [], {
52
- create2Salt: this.create2salt + 'router',
53
- initCalldata,
54
- });
55
- return {
56
- router,
57
- };
58
- });
59
- }
60
- }
61
- exports.InterchainQueryDeployer = InterchainQueryDeployer;
62
- //# sourceMappingURL=deploy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAG6B;AAG7B,iDAO0B;AAG1B,+EAA4E;AAK5E,MAAa,yBAEX,SAAQ,iDAKT;IACC,YACE,aAAmC,EACnC,SAAmD,EACzC,IAA0B,EAC1B,cAAc,UAAU;QAElC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,uCAA0B,EAAE,EAAE,CAAC,CAAC;QAHtD,SAAI,GAAJ,IAAI,CAAsB;QAC1B,gBAAW,GAAX,WAAW,CAAa;IAGpC,CAAC;IAED,+CAA+C;IAC/C,mEAAmE;IAC7D,eAAe,CACnB,KAAY,EACZ,MAA+B;;YAE/B,MAAM,YAAY,GAChB,uCAAgC,CAAC,eAAe,EAAE,CAAC,kBAAkB,CACnE,YAAY,EACZ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAC9D,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC5D,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ;gBACxC,YAAY;aACb,CAAC,CAAC;YACH,OAAO;gBACL,MAAM;aACP,CAAC;QACJ,CAAC;KAAA;CACF;AApCD,8DAoCC;AAID,MAAa,uBAEX,SAAQ,iDAKT;IACC,YACE,aAAmC,EACnC,SAAiD,EACvC,IAA0B;IACpC,0DAA0D;IAChD,cAAc,UAAU;QAElC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,qCAAwB,EAAE,EAAE,CAAC,CAAC;QAJpD,SAAI,GAAJ,IAAI,CAAsB;QAE1B,gBAAW,GAAX,WAAW,CAAa;IAGpC,CAAC;IAED,+CAA+C;IAC/C,mEAAmE;IAC7D,eAAe,CACnB,KAAY,EACZ,MAA6B;;YAE7B,MAAM,YAAY,GAChB,qCAA8B,CAAC,eAAe,EAAE,CAAC,kBAAkB,CACjE,YAAY,EACZ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAC9D,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC5D,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ;gBACxC,YAAY;aACb,CAAC,CAAC;YACH,OAAO;gBACL,MAAM;aACP,CAAC;QACJ,CAAC;KAAA;CACF;AArCD,0DAqCC"}