scraper/src/console/input.js

59 lines
1 KiB
JavaScript
Raw Normal View History

2020-04-11 22:18:23 +02:00
"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