glob-option-error
v1.0.0
Published
Create an error from the result of validate-glob-opts
Downloads
149,115
Maintainers
Readme
glob-option-error
Create an error from the result of validate-glob-opts
const GlobOptionError = require('glob-option-error');
const validateGlobOpts = require('validate-glob-opts');
new GlobOptionError(validateGlobOpts({
sync: true,
mark: '/',
caches: {}
}));
/* => Error: 3 errors found in the glob options:
1. `sync` option is deprecated and there’s no need to pass any values to that option, but true was provided.
2. node-glob expected `mark` option to be a Boolean value, but got '/'.
3. node-glob doesn't have `caches` option. Probably you meant `cache`.
at new GlobOptionError (/Users/me/exmaple/node_modules/glob-option-error/index.js:33:17)
at Object.<anonymous> (/Users/me/exmaple/app.js:2:13)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
...
*/
Installation
npm install glob-option-error
API
const GlobOptionError = require('glob-option-error');
GlobOptionError(array)
array: Array<error>
(return value of validate-glob-opts)
Return: Error
with an iterator that returns the individual errors one by one
const GlobOptionError = require('glob-option-error');
const validateGlobOpts = require('validate-glob-opts');
const results = validateGlobOpts({
root: Buffer.from('Hi'),
nodir: NaN,
ignore: ['path1', 1]
});
/*=> [
TypeError: node-glob expected `root` option to be a directory path (string), but got <Buffer 48 69>.,
TypeError: node-glob expected `nodir` option to be a Boolean value, but got NaN.,
TypeError: Expected every value in the `ignore` option to be a string, but the array includes a non-string value 1.
] */
const error = new GlobOptionError(results); //=> TypeError: 3 errors found in the glob options: ...
for (const {message} of error) {
console.log(message);
// node-glob expected `root` option to be a directory path (string), but got <Buffer 48 69>.
// node-glob expected `nodir` option to be a Boolean value, but got NaN.
// Expected every value in the `ignore` option to be a string, but the array includes a non-string value 1.
}
The argument must include at least one element.
new GlobOptionError([]);
// throws a RangeError: Expected an array with at least one error, but got [] (empty array).
License
Copyright (c) 2017 Shinnosuke Watanabe
Licensed under the MIT License.