|
1 | 1 | exports.codes = {
|
2 |
| - ERR_INPUT_TYPE_NOT_ALLOWED: createErrorCtor('ERR_INPUT_TYPE_NOT_ALLOWED'), |
3 |
| - ERR_INVALID_ARG_VALUE: createErrorCtor('ERR_INVALID_ARG_VALUE'), |
4 |
| - ERR_INVALID_MODULE_SPECIFIER: createErrorCtor('ERR_INVALID_MODULE_SPECIFIER'), |
5 |
| - ERR_INVALID_PACKAGE_CONFIG: createErrorCtor('ERR_INVALID_PACKAGE_CONFIG'), |
6 |
| - ERR_INVALID_PACKAGE_TARGET: createErrorCtor('ERR_INVALID_PACKAGE_TARGET'), |
7 |
| - ERR_MANIFEST_DEPENDENCY_MISSING: createErrorCtor('ERR_MANIFEST_DEPENDENCY_MISSING'), |
8 |
| - ERR_MODULE_NOT_FOUND: createErrorCtor('ERR_MODULE_NOT_FOUND'), |
9 |
| - ERR_PACKAGE_IMPORT_NOT_DEFINED: createErrorCtor('ERR_PACKAGE_IMPORT_NOT_DEFINED'), |
10 |
| - ERR_PACKAGE_PATH_NOT_EXPORTED: createErrorCtor('ERR_PACKAGE_PATH_NOT_EXPORTED'), |
11 |
| - ERR_UNSUPPORTED_DIR_IMPORT: createErrorCtor('ERR_UNSUPPORTED_DIR_IMPORT'), |
12 |
| - ERR_UNSUPPORTED_ESM_URL_SCHEME: createErrorCtor('ERR_UNSUPPORTED_ESM_URL_SCHEME'), |
| 2 | + ERR_INPUT_TYPE_NOT_ALLOWED: createErrorCtor(joinArgs('ERR_INPUT_TYPE_NOT_ALLOWED')), |
| 3 | + ERR_INVALID_ARG_VALUE: createErrorCtor(joinArgs('ERR_INVALID_ARG_VALUE')), |
| 4 | + ERR_INVALID_MODULE_SPECIFIER: createErrorCtor(joinArgs('ERR_INVALID_MODULE_SPECIFIER')), |
| 5 | + ERR_INVALID_PACKAGE_CONFIG: createErrorCtor(joinArgs('ERR_INVALID_PACKAGE_CONFIG')), |
| 6 | + ERR_INVALID_PACKAGE_TARGET: createErrorCtor(joinArgs('ERR_INVALID_PACKAGE_TARGET')), |
| 7 | + ERR_MANIFEST_DEPENDENCY_MISSING: createErrorCtor(joinArgs('ERR_MANIFEST_DEPENDENCY_MISSING')), |
| 8 | + ERR_MODULE_NOT_FOUND: createErrorCtor((path, base, type = 'package') => { |
| 9 | + return `Cannot find ${type} '${path}' imported from ${base}` |
| 10 | + }), |
| 11 | + ERR_PACKAGE_IMPORT_NOT_DEFINED: createErrorCtor(joinArgs('ERR_PACKAGE_IMPORT_NOT_DEFINED')), |
| 12 | + ERR_PACKAGE_PATH_NOT_EXPORTED: createErrorCtor(joinArgs('ERR_PACKAGE_PATH_NOT_EXPORTED')), |
| 13 | + ERR_UNSUPPORTED_DIR_IMPORT: createErrorCtor(joinArgs('ERR_UNSUPPORTED_DIR_IMPORT')), |
| 14 | + ERR_UNSUPPORTED_ESM_URL_SCHEME: createErrorCtor(joinArgs('ERR_UNSUPPORTED_ESM_URL_SCHEME')), |
13 | 15 | }
|
14 | 16 |
|
15 |
| -function createErrorCtor(name) { |
| 17 | +function joinArgs(name) { |
| 18 | + return (...args) => { |
| 19 | + return [name, ...args].join(' ') |
| 20 | + } |
| 21 | +} |
| 22 | + |
| 23 | +function createErrorCtor(errorMessageCreator) { |
16 | 24 | return class CustomError extends Error {
|
17 | 25 | constructor(...args) {
|
18 |
| - super([name, ...args].join(' ')) |
| 26 | + super(errorMessageCreator(...args)) |
19 | 27 | }
|
20 | 28 | }
|
21 | 29 | }
|
0 commit comments