mirror of
https://github.com/imranismail/setup-kustomize.git
synced 2026-06-30 09:11:16 +00:00
Update metadata
This commit is contained in:
46
node_modules/es-abstract/.eslintrc
generated
vendored
46
node_modules/es-abstract/.eslintrc
generated
vendored
@@ -8,13 +8,13 @@
|
||||
},
|
||||
|
||||
"rules": {
|
||||
"arrow-parens": [2, "always"],
|
||||
"array-bracket-newline": 0,
|
||||
"array-element-newline": 0,
|
||||
"complexity": 0,
|
||||
"eqeqeq": [2, "allow-null"],
|
||||
"func-name-matching": 0,
|
||||
"id-length": [2, { "min": 1, "max": 30 }],
|
||||
"max-lines": [2, 800],
|
||||
"max-params": [2, 4],
|
||||
"max-statements": [2, 24],
|
||||
"max-statements-per-line": [2, { "max": 2 }],
|
||||
@@ -24,5 +24,47 @@
|
||||
"no-extra-parens": 1,
|
||||
"operator-linebreak": [2, "before"],
|
||||
"sort-keys": 0,
|
||||
}
|
||||
},
|
||||
|
||||
"overrides": [
|
||||
{
|
||||
"files": "./es5.js",
|
||||
"rules": {
|
||||
"max-lines": [2, 600],
|
||||
"max-statements": [2, 30],
|
||||
},
|
||||
},
|
||||
{
|
||||
"files": "./es2015.js",
|
||||
"rules": {
|
||||
"max-lines": [2, 1500],
|
||||
},
|
||||
},
|
||||
{
|
||||
"files": "operations/*",
|
||||
"rules": {
|
||||
"max-lines": 0,
|
||||
},
|
||||
},
|
||||
{
|
||||
"files": "operations/*.js",
|
||||
"parserOptions": {
|
||||
"ecmaVersion": "2018",
|
||||
},
|
||||
"rules": {
|
||||
//camelcase
|
||||
//array-callback-return
|
||||
//consistent-return
|
||||
"no-console": 0,
|
||||
"no-multi-str": 0,
|
||||
},
|
||||
},
|
||||
{
|
||||
"files": "operations/getOps.js",
|
||||
"rules": {
|
||||
"no-console": 0,
|
||||
"no-process-exit": 0,
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
12
node_modules/es-abstract/.github/FUNDING.yml
generated
vendored
Normal file
12
node_modules/es-abstract/.github/FUNDING.yml
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
github: [ljharb]
|
||||
patreon: # Replace with a single Patreon username
|
||||
open_collective: # Replace with a single Open Collective username
|
||||
ko_fi: # Replace with a single Ko-fi username
|
||||
tidelift: npm/es-abstract
|
||||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||
liberapay: # Replace with a single Liberapay username
|
||||
issuehunt: # Replace with a single IssueHunt username
|
||||
otechie: # Replace with a single Otechie username
|
||||
custom: # Replace with a single custom sponsorship URL
|
||||
4
node_modules/es-abstract/.nycrc
generated
vendored
4
node_modules/es-abstract/.nycrc
generated
vendored
@@ -2,8 +2,8 @@
|
||||
"all": true,
|
||||
"check-coverage": true,
|
||||
"reporter": ["text-summary", "text", "html", "json"],
|
||||
"lines": 86.99,
|
||||
"statements": 86.86,
|
||||
"lines": 86,
|
||||
"statements": 85.93,
|
||||
"functions": 82.43,
|
||||
"branches": 76.06,
|
||||
"exclude": [
|
||||
|
||||
58
node_modules/es-abstract/.travis.yml
generated
vendored
58
node_modules/es-abstract/.travis.yml
generated
vendored
@@ -2,12 +2,13 @@ language: node_js
|
||||
os:
|
||||
- linux
|
||||
node_js:
|
||||
- "11.6"
|
||||
- "10.15"
|
||||
- "12.12"
|
||||
- "11.15"
|
||||
- "10.16"
|
||||
- "9.11"
|
||||
- "8.15"
|
||||
- "8.16"
|
||||
- "7.10"
|
||||
- "6.16"
|
||||
- "6.17"
|
||||
- "5.12"
|
||||
- "4.9"
|
||||
- "iojs-v3.3"
|
||||
@@ -52,6 +53,48 @@ matrix:
|
||||
env: COVERAGE=true
|
||||
- node_js: "8"
|
||||
env: COVERAGE=true
|
||||
- node_js: "12.11"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.10"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.9"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.8"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.7"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.6"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.5"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.4"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.3"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.2"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.1"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "12.0"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.14"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.13"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.12"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.11"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.10"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.9"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.8"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.7"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.6"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.5"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.4"
|
||||
@@ -64,6 +107,8 @@ matrix:
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "11.0"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "10.15"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "10.14"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "10.13"
|
||||
@@ -116,6 +161,8 @@ matrix:
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "9.0"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "8.15"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "8.14"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "8.13"
|
||||
@@ -166,6 +213,8 @@ matrix:
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "7.0"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "6.16"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "6.15"
|
||||
env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "6.14"
|
||||
@@ -281,3 +330,4 @@ matrix:
|
||||
allow_failures:
|
||||
- os: osx
|
||||
- env: TEST=true ALLOW_FAILURE=true
|
||||
- node_js: "0.6"
|
||||
|
||||
74
node_modules/es-abstract/CHANGELOG.md
generated
vendored
74
node_modules/es-abstract/CHANGELOG.md
generated
vendored
@@ -1,3 +1,77 @@
|
||||
1.16.0 / 2019-10-18
|
||||
=================
|
||||
* [New] `ES2015+`: add `SetFunctionName`
|
||||
* [New] `ES2015+`: add `GetPrototypeFromConstructor`, with caveats
|
||||
* [New] `ES2015+`: add `CreateListFromArrayLike`
|
||||
* [New] `ES2016+`: add `OrdinarySetPrototypeOf`
|
||||
* [New] `ES2016+`: add `OrdinaryGetPrototypeOf`
|
||||
* [New] add `getSymbolDescription` and `getInferredName` helpers
|
||||
* [Fix] `GetIterator`: add fallback for pre-Symbol environments, tests
|
||||
* [Dev Deps] update `object.fromentries`
|
||||
* [Tests] add `node` `v12.2`
|
||||
|
||||
|
||||
1.15.0 / 2019-10-02
|
||||
=================
|
||||
* [New] `ES2018`+: add `DateString`, `TimeString`
|
||||
* [New] `ES2015`+: add `ToDateString`
|
||||
* [New] `ES5`+: add `msFromTime`, `SecFromTime`, `MinFromTime`, `HourFromTime`, `TimeWithinDay`, `Day`, `DayFromYear`, `TimeFromYear`, `YearFromTime`, `WeekDay`, `DaysInYear`, `InLeapYear`, `DayWithinYear`, `MonthFromTime`, `DateFromTime`, `MakeDay`, `MakeDate`, `MakeTime`, `TimeClip`, `modulo`
|
||||
* [New] add `regexTester` helper
|
||||
* [New] add `callBound` helper
|
||||
* [New] add ES2020’s intrinsic dot notation
|
||||
* [New] add `isPrefixOf` helper
|
||||
* [New] add `maxSafeInteger` helper
|
||||
* [Deps] update `string.prototype.trimleft`, `string.prototype.trimright`
|
||||
* [Dev Deps] update `eslint`
|
||||
* [Tests] on `node` `v12.11`
|
||||
* [meta] npmignore operations scripts; add "deltas"
|
||||
|
||||
1.14.2 / 2019-09-08
|
||||
=================
|
||||
* [Fix] `ES2016`: `IterableToArrayLike`: add proper fallback for strings, pre-Symbols
|
||||
* [Tests] on `node` `v12.10`
|
||||
|
||||
1.14.1 / 2019-09-03
|
||||
=================
|
||||
* [meta] republish with some extra files removed
|
||||
|
||||
1.14.0 / 2019-09-02
|
||||
=================
|
||||
* [New] add ES2019
|
||||
* [New] `ES2017+`: add `IterableToList`
|
||||
* [New] `ES2016`: add `IterableToArrayLike`
|
||||
* [New] `ES2015+`: add `ArrayCreate`, `ArraySetLength`, `OrdinaryDefineOwnProperty`, `OrdinaryGetOwnProperty`, `OrdinaryHasProperty`, `CreateHTML`, `GetOwnPropertyKeys`, `InstanceofOperator`, `SymbolDescriptiveString`, `GetSubstitution`, `ValidateAndApplyPropertyDescriptor`, `IsPromise`, `OrdinaryHasInstance`, `TestIntegrityLevel`, `SetIntegrityLevel`
|
||||
* [New] add `callBind` helper, and use it
|
||||
* [New] add helpers: `isPropertyDescriptor`, `every`
|
||||
* [New] ES5+: add `Abstract Relational Comparison`
|
||||
* [New] ES5+: add `Abstract Equality Comparison`, `Strict Equality Comparison`
|
||||
* [Fix] `ES2015+`: `GetIterator`: only require native Symbols when `method` is omitted
|
||||
* [Fix] `ES2015`: `Call`: error message now properly displays Symbols using `object-inspect`
|
||||
* [Fix] `ES2015+`: `ValidateAndApplyPropertyDescriptor`: use ES2017 logic to bypass spec bugs
|
||||
* [Fix] `ES2015+`: `CreateDataProperty`, `DefinePropertyOrThrow`, `ValidateAndApplyPropertyDescriptor`: add fallbacks for ES3
|
||||
* [Fix] `ES2015+`: `FromPropertyDescriptor`: no longer requires a fully complete Property Descriptor
|
||||
* [Fix] `ES5`: `IsPropertyDescriptor`: call into `IsDataDescriptor` and `IsAccessorDescriptor`
|
||||
* [Refactor] use `has-symbols` for Symbol detection
|
||||
* [Fix] `helpers/assertRecord`: remove `console.log`
|
||||
* [Deps] update `object-keys`
|
||||
* [readme] add security note
|
||||
* [meta] change http URLs to https
|
||||
* [meta] linter cleanup
|
||||
* [meta] fix getOps script
|
||||
* [meta] add FUNDING.yml
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`, `semver`, `replace`, `cheerio`, `tape`
|
||||
* [Tests] up to `node` `v12.9`, `v11.15`, `v10.16`, `v8.16`, `v6.17`
|
||||
* [Tests] temporarily allow node 0.6 to fail; segfaulting in travis
|
||||
* [Tests] use the values helper more in es5 tests
|
||||
* [Tests] fix linting to apply to all files
|
||||
* [Tests] run `npx aud` only on prod deps
|
||||
* [Tests] add v.descriptors helpers
|
||||
* [Tests] use `npx aud` instead of `npm audit` with hoops
|
||||
* [Tests] use `eclint` instead of `editorconfig-tools`
|
||||
* [Tests] some intrinsic cleanup
|
||||
* [Tests] migrate es5 tests to use values helper
|
||||
* [Tests] add some missing ES2015 ops
|
||||
|
||||
1.13.0 / 2019-01-02
|
||||
=================
|
||||
* [New] add ES2018
|
||||
|
||||
74
node_modules/es-abstract/GetIntrinsic.js
generated
vendored
74
node_modules/es-abstract/GetIntrinsic.js
generated
vendored
@@ -1,39 +1,19 @@
|
||||
'use strict';
|
||||
|
||||
/* globals
|
||||
Set,
|
||||
Map,
|
||||
WeakSet,
|
||||
WeakMap,
|
||||
|
||||
Promise,
|
||||
|
||||
Symbol,
|
||||
Proxy,
|
||||
|
||||
Atomics,
|
||||
SharedArrayBuffer,
|
||||
|
||||
ArrayBuffer,
|
||||
DataView,
|
||||
Uint8Array,
|
||||
Float32Array,
|
||||
Float64Array,
|
||||
Int8Array,
|
||||
Int16Array,
|
||||
Int32Array,
|
||||
Uint8ClampedArray,
|
||||
Uint16Array,
|
||||
Uint32Array,
|
||||
*/
|
||||
|
||||
var undefined; // eslint-disable-line no-shadow-restricted-names
|
||||
|
||||
var $TypeError = TypeError;
|
||||
|
||||
var ThrowTypeError = Object.getOwnPropertyDescriptor
|
||||
? (function () { return Object.getOwnPropertyDescriptor(arguments, 'callee').get; }())
|
||||
: function () { throw new TypeError(); };
|
||||
: function () { throw new $TypeError(); };
|
||||
|
||||
var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
|
||||
var hasSymbols = require('has-symbols')();
|
||||
|
||||
var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto
|
||||
|
||||
@@ -141,8 +121,8 @@ var INTRINSICS = {
|
||||
'$ %ThrowTypeError%': ThrowTypeError,
|
||||
'$ %TypedArray%': TypedArray,
|
||||
'$ %TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,
|
||||
'$ %TypeError%': TypeError,
|
||||
'$ %TypeErrorPrototype%': TypeError.prototype,
|
||||
'$ %TypeError%': $TypeError,
|
||||
'$ %TypeErrorPrototype%': $TypeError.prototype,
|
||||
'$ %Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
|
||||
'$ %Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,
|
||||
'$ %Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
|
||||
@@ -159,11 +139,22 @@ var INTRINSICS = {
|
||||
'$ %WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype
|
||||
};
|
||||
|
||||
module.exports = function GetIntrinsic(name, allowMissing) {
|
||||
if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
|
||||
throw new TypeError('"allowMissing" argument must be a boolean');
|
||||
}
|
||||
var bind = require('function-bind');
|
||||
var $replace = bind.call(Function.call, String.prototype.replace);
|
||||
|
||||
/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
|
||||
var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
|
||||
var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
|
||||
var stringToPath = function stringToPath(string) {
|
||||
var result = [];
|
||||
$replace(string, rePropName, function (match, number, quote, subString) {
|
||||
result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);
|
||||
});
|
||||
return result;
|
||||
};
|
||||
/* end adaptation */
|
||||
|
||||
var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
|
||||
var key = '$ ' + name;
|
||||
if (!(key in INTRINSICS)) {
|
||||
throw new SyntaxError('intrinsic ' + name + ' does not exist!');
|
||||
@@ -171,7 +162,28 @@ module.exports = function GetIntrinsic(name, allowMissing) {
|
||||
|
||||
// istanbul ignore if // hopefully this is impossible to test :-)
|
||||
if (typeof INTRINSICS[key] === 'undefined' && !allowMissing) {
|
||||
throw new TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
|
||||
throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
|
||||
}
|
||||
|
||||
return INTRINSICS[key];
|
||||
};
|
||||
|
||||
module.exports = function GetIntrinsic(name, allowMissing) {
|
||||
if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
|
||||
throw new TypeError('"allowMissing" argument must be a boolean');
|
||||
}
|
||||
|
||||
var parts = stringToPath(name);
|
||||
|
||||
if (parts.length === 0) {
|
||||
return getBaseIntrinsic(name, allowMissing);
|
||||
}
|
||||
|
||||
var value = getBaseIntrinsic('%' + parts[0] + '%', allowMissing);
|
||||
for (var i = 1; i < parts.length; i += 1) {
|
||||
if (value != null) {
|
||||
value = value[parts[i]];
|
||||
}
|
||||
}
|
||||
return value;
|
||||
};
|
||||
|
||||
6
node_modules/es-abstract/README.md
generated
vendored
6
node_modules/es-abstract/README.md
generated
vendored
@@ -12,7 +12,7 @@
|
||||
|
||||
ECMAScript spec abstract operations.
|
||||
When different versions of the spec conflict, the default export will be the latest version of the abstract operation.
|
||||
All abstract operations will also be available under an `es5`/`es2015`/`es2016`/`es2017`/`es2018` entry point, and exported property, if you require a specific version.
|
||||
All abstract operations will also be available under an `es5`/`es2015`/`es2016`/`es2017`/`es2018`/`es2019` entry point, and exported property, if you require a specific version.
|
||||
|
||||
## Example
|
||||
|
||||
@@ -27,6 +27,10 @@ assert(!ES.isCallable(/a/g));
|
||||
## Tests
|
||||
Simply clone the repo, `npm install`, and run `npm test`
|
||||
|
||||
## Security
|
||||
|
||||
Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
|
||||
|
||||
[package-url]: https://npmjs.org/package/es-abstract
|
||||
[npm-version-svg]: http://versionbadg.es/ljharb/es-abstract.svg
|
||||
[travis-svg]: https://travis-ci.org/ljharb/es-abstract.svg
|
||||
|
||||
768
node_modules/es-abstract/es2015.js
generated
vendored
768
node_modules/es-abstract/es2015.js
generated
vendored
@@ -3,61 +3,108 @@
|
||||
var has = require('has');
|
||||
var toPrimitive = require('es-to-primitive/es6');
|
||||
var keys = require('object-keys');
|
||||
var inspect = require('object-inspect');
|
||||
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
var $RangeError = GetIntrinsic('%RangeError%');
|
||||
var $SyntaxError = GetIntrinsic('%SyntaxError%');
|
||||
var $Array = GetIntrinsic('%Array%');
|
||||
var $ArrayPrototype = $Array.prototype;
|
||||
var $String = GetIntrinsic('%String%');
|
||||
var $Object = GetIntrinsic('%Object%');
|
||||
var $Number = GetIntrinsic('%Number%');
|
||||
var $Symbol = GetIntrinsic('%Symbol%', true);
|
||||
var $RegExp = GetIntrinsic('%RegExp%');
|
||||
var $Date = GetIntrinsic('%Date%');
|
||||
var $Function = GetIntrinsic('%Function%');
|
||||
var $preventExtensions = $Object.preventExtensions;
|
||||
|
||||
var hasSymbols = !!$Symbol;
|
||||
var hasSymbols = require('has-symbols')();
|
||||
|
||||
var assertRecord = require('./helpers/assertRecord');
|
||||
var $isNaN = require('./helpers/isNaN');
|
||||
var $isFinite = require('./helpers/isFinite');
|
||||
var MAX_SAFE_INTEGER = $Number.MAX_SAFE_INTEGER || Math.pow(2, 53) - 1;
|
||||
var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1;
|
||||
var MAX_SAFE_INTEGER = require('./helpers/maxSafeInteger');
|
||||
|
||||
var assign = require('./helpers/assign');
|
||||
var sign = require('./helpers/sign');
|
||||
var mod = require('./helpers/mod');
|
||||
var isPrimitive = require('./helpers/isPrimitive');
|
||||
var forEach = require('./helpers/forEach');
|
||||
var every = require('./helpers/every');
|
||||
var isSamePropertyDescriptor = require('./helpers/isSamePropertyDescriptor');
|
||||
var isPropertyDescriptor = require('./helpers/isPropertyDescriptor');
|
||||
var parseInteger = parseInt;
|
||||
var bind = require('function-bind');
|
||||
var arraySlice = bind.call(Function.call, $Array.prototype.slice);
|
||||
var strSlice = bind.call(Function.call, $String.prototype.slice);
|
||||
var isBinary = bind.call(Function.call, $RegExp.prototype.test, /^0b[01]+$/i);
|
||||
var isOctal = bind.call(Function.call, $RegExp.prototype.test, /^0o[0-7]+$/i);
|
||||
var regexExec = bind.call(Function.call, $RegExp.prototype.exec);
|
||||
var callBound = require('./helpers/callBound');
|
||||
var regexTester = require('./helpers/regexTester');
|
||||
var getIteratorMethod = require('./helpers/getIteratorMethod');
|
||||
var getSymbolDescription = require('./helpers/getSymbolDescription');
|
||||
|
||||
var $PromiseThen = callBound('Promise.prototype.then', true);
|
||||
var arraySlice = callBound('Array.prototype.slice');
|
||||
var strSlice = callBound('String.prototype.slice');
|
||||
var $indexOf = callBound('Array.prototype.indexOf');
|
||||
var $push = callBound('Array.prototype.push');
|
||||
|
||||
var isBinary = regexTester(/^0b[01]+$/i);
|
||||
var isOctal = regexTester(/^0o[0-7]+$/i);
|
||||
var isDigit = regexTester(/^[0-9]$/);
|
||||
var regexExec = callBound('RegExp.prototype.exec');
|
||||
var nonWS = ['\u0085', '\u200b', '\ufffe'].join('');
|
||||
var nonWSregex = new $RegExp('[' + nonWS + ']', 'g');
|
||||
var hasNonWS = bind.call(Function.call, $RegExp.prototype.test, nonWSregex);
|
||||
var invalidHexLiteral = /^[-+]0x[0-9a-f]+$/i;
|
||||
var isInvalidHexLiteral = bind.call(Function.call, $RegExp.prototype.test, invalidHexLiteral);
|
||||
var $charCodeAt = bind.call(Function.call, $String.prototype.charCodeAt);
|
||||
var hasNonWS = regexTester(nonWSregex);
|
||||
var isInvalidHexLiteral = regexTester(/^[-+]0x[0-9a-f]+$/i);
|
||||
var $charCodeAt = callBound('String.prototype.charCodeAt');
|
||||
var $isEnumerable = callBound('Object.prototype.propertyIsEnumerable');
|
||||
|
||||
var toStr = bind.call(Function.call, Object.prototype.toString);
|
||||
var toStr = callBound('Object.prototype.toString');
|
||||
|
||||
var $NumberValueOf = bind.call(Function.call, GetIntrinsic('%NumberPrototype%').valueOf);
|
||||
var $BooleanValueOf = bind.call(Function.call, GetIntrinsic('%BooleanPrototype%').valueOf);
|
||||
var $StringValueOf = bind.call(Function.call, GetIntrinsic('%StringPrototype%').valueOf);
|
||||
var $DateValueOf = bind.call(Function.call, GetIntrinsic('%DatePrototype%').valueOf);
|
||||
var $NumberValueOf = callBound('Number.prototype.valueOf');
|
||||
var $BooleanValueOf = callBound('Boolean.prototype.valueOf');
|
||||
var $StringValueOf = callBound('String.prototype.valueOf');
|
||||
var $DateValueOf = callBound('Date.prototype.valueOf');
|
||||
var $SymbolToString = callBound('Symbol.prototype.toString', true);
|
||||
|
||||
var $floor = Math.floor;
|
||||
var $abs = Math.abs;
|
||||
|
||||
var $ObjectCreate = Object.create;
|
||||
var $ObjectCreate = $Object.create;
|
||||
var $gOPD = $Object.getOwnPropertyDescriptor;
|
||||
|
||||
var $gOPN = $Object.getOwnPropertyNames;
|
||||
var $gOPS = $Object.getOwnPropertySymbols;
|
||||
var $isExtensible = $Object.isExtensible;
|
||||
|
||||
var $defineProperty = $Object.defineProperty;
|
||||
var $setProto = require('./helpers/setProto');
|
||||
|
||||
// whitespace from: http://es5.github.io/#x15.5.4.20
|
||||
var DefineOwnProperty = function DefineOwnProperty(ES, O, P, desc) {
|
||||
if (!$defineProperty) {
|
||||
if (!ES.IsDataDescriptor(desc)) {
|
||||
// ES3 does not support getters/setters
|
||||
return false;
|
||||
}
|
||||
if (!desc['[[Configurable]]'] || !desc['[[Writable]]']) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// fallback for ES3
|
||||
if (P in O && $isEnumerable(O, P) !== !!desc['[[Enumerable]]']) {
|
||||
// a non-enumerable existing property
|
||||
return false;
|
||||
}
|
||||
|
||||
// property does not exist at all, or exists but is enumerable
|
||||
var V = desc['[[Value]]'];
|
||||
O[P] = V; // will use [[Define]]
|
||||
return ES.SameValue(O[P], V);
|
||||
}
|
||||
$defineProperty(O, P, ES.FromPropertyDescriptor(desc));
|
||||
return true;
|
||||
};
|
||||
|
||||
// whitespace from: https://es5.github.io/#x15.5.4.20
|
||||
// implementation from https://github.com/es-shims/es5-shim/blob/v3.4.0/es5-shim.js#L1304-L1324
|
||||
var ws = [
|
||||
'\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003',
|
||||
@@ -65,9 +112,9 @@ var ws = [
|
||||
'\u2029\uFEFF'
|
||||
].join('');
|
||||
var trimRegex = new RegExp('(^[' + ws + ']+)|([' + ws + ']+$)', 'g');
|
||||
var replace = bind.call(Function.call, $String.prototype.replace);
|
||||
var $replace = callBound('String.prototype.replace');
|
||||
var trim = function (value) {
|
||||
return replace(value, trimRegex, '');
|
||||
return $replace(value, trimRegex, '');
|
||||
};
|
||||
|
||||
var ES5 = require('./es5');
|
||||
@@ -81,7 +128,7 @@ var ES6 = assign(assign({}, ES5), {
|
||||
Call: function Call(F, V) {
|
||||
var args = arguments.length > 2 ? arguments[2] : [];
|
||||
if (!this.IsCallable(F)) {
|
||||
throw new $TypeError(F + ' is not a function');
|
||||
throw new $TypeError(inspect(F) + ' is not a function');
|
||||
}
|
||||
return F.apply(V, args);
|
||||
},
|
||||
@@ -211,11 +258,11 @@ var ES6 = assign(assign({}, ES5), {
|
||||
|
||||
// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isconstructor
|
||||
IsConstructor: function IsConstructor(argument) {
|
||||
return typeof argument === 'function' && !!argument.prototype; // unfortunately there's no way to truly check this without try/catch `new argument`
|
||||
return typeof argument === 'function' && !!argument.prototype; // unfortunately there's no way to truly check this without try/catch `new argument` or Proxy
|
||||
},
|
||||
|
||||
// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isextensible-o
|
||||
IsExtensible: Object.preventExtensions
|
||||
IsExtensible: $preventExtensions
|
||||
? function IsExtensible(obj) {
|
||||
if (isPrimitive(obj)) {
|
||||
return false;
|
||||
@@ -325,7 +372,7 @@ var ES6 = assign(assign({}, ES5), {
|
||||
}
|
||||
// 7.3.1.2
|
||||
if (!this.IsPropertyKey(P)) {
|
||||
throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
|
||||
throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true, got ' + inspect(P));
|
||||
}
|
||||
// 7.3.1.3
|
||||
return O[P];
|
||||
@@ -360,6 +407,36 @@ var ES6 = assign(assign({}, ES5), {
|
||||
throw new $TypeError('no constructor found');
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-frompropertydescriptor
|
||||
FromPropertyDescriptor: function FromPropertyDescriptor(Desc) {
|
||||
if (typeof Desc === 'undefined') {
|
||||
return Desc;
|
||||
}
|
||||
|
||||
assertRecord(this, 'Property Descriptor', 'Desc', Desc);
|
||||
|
||||
var obj = {};
|
||||
if ('[[Value]]' in Desc) {
|
||||
obj.value = Desc['[[Value]]'];
|
||||
}
|
||||
if ('[[Writable]]' in Desc) {
|
||||
obj.writable = Desc['[[Writable]]'];
|
||||
}
|
||||
if ('[[Get]]' in Desc) {
|
||||
obj.get = Desc['[[Get]]'];
|
||||
}
|
||||
if ('[[Set]]' in Desc) {
|
||||
obj.set = Desc['[[Set]]'];
|
||||
}
|
||||
if ('[[Enumerable]]' in Desc) {
|
||||
obj.enumerable = Desc['[[Enumerable]]'];
|
||||
}
|
||||
if ('[[Configurable]]' in Desc) {
|
||||
obj.configurable = Desc['[[Configurable]]'];
|
||||
}
|
||||
return obj;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor
|
||||
CompletePropertyDescriptor: function CompletePropertyDescriptor(Desc) {
|
||||
assertRecord(this, 'Property Descriptor', 'Desc', Desc);
|
||||
@@ -459,13 +536,9 @@ var ES6 = assign(assign({}, ES5), {
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-getiterator
|
||||
GetIterator: function GetIterator(obj, method) {
|
||||
if (!hasSymbols) {
|
||||
throw new SyntaxError('ES.GetIterator depends on native iterator support.');
|
||||
}
|
||||
|
||||
var actualMethod = method;
|
||||
if (arguments.length < 2) {
|
||||
actualMethod = this.GetMethod(obj, $Symbol.iterator);
|
||||
actualMethod = getIteratorMethod(this, obj);
|
||||
}
|
||||
var iterator = this.Call(actualMethod, obj);
|
||||
if (this.Type(iterator) !== 'Object') {
|
||||
@@ -615,19 +688,17 @@ var ES6 = assign(assign({}, ES5), {
|
||||
throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
|
||||
}
|
||||
var oldDesc = $gOPD(O, P);
|
||||
var extensible = oldDesc || (typeof $isExtensible !== 'function' || $isExtensible(O));
|
||||
var extensible = oldDesc || this.IsExtensible(O);
|
||||
var immutable = oldDesc && (!oldDesc.writable || !oldDesc.configurable);
|
||||
if (immutable || !extensible) {
|
||||
return false;
|
||||
}
|
||||
var newDesc = {
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
value: V,
|
||||
writable: true
|
||||
};
|
||||
$defineProperty(O, P, newDesc);
|
||||
return true;
|
||||
return DefineOwnProperty(this, O, P, {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': true,
|
||||
'[[Value]]': V,
|
||||
'[[Writable]]': true
|
||||
});
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow
|
||||
@@ -705,12 +776,12 @@ var ES6 = assign(assign({}, ES5), {
|
||||
}
|
||||
|
||||
var newDesc = {
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
value: V,
|
||||
writable: true
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': false,
|
||||
'[[Value]]': V,
|
||||
'[[Writable]]': true
|
||||
};
|
||||
return !!$defineProperty(O, P, newDesc);
|
||||
return DefineOwnProperty(this, O, P, newDesc);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow
|
||||
@@ -723,7 +794,12 @@ var ES6 = assign(assign({}, ES5), {
|
||||
throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
|
||||
}
|
||||
|
||||
return !!$defineProperty(O, P, desc);
|
||||
var Desc = isPropertyDescriptor(this, desc) ? desc : this.ToPropertyDescriptor(desc);
|
||||
if (!isPropertyDescriptor(this, Desc)) {
|
||||
throw new $TypeError('Assertion failed: Desc is not a valid Property Descriptor');
|
||||
}
|
||||
|
||||
return DefineOwnProperty(this, O, P, Desc);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-deletepropertyorthrow
|
||||
@@ -782,6 +858,604 @@ var ES6 = assign(assign({}, ES5), {
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-date-prototype-object
|
||||
thisTimeValue: function thisTimeValue(value) {
|
||||
return $DateValueOf(value);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-setintegritylevel
|
||||
SetIntegrityLevel: function SetIntegrityLevel(O, level) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: Type(O) is not Object');
|
||||
}
|
||||
if (level !== 'sealed' && level !== 'frozen') {
|
||||
throw new $TypeError('Assertion failed: `level` must be `"sealed"` or `"frozen"`');
|
||||
}
|
||||
if (!$preventExtensions) {
|
||||
throw new $SyntaxError('SetIntegrityLevel requires native `Object.preventExtensions` support');
|
||||
}
|
||||
var status = $preventExtensions(O);
|
||||
if (!status) {
|
||||
return false;
|
||||
}
|
||||
if (!$gOPN) {
|
||||
throw new $SyntaxError('SetIntegrityLevel requires native `Object.getOwnPropertyNames` support');
|
||||
}
|
||||
var theKeys = $gOPN(O);
|
||||
var ES = this;
|
||||
if (level === 'sealed') {
|
||||
forEach(theKeys, function (k) {
|
||||
ES.DefinePropertyOrThrow(O, k, { configurable: false });
|
||||
});
|
||||
} else if (level === 'frozen') {
|
||||
forEach(theKeys, function (k) {
|
||||
var currentDesc = $gOPD(O, k);
|
||||
if (typeof currentDesc !== 'undefined') {
|
||||
var desc;
|
||||
if (ES.IsAccessorDescriptor(ES.ToPropertyDescriptor(currentDesc))) {
|
||||
desc = { configurable: false };
|
||||
} else {
|
||||
desc = { configurable: false, writable: false };
|
||||
}
|
||||
ES.DefinePropertyOrThrow(O, k, desc);
|
||||
}
|
||||
});
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-testintegritylevel
|
||||
TestIntegrityLevel: function TestIntegrityLevel(O, level) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: Type(O) is not Object');
|
||||
}
|
||||
if (level !== 'sealed' && level !== 'frozen') {
|
||||
throw new $TypeError('Assertion failed: `level` must be `"sealed"` or `"frozen"`');
|
||||
}
|
||||
var status = this.IsExtensible(O);
|
||||
if (status) {
|
||||
return false;
|
||||
}
|
||||
var theKeys = $gOPN(O);
|
||||
var ES = this;
|
||||
return theKeys.length === 0 || every(theKeys, function (k) {
|
||||
var currentDesc = $gOPD(O, k);
|
||||
if (typeof currentDesc !== 'undefined') {
|
||||
if (currentDesc.configurable) {
|
||||
return false;
|
||||
}
|
||||
if (level === 'frozen' && ES.IsDataDescriptor(ES.ToPropertyDescriptor(currentDesc)) && currentDesc.writable) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
});
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-ordinaryhasinstance
|
||||
OrdinaryHasInstance: function OrdinaryHasInstance(C, O) {
|
||||
if (this.IsCallable(C) === false) {
|
||||
return false;
|
||||
}
|
||||
if (this.Type(O) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
var P = this.Get(C, 'prototype');
|
||||
if (this.Type(P) !== 'Object') {
|
||||
throw new $TypeError('OrdinaryHasInstance called on an object with an invalid prototype property.');
|
||||
}
|
||||
return O instanceof C;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-ordinaryhasproperty
|
||||
OrdinaryHasProperty: function OrdinaryHasProperty(O, P) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: Type(O) is not Object');
|
||||
}
|
||||
if (!this.IsPropertyKey(P)) {
|
||||
throw new $TypeError('Assertion failed: P must be a Property Key');
|
||||
}
|
||||
return P in O;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-instanceofoperator
|
||||
InstanceofOperator: function InstanceofOperator(O, C) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: Type(O) is not Object');
|
||||
}
|
||||
var instOfHandler = hasSymbols && $Symbol.hasInstance ? this.GetMethod(C, $Symbol.hasInstance) : void 0;
|
||||
if (typeof instOfHandler !== 'undefined') {
|
||||
return this.ToBoolean(this.Call(instOfHandler, C, [O]));
|
||||
}
|
||||
if (!this.IsCallable(C)) {
|
||||
throw new $TypeError('`C` is not Callable');
|
||||
}
|
||||
return this.OrdinaryHasInstance(C, O);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-ispromise
|
||||
IsPromise: function IsPromise(x) {
|
||||
if (this.Type(x) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
if (!$PromiseThen) { // Promises are not supported
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
$PromiseThen(x); // throws if not a promise
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-abstract-equality-comparison
|
||||
'Abstract Equality Comparison': function AbstractEqualityComparison(x, y) {
|
||||
var xType = this.Type(x);
|
||||
var yType = this.Type(y);
|
||||
if (xType === yType) {
|
||||
return x === y; // ES6+ specified this shortcut anyways.
|
||||
}
|
||||
if (x == null && y == null) {
|
||||
return true;
|
||||
}
|
||||
if (xType === 'Number' && yType === 'String') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToNumber(y));
|
||||
}
|
||||
if (xType === 'String' && yType === 'Number') {
|
||||
return this['Abstract Equality Comparison'](this.ToNumber(x), y);
|
||||
}
|
||||
if (xType === 'Boolean') {
|
||||
return this['Abstract Equality Comparison'](this.ToNumber(x), y);
|
||||
}
|
||||
if (yType === 'Boolean') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToNumber(y));
|
||||
}
|
||||
if ((xType === 'String' || xType === 'Number' || xType === 'Symbol') && yType === 'Object') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToPrimitive(y));
|
||||
}
|
||||
if (xType === 'Object' && (yType === 'String' || yType === 'Number' || yType === 'Symbol')) {
|
||||
return this['Abstract Equality Comparison'](this.ToPrimitive(x), y);
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
// eslint-disable-next-line max-lines-per-function, max-statements, id-length, max-params
|
||||
ValidateAndApplyPropertyDescriptor: function ValidateAndApplyPropertyDescriptor(O, P, extensible, Desc, current) {
|
||||
// this uses the ES2017+ logic, since it fixes a number of bugs in the ES2015 logic.
|
||||
var oType = this.Type(O);
|
||||
if (oType !== 'Undefined' && oType !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: O must be undefined or an Object');
|
||||
}
|
||||
if (this.Type(extensible) !== 'Boolean') {
|
||||
throw new $TypeError('Assertion failed: extensible must be a Boolean');
|
||||
}
|
||||
if (!isPropertyDescriptor(this, Desc)) {
|
||||
throw new $TypeError('Assertion failed: Desc must be a Property Descriptor');
|
||||
}
|
||||
if (this.Type(current) !== 'Undefined' && !isPropertyDescriptor(this, current)) {
|
||||
throw new $TypeError('Assertion failed: current must be a Property Descriptor, or undefined');
|
||||
}
|
||||
if (oType !== 'Undefined' && !this.IsPropertyKey(P)) {
|
||||
throw new $TypeError('Assertion failed: if O is not undefined, P must be a Property Key');
|
||||
}
|
||||
if (this.Type(current) === 'Undefined') {
|
||||
if (!extensible) {
|
||||
return false;
|
||||
}
|
||||
if (this.IsGenericDescriptor(Desc) || this.IsDataDescriptor(Desc)) {
|
||||
if (oType !== 'Undefined') {
|
||||
DefineOwnProperty(this, O, P, {
|
||||
'[[Configurable]]': Desc['[[Configurable]]'],
|
||||
'[[Enumerable]]': Desc['[[Enumerable]]'],
|
||||
'[[Value]]': Desc['[[Value]]'],
|
||||
'[[Writable]]': Desc['[[Writable]]']
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if (!this.IsAccessorDescriptor(Desc)) {
|
||||
throw new $TypeError('Assertion failed: Desc is not an accessor descriptor');
|
||||
}
|
||||
if (oType !== 'Undefined') {
|
||||
return DefineOwnProperty(this, O, P, Desc);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
if (this.IsGenericDescriptor(Desc) && !('[[Configurable]]' in Desc) && !('[[Enumerable]]' in Desc)) {
|
||||
return true;
|
||||
}
|
||||
if (isSamePropertyDescriptor(this, Desc, current)) {
|
||||
return true; // removed by ES2017, but should still be correct
|
||||
}
|
||||
// "if every field in Desc is absent, return true" can't really match the assertion that it's a Property Descriptor
|
||||
if (!current['[[Configurable]]']) {
|
||||
if (Desc['[[Configurable]]']) {
|
||||
return false;
|
||||
}
|
||||
if ('[[Enumerable]]' in Desc && !Desc['[[Enumerable]]'] === !!current['[[Enumerable]]']) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (this.IsGenericDescriptor(Desc)) {
|
||||
// no further validation is required.
|
||||
} else if (this.IsDataDescriptor(current) !== this.IsDataDescriptor(Desc)) {
|
||||
if (!current['[[Configurable]]']) {
|
||||
return false;
|
||||
}
|
||||
if (this.IsDataDescriptor(current)) {
|
||||
if (oType !== 'Undefined') {
|
||||
DefineOwnProperty(this, O, P, {
|
||||
'[[Configurable]]': current['[[Configurable]]'],
|
||||
'[[Enumerable]]': current['[[Enumerable]]'],
|
||||
'[[Get]]': undefined
|
||||
});
|
||||
}
|
||||
} else if (oType !== 'Undefined') {
|
||||
DefineOwnProperty(this, O, P, {
|
||||
'[[Configurable]]': current['[[Configurable]]'],
|
||||
'[[Enumerable]]': current['[[Enumerable]]'],
|
||||
'[[Value]]': undefined
|
||||
});
|
||||
}
|
||||
} else if (this.IsDataDescriptor(current) && this.IsDataDescriptor(Desc)) {
|
||||
if (!current['[[Configurable]]'] && !current['[[Writable]]']) {
|
||||
if ('[[Writable]]' in Desc && Desc['[[Writable]]']) {
|
||||
return false;
|
||||
}
|
||||
if ('[[Value]]' in Desc && !this.SameValue(Desc['[[Value]]'], current['[[Value]]'])) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
} else if (this.IsAccessorDescriptor(current) && this.IsAccessorDescriptor(Desc)) {
|
||||
if (!current['[[Configurable]]']) {
|
||||
if ('[[Set]]' in Desc && !this.SameValue(Desc['[[Set]]'], current['[[Set]]'])) {
|
||||
return false;
|
||||
}
|
||||
if ('[[Get]]' in Desc && !this.SameValue(Desc['[[Get]]'], current['[[Get]]'])) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
throw new $TypeError('Assertion failed: current and Desc are not both data, both accessors, or one accessor and one data.');
|
||||
}
|
||||
if (oType !== 'Undefined') {
|
||||
return DefineOwnProperty(this, O, P, Desc);
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-ordinarydefineownproperty
|
||||
OrdinaryDefineOwnProperty: function OrdinaryDefineOwnProperty(O, P, Desc) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: O must be an Object');
|
||||
}
|
||||
if (!this.IsPropertyKey(P)) {
|
||||
throw new $TypeError('Assertion failed: P must be a Property Key');
|
||||
}
|
||||
if (!isPropertyDescriptor(this, Desc)) {
|
||||
throw new $TypeError('Assertion failed: Desc must be a Property Descriptor');
|
||||
}
|
||||
var desc = $gOPD(O, P);
|
||||
var current = desc && this.ToPropertyDescriptor(desc);
|
||||
var extensible = this.IsExtensible(O);
|
||||
return this.ValidateAndApplyPropertyDescriptor(O, P, extensible, Desc, current);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-ordinarygetownproperty
|
||||
OrdinaryGetOwnProperty: function OrdinaryGetOwnProperty(O, P) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: O must be an Object');
|
||||
}
|
||||
if (!this.IsPropertyKey(P)) {
|
||||
throw new $TypeError('Assertion failed: P must be a Property Key');
|
||||
}
|
||||
if (!has(O, P)) {
|
||||
return void 0;
|
||||
}
|
||||
if (!$gOPD) {
|
||||
// ES3 fallback
|
||||
var arrayLength = this.IsArray(O) && P === 'length';
|
||||
var regexLastIndex = this.IsRegExp(O) && P === 'lastIndex';
|
||||
return {
|
||||
'[[Configurable]]': !(arrayLength || regexLastIndex),
|
||||
'[[Enumerable]]': $isEnumerable(O, P),
|
||||
'[[Value]]': O[P],
|
||||
'[[Writable]]': true
|
||||
};
|
||||
}
|
||||
return this.ToPropertyDescriptor($gOPD(O, P));
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-arraycreate
|
||||
ArrayCreate: function ArrayCreate(length) {
|
||||
if (!this.IsInteger(length) || length < 0) {
|
||||
throw new $TypeError('Assertion failed: `length` must be an integer Number >= 0');
|
||||
}
|
||||
if (length > MAX_ARRAY_LENGTH) {
|
||||
throw new $RangeError('length is greater than (2**32 - 1)');
|
||||
}
|
||||
var proto = arguments.length > 1 ? arguments[1] : $ArrayPrototype;
|
||||
var A = []; // steps 5 - 7, and 9
|
||||
if (proto !== $ArrayPrototype) { // step 8
|
||||
if (!$setProto) {
|
||||
throw new $SyntaxError('ArrayCreate: a `proto` argument that is not `Array.prototype` is not supported in an environment that does not support setting the [[Prototype]]');
|
||||
}
|
||||
$setProto(A, proto);
|
||||
}
|
||||
if (length !== 0) { // bypasses the need for step 2
|
||||
A.length = length;
|
||||
}
|
||||
/* step 10, the above as a shortcut for the below
|
||||
this.OrdinaryDefineOwnProperty(A, 'length', {
|
||||
'[[Configurable]]': false,
|
||||
'[[Enumerable]]': false,
|
||||
'[[Value]]': length,
|
||||
'[[Writable]]': true
|
||||
});
|
||||
*/
|
||||
return A;
|
||||
},
|
||||
|
||||
// eslint-disable-next-line max-statements, max-lines-per-function
|
||||
ArraySetLength: function ArraySetLength(A, Desc) {
|
||||
if (!this.IsArray(A)) {
|
||||
throw new $TypeError('Assertion failed: A must be an Array');
|
||||
}
|
||||
if (!isPropertyDescriptor(this, Desc)) {
|
||||
throw new $TypeError('Assertion failed: Desc must be a Property Descriptor');
|
||||
}
|
||||
if (!('[[Value]]' in Desc)) {
|
||||
return this.OrdinaryDefineOwnProperty(A, 'length', Desc);
|
||||
}
|
||||
var newLenDesc = assign({}, Desc);
|
||||
var newLen = this.ToUint32(Desc['[[Value]]']);
|
||||
var numberLen = this.ToNumber(Desc['[[Value]]']);
|
||||
if (newLen !== numberLen) {
|
||||
throw new $RangeError('Invalid array length');
|
||||
}
|
||||
newLenDesc['[[Value]]'] = newLen;
|
||||
var oldLenDesc = this.OrdinaryGetOwnProperty(A, 'length');
|
||||
if (!this.IsDataDescriptor(oldLenDesc)) {
|
||||
throw new $TypeError('Assertion failed: an array had a non-data descriptor on `length`');
|
||||
}
|
||||
var oldLen = oldLenDesc['[[Value]]'];
|
||||
if (newLen >= oldLen) {
|
||||
return this.OrdinaryDefineOwnProperty(A, 'length', newLenDesc);
|
||||
}
|
||||
if (!oldLenDesc['[[Writable]]']) {
|
||||
return false;
|
||||
}
|
||||
var newWritable;
|
||||
if (!('[[Writable]]' in newLenDesc) || newLenDesc['[[Writable]]']) {
|
||||
newWritable = true;
|
||||
} else {
|
||||
newWritable = false;
|
||||
newLenDesc['[[Writable]]'] = true;
|
||||
}
|
||||
var succeeded = this.OrdinaryDefineOwnProperty(A, 'length', newLenDesc);
|
||||
if (!succeeded) {
|
||||
return false;
|
||||
}
|
||||
while (newLen < oldLen) {
|
||||
oldLen -= 1;
|
||||
var deleteSucceeded = delete A[this.ToString(oldLen)];
|
||||
if (!deleteSucceeded) {
|
||||
newLenDesc['[[Value]]'] = oldLen + 1;
|
||||
if (!newWritable) {
|
||||
newLenDesc['[[Writable]]'] = false;
|
||||
this.OrdinaryDefineOwnProperty(A, 'length', newLenDesc);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!newWritable) {
|
||||
return this.OrdinaryDefineOwnProperty(A, 'length', { '[[Writable]]': false });
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-createhtml
|
||||
CreateHTML: function CreateHTML(string, tag, attribute, value) {
|
||||
if (this.Type(tag) !== 'String' || this.Type(attribute) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `tag` and `attribute` must be strings');
|
||||
}
|
||||
var str = this.RequireObjectCoercible(string);
|
||||
var S = this.ToString(str);
|
||||
var p1 = '<' + tag;
|
||||
if (attribute !== '') {
|
||||
var V = this.ToString(value);
|
||||
var escapedV = $replace(V, /\x22/g, '"');
|
||||
p1 += '\x20' + attribute + '\x3D\x22' + escapedV + '\x22';
|
||||
}
|
||||
return p1 + '>' + S + '</' + tag + '>';
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-getownpropertykeys
|
||||
GetOwnPropertyKeys: function GetOwnPropertyKeys(O, Type) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: Type(O) is not Object');
|
||||
}
|
||||
if (Type === 'Symbol') {
|
||||
return hasSymbols && $gOPS ? $gOPS(O) : [];
|
||||
}
|
||||
if (Type === 'String') {
|
||||
if (!$gOPN) {
|
||||
return keys(O);
|
||||
}
|
||||
return $gOPN(O);
|
||||
}
|
||||
throw new $TypeError('Assertion failed: `Type` must be `"String"` or `"Symbol"`');
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-symboldescriptivestring
|
||||
SymbolDescriptiveString: function SymbolDescriptiveString(sym) {
|
||||
if (this.Type(sym) !== 'Symbol') {
|
||||
throw new $TypeError('Assertion failed: `sym` must be a Symbol');
|
||||
}
|
||||
return $SymbolToString(sym);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/6.0/#sec-getsubstitution
|
||||
// eslint-disable-next-line max-statements, max-params, max-lines-per-function
|
||||
GetSubstitution: function GetSubstitution(matched, str, position, captures, replacement) {
|
||||
if (this.Type(matched) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `matched` must be a String');
|
||||
}
|
||||
var matchLength = matched.length;
|
||||
|
||||
if (this.Type(str) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `str` must be a String');
|
||||
}
|
||||
var stringLength = str.length;
|
||||
|
||||
if (!this.IsInteger(position) || position < 0 || position > stringLength) {
|
||||
throw new $TypeError('Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got ' + inspect(position));
|
||||
}
|
||||
|
||||
var ES = this;
|
||||
var isStringOrHole = function (capture, index, arr) { return ES.Type(capture) === 'String' || !(index in arr); };
|
||||
if (!this.IsArray(captures) || !every(captures, isStringOrHole)) {
|
||||
throw new $TypeError('Assertion failed: `captures` must be a List of Strings, got ' + inspect(captures));
|
||||
}
|
||||
|
||||
if (this.Type(replacement) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `replacement` must be a String');
|
||||
}
|
||||
|
||||
var tailPos = position + matchLength;
|
||||
var m = captures.length;
|
||||
|
||||
var result = '';
|
||||
for (var i = 0; i < replacement.length; i += 1) {
|
||||
// if this is a $, and it's not the end of the replacement
|
||||
var current = replacement[i];
|
||||
var isLast = (i + 1) >= replacement.length;
|
||||
var nextIsLast = (i + 2) >= replacement.length;
|
||||
if (current === '$' && !isLast) {
|
||||
var next = replacement[i + 1];
|
||||
if (next === '$') {
|
||||
result += '$';
|
||||
i += 1;
|
||||
} else if (next === '&') {
|
||||
result += matched;
|
||||
i += 1;
|
||||
} else if (next === '`') {
|
||||
result += position === 0 ? '' : strSlice(str, 0, position - 1);
|
||||
i += 1;
|
||||
} else if (next === "'") {
|
||||
result += tailPos >= stringLength ? '' : strSlice(str, tailPos);
|
||||
i += 1;
|
||||
} else {
|
||||
var nextNext = nextIsLast ? null : replacement[i + 2];
|
||||
if (isDigit(next) && next !== '0' && (nextIsLast || !isDigit(nextNext))) {
|
||||
// $1 through $9, and not followed by a digit
|
||||
var n = parseInteger(next, 10);
|
||||
// if (n > m, impl-defined)
|
||||
result += (n <= m && this.Type(captures[n - 1]) === 'Undefined') ? '' : captures[n - 1];
|
||||
i += 1;
|
||||
} else if (isDigit(next) && (nextIsLast || isDigit(nextNext))) {
|
||||
// $00 through $99
|
||||
var nn = next + nextNext;
|
||||
var nnI = parseInteger(nn, 10) - 1;
|
||||
// if nn === '00' or nn > m, impl-defined
|
||||
result += (nn <= m && this.Type(captures[nnI]) === 'Undefined') ? '' : captures[nnI];
|
||||
i += 2;
|
||||
} else {
|
||||
result += '$';
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// the final $, or else not a $
|
||||
result += replacement[i];
|
||||
}
|
||||
}
|
||||
return result;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-todatestring
|
||||
ToDateString: function ToDateString(tv) {
|
||||
if (this.Type(tv) !== 'Number') {
|
||||
throw new $TypeError('Assertion failed: `tv` must be a Number');
|
||||
}
|
||||
if ($isNaN(tv)) {
|
||||
return 'Invalid Date';
|
||||
}
|
||||
return $Date(tv);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-createlistfromarraylike
|
||||
CreateListFromArrayLike: function CreateListFromArrayLike(obj) {
|
||||
var elementTypes = arguments.length > 1
|
||||
? arguments[1]
|
||||
: ['Undefined', 'Null', 'Boolean', 'String', 'Symbol', 'Number', 'Object'];
|
||||
|
||||
if (this.Type(obj) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: `obj` must be an Object');
|
||||
}
|
||||
if (!this.IsArray(elementTypes)) {
|
||||
throw new $TypeError('Assertion failed: `elementTypes`, if provided, must be an array');
|
||||
}
|
||||
var len = this.ToLength(this.Get(obj, 'length'));
|
||||
var list = [];
|
||||
var index = 0;
|
||||
while (index < len) {
|
||||
var indexName = this.ToString(index);
|
||||
var next = this.Get(obj, indexName);
|
||||
var nextType = this.Type(next);
|
||||
if ($indexOf(elementTypes, nextType) < 0) {
|
||||
throw new $TypeError('item type ' + nextType + ' is not a valid elementType');
|
||||
}
|
||||
$push(list, next);
|
||||
index += 1;
|
||||
}
|
||||
return list;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-getprototypefromconstructor
|
||||
GetPrototypeFromConstructor: function GetPrototypeFromConstructor(constructor, intrinsicDefaultProto) {
|
||||
var intrinsic = GetIntrinsic(intrinsicDefaultProto); // throws if not a valid intrinsic
|
||||
if (!this.IsConstructor(constructor)) {
|
||||
throw new $TypeError('Assertion failed: `constructor` must be a constructor');
|
||||
}
|
||||
var proto = this.Get(constructor, 'prototype');
|
||||
if (this.Type(proto) !== 'Object') {
|
||||
if (!(constructor instanceof $Function)) {
|
||||
// ignore other realms, for now
|
||||
throw new $TypeError('cross-realm constructors not currently supported');
|
||||
}
|
||||
proto = intrinsic;
|
||||
}
|
||||
return proto;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-setfunctionname
|
||||
SetFunctionName: function SetFunctionName(F, name) {
|
||||
if (typeof F !== 'function') {
|
||||
throw new $TypeError('Assertion failed: `F` must be a function');
|
||||
}
|
||||
if (!this.IsExtensible(F) || has(F, 'name')) {
|
||||
throw new $TypeError('Assertion failed: `F` must be extensible, and must not have a `name` own property');
|
||||
}
|
||||
var nameType = this.Type(name);
|
||||
if (nameType !== 'Symbol' && nameType !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `name` must be a Symbol or a String');
|
||||
}
|
||||
if (nameType === 'Symbol') {
|
||||
var description = getSymbolDescription(name);
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
name = typeof description === 'undefined' ? '' : '[' + description + ']';
|
||||
}
|
||||
if (arguments.length > 2) {
|
||||
var prefix = arguments[2];
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
name = prefix + ' ' + name;
|
||||
}
|
||||
return this.DefinePropertyOrThrow(F, 'name', {
|
||||
'[[Value]]': name,
|
||||
'[[Writable]]': false,
|
||||
'[[Enumerable]]': false,
|
||||
'[[Configurable]]': true
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
84
node_modules/es-abstract/es2016.js
generated
vendored
84
node_modules/es-abstract/es2016.js
generated
vendored
@@ -1,15 +1,97 @@
|
||||
'use strict';
|
||||
|
||||
var ES2015 = require('./es2015');
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
var assign = require('./helpers/assign');
|
||||
var $setProto = require('./helpers/setProto');
|
||||
|
||||
var callBound = require('./helpers/callBound');
|
||||
var getIteratorMethod = require('./helpers/getIteratorMethod');
|
||||
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
var $arrayPush = callBound('Array.prototype.push');
|
||||
var $getProto = require('./helpers/getProto');
|
||||
|
||||
var ES2016 = assign(assign({}, ES2015), {
|
||||
// https://github.com/tc39/ecma262/pull/60
|
||||
// https://www.ecma-international.org/ecma-262/7.0/#sec-samevaluenonnumber
|
||||
SameValueNonNumber: function SameValueNonNumber(x, y) {
|
||||
if (typeof x === 'number' || typeof x !== typeof y) {
|
||||
throw new TypeError('SameValueNonNumber requires two non-number values of the same type.');
|
||||
}
|
||||
return this.SameValue(x, y);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/7.0/#sec-iterabletoarraylike
|
||||
IterableToArrayLike: function IterableToArrayLike(items) {
|
||||
var usingIterator = getIteratorMethod(this, items);
|
||||
if (typeof usingIterator !== 'undefined') {
|
||||
var iterator = this.GetIterator(items, usingIterator);
|
||||
var values = [];
|
||||
var next = true;
|
||||
while (next) {
|
||||
next = this.IteratorStep(iterator);
|
||||
if (next) {
|
||||
var nextValue = this.IteratorValue(next);
|
||||
$arrayPush(values, nextValue);
|
||||
}
|
||||
}
|
||||
return values;
|
||||
}
|
||||
|
||||
return this.ToObject(items);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/7.0/#sec-ordinarygetprototypeof
|
||||
OrdinaryGetPrototypeOf: function (O) {
|
||||
if (this.Type(O) !== 'Object') {
|
||||
throw new $TypeError('Assertion failed: O must be an Object');
|
||||
}
|
||||
if (!$getProto) {
|
||||
throw new $TypeError('This environment does not support fetching prototypes.');
|
||||
}
|
||||
return $getProto(O);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/7.0/#sec-ordinarysetprototypeof
|
||||
OrdinarySetPrototypeOf: function (O, V) {
|
||||
if (this.Type(V) !== 'Object' && this.Type(V) !== 'Null') {
|
||||
throw new $TypeError('Assertion failed: V must be Object or Null');
|
||||
}
|
||||
/*
|
||||
var extensible = this.IsExtensible(O);
|
||||
var current = this.OrdinaryGetPrototypeOf(O);
|
||||
if (this.SameValue(V, current)) {
|
||||
return true;
|
||||
}
|
||||
if (!extensible) {
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
try {
|
||||
$setProto(O, V);
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
return this.OrdinaryGetPrototypeOf(O) === V;
|
||||
/*
|
||||
var p = V;
|
||||
var done = false;
|
||||
while (!done) {
|
||||
if (p === null) {
|
||||
done = true;
|
||||
} else if (this.SameValue(p, O)) {
|
||||
return false;
|
||||
} else {
|
||||
if (wat) {
|
||||
done = true;
|
||||
} else {
|
||||
p = p.[[Prototype]];
|
||||
}
|
||||
}
|
||||
}
|
||||
O.[[Prototype]] = V;
|
||||
return true;
|
||||
*/
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
27
node_modules/es-abstract/es2017.js
generated
vendored
27
node_modules/es-abstract/es2017.js
generated
vendored
@@ -1,16 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
var bind = require('function-bind');
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
|
||||
var ES2016 = require('./es2016');
|
||||
var assign = require('./helpers/assign');
|
||||
var forEach = require('./helpers/forEach');
|
||||
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
var callBind = require('./helpers/callBind');
|
||||
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
var $isEnumerable = bind.call(Function.call, GetIntrinsic('%ObjectPrototype%').propertyIsEnumerable);
|
||||
var $pushApply = bind.call(Function.apply, GetIntrinsic('%ArrayPrototype%').push);
|
||||
var callBound = require('./helpers/callBound');
|
||||
var $isEnumerable = callBound('Object.prototype.propertyIsEnumerable');
|
||||
var $pushApply = callBind.apply(GetIntrinsic('%Array.prototype.push%'));
|
||||
var $arrayPush = callBound('Array.prototype.push');
|
||||
|
||||
var ES2017 = assign(assign({}, ES2016), {
|
||||
ToIndex: function ToIndex(value) {
|
||||
@@ -46,9 +47,25 @@ var ES2017 = assign(assign({}, ES2016), {
|
||||
return results;
|
||||
}
|
||||
throw new $TypeError('Assertion failed: "kind" is not "key", "value", or "key+value": ' + kind);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/8.0/#sec-iterabletolist
|
||||
IterableToList: function IterableToList(items, method) {
|
||||
var iterator = this.GetIterator(items, method);
|
||||
var values = [];
|
||||
var next = true;
|
||||
while (next) {
|
||||
next = this.IteratorStep(iterator);
|
||||
if (next) {
|
||||
var nextValue = this.IteratorValue(next);
|
||||
$arrayPush(values, nextValue);
|
||||
}
|
||||
}
|
||||
return values;
|
||||
}
|
||||
});
|
||||
|
||||
delete ES2017.EnumerableOwnNames; // replaced with EnumerableOwnProperties
|
||||
delete ES2017.IterableToArrayLike; // replaced with IterableToList
|
||||
|
||||
module.exports = ES2017;
|
||||
|
||||
166
node_modules/es-abstract/es2018.js
generated
vendored
166
node_modules/es-abstract/es2018.js
generated
vendored
@@ -1,28 +1,44 @@
|
||||
'use strict';
|
||||
|
||||
var bind = require('function-bind');
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
|
||||
var keys = require('object-keys');
|
||||
var inspect = require('object-inspect');
|
||||
|
||||
var ES2017 = require('./es2017');
|
||||
var assign = require('./helpers/assign');
|
||||
var forEach = require('./helpers/forEach');
|
||||
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
var callBind = require('./helpers/callBind');
|
||||
var every = require('./helpers/every');
|
||||
var isPrefixOf = require('./helpers/isPrefixOf');
|
||||
|
||||
var $String = GetIntrinsic('%String%');
|
||||
var $Object = GetIntrinsic('%Object%');
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
|
||||
var $SymbolProto = GetIntrinsic('%SymbolPrototype%', true);
|
||||
var $SymbolValueOf = $SymbolProto ? bind.call(Function.call, $SymbolProto.valueOf) : null;
|
||||
var $StringProto = GetIntrinsic('%StringPrototype%');
|
||||
var $charAt = bind.call(Function.call, $StringProto.charAt);
|
||||
var callBound = require('./helpers/callBound');
|
||||
var regexTester = require('./helpers/regexTester');
|
||||
var $isNaN = require('./helpers/isNaN');
|
||||
|
||||
var $PromiseResolveOrig = GetIntrinsic('%Promise_resolve%', true);
|
||||
var $PromiseResolve = $PromiseResolveOrig ? bind.call(Function.call, $PromiseResolveOrig) : null;
|
||||
var $SymbolValueOf = callBound('Symbol.prototype.valueOf', true);
|
||||
// var $charAt = callBound('String.prototype.charAt');
|
||||
var $strSlice = callBound('String.prototype.slice');
|
||||
var $indexOf = callBound('String.prototype.indexOf');
|
||||
var $parseInt = parseInt;
|
||||
|
||||
var $isEnumerable = bind.call(Function.call, GetIntrinsic('%ObjectPrototype%').propertyIsEnumerable);
|
||||
var $pushApply = bind.call(Function.apply, GetIntrinsic('%ArrayPrototype%').push);
|
||||
var $gOPS = $SymbolValueOf ? $Object.getOwnPropertySymbols : null;
|
||||
var isDigit = regexTester(/^[0-9]$/);
|
||||
|
||||
var $PromiseResolve = callBound('Promise.resolve', true);
|
||||
|
||||
var $isEnumerable = callBound('Object.prototype.propertyIsEnumerable');
|
||||
var $pushApply = callBind.apply(GetIntrinsic('%Array.prototype.push%'));
|
||||
var $gOPS = $SymbolValueOf ? GetIntrinsic('%Object.getOwnPropertySymbols%') : null;
|
||||
|
||||
var padTimeComponent = function padTimeComponent(c, count) {
|
||||
return $strSlice('00' + c, -(count || 2));
|
||||
};
|
||||
|
||||
var weekdays = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
|
||||
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
||||
|
||||
var OwnPropertyKeys = function OwnPropertyKeys(ES, source) {
|
||||
var ownKeys = keys(source);
|
||||
@@ -56,6 +72,8 @@ var ES2018 = assign(assign({}, ES2017), {
|
||||
throw new TypeError('Assertion failed: "q" must be a String');
|
||||
}
|
||||
|
||||
return isPrefixOf(p, q);
|
||||
/*
|
||||
if (p === q || p === '') {
|
||||
return true;
|
||||
}
|
||||
@@ -74,6 +92,7 @@ var ES2018 = assign(assign({}, ES2017), {
|
||||
}
|
||||
}
|
||||
return true;
|
||||
*/
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/9.0/#sec-tostring-applied-to-the-number-type
|
||||
@@ -139,6 +158,127 @@ var ES2018 = assign(assign({}, ES2017), {
|
||||
throw new SyntaxError('This environment does not support Promises.');
|
||||
}
|
||||
return $PromiseResolve(C, x);
|
||||
},
|
||||
|
||||
// http://www.ecma-international.org/ecma-262/9.0/#sec-getsubstitution
|
||||
// eslint-disable-next-line max-statements, max-params, max-lines-per-function
|
||||
GetSubstitution: function GetSubstitution(matched, str, position, captures, namedCaptures, replacement) {
|
||||
if (this.Type(matched) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `matched` must be a String');
|
||||
}
|
||||
var matchLength = matched.length;
|
||||
|
||||
if (this.Type(str) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `str` must be a String');
|
||||
}
|
||||
var stringLength = str.length;
|
||||
|
||||
if (!this.IsInteger(position) || position < 0 || position > stringLength) {
|
||||
throw new $TypeError('Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got ' + inspect(position));
|
||||
}
|
||||
|
||||
var ES = this;
|
||||
var isStringOrHole = function (capture, index, arr) { return ES.Type(capture) === 'String' || !(index in arr); };
|
||||
if (!this.IsArray(captures) || !every(captures, isStringOrHole)) {
|
||||
throw new $TypeError('Assertion failed: `captures` must be a List of Strings, got ' + inspect(captures));
|
||||
}
|
||||
|
||||
if (this.Type(replacement) !== 'String') {
|
||||
throw new $TypeError('Assertion failed: `replacement` must be a String');
|
||||
}
|
||||
|
||||
var tailPos = position + matchLength;
|
||||
var m = captures.length;
|
||||
if (this.Type(namedCaptures) !== 'Undefined') {
|
||||
namedCaptures = this.ToObject(namedCaptures); // eslint-disable-line no-param-reassign
|
||||
}
|
||||
|
||||
var result = '';
|
||||
for (var i = 0; i < replacement.length; i += 1) {
|
||||
// if this is a $, and it's not the end of the replacement
|
||||
var current = replacement[i];
|
||||
var isLast = (i + 1) >= replacement.length;
|
||||
var nextIsLast = (i + 2) >= replacement.length;
|
||||
if (current === '$' && !isLast) {
|
||||
var next = replacement[i + 1];
|
||||
if (next === '$') {
|
||||
result += '$';
|
||||
i += 1;
|
||||
} else if (next === '&') {
|
||||
result += matched;
|
||||
i += 1;
|
||||
} else if (next === '`') {
|
||||
result += position === 0 ? '' : $strSlice(str, 0, position - 1);
|
||||
i += 1;
|
||||
} else if (next === "'") {
|
||||
result += tailPos >= stringLength ? '' : $strSlice(str, tailPos);
|
||||
i += 1;
|
||||
} else {
|
||||
var nextNext = nextIsLast ? null : replacement[i + 2];
|
||||
if (isDigit(next) && next !== '0' && (nextIsLast || !isDigit(nextNext))) {
|
||||
// $1 through $9, and not followed by a digit
|
||||
var n = $parseInt(next, 10);
|
||||
// if (n > m, impl-defined)
|
||||
result += (n <= m && this.Type(captures[n - 1]) === 'Undefined') ? '' : captures[n - 1];
|
||||
i += 1;
|
||||
} else if (isDigit(next) && (nextIsLast || isDigit(nextNext))) {
|
||||
// $00 through $99
|
||||
var nn = next + nextNext;
|
||||
var nnI = $parseInt(nn, 10) - 1;
|
||||
// if nn === '00' or nn > m, impl-defined
|
||||
result += (nn <= m && this.Type(captures[nnI]) === 'Undefined') ? '' : captures[nnI];
|
||||
i += 2;
|
||||
} else if (next === '<') {
|
||||
// eslint-disable-next-line max-depth
|
||||
if (this.Type(namedCaptures) === 'Undefined') {
|
||||
result += '$<';
|
||||
i += 2;
|
||||
} else {
|
||||
var endIndex = $indexOf(replacement, '>', i);
|
||||
// eslint-disable-next-line max-depth
|
||||
if (endIndex > -1) {
|
||||
var groupName = $strSlice(replacement, i, endIndex);
|
||||
var capture = this.Get(namedCaptures, groupName);
|
||||
// eslint-disable-next-line max-depth
|
||||
if (this.Type(capture) !== 'Undefined') {
|
||||
result += this.ToString(capture);
|
||||
}
|
||||
i += '$<' + groupName + '>'.length;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
result += '$';
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// the final $, or else not a $
|
||||
result += replacement[i];
|
||||
}
|
||||
}
|
||||
return result;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/9.0/#sec-datestring
|
||||
DateString: function DateString(tv) {
|
||||
if (this.Type(tv) !== 'Number' || $isNaN(tv)) {
|
||||
throw new $TypeError('Assertion failed: `tv` must be a non-NaN Number');
|
||||
}
|
||||
var weekday = weekdays[this.WeekDay(tv)];
|
||||
var month = months[this.MonthFromTime(tv)];
|
||||
var day = padTimeComponent(this.DateFromTime(tv));
|
||||
var year = padTimeComponent(this.YearFromTime(tv), 4);
|
||||
return weekday + '\x20' + month + '\x20' + day + '\x20' + year;
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/9.0/#sec-timestring
|
||||
TimeString: function TimeString(tv) {
|
||||
if (this.Type(tv) !== 'Number' || $isNaN(tv)) {
|
||||
throw new $TypeError('Assertion failed: `tv` must be a non-NaN Number');
|
||||
}
|
||||
var hour = this.HourFromTime(tv);
|
||||
var minute = this.MinFromTime(tv);
|
||||
var second = this.SecFromTime(tv);
|
||||
return padTimeComponent(hour) + ':' + padTimeComponent(minute) + ':' + padTimeComponent(second) + '\x20GMT';
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
111
node_modules/es-abstract/es2019.js
generated
vendored
Normal file
111
node_modules/es-abstract/es2019.js
generated
vendored
Normal file
@@ -0,0 +1,111 @@
|
||||
'use strict';
|
||||
|
||||
var trimStart = require('string.prototype.trimleft');
|
||||
var trimEnd = require('string.prototype.trimright');
|
||||
var inspect = require('object-inspect');
|
||||
|
||||
var ES2018 = require('./es2018');
|
||||
var assign = require('./helpers/assign');
|
||||
var MAX_SAFE_INTEGER = require('./helpers/maxSafeInteger');
|
||||
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
|
||||
var ES2019 = assign(assign({}, ES2018), {
|
||||
// https://tc39.es/ecma262/#sec-add-entries-from-iterable
|
||||
AddEntriesFromIterable: function AddEntriesFromIterable(target, iterable, adder) {
|
||||
if (!this.IsCallable(adder)) {
|
||||
throw new $TypeError('Assertion failed: `adder` is not callable');
|
||||
}
|
||||
if (iterable == null) {
|
||||
throw new $TypeError('Assertion failed: `iterable` is present, and not nullish');
|
||||
}
|
||||
var iteratorRecord = this.GetIterator(iterable);
|
||||
while (true) { // eslint-disable-line no-constant-condition
|
||||
var next = this.IteratorStep(iteratorRecord);
|
||||
if (!next) {
|
||||
return target;
|
||||
}
|
||||
var nextItem = this.IteratorValue(next);
|
||||
if (this.Type(nextItem) !== 'Object') {
|
||||
var error = new $TypeError('iterator next must return an Object, got ' + inspect(nextItem));
|
||||
return this.IteratorClose(
|
||||
iteratorRecord,
|
||||
function () { throw error; } // eslint-disable-line no-loop-func
|
||||
);
|
||||
}
|
||||
try {
|
||||
var k = this.Get(nextItem, '0');
|
||||
var v = this.Get(nextItem, '1');
|
||||
this.Call(adder, target, [k, v]);
|
||||
} catch (e) {
|
||||
return this.IteratorClose(
|
||||
iteratorRecord,
|
||||
function () { throw e; } // eslint-disable-line no-loop-func
|
||||
);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/10.0/#sec-flattenintoarray
|
||||
// eslint-disable-next-line max-params, max-statements
|
||||
FlattenIntoArray: function FlattenIntoArray(target, source, sourceLen, start, depth) {
|
||||
var mapperFunction;
|
||||
if (arguments.length > 5) {
|
||||
mapperFunction = arguments[5];
|
||||
}
|
||||
|
||||
var targetIndex = start;
|
||||
var sourceIndex = 0;
|
||||
while (sourceIndex < sourceLen) {
|
||||
var P = this.ToString(sourceIndex);
|
||||
var exists = this.HasProperty(source, P);
|
||||
if (exists === true) {
|
||||
var element = this.Get(source, P);
|
||||
if (typeof mapperFunction !== 'undefined') {
|
||||
if (arguments.length <= 6) {
|
||||
throw new $TypeError('Assertion failed: thisArg is required when mapperFunction is provided');
|
||||
}
|
||||
element = this.Call(mapperFunction, arguments[6], [element, sourceIndex, source]);
|
||||
}
|
||||
var shouldFlatten = false;
|
||||
if (depth > 0) {
|
||||
shouldFlatten = this.IsArray(element);
|
||||
}
|
||||
if (shouldFlatten) {
|
||||
var elementLen = this.ToLength(this.Get(element, 'length'));
|
||||
targetIndex = this.FlattenIntoArray(target, element, elementLen, targetIndex, depth - 1);
|
||||
} else {
|
||||
if (targetIndex >= MAX_SAFE_INTEGER) {
|
||||
throw new $TypeError('index too large');
|
||||
}
|
||||
this.CreateDataPropertyOrThrow(target, this.ToString(targetIndex), element);
|
||||
targetIndex += 1;
|
||||
}
|
||||
}
|
||||
sourceIndex += 1;
|
||||
}
|
||||
|
||||
return targetIndex;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/10.0/#sec-trimstring
|
||||
TrimString: function TrimString(string, where) {
|
||||
var str = this.RequireObjectCoercible(string);
|
||||
var S = this.ToString(str);
|
||||
var T;
|
||||
if (where === 'start') {
|
||||
T = trimStart(S);
|
||||
} else if (where === 'end') {
|
||||
T = trimEnd(S);
|
||||
} else if (where === 'start+end') {
|
||||
T = trimStart(trimEnd(S));
|
||||
} else {
|
||||
throw new $TypeError('Assertion failed: invalid `where` value; must be "start", "end", or "start+end"');
|
||||
}
|
||||
return T;
|
||||
}
|
||||
});
|
||||
|
||||
module.exports = ES2019;
|
||||
361
node_modules/es-abstract/es5.js
generated
vendored
361
node_modules/es-abstract/es5.js
generated
vendored
@@ -3,21 +3,39 @@
|
||||
var GetIntrinsic = require('./GetIntrinsic');
|
||||
|
||||
var $Object = GetIntrinsic('%Object%');
|
||||
var $EvalError = GetIntrinsic('%EvalError%');
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
var $String = GetIntrinsic('%String%');
|
||||
var $Date = GetIntrinsic('%Date%');
|
||||
var $Number = GetIntrinsic('%Number%');
|
||||
var $floor = GetIntrinsic('%Math.floor%');
|
||||
var $DateUTC = GetIntrinsic('%Date.UTC%');
|
||||
var $abs = GetIntrinsic('%Math.abs%');
|
||||
|
||||
var assertRecord = require('./helpers/assertRecord');
|
||||
var isPropertyDescriptor = require('./helpers/isPropertyDescriptor');
|
||||
var $isNaN = require('./helpers/isNaN');
|
||||
var $isFinite = require('./helpers/isFinite');
|
||||
|
||||
var sign = require('./helpers/sign');
|
||||
var mod = require('./helpers/mod');
|
||||
var isPrefixOf = require('./helpers/isPrefixOf');
|
||||
var callBound = require('./helpers/callBound');
|
||||
|
||||
var IsCallable = require('is-callable');
|
||||
var toPrimitive = require('es-to-primitive/es5');
|
||||
|
||||
var has = require('has');
|
||||
|
||||
var $getUTCFullYear = callBound('Date.prototype.getUTCFullYear');
|
||||
|
||||
var HoursPerDay = 24;
|
||||
var MinutesPerHour = 60;
|
||||
var SecondsPerMinute = 60;
|
||||
var msPerSecond = 1e3;
|
||||
var msPerMinute = msPerSecond * SecondsPerMinute;
|
||||
var msPerHour = msPerMinute * MinutesPerHour;
|
||||
var msPerDay = 86400000;
|
||||
|
||||
// https://es5.github.io/#x9
|
||||
var ES5 = {
|
||||
ToPrimitive: toPrimitive,
|
||||
@@ -69,7 +87,7 @@ var ES5 = {
|
||||
return $isNaN(x) && $isNaN(y);
|
||||
},
|
||||
|
||||
// https://www.ecma-international.org/ecma-262/5.1/#sec-8
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-8
|
||||
Type: function Type(x) {
|
||||
if (x === null) {
|
||||
return 'Null';
|
||||
@@ -93,30 +111,7 @@ var ES5 = {
|
||||
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
|
||||
IsPropertyDescriptor: function IsPropertyDescriptor(Desc) {
|
||||
if (this.Type(Desc) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
var allowed = {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': true,
|
||||
'[[Get]]': true,
|
||||
'[[Set]]': true,
|
||||
'[[Value]]': true,
|
||||
'[[Writable]]': true
|
||||
};
|
||||
|
||||
for (var key in Desc) { // eslint-disable-line
|
||||
if (has(Desc, key) && !allowed[key]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
var isData = has(Desc, '[[Value]]');
|
||||
var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
|
||||
if (isData && IsAccessor) {
|
||||
throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
|
||||
}
|
||||
return true;
|
||||
return isPropertyDescriptor(this, Desc);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-8.10.1
|
||||
@@ -229,6 +224,320 @@ var ES5 = {
|
||||
throw new $TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
|
||||
}
|
||||
return desc;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-11.9.3
|
||||
'Abstract Equality Comparison': function AbstractEqualityComparison(x, y) {
|
||||
var xType = this.Type(x);
|
||||
var yType = this.Type(y);
|
||||
if (xType === yType) {
|
||||
return x === y; // ES6+ specified this shortcut anyways.
|
||||
}
|
||||
if (x == null && y == null) {
|
||||
return true;
|
||||
}
|
||||
if (xType === 'Number' && yType === 'String') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToNumber(y));
|
||||
}
|
||||
if (xType === 'String' && yType === 'Number') {
|
||||
return this['Abstract Equality Comparison'](this.ToNumber(x), y);
|
||||
}
|
||||
if (xType === 'Boolean') {
|
||||
return this['Abstract Equality Comparison'](this.ToNumber(x), y);
|
||||
}
|
||||
if (yType === 'Boolean') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToNumber(y));
|
||||
}
|
||||
if ((xType === 'String' || xType === 'Number') && yType === 'Object') {
|
||||
return this['Abstract Equality Comparison'](x, this.ToPrimitive(y));
|
||||
}
|
||||
if (xType === 'Object' && (yType === 'String' || yType === 'Number')) {
|
||||
return this['Abstract Equality Comparison'](this.ToPrimitive(x), y);
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-11.9.6
|
||||
'Strict Equality Comparison': function StrictEqualityComparison(x, y) {
|
||||
var xType = this.Type(x);
|
||||
var yType = this.Type(y);
|
||||
if (xType !== yType) {
|
||||
return false;
|
||||
}
|
||||
if (xType === 'Undefined' || xType === 'Null') {
|
||||
return true;
|
||||
}
|
||||
return x === y; // shortcut for steps 4-7
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-11.8.5
|
||||
// eslint-disable-next-line max-statements
|
||||
'Abstract Relational Comparison': function AbstractRelationalComparison(x, y, LeftFirst) {
|
||||
if (this.Type(LeftFirst) !== 'Boolean') {
|
||||
throw new $TypeError('Assertion failed: LeftFirst argument must be a Boolean');
|
||||
}
|
||||
var px;
|
||||
var py;
|
||||
if (LeftFirst) {
|
||||
px = this.ToPrimitive(x, $Number);
|
||||
py = this.ToPrimitive(y, $Number);
|
||||
} else {
|
||||
py = this.ToPrimitive(y, $Number);
|
||||
px = this.ToPrimitive(x, $Number);
|
||||
}
|
||||
var bothStrings = this.Type(px) === 'String' && this.Type(py) === 'String';
|
||||
if (!bothStrings) {
|
||||
var nx = this.ToNumber(px);
|
||||
var ny = this.ToNumber(py);
|
||||
if ($isNaN(nx) || $isNaN(ny)) {
|
||||
return undefined;
|
||||
}
|
||||
if ($isFinite(nx) && $isFinite(ny) && nx === ny) {
|
||||
return false;
|
||||
}
|
||||
if (nx === 0 && ny === 0) {
|
||||
return false;
|
||||
}
|
||||
if (nx === Infinity) {
|
||||
return false;
|
||||
}
|
||||
if (ny === Infinity) {
|
||||
return true;
|
||||
}
|
||||
if (ny === -Infinity) {
|
||||
return false;
|
||||
}
|
||||
if (nx === -Infinity) {
|
||||
return true;
|
||||
}
|
||||
return nx < ny; // by now, these are both nonzero, finite, and not equal
|
||||
}
|
||||
if (isPrefixOf(py, px)) {
|
||||
return false;
|
||||
}
|
||||
if (isPrefixOf(px, py)) {
|
||||
return true;
|
||||
}
|
||||
return px < py; // both strings, neither a prefix of the other. shortcut for steps c-f
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.10
|
||||
msFromTime: function msFromTime(t) {
|
||||
return mod(t, msPerSecond);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.10
|
||||
SecFromTime: function SecFromTime(t) {
|
||||
return mod($floor(t / msPerSecond), SecondsPerMinute);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.10
|
||||
MinFromTime: function MinFromTime(t) {
|
||||
return mod($floor(t / msPerMinute), MinutesPerHour);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.10
|
||||
HourFromTime: function HourFromTime(t) {
|
||||
return mod($floor(t / msPerHour), HoursPerDay);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.2
|
||||
Day: function Day(t) {
|
||||
return $floor(t / msPerDay);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.2
|
||||
TimeWithinDay: function TimeWithinDay(t) {
|
||||
return mod(t, msPerDay);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.3
|
||||
DayFromYear: function DayFromYear(y) {
|
||||
return (365 * (y - 1970)) + $floor((y - 1969) / 4) - $floor((y - 1901) / 100) + $floor((y - 1601) / 400);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.3
|
||||
TimeFromYear: function TimeFromYear(y) {
|
||||
return msPerDay * this.DayFromYear(y);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.3
|
||||
YearFromTime: function YearFromTime(t) {
|
||||
// largest y such that this.TimeFromYear(y) <= t
|
||||
return $getUTCFullYear(new $Date(t));
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.6
|
||||
WeekDay: function WeekDay(t) {
|
||||
return mod(this.Day(t) + 4, 7);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.3
|
||||
DaysInYear: function DaysInYear(y) {
|
||||
if (mod(y, 4) !== 0) {
|
||||
return 365;
|
||||
}
|
||||
if (mod(y, 100) !== 0) {
|
||||
return 366;
|
||||
}
|
||||
if (mod(y, 400) !== 0) {
|
||||
return 365;
|
||||
}
|
||||
return 366;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.3
|
||||
InLeapYear: function InLeapYear(t) {
|
||||
var days = this.DaysInYear(this.YearFromTime(t));
|
||||
if (days === 365) {
|
||||
return 0;
|
||||
}
|
||||
if (days === 366) {
|
||||
return 1;
|
||||
}
|
||||
throw new $EvalError('Assertion failed: there are not 365 or 366 days in a year, got: ' + days);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.4
|
||||
DayWithinYear: function DayWithinYear(t) {
|
||||
return this.Day(t) - this.DayFromYear(this.YearFromTime(t));
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.4
|
||||
MonthFromTime: function MonthFromTime(t) {
|
||||
var day = this.DayWithinYear(t);
|
||||
if (0 <= day && day < 31) {
|
||||
return 0;
|
||||
}
|
||||
var leap = this.InLeapYear(t);
|
||||
if (31 <= day && day < (59 + leap)) {
|
||||
return 1;
|
||||
}
|
||||
if ((59 + leap) <= day && day < (90 + leap)) {
|
||||
return 2;
|
||||
}
|
||||
if ((90 + leap) <= day && day < (120 + leap)) {
|
||||
return 3;
|
||||
}
|
||||
if ((120 + leap) <= day && day < (151 + leap)) {
|
||||
return 4;
|
||||
}
|
||||
if ((151 + leap) <= day && day < (181 + leap)) {
|
||||
return 5;
|
||||
}
|
||||
if ((181 + leap) <= day && day < (212 + leap)) {
|
||||
return 6;
|
||||
}
|
||||
if ((212 + leap) <= day && day < (243 + leap)) {
|
||||
return 7;
|
||||
}
|
||||
if ((243 + leap) <= day && day < (273 + leap)) {
|
||||
return 8;
|
||||
}
|
||||
if ((273 + leap) <= day && day < (304 + leap)) {
|
||||
return 9;
|
||||
}
|
||||
if ((304 + leap) <= day && day < (334 + leap)) {
|
||||
return 10;
|
||||
}
|
||||
if ((334 + leap) <= day && day < (365 + leap)) {
|
||||
return 11;
|
||||
}
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.5
|
||||
DateFromTime: function DateFromTime(t) {
|
||||
var m = this.MonthFromTime(t);
|
||||
var d = this.DayWithinYear(t);
|
||||
if (m === 0) {
|
||||
return d + 1;
|
||||
}
|
||||
if (m === 1) {
|
||||
return d - 30;
|
||||
}
|
||||
var leap = this.InLeapYear(t);
|
||||
if (m === 2) {
|
||||
return d - 58 - leap;
|
||||
}
|
||||
if (m === 3) {
|
||||
return d - 89 - leap;
|
||||
}
|
||||
if (m === 4) {
|
||||
return d - 119 - leap;
|
||||
}
|
||||
if (m === 5) {
|
||||
return d - 150 - leap;
|
||||
}
|
||||
if (m === 6) {
|
||||
return d - 180 - leap;
|
||||
}
|
||||
if (m === 7) {
|
||||
return d - 211 - leap;
|
||||
}
|
||||
if (m === 8) {
|
||||
return d - 242 - leap;
|
||||
}
|
||||
if (m === 9) {
|
||||
return d - 272 - leap;
|
||||
}
|
||||
if (m === 10) {
|
||||
return d - 303 - leap;
|
||||
}
|
||||
if (m === 11) {
|
||||
return d - 333 - leap;
|
||||
}
|
||||
throw new $EvalError('Assertion failed: MonthFromTime returned an impossible value: ' + m);
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.12
|
||||
MakeDay: function MakeDay(year, month, date) {
|
||||
if (!$isFinite(year) || !$isFinite(month) || !$isFinite(date)) {
|
||||
return NaN;
|
||||
}
|
||||
var y = this.ToInteger(year);
|
||||
var m = this.ToInteger(month);
|
||||
var dt = this.ToInteger(date);
|
||||
var ym = y + $floor(m / 12);
|
||||
var mn = mod(m, 12);
|
||||
var t = $DateUTC(ym, mn, 1);
|
||||
if (this.YearFromTime(t) !== ym || this.MonthFromTime(t) !== mn || this.DateFromTime(t) !== 1) {
|
||||
return NaN;
|
||||
}
|
||||
return this.Day(t) + dt - 1;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.13
|
||||
MakeDate: function MakeDate(day, time) {
|
||||
if (!$isFinite(day) || !$isFinite(time)) {
|
||||
return NaN;
|
||||
}
|
||||
return (day * msPerDay) + time;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.11
|
||||
MakeTime: function MakeTime(hour, min, sec, ms) {
|
||||
if (!$isFinite(hour) || !$isFinite(min) || !$isFinite(sec) || !$isFinite(ms)) {
|
||||
return NaN;
|
||||
}
|
||||
var h = this.ToInteger(hour);
|
||||
var m = this.ToInteger(min);
|
||||
var s = this.ToInteger(sec);
|
||||
var milli = this.ToInteger(ms);
|
||||
var t = (h * msPerHour) + (m * msPerMinute) + (s * msPerSecond) + milli;
|
||||
return t;
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.14
|
||||
TimeClip: function TimeClip(time) {
|
||||
if (!$isFinite(time) || $abs(time) > 8.64e15) {
|
||||
return NaN;
|
||||
}
|
||||
return $Number(new $Date(this.ToNumber(time)));
|
||||
},
|
||||
|
||||
// https://ecma-international.org/ecma-262/5.1/#sec-5.2
|
||||
modulo: function modulo(x, y) {
|
||||
return mod(x, y);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
65
node_modules/es-abstract/helpers/assertRecord.js
generated
vendored
65
node_modules/es-abstract/helpers/assertRecord.js
generated
vendored
@@ -8,42 +8,41 @@ var $SyntaxError = GetIntrinsic('%SyntaxError%');
|
||||
var has = require('has');
|
||||
|
||||
var predicates = {
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
|
||||
'Property Descriptor': function isPropertyDescriptor(ES, Desc) {
|
||||
if (ES.Type(Desc) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
var allowed = {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': true,
|
||||
'[[Get]]': true,
|
||||
'[[Set]]': true,
|
||||
'[[Value]]': true,
|
||||
'[[Writable]]': true
|
||||
};
|
||||
// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
|
||||
'Property Descriptor': function isPropertyDescriptor(ES, Desc) {
|
||||
if (ES.Type(Desc) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
var allowed = {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': true,
|
||||
'[[Get]]': true,
|
||||
'[[Set]]': true,
|
||||
'[[Value]]': true,
|
||||
'[[Writable]]': true
|
||||
};
|
||||
|
||||
for (var key in Desc) { // eslint-disable-line
|
||||
if (has(Desc, key) && !allowed[key]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (var key in Desc) { // eslint-disable-line
|
||||
if (has(Desc, key) && !allowed[key]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
var isData = has(Desc, '[[Value]]');
|
||||
var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
|
||||
if (isData && IsAccessor) {
|
||||
throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
|
||||
}
|
||||
return true;
|
||||
}
|
||||
var isData = has(Desc, '[[Value]]');
|
||||
var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
|
||||
if (isData && IsAccessor) {
|
||||
throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = function assertRecord(ES, recordType, argumentName, value) {
|
||||
var predicate = predicates[recordType];
|
||||
if (typeof predicate !== 'function') {
|
||||
throw new $SyntaxError('unknown record type: ' + recordType);
|
||||
}
|
||||
if (!predicate(ES, value)) {
|
||||
throw new $TypeError(argumentName + ' must be a ' + recordType);
|
||||
}
|
||||
console.log(predicate(ES, value), value);
|
||||
var predicate = predicates[recordType];
|
||||
if (typeof predicate !== 'function') {
|
||||
throw new $SyntaxError('unknown record type: ' + recordType);
|
||||
}
|
||||
if (!predicate(ES, value)) {
|
||||
throw new $TypeError(argumentName + ' must be a ' + recordType);
|
||||
}
|
||||
};
|
||||
|
||||
10
node_modules/es-abstract/helpers/assign.js
generated
vendored
10
node_modules/es-abstract/helpers/assign.js
generated
vendored
@@ -1,13 +1,17 @@
|
||||
var bind = require('function-bind');
|
||||
var has = bind.call(Function.call, Object.prototype.hasOwnProperty);
|
||||
'use strict';
|
||||
|
||||
var $assign = Object.assign;
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var has = require('has');
|
||||
|
||||
var $assign = GetIntrinsic('%Object%').assign;
|
||||
|
||||
module.exports = function assign(target, source) {
|
||||
if ($assign) {
|
||||
return $assign(target, source);
|
||||
}
|
||||
|
||||
// eslint-disable-next-line no-restricted-syntax
|
||||
for (var key in source) {
|
||||
if (has(source, key)) {
|
||||
target[key] = source[key];
|
||||
|
||||
17
node_modules/es-abstract/helpers/callBind.js
generated
vendored
Normal file
17
node_modules/es-abstract/helpers/callBind.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
var bind = require('function-bind');
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var $Function = GetIntrinsic('%Function%');
|
||||
var $apply = $Function.apply;
|
||||
var $call = $Function.call;
|
||||
|
||||
module.exports = function callBind() {
|
||||
return bind.apply($call, arguments);
|
||||
};
|
||||
|
||||
module.exports.apply = function applyBind() {
|
||||
return bind.apply($apply, arguments);
|
||||
};
|
||||
15
node_modules/es-abstract/helpers/callBound.js
generated
vendored
Normal file
15
node_modules/es-abstract/helpers/callBound.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var callBind = require('./callBind');
|
||||
|
||||
var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));
|
||||
|
||||
module.exports = function callBoundIntrinsic(name, allowMissing) {
|
||||
var intrinsic = GetIntrinsic(name, !!allowMissing);
|
||||
if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {
|
||||
return callBind(intrinsic);
|
||||
}
|
||||
return intrinsic;
|
||||
};
|
||||
10
node_modules/es-abstract/helpers/every.js
generated
vendored
Normal file
10
node_modules/es-abstract/helpers/every.js
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = function every(array, predicate) {
|
||||
for (var i = 0; i < array.length; i += 1) {
|
||||
if (!predicate(array[i], i, array)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
2
node_modules/es-abstract/helpers/forEach.js
generated
vendored
2
node_modules/es-abstract/helpers/forEach.js
generated
vendored
@@ -2,6 +2,6 @@
|
||||
|
||||
module.exports = function forEach(array, callback) {
|
||||
for (var i = 0; i < array.length; i += 1) {
|
||||
callback(array[i], i, array);
|
||||
callback(array[i], i, array); // eslint-disable-line callback-return
|
||||
}
|
||||
};
|
||||
|
||||
10
node_modules/es-abstract/helpers/getInferredName.js
generated
vendored
Normal file
10
node_modules/es-abstract/helpers/getInferredName.js
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
'use strict';
|
||||
|
||||
var getInferredName;
|
||||
try {
|
||||
// eslint-disable-next-line no-new-func
|
||||
getInferredName = Function('s', 'return { [s]() {} }[s].name;');
|
||||
} catch (e) {}
|
||||
|
||||
var inferred = function () {};
|
||||
module.exports = getInferredName && inferred.name === 'inferred' ? getInferredName : null;
|
||||
46
node_modules/es-abstract/helpers/getIteratorMethod.js
generated
vendored
Normal file
46
node_modules/es-abstract/helpers/getIteratorMethod.js
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
'use strict';
|
||||
|
||||
var hasSymbols = require('has-symbols')();
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
var callBound = require('./callBound');
|
||||
|
||||
var $iterator = GetIntrinsic('%Symbol.iterator%', true);
|
||||
var $arraySlice = callBound('Array.prototype.slice');
|
||||
var $arrayJoin = callBound('Array.prototype.join');
|
||||
|
||||
module.exports = function getIteratorMethod(ES, iterable) {
|
||||
var usingIterator;
|
||||
if (hasSymbols) {
|
||||
usingIterator = ES.GetMethod(iterable, $iterator);
|
||||
} else if (ES.IsArray(iterable)) {
|
||||
usingIterator = function () {
|
||||
var i = -1;
|
||||
var arr = this; // eslint-disable-line no-invalid-this
|
||||
return {
|
||||
next: function () {
|
||||
i += 1;
|
||||
return {
|
||||
done: i >= arr.length,
|
||||
value: arr[i]
|
||||
};
|
||||
}
|
||||
};
|
||||
};
|
||||
} else if (ES.Type(iterable) === 'String') {
|
||||
usingIterator = function () {
|
||||
var i = 0;
|
||||
return {
|
||||
next: function () {
|
||||
var nextIndex = ES.AdvanceStringIndex(iterable, i, true);
|
||||
var value = $arrayJoin($arraySlice(iterable, i, nextIndex), '');
|
||||
i = nextIndex;
|
||||
return {
|
||||
done: nextIndex > iterable.length,
|
||||
value: value
|
||||
};
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
return usingIterator;
|
||||
};
|
||||
15
node_modules/es-abstract/helpers/getProto.js
generated
vendored
Normal file
15
node_modules/es-abstract/helpers/getProto.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var originalGetProto = GetIntrinsic('%Object.getPrototypeOf%', true);
|
||||
var $ArrayProto = GetIntrinsic('%Array.prototype%');
|
||||
|
||||
module.exports = originalGetProto || (
|
||||
// eslint-disable-next-line no-proto
|
||||
[].__proto__ === $ArrayProto
|
||||
? function (O) {
|
||||
return O.__proto__; // eslint-disable-line no-proto
|
||||
}
|
||||
: null
|
||||
);
|
||||
30
node_modules/es-abstract/helpers/getSymbolDescription.js
generated
vendored
Normal file
30
node_modules/es-abstract/helpers/getSymbolDescription.js
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var callBound = require('./callBound');
|
||||
|
||||
var $SyntaxError = GetIntrinsic('%SyntaxError%');
|
||||
var symToStr = callBound('Symbol.prototype.toString', true);
|
||||
|
||||
var getInferredName = require('./getInferredName');
|
||||
|
||||
module.exports = function getSymbolDescription(symbol) {
|
||||
if (!symToStr) {
|
||||
throw new $SyntaxError('Symbols are not supported in this environment');
|
||||
}
|
||||
var str = symToStr(symbol); // will throw if not a symbol
|
||||
|
||||
if (getInferredName) {
|
||||
var name = getInferredName(symbol);
|
||||
if (name === '') { return; }
|
||||
// eslint-disable-next-line consistent-return
|
||||
return name.slice(1, -1); // name.slice('['.length, -']'.length);
|
||||
}
|
||||
|
||||
var desc = str.slice(7, -1); // str.slice('Symbol('.length, -')'.length);
|
||||
if (desc) {
|
||||
// eslint-disable-next-line consistent-return
|
||||
return desc;
|
||||
}
|
||||
};
|
||||
2
node_modules/es-abstract/helpers/isFinite.js
generated
vendored
2
node_modules/es-abstract/helpers/isFinite.js
generated
vendored
@@ -1,3 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
var $isNaN = Number.isNaN || function (a) { return a !== a; };
|
||||
|
||||
module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };
|
||||
|
||||
2
node_modules/es-abstract/helpers/isNaN.js
generated
vendored
2
node_modules/es-abstract/helpers/isNaN.js
generated
vendored
@@ -1,3 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = Number.isNaN || function isNaN(a) {
|
||||
return a !== a;
|
||||
};
|
||||
|
||||
13
node_modules/es-abstract/helpers/isPrefixOf.js
generated
vendored
Normal file
13
node_modules/es-abstract/helpers/isPrefixOf.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict';
|
||||
|
||||
var $strSlice = require('../helpers/callBound')('String.prototype.slice');
|
||||
|
||||
module.exports = function isPrefixOf(prefix, string) {
|
||||
if (prefix === string) {
|
||||
return true;
|
||||
}
|
||||
if (prefix.length > string.length) {
|
||||
return false;
|
||||
}
|
||||
return $strSlice(string, 0, prefix.length) === prefix;
|
||||
};
|
||||
2
node_modules/es-abstract/helpers/isPrimitive.js
generated
vendored
2
node_modules/es-abstract/helpers/isPrimitive.js
generated
vendored
@@ -1,3 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = function isPrimitive(value) {
|
||||
return value === null || (typeof value !== 'function' && typeof value !== 'object');
|
||||
};
|
||||
|
||||
31
node_modules/es-abstract/helpers/isPropertyDescriptor.js
generated
vendored
Normal file
31
node_modules/es-abstract/helpers/isPropertyDescriptor.js
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var has = require('has');
|
||||
var $TypeError = GetIntrinsic('%TypeError%');
|
||||
|
||||
module.exports = function IsPropertyDescriptor(ES, Desc) {
|
||||
if (ES.Type(Desc) !== 'Object') {
|
||||
return false;
|
||||
}
|
||||
var allowed = {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': true,
|
||||
'[[Get]]': true,
|
||||
'[[Set]]': true,
|
||||
'[[Value]]': true,
|
||||
'[[Writable]]': true
|
||||
};
|
||||
|
||||
for (var key in Desc) { // eslint-disable-line
|
||||
if (has(Desc, key) && !allowed[key]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (ES.IsDataDescriptor(Desc) && ES.IsAccessorDescriptor(Desc)) {
|
||||
throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
|
||||
}
|
||||
return true;
|
||||
};
|
||||
20
node_modules/es-abstract/helpers/isSamePropertyDescriptor.js
generated
vendored
Normal file
20
node_modules/es-abstract/helpers/isSamePropertyDescriptor.js
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
'use strict';
|
||||
|
||||
var every = require('./every');
|
||||
|
||||
module.exports = function isSamePropertyDescriptor(ES, D1, D2) {
|
||||
var fields = [
|
||||
'[[Configurable]]',
|
||||
'[[Enumerable]]',
|
||||
'[[Get]]',
|
||||
'[[Set]]',
|
||||
'[[Value]]',
|
||||
'[[Writable]]'
|
||||
];
|
||||
return every(fields, function (field) {
|
||||
if ((field in D1) !== (field in D2)) {
|
||||
return false;
|
||||
}
|
||||
return ES.SameValue(D1[field], D2[field]);
|
||||
});
|
||||
};
|
||||
8
node_modules/es-abstract/helpers/maxSafeInteger.js
generated
vendored
Normal file
8
node_modules/es-abstract/helpers/maxSafeInteger.js
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var $Math = GetIntrinsic('%Math%');
|
||||
var $Number = GetIntrinsic('%Number%');
|
||||
|
||||
module.exports = $Number.MAX_SAFE_INTEGER || $Math.pow(2, 53) - 1;
|
||||
2
node_modules/es-abstract/helpers/mod.js
generated
vendored
2
node_modules/es-abstract/helpers/mod.js
generated
vendored
@@ -1,3 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = function mod(number, modulo) {
|
||||
var remain = number % modulo;
|
||||
return Math.floor(remain >= 0 ? remain : remain + modulo);
|
||||
|
||||
11
node_modules/es-abstract/helpers/regexTester.js
generated
vendored
Normal file
11
node_modules/es-abstract/helpers/regexTester.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var $test = GetIntrinsic('RegExp.prototype.test');
|
||||
|
||||
var callBind = require('./callBind');
|
||||
|
||||
module.exports = function regexTester(regex) {
|
||||
return callBind($test, regex);
|
||||
};
|
||||
16
node_modules/es-abstract/helpers/setProto.js
generated
vendored
Normal file
16
node_modules/es-abstract/helpers/setProto.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
'use strict';
|
||||
|
||||
var GetIntrinsic = require('../GetIntrinsic');
|
||||
|
||||
var originalSetProto = GetIntrinsic('%Object.setPrototypeOf%', true);
|
||||
var $ArrayProto = GetIntrinsic('%Array.prototype%');
|
||||
|
||||
module.exports = originalSetProto || (
|
||||
// eslint-disable-next-line no-proto, no-negated-condition
|
||||
[].__proto__ !== $ArrayProto
|
||||
? null
|
||||
: function (O, proto) {
|
||||
O.__proto__ = proto; // eslint-disable-line no-proto
|
||||
return O;
|
||||
}
|
||||
);
|
||||
2
node_modules/es-abstract/helpers/sign.js
generated
vendored
2
node_modules/es-abstract/helpers/sign.js
generated
vendored
@@ -1,3 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = function sign(number) {
|
||||
return number >= 0 ? 1 : -1;
|
||||
};
|
||||
|
||||
4
node_modules/es-abstract/index.js
generated
vendored
4
node_modules/es-abstract/index.js
generated
vendored
@@ -7,6 +7,7 @@ var ES2015 = require('./es2015');
|
||||
var ES2016 = require('./es2016');
|
||||
var ES2017 = require('./es2017');
|
||||
var ES2018 = require('./es2018');
|
||||
var ES2019 = require('./es2019');
|
||||
|
||||
var ES = {
|
||||
ES5: ES5,
|
||||
@@ -15,7 +16,8 @@ var ES = {
|
||||
ES7: ES2016,
|
||||
ES2016: ES2016,
|
||||
ES2017: ES2017,
|
||||
ES2018: ES2018
|
||||
ES2018: ES2018,
|
||||
ES2019: ES2019
|
||||
};
|
||||
assign(ES, ES5);
|
||||
delete ES.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible
|
||||
|
||||
79
node_modules/es-abstract/operations/2015.js
generated
vendored
79
node_modules/es-abstract/operations/2015.js
generated
vendored
@@ -1,79 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type',
|
||||
IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isaccessordescriptor',
|
||||
IsDataDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isdatadescriptor',
|
||||
IsGenericDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isgenericdescriptor',
|
||||
FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-frompropertydescriptor',
|
||||
ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-topropertydescriptor',
|
||||
CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor',
|
||||
ToPrimitive: 'https://ecma-international.org/ecma-262/6.0/#sec-toprimitive',
|
||||
ToBoolean: 'https://ecma-international.org/ecma-262/6.0/#sec-toboolean',
|
||||
ToNumber: 'https://ecma-international.org/ecma-262/6.0/#sec-tonumber',
|
||||
ToInteger: 'https://ecma-international.org/ecma-262/6.0/#sec-tointeger',
|
||||
ToInt32: 'https://ecma-international.org/ecma-262/6.0/#sec-toint32',
|
||||
ToUint32: 'https://ecma-international.org/ecma-262/6.0/#sec-touint32',
|
||||
ToInt16: 'https://ecma-international.org/ecma-262/6.0/#sec-toint16',
|
||||
ToUint16: 'https://ecma-international.org/ecma-262/6.0/#sec-touint16',
|
||||
ToInt8: 'https://ecma-international.org/ecma-262/6.0/#sec-toint8',
|
||||
ToUint8: 'https://ecma-international.org/ecma-262/6.0/#sec-touint8',
|
||||
ToUint8Clamp: 'https://ecma-international.org/ecma-262/6.0/#sec-touint8clamp',
|
||||
ToString: 'https://ecma-international.org/ecma-262/6.0/#sec-tostring',
|
||||
ToObject: 'https://ecma-international.org/ecma-262/6.0/#sec-toobject',
|
||||
ToPropertyKey: 'https://ecma-international.org/ecma-262/6.0/#sec-topropertykey',
|
||||
ToLength: 'https://ecma-international.org/ecma-262/6.0/#sec-tolength',
|
||||
CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring',
|
||||
RequireObjectCoercible: 'https://ecma-international.org/ecma-262/6.0/#sec-requireobjectcoercible',
|
||||
IsArray: 'https://ecma-international.org/ecma-262/6.0/#sec-isarray',
|
||||
IsCallable: 'https://ecma-international.org/ecma-262/6.0/#sec-iscallable',
|
||||
IsConstructor: 'https://ecma-international.org/ecma-262/6.0/#sec-isconstructor',
|
||||
IsExtensible: 'https://ecma-international.org/ecma-262/6.0/#sec-isextensible-o',
|
||||
IsInteger: 'https://ecma-international.org/ecma-262/6.0/#sec-isinteger',
|
||||
IsPropertyKey: 'https://ecma-international.org/ecma-262/6.0/#sec-ispropertykey',
|
||||
IsRegExp: 'https://ecma-international.org/ecma-262/6.0/#sec-isregexp',
|
||||
SameValue: 'https://ecma-international.org/ecma-262/6.0/#sec-samevalue',
|
||||
SameValueZero: 'https://ecma-international.org/ecma-262/6.0/#sec-samevaluezero',
|
||||
Get: 'https://ecma-international.org/ecma-262/6.0/#sec-get-o-p',
|
||||
GetV: 'https://ecma-international.org/ecma-262/6.0/#sec-getv',
|
||||
Set: 'https://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw',
|
||||
CreateDataProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-createdataproperty',
|
||||
CreateMethodProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-createmethodproperty',
|
||||
CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow',
|
||||
DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow',
|
||||
DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-deletepropertyorthrow',
|
||||
GetMethod: 'https://ecma-international.org/ecma-262/6.0/#sec-getmethod',
|
||||
HasProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-hasproperty',
|
||||
HasOwnProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-hasownproperty',
|
||||
Call: 'https://ecma-international.org/ecma-262/6.0/#sec-call',
|
||||
Construct: 'https://ecma-international.org/ecma-262/6.0/#sec-construct',
|
||||
SetIntegrityLevel: 'https://ecma-international.org/ecma-262/6.0/#sec-setintegritylevel',
|
||||
TestIntegrityLevel: 'https://ecma-international.org/ecma-262/6.0/#sec-testintegritylevel',
|
||||
CreateArrayFromList: 'https://ecma-international.org/ecma-262/6.0/#sec-createarrayfromlist',
|
||||
CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/6.0/#sec-createlistfromarraylike',
|
||||
Invoke: 'https://ecma-international.org/ecma-262/6.0/#sec-invoke',
|
||||
OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/6.0/#sec-ordinaryhasinstance',
|
||||
SpeciesConstructor: 'https://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor',
|
||||
EnumerableOwnNames: 'https://ecma-international.org/ecma-262/6.0/#sec-enumerableownnames',
|
||||
GetIterator: 'https://ecma-international.org/ecma-262/6.0/#sec-getiterator',
|
||||
IteratorNext: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratornext',
|
||||
IteratorComplete: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete',
|
||||
IteratorValue: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue',
|
||||
IteratorStep: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorstep',
|
||||
IteratorClose: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorclose',
|
||||
CreateIterResultObject: 'https://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject',
|
||||
CreateListIterator: 'https://ecma-international.org/ecma-262/6.0/#sec-createlistiterator',
|
||||
Type: 'https://ecma-international.org/ecma-262/6.0/#sec-ecmascript-language-types',
|
||||
thisBooleanValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-boolean-prototype-object',
|
||||
thisNumberValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-number-prototype-object',
|
||||
thisTimeValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-date-prototype-object',
|
||||
thisStringValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-string-prototype-object',
|
||||
RegExpExec: 'https://ecma-international.org/ecma-262/6.0/#sec-regexpexec',
|
||||
RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/6.0/#sec-regexpbuiltinexec',
|
||||
IsConcatSpreadable: 'https://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable',
|
||||
IsPromise: 'https://ecma-international.org/ecma-262/6.0/#sec-ispromise',
|
||||
ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate',
|
||||
ObjectCreate: 'https://ecma-international.org/ecma-262/6.0/#sec-objectcreate',
|
||||
AdvanceStringIndex: 'https://ecma-international.org/ecma-262/6.0/#sec-advancestringindex',
|
||||
NormalCompletion: 'https://ecma-international.org/ecma-262/6.0/#sec-normalcompletion'
|
||||
};
|
||||
283
node_modules/es-abstract/operations/2016.js
generated
vendored
283
node_modules/es-abstract/operations/2016.js
generated
vendored
@@ -1,283 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type', // not actually an abstract op
|
||||
|
||||
abs: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
|
||||
'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-abstract-equality-comparison',
|
||||
'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-abstract-relational-comparison',
|
||||
AddRestrictedFunctionProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-addrestrictedfunctionproperties',
|
||||
AdvanceStringIndex: 'https://ecma-international.org/ecma-262/7.0/#sec-advancestringindex',
|
||||
AllocateArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatearraybuffer',
|
||||
AllocateTypedArray: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatetypedarray',
|
||||
AllocateTypedArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatetypedarraybuffer',
|
||||
ArrayCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-arraycreate',
|
||||
ArraySetLength: 'https://ecma-international.org/ecma-262/7.0/#sec-arraysetlength',
|
||||
ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-arrayspeciescreate',
|
||||
BlockDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-blockdeclarationinstantiation',
|
||||
BoundFunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-boundfunctioncreate',
|
||||
Call: 'https://ecma-international.org/ecma-262/7.0/#sec-call',
|
||||
Canonicalize: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-canonicalize-ch',
|
||||
CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/7.0/#sec-canonicalnumericindexstring',
|
||||
CharacterRange: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-characterrange-abstract-operation',
|
||||
CharacterRangeOrUnion: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-characterrangeorunion-abstract-operation',
|
||||
CharacterSetMatcher: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-charactersetmatcher-abstract-operation',
|
||||
CloneArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-clonearraybuffer',
|
||||
CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-completepropertydescriptor',
|
||||
Completion: 'https://ecma-international.org/ecma-262/7.0/#sec-completion-record-specification-type',
|
||||
Construct: 'https://ecma-international.org/ecma-262/7.0/#sec-construct',
|
||||
CopyDataBlockBytes: 'https://ecma-international.org/ecma-262/7.0/#sec-copydatablockbytes',
|
||||
CreateArrayFromList: 'https://ecma-international.org/ecma-262/7.0/#sec-createarrayfromlist',
|
||||
CreateArrayIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createarrayiterator',
|
||||
CreateBuiltinFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-createbuiltinfunction',
|
||||
CreateByteDataBlock: 'https://ecma-international.org/ecma-262/7.0/#sec-createbytedatablock',
|
||||
CreateDataProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-createdataproperty',
|
||||
CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-createdatapropertyorthrow',
|
||||
CreateDynamicFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-createdynamicfunction',
|
||||
CreateHTML: 'https://ecma-international.org/ecma-262/7.0/#sec-createhtml',
|
||||
CreateIntrinsics: 'https://ecma-international.org/ecma-262/7.0/#sec-createintrinsics',
|
||||
CreateIterResultObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createiterresultobject',
|
||||
CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/7.0/#sec-createlistfromarraylike',
|
||||
CreateListIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createlistiterator',
|
||||
CreateMapIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createmapiterator',
|
||||
CreateMappedArgumentsObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createmappedargumentsobject',
|
||||
CreateMethodProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-createmethodproperty',
|
||||
CreatePerIterationEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-createperiterationenvironment',
|
||||
CreateRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-createrealm',
|
||||
CreateResolvingFunctions: 'https://ecma-international.org/ecma-262/7.0/#sec-createresolvingfunctions',
|
||||
CreateSetIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createsetiterator',
|
||||
CreateStringIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createstringiterator',
|
||||
CreateUnmappedArgumentsObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createunmappedargumentsobject',
|
||||
DateFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-date-number',
|
||||
Day: 'https://ecma-international.org/ecma-262/7.0/#sec-day-number-and-time-within-day',
|
||||
DayFromYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
|
||||
DaysInYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
|
||||
DayWithinYear: 'https://ecma-international.org/ecma-262/7.0/#sec-month-number',
|
||||
Decode: 'https://ecma-international.org/ecma-262/7.0/#sec-decode',
|
||||
DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-definepropertyorthrow',
|
||||
DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-deletepropertyorthrow',
|
||||
DetachArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-detacharraybuffer',
|
||||
Encode: 'https://ecma-international.org/ecma-262/7.0/#sec-encode',
|
||||
EnqueueJob: 'https://ecma-international.org/ecma-262/7.0/#sec-enqueuejob',
|
||||
EnumerableOwnNames: 'https://ecma-international.org/ecma-262/7.0/#sec-enumerableownnames',
|
||||
EnumerateObjectProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-enumerate-object-properties',
|
||||
EscapeRegExpPattern: 'https://ecma-international.org/ecma-262/7.0/#sec-escaperegexppattern',
|
||||
EvalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-evaldeclarationinstantiation',
|
||||
EvaluateCall: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatecall',
|
||||
EvaluateDirectCall: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatedirectcall',
|
||||
EvaluateNew: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatenew',
|
||||
floor: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
|
||||
ForBodyEvaluation: 'https://ecma-international.org/ecma-262/7.0/#sec-forbodyevaluation',
|
||||
'ForIn/OfBodyEvaluation': 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset',
|
||||
'ForIn/OfHeadEvaluation': 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-forin-div-ofheadevaluation-tdznames-expr-iterationkind',
|
||||
FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-frompropertydescriptor',
|
||||
FulfillPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-fulfillpromise',
|
||||
FunctionAllocate: 'https://ecma-international.org/ecma-262/7.0/#sec-functionallocate',
|
||||
FunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-functioncreate',
|
||||
FunctionDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-functiondeclarationinstantiation',
|
||||
FunctionInitialize: 'https://ecma-international.org/ecma-262/7.0/#sec-functioninitialize',
|
||||
GeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorfunctioncreate',
|
||||
GeneratorResume: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorresume',
|
||||
GeneratorResumeAbrupt: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorresumeabrupt',
|
||||
GeneratorStart: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorstart',
|
||||
GeneratorValidate: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorvalidate',
|
||||
GeneratorYield: 'https://ecma-international.org/ecma-262/7.0/#sec-generatoryield',
|
||||
Get: 'https://ecma-international.org/ecma-262/7.0/#sec-get-o-p',
|
||||
GetActiveScriptOrModule: 'https://ecma-international.org/ecma-262/7.0/#sec-getactivescriptormodule',
|
||||
GetFunctionRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-getfunctionrealm',
|
||||
GetGlobalObject: 'https://ecma-international.org/ecma-262/7.0/#sec-getglobalobject',
|
||||
GetIdentifierReference: 'https://ecma-international.org/ecma-262/7.0/#sec-getidentifierreference',
|
||||
GetIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-getiterator',
|
||||
GetMethod: 'https://ecma-international.org/ecma-262/7.0/#sec-getmethod',
|
||||
GetModuleNamespace: 'https://ecma-international.org/ecma-262/7.0/#sec-getmodulenamespace',
|
||||
GetNewTarget: 'https://ecma-international.org/ecma-262/7.0/#sec-getnewtarget',
|
||||
GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/7.0/#sec-getownpropertykeys',
|
||||
GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-getprototypefromconstructor',
|
||||
GetSubstitution: 'https://ecma-international.org/ecma-262/7.0/#sec-getsubstitution',
|
||||
GetSuperConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-getsuperconstructor',
|
||||
GetTemplateObject: 'https://ecma-international.org/ecma-262/7.0/#sec-gettemplateobject',
|
||||
GetThisEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-getthisenvironment',
|
||||
GetThisValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getthisvalue',
|
||||
GetV: 'https://ecma-international.org/ecma-262/7.0/#sec-getv',
|
||||
GetValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getvalue',
|
||||
GetValueFromBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-getvaluefrombuffer',
|
||||
GetViewValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getviewvalue',
|
||||
GlobalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-globaldeclarationinstantiation',
|
||||
HasOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-hasownproperty',
|
||||
HasProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-hasproperty',
|
||||
HostPromiseRejectionTracker: 'https://ecma-international.org/ecma-262/7.0/#sec-host-promise-rejection-tracker',
|
||||
HostReportErrors: 'https://ecma-international.org/ecma-262/7.0/#sec-host-report-errors',
|
||||
HostResolveImportedModule: 'https://ecma-international.org/ecma-262/7.0/#sec-hostresolveimportedmodule',
|
||||
HourFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
HoursPerDay: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
IfAbruptRejectPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-ifabruptrejectpromise',
|
||||
ImportedLocalNames: 'https://ecma-international.org/ecma-262/7.0/#sec-importedlocalnames',
|
||||
InitializeBoundName: 'https://ecma-international.org/ecma-262/7.0/#sec-initializeboundname',
|
||||
InitializeHostDefinedRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-initializehostdefinedrealm',
|
||||
InitializeReferencedBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-initializereferencedbinding',
|
||||
InLeapYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
|
||||
InstanceofOperator: 'https://ecma-international.org/ecma-262/7.0/#sec-instanceofoperator',
|
||||
IntegerIndexedElementGet: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedelementget',
|
||||
IntegerIndexedElementSet: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedelementset',
|
||||
IntegerIndexedObjectCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedobjectcreate',
|
||||
InternalizeJSONProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-internalizejsonproperty',
|
||||
Invoke: 'https://ecma-international.org/ecma-262/7.0/#sec-invoke',
|
||||
IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isaccessordescriptor',
|
||||
IsAnonymousFunctionDefinition: 'https://ecma-international.org/ecma-262/7.0/#sec-isanonymousfunctiondefinition',
|
||||
IsArray: 'https://ecma-international.org/ecma-262/7.0/#sec-isarray',
|
||||
IsCallable: 'https://ecma-international.org/ecma-262/7.0/#sec-iscallable',
|
||||
IsCompatiblePropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-iscompatiblepropertydescriptor',
|
||||
IsConcatSpreadable: 'https://ecma-international.org/ecma-262/7.0/#sec-isconcatspreadable',
|
||||
IsConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-isconstructor',
|
||||
IsDataDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isdatadescriptor',
|
||||
IsDetachedBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-isdetachedbuffer',
|
||||
IsExtensible: 'https://ecma-international.org/ecma-262/7.0/#sec-isextensible-o',
|
||||
IsGenericDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isgenericdescriptor',
|
||||
IsInTailPosition: 'https://ecma-international.org/ecma-262/7.0/#sec-isintailposition',
|
||||
IsInteger: 'https://ecma-international.org/ecma-262/7.0/#sec-isinteger',
|
||||
IsLabelledFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-islabelledfunction',
|
||||
IsPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-ispromise',
|
||||
IsPropertyKey: 'https://ecma-international.org/ecma-262/7.0/#sec-ispropertykey',
|
||||
IsRegExp: 'https://ecma-international.org/ecma-262/7.0/#sec-isregexp',
|
||||
IsWordChar: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-iswordchar-abstract-operation',
|
||||
IterableToArrayLike: 'https://ecma-international.org/ecma-262/7.0/#sec-iterabletoarraylike',
|
||||
IteratorClose: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorclose',
|
||||
IteratorComplete: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorcomplete',
|
||||
IteratorNext: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratornext',
|
||||
IteratorStep: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorstep',
|
||||
IteratorValue: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorvalue',
|
||||
LocalTime: 'https://ecma-international.org/ecma-262/7.0/#sec-localtime',
|
||||
LoopContinues: 'https://ecma-international.org/ecma-262/7.0/#sec-loopcontinues',
|
||||
MakeArgGetter: 'https://ecma-international.org/ecma-262/7.0/#sec-makearggetter',
|
||||
MakeArgSetter: 'https://ecma-international.org/ecma-262/7.0/#sec-makeargsetter',
|
||||
MakeClassConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-makeclassconstructor',
|
||||
MakeConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-makeconstructor',
|
||||
MakeDate: 'https://ecma-international.org/ecma-262/7.0/#sec-makedate',
|
||||
MakeDay: 'https://ecma-international.org/ecma-262/7.0/#sec-makeday',
|
||||
MakeMethod: 'https://ecma-international.org/ecma-262/7.0/#sec-makemethod',
|
||||
MakeSuperPropertyReference: 'https://ecma-international.org/ecma-262/7.0/#sec-makesuperpropertyreference',
|
||||
MakeTime: 'https://ecma-international.org/ecma-262/7.0/#sec-maketime',
|
||||
max: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
|
||||
min: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
|
||||
MinFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
MinutesPerHour: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
ModuleNamespaceCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-modulenamespacecreate',
|
||||
modulo: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
|
||||
MonthFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-month-number',
|
||||
msFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
msPerDay: 'https://ecma-international.org/ecma-262/7.0/#sec-day-number-and-time-within-day',
|
||||
msPerHour: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
msPerMinute: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
msPerSecond: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
NewDeclarativeEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newdeclarativeenvironment',
|
||||
NewFunctionEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newfunctionenvironment',
|
||||
NewGlobalEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newglobalenvironment',
|
||||
NewModuleEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newmoduleenvironment',
|
||||
NewObjectEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newobjectenvironment',
|
||||
NewPromiseCapability: 'https://ecma-international.org/ecma-262/7.0/#sec-newpromisecapability',
|
||||
NextJob: 'https://ecma-international.org/ecma-262/7.0/#sec-nextjob-result',
|
||||
NormalCompletion: 'https://ecma-international.org/ecma-262/7.0/#sec-normalcompletion',
|
||||
ObjectCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-objectcreate',
|
||||
ObjectDefineProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-objectdefineproperties',
|
||||
OrdinaryCallBindThis: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycallbindthis',
|
||||
OrdinaryCallEvaluateBody: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycallevaluatebody',
|
||||
OrdinaryCreateFromConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycreatefromconstructor',
|
||||
OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarydefineownproperty',
|
||||
OrdinaryDelete: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarydelete',
|
||||
OrdinaryGet: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryget',
|
||||
OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarygetownproperty',
|
||||
OrdinaryGetPrototypeOf: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarygetprototypeof',
|
||||
OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryhasinstance',
|
||||
OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryhasproperty',
|
||||
OrdinaryIsExtensible: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryisextensible',
|
||||
OrdinaryOwnPropertyKeys: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryownpropertykeys',
|
||||
OrdinaryPreventExtensions: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarypreventextensions',
|
||||
OrdinarySet: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryset',
|
||||
OrdinarySetPrototypeOf: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarysetprototypeof',
|
||||
ParseModule: 'https://ecma-international.org/ecma-262/7.0/#sec-parsemodule',
|
||||
ParseScript: 'https://ecma-international.org/ecma-262/7.0/#sec-parse-script',
|
||||
PerformEval: 'https://ecma-international.org/ecma-262/7.0/#sec-performeval',
|
||||
PerformPromiseAll: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromiseall',
|
||||
PerformPromiseRace: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromiserace',
|
||||
PerformPromiseThen: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromisethen',
|
||||
PrepareForOrdinaryCall: 'https://ecma-international.org/ecma-262/7.0/#sec-prepareforordinarycall',
|
||||
PrepareForTailCall: 'https://ecma-international.org/ecma-262/7.0/#sec-preparefortailcall',
|
||||
PromiseReactionJob: 'https://ecma-international.org/ecma-262/7.0/#sec-promisereactionjob',
|
||||
PromiseResolveThenableJob: 'https://ecma-international.org/ecma-262/7.0/#sec-promiseresolvethenablejob',
|
||||
ProxyCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-proxycreate',
|
||||
PutValue: 'https://ecma-international.org/ecma-262/7.0/#sec-putvalue',
|
||||
QuoteJSONString: 'https://ecma-international.org/ecma-262/7.0/#sec-quotejsonstring',
|
||||
RegExpAlloc: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpalloc',
|
||||
RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpbuiltinexec',
|
||||
RegExpCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpcreate',
|
||||
RegExpExec: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpexec',
|
||||
RegExpInitialize: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpinitialize',
|
||||
RejectPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-rejectpromise',
|
||||
RepeatMatcher: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-repeatmatcher-abstract-operation',
|
||||
RequireObjectCoercible: 'https://ecma-international.org/ecma-262/7.0/#sec-requireobjectcoercible',
|
||||
ResolveBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-resolvebinding',
|
||||
ResolveThisBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-resolvethisbinding',
|
||||
ReturnIfAbrupt: 'https://ecma-international.org/ecma-262/7.0/#sec-returnifabrupt',
|
||||
SameValue: 'https://ecma-international.org/ecma-262/7.0/#sec-samevalue',
|
||||
SameValueNonNumber: 'https://ecma-international.org/ecma-262/7.0/#sec-samevaluenonnumber',
|
||||
SameValueZero: 'https://ecma-international.org/ecma-262/7.0/#sec-samevaluezero',
|
||||
ScriptEvaluation: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-scriptevaluation',
|
||||
ScriptEvaluationJob: 'https://ecma-international.org/ecma-262/7.0/#sec-scriptevaluationjob',
|
||||
SecFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
SecondsPerMinute: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
|
||||
SerializeJSONArray: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonarray',
|
||||
SerializeJSONObject: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonobject',
|
||||
SerializeJSONProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonproperty',
|
||||
Set: 'https://ecma-international.org/ecma-262/7.0/#sec-set-o-p-v-throw',
|
||||
SetDefaultGlobalBindings: 'https://ecma-international.org/ecma-262/7.0/#sec-setdefaultglobalbindings',
|
||||
SetFunctionName: 'https://ecma-international.org/ecma-262/7.0/#sec-setfunctionname',
|
||||
SetIntegrityLevel: 'https://ecma-international.org/ecma-262/7.0/#sec-setintegritylevel',
|
||||
SetRealmGlobalObject: 'https://ecma-international.org/ecma-262/7.0/#sec-setrealmglobalobject',
|
||||
SetValueInBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-setvalueinbuffer',
|
||||
SetViewValue: 'https://ecma-international.org/ecma-262/7.0/#sec-setviewvalue',
|
||||
SortCompare: 'https://ecma-international.org/ecma-262/7.0/#sec-sortcompare',
|
||||
SpeciesConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-speciesconstructor',
|
||||
SplitMatch: 'https://ecma-international.org/ecma-262/7.0/#sec-splitmatch',
|
||||
'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-strict-equality-comparison',
|
||||
StringCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-stringcreate',
|
||||
SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/7.0/#sec-symboldescriptivestring',
|
||||
TestIntegrityLevel: 'https://ecma-international.org/ecma-262/7.0/#sec-testintegritylevel',
|
||||
thisBooleanValue: 'https://ecma-international.org/ecma-262/7.0/#sec-thisbooleanvalue',
|
||||
thisNumberValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-number-prototype-object',
|
||||
thisStringValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-string-prototype-object',
|
||||
thisTimeValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-date-prototype-object',
|
||||
TimeClip: 'https://ecma-international.org/ecma-262/7.0/#sec-timeclip',
|
||||
TimeFromYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
|
||||
TimeWithinDay: 'https://ecma-international.org/ecma-262/7.0/#sec-day-number-and-time-within-day',
|
||||
ToBoolean: 'https://ecma-international.org/ecma-262/7.0/#sec-toboolean',
|
||||
ToDateString: 'https://ecma-international.org/ecma-262/7.0/#sec-todatestring',
|
||||
ToInt16: 'https://ecma-international.org/ecma-262/7.0/#sec-toint16',
|
||||
ToInt32: 'https://ecma-international.org/ecma-262/7.0/#sec-toint32',
|
||||
ToInt8: 'https://ecma-international.org/ecma-262/7.0/#sec-toint8',
|
||||
ToInteger: 'https://ecma-international.org/ecma-262/7.0/#sec-tointeger',
|
||||
ToLength: 'https://ecma-international.org/ecma-262/7.0/#sec-tolength',
|
||||
ToNumber: 'https://ecma-international.org/ecma-262/7.0/#sec-tonumber',
|
||||
ToObject: 'https://ecma-international.org/ecma-262/7.0/#sec-toobject',
|
||||
TopLevelModuleEvaluationJob: 'https://ecma-international.org/ecma-262/7.0/#sec-toplevelmoduleevaluationjob',
|
||||
ToPrimitive: 'https://ecma-international.org/ecma-262/7.0/#sec-toprimitive',
|
||||
ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-topropertydescriptor',
|
||||
ToPropertyKey: 'https://ecma-international.org/ecma-262/7.0/#sec-topropertykey',
|
||||
ToString: 'https://ecma-international.org/ecma-262/7.0/#sec-tostring',
|
||||
'ToString Applied to the Number Type': 'https://ecma-international.org/ecma-262/7.0/#sec-tostring-applied-to-the-number-type',
|
||||
ToUint16: 'https://ecma-international.org/ecma-262/7.0/#sec-touint16',
|
||||
ToUint32: 'https://ecma-international.org/ecma-262/7.0/#sec-touint32',
|
||||
ToUint8: 'https://ecma-international.org/ecma-262/7.0/#sec-touint8',
|
||||
ToUint8Clamp: 'https://ecma-international.org/ecma-262/7.0/#sec-touint8clamp',
|
||||
TriggerPromiseReactions: 'https://ecma-international.org/ecma-262/7.0/#sec-triggerpromisereactions',
|
||||
Type: 'https://ecma-international.org/ecma-262/7.0/#sec-ecmascript-data-types-and-values',
|
||||
TypedArrayCreate: 'https://ecma-international.org/ecma-262/7.0/#typedarray-create',
|
||||
TypedArraySpeciesCreate: 'https://ecma-international.org/ecma-262/7.0/#typedarray-species-create',
|
||||
UpdateEmpty: 'https://ecma-international.org/ecma-262/7.0/#sec-updateempty',
|
||||
UTC: 'https://ecma-international.org/ecma-262/7.0/#sec-utc-t',
|
||||
UTF16Decode: 'https://ecma-international.org/ecma-262/7.0/#sec-utf16decode',
|
||||
UTF16Encoding: 'https://ecma-international.org/ecma-262/7.0/#sec-utf16encoding',
|
||||
ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-validateandapplypropertydescriptor',
|
||||
ValidateTypedArray: 'https://ecma-international.org/ecma-262/7.0/#sec-validatetypedarray',
|
||||
WeekDay: 'https://ecma-international.org/ecma-262/7.0/#sec-week-day',
|
||||
YearFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number'
|
||||
};
|
||||
331
node_modules/es-abstract/operations/2017.js
generated
vendored
331
node_modules/es-abstract/operations/2017.js
generated
vendored
@@ -1,331 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type', // not actually an abstract op
|
||||
|
||||
abs: 'https://ecma-international.org/ecma-262/8.0/#eqn-abs',
|
||||
'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-abstract-equality-comparison',
|
||||
'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-abstract-relational-comparison',
|
||||
AddRestrictedFunctionProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-addrestrictedfunctionproperties',
|
||||
AddWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-addwaiter',
|
||||
AdvanceStringIndex: 'https://ecma-international.org/ecma-262/8.0/#sec-advancestringindex',
|
||||
'agent-order': 'https://ecma-international.org/ecma-262/8.0/#sec-agent-order',
|
||||
AgentCanSuspend: 'https://ecma-international.org/ecma-262/8.0/#sec-agentcansuspend',
|
||||
AgentSignifier: 'https://ecma-international.org/ecma-262/8.0/#sec-agentsignifier',
|
||||
AllocateArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatearraybuffer',
|
||||
AllocateSharedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatesharedarraybuffer',
|
||||
AllocateTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatetypedarray',
|
||||
AllocateTypedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatetypedarraybuffer',
|
||||
ArrayCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-arraycreate',
|
||||
ArraySetLength: 'https://ecma-international.org/ecma-262/8.0/#sec-arraysetlength',
|
||||
ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-arrayspeciescreate',
|
||||
AsyncFunctionAwait: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-await',
|
||||
AsyncFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-create',
|
||||
AsyncFunctionStart: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-start',
|
||||
AtomicLoad: 'https://ecma-international.org/ecma-262/8.0/#sec-atomicload',
|
||||
AtomicReadModifyWrite: 'https://ecma-international.org/ecma-262/8.0/#sec-atomicreadmodifywrite',
|
||||
BlockDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-blockdeclarationinstantiation',
|
||||
BoundFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-boundfunctioncreate',
|
||||
Call: 'https://ecma-international.org/ecma-262/8.0/#sec-call',
|
||||
Canonicalize: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-canonicalize-ch',
|
||||
CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/8.0/#sec-canonicalnumericindexstring',
|
||||
CharacterRange: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-characterrange-abstract-operation',
|
||||
CharacterRangeOrUnion: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-characterrangeorunion-abstract-operation',
|
||||
CharacterSetMatcher: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-charactersetmatcher-abstract-operation',
|
||||
CloneArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-clonearraybuffer',
|
||||
CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-completepropertydescriptor',
|
||||
Completion: 'https://ecma-international.org/ecma-262/8.0/#sec-completion-record-specification-type',
|
||||
ComposeWriteEventBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-composewriteeventbytes',
|
||||
Construct: 'https://ecma-international.org/ecma-262/8.0/#sec-construct',
|
||||
CopyDataBlockBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-copydatablockbytes',
|
||||
CreateArrayFromList: 'https://ecma-international.org/ecma-262/8.0/#sec-createarrayfromlist',
|
||||
CreateArrayIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createarrayiterator',
|
||||
CreateBuiltinFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-createbuiltinfunction',
|
||||
CreateByteDataBlock: 'https://ecma-international.org/ecma-262/8.0/#sec-createbytedatablock',
|
||||
CreateDataProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-createdataproperty',
|
||||
CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-createdatapropertyorthrow',
|
||||
CreateDynamicFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-createdynamicfunction',
|
||||
CreateHTML: 'https://ecma-international.org/ecma-262/8.0/#sec-createhtml',
|
||||
CreateIntrinsics: 'https://ecma-international.org/ecma-262/8.0/#sec-createintrinsics',
|
||||
CreateIterResultObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createiterresultobject',
|
||||
CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/8.0/#sec-createlistfromarraylike',
|
||||
CreateListIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createlistiterator',
|
||||
CreateMapIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createmapiterator',
|
||||
CreateMappedArgumentsObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createmappedargumentsobject',
|
||||
CreateMethodProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-createmethodproperty',
|
||||
CreatePerIterationEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-createperiterationenvironment',
|
||||
CreateRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-createrealm',
|
||||
CreateResolvingFunctions: 'https://ecma-international.org/ecma-262/8.0/#sec-createresolvingfunctions',
|
||||
CreateSetIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createsetiterator',
|
||||
CreateSharedByteDataBlock: 'https://ecma-international.org/ecma-262/8.0/#sec-createsharedbytedatablock',
|
||||
CreateStringIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createstringiterator',
|
||||
CreateUnmappedArgumentsObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createunmappedargumentsobject',
|
||||
DateFromTime: 'https://ecma-international.org/ecma-262/8.0/#sec-date-number',
|
||||
Day: 'https://ecma-international.org/ecma-262/8.0/#eqn-Day',
|
||||
DayFromYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DaysFromYear',
|
||||
DaysInYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DaysInYear',
|
||||
DayWithinYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DayWithinYear',
|
||||
Decode: 'https://ecma-international.org/ecma-262/8.0/#sec-decode',
|
||||
DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-definepropertyorthrow',
|
||||
DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-deletepropertyorthrow',
|
||||
DetachArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-detacharraybuffer',
|
||||
Encode: 'https://ecma-international.org/ecma-262/8.0/#sec-encode',
|
||||
EnqueueJob: 'https://ecma-international.org/ecma-262/8.0/#sec-enqueuejob',
|
||||
EnterCriticalSection: 'https://ecma-international.org/ecma-262/8.0/#sec-entercriticalsection',
|
||||
EnumerableOwnProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-enumerableownproperties',
|
||||
EnumerateObjectProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-enumerate-object-properties',
|
||||
EscapeRegExpPattern: 'https://ecma-international.org/ecma-262/8.0/#sec-escaperegexppattern',
|
||||
EvalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-evaldeclarationinstantiation',
|
||||
EvaluateCall: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatecall',
|
||||
EvaluateDirectCall: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatedirectcall',
|
||||
EvaluateNew: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatenew',
|
||||
EventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-event-set',
|
||||
floor: 'https://ecma-international.org/ecma-262/8.0/#eqn-floor',
|
||||
ForBodyEvaluation: 'https://ecma-international.org/ecma-262/8.0/#sec-forbodyevaluation',
|
||||
'ForIn/OfBodyEvaluation': 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset',
|
||||
'ForIn/OfHeadEvaluation': 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-forin-div-ofheadevaluation-tdznames-expr-iterationkind',
|
||||
FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-frompropertydescriptor',
|
||||
FulfillPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-fulfillpromise',
|
||||
FunctionAllocate: 'https://ecma-international.org/ecma-262/8.0/#sec-functionallocate',
|
||||
FunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-functioncreate',
|
||||
FunctionDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-functiondeclarationinstantiation',
|
||||
FunctionInitialize: 'https://ecma-international.org/ecma-262/8.0/#sec-functioninitialize',
|
||||
GeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorfunctioncreate',
|
||||
GeneratorResume: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorresume',
|
||||
GeneratorResumeAbrupt: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorresumeabrupt',
|
||||
GeneratorStart: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorstart',
|
||||
GeneratorValidate: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorvalidate',
|
||||
GeneratorYield: 'https://ecma-international.org/ecma-262/8.0/#sec-generatoryield',
|
||||
Get: 'https://ecma-international.org/ecma-262/8.0/#sec-get-o-p',
|
||||
GetActiveScriptOrModule: 'https://ecma-international.org/ecma-262/8.0/#sec-getactivescriptormodule',
|
||||
GetBase: 'https://ecma-international.org/ecma-262/8.0/#ao-getbase',
|
||||
GetFunctionRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-getfunctionrealm',
|
||||
GetGlobalObject: 'https://ecma-international.org/ecma-262/8.0/#sec-getglobalobject',
|
||||
GetIdentifierReference: 'https://ecma-international.org/ecma-262/8.0/#sec-getidentifierreference',
|
||||
GetIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-getiterator',
|
||||
GetMethod: 'https://ecma-international.org/ecma-262/8.0/#sec-getmethod',
|
||||
GetModifySetValueInBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-getmodifysetvalueinbuffer',
|
||||
GetModuleNamespace: 'https://ecma-international.org/ecma-262/8.0/#sec-getmodulenamespace',
|
||||
GetNewTarget: 'https://ecma-international.org/ecma-262/8.0/#sec-getnewtarget',
|
||||
GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/8.0/#sec-getownpropertykeys',
|
||||
GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-getprototypefromconstructor',
|
||||
GetReferencedName: 'https://ecma-international.org/ecma-262/8.0/#ao-getreferencedname',
|
||||
GetSubstitution: 'https://ecma-international.org/ecma-262/8.0/#sec-getsubstitution',
|
||||
GetSuperConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-getsuperconstructor',
|
||||
GetTemplateObject: 'https://ecma-international.org/ecma-262/8.0/#sec-gettemplateobject',
|
||||
GetThisEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-getthisenvironment',
|
||||
GetThisValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getthisvalue',
|
||||
GetV: 'https://ecma-international.org/ecma-262/8.0/#sec-getv',
|
||||
GetValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getvalue',
|
||||
GetValueFromBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-getvaluefrombuffer',
|
||||
GetViewValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getviewvalue',
|
||||
GetWaiterList: 'https://ecma-international.org/ecma-262/8.0/#sec-getwaiterlist',
|
||||
GlobalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-globaldeclarationinstantiation',
|
||||
'happens-before': 'https://ecma-international.org/ecma-262/8.0/#sec-happens-before',
|
||||
HasOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-hasownproperty',
|
||||
HasPrimitiveBase: 'https://ecma-international.org/ecma-262/8.0/#ao-hasprimitivebase',
|
||||
HasProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-hasproperty',
|
||||
'host-synchronizes-with': 'https://ecma-international.org/ecma-262/8.0/#sec-host-synchronizes-with',
|
||||
HostEnsureCanCompileStrings: 'https://ecma-international.org/ecma-262/8.0/#sec-hostensurecancompilestrings',
|
||||
HostEventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-hosteventset',
|
||||
HostPromiseRejectionTracker: 'https://ecma-international.org/ecma-262/8.0/#sec-host-promise-rejection-tracker',
|
||||
HostReportErrors: 'https://ecma-international.org/ecma-262/8.0/#sec-host-report-errors',
|
||||
HostResolveImportedModule: 'https://ecma-international.org/ecma-262/8.0/#sec-hostresolveimportedmodule',
|
||||
HourFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-HourFromTime',
|
||||
HoursPerDay: 'https://ecma-international.org/ecma-262/8.0/#eqn-HoursPerDay',
|
||||
IfAbruptRejectPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-ifabruptrejectpromise',
|
||||
ImportedLocalNames: 'https://ecma-international.org/ecma-262/8.0/#sec-importedlocalnames',
|
||||
InitializeBoundName: 'https://ecma-international.org/ecma-262/8.0/#sec-initializeboundname',
|
||||
InitializeHostDefinedRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-initializehostdefinedrealm',
|
||||
InitializeReferencedBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-initializereferencedbinding',
|
||||
InLeapYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-InLeapYear',
|
||||
InstanceofOperator: 'https://ecma-international.org/ecma-262/8.0/#sec-instanceofoperator',
|
||||
IntegerIndexedElementGet: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedelementget',
|
||||
IntegerIndexedElementSet: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedelementset',
|
||||
IntegerIndexedObjectCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedobjectcreate',
|
||||
InternalizeJSONProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-internalizejsonproperty',
|
||||
Invoke: 'https://ecma-international.org/ecma-262/8.0/#sec-invoke',
|
||||
IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isaccessordescriptor',
|
||||
IsAnonymousFunctionDefinition: 'https://ecma-international.org/ecma-262/8.0/#sec-isanonymousfunctiondefinition',
|
||||
IsArray: 'https://ecma-international.org/ecma-262/8.0/#sec-isarray',
|
||||
IsCallable: 'https://ecma-international.org/ecma-262/8.0/#sec-iscallable',
|
||||
IsCompatiblePropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-iscompatiblepropertydescriptor',
|
||||
IsConcatSpreadable: 'https://ecma-international.org/ecma-262/8.0/#sec-isconcatspreadable',
|
||||
IsConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-isconstructor',
|
||||
IsDataDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isdatadescriptor',
|
||||
IsDetachedBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-isdetachedbuffer',
|
||||
IsExtensible: 'https://ecma-international.org/ecma-262/8.0/#sec-isextensible-o',
|
||||
IsGenericDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isgenericdescriptor',
|
||||
IsInTailPosition: 'https://ecma-international.org/ecma-262/8.0/#sec-isintailposition',
|
||||
IsInteger: 'https://ecma-international.org/ecma-262/8.0/#sec-isinteger',
|
||||
IsLabelledFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-islabelledfunction',
|
||||
IsPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-ispromise',
|
||||
IsPropertyKey: 'https://ecma-international.org/ecma-262/8.0/#sec-ispropertykey',
|
||||
IsPropertyReference: 'https://ecma-international.org/ecma-262/8.0/#ao-ispropertyreference',
|
||||
IsRegExp: 'https://ecma-international.org/ecma-262/8.0/#sec-isregexp',
|
||||
IsSharedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-issharedarraybuffer',
|
||||
IsStrictReference: 'https://ecma-international.org/ecma-262/8.0/#ao-isstrictreference',
|
||||
IsSuperReference: 'https://ecma-international.org/ecma-262/8.0/#ao-issuperreference',
|
||||
IsUnresolvableReference: 'https://ecma-international.org/ecma-262/8.0/#ao-isunresolvablereference',
|
||||
IsWordChar: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-iswordchar-abstract-operation',
|
||||
IterableToList: 'https://ecma-international.org/ecma-262/8.0/#sec-iterabletolist',
|
||||
IteratorClose: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorclose',
|
||||
IteratorComplete: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorcomplete',
|
||||
IteratorNext: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratornext',
|
||||
IteratorStep: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorstep',
|
||||
IteratorValue: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorvalue',
|
||||
LeaveCriticalSection: 'https://ecma-international.org/ecma-262/8.0/#sec-leavecriticalsection',
|
||||
LocalTime: 'https://ecma-international.org/ecma-262/8.0/#sec-localtime',
|
||||
LoopContinues: 'https://ecma-international.org/ecma-262/8.0/#sec-loopcontinues',
|
||||
MakeArgGetter: 'https://ecma-international.org/ecma-262/8.0/#sec-makearggetter',
|
||||
MakeArgSetter: 'https://ecma-international.org/ecma-262/8.0/#sec-makeargsetter',
|
||||
MakeClassConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-makeclassconstructor',
|
||||
MakeConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-makeconstructor',
|
||||
MakeDate: 'https://ecma-international.org/ecma-262/8.0/#sec-makedate',
|
||||
MakeDay: 'https://ecma-international.org/ecma-262/8.0/#sec-makeday',
|
||||
MakeMethod: 'https://ecma-international.org/ecma-262/8.0/#sec-makemethod',
|
||||
MakeSuperPropertyReference: 'https://ecma-international.org/ecma-262/8.0/#sec-makesuperpropertyreference',
|
||||
MakeTime: 'https://ecma-international.org/ecma-262/8.0/#sec-maketime',
|
||||
max: 'https://ecma-international.org/ecma-262/8.0/#eqn-max',
|
||||
'memory-order': 'https://ecma-international.org/ecma-262/8.0/#sec-memory-order',
|
||||
min: 'https://ecma-international.org/ecma-262/8.0/#eqn-min',
|
||||
MinFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-MinFromTime',
|
||||
MinutesPerHour: 'https://ecma-international.org/ecma-262/8.0/#eqn-MinutesPerHour',
|
||||
ModuleNamespaceCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-modulenamespacecreate',
|
||||
modulo: 'https://ecma-international.org/ecma-262/8.0/#eqn-modulo',
|
||||
MonthFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-MonthFromTime',
|
||||
msFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-msFromTime',
|
||||
msPerDay: 'https://ecma-international.org/ecma-262/8.0/#eqn-msPerDay',
|
||||
msPerHour: 'https://ecma-international.org/ecma-262/8.0/#eqn-msPerHour',
|
||||
msPerMinute: 'https://ecma-international.org/ecma-262/8.0/#eqn-msPerMinute',
|
||||
msPerSecond: 'https://ecma-international.org/ecma-262/8.0/#eqn-msPerSecond',
|
||||
NewDeclarativeEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newdeclarativeenvironment',
|
||||
NewFunctionEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newfunctionenvironment',
|
||||
NewGlobalEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newglobalenvironment',
|
||||
NewModuleEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newmoduleenvironment',
|
||||
NewObjectEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newobjectenvironment',
|
||||
NewPromiseCapability: 'https://ecma-international.org/ecma-262/8.0/#sec-newpromisecapability',
|
||||
NormalCompletion: 'https://ecma-international.org/ecma-262/8.0/#sec-normalcompletion',
|
||||
NumberToRawBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-numbertorawbytes',
|
||||
ObjectCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-objectcreate',
|
||||
ObjectDefineProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-objectdefineproperties',
|
||||
OrdinaryCallBindThis: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycallbindthis',
|
||||
OrdinaryCallEvaluateBody: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycallevaluatebody',
|
||||
OrdinaryCreateFromConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycreatefromconstructor',
|
||||
OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarydefineownproperty',
|
||||
OrdinaryDelete: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarydelete',
|
||||
OrdinaryGet: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryget',
|
||||
OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarygetownproperty',
|
||||
OrdinaryGetPrototypeOf: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarygetprototypeof',
|
||||
OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryhasinstance',
|
||||
OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryhasproperty',
|
||||
OrdinaryIsExtensible: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryisextensible',
|
||||
OrdinaryOwnPropertyKeys: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryownpropertykeys',
|
||||
OrdinaryPreventExtensions: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarypreventextensions',
|
||||
OrdinarySet: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryset',
|
||||
OrdinarySetPrototypeOf: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarysetprototypeof',
|
||||
OrdinaryToPrimitive: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarytoprimitive',
|
||||
ParseModule: 'https://ecma-international.org/ecma-262/8.0/#sec-parsemodule',
|
||||
ParseScript: 'https://ecma-international.org/ecma-262/8.0/#sec-parse-script',
|
||||
PerformEval: 'https://ecma-international.org/ecma-262/8.0/#sec-performeval',
|
||||
PerformPromiseAll: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromiseall',
|
||||
PerformPromiseRace: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromiserace',
|
||||
PerformPromiseThen: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromisethen',
|
||||
PrepareForOrdinaryCall: 'https://ecma-international.org/ecma-262/8.0/#sec-prepareforordinarycall',
|
||||
PrepareForTailCall: 'https://ecma-international.org/ecma-262/8.0/#sec-preparefortailcall',
|
||||
PromiseReactionJob: 'https://ecma-international.org/ecma-262/8.0/#sec-promisereactionjob',
|
||||
PromiseResolveThenableJob: 'https://ecma-international.org/ecma-262/8.0/#sec-promiseresolvethenablejob',
|
||||
ProxyCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-proxycreate',
|
||||
PutValue: 'https://ecma-international.org/ecma-262/8.0/#sec-putvalue',
|
||||
QuoteJSONString: 'https://ecma-international.org/ecma-262/8.0/#sec-quotejsonstring',
|
||||
RawBytesToNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-rawbytestonumber',
|
||||
'reads-bytes-from': 'https://ecma-international.org/ecma-262/8.0/#sec-reads-bytes-from',
|
||||
'reads-from': 'https://ecma-international.org/ecma-262/8.0/#sec-reads-from',
|
||||
RegExpAlloc: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpalloc',
|
||||
RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpbuiltinexec',
|
||||
RegExpCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpcreate',
|
||||
RegExpExec: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpexec',
|
||||
RegExpInitialize: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpinitialize',
|
||||
RejectPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-rejectpromise',
|
||||
RemoveWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-removewaiter',
|
||||
RemoveWaiters: 'https://ecma-international.org/ecma-262/8.0/#sec-removewaiters',
|
||||
RepeatMatcher: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-repeatmatcher-abstract-operation',
|
||||
RequireObjectCoercible: 'https://ecma-international.org/ecma-262/8.0/#sec-requireobjectcoercible',
|
||||
ResolveBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-resolvebinding',
|
||||
ResolveThisBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-resolvethisbinding',
|
||||
ReturnIfAbrupt: 'https://ecma-international.org/ecma-262/8.0/#sec-returnifabrupt',
|
||||
RunJobs: 'https://ecma-international.org/ecma-262/8.0/#sec-runjobs',
|
||||
SameValue: 'https://ecma-international.org/ecma-262/8.0/#sec-samevalue',
|
||||
SameValueNonNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-samevaluenonnumber',
|
||||
SameValueZero: 'https://ecma-international.org/ecma-262/8.0/#sec-samevaluezero',
|
||||
ScriptEvaluation: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-scriptevaluation',
|
||||
ScriptEvaluationJob: 'https://ecma-international.org/ecma-262/8.0/#sec-scriptevaluationjob',
|
||||
SecFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-SecFromTime',
|
||||
SecondsPerMinute: 'https://ecma-international.org/ecma-262/8.0/#eqn-SecondsPerMinute',
|
||||
SerializeJSONArray: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonarray',
|
||||
SerializeJSONObject: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonobject',
|
||||
SerializeJSONProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonproperty',
|
||||
Set: 'https://ecma-international.org/ecma-262/8.0/#sec-set-o-p-v-throw',
|
||||
SetDefaultGlobalBindings: 'https://ecma-international.org/ecma-262/8.0/#sec-setdefaultglobalbindings',
|
||||
SetFunctionName: 'https://ecma-international.org/ecma-262/8.0/#sec-setfunctionname',
|
||||
SetImmutablePrototype: 'https://ecma-international.org/ecma-262/8.0/#sec-set-immutable-prototype',
|
||||
SetIntegrityLevel: 'https://ecma-international.org/ecma-262/8.0/#sec-setintegritylevel',
|
||||
SetRealmGlobalObject: 'https://ecma-international.org/ecma-262/8.0/#sec-setrealmglobalobject',
|
||||
SetValueInBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-setvalueinbuffer',
|
||||
SetViewValue: 'https://ecma-international.org/ecma-262/8.0/#sec-setviewvalue',
|
||||
SharedDataBlockEventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-sharedatablockeventset',
|
||||
SortCompare: 'https://ecma-international.org/ecma-262/8.0/#sec-sortcompare',
|
||||
SpeciesConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-speciesconstructor',
|
||||
SplitMatch: 'https://ecma-international.org/ecma-262/8.0/#sec-splitmatch',
|
||||
'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-strict-equality-comparison',
|
||||
StringCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-stringcreate',
|
||||
StringGetOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-stringgetownproperty',
|
||||
Suspend: 'https://ecma-international.org/ecma-262/8.0/#sec-suspend',
|
||||
SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/8.0/#sec-symboldescriptivestring',
|
||||
'synchronizes-with': 'https://ecma-international.org/ecma-262/8.0/#sec-synchronizes-with',
|
||||
TestIntegrityLevel: 'https://ecma-international.org/ecma-262/8.0/#sec-testintegritylevel',
|
||||
thisBooleanValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisbooleanvalue',
|
||||
thisNumberValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisnumbervalue',
|
||||
thisStringValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisstringvalue',
|
||||
thisTimeValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thistimevalue',
|
||||
TimeClip: 'https://ecma-international.org/ecma-262/8.0/#sec-timeclip',
|
||||
TimeFromYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-TimeFromYear',
|
||||
TimeWithinDay: 'https://ecma-international.org/ecma-262/8.0/#eqn-TimeWithinDay',
|
||||
ToBoolean: 'https://ecma-international.org/ecma-262/8.0/#sec-toboolean',
|
||||
ToDateString: 'https://ecma-international.org/ecma-262/8.0/#sec-todatestring',
|
||||
ToIndex: 'https://ecma-international.org/ecma-262/8.0/#sec-toindex',
|
||||
ToInt16: 'https://ecma-international.org/ecma-262/8.0/#sec-toint16',
|
||||
ToInt32: 'https://ecma-international.org/ecma-262/8.0/#sec-toint32',
|
||||
ToInt8: 'https://ecma-international.org/ecma-262/8.0/#sec-toint8',
|
||||
ToInteger: 'https://ecma-international.org/ecma-262/8.0/#sec-tointeger',
|
||||
ToLength: 'https://ecma-international.org/ecma-262/8.0/#sec-tolength',
|
||||
ToNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-tonumber',
|
||||
ToObject: 'https://ecma-international.org/ecma-262/8.0/#sec-toobject',
|
||||
TopLevelModuleEvaluationJob: 'https://ecma-international.org/ecma-262/8.0/#sec-toplevelmoduleevaluationjob',
|
||||
ToPrimitive: 'https://ecma-international.org/ecma-262/8.0/#sec-toprimitive',
|
||||
ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-topropertydescriptor',
|
||||
ToPropertyKey: 'https://ecma-international.org/ecma-262/8.0/#sec-topropertykey',
|
||||
ToString: 'https://ecma-international.org/ecma-262/8.0/#sec-tostring',
|
||||
'ToString Applied to the Number Type': 'https://ecma-international.org/ecma-262/8.0/#sec-tostring-applied-to-the-number-type',
|
||||
ToUint16: 'https://ecma-international.org/ecma-262/8.0/#sec-touint16',
|
||||
ToUint32: 'https://ecma-international.org/ecma-262/8.0/#sec-touint32',
|
||||
ToUint8: 'https://ecma-international.org/ecma-262/8.0/#sec-touint8',
|
||||
ToUint8Clamp: 'https://ecma-international.org/ecma-262/8.0/#sec-touint8clamp',
|
||||
TriggerPromiseReactions: 'https://ecma-international.org/ecma-262/8.0/#sec-triggerpromisereactions',
|
||||
Type: 'https://ecma-international.org/ecma-262/8.0/#sec-ecmascript-data-types-and-values',
|
||||
TypedArrayCreate: 'https://ecma-international.org/ecma-262/8.0/#typedarray-create',
|
||||
TypedArraySpeciesCreate: 'https://ecma-international.org/ecma-262/8.0/#typedarray-species-create',
|
||||
UpdateEmpty: 'https://ecma-international.org/ecma-262/8.0/#sec-updateempty',
|
||||
UTC: 'https://ecma-international.org/ecma-262/8.0/#sec-utc-t',
|
||||
UTF16Decode: 'https://ecma-international.org/ecma-262/8.0/#sec-utf16decode',
|
||||
UTF16Encoding: 'https://ecma-international.org/ecma-262/8.0/#sec-utf16encoding',
|
||||
ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-validateandapplypropertydescriptor',
|
||||
ValidateAtomicAccess: 'https://ecma-international.org/ecma-262/8.0/#sec-validateatomicaccess',
|
||||
ValidateSharedIntegerTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-validatesharedintegertypedarray',
|
||||
ValidateTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-validatetypedarray',
|
||||
ValueOfReadEvent: 'https://ecma-international.org/ecma-262/8.0/#sec-valueofreadevent',
|
||||
WakeWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-wakewaiter',
|
||||
WeekDay: 'https://ecma-international.org/ecma-262/8.0/#sec-week-day',
|
||||
WordCharacters: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-wordcharacters-abstract-operation',
|
||||
YearFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-YearFromTime'
|
||||
};
|
||||
357
node_modules/es-abstract/operations/2018.js
generated
vendored
357
node_modules/es-abstract/operations/2018.js
generated
vendored
@@ -1,357 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
abs: 'https://ecma-international.org/ecma-262/9.0/#eqn-abs',
|
||||
'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/9.0/#sec-abstract-equality-comparison',
|
||||
'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/9.0/#sec-abstract-relational-comparison',
|
||||
AddRestrictedFunctionProperties: 'https://ecma-international.org/ecma-262/9.0/#sec-addrestrictedfunctionproperties',
|
||||
AddWaiter: 'https://ecma-international.org/ecma-262/9.0/#sec-addwaiter',
|
||||
AdvanceStringIndex: 'https://ecma-international.org/ecma-262/9.0/#sec-advancestringindex',
|
||||
'agent-order': 'https://ecma-international.org/ecma-262/9.0/#sec-agent-order',
|
||||
AgentCanSuspend: 'https://ecma-international.org/ecma-262/9.0/#sec-agentcansuspend',
|
||||
AgentSignifier: 'https://ecma-international.org/ecma-262/9.0/#sec-agentsignifier',
|
||||
AllocateArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-allocatearraybuffer',
|
||||
AllocateSharedArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-allocatesharedarraybuffer',
|
||||
AllocateTypedArray: 'https://ecma-international.org/ecma-262/9.0/#sec-allocatetypedarray',
|
||||
AllocateTypedArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-allocatetypedarraybuffer',
|
||||
ArrayCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-arraycreate',
|
||||
ArraySetLength: 'https://ecma-international.org/ecma-262/9.0/#sec-arraysetlength',
|
||||
ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-arrayspeciescreate',
|
||||
AsyncFunctionCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-async-functions-abstract-operations-async-function-create',
|
||||
AsyncFunctionStart: 'https://ecma-international.org/ecma-262/9.0/#sec-async-functions-abstract-operations-async-function-start',
|
||||
AsyncGeneratorEnqueue: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorenqueue',
|
||||
AsyncGeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorfunctioncreate',
|
||||
AsyncGeneratorReject: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorreject',
|
||||
AsyncGeneratorResolve: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorresolve',
|
||||
AsyncGeneratorResumeNext: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorresumenext',
|
||||
AsyncGeneratorStart: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratorstart',
|
||||
AsyncGeneratorYield: 'https://ecma-international.org/ecma-262/9.0/#sec-asyncgeneratoryield',
|
||||
AsyncIteratorClose: 'https://ecma-international.org/ecma-262/9.0/#sec-asynciteratorclose',
|
||||
AtomicLoad: 'https://ecma-international.org/ecma-262/9.0/#sec-atomicload',
|
||||
AtomicReadModifyWrite: 'https://ecma-international.org/ecma-262/9.0/#sec-atomicreadmodifywrite',
|
||||
Await: 'https://ecma-international.org/ecma-262/9.0/#await',
|
||||
BackreferenceMatcher: 'https://ecma-international.org/ecma-262/9.0/#sec-backreference-matcher',
|
||||
BlockDeclarationInstantiation: 'https://ecma-international.org/ecma-262/9.0/#sec-blockdeclarationinstantiation',
|
||||
BoundFunctionCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-boundfunctioncreate',
|
||||
Call: 'https://ecma-international.org/ecma-262/9.0/#sec-call',
|
||||
Canonicalize: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-canonicalize-ch',
|
||||
CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/9.0/#sec-canonicalnumericindexstring',
|
||||
CaseClauseIsSelected: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-caseclauseisselected',
|
||||
CharacterRange: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-characterrange-abstract-operation',
|
||||
CharacterRangeOrUnion: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-characterrangeorunion-abstract-operation',
|
||||
CharacterSetMatcher: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-charactersetmatcher-abstract-operation',
|
||||
CloneArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-clonearraybuffer',
|
||||
CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-completepropertydescriptor',
|
||||
Completion: 'https://ecma-international.org/ecma-262/9.0/#sec-completion-record-specification-type',
|
||||
ComposeWriteEventBytes: 'https://ecma-international.org/ecma-262/9.0/#sec-composewriteeventbytes',
|
||||
Construct: 'https://ecma-international.org/ecma-262/9.0/#sec-construct',
|
||||
CopyDataBlockBytes: 'https://ecma-international.org/ecma-262/9.0/#sec-copydatablockbytes',
|
||||
CopyDataProperties: 'https://ecma-international.org/ecma-262/9.0/#sec-copydataproperties',
|
||||
CreateArrayFromList: 'https://ecma-international.org/ecma-262/9.0/#sec-createarrayfromlist',
|
||||
CreateArrayIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-createarrayiterator',
|
||||
CreateAsyncFromSyncIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-createasyncfromsynciterator',
|
||||
CreateBuiltinFunction: 'https://ecma-international.org/ecma-262/9.0/#sec-createbuiltinfunction',
|
||||
CreateByteDataBlock: 'https://ecma-international.org/ecma-262/9.0/#sec-createbytedatablock',
|
||||
CreateDataProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-createdataproperty',
|
||||
CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/9.0/#sec-createdatapropertyorthrow',
|
||||
CreateDynamicFunction: 'https://ecma-international.org/ecma-262/9.0/#sec-createdynamicfunction',
|
||||
CreateHTML: 'https://ecma-international.org/ecma-262/9.0/#sec-createhtml',
|
||||
CreateIntrinsics: 'https://ecma-international.org/ecma-262/9.0/#sec-createintrinsics',
|
||||
CreateIterResultObject: 'https://ecma-international.org/ecma-262/9.0/#sec-createiterresultobject',
|
||||
CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/9.0/#sec-createlistfromarraylike',
|
||||
CreateListIteratorRecord: 'https://ecma-international.org/ecma-262/9.0/#sec-createlistiteratorRecord',
|
||||
CreateMapIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-createmapiterator',
|
||||
CreateMappedArgumentsObject: 'https://ecma-international.org/ecma-262/9.0/#sec-createmappedargumentsobject',
|
||||
CreateMethodProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-createmethodproperty',
|
||||
CreatePerIterationEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-createperiterationenvironment',
|
||||
CreateRealm: 'https://ecma-international.org/ecma-262/9.0/#sec-createrealm',
|
||||
CreateResolvingFunctions: 'https://ecma-international.org/ecma-262/9.0/#sec-createresolvingfunctions',
|
||||
CreateSetIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-createsetiterator',
|
||||
CreateSharedByteDataBlock: 'https://ecma-international.org/ecma-262/9.0/#sec-createsharedbytedatablock',
|
||||
CreateStringIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-createstringiterator',
|
||||
CreateUnmappedArgumentsObject: 'https://ecma-international.org/ecma-262/9.0/#sec-createunmappedargumentsobject',
|
||||
DateFromTime: 'https://ecma-international.org/ecma-262/9.0/#sec-date-number',
|
||||
DateString: 'https://ecma-international.org/ecma-262/9.0/#sec-datestring',
|
||||
Day: 'https://ecma-international.org/ecma-262/9.0/#eqn-Day',
|
||||
DayFromYear: 'https://ecma-international.org/ecma-262/9.0/#eqn-DaysFromYear',
|
||||
DaysInYear: 'https://ecma-international.org/ecma-262/9.0/#eqn-DaysInYear',
|
||||
DayWithinYear: 'https://ecma-international.org/ecma-262/9.0/#eqn-DayWithinYear',
|
||||
Decode: 'https://ecma-international.org/ecma-262/9.0/#sec-decode',
|
||||
DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/9.0/#sec-definepropertyorthrow',
|
||||
DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/9.0/#sec-deletepropertyorthrow',
|
||||
DetachArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-detacharraybuffer',
|
||||
Encode: 'https://ecma-international.org/ecma-262/9.0/#sec-encode',
|
||||
EnqueueJob: 'https://ecma-international.org/ecma-262/9.0/#sec-enqueuejob',
|
||||
EnterCriticalSection: 'https://ecma-international.org/ecma-262/9.0/#sec-entercriticalsection',
|
||||
EnumerableOwnPropertyNames: 'https://ecma-international.org/ecma-262/9.0/#sec-enumerableownpropertynames',
|
||||
EnumerateObjectProperties: 'https://ecma-international.org/ecma-262/9.0/#sec-enumerate-object-properties',
|
||||
EscapeRegExpPattern: 'https://ecma-international.org/ecma-262/9.0/#sec-escaperegexppattern',
|
||||
EvalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/9.0/#sec-evaldeclarationinstantiation',
|
||||
EvaluateCall: 'https://ecma-international.org/ecma-262/9.0/#sec-evaluatecall',
|
||||
EvaluateNew: 'https://ecma-international.org/ecma-262/9.0/#sec-evaluatenew',
|
||||
EventSet: 'https://ecma-international.org/ecma-262/9.0/#sec-event-set',
|
||||
floor: 'https://ecma-international.org/ecma-262/9.0/#eqn-floor',
|
||||
ForBodyEvaluation: 'https://ecma-international.org/ecma-262/9.0/#sec-forbodyevaluation',
|
||||
'ForIn/OfBodyEvaluation': 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset',
|
||||
'ForIn/OfHeadEvaluation': 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-forin-div-ofheadevaluation-tdznames-expr-iterationkind',
|
||||
FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-frompropertydescriptor',
|
||||
FulfillPromise: 'https://ecma-international.org/ecma-262/9.0/#sec-fulfillpromise',
|
||||
FunctionAllocate: 'https://ecma-international.org/ecma-262/9.0/#sec-functionallocate',
|
||||
FunctionCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-functioncreate',
|
||||
FunctionDeclarationInstantiation: 'https://ecma-international.org/ecma-262/9.0/#sec-functiondeclarationinstantiation',
|
||||
FunctionInitialize: 'https://ecma-international.org/ecma-262/9.0/#sec-functioninitialize',
|
||||
GeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-generatorfunctioncreate',
|
||||
GeneratorResume: 'https://ecma-international.org/ecma-262/9.0/#sec-generatorresume',
|
||||
GeneratorResumeAbrupt: 'https://ecma-international.org/ecma-262/9.0/#sec-generatorresumeabrupt',
|
||||
GeneratorStart: 'https://ecma-international.org/ecma-262/9.0/#sec-generatorstart',
|
||||
GeneratorValidate: 'https://ecma-international.org/ecma-262/9.0/#sec-generatorvalidate',
|
||||
GeneratorYield: 'https://ecma-international.org/ecma-262/9.0/#sec-generatoryield',
|
||||
Get: 'https://ecma-international.org/ecma-262/9.0/#sec-get-o-p',
|
||||
GetActiveScriptOrModule: 'https://ecma-international.org/ecma-262/9.0/#sec-getactivescriptormodule',
|
||||
GetBase: 'https://ecma-international.org/ecma-262/9.0/#sec-getbase',
|
||||
GetFunctionRealm: 'https://ecma-international.org/ecma-262/9.0/#sec-getfunctionrealm',
|
||||
GetGeneratorKind: 'https://ecma-international.org/ecma-262/9.0/#sec-getgeneratorkind',
|
||||
GetGlobalObject: 'https://ecma-international.org/ecma-262/9.0/#sec-getglobalobject',
|
||||
GetIdentifierReference: 'https://ecma-international.org/ecma-262/9.0/#sec-getidentifierreference',
|
||||
GetIterator: 'https://ecma-international.org/ecma-262/9.0/#sec-getiterator',
|
||||
GetMethod: 'https://ecma-international.org/ecma-262/9.0/#sec-getmethod',
|
||||
GetModifySetValueInBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-getmodifysetvalueinbuffer',
|
||||
GetModuleNamespace: 'https://ecma-international.org/ecma-262/9.0/#sec-getmodulenamespace',
|
||||
GetNewTarget: 'https://ecma-international.org/ecma-262/9.0/#sec-getnewtarget',
|
||||
GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/9.0/#sec-getownpropertykeys',
|
||||
GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-getprototypefromconstructor',
|
||||
GetReferencedName: 'https://ecma-international.org/ecma-262/9.0/#sec-getreferencedname',
|
||||
GetSubstitution: 'https://ecma-international.org/ecma-262/9.0/#sec-getsubstitution',
|
||||
GetSuperConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-getsuperconstructor',
|
||||
GetTemplateObject: 'https://ecma-international.org/ecma-262/9.0/#sec-gettemplateobject',
|
||||
GetThisEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-getthisenvironment',
|
||||
GetThisValue: 'https://ecma-international.org/ecma-262/9.0/#sec-getthisvalue',
|
||||
GetV: 'https://ecma-international.org/ecma-262/9.0/#sec-getv',
|
||||
GetValue: 'https://ecma-international.org/ecma-262/9.0/#sec-getvalue',
|
||||
GetValueFromBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-getvaluefrombuffer',
|
||||
GetViewValue: 'https://ecma-international.org/ecma-262/9.0/#sec-getviewvalue',
|
||||
GetWaiterList: 'https://ecma-international.org/ecma-262/9.0/#sec-getwaiterlist',
|
||||
GlobalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/9.0/#sec-globaldeclarationinstantiation',
|
||||
'happens-before': 'https://ecma-international.org/ecma-262/9.0/#sec-happens-before',
|
||||
HasOwnProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-hasownproperty',
|
||||
HasPrimitiveBase: 'https://ecma-international.org/ecma-262/9.0/#sec-hasprimitivebase',
|
||||
HasProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-hasproperty',
|
||||
'host-synchronizes-with': 'https://ecma-international.org/ecma-262/9.0/#sec-host-synchronizes-with',
|
||||
HostEnsureCanCompileStrings: 'https://ecma-international.org/ecma-262/9.0/#sec-hostensurecancompilestrings',
|
||||
HostEventSet: 'https://ecma-international.org/ecma-262/9.0/#sec-hosteventset',
|
||||
HostPromiseRejectionTracker: 'https://ecma-international.org/ecma-262/9.0/#sec-host-promise-rejection-tracker',
|
||||
HostReportErrors: 'https://ecma-international.org/ecma-262/9.0/#sec-host-report-errors',
|
||||
HostResolveImportedModule: 'https://ecma-international.org/ecma-262/9.0/#sec-hostresolveimportedmodule',
|
||||
HourFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-HourFromTime',
|
||||
HoursPerDay: 'https://ecma-international.org/ecma-262/9.0/#eqn-HoursPerDay',
|
||||
IfAbruptRejectPromise: 'https://ecma-international.org/ecma-262/9.0/#sec-ifabruptrejectpromise',
|
||||
ImportedLocalNames: 'https://ecma-international.org/ecma-262/9.0/#sec-importedlocalnames',
|
||||
InitializeBoundName: 'https://ecma-international.org/ecma-262/9.0/#sec-initializeboundname',
|
||||
InitializeHostDefinedRealm: 'https://ecma-international.org/ecma-262/9.0/#sec-initializehostdefinedrealm',
|
||||
InitializeReferencedBinding: 'https://ecma-international.org/ecma-262/9.0/#sec-initializereferencedbinding',
|
||||
InLeapYear: 'https://ecma-international.org/ecma-262/9.0/#eqn-InLeapYear',
|
||||
InnerModuleEvaluation: 'https://ecma-international.org/ecma-262/9.0/#sec-innermoduleevaluation',
|
||||
InnerModuleInstantiation: 'https://ecma-international.org/ecma-262/9.0/#sec-innermoduleinstantiation',
|
||||
InstanceofOperator: 'https://ecma-international.org/ecma-262/9.0/#sec-instanceofoperator',
|
||||
IntegerIndexedElementGet: 'https://ecma-international.org/ecma-262/9.0/#sec-integerindexedelementget',
|
||||
IntegerIndexedElementSet: 'https://ecma-international.org/ecma-262/9.0/#sec-integerindexedelementset',
|
||||
IntegerIndexedObjectCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-integerindexedobjectcreate',
|
||||
InternalizeJSONProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-internalizejsonproperty',
|
||||
Invoke: 'https://ecma-international.org/ecma-262/9.0/#sec-invoke',
|
||||
IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-isaccessordescriptor',
|
||||
IsAnonymousFunctionDefinition: 'https://ecma-international.org/ecma-262/9.0/#sec-isanonymousfunctiondefinition',
|
||||
IsArray: 'https://ecma-international.org/ecma-262/9.0/#sec-isarray',
|
||||
IsCallable: 'https://ecma-international.org/ecma-262/9.0/#sec-iscallable',
|
||||
IsCompatiblePropertyDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-iscompatiblepropertydescriptor',
|
||||
IsConcatSpreadable: 'https://ecma-international.org/ecma-262/9.0/#sec-isconcatspreadable',
|
||||
IsConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-isconstructor',
|
||||
IsDataDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-isdatadescriptor',
|
||||
IsDetachedBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-isdetachedbuffer',
|
||||
IsExtensible: 'https://ecma-international.org/ecma-262/9.0/#sec-isextensible-o',
|
||||
IsGenericDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-isgenericdescriptor',
|
||||
IsInTailPosition: 'https://ecma-international.org/ecma-262/9.0/#sec-isintailposition',
|
||||
IsInteger: 'https://ecma-international.org/ecma-262/9.0/#sec-isinteger',
|
||||
IsLabelledFunction: 'https://ecma-international.org/ecma-262/9.0/#sec-islabelledfunction',
|
||||
IsPromise: 'https://ecma-international.org/ecma-262/9.0/#sec-ispromise',
|
||||
IsPropertyKey: 'https://ecma-international.org/ecma-262/9.0/#sec-ispropertykey',
|
||||
IsPropertyReference: 'https://ecma-international.org/ecma-262/9.0/#sec-ispropertyreference',
|
||||
IsRegExp: 'https://ecma-international.org/ecma-262/9.0/#sec-isregexp',
|
||||
IsSharedArrayBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-issharedarraybuffer',
|
||||
IsStrictReference: 'https://ecma-international.org/ecma-262/9.0/#sec-isstrictreference',
|
||||
IsStringPrefix: 'https://ecma-international.org/ecma-262/9.0/#sec-isstringprefix',
|
||||
IsSuperReference: 'https://ecma-international.org/ecma-262/9.0/#sec-issuperreference',
|
||||
IsUnresolvableReference: 'https://ecma-international.org/ecma-262/9.0/#sec-isunresolvablereference',
|
||||
IsWordChar: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-iswordchar-abstract-operation',
|
||||
IterableToList: 'https://ecma-international.org/ecma-262/9.0/#sec-iterabletolist',
|
||||
IteratorClose: 'https://ecma-international.org/ecma-262/9.0/#sec-iteratorclose',
|
||||
IteratorComplete: 'https://ecma-international.org/ecma-262/9.0/#sec-iteratorcomplete',
|
||||
IteratorNext: 'https://ecma-international.org/ecma-262/9.0/#sec-iteratornext',
|
||||
IteratorStep: 'https://ecma-international.org/ecma-262/9.0/#sec-iteratorstep',
|
||||
IteratorValue: 'https://ecma-international.org/ecma-262/9.0/#sec-iteratorvalue',
|
||||
LeaveCriticalSection: 'https://ecma-international.org/ecma-262/9.0/#sec-leavecriticalsection',
|
||||
LocalTime: 'https://ecma-international.org/ecma-262/9.0/#sec-localtime',
|
||||
LoopContinues: 'https://ecma-international.org/ecma-262/9.0/#sec-loopcontinues',
|
||||
MakeArgGetter: 'https://ecma-international.org/ecma-262/9.0/#sec-makearggetter',
|
||||
MakeArgSetter: 'https://ecma-international.org/ecma-262/9.0/#sec-makeargsetter',
|
||||
MakeClassConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-makeclassconstructor',
|
||||
MakeConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-makeconstructor',
|
||||
MakeDate: 'https://ecma-international.org/ecma-262/9.0/#sec-makedate',
|
||||
MakeDay: 'https://ecma-international.org/ecma-262/9.0/#sec-makeday',
|
||||
MakeMethod: 'https://ecma-international.org/ecma-262/9.0/#sec-makemethod',
|
||||
MakeSuperPropertyReference: 'https://ecma-international.org/ecma-262/9.0/#sec-makesuperpropertyreference',
|
||||
MakeTime: 'https://ecma-international.org/ecma-262/9.0/#sec-maketime',
|
||||
max: 'https://ecma-international.org/ecma-262/9.0/#eqn-max',
|
||||
'memory-order': 'https://ecma-international.org/ecma-262/9.0/#sec-memory-order',
|
||||
min: 'https://ecma-international.org/ecma-262/9.0/#eqn-min',
|
||||
MinFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-MinFromTime',
|
||||
MinutesPerHour: 'https://ecma-international.org/ecma-262/9.0/#eqn-MinutesPerHour',
|
||||
ModuleDeclarationEnvironmentSetup: 'https://ecma-international.org/ecma-262/9.0/#sec-moduledeclarationenvironmentsetup',
|
||||
ModuleExecution: 'https://ecma-international.org/ecma-262/9.0/#sec-moduleexecution',
|
||||
ModuleNamespaceCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-modulenamespacecreate',
|
||||
modulo: 'https://ecma-international.org/ecma-262/9.0/#eqn-modulo',
|
||||
MonthFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-MonthFromTime',
|
||||
msFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-msFromTime',
|
||||
msPerDay: 'https://ecma-international.org/ecma-262/9.0/#eqn-msPerDay',
|
||||
msPerHour: 'https://ecma-international.org/ecma-262/9.0/#eqn-msPerHour',
|
||||
msPerMinute: 'https://ecma-international.org/ecma-262/9.0/#eqn-msPerMinute',
|
||||
msPerSecond: 'https://ecma-international.org/ecma-262/9.0/#eqn-msPerSecond',
|
||||
NewDeclarativeEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-newdeclarativeenvironment',
|
||||
NewFunctionEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-newfunctionenvironment',
|
||||
NewGlobalEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-newglobalenvironment',
|
||||
NewModuleEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-newmoduleenvironment',
|
||||
NewObjectEnvironment: 'https://ecma-international.org/ecma-262/9.0/#sec-newobjectenvironment',
|
||||
NewPromiseCapability: 'https://ecma-international.org/ecma-262/9.0/#sec-newpromisecapability',
|
||||
NormalCompletion: 'https://ecma-international.org/ecma-262/9.0/#sec-normalcompletion',
|
||||
NumberToRawBytes: 'https://ecma-international.org/ecma-262/9.0/#sec-numbertorawbytes',
|
||||
NumberToString: 'https://ecma-international.org/ecma-262/9.0/#sec-tostring-applied-to-the-number-type',
|
||||
ObjectCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-objectcreate',
|
||||
ObjectDefineProperties: 'https://ecma-international.org/ecma-262/9.0/#sec-objectdefineproperties',
|
||||
OrdinaryCallBindThis: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarycallbindthis',
|
||||
OrdinaryCallEvaluateBody: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarycallevaluatebody',
|
||||
OrdinaryCreateFromConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarycreatefromconstructor',
|
||||
OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarydefineownproperty',
|
||||
OrdinaryDelete: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarydelete',
|
||||
OrdinaryGet: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryget',
|
||||
OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarygetownproperty',
|
||||
OrdinaryGetPrototypeOf: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarygetprototypeof',
|
||||
OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryhasinstance',
|
||||
OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryhasproperty',
|
||||
OrdinaryIsExtensible: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryisextensible',
|
||||
OrdinaryOwnPropertyKeys: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryownpropertykeys',
|
||||
OrdinaryPreventExtensions: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarypreventextensions',
|
||||
OrdinarySet: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinaryset',
|
||||
OrdinarySetPrototypeOf: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarysetprototypeof',
|
||||
OrdinarySetWithOwnDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarysetwithowndescriptor',
|
||||
OrdinaryToPrimitive: 'https://ecma-international.org/ecma-262/9.0/#sec-ordinarytoprimitive',
|
||||
ParseModule: 'https://ecma-international.org/ecma-262/9.0/#sec-parsemodule',
|
||||
ParseScript: 'https://ecma-international.org/ecma-262/9.0/#sec-parse-script',
|
||||
PerformEval: 'https://ecma-international.org/ecma-262/9.0/#sec-performeval',
|
||||
PerformPromiseAll: 'https://ecma-international.org/ecma-262/9.0/#sec-performpromiseall',
|
||||
PerformPromiseRace: 'https://ecma-international.org/ecma-262/9.0/#sec-performpromiserace',
|
||||
PerformPromiseThen: 'https://ecma-international.org/ecma-262/9.0/#sec-performpromisethen',
|
||||
PrepareForOrdinaryCall: 'https://ecma-international.org/ecma-262/9.0/#sec-prepareforordinarycall',
|
||||
PrepareForTailCall: 'https://ecma-international.org/ecma-262/9.0/#sec-preparefortailcall',
|
||||
PromiseReactionJob: 'https://ecma-international.org/ecma-262/9.0/#sec-promisereactionjob',
|
||||
PromiseResolve: 'https://ecma-international.org/ecma-262/9.0/#sec-promise-resolve',
|
||||
PromiseResolveThenableJob: 'https://ecma-international.org/ecma-262/9.0/#sec-promiseresolvethenablejob',
|
||||
ProxyCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-proxycreate',
|
||||
PutValue: 'https://ecma-international.org/ecma-262/9.0/#sec-putvalue',
|
||||
QuoteJSONString: 'https://ecma-international.org/ecma-262/9.0/#sec-quotejsonstring',
|
||||
RawBytesToNumber: 'https://ecma-international.org/ecma-262/9.0/#sec-rawbytestonumber',
|
||||
'reads-bytes-from': 'https://ecma-international.org/ecma-262/9.0/#sec-reads-bytes-from',
|
||||
'reads-from': 'https://ecma-international.org/ecma-262/9.0/#sec-reads-from',
|
||||
RegExpAlloc: 'https://ecma-international.org/ecma-262/9.0/#sec-regexpalloc',
|
||||
RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/9.0/#sec-regexpbuiltinexec',
|
||||
RegExpCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-regexpcreate',
|
||||
RegExpExec: 'https://ecma-international.org/ecma-262/9.0/#sec-regexpexec',
|
||||
RegExpInitialize: 'https://ecma-international.org/ecma-262/9.0/#sec-regexpinitialize',
|
||||
RejectPromise: 'https://ecma-international.org/ecma-262/9.0/#sec-rejectpromise',
|
||||
RemoveWaiter: 'https://ecma-international.org/ecma-262/9.0/#sec-removewaiter',
|
||||
RemoveWaiters: 'https://ecma-international.org/ecma-262/9.0/#sec-removewaiters',
|
||||
RepeatMatcher: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-repeatmatcher-abstract-operation',
|
||||
RequireObjectCoercible: 'https://ecma-international.org/ecma-262/9.0/#sec-requireobjectcoercible',
|
||||
ResolveBinding: 'https://ecma-international.org/ecma-262/9.0/#sec-resolvebinding',
|
||||
ResolveThisBinding: 'https://ecma-international.org/ecma-262/9.0/#sec-resolvethisbinding',
|
||||
ReturnIfAbrupt: 'https://ecma-international.org/ecma-262/9.0/#sec-returnifabrupt',
|
||||
RunJobs: 'https://ecma-international.org/ecma-262/9.0/#sec-runjobs',
|
||||
SameValue: 'https://ecma-international.org/ecma-262/9.0/#sec-samevalue',
|
||||
SameValueNonNumber: 'https://ecma-international.org/ecma-262/9.0/#sec-samevaluenonnumber',
|
||||
SameValueZero: 'https://ecma-international.org/ecma-262/9.0/#sec-samevaluezero',
|
||||
ScriptEvaluation: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-scriptevaluation',
|
||||
ScriptEvaluationJob: 'https://ecma-international.org/ecma-262/9.0/#sec-scriptevaluationjob',
|
||||
SecFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-SecFromTime',
|
||||
SecondsPerMinute: 'https://ecma-international.org/ecma-262/9.0/#eqn-SecondsPerMinute',
|
||||
SerializeJSONArray: 'https://ecma-international.org/ecma-262/9.0/#sec-serializejsonarray',
|
||||
SerializeJSONObject: 'https://ecma-international.org/ecma-262/9.0/#sec-serializejsonobject',
|
||||
SerializeJSONProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-serializejsonproperty',
|
||||
Set: 'https://ecma-international.org/ecma-262/9.0/#sec-set-o-p-v-throw',
|
||||
SetDefaultGlobalBindings: 'https://ecma-international.org/ecma-262/9.0/#sec-setdefaultglobalbindings',
|
||||
SetFunctionLength: 'https://ecma-international.org/ecma-262/9.0/#sec-setfunctionlength',
|
||||
SetFunctionName: 'https://ecma-international.org/ecma-262/9.0/#sec-setfunctionname',
|
||||
SetImmutablePrototype: 'https://ecma-international.org/ecma-262/9.0/#sec-set-immutable-prototype',
|
||||
SetIntegrityLevel: 'https://ecma-international.org/ecma-262/9.0/#sec-setintegritylevel',
|
||||
SetRealmGlobalObject: 'https://ecma-international.org/ecma-262/9.0/#sec-setrealmglobalobject',
|
||||
SetValueInBuffer: 'https://ecma-international.org/ecma-262/9.0/#sec-setvalueinbuffer',
|
||||
SetViewValue: 'https://ecma-international.org/ecma-262/9.0/#sec-setviewvalue',
|
||||
SharedDataBlockEventSet: 'https://ecma-international.org/ecma-262/9.0/#sec-sharedatablockeventset',
|
||||
SortCompare: 'https://ecma-international.org/ecma-262/9.0/#sec-sortcompare',
|
||||
SpeciesConstructor: 'https://ecma-international.org/ecma-262/9.0/#sec-speciesconstructor',
|
||||
SplitMatch: 'https://ecma-international.org/ecma-262/9.0/#sec-splitmatch',
|
||||
'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/9.0/#sec-strict-equality-comparison',
|
||||
StringCreate: 'https://ecma-international.org/ecma-262/9.0/#sec-stringcreate',
|
||||
StringGetOwnProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-stringgetownproperty',
|
||||
Suspend: 'https://ecma-international.org/ecma-262/9.0/#sec-suspend',
|
||||
SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/9.0/#sec-symboldescriptivestring',
|
||||
'synchronizes-with': 'https://ecma-international.org/ecma-262/9.0/#sec-synchronizes-with',
|
||||
TestIntegrityLevel: 'https://ecma-international.org/ecma-262/9.0/#sec-testintegritylevel',
|
||||
thisBooleanValue: 'https://ecma-international.org/ecma-262/9.0/#sec-thisbooleanvalue',
|
||||
thisNumberValue: 'https://ecma-international.org/ecma-262/9.0/#sec-thisnumbervalue',
|
||||
thisStringValue: 'https://ecma-international.org/ecma-262/9.0/#sec-thisstringvalue',
|
||||
thisSymbolValue: 'https://ecma-international.org/ecma-262/9.0/#sec-thissymbolvalue',
|
||||
thisTimeValue: 'https://ecma-international.org/ecma-262/9.0/#sec-thistimevalue',
|
||||
ThrowCompletion: 'https://ecma-international.org/ecma-262/9.0/#sec-throwcompletion',
|
||||
TimeClip: 'https://ecma-international.org/ecma-262/9.0/#sec-timeclip',
|
||||
TimeFromYear: 'https://ecma-international.org/ecma-262/9.0/#eqn-TimeFromYear',
|
||||
TimeString: 'https://ecma-international.org/ecma-262/9.0/#sec-timestring',
|
||||
TimeWithinDay: 'https://ecma-international.org/ecma-262/9.0/#eqn-TimeWithinDay',
|
||||
TimeZoneString: 'https://ecma-international.org/ecma-262/9.0/#sec-timezoneestring',
|
||||
ToBoolean: 'https://ecma-international.org/ecma-262/9.0/#sec-toboolean',
|
||||
ToDateString: 'https://ecma-international.org/ecma-262/9.0/#sec-todatestring',
|
||||
ToIndex: 'https://ecma-international.org/ecma-262/9.0/#sec-toindex',
|
||||
ToInt16: 'https://ecma-international.org/ecma-262/9.0/#sec-toint16',
|
||||
ToInt32: 'https://ecma-international.org/ecma-262/9.0/#sec-toint32',
|
||||
ToInt8: 'https://ecma-international.org/ecma-262/9.0/#sec-toint8',
|
||||
ToInteger: 'https://ecma-international.org/ecma-262/9.0/#sec-tointeger',
|
||||
ToLength: 'https://ecma-international.org/ecma-262/9.0/#sec-tolength',
|
||||
ToNumber: 'https://ecma-international.org/ecma-262/9.0/#sec-tonumber',
|
||||
ToObject: 'https://ecma-international.org/ecma-262/9.0/#sec-toobject',
|
||||
TopLevelModuleEvaluationJob: 'https://ecma-international.org/ecma-262/9.0/#sec-toplevelmoduleevaluationjob',
|
||||
ToPrimitive: 'https://ecma-international.org/ecma-262/9.0/#sec-toprimitive',
|
||||
ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-topropertydescriptor',
|
||||
ToPropertyKey: 'https://ecma-international.org/ecma-262/9.0/#sec-topropertykey',
|
||||
ToString: 'https://ecma-international.org/ecma-262/9.0/#sec-tostring',
|
||||
ToUint16: 'https://ecma-international.org/ecma-262/9.0/#sec-touint16',
|
||||
ToUint32: 'https://ecma-international.org/ecma-262/9.0/#sec-touint32',
|
||||
ToUint8: 'https://ecma-international.org/ecma-262/9.0/#sec-touint8',
|
||||
ToUint8Clamp: 'https://ecma-international.org/ecma-262/9.0/#sec-touint8clamp',
|
||||
TriggerPromiseReactions: 'https://ecma-international.org/ecma-262/9.0/#sec-triggerpromisereactions',
|
||||
Type: 'https://ecma-international.org/ecma-262/9.0/#sec-ecmascript-data-types-and-values',
|
||||
TypedArrayCreate: 'https://ecma-international.org/ecma-262/9.0/#typedarray-create',
|
||||
TypedArraySpeciesCreate: 'https://ecma-international.org/ecma-262/9.0/#typedarray-species-create',
|
||||
UnicodeEscape: 'https://ecma-international.org/ecma-262/9.0/#sec-unicodeescape',
|
||||
UnicodeMatchProperty: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-unicodematchproperty-p',
|
||||
UnicodeMatchPropertyValue: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-unicodematchpropertyvalue-p-v',
|
||||
UpdateEmpty: 'https://ecma-international.org/ecma-262/9.0/#sec-updateempty',
|
||||
UTC: 'https://ecma-international.org/ecma-262/9.0/#sec-utc-t',
|
||||
UTF16Decode: 'https://ecma-international.org/ecma-262/9.0/#sec-utf16decode',
|
||||
UTF16Encoding: 'https://ecma-international.org/ecma-262/9.0/#sec-utf16encoding',
|
||||
ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/9.0/#sec-validateandapplypropertydescriptor',
|
||||
ValidateAtomicAccess: 'https://ecma-international.org/ecma-262/9.0/#sec-validateatomicaccess',
|
||||
ValidateSharedIntegerTypedArray: 'https://ecma-international.org/ecma-262/9.0/#sec-validatesharedintegertypedarray',
|
||||
ValidateTypedArray: 'https://ecma-international.org/ecma-262/9.0/#sec-validatetypedarray',
|
||||
ValueOfReadEvent: 'https://ecma-international.org/ecma-262/9.0/#sec-valueofreadevent',
|
||||
WakeWaiter: 'https://ecma-international.org/ecma-262/9.0/#sec-wakewaiter',
|
||||
WeekDay: 'https://ecma-international.org/ecma-262/9.0/#sec-week-day',
|
||||
WordCharacters: 'https://ecma-international.org/ecma-262/9.0/#sec-runtime-semantics-wordcharacters-abstract-operation',
|
||||
YearFromTime: 'https://ecma-international.org/ecma-262/9.0/#eqn-YearFromTime'
|
||||
};
|
||||
9
node_modules/es-abstract/operations/es5.js
generated
vendored
9
node_modules/es-abstract/operations/es5.js
generated
vendored
@@ -1,9 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/5.1/#sec-8.10.1',
|
||||
IsDataDescriptor: 'https://ecma-international.org/ecma-262/5.1/#sec-8.10.2',
|
||||
IsGenericDescriptor: 'https://ecma-international.org/ecma-262/5.1/#sec-8.10.3',
|
||||
FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/5.1/#sec-8.10.4',
|
||||
ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/5.1/#sec-8.10.5'
|
||||
};
|
||||
61
node_modules/es-abstract/operations/getOps.js
generated
vendored
61
node_modules/es-abstract/operations/getOps.js
generated
vendored
@@ -1,61 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var execSync = require('child_process').execSync;
|
||||
|
||||
var $ = require('cheerio');
|
||||
var fromEntries = require('object.fromentries');
|
||||
|
||||
if (process.argv.length !== 3) {
|
||||
throw new RangeError('please provide a year');
|
||||
}
|
||||
var year = parseInt(process.argv[2]);
|
||||
if (year < 2016) {
|
||||
throw new RangeError('ES2016+ only');
|
||||
}
|
||||
var edition = year - 2009;
|
||||
|
||||
var specHTMLurl = new URL('https://raw.githubusercontent.com/tc39/ecma262/es' + year + '/spec.html');
|
||||
|
||||
var specHTML = String(execSync('curl --silent ' + specHTMLurl));
|
||||
|
||||
var root = $(specHTML);
|
||||
|
||||
var aOps = root.filter('[aoid]').add(root.find('[aoid]'));
|
||||
|
||||
var missings = [];
|
||||
|
||||
var entries = aOps.toArray().map(function (x) {
|
||||
var op = $(x);
|
||||
var aoid = op.attr('aoid');
|
||||
var id = op.attr('id');
|
||||
|
||||
if (!id) {
|
||||
id = op.closest('[id]').attr('id');
|
||||
}
|
||||
|
||||
if (!id) {
|
||||
missings.push(aoid);
|
||||
}
|
||||
|
||||
return [
|
||||
aoid,
|
||||
'https://ecma-international.org/ecma-262/' + edition + '.0/#' + id
|
||||
];
|
||||
});
|
||||
|
||||
if (missings.length > 0) {
|
||||
console.error('Missing URLs:', missings);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
entries.sort(function (a, b) { return a[0].localeCompare(b[0]); });
|
||||
|
||||
var obj = fromEntries(entries);
|
||||
|
||||
var outputPath = path.join('operations', year + '.js');
|
||||
fs.writeFileSync(outputPath, '\'use strict\';\n\nmodule.exports = ' + JSON.stringify(obj, null, '\t')+ ';\n');
|
||||
|
||||
console.log('npx eslint --quiet --fix ' + outputPath);
|
||||
execSync('npx eslint --quiet --fix ' + outputPath);
|
||||
68
node_modules/es-abstract/package.json
generated
vendored
68
node_modules/es-abstract/package.json
generated
vendored
@@ -1,33 +1,27 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
"es-abstract@1.13.0",
|
||||
"/Users/imranismail/Projects/setup-kustomize"
|
||||
]
|
||||
],
|
||||
"_development": true,
|
||||
"_from": "es-abstract@1.13.0",
|
||||
"_id": "es-abstract@1.13.0",
|
||||
"_from": "es-abstract@^1.5.1",
|
||||
"_id": "es-abstract@1.16.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==",
|
||||
"_integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==",
|
||||
"_location": "/es-abstract",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "version",
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "es-abstract@1.13.0",
|
||||
"raw": "es-abstract@^1.5.1",
|
||||
"name": "es-abstract",
|
||||
"escapedName": "es-abstract",
|
||||
"rawSpec": "1.13.0",
|
||||
"rawSpec": "^1.5.1",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "1.13.0"
|
||||
"fetchSpec": "^1.5.1"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/object.getownpropertydescriptors"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz",
|
||||
"_spec": "1.13.0",
|
||||
"_where": "/Users/imranismail/Projects/setup-kustomize",
|
||||
"_resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz",
|
||||
"_shasum": "d3a26dc9c3283ac9750dca569586e976d9dcc06d",
|
||||
"_spec": "es-abstract@^1.5.1",
|
||||
"_where": "/Users/imranismail/Projects/setup-kustomize/node_modules/object.getownpropertydescriptors",
|
||||
"author": {
|
||||
"name": "Jordan Harband",
|
||||
"email": "ljharb@gmail.com",
|
||||
@@ -36,6 +30,7 @@
|
||||
"bugs": {
|
||||
"url": "https://github.com/ljharb/es-abstract/issues"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Jordan Harband",
|
||||
@@ -47,26 +42,32 @@
|
||||
"es-to-primitive": "^1.2.0",
|
||||
"function-bind": "^1.1.1",
|
||||
"has": "^1.0.3",
|
||||
"has-symbols": "^1.0.0",
|
||||
"is-callable": "^1.1.4",
|
||||
"is-regex": "^1.0.4",
|
||||
"object-keys": "^1.0.12"
|
||||
"object-inspect": "^1.6.0",
|
||||
"object-keys": "^1.1.1",
|
||||
"string.prototype.trimleft": "^2.1.0",
|
||||
"string.prototype.trimright": "^2.1.0"
|
||||
},
|
||||
"deprecated": false,
|
||||
"description": "ECMAScript spec abstract operations.",
|
||||
"devDependencies": {
|
||||
"@ljharb/eslint-config": "^13.1.1",
|
||||
"cheerio": "^1.0.0-rc.2",
|
||||
"editorconfig-tools": "^0.1.1",
|
||||
"eslint": "^5.11.1",
|
||||
"@ljharb/eslint-config": "^14.1.0",
|
||||
"cheerio": "^1.0.0-rc.3",
|
||||
"diff": "^4.0.1",
|
||||
"eclint": "^2.8.1",
|
||||
"eslint": "^6.5.1",
|
||||
"foreach": "^2.0.5",
|
||||
"make-arrow-function": "^1.1.0",
|
||||
"nyc": "^10.3.2",
|
||||
"object-inspect": "^1.6.0",
|
||||
"object-is": "^1.0.1",
|
||||
"object.assign": "^4.1.0",
|
||||
"object.fromentries": "^2.0.0",
|
||||
"replace": "^1.0.1",
|
||||
"safe-publish-latest": "^1.1.2",
|
||||
"semver": "^5.6.0",
|
||||
"tape": "^4.9.2"
|
||||
"object.fromentries": "^2.0.1",
|
||||
"replace": "^1.1.1",
|
||||
"safe-publish-latest": "^1.1.3",
|
||||
"semver": "^6.3.0",
|
||||
"tape": "^4.11.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
@@ -97,14 +98,11 @@
|
||||
"url": "git://github.com/ljharb/es-abstract.git"
|
||||
},
|
||||
"scripts": {
|
||||
"audit": "npm audit",
|
||||
"coverage": "nyc npm run --silent tests-only >/dev/null",
|
||||
"eccheck": "editorconfig-tools check *.js **/*.js > /dev/null",
|
||||
"lint": "eslint test/*.js *.js",
|
||||
"postaudit": "rm package-lock.json",
|
||||
"eccheck": "eclint check *.js **/*.js > /dev/null",
|
||||
"lint": "eslint .",
|
||||
"postcoverage": "nyc report",
|
||||
"posttest": "npm run audit",
|
||||
"preaudit": "npm install --package-lock --package-lock-only",
|
||||
"posttest": "npx aud --production",
|
||||
"prepublish": "safe-publish-latest",
|
||||
"pretest": "npm run --silent lint",
|
||||
"test": "npm run tests-only",
|
||||
@@ -128,5 +126,5 @@
|
||||
"android-browser/4.2"
|
||||
]
|
||||
},
|
||||
"version": "1.13.0"
|
||||
"version": "1.16.0"
|
||||
}
|
||||
|
||||
14
node_modules/es-abstract/test/GetIntrinsic.js
generated
vendored
14
node_modules/es-abstract/test/GetIntrinsic.js
generated
vendored
@@ -32,3 +32,17 @@ test('throws', function (t) {
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('base intrinsics', function (t) {
|
||||
t.equal(GetIntrinsic('%Object%'), Object, '%Object% yields Object');
|
||||
t.equal(GetIntrinsic('%Array%'), Array, '%Array% yields Array');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('dotted paths', function (t) {
|
||||
t.equal(GetIntrinsic('%Object.prototype.toString%'), Object.prototype.toString, '%Object.prototype.toString% yields Object.prototype.toString');
|
||||
t.equal(GetIntrinsic('%Array.prototype.push%'), Array.prototype.push, '%Array.prototype.push% yields Array.prototype.push');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
2
node_modules/es-abstract/test/es2015.js
generated
vendored
2
node_modules/es-abstract/test/es2015.js
generated
vendored
@@ -4,6 +4,6 @@ var ES = require('../').ES2015;
|
||||
|
||||
var ops = require('../operations/2015');
|
||||
|
||||
var expectedMissing = ['Construct', 'SetIntegrityLevel', 'TestIntegrityLevel', 'CreateArrayFromList', 'CreateListFromArrayLike', 'OrdinaryHasInstance', 'CreateListIterator', 'RegExpBuiltinExec', 'IsPromise', 'NormalCompletion'];
|
||||
var expectedMissing = ['Construct', 'CreateArrayFromList', 'CreateListIterator', 'NormalCompletion', 'RegExpBuiltinExec'];
|
||||
|
||||
require('./tests').es2015(ES, ops, expectedMissing);
|
||||
|
||||
2
node_modules/es-abstract/test/es2016.js
generated
vendored
2
node_modules/es-abstract/test/es2016.js
generated
vendored
@@ -4,6 +4,6 @@ var ES = require('../').ES2016;
|
||||
|
||||
var ops = require('../operations/2016');
|
||||
|
||||
var expectedMissing = ['Abstract Equality Comparison', 'Abstract Relational Comparison', 'AddRestrictedFunctionProperties', 'AllocateArrayBuffer', 'AllocateTypedArray', 'AllocateTypedArrayBuffer', 'ArrayCreate', 'ArraySetLength', 'BlockDeclarationInstantiation', 'BoundFunctionCreate', 'Canonicalize', 'CharacterRange', 'CharacterRangeOrUnion', 'CharacterSetMatcher', 'CloneArrayBuffer', 'Completion', 'Construct', 'CopyDataBlockBytes', 'CreateArrayFromList', 'CreateArrayIterator', 'CreateBuiltinFunction', 'CreateByteDataBlock', 'CreateDynamicFunction', 'CreateHTML', 'CreateIntrinsics', 'CreateListFromArrayLike', 'CreateListIterator', 'CreateMapIterator', 'CreateMappedArgumentsObject', 'CreatePerIterationEnvironment', 'CreateRealm', 'CreateResolvingFunctions', 'CreateSetIterator', 'CreateStringIterator', 'CreateUnmappedArgumentsObject', 'DateFromTime', 'Day', 'DayFromYear', 'DayWithinYear', 'DaysInYear', 'Decode', 'DetachArrayBuffer', 'Encode', 'EnqueueJob', 'EnumerateObjectProperties', 'EscapeRegExpPattern', 'EvalDeclarationInstantiation', 'EvaluateCall', 'EvaluateDirectCall', 'EvaluateNew', 'ForBodyEvaluation', 'ForIn/OfBodyEvaluation', 'ForIn/OfHeadEvaluation', 'FulfillPromise', 'FunctionAllocate', 'FunctionCreate', 'FunctionDeclarationInstantiation', 'FunctionInitialize', 'GeneratorFunctionCreate', 'GeneratorResume', 'GeneratorResumeAbrupt', 'GeneratorStart', 'GeneratorValidate', 'GeneratorYield', 'GetActiveScriptOrModule', 'GetFunctionRealm', 'GetGlobalObject', 'GetIdentifierReference', 'GetModuleNamespace', 'GetNewTarget', 'GetOwnPropertyKeys', 'GetPrototypeFromConstructor', 'GetSubstitution', 'GetSuperConstructor', 'GetTemplateObject', 'GetThisEnvironment', 'GetThisValue', 'GetValue', 'GetValueFromBuffer', 'GetViewValue', 'GlobalDeclarationInstantiation', 'HostPromiseRejectionTracker', 'HostReportErrors', 'HostResolveImportedModule', 'HourFromTime', 'HoursPerDay', 'IfAbruptRejectPromise', 'ImportedLocalNames', 'InLeapYear', 'InitializeBoundName', 'InitializeHostDefinedRealm', 'InitializeReferencedBinding', 'InstanceofOperator', 'IntegerIndexedElementGet', 'IntegerIndexedElementSet', 'IntegerIndexedObjectCreate', 'InternalizeJSONProperty', 'IsAnonymousFunctionDefinition', 'IsCompatiblePropertyDescriptor', 'IsDetachedBuffer', 'IsInTailPosition', 'IsLabelledFunction', 'IsPromise', 'IsWordChar', 'IterableToArrayLike', 'LocalTime', 'LoopContinues', 'MakeArgGetter', 'MakeArgSetter', 'MakeClassConstructor', 'MakeConstructor', 'MakeDate', 'MakeDay', 'MakeMethod', 'MakeSuperPropertyReference', 'MakeTime', 'MinFromTime', 'MinutesPerHour', 'ModuleNamespaceCreate', 'MonthFromTime', 'NewDeclarativeEnvironment', 'NewFunctionEnvironment', 'NewGlobalEnvironment', 'NewModuleEnvironment', 'NewObjectEnvironment', 'NewPromiseCapability', 'NextJob', 'NormalCompletion', 'ObjectDefineProperties', 'OrdinaryCallBindThis', 'OrdinaryCallEvaluateBody', 'OrdinaryCreateFromConstructor', 'OrdinaryDefineOwnProperty', 'OrdinaryDelete', 'OrdinaryGet', 'OrdinaryGetOwnProperty', 'OrdinaryGetPrototypeOf', 'OrdinaryHasInstance', 'OrdinaryHasProperty', 'OrdinaryIsExtensible', 'OrdinaryOwnPropertyKeys', 'OrdinaryPreventExtensions', 'OrdinarySet', 'OrdinarySetPrototypeOf', 'ParseModule', 'ParseScript', 'PerformEval', 'PerformPromiseAll', 'PerformPromiseRace', 'PerformPromiseThen', 'PrepareForOrdinaryCall', 'PrepareForTailCall', 'PromiseReactionJob', 'PromiseResolveThenableJob', 'ProxyCreate', 'PutValue', 'QuoteJSONString', 'RegExpAlloc', 'RegExpBuiltinExec', 'RegExpCreate', 'RegExpInitialize', 'RejectPromise', 'RepeatMatcher', 'ResolveBinding', 'ResolveThisBinding', 'ReturnIfAbrupt', 'ScriptEvaluation', 'ScriptEvaluationJob', 'SecFromTime', 'SecondsPerMinute', 'SerializeJSONArray', 'SerializeJSONObject', 'SerializeJSONProperty', 'SetDefaultGlobalBindings', 'SetFunctionName', 'SetIntegrityLevel', 'SetRealmGlobalObject', 'SetValueInBuffer', 'SetViewValue', 'SortCompare', 'SplitMatch', 'Strict Equality Comparison', 'StringCreate', 'SymbolDescriptiveString', 'TestIntegrityLevel', 'TimeClip', 'TimeFromYear', 'TimeWithinDay', 'ToDateString', 'ToString Applied to the Number Type', 'TopLevelModuleEvaluationJob', 'TriggerPromiseReactions', 'TypedArrayCreate', 'TypedArraySpeciesCreate', 'UTC', 'UTF16Decode', 'UTF16Encoding', 'UpdateEmpty', 'ValidateAndApplyPropertyDescriptor', 'ValidateTypedArray', 'WeekDay', 'YearFromTime', 'abs', 'floor', 'max', 'min', 'modulo', 'msFromTime', 'msPerDay', 'msPerHour', 'msPerMinute', 'msPerSecond'];
|
||||
var expectedMissing = ['AddRestrictedFunctionProperties', 'AllocateArrayBuffer', 'AllocateTypedArray', 'AllocateTypedArrayBuffer', 'BlockDeclarationInstantiation', 'BoundFunctionCreate', 'Canonicalize', 'CharacterRange', 'CharacterRangeOrUnion', 'CharacterSetMatcher', 'CloneArrayBuffer', 'Completion', 'Construct', 'CopyDataBlockBytes', 'CreateArrayFromList', 'CreateArrayIterator', 'CreateBuiltinFunction', 'CreateByteDataBlock', 'CreateDynamicFunction', 'CreateIntrinsics', 'CreateListIterator', 'CreateMapIterator', 'CreateMappedArgumentsObject', 'CreatePerIterationEnvironment', 'CreateRealm', 'CreateResolvingFunctions', 'CreateSetIterator', 'CreateStringIterator', 'CreateUnmappedArgumentsObject', 'Decode', 'DetachArrayBuffer', 'Encode', 'EnqueueJob', 'EnumerateObjectProperties', 'EscapeRegExpPattern', 'EvalDeclarationInstantiation', 'EvaluateCall', 'EvaluateDirectCall', 'EvaluateNew', 'ForBodyEvaluation', 'ForIn/OfBodyEvaluation', 'ForIn/OfHeadEvaluation', 'FulfillPromise', 'FunctionAllocate', 'FunctionCreate', 'FunctionDeclarationInstantiation', 'FunctionInitialize', 'GeneratorFunctionCreate', 'GeneratorResume', 'GeneratorResumeAbrupt', 'GeneratorStart', 'GeneratorValidate', 'GeneratorYield', 'GetActiveScriptOrModule', 'GetFunctionRealm', 'GetGlobalObject', 'GetIdentifierReference', 'GetModuleNamespace', 'GetNewTarget', 'GetSuperConstructor', 'GetTemplateObject', 'GetThisEnvironment', 'GetThisValue', 'GetValue', 'GetValueFromBuffer', 'GetViewValue', 'GlobalDeclarationInstantiation', 'HostPromiseRejectionTracker', 'HostReportErrors', 'HostResolveImportedModule', 'IfAbruptRejectPromise', 'ImportedLocalNames', 'InitializeBoundName', 'InitializeHostDefinedRealm', 'InitializeReferencedBinding', 'IntegerIndexedElementGet', 'IntegerIndexedElementSet', 'IntegerIndexedObjectCreate', 'InternalizeJSONProperty', 'IsAnonymousFunctionDefinition', 'IsCompatiblePropertyDescriptor', 'IsDetachedBuffer', 'IsInTailPosition', 'IsLabelledFunction', 'IsWordChar', 'LocalTime', 'LoopContinues', 'MakeArgGetter', 'MakeArgSetter', 'MakeClassConstructor', 'MakeConstructor', 'MakeMethod', 'MakeSuperPropertyReference', 'ModuleNamespaceCreate', 'NewDeclarativeEnvironment', 'NewFunctionEnvironment', 'NewGlobalEnvironment', 'NewModuleEnvironment', 'NewObjectEnvironment', 'NewPromiseCapability', 'NextJob', 'NormalCompletion', 'ObjectDefineProperties', 'OrdinaryCallBindThis', 'OrdinaryCallEvaluateBody', 'OrdinaryCreateFromConstructor', 'OrdinaryDelete', 'OrdinaryGet', 'OrdinaryIsExtensible', 'OrdinaryOwnPropertyKeys', 'OrdinaryPreventExtensions', 'OrdinarySet', 'ParseModule', 'ParseScript', 'PerformEval', 'PerformPromiseAll', 'PerformPromiseRace', 'PerformPromiseThen', 'PrepareForOrdinaryCall', 'PrepareForTailCall', 'PromiseReactionJob', 'PromiseResolveThenableJob', 'ProxyCreate', 'PutValue', 'QuoteJSONString', 'RegExpAlloc', 'RegExpBuiltinExec', 'RegExpCreate', 'RegExpInitialize', 'RejectPromise', 'RepeatMatcher', 'ResolveBinding', 'ResolveThisBinding', 'ReturnIfAbrupt', 'ScriptEvaluation', 'ScriptEvaluationJob', 'SerializeJSONArray', 'SerializeJSONObject', 'SerializeJSONProperty', 'SetDefaultGlobalBindings', 'SetRealmGlobalObject', 'SetValueInBuffer', 'SetViewValue', 'SortCompare', 'SplitMatch', 'StringCreate', 'ToString Applied to the Number Type', 'TopLevelModuleEvaluationJob', 'TriggerPromiseReactions', 'TypedArrayCreate', 'TypedArraySpeciesCreate', 'UTC', 'UTF16Decode', 'UTF16Encoding', 'UpdateEmpty', 'ValidateTypedArray', 'abs', 'floor', 'max', 'min'];
|
||||
|
||||
require('./tests').es2016(ES, ops, expectedMissing);
|
||||
|
||||
2
node_modules/es-abstract/test/es2017.js
generated
vendored
2
node_modules/es-abstract/test/es2017.js
generated
vendored
File diff suppressed because one or more lines are too long
2
node_modules/es-abstract/test/es2018.js
generated
vendored
2
node_modules/es-abstract/test/es2018.js
generated
vendored
File diff suppressed because one or more lines are too long
9
node_modules/es-abstract/test/es2019.js
generated
vendored
Normal file
9
node_modules/es-abstract/test/es2019.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
591
node_modules/es-abstract/test/es5.js
generated
vendored
591
node_modules/es-abstract/test/es5.js
generated
vendored
@@ -5,45 +5,31 @@ var test = require('tape');
|
||||
|
||||
var forEach = require('foreach');
|
||||
var is = require('object-is');
|
||||
var debug = require('object-inspect');
|
||||
|
||||
var coercibleObject = { valueOf: function () { return '3'; }, toString: function () { return 42; } };
|
||||
var coercibleFnObject = {
|
||||
valueOf: function () { return function valueOfFn() {}; },
|
||||
toString: function () { return 42; }
|
||||
};
|
||||
var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
|
||||
var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
|
||||
var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
|
||||
var uncoercibleFnObject = {
|
||||
valueOf: function () { return function valueOfFn() {}; },
|
||||
toString: function () { return function toStrFn() {}; }
|
||||
};
|
||||
var objects = [{}, coercibleObject, toStringOnlyObject, valueOfOnlyObject];
|
||||
var numbers = [0, -0, Infinity, -Infinity, 42];
|
||||
var nonNullPrimitives = [true, false, 'foo', ''].concat(numbers);
|
||||
var primitives = [undefined, null].concat(nonNullPrimitives);
|
||||
var v = require('./helpers/values');
|
||||
|
||||
test('ToPrimitive', function (t) {
|
||||
t.test('primitives', function (st) {
|
||||
var testPrimitive = function (primitive) {
|
||||
st.ok(is(ES.ToPrimitive(primitive), primitive), primitive + ' is returned correctly');
|
||||
st.ok(is(ES.ToPrimitive(primitive), primitive), debug(primitive) + ' is returned correctly');
|
||||
};
|
||||
forEach(primitives, testPrimitive);
|
||||
forEach(v.primitives, testPrimitive);
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.test('objects', function (st) {
|
||||
st.equal(ES.ToPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject coerces to valueOf');
|
||||
st.equal(ES.ToPrimitive(coercibleObject, Number), coercibleObject.valueOf(), 'coercibleObject with hint Number coerces to valueOf');
|
||||
st.equal(ES.ToPrimitive(coercibleObject, String), coercibleObject.toString(), 'coercibleObject with hint String coerces to toString');
|
||||
st.equal(ES.ToPrimitive(coercibleFnObject), coercibleFnObject.toString(), 'coercibleFnObject coerces to toString');
|
||||
st.equal(ES.ToPrimitive(toStringOnlyObject), toStringOnlyObject.toString(), 'toStringOnlyObject returns toString');
|
||||
st.equal(ES.ToPrimitive(valueOfOnlyObject), valueOfOnlyObject.valueOf(), 'valueOfOnlyObject returns valueOf');
|
||||
st.equal(ES.ToPrimitive(v.coercibleObject), v.coercibleObject.valueOf(), 'coercibleObject coerces to valueOf');
|
||||
st.equal(ES.ToPrimitive(v.coercibleObject, Number), v.coercibleObject.valueOf(), 'coercibleObject with hint Number coerces to valueOf');
|
||||
st.equal(ES.ToPrimitive(v.coercibleObject, String), v.coercibleObject.toString(), 'coercibleObject with hint String coerces to toString');
|
||||
st.equal(ES.ToPrimitive(v.coercibleFnObject), v.coercibleFnObject.toString(), 'coercibleFnObject coerces to toString');
|
||||
st.equal(ES.ToPrimitive(v.toStringOnlyObject), v.toStringOnlyObject.toString(), 'toStringOnlyObject returns toString');
|
||||
st.equal(ES.ToPrimitive(v.valueOfOnlyObject), v.valueOfOnlyObject.valueOf(), 'valueOfOnlyObject returns valueOf');
|
||||
st.equal(ES.ToPrimitive({}), '[object Object]', '{} with no hint coerces to Object#toString');
|
||||
st.equal(ES.ToPrimitive({}, String), '[object Object]', '{} with hint String coerces to Object#toString');
|
||||
st.equal(ES.ToPrimitive({}, Number), '[object Object]', '{} with hint Number coerces to Object#toString');
|
||||
st['throws'](function () { return ES.ToPrimitive(uncoercibleObject); }, TypeError, 'uncoercibleObject throws a TypeError');
|
||||
st['throws'](function () { return ES.ToPrimitive(uncoercibleFnObject); }, TypeError, 'uncoercibleFnObject throws a TypeError');
|
||||
st['throws'](function () { return ES.ToPrimitive(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws a TypeError');
|
||||
st['throws'](function () { return ES.ToPrimitive(v.uncoercibleFnObject); }, TypeError, 'uncoercibleFnObject throws a TypeError');
|
||||
st.end();
|
||||
});
|
||||
|
||||
@@ -63,10 +49,10 @@ test('ToBoolean', function (t) {
|
||||
});
|
||||
t.equal(false, ES.ToBoolean(''), 'empty string coerces to false');
|
||||
t.equal(true, ES.ToBoolean('foo'), 'nonempty string coerces to true');
|
||||
forEach(objects, function (obj) {
|
||||
forEach(v.objects, function (obj) {
|
||||
t.equal(true, ES.ToBoolean(obj), 'object coerces to true');
|
||||
});
|
||||
t.equal(true, ES.ToBoolean(uncoercibleObject), 'uncoercibleObject coerces to true');
|
||||
t.equal(true, ES.ToBoolean(v.uncoercibleObject), 'uncoercibleObject coerces to true');
|
||||
t.end();
|
||||
});
|
||||
|
||||
@@ -82,10 +68,10 @@ test('ToNumber', function (t) {
|
||||
forEach(['foo', '0', '4a', '2.0', 'Infinity', '-Infinity'], function (numString) {
|
||||
t.ok(is(+numString, ES.ToNumber(numString)), '"' + numString + '" coerces to ' + Number(numString));
|
||||
});
|
||||
forEach(objects, function (object) {
|
||||
forEach(v.objects, function (object) {
|
||||
t.ok(is(ES.ToNumber(object), ES.ToNumber(ES.ToPrimitive(object))), 'object ' + object + ' coerces to same as ToPrimitive of object does');
|
||||
});
|
||||
t['throws'](function () { return ES.ToNumber(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToNumber(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.end();
|
||||
});
|
||||
|
||||
@@ -96,7 +82,7 @@ test('ToInteger', function (t) {
|
||||
t.ok(is(-num, ES.ToInteger(-num)), '-' + num + ' returns itself');
|
||||
});
|
||||
t.equal(3, ES.ToInteger(Math.PI), 'pi returns 3');
|
||||
t['throws'](function () { return ES.ToInteger(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToInteger(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.end();
|
||||
});
|
||||
|
||||
@@ -106,7 +92,7 @@ test('ToInt32', function (t) {
|
||||
t.ok(is(0, ES.ToInt32(num)), num + ' returns +0');
|
||||
t.ok(is(0, ES.ToInt32(-num)), '-' + num + ' returns +0');
|
||||
});
|
||||
t['throws'](function () { return ES.ToInt32(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToInt32(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.ok(is(ES.ToInt32(0x100000000), 0), '2^32 returns +0');
|
||||
t.ok(is(ES.ToInt32(0x100000000 - 1), -1), '2^32 - 1 returns -1');
|
||||
t.ok(is(ES.ToInt32(0x80000000), -0x80000000), '2^31 returns -2^31');
|
||||
@@ -124,7 +110,7 @@ test('ToUint32', function (t) {
|
||||
t.ok(is(0, ES.ToUint32(num)), num + ' returns +0');
|
||||
t.ok(is(0, ES.ToUint32(-num)), '-' + num + ' returns +0');
|
||||
});
|
||||
t['throws'](function () { return ES.ToUint32(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToUint32(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.ok(is(ES.ToUint32(0x100000000), 0), '2^32 returns +0');
|
||||
t.ok(is(ES.ToUint32(0x100000000 - 1), 0x100000000 - 1), '2^32 - 1 returns 2^32 - 1');
|
||||
t.ok(is(ES.ToUint32(0x80000000), 0x80000000), '2^31 returns 2^31');
|
||||
@@ -142,7 +128,7 @@ test('ToUint16', function (t) {
|
||||
t.ok(is(0, ES.ToUint16(num)), num + ' returns +0');
|
||||
t.ok(is(0, ES.ToUint16(-num)), '-' + num + ' returns +0');
|
||||
});
|
||||
t['throws'](function () { return ES.ToUint16(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToUint16(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.ok(is(ES.ToUint16(0x100000000), 0), '2^32 returns +0');
|
||||
t.ok(is(ES.ToUint16(0x100000000 - 1), 0x10000 - 1), '2^32 - 1 returns 2^16 - 1');
|
||||
t.ok(is(ES.ToUint16(0x80000000), 0), '2^31 returns +0');
|
||||
@@ -153,14 +139,14 @@ test('ToUint16', function (t) {
|
||||
});
|
||||
|
||||
test('ToString', function (t) {
|
||||
t['throws'](function () { return ES.ToString(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t['throws'](function () { return ES.ToString(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('ToObject', function (t) {
|
||||
t['throws'](function () { return ES.ToObject(undefined); }, TypeError, 'undefined throws');
|
||||
t['throws'](function () { return ES.ToObject(null); }, TypeError, 'null throws');
|
||||
forEach(numbers, function (number) {
|
||||
forEach(v.numbers, function (number) {
|
||||
var obj = ES.ToObject(number);
|
||||
t.equal(typeof obj, 'object', 'number ' + number + ' coerces to object');
|
||||
t.equal(true, obj instanceof Number, 'object of ' + number + ' is Number object');
|
||||
@@ -173,17 +159,17 @@ test('CheckObjectCoercible', function (t) {
|
||||
t['throws'](function () { return ES.CheckObjectCoercible(undefined); }, TypeError, 'undefined throws');
|
||||
t['throws'](function () { return ES.CheckObjectCoercible(null); }, TypeError, 'null throws');
|
||||
var checkCoercible = function (value) {
|
||||
t.doesNotThrow(function () { return ES.CheckObjectCoercible(value); }, '"' + value + '" does not throw');
|
||||
t.doesNotThrow(function () { return ES.CheckObjectCoercible(value); }, debug(value) + ' does not throw');
|
||||
};
|
||||
forEach(objects.concat(nonNullPrimitives), checkCoercible);
|
||||
forEach(v.objects.concat(v.nonNullPrimitives), checkCoercible);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('IsCallable', function (t) {
|
||||
t.equal(true, ES.IsCallable(function () {}), 'function is callable');
|
||||
var nonCallables = [/a/g, {}, Object.prototype, NaN].concat(primitives);
|
||||
var nonCallables = [/a/g, {}, Object.prototype, NaN].concat(v.primitives);
|
||||
forEach(nonCallables, function (nonCallable) {
|
||||
t.equal(false, ES.IsCallable(nonCallable), nonCallable + ' is not callable');
|
||||
t.equal(false, ES.IsCallable(nonCallable), debug(nonCallable) + ' is not callable');
|
||||
});
|
||||
t.end();
|
||||
});
|
||||
@@ -191,8 +177,8 @@ test('IsCallable', function (t) {
|
||||
test('SameValue', function (t) {
|
||||
t.equal(true, ES.SameValue(NaN, NaN), 'NaN is SameValue as NaN');
|
||||
t.equal(false, ES.SameValue(0, -0), '+0 is not SameValue as -0');
|
||||
forEach(objects.concat(primitives), function (val) {
|
||||
t.equal(val === val, ES.SameValue(val, val), '"' + val + '" is SameValue to itself');
|
||||
forEach(v.objects.concat(v.primitives), function (val) {
|
||||
t.equal(val === val, ES.SameValue(val, val), debug(val) + ' is SameValue to itself');
|
||||
});
|
||||
t.end();
|
||||
});
|
||||
@@ -211,107 +197,84 @@ test('Type', function (t) {
|
||||
t.end();
|
||||
});
|
||||
|
||||
var bothDescriptor = function () {
|
||||
return { '[[Get]]': function () {}, '[[Value]]': true };
|
||||
};
|
||||
var accessorDescriptor = function () {
|
||||
return {
|
||||
'[[Get]]': function () {},
|
||||
'[[Enumerable]]': true,
|
||||
'[[Configurable]]': true
|
||||
};
|
||||
};
|
||||
var mutatorDescriptor = function () {
|
||||
return {
|
||||
'[[Set]]': function () {},
|
||||
'[[Enumerable]]': true,
|
||||
'[[Configurable]]': true
|
||||
};
|
||||
};
|
||||
var dataDescriptor = function () {
|
||||
return {
|
||||
'[[Value]]': 42,
|
||||
'[[Writable]]': false,
|
||||
'[[Configurable]]': false
|
||||
};
|
||||
};
|
||||
var genericDescriptor = function () {
|
||||
return {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': false
|
||||
};
|
||||
};
|
||||
|
||||
test('IsPropertyDescriptor', function (t) {
|
||||
forEach(primitives, function (primitive) {
|
||||
t.equal(ES.IsPropertyDescriptor(primitive), false, primitive + ' is not a Property Descriptor');
|
||||
forEach(v.primitives, function (primitive) {
|
||||
t.equal(ES.IsPropertyDescriptor(primitive), false, debug(primitive) + ' is not a Property Descriptor');
|
||||
});
|
||||
|
||||
t.equal(ES.IsPropertyDescriptor({ invalid: true }), false, 'invalid keys not allowed on a Property Descriptor');
|
||||
|
||||
t.equal(ES.IsPropertyDescriptor({}), true, 'empty object is an incomplete Property Descriptor');
|
||||
|
||||
t.equal(ES.IsPropertyDescriptor(accessorDescriptor()), true, 'accessor descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(mutatorDescriptor()), true, 'mutator descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(dataDescriptor()), true, 'data descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(genericDescriptor()), true, 'generic descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(v.accessorDescriptor()), true, 'accessor descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(v.mutatorDescriptor()), true, 'mutator descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(v.dataDescriptor()), true, 'data descriptor is a Property Descriptor');
|
||||
t.equal(ES.IsPropertyDescriptor(v.genericDescriptor()), true, 'generic descriptor is a Property Descriptor');
|
||||
|
||||
t['throws'](function () {
|
||||
ES.IsPropertyDescriptor(bothDescriptor());
|
||||
}, TypeError, 'a Property Descriptor can not be both a Data and an Accessor Descriptor');
|
||||
t['throws'](
|
||||
function () { ES.IsPropertyDescriptor(v.bothDescriptor()); },
|
||||
TypeError,
|
||||
'a Property Descriptor can not be both a Data and an Accessor Descriptor'
|
||||
);
|
||||
|
||||
t['throws'](
|
||||
function () { ES.IsPropertyDescriptor(v.bothDescriptorWritable()); },
|
||||
TypeError,
|
||||
'a Property Descriptor can not be both a Data and an Accessor Descriptor'
|
||||
);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('IsAccessorDescriptor', function (t) {
|
||||
forEach(nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](function () { ES.IsAccessorDescriptor(primitive); }, TypeError, primitive + ' is not a Property Descriptor');
|
||||
forEach(v.nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](function () { ES.IsAccessorDescriptor(primitive); }, TypeError, debug(primitive) + ' is not a Property Descriptor');
|
||||
});
|
||||
|
||||
t.equal(ES.IsAccessorDescriptor(), false, 'no value is not an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(undefined), false, 'undefined value is not an Accessor Descriptor');
|
||||
|
||||
t.equal(ES.IsAccessorDescriptor(accessorDescriptor()), true, 'accessor descriptor is an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(mutatorDescriptor()), true, 'mutator descriptor is an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(dataDescriptor()), false, 'data descriptor is not an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(genericDescriptor()), false, 'generic descriptor is not an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(v.accessorDescriptor()), true, 'accessor descriptor is an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(v.mutatorDescriptor()), true, 'mutator descriptor is an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(v.dataDescriptor()), false, 'data descriptor is not an Accessor Descriptor');
|
||||
t.equal(ES.IsAccessorDescriptor(v.genericDescriptor()), false, 'generic descriptor is not an Accessor Descriptor');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('IsDataDescriptor', function (t) {
|
||||
forEach(nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](function () { ES.IsDataDescriptor(primitive); }, TypeError, primitive + ' is not a Property Descriptor');
|
||||
forEach(v.nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](function () { ES.IsDataDescriptor(primitive); }, TypeError, debug(primitive) + ' is not a Property Descriptor');
|
||||
});
|
||||
|
||||
t.equal(ES.IsDataDescriptor(), false, 'no value is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
|
||||
|
||||
t.equal(ES.IsDataDescriptor(accessorDescriptor()), false, 'accessor descriptor is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(mutatorDescriptor()), false, 'mutator descriptor is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(dataDescriptor()), true, 'data descriptor is a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(genericDescriptor()), false, 'generic descriptor is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(v.accessorDescriptor()), false, 'accessor descriptor is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(v.mutatorDescriptor()), false, 'mutator descriptor is not a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(v.dataDescriptor()), true, 'data descriptor is a Data Descriptor');
|
||||
t.equal(ES.IsDataDescriptor(v.genericDescriptor()), false, 'generic descriptor is not a Data Descriptor');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('IsGenericDescriptor', function (t) {
|
||||
forEach(nonNullPrimitives.concat(null), function (primitive) {
|
||||
forEach(v.nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](
|
||||
function () { ES.IsGenericDescriptor(primitive); },
|
||||
TypeError,
|
||||
primitive + ' is not a Property Descriptor'
|
||||
debug(primitive) + ' is not a Property Descriptor'
|
||||
);
|
||||
});
|
||||
|
||||
t.equal(ES.IsGenericDescriptor(), false, 'no value is not a Data Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
|
||||
|
||||
t.equal(ES.IsGenericDescriptor(accessorDescriptor()), false, 'accessor descriptor is not a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(mutatorDescriptor()), false, 'mutator descriptor is not a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(dataDescriptor()), false, 'data descriptor is not a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(v.accessorDescriptor()), false, 'accessor descriptor is not a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(v.mutatorDescriptor()), false, 'mutator descriptor is not a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(v.dataDescriptor()), false, 'data descriptor is not a generic Descriptor');
|
||||
|
||||
t.equal(ES.IsGenericDescriptor(genericDescriptor()), true, 'generic descriptor is a generic Descriptor');
|
||||
t.equal(ES.IsGenericDescriptor(v.genericDescriptor()), true, 'generic descriptor is a generic Descriptor');
|
||||
|
||||
t.end();
|
||||
});
|
||||
@@ -320,15 +283,15 @@ test('FromPropertyDescriptor', function (t) {
|
||||
t.equal(ES.FromPropertyDescriptor(), undefined, 'no value begets undefined');
|
||||
t.equal(ES.FromPropertyDescriptor(undefined), undefined, 'undefined value begets undefined');
|
||||
|
||||
forEach(nonNullPrimitives.concat(null), function (primitive) {
|
||||
forEach(v.nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](
|
||||
function () { ES.FromPropertyDescriptor(primitive); },
|
||||
TypeError,
|
||||
primitive + ' is not a Property Descriptor'
|
||||
debug(primitive) + ' is not a Property Descriptor'
|
||||
);
|
||||
});
|
||||
|
||||
var accessor = accessorDescriptor();
|
||||
var accessor = v.accessorDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(accessor), {
|
||||
get: accessor['[[Get]]'],
|
||||
set: accessor['[[Set]]'],
|
||||
@@ -336,14 +299,14 @@ test('FromPropertyDescriptor', function (t) {
|
||||
configurable: !!accessor['[[Configurable]]']
|
||||
});
|
||||
|
||||
var mutator = mutatorDescriptor();
|
||||
var mutator = v.mutatorDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(mutator), {
|
||||
get: mutator['[[Get]]'],
|
||||
set: mutator['[[Set]]'],
|
||||
enumerable: !!mutator['[[Enumerable]]'],
|
||||
configurable: !!mutator['[[Configurable]]']
|
||||
});
|
||||
var data = dataDescriptor();
|
||||
var data = v.dataDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(data), {
|
||||
value: data['[[Value]]'],
|
||||
writable: data['[[Writable]]'],
|
||||
@@ -352,7 +315,7 @@ test('FromPropertyDescriptor', function (t) {
|
||||
});
|
||||
|
||||
t['throws'](
|
||||
function () { ES.FromPropertyDescriptor(genericDescriptor()); },
|
||||
function () { ES.FromPropertyDescriptor(v.genericDescriptor()); },
|
||||
TypeError,
|
||||
'a complete Property Descriptor is required'
|
||||
);
|
||||
@@ -361,36 +324,36 @@ test('FromPropertyDescriptor', function (t) {
|
||||
});
|
||||
|
||||
test('ToPropertyDescriptor', function (t) {
|
||||
forEach(nonNullPrimitives.concat(null), function (primitive) {
|
||||
forEach(v.nonNullPrimitives.concat(null), function (primitive) {
|
||||
t['throws'](
|
||||
function () { ES.ToPropertyDescriptor(primitive); },
|
||||
TypeError,
|
||||
primitive + ' is not an Object'
|
||||
debug(primitive) + ' is not an Object'
|
||||
);
|
||||
});
|
||||
|
||||
var accessor = accessorDescriptor();
|
||||
var accessor = v.accessorDescriptor();
|
||||
t.deepEqual(ES.ToPropertyDescriptor({
|
||||
get: accessor['[[Get]]'],
|
||||
enumerable: !!accessor['[[Enumerable]]'],
|
||||
configurable: !!accessor['[[Configurable]]']
|
||||
}), accessor);
|
||||
|
||||
var mutator = mutatorDescriptor();
|
||||
var mutator = v.mutatorDescriptor();
|
||||
t.deepEqual(ES.ToPropertyDescriptor({
|
||||
set: mutator['[[Set]]'],
|
||||
enumerable: !!mutator['[[Enumerable]]'],
|
||||
configurable: !!mutator['[[Configurable]]']
|
||||
}), mutator);
|
||||
|
||||
var data = dataDescriptor();
|
||||
var data = v.descriptors.nonConfigurable(v.dataDescriptor());
|
||||
t.deepEqual(ES.ToPropertyDescriptor({
|
||||
value: data['[[Value]]'],
|
||||
writable: data['[[Writable]]'],
|
||||
configurable: !!data['[[Configurable]]']
|
||||
}), data);
|
||||
|
||||
var both = bothDescriptor();
|
||||
var both = v.bothDescriptor();
|
||||
t['throws'](
|
||||
function () {
|
||||
ES.ToPropertyDescriptor({ get: both['[[Get]]'], value: both['[[Value]]'] });
|
||||
@@ -413,3 +376,407 @@ test('ToPropertyDescriptor', function (t) {
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('Abstract Equality Comparison', function (t) {
|
||||
t.test('same types use ===', function (st) {
|
||||
forEach(v.primitives.concat(v.objects), function (value) {
|
||||
st.equal(ES['Abstract Equality Comparison'](value, value), value === value, debug(value) + ' is abstractly equal to itself');
|
||||
});
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.test('different types coerce', function (st) {
|
||||
var pairs = [
|
||||
[null, undefined],
|
||||
[3, '3'],
|
||||
[true, '3'],
|
||||
[true, 3],
|
||||
[false, 0],
|
||||
[false, '0'],
|
||||
[3, [3]],
|
||||
['3', [3]],
|
||||
[true, [1]],
|
||||
[false, [0]],
|
||||
[String(v.coercibleObject), v.coercibleObject],
|
||||
[Number(String(v.coercibleObject)), v.coercibleObject],
|
||||
[Number(v.coercibleObject), v.coercibleObject],
|
||||
[String(Number(v.coercibleObject)), v.coercibleObject]
|
||||
];
|
||||
forEach(pairs, function (pair) {
|
||||
var a = pair[0];
|
||||
var b = pair[1];
|
||||
// eslint-disable-next-line eqeqeq
|
||||
st.equal(ES['Abstract Equality Comparison'](a, b), a == b, debug(a) + ' == ' + debug(b));
|
||||
// eslint-disable-next-line eqeqeq
|
||||
st.equal(ES['Abstract Equality Comparison'](b, a), b == a, debug(b) + ' == ' + debug(a));
|
||||
});
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('Strict Equality Comparison', function (t) {
|
||||
t.test('same types use ===', function (st) {
|
||||
forEach(v.primitives.concat(v.objects), function (value) {
|
||||
st.equal(ES['Strict Equality Comparison'](value, value), value === value, debug(value) + ' is strictly equal to itself');
|
||||
});
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.test('different types are not ===', function (st) {
|
||||
var pairs = [
|
||||
[null, undefined],
|
||||
[3, '3'],
|
||||
[true, '3'],
|
||||
[true, 3],
|
||||
[false, 0],
|
||||
[false, '0'],
|
||||
[3, [3]],
|
||||
['3', [3]],
|
||||
[true, [1]],
|
||||
[false, [0]],
|
||||
[String(v.coercibleObject), v.coercibleObject],
|
||||
[Number(String(v.coercibleObject)), v.coercibleObject],
|
||||
[Number(v.coercibleObject), v.coercibleObject],
|
||||
[String(Number(v.coercibleObject)), v.coercibleObject]
|
||||
];
|
||||
forEach(pairs, function (pair) {
|
||||
var a = pair[0];
|
||||
var b = pair[1];
|
||||
st.equal(ES['Strict Equality Comparison'](a, b), a === b, debug(a) + ' === ' + debug(b));
|
||||
st.equal(ES['Strict Equality Comparison'](b, a), b === a, debug(b) + ' === ' + debug(a));
|
||||
});
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('Abstract Relational Comparison', function (t) {
|
||||
t.test('at least one operand is NaN', function (st) {
|
||||
st.equal(ES['Abstract Relational Comparison'](NaN, {}, true), undefined, 'LeftFirst: first is NaN, returns undefined');
|
||||
st.equal(ES['Abstract Relational Comparison']({}, NaN, true), undefined, 'LeftFirst: second is NaN, returns undefined');
|
||||
st.equal(ES['Abstract Relational Comparison'](NaN, {}, false), undefined, '!LeftFirst: first is NaN, returns undefined');
|
||||
st.equal(ES['Abstract Relational Comparison']({}, NaN, false), undefined, '!LeftFirst: second is NaN, returns undefined');
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.equal(ES['Abstract Relational Comparison'](3, 4, true), true, 'LeftFirst: 3 is less than 4');
|
||||
t.equal(ES['Abstract Relational Comparison'](4, 3, true), false, 'LeftFirst: 3 is not less than 4');
|
||||
t.equal(ES['Abstract Relational Comparison'](3, 4, false), true, '!LeftFirst: 3 is less than 4');
|
||||
t.equal(ES['Abstract Relational Comparison'](4, 3, false), false, '!LeftFirst: 3 is not less than 4');
|
||||
|
||||
t.equal(ES['Abstract Relational Comparison']('3', '4', true), true, 'LeftFirst: "3" is less than "4"');
|
||||
t.equal(ES['Abstract Relational Comparison']('4', '3', true), false, 'LeftFirst: "3" is not less than "4"');
|
||||
t.equal(ES['Abstract Relational Comparison']('3', '4', false), true, '!LeftFirst: "3" is less than "4"');
|
||||
t.equal(ES['Abstract Relational Comparison']('4', '3', false), false, '!LeftFirst: "3" is not less than "4"');
|
||||
|
||||
t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, 42, true), true, 'LeftFirst: coercible object is less than 42');
|
||||
t.equal(ES['Abstract Relational Comparison'](42, v.coercibleObject, true), false, 'LeftFirst: 42 is not less than coercible object');
|
||||
t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, 42, false), true, '!LeftFirst: coercible object is less than 42');
|
||||
t.equal(ES['Abstract Relational Comparison'](42, v.coercibleObject, false), false, '!LeftFirst: 42 is not less than coercible object');
|
||||
|
||||
t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, '3', true), false, 'LeftFirst: coercible object is not less than "3"');
|
||||
t.equal(ES['Abstract Relational Comparison']('3', v.coercibleObject, true), false, 'LeftFirst: "3" is not less than coercible object');
|
||||
t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, '3', false), false, '!LeftFirst: coercible object is not less than "3"');
|
||||
t.equal(ES['Abstract Relational Comparison']('3', v.coercibleObject, false), false, '!LeftFirst: "3" is not less than coercible object');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('FromPropertyDescriptor', function (t) {
|
||||
t.equal(ES.FromPropertyDescriptor(), undefined, 'no value begets undefined');
|
||||
t.equal(ES.FromPropertyDescriptor(undefined), undefined, 'undefined value begets undefined');
|
||||
|
||||
forEach(v.nonUndefinedPrimitives, function (primitive) {
|
||||
t['throws'](
|
||||
function () { ES.FromPropertyDescriptor(primitive); },
|
||||
TypeError,
|
||||
debug(primitive) + ' is not a Property Descriptor'
|
||||
);
|
||||
});
|
||||
|
||||
var accessor = v.accessorDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(accessor), {
|
||||
get: accessor['[[Get]]'],
|
||||
set: accessor['[[Set]]'],
|
||||
enumerable: !!accessor['[[Enumerable]]'],
|
||||
configurable: !!accessor['[[Configurable]]']
|
||||
});
|
||||
|
||||
var mutator = v.mutatorDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(mutator), {
|
||||
get: mutator['[[Get]]'],
|
||||
set: mutator['[[Set]]'],
|
||||
enumerable: !!mutator['[[Enumerable]]'],
|
||||
configurable: !!mutator['[[Configurable]]']
|
||||
});
|
||||
var data = v.dataDescriptor();
|
||||
t.deepEqual(ES.FromPropertyDescriptor(data), {
|
||||
value: data['[[Value]]'],
|
||||
writable: data['[[Writable]]'],
|
||||
enumerable: !!data['[[Enumerable]]'],
|
||||
configurable: !!data['[[Configurable]]']
|
||||
});
|
||||
|
||||
t['throws'](
|
||||
function () { ES.FromPropertyDescriptor(v.genericDescriptor()); },
|
||||
TypeError,
|
||||
'a complete Property Descriptor is required'
|
||||
);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('SecFromTime', function (t) {
|
||||
var now = new Date();
|
||||
t.equal(ES.SecFromTime(now.getTime()), now.getUTCSeconds(), 'second from Date timestamp matches getUTCSeconds');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('MinFromTime', function (t) {
|
||||
var now = new Date();
|
||||
t.equal(ES.MinFromTime(now.getTime()), now.getUTCMinutes(), 'minute from Date timestamp matches getUTCMinutes');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('HourFromTime', function (t) {
|
||||
var now = new Date();
|
||||
t.equal(ES.HourFromTime(now.getTime()), now.getUTCHours(), 'hour from Date timestamp matches getUTCHours');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('msFromTime', function (t) {
|
||||
var now = new Date();
|
||||
t.equal(ES.msFromTime(now.getTime()), now.getUTCMilliseconds(), 'ms from Date timestamp matches getUTCMilliseconds');
|
||||
t.end();
|
||||
});
|
||||
|
||||
var msPerSecond = 1e3;
|
||||
var msPerMinute = 60 * msPerSecond;
|
||||
var msPerHour = 60 * msPerMinute;
|
||||
var msPerDay = 24 * msPerHour;
|
||||
|
||||
test('Day', function (t) {
|
||||
var time = Date.UTC(2019, 8, 10, 2, 3, 4, 5);
|
||||
var add = 2.5;
|
||||
var later = new Date(time + (add * msPerDay));
|
||||
|
||||
t.equal(ES.Day(later.getTime()), ES.Day(time) + Math.floor(add), 'adding 2.5 days worth of ms, gives a Day delta of 2');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('TimeWithinDay', function (t) {
|
||||
var time = Date.UTC(2019, 8, 10, 2, 3, 4, 5);
|
||||
var add = 2.5;
|
||||
var later = new Date(time + (add * msPerDay));
|
||||
|
||||
t.equal(ES.TimeWithinDay(later.getTime()), ES.TimeWithinDay(time) + (0.5 * msPerDay), 'adding 2.5 days worth of ms, gives a TimeWithinDay delta of +0.5');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('DayFromYear', function (t) {
|
||||
t.equal(ES.DayFromYear(2021) - ES.DayFromYear(2020), 366, '2021 is a leap year, has 366 days');
|
||||
t.equal(ES.DayFromYear(2020) - ES.DayFromYear(2019), 365, '2020 is not a leap year, has 365 days');
|
||||
t.equal(ES.DayFromYear(2019) - ES.DayFromYear(2018), 365, '2019 is not a leap year, has 365 days');
|
||||
t.equal(ES.DayFromYear(2018) - ES.DayFromYear(2017), 365, '2018 is not a leap year, has 365 days');
|
||||
t.equal(ES.DayFromYear(2017) - ES.DayFromYear(2016), 366, '2017 is a leap year, has 366 days');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('TimeFromYear', function (t) {
|
||||
for (var i = 1900; i < 2100; i += 1) {
|
||||
t.equal(ES.TimeFromYear(i), Date.UTC(i, 0, 1), 'TimeFromYear matches a Date object’s year: ' + i);
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('YearFromTime', function (t) {
|
||||
for (var i = 1900; i < 2100; i += 1) {
|
||||
t.equal(ES.YearFromTime(Date.UTC(i, 0, 1)), i, 'YearFromTime matches a Date object’s year on 1/1: ' + i);
|
||||
t.equal(ES.YearFromTime(Date.UTC(i, 10, 1)), i, 'YearFromTime matches a Date object’s year on 10/1: ' + i);
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('WeekDay', function (t) {
|
||||
var now = new Date();
|
||||
var today = now.getUTCDay();
|
||||
for (var i = 0; i < 7; i += 1) {
|
||||
var weekDay = ES.WeekDay(now.getTime() + (i * msPerDay));
|
||||
t.equal(weekDay, (today + i) % 7, i + ' days after today (' + today + '), WeekDay is ' + weekDay);
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('DaysInYear', function (t) {
|
||||
t.equal(ES.DaysInYear(2021), 365, '2021 is not a leap year');
|
||||
t.equal(ES.DaysInYear(2020), 366, '2020 is a leap year');
|
||||
t.equal(ES.DaysInYear(2019), 365, '2019 is not a leap year');
|
||||
t.equal(ES.DaysInYear(2018), 365, '2018 is not a leap year');
|
||||
t.equal(ES.DaysInYear(2017), 365, '2017 is not a leap year');
|
||||
t.equal(ES.DaysInYear(2016), 366, '2016 is a leap year');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('InLeapYear', function (t) {
|
||||
t.equal(ES.InLeapYear(Date.UTC(2021, 0, 1)), 0, '2021 is not a leap year');
|
||||
t.equal(ES.InLeapYear(Date.UTC(2020, 0, 1)), 1, '2020 is a leap year');
|
||||
t.equal(ES.InLeapYear(Date.UTC(2019, 0, 1)), 0, '2019 is not a leap year');
|
||||
t.equal(ES.InLeapYear(Date.UTC(2018, 0, 1)), 0, '2018 is not a leap year');
|
||||
t.equal(ES.InLeapYear(Date.UTC(2017, 0, 1)), 0, '2017 is not a leap year');
|
||||
t.equal(ES.InLeapYear(Date.UTC(2016, 0, 1)), 1, '2016 is a leap year');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('DayWithinYear', function (t) {
|
||||
t.equal(ES.DayWithinYear(Date.UTC(2019, 0, 1)), 0, '1/1 is the 1st day');
|
||||
t.equal(ES.DayWithinYear(Date.UTC(2019, 11, 31)), 364, '12/31 is the 365th day in a non leap year');
|
||||
t.equal(ES.DayWithinYear(Date.UTC(2016, 11, 31)), 365, '12/31 is the 366th day in a leap year');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('MonthFromTime', function (t) {
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 0, 1)), 0, 'non-leap: 1/1 gives January');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 0, 31)), 0, 'non-leap: 1/31 gives January');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 1)), 1, 'non-leap: 2/1 gives February');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 28)), 1, 'non-leap: 2/28 gives February');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 29)), 2, 'non-leap: 2/29 gives March');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 2, 1)), 2, 'non-leap: 3/1 gives March');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 2, 31)), 2, 'non-leap: 3/31 gives March');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 3, 1)), 3, 'non-leap: 4/1 gives April');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 3, 30)), 3, 'non-leap: 4/30 gives April');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 4, 1)), 4, 'non-leap: 5/1 gives May');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 4, 31)), 4, 'non-leap: 5/31 gives May');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 5, 1)), 5, 'non-leap: 6/1 gives June');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 5, 30)), 5, 'non-leap: 6/30 gives June');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 6, 1)), 6, 'non-leap: 7/1 gives July');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 6, 31)), 6, 'non-leap: 7/31 gives July');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 7, 1)), 7, 'non-leap: 8/1 gives August');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 7, 30)), 7, 'non-leap: 8/30 gives August');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 8, 1)), 8, 'non-leap: 9/1 gives September');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 8, 30)), 8, 'non-leap: 9/30 gives September');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 9, 1)), 9, 'non-leap: 10/1 gives October');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 9, 31)), 9, 'non-leap: 10/31 gives October');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 10, 1)), 10, 'non-leap: 11/1 gives November');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 10, 30)), 10, 'non-leap: 11/30 gives November');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 11, 1)), 11, 'non-leap: 12/1 gives December');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2019, 11, 31)), 11, 'non-leap: 12/31 gives December');
|
||||
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 0, 1)), 0, 'leap: 1/1 gives January');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 0, 31)), 0, 'leap: 1/31 gives January');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 1)), 1, 'leap: 2/1 gives February');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 28)), 1, 'leap: 2/28 gives February');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 29)), 1, 'leap: 2/29 gives February');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 2, 1)), 2, 'leap: 3/1 gives March');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 2, 31)), 2, 'leap: 3/31 gives March');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 3, 1)), 3, 'leap: 4/1 gives April');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 3, 30)), 3, 'leap: 4/30 gives April');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 4, 1)), 4, 'leap: 5/1 gives May');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 4, 31)), 4, 'leap: 5/31 gives May');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 5, 1)), 5, 'leap: 6/1 gives June');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 5, 30)), 5, 'leap: 6/30 gives June');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 6, 1)), 6, 'leap: 7/1 gives July');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 6, 31)), 6, 'leap: 7/31 gives July');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 7, 1)), 7, 'leap: 8/1 gives August');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 7, 30)), 7, 'leap: 8/30 gives August');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 8, 1)), 8, 'leap: 9/1 gives September');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 8, 30)), 8, 'leap: 9/30 gives September');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 9, 1)), 9, 'leap: 10/1 gives October');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 9, 31)), 9, 'leap: 10/31 gives October');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 10, 1)), 10, 'leap: 11/1 gives November');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 10, 30)), 10, 'leap: 11/30 gives November');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 11, 1)), 11, 'leap: 12/1 gives December');
|
||||
t.equal(ES.MonthFromTime(Date.UTC(2016, 11, 31)), 11, 'leap: 12/31 gives December');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('DateFromTime', function (t) {
|
||||
var i;
|
||||
for (i = 1; i <= 28; i += 1) {
|
||||
t.equal(ES.DateFromTime(Date.UTC(2019, 1, i)), i, '2019.02.' + i + ' is date ' + i);
|
||||
}
|
||||
for (i = 1; i <= 29; i += 1) {
|
||||
t.equal(ES.DateFromTime(Date.UTC(2016, 1, i)), i, '2016.02.' + i + ' is date ' + i);
|
||||
}
|
||||
for (i = 1; i <= 30; i += 1) {
|
||||
t.equal(ES.DateFromTime(Date.UTC(2019, 8, i)), i, '2019.09.' + i + ' is date ' + i);
|
||||
}
|
||||
for (i = 1; i <= 31; i += 1) {
|
||||
t.equal(ES.DateFromTime(Date.UTC(2019, 9, i)), i, '2019.10.' + i + ' is date ' + i);
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('MakeDay', function (t) {
|
||||
var day2015 = 16687;
|
||||
t.equal(ES.MakeDay(2015, 8, 9), day2015, '2015.09.09 is day 16687');
|
||||
var day2016 = day2015 + 366; // 2016 is a leap year
|
||||
t.equal(ES.MakeDay(2016, 8, 9), day2016, '2015.09.09 is day 17053');
|
||||
var day2017 = day2016 + 365;
|
||||
t.equal(ES.MakeDay(2017, 8, 9), day2017, '2017.09.09 is day 17418');
|
||||
var day2018 = day2017 + 365;
|
||||
t.equal(ES.MakeDay(2018, 8, 9), day2018, '2018.09.09 is day 17783');
|
||||
var day2019 = day2018 + 365;
|
||||
t.equal(ES.MakeDay(2019, 8, 9), day2019, '2019.09.09 is day 18148');
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('MakeDate', function (t) {
|
||||
forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
|
||||
t.ok(is(ES.MakeDate(nonFiniteNumber, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `day`');
|
||||
t.ok(is(ES.MakeDate(0, nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `time`');
|
||||
});
|
||||
t.equal(ES.MakeDate(0, 0), 0, 'zero day and zero time is zero date');
|
||||
t.equal(ES.MakeDate(0, 123), 123, 'zero day and nonzero time is a date of the "time"');
|
||||
t.equal(ES.MakeDate(1, 0), msPerDay, 'day of 1 and zero time is a date of "ms per day"');
|
||||
t.equal(ES.MakeDate(3, 0), 3 * msPerDay, 'day of 3 and zero time is a date of thrice "ms per day"');
|
||||
t.equal(ES.MakeDate(1, 123), msPerDay + 123, 'day of 1 and nonzero time is a date of "ms per day" plus the "time"');
|
||||
t.equal(ES.MakeDate(3, 123), (3 * msPerDay) + 123, 'day of 3 and nonzero time is a date of thrice "ms per day" plus the "time"');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('MakeTime', function (t) {
|
||||
forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
|
||||
t.ok(is(ES.MakeTime(nonFiniteNumber, 0, 0, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `hour`');
|
||||
t.ok(is(ES.MakeTime(0, nonFiniteNumber, 0, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `min`');
|
||||
t.ok(is(ES.MakeTime(0, 0, nonFiniteNumber, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `sec`');
|
||||
t.ok(is(ES.MakeTime(0, 0, 0, nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `ms`');
|
||||
});
|
||||
|
||||
t.equal(
|
||||
ES.MakeTime(1.2, 2.3, 3.4, 4.5),
|
||||
(1 * msPerHour) + (2 * msPerMinute) + (3 * msPerSecond) + 4,
|
||||
'all numbers are converted to integer, multiplied by the right number of ms, and summed'
|
||||
);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('TimeClip', function (t) {
|
||||
forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
|
||||
t.ok(is(ES.TimeClip(nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `time`');
|
||||
});
|
||||
t.ok(is(ES.TimeClip(8.64e15 + 1), NaN), '8.64e15 is the largest magnitude considered "finite"');
|
||||
t.ok(is(ES.TimeClip(-8.64e15 - 1), NaN), '-8.64e15 is the largest magnitude considered "finite"');
|
||||
|
||||
forEach(v.zeroes.concat([-10, 10, Date.now()]), function (time) {
|
||||
t.equal(ES.TimeClip(time), time, debug(time) + ' is a time of ' + debug(time));
|
||||
});
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('modulo', function (t) {
|
||||
t.equal(3 % 2, 1, '+3 % 2 is +1');
|
||||
t.equal(ES.modulo(3, 2), 1, '+3 mod 2 is +1');
|
||||
|
||||
t.equal(-3 % 2, -1, '-3 % 2 is -1');
|
||||
t.equal(ES.modulo(-3, 2), 1, '-3 mod 2 is +1');
|
||||
t.end();
|
||||
});
|
||||
|
||||
82
node_modules/es-abstract/test/helpers/assertRecord.js
generated
vendored
82
node_modules/es-abstract/test/helpers/assertRecord.js
generated
vendored
@@ -7,54 +7,54 @@ var assertRecord = require('../../helpers/assertRecord');
|
||||
var v = require('./values');
|
||||
|
||||
module.exports = function assertRecordTests(ES, test) {
|
||||
test('Property Descriptor', function (t) {
|
||||
var record = 'Property Descriptor';
|
||||
test('Property Descriptor', function (t) {
|
||||
var record = 'Property Descriptor';
|
||||
|
||||
forEach(v.nonUndefinedPrimitives, function (primitive) {
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', primitive); },
|
||||
TypeError,
|
||||
debug(primitive) + ' is not a Property Descriptor'
|
||||
);
|
||||
});
|
||||
forEach(v.nonUndefinedPrimitives, function (primitive) {
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', primitive); },
|
||||
TypeError,
|
||||
debug(primitive) + ' is not a Property Descriptor'
|
||||
);
|
||||
});
|
||||
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', { invalid: true }); },
|
||||
TypeError,
|
||||
'invalid keys not allowed on a Property Descriptor'
|
||||
);
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', { invalid: true }); },
|
||||
TypeError,
|
||||
'invalid keys not allowed on a Property Descriptor'
|
||||
);
|
||||
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', {}); },
|
||||
'empty object is an incomplete Property Descriptor'
|
||||
);
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', {}); },
|
||||
'empty object is an incomplete Property Descriptor'
|
||||
);
|
||||
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.accessorDescriptor()); },
|
||||
'accessor descriptor is a Property Descriptor'
|
||||
);
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.accessorDescriptor()); },
|
||||
'accessor descriptor is a Property Descriptor'
|
||||
);
|
||||
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.mutatorDescriptor()); },
|
||||
'mutator descriptor is a Property Descriptor'
|
||||
);
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.mutatorDescriptor()); },
|
||||
'mutator descriptor is a Property Descriptor'
|
||||
);
|
||||
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.dataDescriptor()); },
|
||||
'data descriptor is a Property Descriptor'
|
||||
);
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.dataDescriptor()); },
|
||||
'data descriptor is a Property Descriptor'
|
||||
);
|
||||
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.genericDescriptor()); },
|
||||
'generic descriptor is a Property Descriptor'
|
||||
);
|
||||
t.doesNotThrow(
|
||||
function () { assertRecord(ES, record, 'arg', v.genericDescriptor()); },
|
||||
'generic descriptor is a Property Descriptor'
|
||||
);
|
||||
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', v.bothDescriptor()); },
|
||||
TypeError,
|
||||
'a Property Descriptor can not be both a Data and an Accessor Descriptor'
|
||||
);
|
||||
t['throws'](
|
||||
function () { assertRecord(ES, record, 'arg', v.bothDescriptor()); },
|
||||
TypeError,
|
||||
'a Property Descriptor can not be both a Data and an Accessor Descriptor'
|
||||
);
|
||||
|
||||
t.end();
|
||||
});
|
||||
t.end();
|
||||
});
|
||||
};
|
||||
|
||||
50
node_modules/es-abstract/test/helpers/getSymbolDescription.js
generated
vendored
Normal file
50
node_modules/es-abstract/test/helpers/getSymbolDescription.js
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
'use strict';
|
||||
|
||||
var test = require('tape');
|
||||
var debug = require('object-inspect');
|
||||
var forEach = require('foreach');
|
||||
|
||||
var v = require('./values');
|
||||
var getSymbolDescription = require('../../helpers/getSymbolDescription');
|
||||
|
||||
test('getSymbolDescription', function (t) {
|
||||
t.test('no symbols', { skip: v.hasSymbols }, function (st) {
|
||||
st['throws'](
|
||||
getSymbolDescription,
|
||||
SyntaxError,
|
||||
'requires Symbol support'
|
||||
);
|
||||
|
||||
st.end();
|
||||
});
|
||||
|
||||
forEach(v.nonSymbolPrimitives.concat(v.objects), function (nonSymbol) {
|
||||
t['throws'](
|
||||
function () { getSymbolDescription(nonSymbol); },
|
||||
TypeError,
|
||||
debug(nonSymbol) + ' is not a Symbol'
|
||||
);
|
||||
});
|
||||
|
||||
t.test('with symbols', { skip: !v.hasSymbols }, function (st) {
|
||||
forEach(
|
||||
[
|
||||
[Symbol(), undefined],
|
||||
[Symbol(undefined), undefined],
|
||||
[Symbol(null), 'null'],
|
||||
[Symbol(''), ''],
|
||||
[Symbol.iterator, 'Symbol.iterator'],
|
||||
[Symbol('foo'), 'foo']
|
||||
],
|
||||
function (pair) {
|
||||
var sym = pair[0];
|
||||
var desc = pair[1];
|
||||
st.equal(getSymbolDescription(sym), desc, debug(sym) + ' yields ' + debug(desc));
|
||||
}
|
||||
);
|
||||
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.end();
|
||||
});
|
||||
85
node_modules/es-abstract/test/helpers/values.js
generated
vendored
85
node_modules/es-abstract/test/helpers/values.js
generated
vendored
@@ -1,15 +1,27 @@
|
||||
'use strict';
|
||||
|
||||
var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
|
||||
var assign = require('../../helpers/assign');
|
||||
|
||||
var hasSymbols = require('has-symbols')();
|
||||
|
||||
var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
|
||||
var coercibleFnObject = {
|
||||
valueOf: function () { return function valueOfFn() {}; },
|
||||
toString: function () { return 42; }
|
||||
};
|
||||
var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
|
||||
var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
|
||||
var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
|
||||
var objects = [{}, coercibleObject, toStringOnlyObject, valueOfOnlyObject];
|
||||
var uncoercibleFnObject = {
|
||||
valueOf: function () { return function valueOfFn() {}; },
|
||||
toString: function () { return function toStrFn() {}; }
|
||||
};
|
||||
var objects = [{}, coercibleObject, coercibleFnObject, toStringOnlyObject, valueOfOnlyObject];
|
||||
var nullPrimitives = [undefined, null];
|
||||
var nonIntegerNumbers = [-1.3, 0.2, 1.8, 1 / 3];
|
||||
var numbers = [0, -0, Infinity, -Infinity, 42].concat(nonIntegerNumbers);
|
||||
var zeroes = [0, -0];
|
||||
var infinities = [Infinity, -Infinity];
|
||||
var numbers = zeroes.concat([42], infinities, nonIntegerNumbers);
|
||||
var strings = ['', 'foo', 'a\uD83D\uDCA9c'];
|
||||
var booleans = [true, false];
|
||||
var symbols = hasSymbols ? [Symbol.iterator, Symbol('foo')] : [];
|
||||
@@ -25,15 +37,44 @@ var nonBooleans = [].concat(nullPrimitives, strings, symbols, numbers, objects);
|
||||
var falsies = [].concat(nullPrimitives, false, '', 0, -0, NaN);
|
||||
var truthies = [].concat(true, 'foo', 42, symbols, objects);
|
||||
var timestamps = [].concat(0, 946713600000, 1546329600000);
|
||||
var nonFunctions = [].concat(primitives, objects, [42]);
|
||||
var nonArrays = [].concat(nonFunctions);
|
||||
|
||||
var descriptors = {
|
||||
configurable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Configurable]]': true });
|
||||
},
|
||||
nonConfigurable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Configurable]]': false });
|
||||
},
|
||||
enumerable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Enumerable]]': true });
|
||||
},
|
||||
nonEnumerable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Enumerable]]': false });
|
||||
},
|
||||
writable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Writable]]': true });
|
||||
},
|
||||
nonWritable: function (descriptor) {
|
||||
return assign(assign({}, descriptor), { '[[Writable]]': false });
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
coercibleObject: coercibleObject,
|
||||
coercibleFnObject: coercibleFnObject,
|
||||
valueOfOnlyObject: valueOfOnlyObject,
|
||||
toStringOnlyObject: toStringOnlyObject,
|
||||
uncoercibleObject: uncoercibleObject,
|
||||
uncoercibleFnObject: uncoercibleFnObject,
|
||||
objects: objects,
|
||||
nonFunctions: nonFunctions,
|
||||
nonArrays: nonArrays,
|
||||
nullPrimitives: nullPrimitives,
|
||||
numbers: numbers,
|
||||
zeroes: zeroes,
|
||||
infinities: infinities,
|
||||
strings: strings,
|
||||
booleans: booleans,
|
||||
symbols: symbols,
|
||||
@@ -55,30 +96,26 @@ module.exports = {
|
||||
bothDescriptor: function () {
|
||||
return { '[[Get]]': function () {}, '[[Value]]': true };
|
||||
},
|
||||
accessorDescriptor: function () {
|
||||
return {
|
||||
'[[Get]]': function () {},
|
||||
'[[Enumerable]]': true,
|
||||
'[[Configurable]]': true
|
||||
};
|
||||
bothDescriptorWritable: function () {
|
||||
return descriptors.writable({ '[[Get]]': function () {} });
|
||||
},
|
||||
accessorDescriptor: function (value) {
|
||||
return descriptors.enumerable(descriptors.configurable({
|
||||
'[[Get]]': function get() { return value; }
|
||||
}));
|
||||
},
|
||||
mutatorDescriptor: function () {
|
||||
return {
|
||||
'[[Set]]': function () {},
|
||||
'[[Enumerable]]': true,
|
||||
'[[Configurable]]': true
|
||||
};
|
||||
return descriptors.enumerable(descriptors.configurable({
|
||||
'[[Set]]': function () {}
|
||||
}));
|
||||
},
|
||||
dataDescriptor: function () {
|
||||
return {
|
||||
'[[Value]]': 42,
|
||||
'[[Writable]]': false
|
||||
};
|
||||
dataDescriptor: function (value) {
|
||||
return descriptors.nonWritable({
|
||||
'[[Value]]': arguments.length > 0 ? value : 42
|
||||
});
|
||||
},
|
||||
genericDescriptor: function () {
|
||||
return {
|
||||
'[[Configurable]]': true,
|
||||
'[[Enumerable]]': false
|
||||
};
|
||||
}
|
||||
return descriptors.configurable(descriptors.nonEnumerable());
|
||||
},
|
||||
descriptors: descriptors
|
||||
};
|
||||
|
||||
3
node_modules/es-abstract/test/index.js
generated
vendored
3
node_modules/es-abstract/test/index.js
generated
vendored
@@ -7,7 +7,7 @@ var ESkeys = Object.keys(ES).sort();
|
||||
var ES6keys = Object.keys(ES.ES6).sort();
|
||||
|
||||
test('exposed properties', function (t) {
|
||||
t.deepEqual(ESkeys, ES6keys.concat(['ES2018', 'ES2017', 'ES7', 'ES2016', 'ES6', 'ES2015', 'ES5']).sort(), 'main ES object keys match ES6 keys');
|
||||
t.deepEqual(ESkeys, ES6keys.concat(['ES2019', 'ES2018', 'ES2017', 'ES7', 'ES2016', 'ES6', 'ES2015', 'ES5']).sort(), 'main ES object keys match ES6 keys');
|
||||
t.end();
|
||||
});
|
||||
|
||||
@@ -27,3 +27,4 @@ require('./es7');
|
||||
require('./es2016');
|
||||
require('./es2017');
|
||||
require('./es2018');
|
||||
require('./es2019');
|
||||
|
||||
2063
node_modules/es-abstract/test/tests.js
generated
vendored
2063
node_modules/es-abstract/test/tests.js
generated
vendored
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user