$
This commit is contained in:
21
node_modules/domexception/LICENSE.txt
generated
vendored
Normal file
21
node_modules/domexception/LICENSE.txt
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright © Domenic Denicola
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
31
node_modules/domexception/README.md
generated
vendored
Normal file
31
node_modules/domexception/README.md
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
# DOMException
|
||||
|
||||
This package implements the [`DOMException`](https://heycam.github.io/webidl/#idl-DOMException) class, from web browsers. It exists in service of [jsdom](https://github.com/jsdom/jsdom) and related packages.
|
||||
|
||||
Example usage:
|
||||
|
||||
```js
|
||||
const DOMException = require("domexception");
|
||||
|
||||
const e1 = new DOMException("Something went wrong", "BadThingsError");
|
||||
console.assert(e1.name === "BadThingsError");
|
||||
console.assert(e1.code === 0);
|
||||
|
||||
const e2 = new DOMException("Another exciting error message", "NoModificationAllowedError");
|
||||
console.assert(e2.name === "NoModificationAllowedError");
|
||||
console.assert(e2.code === 7);
|
||||
|
||||
console.assert(DOMException.INUSE_ATTRIBUTE_ERR === 10);
|
||||
```
|
||||
|
||||
## APIs
|
||||
|
||||
This package exposes two flavors of the `DOMException` interface depending on the imported module.
|
||||
|
||||
### `domexception` module
|
||||
|
||||
This module default-exports the `DOMException` interface constructor.
|
||||
|
||||
### `domexception/webidl2js-wrapper` module
|
||||
|
||||
This module exports the `DOMException` [interface wrapper API](https://github.com/jsdom/webidl2js#for-interfaces) generated by [webidl2js](https://github.com/jsdom/webidl2js).
|
7
node_modules/domexception/index.js
generated
vendored
Normal file
7
node_modules/domexception/index.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
const DOMException = require("./webidl2js-wrapper.js");
|
||||
|
||||
const sharedGlobalObject = { Array, Error, Object, Promise, String, TypeError };
|
||||
DOMException.install(sharedGlobalObject, ["Window"]);
|
||||
|
||||
module.exports = sharedGlobalObject.DOMException;
|
22
node_modules/domexception/lib/DOMException-impl.js
generated
vendored
Normal file
22
node_modules/domexception/lib/DOMException-impl.js
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
"use strict";
|
||||
const legacyErrorCodes = require("./legacy-error-codes.json");
|
||||
const idlUtils = require("./utils.js");
|
||||
|
||||
exports.implementation = class DOMExceptionImpl {
|
||||
constructor(globalObject, [message, name]) {
|
||||
this.name = name;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
get code() {
|
||||
return legacyErrorCodes[this.name] || 0;
|
||||
}
|
||||
};
|
||||
|
||||
// A proprietary V8 extension that causes the stack property to appear.
|
||||
exports.init = impl => {
|
||||
if (Error.captureStackTrace) {
|
||||
const wrapper = idlUtils.wrapperForImpl(impl);
|
||||
Error.captureStackTrace(wrapper, wrapper.constructor);
|
||||
}
|
||||
};
|
222
node_modules/domexception/lib/DOMException.js
generated
vendored
Normal file
222
node_modules/domexception/lib/DOMException.js
generated
vendored
Normal file
@@ -0,0 +1,222 @@
|
||||
"use strict";
|
||||
|
||||
const conversions = require("webidl-conversions");
|
||||
const utils = require("./utils.js");
|
||||
|
||||
const implSymbol = utils.implSymbol;
|
||||
const ctorRegistrySymbol = utils.ctorRegistrySymbol;
|
||||
|
||||
const interfaceName = "DOMException";
|
||||
|
||||
exports.is = value => {
|
||||
return utils.isObject(value) && utils.hasOwn(value, implSymbol) && value[implSymbol] instanceof Impl.implementation;
|
||||
};
|
||||
exports.isImpl = value => {
|
||||
return utils.isObject(value) && value instanceof Impl.implementation;
|
||||
};
|
||||
exports.convert = (globalObject, value, { context = "The provided value" } = {}) => {
|
||||
if (exports.is(value)) {
|
||||
return utils.implForWrapper(value);
|
||||
}
|
||||
throw new globalObject.TypeError(`${context} is not of type 'DOMException'.`);
|
||||
};
|
||||
|
||||
function makeWrapper(globalObject, newTarget) {
|
||||
let proto;
|
||||
if (newTarget !== undefined) {
|
||||
proto = newTarget.prototype;
|
||||
}
|
||||
|
||||
if (!utils.isObject(proto)) {
|
||||
proto = globalObject[ctorRegistrySymbol]["DOMException"].prototype;
|
||||
}
|
||||
|
||||
return Object.create(proto);
|
||||
}
|
||||
|
||||
exports.create = (globalObject, constructorArgs, privateData) => {
|
||||
const wrapper = makeWrapper(globalObject);
|
||||
return exports.setup(wrapper, globalObject, constructorArgs, privateData);
|
||||
};
|
||||
|
||||
exports.createImpl = (globalObject, constructorArgs, privateData) => {
|
||||
const wrapper = exports.create(globalObject, constructorArgs, privateData);
|
||||
return utils.implForWrapper(wrapper);
|
||||
};
|
||||
|
||||
exports._internalSetup = (wrapper, globalObject) => {};
|
||||
|
||||
exports.setup = (wrapper, globalObject, constructorArgs = [], privateData = {}) => {
|
||||
privateData.wrapper = wrapper;
|
||||
|
||||
exports._internalSetup(wrapper, globalObject);
|
||||
Object.defineProperty(wrapper, implSymbol, {
|
||||
value: new Impl.implementation(globalObject, constructorArgs, privateData),
|
||||
configurable: true
|
||||
});
|
||||
|
||||
wrapper[implSymbol][utils.wrapperSymbol] = wrapper;
|
||||
if (Impl.init) {
|
||||
Impl.init(wrapper[implSymbol]);
|
||||
}
|
||||
return wrapper;
|
||||
};
|
||||
|
||||
exports.new = (globalObject, newTarget) => {
|
||||
const wrapper = makeWrapper(globalObject, newTarget);
|
||||
|
||||
exports._internalSetup(wrapper, globalObject);
|
||||
Object.defineProperty(wrapper, implSymbol, {
|
||||
value: Object.create(Impl.implementation.prototype),
|
||||
configurable: true
|
||||
});
|
||||
|
||||
wrapper[implSymbol][utils.wrapperSymbol] = wrapper;
|
||||
if (Impl.init) {
|
||||
Impl.init(wrapper[implSymbol]);
|
||||
}
|
||||
return wrapper[implSymbol];
|
||||
};
|
||||
|
||||
const exposed = new Set(["Window", "Worker"]);
|
||||
|
||||
exports.install = (globalObject, globalNames) => {
|
||||
if (!globalNames.some(globalName => exposed.has(globalName))) {
|
||||
return;
|
||||
}
|
||||
|
||||
const ctorRegistry = utils.initCtorRegistry(globalObject);
|
||||
class DOMException {
|
||||
constructor() {
|
||||
const args = [];
|
||||
{
|
||||
let curArg = arguments[0];
|
||||
if (curArg !== undefined) {
|
||||
curArg = conversions["DOMString"](curArg, {
|
||||
context: "Failed to construct 'DOMException': parameter 1",
|
||||
globals: globalObject
|
||||
});
|
||||
} else {
|
||||
curArg = "";
|
||||
}
|
||||
args.push(curArg);
|
||||
}
|
||||
{
|
||||
let curArg = arguments[1];
|
||||
if (curArg !== undefined) {
|
||||
curArg = conversions["DOMString"](curArg, {
|
||||
context: "Failed to construct 'DOMException': parameter 2",
|
||||
globals: globalObject
|
||||
});
|
||||
} else {
|
||||
curArg = "Error";
|
||||
}
|
||||
args.push(curArg);
|
||||
}
|
||||
return exports.setup(Object.create(new.target.prototype), globalObject, args);
|
||||
}
|
||||
|
||||
get name() {
|
||||
const esValue = this !== null && this !== undefined ? this : globalObject;
|
||||
|
||||
if (!exports.is(esValue)) {
|
||||
throw new globalObject.TypeError(
|
||||
"'get name' called on an object that is not a valid instance of DOMException."
|
||||
);
|
||||
}
|
||||
|
||||
return esValue[implSymbol]["name"];
|
||||
}
|
||||
|
||||
get message() {
|
||||
const esValue = this !== null && this !== undefined ? this : globalObject;
|
||||
|
||||
if (!exports.is(esValue)) {
|
||||
throw new globalObject.TypeError(
|
||||
"'get message' called on an object that is not a valid instance of DOMException."
|
||||
);
|
||||
}
|
||||
|
||||
return esValue[implSymbol]["message"];
|
||||
}
|
||||
|
||||
get code() {
|
||||
const esValue = this !== null && this !== undefined ? this : globalObject;
|
||||
|
||||
if (!exports.is(esValue)) {
|
||||
throw new globalObject.TypeError(
|
||||
"'get code' called on an object that is not a valid instance of DOMException."
|
||||
);
|
||||
}
|
||||
|
||||
return esValue[implSymbol]["code"];
|
||||
}
|
||||
}
|
||||
Object.defineProperties(DOMException.prototype, {
|
||||
name: { enumerable: true },
|
||||
message: { enumerable: true },
|
||||
code: { enumerable: true },
|
||||
[Symbol.toStringTag]: { value: "DOMException", configurable: true },
|
||||
INDEX_SIZE_ERR: { value: 1, enumerable: true },
|
||||
DOMSTRING_SIZE_ERR: { value: 2, enumerable: true },
|
||||
HIERARCHY_REQUEST_ERR: { value: 3, enumerable: true },
|
||||
WRONG_DOCUMENT_ERR: { value: 4, enumerable: true },
|
||||
INVALID_CHARACTER_ERR: { value: 5, enumerable: true },
|
||||
NO_DATA_ALLOWED_ERR: { value: 6, enumerable: true },
|
||||
NO_MODIFICATION_ALLOWED_ERR: { value: 7, enumerable: true },
|
||||
NOT_FOUND_ERR: { value: 8, enumerable: true },
|
||||
NOT_SUPPORTED_ERR: { value: 9, enumerable: true },
|
||||
INUSE_ATTRIBUTE_ERR: { value: 10, enumerable: true },
|
||||
INVALID_STATE_ERR: { value: 11, enumerable: true },
|
||||
SYNTAX_ERR: { value: 12, enumerable: true },
|
||||
INVALID_MODIFICATION_ERR: { value: 13, enumerable: true },
|
||||
NAMESPACE_ERR: { value: 14, enumerable: true },
|
||||
INVALID_ACCESS_ERR: { value: 15, enumerable: true },
|
||||
VALIDATION_ERR: { value: 16, enumerable: true },
|
||||
TYPE_MISMATCH_ERR: { value: 17, enumerable: true },
|
||||
SECURITY_ERR: { value: 18, enumerable: true },
|
||||
NETWORK_ERR: { value: 19, enumerable: true },
|
||||
ABORT_ERR: { value: 20, enumerable: true },
|
||||
URL_MISMATCH_ERR: { value: 21, enumerable: true },
|
||||
QUOTA_EXCEEDED_ERR: { value: 22, enumerable: true },
|
||||
TIMEOUT_ERR: { value: 23, enumerable: true },
|
||||
INVALID_NODE_TYPE_ERR: { value: 24, enumerable: true },
|
||||
DATA_CLONE_ERR: { value: 25, enumerable: true }
|
||||
});
|
||||
Object.defineProperties(DOMException, {
|
||||
INDEX_SIZE_ERR: { value: 1, enumerable: true },
|
||||
DOMSTRING_SIZE_ERR: { value: 2, enumerable: true },
|
||||
HIERARCHY_REQUEST_ERR: { value: 3, enumerable: true },
|
||||
WRONG_DOCUMENT_ERR: { value: 4, enumerable: true },
|
||||
INVALID_CHARACTER_ERR: { value: 5, enumerable: true },
|
||||
NO_DATA_ALLOWED_ERR: { value: 6, enumerable: true },
|
||||
NO_MODIFICATION_ALLOWED_ERR: { value: 7, enumerable: true },
|
||||
NOT_FOUND_ERR: { value: 8, enumerable: true },
|
||||
NOT_SUPPORTED_ERR: { value: 9, enumerable: true },
|
||||
INUSE_ATTRIBUTE_ERR: { value: 10, enumerable: true },
|
||||
INVALID_STATE_ERR: { value: 11, enumerable: true },
|
||||
SYNTAX_ERR: { value: 12, enumerable: true },
|
||||
INVALID_MODIFICATION_ERR: { value: 13, enumerable: true },
|
||||
NAMESPACE_ERR: { value: 14, enumerable: true },
|
||||
INVALID_ACCESS_ERR: { value: 15, enumerable: true },
|
||||
VALIDATION_ERR: { value: 16, enumerable: true },
|
||||
TYPE_MISMATCH_ERR: { value: 17, enumerable: true },
|
||||
SECURITY_ERR: { value: 18, enumerable: true },
|
||||
NETWORK_ERR: { value: 19, enumerable: true },
|
||||
ABORT_ERR: { value: 20, enumerable: true },
|
||||
URL_MISMATCH_ERR: { value: 21, enumerable: true },
|
||||
QUOTA_EXCEEDED_ERR: { value: 22, enumerable: true },
|
||||
TIMEOUT_ERR: { value: 23, enumerable: true },
|
||||
INVALID_NODE_TYPE_ERR: { value: 24, enumerable: true },
|
||||
DATA_CLONE_ERR: { value: 25, enumerable: true }
|
||||
});
|
||||
ctorRegistry[interfaceName] = DOMException;
|
||||
|
||||
Object.defineProperty(globalObject, interfaceName, {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: DOMException
|
||||
});
|
||||
};
|
||||
|
||||
const Impl = require("./DOMException-impl.js");
|
42
node_modules/domexception/lib/Function.js
generated
vendored
Normal file
42
node_modules/domexception/lib/Function.js
generated
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
"use strict";
|
||||
|
||||
const conversions = require("webidl-conversions");
|
||||
const utils = require("./utils.js");
|
||||
|
||||
exports.convert = (globalObject, value, { context = "The provided value" } = {}) => {
|
||||
if (typeof value !== "function") {
|
||||
throw new globalObject.TypeError(context + " is not a function");
|
||||
}
|
||||
|
||||
function invokeTheCallbackFunction(...args) {
|
||||
const thisArg = utils.tryWrapperForImpl(this);
|
||||
let callResult;
|
||||
|
||||
for (let i = 0; i < args.length; i++) {
|
||||
args[i] = utils.tryWrapperForImpl(args[i]);
|
||||
}
|
||||
|
||||
callResult = Reflect.apply(value, thisArg, args);
|
||||
|
||||
callResult = conversions["any"](callResult, { context: context, globals: globalObject });
|
||||
|
||||
return callResult;
|
||||
}
|
||||
|
||||
invokeTheCallbackFunction.construct = (...args) => {
|
||||
for (let i = 0; i < args.length; i++) {
|
||||
args[i] = utils.tryWrapperForImpl(args[i]);
|
||||
}
|
||||
|
||||
let callResult = Reflect.construct(value, args);
|
||||
|
||||
callResult = conversions["any"](callResult, { context: context, globals: globalObject });
|
||||
|
||||
return callResult;
|
||||
};
|
||||
|
||||
invokeTheCallbackFunction[utils.wrapperSymbol] = value;
|
||||
invokeTheCallbackFunction.objectReference = value;
|
||||
|
||||
return invokeTheCallbackFunction;
|
||||
};
|
26
node_modules/domexception/lib/VoidFunction.js
generated
vendored
Normal file
26
node_modules/domexception/lib/VoidFunction.js
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
"use strict";
|
||||
|
||||
const conversions = require("webidl-conversions");
|
||||
const utils = require("./utils.js");
|
||||
|
||||
exports.convert = (globalObject, value, { context = "The provided value" } = {}) => {
|
||||
if (typeof value !== "function") {
|
||||
throw new globalObject.TypeError(context + " is not a function");
|
||||
}
|
||||
|
||||
function invokeTheCallbackFunction() {
|
||||
const thisArg = utils.tryWrapperForImpl(this);
|
||||
let callResult;
|
||||
|
||||
callResult = Reflect.apply(value, thisArg, []);
|
||||
}
|
||||
|
||||
invokeTheCallbackFunction.construct = () => {
|
||||
let callResult = Reflect.construct(value, []);
|
||||
};
|
||||
|
||||
invokeTheCallbackFunction[utils.wrapperSymbol] = value;
|
||||
invokeTheCallbackFunction.objectReference = value;
|
||||
|
||||
return invokeTheCallbackFunction;
|
||||
};
|
24
node_modules/domexception/lib/legacy-error-codes.json
generated
vendored
Normal file
24
node_modules/domexception/lib/legacy-error-codes.json
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"IndexSizeError": 1,
|
||||
"HierarchyRequestError": 3,
|
||||
"WrongDocumentError": 4,
|
||||
"InvalidCharacterError": 5,
|
||||
"NoModificationAllowedError": 7,
|
||||
"NotFoundError": 8,
|
||||
"NotSupportedError": 9,
|
||||
"InUseAttributeError": 10,
|
||||
"InvalidStateError": 11,
|
||||
"SyntaxError": 12,
|
||||
"InvalidModificationError": 13,
|
||||
"NamespaceError": 14,
|
||||
"InvalidAccessError": 15,
|
||||
"TypeMismatchError": 17,
|
||||
"SecurityError": 18,
|
||||
"NetworkError": 19,
|
||||
"AbortError": 20,
|
||||
"URLMismatchError": 21,
|
||||
"QuotaExceededError": 22,
|
||||
"TimeoutError": 23,
|
||||
"InvalidNodeTypeError": 24,
|
||||
"DataCloneError": 25
|
||||
}
|
190
node_modules/domexception/lib/utils.js
generated
vendored
Normal file
190
node_modules/domexception/lib/utils.js
generated
vendored
Normal file
@@ -0,0 +1,190 @@
|
||||
"use strict";
|
||||
|
||||
// Returns "Type(value) is Object" in ES terminology.
|
||||
function isObject(value) {
|
||||
return (typeof value === "object" && value !== null) || typeof value === "function";
|
||||
}
|
||||
|
||||
const hasOwn = Function.prototype.call.bind(Object.prototype.hasOwnProperty);
|
||||
|
||||
// Like `Object.assign`, but using `[[GetOwnProperty]]` and `[[DefineOwnProperty]]`
|
||||
// instead of `[[Get]]` and `[[Set]]` and only allowing objects
|
||||
function define(target, source) {
|
||||
for (const key of Reflect.ownKeys(source)) {
|
||||
const descriptor = Reflect.getOwnPropertyDescriptor(source, key);
|
||||
if (descriptor && !Reflect.defineProperty(target, key, descriptor)) {
|
||||
throw new TypeError(`Cannot redefine property: ${String(key)}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function newObjectInRealm(globalObject, object) {
|
||||
const ctorRegistry = initCtorRegistry(globalObject);
|
||||
return Object.defineProperties(
|
||||
Object.create(ctorRegistry["%Object.prototype%"]),
|
||||
Object.getOwnPropertyDescriptors(object)
|
||||
);
|
||||
}
|
||||
|
||||
const wrapperSymbol = Symbol("wrapper");
|
||||
const implSymbol = Symbol("impl");
|
||||
const sameObjectCaches = Symbol("SameObject caches");
|
||||
const ctorRegistrySymbol = Symbol.for("[webidl2js] constructor registry");
|
||||
|
||||
const AsyncIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf(async function* () {}).prototype);
|
||||
|
||||
function initCtorRegistry(globalObject) {
|
||||
if (hasOwn(globalObject, ctorRegistrySymbol)) {
|
||||
return globalObject[ctorRegistrySymbol];
|
||||
}
|
||||
|
||||
const ctorRegistry = Object.create(null);
|
||||
|
||||
// In addition to registering all the WebIDL2JS-generated types in the constructor registry,
|
||||
// we also register a few intrinsics that we make use of in generated code, since they are not
|
||||
// easy to grab from the globalObject variable.
|
||||
ctorRegistry["%Object.prototype%"] = globalObject.Object.prototype;
|
||||
ctorRegistry["%IteratorPrototype%"] = Object.getPrototypeOf(
|
||||
Object.getPrototypeOf(new globalObject.Array()[Symbol.iterator]())
|
||||
);
|
||||
|
||||
try {
|
||||
ctorRegistry["%AsyncIteratorPrototype%"] = Object.getPrototypeOf(
|
||||
Object.getPrototypeOf(
|
||||
globalObject.eval("(async function* () {})").prototype
|
||||
)
|
||||
);
|
||||
} catch {
|
||||
ctorRegistry["%AsyncIteratorPrototype%"] = AsyncIteratorPrototype;
|
||||
}
|
||||
|
||||
globalObject[ctorRegistrySymbol] = ctorRegistry;
|
||||
return ctorRegistry;
|
||||
}
|
||||
|
||||
function getSameObject(wrapper, prop, creator) {
|
||||
if (!wrapper[sameObjectCaches]) {
|
||||
wrapper[sameObjectCaches] = Object.create(null);
|
||||
}
|
||||
|
||||
if (prop in wrapper[sameObjectCaches]) {
|
||||
return wrapper[sameObjectCaches][prop];
|
||||
}
|
||||
|
||||
wrapper[sameObjectCaches][prop] = creator();
|
||||
return wrapper[sameObjectCaches][prop];
|
||||
}
|
||||
|
||||
function wrapperForImpl(impl) {
|
||||
return impl ? impl[wrapperSymbol] : null;
|
||||
}
|
||||
|
||||
function implForWrapper(wrapper) {
|
||||
return wrapper ? wrapper[implSymbol] : null;
|
||||
}
|
||||
|
||||
function tryWrapperForImpl(impl) {
|
||||
const wrapper = wrapperForImpl(impl);
|
||||
return wrapper ? wrapper : impl;
|
||||
}
|
||||
|
||||
function tryImplForWrapper(wrapper) {
|
||||
const impl = implForWrapper(wrapper);
|
||||
return impl ? impl : wrapper;
|
||||
}
|
||||
|
||||
const iterInternalSymbol = Symbol("internal");
|
||||
|
||||
function isArrayIndexPropName(P) {
|
||||
if (typeof P !== "string") {
|
||||
return false;
|
||||
}
|
||||
const i = P >>> 0;
|
||||
if (i === 2 ** 32 - 1) {
|
||||
return false;
|
||||
}
|
||||
const s = `${i}`;
|
||||
if (P !== s) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
const byteLengthGetter =
|
||||
Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "byteLength").get;
|
||||
function isArrayBuffer(value) {
|
||||
try {
|
||||
byteLengthGetter.call(value);
|
||||
return true;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function iteratorResult([key, value], kind) {
|
||||
let result;
|
||||
switch (kind) {
|
||||
case "key":
|
||||
result = key;
|
||||
break;
|
||||
case "value":
|
||||
result = value;
|
||||
break;
|
||||
case "key+value":
|
||||
result = [key, value];
|
||||
break;
|
||||
}
|
||||
return { value: result, done: false };
|
||||
}
|
||||
|
||||
const supportsPropertyIndex = Symbol("supports property index");
|
||||
const supportedPropertyIndices = Symbol("supported property indices");
|
||||
const supportsPropertyName = Symbol("supports property name");
|
||||
const supportedPropertyNames = Symbol("supported property names");
|
||||
const indexedGet = Symbol("indexed property get");
|
||||
const indexedSetNew = Symbol("indexed property set new");
|
||||
const indexedSetExisting = Symbol("indexed property set existing");
|
||||
const namedGet = Symbol("named property get");
|
||||
const namedSetNew = Symbol("named property set new");
|
||||
const namedSetExisting = Symbol("named property set existing");
|
||||
const namedDelete = Symbol("named property delete");
|
||||
|
||||
const asyncIteratorNext = Symbol("async iterator get the next iteration result");
|
||||
const asyncIteratorReturn = Symbol("async iterator return steps");
|
||||
const asyncIteratorInit = Symbol("async iterator initialization steps");
|
||||
const asyncIteratorEOI = Symbol("async iterator end of iteration");
|
||||
|
||||
module.exports = exports = {
|
||||
isObject,
|
||||
hasOwn,
|
||||
define,
|
||||
newObjectInRealm,
|
||||
wrapperSymbol,
|
||||
implSymbol,
|
||||
getSameObject,
|
||||
ctorRegistrySymbol,
|
||||
initCtorRegistry,
|
||||
wrapperForImpl,
|
||||
implForWrapper,
|
||||
tryWrapperForImpl,
|
||||
tryImplForWrapper,
|
||||
iterInternalSymbol,
|
||||
isArrayBuffer,
|
||||
isArrayIndexPropName,
|
||||
supportsPropertyIndex,
|
||||
supportedPropertyIndices,
|
||||
supportsPropertyName,
|
||||
supportedPropertyNames,
|
||||
indexedGet,
|
||||
indexedSetNew,
|
||||
indexedSetExisting,
|
||||
namedGet,
|
||||
namedSetNew,
|
||||
namedSetExisting,
|
||||
namedDelete,
|
||||
asyncIteratorNext,
|
||||
asyncIteratorReturn,
|
||||
asyncIteratorInit,
|
||||
asyncIteratorEOI,
|
||||
iteratorResult
|
||||
};
|
42
node_modules/domexception/package.json
generated
vendored
Normal file
42
node_modules/domexception/package.json
generated
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"name": "domexception",
|
||||
"description": "An implementation of the DOMException class from browsers",
|
||||
"keywords": [
|
||||
"dom",
|
||||
"webidl",
|
||||
"web idl",
|
||||
"domexception",
|
||||
"error",
|
||||
"exception"
|
||||
],
|
||||
"version": "4.0.0",
|
||||
"author": "Domenic Denicola <d@domenic.me> (https://domenic.me/)",
|
||||
"license": "MIT",
|
||||
"repository": "jsdom/domexception",
|
||||
"main": "index.js",
|
||||
"files": [
|
||||
"index.js",
|
||||
"webidl2js-wrapper.js",
|
||||
"lib/"
|
||||
],
|
||||
"scripts": {
|
||||
"prepare": "node scripts/generate.js",
|
||||
"init-wpt": "node scripts/get-latest-platform-tests.js",
|
||||
"pretest": "npm run prepare && npm run init-wpt",
|
||||
"test": "mocha",
|
||||
"lint": "eslint ."
|
||||
},
|
||||
"dependencies": {
|
||||
"webidl-conversions": "^7.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@domenic/eslint-config": "^1.4.0",
|
||||
"eslint": "^7.32.0",
|
||||
"minipass-fetch": "^1.4.1",
|
||||
"mocha": "^9.1.2",
|
||||
"webidl2js": "^17.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
}
|
15
node_modules/domexception/webidl2js-wrapper.js
generated
vendored
Normal file
15
node_modules/domexception/webidl2js-wrapper.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
const DOMException = require("./lib/DOMException.js");
|
||||
|
||||
// Special install function to make the DOMException inherit from Error.
|
||||
// https://heycam.github.io/webidl/#es-DOMException-specialness
|
||||
function installOverride(globalObject, globalNames) {
|
||||
if (typeof globalObject.Error !== "function") {
|
||||
throw new Error("Internal error: Error constructor is not present on the given global object.");
|
||||
}
|
||||
|
||||
DOMException.install(globalObject, globalNames);
|
||||
Object.setPrototypeOf(globalObject.DOMException.prototype, globalObject.Error.prototype);
|
||||
}
|
||||
|
||||
module.exports = { ...DOMException, install: installOverride };
|
Reference in New Issue
Block a user