@hyperlane-xyz/cli 3.10.1-beta1 → 3.20.0-beta1
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/cli.js +13 -5
- package/dist/cli.js.map +1 -1
- package/dist/src/commands/chains.d.ts.map +1 -1
- package/dist/src/commands/chains.js +40 -34
- package/dist/src/commands/chains.js.map +1 -1
- package/dist/src/commands/config.d.ts.map +1 -1
- package/dist/src/commands/config.js +41 -82
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/deploy.d.ts +0 -6
- package/dist/src/commands/deploy.d.ts.map +1 -1
- package/dist/src/commands/deploy.js +27 -74
- package/dist/src/commands/deploy.js.map +1 -1
- package/dist/src/commands/hook.d.ts +6 -1
- package/dist/src/commands/hook.d.ts.map +1 -1
- package/dist/src/commands/hook.js +6 -14
- package/dist/src/commands/hook.js.map +1 -1
- package/dist/src/commands/ism.d.ts +6 -1
- package/dist/src/commands/ism.d.ts.map +1 -1
- package/dist/src/commands/ism.js +5 -13
- package/dist/src/commands/ism.js.map +1 -1
- package/dist/src/commands/options.d.ts +6 -33
- package/dist/src/commands/options.d.ts.map +1 -1
- package/dist/src/commands/options.js +40 -41
- package/dist/src/commands/options.js.map +1 -1
- package/dist/src/commands/send.d.ts +7 -1
- package/dist/src/commands/send.d.ts.map +1 -1
- package/dist/src/commands/send.js +23 -58
- package/dist/src/commands/send.js.map +1 -1
- package/dist/src/commands/signCommands.d.ts +3 -0
- package/dist/src/commands/signCommands.d.ts.map +1 -0
- package/dist/src/commands/signCommands.js +9 -0
- package/dist/src/commands/signCommands.js.map +1 -0
- package/dist/src/commands/status.d.ts +5 -2
- package/dist/src/commands/status.d.ts.map +1 -1
- package/dist/src/commands/status.js +6 -15
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/config/chain.d.ts +5 -7
- package/dist/src/config/chain.d.ts.map +1 -1
- package/dist/src/config/chain.js +16 -39
- package/dist/src/config/chain.js.map +1 -1
- package/dist/src/config/chain.test.js +1 -5
- package/dist/src/config/chain.test.js.map +1 -1
- package/dist/src/config/hooks.d.ts +7 -8
- package/dist/src/config/hooks.d.ts.map +1 -1
- package/dist/src/config/hooks.js +18 -20
- package/dist/src/config/hooks.js.map +1 -1
- package/dist/src/config/ism.d.ts +3 -4
- package/dist/src/config/ism.d.ts.map +1 -1
- package/dist/src/config/ism.js +3 -5
- package/dist/src/config/ism.js.map +1 -1
- package/dist/src/config/multisig.d.ts +3 -4
- package/dist/src/config/multisig.d.ts.map +1 -1
- package/dist/src/config/multisig.js +5 -7
- package/dist/src/config/multisig.js.map +1 -1
- package/dist/src/config/warp.d.ts +6 -36
- package/dist/src/config/warp.d.ts.map +1 -1
- package/dist/src/config/warp.js +14 -13
- package/dist/src/config/warp.js.map +1 -1
- package/dist/src/context/context.d.ts +14 -0
- package/dist/src/context/context.d.ts.map +1 -0
- package/dist/src/context/context.js +100 -0
- package/dist/src/context/context.js.map +1 -0
- package/dist/src/context/types.d.ts +32 -0
- package/dist/src/context/types.d.ts.map +1 -0
- package/dist/src/context/types.js +2 -0
- package/dist/src/context/types.js.map +1 -0
- package/dist/src/deploy/agent.d.ts +6 -5
- package/dist/src/deploy/agent.d.ts.map +1 -1
- package/dist/src/deploy/agent.js +4 -6
- package/dist/src/deploy/agent.js.map +1 -1
- package/dist/src/deploy/core.d.ts +4 -7
- package/dist/src/deploy/core.d.ts.map +1 -1
- package/dist/src/deploy/core.js +61 -73
- package/dist/src/deploy/core.js.map +1 -1
- package/dist/src/deploy/dry-run.d.ts +2 -3
- package/dist/src/deploy/dry-run.d.ts.map +1 -1
- package/dist/src/deploy/dry-run.js.map +1 -1
- package/dist/src/deploy/utils.d.ts +9 -11
- package/dist/src/deploy/utils.d.ts.map +1 -1
- package/dist/src/deploy/utils.js +13 -11
- package/dist/src/deploy/utils.js.map +1 -1
- package/dist/src/deploy/warp.d.ts +3 -7
- package/dist/src/deploy/warp.d.ts.map +1 -1
- package/dist/src/deploy/warp.js +26 -63
- package/dist/src/deploy/warp.js.map +1 -1
- package/dist/src/hook/read.d.ts +4 -5
- package/dist/src/hook/read.d.ts.map +1 -1
- package/dist/src/hook/read.js +8 -12
- package/dist/src/hook/read.js.map +1 -1
- package/dist/src/ism/read.d.ts +4 -5
- package/dist/src/ism/read.d.ts.map +1 -1
- package/dist/src/ism/read.js +8 -12
- package/dist/src/ism/read.js.map +1 -1
- package/dist/src/registry/MergedRegistry.d.ts +35 -0
- package/dist/src/registry/MergedRegistry.d.ts.map +1 -0
- package/dist/src/registry/MergedRegistry.js +83 -0
- package/dist/src/registry/MergedRegistry.js.map +1 -0
- package/dist/src/send/message.d.ts +3 -4
- package/dist/src/send/message.d.ts.map +1 -1
- package/dist/src/send/message.js +14 -19
- package/dist/src/send/message.js.map +1 -1
- package/dist/src/send/transfer.d.ts +3 -6
- package/dist/src/send/transfer.d.ts.map +1 -1
- package/dist/src/send/transfer.js +25 -40
- package/dist/src/send/transfer.js.map +1 -1
- package/dist/src/status/message.d.ts +3 -4
- package/dist/src/status/message.d.ts.map +1 -1
- package/dist/src/status/message.js +5 -12
- package/dist/src/status/message.js.map +1 -1
- package/dist/src/utils/chains.d.ts +2 -2
- package/dist/src/utils/chains.d.ts.map +1 -1
- package/dist/src/utils/chains.js +11 -12
- package/dist/src/utils/chains.js.map +1 -1
- package/dist/src/utils/files.d.ts +0 -7
- package/dist/src/utils/files.d.ts.map +1 -1
- package/dist/src/utils/files.js +2 -27
- package/dist/src/utils/files.js.map +1 -1
- package/dist/src/utils/keys.d.ts +15 -4
- package/dist/src/utils/keys.d.ts.map +1 -1
- package/dist/src/utils/keys.js +11 -16
- package/dist/src/utils/keys.js.map +1 -1
- package/dist/src/utils/tokens.d.ts +3 -0
- package/dist/src/utils/tokens.d.ts.map +1 -0
- package/dist/src/utils/tokens.js +14 -0
- package/dist/src/utils/tokens.js.map +1 -0
- package/dist/src/utils/version-check.d.ts.map +1 -1
- package/dist/src/utils/version-check.js +5 -0
- package/dist/src/utils/version-check.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/examples/chain-config.yaml +38 -46
- package/package.json +5 -4
- package/dist/src/config/artifacts.d.ts +0 -16
- package/dist/src/config/artifacts.d.ts.map +0 -1
- package/dist/src/config/artifacts.js +0 -48
- package/dist/src/config/artifacts.js.map +0 -1
- package/dist/src/context.d.ts +0 -64
- package/dist/src/context.d.ts.map +0 -1
- package/dist/src/context.js +0 -113
- package/dist/src/context.js.map +0 -1
- package/dist/src/context.test.d.ts +0 -2
- package/dist/src/context.test.d.ts.map +0 -1
- package/dist/src/context.test.js +0 -21
- package/dist/src/context.test.js.map +0 -1
- package/dist/src/utils/fork.d.ts +0 -37
- package/dist/src/utils/fork.d.ts.map +0 -1
- package/dist/src/utils/fork.js +0 -91
- package/dist/src/utils/fork.js.map +0 -1
- package/examples/anvil-chains.yaml +0 -22
- package/examples/dry-run/anvil-chains.yaml +0 -17
- package/examples/dry-run/ism.yaml +0 -8
- package/examples/dry-run/warp-route-deployment.yaml +0 -4
- package/examples/fork/anvil-chains.yaml +0 -21
- package/examples/fork/ism.yaml +0 -9
- package/examples/fork/warp-route-deployment.yaml +0 -34
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Logger } from 'pino';
|
|
2
|
+
import { BaseRegistry, ChainAddresses, IRegistry, RegistryContent, RegistryType } from '@hyperlane-xyz/registry';
|
|
3
|
+
import { ChainMap, ChainMetadata, ChainName, WarpCoreConfig } from '@hyperlane-xyz/sdk';
|
|
4
|
+
export interface MergedRegistryOptions {
|
|
5
|
+
registryUris: Array<string>;
|
|
6
|
+
isDryRun?: boolean;
|
|
7
|
+
logger?: Logger;
|
|
8
|
+
}
|
|
9
|
+
export declare class MergedRegistry extends BaseRegistry implements IRegistry {
|
|
10
|
+
readonly type = RegistryType.Local;
|
|
11
|
+
readonly registries: Array<IRegistry>;
|
|
12
|
+
readonly isDryRun: boolean;
|
|
13
|
+
constructor({ registryUris, logger, isDryRun }: MergedRegistryOptions);
|
|
14
|
+
listRegistryContent(): Promise<RegistryContent>;
|
|
15
|
+
getChains(): Promise<Array<ChainName>>;
|
|
16
|
+
getMetadata(): Promise<ChainMap<ChainMetadata>>;
|
|
17
|
+
getChainMetadata(chainName: ChainName): Promise<ChainMetadata | null>;
|
|
18
|
+
getAddresses(): Promise<ChainMap<ChainAddresses>>;
|
|
19
|
+
getChainAddresses(chainName: ChainName): Promise<ChainAddresses | null>;
|
|
20
|
+
addChain(chain: {
|
|
21
|
+
chainName: ChainName;
|
|
22
|
+
metadata?: ChainMetadata;
|
|
23
|
+
addresses?: ChainAddresses;
|
|
24
|
+
}): Promise<void>;
|
|
25
|
+
updateChain(chain: {
|
|
26
|
+
chainName: ChainName;
|
|
27
|
+
metadata?: ChainMetadata;
|
|
28
|
+
addresses?: ChainAddresses;
|
|
29
|
+
}): Promise<void>;
|
|
30
|
+
removeChain(chain: ChainName): Promise<void>;
|
|
31
|
+
addWarpRoute(config: WarpCoreConfig): Promise<void>;
|
|
32
|
+
protected multiRegistryRead<R>(readFn: (registry: IRegistry) => Promise<R> | R): Promise<(Awaited<R> | Awaited<R>)[]>;
|
|
33
|
+
protected multiRegistryWrite(writeFn: (registry: IRegistry) => Promise<void>, logMsg: string): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=MergedRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MergedRegistry.d.ts","sourceRoot":"","sources":["../../../src/registry/MergedRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EACL,YAAY,EACZ,cAAc,EAEd,SAAS,EACT,eAAe,EACf,YAAY,EACb,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,cAAc,EACf,MAAM,oBAAoB,CAAC;AAQ5B,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,cAAe,SAAQ,YAAa,YAAW,SAAS;IACnE,SAAgB,IAAI,sBAAsB;IAC1C,SAAgB,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,SAAgB,QAAQ,EAAE,OAAO,CAAC;gBAEtB,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,qBAAqB;IAkB/D,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC;IAU/C,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAItC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAK/C,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAIrE,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAKjD,iBAAiB,CACrB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAI3B,QAAQ,CAAC,KAAK,EAAE;QACpB,SAAS,EAAE,SAAS,CAAC;QACrB,QAAQ,CAAC,EAAE,aAAa,CAAC;QACzB,SAAS,CAAC,EAAE,cAAc,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAOX,WAAW,CAAC,KAAK,EAAE;QACvB,SAAS,EAAE,SAAS,CAAC;QACrB,QAAQ,CAAC,EAAE,aAAa,CAAC;QACzB,SAAS,CAAC,EAAE,cAAc,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAOX,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD,SAAS,CAAC,iBAAiB,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;cAKjC,kBAAkB,CAChC,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,EAC/C,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;CAuBjB"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { BaseRegistry, GithubRegistry, RegistryType, } from '@hyperlane-xyz/registry';
|
|
2
|
+
import { LocalRegistry } from '@hyperlane-xyz/registry/local';
|
|
3
|
+
import { isHttpsUrl, objKeys, objMerge, rootLogger, } from '@hyperlane-xyz/utils';
|
|
4
|
+
export class MergedRegistry extends BaseRegistry {
|
|
5
|
+
type = RegistryType.Local;
|
|
6
|
+
registries;
|
|
7
|
+
isDryRun;
|
|
8
|
+
constructor({ registryUris, logger, isDryRun }) {
|
|
9
|
+
logger ||= rootLogger.child({ module: 'MergedRegistry' });
|
|
10
|
+
super({ uri: '__merged_registry__', logger });
|
|
11
|
+
if (!registryUris.length)
|
|
12
|
+
throw new Error('At least one registry URI is required');
|
|
13
|
+
this.registries = registryUris.map((uri, index) => {
|
|
14
|
+
if (isHttpsUrl(uri)) {
|
|
15
|
+
return new GithubRegistry({ uri, logger: logger.child({ index }) });
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
return new LocalRegistry({ uri, logger: logger.child({ index }) });
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
this.isDryRun = !!isDryRun;
|
|
22
|
+
}
|
|
23
|
+
async listRegistryContent() {
|
|
24
|
+
const results = await this.multiRegistryRead((r) => r.listRegistryContent());
|
|
25
|
+
return results.reduce((acc, content) => objMerge(acc, content), {
|
|
26
|
+
chains: {},
|
|
27
|
+
deployments: {},
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
async getChains() {
|
|
31
|
+
return objKeys(await this.getMetadata);
|
|
32
|
+
}
|
|
33
|
+
async getMetadata() {
|
|
34
|
+
const results = await this.multiRegistryRead((r) => r.getMetadata());
|
|
35
|
+
return results.reduce((acc, content) => objMerge(acc, content), {});
|
|
36
|
+
}
|
|
37
|
+
async getChainMetadata(chainName) {
|
|
38
|
+
return (await this.getMetadata())[chainName] || null;
|
|
39
|
+
}
|
|
40
|
+
async getAddresses() {
|
|
41
|
+
const results = await this.multiRegistryRead((r) => r.getAddresses());
|
|
42
|
+
return results.reduce((acc, content) => objMerge(acc, content), {});
|
|
43
|
+
}
|
|
44
|
+
async getChainAddresses(chainName) {
|
|
45
|
+
return (await this.getAddresses())[chainName] || null;
|
|
46
|
+
}
|
|
47
|
+
async addChain(chain) {
|
|
48
|
+
return this.multiRegistryWrite(async (registry) => await registry.addChain(chain), `adding chain ${chain.chainName}`);
|
|
49
|
+
}
|
|
50
|
+
async updateChain(chain) {
|
|
51
|
+
return this.multiRegistryWrite(async (registry) => await registry.updateChain(chain), `updating chain ${chain.chainName}`);
|
|
52
|
+
}
|
|
53
|
+
async removeChain(chain) {
|
|
54
|
+
return this.multiRegistryWrite(async (registry) => await registry.removeChain(chain), `removing chain ${chain}`);
|
|
55
|
+
}
|
|
56
|
+
async addWarpRoute(config) {
|
|
57
|
+
return this.multiRegistryWrite(async (registry) => await registry.addWarpRoute(config), 'adding warp route');
|
|
58
|
+
}
|
|
59
|
+
multiRegistryRead(readFn) {
|
|
60
|
+
return Promise.all(this.registries.map(readFn));
|
|
61
|
+
}
|
|
62
|
+
async multiRegistryWrite(writeFn, logMsg) {
|
|
63
|
+
if (this.isDryRun)
|
|
64
|
+
return;
|
|
65
|
+
for (const registry of this.registries) {
|
|
66
|
+
// TODO remove this when GithubRegistry supports write methods
|
|
67
|
+
if (registry.type === RegistryType.Github) {
|
|
68
|
+
this.logger.warn(`skipping ${logMsg} at ${registry.type} registry`);
|
|
69
|
+
continue;
|
|
70
|
+
}
|
|
71
|
+
try {
|
|
72
|
+
this.logger.info(`${logMsg} at ${registry.type} registry at ${registry.uri}`);
|
|
73
|
+
await writeFn(registry);
|
|
74
|
+
this.logger.info(`done ${logMsg} at ${registry.type} registry`);
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
// To prevent loss of artifacts, MergedRegistry write methods are failure tolerant
|
|
78
|
+
this.logger.error(`failure ${logMsg} at ${registry.type} registry`, error);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=MergedRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MergedRegistry.js","sourceRoot":"","sources":["../../../src/registry/MergedRegistry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { ChainName } from '@hyperlane-xyz/sdk';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
coreArtifactsPath?: string;
|
|
2
|
+
import { WriteCommandContext } from '../context/types.js';
|
|
3
|
+
export declare function sendTestMessage({ context, origin, destination, messageBody, timeoutSec, skipWaitForDelivery, selfRelay, }: {
|
|
4
|
+
context: WriteCommandContext;
|
|
6
5
|
origin?: ChainName;
|
|
7
6
|
destination?: ChainName;
|
|
8
7
|
messageBody: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAC;AAI9D,OAAO,EAAkB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAK1E,wBAAsB,eAAe,CAAC,EACpC,OAAO,EACP,MAAM,EACN,WAAW,EACX,WAAW,EACX,UAAU,EACV,mBAAmB,EACnB,SAAS,GACV,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,iBAqCA"}
|
package/dist/src/send/message.js
CHANGED
|
@@ -1,46 +1,40 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { HyperlaneCore
|
|
2
|
+
import { HyperlaneCore } from '@hyperlane-xyz/sdk';
|
|
3
3
|
import { addressToBytes32, timeout } from '@hyperlane-xyz/utils';
|
|
4
4
|
import { MINIMUM_TEST_SEND_GAS } from '../consts.js';
|
|
5
|
-
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
6
5
|
import { runPreflightChecks } from '../deploy/utils.js';
|
|
7
6
|
import { errorRed, log, logBlue, logGreen } from '../logger.js';
|
|
8
7
|
import { runSingleChainSelectionStep } from '../utils/chains.js';
|
|
9
|
-
export async function sendTestMessage({
|
|
10
|
-
const {
|
|
11
|
-
chainConfigPath,
|
|
12
|
-
coreConfig: { coreArtifactsPath },
|
|
13
|
-
keyConfig: { key },
|
|
14
|
-
});
|
|
8
|
+
export async function sendTestMessage({ context, origin, destination, messageBody, timeoutSec, skipWaitForDelivery, selfRelay, }) {
|
|
9
|
+
const { chainMetadata } = context;
|
|
15
10
|
if (!origin) {
|
|
16
|
-
origin = await runSingleChainSelectionStep(
|
|
11
|
+
origin = await runSingleChainSelectionStep(chainMetadata, 'Select the origin chain');
|
|
17
12
|
}
|
|
18
13
|
if (!destination) {
|
|
19
|
-
destination = await runSingleChainSelectionStep(
|
|
14
|
+
destination = await runSingleChainSelectionStep(chainMetadata, 'Select the destination chain');
|
|
20
15
|
}
|
|
21
16
|
await runPreflightChecks({
|
|
17
|
+
context,
|
|
22
18
|
origin,
|
|
23
19
|
remotes: [destination],
|
|
24
|
-
multiProvider,
|
|
25
|
-
signer,
|
|
26
20
|
minGas: MINIMUM_TEST_SEND_GAS,
|
|
27
21
|
chainsToGasCheck: [origin],
|
|
28
22
|
});
|
|
29
23
|
await timeout(executeDelivery({
|
|
24
|
+
context,
|
|
30
25
|
origin,
|
|
31
26
|
destination,
|
|
32
27
|
messageBody,
|
|
33
|
-
multiProvider,
|
|
34
|
-
coreArtifacts,
|
|
35
28
|
skipWaitForDelivery,
|
|
36
29
|
selfRelay,
|
|
37
30
|
}), timeoutSec * 1000, 'Timed out waiting for messages to be delivered');
|
|
38
31
|
}
|
|
39
|
-
async function executeDelivery({ origin, destination, messageBody,
|
|
40
|
-
const
|
|
41
|
-
const
|
|
32
|
+
async function executeDelivery({ context, origin, destination, messageBody, skipWaitForDelivery, selfRelay, }) {
|
|
33
|
+
const { registry, multiProvider } = context;
|
|
34
|
+
const chainAddresses = await registry.getAddresses();
|
|
35
|
+
const core = HyperlaneCore.fromAddressesMap(chainAddresses, multiProvider);
|
|
42
36
|
const mailbox = core.getContracts(origin).mailbox;
|
|
43
|
-
let hook =
|
|
37
|
+
let hook = chainAddresses[origin]?.customHook;
|
|
44
38
|
if (hook) {
|
|
45
39
|
logBlue(`Using custom hook ${hook} for ${origin} -> ${destination}`);
|
|
46
40
|
}
|
|
@@ -51,7 +45,7 @@ async function executeDelivery({ origin, destination, messageBody, multiProvider
|
|
|
51
45
|
const destinationDomain = multiProvider.getDomainId(destination);
|
|
52
46
|
let txReceipt;
|
|
53
47
|
try {
|
|
54
|
-
const recipient =
|
|
48
|
+
const recipient = chainAddresses[destination].testRecipient;
|
|
55
49
|
if (!recipient) {
|
|
56
50
|
throw new Error(`Unable to find TestRecipient for ${destination}`);
|
|
57
51
|
}
|
|
@@ -69,6 +63,7 @@ async function executeDelivery({ origin, destination, messageBody, multiProvider
|
|
|
69
63
|
logBlue(`Message ID: ${message.id}`);
|
|
70
64
|
log(`Message: ${JSON.stringify(message)}`);
|
|
71
65
|
if (selfRelay) {
|
|
66
|
+
log('Attempting self-relay of message');
|
|
72
67
|
await core.relayMessage(message);
|
|
73
68
|
logGreen('Message was self-relayed!');
|
|
74
69
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { ChainName } from '@hyperlane-xyz/sdk';
|
|
2
|
-
import {
|
|
3
|
-
export declare function sendTestTransfer({
|
|
4
|
-
|
|
5
|
-
chainConfigPath: string;
|
|
6
|
-
coreArtifactsPath?: string;
|
|
2
|
+
import { WriteCommandContext } from '../context/types.js';
|
|
3
|
+
export declare function sendTestTransfer({ context, warpConfigPath, origin, destination, wei, recipient, timeoutSec, skipWaitForDelivery, selfRelay, }: {
|
|
4
|
+
context: WriteCommandContext;
|
|
7
5
|
warpConfigPath: string;
|
|
8
6
|
origin?: ChainName;
|
|
9
7
|
destination?: ChainName;
|
|
10
|
-
routerAddress?: Address;
|
|
11
8
|
wei: string;
|
|
12
9
|
recipient?: string;
|
|
13
10
|
timeoutSec: number;
|
|
@@ -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":"AAAA,OAAO,EACL,SAAS,EAQV,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAM1D,wBAAsB,gBAAgB,CAAC,EACrC,OAAO,EACP,cAAc,EACd,MAAM,EACN,WAAW,EACX,GAAG,EACH,SAAS,EACT,UAAU,EACV,mBAAmB,EACnB,SAAS,GACV,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,iBAyCA"}
|
|
@@ -1,76 +1,61 @@
|
|
|
1
|
-
import { select } from '@inquirer/prompts';
|
|
2
1
|
import { HyperlaneCore, MultiProtocolProvider, ProviderType, TokenAmount, WarpCore, } from '@hyperlane-xyz/sdk';
|
|
3
2
|
import { timeout } from '@hyperlane-xyz/utils';
|
|
3
|
+
import { readWarpRouteConfig } from '../config/warp.js';
|
|
4
4
|
import { MINIMUM_TEST_SEND_GAS } from '../consts.js';
|
|
5
|
-
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
6
5
|
import { runPreflightChecks } from '../deploy/utils.js';
|
|
7
6
|
import { logBlue, logGreen, logRed } from '../logger.js';
|
|
8
7
|
import { runSingleChainSelectionStep } from '../utils/chains.js';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
keyConfig: { key },
|
|
14
|
-
warpConfig: { warpConfigPath },
|
|
15
|
-
});
|
|
8
|
+
import { runTokenSelectionStep } from '../utils/tokens.js';
|
|
9
|
+
export async function sendTestTransfer({ context, warpConfigPath, origin, destination, wei, recipient, timeoutSec, skipWaitForDelivery, selfRelay, }) {
|
|
10
|
+
const { chainMetadata } = context;
|
|
11
|
+
const warpCoreConfig = readWarpRouteConfig(warpConfigPath);
|
|
16
12
|
if (!origin) {
|
|
17
|
-
origin = await runSingleChainSelectionStep(
|
|
13
|
+
origin = await runSingleChainSelectionStep(chainMetadata, 'Select the origin chain');
|
|
18
14
|
}
|
|
19
15
|
if (!destination) {
|
|
20
|
-
destination = await runSingleChainSelectionStep(
|
|
16
|
+
destination = await runSingleChainSelectionStep(chainMetadata, 'Select the destination chain');
|
|
21
17
|
}
|
|
22
18
|
await runPreflightChecks({
|
|
19
|
+
context,
|
|
23
20
|
origin,
|
|
24
21
|
remotes: [destination],
|
|
25
|
-
multiProvider,
|
|
26
|
-
signer,
|
|
27
22
|
minGas: MINIMUM_TEST_SEND_GAS,
|
|
28
23
|
chainsToGasCheck: [origin],
|
|
29
24
|
});
|
|
30
25
|
await timeout(executeDelivery({
|
|
26
|
+
context,
|
|
31
27
|
origin,
|
|
32
28
|
destination,
|
|
33
29
|
warpCoreConfig,
|
|
34
|
-
routerAddress,
|
|
35
30
|
wei,
|
|
36
31
|
recipient,
|
|
37
|
-
signer,
|
|
38
|
-
multiProvider,
|
|
39
|
-
coreArtifacts,
|
|
40
32
|
skipWaitForDelivery,
|
|
41
33
|
selfRelay,
|
|
42
34
|
}), timeoutSec * 1000, 'Timed out waiting for messages to be delivered');
|
|
43
35
|
}
|
|
44
|
-
async function executeDelivery({ origin, destination, warpCoreConfig,
|
|
36
|
+
async function executeDelivery({ context, origin, destination, warpCoreConfig, wei, recipient, skipWaitForDelivery, selfRelay, }) {
|
|
37
|
+
const { signer, multiProvider, registry } = context;
|
|
45
38
|
const signerAddress = await signer.getAddress();
|
|
46
39
|
recipient ||= signerAddress;
|
|
47
|
-
const
|
|
48
|
-
const core = HyperlaneCore.fromAddressesMap(
|
|
40
|
+
const chainAddresses = await registry.getAddresses();
|
|
41
|
+
const core = HyperlaneCore.fromAddressesMap(chainAddresses, multiProvider);
|
|
49
42
|
const provider = multiProvider.getProvider(origin);
|
|
50
43
|
const connectedSigner = signer.connect(provider);
|
|
51
44
|
const warpCore = WarpCore.FromConfig(MultiProtocolProvider.fromMultiProvider(multiProvider), warpCoreConfig);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
throw new Error('Error finding warp route');
|
|
57
|
-
}
|
|
58
|
-
routerAddress = (await select({
|
|
59
|
-
message: `Select router address`,
|
|
60
|
-
choices: [
|
|
61
|
-
...tokensForRoute.map((t) => ({
|
|
62
|
-
value: t.addressOrDenom,
|
|
63
|
-
description: `${t.name} ($${t.symbol})`,
|
|
64
|
-
})),
|
|
65
|
-
],
|
|
66
|
-
pageSize: 10,
|
|
67
|
-
}));
|
|
68
|
-
}
|
|
69
|
-
const token = warpCore.findToken(origin, routerAddress);
|
|
70
|
-
if (!token) {
|
|
71
|
-
logRed(`No Warp Routes found from ${origin} to ${destination} with router address ${routerAddress}`);
|
|
45
|
+
let token;
|
|
46
|
+
const tokensForRoute = warpCore.getTokensForRoute(origin, destination);
|
|
47
|
+
if (tokensForRoute.length === 0) {
|
|
48
|
+
logRed(`No Warp Routes found from ${origin} to ${destination}`);
|
|
72
49
|
throw new Error('Error finding warp route');
|
|
73
50
|
}
|
|
51
|
+
else if (tokensForRoute.length === 1) {
|
|
52
|
+
token = tokensForRoute[0];
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
logBlue(`Please select a token from the Warp config`);
|
|
56
|
+
const routerAddress = await runTokenSelectionStep(tokensForRoute);
|
|
57
|
+
token = warpCore.findToken(origin, routerAddress);
|
|
58
|
+
}
|
|
74
59
|
const senderAddress = await signer.getAddress();
|
|
75
60
|
const errors = await warpCore.validateTransfer({
|
|
76
61
|
originTokenAmount: token.amount(wei),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { ChainName } from '@hyperlane-xyz/sdk';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import { CommandContext } from '../context/types.js';
|
|
3
|
+
export declare function checkMessageStatus({ context, messageId, destination, origin, selfRelay, }: {
|
|
4
|
+
context: CommandContext;
|
|
5
5
|
messageId?: string;
|
|
6
6
|
destination?: ChainName;
|
|
7
7
|
origin?: ChainName;
|
|
8
8
|
selfRelay?: boolean;
|
|
9
|
-
key?: string;
|
|
10
9
|
}): Promise<void>;
|
|
11
10
|
//# sourceMappingURL=message.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/status/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/status/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,wBAAsB,kBAAkB,CAAC,EACvC,OAAO,EACP,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,GACV,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,iBA0CA"}
|
|
@@ -1,25 +1,18 @@
|
|
|
1
1
|
import { input } from '@inquirer/prompts';
|
|
2
2
|
import { HyperlaneCore } from '@hyperlane-xyz/sdk';
|
|
3
|
-
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
4
3
|
import { log, logBlue, logGreen } from '../logger.js';
|
|
5
4
|
import { runSingleChainSelectionStep } from '../utils/chains.js';
|
|
6
|
-
export async function checkMessageStatus({
|
|
7
|
-
const keyConfig = selfRelay ? { key } : undefined;
|
|
8
|
-
const { multiProvider, customChains, coreArtifacts } = await getContext({
|
|
9
|
-
chainConfigPath,
|
|
10
|
-
coreConfig: { coreArtifactsPath },
|
|
11
|
-
keyConfig,
|
|
12
|
-
});
|
|
5
|
+
export async function checkMessageStatus({ context, messageId, destination, origin, selfRelay, }) {
|
|
13
6
|
if (!destination) {
|
|
14
|
-
destination = await runSingleChainSelectionStep(
|
|
7
|
+
destination = await runSingleChainSelectionStep(context.chainMetadata, 'Select the destination chain');
|
|
15
8
|
}
|
|
16
9
|
if (!messageId) {
|
|
17
10
|
messageId = await input({
|
|
18
11
|
message: 'Please specify the message id',
|
|
19
12
|
});
|
|
20
13
|
}
|
|
21
|
-
const
|
|
22
|
-
const core = HyperlaneCore.fromAddressesMap(
|
|
14
|
+
const chainAddresses = await context.registry.getAddresses();
|
|
15
|
+
const core = HyperlaneCore.fromAddressesMap(chainAddresses, context.multiProvider);
|
|
23
16
|
const mailbox = core.getContracts(destination).mailbox;
|
|
24
17
|
log(`Checking status of message ${messageId} on ${destination}`);
|
|
25
18
|
const delivered = await mailbox.delivered(messageId);
|
|
@@ -31,7 +24,7 @@ export async function checkMessageStatus({ chainConfigPath, coreArtifactsPath, m
|
|
|
31
24
|
if (selfRelay) {
|
|
32
25
|
// TODO: implement option for tx receipt input
|
|
33
26
|
if (!origin) {
|
|
34
|
-
origin = await runSingleChainSelectionStep(
|
|
27
|
+
origin = await runSingleChainSelectionStep(context.chainMetadata, 'Select the origin chain');
|
|
35
28
|
}
|
|
36
29
|
const receipt = await core.getDispatchTx(origin, messageId);
|
|
37
30
|
const messages = core.getDispatchedMessages(receipt);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/status/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAa,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/status/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAa,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAG9D,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,OAAO,EACP,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,GAOV;IACC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,WAAW,GAAG,MAAM,2BAA2B,CAC7C,OAAO,CAAC,aAAa,EACrB,8BAA8B,CAC/B,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,MAAM,KAAK,CAAC;YACtB,OAAO,EAAE,+BAA+B;SACzC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC7D,MAAM,IAAI,GAAG,aAAa,CAAC,gBAAgB,CACzC,cAAc,EACd,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;IACvD,GAAG,CAAC,8BAA8B,SAAS,OAAO,WAAW,EAAE,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,WAAW,SAAS,gBAAgB,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,OAAO,CAAC,WAAW,SAAS,wBAAwB,CAAC,CAAC;IAEtD,IAAI,SAAS,EAAE,CAAC;QACd,8CAA8C;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,MAAM,2BAA2B,CACxC,OAAO,CAAC,aAAa,EACrB,yBAAyB,CAC1B,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,QAAQ,CAAC,WAAW,SAAS,oBAAoB,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ChainMap, ChainMetadata } from '@hyperlane-xyz/sdk';
|
|
2
|
-
export declare function runSingleChainSelectionStep(
|
|
3
|
-
export declare function runMultiChainSelectionStep(
|
|
2
|
+
export declare function runSingleChainSelectionStep(chainMetadata: ChainMap<ChainMetadata>, message?: string): Promise<string>;
|
|
3
|
+
export declare function runMultiChainSelectionStep(chainMetadata: ChainMap<ChainMetadata>, message?: string, requireMultiple?: boolean): Promise<string[]>;
|
|
4
4
|
//# sourceMappingURL=chains.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/utils/chains.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/utils/chains.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAQ7D,wBAAsB,2BAA2B,CAC/C,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,OAAO,SAAiB,mBAUzB;AAED,wBAAsB,0BAA0B,CAC9C,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,EACtC,OAAO,SAAkB,EACzB,eAAe,UAAQ,qBAiBxB"}
|
package/dist/src/utils/chains.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { Separator, checkbox } from '@inquirer/prompts';
|
|
2
2
|
import select from '@inquirer/select';
|
|
3
3
|
import chalk from 'chalk';
|
|
4
|
-
import {
|
|
5
|
-
import { log, logBlue, logRed, logTip } from '../logger.js';
|
|
4
|
+
import { log, logRed, logTip } from '../logger.js';
|
|
6
5
|
// A special value marker to indicate user selected
|
|
7
6
|
// a new chain in the list
|
|
8
7
|
const NEW_CHAIN_MARKER = '__new__';
|
|
9
|
-
export async function runSingleChainSelectionStep(
|
|
10
|
-
const choices = getChainChoices(
|
|
8
|
+
export async function runSingleChainSelectionStep(chainMetadata, message = 'Select chain') {
|
|
9
|
+
const choices = getChainChoices(chainMetadata);
|
|
11
10
|
const chain = (await select({
|
|
12
11
|
message,
|
|
13
12
|
choices,
|
|
@@ -16,8 +15,8 @@ export async function runSingleChainSelectionStep(customChains, message = 'Selec
|
|
|
16
15
|
handleNewChain([chain]);
|
|
17
16
|
return chain;
|
|
18
17
|
}
|
|
19
|
-
export async function runMultiChainSelectionStep(
|
|
20
|
-
const choices = getChainChoices(
|
|
18
|
+
export async function runMultiChainSelectionStep(chainMetadata, message = 'Select chains', requireMultiple = false) {
|
|
19
|
+
const choices = getChainChoices(chainMetadata);
|
|
21
20
|
while (true) {
|
|
22
21
|
logTip('Use SPACE key to select chains, then press ENTER');
|
|
23
22
|
const chains = (await checkbox({
|
|
@@ -33,22 +32,22 @@ export async function runMultiChainSelectionStep(customChains, message = 'Select
|
|
|
33
32
|
return chains;
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
|
-
function getChainChoices(
|
|
35
|
+
function getChainChoices(chainMetadata) {
|
|
37
36
|
const chainsToChoices = (chains) => chains.map((c) => ({ name: c.name, value: c.name }));
|
|
37
|
+
const chains = Object.values(chainMetadata);
|
|
38
|
+
const testnetChains = chains.filter((c) => !!c.isTestnet);
|
|
39
|
+
const mainnetChains = chains.filter((c) => !c.isTestnet);
|
|
38
40
|
const choices = [
|
|
39
|
-
new Separator('--Custom Chains--'),
|
|
40
|
-
...chainsToChoices(Object.values(customChains)),
|
|
41
41
|
{ name: '(New custom chain)', value: NEW_CHAIN_MARKER },
|
|
42
42
|
new Separator('--Mainnet Chains--'),
|
|
43
|
-
...chainsToChoices(
|
|
43
|
+
...chainsToChoices(mainnetChains),
|
|
44
44
|
new Separator('--Testnet Chains--'),
|
|
45
|
-
...chainsToChoices(
|
|
45
|
+
...chainsToChoices(testnetChains),
|
|
46
46
|
];
|
|
47
47
|
return choices;
|
|
48
48
|
}
|
|
49
49
|
function handleNewChain(chainNames) {
|
|
50
50
|
if (chainNames.includes(NEW_CHAIN_MARKER)) {
|
|
51
|
-
logBlue('To use a new chain, use the --config argument add them to that file');
|
|
52
51
|
log(chalk.blue('Use the'), chalk.magentaBright('hyperlane config create'), chalk.blue('command to create new configs'));
|
|
53
52
|
process.exit(0);
|
|
54
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../../src/utils/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../../src/utils/chains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEnD,mDAAmD;AACnD,0BAA0B;AAC1B,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEnC,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,aAAsC,EACtC,OAAO,GAAG,cAAc;IAExB,MAAM,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,CAAC,MAAM,MAAM,CAAC;QAC1B,OAAO;QACP,OAAO;QACP,QAAQ,EAAE,EAAE;KACb,CAAC,CAAW,CAAC;IACd,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,aAAsC,EACtC,OAAO,GAAG,eAAe,EACzB,eAAe,GAAG,KAAK;IAEvB,MAAM,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAC/C,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,CAAC,kDAAkD,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC;YAC7B,OAAO;YACP,OAAO;YACP,QAAQ,EAAE,EAAE;SACb,CAAC,CAAa,CAAC;QAChB,cAAc,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,eAAe,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,iCAAiC,CAAC,CAAC;YAC1C,SAAS;QACX,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,aAAsC;IAC7D,MAAM,eAAe,GAAG,CAAC,MAAuB,EAAE,EAAE,CAClD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,OAAO,GAA8C;QACzD,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,gBAAgB,EAAE;QACvD,IAAI,SAAS,CAAC,oBAAoB,CAAC;QACnC,GAAG,eAAe,CAAC,aAAa,CAAC;QACjC,IAAI,SAAS,CAAC,oBAAoB,CAAC;QACnC,GAAG,eAAe,CAAC,aAAa,CAAC;KAClC,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,UAAoB;IAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC1C,GAAG,CACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EACrB,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAC9C,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAC5C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -18,12 +18,5 @@ export declare function readYamlOrJson<T>(filepath: string, format?: FileFormat)
|
|
|
18
18
|
export declare function writeYamlOrJson(filepath: string, obj: Record<string, any>, format?: FileFormat): any;
|
|
19
19
|
export declare function mergeYamlOrJson(filepath: string, obj: Record<string, any>, format?: FileFormat): any;
|
|
20
20
|
export declare function resolveFileFormat(filepath?: string, format?: FileFormat): FileFormat | undefined;
|
|
21
|
-
export declare function prepNewArtifactsFiles(outPath: string, files: Array<ArtifactsFile>): string[];
|
|
22
|
-
/**
|
|
23
|
-
* Retrieves artifacts file metadata for the current command.
|
|
24
|
-
* @param dryRun whether or not the current command is being dry-run
|
|
25
|
-
* @returns the artifacts files
|
|
26
|
-
*/
|
|
27
|
-
export declare function getArtifactsFiles(defaultFiles: ArtifactsFile[], dryRun?: string): Array<ArtifactsFile>;
|
|
28
21
|
export declare function runFileSelectionStep(folderPath: string, description: string, pattern?: string): Promise<string>;
|
|
29
22
|
//# sourceMappingURL=files.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../src/utils/files.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../src/utils/files.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzC,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,WAQtC;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,UAK9C;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAM9D;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAE/C;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAMzD;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,QAEnD;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACrD,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,CAAC,QAQP;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAE/C;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAM/D;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,QAEnD;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACrD,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,CAAC,QAQP;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,CAAC,CAE1E;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,MAAM,CAAC,EAAE,UAAU,OAQpB;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,MAAM,GAAE,UAAmB,OAQ5B;AAoBD,wBAAgB,iBAAiB,CAC/B,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,UAAU,GAClB,UAAU,GAAG,SAAS,CAmBxB;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,mBA6BjB"}
|