123456789101112131415161718192021 |
- /**
- * Create a class inheriting from Error.
- */
- function createErrorClass(name) {
- const klass = class extends Error {
- /**
- * Custom error class constructor.
- * @param {string} message
- */
- constructor(message) {
- super(message);
-
- // Override `name` property value and make it non enumerable.
- Object.defineProperty(this, 'name', { value: name });
- }
- };
-
- return klass;
- }
-
- export const InvalidStateError = createErrorClass('InvalidStateError');
|