diff options
Diffstat (limited to 'js/vendor/es6-shim')
-rw-r--r-- | js/vendor/es6-shim/.bower.json | 10 | ||||
-rw-r--r-- | js/vendor/es6-shim/CHANGELOG.md | 14 | ||||
-rw-r--r-- | js/vendor/es6-shim/Gruntfile.js | 8 | ||||
-rw-r--r-- | js/vendor/es6-shim/bower.json | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/component.json | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-sham.js | 4 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-sham.min.js | 4 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.js | 422 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.map | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.min.js | 7 | ||||
-rw-r--r-- | js/vendor/es6-shim/package.json | 6 | ||||
-rw-r--r-- | js/vendor/es6-shim/testling.html | 1 |
12 files changed, 428 insertions, 54 deletions
diff --git a/js/vendor/es6-shim/.bower.json b/js/vendor/es6-shim/.bower.json index 8b258b232..de406f10b 100644 --- a/js/vendor/es6-shim/.bower.json +++ b/js/vendor/es6-shim/.bower.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.23.0", + "version": "0.25.0", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ @@ -28,13 +28,13 @@ "test" ], "homepage": "https://github.com/paulmillr/es6-shim", - "_release": "0.23.0", + "_release": "0.25.0", "_resolution": { "type": "version", - "tag": "0.23.0", - "commit": "fde6f2134762d36e9b1324f212fd939282700ca5" + "tag": "0.25.0", + "commit": "7781aad3fb2a35048cce9d10bf929dd9fc192ab6" }, "_source": "git://github.com/paulmillr/es6-shim.git", - "_target": "~0.23.*", + "_target": "~0.*", "_originalSource": "es6-shim" }
\ No newline at end of file diff --git a/js/vendor/es6-shim/CHANGELOG.md b/js/vendor/es6-shim/CHANGELOG.md index dc2011087..de20f2aff 100644 --- a/js/vendor/es6-shim/CHANGELOG.md +++ b/js/vendor/es6-shim/CHANGELOG.md @@ -1,5 +1,19 @@ # es6-shim x.x.x (not yet released) +# es6-shim 0.25.0 (16 Feb 2015) +* Ensure Object.getOwnPropertyNames accepts primitives. +* Make sure the replaced `Object.keys` is non-enumerable. +* Clean up lots of tests to make failures easier to read, and false negatives less common + +# es6-shim 0.24.0 (5 Feb 2015) +* Improving accuracy of Math.expm1 values, and ensuring a shim on Linux FF 35, which reports an inaccurate value for Math.expm1(10). +* Fix bug from 7454db144e5aa251d599415cfb296b67aa3cf992 which prevented String#startsWith and String#endsWith from being overwritten in old Firefox. +* Improve tests across a wider list of browsers +* Ensure that individual Reflect methods are added when possible +* Add Reflect (#313) +* Fix node 0.11: it has an imprecise Math.sinh with very small numbers. +* Alter String#repeat RangeError message to align with Firefox’s native implementation. + # es6-shim 0.23.0 (26 Jan 2015) * Use Symbol.species when available, else fall back to "@@species" (renamed from "@@create") * Fix `npm run test-native` diff --git a/js/vendor/es6-shim/Gruntfile.js b/js/vendor/es6-shim/Gruntfile.js index 6df7ca70b..370443762 100644 --- a/js/vendor/es6-shim/Gruntfile.js +++ b/js/vendor/es6-shim/Gruntfile.js @@ -2,26 +2,28 @@ module.exports = function (grunt) { var browsers = [ { browserName: "firefox", version: "19", platform: "XP" }, { browserName: "firefox", platform: "linux" }, + { browserName: "firefox", platform: "OS X 10.10" }, { browserName: "chrome", platform: "linux" }, + { browserName: "chrome", platform: "OS X 10.9" }, + { browserName: "chrome", platform: "XP" }, { browserName: "internet explorer", platform: "Windows 8.1", version: "11" }, { browserName: "internet explorer", platform: "WIN8", version: "10" }, { browserName: "internet explorer", platform: "VISTA", version: "9" }, { browserName: 'safari', platform: 'OS X 10.6' }, { browserName: 'safari', platform: 'OS X 10.8' }, { browserName: 'safari', platform: 'OS X 10.9' }, + { browserName: 'safari', platform: 'OS X 10.10' }, { browserName: 'iphone', platform: 'OS X 10.9', version: '7.1' }, { browserName: 'android', platform: 'Linux', version: '4.4' }, ]; var extraBrowsers = [ { browserName: "firefox", platform: "linux", version: "30" }, { browserName: "firefox", platform: "linux", version: "25" }, - { browserName: "firefox", platform: "OS X 10.9" }, - { browserName: "chrome", platform: "XP" }, - { browserName: "chrome", platform: "OS X 10.9" }, { browserName: 'iphone', platform: 'OS X 10.8', version: '6.1' }, { browserName: 'iphone', platform: 'OS X 10.8', version: '5.1' }, { browserName: 'android', platform: 'Linux', version: '4.2' }, // XXX haven't investigated these: + //{ browserName: "opera", platform: "Windows 7", version: "12" }, //{ browserName: "opera", platform: "Windows 2008", version: "12" } //{ browserName: 'iphone', platform: 'OS X 10.6', version: '4.3' }, //{ browserName: 'android', platform: 'Linux', version: '4.0' }, diff --git a/js/vendor/es6-shim/bower.json b/js/vendor/es6-shim/bower.json index 426d2618f..767c6292f 100644 --- a/js/vendor/es6-shim/bower.json +++ b/js/vendor/es6-shim/bower.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.23.0", + "version": "0.25.0", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ diff --git a/js/vendor/es6-shim/component.json b/js/vendor/es6-shim/component.json index fee8fd913..c80e27993 100644 --- a/js/vendor/es6-shim/component.json +++ b/js/vendor/es6-shim/component.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.23.0", + "version": "0.25.0", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ diff --git a/js/vendor/es6-shim/es6-sham.js b/js/vendor/es6-shim/es6-sham.js index fe67bfd45..6d974975b 100644 --- a/js/vendor/es6-shim/es6-sham.js +++ b/js/vendor/es6-shim/es6-sham.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2014 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-sham: v0.23.0 - * see https://github.com/paulmillr/es6-shim/blob/0.22.2/LICENSE + * es6-sham: v0.25.0 + * see https://github.com/paulmillr/es6-shim/blob/0.25.0/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ diff --git a/js/vendor/es6-shim/es6-sham.min.js b/js/vendor/es6-shim/es6-sham.min.js index 6ad81ae68..d7cc819de 100644 --- a/js/vendor/es6-shim/es6-sham.min.js +++ b/js/vendor/es6-shim/es6-sham.min.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2014 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-sham: v0.23.0 - * see https://github.com/paulmillr/es6-shim/blob/0.22.2/LICENSE + * es6-sham: v0.25.0 + * see https://github.com/paulmillr/es6-shim/blob/0.25.0/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ diff --git a/js/vendor/es6-shim/es6-shim.js b/js/vendor/es6-shim/es6-shim.js index 888bec378..231f768ff 100644 --- a/js/vendor/es6-shim/es6-shim.js +++ b/js/vendor/es6-shim/es6-shim.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2014 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-shim: v0.23.0 - * see https://github.com/paulmillr/es6-shim/blob/0.22.2/LICENSE + * es6-shim: v0.25.0 + * see https://github.com/paulmillr/es6-shim/blob/0.25.0/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ @@ -206,7 +206,18 @@ return result; }; + var safeApply = Function.call.bind(Function.apply); + var ES = { + // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-call-f-v-args + Call: function Call(F, V) { + var args = arguments.length > 2 ? arguments[2] : []; + if (!ES.IsCallable(F)) { + throw new TypeError(F + ' is not a function'); + } + return safeApply(F, V, args); + }, + RequireObjectCoercible: function (x, optMessage) { /* jshint eqnull:true */ if (x == null) { @@ -315,7 +326,7 @@ // (see emulateES6construct) defineProperties(obj, { _es6construct: true }); // Call the constructor. - var result = C.apply(obj, args); + var result = ES.Call(C, obj, args); return ES.TypeIsObject(result) ? result : obj; } }; @@ -532,27 +543,26 @@ defineProperty(String, 'fromCodePoint', function fromCodePoint(codePoints) { return originalFromCodePoint(this, arguments); }, true); } - var StringShims = { - // Fast repeat, uses the `Exponentiation by squaring` algorithm. - // Perf: http://jsperf.com/string-repeat2/2 - repeat: (function () { - var repeat = function (s, times) { - if (times < 1) { return ''; } - if (times % 2) { return repeat(s, times - 1) + s; } - var half = repeat(s, times / 2); - return half + half; - }; + // Fast repeat, uses the `Exponentiation by squaring` algorithm. + // Perf: http://jsperf.com/string-repeat2/2 + var stringRepeat = function repeat(s, times) { + if (times < 1) { return ''; } + if (times % 2) { return repeat(s, times - 1) + s; } + var half = repeat(s, times / 2); + return half + half; + }; + var stringMaxLength = Infinity; - return function (times) { - ES.RequireObjectCoercible(this); - var thisStr = String(this); - times = ES.ToInteger(times); - if (times < 0 || times === Infinity) { - throw new RangeError('Invalid String#repeat value'); - } - return repeat(thisStr, times); - }; - }()), + var StringShims = { + repeat: function repeat(times) { + ES.RequireObjectCoercible(this); + var thisStr = String(this); + times = ES.ToInteger(times); + if (times < 0 || times >= stringMaxLength) { + throw new RangeError('repeat count must be less than infinity and not overflow maximum string size'); + } + return stringRepeat(thisStr, times); + }, startsWith: function (searchStr) { ES.RequireObjectCoercible(this); @@ -653,10 +663,8 @@ if (!startsWithIsCompliant) { // Firefox has a noncompliant startsWith implementation - defineProperties(String.prototype, { - startsWith: StringShims.startsWith, - endsWith: StringShims.endsWith - }); + defineProperty(String.prototype, 'startsWith', StringShims.startsWith, true); + defineProperty(String.prototype, 'endsWith', StringShims.endsWith, true); } var ArrayShims = { @@ -733,6 +741,13 @@ defineProperty(Array, 'from', ArrayShims.from, true); } + // Given an argument x, it will return an IteratorResult object, + // with value set to x and done to false. + // Given no arguments, it will return an iterator completion object. + var iterator_result = function (x) { + return { value: x, done: arguments.length === 0 }; + }; + // Our ArrayIterator is private; see // https://github.com/paulmillr/es6-shim/issues/252 ArrayIterator = function (array, kind) { @@ -769,6 +784,61 @@ }); addIterator(ArrayIterator.prototype); + var ObjectIterator = function (object, kind) { + this.object = object; + // Don't generate keys yet. + this.array = null; + this.kind = kind; + }; + + function getAllKeys(object) { + var keys = []; + + for (var key in object) { + keys.push(key); + } + + return keys; + } + + defineProperties(ObjectIterator.prototype, { + next: function () { + var key, array = this.array; + + if (!(this instanceof ObjectIterator)) { + throw new TypeError('Not an ObjectIterator'); + } + + // Keys not generated + if (array === null) { + array = this.array = getAllKeys(this.object); + } + + // Find next key in the object + while (ES.ToLength(array.length) > 0) { + key = array.shift(); + + // The candidate key isn't defined on object. + // Must have been deleted, or object[[Prototype]] + // has been modified. + if (!(key in this.object)) { + continue; + } + + if (this.kind === 'key') { + return iterator_result(key); + } else if (this.kind === 'value') { + return iterator_result(this.object[key]); + } else { + return iterator_result([key, this.object[key]]); + } + } + + return iterator_result(); + } + }); + addIterator(ObjectIterator.prototype); + var ArrayPrototypeShims = { copyWithin: function (target, start) { var end = arguments[2]; // copyWithin.length must be 2 @@ -1028,13 +1098,36 @@ }()); } - try { - Object.keys('foo'); - } catch (e) { + var objectKeysAcceptsPrimitives = (function () { + try { + Object.keys('foo'); + return true; + } catch (e) { + return false; + } + }()); + if (!objectKeysAcceptsPrimitives) { var originalObjectKeys = Object.keys; - Object.keys = function (obj) { - return originalObjectKeys(ES.ToObject(obj)); - }; + defineProperty(Object, 'keys', function keys(value) { + return originalObjectKeys(ES.ToObject(value)); + }, true); + } + + if (Object.getOwnPropertyNames) { + var objectGOPNAcceptsPrimitives = (function () { + try { + Object.getOwnPropertyNames('foo'); + return true; + } catch (e) { + return false; + } + }()); + if (!objectGOPNAcceptsPrimitives) { + var originalObjectGetOwnPropertyNames = Object.getOwnPropertyNames; + defineProperty(Object, 'getOwnPropertyNames', function getOwnPropertyNames(value) { + return originalObjectGetOwnPropertyNames(ES.ToObject(value)); + }, true); + } } if (!RegExp.prototype.flags && supportsDescriptors) { @@ -1284,6 +1377,11 @@ defineProperty(Math, 'tanh', MathShims.tanh, Math.tanh(-2e-17) !== -2e-17); // Chrome 40 loses Math.acosh precision with high numbers defineProperty(Math, 'acosh', MathShims.acosh, Math.acosh(Number.MAX_VALUE) === Infinity); + // node 0.11 has an imprecise Math.sinh with very small numbers + defineProperty(Math, 'sinh', MathShims.sinh, Math.sinh(-2e-17) !== -2e-17); + // FF 35 on Linux reports 22025.465794806725 for Math.expm1(10) + var expm1OfTen = Math.expm1(10); + defineProperty(Math, 'expm1', MathShims.expm1, expm1OfTen > 22025.465794806719 || expm1OfTen < 22025.4657948067165168); var roundHandlesBoundaryConditions = Math.round(0.5 - Number.EPSILON / 4) === 0 && Math.round(-0.5 + Number.EPSILON / 3.99) === 1; var origMathRound = Math.round; @@ -2132,5 +2230,263 @@ addIterator(Object.getPrototypeOf((new globals.Set()).keys())); } + // Reflect + if (!globals.Reflect) { + defineProperty(globals, 'Reflect', {}); + } + var Reflect = globals.Reflect; + + var throwUnlessTargetIsObject = function throwUnlessTargetIsObject(target) { + if (!ES.TypeIsObject(target)) { + throw new TypeError('target must be an object'); + } + }; + + // Some Reflect methods are basically the same as + // those on the Object global, except that a TypeError is thrown if + // target isn't an object. As well as returning a boolean indicating + // the success of the operation. + defineProperties(globals.Reflect, { + // Apply method in a functional form. + apply: function apply() { + return ES.Call.apply(null, arguments); + }, + + // New operator in a functional form. + construct: function construct(constructor, args) { + if (!ES.IsCallable(constructor)) { + throw new TypeError('First argument must be callable.'); + } + + return ES.Construct(constructor, args); + }, + + // When deleting a non-existent or configurable property, + // true is returned. + // When attempting to delete a non-configurable property, + // it will return false. + deleteProperty: function deleteProperty(target, key) { + throwUnlessTargetIsObject(target); + if (supportsDescriptors) { + var desc = Object.getOwnPropertyDescriptor(target, key); + + if (desc && !desc.configurable) { + return false; + } + } + + // Will return true. + return delete target[key]; + }, + + enumerate: function enumerate(target) { + throwUnlessTargetIsObject(target); + return new ObjectIterator(target, 'key'); + }, + + has: function has(target, key) { + throwUnlessTargetIsObject(target); + return key in target; + } + }); + + if (Object.getOwnPropertyNames) { + defineProperties(globals.Reflect, { + // Basically the result of calling the internal [[OwnPropertyKeys]]. + // Concatenating propertyNames and propertySymbols should do the trick. + // This should continue to work together with a Symbol shim + // which overrides Object.getOwnPropertyNames and implements + // Object.getOwnPropertySymbols. + ownKeys: function ownKeys(target) { + throwUnlessTargetIsObject(target); + var keys = Object.getOwnPropertyNames(target); + + if (ES.IsCallable(Object.getOwnPropertySymbols)) { + keys.push.apply(keys, Object.getOwnPropertySymbols(target)); + } + + return keys; + } + }); + } + + if (Object.preventExtensions) { + defineProperties(globals.Reflect, { + isExtensible: function isExtensible(target) { + throwUnlessTargetIsObject(target); + return Object.isExtensible(target); + }, + preventExtensions: function preventExtensions(target) { + throwUnlessTargetIsObject(target); + return callAndCatchException(function () { + Object.preventExtensions(target); + }); + } + }); + } + + if (supportsDescriptors) { + var internal_get = function get(target, key, receiver) { + var desc = Object.getOwnPropertyDescriptor(target, key); + + if (!desc) { + var parent = Object.getPrototypeOf(target); + + if (parent === null) { + return undefined; + } + + return internal_get(parent, key, receiver); + } + + if ('value' in desc) { + return desc.value; + } + + if (desc.get) { + return desc.get.call(receiver); + } + + return undefined; + }; + + var internal_set = function set(target, key, value, receiver) { + var desc = Object.getOwnPropertyDescriptor(target, key); + + if (!desc) { + var parent = Object.getPrototypeOf(target); + + if (parent !== null) { + return internal_set(parent, key, value, receiver); + } + + desc = { + value: void 0, + writable: true, + enumerable: true, + configurable: true + }; + } + + if ('value' in desc) { + if (!desc.writable) { + return false; + } + + if (!ES.TypeIsObject(receiver)) { + return false; + } + + var existingDesc = Object.getOwnPropertyDescriptor(receiver, key); + + if (existingDesc) { + return Reflect.defineProperty(receiver, key, { + value: value + }); + } else { + return Reflect.defineProperty(receiver, key, { + value: value, + writable: true, + enumerable: true, + configurable: true + }); + } + } + + if (desc.set) { + desc.set.call(receiver, value); + return true; + } + + return false; + }; + + var callAndCatchException = function ConvertExceptionToBoolean(func) { + try { func(); } catch (_) { return false; } + return true; + }; + + defineProperties(globals.Reflect, { + defineProperty: function defineProperty(target, propertyKey, attributes) { + throwUnlessTargetIsObject(target); + return callAndCatchException(function () { + Object.defineProperty(target, propertyKey, attributes); + }); + }, + + getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { + throwUnlessTargetIsObject(target); + return Object.getOwnPropertyDescriptor(target, propertyKey); + }, + + // Syntax in a functional form. + get: function get(target, key) { + throwUnlessTargetIsObject(target); + var receiver = arguments.length > 2 ? arguments[2] : target; + + return internal_get(target, key, receiver); + }, + + set: function set(target, key, value) { + throwUnlessTargetIsObject(target); + var receiver = arguments.length > 3 ? arguments[3] : target; + + return internal_set(target, key, value, receiver); + } + }); + } + + if (Object.getPrototypeOf) { + var objectDotGetPrototypeOf = Object.getPrototypeOf; + defineProperties(globals.Reflect, { + getPrototypeOf: function getPrototypeOf(target) { + throwUnlessTargetIsObject(target); + return objectDotGetPrototypeOf(target); + } + }); + } + + if (Object.setPrototypeOf) { + var willCreateCircularPrototype = function (object, proto) { + while (proto) { + if (object === proto) { + return true; + } + proto = Reflect.getPrototypeOf(proto); + } + return false; + }; + + defineProperties(globals.Reflect, { + // Sets the prototype of the given object. + // Returns true on success, otherwise false. + setPrototypeOf: function setPrototypeOf(object, proto) { + throwUnlessTargetIsObject(object); + if (proto !== null && !ES.TypeIsObject(proto)) { + throw new TypeError('proto must be an object or null'); + } + + // If they already are the same, we're done. + if (proto === Reflect.getPrototypeOf(object)) { + return true; + } + + // Cannot alter prototype if object not extensible. + if (Reflect.isExtensible && !Reflect.isExtensible(object)) { + return false; + } + + // Ensure that we do not create a circular prototype chain. + if (willCreateCircularPrototype(object, proto)) { + return false; + } + + Object.setPrototypeOf(object, proto); + + return true; + } + }); + } + return globals; })); diff --git a/js/vendor/es6-shim/es6-shim.map b/js/vendor/es6-shim/es6-shim.map index 87ba70fb5..76b8c1bc1 100644 --- a/js/vendor/es6-shim/es6-shim.map +++ b/js/vendor/es6-shim/es6-shim.map @@ -1 +1 @@ -{"version":3,"sources":["es6-shim.js"],"names":["root","factory","define","amd","exports","module","returnExports","this","isCallableWithoutNew","func","e","supportsSubclassing","C","f","Sub","apply","arguments","__proto__","Object","setPrototypeOf","prototype","create","constructor","value","arePropertyDescriptorsSupported","defineProperty","startsWithRejectsRegex","rejectsRegex","String","startsWith","getGlobal","Function","globals","global_isFinite","isFinite","supportsDescriptors","startsWithIsCompliant","_indexOf","call","bind","indexOf","_toString","toString","_hasOwnProperty","hasOwnProperty","ArrayIterator","noop","Symbol","symbolSpecies","species","Type","string","x","regex","symbol","object","name","force","configurable","enumerable","writable","Value","getter","TypeError","get","proxy","originalObject","key","targetObject","originalDescriptor","getOwnPropertyDescriptor","getKey","set","setKey","redefine","property","newValue","descriptor","defineProperties","map","keys","forEach","method","properties","Prototype","$iterator$","iterator","Set","addIterator","impl","o","isArguments","str","result","length","callee","ES","RequireObjectCoercible","optMessage","TypeIsObject","ToObject","IsCallable","ToInt32","ToNumber","ToUint32","ToInteger","number","Number","isNaN","Math","floor","abs","ToLength","len","MAX_SAFE_INTEGER","SameValue","a","b","SameValueZero","IsIterable","GetIterator","itFn","it","IteratorNext","next","Construct","args","obj","_es6construct","emulateES6construct","numberConversion","roundToEven","n","w","packIEEE754","v","ebits","fbits","bias","s","i","bits","bytes","pow","Infinity","min","log","LN2","push","reverse","join","parseInt","slice","unpackIEEE754","j","NaN","unpackFloat64","packFloat64","unpackFloat32","packFloat32","conversions","toFloat32","num","Float32Array","float32array","fromCodePoint","codePoints","RangeError","fromCharCode","raw","callSite","cooked","rawValue","rawString","literalsegments","stringElements","nextIndex","nextKey","nextSeg","nextSub","originalFromCodePoint","StringShims","repeat","times","half","thisStr","searchStr","startArg","start","max","endsWith","thisLen","posArg","pos","end","includes","searchString","position","codePointAt","first","charCodeAt","isEnd","second","hasStringTrimBug","trim","ws","trimRegexp","RegExp","replace","StringIterator","_s","_i","done","substr","ArrayShims","from","iterable","mapFn","list","hasThisArg","thisArg","usingIterator","iterationValue","Array","of","arrayFromSwallowsNegativeLengths","array","kind","retval","ArrayPrototypeShims","copyWithin","target","to","fin","count","direction","fill","O","relativeStart","relativeEnd","find","predicate","findIndex","values","entries","unscopables","getPrototypeOf","maxSafeInteger","MIN_SAFE_INTEGER","EPSILON","parseFloat","isInteger","isSafeInteger","item","idx","assign","source","reduce","is","magic","checkArgs","proto","polyfill","FAKENULL","gpo","spo","p","originalObjectKeys","flags","regExpFlagsGetter","global","ignoreCase","multiline","unicode","sticky","regExpSupportsFlagsWithRegex","OrigRegExp","RegExpShim","pattern","getOwnPropertyNames","MathShims","acosh","E","sqrt","asinh","atanh","cbrt","negate","clz32","cosh","exp","expm1","t","sum","hypot","y","anyNaN","allZero","anyInfinity","numbers","every","arg","sort","largest","divided","log2","LOG2E","log10","LOG10E","log1p","sign","sinh","tanh","trunc","imul","ah","al","bh","bl","fround","MAX_VALUE","roundHandlesBoundaryConditions","round","origMathRound","PromiseShim","Promise","Promise$prototype","IsPromise","promise","_promiseConstructor","_status","PromiseCapability","capability","resolver","resolve","reject","setTimeout","makeZeroTimeout","window","postMessage","timeouts","messageName","setZeroTimeout","fn","handleMessage","event","data","stopPropagation","shift","addEventListener","makePromiseAsap","P","task","then","enqueue","setImmediate","process","nextTick","updatePromiseFromPotentialThenable","triggerPromiseReactions","reactions","reaction","handler","updateResult","promiseResolutionHandler","onFulfilled","onRejected","_resolveReactions","_rejectReactions","resolution","_result","reason","_promiseAllResolver","index","remaining","all","nextPromise","resolveElement","race","rejectPromise","resolvePromise","catch","resolutionHandler","resolveReaction","rejectReaction","accept","defer","chain","promiseSupportsSubclassing","S","promiseIgnoresNonFunctionThenCallbacks","ex","promiseRequiresObjectContext","testOrder","k","preservesInsertionOrder","preservesNumericInsertionOrder","fastkey","type","emptyObject","collectionShims","Map","empty","MapEntry","prev","isRemoved","MapIterator","head","_head","_es6map","_storage","_size","adder","nextItem","Map$prototype","fkey","entry","has","delete","clear","callback","context","SetShim","_es6set","[[SetData]]","add","Set$prototype","ensureMap","m","charAt","size","hasFKey","entireSet","M"],"mappings":"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 |