@hyperlane-xyz/cli 3.8.2 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/commands/options.d.ts +1 -0
- package/dist/src/commands/options.d.ts.map +1 -1
- package/dist/src/commands/options.js +5 -0
- package/dist/src/commands/options.js.map +1 -1
- package/dist/src/commands/send.d.ts.map +1 -1
- package/dist/src/commands/send.js +4 -1
- package/dist/src/commands/send.js.map +1 -1
- package/dist/src/config/warp.d.ts +29 -7
- package/dist/src/config/warp.d.ts.map +1 -1
- package/dist/src/config/warp.js +34 -6
- package/dist/src/config/warp.js.map +1 -1
- package/dist/src/context.d.ts +12 -2
- package/dist/src/context.d.ts.map +1 -1
- package/dist/src/context.js +16 -2
- package/dist/src/context.js.map +1 -1
- package/dist/src/deploy/utils.d.ts.map +1 -1
- package/dist/src/deploy/utils.js +3 -1
- package/dist/src/deploy/utils.js.map +1 -1
- package/dist/src/deploy/warp.js +10 -7
- package/dist/src/deploy/warp.js.map +1 -1
- package/dist/src/send/transfer.d.ts +2 -1
- package/dist/src/send/transfer.d.ts.map +1 -1
- package/dist/src/send/transfer.js +54 -97
- package/dist/src/send/transfer.js.map +1 -1
- package/dist/src/utils/balances.d.ts +0 -2
- package/dist/src/utils/balances.d.ts.map +1 -1
- package/dist/src/utils/balances.js +0 -9
- package/dist/src/utils/balances.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/examples/contract-artifacts.yaml +4 -4
- package/examples/warp-route-deployment.yaml +2 -1
- package/package.json +3 -3
|
@@ -3,6 +3,7 @@ export declare const keyCommandOption: Options;
|
|
|
3
3
|
export declare const chainsCommandOption: Options;
|
|
4
4
|
export declare const outDirCommandOption: Options;
|
|
5
5
|
export declare const coreArtifactsOption: Options;
|
|
6
|
+
export declare const warpConfigOption: Options;
|
|
6
7
|
export declare const agentConfigurationOption: Options;
|
|
7
8
|
export declare const fileFormatOption: Options;
|
|
8
9
|
export declare const outputFileOption: (defaultPath: string) => Options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,eAAO,MAAM,gBAAgB,EAAE,OAK9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAIjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAGtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAM9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,gBAAiB,MAAM,KAAG,OAKrD,CAAC;AAEH,eAAO,MAAM,sBAAsB,EAAE,OAKpC,CAAC"}
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,eAAO,MAAM,gBAAgB,EAAE,OAK9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OAIjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAI9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAGtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAM9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,gBAAiB,MAAM,KAAG,OAKrD,CAAC;AAEH,eAAO,MAAM,sBAAsB,EAAE,OAKpC,CAAC"}
|
|
@@ -20,6 +20,11 @@ export const coreArtifactsOption = {
|
|
|
20
20
|
description: 'File path to core deployment output artifacts',
|
|
21
21
|
alias: 'a',
|
|
22
22
|
};
|
|
23
|
+
export const warpConfigOption = {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description: 'File path to Warp config',
|
|
26
|
+
alias: 'w',
|
|
27
|
+
};
|
|
23
28
|
export const agentConfigurationOption = {
|
|
24
29
|
type: 'string',
|
|
25
30
|
description: 'File path to agent configuration artifacts',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAY;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,sFAAsF;IACxF,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kDAAkD;IAC/D,OAAO,EAAE,uBAAuB;IAChC,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,qCAAqC;IAClD,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,+CAA+C;IAC5D,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAY;IAC/C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,4CAA4C;CAC1D,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAY;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,oBAAoB;IACjC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAmB,EAAW,EAAE,CAAC,CAAC;IACjE,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,GAAG;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAY;IAC7C,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,GAAG;CACX,CAAC"}
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAY;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,sFAAsF;IACxF,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kDAAkD;IAC/D,OAAO,EAAE,uBAAuB;IAChC,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,qCAAqC;IAClD,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAY;IAC1C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,+CAA+C;IAC5D,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAY;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,0BAA0B;IACvC,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAY;IAC/C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,4CAA4C;CAC1D,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAY;IACvC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,oBAAoB;IACjC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAmB,EAAW,EAAE,CAAC,CAAC;IACjE,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,GAAG;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAY;IAC7C,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,GAAG;CACX,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAW,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAW,MAAM,OAAO,CAAC;AAc/C;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,aAUzB,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { log } from '../../logger.js';
|
|
|
3
3
|
import { sendTestMessage } from '../send/message.js';
|
|
4
4
|
import { sendTestTransfer } from '../send/transfer.js';
|
|
5
5
|
import { ENV } from '../utils/env.js';
|
|
6
|
-
import { chainsCommandOption, coreArtifactsOption, keyCommandOption, } from './options.js';
|
|
6
|
+
import { chainsCommandOption, coreArtifactsOption, keyCommandOption, warpConfigOption, } from './options.js';
|
|
7
7
|
/**
|
|
8
8
|
* Parent command
|
|
9
9
|
*/
|
|
@@ -84,6 +84,7 @@ const transferCommand = {
|
|
|
84
84
|
describe: 'Send a test token transfer on a warp route',
|
|
85
85
|
builder: (yargs) => yargs.options({
|
|
86
86
|
...messageOptions,
|
|
87
|
+
warp: warpConfigOption,
|
|
87
88
|
router: {
|
|
88
89
|
type: 'string',
|
|
89
90
|
description: 'The address of the token router contract',
|
|
@@ -102,6 +103,7 @@ const transferCommand = {
|
|
|
102
103
|
const key = argv.key || ENV.HYP_KEY;
|
|
103
104
|
const chainConfigPath = argv.chains;
|
|
104
105
|
const coreArtifactsPath = argv.core;
|
|
106
|
+
const warpConfigPath = argv.warp;
|
|
105
107
|
const origin = argv.origin;
|
|
106
108
|
const destination = argv.destination;
|
|
107
109
|
const timeoutSec = argv.timeout;
|
|
@@ -113,6 +115,7 @@ const transferCommand = {
|
|
|
113
115
|
key,
|
|
114
116
|
chainConfigPath,
|
|
115
117
|
coreArtifactsPath,
|
|
118
|
+
warpConfigPath,
|
|
116
119
|
origin,
|
|
117
120
|
destination,
|
|
118
121
|
routerAddress,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,11 @@ import { z } from 'zod';
|
|
|
2
2
|
import { TokenType } from '@hyperlane-xyz/sdk';
|
|
3
3
|
import { FileFormat } from '../utils/files.js';
|
|
4
4
|
export declare const WarpRouteDeployConfigSchema: z.ZodObject<{
|
|
5
|
-
base: z.ZodObject<{
|
|
5
|
+
base: z.ZodEffects<z.ZodObject<{
|
|
6
6
|
mailbox: z.ZodOptional<z.ZodString>;
|
|
7
7
|
interchainSecurityModule: z.ZodOptional<z.ZodString>;
|
|
8
8
|
foreignDeployment: z.ZodOptional<z.ZodString>;
|
|
9
|
-
type: z.ZodUnion<[z.ZodLiteral<TokenType.native>, z.ZodLiteral<TokenType.collateral>]>;
|
|
9
|
+
type: z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<TokenType.native>, z.ZodLiteral<TokenType.collateral>]>, z.ZodLiteral<TokenType.collateralVault>]>;
|
|
10
10
|
chainName: z.ZodString;
|
|
11
11
|
address: z.ZodOptional<z.ZodString>;
|
|
12
12
|
isNft: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -14,7 +14,7 @@ export declare const WarpRouteDeployConfigSchema: z.ZodObject<{
|
|
|
14
14
|
symbol: z.ZodOptional<z.ZodString>;
|
|
15
15
|
decimals: z.ZodOptional<z.ZodNumber>;
|
|
16
16
|
}, "strip", z.ZodTypeAny, {
|
|
17
|
-
type: TokenType.collateral | TokenType.native;
|
|
17
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
18
18
|
chainName: string;
|
|
19
19
|
mailbox?: string | undefined;
|
|
20
20
|
interchainSecurityModule?: string | undefined;
|
|
@@ -25,7 +25,29 @@ export declare const WarpRouteDeployConfigSchema: z.ZodObject<{
|
|
|
25
25
|
symbol?: string | undefined;
|
|
26
26
|
decimals?: number | undefined;
|
|
27
27
|
}, {
|
|
28
|
-
type: TokenType.collateral | TokenType.native;
|
|
28
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
29
|
+
chainName: string;
|
|
30
|
+
mailbox?: string | undefined;
|
|
31
|
+
interchainSecurityModule?: string | undefined;
|
|
32
|
+
foreignDeployment?: string | undefined;
|
|
33
|
+
address?: string | undefined;
|
|
34
|
+
isNft?: boolean | undefined;
|
|
35
|
+
name?: string | undefined;
|
|
36
|
+
symbol?: string | undefined;
|
|
37
|
+
decimals?: number | undefined;
|
|
38
|
+
}>, {
|
|
39
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
40
|
+
chainName: string;
|
|
41
|
+
mailbox?: string | undefined;
|
|
42
|
+
interchainSecurityModule?: string | undefined;
|
|
43
|
+
foreignDeployment?: string | undefined;
|
|
44
|
+
address?: string | undefined;
|
|
45
|
+
isNft?: boolean | undefined;
|
|
46
|
+
name?: string | undefined;
|
|
47
|
+
symbol?: string | undefined;
|
|
48
|
+
decimals?: number | undefined;
|
|
49
|
+
}, {
|
|
50
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
29
51
|
chainName: string;
|
|
30
52
|
mailbox?: string | undefined;
|
|
31
53
|
interchainSecurityModule?: string | undefined;
|
|
@@ -63,7 +85,7 @@ export declare const WarpRouteDeployConfigSchema: z.ZodObject<{
|
|
|
63
85
|
}>, "atleastone">;
|
|
64
86
|
}, "strip", z.ZodTypeAny, {
|
|
65
87
|
base: {
|
|
66
|
-
type: TokenType.collateral | TokenType.native;
|
|
88
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
67
89
|
chainName: string;
|
|
68
90
|
mailbox?: string | undefined;
|
|
69
91
|
interchainSecurityModule?: string | undefined;
|
|
@@ -93,7 +115,7 @@ export declare const WarpRouteDeployConfigSchema: z.ZodObject<{
|
|
|
93
115
|
}[]];
|
|
94
116
|
}, {
|
|
95
117
|
base: {
|
|
96
|
-
type: TokenType.collateral | TokenType.native;
|
|
118
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
97
119
|
chainName: string;
|
|
98
120
|
mailbox?: string | undefined;
|
|
99
121
|
interchainSecurityModule?: string | undefined;
|
|
@@ -129,7 +151,7 @@ export type WarpRouteDeployConfig = {
|
|
|
129
151
|
};
|
|
130
152
|
export declare function readWarpRouteDeployConfig(filePath: string): {
|
|
131
153
|
base: {
|
|
132
|
-
type: TokenType.collateral | TokenType.native;
|
|
154
|
+
type: TokenType.collateral | TokenType.collateralVault | TokenType.native;
|
|
133
155
|
chainName: string;
|
|
134
156
|
mailbox?: string | undefined;
|
|
135
157
|
interchainSecurityModule?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAS,MAAM,oBAAoB,CAAC;AAOtD,OAAO,EAAE,UAAU,EAAmC,MAAM,mBAAmB,CAAC;AAUhF,eAAO,MAAM,2BAA2B
|
|
1
|
+
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAS,MAAM,oBAAoB,CAAC;AAOtD,OAAO,EAAE,UAAU,EAAmC,MAAM,mBAAmB,CAAC;AAUhF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0CtC,CAAC;AAEH,KAAK,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC3B,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAClD,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYzD;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,GAAG,WAEvD;AAED,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,OAAO,EACP,eAAe,GAChB,EAAE;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;CACzB,iBAgEA"}
|
package/dist/src/config/warp.js
CHANGED
|
@@ -12,8 +12,12 @@ const ConnectionConfigSchema = {
|
|
|
12
12
|
foreignDeployment: z.string().optional(),
|
|
13
13
|
};
|
|
14
14
|
export const WarpRouteDeployConfigSchema = z.object({
|
|
15
|
-
base: z
|
|
16
|
-
|
|
15
|
+
base: z
|
|
16
|
+
.object({
|
|
17
|
+
type: z
|
|
18
|
+
.literal(TokenType.native)
|
|
19
|
+
.or(z.literal(TokenType.collateral))
|
|
20
|
+
.or(z.literal(TokenType.collateralVault)),
|
|
17
21
|
chainName: z.string(),
|
|
18
22
|
address: ZHash.optional(),
|
|
19
23
|
isNft: z.boolean().optional(),
|
|
@@ -21,6 +25,16 @@ export const WarpRouteDeployConfigSchema = z.object({
|
|
|
21
25
|
symbol: z.string().optional(),
|
|
22
26
|
decimals: z.number().optional(),
|
|
23
27
|
...ConnectionConfigSchema,
|
|
28
|
+
})
|
|
29
|
+
.refine((data) => {
|
|
30
|
+
// For collateralVault Warp Routes, address will specify the vault
|
|
31
|
+
if (data.type === TokenType.collateralVault &&
|
|
32
|
+
data.address === ethers.constants.AddressZero)
|
|
33
|
+
return false;
|
|
34
|
+
return true;
|
|
35
|
+
}, {
|
|
36
|
+
message: 'Vault address is required when type is collateralVault',
|
|
37
|
+
path: ['address'],
|
|
24
38
|
}),
|
|
25
39
|
synthetics: z
|
|
26
40
|
.array(z.object({
|
|
@@ -53,15 +67,29 @@ export async function createWarpRouteDeployConfig({ format, outPath, chainConfig
|
|
|
53
67
|
const isNative = await confirm({
|
|
54
68
|
message: 'Are you creating a route for the native token of the base chain (e.g. Ether on Ethereum)?',
|
|
55
69
|
});
|
|
56
|
-
const baseType = isNative ? TokenType.native : TokenType.collateral;
|
|
57
|
-
const baseAddress = isNative
|
|
58
|
-
? ethers.constants.AddressZero
|
|
59
|
-
: await input({ message: 'Enter the token address' });
|
|
60
70
|
const isNft = isNative
|
|
61
71
|
? false
|
|
62
72
|
: await confirm({ message: 'Is this an NFT (i.e. ERC-721)?' });
|
|
73
|
+
const isYieldBearing = isNative || isNft
|
|
74
|
+
? false
|
|
75
|
+
: await confirm({
|
|
76
|
+
message: 'Do you want this warp route to be yield-bearing (i.e. deposits into ERC-4626 vault)?',
|
|
77
|
+
});
|
|
78
|
+
const addressMessage = `Enter the ${isYieldBearing ? 'ERC-4626 vault' : 'collateral token'} address`;
|
|
79
|
+
const baseAddress = isNative
|
|
80
|
+
? ethers.constants.AddressZero
|
|
81
|
+
: await input({ message: addressMessage });
|
|
63
82
|
const syntheticChains = await runMultiChainSelectionStep(customChains, 'Select chains to which the base token will be connected');
|
|
64
83
|
// TODO add more prompts here to support customizing the token metadata
|
|
84
|
+
let baseType;
|
|
85
|
+
if (isNative) {
|
|
86
|
+
baseType = TokenType.native;
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
baseType = isYieldBearing
|
|
90
|
+
? TokenType.collateralVault
|
|
91
|
+
: TokenType.collateral;
|
|
92
|
+
}
|
|
65
93
|
const result = {
|
|
66
94
|
base: {
|
|
67
95
|
chainName: baseChain,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAc,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,sBAAsB,GAAG;IAC7B,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE;IACzB,wBAAwB,EAAE,KAAK,CAAC,QAAQ,EAAE;IAC1C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"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"}
|
package/dist/src/context.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { ChainMap, ChainMetadata, ChainName, HyperlaneContractsMap, MultiProvider } from '@hyperlane-xyz/sdk';
|
|
2
|
+
import { ChainMap, ChainMetadata, ChainName, HyperlaneContractsMap, MultiProvider, WarpCoreConfig } from '@hyperlane-xyz/sdk';
|
|
3
3
|
export declare const sdkContractAddressesMap: HyperlaneContractsMap<any>;
|
|
4
4
|
export declare function getMergedContractAddresses(artifacts?: HyperlaneContractsMap<any>, chains?: ChainName[]): HyperlaneContractsMap<any>;
|
|
5
5
|
interface ContextSettings {
|
|
@@ -13,6 +13,10 @@ interface ContextSettings {
|
|
|
13
13
|
promptMessage?: string;
|
|
14
14
|
};
|
|
15
15
|
skipConfirmation?: boolean;
|
|
16
|
+
warpConfig?: {
|
|
17
|
+
warpConfigPath?: string;
|
|
18
|
+
promptMessage?: string;
|
|
19
|
+
};
|
|
16
20
|
}
|
|
17
21
|
interface CommandContextBase {
|
|
18
22
|
customChains: ChainMap<ChainMetadata>;
|
|
@@ -30,8 +34,14 @@ type CommandContext<P extends ContextSettings> = CommandContextBase & (P extends
|
|
|
30
34
|
coreArtifacts: HyperlaneContractsMap<any>;
|
|
31
35
|
} : {
|
|
32
36
|
coreArtifacts: undefined;
|
|
37
|
+
}) & (P extends {
|
|
38
|
+
warpConfig: object;
|
|
39
|
+
} ? {
|
|
40
|
+
warpCoreConfig: WarpCoreConfig;
|
|
41
|
+
} : {
|
|
42
|
+
warpCoreConfig: undefined;
|
|
33
43
|
});
|
|
34
|
-
export declare function getContext<P extends ContextSettings>({ chainConfigPath, coreConfig, keyConfig, skipConfirmation, }: P): Promise<CommandContext<P>>;
|
|
44
|
+
export declare function getContext<P extends ContextSettings>({ chainConfigPath, coreConfig, keyConfig, skipConfirmation, warpConfig, }: P): Promise<CommandContext<P>>;
|
|
35
45
|
export declare function getMultiProvider(customChains: ChainMap<ChainMetadata>, signer?: ethers.Signer): MultiProvider<object>;
|
|
36
46
|
export {};
|
|
37
47
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,aAAa,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,aAAa,EACb,cAAc,EAGf,MAAM,oBAAoB,CAAC;AAQ5B,eAAO,MAAM,uBAAuB,EAAE,qBAAqB,CAAC,GAAG,CAG9D,CAAC;AAEF,wBAAgB,0BAA0B,CACxC,SAAS,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACtC,MAAM,CAAC,EAAE,SAAS,EAAE,8BAoBrB;AAED,UAAU,eAAe;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE;QACX,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,SAAS,CAAC,EAAE;QACV,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE;QACX,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,UAAU,kBAAkB;IAC1B,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;CAC9B;AAGD,KAAK,cAAc,CAAC,CAAC,SAAS,eAAe,IAAI,kBAAkB,GACjE,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAC5B;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;CAAE,GACzB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC,GAC1B,CAAC,CAAC,SAAS;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAA;CAAE,GAC7C;IAAE,aAAa,EAAE,SAAS,CAAA;CAAE,CAAC,GACjC,CAAC,CAAC,SAAS;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,cAAc,EAAE,cAAc,CAAA;CAAE,GAClC;IAAE,cAAc,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAErC,wBAAsB,UAAU,CAAC,CAAC,SAAS,eAAe,EAAE,EAC1D,eAAe,EACf,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,UAAU,GACX,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAqDhC;AAED,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,EACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,yBAMvB"}
|
package/dist/src/context.js
CHANGED
|
@@ -3,6 +3,7 @@ import { MultiProvider, chainMetadata, hyperlaneEnvironments, } from '@hyperlane
|
|
|
3
3
|
import { objFilter, objMap, objMerge } from '@hyperlane-xyz/utils';
|
|
4
4
|
import { runDeploymentArtifactStep } from './config/artifacts.js';
|
|
5
5
|
import { readChainConfigsIfExists } from './config/chain.js';
|
|
6
|
+
import { readYamlOrJson } from './utils/files.js';
|
|
6
7
|
import { keyToSigner } from './utils/keys.js';
|
|
7
8
|
export const sdkContractAddressesMap = {
|
|
8
9
|
...hyperlaneEnvironments.testnet,
|
|
@@ -16,7 +17,7 @@ export function getMergedContractAddresses(artifacts, chains) {
|
|
|
16
17
|
}
|
|
17
18
|
return objMerge(sdkContractsAddressesToRecover, artifacts || {});
|
|
18
19
|
}
|
|
19
|
-
export async function getContext({ chainConfigPath, coreConfig, keyConfig, skipConfirmation, }) {
|
|
20
|
+
export async function getContext({ chainConfigPath, coreConfig, keyConfig, skipConfirmation, warpConfig, }) {
|
|
20
21
|
const customChains = readChainConfigsIfExists(chainConfigPath);
|
|
21
22
|
let signer = undefined;
|
|
22
23
|
if (keyConfig) {
|
|
@@ -28,7 +29,7 @@ export async function getContext({ chainConfigPath, coreConfig, keyConfig, skipC
|
|
|
28
29
|
else
|
|
29
30
|
key = await input({
|
|
30
31
|
message: keyConfig.promptMessage ||
|
|
31
|
-
'Please enter a private key or use the HYP_KEY environment variable',
|
|
32
|
+
'Please enter a private key or use the HYP_KEY environment variable.',
|
|
32
33
|
});
|
|
33
34
|
signer = keyToSigner(key);
|
|
34
35
|
}
|
|
@@ -42,12 +43,25 @@ export async function getContext({ chainConfigPath, coreConfig, keyConfig, skipC
|
|
|
42
43
|
skipConfirmation,
|
|
43
44
|
})) || {};
|
|
44
45
|
}
|
|
46
|
+
let warpCoreConfig = undefined;
|
|
47
|
+
if (warpConfig) {
|
|
48
|
+
let warpConfigPath = warpConfig.warpConfigPath;
|
|
49
|
+
if (!warpConfigPath) {
|
|
50
|
+
// prompt for path to token config
|
|
51
|
+
warpConfigPath = await input({
|
|
52
|
+
message: warpConfig.promptMessage ||
|
|
53
|
+
'Please provide a path to the Warp config',
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
warpCoreConfig = readYamlOrJson(warpConfigPath);
|
|
57
|
+
}
|
|
45
58
|
const multiProvider = getMultiProvider(customChains, signer);
|
|
46
59
|
return {
|
|
47
60
|
customChains,
|
|
48
61
|
signer,
|
|
49
62
|
multiProvider,
|
|
50
63
|
coreArtifacts,
|
|
64
|
+
warpCoreConfig,
|
|
51
65
|
};
|
|
52
66
|
}
|
|
53
67
|
export function getMultiProvider(customChains, signer) {
|
package/dist/src/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,OAAO,EAKL,aAAa,
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EACf,MAAM,oBAAoB,CAAC;AAQ5B,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EACf,MAAM,oBAAoB,CAAC;AAQ5B,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAiBA;AAED,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IAGf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAsBA;AAGD,wBAAgB,WAAW,CACzB,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,GACrD,OAAO,CAET;AAGD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD"}
|
package/dist/src/deploy/utils.js
CHANGED
|
@@ -7,8 +7,10 @@ export async function runPreflightChecks({ origin, remotes, signer, multiProvide
|
|
|
7
7
|
log('Running pre-flight checks...');
|
|
8
8
|
if (!origin || !remotes?.length)
|
|
9
9
|
throw new Error('Invalid chain selection');
|
|
10
|
+
logGreen('Chain selections are valid ✅');
|
|
10
11
|
if (remotes.includes(origin))
|
|
11
12
|
throw new Error('Origin and remotes must be distinct');
|
|
13
|
+
logGreen('Origin and remote are distinct ✅');
|
|
12
14
|
return runPreflightChecksForChains({
|
|
13
15
|
chains: [origin, ...remotes],
|
|
14
16
|
signer,
|
|
@@ -18,7 +20,7 @@ export async function runPreflightChecks({ origin, remotes, signer, multiProvide
|
|
|
18
20
|
});
|
|
19
21
|
}
|
|
20
22
|
export async function runPreflightChecksForChains({ chains, signer, multiProvider, minGas, chainsToGasCheck, }) {
|
|
21
|
-
log('Running pre-flight checks...');
|
|
23
|
+
log('Running pre-flight checks for chains...');
|
|
22
24
|
if (!chains?.length)
|
|
23
25
|
throw new Error('Empty chain selection');
|
|
24
26
|
for (const chain of chains) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GAQjB;IACC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAEpC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,OAAO,2BAA2B,CAAC;QACjC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM;QACN,aAAa;QACb,MAAM;QACN,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GASjB;IACC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GAQjB;IACC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAEpC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC5E,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IAEzC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IAE7C,OAAO,2BAA2B,CAAC;QACjC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM;QACN,aAAa;QACb,MAAM;QACN,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GASjB;IACC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAE/C,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;QACrE,IAAI,QAAQ,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ;YAC7C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IACD,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE/B,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE9B,MAAM,iBAAiB,CACrB,aAAa,EACb,MAAM,EACN,gBAAgB,IAAI,MAAM,EAC1B,MAAM,CACP,CAAC;IACF,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AACxC,CAAC;AAED,oBAAoB;AACpB,MAAM,UAAU,WAAW,CACzB,MAAsD;IAEtD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AAC1C,CAAC"}
|
package/dist/src/deploy/warp.js
CHANGED
|
@@ -60,7 +60,8 @@ async function runBuildConfigStep({ warpRouteConfig, multiProvider, signer, core
|
|
|
60
60
|
const configMap = {
|
|
61
61
|
[baseChainName]: {
|
|
62
62
|
type: baseType,
|
|
63
|
-
token: baseType === TokenType.collateral
|
|
63
|
+
token: baseType === TokenType.collateral ||
|
|
64
|
+
baseType === TokenType.collateralVault
|
|
64
65
|
? base.address
|
|
65
66
|
: ethers.constants.AddressZero,
|
|
66
67
|
owner,
|
|
@@ -68,7 +69,7 @@ async function runBuildConfigStep({ warpRouteConfig, multiProvider, signer, core
|
|
|
68
69
|
interchainSecurityModule: base.interchainSecurityModule ||
|
|
69
70
|
mergedContractAddrs[baseChainName]?.interchainSecurityModule ||
|
|
70
71
|
mergedContractAddrs[baseChainName]?.multisigIsm,
|
|
71
|
-
// ismFactory: mergedContractAddrs[baseChainName].
|
|
72
|
+
// ismFactory: mergedContractAddrs[baseChainName].domainRoutingIsmFactory, // TODO fix when updating from routingIsm
|
|
72
73
|
foreignDeployment: base.foreignDeployment,
|
|
73
74
|
name: baseMetadata.name,
|
|
74
75
|
symbol: baseMetadata.symbol,
|
|
@@ -87,7 +88,7 @@ async function runBuildConfigStep({ warpRouteConfig, multiProvider, signer, core
|
|
|
87
88
|
interchainSecurityModule: synthetic.interchainSecurityModule ||
|
|
88
89
|
mergedContractAddrs[sChainName]?.interchainSecurityModule ||
|
|
89
90
|
mergedContractAddrs[sChainName]?.multisigIsm,
|
|
90
|
-
// ismFactory: mergedContractAddrs[sChainName].
|
|
91
|
+
// ismFactory: mergedContractAddrs[sChainName].domainRoutingIsmFactory, // TODO fix
|
|
91
92
|
foreignDeployment: synthetic.foreignDeployment,
|
|
92
93
|
};
|
|
93
94
|
}
|
|
@@ -127,6 +128,7 @@ async function runDeployPlanStep({ configMap, isNft, origin, remotes, signer, sk
|
|
|
127
128
|
const baseName = getTokenName(baseToken);
|
|
128
129
|
logBlue('\nDeployment plan');
|
|
129
130
|
logGray('===============');
|
|
131
|
+
log(`Collateral type will be ${baseToken.type}`);
|
|
130
132
|
log(`Transaction signer and owner of new contracts will be ${address}`);
|
|
131
133
|
log(`Deploying a warp route with a base of ${baseName} token on ${origin}`);
|
|
132
134
|
log(`Connecting it to new synthetic tokens on ${remotes.join(', ')}`);
|
|
@@ -144,7 +146,7 @@ async function executeDeploy(params) {
|
|
|
144
146
|
const { configMap, isNft, multiProvider, outPath } = params;
|
|
145
147
|
const [contractsFilePath, tokenConfigPath] = prepNewArtifactsFiles(outPath, [
|
|
146
148
|
{ filename: 'warp-route-deployment', description: 'Contract addresses' },
|
|
147
|
-
{ filename: 'warp-
|
|
149
|
+
{ filename: 'warp-config', description: 'Warp config' },
|
|
148
150
|
]);
|
|
149
151
|
const deployer = isNft
|
|
150
152
|
? new HypERC721Deployer(multiProvider)
|
|
@@ -156,7 +158,7 @@ async function executeDeploy(params) {
|
|
|
156
158
|
writeWarpUiTokenConfig(tokenConfigPath, deployedContracts, params);
|
|
157
159
|
logBlue('Deployment is complete!');
|
|
158
160
|
logBlue(`Contract address artifacts are in ${contractsFilePath}`);
|
|
159
|
-
logBlue(`Warp
|
|
161
|
+
logBlue(`Warp config is in ${tokenConfigPath}`);
|
|
160
162
|
}
|
|
161
163
|
async function fetchBaseTokenMetadata(base, multiProvider) {
|
|
162
164
|
const { type, name, symbol, chainName, address, decimals } = base;
|
|
@@ -172,14 +174,15 @@ async function fetchBaseTokenMetadata(base, multiProvider) {
|
|
|
172
174
|
else
|
|
173
175
|
throw new Error(`No native token metadata for ${chainName}`);
|
|
174
176
|
}
|
|
175
|
-
else if (base.type === TokenType.
|
|
177
|
+
else if (base.type === TokenType.collateralVault ||
|
|
178
|
+
(base.type === TokenType.collateral && address)) {
|
|
176
179
|
// If it's a collateral type, use a TokenAdapter to query for its metadata
|
|
177
180
|
log(`Fetching token metadata for ${address} on ${chainName}}`);
|
|
178
181
|
const adapter = new EvmTokenAdapter(chainName, MultiProtocolProvider.fromMultiProvider(multiProvider), { token: address });
|
|
179
182
|
return adapter.getMetadata();
|
|
180
183
|
}
|
|
181
184
|
else {
|
|
182
|
-
throw new Error(`Unsupported token: ${base}. Consider setting token metadata in your deployment config.`);
|
|
185
|
+
throw new Error(`Unsupported token: ${base.type}. Consider setting token metadata in your deployment config.`);
|
|
183
186
|
}
|
|
184
187
|
}
|
|
185
188
|
function getTokenName(token) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAIL,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EAGjB,qBAAqB,EAGrB,sBAAsB,EAGtB,SAAS,EAET,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAW,YAAY,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAEL,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACL,MAAM,EACN,qBAAqB,EACrB,oBAAoB,EACpB,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,GAAG,EACH,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,OAAO,EACP,gBAAgB,GAQjB;IACC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,UAAU,CAAC;QAChE,eAAe;QACf,UAAU,EAAE,EAAE,iBAAiB,EAAE;QACjC,SAAS,EAAE,EAAE,GAAG,EAAE;QAClB,gBAAgB;KACjB,CAAC,CAAC;IAEH,IACE,CAAC,6BAA6B;QAC9B,CAAC,MAAM,CAAC,6BAA6B,CAAC,EACtC,CAAC;QACD,IAAI,gBAAgB;YAClB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,6BAA6B,GAAG,MAAM,oBAAoB,CACxD,WAAW,EACX,8BAA8B,EAC9B,MAAM,CACP,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,GAAG,CACD,yCAAyC,6BAA6B,EAAE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,yBAAyB,CAC/C,6BAA6B,CAC9B,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC;QACvC,eAAe;QACf,aAAa;QACb,aAAa;QACb,MAAM;QACN,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG;QACvB,GAAG,OAAO;QACV,MAAM;QACN,aAAa;QACb,OAAO;QACP,gBAAgB;KACjB,CAAC;IAEF,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAEtC,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC1C,MAAM,kBAAkB,CAAC;QACvB,GAAG,gBAAgB;QACnB,MAAM,EAAE,uBAAuB;KAChC,CAAC,CAAC;IACH,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,EAChC,eAAe,EACf,aAAa,EACb,MAAM,EACN,aAAa,EACb,gBAAgB,GAOjB;IACC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAChC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEjE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAIL,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EAGjB,qBAAqB,EAGrB,sBAAsB,EAGtB,SAAS,EAET,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAW,YAAY,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAEL,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACL,MAAM,EACN,qBAAqB,EACrB,oBAAoB,EACpB,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,GAAG,EACH,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,OAAO,EACP,gBAAgB,GAQjB;IACC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,UAAU,CAAC;QAChE,eAAe;QACf,UAAU,EAAE,EAAE,iBAAiB,EAAE;QACjC,SAAS,EAAE,EAAE,GAAG,EAAE;QAClB,gBAAgB;KACjB,CAAC,CAAC;IAEH,IACE,CAAC,6BAA6B;QAC9B,CAAC,MAAM,CAAC,6BAA6B,CAAC,EACtC,CAAC;QACD,IAAI,gBAAgB;YAClB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,6BAA6B,GAAG,MAAM,oBAAoB,CACxD,WAAW,EACX,8BAA8B,EAC9B,MAAM,CACP,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,GAAG,CACD,yCAAyC,6BAA6B,EAAE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,yBAAyB,CAC/C,6BAA6B,CAC9B,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC;QACvC,eAAe;QACf,aAAa;QACb,aAAa;QACb,MAAM;QACN,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG;QACvB,GAAG,OAAO;QACV,MAAM;QACN,aAAa;QACb,OAAO;QACP,gBAAgB;KACjB,CAAC;IAEF,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAEtC,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC1C,MAAM,kBAAkB,CAAC;QACvB,GAAG,gBAAgB;QACnB,MAAM,EAAE,uBAAuB;KAChC,CAAC,CAAC;IACH,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,EAChC,eAAe,EACf,aAAa,EACb,MAAM,EACN,aAAa,EACb,gBAAgB,GAOjB;IACC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAChC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEjE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAEvE,GAAG,CACD,oCAAoC,YAAY,CAAC,IAAI,aAAa,YAAY,CAAC,MAAM,eAAe,YAAY,CAAC,QAAQ,EAAE,CAC5H,CAAC;IAEF,MAAM,mBAAmB,GAAG,0BAA0B,CACpD,aAAa,EACb,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAC7B,CAAC;IAEF,qEAAqE;IACrE,2CAA2C;IAC3C,MAAM,SAAS,GAAyC;QACtD,CAAC,aAAa,CAAC,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,KAAK,EACH,QAAQ,KAAK,SAAS,CAAC,UAAU;gBACjC,QAAQ,KAAK,SAAS,CAAC,eAAe;gBACpC,CAAC,CAAC,IAAI,CAAC,OAAQ;gBACf,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW;YAClC,KAAK;YACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,mBAAmB,CAAC,aAAa,CAAC,EAAE,OAAO;YACpE,wBAAwB,EACtB,IAAI,CAAC,wBAAwB;gBAC7B,mBAAmB,CAAC,aAAa,CAAC,EAAE,wBAAwB;gBAC5D,mBAAmB,CAAC,aAAa,CAAC,EAAE,WAAW;YACjD,oHAAoH;YACpH,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,QAAQ,EAAE,YAAY,CAAC,QAAQ;SAChC;KACF,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC;QACvC,SAAS,CAAC,UAAU,CAAC,GAAG;YACtB,IAAI,EAAE,SAAS,CAAC,SAAS;YACzB,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI;YACzC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM;YAC/C,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,CAAC;YACvC,KAAK;YACL,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC,OAAO;YACrE,wBAAwB,EACtB,SAAS,CAAC,wBAAwB;gBAClC,mBAAmB,CAAC,UAAU,CAAC,EAAE,wBAAwB;gBACzD,mBAAmB,CAAC,UAAU,CAAC,EAAE,WAAW;YAC9C,mFAAmF;YACnF,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;SAC/C,CAAC;IACJ,CAAC;IAED,wDAAwD;IACxD,MAAM,oBAAoB,GAAwC,CAAC,SAAS,CAAC,CAAC;IAC9E,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACvD,KAAK,MAAM,KAAK,IAAI,oBAAoB,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,KAAK,CAAC;gBAAE,SAAS;YAC3B,IAAI,gBAAgB;gBAClB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,iBAAiB,KAAK,WAAW,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,CACL,0IAA0I,CAC3I,CAAC;gBACF,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC;gBACxB,OAAO,EAAE,SAAS,KAAK,QAAQ,YAAY,CAAC,KAAK,CAAC,aAAa,KAAK,EAAE;aACvE,CAAC,CAAC;YACH,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC;YACvD,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC3B,OAAO;QACL,SAAS;QACT,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;QACrD,KAAK,EAAE,CAAC,CAAC,KAAK;KACf,CAAC;AACJ,CAAC;AAcD,KAAK,UAAU,iBAAiB,CAAC,EAC/B,SAAS,EACT,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,gBAAgB,GACH;IACb,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACzC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3B,GAAG,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,GAAG,CAAC,yDAAyD,OAAO,EAAE,CAAC,CAAC;IACxE,GAAG,CAAC,yCAAyC,QAAQ,aAAa,MAAM,EAAE,CAAC,CAAC;IAC5E,GAAG,CAAC,4CAA4C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,GAAG,CAAC,wBAAwB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAE1D,IAAI,gBAAgB;QAAE,OAAO;IAE7B,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC;QAChC,OAAO,EAAE,kCAAkC;KAC5C,CAAC,CAAC;IACH,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,MAAoB;IAC/C,OAAO,CAAC,qDAAqD,CAAC,CAAC;IAE/D,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAE5D,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG,qBAAqB,CAAC,OAAO,EAAE;QAC1E,EAAE,QAAQ,EAAE,uBAAuB,EAAE,WAAW,EAAE,oBAAoB,EAAE;QACxE,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE;KACxD,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,KAAK;QACpB,CAAC,CAAC,IAAI,iBAAiB,CAAC,aAAa,CAAC;QACtC,CAAC,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAExC,MAAM,iBAAiB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3D,QAAQ,CAAC,gCAAgC,CAAC,CAAC;IAE3C,GAAG,CAAC,8BAA8B,CAAC,CAAC;IACpC,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC5E,sBAAsB,CAAC,eAAe,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEnE,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACnC,OAAO,CAAC,qCAAqC,iBAAiB,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,qBAAqB,eAAe,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,IAAmC,EACnC,aAA4B;IAE5B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAElE,gEAAgE;IAChE,IAAI,IAAI,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;QAC9B,gEAAgE;QAChE,MAAM,gBAAgB,GACpB,aAAa,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC;QACxD,IAAI,gBAAgB;YAAE,OAAO,gBAAgB,CAAC;;YACzC,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,EAAE,CAAC,CAAC;IACpE,CAAC;SAAM,IACL,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,eAAe;QACvC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,IAAI,OAAO,CAAC,EAC/C,CAAC;QACD,0EAA0E;QAC1E,GAAG,CAAC,+BAA+B,OAAO,OAAO,SAAS,GAAG,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,eAAe,CACjC,SAAS,EACT,qBAAqB,CAAC,iBAAiB,CAAC,aAAa,CAAC,EACtD,EAAE,KAAK,EAAE,OAAiB,EAAE,CAC7B,CAAC;QACF,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAC,IAAI,8DAA8D,CAC9F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAkB;IACtC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;AACjE,CAAC;AACD,SAAS,6BAA6B,CACpC,QAAgB,EAChB,SAAgD,EAChD,EAAE,SAAS,EAAgB;IAE3B,MAAM,SAAS,GAGV,MAAM,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACzC,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAA4B,CAAC,CAAC,OAAO;YACvE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI;SACjC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,SAAgD,EAChD,EAAE,SAAS,EAAE,QAAQ,EAAgB;IAErC,MAAM,cAAc,GAAmB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAEtD,mCAAmC;IACnC,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,wBAAwB,GAC5B,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC;YACzB,SAAS;YACT,QAAQ,EAAE,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC;YAC7C,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,cAAc,EACZ,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAA4B,CAAC,CAAC,OAAO;YACrE,wBAAwB;SACzB,CAAC,CAAC;IACL,CAAC;IAED,8CAA8C;IAC9C,wEAAwE;IACxE,oCAAoC;IACpC,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;YAC3C,IACE,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;gBACrC,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,cAAc;gBAE/C,SAAS;YACX,MAAM,CAAC,WAAW,KAAlB,MAAM,CAAC,WAAW,GAAK,EAAE,EAAC;YAC1B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtB,KAAK,EAAE,oBAAoB,CACzB,YAAY,CAAC,QAAQ,EACrB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,cAAe,CACvB;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,SAAS,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ChainName } from '@hyperlane-xyz/sdk';
|
|
2
2
|
import { Address } from '@hyperlane-xyz/utils';
|
|
3
|
-
export declare function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath, origin, destination, routerAddress, wei, recipient, timeoutSec, skipWaitForDelivery, }: {
|
|
3
|
+
export declare function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath, warpConfigPath, origin, destination, routerAddress, wei, recipient, timeoutSec, skipWaitForDelivery, }: {
|
|
4
4
|
key: string;
|
|
5
5
|
chainConfigPath: string;
|
|
6
6
|
coreArtifactsPath?: string;
|
|
7
|
+
warpConfigPath: string;
|
|
7
8
|
origin?: ChainName;
|
|
8
9
|
destination?: ChainName;
|
|
9
10
|
routerAddress?: Address;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EASV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAW,MAAM,sBAAsB,CAAC;AAQxD,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACH,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,MAAM,EACN,WAAW,EACX,aAAa,EACb,GAAG,EACH,SAAS,EACT,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,iBAgDA"}
|
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { ERC20__factory, HypERC20Collateral__factory, HypERC20__factory, } from '@hyperlane-xyz/core';
|
|
4
|
-
import { EvmHypCollateralAdapter, EvmHypNativeAdapter, EvmHypSyntheticAdapter, HyperlaneCore, MultiProtocolProvider, TokenType, } from '@hyperlane-xyz/sdk';
|
|
1
|
+
import { select } from '@inquirer/prompts';
|
|
2
|
+
import { HyperlaneCore, MultiProtocolProvider, ProviderType, TokenAmount, WarpCore, } from '@hyperlane-xyz/sdk';
|
|
5
3
|
import { timeout } from '@hyperlane-xyz/utils';
|
|
6
|
-
import {
|
|
4
|
+
import { logBlue, logGreen, logRed } from '../../logger.js';
|
|
7
5
|
import { MINIMUM_TEST_SEND_GAS } from '../consts.js';
|
|
8
6
|
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
9
7
|
import { runPreflightChecks } from '../deploy/utils.js';
|
|
10
|
-
import { assertNativeBalances, assertTokenBalance } from '../utils/balances.js';
|
|
11
8
|
import { runSingleChainSelectionStep } from '../utils/chains.js';
|
|
12
|
-
export async function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath, origin, destination, routerAddress, wei, recipient, timeoutSec, skipWaitForDelivery, }) {
|
|
13
|
-
const { signer, multiProvider, customChains, coreArtifacts } = await getContext({
|
|
9
|
+
export async function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath, warpConfigPath, origin, destination, routerAddress, wei, recipient, timeoutSec, skipWaitForDelivery, }) {
|
|
10
|
+
const { signer, multiProvider, customChains, coreArtifacts, warpCoreConfig } = await getContext({
|
|
14
11
|
chainConfigPath,
|
|
15
12
|
coreConfig: { coreArtifactsPath },
|
|
16
13
|
keyConfig: { key },
|
|
14
|
+
warpConfig: { warpConfigPath },
|
|
17
15
|
});
|
|
18
16
|
if (!origin) {
|
|
19
17
|
origin = await runSingleChainSelectionStep(customChains, 'Select the origin chain');
|
|
@@ -21,42 +19,6 @@ export async function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath
|
|
|
21
19
|
if (!destination) {
|
|
22
20
|
destination = await runSingleChainSelectionStep(customChains, 'Select the destination chain');
|
|
23
21
|
}
|
|
24
|
-
if (!routerAddress) {
|
|
25
|
-
routerAddress = await input({
|
|
26
|
-
message: 'Please specify the router address',
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
// TODO: move to SDK token router app
|
|
30
|
-
// deduce TokenType
|
|
31
|
-
// 1. decimals() call implies synthetic
|
|
32
|
-
// 2. wrappedToken() call implies collateral
|
|
33
|
-
// 3. if neither, it's native
|
|
34
|
-
let tokenAddress;
|
|
35
|
-
let tokenType;
|
|
36
|
-
const provider = multiProvider.getProvider(origin);
|
|
37
|
-
try {
|
|
38
|
-
const synthRouter = HypERC20__factory.connect(routerAddress, provider);
|
|
39
|
-
await synthRouter.decimals();
|
|
40
|
-
tokenType = TokenType.synthetic;
|
|
41
|
-
tokenAddress = routerAddress;
|
|
42
|
-
}
|
|
43
|
-
catch (error) {
|
|
44
|
-
try {
|
|
45
|
-
const collateralRouter = HypERC20Collateral__factory.connect(routerAddress, provider);
|
|
46
|
-
tokenAddress = await collateralRouter.wrappedToken();
|
|
47
|
-
tokenType = TokenType.collateral;
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
tokenType = TokenType.native;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
if (tokenAddress) {
|
|
54
|
-
// checks token balances for collateral and synthetic
|
|
55
|
-
await assertTokenBalance(multiProvider, signer, origin, tokenAddress, wei.toString());
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
await assertNativeBalances(multiProvider, signer, [origin], wei.toString());
|
|
59
|
-
}
|
|
60
22
|
await runPreflightChecks({
|
|
61
23
|
origin,
|
|
62
24
|
remotes: [destination],
|
|
@@ -68,8 +30,8 @@ export async function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath
|
|
|
68
30
|
await timeout(executeDelivery({
|
|
69
31
|
origin,
|
|
70
32
|
destination,
|
|
33
|
+
warpCoreConfig,
|
|
71
34
|
routerAddress,
|
|
72
|
-
tokenType,
|
|
73
35
|
wei,
|
|
74
36
|
recipient,
|
|
75
37
|
signer,
|
|
@@ -78,74 +40,69 @@ export async function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath
|
|
|
78
40
|
skipWaitForDelivery,
|
|
79
41
|
}), timeoutSec * 1000, 'Timed out waiting for messages to be delivered');
|
|
80
42
|
}
|
|
81
|
-
async function executeDelivery({ origin, destination,
|
|
43
|
+
async function executeDelivery({ origin, destination, warpCoreConfig, routerAddress, wei, recipient, multiProvider, signer, coreArtifacts, skipWaitForDelivery, }) {
|
|
82
44
|
const signerAddress = await signer.getAddress();
|
|
83
45
|
recipient || (recipient = signerAddress);
|
|
84
46
|
const mergedContractAddrs = getMergedContractAddresses(coreArtifacts);
|
|
85
47
|
const core = HyperlaneCore.fromAddressesMap(mergedContractAddrs, multiProvider);
|
|
86
48
|
const provider = multiProvider.getProvider(origin);
|
|
87
49
|
const connectedSigner = signer.connect(provider);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (approval.lt(wei)) {
|
|
95
|
-
const approveTx = await token.approve(routerAddress, wei);
|
|
96
|
-
await approveTx.wait();
|
|
50
|
+
const warpCore = WarpCore.FromConfig(MultiProtocolProvider.fromMultiProvider(multiProvider), warpCoreConfig);
|
|
51
|
+
if (!routerAddress) {
|
|
52
|
+
const tokensForRoute = warpCore.getTokensForRoute(origin, destination);
|
|
53
|
+
if (tokensForRoute.length === 0) {
|
|
54
|
+
logRed(`No Warp Routes found from ${origin} to ${destination}`);
|
|
55
|
+
throw new Error('Error finding warp route');
|
|
97
56
|
}
|
|
57
|
+
routerAddress = (await select({
|
|
58
|
+
message: `Select router address`,
|
|
59
|
+
choices: [
|
|
60
|
+
...tokensForRoute.map((t) => ({
|
|
61
|
+
value: t.addressOrDenom,
|
|
62
|
+
description: `${t.name} ($${t.symbol})`,
|
|
63
|
+
})),
|
|
64
|
+
],
|
|
65
|
+
pageSize: 10,
|
|
66
|
+
}));
|
|
98
67
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
token: routerAddress,
|
|
104
|
-
});
|
|
68
|
+
const token = warpCore.findToken(origin, routerAddress);
|
|
69
|
+
if (!token) {
|
|
70
|
+
logRed(`No Warp Routes found from ${origin} to ${destination} with router address ${routerAddress}`);
|
|
71
|
+
throw new Error('Error finding warp route');
|
|
105
72
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
73
|
+
const senderAddress = await signer.getAddress();
|
|
74
|
+
const errors = await warpCore.validateTransfer({
|
|
75
|
+
originTokenAmount: token.amount(wei),
|
|
76
|
+
destination,
|
|
77
|
+
recipient: recipient ?? senderAddress,
|
|
78
|
+
sender: senderAddress,
|
|
79
|
+
});
|
|
80
|
+
if (errors) {
|
|
81
|
+
logRed('Unable to validate transfer', errors);
|
|
82
|
+
throw new Error('Error validating transfer');
|
|
110
83
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
84
|
+
const transferTxs = await warpCore.getTransferRemoteTxs({
|
|
85
|
+
originTokenAmount: new TokenAmount(wei, token),
|
|
86
|
+
destination,
|
|
87
|
+
sender: senderAddress,
|
|
88
|
+
recipient: recipient ?? senderAddress,
|
|
89
|
+
});
|
|
90
|
+
const txReceipts = [];
|
|
91
|
+
for (const tx of transferTxs) {
|
|
92
|
+
if (tx.type === ProviderType.EthersV5) {
|
|
93
|
+
const txResponse = await connectedSigner.sendTransaction(tx.transaction);
|
|
94
|
+
const txReceipt = await multiProvider.handleTx(origin, txResponse);
|
|
95
|
+
txReceipts.push(txReceipt);
|
|
96
|
+
}
|
|
115
97
|
}
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
const interchainGas = await adapter.quoteTransferRemoteGas(destinationDomain);
|
|
119
|
-
log('Interchain gas quote:', interchainGas);
|
|
120
|
-
const transferTx = (await adapter.populateTransferRemoteTx({
|
|
121
|
-
weiAmountOrId: wei,
|
|
122
|
-
destination: destinationDomain,
|
|
123
|
-
recipient,
|
|
124
|
-
interchainGas,
|
|
125
|
-
}));
|
|
126
|
-
const txResponse = await connectedSigner.sendTransaction(transferTx);
|
|
127
|
-
const txReceipt = await multiProvider.handleTx(origin, txResponse);
|
|
128
|
-
const message = core.getDispatchedMessages(txReceipt)[0];
|
|
98
|
+
const transferTxReceipt = txReceipts[txReceipts.length - 1];
|
|
99
|
+
const message = core.getDispatchedMessages(transferTxReceipt)[0];
|
|
129
100
|
logBlue(`Sent message from ${origin} to ${recipient} on ${destination}.`);
|
|
130
101
|
logBlue(`Message ID: ${message.id}`);
|
|
131
102
|
if (skipWaitForDelivery)
|
|
132
103
|
return;
|
|
133
104
|
// Max wait 10 minutes
|
|
134
|
-
await core.waitForMessageProcessed(
|
|
105
|
+
await core.waitForMessageProcessed(transferTxReceipt, 10000, 60);
|
|
135
106
|
logGreen(`Transfer sent to destination chain!`);
|
|
136
107
|
}
|
|
137
|
-
async function getWrappedToken(address, provider) {
|
|
138
|
-
try {
|
|
139
|
-
const contract = HypERC20Collateral__factory.connect(address, provider);
|
|
140
|
-
const wrappedToken = await contract.wrappedToken();
|
|
141
|
-
if (ethers.utils.isAddress(wrappedToken))
|
|
142
|
-
return wrappedToken;
|
|
143
|
-
else
|
|
144
|
-
throw new Error('Invalid wrapped token address');
|
|
145
|
-
}
|
|
146
|
-
catch (error) {
|
|
147
|
-
log('Error getting wrapped token', error);
|
|
148
|
-
throw new Error(`Could not get wrapped token from router address ${address}`);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
108
|
//# sourceMappingURL=transfer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
2
|
import { ChainName, MultiProvider } from '@hyperlane-xyz/sdk';
|
|
3
|
-
import { Address } from '@hyperlane-xyz/utils';
|
|
4
3
|
export declare function assertNativeBalances(multiProvider: MultiProvider, signer: ethers.Signer, chains: ChainName[], minBalanceWei: string): Promise<void>;
|
|
5
4
|
export declare function assertGasBalances(multiProvider: MultiProvider, signer: ethers.Signer, chains: ChainName[], minGas: string): Promise<void>;
|
|
6
|
-
export declare function assertTokenBalance(multiProvider: MultiProvider, signer: ethers.Signer, chain: ChainName, token: Address, minBalanceWei: string): Promise<void>;
|
|
7
5
|
//# sourceMappingURL=balances.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances.d.ts","sourceRoot":"","sources":["../../../src/utils/balances.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"balances.d.ts","sourceRoot":"","sources":["../../../src/utils/balances.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE9D,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,MAAM,EAAE,SAAS,EAAE,EACnB,aAAa,EAAE,MAAM,iBAqBtB;AAED,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,MAAM,iBAUf"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { confirm } from '@inquirer/prompts';
|
|
2
2
|
import { ethers } from 'ethers';
|
|
3
|
-
import { ERC20__factory } from '@hyperlane-xyz/core';
|
|
4
3
|
export async function assertNativeBalances(multiProvider, signer, chains, minBalanceWei) {
|
|
5
4
|
const address = await signer.getAddress();
|
|
6
5
|
const minBalance = ethers.utils.formatEther(minBalanceWei.toString());
|
|
@@ -28,12 +27,4 @@ export async function assertGasBalances(multiProvider, signer, chains, minGas) {
|
|
|
28
27
|
await assertNativeBalances(multiProvider, signer, [chain], minBalanceWei);
|
|
29
28
|
}));
|
|
30
29
|
}
|
|
31
|
-
export async function assertTokenBalance(multiProvider, signer, chain, token, minBalanceWei) {
|
|
32
|
-
const address = await signer.getAddress();
|
|
33
|
-
const provider = multiProvider.getProvider(chain);
|
|
34
|
-
const tokenContract = ERC20__factory.connect(token, provider);
|
|
35
|
-
const balanceWei = await tokenContract.balanceOf(address);
|
|
36
|
-
if (balanceWei.lt(minBalanceWei))
|
|
37
|
-
throw new Error(`${address} has insufficient balance on ${chain} for token ${token}. At least ${minBalanceWei} wei required but found ${balanceWei.toString()} wei`);
|
|
38
|
-
}
|
|
39
30
|
//# sourceMappingURL=balances.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances.js","sourceRoot":"","sources":["../../../src/utils/balances.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"balances.js","sourceRoot":"","sources":["../../../src/utils/balances.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,aAA4B,EAC5B,MAAqB,EACrB,MAAmB,EACnB,aAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzB,MAAM,UAAU,GAAG,MAAM,aAAa;aACnC,WAAW,CAAC,KAAK,CAAC;aAClB,UAAU,CAAC,OAAO,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,UAAU,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,MAAM,MAAM,GACV,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,MAAM,IAAI,KAAK,CAAC;YACrE,MAAM,KAAK,GAAG,GAAG,OAAO,uBAAuB,KAAK,cAAc,UAAU,0BAA0B,OAAO,CAAC,QAAQ,EAAE,IAAI,MAAM,EAAE,CAAC;YACrI,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;gBAC7B,OAAO,EAAE,YAAY,KAAK,YAAY;aACvC,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,aAA4B,EAC5B,MAAqB,EACrB,MAAmB,EACnB,MAAc;IAEd,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzB,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtD,MAAM,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC;IAC5E,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/dist/src/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "3.
|
|
1
|
+
export declare const VERSION = "3.9.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/src/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '3.
|
|
1
|
+
export const VERSION = '3.9.0';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -12,9 +12,9 @@ anvil1:
|
|
|
12
12
|
multisigIsm: '0x9bDE63104EE030d9De419EEd6bA7D14b86D6fE3f'
|
|
13
13
|
testRecipient: '0x36FdA966CfffF8a9Cdc814f546db0e6378bFef35'
|
|
14
14
|
interchainAccountIsm: '0x5e8ee6840caa4f367aff1FF28aA36D5B1b836d35'
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
staticAggregationIsmFactory: '0xc864fa3B662613cA5051f41e157d0a997f9a5A87'
|
|
16
|
+
domainRoutingIsmFactory: '0x1fdfD1486b8339638C6b92f8a96D698D8182D2b1'
|
|
17
17
|
interchainQueryRouter: '0xA837e38C3F7D509DF3a7a0fCf65E3814DB6c2618'
|
|
18
18
|
interchainAccountRouter: '0x9521291A43ebA3aD3FD24d610F4b7F7543C8d761'
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
staticMerkleRootMultisigIsmFactory: '0x82140b2ddAd4E4dd7e1D6757Fb5F9485c230B79d'
|
|
20
|
+
staticMessageIdMultisigIsmFactory: '0x1079056da3EC7D55521F27e1E094015C0d39Cc65'
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
# Token Types:
|
|
5
5
|
# native
|
|
6
6
|
# collateral
|
|
7
|
+
# collateralVault
|
|
7
8
|
# synthetic
|
|
8
9
|
# collateralUri
|
|
9
10
|
# syntheticUri
|
|
@@ -13,7 +14,7 @@
|
|
|
13
14
|
base:
|
|
14
15
|
chainName: anvil1
|
|
15
16
|
type: native
|
|
16
|
-
# address: 0x123... # Required for collateral types
|
|
17
|
+
# address: 0x123... # Required for collateral types. For collateralVault types, specifies the ERC4626 vault to deposit collateral into
|
|
17
18
|
# isNft: true # If the token is an NFT (ERC721), set to true
|
|
18
19
|
# owner: 0x123 # Optional owner address for synthetic token
|
|
19
20
|
# mailbox: 0x123 # Optional mailbox address route
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperlane-xyz/cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.9.0",
|
|
4
4
|
"description": "A command-line utility for common Hyperlane operations",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@hyperlane-xyz/sdk": "3.
|
|
7
|
-
"@hyperlane-xyz/utils": "3.
|
|
6
|
+
"@hyperlane-xyz/sdk": "3.9.0",
|
|
7
|
+
"@hyperlane-xyz/utils": "3.9.0",
|
|
8
8
|
"@inquirer/prompts": "^3.0.0",
|
|
9
9
|
"bignumber.js": "^9.1.1",
|
|
10
10
|
"chalk": "^5.3.0",
|