UNPKG

@dethcrypto/eth-sdk

Version:

🛠 Generate type-safe, lightweight SDK for your Ethereum smart contracts

34 lines • 1.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseArgs = void 0; const commander_1 = require("commander"); const path_1 = require("path"); const DEFAULT_CONFIG_PATH = './eth-sdk'; function parseArgs({ argv, cwd }) { panicOnDeprecatedArgs(argv); const program = new commander_1.Command(); program.option('-p, --path <path>', 'Config root', DEFAULT_CONFIG_PATH); program.version(require('../package.json').version); program.parse(argv); const rawOpts = program.opts(); return { workingDirPath: joinPaths({ cwd, path: rawOpts.path }), }; } exports.parseArgs = parseArgs; function joinPaths({ path, cwd }) { const absolutePath = (0, path_1.isAbsolute)(path) ? path : (0, path_1.join)(cwd, path); return absolutePath.replace(/\\/g, '/'); } function panicOnDeprecatedArgs(argv) { const deprecatedArgs = ['--out', '-o']; for (const cliArg of deprecatedArgs) { if (argv.includes(cliArg)) { throw new Error(`The "${cliArg}" argument is deprecated.\n` + `Please set "outputPath" property in your config file instead.\n` + 'Learn more about migration to eth-sdk 0.2 at\n' + 'https://github.com/dethcrypto/eth-sdk/releases\n'); } } } //# sourceMappingURL=parseArgs.js.map