hyperformula
Version:
HyperFormula is a JavaScript engine for efficient processing of spreadsheet-like data and formulas
1,493 lines (1,217 loc) • 1.67 MB
JavaScript
/*!
* Copyright (c) HANDSONCODE sp. z o. o.
*
* HYPERFORMULA is a software distributed by HANDSONCODE sp. z o. o., a
* Polish corporation based in Gdynia, Poland, at Aleja Zwyciestwa 96-98,
* registered by the District Court in Gdansk under number 538651,
* EU VAT: PL5862294002, share capital: PLN 62,800.00.
*
* This software is dual-licensed, giving you the option to use it under
* either a proprietary license or the GNU General Public License version 3
* (GPLv3). The specific license under which you use the software is
* determined by the license key you apply. Each licensing option comes with
* its own terms and conditions as specified below.
*
* 1. PROPRIETARY LICENSE:
*
* Your use of this software is subject to the terms included in an
* applicable proprietary license agreement between you and HANDSONCODE.
* The proprietary license can be purchased from HANDSONCODE or an
* authorized reseller.
*
* 2. GNU GENERAL PUBLIC LICENSE v3:
*
* This software is also available under the terms of the GNU General
* Public License v3. You are permitted to run, modify, and distribute
* this software under the terms of the GPLv3, as published by the Free
* Software Foundation. The full text of the GPLv3 can be found at
* https://www.gnu.org/licenses/.
*
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON
* AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO
* EVENT AND UNDER NO LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR
* DAMAGES, INCLUDING ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
* CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM USE OR INABILITY TO
* USE THIS SOFTWARE.
*
* Version: 2.7.1
* Release date: 18/07/2024 (built at 18/07/2024 11:23:21)
*/
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define("HyperFormula", [], factory);
else if(typeof exports === 'object')
exports["HyperFormula"] = factory();
else
root["HyperFormula"] = factory();
})(typeof self !== 'undefined' ? self : this, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
exports.default = void 0;
var _ArraySize = __webpack_require__(1);
exports.ArraySize = _ArraySize.ArraySize;
var _Cell = __webpack_require__(73);
exports.CellError = _Cell.CellError;
exports.CellType = _Cell.CellType;
exports.CellValueDetailedType = _Cell.CellValueDetailedType;
exports.CellValueType = _Cell.CellValueType;
exports.ErrorType = _Cell.ErrorType;
var _CellValue = __webpack_require__(170);
exports.DetailedCellError = _CellValue.DetailedCellError;
var _Config = __webpack_require__(171);
var _ChooseAddressMappingPolicy = __webpack_require__(175);
exports.AlwaysDense = _ChooseAddressMappingPolicy.AlwaysDense;
exports.AlwaysSparse = _ChooseAddressMappingPolicy.AlwaysSparse;
exports.DenseSparseChooseBasedOnThreshold = _ChooseAddressMappingPolicy.DenseSparseChooseBasedOnThreshold;
var _errors = __webpack_require__(147);
exports.ConfigValueTooBigError = _errors.ConfigValueTooBigError;
exports.ConfigValueTooSmallError = _errors.ConfigValueTooSmallError;
exports.EvaluationSuspendedError = _errors.EvaluationSuspendedError;
exports.ExpectedOneOfValuesError = _errors.ExpectedOneOfValuesError;
exports.ExpectedValueOfTypeError = _errors.ExpectedValueOfTypeError;
exports.FunctionPluginValidationError = _errors.FunctionPluginValidationError;
exports.InvalidAddressError = _errors.InvalidAddressError;
exports.InvalidArgumentsError = _errors.InvalidArgumentsError;
exports.LanguageAlreadyRegisteredError = _errors.LanguageAlreadyRegisteredError;
exports.LanguageNotRegisteredError = _errors.LanguageNotRegisteredError;
exports.MissingTranslationError = _errors.MissingTranslationError;
exports.NamedExpressionDoesNotExistError = _errors.NamedExpressionDoesNotExistError;
exports.NamedExpressionNameIsAlreadyTakenError = _errors.NamedExpressionNameIsAlreadyTakenError;
exports.NamedExpressionNameIsInvalidError = _errors.NamedExpressionNameIsInvalidError;
exports.NoOperationToRedoError = _errors.NoOperationToRedoError;
exports.NoOperationToUndoError = _errors.NoOperationToUndoError;
exports.NoRelativeAddressesAllowedError = _errors.NoRelativeAddressesAllowedError;
exports.NoSheetWithIdError = _errors.NoSheetWithIdError;
exports.NoSheetWithNameError = _errors.NoSheetWithNameError;
exports.NotAFormulaError = _errors.NotAFormulaError;
exports.NothingToPasteError = _errors.NothingToPasteError;
exports.ProtectedFunctionTranslationError = _errors.ProtectedFunctionTranslationError;
exports.SheetNameAlreadyTakenError = _errors.SheetNameAlreadyTakenError;
exports.SheetSizeLimitExceededError = _errors.SheetSizeLimitExceededError;
exports.SourceLocationHasArrayError = _errors.SourceLocationHasArrayError;
exports.TargetLocationHasArrayError = _errors.TargetLocationHasArrayError;
exports.UnableToParseError = _errors.UnableToParseError;
var _Exporter = __webpack_require__(198);
exports.ExportedCellChange = _Exporter.ExportedCellChange;
exports.ExportedNamedExpressionChange = _Exporter.ExportedNamedExpressionChange;
var _HyperFormula = __webpack_require__(180);
exports.HyperFormula = _HyperFormula.HyperFormula;
var _enGB = _interopRequireDefault(__webpack_require__(216));
var _interpreter = __webpack_require__(166);
exports.FunctionPlugin = _interpreter.FunctionPlugin;
exports.FunctionArgumentType = _interpreter.FunctionArgumentType;
exports.EmptyValue = _interpreter.EmptyValue;
var plugins = _interopRequireWildcard(__webpack_require__(217));
var _SimpleRangeValue = __webpack_require__(139);
exports.SimpleRangeValue = _SimpleRangeValue.SimpleRangeValue;
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* @license
* Copyright (c) 2024 Handsoncode. All rights reserved.
*/
/**
* Aggregate class for default export
*/
class HyperFormulaNS extends _HyperFormula.HyperFormula {}
HyperFormulaNS.HyperFormula = _HyperFormula.HyperFormula;
HyperFormulaNS.ErrorType = _Cell.ErrorType;
HyperFormulaNS.CellError = _Cell.CellError;
HyperFormulaNS.CellType = _Cell.CellType;
HyperFormulaNS.CellValueType = _Cell.CellValueType;
HyperFormulaNS.CellValueDetailedType = _Cell.CellValueDetailedType;
HyperFormulaNS.DetailedCellError = _CellValue.DetailedCellError;
HyperFormulaNS.ExportedCellChange = _Exporter.ExportedCellChange;
HyperFormulaNS.ExportedNamedExpressionChange = _Exporter.ExportedNamedExpressionChange;
HyperFormulaNS.ConfigValueTooBigError = _errors.ConfigValueTooBigError;
HyperFormulaNS.ConfigValueTooSmallError = _errors.ConfigValueTooSmallError;
HyperFormulaNS.EvaluationSuspendedError = _errors.EvaluationSuspendedError;
HyperFormulaNS.ExpectedOneOfValuesError = _errors.ExpectedOneOfValuesError;
HyperFormulaNS.ExpectedValueOfTypeError = _errors.ExpectedValueOfTypeError;
HyperFormulaNS.ArraySize = _ArraySize.ArraySize;
HyperFormulaNS.SimpleRangeValue = _SimpleRangeValue.SimpleRangeValue;
HyperFormulaNS.EmptyValue = _interpreter.EmptyValue;
HyperFormulaNS.FunctionPlugin = _interpreter.FunctionPlugin;
HyperFormulaNS.FunctionArgumentType = _interpreter.FunctionArgumentType;
HyperFormulaNS.FunctionPluginValidationError = _errors.FunctionPluginValidationError;
HyperFormulaNS.InvalidAddressError = _errors.InvalidAddressError;
HyperFormulaNS.InvalidArgumentsError = _errors.InvalidArgumentsError;
HyperFormulaNS.LanguageNotRegisteredError = _errors.LanguageNotRegisteredError;
HyperFormulaNS.LanguageAlreadyRegisteredError = _errors.LanguageAlreadyRegisteredError;
HyperFormulaNS.MissingTranslationError = _errors.MissingTranslationError;
HyperFormulaNS.NamedExpressionDoesNotExistError = _errors.NamedExpressionDoesNotExistError;
HyperFormulaNS.NamedExpressionNameIsAlreadyTakenError = _errors.NamedExpressionNameIsAlreadyTakenError;
HyperFormulaNS.NamedExpressionNameIsInvalidError = _errors.NamedExpressionNameIsInvalidError;
HyperFormulaNS.NoOperationToRedoError = _errors.NoOperationToRedoError;
HyperFormulaNS.NoOperationToUndoError = _errors.NoOperationToUndoError;
HyperFormulaNS.NoRelativeAddressesAllowedError = _errors.NoRelativeAddressesAllowedError;
HyperFormulaNS.NoSheetWithIdError = _errors.NoSheetWithIdError;
HyperFormulaNS.NoSheetWithNameError = _errors.NoSheetWithNameError;
HyperFormulaNS.NotAFormulaError = _errors.NotAFormulaError;
HyperFormulaNS.NothingToPasteError = _errors.NothingToPasteError;
HyperFormulaNS.ProtectedFunctionTranslationError = _errors.ProtectedFunctionTranslationError;
HyperFormulaNS.SheetNameAlreadyTakenError = _errors.SheetNameAlreadyTakenError;
HyperFormulaNS.SheetSizeLimitExceededError = _errors.SheetSizeLimitExceededError;
HyperFormulaNS.SourceLocationHasArrayError = _errors.SourceLocationHasArrayError;
HyperFormulaNS.TargetLocationHasArrayError = _errors.TargetLocationHasArrayError;
HyperFormulaNS.UnableToParseError = _errors.UnableToParseError;
const defaultLanguage = _Config.Config.defaultConfig.language;
_HyperFormula.HyperFormula.registerLanguage(defaultLanguage, _enGB.default);
_HyperFormula.HyperFormula.languages[_enGB.default.langCode] = _enGB.default;
for (const pluginName of Object.getOwnPropertyNames(plugins)) {
if (!pluginName.startsWith('_')) {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
_HyperFormula.HyperFormula.registerFunctionPlugin(plugins[pluginName]);
}
}
var _default = exports.default = HyperFormulaNS;
/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
exports.ArraySizePredictor = exports.ArraySize = void 0;
__webpack_require__(2);
var _AbsoluteCellRange = __webpack_require__(72);
var _InterpreterState = __webpack_require__(165);
var _interpreter = __webpack_require__(166);
var _parser = __webpack_require__(77);
/**
* @license
* Copyright (c) 2024 Handsoncode. All rights reserved.
*/
class ArraySize {
constructor(width, height, isRef = false) {
this.width = width;
this.height = height;
this.isRef = isRef;
}
static error() {
return new ArraySize(1, 1, true);
}
static scalar() {
return new ArraySize(1, 1, false);
}
isScalar() {
return this.width === 1 && this.height === 1 || this.isRef;
}
}
exports.ArraySize = ArraySize;
function arraySizeForBinaryOp(leftArraySize, rightArraySize) {
return new ArraySize(Math.max(leftArraySize.width, rightArraySize.width), Math.max(leftArraySize.height, rightArraySize.height));
}
function arraySizeForUnaryOp(arraySize) {
return new ArraySize(arraySize.width, arraySize.height);
}
class ArraySizePredictor {
constructor(config, functionRegistry) {
this.config = config;
this.functionRegistry = functionRegistry;
}
checkArraySize(ast, formulaAddress) {
return this.checkArraySizeForAst(ast, {
formulaAddress,
arraysFlag: this.config.useArrayArithmetic
});
}
checkArraySizeForAst(ast, state) {
switch (ast.type) {
case _parser.AstNodeType.FUNCTION_CALL:
{
return this.checkArraySizeForFunction(ast, state);
}
case _parser.AstNodeType.COLUMN_RANGE:
case _parser.AstNodeType.ROW_RANGE:
case _parser.AstNodeType.CELL_RANGE:
{
const range = _AbsoluteCellRange.AbsoluteCellRange.fromAstOrUndef(ast, state.formulaAddress);
if (range === undefined) {
return ArraySize.error();
} else {
return new ArraySize(range.width(), range.height(), true);
}
}
case _parser.AstNodeType.ARRAY:
{
const heights = [];
const widths = [];
for (const row of ast.args) {
const sizes = row.map(ast => this.checkArraySizeForAst(ast, state));
const h = Math.min(...sizes.map(size => size.height));
const w = sizes.reduce((total, size) => total + size.width, 0);
heights.push(h);
widths.push(w);
}
const height = heights.reduce((total, h) => total + h, 0);
const width = Math.min(...widths);
return new ArraySize(width, height);
}
case _parser.AstNodeType.STRING:
case _parser.AstNodeType.NUMBER:
return ArraySize.scalar();
case _parser.AstNodeType.CELL_REFERENCE:
return new ArraySize(1, 1, true);
case _parser.AstNodeType.DIV_OP:
case _parser.AstNodeType.CONCATENATE_OP:
case _parser.AstNodeType.EQUALS_OP:
case _parser.AstNodeType.GREATER_THAN_OP:
case _parser.AstNodeType.GREATER_THAN_OR_EQUAL_OP:
case _parser.AstNodeType.LESS_THAN_OP:
case _parser.AstNodeType.LESS_THAN_OR_EQUAL_OP:
case _parser.AstNodeType.MINUS_OP:
case _parser.AstNodeType.NOT_EQUAL_OP:
case _parser.AstNodeType.PLUS_OP:
case _parser.AstNodeType.POWER_OP:
case _parser.AstNodeType.TIMES_OP:
{
const left = this.checkArraySizeForAst(ast.left, state);
const right = this.checkArraySizeForAst(ast.right, state);
if (!state.arraysFlag && (left.height > 1 || left.width > 1 || right.height > 1 || right.width > 1)) {
return ArraySize.error();
}
return arraySizeForBinaryOp(left, right);
}
case _parser.AstNodeType.MINUS_UNARY_OP:
case _parser.AstNodeType.PLUS_UNARY_OP:
case _parser.AstNodeType.PERCENT_OP:
{
const val = this.checkArraySizeForAst(ast.value, state);
if (!state.arraysFlag && (val.height > 1 || val.width > 1)) {
return ArraySize.error();
}
return arraySizeForUnaryOp(val);
}
case _parser.AstNodeType.PARENTHESIS:
{
return this.checkArraySizeForAst(ast.expression, state);
}
case _parser.AstNodeType.EMPTY:
return ArraySize.error();
default:
return ArraySize.error();
}
}
checkArraySizeForFunction(ast, state) {
const pluginArraySizeFunction = this.functionRegistry.getArraySizeFunction(ast.procedureName);
if (pluginArraySizeFunction !== undefined) {
return pluginArraySizeFunction(ast, state);
}
const metadata = this.functionRegistry.getMetadata(ast.procedureName);
if (metadata === undefined || metadata.expandRanges || !state.arraysFlag || metadata.vectorizationForbidden || metadata.parameters === undefined) {
return new ArraySize(1, 1);
}
const subChecks = ast.args.map(arg => {
var _a;
return this.checkArraySizeForAst(arg, new _InterpreterState.InterpreterState(state.formulaAddress, state.arraysFlag || ((_a = metadata === null || metadata === void 0 ? void 0 : metadata.arrayFunction) !== null && _a !== void 0 ? _a : false)));
});
const argumentDefinitions = [...metadata.parameters];
if (metadata.repeatLastArgs !== undefined && argumentDefinitions.length < subChecks.length && (subChecks.length - argumentDefinitions.length) % metadata.repeatLastArgs !== 0) {
return ArraySize.error();
}
while (argumentDefinitions.length < subChecks.length) {
if (metadata.repeatLastArgs === undefined) {
return ArraySize.error();
}
argumentDefinitions.push(...argumentDefinitions.slice(argumentDefinitions.length - metadata.repeatLastArgs));
}
let maxWidth = 1;
let maxHeight = 1;
for (let i = 0; i < subChecks.length; i++) {
if (argumentDefinitions[i].argumentType !== _interpreter.FunctionArgumentType.RANGE && argumentDefinitions[i].argumentType !== _interpreter.FunctionArgumentType.ANY) {
maxHeight = Math.max(maxHeight, subChecks[i].height);
maxWidth = Math.max(maxWidth, subChecks[i].width);
}
}
return new ArraySize(maxWidth, maxHeight);
}
}
exports.ArraySizePredictor = ArraySizePredictor;
/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var $ = __webpack_require__(3);
var toObject = __webpack_require__(40);
var lengthOfArrayLike = __webpack_require__(64);
var setArrayLength = __webpack_require__(69);
var doesNotExceedSafeInteger = __webpack_require__(71);
var fails = __webpack_require__(8);
var INCORRECT_TO_LENGTH = fails(function () {
return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;
});
// V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError
// https://bugs.chromium.org/p/v8/issues/detail?id=12681
var properErrorOnNonWritableLength = function () {
try {
// eslint-disable-next-line es/no-object-defineproperty -- safe
Object.defineProperty([], 'length', { writable: false }).push();
} catch (error) {
return error instanceof TypeError;
}
};
var FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();
// `Array.prototype.push` method
// https://tc39.es/ecma262/#sec-array.prototype.push
$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
// eslint-disable-next-line no-unused-vars -- required for `.length`
push: function push(item) {
var O = toObject(this);
var len = lengthOfArrayLike(O);
var argCount = arguments.length;
doesNotExceedSafeInteger(len + argCount);
for (var i = 0; i < argCount; i++) {
O[len] = arguments[i];
len++;
}
setArrayLength(O, len);
return len;
}
});
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
var getOwnPropertyDescriptor = __webpack_require__(6).f;
var createNonEnumerableProperty = __webpack_require__(44);
var defineBuiltIn = __webpack_require__(48);
var defineGlobalProperty = __webpack_require__(38);
var copyConstructorProperties = __webpack_require__(56);
var isForced = __webpack_require__(68);
/*
options.target - name of the target object
options.global - target is the global object
options.stat - export as static methods of target
options.proto - export as prototype methods of target
options.real - real prototype method for the `pure` version
options.forced - export even if the native feature is available
options.bind - bind methods to the target, required for the `pure` version
options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
options.unsafe - use the simple assignment of property instead of delete + defineProperty
options.sham - add a flag to not completely full polyfills
options.enumerable - export as enumerable property
options.dontCallGetSet - prevent calling a getter on target
options.name - the .name of the function if it does not match the key
*/
module.exports = function (options, source) {
var TARGET = options.target;
var GLOBAL = options.global;
var STATIC = options.stat;
var FORCED, target, key, targetProperty, sourceProperty, descriptor;
if (GLOBAL) {
target = global;
} else if (STATIC) {
target = global[TARGET] || defineGlobalProperty(TARGET, {});
} else {
target = global[TARGET] && global[TARGET].prototype;
}
if (target) for (key in source) {
sourceProperty = source[key];
if (options.dontCallGetSet) {
descriptor = getOwnPropertyDescriptor(target, key);
targetProperty = descriptor && descriptor.value;
} else targetProperty = target[key];
FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
// contained in target
if (!FORCED && targetProperty !== undefined) {
if (typeof sourceProperty == typeof targetProperty) continue;
copyConstructorProperties(sourceProperty, targetProperty);
}
// add a flag to not completely full polyfills
if (options.sham || (targetProperty && targetProperty.sham)) {
createNonEnumerableProperty(sourceProperty, 'sham', true);
}
defineBuiltIn(target, key, sourceProperty, options);
}
};
/***/ }),
/* 4 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(global) {
var check = function (it) {
return it && it.Math === Math && it;
};
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
module.exports =
// eslint-disable-next-line es/no-global-this -- safe
check(typeof globalThis == 'object' && globalThis) ||
check(typeof window == 'object' && window) ||
// eslint-disable-next-line no-restricted-globals -- safe
check(typeof self == 'object' && self) ||
check(typeof global == 'object' && global) ||
check(typeof this == 'object' && this) ||
// eslint-disable-next-line no-new-func -- fallback
(function () { return this; })() || Function('return this')();
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(5)))
/***/ }),
/* 5 */
/***/ (function(module, exports) {
var g;
// This works in non-strict mode
g = (function() {
return this;
})();
try {
// This works if eval is allowed (see CSP)
g = g || new Function("return this")();
} catch (e) {
// This works if the window reference is available
if (typeof window === "object") g = window;
}
// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}
module.exports = g;
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var DESCRIPTORS = __webpack_require__(7);
var call = __webpack_require__(9);
var propertyIsEnumerableModule = __webpack_require__(11);
var createPropertyDescriptor = __webpack_require__(12);
var toIndexedObject = __webpack_require__(13);
var toPropertyKey = __webpack_require__(19);
var hasOwn = __webpack_require__(39);
var IE8_DOM_DEFINE = __webpack_require__(42);
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// `Object.getOwnPropertyDescriptor` method
// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
O = toIndexedObject(O);
P = toPropertyKey(P);
if (IE8_DOM_DEFINE) try {
return $getOwnPropertyDescriptor(O, P);
} catch (error) { /* empty */ }
if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
};
/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var fails = __webpack_require__(8);
// Detect IE8's incomplete defineProperty implementation
module.exports = !fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;
});
/***/ }),
/* 8 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = function (exec) {
try {
return !!exec();
} catch (error) {
return true;
}
};
/***/ }),
/* 9 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var NATIVE_BIND = __webpack_require__(10);
var call = Function.prototype.call;
module.exports = NATIVE_BIND ? call.bind(call) : function () {
return call.apply(call, arguments);
};
/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var fails = __webpack_require__(8);
module.exports = !fails(function () {
// eslint-disable-next-line es/no-function-prototype-bind -- safe
var test = (function () { /* empty */ }).bind();
// eslint-disable-next-line no-prototype-builtins -- safe
return typeof test != 'function' || test.hasOwnProperty('prototype');
});
/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var $propertyIsEnumerable = {}.propertyIsEnumerable;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// Nashorn ~ JDK8 bug
var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
// `Object.prototype.propertyIsEnumerable` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
var descriptor = getOwnPropertyDescriptor(this, V);
return !!descriptor && descriptor.enumerable;
} : $propertyIsEnumerable;
/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = function (bitmap, value) {
return {
enumerable: !(bitmap & 1),
configurable: !(bitmap & 2),
writable: !(bitmap & 4),
value: value
};
};
/***/ }),
/* 13 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// toObject with fallback for non-array-like ES3 strings
var IndexedObject = __webpack_require__(14);
var requireObjectCoercible = __webpack_require__(17);
module.exports = function (it) {
return IndexedObject(requireObjectCoercible(it));
};
/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
var fails = __webpack_require__(8);
var classof = __webpack_require__(16);
var $Object = Object;
var split = uncurryThis(''.split);
// fallback for non-array-like ES3 and non-enumerable old V8 strings
module.exports = fails(function () {
// throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
// eslint-disable-next-line no-prototype-builtins -- safe
return !$Object('z').propertyIsEnumerable(0);
}) ? function (it) {
return classof(it) === 'String' ? split(it, '') : $Object(it);
} : $Object;
/***/ }),
/* 15 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var NATIVE_BIND = __webpack_require__(10);
var FunctionPrototype = Function.prototype;
var call = FunctionPrototype.call;
var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);
module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
return function () {
return call.apply(fn, arguments);
};
};
/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
var toString = uncurryThis({}.toString);
var stringSlice = uncurryThis(''.slice);
module.exports = function (it) {
return stringSlice(toString(it), 8, -1);
};
/***/ }),
/* 17 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var isNullOrUndefined = __webpack_require__(18);
var $TypeError = TypeError;
// `RequireObjectCoercible` abstract operation
// https://tc39.es/ecma262/#sec-requireobjectcoercible
module.exports = function (it) {
if (isNullOrUndefined(it)) throw new $TypeError("Can't call method on " + it);
return it;
};
/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// we can't use just `it == null` since of `document.all` special case
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
module.exports = function (it) {
return it === null || it === undefined;
};
/***/ }),
/* 19 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var toPrimitive = __webpack_require__(20);
var isSymbol = __webpack_require__(23);
// `ToPropertyKey` abstract operation
// https://tc39.es/ecma262/#sec-topropertykey
module.exports = function (argument) {
var key = toPrimitive(argument, 'string');
return isSymbol(key) ? key : key + '';
};
/***/ }),
/* 20 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var call = __webpack_require__(9);
var isObject = __webpack_require__(21);
var isSymbol = __webpack_require__(23);
var getMethod = __webpack_require__(30);
var ordinaryToPrimitive = __webpack_require__(33);
var wellKnownSymbol = __webpack_require__(34);
var $TypeError = TypeError;
var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
// `ToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-toprimitive
module.exports = function (input, pref) {
if (!isObject(input) || isSymbol(input)) return input;
var exoticToPrim = getMethod(input, TO_PRIMITIVE);
var result;
if (exoticToPrim) {
if (pref === undefined) pref = 'default';
result = call(exoticToPrim, input, pref);
if (!isObject(result) || isSymbol(result)) return result;
throw new $TypeError("Can't convert object to primitive value");
}
if (pref === undefined) pref = 'number';
return ordinaryToPrimitive(input, pref);
};
/***/ }),
/* 21 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var isCallable = __webpack_require__(22);
module.exports = function (it) {
return typeof it == 'object' ? it !== null : isCallable(it);
};
/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
var documentAll = typeof document == 'object' && document.all;
// `IsCallable` abstract operation
// https://tc39.es/ecma262/#sec-iscallable
// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
module.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {
return typeof argument == 'function' || argument === documentAll;
} : function (argument) {
return typeof argument == 'function';
};
/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var getBuiltIn = __webpack_require__(24);
var isCallable = __webpack_require__(22);
var isPrototypeOf = __webpack_require__(25);
var USE_SYMBOL_AS_UID = __webpack_require__(26);
var $Object = Object;
module.exports = USE_SYMBOL_AS_UID ? function (it) {
return typeof it == 'symbol';
} : function (it) {
var $Symbol = getBuiltIn('Symbol');
return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
};
/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
var isCallable = __webpack_require__(22);
var aFunction = function (argument) {
return isCallable(argument) ? argument : undefined;
};
module.exports = function (namespace, method) {
return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];
};
/***/ }),
/* 25 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
module.exports = uncurryThis({}.isPrototypeOf);
/***/ }),
/* 26 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
var NATIVE_SYMBOL = __webpack_require__(27);
module.exports = NATIVE_SYMBOL
&& !Symbol.sham
&& typeof Symbol.iterator == 'symbol';
/***/ }),
/* 27 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
var V8_VERSION = __webpack_require__(28);
var fails = __webpack_require__(8);
var global = __webpack_require__(4);
var $String = global.String;
// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
var symbol = Symbol('symbol detection');
// Chrome 38 Symbol has incorrect toString conversion
// `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
// nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
// of course, fail.
return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
// Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
!Symbol.sham && V8_VERSION && V8_VERSION < 41;
});
/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
var userAgent = __webpack_require__(29);
var process = global.process;
var Deno = global.Deno;
var versions = process && process.versions || Deno && Deno.version;
var v8 = versions && versions.v8;
var match, version;
if (v8) {
match = v8.split('.');
// in old Chrome, versions of V8 isn't V8 = Chrome / 10
// but their correct versions are not interesting for us
version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
}
// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
// so check `userAgent` even if `.v8` exists, but 0
if (!version && userAgent) {
match = userAgent.match(/Edge\/(\d+)/);
if (!match || match[1] >= 74) {
match = userAgent.match(/Chrome\/(\d+)/);
if (match) version = +match[1];
}
}
module.exports = version;
/***/ }),
/* 29 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';
/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var aCallable = __webpack_require__(31);
var isNullOrUndefined = __webpack_require__(18);
// `GetMethod` abstract operation
// https://tc39.es/ecma262/#sec-getmethod
module.exports = function (V, P) {
var func = V[P];
return isNullOrUndefined(func) ? undefined : aCallable(func);
};
/***/ }),
/* 31 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var isCallable = __webpack_require__(22);
var tryToString = __webpack_require__(32);
var $TypeError = TypeError;
// `Assert: IsCallable(argument) is true`
module.exports = function (argument) {
if (isCallable(argument)) return argument;
throw new $TypeError(tryToString(argument) + ' is not a function');
};
/***/ }),
/* 32 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var $String = String;
module.exports = function (argument) {
try {
return $String(argument);
} catch (error) {
return 'Object';
}
};
/***/ }),
/* 33 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var call = __webpack_require__(9);
var isCallable = __webpack_require__(22);
var isObject = __webpack_require__(21);
var $TypeError = TypeError;
// `OrdinaryToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-ordinarytoprimitive
module.exports = function (input, pref) {
var fn, val;
if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
throw new $TypeError("Can't convert object to primitive value");
};
/***/ }),
/* 34 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
var shared = __webpack_require__(35);
var hasOwn = __webpack_require__(39);
var uid = __webpack_require__(41);
var NATIVE_SYMBOL = __webpack_require__(27);
var USE_SYMBOL_AS_UID = __webpack_require__(26);
var Symbol = global.Symbol;
var WellKnownSymbolsStore = shared('wks');
var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;
module.exports = function (name) {
if (!hasOwn(WellKnownSymbolsStore, name)) {
WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)
? Symbol[name]
: createWellKnownSymbol('Symbol.' + name);
} return WellKnownSymbolsStore[name];
};
/***/ }),
/* 35 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var store = __webpack_require__(36);
module.exports = function (key, value) {
return store[key] || (store[key] = value || {});
};
/***/ }),
/* 36 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var IS_PURE = __webpack_require__(37);
var globalThis = __webpack_require__(4);
var defineGlobalProperty = __webpack_require__(38);
var SHARED = '__core-js_shared__';
var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
(store.versions || (store.versions = [])).push({
version: '3.37.1',
mode: IS_PURE ? 'pure' : 'global',
copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
license: 'https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE',
source: 'https://github.com/zloirock/core-js'
});
/***/ }),
/* 37 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = false;
/***/ }),
/* 38 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
module.exports = function (key, value) {
try {
defineProperty(global, key, { value: value, configurable: true, writable: true });
} catch (error) {
global[key] = value;
} return value;
};
/***/ }),
/* 39 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
var toObject = __webpack_require__(40);
var hasOwnProperty = uncurryThis({}.hasOwnProperty);
// `HasOwnProperty` abstract operation
// https://tc39.es/ecma262/#sec-hasownproperty
// eslint-disable-next-line es/no-object-hasown -- safe
module.exports = Object.hasOwn || function hasOwn(it, key) {
return hasOwnProperty(toObject(it), key);
};
/***/ }),
/* 40 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var requireObjectCoercible = __webpack_require__(17);
var $Object = Object;
// `ToObject` abstract operation
// https://tc39.es/ecma262/#sec-toobject
module.exports = function (argument) {
return $Object(requireObjectCoercible(argument));
};
/***/ }),
/* 41 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
var id = 0;
var postfix = Math.random();
var toString = uncurryThis(1.0.toString);
module.exports = function (key) {
return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
};
/***/ }),
/* 42 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var DESCRIPTORS = __webpack_require__(7);
var fails = __webpack_require__(8);
var createElement = __webpack_require__(43);
// Thanks to IE8 for its funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty(createElement('div'), 'a', {
get: function () { return 7; }
}).a !== 7;
});
/***/ }),
/* 43 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var global = __webpack_require__(4);
var isObject = __webpack_require__(21);
var document = global.document;
// typeof document.createElement is 'object' in old IE
var EXISTS = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
return EXISTS ? document.createElement(it) : {};
};
/***/ }),
/* 44 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var DESCRIPTORS = __webpack_require__(7);
var definePropertyModule = __webpack_require__(45);
var createPropertyDescriptor = __webpack_require__(12);
module.exports = DESCRIPTORS ? function (object, key, value) {
return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
} : function (object, key, value) {
object[key] = value;
return object;
};
/***/ }),
/* 45 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var DESCRIPTORS = __webpack_require__(7);
var IE8_DOM_DEFINE = __webpack_require__(42);
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(46);
var anObject = __webpack_require__(47);
var toPropertyKey = __webpack_require__(19);
var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var $defineProperty = Object.defineProperty;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
var ENUMERABLE = 'enumerable';
var CONFIGURABLE = 'configurable';
var WRITABLE = 'writable';
// `Object.defineProperty` method
// https://tc39.es/ecma262/#sec-object.defineproperty
exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
anObject(O);
P = toPropertyKey(P);
anObject(Attributes);
if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
var current = $getOwnPropertyDescriptor(O, P);
if (current && current[WRITABLE]) {
O[P] = Attributes.value;
Attributes = {
configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
writable: false
};
}
} return $defineProperty(O, P, Attributes);
} : $defineProperty : function defineProperty(O, P, Attributes) {
anObject(O);
P = toPropertyKey(P);
anObject(Attributes);
if (IE8_DOM_DEFINE) try {
return $defineProperty(O, P, Attributes);
} catch (error) { /* empty */ }
if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');
if ('value' in Attributes) O[P] = Attributes.value;
return O;
};
/***/ }),
/* 46 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var DESCRIPTORS = __webpack_require__(7);
var fails = __webpack_require__(8);
// V8 ~ Chrome 36-
// https://bugs.chromium.org/p/v8/issues/detail?id=3334
module.exports = DESCRIPTORS && fails(function () {
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
return Object.defineProperty(function () { /* empty */ }, 'prototype', {
value: 42,
writable: false
}).prototype !== 42;
});
/***/ }),
/* 47 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var isObject = __webpack_require__(21);
var $String = String;
var $TypeError = TypeError;
// `Assert: Type(argument) is Object`
module.exports = function (argument) {
if (isObject(argument)) return argument;
throw new $TypeError($String(argument) + ' is not an object');
};
/***/ }),
/* 48 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var isCallable = __webpack_require__(22);
var definePropertyModule = __webpack_require__(45);
var makeBuiltIn = __webpack_require__(49);
var defineGlobalProperty = __webpack_require__(38);
module.exports = function (O, key, value, options) {
if (!options) options = {};
var simple = options.enumerable;
var name = options.name !== undefined ? options.name : key;
if (isCallable(value)) makeBuiltIn(value, name, options);
if (options.global) {
if (simple) O[key] = value;
else defineGlobalProperty(key, value);
} else {
try {
if (!options.unsafe) delete O[key];
else if (O[key]) simple = true;
} catch (error) { /* empty */ }
if (simple) O[key] = value;
else definePropertyModule.f(O, key, {
value: value,
enumerable: false,
configurable: !options.nonConfigurable,
writable: !options.nonWritable
});
} return O;
};
/***/ }),
/* 49 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var uncurryThis = __webpack_require__(15);
var fails = __webpack_require__(8);
var isCallable = __webpack_require__(22);
var hasOwn = __webpack_require__(39);
var DESCRIPTORS = __webpack_require__(7);
var CONFIGURABLE_FUNCTION_NAME = __webpack_require__(50).CONFIGURABLE;
var inspectSource = __webpack_require__(51);
var InternalStateModule = __webpack_require__(52);
var enforceInternalState = InternalStateModule.enforce;
var getInternalState = InternalStateModule.get;
var $String = String;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
var stringSlice = uncurryThis(''.slice);
var replace = uncurryThis(''.replace);
var join = uncurryThis([].join);
var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {
return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
});
var TEMPLATE = String(String).split('String');
var makeBuiltIn = module.exports = function (value, name, options) {
if (stringSlice($String(name), 0, 7) === 'Symbol(') {
name = '[' + replace($String(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']';
}
if (options && options.getter) name = 'get ' + name;
if (options && options.setter) name = 'set ' + name;
if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });
else value.name = name;
}
if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {
defineProperty(value, 'length', { value: options.arity });
}
try {
if (options && hasOwn(options, 'constructor') && options.constructor) {
if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });
// in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
} else if (value.prototype) value.prototype = undefined;
} catch (error) { /* empty */ }
var state = enforceInternalState(value);
if (!hasOwn(state, 'source')) {
state.source = join(TEMPLATE, typeof name == 'string' ? name : '');
} return value;
};
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDa