UNPKG

fusox

Version:

Command line wrapper for fuse-box

51 lines (44 loc) 1.38 kB
#!/usr/bin/env node const process = require('process') const chalk = require('chalk') const minimist = require('minimist') const {parseCommonFlags} = require('./cli/common') const {parseCommandFlags} = require('./cli/command') const {versionCommand} = require('./cli/version') const {docsCommand} = require('./cli/docs') const {examplesCommand} = require('./cli/examples') const {helpCommand} = require('./cli/help') const {parseInitFlags, initCommand} = require('./cli/init') const {parseBuildArgs, parseBuildFlags, buildCommand} = require('./cli/build') ;(() => { let args = minimist(process.argv.slice(2)) let common = parseCommonFlags(args) try { let commands = parseCommandFlags(args) if (commands.help) { helpCommand() } else if (commands.version) { versionCommand() } else if (commands.docs) { docsCommand() } else if (commands.examples) { examplesCommand() } else if (commands.init) { initCommand(parseInitFlags(args)) } else { let builds = parseBuildFlags(parseBuildArgs(args)) if (builds.length > 0) { buildCommand(parseBuildFlags(parseBuildArgs(args))) } else { helpCommand() } } } catch (err) { if (common.trace) { console.error(chalk.red(err.stack)) } else { console.error(chalk.red(err.message)) } process.exit(0) } })()