@layerzerolabs/vm-tooling 0.2.5 → 0.2.6
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/{UKPHRO5A.js → 2Z6XZCGO.js} +3 -3
- package/dist/{UKPHRO5A.js.map → 2Z6XZCGO.js.map} +1 -1
- package/dist/{F35TPZS3.js → 3ATC7U63.js} +7 -2
- package/dist/3ATC7U63.js.map +1 -0
- package/dist/{55HL3CFD.js → 3GTIKWKS.js} +5 -5
- package/dist/3GTIKWKS.js.map +1 -0
- package/dist/{KSZMBVFB.cjs → 6GRSDUV3.cjs} +12 -2
- package/dist/6GRSDUV3.cjs.map +1 -0
- package/dist/{FOFSZBOK.cjs → 6QJ3ATEV.cjs} +6 -6
- package/dist/{FOFSZBOK.cjs.map → 6QJ3ATEV.cjs.map} +1 -1
- package/dist/{FQUILSS5.js → 73CRCY4G.js} +4 -4
- package/dist/{FQUILSS5.js.map → 73CRCY4G.js.map} +1 -1
- package/dist/{PUL6NSHI.cjs → 7C3FV2XA.cjs} +7 -2
- package/dist/7C3FV2XA.cjs.map +1 -0
- package/dist/{H7LPHZJT.js → AUA3QPCB.js} +4 -4
- package/dist/{H7LPHZJT.js.map → AUA3QPCB.js.map} +1 -1
- package/dist/{Y27GTZ2Q.js → BQMGLKBO.js} +3 -3
- package/dist/{Y27GTZ2Q.js.map → BQMGLKBO.js.map} +1 -1
- package/dist/{ZD3LAY33.cjs → C4FRNVDY.cjs} +14 -14
- package/dist/{ZD3LAY33.cjs.map → C4FRNVDY.cjs.map} +1 -1
- package/dist/{X72XTEFE.js → CSLN223N.js} +4 -4
- package/dist/{X72XTEFE.js.map → CSLN223N.js.map} +1 -1
- package/dist/{6NIOUVPA.cjs → CXM3VA7N.cjs} +4 -3
- package/dist/CXM3VA7N.cjs.map +1 -0
- package/dist/{ACDTMA6Q.cjs → DBRVUBWJ.cjs} +11 -11
- package/dist/DBRVUBWJ.cjs.map +1 -0
- package/dist/{SV3LGPR3.js → EDE37TVE.js} +3 -3
- package/dist/{SV3LGPR3.js.map → EDE37TVE.js.map} +1 -1
- package/dist/{D3JHHTB6.js → GWPT4OMB.js} +12 -2
- package/dist/GWPT4OMB.js.map +1 -0
- package/dist/{GJ24YLYE.cjs → H626YBWD.cjs} +5 -5
- package/dist/{GJ24YLYE.cjs.map → H626YBWD.cjs.map} +1 -1
- package/dist/{L2LY6RIT.cjs → I4WZRP7G.cjs} +7 -7
- package/dist/{L2LY6RIT.cjs.map → I4WZRP7G.cjs.map} +1 -1
- package/dist/{BRSAP7LG.cjs → JSLAKJHB.cjs} +15 -15
- package/dist/{BRSAP7LG.cjs.map → JSLAKJHB.cjs.map} +1 -1
- package/dist/{HCY4ASBG.js → KOKBYHOJ.js} +6 -6
- package/dist/{HCY4ASBG.js.map → KOKBYHOJ.js.map} +1 -1
- package/dist/{3YHRHIKS.js → RP32HMV5.js} +5 -5
- package/dist/{3YHRHIKS.js.map → RP32HMV5.js.map} +1 -1
- package/dist/{362ZLRXL.js → TPWAEA6V.js} +4 -4
- package/dist/{362ZLRXL.js.map → TPWAEA6V.js.map} +1 -1
- package/dist/{QU36PNBP.cjs → U4QZYPBU.cjs} +5 -5
- package/dist/{QU36PNBP.cjs.map → U4QZYPBU.cjs.map} +1 -1
- package/dist/{36UU6CJU.cjs → VI6POZO4.cjs} +8 -8
- package/dist/{36UU6CJU.cjs.map → VI6POZO4.cjs.map} +1 -1
- package/dist/{FL2DFW3Y.js → W44XSMQX.js} +4 -3
- package/dist/W44XSMQX.js.map +1 -0
- package/dist/{M6KBN6B2.cjs → Z6M5WEHB.cjs} +5 -5
- package/dist/{M6KBN6B2.cjs.map → Z6M5WEHB.cjs.map} +1 -1
- package/dist/{VPSZX4TV.cjs → ZOJHQPHA.cjs} +4 -4
- package/dist/{VPSZX4TV.cjs.map → ZOJHQPHA.cjs.map} +1 -1
- package/dist/commands/aptos.cjs +9 -9
- package/dist/commands/aptos.js +8 -8
- package/dist/commands/iota.cjs +10 -10
- package/dist/commands/iota.js +9 -9
- package/dist/commands/sui.cjs +10 -10
- package/dist/commands/sui.js +9 -9
- package/dist/commands/utility/sui-like.cjs +9 -9
- package/dist/commands/utility/sui-like.js +8 -8
- package/dist/config/docker-images.cjs +2 -2
- package/dist/config/docker-images.d.ts +11 -0
- package/dist/config/docker-images.d.ts.map +1 -1
- package/dist/config/docker-images.js +1 -1
- package/dist/config/docker-images.test.cjs +6 -6
- package/dist/config/docker-images.test.cjs.map +1 -1
- package/dist/config/docker-images.test.js +4 -4
- package/dist/config/index.cjs +14 -14
- package/dist/config/index.js +3 -3
- package/dist/config/tools.cjs +6 -6
- package/dist/config/tools.js +3 -3
- package/dist/config/version-matrices.cjs +2 -2
- package/dist/config/version-matrices.d.ts.map +1 -1
- package/dist/config/version-matrices.js +1 -1
- package/dist/core/index.cjs +9 -9
- package/dist/core/index.js +7 -7
- package/dist/core/lock.cjs +4 -4
- package/dist/core/lock.d.ts.map +1 -1
- package/dist/core/lock.js +1 -1
- package/dist/core/lock.test.cjs +6 -6
- package/dist/core/lock.test.cjs.map +1 -1
- package/dist/core/lock.test.js +1 -1
- package/dist/core/tool-executor.cjs +8 -8
- package/dist/core/tool-executor.js +7 -7
- package/dist/core/version-resolver.cjs +5 -5
- package/dist/core/version-resolver.js +4 -4
- package/dist/display/formatters.cjs +5 -5
- package/dist/display/formatters.js +4 -4
- package/dist/display/index.cjs +8 -8
- package/dist/display/index.js +5 -5
- package/dist/display/version-display.cjs +7 -7
- package/dist/display/version-display.js +5 -5
- package/dist/index.cjs +27 -27
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +14 -14
- package/dist/scripts/generate-github-matrix.cjs +11 -8
- package/dist/scripts/generate-github-matrix.cjs.map +1 -1
- package/dist/scripts/generate-github-matrix.js +8 -5
- package/dist/scripts/generate-github-matrix.js.map +1 -1
- package/dist/utils/docker.cjs +8 -8
- package/dist/utils/docker.js +4 -4
- package/dist/utils/finder.cjs +11 -11
- package/dist/utils/finder.js +3 -3
- package/dist/utils/version.cjs +7 -7
- package/dist/utils/version.js +3 -3
- package/dist/utils.cjs +5 -5
- package/dist/utils.js +3 -3
- package/package.json +5 -5
- package/dist/55HL3CFD.js.map +0 -1
- package/dist/6NIOUVPA.cjs.map +0 -1
- package/dist/ACDTMA6Q.cjs.map +0 -1
- package/dist/D3JHHTB6.js.map +0 -1
- package/dist/F35TPZS3.js.map +0 -1
- package/dist/FL2DFW3Y.js.map +0 -1
- package/dist/KSZMBVFB.cjs.map +0 -1
- package/dist/PUL6NSHI.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
require('./CYUSPBTH.cjs');
|
|
4
|
+
var C4FRNVDY_cjs = require('./C4FRNVDY.cjs');
|
|
5
|
+
require('./Z6M5WEHB.cjs');
|
|
3
6
|
require('./IDMMHZJ3.cjs');
|
|
4
7
|
var LNCARCBD_cjs = require('./LNCARCBD.cjs');
|
|
5
8
|
require('./S3PHE6F2.cjs');
|
|
6
|
-
require('./
|
|
7
|
-
var
|
|
8
|
-
require('./M6KBN6B2.cjs');
|
|
9
|
-
var VPSZX4TV_cjs = require('./VPSZX4TV.cjs');
|
|
10
|
-
var GJ24YLYE_cjs = require('./GJ24YLYE.cjs');
|
|
9
|
+
var ZOJHQPHA_cjs = require('./ZOJHQPHA.cjs');
|
|
10
|
+
var H626YBWD_cjs = require('./H626YBWD.cjs');
|
|
11
11
|
var DB5GRF5K_cjs = require('./DB5GRF5K.cjs');
|
|
12
|
-
var
|
|
13
|
-
require('./
|
|
12
|
+
var U4QZYPBU_cjs = require('./U4QZYPBU.cjs');
|
|
13
|
+
require('./I4WZRP7G.cjs');
|
|
14
14
|
require('./Z253B63X.cjs');
|
|
15
|
-
var
|
|
15
|
+
var JSLAKJHB_cjs = require('./JSLAKJHB.cjs');
|
|
16
16
|
require('./YNMZEV5X.cjs');
|
|
17
|
-
require('./
|
|
18
|
-
require('./
|
|
19
|
-
require('./
|
|
20
|
-
|
|
21
|
-
require('./
|
|
22
|
-
require('./
|
|
17
|
+
require('./DBRVUBWJ.cjs');
|
|
18
|
+
require('./VI6POZO4.cjs');
|
|
19
|
+
var _6QJ3ATEV_cjs = require('./6QJ3ATEV.cjs');
|
|
20
|
+
require('./6GRSDUV3.cjs');
|
|
21
|
+
require('./7C3FV2XA.cjs');
|
|
22
|
+
require('./CXM3VA7N.cjs');
|
|
23
23
|
var U7VZULNU_cjs = require('./U7VZULNU.cjs');
|
|
24
24
|
var commander = require('commander');
|
|
25
25
|
var esToolkit = require('es-toolkit');
|
|
@@ -35,7 +35,7 @@ var process__default = /*#__PURE__*/_interopDefault(process);
|
|
|
35
35
|
|
|
36
36
|
// src/index.ts
|
|
37
37
|
U7VZULNU_cjs.init_cjs_shims();
|
|
38
|
-
var toolVersionOptions = Object.fromEntries(
|
|
38
|
+
var toolVersionOptions = Object.fromEntries(_6QJ3ATEV_cjs.tools.map(({ name }) => [
|
|
39
39
|
`${esToolkit.camelCase(name)}Version`,
|
|
40
40
|
name
|
|
41
41
|
]));
|
|
@@ -55,7 +55,7 @@ async function run() {
|
|
|
55
55
|
const program = new commander.Command();
|
|
56
56
|
program.name("lz-tool").description("\u{1F680} LayerZero VM tooling with intelligent version management\n\nUsage pattern:\n lz-tool [global-options] <tool> [tool-args...]\n\nExamples:\n lz-tool -e bash sui --help\n lz-tool --sui-version 1.38.0 sui client\n\nNote: All lz-tool options must appear BEFORE the tool name.").version("1.0.0").enablePositionalOptions();
|
|
57
57
|
if (process__default.default.argv.includes("--list-versions")) {
|
|
58
|
-
|
|
58
|
+
C4FRNVDY_cjs.displayVersionCombinations();
|
|
59
59
|
return;
|
|
60
60
|
}
|
|
61
61
|
program.option("-c, --cwd <path>", "Current working directory", (input) => {
|
|
@@ -113,32 +113,32 @@ async function run() {
|
|
|
113
113
|
})
|
|
114
114
|
];
|
|
115
115
|
}, []).option("-p, --publish <host_port:container_port>", "Publish a container's port(s) to the host");
|
|
116
|
-
for (const tool of
|
|
116
|
+
for (const tool of _6QJ3ATEV_cjs.tools) {
|
|
117
117
|
const optionFlag = `--${tool.name}-version <version>`;
|
|
118
|
-
const defaultVersion =
|
|
119
|
-
const supportedVersions =
|
|
118
|
+
const defaultVersion = _6QJ3ATEV_cjs.getToolDefaultVersion(tool.name);
|
|
119
|
+
const supportedVersions = _6QJ3ATEV_cjs.getToolSupportedVersions(tool.name);
|
|
120
120
|
const description = `Specify ${tool.name} version (default: ${defaultVersion}, supported: ${supportedVersions.join(", ")})`;
|
|
121
121
|
program.option(optionFlag, description);
|
|
122
122
|
}
|
|
123
123
|
program.option("--list-versions", "Display all supported version combinations and exit");
|
|
124
|
-
program.command("version-info <tool>").description("Display detailed version information for a specific tool").action((toolName) =>
|
|
125
|
-
for (const tool of
|
|
124
|
+
program.command("version-info <tool>").description("Display detailed version information for a specific tool").action((toolName) => C4FRNVDY_cjs.displayToolVersionInfo(toolName));
|
|
125
|
+
for (const tool of _6QJ3ATEV_cjs.tools) {
|
|
126
126
|
program.command(tool.name, {
|
|
127
127
|
isDefault: false
|
|
128
128
|
}).description(`Run ${tool.name} with version checking`).passThroughOptions(true).allowUnknownOption().helpOption(false).argument("[args...]", "Arguments to pass to the tool").action(async (args) => {
|
|
129
|
-
await
|
|
129
|
+
await JSLAKJHB_cjs.executeToolCommand(tool.name, args, parseGlobalOptions(program));
|
|
130
130
|
});
|
|
131
131
|
}
|
|
132
132
|
const extra = program.command("extra").description("Extra commands for VM tooling");
|
|
133
133
|
extra.command("starknet").command("build-typescript-sdk").description("Generate TypeScript SDK for Starknet").argument("<package-name>", "Scarb package name").argument("<target-directory>", "Scarb target directory").argument("<src-directory>", "TypeScript source directory").action(DB5GRF5K_cjs.buildTypescriptSdk);
|
|
134
134
|
const aptos = extra.command("aptos");
|
|
135
|
-
aptos.command("compile").description("Compile Aptos contracts and generate the module order file").argument("[args...]", "Arguments to pass to `aptos move compile` command").passThroughOptions(true).allowUnknownOption().action((args) =>
|
|
135
|
+
aptos.command("compile").description("Compile Aptos contracts and generate the module order file").argument("[args...]", "Arguments to pass to `aptos move compile` command").passThroughOptions(true).allowUnknownOption().action((args) => ZOJHQPHA_cjs.compile(args, parseGlobalOptions(program)));
|
|
136
136
|
const iota = extra.command("iota");
|
|
137
|
-
iota.command("build").description("Build IOTA contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `iota move build` command").passThroughOptions(true).allowUnknownOption().action((args) =>
|
|
138
|
-
iota.command("test").description("Test IOTA contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `iota move test` command").passThroughOptions(true).allowUnknownOption().action((args) =>
|
|
137
|
+
iota.command("build").description("Build IOTA contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `iota move build` command").passThroughOptions(true).allowUnknownOption().action((args) => H626YBWD_cjs.iotaWrapper.run("build", args, parseGlobalOptions(program)));
|
|
138
|
+
iota.command("test").description("Test IOTA contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `iota move test` command").passThroughOptions(true).allowUnknownOption().action((args) => H626YBWD_cjs.iotaWrapper.run("test", args, parseGlobalOptions(program)));
|
|
139
139
|
const sui = extra.command("sui");
|
|
140
|
-
sui.command("build").description("Build Sui contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `sui move build` command").passThroughOptions(true).allowUnknownOption().action((args) =>
|
|
141
|
-
sui.command("test").description("Test Sui contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `sui move test` command").passThroughOptions(true).allowUnknownOption().action((args) =>
|
|
140
|
+
sui.command("build").description("Build Sui contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `sui move build` command").passThroughOptions(true).allowUnknownOption().action((args) => U4QZYPBU_cjs.suiWrapper.run("build", args, parseGlobalOptions(program)));
|
|
141
|
+
sui.command("test").description("Test Sui contracts with shared dependency and configuration Docker volumes").argument("[args...]", "Arguments to pass to `sui move test` command").passThroughOptions(true).allowUnknownOption().action((args) => U4QZYPBU_cjs.suiWrapper.run("test", args, parseGlobalOptions(program)));
|
|
142
142
|
await program.parseAsync();
|
|
143
143
|
}
|
|
144
144
|
U7VZULNU_cjs.__name(run, "run");
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["init_cjs_shims","toolVersionOptions","Object","fromEntries","tools","map","name","camelCase","parseGlobalOptions","command","cwd","volume","options","opts","process","volumes","versions","entries","version","filter","tool","run","program","Command","description","enablePositionalOptions","argv","includes","displayVersionCombinations","option","input","Error","path","isAbsolute","fs","existsSync","statSync","isDirectory","variables","valueParts","split","length","value","join","type","hostPath","containerPath","volumeMappingSchema","parse","optionFlag","defaultVersion","getToolDefaultVersion","supportedVersions","getToolSupportedVersions","action","toolName","displayToolVersionInfo","isDefault","passThroughOptions","allowUnknownOption","helpOption","argument","args","executeToolCommand","extra","buildTypescriptSdk","aptos","compile","iota","iotaWrapper","sui","suiWrapper","parseAsync","main","__name","error","console","exit"],"mappings":"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","file":"index.cjs","sourcesContent":["import { Command } from 'commander';\nimport { camelCase } from 'es-toolkit';\nimport fs from 'node:fs';\nimport path from 'node:path';\nimport process from 'node:process';\n\nimport * as aptosCommands from './commands/aptos';\nimport { iotaWrapper } from './commands/iota';\nimport * as starknetCommands from './commands/starknet';\nimport { suiWrapper } from './commands/sui';\nimport { tools } from './config';\nimport type { ToolCommandExecutionOptions } from './core';\nimport { executeToolCommand } from './core';\nimport { displayToolVersionInfo, displayVersionCombinations } from './display';\nimport type { EnvironmentVariable, VolumeMapping } from './types';\nimport { volumeMappingSchema } from './types';\nimport { getToolDefaultVersion, getToolSupportedVersions } from './utils/finder';\n\ninterface GlobalOptions {\n cwd?: string;\n volume: VolumeMapping[];\n env: EnvironmentVariable[];\n script?: string;\n customEntrypoint?: string;\n}\n\nconst toolVersionOptions = Object.fromEntries(\n tools.map(({ name }) => [`${camelCase(name)}Version`, name]),\n);\n\nconst parseGlobalOptions = (command: Command): ToolCommandExecutionOptions => {\n const { cwd, volume, ...options } = command.opts<GlobalOptions>();\n\n return {\n ...options,\n cwd: cwd ?? process.cwd(),\n volumes: volume,\n versions: Object.fromEntries(\n Object.entries(options)\n .map(([name, version]) => [toolVersionOptions[name], version])\n .filter(([tool]) => tool),\n ),\n };\n};\n\nasync function run(): Promise<void> {\n const program = new Command();\n\n program\n .name('lz-tool')\n .description(\n '🚀 LayerZero VM tooling with intelligent version management\\n' +\n '\\n' +\n 'Usage pattern:\\n' +\n ' lz-tool [global-options] <tool> [tool-args...]\\n' +\n '\\n' +\n 'Examples:\\n' +\n ' lz-tool -e bash sui --help\\n' +\n ' lz-tool --sui-version 1.38.0 sui client\\n' +\n '\\n' +\n 'Note: All lz-tool options must appear BEFORE the tool name.',\n )\n .version('1.0.0')\n .enablePositionalOptions(); // Required for passThroughOptions to work\n\n // Check for --list-versions before parsing to avoid help display\n if (process.argv.includes('--list-versions')) {\n displayVersionCombinations();\n return;\n }\n\n // Add global options.\n program\n .option('-c, --cwd <path>', 'Current working directory', (input: string) => {\n if (typeof input !== 'string') {\n throw new Error('cwd flag must be a string');\n }\n\n if (!path.isAbsolute(input)) {\n throw new Error('cwd must be an absolute path if provided');\n }\n\n if (!fs.existsSync(input)) {\n throw new Error('cwd does not exist');\n }\n\n if (!fs.statSync(input).isDirectory()) {\n throw new Error('cwd must be a directory');\n }\n\n return input;\n })\n .option(\n '-e, --custom-entrypoint <entrypoint>',\n 'Override the default Docker entrypoint for the tool',\n )\n .option(\n '--script <script>',\n 'Execute a custom script using bash -c in the Docker container (e.g., --script \"npm install && npm test\")',\n )\n .option(\n '--env <name=value>',\n 'Set environment variables for Docker container (e.g., --env NODE_ENV=production)',\n (input: string, variables: EnvironmentVariable[]) => {\n const [name, ...valueParts] = input.split('=');\n\n if (!name || !valueParts.length) {\n throw new Error(\n `Invalid environment variable format: ${input}. Use --env NAME=VALUE`,\n );\n }\n\n return [...variables, { name, value: valueParts.join('=') }];\n },\n [],\n )\n .option(\n '-v, --volume <type:hostPath:containerPath[:name]>',\n 'Volume mappings in the format type:hostPath:containerPath[:name] (e.g., host:/host/path:/container/path or isolate::/container/path:volumeName)',\n (input: string, volumes: VolumeMapping[]) => {\n const [type, hostPath, containerPath, name] = input.split(':');\n\n switch (type) {\n case 'host':\n if (!hostPath) {\n throw new Error(`Host path is required for volume type 'host'`);\n }\n break;\n case 'isolate':\n if (!name) {\n throw new Error(`Name is required for volume type 'isolate'`);\n }\n break;\n default:\n throw new Error(`Invalid volume type: ${type}`);\n }\n\n if (!containerPath) {\n throw new Error(`Container path is required`);\n }\n\n return [\n ...volumes,\n volumeMappingSchema.parse({ type, hostPath, containerPath, name }),\n ];\n },\n [],\n )\n .option(\n '-p, --publish <host_port:container_port>',\n \"Publish a container's port(s) to the host\",\n );\n\n // Add version options for each tool dynamically\n for (const tool of tools) {\n const optionFlag = `--${tool.name}-version <version>`;\n const defaultVersion = getToolDefaultVersion(tool.name);\n const supportedVersions = getToolSupportedVersions(tool.name);\n const description = `Specify ${tool.name} version (default: ${defaultVersion}, supported: ${supportedVersions.join(', ')})`;\n\n program.option(optionFlag, description);\n }\n\n // Add utility options\n program.option('--list-versions', 'Display all supported version combinations and exit');\n\n // Add version info command\n program\n .command('version-info <tool>')\n .description('Display detailed version information for a specific tool')\n .action((toolName: string) => displayToolVersionInfo(toolName));\n\n // Dynamically add commands for each supported tool\n for (const tool of tools) {\n // Don't add any options to the subcommand level.\n // All lz-tool options must be specified before the subcommand.\n program\n .command(tool.name, { isDefault: false })\n .description(`Run ${tool.name} with version checking`)\n .passThroughOptions(true) // Pass through all options after the subcommand\n .allowUnknownOption()\n .helpOption(false) // Disable automatic help option to pass --help to the tool\n .argument('[args...]', 'Arguments to pass to the tool')\n .action(async (args: string[]) => {\n await executeToolCommand(tool.name, args, parseGlobalOptions(program));\n });\n }\n\n const extra = program.command('extra').description('Extra commands for VM tooling');\n\n extra\n .command('starknet')\n .command('build-typescript-sdk')\n .description('Generate TypeScript SDK for Starknet')\n .argument('<package-name>', 'Scarb package name')\n .argument('<target-directory>', 'Scarb target directory')\n .argument('<src-directory>', 'TypeScript source directory')\n .action(starknetCommands.buildTypescriptSdk);\n\n const aptos = extra.command('aptos');\n\n aptos\n .command('compile')\n .description('Compile Aptos contracts and generate the module order file')\n .argument('[args...]', 'Arguments to pass to `aptos move compile` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => aptosCommands.compile(args, parseGlobalOptions(program)));\n\n const iota = extra.command('iota');\n\n iota.command('build')\n .description('Build IOTA contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `iota move build` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => iotaWrapper.run('build', args, parseGlobalOptions(program)));\n\n iota.command('test')\n .description('Test IOTA contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `iota move test` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => iotaWrapper.run('test', args, parseGlobalOptions(program)));\n\n const sui = extra.command('sui');\n\n sui.command('build')\n .description('Build Sui contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `sui move build` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => suiWrapper.run('build', args, parseGlobalOptions(program)));\n\n sui.command('test')\n .description('Test Sui contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `sui move test` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => suiWrapper.run('test', args, parseGlobalOptions(program)));\n\n await program.parseAsync();\n}\n\nexport const main = async (): Promise<void> => {\n try {\n await run();\n } catch (error) {\n console.error('❌ VM tool execution failed', error);\n process.exit(1);\n }\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["init_cjs_shims","toolVersionOptions","Object","fromEntries","tools","map","name","camelCase","parseGlobalOptions","command","cwd","volume","options","opts","process","volumes","versions","entries","version","filter","tool","run","program","Command","description","enablePositionalOptions","argv","includes","displayVersionCombinations","option","input","Error","path","isAbsolute","fs","existsSync","statSync","isDirectory","variables","valueParts","split","length","value","join","type","hostPath","containerPath","volumeMappingSchema","parse","optionFlag","defaultVersion","getToolDefaultVersion","supportedVersions","getToolSupportedVersions","action","toolName","displayToolVersionInfo","isDefault","passThroughOptions","allowUnknownOption","helpOption","argument","args","executeToolCommand","extra","buildTypescriptSdk","aptos","compile","iota","iotaWrapper","sui","suiWrapper","parseAsync","main","__name","error","console","exit"],"mappings":"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","file":"index.cjs","sourcesContent":["import { Command } from 'commander';\nimport { camelCase } from 'es-toolkit';\nimport fs from 'node:fs';\nimport path from 'node:path';\nimport process from 'node:process';\n\nimport * as aptosCommands from './commands/aptos';\nimport { iotaWrapper } from './commands/iota';\nimport * as starknetCommands from './commands/starknet';\nimport { suiWrapper } from './commands/sui';\nimport { tools } from './config';\nimport type { ToolCommandExecutionOptions } from './core';\nimport { executeToolCommand } from './core';\nimport { displayToolVersionInfo, displayVersionCombinations } from './display';\nimport type { EnvironmentVariable, VolumeMapping } from './types';\nimport { volumeMappingSchema } from './types';\nimport { getToolDefaultVersion, getToolSupportedVersions } from './utils/finder';\n\ninterface GlobalOptions {\n cwd?: string;\n volume: VolumeMapping[];\n env: EnvironmentVariable[];\n script?: string;\n customEntrypoint?: string;\n}\n\nconst toolVersionOptions = Object.fromEntries(\n tools.map(({ name }) => [`${camelCase(name)}Version`, name]),\n);\n\nconst parseGlobalOptions = (command: Command): ToolCommandExecutionOptions => {\n const { cwd, volume, ...options } = command.opts<GlobalOptions>();\n\n return {\n ...options,\n cwd: cwd ?? process.cwd(),\n volumes: volume,\n versions: Object.fromEntries(\n Object.entries(options)\n .map(([name, version]) => [toolVersionOptions[name], version])\n .filter(([tool]) => tool),\n ),\n };\n};\n\nasync function run(): Promise<void> {\n const program = new Command();\n\n program\n .name('lz-tool')\n .description(\n '🚀 LayerZero VM tooling with intelligent version management\\n' +\n '\\n' +\n 'Usage pattern:\\n' +\n ' lz-tool [global-options] <tool> [tool-args...]\\n' +\n '\\n' +\n 'Examples:\\n' +\n ' lz-tool -e bash sui --help\\n' +\n ' lz-tool --sui-version 1.38.0 sui client\\n' +\n '\\n' +\n 'Note: All lz-tool options must appear BEFORE the tool name.',\n )\n .version('1.0.0')\n .enablePositionalOptions(); // Required for passThroughOptions to work\n\n // Check for --list-versions before parsing to avoid help display\n if (process.argv.includes('--list-versions')) {\n displayVersionCombinations();\n return;\n }\n\n // Add global options.\n program\n .option('-c, --cwd <path>', 'Current working directory', (input: string) => {\n if (typeof input !== 'string') {\n throw new Error('cwd flag must be a string');\n }\n\n if (!path.isAbsolute(input)) {\n throw new Error('cwd must be an absolute path if provided');\n }\n\n if (!fs.existsSync(input)) {\n throw new Error('cwd does not exist');\n }\n\n if (!fs.statSync(input).isDirectory()) {\n throw new Error('cwd must be a directory');\n }\n\n return input;\n })\n .option(\n '-e, --custom-entrypoint <entrypoint>',\n 'Override the default Docker entrypoint for the tool',\n )\n .option(\n '--script <script>',\n 'Execute a custom script using bash -c in the Docker container (e.g., --script \"npm install && npm test\")',\n )\n .option(\n '--env <name=value>',\n 'Set environment variables for Docker container (e.g., --env NODE_ENV=production)',\n (input: string, variables: EnvironmentVariable[]) => {\n const [name, ...valueParts] = input.split('=');\n\n if (!name || !valueParts.length) {\n throw new Error(\n `Invalid environment variable format: ${input}. Use --env NAME=VALUE`,\n );\n }\n\n return [...variables, { name, value: valueParts.join('=') }];\n },\n [],\n )\n .option(\n '-v, --volume <type:hostPath:containerPath[:name]>',\n 'Volume mappings in the format type:hostPath:containerPath[:name] (e.g., host:/host/path:/container/path or isolate::/container/path:volumeName)',\n (input: string, volumes: VolumeMapping[]) => {\n const [type, hostPath, containerPath, name] = input.split(':');\n\n switch (type) {\n case 'host':\n if (!hostPath) {\n throw new Error(`Host path is required for volume type 'host'`);\n }\n break;\n case 'isolate':\n if (!name) {\n throw new Error(`Name is required for volume type 'isolate'`);\n }\n break;\n default:\n throw new Error(`Invalid volume type: ${type}`);\n }\n\n if (!containerPath) {\n throw new Error(`Container path is required`);\n }\n\n return [\n ...volumes,\n volumeMappingSchema.parse({ type, hostPath, containerPath, name }),\n ];\n },\n [],\n )\n .option(\n '-p, --publish <host_port:container_port>',\n \"Publish a container's port(s) to the host\",\n );\n\n // Add version options for each tool dynamically\n for (const tool of tools) {\n const optionFlag = `--${tool.name}-version <version>`;\n const defaultVersion = getToolDefaultVersion(tool.name);\n const supportedVersions = getToolSupportedVersions(tool.name);\n const description = `Specify ${tool.name} version (default: ${defaultVersion}, supported: ${supportedVersions.join(', ')})`;\n\n program.option(optionFlag, description);\n }\n\n // Add utility options\n program.option('--list-versions', 'Display all supported version combinations and exit');\n\n // Add version info command\n program\n .command('version-info <tool>')\n .description('Display detailed version information for a specific tool')\n .action((toolName: string) => displayToolVersionInfo(toolName));\n\n // Dynamically add commands for each supported tool\n for (const tool of tools) {\n // Don't add any options to the subcommand level.\n // All lz-tool options must be specified before the subcommand.\n program\n .command(tool.name, { isDefault: false })\n .description(`Run ${tool.name} with version checking`)\n .passThroughOptions(true) // Pass through all options after the subcommand\n .allowUnknownOption()\n .helpOption(false) // Disable automatic help option to pass --help to the tool\n .argument('[args...]', 'Arguments to pass to the tool')\n .action(async (args: string[]) => {\n await executeToolCommand(tool.name, args, parseGlobalOptions(program));\n });\n }\n\n const extra = program.command('extra').description('Extra commands for VM tooling');\n\n extra\n .command('starknet')\n .command('build-typescript-sdk')\n .description('Generate TypeScript SDK for Starknet')\n .argument('<package-name>', 'Scarb package name')\n .argument('<target-directory>', 'Scarb target directory')\n .argument('<src-directory>', 'TypeScript source directory')\n .action(starknetCommands.buildTypescriptSdk);\n\n const aptos = extra.command('aptos');\n\n aptos\n .command('compile')\n .description('Compile Aptos contracts and generate the module order file')\n .argument('[args...]', 'Arguments to pass to `aptos move compile` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => aptosCommands.compile(args, parseGlobalOptions(program)));\n\n const iota = extra.command('iota');\n\n iota.command('build')\n .description('Build IOTA contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `iota move build` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => iotaWrapper.run('build', args, parseGlobalOptions(program)));\n\n iota.command('test')\n .description('Test IOTA contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `iota move test` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => iotaWrapper.run('test', args, parseGlobalOptions(program)));\n\n const sui = extra.command('sui');\n\n sui.command('build')\n .description('Build Sui contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `sui move build` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => suiWrapper.run('build', args, parseGlobalOptions(program)));\n\n sui.command('test')\n .description('Test Sui contracts with shared dependency and configuration Docker volumes')\n .argument('[args...]', 'Arguments to pass to `sui move test` command')\n .passThroughOptions(true)\n .allowUnknownOption()\n .action((args: string[]) => suiWrapper.run('test', args, parseGlobalOptions(program)));\n\n await program.parseAsync();\n}\n\nexport const main = async (): Promise<void> => {\n try {\n await run();\n } catch (error) {\n console.error('❌ VM tool execution failed', error);\n process.exit(1);\n }\n};\n"]}
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
+
import './7BFNUKIW.js';
|
|
2
|
+
import { displayVersionCombinations, displayToolVersionInfo } from './RP32HMV5.js';
|
|
3
|
+
import './BQMGLKBO.js';
|
|
1
4
|
import './GIS4KMDM.js';
|
|
2
5
|
import { volumeMappingSchema } from './ORWR6LWW.js';
|
|
3
6
|
import './6YTOLRHQ.js';
|
|
4
|
-
import './
|
|
5
|
-
import {
|
|
6
|
-
import './Y27GTZ2Q.js';
|
|
7
|
-
import { compile } from './SV3LGPR3.js';
|
|
8
|
-
import { iotaWrapper } from './X72XTEFE.js';
|
|
7
|
+
import { compile } from './EDE37TVE.js';
|
|
8
|
+
import { iotaWrapper } from './CSLN223N.js';
|
|
9
9
|
import { buildTypescriptSdk } from './BTXB2LKA.js';
|
|
10
|
-
import { suiWrapper } from './
|
|
11
|
-
import './
|
|
10
|
+
import { suiWrapper } from './TPWAEA6V.js';
|
|
11
|
+
import './2Z6XZCGO.js';
|
|
12
12
|
import './6QZPR4XG.js';
|
|
13
|
-
import { executeToolCommand } from './
|
|
13
|
+
import { executeToolCommand } from './KOKBYHOJ.js';
|
|
14
14
|
import './IWNVWC3I.js';
|
|
15
|
-
import './
|
|
16
|
-
import './
|
|
17
|
-
import './
|
|
18
|
-
import
|
|
19
|
-
import './
|
|
20
|
-
import './
|
|
15
|
+
import './3GTIKWKS.js';
|
|
16
|
+
import './73CRCY4G.js';
|
|
17
|
+
import { tools, getToolDefaultVersion, getToolSupportedVersions } from './AUA3QPCB.js';
|
|
18
|
+
import './GWPT4OMB.js';
|
|
19
|
+
import './3ATC7U63.js';
|
|
20
|
+
import './W44XSMQX.js';
|
|
21
21
|
import { init_esm_shims, __name } from './4RNWLMHM.js';
|
|
22
22
|
import { Command } from 'commander';
|
|
23
23
|
import { camelCase } from 'es-toolkit';
|
|
@@ -10,10 +10,10 @@ var F7OAIAEX_cjs = require('../F7OAIAEX.cjs');
|
|
|
10
10
|
var P5BPMTGP_cjs = require('../P5BPMTGP.cjs');
|
|
11
11
|
require('../WDSPHVPJ.cjs');
|
|
12
12
|
var JGLHYXTW_cjs = require('../JGLHYXTW.cjs');
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
require('../
|
|
16
|
-
|
|
13
|
+
var VI6POZO4_cjs = require('../VI6POZO4.cjs');
|
|
14
|
+
var _6QJ3ATEV_cjs = require('../6QJ3ATEV.cjs');
|
|
15
|
+
var _6GRSDUV3_cjs = require('../6GRSDUV3.cjs');
|
|
16
|
+
require('../7C3FV2XA.cjs');
|
|
17
17
|
var U7VZULNU_cjs = require('../U7VZULNU.cjs');
|
|
18
18
|
var commander = require('commander');
|
|
19
19
|
var path = require('path');
|
|
@@ -1929,7 +1929,7 @@ var ecrClient = new ECRClient();
|
|
|
1929
1929
|
var command = new commander.Command().name("generate-github-matrix").requiredOption("--registry <registry>").parse();
|
|
1930
1930
|
var { registry } = command.opts();
|
|
1931
1931
|
var compileImage = /* @__PURE__ */ U7VZULNU_cjs.__name(async (image) => {
|
|
1932
|
-
const repository = path.join(
|
|
1932
|
+
const repository = path.join(_6QJ3ATEV_cjs.ECR_IMAGE_DIRECTORY, _6QJ3ATEV_cjs.getImageName(image.name));
|
|
1933
1933
|
let existingTags = /* @__PURE__ */ new Set();
|
|
1934
1934
|
try {
|
|
1935
1935
|
const imageIds = [];
|
|
@@ -1955,20 +1955,23 @@ var compileImage = /* @__PURE__ */ U7VZULNU_cjs.__name(async (image) => {
|
|
|
1955
1955
|
console.warn(`Existing tags for ${repository}:`, [
|
|
1956
1956
|
...existingTags
|
|
1957
1957
|
]);
|
|
1958
|
-
const tags = tagSeparators.map((separator) => `${registry}/${repository}:${
|
|
1958
|
+
const tags = tagSeparators.map((separator) => `${registry}/${repository}:${VI6POZO4_cjs.getImageTag(image, separator)}`);
|
|
1959
1959
|
if (tags.some((tag) => existingTags.has(tag.split(":").at(-1)))) {
|
|
1960
1960
|
return null;
|
|
1961
1961
|
}
|
|
1962
1962
|
return {
|
|
1963
1963
|
name: image.name,
|
|
1964
|
-
build_args: Object.entries(
|
|
1964
|
+
build_args: Object.entries({
|
|
1965
|
+
...image.versions,
|
|
1966
|
+
...image.dependencies
|
|
1967
|
+
}).sort().map(([key, value]) => `${key.replaceAll("-", "_").toUpperCase()}_VERSION=${value}`),
|
|
1965
1968
|
directory: path.join("tools/vm-tooling/docker", image.name),
|
|
1966
1969
|
repository,
|
|
1967
1970
|
tags
|
|
1968
1971
|
};
|
|
1969
1972
|
}, "compileImage");
|
|
1970
1973
|
var main = /* @__PURE__ */ U7VZULNU_cjs.__name(async () => {
|
|
1971
|
-
const entries = (await Promise.all(Object.values(
|
|
1974
|
+
const entries = (await Promise.all(Object.values(_6GRSDUV3_cjs.images).map(compileImage))).filter((entry) => !!entry);
|
|
1972
1975
|
console.warn("GitHub Action matrix generated:", entries);
|
|
1973
1976
|
process$1.stdout.write(JSON.stringify(entries));
|
|
1974
1977
|
}, "main");
|