UNPKG

1.24 kBJavaScriptView Raw
1// @ts-check
2
3/**
4 * CommanderError class
5 * @class
6 */
7class CommanderError extends Error {
8 /**
9 * Constructs the CommanderError class
10 * @param {number} exitCode suggested exit code which could be used with process.exit
11 * @param {string} code an id string representing the error
12 * @param {string} message human-readable description of the error
13 * @constructor
14 */
15 constructor(exitCode, code, message) {
16 super(message);
17 // properly capture stack trace in Node.js
18 Error.captureStackTrace(this, this.constructor);
19 this.name = this.constructor.name;
20 this.code = code;
21 this.exitCode = exitCode;
22 this.nestedError = undefined;
23 }
24}
25
26/**
27 * InvalidArgumentError class
28 * @class
29 */
30class InvalidArgumentError extends CommanderError {
31 /**
32 * Constructs the InvalidArgumentError class
33 * @param {string} [message] explanation of why argument is invalid
34 * @constructor
35 */
36 constructor(message) {
37 super(1, 'commander.invalidArgument', message);
38 // properly capture stack trace in Node.js
39 Error.captureStackTrace(this, this.constructor);
40 this.name = this.constructor.name;
41 }
42}
43
44exports.CommanderError = CommanderError;
45exports.InvalidArgumentError = InvalidArgumentError;