cc-zos
Version:
Command-line interface for the ZeppelinOS smart contract platform
39 lines (22 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _chalk = require('chalk');
var _chalk2 = _interopRequireDefault(_chalk);
var _commander = require('commander');
var _commander2 = _interopRequireDefault(_commander);
var _ccZosLib = require('cc-zos-lib');
var _package = require('../../package.json');
var _commands = require('../commands');
var _commands2 = _interopRequireDefault(_commands);
var _errors = require('./errors');
var _errors2 = _interopRequireDefault(_errors);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
require('./options');
const commandsList = Object.values(_commands2.default);
commandsList.forEach(command => command.register(_commander2.default));
const maxLength = Math.max(...commandsList.map(command => command.signature.length));
_commander2.default.name('zos').usage('<command> [options]').description(`where <command> is one of: ${commandsList.map(c => c.name).join(', ')}`).version(_package.version, '--version').option('-v, --verbose', 'verbose mode on: output errors stacktrace and detailed log.').option('-s, --silent', 'silent mode: no output sent to stderr.').on('option:verbose', () => _ccZosLib.Logger.verbose(true)).on('option:silent', () => _ccZosLib.Logger.silent(true)).on('--help', () => commandsList.forEach(c => console.log(` ${_chalk2.default.bold(c.signature.padEnd(maxLength))}\t${c.description}\n`)));
(0, _errors2.default)(_commander2.default);
exports.default = _commander2.default;