@hyperlane-xyz/sdk 1.0.0-beta4 → 1.0.0-beta6

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 (170) hide show
  1. package/dist/consts/chainConnectionConfigs.d.ts +13 -24
  2. package/dist/consts/chainConnectionConfigs.d.ts.map +1 -1
  3. package/dist/consts/chainConnectionConfigs.js +26 -139
  4. package/dist/consts/chainConnectionConfigs.js.map +1 -1
  5. package/dist/consts/chainMetadata.d.ts +80 -26
  6. package/dist/consts/chainMetadata.d.ts.map +1 -1
  7. package/dist/consts/chainMetadata.js +482 -97
  8. package/dist/consts/chainMetadata.js.map +1 -1
  9. package/dist/consts/chains.d.ts +18 -16
  10. package/dist/consts/chains.d.ts.map +1 -1
  11. package/dist/consts/chains.js +30 -16
  12. package/dist/consts/chains.js.map +1 -1
  13. package/dist/consts/environments/index.d.ts +69 -1259
  14. package/dist/consts/environments/index.d.ts.map +1 -1
  15. package/dist/consts/environments/index.js +7 -14
  16. package/dist/consts/environments/index.js.map +1 -1
  17. package/dist/consts/environments/mainnet.json +79 -639
  18. package/dist/consts/environments/test.json +27 -96
  19. package/dist/consts/environments/testnet.json +122 -0
  20. package/dist/contracts.d.ts +2 -1
  21. package/dist/contracts.d.ts.map +1 -1
  22. package/dist/contracts.js.map +1 -1
  23. package/dist/core/HyperlaneCore.d.ts +72 -1268
  24. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  25. package/dist/core/HyperlaneCore.js +19 -30
  26. package/dist/core/HyperlaneCore.js.map +1 -1
  27. package/dist/core/HyperlaneCore.test.js +2 -2
  28. package/dist/core/HyperlaneCore.test.js.map +1 -1
  29. package/dist/core/TestCoreApp.d.ts +6 -12
  30. package/dist/core/TestCoreApp.d.ts.map +1 -1
  31. package/dist/core/TestCoreApp.js +7 -9
  32. package/dist/core/TestCoreApp.js.map +1 -1
  33. package/dist/core/TestCoreDeployer.d.ts +7 -5
  34. package/dist/core/TestCoreDeployer.d.ts.map +1 -1
  35. package/dist/core/TestCoreDeployer.js +17 -42
  36. package/dist/core/TestCoreDeployer.js.map +1 -1
  37. package/dist/core/contracts.d.ts +10 -22
  38. package/dist/core/contracts.d.ts.map +1 -1
  39. package/dist/core/contracts.js +8 -8
  40. package/dist/core/contracts.js.map +1 -1
  41. package/dist/core/events.d.ts +1 -2
  42. package/dist/core/events.d.ts.map +1 -1
  43. package/dist/core/message.d.ts +6 -21
  44. package/dist/core/message.d.ts.map +1 -1
  45. package/dist/core/message.js +9 -34
  46. package/dist/core/message.js.map +1 -1
  47. package/dist/core/testHyperlaneDeploy.hardhat-test.js +6 -6
  48. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  49. package/dist/deploy/HyperlaneAppChecker.d.ts +2 -2
  50. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  51. package/dist/deploy/HyperlaneAppChecker.js +7 -3
  52. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  53. package/dist/deploy/HyperlaneDeployer.d.ts +7 -12
  54. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  55. package/dist/deploy/HyperlaneDeployer.js +72 -42
  56. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  57. package/dist/deploy/core/HyperlaneCoreChecker.d.ts +3 -7
  58. package/dist/deploy/core/HyperlaneCoreChecker.d.ts.map +1 -1
  59. package/dist/deploy/core/HyperlaneCoreChecker.js +41 -127
  60. package/dist/deploy/core/HyperlaneCoreChecker.js.map +1 -1
  61. package/dist/deploy/core/HyperlaneCoreDeployer.d.ts +15 -21
  62. package/dist/deploy/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  63. package/dist/deploy/core/HyperlaneCoreDeployer.js +61 -81
  64. package/dist/deploy/core/HyperlaneCoreDeployer.js.map +1 -1
  65. package/dist/deploy/core/types.d.ts +16 -29
  66. package/dist/deploy/core/types.d.ts.map +1 -1
  67. package/dist/deploy/core/types.js +8 -12
  68. package/dist/deploy/core/types.js.map +1 -1
  69. package/dist/deploy/middleware/LiquidityLayerApp.d.ts +4 -12
  70. package/dist/deploy/middleware/LiquidityLayerApp.d.ts.map +1 -1
  71. package/dist/deploy/middleware/LiquidityLayerApp.js +14 -87
  72. package/dist/deploy/middleware/LiquidityLayerApp.js.map +1 -1
  73. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts +8 -19
  74. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts.map +1 -1
  75. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js +18 -52
  76. package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js.map +1 -1
  77. package/dist/deploy/middleware/deploy.d.ts +7 -2
  78. package/dist/deploy/middleware/deploy.d.ts.map +1 -1
  79. package/dist/deploy/middleware/deploy.js +21 -5
  80. package/dist/deploy/middleware/deploy.js.map +1 -1
  81. package/dist/deploy/proxy.d.ts +7 -6
  82. package/dist/deploy/proxy.d.ts.map +1 -1
  83. package/dist/deploy/proxy.js +18 -10
  84. package/dist/deploy/proxy.js.map +1 -1
  85. package/dist/deploy/router/HyperlaneRouterChecker.d.ts +1 -1
  86. package/dist/deploy/router/HyperlaneRouterChecker.d.ts.map +1 -1
  87. package/dist/deploy/router/HyperlaneRouterChecker.js +14 -9
  88. package/dist/deploy/router/HyperlaneRouterChecker.js.map +1 -1
  89. package/dist/deploy/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  90. package/dist/deploy/router/HyperlaneRouterDeployer.js +17 -15
  91. package/dist/deploy/router/HyperlaneRouterDeployer.js.map +1 -1
  92. package/dist/domains.d.ts +1 -1
  93. package/dist/domains.d.ts.map +1 -1
  94. package/dist/events.js +16 -16
  95. package/dist/events.js.map +1 -1
  96. package/dist/gas/calculator.d.ts.map +1 -1
  97. package/dist/gas/calculator.js +11 -6
  98. package/dist/gas/calculator.js.map +1 -1
  99. package/dist/gas/calculator.test.js +6 -9
  100. package/dist/gas/calculator.test.js.map +1 -1
  101. package/dist/index.d.ts +10 -11
  102. package/dist/index.d.ts.map +1 -1
  103. package/dist/index.js +11 -8
  104. package/dist/index.js.map +1 -1
  105. package/dist/middleware/liquidity-layer.hardhat-test.js +20 -47
  106. package/dist/middleware/liquidity-layer.hardhat-test.js.map +1 -1
  107. package/dist/middleware.d.ts +1 -6
  108. package/dist/middleware.d.ts.map +1 -1
  109. package/dist/middleware.js +1 -5
  110. package/dist/middleware.js.map +1 -1
  111. package/dist/providers/ChainConnection.d.ts +1 -1
  112. package/dist/providers/ChainConnection.d.ts.map +1 -1
  113. package/dist/providers/ChainConnection.js +2 -3
  114. package/dist/providers/ChainConnection.js.map +1 -1
  115. package/dist/providers/MultiProvider.d.ts.map +1 -1
  116. package/dist/providers/MultiProvider.js +1 -1
  117. package/dist/providers/MultiProvider.js.map +1 -1
  118. package/dist/proxy.d.ts +2 -4
  119. package/dist/proxy.d.ts.map +1 -1
  120. package/dist/proxy.js +1 -1
  121. package/dist/proxy.js.map +1 -1
  122. package/dist/router.d.ts +2 -1
  123. package/dist/router.d.ts.map +1 -1
  124. package/dist/test/envSubsetDeployer/app.js +2 -2
  125. package/dist/test/envSubsetDeployer/app.js.map +1 -1
  126. package/dist/test/envSubsetDeployer/check-single-chain.js +1 -1
  127. package/dist/test/envSubsetDeployer/check-single-chain.js.map +1 -1
  128. package/dist/test/envSubsetDeployer/deploy-single-chain.js +1 -1
  129. package/dist/test/envSubsetDeployer/deploy-single-chain.js.map +1 -1
  130. package/dist/types.d.ts +3 -3
  131. package/dist/types.d.ts.map +1 -1
  132. package/dist/utils/objects.d.ts +0 -1
  133. package/dist/utils/objects.d.ts.map +1 -1
  134. package/dist/utils/objects.js +1 -5
  135. package/dist/utils/objects.js.map +1 -1
  136. package/package.json +7 -7
  137. package/dist/consts/environments/testnet2.json +0 -682
  138. package/dist/consts/environments/testnet3.json +0 -114
  139. package/dist/consts/metamask.d.ts +0 -17
  140. package/dist/consts/metamask.d.ts.map +0 -1
  141. package/dist/consts/metamask.js +0 -50
  142. package/dist/consts/metamask.js.map +0 -1
  143. package/dist/deploy/middleware/TokenBridgeApp.d.ts +0 -26
  144. package/dist/deploy/middleware/TokenBridgeApp.d.ts.map +0 -1
  145. package/dist/deploy/middleware/TokenBridgeApp.js +0 -115
  146. package/dist/deploy/middleware/TokenBridgeApp.js.map +0 -1
  147. package/dist/deploy/middleware/TokenBridgeRouterDeployer.d.ts +0 -33
  148. package/dist/deploy/middleware/TokenBridgeRouterDeployer.d.ts.map +0 -1
  149. package/dist/deploy/middleware/TokenBridgeRouterDeployer.js +0 -93
  150. package/dist/deploy/middleware/TokenBridgeRouterDeployer.js.map +0 -1
  151. package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.d.ts +0 -17
  152. package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.d.ts.map +0 -1
  153. package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.js +0 -42
  154. package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.js.map +0 -1
  155. package/dist/middleware/accounts.test.d.ts +0 -2
  156. package/dist/middleware/accounts.test.d.ts.map +0 -1
  157. package/dist/middleware/accounts.test.js +0 -61
  158. package/dist/middleware/accounts.test.js.map +0 -1
  159. package/dist/middleware/queries.test.d.ts +0 -2
  160. package/dist/middleware/queries.test.d.ts.map +0 -1
  161. package/dist/middleware/queries.test.js +0 -69
  162. package/dist/middleware/queries.test.js.map +0 -1
  163. package/dist/middleware/tokenbridge.hardhat-test.d.ts +0 -2
  164. package/dist/middleware/tokenbridge.hardhat-test.d.ts.map +0 -1
  165. package/dist/middleware/tokenbridge.hardhat-test.js +0 -89
  166. package/dist/middleware/tokenbridge.hardhat-test.js.map +0 -1
  167. package/dist/tokenBridge.d.ts +0 -10
  168. package/dist/tokenBridge.d.ts.map +0 -1
  169. package/dist/tokenBridge.js +0 -9
  170. package/dist/tokenBridge.js.map +0 -1
@@ -1,64 +1,51 @@
1
- import { AbacusConnectionManager, Mailbox, MultisigValidatorManager } from '@hyperlane-xyz/core';
1
+ import { Mailbox, MultisigIsm } from '@hyperlane-xyz/core';
2
2
  import type { types } from '@hyperlane-xyz/utils';
3
3
  import { ChainName } from '../../types';
4
4
  import type { CheckerViolation } from '../types';
5
- export declare type ValidatorManagerConfig = {
5
+ export declare type MultisigIsmConfig = {
6
6
  validators: Array<types.Address>;
7
7
  threshold: number;
8
8
  };
9
9
  export declare type CoreConfig = {
10
- validatorManager: ValidatorManagerConfig;
11
- owner?: types.Address;
10
+ multisigIsm: MultisigIsmConfig;
11
+ owner: types.Address;
12
12
  remove?: boolean;
13
13
  };
14
14
  export declare enum CoreViolationType {
15
- ValidatorManager = "ValidatorManager",
15
+ MultisigIsm = "MultisigIsm",
16
16
  Mailbox = "Mailbox",
17
17
  ConnectionManager = "ConnectionManager"
18
18
  }
19
- export declare enum ValidatorManagerViolationType {
19
+ export declare enum MultisigIsmViolationType {
20
20
  EnrolledValidators = "EnrolledValidators",
21
21
  Threshold = "Threshold"
22
22
  }
23
- export declare enum ConnectionManagerViolationType {
24
- EnrolledInboxes = "EnrolledInboxes"
25
- }
26
23
  export declare enum MailboxViolationType {
27
- ValidatorManager = "ValidatorManager"
24
+ DefaultIsm = "DefaultIsm"
28
25
  }
29
26
  export interface MailboxViolation extends CheckerViolation {
30
27
  type: CoreViolationType.Mailbox;
31
28
  contract: Mailbox;
32
29
  mailboxType: MailboxViolationType;
33
30
  }
34
- export interface MailboxValidatorManagerViolation extends MailboxViolation {
31
+ export interface MailboxMultisigIsmViolation extends MailboxViolation {
35
32
  actual: types.Address;
36
33
  expected: types.Address;
37
34
  }
38
- export interface ValidatorManagerViolation extends CheckerViolation {
39
- type: CoreViolationType.ValidatorManager;
40
- contract: MultisigValidatorManager;
41
- validatorManagerType: ValidatorManagerViolationType;
35
+ export interface MultisigIsmViolation extends CheckerViolation {
36
+ type: CoreViolationType.MultisigIsm;
37
+ contract: MultisigIsm;
38
+ subType: MultisigIsmViolationType;
42
39
  remote: ChainName;
43
40
  }
44
- export interface EnrolledValidatorsViolation extends ValidatorManagerViolation {
45
- validatorManagerType: ValidatorManagerViolationType.EnrolledValidators;
41
+ export interface EnrolledValidatorsViolation extends MultisigIsmViolation {
42
+ subType: MultisigIsmViolationType.EnrolledValidators;
46
43
  actual: Set<types.Address>;
47
44
  expected: Set<types.Address>;
48
45
  }
49
- export interface ThresholdViolation extends ValidatorManagerViolation {
50
- validatorManagerType: ValidatorManagerViolationType.Threshold;
46
+ export interface ThresholdViolation extends MultisigIsmViolation {
47
+ subType: MultisigIsmViolationType.Threshold;
51
48
  actual: number;
52
49
  expected: number;
53
50
  }
54
- export interface ConnectionManagerViolation extends CheckerViolation {
55
- type: CoreViolationType.ConnectionManager;
56
- contract: AbacusConnectionManager;
57
- connectionManagerType: ConnectionManagerViolationType;
58
- }
59
- export interface EnrolledInboxesViolation extends ConnectionManagerViolation {
60
- remote: ChainName;
61
- actual: Set<types.Address>;
62
- expected: Set<types.Address>;
63
- }
64
51
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/deploy/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,OAAO,EACP,wBAAwB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,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,sBAAsB,GAAG;IACnC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,gBAAgB,qBAAqB;IACrC,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;CACxC;AAED,oBAAY,6BAA6B;IACvC,kBAAkB,uBAAuB;IACzC,SAAS,cAAc;CACxB;AAED,oBAAY,8BAA8B;IACxC,eAAe,oBAAoB;CACpC;AAED,oBAAY,oBAAoB;IAC9B,gBAAgB,qBAAqB;CACtC;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,gCAAiC,SAAQ,gBAAgB;IACxE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IACjE,IAAI,EAAE,iBAAiB,CAAC,gBAAgB,CAAC;IACzC,QAAQ,EAAE,wBAAwB,CAAC;IACnC,oBAAoB,EAAE,6BAA6B,CAAC;IACpD,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;IAC5E,oBAAoB,EAAE,6BAA6B,CAAC,kBAAkB,CAAC;IACvE,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,yBAAyB;IACnE,oBAAoB,EAAE,6BAA6B,CAAC,SAAS,CAAC;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAC1C,QAAQ,EAAE,uBAAuB,CAAC;IAClC,qBAAqB,EAAE,8BAA8B,CAAC;CACvD;AAED,MAAM,WAAW,wBAAyB,SAAQ,0BAA0B;IAC1E,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;CAC9B"}
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,EAAE,KAAK,CAAC,OAAO,CAAC;IACrB,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,23 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MailboxViolationType = exports.ConnectionManagerViolationType = exports.ValidatorManagerViolationType = exports.CoreViolationType = void 0;
3
+ exports.MailboxViolationType = exports.MultisigIsmViolationType = exports.CoreViolationType = void 0;
4
4
  var CoreViolationType;
5
5
  (function (CoreViolationType) {
6
- CoreViolationType["ValidatorManager"] = "ValidatorManager";
6
+ CoreViolationType["MultisigIsm"] = "MultisigIsm";
7
7
  CoreViolationType["Mailbox"] = "Mailbox";
8
8
  CoreViolationType["ConnectionManager"] = "ConnectionManager";
9
9
  })(CoreViolationType = exports.CoreViolationType || (exports.CoreViolationType = {}));
10
- var ValidatorManagerViolationType;
11
- (function (ValidatorManagerViolationType) {
12
- ValidatorManagerViolationType["EnrolledValidators"] = "EnrolledValidators";
13
- ValidatorManagerViolationType["Threshold"] = "Threshold";
14
- })(ValidatorManagerViolationType = exports.ValidatorManagerViolationType || (exports.ValidatorManagerViolationType = {}));
15
- var ConnectionManagerViolationType;
16
- (function (ConnectionManagerViolationType) {
17
- ConnectionManagerViolationType["EnrolledInboxes"] = "EnrolledInboxes";
18
- })(ConnectionManagerViolationType = exports.ConnectionManagerViolationType || (exports.ConnectionManagerViolationType = {}));
10
+ var MultisigIsmViolationType;
11
+ (function (MultisigIsmViolationType) {
12
+ MultisigIsmViolationType["EnrolledValidators"] = "EnrolledValidators";
13
+ MultisigIsmViolationType["Threshold"] = "Threshold";
14
+ })(MultisigIsmViolationType = exports.MultisigIsmViolationType || (exports.MultisigIsmViolationType = {}));
19
15
  var MailboxViolationType;
20
16
  (function (MailboxViolationType) {
21
- MailboxViolationType["ValidatorManager"] = "ValidatorManager";
17
+ MailboxViolationType["DefaultIsm"] = "DefaultIsm";
22
18
  })(MailboxViolationType = exports.MailboxViolationType || (exports.MailboxViolationType = {}));
23
19
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/deploy/core/types.ts"],"names":[],"mappings":";;;AAqBA,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,0DAAqC,CAAA;IACrC,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;AACzC,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAED,IAAY,6BAGX;AAHD,WAAY,6BAA6B;IACvC,0EAAyC,CAAA;IACzC,wDAAuB,CAAA;AACzB,CAAC,EAHW,6BAA6B,GAA7B,qCAA6B,KAA7B,qCAA6B,QAGxC;AAED,IAAY,8BAEX;AAFD,WAAY,8BAA8B;IACxC,qEAAmC,CAAA;AACrC,CAAC,EAFW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAEzC;AAED,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,6DAAqC,CAAA;AACvC,CAAC,EAFW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAE/B"}
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"}
@@ -2,7 +2,7 @@ import { HyperlaneApp } from '../../HyperlaneApp';
2
2
  import { LiquidityLayerContracts } from '../../middleware';
3
3
  import { MultiProvider } from '../../providers/MultiProvider';
4
4
  import { ChainMap, ChainName } from '../../types';
5
- import { BridgeAdapterConfig } from './LiquidityLayerRouterDeployer';
5
+ import { BridgeAdapterConfig, CircleBridgeAdapterConfig } from './LiquidityLayerRouterDeployer';
6
6
  interface CircleBridgeMessage<Chain> {
7
7
  chain: Chain;
8
8
  remoteChain: Chain;
@@ -12,22 +12,14 @@ interface CircleBridgeMessage<Chain> {
12
12
  domain: number;
13
13
  nonceHash: string;
14
14
  }
15
- interface PortalBridgeMessage<Chain> {
16
- origin: Chain;
17
- nonce: number;
18
- portalSequence: number;
19
- destination: Chain;
20
- }
21
15
  export declare class LiquidityLayerApp<Chain extends ChainName = ChainName> extends HyperlaneApp<LiquidityLayerContracts, Chain> {
22
16
  readonly contractsMap: ChainMap<Chain, LiquidityLayerContracts>;
23
17
  readonly multiProvider: MultiProvider<Chain>;
24
- readonly config: ChainMap<Chain, BridgeAdapterConfig>;
25
- constructor(contractsMap: ChainMap<Chain, LiquidityLayerContracts>, multiProvider: MultiProvider<Chain>, config: ChainMap<Chain, BridgeAdapterConfig>);
18
+ readonly bridgeAdapterConfigs: ChainMap<Chain, BridgeAdapterConfig[]>;
19
+ constructor(contractsMap: ChainMap<Chain, LiquidityLayerContracts>, multiProvider: MultiProvider<Chain>, bridgeAdapterConfigs: ChainMap<Chain, BridgeAdapterConfig[]>);
20
+ circleBridgeAdapterConfig(): ChainMap<Chain, CircleBridgeAdapterConfig>;
26
21
  fetchCircleMessageTransactions(chain: Chain): Promise<string[]>;
27
- fetchPortalBridgeTransactions(chain: Chain): Promise<string[]>;
28
- parsePortalMessages(chain: Chain, txHash: string): Promise<PortalBridgeMessage<Chain>[]>;
29
22
  parseCircleMessages(chain: Chain, txHash: string): Promise<CircleBridgeMessage<Chain>[]>;
30
- attemptPortalTransferCompletion(message: PortalBridgeMessage<Chain>): Promise<void>;
31
23
  attemptCircleAttestationSubmission(message: CircleBridgeMessage<Chain>): Promise<void>;
32
24
  }
33
25
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"LiquidityLayerApp.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,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;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAwBrE,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;AAED,UAAU,mBAAmB,CAAC,KAAK;IACjC,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,KAAK,CAAC;CACpB;AAED,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,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;gBAF5C,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,EACtD,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;IAKxD,8BAA8B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAc/D,6BAA6B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAc9D,mBAAmB,CACvB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;IAuBlC,mBAAmB,CACvB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;IAkDlC,+BAA+B,CACnC,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC;IAmDV,kCAAkC,CACtC,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC;CA2CjB"}
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"}
@@ -16,25 +16,22 @@ exports.LiquidityLayerApp = void 0;
16
16
  const cross_fetch_1 = __importDefault(require("cross-fetch"));
17
17
  const ethers_1 = require("ethers");
18
18
  const core_1 = require("@hyperlane-xyz/core");
19
- const utils_1 = require("@hyperlane-xyz/utils");
20
19
  const HyperlaneApp_1 = require("../../HyperlaneApp");
21
20
  const chains_1 = require("../../consts/chains");
22
- const domains_1 = require("../../domains");
23
- const PORTAL_VAA_SERVICE_TESTNET_BASE_URL = 'https://wormhole-v2-testnet-api.certus.one/v1/signed_vaa/';
24
- const CIRCLE_ATTESTATIONS_BASE_URL = 'https://iris-api-sandbox.circle.com/attestations/';
25
- const CIRCLE_REDEPLOYMENT_DATE = new Date(2022, 12, 22);
26
- const PORTAL_VAA_SERVICE_SUCCESS_CODE = 5;
27
- const CircleBridgeInterface = core_1.ITokenMessenger__factory.createInterface();
21
+ const objects_1 = require("../../utils/objects");
22
+ const LiquidityLayerRouterDeployer_1 = require("./LiquidityLayerRouterDeployer");
23
+ const CircleBridgeInterface = core_1.ICircleBridge__factory.createInterface();
28
24
  const CircleBridgeAdapterInterface = core_1.CircleBridgeAdapter__factory.createInterface();
29
- const PortalAdapterInterface = core_1.PortalAdapter__factory.createInterface();
30
25
  const BridgedTokenTopic = CircleBridgeAdapterInterface.getEventTopic(CircleBridgeAdapterInterface.getEvent('BridgedToken'));
31
- const PortalBridgedTokenTopic = PortalAdapterInterface.getEventTopic(PortalAdapterInterface.getEvent('BridgedToken'));
32
26
  class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
33
- constructor(contractsMap, multiProvider, config) {
27
+ constructor(contractsMap, multiProvider, bridgeAdapterConfigs) {
34
28
  super(contractsMap, multiProvider);
35
29
  this.contractsMap = contractsMap;
36
30
  this.multiProvider = multiProvider;
37
- this.config = config;
31
+ this.bridgeAdapterConfigs = bridgeAdapterConfigs;
32
+ }
33
+ circleBridgeAdapterConfig() {
34
+ return (0, objects_1.objMap)(this.bridgeAdapterConfigs, (_chain, config) => config.find((_) => _.type === LiquidityLayerRouterDeployer_1.BridgeAdapterType.Circle));
38
35
  }
39
36
  fetchCircleMessageTransactions(chain) {
40
37
  return __awaiter(this, void 0, void 0, function* () {
@@ -50,56 +47,10 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
50
47
  return response.result.map((_) => _.transactionHash).flat();
51
48
  });
52
49
  }
53
- fetchPortalBridgeTransactions(chain) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- const cc = this.multiProvider.getChainConnection(chain);
56
- const params = new URLSearchParams({
57
- module: 'logs',
58
- action: 'getLogs',
59
- address: this.getContracts(chain).portalAdapter.address,
60
- topic0: PortalBridgedTokenTopic,
61
- });
62
- const req = yield (0, cross_fetch_1.default)(`${cc.getApiUrl()}?${params}`);
63
- const response = yield req.json();
64
- return response.result.map((_) => _.transactionHash).flat();
65
- });
66
- }
67
- parsePortalMessages(chain, txHash) {
68
- return __awaiter(this, void 0, void 0, function* () {
69
- const connection = this.multiProvider.getChainConnection(chain);
70
- const receipt = yield connection.provider.getTransactionReceipt(txHash);
71
- const matchingLogs = receipt.logs
72
- .map((_) => {
73
- try {
74
- return [PortalAdapterInterface.parseLog(_)];
75
- }
76
- catch (_a) {
77
- return [];
78
- }
79
- })
80
- .flat();
81
- if (matchingLogs.length == 0)
82
- return [];
83
- const event = matchingLogs.find((_) => _.name === 'BridgedToken');
84
- const portalSequence = event.args.portalSequence.toNumber();
85
- const nonce = event.args.nonce.toNumber();
86
- const destination = domains_1.DomainIdToChainName[event.args.destination];
87
- return [
88
- { origin: chain, nonce, portalSequence, destination },
89
- ];
90
- });
91
- }
92
50
  parseCircleMessages(chain, txHash) {
93
51
  return __awaiter(this, void 0, void 0, function* () {
94
52
  const connection = this.multiProvider.getChainConnection(chain);
95
53
  const receipt = yield connection.provider.getTransactionReceipt(txHash);
96
- const block = yield connection.provider.getBlock(receipt.blockHash);
97
- if (new Date(block.timestamp * 1000) < CIRCLE_REDEPLOYMENT_DATE) {
98
- // Nonces are not persisted across
99
- // return []
100
- console.log('');
101
- }
102
- console.log(new Date(block.timestamp * 1000));
103
54
  const matchingLogs = receipt.logs
104
55
  .map((_) => {
105
56
  try {
@@ -121,8 +72,7 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
121
72
  .message;
122
73
  const nonce = matchingLogs.find((_) => _.name === 'BridgedToken').args
123
74
  .nonce;
124
- const remoteChain = chain === chains_1.Chains.fuji ? chains_1.Chains.goerli : chains_1.Chains.fuji;
125
- const domain = this.config[chain].circle.circleDomainMapping.find((_) => _.hyperlaneDomain === domains_1.ChainNameToDomainId[chain]).circleDomain;
75
+ const remoteChain = message.chain === chains_1.Chains.fuji ? chains_1.Chains.goerli : chains_1.Chains.fuji;
126
76
  return [
127
77
  {
128
78
  chain,
@@ -131,52 +81,29 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
131
81
  txHash,
132
82
  message,
133
83
  nonce,
134
- domain,
135
- nonceHash: ethers_1.ethers.utils.solidityKeccak256(['uint32', 'uint256'], [domain, nonce]),
84
+ domain: 0,
85
+ nonceHash: ethers_1.ethers.utils.solidityKeccak256(['uint32', 'uint256'], [0, nonce]),
136
86
  },
137
87
  ];
138
88
  });
139
89
  }
140
- attemptPortalTransferCompletion(message) {
141
- var _a;
142
- return __awaiter(this, void 0, void 0, function* () {
143
- const destinationPortalAdapter = this.getContracts(message.destination)
144
- .portalAdapter;
145
- const transferId = yield destinationPortalAdapter.transferId(domains_1.ChainNameToDomainId[message.origin], message.nonce);
146
- const transferTokenAddress = yield destinationPortalAdapter.portalTransfersProcessed(transferId);
147
- if (!utils_1.utils.eqAddress(transferTokenAddress, ethers_1.ethers.constants.AddressZero)) {
148
- console.log(`Transfer with nonce ${message.nonce} from ${message.origin} to ${message.destination} already processed`);
149
- return;
150
- }
151
- const wormholeOriginDomain = (_a = this.config[message.destination].portal.wormholeDomainMapping.find((_) => _.hyperlaneDomain === domains_1.ChainNameToDomainId[message.origin])) === null || _a === void 0 ? void 0 : _a.wormholeDomain;
152
- const emitter = utils_1.utils.strip0x(utils_1.utils.addressToBytes32(this.config[message.origin].portal.portalBridgeAddress));
153
- const vaa = yield (0, cross_fetch_1.default)(`${PORTAL_VAA_SERVICE_TESTNET_BASE_URL}${wormholeOriginDomain}/${emitter}/${message.portalSequence}`).then((_) => _.json());
154
- if (vaa.code && vaa.code === PORTAL_VAA_SERVICE_SUCCESS_CODE) {
155
- console.log(`VAA not yet found for nonce ${message.nonce}`);
156
- return;
157
- }
158
- const connection = this.multiProvider.getChainConnection(message.destination);
159
- console.debug(`Complete portal transfer for nonce ${message.nonce} on ${message.destination}`);
160
- yield connection.handleTx(destinationPortalAdapter.completeTransfer(utils_1.utils.ensure0x(Buffer.from(vaa.vaaBytes, 'base64').toString('hex'))));
161
- });
162
- }
163
90
  attemptCircleAttestationSubmission(message) {
164
91
  return __awaiter(this, void 0, void 0, function* () {
165
92
  const connection = this.multiProvider.getChainConnection(message.remoteChain);
166
- const transmitter = core_1.ICircleMessageTransmitter__factory.connect(this.config[message.remoteChain].circle.messageTransmitterAddress, connection.signer);
93
+ const transmitter = core_1.ICircleMessageTransmitter__factory.connect(this.circleBridgeAdapterConfig()[message.remoteChain]
94
+ .messageTransmitterAddress, connection.signer);
167
95
  const alreadyProcessed = yield transmitter.usedNonces(message.nonceHash);
168
96
  if (alreadyProcessed) {
169
97
  console.log(`Message sent on ${message.txHash} was already processed`);
170
98
  return;
171
99
  }
172
100
  const messageHash = ethers_1.ethers.utils.keccak256(message.message);
173
- const attestationsB = yield (0, cross_fetch_1.default)(`${CIRCLE_ATTESTATIONS_BASE_URL}${messageHash}`);
101
+ const attestationsB = yield (0, cross_fetch_1.default)(`https://iris-api-sandbox.circle.com/attestations/${messageHash}`);
174
102
  const attestations = yield attestationsB.json();
175
103
  if (attestations.status !== 'complete') {
176
104
  console.log(`Attestations not available for message nonce ${message.nonce} on ${message.txHash}`);
177
105
  return;
178
106
  }
179
- console.log(message, attestations, this.config[message.remoteChain].circle.messageTransmitterAddress);
180
107
  console.log(`Ready to submit attestations for message ${message.nonce}`);
181
108
  const tx = yield transmitter.receiveMessage(message.message, attestations.attestation);
182
109
  console.log(`Submitted attestations in ${yield connection.getTxUrl(tx)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,16 @@
1
- import { CircleBridgeAdapter, LiquidityLayerRouter, PortalAdapter } from '@hyperlane-xyz/core';
1
+ import { CircleBridgeAdapter, LiquidityLayerRouter } from '@hyperlane-xyz/core';
2
2
  import { HyperlaneCore } from '../../core/HyperlaneCore';
3
3
  import { LiquidityLayerContracts, LiquidityLayerFactories } from '../../middleware';
4
4
  import { MultiProvider } from '../../providers/MultiProvider';
5
5
  import { ChainMap, ChainName } from '../../types';
6
- import { HyperlaneRouterDeployer } from '../router/HyperlaneRouterDeployer';
7
6
  import { RouterConfig } from '../router/types';
7
+ import { MiddlewareRouterDeployer } from './deploy';
8
8
  export declare enum BridgeAdapterType {
9
- Circle = "Circle",
10
- Portal = "Portal"
9
+ Circle = "Circle"
11
10
  }
12
11
  export interface CircleBridgeAdapterConfig {
13
12
  type: BridgeAdapterType.Circle;
14
- tokenMessengerAddress: string;
13
+ circleBridgeAddress: string;
15
14
  messageTransmitterAddress: string;
16
15
  usdcAddress: string;
17
16
  circleDomainMapping: {
@@ -19,26 +18,16 @@ export interface CircleBridgeAdapterConfig {
19
18
  circleDomain: number;
20
19
  }[];
21
20
  }
22
- export interface PortalAdapterConfig {
23
- type: BridgeAdapterType.Portal;
24
- portalBridgeAddress: string;
25
- wormholeDomainMapping: {
26
- hyperlaneDomain: number;
27
- wormholeDomain: number;
28
- }[];
29
- }
30
- export declare type BridgeAdapterConfig = {
31
- circle?: CircleBridgeAdapterConfig;
32
- portal?: PortalAdapterConfig;
21
+ export declare type BridgeAdapterConfig = CircleBridgeAdapterConfig;
22
+ export declare type LiquidityLayerConfig = RouterConfig & {
23
+ bridgeAdapterConfigs: BridgeAdapterConfig[];
33
24
  };
34
- export declare type LiquidityLayerConfig = RouterConfig & BridgeAdapterConfig;
35
- export declare class LiquidityLayerDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, LiquidityLayerConfig, LiquidityLayerContracts, LiquidityLayerFactories> {
25
+ export declare class LiquidityLayerDeployer<Chain extends ChainName> extends MiddlewareRouterDeployer<Chain, LiquidityLayerConfig, LiquidityLayerContracts, LiquidityLayerFactories> {
36
26
  protected core: HyperlaneCore<Chain>;
37
27
  protected create2salt: string;
38
28
  constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, LiquidityLayerConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
39
29
  enrollRemoteRouters(contractsMap: ChainMap<Chain, LiquidityLayerContracts>): Promise<void>;
40
30
  deployContracts(chain: Chain, config: LiquidityLayerConfig): Promise<LiquidityLayerContracts>;
41
- deployPortalAdapter(chain: Chain, adapterConfig: PortalAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<PortalAdapter>;
42
31
  deployCircleBridgeAdapter(chain: Chain, adapterConfig: CircleBridgeAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<CircleBridgeAdapter>;
43
32
  }
44
33
  //# sourceMappingURL=LiquidityLayerRouterDeployer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAEnB,oBAAoB,EAEpB,aAAa,EAEd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,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;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,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,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL;AAED,oBAAY,mBAAmB,GAAG;IAChC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF,oBAAY,oBAAoB,GAAG,YAAY,GAAG,mBAAmB,CAAC;AAEtE,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;IA2BV,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,uBAAuB,CAAC;IAoC7B,mBAAmB,CACvB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,mBAAmB,EAClC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,aAAa,CAAC;IAyDnB,yBAAyB,CAC7B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,yBAAyB,EACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;CAqEhC"}
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,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpD,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,wBAAwB,CAChC,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;IA8B7B,yBAAyB,CAC7B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,yBAAyB,EACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;CA2DhC"}
@@ -10,18 +10,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.LiquidityLayerDeployer = exports.BridgeAdapterType = void 0;
13
+ const ethers_1 = require("ethers");
13
14
  const core_1 = require("@hyperlane-xyz/core");
14
- const utils_1 = require("@hyperlane-xyz/utils");
15
- const domains_1 = require("../../domains");
16
15
  const middleware_1 = require("../../middleware");
17
16
  const objects_1 = require("../../utils/objects");
18
- const HyperlaneRouterDeployer_1 = require("../router/HyperlaneRouterDeployer");
17
+ const deploy_1 = require("./deploy");
19
18
  var BridgeAdapterType;
20
19
  (function (BridgeAdapterType) {
21
20
  BridgeAdapterType["Circle"] = "Circle";
22
- BridgeAdapterType["Portal"] = "Portal";
23
21
  })(BridgeAdapterType = exports.BridgeAdapterType || (exports.BridgeAdapterType = {}));
24
- class LiquidityLayerDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDeployer {
22
+ class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
25
23
  constructor(multiProvider, configMap, core, create2salt = 'LiquidityLayerDeployerSalt') {
26
24
  super(multiProvider, configMap, middleware_1.liquidityLayerFactories, {});
27
25
  this.core = core;
@@ -32,70 +30,39 @@ class LiquidityLayerDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDe
32
30
  enrollRemoteRouters: { get: () => super.enrollRemoteRouters }
33
31
  });
34
32
  return __awaiter(this, void 0, void 0, function* () {
35
- this.logger(`Enroll LiquidityLayerRouters with each other`);
33
+ // Enroll the LiquidityLayerRouter with each other
36
34
  yield _super.enrollRemoteRouters.call(this, contractsMap);
37
- this.logger(`Enroll CircleBridgeAdapters with each other`);
38
- yield _super.enrollRemoteRouters.call(this, (0, objects_1.objFilter)((0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
35
+ // Enroll the circle adapters with each other
36
+ yield _super.enrollRemoteRouters.call(this, (0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
39
37
  router: contracts.circleBridgeAdapter,
40
- })), (_) => !!_.router));
41
- this.logger(`Enroll PortalAdapters with each other`);
42
- yield _super.enrollRemoteRouters.call(this, (0, objects_1.objFilter)((0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
43
- router: contracts.portalAdapter,
44
- })), (_) => !!_.router));
38
+ })));
45
39
  });
46
40
  }
47
41
  // Custom contract deployment logic can go here
48
42
  // If no custom logic is needed, call deployContract for the router
49
43
  deployContracts(chain, config) {
50
44
  return __awaiter(this, void 0, void 0, function* () {
51
- const initCalldata = core_1.LiquidityLayerRouter__factory.createInterface().encodeFunctionData('initialize', [config.owner, config.connectionManager, config.interchainGasPaymaster]);
45
+ const initCalldata = this.getInitArgs(config, core_1.LiquidityLayerRouter__factory.createInterface());
52
46
  const router = yield this.deployContract(chain, 'router', [], {
53
47
  create2Salt: this.create2salt,
54
48
  initCalldata,
55
49
  });
56
50
  const bridgeAdapters = {};
57
- if (config.circle) {
58
- bridgeAdapters.circleBridgeAdapter = yield this.deployCircleBridgeAdapter(chain, config.circle, config.owner, router);
59
- }
60
- if (config.portal) {
61
- bridgeAdapters.portalAdapter = yield this.deployPortalAdapter(chain, config.portal, config.owner, router);
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
+ }
62
56
  }
63
57
  return Object.assign(Object.assign({}, bridgeAdapters), { router });
64
58
  });
65
59
  }
66
- deployPortalAdapter(chain, adapterConfig, owner, router) {
67
- return __awaiter(this, void 0, void 0, function* () {
68
- const cc = this.multiProvider.getChainConnection(chain);
69
- const initCalldata = core_1.PortalAdapter__factory.createInterface().encodeFunctionData('initialize', [
70
- domains_1.ChainNameToDomainId[chain],
71
- owner,
72
- adapterConfig.portalBridgeAddress,
73
- router.address,
74
- ]);
75
- const portalAdapter = yield this.deployContract(chain, 'portalAdapter', [], {
76
- create2Salt: this.create2salt,
77
- initCalldata,
78
- });
79
- for (const { wormholeDomain, hyperlaneDomain, } of adapterConfig.wormholeDomainMapping) {
80
- const expectedCircleDomain = yield portalAdapter.hyperlaneDomainToWormholeDomain(hyperlaneDomain);
81
- if (expectedCircleDomain === wormholeDomain)
82
- continue;
83
- this.logger(`Set wormhole domain ${wormholeDomain} for hyperlane domain ${hyperlaneDomain}`);
84
- yield cc.handleTx(portalAdapter.addDomain(hyperlaneDomain, wormholeDomain));
85
- }
86
- if (!utils_1.utils.eqAddress(yield router.liquidityLayerAdapters('Portal'), portalAdapter.address)) {
87
- this.logger('Set Portal as LiquidityLayerAdapter on Router');
88
- yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, portalAdapter.address));
89
- }
90
- return portalAdapter;
91
- });
92
- }
93
60
  deployCircleBridgeAdapter(chain, adapterConfig, owner, router) {
94
61
  return __awaiter(this, void 0, void 0, function* () {
95
62
  const cc = this.multiProvider.getChainConnection(chain);
96
63
  const initCalldata = core_1.CircleBridgeAdapter__factory.createInterface().encodeFunctionData('initialize', [
97
64
  owner,
98
- adapterConfig.tokenMessengerAddress,
65
+ adapterConfig.circleBridgeAddress,
99
66
  adapterConfig.messageTransmitterAddress,
100
67
  router.address,
101
68
  ]);
@@ -103,7 +70,8 @@ class LiquidityLayerDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDe
103
70
  create2Salt: this.create2salt,
104
71
  initCalldata,
105
72
  });
106
- if (!utils_1.utils.eqAddress(yield circleBridgeAdapter.tokenSymbolToAddress('USDC'), adapterConfig.usdcAddress)) {
73
+ if ((yield circleBridgeAdapter.tokenSymbolToAddress('USDC')) ===
74
+ ethers_1.ethers.constants.AddressZero) {
107
75
  this.logger(`Set USDC token contract`);
108
76
  yield cc.handleTx(circleBridgeAdapter.addToken(adapterConfig.usdcAddress, 'USDC'));
109
77
  }
@@ -115,10 +83,8 @@ class LiquidityLayerDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDe
115
83
  this.logger(`Set circle domain ${circleDomain} for hyperlane domain ${hyperlaneDomain}`);
116
84
  yield cc.handleTx(circleBridgeAdapter.addDomain(hyperlaneDomain, circleDomain));
117
85
  }
118
- if (!utils_1.utils.eqAddress(yield router.liquidityLayerAdapters('Circle'), circleBridgeAdapter.address)) {
119
- this.logger('Set Circle as LiquidityLayerAdapter on Router');
120
- yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, circleBridgeAdapter.address));
121
- }
86
+ this.logger('Set CircleLiquidityLayerAdapter on Router');
87
+ yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, circleBridgeAdapter.address));
122
88
  return circleBridgeAdapter;
123
89
  });
124
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LiquidityLayerRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAO6B;AAC7B,gDAA6C;AAG7C,2CAAoD;AACpD,iDAI0B;AAG1B,iDAAwD;AACxD,+EAA4E;AAG5E,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,sCAAiB,CAAA;AACnB,CAAC,EAHW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAG5B;AA6BD,MAAa,sBAEX,SAAQ,iDAKT;IACC,YACE,aAAmC,EACnC,SAAgD,EACtC,IAA0B,EAC1B,cAAc,4BAA4B;QAEpD,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,oCAAuB,EAAE,EAAE,CAAC,CAAC;QAHnD,SAAI,GAAJ,IAAI,CAAsB;QAC1B,gBAAW,GAAX,WAAW,CAA+B;IAGtD,CAAC;IAEK,mBAAmB,CACvB,YAAsD;;;;;YAEtD,IAAI,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC;YAC5D,MAAM,OAAM,mBAAmB,YAAC,YAAY,CAAC,CAAC;YAE9C,IAAI,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAAC;YAC3D,MAAM,OAAM,mBAAmB,YAC7B,IAAA,mBAAS,EACP,IAAA,gBAAM,EAAC,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC3C,MAAM,EAAE,SAAS,CAAC,mBAAmB;aACtC,CAAC,CAAC,EACH,CAAC,CAAC,EAAwC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CACxD,CACF,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,uCAAuC,CAAC,CAAC;YACrD,MAAM,OAAM,mBAAmB,YAC7B,IAAA,mBAAS,EACP,IAAA,gBAAM,EAAC,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC3C,MAAM,EAAE,SAAS,CAAC,aAAa;aAChC,CAAC,CAAC,EACH,CAAC,CAAC,EAAkC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAClD,CACF,CAAC;QACJ,CAAC;KAAA;IAED,+CAA+C;IAC/C,mEAAmE;IAC7D,eAAe,CACnB,KAAY,EACZ,MAA4B;;YAE5B,MAAM,YAAY,GAChB,oCAA6B,CAAC,eAAe,EAAE,CAAC,kBAAkB,CAChE,YAAY,EACZ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,sBAAsB,CAAC,CACxE,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC5D,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY;aACb,CAAC,CAAC;YAEH,MAAM,cAAc,GAAqC,EAAE,CAAC;YAE5D,IAAI,MAAM,CAAC,MAAM,EAAE;gBACjB,cAAc,CAAC,mBAAmB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CACvE,KAAK,EACL,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,EACZ,MAAM,CACP,CAAC;aACH;YACD,IAAI,MAAM,CAAC,MAAM,EAAE;gBACjB,cAAc,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3D,KAAK,EACL,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,EACZ,MAAM,CACP,CAAC;aACH;YAED,uCACK,cAAc,KACjB,MAAM,IACN;QACJ,CAAC;KAAA;IAEK,mBAAmB,CACvB,KAAY,EACZ,aAAkC,EAClC,KAAa,EACb,MAA4B;;YAE5B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAExD,MAAM,YAAY,GAChB,6BAAsB,CAAC,eAAe,EAAE,CAAC,kBAAkB,CACzD,YAAY,EACZ;gBACE,6BAAmB,CAAC,KAAK,CAAC;gBAC1B,KAAK;gBACL,aAAa,CAAC,mBAAmB;gBACjC,MAAM,CAAC,OAAO;aACf,CACF,CAAC;YACJ,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAC7C,KAAK,EACL,eAAe,EACf,EAAE,EACF;gBACE,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY;aACb,CACF,CAAC;YAEF,KAAK,MAAM,EACT,cAAc,EACd,eAAe,GAChB,IAAI,aAAa,CAAC,qBAAqB,EAAE;gBACxC,MAAM,oBAAoB,GACxB,MAAM,aAAa,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC;gBACvE,IAAI,oBAAoB,KAAK,cAAc;oBAAE,SAAS;gBAEtD,IAAI,CAAC,MAAM,CACT,uBAAuB,cAAc,yBAAyB,eAAe,EAAE,CAChF,CAAC;gBACF,MAAM,EAAE,CAAC,QAAQ,CACf,aAAa,CAAC,SAAS,CAAC,eAAe,EAAE,cAAc,CAAC,CACzD,CAAC;aACH;YAED,IACE,CAAC,aAAK,CAAC,SAAS,CACd,MAAM,MAAM,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAC7C,aAAa,CAAC,OAAO,CACtB,EACD;gBACA,IAAI,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC;gBAC7D,MAAM,EAAE,CAAC,QAAQ,CACf,MAAM,CAAC,wBAAwB,CAC7B,aAAa,CAAC,IAAI,EAClB,aAAa,CAAC,OAAO,CACtB,CACF,CAAC;aACH;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;KAAA;IAEK,yBAAyB,CAC7B,KAAY,EACZ,aAAwC,EACxC,KAAa,EACb,MAA4B;;YAE5B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACxD,MAAM,YAAY,GAChB,mCAA4B,CAAC,eAAe,EAAE,CAAC,kBAAkB,CAC/D,YAAY,EACZ;gBACE,KAAK;gBACL,aAAa,CAAC,qBAAqB;gBACnC,aAAa,CAAC,yBAAyB;gBACvC,MAAM,CAAC,OAAO;aACf,CACF,CAAC;YACJ,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,cAAc,CACnD,KAAK,EACL,qBAAqB,EACrB,EAAE,EACF;gBACE,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY;aACb,CACF,CAAC;YAEF,IACE,CAAC,aAAK,CAAC,SAAS,CACd,MAAM,mBAAmB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EACtD,aAAa,CAAC,WAAW,CAC1B,EACD;gBACA,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;gBACvC,MAAM,EAAE,CAAC,QAAQ,CACf,mBAAmB,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAChE,CAAC;aACH;YACD,sBAAsB;YACtB,KAAK,MAAM,EACT,YAAY,EACZ,eAAe,GAChB,IAAI,aAAa,CAAC,mBAAmB,EAAE;gBACtC,MAAM,oBAAoB,GACxB,MAAM,mBAAmB,CAAC,6BAA6B,CACrD,eAAe,CAChB,CAAC;gBACJ,IAAI,oBAAoB,KAAK,YAAY;oBAAE,SAAS;gBAEpD,IAAI,CAAC,MAAM,CACT,qBAAqB,YAAY,yBAAyB,eAAe,EAAE,CAC5E,CAAC;gBACF,MAAM,EAAE,CAAC,QAAQ,CACf,mBAAmB,CAAC,SAAS,CAAC,eAAe,EAAE,YAAY,CAAC,CAC7D,CAAC;aACH;YAED,IACE,CAAC,aAAK,CAAC,SAAS,CACd,MAAM,MAAM,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAC7C,mBAAmB,CAAC,OAAO,CAC5B,EACD;gBACA,IAAI,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC;gBAC7D,MAAM,EAAE,CAAC,QAAQ,CACf,MAAM,CAAC,wBAAwB,CAC7B,aAAa,CAAC,IAAI,EAClB,mBAAmB,CAAC,OAAO,CAC5B,CACF,CAAC;aACH;YAED,OAAO,mBAAmB,CAAC;QAC7B,CAAC;KAAA;CACF;AA7ND,wDA6NC"}
1
+ {"version":3,"file":"LiquidityLayerRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,23 @@
1
+ import { RouterInterface } from '@hyperlane-xyz/core/dist/contracts/Router';
1
2
  import { HyperlaneCore } from '../../core/HyperlaneCore';
2
3
  import { InterchainAccountContracts, InterchainAccountFactories, InterchainQueryContracts, InterchainQueryFactories } from '../../middleware';
3
4
  import { MultiProvider } from '../../providers/MultiProvider';
5
+ import { RouterContracts, RouterFactories } from '../../router';
4
6
  import { ChainMap, ChainName } from '../../types';
5
7
  import { HyperlaneRouterDeployer } from '../router/HyperlaneRouterDeployer';
6
8
  import { RouterConfig } from '../router/types';
7
9
  export declare type InterchainAccountConfig = RouterConfig;
8
- export declare class InterchainAccountDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, InterchainAccountConfig, InterchainAccountContracts, InterchainAccountFactories> {
10
+ export declare abstract class MiddlewareRouterDeployer<Chain extends ChainName, MiddlewareRouterConfig extends RouterConfig, MiddlewareRouterContracts extends RouterContracts, MiddlewareFactories extends RouterFactories> extends HyperlaneRouterDeployer<Chain, MiddlewareRouterConfig, MiddlewareRouterContracts, MiddlewareFactories> {
11
+ getInitArgs(config: MiddlewareRouterConfig, routerInterface: RouterInterface): string;
12
+ }
13
+ export declare class InterchainAccountDeployer<Chain extends ChainName> extends MiddlewareRouterDeployer<Chain, InterchainAccountConfig, InterchainAccountContracts, InterchainAccountFactories> {
9
14
  protected core: HyperlaneCore<Chain>;
10
15
  protected create2salt: string;
11
16
  constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, InterchainAccountConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
12
17
  deployContracts(chain: Chain, config: InterchainAccountConfig): Promise<InterchainAccountContracts>;
13
18
  }
14
19
  export declare type InterchainQueryConfig = RouterConfig;
15
- export declare class InterchainQueryDeployer<Chain extends ChainName> extends HyperlaneRouterDeployer<Chain, InterchainQueryConfig, InterchainQueryContracts, InterchainQueryFactories> {
20
+ export declare class InterchainQueryDeployer<Chain extends ChainName> extends MiddlewareRouterDeployer<Chain, InterchainQueryConfig, InterchainQueryContracts, InterchainQueryFactories> {
16
21
  protected core: HyperlaneCore<Chain>;
17
22
  protected create2salt: string;
18
23
  constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, InterchainQueryConfig>, core: HyperlaneCore<Chain>, create2salt?: string);