@hyperlane-xyz/sdk 1.4.3-beta1 → 1.4.3-beta2

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 (297) hide show
  1. package/README.md +7 -1
  2. package/dist/{HyperlaneApp.d.ts → app/HyperlaneApp.d.ts} +4 -4
  3. package/dist/app/HyperlaneApp.d.ts.map +1 -0
  4. package/dist/{HyperlaneApp.js → app/HyperlaneApp.js} +2 -2
  5. package/dist/app/HyperlaneApp.js.map +1 -0
  6. package/dist/app/MultiProtocolApp.d.ts +51 -0
  7. package/dist/app/MultiProtocolApp.d.ts.map +1 -0
  8. package/dist/app/MultiProtocolApp.js +80 -0
  9. package/dist/app/MultiProtocolApp.js.map +1 -0
  10. package/dist/app/MultiProtocolApp.test.d.ts +2 -0
  11. package/dist/app/MultiProtocolApp.test.d.ts.map +1 -0
  12. package/dist/app/MultiProtocolApp.test.js +19 -0
  13. package/dist/app/MultiProtocolApp.test.js.map +1 -0
  14. package/dist/consts/agentStartBlocks.d.ts +3 -0
  15. package/dist/consts/agentStartBlocks.d.ts.map +1 -0
  16. package/dist/consts/agentStartBlocks.js +28 -0
  17. package/dist/consts/agentStartBlocks.js.map +1 -0
  18. package/dist/consts/bytecode.js +1 -1
  19. package/dist/consts/bytecode.js.map +1 -1
  20. package/dist/consts/chainMetadata.d.ts +2 -58
  21. package/dist/consts/chainMetadata.d.ts.map +1 -1
  22. package/dist/consts/chainMetadata.js +1 -19
  23. package/dist/consts/chainMetadata.js.map +1 -1
  24. package/dist/consts/chains.d.ts +2 -3
  25. package/dist/consts/chains.d.ts.map +1 -1
  26. package/dist/consts/chains.js +2 -3
  27. package/dist/consts/chains.js.map +1 -1
  28. package/dist/consts/environments/index.d.ts +3 -3
  29. package/dist/consts/environments/index.d.ts.map +1 -1
  30. package/dist/consts/environments/index.js.map +1 -1
  31. package/dist/{contracts.d.ts → contracts/contracts.d.ts} +3 -15
  32. package/dist/contracts/contracts.d.ts.map +1 -0
  33. package/dist/{contracts.js → contracts/contracts.js} +12 -23
  34. package/dist/contracts/contracts.js.map +1 -0
  35. package/dist/contracts/types.d.ts +18 -0
  36. package/dist/contracts/types.d.ts.map +1 -0
  37. package/dist/contracts/types.js +3 -0
  38. package/dist/contracts/types.js.map +1 -0
  39. package/dist/core/CoreDeployer.hardhat-test.js +33 -42
  40. package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
  41. package/dist/core/HyperlaneCore.d.ts +5 -5
  42. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  43. package/dist/core/HyperlaneCore.js +15 -28
  44. package/dist/core/HyperlaneCore.js.map +1 -1
  45. package/dist/core/HyperlaneCore.test.js +4 -13
  46. package/dist/core/HyperlaneCore.test.js.map +1 -1
  47. package/dist/core/HyperlaneCoreChecker.js +80 -99
  48. package/dist/core/HyperlaneCoreChecker.js.map +1 -1
  49. package/dist/core/HyperlaneCoreDeployer.d.ts +1 -1
  50. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  51. package/dist/core/HyperlaneCoreDeployer.js +45 -62
  52. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  53. package/dist/core/TestCoreApp.d.ts +1 -1
  54. package/dist/core/TestCoreApp.d.ts.map +1 -1
  55. package/dist/core/TestCoreApp.js +35 -45
  56. package/dist/core/TestCoreApp.js.map +1 -1
  57. package/dist/core/TestCoreDeployer.d.ts +1 -1
  58. package/dist/core/TestCoreDeployer.d.ts.map +1 -1
  59. package/dist/core/TestCoreDeployer.js +14 -27
  60. package/dist/core/TestCoreDeployer.js.map +1 -1
  61. package/dist/core/contracts.d.ts +1 -1
  62. package/dist/core/contracts.d.ts.map +1 -1
  63. package/dist/core/events.d.ts +1 -1
  64. package/dist/core/events.d.ts.map +1 -1
  65. package/dist/core/testHyperlaneDeploy.hardhat-test.js +23 -32
  66. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  67. package/dist/core/types.d.ts +1 -1
  68. package/dist/core/types.d.ts.map +1 -1
  69. package/dist/core/types.js +2 -2
  70. package/dist/core/types.js.map +1 -1
  71. package/dist/deploy/HyperlaneAppChecker.d.ts +1 -1
  72. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  73. package/dist/deploy/HyperlaneAppChecker.js +99 -123
  74. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  75. package/dist/deploy/HyperlaneDeployer.d.ts +1 -1
  76. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  77. package/dist/deploy/HyperlaneDeployer.js +176 -216
  78. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  79. package/dist/deploy/proxy.d.ts +1 -1
  80. package/dist/deploy/proxy.d.ts.map +1 -1
  81. package/dist/deploy/proxy.js +11 -26
  82. package/dist/deploy/proxy.js.map +1 -1
  83. package/dist/deploy/types.js +1 -1
  84. package/dist/deploy/types.js.map +1 -1
  85. package/dist/deploy/verify/ContractVerifier.js +122 -131
  86. package/dist/deploy/verify/ContractVerifier.js.map +1 -1
  87. package/dist/deploy/verify/types.d.ts +3 -3
  88. package/dist/deploy/verify/types.d.ts.map +1 -1
  89. package/dist/gas/HyperlaneIgp.d.ts +2 -2
  90. package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
  91. package/dist/gas/HyperlaneIgp.js +2 -2
  92. package/dist/gas/HyperlaneIgp.js.map +1 -1
  93. package/dist/gas/HyperlaneIgpChecker.js +101 -123
  94. package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
  95. package/dist/gas/HyperlaneIgpDeployer.d.ts +1 -1
  96. package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
  97. package/dist/gas/HyperlaneIgpDeployer.js +70 -89
  98. package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
  99. package/dist/gas/contracts.d.ts +1 -1
  100. package/dist/gas/contracts.d.ts.map +1 -1
  101. package/dist/gas/contracts.js +6 -1
  102. package/dist/gas/contracts.js.map +1 -1
  103. package/dist/gas/token-prices.d.ts +6 -60
  104. package/dist/gas/token-prices.d.ts.map +1 -1
  105. package/dist/gas/token-prices.js +37 -54
  106. package/dist/gas/token-prices.js.map +1 -1
  107. package/dist/gas/token-prices.test.js +11 -20
  108. package/dist/gas/token-prices.test.js.map +1 -1
  109. package/dist/gas/types.d.ts +2 -2
  110. package/dist/gas/types.d.ts.map +1 -1
  111. package/dist/gas/types.js +2 -2
  112. package/dist/gas/types.js.map +1 -1
  113. package/dist/hook/HyperlaneHookDeployer.d.ts +1 -1
  114. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  115. package/dist/hook/HyperlaneHookDeployer.js +69 -88
  116. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  117. package/dist/hook/contracts.d.ts +4 -4
  118. package/dist/hook/contracts.d.ts.map +1 -1
  119. package/dist/hook/contracts.js +5 -1
  120. package/dist/hook/contracts.js.map +1 -1
  121. package/dist/hook/types.d.ts +3 -3
  122. package/dist/hook/types.d.ts.map +1 -1
  123. package/dist/hook/types.js +1 -1
  124. package/dist/hook/types.js.map +1 -1
  125. package/dist/index.d.ts +13 -6
  126. package/dist/index.d.ts.map +1 -1
  127. package/dist/index.js +30 -5
  128. package/dist/index.js.map +1 -1
  129. package/dist/ism/HyperlaneIsmFactory.d.ts +2 -2
  130. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  131. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +14 -23
  132. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  133. package/dist/ism/HyperlaneIsmFactory.js +234 -256
  134. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  135. package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts +1 -1
  136. package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts.map +1 -1
  137. package/dist/ism/HyperlaneIsmFactoryDeployer.js +18 -34
  138. package/dist/ism/HyperlaneIsmFactoryDeployer.js.map +1 -1
  139. package/dist/ism/contracts.d.ts +1 -1
  140. package/dist/ism/contracts.d.ts.map +1 -1
  141. package/dist/ism/types.d.ts +5 -5
  142. package/dist/ism/types.d.ts.map +1 -1
  143. package/dist/ism/types.js +1 -1
  144. package/dist/ism/types.js.map +1 -1
  145. package/dist/metadata/ChainMetadataManager.d.ts +130 -0
  146. package/dist/metadata/ChainMetadataManager.d.ts.map +1 -0
  147. package/dist/metadata/ChainMetadataManager.js +240 -0
  148. package/dist/metadata/ChainMetadataManager.js.map +1 -0
  149. package/dist/metadata/agentConfig.d.ts +4 -4
  150. package/dist/metadata/agentConfig.d.ts.map +1 -1
  151. package/dist/metadata/agentConfig.js +15 -6
  152. package/dist/metadata/agentConfig.js.map +1 -1
  153. package/dist/metadata/chainMetadata.test.js +27 -9
  154. package/dist/metadata/chainMetadata.test.js.map +1 -1
  155. package/dist/metadata/chainMetadataTypes.d.ts +2 -2
  156. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  157. package/dist/metadata/chainMetadataTypes.js +2 -3
  158. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  159. package/dist/metadata/deploymentArtifacts.d.ts +2 -2
  160. package/dist/metadata/deploymentArtifacts.d.ts.map +1 -1
  161. package/dist/middleware/account/InterchainAccount.d.ts +1 -1
  162. package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
  163. package/dist/middleware/account/InterchainAccount.js +1 -1
  164. package/dist/middleware/account/InterchainAccount.js.map +1 -1
  165. package/dist/middleware/account/InterchainAccountChecker.js +4 -1
  166. package/dist/middleware/account/InterchainAccountChecker.js.map +1 -1
  167. package/dist/middleware/account/InterchainAccountDeployer.d.ts +2 -2
  168. package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
  169. package/dist/middleware/account/InterchainAccountDeployer.js +28 -41
  170. package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
  171. package/dist/middleware/account/accounts.hardhat-test.js +21 -30
  172. package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
  173. package/dist/middleware/account/contracts.d.ts +1 -1
  174. package/dist/middleware/account/contracts.d.ts.map +1 -1
  175. package/dist/middleware/account/contracts.js +5 -1
  176. package/dist/middleware/account/contracts.js.map +1 -1
  177. package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts +2 -2
  178. package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts.map +1 -1
  179. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js +130 -152
  180. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js.map +1 -1
  181. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +3 -3
  182. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
  183. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +85 -110
  184. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
  185. package/dist/middleware/liquidity-layer/contracts.d.ts +1 -1
  186. package/dist/middleware/liquidity-layer/contracts.d.ts.map +1 -1
  187. package/dist/middleware/liquidity-layer/contracts.js +6 -1
  188. package/dist/middleware/liquidity-layer/contracts.js.map +1 -1
  189. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +41 -46
  190. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
  191. package/dist/middleware/query/InterchainQuery.d.ts +1 -1
  192. package/dist/middleware/query/InterchainQuery.d.ts.map +1 -1
  193. package/dist/middleware/query/InterchainQuery.js +1 -1
  194. package/dist/middleware/query/InterchainQuery.js.map +1 -1
  195. package/dist/middleware/query/InterchainQueryDeployer.d.ts +1 -1
  196. package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
  197. package/dist/middleware/query/InterchainQueryDeployer.js +13 -27
  198. package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
  199. package/dist/middleware/query/contracts.d.ts +1 -1
  200. package/dist/middleware/query/contracts.d.ts.map +1 -1
  201. package/dist/middleware/query/contracts.js +4 -1
  202. package/dist/middleware/query/contracts.js.map +1 -1
  203. package/dist/middleware/query/queries.hardhat-test.js +23 -32
  204. package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
  205. package/dist/providers/MultiProtocolProvider.d.ts +39 -0
  206. package/dist/providers/MultiProtocolProvider.d.ts.map +1 -0
  207. package/dist/providers/MultiProtocolProvider.js +105 -0
  208. package/dist/providers/MultiProtocolProvider.js.map +1 -0
  209. package/dist/providers/MultiProtocolProvider.test.d.ts +2 -0
  210. package/dist/providers/MultiProtocolProvider.test.d.ts.map +1 -0
  211. package/dist/providers/MultiProtocolProvider.test.js +24 -0
  212. package/dist/providers/MultiProtocolProvider.test.js.map +1 -0
  213. package/dist/providers/MultiProvider.d.ts +20 -118
  214. package/dist/providers/MultiProvider.d.ts.map +1 -1
  215. package/dist/providers/MultiProvider.js +69 -300
  216. package/dist/providers/MultiProvider.js.map +1 -1
  217. package/dist/providers/ProviderType.d.ts +71 -0
  218. package/dist/providers/ProviderType.d.ts.map +1 -0
  219. package/dist/providers/ProviderType.js +11 -0
  220. package/dist/providers/ProviderType.js.map +1 -0
  221. package/dist/providers/RetryProvider.d.ts +1 -1
  222. package/dist/providers/RetryProvider.d.ts.map +1 -1
  223. package/dist/providers/RetryProvider.js +2 -16
  224. package/dist/providers/RetryProvider.js.map +1 -1
  225. package/dist/providers/providerBuilders.d.ts +17 -0
  226. package/dist/providers/providerBuilders.d.ts.map +1 -0
  227. package/dist/providers/providerBuilders.js +97 -0
  228. package/dist/providers/providerBuilders.js.map +1 -0
  229. package/dist/router/GasRouterDeployer.d.ts +1 -1
  230. package/dist/router/GasRouterDeployer.d.ts.map +1 -1
  231. package/dist/router/GasRouterDeployer.js +18 -32
  232. package/dist/router/GasRouterDeployer.js.map +1 -1
  233. package/dist/router/HyperlaneRouterChecker.d.ts +1 -1
  234. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  235. package/dist/router/HyperlaneRouterChecker.js +37 -55
  236. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  237. package/dist/router/HyperlaneRouterDeployer.d.ts +1 -1
  238. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  239. package/dist/router/HyperlaneRouterDeployer.js +87 -115
  240. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  241. package/dist/router/MultiProtocolRouterApps.d.ts +29 -0
  242. package/dist/router/MultiProtocolRouterApps.d.ts.map +1 -0
  243. package/dist/router/MultiProtocolRouterApps.js +43 -0
  244. package/dist/router/MultiProtocolRouterApps.js.map +1 -0
  245. package/dist/router/MultiProtocolRouterApps.test.d.ts +2 -0
  246. package/dist/router/MultiProtocolRouterApps.test.d.ts.map +1 -0
  247. package/dist/router/MultiProtocolRouterApps.test.js +20 -0
  248. package/dist/router/MultiProtocolRouterApps.test.js.map +1 -0
  249. package/dist/router/ProxiedRouterChecker.js +14 -34
  250. package/dist/router/ProxiedRouterChecker.js.map +1 -1
  251. package/dist/router/ProxiedRouterDeployer.d.ts +1 -1
  252. package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
  253. package/dist/router/ProxiedRouterDeployer.js +24 -38
  254. package/dist/router/ProxiedRouterDeployer.js.map +1 -1
  255. package/dist/router/RouterApps.d.ts +4 -4
  256. package/dist/router/RouterApps.d.ts.map +1 -1
  257. package/dist/router/RouterApps.js +8 -18
  258. package/dist/router/RouterApps.js.map +1 -1
  259. package/dist/router/adapters/EvmRouterAdapter.d.ts +25 -0
  260. package/dist/router/adapters/EvmRouterAdapter.d.ts.map +1 -0
  261. package/dist/router/adapters/EvmRouterAdapter.js +50 -0
  262. package/dist/router/adapters/EvmRouterAdapter.js.map +1 -0
  263. package/dist/router/adapters/SealevelRouterAdapter.d.ts +50 -0
  264. package/dist/router/adapters/SealevelRouterAdapter.d.ts.map +1 -0
  265. package/dist/router/adapters/SealevelRouterAdapter.js +132 -0
  266. package/dist/router/adapters/SealevelRouterAdapter.js.map +1 -0
  267. package/dist/router/adapters/SealevelRouterAdapter.test.d.ts +2 -0
  268. package/dist/router/adapters/SealevelRouterAdapter.test.d.ts.map +1 -0
  269. package/dist/router/adapters/SealevelRouterAdapter.test.js +21 -0
  270. package/dist/router/adapters/SealevelRouterAdapter.test.js.map +1 -0
  271. package/dist/router/adapters/types.d.ts +18 -0
  272. package/dist/router/adapters/types.d.ts.map +1 -0
  273. package/dist/router/adapters/types.js +3 -0
  274. package/dist/router/adapters/types.js.map +1 -0
  275. package/dist/router/types.d.ts +12 -9
  276. package/dist/router/types.d.ts.map +1 -1
  277. package/dist/router/types.js +1 -1
  278. package/dist/router/types.js.map +1 -1
  279. package/dist/test/testUtils.d.ts +1 -1
  280. package/dist/test/testUtils.d.ts.map +1 -1
  281. package/dist/test/testUtils.js +12 -23
  282. package/dist/test/testUtils.js.map +1 -1
  283. package/dist/types.d.ts +5 -5
  284. package/dist/types.d.ts.map +1 -1
  285. package/dist/utils/MultiGeneric.d.ts +1 -1
  286. package/dist/utils/MultiGeneric.d.ts.map +1 -1
  287. package/dist/utils/MultiGeneric.js +2 -4
  288. package/dist/utils/MultiGeneric.js.map +1 -1
  289. package/dist/utils/fetch.js +8 -16
  290. package/dist/utils/fetch.js.map +1 -1
  291. package/dist/utils/wagmi.js +1 -2
  292. package/dist/utils/wagmi.js.map +1 -1
  293. package/package.json +10 -7
  294. package/dist/HyperlaneApp.d.ts.map +0 -1
  295. package/dist/HyperlaneApp.js.map +0 -1
  296. package/dist/contracts.d.ts.map +0 -1
  297. package/dist/contracts.js.map +0 -1
@@ -1,13 +1,4 @@
1
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
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.HyperlaneDeployer = void 0;
13
4
  const debug_1 = require("debug");
@@ -19,7 +10,6 @@ const proxy_1 = require("./proxy");
19
10
  const utils_2 = require("./verify/utils");
20
11
  class HyperlaneDeployer {
21
12
  constructor(multiProvider, factories, options) {
22
- var _a, _b;
23
13
  this.multiProvider = multiProvider;
24
14
  this.factories = factories;
25
15
  this.options = options;
@@ -27,203 +17,178 @@ class HyperlaneDeployer {
27
17
  this.cachedAddresses = {};
28
18
  this.deployedContracts = {};
29
19
  this.startingBlockNumbers = {};
30
- this.logger = (_a = options === null || options === void 0 ? void 0 : options.logger) !== null && _a !== void 0 ? _a : (0, debug_1.debug)('hyperlane:deployer');
31
- this.chainTimeoutMs = (_b = options === null || options === void 0 ? void 0 : options.chainTimeoutMs) !== null && _b !== void 0 ? _b : 5 * 60 * 1000; // 5 minute timeout per chain
20
+ this.logger = options?.logger ?? (0, debug_1.debug)('hyperlane:deployer');
21
+ this.chainTimeoutMs = options?.chainTimeoutMs ?? 5 * 60 * 1000; // 5 minute timeout per chain
32
22
  }
33
23
  cacheAddressesMap(addressesMap) {
34
24
  this.cachedAddresses = addressesMap;
35
25
  }
36
- checkConfig(_) {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- return;
39
- });
26
+ async checkConfig(_) {
27
+ return;
40
28
  }
41
- deploy(configMap) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- const configChains = Object.keys(configMap);
44
- const targetChains = this.multiProvider.intersect(configChains, true).intersection;
45
- this.logger(`Start deploy to ${targetChains}`);
46
- for (const chain of targetChains) {
47
- const signerUrl = yield this.multiProvider.tryGetExplorerAddressUrl(chain);
48
- const signerAddress = yield this.multiProvider.getSignerAddress(chain);
49
- const fromString = signerUrl || signerAddress;
50
- this.logger(`Deploying to ${chain} from ${fromString}`);
51
- this.startingBlockNumbers[chain] = yield this.multiProvider
52
- .getProvider(chain)
53
- .getBlockNumber();
54
- yield (0, utils_1.runWithTimeout)(this.chainTimeoutMs, () => __awaiter(this, void 0, void 0, function* () {
55
- this.deployedContracts[chain] = yield this.deployContracts(chain, configMap[chain]);
56
- }));
57
- }
58
- return this.deployedContracts;
59
- });
29
+ async deploy(configMap) {
30
+ const configChains = Object.keys(configMap);
31
+ const targetChains = this.multiProvider.intersect(configChains, true).intersection;
32
+ this.logger(`Start deploy to ${targetChains}`);
33
+ for (const chain of targetChains) {
34
+ const signerUrl = await this.multiProvider.tryGetExplorerAddressUrl(chain);
35
+ const signerAddress = await this.multiProvider.getSignerAddress(chain);
36
+ const fromString = signerUrl || signerAddress;
37
+ this.logger(`Deploying to ${chain} from ${fromString}`);
38
+ this.startingBlockNumbers[chain] = await this.multiProvider
39
+ .getProvider(chain)
40
+ .getBlockNumber();
41
+ await (0, utils_1.runWithTimeout)(this.chainTimeoutMs, async () => {
42
+ this.deployedContracts[chain] = await this.deployContracts(chain, configMap[chain]);
43
+ });
44
+ }
45
+ return this.deployedContracts;
60
46
  }
61
- runIf(chain, address, fn, label = 'address') {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- const signer = yield this.multiProvider.getSignerAddress(chain);
64
- if ((0, utils_1.eqAddress)(address, signer)) {
65
- return fn();
66
- }
67
- else {
68
- this.logger(`Signer (${signer}) does not match ${label} (${address})`);
69
- }
70
- return undefined;
71
- });
47
+ async runIf(chain, address, fn, label = 'address') {
48
+ const signer = await this.multiProvider.getSignerAddress(chain);
49
+ if ((0, utils_1.eqAddress)(address, signer)) {
50
+ return fn();
51
+ }
52
+ else {
53
+ this.logger(`Signer (${signer}) does not match ${label} (${address})`);
54
+ }
55
+ return undefined;
72
56
  }
73
- runIfOwner(chain, ownable, fn) {
74
- return __awaiter(this, void 0, void 0, function* () {
75
- return this.runIf(chain, yield ownable.callStatic.owner(), fn, 'owner');
76
- });
57
+ async runIfOwner(chain, ownable, fn) {
58
+ return this.runIf(chain, await ownable.callStatic.owner(), fn, 'owner');
77
59
  }
78
- runIfAdmin(chain, proxy, signerAdminFn, proxyAdminOwnerFn) {
79
- return __awaiter(this, void 0, void 0, function* () {
80
- const admin = yield (0, proxy_1.proxyAdmin)(this.multiProvider.getProvider(chain), proxy.address);
81
- const code = yield this.multiProvider.getProvider(chain).getCode(admin);
82
- // if admin is a ProxyAdmin, run the proxyAdminOwnerFn (if deployer is owner)
83
- if (code !== '0x') {
84
- this.logger(`Admin is a ProxyAdmin (${admin})`);
85
- const proxyAdmin = core_1.ProxyAdmin__factory.connect(admin, proxy.signer);
86
- return this.runIfOwner(chain, proxyAdmin, () => proxyAdminOwnerFn(proxyAdmin));
60
+ async runIfAdmin(chain, proxy, signerAdminFn, proxyAdminOwnerFn) {
61
+ const admin = await (0, proxy_1.proxyAdmin)(this.multiProvider.getProvider(chain), proxy.address);
62
+ const code = await this.multiProvider.getProvider(chain).getCode(admin);
63
+ // if admin is a ProxyAdmin, run the proxyAdminOwnerFn (if deployer is owner)
64
+ if (code !== '0x') {
65
+ this.logger(`Admin is a ProxyAdmin (${admin})`);
66
+ const proxyAdmin = core_1.ProxyAdmin__factory.connect(admin, proxy.signer);
67
+ return this.runIfOwner(chain, proxyAdmin, () => proxyAdminOwnerFn(proxyAdmin));
68
+ }
69
+ else {
70
+ this.logger(`Admin is an EOA (${admin})`);
71
+ // if admin is an EOA, run the signerAdminFn (if deployer is admin)
72
+ return this.runIf(chain, admin, () => signerAdminFn(), 'admin');
73
+ }
74
+ }
75
+ async initConnectionClient(local, connectionClient, config) {
76
+ this.logger(`Initializing connection client (if not already) on ${local}...`);
77
+ await this.runIfOwner(local, connectionClient, async () => {
78
+ const txOverrides = this.multiProvider.getTransactionOverrides(local);
79
+ // set mailbox if not already set (and configured)
80
+ if (config.mailbox !== (await connectionClient.mailbox())) {
81
+ this.logger(`Set mailbox on (${local})`);
82
+ await this.multiProvider.handleTx(local, connectionClient.setMailbox(config.mailbox, txOverrides));
87
83
  }
88
- else {
89
- this.logger(`Admin is an EOA (${admin})`);
90
- // if admin is an EOA, run the signerAdminFn (if deployer is admin)
91
- return this.runIf(chain, admin, () => signerAdminFn(), 'admin');
84
+ // set interchain gas paymaster if not already set (and configured)
85
+ if (config.interchainGasPaymaster !==
86
+ (await connectionClient.interchainGasPaymaster())) {
87
+ this.logger(`Set interchain gas paymaster on ${local}`);
88
+ await this.multiProvider.handleTx(local, connectionClient.setInterchainGasPaymaster(config.interchainGasPaymaster, txOverrides));
92
89
  }
93
- });
94
- }
95
- initConnectionClient(local, connectionClient, config) {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- this.logger(`Initializing connection client (if not already) on ${local}...`);
98
- yield this.runIfOwner(local, connectionClient, () => __awaiter(this, void 0, void 0, function* () {
99
- var _a;
100
- const txOverrides = this.multiProvider.getTransactionOverrides(local);
101
- // set mailbox if not already set (and configured)
102
- if (config.mailbox !== (yield connectionClient.mailbox())) {
103
- this.logger(`Set mailbox on (${local})`);
104
- yield this.multiProvider.handleTx(local, connectionClient.setMailbox(config.mailbox, txOverrides));
105
- }
106
- // set interchain gas paymaster if not already set (and configured)
107
- if (config.interchainGasPaymaster !==
108
- (yield connectionClient.interchainGasPaymaster())) {
109
- this.logger(`Set interchain gas paymaster on ${local}`);
110
- yield this.multiProvider.handleTx(local, connectionClient.setInterchainGasPaymaster(config.interchainGasPaymaster, txOverrides));
111
- }
112
- let currentIsm = yield connectionClient.interchainSecurityModule();
113
- // in case the above returns zero address, fetch the defaultISM from the mailbox
114
- if (currentIsm === ethers_1.ethers.constants.AddressZero) {
115
- const mailbox = core_1.Mailbox__factory.connect(config.mailbox, connectionClient.signer);
116
- currentIsm = yield mailbox.defaultIsm();
90
+ let currentIsm = await connectionClient.interchainSecurityModule();
91
+ // in case the above returns zero address, fetch the defaultISM from the mailbox
92
+ if (currentIsm === ethers_1.ethers.constants.AddressZero) {
93
+ const mailbox = core_1.Mailbox__factory.connect(config.mailbox, connectionClient.signer);
94
+ currentIsm = await mailbox.defaultIsm();
95
+ }
96
+ if (config.interchainSecurityModule) {
97
+ // set interchain security module if not already set (and configured)
98
+ let configuredIsm;
99
+ if (typeof config.interchainSecurityModule === 'string') {
100
+ configuredIsm = config.interchainSecurityModule;
117
101
  }
118
- if (config.interchainSecurityModule) {
119
- // set interchain security module if not already set (and configured)
120
- let configuredIsm;
121
- if (typeof config.interchainSecurityModule === 'string') {
122
- configuredIsm = config.interchainSecurityModule;
123
- }
124
- else if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.ismFactory) {
125
- const matches = yield (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(local, currentIsm, config.interchainSecurityModule, this.multiProvider, this.options.ismFactory.chainMap[local]);
126
- if (matches) {
127
- // when the ISM recursively matches the IsmConfig, we don't need to deploy a new ISM
128
- this.logger(`ISM matches config for chain ${local}, skipping deploy`);
129
- return;
130
- }
131
- const ism = yield this.options.ismFactory.deploy(local, config.interchainSecurityModule);
132
- configuredIsm = ism.address;
133
- }
134
- else {
135
- throw new Error('No ISM factory provided');
102
+ else if (this.options?.ismFactory) {
103
+ const matches = await (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(local, currentIsm, config.interchainSecurityModule, this.multiProvider, this.options.ismFactory.chainMap[local]);
104
+ if (matches) {
105
+ // when the ISM recursively matches the IsmConfig, we don't need to deploy a new ISM
106
+ this.logger(`ISM matches config for chain ${local}, skipping deploy`);
107
+ return;
136
108
  }
137
- this.logger(`Set interchain security module on ${local} at ${configuredIsm}`);
138
- yield this.multiProvider.handleTx(local, connectionClient.setInterchainSecurityModule(configuredIsm, txOverrides));
109
+ const ism = await this.options.ismFactory.deploy(local, config.interchainSecurityModule);
110
+ configuredIsm = ism.address;
139
111
  }
140
- }));
141
- this.logger(`Connection client on ${local} initialized...`);
142
- });
143
- }
144
- deployContractFromFactory(chain, factory, contractName, constructorArgs, initializeArgs) {
145
- return __awaiter(this, void 0, void 0, function* () {
146
- const cachedContract = this.readCache(chain, factory, contractName);
147
- if (cachedContract) {
148
- return cachedContract;
149
- }
150
- const signer = this.multiProvider.getSigner(chain);
151
- const overrides = this.multiProvider.getTransactionOverrides(chain);
152
- this.logger(`Deploy ${contractName} on ${chain}`);
153
- const contract = yield factory
154
- .connect(signer)
155
- .deploy(...constructorArgs, overrides);
156
- yield this.multiProvider.handleTx(chain, contract.deployTransaction);
157
- if (initializeArgs) {
158
- this.logger(`Initialize ${contractName} on ${chain}`);
159
- const initTx = yield contract.initialize(...initializeArgs, overrides);
160
- yield this.multiProvider.handleTx(chain, initTx);
112
+ else {
113
+ throw new Error('No ISM factory provided');
114
+ }
115
+ this.logger(`Set interchain security module on ${local} at ${configuredIsm}`);
116
+ await this.multiProvider.handleTx(local, connectionClient.setInterchainSecurityModule(configuredIsm, txOverrides));
161
117
  }
162
- const verificationInput = (0, utils_2.getContractVerificationInput)(contractName, contract, factory.bytecode);
163
- this.verificationInputs[chain] = this.verificationInputs[chain] || [];
164
- this.verificationInputs[chain].push(verificationInput);
165
- return contract;
166
118
  });
119
+ this.logger(`Connection client on ${local} initialized...`);
167
120
  }
168
- deployContract(chain, contractName, constructorArgs, initializeArgs) {
169
- return __awaiter(this, void 0, void 0, function* () {
170
- const contract = (yield this.deployContractFromFactory(chain, this.factories[contractName], contractName.toString(), constructorArgs, initializeArgs));
171
- this.writeCache(chain, contractName, contract.address);
172
- return contract;
173
- });
121
+ async deployContractFromFactory(chain, factory, contractName, constructorArgs, initializeArgs) {
122
+ const cachedContract = this.readCache(chain, factory, contractName);
123
+ if (cachedContract) {
124
+ return cachedContract;
125
+ }
126
+ const signer = this.multiProvider.getSigner(chain);
127
+ const overrides = this.multiProvider.getTransactionOverrides(chain);
128
+ this.logger(`Deploy ${contractName} on ${chain}`);
129
+ const contract = await factory
130
+ .connect(signer)
131
+ .deploy(...constructorArgs, overrides);
132
+ await this.multiProvider.handleTx(chain, contract.deployTransaction);
133
+ if (initializeArgs) {
134
+ this.logger(`Initialize ${contractName} on ${chain}`);
135
+ const initTx = await contract.initialize(...initializeArgs, overrides);
136
+ await this.multiProvider.handleTx(chain, initTx);
137
+ }
138
+ const verificationInput = (0, utils_2.getContractVerificationInput)(contractName, contract, factory.bytecode);
139
+ this.verificationInputs[chain] = this.verificationInputs[chain] || [];
140
+ this.verificationInputs[chain].push(verificationInput);
141
+ return contract;
174
142
  }
175
- changeAdmin(chain, proxy, admin) {
176
- return __awaiter(this, void 0, void 0, function* () {
177
- const actualAdmin = yield (0, proxy_1.proxyAdmin)(this.multiProvider.getProvider(chain), proxy.address);
178
- if ((0, utils_1.eqAddress)(admin, actualAdmin)) {
179
- this.logger(`Admin set correctly, skipping admin change`);
180
- return;
181
- }
182
- const txOverrides = this.multiProvider.getTransactionOverrides(chain);
183
- this.logger(`Changing proxy admin`);
184
- yield this.runIfAdmin(chain, proxy, () => this.multiProvider.handleTx(chain, proxy.changeAdmin(admin, txOverrides)), (proxyAdmin) => this.multiProvider.handleTx(chain, proxyAdmin.changeProxyAdmin(proxy.address, admin, txOverrides)));
185
- });
143
+ async deployContract(chain, contractName, constructorArgs, initializeArgs) {
144
+ const contract = (await this.deployContractFromFactory(chain, this.factories[contractName], contractName.toString(), constructorArgs, initializeArgs));
145
+ this.writeCache(chain, contractName, contract.address);
146
+ return contract;
186
147
  }
187
- upgradeAndInitialize(chain, proxy, implementation, initializeArgs) {
188
- return __awaiter(this, void 0, void 0, function* () {
189
- const current = yield proxy.callStatic.implementation();
190
- if ((0, utils_1.eqAddress)(implementation.address, current)) {
191
- this.logger(`Implementation set correctly, skipping upgrade`);
192
- return;
193
- }
194
- this.logger(`Upgrading and initializing implementation`);
195
- const initData = implementation.interface.encodeFunctionData('initialize', initializeArgs);
196
- const overrides = this.multiProvider.getTransactionOverrides(chain);
197
- yield this.runIfAdmin(chain, proxy, () => this.multiProvider.handleTx(chain, proxy.upgradeToAndCall(implementation.address, initData, overrides)), (proxyAdmin) => this.multiProvider.handleTx(chain, proxyAdmin.upgradeAndCall(proxy.address, implementation.address, initData, overrides)));
198
- });
148
+ async changeAdmin(chain, proxy, admin) {
149
+ const actualAdmin = await (0, proxy_1.proxyAdmin)(this.multiProvider.getProvider(chain), proxy.address);
150
+ if ((0, utils_1.eqAddress)(admin, actualAdmin)) {
151
+ this.logger(`Admin set correctly, skipping admin change`);
152
+ return;
153
+ }
154
+ const txOverrides = this.multiProvider.getTransactionOverrides(chain);
155
+ this.logger(`Changing proxy admin`);
156
+ await this.runIfAdmin(chain, proxy, () => this.multiProvider.handleTx(chain, proxy.changeAdmin(admin, txOverrides)), (proxyAdmin) => this.multiProvider.handleTx(chain, proxyAdmin.changeProxyAdmin(proxy.address, admin, txOverrides)));
199
157
  }
200
- deployProxy(chain, implementation, proxyAdmin, initializeArgs) {
201
- return __awaiter(this, void 0, void 0, function* () {
202
- const initData = initializeArgs
203
- ? implementation.interface.encodeFunctionData('initialize', initializeArgs)
204
- : '0x';
205
- this.logger(`Deploying transparent upgradable proxy`);
206
- const constructorArgs = [
207
- implementation.address,
208
- proxyAdmin,
209
- initData,
210
- ];
211
- const proxy = yield this.deployContractFromFactory(chain, new core_1.TransparentUpgradeableProxy__factory(), 'TransparentUpgradeableProxy', constructorArgs);
212
- return implementation.attach(proxy.address);
213
- });
158
+ async upgradeAndInitialize(chain, proxy, implementation, initializeArgs) {
159
+ const current = await proxy.callStatic.implementation();
160
+ if ((0, utils_1.eqAddress)(implementation.address, current)) {
161
+ this.logger(`Implementation set correctly, skipping upgrade`);
162
+ return;
163
+ }
164
+ this.logger(`Upgrading and initializing implementation`);
165
+ const initData = implementation.interface.encodeFunctionData('initialize', initializeArgs);
166
+ const overrides = this.multiProvider.getTransactionOverrides(chain);
167
+ await this.runIfAdmin(chain, proxy, () => this.multiProvider.handleTx(chain, proxy.upgradeToAndCall(implementation.address, initData, overrides)), (proxyAdmin) => this.multiProvider.handleTx(chain, proxyAdmin.upgradeAndCall(proxy.address, implementation.address, initData, overrides)));
214
168
  }
215
- deployTimelock(chain, timelockConfig) {
216
- return __awaiter(this, void 0, void 0, function* () {
217
- const timelock = yield this.deployContractFromFactory(chain, new core_1.TimelockController__factory(), 'timelockController',
218
- // delay, [proposers], [executors], admin
219
- [
220
- timelockConfig.delay,
221
- [timelockConfig.roles.proposer],
222
- [timelockConfig.roles.executor],
223
- ethers_1.ethers.constants.AddressZero,
224
- ]);
225
- return timelock;
226
- });
169
+ async deployProxy(chain, implementation, proxyAdmin, initializeArgs) {
170
+ const initData = initializeArgs
171
+ ? implementation.interface.encodeFunctionData('initialize', initializeArgs)
172
+ : '0x';
173
+ this.logger(`Deploying transparent upgradable proxy`);
174
+ const constructorArgs = [
175
+ implementation.address,
176
+ proxyAdmin,
177
+ initData,
178
+ ];
179
+ const proxy = await this.deployContractFromFactory(chain, new core_1.TransparentUpgradeableProxy__factory(), 'TransparentUpgradeableProxy', constructorArgs);
180
+ return implementation.attach(proxy.address);
181
+ }
182
+ async deployTimelock(chain, timelockConfig) {
183
+ const timelock = await this.deployContractFromFactory(chain, new core_1.TimelockController__factory(), 'timelockController',
184
+ // delay, [proposers], [executors], admin
185
+ [
186
+ timelockConfig.delay,
187
+ [timelockConfig.roles.proposer],
188
+ [timelockConfig.roles.executor],
189
+ ethers_1.ethers.constants.AddressZero,
190
+ ]);
191
+ return timelock;
227
192
  }
228
193
  writeCache(chain, contractName, address) {
229
194
  if (!this.cachedAddresses[chain]) {
@@ -232,8 +197,7 @@ class HyperlaneDeployer {
232
197
  this.cachedAddresses[chain][contractName] = address;
233
198
  }
234
199
  readCache(chain, factory, contractName) {
235
- var _a;
236
- const cachedAddress = (_a = this.cachedAddresses[chain]) === null || _a === void 0 ? void 0 : _a[contractName];
200
+ const cachedAddress = this.cachedAddresses[chain]?.[contractName];
237
201
  const hit = !!cachedAddress && cachedAddress !== ethers_1.ethers.constants.AddressZero;
238
202
  const contractAddress = hit ? cachedAddress : ethers_1.ethers.constants.AddressZero;
239
203
  const contract = factory
@@ -249,19 +213,17 @@ class HyperlaneDeployer {
249
213
  * Deploys the Implementation and Proxy for a given contract
250
214
  *
251
215
  */
252
- deployProxiedContract(chain, contractName, proxyAdmin, constructorArgs, initializeArgs) {
253
- return __awaiter(this, void 0, void 0, function* () {
254
- const cachedContract = this.readCache(chain, this.factories[contractName], contractName.toString());
255
- if (cachedContract) {
256
- return cachedContract;
257
- }
258
- // Try to initialize the implementation even though it may not be necessary
259
- const implementation = yield this.deployContract(chain, contractName, constructorArgs, initializeArgs);
260
- // Initialize the proxy the same way
261
- const contract = yield this.deployProxy(chain, implementation, proxyAdmin, initializeArgs);
262
- this.writeCache(chain, contractName, contract.address);
263
- return contract;
264
- });
216
+ async deployProxiedContract(chain, contractName, proxyAdmin, constructorArgs, initializeArgs) {
217
+ const cachedContract = this.readCache(chain, this.factories[contractName], contractName.toString());
218
+ if (cachedContract) {
219
+ return cachedContract;
220
+ }
221
+ // Try to initialize the implementation even though it may not be necessary
222
+ const implementation = await this.deployContract(chain, contractName, constructorArgs, initializeArgs);
223
+ // Initialize the proxy the same way
224
+ const contract = await this.deployProxy(chain, implementation, proxyAdmin, initializeArgs);
225
+ this.writeCache(chain, contractName, contract.address);
226
+ return contract;
265
227
  }
266
228
  mergeWithExistingVerificationInputs(existingInputsMap) {
267
229
  const allChains = new Set();
@@ -275,21 +237,19 @@ class HyperlaneDeployer {
275
237
  }
276
238
  return ret;
277
239
  }
278
- transferOwnershipOfContracts(chain, owner, ownables) {
279
- return __awaiter(this, void 0, void 0, function* () {
280
- const receipts = [];
281
- for (const contractName of Object.keys(ownables)) {
282
- const ownable = ownables[contractName];
283
- const currentOwner = yield ownable.owner();
284
- if (!(0, utils_1.eqAddress)(currentOwner, owner)) {
285
- this.logger(`Transferring ownership of ${contractName} to ${owner} on ${chain}`);
286
- const receipt = yield this.runIfOwner(chain, ownable, () => this.multiProvider.handleTx(chain, ownable.transferOwnership(owner, this.multiProvider.getTransactionOverrides(chain))));
287
- if (receipt)
288
- receipts.push(receipt);
289
- }
240
+ async transferOwnershipOfContracts(chain, owner, ownables) {
241
+ const receipts = [];
242
+ for (const contractName of Object.keys(ownables)) {
243
+ const ownable = ownables[contractName];
244
+ const currentOwner = await ownable.owner();
245
+ if (!(0, utils_1.eqAddress)(currentOwner, owner)) {
246
+ this.logger(`Transferring ownership of ${contractName} to ${owner} on ${chain}`);
247
+ const receipt = await this.runIfOwner(chain, ownable, () => this.multiProvider.handleTx(chain, ownable.transferOwnership(owner, this.multiProvider.getTransactionOverrides(chain))));
248
+ if (receipt)
249
+ receipts.push(receipt);
290
250
  }
291
- return receipts.filter((x) => !!x);
292
- });
251
+ }
252
+ return receipts.filter((x) => !!x);
293
253
  }
294
254
  }
295
255
  exports.HyperlaneDeployer = HyperlaneDeployer;
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ethers } from 'ethers';
2
2
  import { Address } from '@hyperlane-xyz/utils';
3
- export declare type UpgradeConfig = {
3
+ export type UpgradeConfig = {
4
4
  timelock: {
5
5
  delay: number;
6
6
  roles: {
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAE1D,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAGlB"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAGlB"}
@@ -1,38 +1,23 @@
1
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
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.isProxy = exports.proxyAdmin = exports.proxyImplementation = void 0;
13
4
  const ethers_1 = require("ethers");
14
5
  const utils_1 = require("@hyperlane-xyz/utils");
15
- function proxyImplementation(provider, proxy) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- // Hardcoded storage slot for implementation per EIP-1967
18
- const storageValue = yield provider.getStorageAt(proxy, '0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc');
19
- return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
20
- });
6
+ async function proxyImplementation(provider, proxy) {
7
+ // Hardcoded storage slot for implementation per EIP-1967
8
+ const storageValue = await provider.getStorageAt(proxy, '0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc');
9
+ return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
21
10
  }
22
11
  exports.proxyImplementation = proxyImplementation;
23
- function proxyAdmin(provider, proxy) {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- // Hardcoded storage slot for admin per EIP-1967
26
- const storageValue = yield provider.getStorageAt(proxy, '0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103');
27
- return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
28
- });
12
+ async function proxyAdmin(provider, proxy) {
13
+ // Hardcoded storage slot for admin per EIP-1967
14
+ const storageValue = await provider.getStorageAt(proxy, '0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103');
15
+ return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
29
16
  }
30
17
  exports.proxyAdmin = proxyAdmin;
31
- function isProxy(provider, proxy) {
32
- return __awaiter(this, void 0, void 0, function* () {
33
- const admin = yield proxyAdmin(provider, proxy);
34
- return !(0, utils_1.eqAddress)(admin, ethers_1.ethers.constants.AddressZero);
35
- });
18
+ async function isProxy(provider, proxy) {
19
+ const admin = await proxyAdmin(provider, proxy);
20
+ return !(0, utils_1.eqAddress)(admin, ethers_1.ethers.constants.AddressZero);
36
21
  }
37
22
  exports.isProxy = isProxy;
38
23
  //# sourceMappingURL=proxy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAEhC,gDAA0D;AAa1D,SAAsB,mBAAmB,CACvC,QAAmC,EACnC,KAAc;;QAEd,yDAAyD;QACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,kDAUC;AAED,SAAsB,UAAU,CAC9B,QAAmC,EACnC,KAAc;;QAEd,gDAAgD;QAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,gCAUC;AAED,SAAsB,OAAO,CAC3B,QAAmC,EACnC,KAAc;;QAEd,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;CAAA;AAND,0BAMC"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,gDAA0D;AAanD,KAAK,UAAU,mBAAmB,CACvC,QAAmC,EACnC,KAAc;IAEd,yDAAyD;IACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,kDAUC;AAEM,KAAK,UAAU,UAAU,CAC9B,QAAmC,EACnC,KAAc;IAEd,gDAAgD;IAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,gCAUC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAmC,EACnC,KAAc;IAEd,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;AACzD,CAAC;AAND,0BAMC"}
@@ -9,5 +9,5 @@ var ViolationType;
9
9
  ViolationType["ProxyAdmin"] = "ProxyAdmin";
10
10
  ViolationType["TimelockController"] = "TimelockController";
11
11
  ViolationType["AccessControl"] = "AccessControl";
12
- })(ViolationType = exports.ViolationType || (exports.ViolationType = {}));
12
+ })(ViolationType || (exports.ViolationType = ViolationType = {}));
13
13
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":";;;AAkBA,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,4CAA2B,CAAA;IAC3B,sDAAqC,CAAA;IACrC,0CAAyB,CAAA;IACzB,0DAAyC,CAAA;IACzC,gDAA+B,CAAA;AACjC,CAAC,EAPW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAOxB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":";;;AAkBA,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,4CAA2B,CAAA;IAC3B,sDAAqC,CAAA;IACrC,0CAAyB,CAAA;IACzB,0DAAyC,CAAA;IACzC,gDAA+B,CAAA;AACjC,CAAC,EAPW,aAAa,6BAAb,aAAa,QAOxB"}