| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749 |
- import {
- __commonJS
- } from "./chunk-WFTEJBJX.js";
- // node_modules/es5-shim/es5-shim.js
- var require_es5_shim = __commonJS({
- "node_modules/es5-shim/es5-shim.js"(exports, module) {
- (function(root, factory) {
- "use strict";
- if (typeof define === "function" && define.amd) {
- define(factory);
- } else if (typeof exports === "object") {
- module.exports = factory();
- } else {
- root.returnExports = factory();
- }
- })(exports, function() {
- var $Array = Array;
- var ArrayPrototype = $Array.prototype;
- var $Object = Object;
- var ObjectPrototype = $Object.prototype;
- var $Function = Function;
- var FunctionPrototype = $Function.prototype;
- var $String = String;
- var StringPrototype = $String.prototype;
- var $Number = Number;
- var NumberPrototype = $Number.prototype;
- var array_slice = ArrayPrototype.slice;
- var array_splice = ArrayPrototype.splice;
- var array_push = ArrayPrototype.push;
- var array_unshift = ArrayPrototype.unshift;
- var array_concat = ArrayPrototype.concat;
- var array_join = ArrayPrototype.join;
- var call = FunctionPrototype.call;
- var apply = FunctionPrototype.apply;
- var max = Math.max;
- var min = Math.min;
- var floor = Math.floor;
- var abs = Math.abs;
- var pow = Math.pow;
- var round = Math.round;
- var log = Math.log;
- var LOG10E = Math.LOG10E;
- var log10 = Math.log10 || function log102(value) {
- return log(value) * LOG10E;
- };
- var to_string = ObjectPrototype.toString;
- var hasToStringTag = typeof Symbol === "function" && typeof Symbol.toStringTag === "symbol";
- var isCallable;
- var fnToStr = Function.prototype.toString, constructorRegex = /^\s*class /, isES6ClassFn = function isES6ClassFn2(value) {
- try {
- var fnStr = fnToStr.call(value);
- var singleStripped = fnStr.replace(/\/\/.*\n/g, "");
- var multiStripped = singleStripped.replace(/\/\*[.\s\S]*\*\//g, "");
- var spaceStripped = multiStripped.replace(/\n/mg, " ").replace(/ {2}/g, " ");
- return constructorRegex.test(spaceStripped);
- } catch (e) {
- return false;
- }
- }, tryFunctionObject = function tryFunctionObject2(value) {
- try {
- if (isES6ClassFn(value)) {
- return false;
- }
- fnToStr.call(value);
- return true;
- } catch (e) {
- return false;
- }
- }, fnClass = "[object Function]", genClass = "[object GeneratorFunction]", isCallable = function isCallable2(value) {
- if (!value) {
- return false;
- }
- if (typeof value !== "function" && typeof value !== "object") {
- return false;
- }
- if (hasToStringTag) {
- return tryFunctionObject(value);
- }
- if (isES6ClassFn(value)) {
- return false;
- }
- var strClass = to_string.call(value);
- return strClass === fnClass || strClass === genClass;
- };
- var isRegex;
- var regexExec = RegExp.prototype.exec, tryRegexExec = function tryRegexExec2(value) {
- try {
- regexExec.call(value);
- return true;
- } catch (e) {
- return false;
- }
- }, regexClass = "[object RegExp]";
- isRegex = function isRegex2(value) {
- if (typeof value !== "object") {
- return false;
- }
- return hasToStringTag ? tryRegexExec(value) : to_string.call(value) === regexClass;
- };
- var isString;
- var strValue = String.prototype.valueOf, tryStringObject = function tryStringObject2(value) {
- try {
- strValue.call(value);
- return true;
- } catch (e) {
- return false;
- }
- }, stringClass = "[object String]";
- isString = function isString2(value) {
- if (typeof value === "string") {
- return true;
- }
- if (typeof value !== "object") {
- return false;
- }
- return hasToStringTag ? tryStringObject(value) : to_string.call(value) === stringClass;
- };
- var supportsDescriptors = $Object.defineProperty && function() {
- try {
- var obj = {};
- $Object.defineProperty(obj, "x", { enumerable: false, value: obj });
- for (var _ in obj) {
- return false;
- }
- return obj.x === obj;
- } catch (e) {
- return false;
- }
- }();
- var defineProperties = function(has) {
- var defineProperty;
- if (supportsDescriptors) {
- defineProperty = function(object, name, method, forceAssign) {
- if (!forceAssign && name in object) {
- return;
- }
- $Object.defineProperty(object, name, {
- configurable: true,
- enumerable: false,
- writable: true,
- value: method
- });
- };
- } else {
- defineProperty = function(object, name, method, forceAssign) {
- if (!forceAssign && name in object) {
- return;
- }
- object[name] = method;
- };
- }
- return function defineProperties2(object, map, forceAssign) {
- for (var name in map) {
- if (has.call(map, name)) {
- defineProperty(object, name, map[name], forceAssign);
- }
- }
- };
- }(ObjectPrototype.hasOwnProperty);
- if ($Object.defineProperty && supportsDescriptors) {
- var F = function() {
- };
- var toStringSentinel = {};
- var sentinel = { toString: toStringSentinel };
- $Object.defineProperty(F, "prototype", { value: sentinel, writable: false });
- if (new F().toString !== toStringSentinel) {
- var $dP = $Object.defineProperty;
- var $gOPD = $Object.getOwnPropertyDescriptor;
- defineProperties($Object, {
- defineProperty: function defineProperty(o, k, d) {
- var key = $String(k);
- if (typeof o === "function" && key === "prototype") {
- var desc = $gOPD(o, key);
- if (desc.writable && !d.writable && "value" in d) {
- try {
- o[key] = d.value;
- } catch (e) {
- }
- }
- return $dP(o, key, {
- configurable: "configurable" in d ? d.configurable : desc.configurable,
- enumerable: "enumerable" in d ? d.enumerable : desc.enumerable,
- writable: d.writable
- });
- }
- return $dP(o, key, d);
- }
- }, true);
- }
- }
- var isPrimitive = function isPrimitive2(input) {
- var type = typeof input;
- return input === null || type !== "object" && type !== "function";
- };
- var isActualNaN = $Number.isNaN || function isActualNaN2(x) {
- return x !== x;
- };
- var ES = {
- // ES5 9.4
- // https://es5.github.io/#x9.4
- // http://jsperf.com/to-integer
- /* replaceable with https://npmjs.com/package/es-abstract ES5.ToInteger */
- ToInteger: function ToInteger(num) {
- var n = +num;
- if (isActualNaN(n)) {
- n = 0;
- } else if (n !== 0 && n !== 1 / 0 && n !== -(1 / 0)) {
- n = (n > 0 || -1) * floor(abs(n));
- }
- return n;
- },
- /* replaceable with https://npmjs.com/package/es-abstract ES5.ToPrimitive */
- ToPrimitive: function ToPrimitive(input) {
- var val, valueOf, toStr2;
- if (isPrimitive(input)) {
- return input;
- }
- valueOf = input.valueOf;
- if (isCallable(valueOf)) {
- val = valueOf.call(input);
- if (isPrimitive(val)) {
- return val;
- }
- }
- toStr2 = input.toString;
- if (isCallable(toStr2)) {
- val = toStr2.call(input);
- if (isPrimitive(val)) {
- return val;
- }
- }
- throw new TypeError();
- },
- // ES5 9.9
- // https://es5.github.io/#x9.9
- /* replaceable with https://npmjs.com/package/es-abstract ES5.ToObject */
- ToObject: function(o) {
- if (o == null) {
- throw new TypeError("can't convert " + o + " to object");
- }
- return $Object(o);
- },
- /* replaceable with https://npmjs.com/package/es-abstract ES5.ToUint32 */
- ToUint32: function ToUint32(x) {
- return x >>> 0;
- }
- };
- var Empty = function Empty2() {
- };
- defineProperties(FunctionPrototype, {
- bind: function bind(that) {
- var target = this;
- if (!isCallable(target)) {
- throw new TypeError("Function.prototype.bind called on incompatible " + target);
- }
- var args = array_slice.call(arguments, 1);
- var bound;
- var binder = function() {
- if (this instanceof bound) {
- var result = apply.call(
- target,
- this,
- array_concat.call(args, array_slice.call(arguments))
- );
- if ($Object(result) === result) {
- return result;
- }
- return this;
- }
- return apply.call(
- target,
- that,
- array_concat.call(args, array_slice.call(arguments))
- );
- };
- var boundLength = max(0, target.length - args.length);
- var boundArgs = [];
- for (var i = 0; i < boundLength; i++) {
- array_push.call(boundArgs, "$" + i);
- }
- bound = $Function("binder", "return function (" + array_join.call(boundArgs, ",") + "){ return binder.apply(this, arguments); }")(binder);
- if (target.prototype) {
- Empty.prototype = target.prototype;
- bound.prototype = new Empty();
- Empty.prototype = null;
- }
- return bound;
- }
- });
- var owns = call.bind(ObjectPrototype.hasOwnProperty);
- var toStr = call.bind(ObjectPrototype.toString);
- var arraySlice = call.bind(array_slice);
- var arraySliceApply = apply.bind(array_slice);
- if (typeof document === "object" && document && document.documentElement) {
- try {
- arraySlice(document.documentElement.childNodes);
- } catch (e) {
- var origArraySlice = arraySlice;
- var origArraySliceApply = arraySliceApply;
- arraySlice = function arraySliceIE(arr) {
- var r = [];
- var i = arr.length;
- while (i-- > 0) {
- r[i] = arr[i];
- }
- return origArraySliceApply(r, origArraySlice(arguments, 1));
- };
- arraySliceApply = function arraySliceApplyIE(arr, args) {
- return origArraySliceApply(arraySlice(arr), args);
- };
- }
- }
- var strSlice = call.bind(StringPrototype.slice);
- var strSplit = call.bind(StringPrototype.split);
- var strIndexOf = call.bind(StringPrototype.indexOf);
- var pushCall = call.bind(array_push);
- var isEnum = call.bind(ObjectPrototype.propertyIsEnumerable);
- var arraySort = call.bind(ArrayPrototype.sort);
- var isArray = $Array.isArray || function isArray2(obj) {
- return toStr(obj) === "[object Array]";
- };
- var hasUnshiftReturnValueBug = [].unshift(0) !== 1;
- defineProperties(ArrayPrototype, {
- unshift: function() {
- array_unshift.apply(this, arguments);
- return this.length;
- }
- }, hasUnshiftReturnValueBug);
- defineProperties($Array, { isArray });
- var boxedString = $Object("a");
- var splitString = boxedString[0] !== "a" || !(0 in boxedString);
- var properlyBoxesContext = function properlyBoxed(method) {
- var properlyBoxesNonStrict = true;
- var properlyBoxesStrict = true;
- var threwException = false;
- if (method) {
- try {
- method.call("foo", function(_, __, context) {
- if (typeof context !== "object") {
- properlyBoxesNonStrict = false;
- }
- });
- method.call([1], function() {
- "use strict";
- properlyBoxesStrict = typeof this === "string";
- }, "x");
- } catch (e) {
- threwException = true;
- }
- }
- return !!method && !threwException && properlyBoxesNonStrict && properlyBoxesStrict;
- };
- defineProperties(ArrayPrototype, {
- forEach: function forEach(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var i = -1;
- var length = ES.ToUint32(self.length);
- var T;
- if (arguments.length > 1) {
- T = arguments[1];
- }
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.forEach callback must be a function");
- }
- while (++i < length) {
- if (i in self) {
- if (typeof T === "undefined") {
- callbackfn(self[i], i, object);
- } else {
- callbackfn.call(T, self[i], i, object);
- }
- }
- }
- }
- }, !properlyBoxesContext(ArrayPrototype.forEach));
- defineProperties(ArrayPrototype, {
- map: function map(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- var result = $Array(length);
- var T;
- if (arguments.length > 1) {
- T = arguments[1];
- }
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.map callback must be a function");
- }
- for (var i = 0; i < length; i++) {
- if (i in self) {
- if (typeof T === "undefined") {
- result[i] = callbackfn(self[i], i, object);
- } else {
- result[i] = callbackfn.call(T, self[i], i, object);
- }
- }
- }
- return result;
- }
- }, !properlyBoxesContext(ArrayPrototype.map));
- defineProperties(ArrayPrototype, {
- filter: function filter(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- var result = [];
- var value;
- var T;
- if (arguments.length > 1) {
- T = arguments[1];
- }
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.filter callback must be a function");
- }
- for (var i = 0; i < length; i++) {
- if (i in self) {
- value = self[i];
- if (typeof T === "undefined" ? callbackfn(value, i, object) : callbackfn.call(T, value, i, object)) {
- pushCall(result, value);
- }
- }
- }
- return result;
- }
- }, !properlyBoxesContext(ArrayPrototype.filter));
- defineProperties(ArrayPrototype, {
- every: function every(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- var T;
- if (arguments.length > 1) {
- T = arguments[1];
- }
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.every callback must be a function");
- }
- for (var i = 0; i < length; i++) {
- if (i in self && !(typeof T === "undefined" ? callbackfn(self[i], i, object) : callbackfn.call(T, self[i], i, object))) {
- return false;
- }
- }
- return true;
- }
- }, !properlyBoxesContext(ArrayPrototype.every));
- defineProperties(ArrayPrototype, {
- some: function some(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- var T;
- if (arguments.length > 1) {
- T = arguments[1];
- }
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.some callback must be a function");
- }
- for (var i = 0; i < length; i++) {
- if (i in self && (typeof T === "undefined" ? callbackfn(self[i], i, object) : callbackfn.call(T, self[i], i, object))) {
- return true;
- }
- }
- return false;
- }
- }, !properlyBoxesContext(ArrayPrototype.some));
- var reduceCoercesToObject = false;
- if (ArrayPrototype.reduce) {
- reduceCoercesToObject = typeof ArrayPrototype.reduce.call("es5", function(_, __, ___, list) {
- return list;
- }) === "object";
- }
- defineProperties(ArrayPrototype, {
- reduce: function reduce(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.reduce callback must be a function");
- }
- if (length === 0 && arguments.length === 1) {
- throw new TypeError("reduce of empty array with no initial value");
- }
- var i = 0;
- var result;
- if (arguments.length >= 2) {
- result = arguments[1];
- } else {
- do {
- if (i in self) {
- result = self[i++];
- break;
- }
- if (++i >= length) {
- throw new TypeError("reduce of empty array with no initial value");
- }
- } while (true);
- }
- for (; i < length; i++) {
- if (i in self) {
- result = callbackfn(result, self[i], i, object);
- }
- }
- return result;
- }
- }, !reduceCoercesToObject);
- var reduceRightCoercesToObject = false;
- if (ArrayPrototype.reduceRight) {
- reduceRightCoercesToObject = typeof ArrayPrototype.reduceRight.call("es5", function(_, __, ___, list) {
- return list;
- }) === "object";
- }
- defineProperties(ArrayPrototype, {
- reduceRight: function reduceRight(callbackfn) {
- var object = ES.ToObject(this);
- var self = splitString && isString(this) ? strSplit(this, "") : object;
- var length = ES.ToUint32(self.length);
- if (!isCallable(callbackfn)) {
- throw new TypeError("Array.prototype.reduceRight callback must be a function");
- }
- if (length === 0 && arguments.length === 1) {
- throw new TypeError("reduceRight of empty array with no initial value");
- }
- var result;
- var i = length - 1;
- if (arguments.length >= 2) {
- result = arguments[1];
- } else {
- do {
- if (i in self) {
- result = self[i--];
- break;
- }
- if (--i < 0) {
- throw new TypeError("reduceRight of empty array with no initial value");
- }
- } while (true);
- }
- if (i < 0) {
- return result;
- }
- do {
- if (i in self) {
- result = callbackfn(result, self[i], i, object);
- }
- } while (i--);
- return result;
- }
- }, !reduceRightCoercesToObject);
- var hasFirefox2IndexOfBug = ArrayPrototype.indexOf && [0, 1].indexOf(1, 2) !== -1;
- defineProperties(ArrayPrototype, {
- indexOf: function indexOf(searchElement) {
- var self = splitString && isString(this) ? strSplit(this, "") : ES.ToObject(this);
- var length = ES.ToUint32(self.length);
- if (length === 0) {
- return -1;
- }
- var i = 0;
- if (arguments.length > 1) {
- i = ES.ToInteger(arguments[1]);
- }
- i = i >= 0 ? i : max(0, length + i);
- for (; i < length; i++) {
- if (i in self && self[i] === searchElement) {
- return i;
- }
- }
- return -1;
- }
- }, hasFirefox2IndexOfBug);
- var hasFirefox2LastIndexOfBug = ArrayPrototype.lastIndexOf && [0, 1].lastIndexOf(0, -3) !== -1;
- defineProperties(ArrayPrototype, {
- lastIndexOf: function lastIndexOf(searchElement) {
- var self = splitString && isString(this) ? strSplit(this, "") : ES.ToObject(this);
- var length = ES.ToUint32(self.length);
- if (length === 0) {
- return -1;
- }
- var i = length - 1;
- if (arguments.length > 1) {
- i = min(i, ES.ToInteger(arguments[1]));
- }
- i = i >= 0 ? i : length - abs(i);
- for (; i >= 0; i--) {
- if (i in self && searchElement === self[i]) {
- return i;
- }
- }
- return -1;
- }
- }, hasFirefox2LastIndexOfBug);
- var spliceNoopReturnsEmptyArray = function() {
- var a = [1, 2];
- var result = a.splice();
- return a.length === 2 && isArray(result) && result.length === 0;
- }();
- defineProperties(ArrayPrototype, {
- // Safari 5.0 bug where .splice() returns undefined
- splice: function splice(start, deleteCount) {
- if (arguments.length === 0) {
- return [];
- }
- return array_splice.apply(this, arguments);
- }
- }, !spliceNoopReturnsEmptyArray);
- var spliceWorksWithEmptyObject = function() {
- var obj = {};
- ArrayPrototype.splice.call(obj, 0, 0, 1);
- return obj.length === 1;
- }();
- var hasES6Defaults = [0, 1, 2].splice(0).length === 3;
- defineProperties(ArrayPrototype, {
- splice: function splice(start, deleteCount) {
- if (arguments.length === 0) {
- return [];
- }
- var args = arguments;
- this.length = max(ES.ToInteger(this.length), 0);
- if (arguments.length > 0 && typeof deleteCount !== "number") {
- args = arraySlice(arguments);
- if (args.length < 2) {
- pushCall(args, this.length - start);
- } else {
- args[1] = ES.ToInteger(deleteCount);
- }
- }
- return array_splice.apply(this, args);
- }
- }, !spliceWorksWithEmptyObject || !hasES6Defaults);
- var spliceWorksWithLargeSparseArrays = function() {
- var arr = new $Array(1e5);
- arr[8] = "x";
- arr.splice(1, 1);
- return arr.indexOf("x") === 7;
- }();
- var spliceWorksWithSmallSparseArrays = function() {
- var n = 256;
- var arr = [];
- arr[n] = "a";
- arr.splice(n + 1, 0, "b");
- return arr[n] === "a";
- }();
- defineProperties(ArrayPrototype, {
- splice: function splice(start, deleteCount) {
- var O = ES.ToObject(this);
- var A = [];
- var len = ES.ToUint32(O.length);
- var relativeStart = ES.ToInteger(start);
- var actualStart = relativeStart < 0 ? max(len + relativeStart, 0) : min(relativeStart, len);
- var actualDeleteCount = arguments.length === 0 ? 0 : arguments.length === 1 ? len - actualStart : min(max(ES.ToInteger(deleteCount), 0), len - actualStart);
- var k = 0;
- var from;
- while (k < actualDeleteCount) {
- from = $String(actualStart + k);
- if (owns(O, from)) {
- A[k] = O[from];
- }
- k += 1;
- }
- var items = arraySlice(arguments, 2);
- var itemCount = items.length;
- var to;
- if (itemCount < actualDeleteCount) {
- k = actualStart;
- var maxK = len - actualDeleteCount;
- while (k < maxK) {
- from = $String(k + actualDeleteCount);
- to = $String(k + itemCount);
- if (owns(O, from)) {
- O[to] = O[from];
- } else {
- delete O[to];
- }
- k += 1;
- }
- k = len;
- var minK = len - actualDeleteCount + itemCount;
- while (k > minK) {
- delete O[k - 1];
- k -= 1;
- }
- } else if (itemCount > actualDeleteCount) {
- k = len - actualDeleteCount;
- while (k > actualStart) {
- from = $String(k + actualDeleteCount - 1);
- to = $String(k + itemCount - 1);
- if (owns(O, from)) {
- O[to] = O[from];
- } else {
- delete O[to];
- }
- k -= 1;
- }
- }
- k = actualStart;
- for (var i = 0; i < items.length; ++i) {
- O[k] = items[i];
- k += 1;
- }
- O.length = len - actualDeleteCount + itemCount;
- return A;
- }
- }, !spliceWorksWithLargeSparseArrays || !spliceWorksWithSmallSparseArrays);
- var originalJoin = ArrayPrototype.join;
- var hasStringJoinBug;
- try {
- hasStringJoinBug = Array.prototype.join.call("123", ",") !== "1,2,3";
- } catch (e) {
- hasStringJoinBug = true;
- }
- if (hasStringJoinBug) {
- defineProperties(ArrayPrototype, {
- join: function join(separator) {
- var sep = typeof separator === "undefined" ? "," : separator;
- return originalJoin.call(isString(this) ? strSplit(this, "") : this, sep);
- }
- }, hasStringJoinBug);
- }
- var hasJoinUndefinedBug = [1, 2].join(void 0) !== "1,2";
- if (hasJoinUndefinedBug) {
- defineProperties(ArrayPrototype, {
- join: function join(separator) {
- var sep = typeof separator === "undefined" ? "," : separator;
- return originalJoin.call(this, sep);
- }
- }, hasJoinUndefinedBug);
- }
- var pushShim = function push(item) {
- var O = ES.ToObject(this);
- var n = ES.ToUint32(O.length);
- var i = 0;
- while (i < arguments.length) {
- O[n + i] = arguments[i];
- i += 1;
- }
- O.length = n + i;
- return n + i;
- };
- var pushIsNotGeneric = function() {
- var obj = {};
- var result = Array.prototype.push.call(obj, void 0);
- return result !== 1 || obj.length !== 1 || typeof obj[0] !== "undefined" || !owns(obj, 0);
- }();
- defineProperties(ArrayPrototype, {
- push: function push(item) {
- if (isArray(this)) {
- return array_push.apply(this, arguments);
- }
- return pushShim.apply(this, arguments);
- }
- }, pushIsNotGeneric);
- var pushUndefinedIsWeird = function() {
- var arr = [];
- var result = arr.push(void 0);
- return result !== 1 || arr.length !== 1 || typeof arr[0] !== "undefined" || !owns(arr, 0);
- }();
- defineProperties(ArrayPrototype, { push: pushShim }, pushUndefinedIsWeird);
- defineProperties(ArrayPrototype, {
- slice: function(start, end) {
- var arr = isString(this) ? strSplit(this, "") : this;
- return arraySliceApply(arr, arguments);
- }
- }, splitString);
- var sortIgnoresNonFunctions = function() {
- try {
- [1, 2].sort(null);
- } catch (e) {
- try {
- [1, 2].sort({});
- } catch (e2) {
- return false;
- }
- }
- return true;
- }();
- var sortThrowsOnRegex = function() {
- try {
- [1, 2].sort(/a/);
- return false;
- } catch (e) {
- }
- return true;
- }();
- var sortIgnoresUndefined = function() {
- try {
- [1, 2].sort(void 0);
- return true;
- } catch (e) {
- }
- return false;
- }();
- defineProperties(ArrayPrototype, {
- sort: function sort(compareFn) {
- if (typeof compareFn === "undefined") {
- return arraySort(this);
- }
- if (!isCallable(compareFn)) {
- throw new TypeError("Array.prototype.sort callback must be a function");
- }
- return arraySort(this, compareFn);
- }
- }, sortIgnoresNonFunctions || !sortIgnoresUndefined || !sortThrowsOnRegex);
- var hasDontEnumBug = !isEnum({ "toString": null }, "toString");
- var hasProtoEnumBug = isEnum(function() {
- }, "prototype");
- var hasStringEnumBug = !owns("x", "0");
- var equalsConstructorPrototype = function(o) {
- var ctor = o.constructor;
- return ctor && ctor.prototype === o;
- };
- var excludedKeys = {
- $applicationCache: true,
- $console: true,
- $external: true,
- $frame: true,
- $frameElement: true,
- $frames: true,
- $innerHeight: true,
- $innerWidth: true,
- $onmozfullscreenchange: true,
- $onmozfullscreenerror: true,
- $outerHeight: true,
- $outerWidth: true,
- $pageXOffset: true,
- $pageYOffset: true,
- $parent: true,
- $scrollLeft: true,
- $scrollTop: true,
- $scrollX: true,
- $scrollY: true,
- $self: true,
- $webkitIndexedDB: true,
- $webkitStorageInfo: true,
- $window: true,
- $width: true,
- $height: true,
- $top: true,
- $localStorage: true
- };
- var hasAutomationEqualityBug = function() {
- if (typeof window === "undefined") {
- return false;
- }
- for (var k in window) {
- try {
- if (!excludedKeys["$" + k] && owns(window, k) && window[k] !== null && typeof window[k] === "object") {
- equalsConstructorPrototype(window[k]);
- }
- } catch (e) {
- return true;
- }
- }
- return false;
- }();
- var equalsConstructorPrototypeIfNotBuggy = function(object) {
- if (typeof window === "undefined" || !hasAutomationEqualityBug) {
- return equalsConstructorPrototype(object);
- }
- try {
- return equalsConstructorPrototype(object);
- } catch (e) {
- return false;
- }
- };
- var dontEnums = [
- "toString",
- "toLocaleString",
- "valueOf",
- "hasOwnProperty",
- "isPrototypeOf",
- "propertyIsEnumerable",
- "constructor"
- ];
- var dontEnumsLength = dontEnums.length;
- var isStandardArguments = function isArguments2(value) {
- return toStr(value) === "[object Arguments]";
- };
- var isLegacyArguments = function isArguments2(value) {
- return value !== null && typeof value === "object" && typeof value.length === "number" && value.length >= 0 && !isArray(value) && isCallable(value.callee);
- };
- var isArguments = isStandardArguments(arguments) ? isStandardArguments : isLegacyArguments;
- defineProperties($Object, {
- keys: function keys(object) {
- var isFn = isCallable(object);
- var isArgs = isArguments(object);
- var isObject = object !== null && typeof object === "object";
- var isStr = isObject && isString(object);
- if (!isObject && !isFn && !isArgs) {
- throw new TypeError("Object.keys called on a non-object");
- }
- var theKeys = [];
- var skipProto = hasProtoEnumBug && isFn;
- if (isStr && hasStringEnumBug || isArgs) {
- for (var i = 0; i < object.length; ++i) {
- pushCall(theKeys, $String(i));
- }
- }
- if (!isArgs) {
- for (var name in object) {
- if (!(skipProto && name === "prototype") && owns(object, name)) {
- pushCall(theKeys, $String(name));
- }
- }
- }
- if (hasDontEnumBug) {
- var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
- for (var j = 0; j < dontEnumsLength; j++) {
- var dontEnum = dontEnums[j];
- if (!(skipConstructor && dontEnum === "constructor") && owns(object, dontEnum)) {
- pushCall(theKeys, dontEnum);
- }
- }
- }
- return theKeys;
- }
- });
- var keysWorksWithArguments = $Object.keys && function() {
- return $Object.keys(arguments).length === 2;
- }(1, 2);
- var keysHasArgumentsLengthBug = $Object.keys && function() {
- var argKeys = $Object.keys(arguments);
- return arguments.length !== 1 || argKeys.length !== 1 || argKeys[0] !== 1;
- }(1);
- var originalKeys = $Object.keys;
- defineProperties($Object, {
- keys: function keys(object) {
- if (isArguments(object)) {
- return originalKeys(arraySlice(object));
- }
- return originalKeys(object);
- }
- }, !keysWorksWithArguments || keysHasArgumentsLengthBug);
- var hasNegativeMonthYearBug = (/* @__PURE__ */ new Date(-3509827329600292)).getUTCMonth() !== 0;
- var aNegativeTestDate = /* @__PURE__ */ new Date(-1509842289600292);
- var aPositiveTestDate = /* @__PURE__ */ new Date(14496624e5);
- var hasToUTCStringFormatBug = aNegativeTestDate.toUTCString() !== "Mon, 01 Jan -45875 11:59:59 GMT";
- var hasToDateStringFormatBug;
- var hasToStringFormatBug;
- var timeZoneOffset = aNegativeTestDate.getTimezoneOffset();
- if (timeZoneOffset < -720) {
- hasToDateStringFormatBug = aNegativeTestDate.toDateString() !== "Tue Jan 02 -45875";
- hasToStringFormatBug = !/^Thu Dec 10 2015 \d\d:\d\d:\d\d GMT[-+]\d\d\d\d(?: |$)/.test(String(aPositiveTestDate));
- } else {
- hasToDateStringFormatBug = aNegativeTestDate.toDateString() !== "Mon Jan 01 -45875";
- hasToStringFormatBug = !/^Wed Dec 09 2015 \d\d:\d\d:\d\d GMT[-+]\d\d\d\d(?: |$)/.test(String(aPositiveTestDate));
- }
- var originalGetFullYear = call.bind(Date.prototype.getFullYear);
- var originalGetMonth = call.bind(Date.prototype.getMonth);
- var originalGetDate = call.bind(Date.prototype.getDate);
- var originalGetUTCFullYear = call.bind(Date.prototype.getUTCFullYear);
- var originalGetUTCMonth = call.bind(Date.prototype.getUTCMonth);
- var originalGetUTCDate = call.bind(Date.prototype.getUTCDate);
- var originalGetUTCDay = call.bind(Date.prototype.getUTCDay);
- var originalGetUTCHours = call.bind(Date.prototype.getUTCHours);
- var originalGetUTCMinutes = call.bind(Date.prototype.getUTCMinutes);
- var originalGetUTCSeconds = call.bind(Date.prototype.getUTCSeconds);
- var originalGetUTCMilliseconds = call.bind(Date.prototype.getUTCMilliseconds);
- var dayName = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
- var monthName = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
- var daysInMonth = function daysInMonth2(month, year) {
- return originalGetDate(new Date(year, month, 0));
- };
- defineProperties(Date.prototype, {
- getFullYear: function getFullYear() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetFullYear(this);
- if (year < 0 && originalGetMonth(this) > 11) {
- return year + 1;
- }
- return year;
- },
- getMonth: function getMonth() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetFullYear(this);
- var month = originalGetMonth(this);
- if (year < 0 && month > 11) {
- return 0;
- }
- return month;
- },
- getDate: function getDate() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetFullYear(this);
- var month = originalGetMonth(this);
- var date = originalGetDate(this);
- if (year < 0 && month > 11) {
- if (month === 12) {
- return date;
- }
- var days = daysInMonth(0, year + 1);
- return days - date + 1;
- }
- return date;
- },
- getUTCFullYear: function getUTCFullYear() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetUTCFullYear(this);
- if (year < 0 && originalGetUTCMonth(this) > 11) {
- return year + 1;
- }
- return year;
- },
- getUTCMonth: function getUTCMonth() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetUTCFullYear(this);
- var month = originalGetUTCMonth(this);
- if (year < 0 && month > 11) {
- return 0;
- }
- return month;
- },
- getUTCDate: function getUTCDate() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var year = originalGetUTCFullYear(this);
- var month = originalGetUTCMonth(this);
- var date = originalGetUTCDate(this);
- if (year < 0 && month > 11) {
- if (month === 12) {
- return date;
- }
- var days = daysInMonth(0, year + 1);
- return days - date + 1;
- }
- return date;
- }
- }, hasNegativeMonthYearBug);
- defineProperties(Date.prototype, {
- toUTCString: function toUTCString() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var day = originalGetUTCDay(this);
- var date = originalGetUTCDate(this);
- var month = originalGetUTCMonth(this);
- var year = originalGetUTCFullYear(this);
- var hour = originalGetUTCHours(this);
- var minute = originalGetUTCMinutes(this);
- var second = originalGetUTCSeconds(this);
- return dayName[day] + ", " + (date < 10 ? "0" + date : date) + " " + monthName[month] + " " + year + " " + (hour < 10 ? "0" + hour : hour) + ":" + (minute < 10 ? "0" + minute : minute) + ":" + (second < 10 ? "0" + second : second) + " GMT";
- }
- }, hasNegativeMonthYearBug || hasToUTCStringFormatBug);
- defineProperties(Date.prototype, {
- toDateString: function toDateString() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var day = this.getDay();
- var date = this.getDate();
- var month = this.getMonth();
- var year = this.getFullYear();
- return dayName[day] + " " + monthName[month] + " " + (date < 10 ? "0" + date : date) + " " + year;
- }
- }, hasNegativeMonthYearBug || hasToDateStringFormatBug);
- if (hasNegativeMonthYearBug || hasToStringFormatBug) {
- Date.prototype.toString = function toString() {
- if (!this || !(this instanceof Date)) {
- throw new TypeError("this is not a Date object.");
- }
- var day = this.getDay();
- var date = this.getDate();
- var month = this.getMonth();
- var year = this.getFullYear();
- var hour = this.getHours();
- var minute = this.getMinutes();
- var second = this.getSeconds();
- var timezoneOffset = this.getTimezoneOffset();
- var hoursOffset = floor(abs(timezoneOffset) / 60);
- var minutesOffset = floor(abs(timezoneOffset) % 60);
- return dayName[day] + " " + monthName[month] + " " + (date < 10 ? "0" + date : date) + " " + year + " " + (hour < 10 ? "0" + hour : hour) + ":" + (minute < 10 ? "0" + minute : minute) + ":" + (second < 10 ? "0" + second : second) + " GMT" + (timezoneOffset > 0 ? "-" : "+") + (hoursOffset < 10 ? "0" + hoursOffset : hoursOffset) + (minutesOffset < 10 ? "0" + minutesOffset : minutesOffset);
- };
- if (supportsDescriptors) {
- $Object.defineProperty(Date.prototype, "toString", {
- configurable: true,
- enumerable: false,
- writable: true
- });
- }
- }
- var negativeDate = -621987552e5;
- var negativeYearString = "-000001";
- var hasNegativeDateBug = Date.prototype.toISOString && new Date(negativeDate).toISOString().indexOf(negativeYearString) === -1;
- var hasSafari51DateBug = Date.prototype.toISOString && (/* @__PURE__ */ new Date(-1)).toISOString() !== "1969-12-31T23:59:59.999Z";
- var getTime = call.bind(Date.prototype.getTime);
- defineProperties(Date.prototype, {
- toISOString: function toISOString() {
- if (!isFinite(this) || !isFinite(getTime(this))) {
- throw new RangeError("Date.prototype.toISOString called on non-finite value.");
- }
- var year = originalGetUTCFullYear(this);
- var month = originalGetUTCMonth(this);
- year += floor(month / 12);
- month = (month % 12 + 12) % 12;
- var result = [
- month + 1,
- originalGetUTCDate(this),
- originalGetUTCHours(this),
- originalGetUTCMinutes(this),
- originalGetUTCSeconds(this)
- ];
- year = (year < 0 ? "-" : year > 9999 ? "+" : "") + strSlice("00000" + abs(year), 0 <= year && year <= 9999 ? -4 : -6);
- for (var i = 0; i < result.length; ++i) {
- result[i] = strSlice("00" + result[i], -2);
- }
- return year + "-" + arraySlice(result, 0, 2).join("-") + "T" + arraySlice(result, 2).join(":") + "." + strSlice("000" + originalGetUTCMilliseconds(this), -3) + "Z";
- }
- }, hasNegativeDateBug || hasSafari51DateBug);
- var dateToJSONIsSupported = function() {
- try {
- return Date.prototype.toJSON && (/* @__PURE__ */ new Date(NaN)).toJSON() === null && new Date(negativeDate).toJSON().indexOf(negativeYearString) !== -1 && Date.prototype.toJSON.call({
- // generic
- toISOString: function() {
- return true;
- }
- });
- } catch (e) {
- return false;
- }
- }();
- if (!dateToJSONIsSupported) {
- Date.prototype.toJSON = function toJSON(key) {
- var O = $Object(this);
- var tv = ES.ToPrimitive(O);
- if (typeof tv === "number" && !isFinite(tv)) {
- return null;
- }
- var toISO = O.toISOString;
- if (!isCallable(toISO)) {
- throw new TypeError("toISOString property is not callable");
- }
- return toISO.call(O);
- };
- }
- var supportsExtendedYears = Date.parse("+033658-09-27T01:46:40.000Z") === 1e15;
- var acceptsInvalidDates = !isNaN(Date.parse("2012-04-04T24:00:00.500Z")) || !isNaN(Date.parse("2012-11-31T23:59:59.000Z")) || !isNaN(Date.parse("2012-12-31T23:59:60.000Z"));
- var doesNotParseY2KNewYear = isNaN(Date.parse("2000-01-01T00:00:00.000Z"));
- if (doesNotParseY2KNewYear || acceptsInvalidDates || !supportsExtendedYears) {
- var maxSafeUnsigned32Bit = pow(2, 31) - 1;
- var hasSafariSignedIntBug = isActualNaN(new Date(1970, 0, 1, 0, 0, 0, maxSafeUnsigned32Bit + 1).getTime());
- Date = function(NativeDate) {
- var DateShim = function Date2(Y, M, D, h, m, s, ms) {
- var length = arguments.length;
- var date;
- if (this instanceof NativeDate) {
- var seconds = s;
- var millis = ms;
- if (hasSafariSignedIntBug && length >= 7 && ms > maxSafeUnsigned32Bit) {
- var msToShift = floor(ms / maxSafeUnsigned32Bit) * maxSafeUnsigned32Bit;
- var sToShift = floor(msToShift / 1e3);
- seconds += sToShift;
- millis -= sToShift * 1e3;
- }
- var parsed = DateShim.parse(Y);
- var hasNegTimestampParseBug = isNaN(parsed);
- date = length === 1 && $String(Y) === Y && !hasNegTimestampParseBug ? new NativeDate(parsed) : length >= 7 ? new NativeDate(Y, M, D, h, m, seconds, millis) : length >= 6 ? new NativeDate(Y, M, D, h, m, seconds) : length >= 5 ? new NativeDate(Y, M, D, h, m) : length >= 4 ? new NativeDate(Y, M, D, h) : length >= 3 ? new NativeDate(Y, M, D) : length >= 2 ? new NativeDate(Y, M) : length >= 1 ? new NativeDate(Y instanceof NativeDate ? +Y : Y) : new NativeDate();
- } else {
- date = NativeDate.apply(this, arguments);
- }
- if (!isPrimitive(date)) {
- defineProperties(date, { constructor: DateShim }, true);
- }
- return date;
- };
- var isoDateExpression = new RegExp("^(\\d{4}|[+-]\\d{6})(?:-(\\d{2})(?:-(\\d{2})(?:T(\\d{2}):(\\d{2})(?::(\\d{2})(?:(\\.\\d{1,}))?)?(Z|(?:([-+])(\\d{2}):(\\d{2})))?)?)?)?$");
- var months = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365];
- var dayFromMonth = function dayFromMonth2(year, month) {
- var t = month > 1 ? 1 : 0;
- return months[month] + floor((year - 1969 + t) / 4) - floor((year - 1901 + t) / 100) + floor((year - 1601 + t) / 400) + 365 * (year - 1970);
- };
- var toUTC = function toUTC2(t) {
- var s = 0;
- var ms = t;
- if (hasSafariSignedIntBug && ms > maxSafeUnsigned32Bit) {
- var msToShift = floor(ms / maxSafeUnsigned32Bit) * maxSafeUnsigned32Bit;
- var sToShift = floor(msToShift / 1e3);
- s += sToShift;
- ms -= sToShift * 1e3;
- }
- return $Number(new NativeDate(1970, 0, 1, 0, 0, s, ms));
- };
- for (var key in NativeDate) {
- if (owns(NativeDate, key)) {
- DateShim[key] = NativeDate[key];
- }
- }
- defineProperties(DateShim, {
- now: NativeDate.now,
- UTC: NativeDate.UTC
- }, true);
- DateShim.prototype = NativeDate.prototype;
- defineProperties(DateShim.prototype, { constructor: DateShim }, true);
- var parseShim = function parse(string) {
- var match = isoDateExpression.exec(string);
- if (match) {
- var year = $Number(match[1]), month = $Number(match[2] || 1) - 1, day = $Number(match[3] || 1) - 1, hour = $Number(match[4] || 0), minute = $Number(match[5] || 0), second = $Number(match[6] || 0), millisecond = floor($Number(match[7] || 0) * 1e3), isLocalTime = Boolean(match[4] && !match[8]), signOffset = match[9] === "-" ? 1 : -1, hourOffset = $Number(match[10] || 0), minuteOffset = $Number(match[11] || 0), result;
- var hasMinutesOrSecondsOrMilliseconds = minute > 0 || second > 0 || millisecond > 0;
- if (hour < (hasMinutesOrSecondsOrMilliseconds ? 24 : 25) && minute < 60 && second < 60 && millisecond < 1e3 && month > -1 && month < 12 && hourOffset < 24 && minuteOffset < 60 && day > -1 && day < dayFromMonth(year, month + 1) - dayFromMonth(year, month)) {
- result = ((dayFromMonth(year, month) + day) * 24 + hour + hourOffset * signOffset) * 60;
- result = ((result + minute + minuteOffset * signOffset) * 60 + second) * 1e3 + millisecond;
- if (isLocalTime) {
- result = toUTC(result);
- }
- if (-864e13 <= result && result <= 864e13) {
- return result;
- }
- }
- return NaN;
- }
- return NativeDate.parse.apply(this, arguments);
- };
- defineProperties(DateShim, { parse: parseShim });
- return DateShim;
- }(Date);
- }
- if (!Date.now) {
- Date.now = function now() {
- return (/* @__PURE__ */ new Date()).getTime();
- };
- }
- var hasToFixedBugs = NumberPrototype.toFixed && (8e-5.toFixed(3) !== "0.000" || 0.9.toFixed(0) !== "1" || 1.255.toFixed(2) !== "1.25" || 1000000000000000100 .toFixed(0) !== "1000000000000000128");
- var toFixedHelpers = {
- base: 1e7,
- size: 6,
- data: [0, 0, 0, 0, 0, 0],
- multiply: function multiply(n, c) {
- var i = -1;
- var c2 = c;
- while (++i < toFixedHelpers.size) {
- c2 += n * toFixedHelpers.data[i];
- toFixedHelpers.data[i] = c2 % toFixedHelpers.base;
- c2 = floor(c2 / toFixedHelpers.base);
- }
- },
- divide: function divide(n) {
- var i = toFixedHelpers.size;
- var c = 0;
- while (--i >= 0) {
- c += toFixedHelpers.data[i];
- toFixedHelpers.data[i] = floor(c / n);
- c = c % n * toFixedHelpers.base;
- }
- },
- numToString: function numToString() {
- var i = toFixedHelpers.size;
- var s = "";
- while (--i >= 0) {
- if (s !== "" || i === 0 || toFixedHelpers.data[i] !== 0) {
- var t = $String(toFixedHelpers.data[i]);
- if (s === "") {
- s = t;
- } else {
- s += strSlice("0000000", 0, 7 - t.length) + t;
- }
- }
- }
- return s;
- },
- pow: function pow2(x, n, acc) {
- return n === 0 ? acc : n % 2 === 1 ? pow2(x, n - 1, acc * x) : pow2(x * x, n / 2, acc);
- },
- log: function log2(x) {
- var n = 0;
- var x2 = x;
- while (x2 >= 4096) {
- n += 12;
- x2 /= 4096;
- }
- while (x2 >= 2) {
- n += 1;
- x2 /= 2;
- }
- return n;
- }
- };
- var toFixedShim = function toFixed(fractionDigits) {
- var f, x, s, m, e, z, j, k;
- f = $Number(fractionDigits);
- f = isActualNaN(f) ? 0 : floor(f);
- if (f < 0 || f > 20) {
- throw new RangeError("Number.toFixed called with invalid number of decimals");
- }
- x = $Number(this);
- if (isActualNaN(x)) {
- return "NaN";
- }
- if (x <= -1e21 || x >= 1e21) {
- return $String(x);
- }
- s = "";
- if (x < 0) {
- s = "-";
- x = -x;
- }
- m = "0";
- if (x > 1e-21) {
- e = toFixedHelpers.log(x * toFixedHelpers.pow(2, 69, 1)) - 69;
- z = e < 0 ? x * toFixedHelpers.pow(2, -e, 1) : x / toFixedHelpers.pow(2, e, 1);
- z *= 4503599627370496;
- e = 52 - e;
- if (e > 0) {
- toFixedHelpers.multiply(0, z);
- j = f;
- while (j >= 7) {
- toFixedHelpers.multiply(1e7, 0);
- j -= 7;
- }
- toFixedHelpers.multiply(toFixedHelpers.pow(10, j, 1), 0);
- j = e - 1;
- while (j >= 23) {
- toFixedHelpers.divide(1 << 23);
- j -= 23;
- }
- toFixedHelpers.divide(1 << j);
- toFixedHelpers.multiply(1, 1);
- toFixedHelpers.divide(2);
- m = toFixedHelpers.numToString();
- } else {
- toFixedHelpers.multiply(0, z);
- toFixedHelpers.multiply(1 << -e, 0);
- m = toFixedHelpers.numToString() + strSlice("0.00000000000000000000", 2, 2 + f);
- }
- }
- if (f > 0) {
- k = m.length;
- if (k <= f) {
- m = s + strSlice("0.0000000000000000000", 0, f - k + 2) + m;
- } else {
- m = s + strSlice(m, 0, k - f) + "." + strSlice(m, k - f);
- }
- } else {
- m = s + m;
- }
- return m;
- };
- defineProperties(NumberPrototype, { toFixed: toFixedShim }, hasToFixedBugs);
- var hasToExponentialRoundingBug = function() {
- try {
- return (-69e-12).toExponential(4) !== "-6.9000e-11";
- } catch (e) {
- return false;
- }
- }();
- var toExponentialAllowsInfiniteDigits = function() {
- try {
- 1 .toExponential(Infinity);
- 1 .toExponential(-Infinity);
- return true;
- } catch (e) {
- return false;
- }
- }();
- var originalToExponential = call.bind(NumberPrototype.toExponential);
- var numberToString = call.bind(NumberPrototype.toString);
- var numberValueOf = call.bind(NumberPrototype.valueOf);
- defineProperties(NumberPrototype, {
- toExponential: function toExponential(fractionDigits) {
- var x = numberValueOf(this);
- if (typeof fractionDigits === "undefined") {
- return originalToExponential(x);
- }
- var f = ES.ToInteger(fractionDigits);
- if (isActualNaN(x)) {
- return "NaN";
- }
- if (f < 0 || f > 20) {
- if (!isFinite(f)) {
- throw new RangeError("toExponential() argument must be between 0 and 20");
- }
- return originalToExponential(x, f);
- }
- var s = "";
- if (x < 0) {
- s = "-";
- x = -x;
- }
- if (x === Infinity) {
- return s + "Infinity";
- }
- if (typeof fractionDigits !== "undefined" && (f < 0 || f > 20)) {
- throw new RangeError("Fraction digits " + fractionDigits + " out of range");
- }
- var m = "";
- var e = 0;
- var c = "";
- var d = "";
- if (x === 0) {
- e = 0;
- f = 0;
- m = "0";
- } else {
- var L = log10(x);
- e = floor(L);
- var n = 0;
- if (typeof fractionDigits !== "undefined") {
- var w = pow(10, e - f);
- n = round(x / w);
- if (2 * x >= (2 * n + 1) * w) {
- n += 1;
- }
- if (n >= pow(10, f + 1)) {
- n /= 10;
- e += 1;
- }
- } else {
- f = 16;
- var guess_n = round(pow(10, L - e + f));
- var target_f = f;
- while (f-- > 0) {
- guess_n = round(pow(10, L - e + f));
- if (abs(guess_n * pow(10, e - f) - x) <= abs(n * pow(10, e - target_f) - x)) {
- target_f = f;
- n = guess_n;
- }
- }
- }
- m = numberToString(n, 10);
- if (typeof fractionDigits === "undefined") {
- while (strSlice(m, -1) === "0") {
- m = strSlice(m, 0, -1);
- d += 1;
- }
- }
- }
- if (f !== 0) {
- m = strSlice(m, 0, 1) + "." + strSlice(m, 1);
- }
- if (e === 0) {
- c = "+";
- d = "0";
- } else {
- c = e > 0 ? "+" : "-";
- d = numberToString(abs(e), 10);
- }
- m += "e" + c + d;
- return s + m;
- }
- }, hasToExponentialRoundingBug || toExponentialAllowsInfiniteDigits);
- var hasToPrecisionUndefinedBug = function() {
- try {
- return 1 .toPrecision(void 0) === "1";
- } catch (e) {
- return true;
- }
- }();
- var originalToPrecision = call.bind(NumberPrototype.toPrecision);
- defineProperties(NumberPrototype, {
- toPrecision: function toPrecision(precision) {
- return typeof precision === "undefined" ? originalToPrecision(this) : originalToPrecision(this, precision);
- }
- }, hasToPrecisionUndefinedBug);
- if ("ab".split(/(?:ab)*/).length !== 2 || ".".split(/(.?)(.?)/).length !== 4 || "tesst".split(/(s)*/)[1] === "t" || "test".split(/(?:)/, -1).length !== 4 || "".split(/.?/).length || ".".split(/()()/).length > 1) {
- (function() {
- var compliantExecNpcg = typeof /()??/.exec("")[1] === "undefined";
- var maxSafe32BitInt = pow(2, 32) - 1;
- StringPrototype.split = function split(separator, limit) {
- var string = String(this);
- if (typeof separator === "undefined" && limit === 0) {
- return [];
- }
- if (!isRegex(separator)) {
- return strSplit(this, separator, limit);
- }
- var output = [];
- var flags = (separator.ignoreCase ? "i" : "") + (separator.multiline ? "m" : "") + (separator.unicode ? "u" : "") + (separator.sticky ? "y" : ""), lastLastIndex = 0, separator2, match, lastIndex, lastLength;
- var separatorCopy = new RegExp(separator.source, flags + "g");
- if (!compliantExecNpcg) {
- separator2 = new RegExp("^" + separatorCopy.source + "$(?!\\s)", flags);
- }
- var splitLimit = typeof limit === "undefined" ? maxSafe32BitInt : ES.ToUint32(limit);
- match = separatorCopy.exec(string);
- while (match) {
- lastIndex = match.index + match[0].length;
- if (lastIndex > lastLastIndex) {
- pushCall(output, strSlice(string, lastLastIndex, match.index));
- if (!compliantExecNpcg && match.length > 1) {
- match[0].replace(separator2, function() {
- for (var i = 1; i < arguments.length - 2; i++) {
- if (typeof arguments[i] === "undefined") {
- match[i] = void 0;
- }
- }
- });
- }
- if (match.length > 1 && match.index < string.length) {
- array_push.apply(output, arraySlice(match, 1));
- }
- lastLength = match[0].length;
- lastLastIndex = lastIndex;
- if (output.length >= splitLimit) {
- break;
- }
- }
- if (separatorCopy.lastIndex === match.index) {
- separatorCopy.lastIndex++;
- }
- match = separatorCopy.exec(string);
- }
- if (lastLastIndex === string.length) {
- if (lastLength || !separatorCopy.test("")) {
- pushCall(output, "");
- }
- } else {
- pushCall(output, strSlice(string, lastLastIndex));
- }
- return output.length > splitLimit ? arraySlice(output, 0, splitLimit) : output;
- };
- })();
- } else if ("0".split(void 0, 0).length) {
- StringPrototype.split = function split(separator, limit) {
- if (typeof separator === "undefined" && limit === 0) {
- return [];
- }
- return strSplit(this, separator, limit);
- };
- }
- var str_replace = StringPrototype.replace;
- var replaceReportsGroupsCorrectly = function() {
- var groups = [];
- "x".replace(/x(.)?/g, function(match, group) {
- pushCall(groups, group);
- });
- return groups.length === 1 && typeof groups[0] === "undefined";
- }();
- if (!replaceReportsGroupsCorrectly) {
- StringPrototype.replace = function replace(searchValue, replaceValue) {
- var isFn = isCallable(replaceValue);
- var hasCapturingGroups = isRegex(searchValue) && /\)[*?]/.test(searchValue.source);
- if (!isFn || !hasCapturingGroups) {
- return str_replace.call(this, searchValue, replaceValue);
- }
- var wrappedReplaceValue = function(match) {
- var length = arguments.length;
- var originalLastIndex = searchValue.lastIndex;
- searchValue.lastIndex = 0;
- var args = searchValue.exec(match) || [];
- searchValue.lastIndex = originalLastIndex;
- pushCall(args, arguments[length - 2], arguments[length - 1]);
- return replaceValue.apply(this, args);
- };
- return str_replace.call(this, searchValue, wrappedReplaceValue);
- };
- }
- var hasNegativeSubstrBug = "".substr && "0b".substr(-1) !== "b";
- var string_substr = hasNegativeSubstrBug && call.bind(StringPrototype.substr);
- defineProperties(StringPrototype, {
- substr: function substr(start, length) {
- var normalizedStart = start;
- if (start < 0) {
- normalizedStart = max(this.length + start, 0);
- }
- return string_substr(this, normalizedStart, length);
- }
- }, hasNegativeSubstrBug);
- var mvs = "";
- var mvsIsWS = /\s/.test(mvs);
- var ws = " \n\v\f\r \u2028\u2029\uFEFF".replace(/\S/g, "");
- var zeroWidth = "";
- var wsRegexChars = "[" + ws + "]";
- var trimBeginRegexp = new RegExp("^" + wsRegexChars + wsRegexChars + "*");
- var trimEndRegexp = new RegExp(wsRegexChars + wsRegexChars + "*$");
- var hasTrimWhitespaceBug = StringPrototype.trim && (ws.trim() !== "" || zeroWidth.trim() === "" || mvs.trim() !== (mvsIsWS ? "" : mvs));
- defineProperties(StringPrototype, {
- // https://blog.stevenlevithan.com/archives/faster-trim-javascript
- // http://perfectionkills.com/whitespace-deviations/
- trim: function trim2() {
- "use strict";
- if (typeof this === "undefined" || this === null) {
- throw new TypeError("can't convert " + this + " to object");
- }
- return $String(this).replace(trimBeginRegexp, "").replace(trimEndRegexp, "");
- }
- }, hasTrimWhitespaceBug);
- var trim = call.bind(String.prototype.trim);
- var hasLastIndexBug = StringPrototype.lastIndexOf && "abcあい".lastIndexOf("あい", 2) !== -1;
- defineProperties(StringPrototype, {
- lastIndexOf: function lastIndexOf(searchString) {
- if (typeof this === "undefined" || this === null) {
- throw new TypeError("can't convert " + this + " to object");
- }
- var S = $String(this);
- var searchStr = $String(searchString);
- var numPos = arguments.length > 1 ? $Number(arguments[1]) : NaN;
- var pos = isActualNaN(numPos) ? Infinity : ES.ToInteger(numPos);
- var start = min(max(pos, 0), S.length);
- var searchLen = searchStr.length;
- var k = start + searchLen;
- while (k > 0) {
- k = max(0, k - searchLen);
- var index = strIndexOf(strSlice(S, k, start + searchLen), searchStr);
- if (index !== -1) {
- return k + index;
- }
- }
- return -1;
- }
- }, hasLastIndexBug);
- var originalLastIndexOf = StringPrototype.lastIndexOf;
- defineProperties(StringPrototype, {
- lastIndexOf: function lastIndexOf(searchString) {
- return originalLastIndexOf.apply(this, arguments);
- }
- }, StringPrototype.lastIndexOf.length !== 1);
- var hexRegex = /^[-+]?0[xX]/;
- if (parseInt(ws + "08") !== 8 || parseInt(ws + "0x16") !== 22 || (mvsIsWS ? parseInt(mvs + 1) !== 1 : !isNaN(parseInt(mvs + 1)))) {
- parseInt = function(origParseInt) {
- return function parseInt2(str, radix) {
- if (this instanceof parseInt2) {
- new origParseInt();
- }
- var string = trim(String(str));
- var defaultedRadix = $Number(radix) || (hexRegex.test(string) ? 16 : 10);
- return origParseInt(string, defaultedRadix);
- };
- }(parseInt);
- }
- var parseIntFailsToThrowOnBoxedSymbols = function() {
- if (typeof Symbol !== "function") {
- return false;
- }
- try {
- parseInt(Object(Symbol.iterator));
- return true;
- } catch (e) {
- }
- try {
- parseInt(Symbol.iterator);
- return true;
- } catch (e) {
- }
- return false;
- }();
- if (parseIntFailsToThrowOnBoxedSymbols) {
- var symbolValueOf = Symbol.prototype.valueOf;
- parseInt = function(origParseInt) {
- return function parseInt2(str, radix) {
- if (this instanceof parseInt2) {
- new origParseInt();
- }
- var isSym = typeof str === "symbol";
- if (!isSym && str && typeof str === "object") {
- try {
- symbolValueOf.call(str);
- isSym = true;
- } catch (e) {
- }
- }
- if (isSym) {
- "" + str;
- }
- var string = trim(String(str));
- var defaultedRadix = $Number(radix) || (hexRegex.test(string) ? 16 : 10);
- return origParseInt(string, defaultedRadix);
- };
- }(parseInt);
- }
- if (1 / parseFloat("-0") !== -Infinity) {
- parseFloat = function(origParseFloat) {
- return function parseFloat2(string) {
- var inputString = trim(String(string));
- var result = origParseFloat(inputString);
- return result === 0 && strSlice(inputString, 0, 1) === "-" ? -0 : result;
- };
- }(parseFloat);
- }
- if (String(new RangeError("test")) !== "RangeError: test") {
- var errorToStringShim = function toString() {
- if (typeof this === "undefined" || this === null) {
- throw new TypeError("can't convert " + this + " to object");
- }
- var name = this.name;
- if (typeof name === "undefined") {
- name = "Error";
- } else if (typeof name !== "string") {
- name = $String(name);
- }
- var msg = this.message;
- if (typeof msg === "undefined") {
- msg = "";
- } else if (typeof msg !== "string") {
- msg = $String(msg);
- }
- if (!name) {
- return msg;
- }
- if (!msg) {
- return name;
- }
- return name + ": " + msg;
- };
- Error.prototype.toString = errorToStringShim;
- }
- if (supportsDescriptors) {
- var ensureNonEnumerable = function(obj, prop) {
- if (isEnum(obj, prop)) {
- var desc = Object.getOwnPropertyDescriptor(obj, prop);
- if (desc.configurable) {
- desc.enumerable = false;
- Object.defineProperty(obj, prop, desc);
- }
- }
- };
- ensureNonEnumerable(Error.prototype, "message");
- if (Error.prototype.message !== "") {
- Error.prototype.message = "";
- }
- ensureNonEnumerable(Error.prototype, "name");
- }
- if (String(/a/mig) !== "/a/gim") {
- var regexToString = function toString() {
- var str = "/" + this.source + "/";
- if (this.global) {
- str += "g";
- }
- if (this.ignoreCase) {
- str += "i";
- }
- if (this.multiline) {
- str += "m";
- }
- return str;
- };
- RegExp.prototype.toString = regexToString;
- }
- });
- }
- });
- export default require_es5_shim();
- /*! Bundled license information:
- es5-shim/es5-shim.js:
- (*!
- * https://github.com/es-shims/es5-shim
- * @license es5-shim Copyright 2009-2020 by contributors, MIT License
- * see https://github.com/es-shims/es5-shim/blob/master/LICENSE
- *)
- */
- //# sourceMappingURL=es5-shim.js.map
|