"use strict"; var Minimist = require('minimist'); class Input { /** * Constructor. * * @param object process */ constructor(process) { this.args = Minimist(process.argv.slice(2)) this.node = process.argv[0] this.script = process.argv[1] } /** * Return the value of the given name argument. * * @param string name * @param mixed default * * @return mixed */ get(name, defaultValue) { if (this.has(name)) { return this.args[name] } if (defaultValue !== undefined) { return defaultValue } return null; } /** * Check the given argument name exists. * * @param string name * * @return boolean */ has(name) { return this.args.hasOwnProperty(name) } /** * Return if args is empty. * * @return boolean */ empty() { return Object.keys(this.args).length === 1 } } module.exports = Input