UNPKG

@backtrace/javascript-cli

Version:
92 lines 3.07 kB
#!/usr/bin/env node "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const sourcemap_tools_1 = require("@backtrace/sourcemap-tools"); const command_line_args_1 = __importDefault(require("command-line-args")); const Command_1 = require("./commands/Command"); const version_1 = require("./helpers/version"); const logger_1 = require("./logger"); const loadOptions_1 = require("./options/loadOptions"); const add_sources_1 = require("./sourcemaps/add-sources"); const process_1 = require("./sourcemaps/process"); const run_1 = require("./sourcemaps/run"); const upload_1 = require("./sourcemaps/upload"); const mainCommand = new Command_1.Command({ name: '', }) .subcommand(run_1.runCmd) .subcommand(process_1.processCmd) .subcommand(add_sources_1.addSourcesCmd) .subcommand(upload_1.uploadCmd) .option({ name: 'help', type: Boolean, alias: 'h', global: true, description: 'Displays this help message.', }) .option({ name: 'verbose', type: Boolean, alias: 'v', global: true, multiple: true, description: 'Verbosity level. -v prints debug logs, -vv prints ALL logs.', }) .option({ name: 'quiet', type: Boolean, alias: 'q', global: true, description: 'Disables ALL logging messages.', }) .option({ name: 'log-level', type: String, global: true, description: 'Sets the logging level. Can be one of: quiet, error, warn, info, debug, verbose. Default: info', }) .option({ name: 'config', type: String, global: true, description: `Path to the config file. Default: ${loadOptions_1.DEFAULT_OPTIONS_FILENAME}`, }) .option({ name: 'version', type: Boolean, description: 'Displays the version of backtrace-js', }) .execute(async function ({ opts, getHelpMessage }) { const logger = (0, logger_1.createLogger)(opts); if (opts.version) { return (0, sourcemap_tools_1.pipe)(await (0, version_1.loadVersion)(), sourcemap_tools_1.R.map((version) => logger.output(version))); } else { logger.info(getHelpMessage()); const unknownOption = opts._unknown?.[0]; if (!unknownOption) { return (0, sourcemap_tools_1.Err)(`Unknown command.`); } if (unknownOption.startsWith('-')) { return (0, sourcemap_tools_1.Err)(`Unknown option: ${unknownOption}`); } return (0, sourcemap_tools_1.Err)(`Unknown command: ${unknownOption}`); } }); (async () => { const result = await mainCommand.run(process.argv); if (result.isOk()) { process.exit(result.data); } else { const loggerOptions = (0, command_line_args_1.default)(mainCommand.options, { partial: true }); const logger = (0, logger_1.createLogger)(loggerOptions); logger.fatal(result.data.error); process.exit(1); } })(); //# sourceMappingURL=index.js.map