error-cause
Version:
An ES-spec-compliant shim/polyfill/replacement for the `.cause` property on all Error types that works as far down as ES3
33 lines (21 loc) • 857 B
JavaScript
var hasPropertyDescriptors = require('has-property-descriptors')();
var $RangeError = require('es-errors/range');
var DefineMethodProperty = require('es-abstract/2025/DefineMethodProperty');
var InstallErrorCause = require('es-abstract/2025/InstallErrorCause');
var setProto = require('set-proto');
var Error = require('../Error/polyfill')();
function RangeError(message) {
var O = arguments.length > 1 ? new $RangeError(message, arguments[1]) : new $RangeError(message);
InstallErrorCause(O, arguments.length > 1 && arguments[1]);
DefineMethodProperty(O, 'constructor', RangeError, false);
return O;
}
if (setProto) {
setProto(RangeError, Error);
}
RangeError.prototype = $RangeError.prototype;
if (hasPropertyDescriptors) {
Object.defineProperty(RangeError, 'prototype', { writable: false });
}
module.exports = RangeError;
;