@strapi/design-system 0.0.1-alpha.69 → 0.0.1-alpha.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/Accordion.development.js +1 -1
  2. package/Accordion.production.js +1 -1
  3. package/Alert.development.js +1 -1
  4. package/Alert.production.js +1 -1
  5. package/Avatar.development.js +1 -1
  6. package/Avatar.production.js +1 -1
  7. package/Badge.development.js +26 -2
  8. package/Badge.production.js +1 -1
  9. package/BaseButton.production.js +1 -1
  10. package/Box.development.js +1 -1
  11. package/Box.production.js +1 -1
  12. package/Breadcrumbs.development.js +1 -1
  13. package/Breadcrumbs.production.js +1 -1
  14. package/Button.development.js +1 -1
  15. package/Button.production.js +1 -1
  16. package/Card.development.js +2 -2
  17. package/Card.production.js +1 -1
  18. package/{Carousel.development.js → CarouselInput.development.js} +186 -32
  19. package/CarouselInput.js +9 -0
  20. package/CarouselInput.production.js +1 -0
  21. package/Checkbox.development.js +1 -1
  22. package/Checkbox.production.js +1 -1
  23. package/Combobox.development.js +1 -1
  24. package/Combobox.production.js +1 -1
  25. package/DatePicker.development.js +1 -1
  26. package/DatePicker.production.js +1 -1
  27. package/Dialog.development.js +1 -1
  28. package/Dialog.production.js +1 -1
  29. package/Divider.development.js +1 -1
  30. package/Divider.production.js +1 -1
  31. package/EmptyStateLayout.development.js +1 -1
  32. package/EmptyStateLayout.production.js +1 -1
  33. package/Field.development.js +1 -1
  34. package/Field.production.js +1 -1
  35. package/Flex.development.js +1 -1
  36. package/Flex.production.js +1 -1
  37. package/Grid.development.js +1 -1
  38. package/Grid.production.js +1 -1
  39. package/Icon.development.js +1 -1
  40. package/Icon.production.js +1 -1
  41. package/IconButton.development.js +1 -1
  42. package/IconButton.production.js +1 -1
  43. package/KeyboardNavigable.development.js +1 -1
  44. package/KeyboardNavigable.production.js +1 -1
  45. package/Layout.development.js +2 -2
  46. package/Layout.production.js +1 -1
  47. package/Link.development.js +1 -1
  48. package/Link.production.js +1 -1
  49. package/LinkButton.development.js +1 -1
  50. package/LinkButton.production.js +1 -1
  51. package/Main.development.js +2 -2
  52. package/Main.production.js +1 -1
  53. package/MainNav.development.js +2 -2
  54. package/MainNav.production.js +1 -1
  55. package/ModalLayout.development.js +2 -2
  56. package/ModalLayout.production.js +1 -1
  57. package/NumberInput.development.js +15 -15
  58. package/NumberInput.production.js +1 -1
  59. package/Pagination.development.js +1 -1
  60. package/Pagination.production.js +1 -1
  61. package/Popover.development.js +1 -1
  62. package/Popover.production.js +1 -1
  63. package/Portal.production.js +1 -1
  64. package/Radio.development.js +1 -1
  65. package/Radio.production.js +1 -1
  66. package/RawTable.development.js +1 -1
  67. package/RawTable.production.js +1 -1
  68. package/Searchbar.development.js +1 -1
  69. package/Searchbar.production.js +1 -1
  70. package/Select.development.js +1 -1
  71. package/Select.production.js +1 -1
  72. package/SimpleMenu.development.js +1 -1
  73. package/SimpleMenu.production.js +1 -1
  74. package/Stack.development.js +1 -1
  75. package/Stack.production.js +1 -1
  76. package/Status.development.js +1 -1
  77. package/Status.production.js +1 -1
  78. package/SubNav.development.js +2 -2
  79. package/SubNav.production.js +1 -1
  80. package/Switch.development.js +1 -1
  81. package/Switch.production.js +1 -1
  82. package/Table.development.js +1 -1
  83. package/Table.production.js +1 -1
  84. package/Tabs.development.js +1 -1
  85. package/Tabs.production.js +1 -1
  86. package/Tag.development.js +1 -1
  87. package/Tag.production.js +1 -1
  88. package/TextButton.development.js +1 -1
  89. package/TextButton.production.js +1 -1
  90. package/TextInput.development.js +1 -1
  91. package/TextInput.production.js +1 -1
  92. package/Textarea.development.js +2 -2
  93. package/Textarea.production.js +1 -1
  94. package/TimePicker.development.js +1 -1
  95. package/TimePicker.production.js +1 -1
  96. package/ToggleCheckbox.development.js +1 -1
  97. package/ToggleCheckbox.production.js +1 -1
  98. package/ToggleInput.development.js +2 -2
  99. package/ToggleInput.production.js +1 -1
  100. package/Tooltip.development.js +1 -1
  101. package/Tooltip.production.js +1 -1
  102. package/index.development.js +47 -47
  103. package/index.production.js +1 -1
  104. package/package.json +9 -7
  105. package/themes.production.js +1 -1
  106. package/Carousel.js +0 -9
  107. package/Carousel.production.js +0 -1
@@ -118,6 +118,18 @@ eval("function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\
118
118
 
119
119
  /***/ }),
120
120
 
121
+ /***/ "./node_modules/@babel/runtime/helpers/esm/extends.js":
122
+ /*!************************************************************!*\
123
+ !*** ./node_modules/@babel/runtime/helpers/esm/extends.js ***!
124
+ \************************************************************/
125
+ /*! exports provided: default */
126
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
127
+
128
+ "use strict";
129
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _extends; });\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzLmpzP2MzMWQiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFlO0FBQ2Y7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EiLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kcy5qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF9leHRlbmRzKCkge1xuICBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkge1xuICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldO1xuXG4gICAgICBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7XG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7XG4gICAgICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0YXJnZXQ7XG4gIH07XG5cbiAgcmV0dXJuIF9leHRlbmRzLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG59Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@babel/runtime/helpers/esm/extends.js\n");
130
+
131
+ /***/ }),
132
+
121
133
  /***/ "./node_modules/@babel/runtime/helpers/extends.js":
122
134
  /*!********************************************************!*\
123
135
  !*** ./node_modules/@babel/runtime/helpers/extends.js ***!
@@ -214,19 +226,7 @@ eval("var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ \"
214
226
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
215
227
 
216
228
  "use strict";
217
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberFormatter\", function() { return NumberFormatter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberParser\", function() { return NumberParser; });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"./node_modules/@internationalized/number/node_modules/@babel/runtime/helpers/esm/extends.js\");\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache = new Map();\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay = false;\n\ntry {\n // @ts-ignore\n $fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay = new Intl.NumberFormat('de-DE', {\n signDisplay: 'exceptZero'\n }).resolvedOptions().signDisplay === 'exceptZero'; // eslint-disable-next-line no-empty\n} catch (e) {}\n\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit = false;\n\ntry {\n // @ts-ignore\n $fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit = new Intl.NumberFormat('de-DE', {\n style: 'unit',\n unit: 'degree'\n }).resolvedOptions().style === 'unit'; // eslint-disable-next-line no-empty\n} catch (e) {} // Polyfill for units since Safari doesn't support them yet. See https://bugs.webkit.org/show_bug.cgi?id=215438.\n// Currently only polyfilling the unit degree in narrow format for ColorSlider in our supported locales.\n// Values were determined by switching to each locale manually in Chrome.\n\n\nconst $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS = {\n degree: {\n narrow: {\n default: '°',\n 'ja-JP': ' 度',\n 'zh-TW': '度',\n 'sl-SI': ' °' // Arabic?? But Safari already doesn't use Arabic digits so might be ok...\n // https://bugs.webkit.org/show_bug.cgi?id=218139\n\n }\n }\n};\n\n/**\n * A wrapper around Intl.NumberFormat providing additional options, polyfills, and caching for performance.\n */\nclass NumberFormatter {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.numberFormatter = void 0;\n this.options = void 0;\n this.numberFormatter = $fe87f22deac4debf3eab2ca6a89602ab$var$getCachedNumberFormatter(locale, options);\n this.options = options;\n }\n\n format(value) {\n let res = '';\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay && this.options.signDisplay != null) {\n res = $fe87f22deac4debf3eab2ca6a89602ab$export$numberFormatSignDisplayPolyfill(this.numberFormatter, this.options.signDisplay, value);\n } else {\n res = this.numberFormatter.format(value);\n }\n\n if (this.options.style === 'unit' && !$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit) {\n var _UNITS$unit;\n\n let {\n unit,\n unitDisplay = 'short',\n locale\n } = this.resolvedOptions();\n let values = (_UNITS$unit = $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS[unit]) == null ? void 0 : _UNITS$unit[unitDisplay];\n res += values[locale] || values.default;\n }\n\n return res;\n }\n\n formatToParts(value) {\n // TODO: implement signDisplay for formatToParts\n // @ts-ignore\n return this.numberFormatter.formatToParts(value);\n }\n\n resolvedOptions() {\n let options = this.numberFormatter.resolvedOptions();\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay && this.options.signDisplay != null) {\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n signDisplay: this.options.signDisplay\n });\n }\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit && this.options.style === 'unit') {\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n style: 'unit',\n unit: this.options.unit,\n unitDisplay: this.options.unitDisplay\n });\n }\n\n return options;\n }\n\n}\n\nfunction $fe87f22deac4debf3eab2ca6a89602ab$var$getCachedNumberFormatter(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n let {\n numberingSystem\n } = options;\n\n if (numberingSystem && locale.indexOf('-u-nu-') === -1) {\n locale = locale + \"-u-nu-\" + numberingSystem;\n }\n\n if (options.style === 'unit' && !$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit) {\n var _UNITS$unit2;\n\n let {\n unit,\n unitDisplay = 'short'\n } = options;\n\n if (!unit) {\n throw new Error('unit option must be provided with style: \"unit\"');\n }\n\n if (!((_UNITS$unit2 = $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS[unit]) != null && _UNITS$unit2[unitDisplay])) {\n throw new Error(\"Unsupported unit \" + unit + \" with unitDisplay = \" + unitDisplay);\n }\n\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n style: 'decimal'\n });\n }\n\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : '');\n\n if ($fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.has(cacheKey)) {\n return $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.get(cacheKey);\n }\n\n let numberFormatter = new Intl.NumberFormat(locale, options);\n $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.set(cacheKey, numberFormatter);\n return numberFormatter;\n}\n/** @private - exported for tests */\n\n\nfunction $fe87f22deac4debf3eab2ca6a89602ab$export$numberFormatSignDisplayPolyfill(numberFormat, signDisplay, num) {\n if (signDisplay === 'auto') {\n return numberFormat.format(num);\n } else if (signDisplay === 'never') {\n return numberFormat.format(Math.abs(num));\n } else {\n let needsPositiveSign = false;\n\n if (signDisplay === 'always') {\n needsPositiveSign = num > 0 || Object.is(num, 0);\n } else if (signDisplay === 'exceptZero') {\n if (Object.is(num, -0) || Object.is(num, 0)) {\n num = Math.abs(num);\n } else {\n needsPositiveSign = num > 0;\n }\n }\n\n if (needsPositiveSign) {\n let negative = numberFormat.format(-num);\n let noSign = numberFormat.format(num); // ignore RTL/LTR marker character\n\n let minus = negative.replace(noSign, '').replace(/\\u200e|\\u061C/, '');\n\n if ([...minus].length !== 1) {\n console.warn('@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case');\n }\n\n let positive = negative.replace(noSign, '!!!').replace(minus, '+').replace('!!!', noSign);\n return positive;\n } else {\n return numberFormat.format(num);\n }\n }\n}\n\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$CURRENCY_SIGN_REGEX = new RegExp('^.*\\\\(.*\\\\).*$');\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$NUMBERING_SYSTEMS = ['latn', 'arab', 'hanidec'];\n/**\n * A NumberParser can be used perform locale aware parsing of numbers from Unicode strings,\n * as well as validation of partial user input. Automatically detects the numbering system\n * used in the input, and supports parsing decimals, percentages, currency values, and units\n * according to the locale.\n */\n\nclass NumberParser {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.locale = void 0;\n this.options = void 0;\n this.locale = locale;\n this.options = options;\n }\n /**\n * Parses the given string to a number. Returns NaN if a valid number could not be parsed.\n */\n\n\n parse(value) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).parse(value);\n }\n /**\n * Returns whether the given string could potentially be a valid number. This should be used to\n * validate user input as the user types. If a `minValue` or `maxValue` is provided, the validity\n * of the minus/plus sign characters can be checked.\n */\n\n\n isValidPartialNumber(value, minValue, maxValue) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).isValidPartialNumber(value, minValue, maxValue);\n }\n /**\n * Returns a numbering system for which the given string is valid in the current locale.\n * If no numbering system could be detected, the default numbering system for the current\n * locale is returned.\n */\n\n\n getNumberingSystem(value) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).options.numberingSystem;\n }\n\n}\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache = new Map();\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(locale, options, value) {\n // First try the default numbering system for the provided locale\n let defaultParser = $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale, options); // If that doesn't match, and the locale doesn't include a hard coded numbering system,\n // try each of the other supported numbering systems until we find one that matches.\n\n if (!locale.includes('-u-nu-') && !defaultParser.isValidPartialNumber(value)) {\n for (let numberingSystem of $e1a22841ad5113a054c8ebe55b24e1a$var$NUMBERING_SYSTEMS) {\n if (numberingSystem !== defaultParser.options.numberingSystem) {\n let parser = $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale + '-u-nu-' + numberingSystem, options);\n\n if (parser.isValidPartialNumber(value)) {\n return parser;\n }\n }\n }\n }\n\n return defaultParser;\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale, options) {\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : '');\n let parser = $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache.get(cacheKey);\n\n if (!parser) {\n parser = new $e1a22841ad5113a054c8ebe55b24e1a$var$NumberParserImpl(locale, options);\n $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache.set(cacheKey, parser);\n }\n\n return parser;\n} // The actual number parser implementation. Instances of this class are cached\n// based on the locale, options, and detected numbering system.\n\n\nclass $e1a22841ad5113a054c8ebe55b24e1a$var$NumberParserImpl {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.formatter = void 0;\n this.options = void 0;\n this.symbols = void 0;\n this.formatter = new Intl.NumberFormat(locale, options);\n this.options = this.formatter.resolvedOptions();\n this.symbols = $e1a22841ad5113a054c8ebe55b24e1a$var$getSymbols(this.formatter, this.options, options);\n }\n\n parse(value) {\n // to parse the number, we need to remove anything that isn't actually part of the number, for example we want '-10.40' not '-10.40 USD'\n let fullySanitizedValue = this.sanitize(value); // Remove group characters, and replace decimal points and numerals with ASCII values.\n\n fullySanitizedValue = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(fullySanitizedValue, this.symbols.group, '').replace(this.symbols.decimal, '.').replace(this.symbols.minusSign, '-').replace(this.symbols.numeral, this.symbols.index);\n let newValue = fullySanitizedValue ? +fullySanitizedValue : NaN;\n\n if (isNaN(newValue)) {\n return NaN;\n } // accounting will always be stripped to a positive number, so if it's accounting and has a () around everything, then we need to make it negative again\n\n\n if (this.options.currencySign === 'accounting' && $e1a22841ad5113a054c8ebe55b24e1a$var$CURRENCY_SIGN_REGEX.test(value)) {\n newValue = -1 * newValue;\n } // when reading the number, if it's a percent, then it should be interpreted as being divided by 100\n\n\n if (this.options.style === 'percent') {\n var _this$options$maximum;\n\n newValue /= 100; // after dividing to get the percent value, javascript may get .0210999999 instead of .0211, so fix the number of fraction digits\n\n newValue = +newValue.toFixed(((_this$options$maximum = this.options.maximumFractionDigits) != null ? _this$options$maximum : 0) + 2);\n }\n\n return newValue;\n }\n\n sanitize(value) {\n // Remove literals and whitespace, which are allowed anywhere in the string\n value = value.replace(this.symbols.literals, ''); // Replace the ASCII minus sign with the minus sign used in the current locale\n // so that both are allowed in case the user's keyboard doesn't have the locale's minus sign.\n\n value = value.replace('-', this.symbols.minusSign); // In arab numeral system, their decimal character is 1643, but most keyboards don't type that\n // instead they use the , (44) character or apparently the (1548) character.\n\n if (this.options.numberingSystem === 'arab') {\n value = value.replace(',', this.symbols.decimal);\n value = value.replace(String.fromCharCode(1548), this.symbols.decimal);\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, '.', this.symbols.group);\n } // fr-FR group character is char code 8239, but that's not a key on the french keyboard,\n // so allow 'period' as a group char and replace it with a space\n\n\n if (this.options.locale === 'fr-FR') {\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, '.', String.fromCharCode(8239));\n }\n\n return value;\n }\n\n isValidPartialNumber(value, minValue, maxValue) {\n if (minValue === void 0) {\n minValue = -Infinity;\n }\n\n if (maxValue === void 0) {\n maxValue = Infinity;\n }\n\n value = this.sanitize(value); // Remove minus or plus sign, which must be at the start of the string.\n\n if (value.startsWith(this.symbols.minusSign) && minValue < 0) {\n value = value.slice(this.symbols.minusSign.length);\n } else if (this.symbols.plusSign && value.startsWith(this.symbols.plusSign) && maxValue > 0) {\n value = value.slice(this.symbols.plusSign.length);\n } // Numbers cannot start with a group separator\n\n\n if (value.startsWith(this.symbols.group)) {\n return false;\n } // Remove numerals, groups, and decimals\n\n\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, this.symbols.group, '').replace(this.symbols.numeral, '').replace(this.symbols.decimal, ''); // The number is valid if there are no remaining characters\n\n return value.length === 0;\n }\n\n}\n\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts = new Set(['decimal', 'fraction', 'integer', 'minusSign', 'plusSign', 'group']);\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getSymbols(formatter, intlOptions, originalOptions) {\n var _allParts$find$value, _allParts$find, _posAllParts$find, _allParts$find2, _allParts$find3;\n\n // Note: some locale's don't add a group symbol until there is a ten thousands place\n let allParts = formatter.formatToParts(-10000.1);\n let posAllParts = formatter.formatToParts(10000.1);\n let singularParts = formatter.formatToParts(1);\n let minusSign = (_allParts$find$value = (_allParts$find = allParts.find(p => p.type === 'minusSign')) == null ? void 0 : _allParts$find.value) != null ? _allParts$find$value : '-';\n let plusSign = (_posAllParts$find = posAllParts.find(p => p.type === 'plusSign')) == null ? void 0 : _posAllParts$find.value; // Safari does not support the signDisplay option, but our number parser polyfills it.\n // If no plus sign was returned, but the original options contained signDisplay, default to the '+' character.\n // @ts-ignore\n\n if (!plusSign && ((originalOptions == null ? void 0 : originalOptions.signDisplay) === 'exceptZero' || (originalOptions == null ? void 0 : originalOptions.signDisplay) === 'always')) {\n plusSign = '+';\n }\n\n let decimal = (_allParts$find2 = allParts.find(p => p.type === 'decimal')) == null ? void 0 : _allParts$find2.value;\n let group = (_allParts$find3 = allParts.find(p => p.type === 'group')) == null ? void 0 : _allParts$find3.value; // this set is also for a regex, it's all literals that might be in the string we want to eventually parse that\n // don't contribute to the numerical value\n\n let pluralLiterals = allParts.filter(p => !$e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts.has(p.type)).map(p => $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(p.value));\n let singularLiterals = singularParts.filter(p => !$e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts.has(p.type)).map(p => $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(p.value));\n let sortedLiterals = [...new Set([...singularLiterals, ...pluralLiterals])].sort((a, b) => b.length - a.length);\n let literals = new RegExp(sortedLiterals.join('|') + \"|[\\\\p{White_Space}]\", 'gu'); // These are for replacing non-latn characters with the latn equivalent\n\n let numerals = [...new Intl.NumberFormat(intlOptions.locale, {\n useGrouping: false\n }).format(9876543210)].reverse();\n let indexes = new Map(numerals.map((d, i) => [d, i]));\n let numeral = new RegExp(\"[\" + numerals.join('') + \"]\", 'g');\n\n let index = d => String(indexes.get(d));\n\n return {\n minusSign,\n plusSign,\n decimal,\n group,\n literals,\n numeral,\n index\n };\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(str, find, replace) {\n // @ts-ignore\n if (str.replaceAll) {\n // @ts-ignore\n return str.replaceAll(find, replace);\n }\n\n return str.split(find).join(replace);\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(string) {\n return string.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n//# sourceMappingURL=module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL25vZGVfbW9kdWxlcy9AaW50ZXJuYXRpb25hbGl6ZWQvbnVtYmVyL2Rpc3QvbW9kdWxlLmpzPzBkY2QiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBZ0Y7O0FBRWhGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxpREFBaUQ7QUFDcEQsQ0FBQzs7QUFFRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxxQ0FBcUM7QUFDeEMsQ0FBQyxhQUFhO0FBQ2Q7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsZ0JBQWdCLGtGQUE4QixHQUFHO0FBQ2pEO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0EsZ0JBQWdCLGtGQUE4QixHQUFHO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxjQUFjLGtGQUE4QixHQUFHO0FBQy9DO0FBQ0EsS0FBSztBQUNMOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNENBQTRDOztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGtHQUFrRztBQUNsRzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxDQUFDO0FBQ0Q7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLG1EQUFtRDs7QUFFbkQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSzs7O0FBR0w7QUFDQTtBQUNBLEtBQUs7OztBQUdMO0FBQ0E7O0FBRUEsc0JBQXNCOztBQUV0QjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLHFEQUFxRDtBQUNyRDs7QUFFQSx1REFBdUQ7QUFDdkQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7OztBQUdBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUM7O0FBRWpDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLOzs7QUFHTDtBQUNBO0FBQ0EsS0FBSzs7O0FBR0wsK0pBQStKOztBQUUvSjtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtIQUErSDtBQUMvSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGtIQUFrSDtBQUNsSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw4REFBOEQsWUFBWSxVQUFVOztBQUVwRjtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSw0Q0FBNEM7QUFDNUM7QUFDQSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9AaW50ZXJuYXRpb25hbGl6ZWQvbnVtYmVyL2Rpc3QvbW9kdWxlLmpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjAgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmxldCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlID0gbmV3IE1hcCgpO1xubGV0ICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSA9IGZhbHNlO1xuXG50cnkge1xuICAvLyBAdHMtaWdub3JlXG4gICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSA9IG5ldyBJbnRsLk51bWJlckZvcm1hdCgnZGUtREUnLCB7XG4gICAgc2lnbkRpc3BsYXk6ICdleGNlcHRaZXJvJ1xuICB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zaWduRGlzcGxheSA9PT0gJ2V4Y2VwdFplcm8nOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbn0gY2F0Y2ggKGUpIHt9XG5cbmxldCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCA9IGZhbHNlO1xuXG50cnkge1xuICAvLyBAdHMtaWdub3JlXG4gICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNVbml0ID0gbmV3IEludGwuTnVtYmVyRm9ybWF0KCdkZS1ERScsIHtcbiAgICBzdHlsZTogJ3VuaXQnLFxuICAgIHVuaXQ6ICdkZWdyZWUnXG4gIH0pLnJlc29sdmVkT3B0aW9ucygpLnN0eWxlID09PSAndW5pdCc7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eVxufSBjYXRjaCAoZSkge30gLy8gUG9seWZpbGwgZm9yIHVuaXRzIHNpbmNlIFNhZmFyaSBkb2Vzbid0IHN1cHBvcnQgdGhlbSB5ZXQuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDM4LlxuLy8gQ3VycmVudGx5IG9ubHkgcG9seWZpbGxpbmcgdGhlIHVuaXQgZGVncmVlIGluIG5hcnJvdyBmb3JtYXQgZm9yIENvbG9yU2xpZGVyIGluIG91ciBzdXBwb3J0ZWQgbG9jYWxlcy5cbi8vIFZhbHVlcyB3ZXJlIGRldGVybWluZWQgYnkgc3dpdGNoaW5nIHRvIGVhY2ggbG9jYWxlIG1hbnVhbGx5IGluIENocm9tZS5cblxuXG5jb25zdCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJFVOSVRTID0ge1xuICBkZWdyZWU6IHtcbiAgICBuYXJyb3c6IHtcbiAgICAgIGRlZmF1bHQ6ICfCsCcsXG4gICAgICAnamEtSlAnOiAnIOW6picsXG4gICAgICAnemgtVFcnOiAn5bqmJyxcbiAgICAgICdzbC1TSSc6ICcgwrAnIC8vIEFyYWJpYz8/IEJ1dCBTYWZhcmkgYWxyZWFkeSBkb2Vzbid0IHVzZSBBcmFiaWMgZGlnaXRzIHNvIG1pZ2h0IGJlIG9rLi4uXG4gICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MTM5XG5cbiAgICB9XG4gIH1cbn07XG5cbi8qKlxuICogQSB3cmFwcGVyIGFyb3VuZCBJbnRsLk51bWJlckZvcm1hdCBwcm92aWRpbmcgYWRkaXRpb25hbCBvcHRpb25zLCBwb2x5ZmlsbHMsIGFuZCBjYWNoaW5nIGZvciBwZXJmb3JtYW5jZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE51bWJlckZvcm1hdHRlciB7XG4gIGNvbnN0cnVjdG9yKGxvY2FsZSwgb3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICAgIG9wdGlvbnMgPSB7fTtcbiAgICB9XG5cbiAgICB0aGlzLm51bWJlckZvcm1hdHRlciA9IHZvaWQgMDtcbiAgICB0aGlzLm9wdGlvbnMgPSB2b2lkIDA7XG4gICAgdGhpcy5udW1iZXJGb3JtYXR0ZXIgPSAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGdldENhY2hlZE51bWJlckZvcm1hdHRlcihsb2NhbGUsIG9wdGlvbnMpO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBmb3JtYXQodmFsdWUpIHtcbiAgICBsZXQgcmVzID0gJyc7XG5cbiAgICBpZiAoISRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSAmJiB0aGlzLm9wdGlvbnMuc2lnbkRpc3BsYXkgIT0gbnVsbCkge1xuICAgICAgcmVzID0gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJGV4cG9ydCRudW1iZXJGb3JtYXRTaWduRGlzcGxheVBvbHlmaWxsKHRoaXMubnVtYmVyRm9ybWF0dGVyLCB0aGlzLm9wdGlvbnMuc2lnbkRpc3BsYXksIHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzID0gdGhpcy5udW1iZXJGb3JtYXR0ZXIuZm9ybWF0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnN0eWxlID09PSAndW5pdCcgJiYgISRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNVbml0KSB7XG4gICAgICB2YXIgX1VOSVRTJHVuaXQ7XG5cbiAgICAgIGxldCB7XG4gICAgICAgIHVuaXQsXG4gICAgICAgIHVuaXREaXNwbGF5ID0gJ3Nob3J0JyxcbiAgICAgICAgbG9jYWxlXG4gICAgICB9ID0gdGhpcy5yZXNvbHZlZE9wdGlvbnMoKTtcbiAgICAgIGxldCB2YWx1ZXMgPSAoX1VOSVRTJHVuaXQgPSAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJFVOSVRTW3VuaXRdKSA9PSBudWxsID8gdm9pZCAwIDogX1VOSVRTJHVuaXRbdW5pdERpc3BsYXldO1xuICAgICAgcmVzICs9IHZhbHVlc1tsb2NhbGVdIHx8IHZhbHVlcy5kZWZhdWx0O1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBmb3JtYXRUb1BhcnRzKHZhbHVlKSB7XG4gICAgLy8gVE9ETzogaW1wbGVtZW50IHNpZ25EaXNwbGF5IGZvciBmb3JtYXRUb1BhcnRzXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiB0aGlzLm51bWJlckZvcm1hdHRlci5mb3JtYXRUb1BhcnRzKHZhbHVlKTtcbiAgfVxuXG4gIHJlc29sdmVkT3B0aW9ucygpIHtcbiAgICBsZXQgb3B0aW9ucyA9IHRoaXMubnVtYmVyRm9ybWF0dGVyLnJlc29sdmVkT3B0aW9ucygpO1xuXG4gICAgaWYgKCEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzU2lnbkRpc3BsYXkgJiYgdGhpcy5vcHRpb25zLnNpZ25EaXNwbGF5ICE9IG51bGwpIHtcbiAgICAgIG9wdGlvbnMgPSBfYmFiZWxSdW50aW1lSGVscGVyc0VzbUV4dGVuZHMoe30sIG9wdGlvbnMsIHtcbiAgICAgICAgc2lnbkRpc3BsYXk6IHRoaXMub3B0aW9ucy5zaWduRGlzcGxheVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKCEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCAmJiB0aGlzLm9wdGlvbnMuc3R5bGUgPT09ICd1bml0Jykge1xuICAgICAgb3B0aW9ucyA9IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyh7fSwgb3B0aW9ucywge1xuICAgICAgICBzdHlsZTogJ3VuaXQnLFxuICAgICAgICB1bml0OiB0aGlzLm9wdGlvbnMudW5pdCxcbiAgICAgICAgdW5pdERpc3BsYXk6IHRoaXMub3B0aW9ucy51bml0RGlzcGxheVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cblxufVxuXG5mdW5jdGlvbiAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGdldENhY2hlZE51bWJlckZvcm1hdHRlcihsb2NhbGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIGxldCB7XG4gICAgbnVtYmVyaW5nU3lzdGVtXG4gIH0gPSBvcHRpb25zO1xuXG4gIGlmIChudW1iZXJpbmdTeXN0ZW0gJiYgbG9jYWxlLmluZGV4T2YoJy11LW51LScpID09PSAtMSkge1xuICAgIGxvY2FsZSA9IGxvY2FsZSArIFwiLXUtbnUtXCIgKyBudW1iZXJpbmdTeXN0ZW07XG4gIH1cblxuICBpZiAob3B0aW9ucy5zdHlsZSA9PT0gJ3VuaXQnICYmICEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCkge1xuICAgIHZhciBfVU5JVFMkdW5pdDI7XG5cbiAgICBsZXQge1xuICAgICAgdW5pdCxcbiAgICAgIHVuaXREaXNwbGF5ID0gJ3Nob3J0J1xuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgaWYgKCF1bml0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3VuaXQgb3B0aW9uIG11c3QgYmUgcHJvdmlkZWQgd2l0aCBzdHlsZTogXCJ1bml0XCInKTtcbiAgICB9XG5cbiAgICBpZiAoISgoX1VOSVRTJHVuaXQyID0gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJHZhciRVTklUU1t1bml0XSkgIT0gbnVsbCAmJiBfVU5JVFMkdW5pdDJbdW5pdERpc3BsYXldKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgdW5pdCBcIiArIHVuaXQgKyBcIiB3aXRoIHVuaXREaXNwbGF5ID0gXCIgKyB1bml0RGlzcGxheSk7XG4gICAgfVxuXG4gICAgb3B0aW9ucyA9IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyh7fSwgb3B0aW9ucywge1xuICAgICAgc3R5bGU6ICdkZWNpbWFsJ1xuICAgIH0pO1xuICB9XG5cbiAgbGV0IGNhY2hlS2V5ID0gbG9jYWxlICsgKG9wdGlvbnMgPyBPYmplY3QuZW50cmllcyhvcHRpb25zKS5zb3J0KChhLCBiKSA9PiBhWzBdIDwgYlswXSA/IC0xIDogMSkuam9pbigpIDogJycpO1xuXG4gIGlmICgkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlLmhhcyhjYWNoZUtleSkpIHtcbiAgICByZXR1cm4gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJHZhciRmb3JtYXR0ZXJDYWNoZS5nZXQoY2FjaGVLZXkpO1xuICB9XG5cbiAgbGV0IG51bWJlckZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUsIG9wdGlvbnMpO1xuICAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlLnNldChjYWNoZUtleSwgbnVtYmVyRm9ybWF0dGVyKTtcbiAgcmV0dXJuIG51bWJlckZvcm1hdHRlcjtcbn1cbi8qKiBAcHJpdmF0ZSAtIGV4cG9ydGVkIGZvciB0ZXN0cyAqL1xuXG5cbmZ1bmN0aW9uICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiRleHBvcnQkbnVtYmVyRm9ybWF0U2lnbkRpc3BsYXlQb2x5ZmlsbChudW1iZXJGb3JtYXQsIHNpZ25EaXNwbGF5LCBudW0pIHtcbiAgaWYgKHNpZ25EaXNwbGF5ID09PSAnYXV0bycpIHtcbiAgICByZXR1cm4gbnVtYmVyRm9ybWF0LmZvcm1hdChudW0pO1xuICB9IGVsc2UgaWYgKHNpZ25EaXNwbGF5ID09PSAnbmV2ZXInKSB7XG4gICAgcmV0dXJuIG51bWJlckZvcm1hdC5mb3JtYXQoTWF0aC5hYnMobnVtKSk7XG4gIH0gZWxzZSB7XG4gICAgbGV0IG5lZWRzUG9zaXRpdmVTaWduID0gZmFsc2U7XG5cbiAgICBpZiAoc2lnbkRpc3BsYXkgPT09ICdhbHdheXMnKSB7XG4gICAgICBuZWVkc1Bvc2l0aXZlU2lnbiA9IG51bSA+IDAgfHwgT2JqZWN0LmlzKG51bSwgMCk7XG4gICAgfSBlbHNlIGlmIChzaWduRGlzcGxheSA9PT0gJ2V4Y2VwdFplcm8nKSB7XG4gICAgICBpZiAoT2JqZWN0LmlzKG51bSwgLTApIHx8IE9iamVjdC5pcyhudW0sIDApKSB7XG4gICAgICAgIG51bSA9IE1hdGguYWJzKG51bSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZWVkc1Bvc2l0aXZlU2lnbiA9IG51bSA+IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5lZWRzUG9zaXRpdmVTaWduKSB7XG4gICAgICBsZXQgbmVnYXRpdmUgPSBudW1iZXJGb3JtYXQuZm9ybWF0KC1udW0pO1xuICAgICAgbGV0IG5vU2lnbiA9IG51bWJlckZvcm1hdC5mb3JtYXQobnVtKTsgLy8gaWdub3JlIFJUTC9MVFIgbWFya2VyIGNoYXJhY3RlclxuXG4gICAgICBsZXQgbWludXMgPSBuZWdhdGl2ZS5yZXBsYWNlKG5vU2lnbiwgJycpLnJlcGxhY2UoL1xcdTIwMGV8XFx1MDYxQy8sICcnKTtcblxuICAgICAgaWYgKFsuLi5taW51c10ubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignQHJlYWN0LWFyaWEvaTE4biBwb2x5ZmlsbCBmb3IgTnVtYmVyRm9ybWF0IHNpZ25EaXNwbGF5OiBVbnN1cHBvcnRlZCBjYXNlJyk7XG4gICAgICB9XG5cbiAgICAgIGxldCBwb3NpdGl2ZSA9IG5lZ2F0aXZlLnJlcGxhY2Uobm9TaWduLCAnISEhJykucmVwbGFjZShtaW51cywgJysnKS5yZXBsYWNlKCchISEnLCBub1NpZ24pO1xuICAgICAgcmV0dXJuIHBvc2l0aXZlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVtYmVyRm9ybWF0LmZvcm1hdChudW0pO1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkQ1VSUkVOQ1lfU0lHTl9SRUdFWCA9IG5ldyBSZWdFeHAoJ14uKlxcXFwoLipcXFxcKS4qJCcpO1xuY29uc3QgJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJE5VTUJFUklOR19TWVNURU1TID0gWydsYXRuJywgJ2FyYWInLCAnaGFuaWRlYyddO1xuLyoqXG4gKiBBIE51bWJlclBhcnNlciBjYW4gYmUgdXNlZCBwZXJmb3JtIGxvY2FsZSBhd2FyZSBwYXJzaW5nIG9mIG51bWJlcnMgZnJvbSBVbmljb2RlIHN0cmluZ3MsXG4gKiBhcyB3ZWxsIGFzIHZhbGlkYXRpb24gb2YgcGFydGlhbCB1c2VyIGlucHV0LiBBdXRvbWF0aWNhbGx5IGRldGVjdHMgdGhlIG51bWJlcmluZyBzeXN0ZW1cbiAqIHVzZWQgaW4gdGhlIGlucHV0LCBhbmQgc3VwcG9ydHMgcGFyc2luZyBkZWNpbWFscywgcGVyY2VudGFnZXMsIGN1cnJlbmN5IHZhbHVlcywgYW5kIHVuaXRzXG4gKiBhY2NvcmRpbmcgdG8gdGhlIGxvY2FsZS5cbiAqL1xuXG5leHBvcnQgY2xhc3MgTnVtYmVyUGFyc2VyIHtcbiAgY29uc3RydWN0b3IobG9jYWxlLCBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgICAgb3B0aW9ucyA9IHt9O1xuICAgIH1cblxuICAgIHRoaXMubG9jYWxlID0gdm9pZCAwO1xuICAgIHRoaXMub3B0aW9ucyA9IHZvaWQgMDtcbiAgICB0aGlzLmxvY2FsZSA9IGxvY2FsZTtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG4gIC8qKlxuICAgKiBQYXJzZXMgdGhlIGdpdmVuIHN0cmluZyB0byBhIG51bWJlci4gUmV0dXJucyBOYU4gaWYgYSB2YWxpZCBudW1iZXIgY291bGQgbm90IGJlIHBhcnNlZC5cbiAgICovXG5cblxuICBwYXJzZSh2YWx1ZSkge1xuICAgIHJldHVybiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0TnVtYmVyUGFyc2VySW1wbCh0aGlzLmxvY2FsZSwgdGhpcy5vcHRpb25zLCB2YWx1ZSkucGFyc2UodmFsdWUpO1xuICB9XG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgdGhlIGdpdmVuIHN0cmluZyBjb3VsZCBwb3RlbnRpYWxseSBiZSBhIHZhbGlkIG51bWJlci4gVGhpcyBzaG91bGQgYmUgdXNlZCB0b1xuICAgKiB2YWxpZGF0ZSB1c2VyIGlucHV0IGFzIHRoZSB1c2VyIHR5cGVzLiBJZiBhIGBtaW5WYWx1ZWAgb3IgYG1heFZhbHVlYCBpcyBwcm92aWRlZCwgdGhlIHZhbGlkaXR5XG4gICAqIG9mIHRoZSBtaW51cy9wbHVzIHNpZ24gY2hhcmFjdGVycyBjYW4gYmUgY2hlY2tlZC5cbiAgICovXG5cblxuICBpc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSwgbWluVmFsdWUsIG1heFZhbHVlKSB7XG4gICAgcmV0dXJuICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKHRoaXMubG9jYWxlLCB0aGlzLm9wdGlvbnMsIHZhbHVlKS5pc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSwgbWluVmFsdWUsIG1heFZhbHVlKTtcbiAgfVxuICAvKipcbiAgICogUmV0dXJucyBhIG51bWJlcmluZyBzeXN0ZW0gZm9yIHdoaWNoIHRoZSBnaXZlbiBzdHJpbmcgaXMgdmFsaWQgaW4gdGhlIGN1cnJlbnQgbG9jYWxlLlxuICAgKiBJZiBubyBudW1iZXJpbmcgc3lzdGVtIGNvdWxkIGJlIGRldGVjdGVkLCB0aGUgZGVmYXVsdCBudW1iZXJpbmcgc3lzdGVtIGZvciB0aGUgY3VycmVudFxuICAgKiBsb2NhbGUgaXMgcmV0dXJuZWQuXG4gICAqL1xuXG5cbiAgZ2V0TnVtYmVyaW5nU3lzdGVtKHZhbHVlKSB7XG4gICAgcmV0dXJuICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKHRoaXMubG9jYWxlLCB0aGlzLm9wdGlvbnMsIHZhbHVlKS5vcHRpb25zLm51bWJlcmluZ1N5c3RlbTtcbiAgfVxuXG59XG5jb25zdCAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbnVtYmVyUGFyc2VyQ2FjaGUgPSBuZXcgTWFwKCk7XG5cbmZ1bmN0aW9uICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKGxvY2FsZSwgb3B0aW9ucywgdmFsdWUpIHtcbiAgLy8gRmlyc3QgdHJ5IHRoZSBkZWZhdWx0IG51bWJlcmluZyBzeXN0ZW0gZm9yIHRoZSBwcm92aWRlZCBsb2NhbGVcbiAgbGV0IGRlZmF1bHRQYXJzZXIgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0Q2FjaGVkTnVtYmVyUGFyc2VyKGxvY2FsZSwgb3B0aW9ucyk7IC8vIElmIHRoYXQgZG9lc24ndCBtYXRjaCwgYW5kIHRoZSBsb2NhbGUgZG9lc24ndCBpbmNsdWRlIGEgaGFyZCBjb2RlZCBudW1iZXJpbmcgc3lzdGVtLFxuICAvLyB0cnkgZWFjaCBvZiB0aGUgb3RoZXIgc3VwcG9ydGVkIG51bWJlcmluZyBzeXN0ZW1zIHVudGlsIHdlIGZpbmQgb25lIHRoYXQgbWF0Y2hlcy5cblxuICBpZiAoIWxvY2FsZS5pbmNsdWRlcygnLXUtbnUtJykgJiYgIWRlZmF1bHRQYXJzZXIuaXNWYWxpZFBhcnRpYWxOdW1iZXIodmFsdWUpKSB7XG4gICAgZm9yIChsZXQgbnVtYmVyaW5nU3lzdGVtIG9mICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciROVU1CRVJJTkdfU1lTVEVNUykge1xuICAgICAgaWYgKG51bWJlcmluZ1N5c3RlbSAhPT0gZGVmYXVsdFBhcnNlci5vcHRpb25zLm51bWJlcmluZ1N5c3RlbSkge1xuICAgICAgICBsZXQgcGFyc2VyID0gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJGdldENhY2hlZE51bWJlclBhcnNlcihsb2NhbGUgKyAnLXUtbnUtJyArIG51bWJlcmluZ1N5c3RlbSwgb3B0aW9ucyk7XG5cbiAgICAgICAgaWYgKHBhcnNlci5pc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSkpIHtcbiAgICAgICAgICByZXR1cm4gcGFyc2VyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlZmF1bHRQYXJzZXI7XG59XG5cbmZ1bmN0aW9uICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXRDYWNoZWROdW1iZXJQYXJzZXIobG9jYWxlLCBvcHRpb25zKSB7XG4gIGxldCBjYWNoZUtleSA9IGxvY2FsZSArIChvcHRpb25zID8gT2JqZWN0LmVudHJpZXMob3B0aW9ucykuc29ydCgoYSwgYikgPT4gYVswXSA8IGJbMF0gPyAtMSA6IDEpLmpvaW4oKSA6ICcnKTtcbiAgbGV0IHBhcnNlciA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRudW1iZXJQYXJzZXJDYWNoZS5nZXQoY2FjaGVLZXkpO1xuXG4gIGlmICghcGFyc2VyKSB7XG4gICAgcGFyc2VyID0gbmV3ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciROdW1iZXJQYXJzZXJJbXBsKGxvY2FsZSwgb3B0aW9ucyk7XG4gICAgJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJG51bWJlclBhcnNlckNhY2hlLnNldChjYWNoZUtleSwgcGFyc2VyKTtcbiAgfVxuXG4gIHJldHVybiBwYXJzZXI7XG59IC8vIFRoZSBhY3R1YWwgbnVtYmVyIHBhcnNlciBpbXBsZW1lbnRhdGlvbi4gSW5zdGFuY2VzIG9mIHRoaXMgY2xhc3MgYXJlIGNhY2hlZFxuLy8gYmFzZWQgb24gdGhlIGxvY2FsZSwgb3B0aW9ucywgYW5kIGRldGVjdGVkIG51bWJlcmluZyBzeXN0ZW0uXG5cblxuY2xhc3MgJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJE51bWJlclBhcnNlckltcGwge1xuICBjb25zdHJ1Y3Rvcihsb2NhbGUsIG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgICBvcHRpb25zID0ge307XG4gICAgfVxuXG4gICAgdGhpcy5mb3JtYXR0ZXIgPSB2b2lkIDA7XG4gICAgdGhpcy5vcHRpb25zID0gdm9pZCAwO1xuICAgIHRoaXMuc3ltYm9scyA9IHZvaWQgMDtcbiAgICB0aGlzLmZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUsIG9wdGlvbnMpO1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuZm9ybWF0dGVyLnJlc29sdmVkT3B0aW9ucygpO1xuICAgIHRoaXMuc3ltYm9scyA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXRTeW1ib2xzKHRoaXMuZm9ybWF0dGVyLCB0aGlzLm9wdGlvbnMsIG9wdGlvbnMpO1xuICB9XG5cbiAgcGFyc2UodmFsdWUpIHtcbiAgICAvLyB0byBwYXJzZSB0aGUgbnVtYmVyLCB3ZSBuZWVkIHRvIHJlbW92ZSBhbnl0aGluZyB0aGF0IGlzbid0IGFjdHVhbGx5IHBhcnQgb2YgdGhlIG51bWJlciwgZm9yIGV4YW1wbGUgd2Ugd2FudCAnLTEwLjQwJyBub3QgJy0xMC40MCBVU0QnXG4gICAgbGV0IGZ1bGx5U2FuaXRpemVkVmFsdWUgPSB0aGlzLnNhbml0aXplKHZhbHVlKTsgLy8gUmVtb3ZlIGdyb3VwIGNoYXJhY3RlcnMsIGFuZCByZXBsYWNlIGRlY2ltYWwgcG9pbnRzIGFuZCBudW1lcmFscyB3aXRoIEFTQ0lJIHZhbHVlcy5cblxuICAgIGZ1bGx5U2FuaXRpemVkVmFsdWUgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkcmVwbGFjZUFsbChmdWxseVNhbml0aXplZFZhbHVlLCB0aGlzLnN5bWJvbHMuZ3JvdXAsICcnKS5yZXBsYWNlKHRoaXMuc3ltYm9scy5kZWNpbWFsLCAnLicpLnJlcGxhY2UodGhpcy5zeW1ib2xzLm1pbnVzU2lnbiwgJy0nKS5yZXBsYWNlKHRoaXMuc3ltYm9scy5udW1lcmFsLCB0aGlzLnN5bWJvbHMuaW5kZXgpO1xuICAgIGxldCBuZXdWYWx1ZSA9IGZ1bGx5U2FuaXRpemVkVmFsdWUgPyArZnVsbHlTYW5pdGl6ZWRWYWx1ZSA6IE5hTjtcblxuICAgIGlmIChpc05hTihuZXdWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBOYU47XG4gICAgfSAvLyBhY2NvdW50aW5nIHdpbGwgYWx3YXlzIGJlIHN0cmlwcGVkIHRvIGEgcG9zaXRpdmUgbnVtYmVyLCBzbyBpZiBpdCdzIGFjY291bnRpbmcgYW5kIGhhcyBhICgpIGFyb3VuZCBldmVyeXRoaW5nLCB0aGVuIHdlIG5lZWQgdG8gbWFrZSBpdCBuZWdhdGl2ZSBhZ2FpblxuXG5cbiAgICBpZiAodGhpcy5vcHRpb25zLmN1cnJlbmN5U2lnbiA9PT0gJ2FjY291bnRpbmcnICYmICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRDVVJSRU5DWV9TSUdOX1JFR0VYLnRlc3QodmFsdWUpKSB7XG4gICAgICBuZXdWYWx1ZSA9IC0xICogbmV3VmFsdWU7XG4gICAgfSAvLyB3aGVuIHJlYWRpbmcgdGhlIG51bWJlciwgaWYgaXQncyBhIHBlcmNlbnQsIHRoZW4gaXQgc2hvdWxkIGJlIGludGVycHJldGVkIGFzIGJlaW5nIGRpdmlkZWQgYnkgMTAwXG5cblxuICAgIGlmICh0aGlzLm9wdGlvbnMuc3R5bGUgPT09ICdwZXJjZW50Jykge1xuICAgICAgdmFyIF90aGlzJG9wdGlvbnMkbWF4aW11bTtcblxuICAgICAgbmV3VmFsdWUgLz0gMTAwOyAvLyBhZnRlciBkaXZpZGluZyB0byBnZXQgdGhlIHBlcmNlbnQgdmFsdWUsIGphdmFzY3JpcHQgbWF5IGdldCAuMDIxMDk5OTk5OSBpbnN0ZWFkIG9mIC4wMjExLCBzbyBmaXggdGhlIG51bWJlciBvZiBmcmFjdGlvbiBkaWdpdHNcblxuICAgICAgbmV3VmFsdWUgPSArbmV3VmFsdWUudG9GaXhlZCgoKF90aGlzJG9wdGlvbnMkbWF4aW11bSA9IHRoaXMub3B0aW9ucy5tYXhpbXVtRnJhY3Rpb25EaWdpdHMpICE9IG51bGwgPyBfdGhpcyRvcHRpb25zJG1heGltdW0gOiAwKSArIDIpO1xuICAgIH1cblxuICAgIHJldHVybiBuZXdWYWx1ZTtcbiAgfVxuXG4gIHNhbml0aXplKHZhbHVlKSB7XG4gICAgLy8gUmVtb3ZlIGxpdGVyYWxzIGFuZCB3aGl0ZXNwYWNlLCB3aGljaCBhcmUgYWxsb3dlZCBhbnl3aGVyZSBpbiB0aGUgc3RyaW5nXG4gICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKHRoaXMuc3ltYm9scy5saXRlcmFscywgJycpOyAvLyBSZXBsYWNlIHRoZSBBU0NJSSBtaW51cyBzaWduIHdpdGggdGhlIG1pbnVzIHNpZ24gdXNlZCBpbiB0aGUgY3VycmVudCBsb2NhbGVcbiAgICAvLyBzbyB0aGF0IGJvdGggYXJlIGFsbG93ZWQgaW4gY2FzZSB0aGUgdXNlcidzIGtleWJvYXJkIGRvZXNuJ3QgaGF2ZSB0aGUgbG9jYWxlJ3MgbWludXMgc2lnbi5cblxuICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgnLScsIHRoaXMuc3ltYm9scy5taW51c1NpZ24pOyAvLyBJbiBhcmFiIG51bWVyYWwgc3lzdGVtLCB0aGVpciBkZWNpbWFsIGNoYXJhY3RlciBpcyAxNjQzLCBidXQgbW9zdCBrZXlib2FyZHMgZG9uJ3QgdHlwZSB0aGF0XG4gICAgLy8gaW5zdGVhZCB0aGV5IHVzZSB0aGUgLCAoNDQpIGNoYXJhY3RlciBvciBhcHBhcmVudGx5IHRoZSAoMTU0OCkgY2hhcmFjdGVyLlxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5udW1iZXJpbmdTeXN0ZW0gPT09ICdhcmFiJykge1xuICAgICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKCcsJywgdGhpcy5zeW1ib2xzLmRlY2ltYWwpO1xuICAgICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKFN0cmluZy5mcm9tQ2hhckNvZGUoMTU0OCksIHRoaXMuc3ltYm9scy5kZWNpbWFsKTtcbiAgICAgIHZhbHVlID0gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJHJlcGxhY2VBbGwodmFsdWUsICcuJywgdGhpcy5zeW1ib2xzLmdyb3VwKTtcbiAgICB9IC8vIGZyLUZSIGdyb3VwIGNoYXJhY3RlciBpcyBjaGFyIGNvZGUgODIzOSwgYnV0IHRoYXQncyBub3QgYSBrZXkgb24gdGhlIGZyZW5jaCBrZXlib2FyZCxcbiAgICAvLyBzbyBhbGxvdyAncGVyaW9kJyBhcyBhIGdyb3VwIGNoYXIgYW5kIHJlcGxhY2UgaXQgd2l0aCBhIHNwYWNlXG5cblxuICAgIGlmICh0aGlzLm9wdGlvbnMubG9jYWxlID09PSAnZnItRlInKSB7XG4gICAgICB2YWx1ZSA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRyZXBsYWNlQWxsKHZhbHVlLCAnLicsIFN0cmluZy5mcm9tQ2hhckNvZGUoODIzOSkpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGlzVmFsaWRQYXJ0aWFsTnVtYmVyKHZhbHVlLCBtaW5WYWx1ZSwgbWF4VmFsdWUpIHtcbiAgICBpZiAobWluVmFsdWUgPT09IHZvaWQgMCkge1xuICAgICAgbWluVmFsdWUgPSAtSW5maW5pdHk7XG4gICAgfVxuXG4gICAgaWYgKG1heFZhbHVlID09PSB2b2lkIDApIHtcbiAgICAgIG1heFZhbHVlID0gSW5maW5pdHk7XG4gICAgfVxuXG4gICAgdmFsdWUgPSB0aGlzLnNhbml0aXplKHZhbHVlKTsgLy8gUmVtb3ZlIG1pbnVzIG9yIHBsdXMgc2lnbiwgd2hpY2ggbXVzdCBiZSBhdCB0aGUgc3RhcnQgb2YgdGhlIHN0cmluZy5cblxuICAgIGlmICh2YWx1ZS5zdGFydHNXaXRoKHRoaXMuc3ltYm9scy5taW51c1NpZ24pICYmIG1pblZhbHVlIDwgMCkge1xuICAgICAgdmFsdWUgPSB2YWx1ZS5zbGljZSh0aGlzLnN5bWJvbHMubWludXNTaWduLmxlbmd0aCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnN5bWJvbHMucGx1c1NpZ24gJiYgdmFsdWUuc3RhcnRzV2l0aCh0aGlzLnN5bWJvbHMucGx1c1NpZ24pICYmIG1heFZhbHVlID4gMCkge1xuICAgICAgdmFsdWUgPSB2YWx1ZS5zbGljZSh0aGlzLnN5bWJvbHMucGx1c1NpZ24ubGVuZ3RoKTtcbiAgICB9IC8vIE51bWJlcnMgY2Fubm90IHN0YXJ0IHdpdGggYSBncm91cCBzZXBhcmF0b3JcblxuXG4gICAgaWYgKHZhbHVlLnN0YXJ0c1dpdGgodGhpcy5zeW1ib2xzLmdyb3VwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gLy8gUmVtb3ZlIG51bWVyYWxzLCBncm91cHMsIGFuZCBkZWNpbWFsc1xuXG5cbiAgICB2YWx1ZSA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRyZXBsYWNlQWxsKHZhbHVlLCB0aGlzLnN5bWJvbHMuZ3JvdXAsICcnKS5yZXBsYWNlKHRoaXMuc3ltYm9scy5udW1lcmFsLCAnJykucmVwbGFjZSh0aGlzLnN5bWJvbHMuZGVjaW1hbCwgJycpOyAvLyBUaGUgbnVtYmVyIGlzIHZhbGlkIGlmIHRoZXJlIGFyZSBubyByZW1haW5pbmcgY2hhcmFjdGVyc1xuXG4gICAgcmV0dXJuIHZhbHVlLmxlbmd0aCA9PT0gMDtcbiAgfVxuXG59XG5cbmNvbnN0ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRub25MaXRlcmFsUGFydHMgPSBuZXcgU2V0KFsnZGVjaW1hbCcsICdmcmFjdGlvbicsICdpbnRlZ2VyJywgJ21pbnVzU2lnbicsICdwbHVzU2lnbicsICdncm91cCddKTtcblxuZnVuY3Rpb24gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJGdldFN5bWJvbHMoZm9ybWF0dGVyLCBpbnRsT3B0aW9ucywgb3JpZ2luYWxPcHRpb25zKSB7XG4gIHZhciBfYWxsUGFydHMkZmluZCR2YWx1ZSwgX2FsbFBhcnRzJGZpbmQsIF9wb3NBbGxQYXJ0cyRmaW5kLCBfYWxsUGFydHMkZmluZDIsIF9hbGxQYXJ0cyRmaW5kMztcblxuICAvLyBOb3RlOiBzb21lIGxvY2FsZSdzIGRvbid0IGFkZCBhIGdyb3VwIHN5bWJvbCB1bnRpbCB0aGVyZSBpcyBhIHRlbiB0aG91c2FuZHMgcGxhY2VcbiAgbGV0IGFsbFBhcnRzID0gZm9ybWF0dGVyLmZvcm1hdFRvUGFydHMoLTEwMDAwLjEpO1xuICBsZXQgcG9zQWxsUGFydHMgPSBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cygxMDAwMC4xKTtcbiAgbGV0IHNpbmd1bGFyUGFydHMgPSBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cygxKTtcbiAgbGV0IG1pbnVzU2lnbiA9IChfYWxsUGFydHMkZmluZCR2YWx1ZSA9IChfYWxsUGFydHMkZmluZCA9IGFsbFBhcnRzLmZpbmQocCA9PiBwLnR5cGUgPT09ICdtaW51c1NpZ24nKSkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hbGxQYXJ0cyRmaW5kLnZhbHVlKSAhPSBudWxsID8gX2FsbFBhcnRzJGZpbmQkdmFsdWUgOiAnLSc7XG4gIGxldCBwbHVzU2lnbiA9IChfcG9zQWxsUGFydHMkZmluZCA9IHBvc0FsbFBhcnRzLmZpbmQocCA9PiBwLnR5cGUgPT09ICdwbHVzU2lnbicpKSA9PSBudWxsID8gdm9pZCAwIDogX3Bvc0FsbFBhcnRzJGZpbmQudmFsdWU7IC8vIFNhZmFyaSBkb2VzIG5vdCBzdXBwb3J0IHRoZSBzaWduRGlzcGxheSBvcHRpb24sIGJ1dCBvdXIgbnVtYmVyIHBhcnNlciBwb2x5ZmlsbHMgaXQuXG4gIC8vIElmIG5vIHBsdXMgc2lnbiB3YXMgcmV0dXJuZWQsIGJ1dCB0aGUgb3JpZ2luYWwgb3B0aW9ucyBjb250YWluZWQgc2lnbkRpc3BsYXksIGRlZmF1bHQgdG8gdGhlICcrJyBjaGFyYWN0ZXIuXG4gIC8vIEB0cy1pZ25vcmVcblxuICBpZiAoIXBsdXNTaWduICYmICgob3JpZ2luYWxPcHRpb25zID09IG51bGwgPyB2b2lkIDAgOiBvcmlnaW5hbE9wdGlvbnMuc2lnbkRpc3BsYXkpID09PSAnZXhjZXB0WmVybycgfHwgKG9yaWdpbmFsT3B0aW9ucyA9PSBudWxsID8gdm9pZCAwIDogb3JpZ2luYWxPcHRpb25zLnNpZ25EaXNwbGF5KSA9PT0gJ2Fsd2F5cycpKSB7XG4gICAgcGx1c1NpZ24gPSAnKyc7XG4gIH1cblxuICBsZXQgZGVjaW1hbCA9IChfYWxsUGFydHMkZmluZDIgPSBhbGxQYXJ0cy5maW5kKHAgPT4gcC50eXBlID09PSAnZGVjaW1hbCcpKSA9PSBudWxsID8gdm9pZCAwIDogX2FsbFBhcnRzJGZpbmQyLnZhbHVlO1xuICBsZXQgZ3JvdXAgPSAoX2FsbFBhcnRzJGZpbmQzID0gYWxsUGFydHMuZmluZChwID0+IHAudHlwZSA9PT0gJ2dyb3VwJykpID09IG51bGwgPyB2b2lkIDAgOiBfYWxsUGFydHMkZmluZDMudmFsdWU7IC8vIHRoaXMgc2V0IGlzIGFsc28gZm9yIGEgcmVnZXgsIGl0J3MgYWxsIGxpdGVyYWxzIHRoYXQgbWlnaHQgYmUgaW4gdGhlIHN0cmluZyB3ZSB3YW50IHRvIGV2ZW50dWFsbHkgcGFyc2UgdGhhdFxuICAvLyBkb24ndCBjb250cmlidXRlIHRvIHRoZSBudW1lcmljYWwgdmFsdWVcblxuICBsZXQgcGx1cmFsTGl0ZXJhbHMgPSBhbGxQYXJ0cy5maWx0ZXIocCA9PiAhJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJG5vbkxpdGVyYWxQYXJ0cy5oYXMocC50eXBlKSkubWFwKHAgPT4gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJGVzY2FwZVJlZ2V4KHAudmFsdWUpKTtcbiAgbGV0IHNpbmd1bGFyTGl0ZXJhbHMgPSBzaW5ndWxhclBhcnRzLmZpbHRlcihwID0+ICEkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbm9uTGl0ZXJhbFBhcnRzLmhhcyhwLnR5cGUpKS5tYXAocCA9PiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZXNjYXBlUmVnZXgocC52YWx1ZSkpO1xuICBsZXQgc29ydGVkTGl0ZXJhbHMgPSBbLi4ubmV3IFNldChbLi4uc2luZ3VsYXJMaXRlcmFscywgLi4ucGx1cmFsTGl0ZXJhbHNdKV0uc29ydCgoYSwgYikgPT4gYi5sZW5ndGggLSBhLmxlbmd0aCk7XG4gIGxldCBsaXRlcmFscyA9IG5ldyBSZWdFeHAoc29ydGVkTGl0ZXJhbHMuam9pbignfCcpICsgXCJ8W1xcXFxwe1doaXRlX1NwYWNlfV1cIiwgJ2d1Jyk7IC8vIFRoZXNlIGFyZSBmb3IgcmVwbGFjaW5nIG5vbi1sYXRuIGNoYXJhY3RlcnMgd2l0aCB0aGUgbGF0biBlcXVpdmFsZW50XG5cbiAgbGV0IG51bWVyYWxzID0gWy4uLm5ldyBJbnRsLk51bWJlckZvcm1hdChpbnRsT3B0aW9ucy5sb2NhbGUsIHtcbiAgICB1c2VHcm91cGluZzogZmFsc2VcbiAgfSkuZm9ybWF0KDk4NzY1NDMyMTApXS5yZXZlcnNlKCk7XG4gIGxldCBpbmRleGVzID0gbmV3IE1hcChudW1lcmFscy5tYXAoKGQsIGkpID0+IFtkLCBpXSkpO1xuICBsZXQgbnVtZXJhbCA9IG5ldyBSZWdFeHAoXCJbXCIgKyBudW1lcmFscy5qb2luKCcnKSArIFwiXVwiLCAnZycpO1xuXG4gIGxldCBpbmRleCA9IGQgPT4gU3RyaW5nKGluZGV4ZXMuZ2V0KGQpKTtcblxuICByZXR1cm4ge1xuICAgIG1pbnVzU2lnbixcbiAgICBwbHVzU2lnbixcbiAgICBkZWNpbWFsLFxuICAgIGdyb3VwLFxuICAgIGxpdGVyYWxzLFxuICAgIG51bWVyYWwsXG4gICAgaW5kZXhcbiAgfTtcbn1cblxuZnVuY3Rpb24gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJHJlcGxhY2VBbGwoc3RyLCBmaW5kLCByZXBsYWNlKSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgaWYgKHN0ci5yZXBsYWNlQWxsKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiBzdHIucmVwbGFjZUFsbChmaW5kLCByZXBsYWNlKTtcbiAgfVxuXG4gIHJldHVybiBzdHIuc3BsaXQoZmluZCkuam9pbihyZXBsYWNlKTtcbn1cblxuZnVuY3Rpb24gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJGVzY2FwZVJlZ2V4KHN0cmluZykge1xuICByZXR1cm4gc3RyaW5nLnJlcGxhY2UoL1stL1xcXFxeJCorPy4oKXxbXFxde31dL2csICdcXFxcJCYnKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW1vZHVsZS5qcy5tYXBcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/@internationalized/number/dist/module.js\n");
218
-
219
- /***/ }),
220
-
221
- /***/ "./node_modules/@internationalized/number/node_modules/@babel/runtime/helpers/esm/extends.js":
222
- /*!***************************************************************************************************!*\
223
- !*** ./node_modules/@internationalized/number/node_modules/@babel/runtime/helpers/esm/extends.js ***!
224
- \***************************************************************************************************/
225
- /*! exports provided: default */
226
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
227
-
228
- "use strict";
229
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _extends; });\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL25vZGVfbW9kdWxlcy9AaW50ZXJuYXRpb25hbGl6ZWQvbnVtYmVyL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzLmpzPzM4OTgiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFlO0FBQ2Y7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EiLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvQGludGVybmF0aW9uYWxpemVkL251bWJlci9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kcy5qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF9leHRlbmRzKCkge1xuICBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkge1xuICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldO1xuXG4gICAgICBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7XG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7XG4gICAgICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0YXJnZXQ7XG4gIH07XG5cbiAgcmV0dXJuIF9leHRlbmRzLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG59Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@internationalized/number/node_modules/@babel/runtime/helpers/esm/extends.js\n");
229
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberFormatter\", function() { return NumberFormatter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberParser\", function() { return NumberParser; });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"./node_modules/@babel/runtime/helpers/esm/extends.js\");\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache = new Map();\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay = false;\n\ntry {\n // @ts-ignore\n $fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay = new Intl.NumberFormat('de-DE', {\n signDisplay: 'exceptZero'\n }).resolvedOptions().signDisplay === 'exceptZero'; // eslint-disable-next-line no-empty\n} catch (e) {}\n\nlet $fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit = false;\n\ntry {\n // @ts-ignore\n $fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit = new Intl.NumberFormat('de-DE', {\n style: 'unit',\n unit: 'degree'\n }).resolvedOptions().style === 'unit'; // eslint-disable-next-line no-empty\n} catch (e) {} // Polyfill for units since Safari doesn't support them yet. See https://bugs.webkit.org/show_bug.cgi?id=215438.\n// Currently only polyfilling the unit degree in narrow format for ColorSlider in our supported locales.\n// Values were determined by switching to each locale manually in Chrome.\n\n\nconst $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS = {\n degree: {\n narrow: {\n default: '°',\n 'ja-JP': ' 度',\n 'zh-TW': '度',\n 'sl-SI': ' °' // Arabic?? But Safari already doesn't use Arabic digits so might be ok...\n // https://bugs.webkit.org/show_bug.cgi?id=218139\n\n }\n }\n};\n\n/**\n * A wrapper around Intl.NumberFormat providing additional options, polyfills, and caching for performance.\n */\nclass NumberFormatter {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.numberFormatter = void 0;\n this.options = void 0;\n this.numberFormatter = $fe87f22deac4debf3eab2ca6a89602ab$var$getCachedNumberFormatter(locale, options);\n this.options = options;\n }\n\n format(value) {\n let res = '';\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay && this.options.signDisplay != null) {\n res = $fe87f22deac4debf3eab2ca6a89602ab$export$numberFormatSignDisplayPolyfill(this.numberFormatter, this.options.signDisplay, value);\n } else {\n res = this.numberFormatter.format(value);\n }\n\n if (this.options.style === 'unit' && !$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit) {\n var _UNITS$unit;\n\n let {\n unit,\n unitDisplay = 'short',\n locale\n } = this.resolvedOptions();\n let values = (_UNITS$unit = $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS[unit]) == null ? void 0 : _UNITS$unit[unitDisplay];\n res += values[locale] || values.default;\n }\n\n return res;\n }\n\n formatToParts(value) {\n // TODO: implement signDisplay for formatToParts\n // @ts-ignore\n return this.numberFormatter.formatToParts(value);\n }\n\n resolvedOptions() {\n let options = this.numberFormatter.resolvedOptions();\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsSignDisplay && this.options.signDisplay != null) {\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n signDisplay: this.options.signDisplay\n });\n }\n\n if (!$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit && this.options.style === 'unit') {\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n style: 'unit',\n unit: this.options.unit,\n unitDisplay: this.options.unitDisplay\n });\n }\n\n return options;\n }\n\n}\n\nfunction $fe87f22deac4debf3eab2ca6a89602ab$var$getCachedNumberFormatter(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n let {\n numberingSystem\n } = options;\n\n if (numberingSystem && locale.indexOf('-u-nu-') === -1) {\n locale = locale + \"-u-nu-\" + numberingSystem;\n }\n\n if (options.style === 'unit' && !$fe87f22deac4debf3eab2ca6a89602ab$var$supportsUnit) {\n var _UNITS$unit2;\n\n let {\n unit,\n unitDisplay = 'short'\n } = options;\n\n if (!unit) {\n throw new Error('unit option must be provided with style: \"unit\"');\n }\n\n if (!((_UNITS$unit2 = $fe87f22deac4debf3eab2ca6a89602ab$var$UNITS[unit]) != null && _UNITS$unit2[unitDisplay])) {\n throw new Error(\"Unsupported unit \" + unit + \" with unitDisplay = \" + unitDisplay);\n }\n\n options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, options, {\n style: 'decimal'\n });\n }\n\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : '');\n\n if ($fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.has(cacheKey)) {\n return $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.get(cacheKey);\n }\n\n let numberFormatter = new Intl.NumberFormat(locale, options);\n $fe87f22deac4debf3eab2ca6a89602ab$var$formatterCache.set(cacheKey, numberFormatter);\n return numberFormatter;\n}\n/** @private - exported for tests */\n\n\nfunction $fe87f22deac4debf3eab2ca6a89602ab$export$numberFormatSignDisplayPolyfill(numberFormat, signDisplay, num) {\n if (signDisplay === 'auto') {\n return numberFormat.format(num);\n } else if (signDisplay === 'never') {\n return numberFormat.format(Math.abs(num));\n } else {\n let needsPositiveSign = false;\n\n if (signDisplay === 'always') {\n needsPositiveSign = num > 0 || Object.is(num, 0);\n } else if (signDisplay === 'exceptZero') {\n if (Object.is(num, -0) || Object.is(num, 0)) {\n num = Math.abs(num);\n } else {\n needsPositiveSign = num > 0;\n }\n }\n\n if (needsPositiveSign) {\n let negative = numberFormat.format(-num);\n let noSign = numberFormat.format(num); // ignore RTL/LTR marker character\n\n let minus = negative.replace(noSign, '').replace(/\\u200e|\\u061C/, '');\n\n if ([...minus].length !== 1) {\n console.warn('@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case');\n }\n\n let positive = negative.replace(noSign, '!!!').replace(minus, '+').replace('!!!', noSign);\n return positive;\n } else {\n return numberFormat.format(num);\n }\n }\n}\n\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$CURRENCY_SIGN_REGEX = new RegExp('^.*\\\\(.*\\\\).*$');\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$NUMBERING_SYSTEMS = ['latn', 'arab', 'hanidec'];\n/**\n * A NumberParser can be used perform locale aware parsing of numbers from Unicode strings,\n * as well as validation of partial user input. Automatically detects the numbering system\n * used in the input, and supports parsing decimals, percentages, currency values, and units\n * according to the locale.\n */\n\nclass NumberParser {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.locale = void 0;\n this.options = void 0;\n this.locale = locale;\n this.options = options;\n }\n /**\n * Parses the given string to a number. Returns NaN if a valid number could not be parsed.\n */\n\n\n parse(value) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).parse(value);\n }\n /**\n * Returns whether the given string could potentially be a valid number. This should be used to\n * validate user input as the user types. If a `minValue` or `maxValue` is provided, the validity\n * of the minus/plus sign characters can be checked.\n */\n\n\n isValidPartialNumber(value, minValue, maxValue) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).isValidPartialNumber(value, minValue, maxValue);\n }\n /**\n * Returns a numbering system for which the given string is valid in the current locale.\n * If no numbering system could be detected, the default numbering system for the current\n * locale is returned.\n */\n\n\n getNumberingSystem(value) {\n return $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(this.locale, this.options, value).options.numberingSystem;\n }\n\n}\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache = new Map();\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getNumberParserImpl(locale, options, value) {\n // First try the default numbering system for the provided locale\n let defaultParser = $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale, options); // If that doesn't match, and the locale doesn't include a hard coded numbering system,\n // try each of the other supported numbering systems until we find one that matches.\n\n if (!locale.includes('-nu-') && !defaultParser.isValidPartialNumber(value)) {\n for (let numberingSystem of $e1a22841ad5113a054c8ebe55b24e1a$var$NUMBERING_SYSTEMS) {\n if (numberingSystem !== defaultParser.options.numberingSystem) {\n let parser = $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale + (locale.includes('-u-') ? '-nu-' : '-u-nu-') + numberingSystem, options);\n\n if (parser.isValidPartialNumber(value)) {\n return parser;\n }\n }\n }\n }\n\n return defaultParser;\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getCachedNumberParser(locale, options) {\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : '');\n let parser = $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache.get(cacheKey);\n\n if (!parser) {\n parser = new $e1a22841ad5113a054c8ebe55b24e1a$var$NumberParserImpl(locale, options);\n $e1a22841ad5113a054c8ebe55b24e1a$var$numberParserCache.set(cacheKey, parser);\n }\n\n return parser;\n} // The actual number parser implementation. Instances of this class are cached\n// based on the locale, options, and detected numbering system.\n\n\nclass $e1a22841ad5113a054c8ebe55b24e1a$var$NumberParserImpl {\n constructor(locale, options) {\n if (options === void 0) {\n options = {};\n }\n\n this.formatter = void 0;\n this.options = void 0;\n this.symbols = void 0;\n this.formatter = new Intl.NumberFormat(locale, options);\n this.options = this.formatter.resolvedOptions();\n this.symbols = $e1a22841ad5113a054c8ebe55b24e1a$var$getSymbols(this.formatter, this.options, options);\n }\n\n parse(value) {\n // to parse the number, we need to remove anything that isn't actually part of the number, for example we want '-10.40' not '-10.40 USD'\n let fullySanitizedValue = this.sanitize(value); // Remove group characters, and replace decimal points and numerals with ASCII values.\n\n fullySanitizedValue = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(fullySanitizedValue, this.symbols.group, '').replace(this.symbols.decimal, '.').replace(this.symbols.minusSign, '-').replace(this.symbols.numeral, this.symbols.index);\n let newValue = fullySanitizedValue ? +fullySanitizedValue : NaN;\n\n if (isNaN(newValue)) {\n return NaN;\n } // accounting will always be stripped to a positive number, so if it's accounting and has a () around everything, then we need to make it negative again\n\n\n if (this.options.currencySign === 'accounting' && $e1a22841ad5113a054c8ebe55b24e1a$var$CURRENCY_SIGN_REGEX.test(value)) {\n newValue = -1 * newValue;\n } // when reading the number, if it's a percent, then it should be interpreted as being divided by 100\n\n\n if (this.options.style === 'percent') {\n var _this$options$maximum;\n\n newValue /= 100; // after dividing to get the percent value, javascript may get .0210999999 instead of .0211, so fix the number of fraction digits\n\n newValue = +newValue.toFixed(((_this$options$maximum = this.options.maximumFractionDigits) != null ? _this$options$maximum : 0) + 2);\n }\n\n return newValue;\n }\n\n sanitize(value) {\n // Remove literals and whitespace, which are allowed anywhere in the string\n value = value.replace(this.symbols.literals, ''); // Replace the ASCII minus sign with the minus sign used in the current locale\n // so that both are allowed in case the user's keyboard doesn't have the locale's minus sign.\n\n value = value.replace('-', this.symbols.minusSign); // In arab numeral system, their decimal character is 1643, but most keyboards don't type that\n // instead they use the , (44) character or apparently the (1548) character.\n\n if (this.options.numberingSystem === 'arab') {\n value = value.replace(',', this.symbols.decimal);\n value = value.replace(String.fromCharCode(1548), this.symbols.decimal);\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, '.', this.symbols.group);\n } // fr-FR group character is char code 8239, but that's not a key on the french keyboard,\n // so allow 'period' as a group char and replace it with a space\n\n\n if (this.options.locale === 'fr-FR') {\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, '.', String.fromCharCode(8239));\n }\n\n return value;\n }\n\n isValidPartialNumber(value, minValue, maxValue) {\n if (minValue === void 0) {\n minValue = -Infinity;\n }\n\n if (maxValue === void 0) {\n maxValue = Infinity;\n }\n\n value = this.sanitize(value); // Remove minus or plus sign, which must be at the start of the string.\n\n if (value.startsWith(this.symbols.minusSign) && minValue < 0) {\n value = value.slice(this.symbols.minusSign.length);\n } else if (this.symbols.plusSign && value.startsWith(this.symbols.plusSign) && maxValue > 0) {\n value = value.slice(this.symbols.plusSign.length);\n } // Numbers cannot start with a group separator\n\n\n if (value.startsWith(this.symbols.group)) {\n return false;\n } // Remove numerals, groups, and decimals\n\n\n value = $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(value, this.symbols.group, '').replace(this.symbols.numeral, '').replace(this.symbols.decimal, ''); // The number is valid if there are no remaining characters\n\n return value.length === 0;\n }\n\n}\n\nconst $e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts = new Set(['decimal', 'fraction', 'integer', 'minusSign', 'plusSign', 'group']);\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$getSymbols(formatter, intlOptions, originalOptions) {\n var _allParts$find$value, _allParts$find, _posAllParts$find, _allParts$find2, _allParts$find3;\n\n // Note: some locale's don't add a group symbol until there is a ten thousands place\n let allParts = formatter.formatToParts(-10000.111);\n let posAllParts = formatter.formatToParts(10000.111);\n let singularParts = formatter.formatToParts(1);\n let minusSign = (_allParts$find$value = (_allParts$find = allParts.find(p => p.type === 'minusSign')) == null ? void 0 : _allParts$find.value) != null ? _allParts$find$value : '-';\n let plusSign = (_posAllParts$find = posAllParts.find(p => p.type === 'plusSign')) == null ? void 0 : _posAllParts$find.value; // Safari does not support the signDisplay option, but our number parser polyfills it.\n // If no plus sign was returned, but the original options contained signDisplay, default to the '+' character.\n // @ts-ignore\n\n if (!plusSign && ((originalOptions == null ? void 0 : originalOptions.signDisplay) === 'exceptZero' || (originalOptions == null ? void 0 : originalOptions.signDisplay) === 'always')) {\n plusSign = '+';\n }\n\n let decimal = (_allParts$find2 = allParts.find(p => p.type === 'decimal')) == null ? void 0 : _allParts$find2.value;\n let group = (_allParts$find3 = allParts.find(p => p.type === 'group')) == null ? void 0 : _allParts$find3.value; // this set is also for a regex, it's all literals that might be in the string we want to eventually parse that\n // don't contribute to the numerical value\n\n let pluralLiterals = allParts.filter(p => !$e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts.has(p.type)).map(p => $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(p.value));\n let singularLiterals = singularParts.filter(p => !$e1a22841ad5113a054c8ebe55b24e1a$var$nonLiteralParts.has(p.type)).map(p => $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(p.value));\n let sortedLiterals = [...new Set([...singularLiterals, ...pluralLiterals])].sort((a, b) => b.length - a.length);\n let literals = new RegExp(sortedLiterals.join('|') + \"|[\\\\p{White_Space}]\", 'gu'); // These are for replacing non-latn characters with the latn equivalent\n\n let numerals = [...new Intl.NumberFormat(intlOptions.locale, {\n useGrouping: false\n }).format(9876543210)].reverse();\n let indexes = new Map(numerals.map((d, i) => [d, i]));\n let numeral = new RegExp(\"[\" + numerals.join('') + \"]\", 'g');\n\n let index = d => String(indexes.get(d));\n\n return {\n minusSign,\n plusSign,\n decimal,\n group,\n literals,\n numeral,\n index\n };\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$replaceAll(str, find, replace) {\n // @ts-ignore\n if (str.replaceAll) {\n // @ts-ignore\n return str.replaceAll(find, replace);\n }\n\n return str.split(find).join(replace);\n}\n\nfunction $e1a22841ad5113a054c8ebe55b24e1a$var$escapeRegex(string) {\n return string.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n//# sourceMappingURL=module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL25vZGVfbW9kdWxlcy9AaW50ZXJuYXRpb25hbGl6ZWQvbnVtYmVyL2Rpc3QvbW9kdWxlLmpzPzBkY2QiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBZ0Y7O0FBRWhGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxpREFBaUQ7QUFDcEQsQ0FBQzs7QUFFRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxxQ0FBcUM7QUFDeEMsQ0FBQyxhQUFhO0FBQ2Q7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsZ0JBQWdCLGtGQUE4QixHQUFHO0FBQ2pEO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0EsZ0JBQWdCLGtGQUE4QixHQUFHO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxjQUFjLGtGQUE4QixHQUFHO0FBQy9DO0FBQ0EsS0FBSztBQUNMOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNENBQTRDOztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGtHQUFrRztBQUNsRzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxDQUFDO0FBQ0Q7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLG1EQUFtRDs7QUFFbkQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSzs7O0FBR0w7QUFDQTtBQUNBLEtBQUs7OztBQUdMO0FBQ0E7O0FBRUEsc0JBQXNCOztBQUV0QjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLHFEQUFxRDtBQUNyRDs7QUFFQSx1REFBdUQ7QUFDdkQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7OztBQUdBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUM7O0FBRWpDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLOzs7QUFHTDtBQUNBO0FBQ0EsS0FBSzs7O0FBR0wsK0pBQStKOztBQUUvSjtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtIQUErSDtBQUMvSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGtIQUFrSDtBQUNsSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw4REFBOEQsWUFBWSxVQUFVOztBQUVwRjtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSw0Q0FBNEM7QUFDNUM7QUFDQSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9AaW50ZXJuYXRpb25hbGl6ZWQvbnVtYmVyL2Rpc3QvbW9kdWxlLmpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjAgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmxldCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlID0gbmV3IE1hcCgpO1xubGV0ICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSA9IGZhbHNlO1xuXG50cnkge1xuICAvLyBAdHMtaWdub3JlXG4gICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSA9IG5ldyBJbnRsLk51bWJlckZvcm1hdCgnZGUtREUnLCB7XG4gICAgc2lnbkRpc3BsYXk6ICdleGNlcHRaZXJvJ1xuICB9KS5yZXNvbHZlZE9wdGlvbnMoKS5zaWduRGlzcGxheSA9PT0gJ2V4Y2VwdFplcm8nOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbn0gY2F0Y2ggKGUpIHt9XG5cbmxldCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCA9IGZhbHNlO1xuXG50cnkge1xuICAvLyBAdHMtaWdub3JlXG4gICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNVbml0ID0gbmV3IEludGwuTnVtYmVyRm9ybWF0KCdkZS1ERScsIHtcbiAgICBzdHlsZTogJ3VuaXQnLFxuICAgIHVuaXQ6ICdkZWdyZWUnXG4gIH0pLnJlc29sdmVkT3B0aW9ucygpLnN0eWxlID09PSAndW5pdCc7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eVxufSBjYXRjaCAoZSkge30gLy8gUG9seWZpbGwgZm9yIHVuaXRzIHNpbmNlIFNhZmFyaSBkb2Vzbid0IHN1cHBvcnQgdGhlbSB5ZXQuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDM4LlxuLy8gQ3VycmVudGx5IG9ubHkgcG9seWZpbGxpbmcgdGhlIHVuaXQgZGVncmVlIGluIG5hcnJvdyBmb3JtYXQgZm9yIENvbG9yU2xpZGVyIGluIG91ciBzdXBwb3J0ZWQgbG9jYWxlcy5cbi8vIFZhbHVlcyB3ZXJlIGRldGVybWluZWQgYnkgc3dpdGNoaW5nIHRvIGVhY2ggbG9jYWxlIG1hbnVhbGx5IGluIENocm9tZS5cblxuXG5jb25zdCAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJFVOSVRTID0ge1xuICBkZWdyZWU6IHtcbiAgICBuYXJyb3c6IHtcbiAgICAgIGRlZmF1bHQ6ICfCsCcsXG4gICAgICAnamEtSlAnOiAnIOW6picsXG4gICAgICAnemgtVFcnOiAn5bqmJyxcbiAgICAgICdzbC1TSSc6ICcgwrAnIC8vIEFyYWJpYz8/IEJ1dCBTYWZhcmkgYWxyZWFkeSBkb2Vzbid0IHVzZSBBcmFiaWMgZGlnaXRzIHNvIG1pZ2h0IGJlIG9rLi4uXG4gICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MTM5XG5cbiAgICB9XG4gIH1cbn07XG5cbi8qKlxuICogQSB3cmFwcGVyIGFyb3VuZCBJbnRsLk51bWJlckZvcm1hdCBwcm92aWRpbmcgYWRkaXRpb25hbCBvcHRpb25zLCBwb2x5ZmlsbHMsIGFuZCBjYWNoaW5nIGZvciBwZXJmb3JtYW5jZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE51bWJlckZvcm1hdHRlciB7XG4gIGNvbnN0cnVjdG9yKGxvY2FsZSwgb3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICAgIG9wdGlvbnMgPSB7fTtcbiAgICB9XG5cbiAgICB0aGlzLm51bWJlckZvcm1hdHRlciA9IHZvaWQgMDtcbiAgICB0aGlzLm9wdGlvbnMgPSB2b2lkIDA7XG4gICAgdGhpcy5udW1iZXJGb3JtYXR0ZXIgPSAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGdldENhY2hlZE51bWJlckZvcm1hdHRlcihsb2NhbGUsIG9wdGlvbnMpO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBmb3JtYXQodmFsdWUpIHtcbiAgICBsZXQgcmVzID0gJyc7XG5cbiAgICBpZiAoISRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNTaWduRGlzcGxheSAmJiB0aGlzLm9wdGlvbnMuc2lnbkRpc3BsYXkgIT0gbnVsbCkge1xuICAgICAgcmVzID0gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJGV4cG9ydCRudW1iZXJGb3JtYXRTaWduRGlzcGxheVBvbHlmaWxsKHRoaXMubnVtYmVyRm9ybWF0dGVyLCB0aGlzLm9wdGlvbnMuc2lnbkRpc3BsYXksIHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzID0gdGhpcy5udW1iZXJGb3JtYXR0ZXIuZm9ybWF0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnN0eWxlID09PSAndW5pdCcgJiYgISRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiR2YXIkc3VwcG9ydHNVbml0KSB7XG4gICAgICB2YXIgX1VOSVRTJHVuaXQ7XG5cbiAgICAgIGxldCB7XG4gICAgICAgIHVuaXQsXG4gICAgICAgIHVuaXREaXNwbGF5ID0gJ3Nob3J0JyxcbiAgICAgICAgbG9jYWxlXG4gICAgICB9ID0gdGhpcy5yZXNvbHZlZE9wdGlvbnMoKTtcbiAgICAgIGxldCB2YWx1ZXMgPSAoX1VOSVRTJHVuaXQgPSAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJFVOSVRTW3VuaXRdKSA9PSBudWxsID8gdm9pZCAwIDogX1VOSVRTJHVuaXRbdW5pdERpc3BsYXldO1xuICAgICAgcmVzICs9IHZhbHVlc1tsb2NhbGVdIHx8IHZhbHVlcy5kZWZhdWx0O1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBmb3JtYXRUb1BhcnRzKHZhbHVlKSB7XG4gICAgLy8gVE9ETzogaW1wbGVtZW50IHNpZ25EaXNwbGF5IGZvciBmb3JtYXRUb1BhcnRzXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiB0aGlzLm51bWJlckZvcm1hdHRlci5mb3JtYXRUb1BhcnRzKHZhbHVlKTtcbiAgfVxuXG4gIHJlc29sdmVkT3B0aW9ucygpIHtcbiAgICBsZXQgb3B0aW9ucyA9IHRoaXMubnVtYmVyRm9ybWF0dGVyLnJlc29sdmVkT3B0aW9ucygpO1xuXG4gICAgaWYgKCEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzU2lnbkRpc3BsYXkgJiYgdGhpcy5vcHRpb25zLnNpZ25EaXNwbGF5ICE9IG51bGwpIHtcbiAgICAgIG9wdGlvbnMgPSBfYmFiZWxSdW50aW1lSGVscGVyc0VzbUV4dGVuZHMoe30sIG9wdGlvbnMsIHtcbiAgICAgICAgc2lnbkRpc3BsYXk6IHRoaXMub3B0aW9ucy5zaWduRGlzcGxheVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKCEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCAmJiB0aGlzLm9wdGlvbnMuc3R5bGUgPT09ICd1bml0Jykge1xuICAgICAgb3B0aW9ucyA9IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyh7fSwgb3B0aW9ucywge1xuICAgICAgICBzdHlsZTogJ3VuaXQnLFxuICAgICAgICB1bml0OiB0aGlzLm9wdGlvbnMudW5pdCxcbiAgICAgICAgdW5pdERpc3BsYXk6IHRoaXMub3B0aW9ucy51bml0RGlzcGxheVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cblxufVxuXG5mdW5jdGlvbiAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGdldENhY2hlZE51bWJlckZvcm1hdHRlcihsb2NhbGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIGxldCB7XG4gICAgbnVtYmVyaW5nU3lzdGVtXG4gIH0gPSBvcHRpb25zO1xuXG4gIGlmIChudW1iZXJpbmdTeXN0ZW0gJiYgbG9jYWxlLmluZGV4T2YoJy11LW51LScpID09PSAtMSkge1xuICAgIGxvY2FsZSA9IGxvY2FsZSArIFwiLXUtbnUtXCIgKyBudW1iZXJpbmdTeXN0ZW07XG4gIH1cblxuICBpZiAob3B0aW9ucy5zdHlsZSA9PT0gJ3VuaXQnICYmICEkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJHN1cHBvcnRzVW5pdCkge1xuICAgIHZhciBfVU5JVFMkdW5pdDI7XG5cbiAgICBsZXQge1xuICAgICAgdW5pdCxcbiAgICAgIHVuaXREaXNwbGF5ID0gJ3Nob3J0J1xuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgaWYgKCF1bml0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3VuaXQgb3B0aW9uIG11c3QgYmUgcHJvdmlkZWQgd2l0aCBzdHlsZTogXCJ1bml0XCInKTtcbiAgICB9XG5cbiAgICBpZiAoISgoX1VOSVRTJHVuaXQyID0gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJHZhciRVTklUU1t1bml0XSkgIT0gbnVsbCAmJiBfVU5JVFMkdW5pdDJbdW5pdERpc3BsYXldKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgdW5pdCBcIiArIHVuaXQgKyBcIiB3aXRoIHVuaXREaXNwbGF5ID0gXCIgKyB1bml0RGlzcGxheSk7XG4gICAgfVxuXG4gICAgb3B0aW9ucyA9IF9iYWJlbFJ1bnRpbWVIZWxwZXJzRXNtRXh0ZW5kcyh7fSwgb3B0aW9ucywge1xuICAgICAgc3R5bGU6ICdkZWNpbWFsJ1xuICAgIH0pO1xuICB9XG5cbiAgbGV0IGNhY2hlS2V5ID0gbG9jYWxlICsgKG9wdGlvbnMgPyBPYmplY3QuZW50cmllcyhvcHRpb25zKS5zb3J0KChhLCBiKSA9PiBhWzBdIDwgYlswXSA/IC0xIDogMSkuam9pbigpIDogJycpO1xuXG4gIGlmICgkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlLmhhcyhjYWNoZUtleSkpIHtcbiAgICByZXR1cm4gJGZlODdmMjJkZWFjNGRlYmYzZWFiMmNhNmE4OTYwMmFiJHZhciRmb3JtYXR0ZXJDYWNoZS5nZXQoY2FjaGVLZXkpO1xuICB9XG5cbiAgbGV0IG51bWJlckZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUsIG9wdGlvbnMpO1xuICAkZmU4N2YyMmRlYWM0ZGViZjNlYWIyY2E2YTg5NjAyYWIkdmFyJGZvcm1hdHRlckNhY2hlLnNldChjYWNoZUtleSwgbnVtYmVyRm9ybWF0dGVyKTtcbiAgcmV0dXJuIG51bWJlckZvcm1hdHRlcjtcbn1cbi8qKiBAcHJpdmF0ZSAtIGV4cG9ydGVkIGZvciB0ZXN0cyAqL1xuXG5cbmZ1bmN0aW9uICRmZTg3ZjIyZGVhYzRkZWJmM2VhYjJjYTZhODk2MDJhYiRleHBvcnQkbnVtYmVyRm9ybWF0U2lnbkRpc3BsYXlQb2x5ZmlsbChudW1iZXJGb3JtYXQsIHNpZ25EaXNwbGF5LCBudW0pIHtcbiAgaWYgKHNpZ25EaXNwbGF5ID09PSAnYXV0bycpIHtcbiAgICByZXR1cm4gbnVtYmVyRm9ybWF0LmZvcm1hdChudW0pO1xuICB9IGVsc2UgaWYgKHNpZ25EaXNwbGF5ID09PSAnbmV2ZXInKSB7XG4gICAgcmV0dXJuIG51bWJlckZvcm1hdC5mb3JtYXQoTWF0aC5hYnMobnVtKSk7XG4gIH0gZWxzZSB7XG4gICAgbGV0IG5lZWRzUG9zaXRpdmVTaWduID0gZmFsc2U7XG5cbiAgICBpZiAoc2lnbkRpc3BsYXkgPT09ICdhbHdheXMnKSB7XG4gICAgICBuZWVkc1Bvc2l0aXZlU2lnbiA9IG51bSA+IDAgfHwgT2JqZWN0LmlzKG51bSwgMCk7XG4gICAgfSBlbHNlIGlmIChzaWduRGlzcGxheSA9PT0gJ2V4Y2VwdFplcm8nKSB7XG4gICAgICBpZiAoT2JqZWN0LmlzKG51bSwgLTApIHx8IE9iamVjdC5pcyhudW0sIDApKSB7XG4gICAgICAgIG51bSA9IE1hdGguYWJzKG51bSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZWVkc1Bvc2l0aXZlU2lnbiA9IG51bSA+IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5lZWRzUG9zaXRpdmVTaWduKSB7XG4gICAgICBsZXQgbmVnYXRpdmUgPSBudW1iZXJGb3JtYXQuZm9ybWF0KC1udW0pO1xuICAgICAgbGV0IG5vU2lnbiA9IG51bWJlckZvcm1hdC5mb3JtYXQobnVtKTsgLy8gaWdub3JlIFJUTC9MVFIgbWFya2VyIGNoYXJhY3RlclxuXG4gICAgICBsZXQgbWludXMgPSBuZWdhdGl2ZS5yZXBsYWNlKG5vU2lnbiwgJycpLnJlcGxhY2UoL1xcdTIwMGV8XFx1MDYxQy8sICcnKTtcblxuICAgICAgaWYgKFsuLi5taW51c10ubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignQHJlYWN0LWFyaWEvaTE4biBwb2x5ZmlsbCBmb3IgTnVtYmVyRm9ybWF0IHNpZ25EaXNwbGF5OiBVbnN1cHBvcnRlZCBjYXNlJyk7XG4gICAgICB9XG5cbiAgICAgIGxldCBwb3NpdGl2ZSA9IG5lZ2F0aXZlLnJlcGxhY2Uobm9TaWduLCAnISEhJykucmVwbGFjZShtaW51cywgJysnKS5yZXBsYWNlKCchISEnLCBub1NpZ24pO1xuICAgICAgcmV0dXJuIHBvc2l0aXZlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVtYmVyRm9ybWF0LmZvcm1hdChudW0pO1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkQ1VSUkVOQ1lfU0lHTl9SRUdFWCA9IG5ldyBSZWdFeHAoJ14uKlxcXFwoLipcXFxcKS4qJCcpO1xuY29uc3QgJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJE5VTUJFUklOR19TWVNURU1TID0gWydsYXRuJywgJ2FyYWInLCAnaGFuaWRlYyddO1xuLyoqXG4gKiBBIE51bWJlclBhcnNlciBjYW4gYmUgdXNlZCBwZXJmb3JtIGxvY2FsZSBhd2FyZSBwYXJzaW5nIG9mIG51bWJlcnMgZnJvbSBVbmljb2RlIHN0cmluZ3MsXG4gKiBhcyB3ZWxsIGFzIHZhbGlkYXRpb24gb2YgcGFydGlhbCB1c2VyIGlucHV0LiBBdXRvbWF0aWNhbGx5IGRldGVjdHMgdGhlIG51bWJlcmluZyBzeXN0ZW1cbiAqIHVzZWQgaW4gdGhlIGlucHV0LCBhbmQgc3VwcG9ydHMgcGFyc2luZyBkZWNpbWFscywgcGVyY2VudGFnZXMsIGN1cnJlbmN5IHZhbHVlcywgYW5kIHVuaXRzXG4gKiBhY2NvcmRpbmcgdG8gdGhlIGxvY2FsZS5cbiAqL1xuXG5leHBvcnQgY2xhc3MgTnVtYmVyUGFyc2VyIHtcbiAgY29uc3RydWN0b3IobG9jYWxlLCBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgICAgb3B0aW9ucyA9IHt9O1xuICAgIH1cblxuICAgIHRoaXMubG9jYWxlID0gdm9pZCAwO1xuICAgIHRoaXMub3B0aW9ucyA9IHZvaWQgMDtcbiAgICB0aGlzLmxvY2FsZSA9IGxvY2FsZTtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG4gIC8qKlxuICAgKiBQYXJzZXMgdGhlIGdpdmVuIHN0cmluZyB0byBhIG51bWJlci4gUmV0dXJucyBOYU4gaWYgYSB2YWxpZCBudW1iZXIgY291bGQgbm90IGJlIHBhcnNlZC5cbiAgICovXG5cblxuICBwYXJzZSh2YWx1ZSkge1xuICAgIHJldHVybiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0TnVtYmVyUGFyc2VySW1wbCh0aGlzLmxvY2FsZSwgdGhpcy5vcHRpb25zLCB2YWx1ZSkucGFyc2UodmFsdWUpO1xuICB9XG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgdGhlIGdpdmVuIHN0cmluZyBjb3VsZCBwb3RlbnRpYWxseSBiZSBhIHZhbGlkIG51bWJlci4gVGhpcyBzaG91bGQgYmUgdXNlZCB0b1xuICAgKiB2YWxpZGF0ZSB1c2VyIGlucHV0IGFzIHRoZSB1c2VyIHR5cGVzLiBJZiBhIGBtaW5WYWx1ZWAgb3IgYG1heFZhbHVlYCBpcyBwcm92aWRlZCwgdGhlIHZhbGlkaXR5XG4gICAqIG9mIHRoZSBtaW51cy9wbHVzIHNpZ24gY2hhcmFjdGVycyBjYW4gYmUgY2hlY2tlZC5cbiAgICovXG5cblxuICBpc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSwgbWluVmFsdWUsIG1heFZhbHVlKSB7XG4gICAgcmV0dXJuICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKHRoaXMubG9jYWxlLCB0aGlzLm9wdGlvbnMsIHZhbHVlKS5pc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSwgbWluVmFsdWUsIG1heFZhbHVlKTtcbiAgfVxuICAvKipcbiAgICogUmV0dXJucyBhIG51bWJlcmluZyBzeXN0ZW0gZm9yIHdoaWNoIHRoZSBnaXZlbiBzdHJpbmcgaXMgdmFsaWQgaW4gdGhlIGN1cnJlbnQgbG9jYWxlLlxuICAgKiBJZiBubyBudW1iZXJpbmcgc3lzdGVtIGNvdWxkIGJlIGRldGVjdGVkLCB0aGUgZGVmYXVsdCBudW1iZXJpbmcgc3lzdGVtIGZvciB0aGUgY3VycmVudFxuICAgKiBsb2NhbGUgaXMgcmV0dXJuZWQuXG4gICAqL1xuXG5cbiAgZ2V0TnVtYmVyaW5nU3lzdGVtKHZhbHVlKSB7XG4gICAgcmV0dXJuICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKHRoaXMubG9jYWxlLCB0aGlzLm9wdGlvbnMsIHZhbHVlKS5vcHRpb25zLm51bWJlcmluZ1N5c3RlbTtcbiAgfVxuXG59XG5jb25zdCAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbnVtYmVyUGFyc2VyQ2FjaGUgPSBuZXcgTWFwKCk7XG5cbmZ1bmN0aW9uICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXROdW1iZXJQYXJzZXJJbXBsKGxvY2FsZSwgb3B0aW9ucywgdmFsdWUpIHtcbiAgLy8gRmlyc3QgdHJ5IHRoZSBkZWZhdWx0IG51bWJlcmluZyBzeXN0ZW0gZm9yIHRoZSBwcm92aWRlZCBsb2NhbGVcbiAgbGV0IGRlZmF1bHRQYXJzZXIgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0Q2FjaGVkTnVtYmVyUGFyc2VyKGxvY2FsZSwgb3B0aW9ucyk7IC8vIElmIHRoYXQgZG9lc24ndCBtYXRjaCwgYW5kIHRoZSBsb2NhbGUgZG9lc24ndCBpbmNsdWRlIGEgaGFyZCBjb2RlZCBudW1iZXJpbmcgc3lzdGVtLFxuICAvLyB0cnkgZWFjaCBvZiB0aGUgb3RoZXIgc3VwcG9ydGVkIG51bWJlcmluZyBzeXN0ZW1zIHVudGlsIHdlIGZpbmQgb25lIHRoYXQgbWF0Y2hlcy5cblxuICBpZiAoIWxvY2FsZS5pbmNsdWRlcygnLW51LScpICYmICFkZWZhdWx0UGFyc2VyLmlzVmFsaWRQYXJ0aWFsTnVtYmVyKHZhbHVlKSkge1xuICAgIGZvciAobGV0IG51bWJlcmluZ1N5c3RlbSBvZiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkTlVNQkVSSU5HX1NZU1RFTVMpIHtcbiAgICAgIGlmIChudW1iZXJpbmdTeXN0ZW0gIT09IGRlZmF1bHRQYXJzZXIub3B0aW9ucy5udW1iZXJpbmdTeXN0ZW0pIHtcbiAgICAgICAgbGV0IHBhcnNlciA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXRDYWNoZWROdW1iZXJQYXJzZXIobG9jYWxlICsgKGxvY2FsZS5pbmNsdWRlcygnLXUtJykgPyAnLW51LScgOiAnLXUtbnUtJykgKyBudW1iZXJpbmdTeXN0ZW0sIG9wdGlvbnMpO1xuXG4gICAgICAgIGlmIChwYXJzZXIuaXNWYWxpZFBhcnRpYWxOdW1iZXIodmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHBhcnNlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZWZhdWx0UGFyc2VyO1xufVxuXG5mdW5jdGlvbiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0Q2FjaGVkTnVtYmVyUGFyc2VyKGxvY2FsZSwgb3B0aW9ucykge1xuICBsZXQgY2FjaGVLZXkgPSBsb2NhbGUgKyAob3B0aW9ucyA/IE9iamVjdC5lbnRyaWVzKG9wdGlvbnMpLnNvcnQoKGEsIGIpID0+IGFbMF0gPCBiWzBdID8gLTEgOiAxKS5qb2luKCkgOiAnJyk7XG4gIGxldCBwYXJzZXIgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbnVtYmVyUGFyc2VyQ2FjaGUuZ2V0KGNhY2hlS2V5KTtcblxuICBpZiAoIXBhcnNlcikge1xuICAgIHBhcnNlciA9IG5ldyAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkTnVtYmVyUGFyc2VySW1wbChsb2NhbGUsIG9wdGlvbnMpO1xuICAgICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRudW1iZXJQYXJzZXJDYWNoZS5zZXQoY2FjaGVLZXksIHBhcnNlcik7XG4gIH1cblxuICByZXR1cm4gcGFyc2VyO1xufSAvLyBUaGUgYWN0dWFsIG51bWJlciBwYXJzZXIgaW1wbGVtZW50YXRpb24uIEluc3RhbmNlcyBvZiB0aGlzIGNsYXNzIGFyZSBjYWNoZWRcbi8vIGJhc2VkIG9uIHRoZSBsb2NhbGUsIG9wdGlvbnMsIGFuZCBkZXRlY3RlZCBudW1iZXJpbmcgc3lzdGVtLlxuXG5cbmNsYXNzICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciROdW1iZXJQYXJzZXJJbXBsIHtcbiAgY29uc3RydWN0b3IobG9jYWxlLCBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgICAgb3B0aW9ucyA9IHt9O1xuICAgIH1cblxuICAgIHRoaXMuZm9ybWF0dGVyID0gdm9pZCAwO1xuICAgIHRoaXMub3B0aW9ucyA9IHZvaWQgMDtcbiAgICB0aGlzLnN5bWJvbHMgPSB2b2lkIDA7XG4gICAgdGhpcy5mb3JtYXR0ZXIgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlLCBvcHRpb25zKTtcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmZvcm1hdHRlci5yZXNvbHZlZE9wdGlvbnMoKTtcbiAgICB0aGlzLnN5bWJvbHMgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZ2V0U3ltYm9scyh0aGlzLmZvcm1hdHRlciwgdGhpcy5vcHRpb25zLCBvcHRpb25zKTtcbiAgfVxuXG4gIHBhcnNlKHZhbHVlKSB7XG4gICAgLy8gdG8gcGFyc2UgdGhlIG51bWJlciwgd2UgbmVlZCB0byByZW1vdmUgYW55dGhpbmcgdGhhdCBpc24ndCBhY3R1YWxseSBwYXJ0IG9mIHRoZSBudW1iZXIsIGZvciBleGFtcGxlIHdlIHdhbnQgJy0xMC40MCcgbm90ICctMTAuNDAgVVNEJ1xuICAgIGxldCBmdWxseVNhbml0aXplZFZhbHVlID0gdGhpcy5zYW5pdGl6ZSh2YWx1ZSk7IC8vIFJlbW92ZSBncm91cCBjaGFyYWN0ZXJzLCBhbmQgcmVwbGFjZSBkZWNpbWFsIHBvaW50cyBhbmQgbnVtZXJhbHMgd2l0aCBBU0NJSSB2YWx1ZXMuXG5cbiAgICBmdWxseVNhbml0aXplZFZhbHVlID0gJGUxYTIyODQxYWQ1MTEzYTA1NGM4ZWJlNTViMjRlMWEkdmFyJHJlcGxhY2VBbGwoZnVsbHlTYW5pdGl6ZWRWYWx1ZSwgdGhpcy5zeW1ib2xzLmdyb3VwLCAnJykucmVwbGFjZSh0aGlzLnN5bWJvbHMuZGVjaW1hbCwgJy4nKS5yZXBsYWNlKHRoaXMuc3ltYm9scy5taW51c1NpZ24sICctJykucmVwbGFjZSh0aGlzLnN5bWJvbHMubnVtZXJhbCwgdGhpcy5zeW1ib2xzLmluZGV4KTtcbiAgICBsZXQgbmV3VmFsdWUgPSBmdWxseVNhbml0aXplZFZhbHVlID8gK2Z1bGx5U2FuaXRpemVkVmFsdWUgOiBOYU47XG5cbiAgICBpZiAoaXNOYU4obmV3VmFsdWUpKSB7XG4gICAgICByZXR1cm4gTmFOO1xuICAgIH0gLy8gYWNjb3VudGluZyB3aWxsIGFsd2F5cyBiZSBzdHJpcHBlZCB0byBhIHBvc2l0aXZlIG51bWJlciwgc28gaWYgaXQncyBhY2NvdW50aW5nIGFuZCBoYXMgYSAoKSBhcm91bmQgZXZlcnl0aGluZywgdGhlbiB3ZSBuZWVkIHRvIG1ha2UgaXQgbmVnYXRpdmUgYWdhaW5cblxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5jdXJyZW5jeVNpZ24gPT09ICdhY2NvdW50aW5nJyAmJiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkQ1VSUkVOQ1lfU0lHTl9SRUdFWC50ZXN0KHZhbHVlKSkge1xuICAgICAgbmV3VmFsdWUgPSAtMSAqIG5ld1ZhbHVlO1xuICAgIH0gLy8gd2hlbiByZWFkaW5nIHRoZSBudW1iZXIsIGlmIGl0J3MgYSBwZXJjZW50LCB0aGVuIGl0IHNob3VsZCBiZSBpbnRlcnByZXRlZCBhcyBiZWluZyBkaXZpZGVkIGJ5IDEwMFxuXG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnN0eWxlID09PSAncGVyY2VudCcpIHtcbiAgICAgIHZhciBfdGhpcyRvcHRpb25zJG1heGltdW07XG5cbiAgICAgIG5ld1ZhbHVlIC89IDEwMDsgLy8gYWZ0ZXIgZGl2aWRpbmcgdG8gZ2V0IHRoZSBwZXJjZW50IHZhbHVlLCBqYXZhc2NyaXB0IG1heSBnZXQgLjAyMTA5OTk5OTkgaW5zdGVhZCBvZiAuMDIxMSwgc28gZml4IHRoZSBudW1iZXIgb2YgZnJhY3Rpb24gZGlnaXRzXG5cbiAgICAgIG5ld1ZhbHVlID0gK25ld1ZhbHVlLnRvRml4ZWQoKChfdGhpcyRvcHRpb25zJG1heGltdW0gPSB0aGlzLm9wdGlvbnMubWF4aW11bUZyYWN0aW9uRGlnaXRzKSAhPSBudWxsID8gX3RoaXMkb3B0aW9ucyRtYXhpbXVtIDogMCkgKyAyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3VmFsdWU7XG4gIH1cblxuICBzYW5pdGl6ZSh2YWx1ZSkge1xuICAgIC8vIFJlbW92ZSBsaXRlcmFscyBhbmQgd2hpdGVzcGFjZSwgd2hpY2ggYXJlIGFsbG93ZWQgYW55d2hlcmUgaW4gdGhlIHN0cmluZ1xuICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSh0aGlzLnN5bWJvbHMubGl0ZXJhbHMsICcnKTsgLy8gUmVwbGFjZSB0aGUgQVNDSUkgbWludXMgc2lnbiB3aXRoIHRoZSBtaW51cyBzaWduIHVzZWQgaW4gdGhlIGN1cnJlbnQgbG9jYWxlXG4gICAgLy8gc28gdGhhdCBib3RoIGFyZSBhbGxvd2VkIGluIGNhc2UgdGhlIHVzZXIncyBrZXlib2FyZCBkb2Vzbid0IGhhdmUgdGhlIGxvY2FsZSdzIG1pbnVzIHNpZ24uXG5cbiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoJy0nLCB0aGlzLnN5bWJvbHMubWludXNTaWduKTsgLy8gSW4gYXJhYiBudW1lcmFsIHN5c3RlbSwgdGhlaXIgZGVjaW1hbCBjaGFyYWN0ZXIgaXMgMTY0MywgYnV0IG1vc3Qga2V5Ym9hcmRzIGRvbid0IHR5cGUgdGhhdFxuICAgIC8vIGluc3RlYWQgdGhleSB1c2UgdGhlICwgKDQ0KSBjaGFyYWN0ZXIgb3IgYXBwYXJlbnRseSB0aGUgKDE1NDgpIGNoYXJhY3Rlci5cblxuICAgIGlmICh0aGlzLm9wdGlvbnMubnVtYmVyaW5nU3lzdGVtID09PSAnYXJhYicpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgnLCcsIHRoaXMuc3ltYm9scy5kZWNpbWFsKTtcbiAgICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZShTdHJpbmcuZnJvbUNoYXJDb2RlKDE1NDgpLCB0aGlzLnN5bWJvbHMuZGVjaW1hbCk7XG4gICAgICB2YWx1ZSA9ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRyZXBsYWNlQWxsKHZhbHVlLCAnLicsIHRoaXMuc3ltYm9scy5ncm91cCk7XG4gICAgfSAvLyBmci1GUiBncm91cCBjaGFyYWN0ZXIgaXMgY2hhciBjb2RlIDgyMzksIGJ1dCB0aGF0J3Mgbm90IGEga2V5IG9uIHRoZSBmcmVuY2gga2V5Ym9hcmQsXG4gICAgLy8gc28gYWxsb3cgJ3BlcmlvZCcgYXMgYSBncm91cCBjaGFyIGFuZCByZXBsYWNlIGl0IHdpdGggYSBzcGFjZVxuXG5cbiAgICBpZiAodGhpcy5vcHRpb25zLmxvY2FsZSA9PT0gJ2ZyLUZSJykge1xuICAgICAgdmFsdWUgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkcmVwbGFjZUFsbCh2YWx1ZSwgJy4nLCBTdHJpbmcuZnJvbUNoYXJDb2RlKDgyMzkpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBpc1ZhbGlkUGFydGlhbE51bWJlcih2YWx1ZSwgbWluVmFsdWUsIG1heFZhbHVlKSB7XG4gICAgaWYgKG1pblZhbHVlID09PSB2b2lkIDApIHtcbiAgICAgIG1pblZhbHVlID0gLUluZmluaXR5O1xuICAgIH1cblxuICAgIGlmIChtYXhWYWx1ZSA9PT0gdm9pZCAwKSB7XG4gICAgICBtYXhWYWx1ZSA9IEluZmluaXR5O1xuICAgIH1cblxuICAgIHZhbHVlID0gdGhpcy5zYW5pdGl6ZSh2YWx1ZSk7IC8vIFJlbW92ZSBtaW51cyBvciBwbHVzIHNpZ24sIHdoaWNoIG11c3QgYmUgYXQgdGhlIHN0YXJ0IG9mIHRoZSBzdHJpbmcuXG5cbiAgICBpZiAodmFsdWUuc3RhcnRzV2l0aCh0aGlzLnN5bWJvbHMubWludXNTaWduKSAmJiBtaW5WYWx1ZSA8IDApIHtcbiAgICAgIHZhbHVlID0gdmFsdWUuc2xpY2UodGhpcy5zeW1ib2xzLm1pbnVzU2lnbi5sZW5ndGgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5zeW1ib2xzLnBsdXNTaWduICYmIHZhbHVlLnN0YXJ0c1dpdGgodGhpcy5zeW1ib2xzLnBsdXNTaWduKSAmJiBtYXhWYWx1ZSA+IDApIHtcbiAgICAgIHZhbHVlID0gdmFsdWUuc2xpY2UodGhpcy5zeW1ib2xzLnBsdXNTaWduLmxlbmd0aCk7XG4gICAgfSAvLyBOdW1iZXJzIGNhbm5vdCBzdGFydCB3aXRoIGEgZ3JvdXAgc2VwYXJhdG9yXG5cblxuICAgIGlmICh2YWx1ZS5zdGFydHNXaXRoKHRoaXMuc3ltYm9scy5ncm91cCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IC8vIFJlbW92ZSBudW1lcmFscywgZ3JvdXBzLCBhbmQgZGVjaW1hbHNcblxuXG4gICAgdmFsdWUgPSAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkcmVwbGFjZUFsbCh2YWx1ZSwgdGhpcy5zeW1ib2xzLmdyb3VwLCAnJykucmVwbGFjZSh0aGlzLnN5bWJvbHMubnVtZXJhbCwgJycpLnJlcGxhY2UodGhpcy5zeW1ib2xzLmRlY2ltYWwsICcnKTsgLy8gVGhlIG51bWJlciBpcyB2YWxpZCBpZiB0aGVyZSBhcmUgbm8gcmVtYWluaW5nIGNoYXJhY3RlcnNcblxuICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPT09IDA7XG4gIH1cblxufVxuXG5jb25zdCAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbm9uTGl0ZXJhbFBhcnRzID0gbmV3IFNldChbJ2RlY2ltYWwnLCAnZnJhY3Rpb24nLCAnaW50ZWdlcicsICdtaW51c1NpZ24nLCAncGx1c1NpZ24nLCAnZ3JvdXAnXSk7XG5cbmZ1bmN0aW9uICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRnZXRTeW1ib2xzKGZvcm1hdHRlciwgaW50bE9wdGlvbnMsIG9yaWdpbmFsT3B0aW9ucykge1xuICB2YXIgX2FsbFBhcnRzJGZpbmQkdmFsdWUsIF9hbGxQYXJ0cyRmaW5kLCBfcG9zQWxsUGFydHMkZmluZCwgX2FsbFBhcnRzJGZpbmQyLCBfYWxsUGFydHMkZmluZDM7XG5cbiAgLy8gTm90ZTogc29tZSBsb2NhbGUncyBkb24ndCBhZGQgYSBncm91cCBzeW1ib2wgdW50aWwgdGhlcmUgaXMgYSB0ZW4gdGhvdXNhbmRzIHBsYWNlXG4gIGxldCBhbGxQYXJ0cyA9IGZvcm1hdHRlci5mb3JtYXRUb1BhcnRzKC0xMDAwMC4xMTEpO1xuICBsZXQgcG9zQWxsUGFydHMgPSBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cygxMDAwMC4xMTEpO1xuICBsZXQgc2luZ3VsYXJQYXJ0cyA9IGZvcm1hdHRlci5mb3JtYXRUb1BhcnRzKDEpO1xuICBsZXQgbWludXNTaWduID0gKF9hbGxQYXJ0cyRmaW5kJHZhbHVlID0gKF9hbGxQYXJ0cyRmaW5kID0gYWxsUGFydHMuZmluZChwID0+IHAudHlwZSA9PT0gJ21pbnVzU2lnbicpKSA9PSBudWxsID8gdm9pZCAwIDogX2FsbFBhcnRzJGZpbmQudmFsdWUpICE9IG51bGwgPyBfYWxsUGFydHMkZmluZCR2YWx1ZSA6ICctJztcbiAgbGV0IHBsdXNTaWduID0gKF9wb3NBbGxQYXJ0cyRmaW5kID0gcG9zQWxsUGFydHMuZmluZChwID0+IHAudHlwZSA9PT0gJ3BsdXNTaWduJykpID09IG51bGwgPyB2b2lkIDAgOiBfcG9zQWxsUGFydHMkZmluZC52YWx1ZTsgLy8gU2FmYXJpIGRvZXMgbm90IHN1cHBvcnQgdGhlIHNpZ25EaXNwbGF5IG9wdGlvbiwgYnV0IG91ciBudW1iZXIgcGFyc2VyIHBvbHlmaWxscyBpdC5cbiAgLy8gSWYgbm8gcGx1cyBzaWduIHdhcyByZXR1cm5lZCwgYnV0IHRoZSBvcmlnaW5hbCBvcHRpb25zIGNvbnRhaW5lZCBzaWduRGlzcGxheSwgZGVmYXVsdCB0byB0aGUgJysnIGNoYXJhY3Rlci5cbiAgLy8gQHRzLWlnbm9yZVxuXG4gIGlmICghcGx1c1NpZ24gJiYgKChvcmlnaW5hbE9wdGlvbnMgPT0gbnVsbCA/IHZvaWQgMCA6IG9yaWdpbmFsT3B0aW9ucy5zaWduRGlzcGxheSkgPT09ICdleGNlcHRaZXJvJyB8fCAob3JpZ2luYWxPcHRpb25zID09IG51bGwgPyB2b2lkIDAgOiBvcmlnaW5hbE9wdGlvbnMuc2lnbkRpc3BsYXkpID09PSAnYWx3YXlzJykpIHtcbiAgICBwbHVzU2lnbiA9ICcrJztcbiAgfVxuXG4gIGxldCBkZWNpbWFsID0gKF9hbGxQYXJ0cyRmaW5kMiA9IGFsbFBhcnRzLmZpbmQocCA9PiBwLnR5cGUgPT09ICdkZWNpbWFsJykpID09IG51bGwgPyB2b2lkIDAgOiBfYWxsUGFydHMkZmluZDIudmFsdWU7XG4gIGxldCBncm91cCA9IChfYWxsUGFydHMkZmluZDMgPSBhbGxQYXJ0cy5maW5kKHAgPT4gcC50eXBlID09PSAnZ3JvdXAnKSkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hbGxQYXJ0cyRmaW5kMy52YWx1ZTsgLy8gdGhpcyBzZXQgaXMgYWxzbyBmb3IgYSByZWdleCwgaXQncyBhbGwgbGl0ZXJhbHMgdGhhdCBtaWdodCBiZSBpbiB0aGUgc3RyaW5nIHdlIHdhbnQgdG8gZXZlbnR1YWxseSBwYXJzZSB0aGF0XG4gIC8vIGRvbid0IGNvbnRyaWJ1dGUgdG8gdGhlIG51bWVyaWNhbCB2YWx1ZVxuXG4gIGxldCBwbHVyYWxMaXRlcmFscyA9IGFsbFBhcnRzLmZpbHRlcihwID0+ICEkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkbm9uTGl0ZXJhbFBhcnRzLmhhcyhwLnR5cGUpKS5tYXAocCA9PiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZXNjYXBlUmVnZXgocC52YWx1ZSkpO1xuICBsZXQgc2luZ3VsYXJMaXRlcmFscyA9IHNpbmd1bGFyUGFydHMuZmlsdGVyKHAgPT4gISRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRub25MaXRlcmFsUGFydHMuaGFzKHAudHlwZSkpLm1hcChwID0+ICRlMWEyMjg0MWFkNTExM2EwNTRjOGViZTU1YjI0ZTFhJHZhciRlc2NhcGVSZWdleChwLnZhbHVlKSk7XG4gIGxldCBzb3J0ZWRMaXRlcmFscyA9IFsuLi5uZXcgU2V0KFsuLi5zaW5ndWxhckxpdGVyYWxzLCAuLi5wbHVyYWxMaXRlcmFsc10pXS5zb3J0KChhLCBiKSA9PiBiLmxlbmd0aCAtIGEubGVuZ3RoKTtcbiAgbGV0IGxpdGVyYWxzID0gbmV3IFJlZ0V4cChzb3J0ZWRMaXRlcmFscy5qb2luKCd8JykgKyBcInxbXFxcXHB7V2hpdGVfU3BhY2V9XVwiLCAnZ3UnKTsgLy8gVGhlc2UgYXJlIGZvciByZXBsYWNpbmcgbm9uLWxhdG4gY2hhcmFjdGVycyB3aXRoIHRoZSBsYXRuIGVxdWl2YWxlbnRcblxuICBsZXQgbnVtZXJhbHMgPSBbLi4ubmV3IEludGwuTnVtYmVyRm9ybWF0KGludGxPcHRpb25zLmxvY2FsZSwge1xuICAgIHVzZUdyb3VwaW5nOiBmYWxzZVxuICB9KS5mb3JtYXQoOTg3NjU0MzIxMCldLnJldmVyc2UoKTtcbiAgbGV0IGluZGV4ZXMgPSBuZXcgTWFwKG51bWVyYWxzLm1hcCgoZCwgaSkgPT4gW2QsIGldKSk7XG4gIGxldCBudW1lcmFsID0gbmV3IFJlZ0V4cChcIltcIiArIG51bWVyYWxzLmpvaW4oJycpICsgXCJdXCIsICdnJyk7XG5cbiAgbGV0IGluZGV4ID0gZCA9PiBTdHJpbmcoaW5kZXhlcy5nZXQoZCkpO1xuXG4gIHJldHVybiB7XG4gICAgbWludXNTaWduLFxuICAgIHBsdXNTaWduLFxuICAgIGRlY2ltYWwsXG4gICAgZ3JvdXAsXG4gICAgbGl0ZXJhbHMsXG4gICAgbnVtZXJhbCxcbiAgICBpbmRleFxuICB9O1xufVxuXG5mdW5jdGlvbiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkcmVwbGFjZUFsbChzdHIsIGZpbmQsIHJlcGxhY2UpIHtcbiAgLy8gQHRzLWlnbm9yZVxuICBpZiAoc3RyLnJlcGxhY2VBbGwpIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKGZpbmQsIHJlcGxhY2UpO1xuICB9XG5cbiAgcmV0dXJuIHN0ci5zcGxpdChmaW5kKS5qb2luKHJlcGxhY2UpO1xufVxuXG5mdW5jdGlvbiAkZTFhMjI4NDFhZDUxMTNhMDU0YzhlYmU1NWIyNGUxYSR2YXIkZXNjYXBlUmVnZXgoc3RyaW5nKSB7XG4gIHJldHVybiBzdHJpbmcucmVwbGFjZSgvWy0vXFxcXF4kKis/LigpfFtcXF17fV0vZywgJ1xcXFwkJicpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bW9kdWxlLmpzLm1hcFxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/@internationalized/number/dist/module.js\n");
230
230
 
231
231
  /***/ }),
232
232
 
@@ -321,7 +321,7 @@ eval("\n\nif (false) {} else {\n module.exports = __webpack_require__(/*! ./cjs
321
321
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
322
322
 
323
323
  "use strict";
324
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Box\", function() { return Box; });\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js\");\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! styled-components */ \"styled-components\");\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(styled_components__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/handleResponsiveSpacing */ \"./src/helpers/handleResponsiveSpacing.js\");\n\n\nvar _templateObject;\n\n\n\n\n/**\n * Prevents these attributes from being spread on the DOM node\n */\n\nvar transientProps = {\n color: true\n};\nvar Box = styled_components__WEBPACK_IMPORTED_MODULE_2___default.a.div.withConfig({\n shouldForwardProp: function shouldForwardProp(prop, defPropValFN) {\n return !transientProps[prop] && defPropValFN(prop);\n }\n})(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()([\"\\n // Font\\n font-size: \", \";\\n\\n // Colors\\n background: \", \";\\n color: \", \";\\n\\n // Spaces\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n\\n // Responsive hiding\\n \", \"\\n \", \"\\n \\n\\n // Borders\\n border-radius: \", \";\\n border-style: \", \";\\n border-width: \", \";\\n border-color: \", \";\\n border: \", \";\\n\\n // Shadows\\n box-shadow: \", \";\\n\\n // Handlers\\n pointer-events: \", \";\\n &:hover {\\n \", \"\\n }\\n\\n // Display\\n display: \", \";\\n\\n // Position\\n position: \", \";\\n left: \", \";\\n right: \", \";\\n top: \", \";\\n bottom: \", \";\\n z-index: \", \";\\n overflow: \", \";\\n cursor: \", \";\\n\\n // Size\\n width: \", \";\\n max-width: \", \";\\n min-width: \", \";\\n height: \", \";\\n max-height: \", \";\\n min-height: \", \";\\n\\n // Animation\\n transition: \", \";\\n transform: \", \";\\n animation: \", \";\\n\\n //Flexbox children props\\n flex-shrink: \", \";\\n flex-grow: \", \";\\n flex-basis: \", \";\\n flex: \", \";\\n\\n // Text\\n text-align: \", \";\\n text-transform: \", \";\\n line-height: \", \";\\n\\n // Cursor\\n cursor: \", \";\\n\"])), function (_ref) {\n var fontSize = _ref.fontSize,\n theme = _ref.theme;\n return theme.fontSizes[fontSize] || fontSize;\n}, function (_ref2) {\n var theme = _ref2.theme,\n background = _ref2.background;\n return theme.colors[background];\n}, function (_ref3) {\n var theme = _ref3.theme,\n color = _ref3.color;\n return theme.colors[color];\n}, function (_ref4) {\n var theme = _ref4.theme,\n padding = _ref4.padding;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding', padding, theme);\n}, function (_ref5) {\n var theme = _ref5.theme,\n paddingTop = _ref5.paddingTop;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-top', paddingTop, theme);\n}, function (_ref6) {\n var theme = _ref6.theme,\n paddingRight = _ref6.paddingRight;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-right', paddingRight, theme);\n}, function (_ref7) {\n var theme = _ref7.theme,\n paddingBottom = _ref7.paddingBottom;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-bottom', paddingBottom, theme);\n}, function (_ref8) {\n var theme = _ref8.theme,\n paddingLeft = _ref8.paddingLeft;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-left', paddingLeft, theme);\n}, function (_ref9) {\n var theme = _ref9.theme,\n marginLeft = _ref9.marginLeft;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-left', marginLeft, theme);\n}, function (_ref10) {\n var theme = _ref10.theme,\n marginRight = _ref10.marginRight;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-right', marginRight, theme);\n}, function (_ref11) {\n var theme = _ref11.theme,\n marginTop = _ref11.marginTop;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-top', marginTop, theme);\n}, function (_ref12) {\n var theme = _ref12.theme,\n marginBottom = _ref12.marginBottom;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-bottom', marginBottom, theme);\n}, function (_ref13) {\n var theme = _ref13.theme,\n hiddenS = _ref13.hiddenS;\n return hiddenS ? \"\".concat(theme.mediaQueries.tablet, \" { display: none; }\") : undefined;\n}, function (_ref14) {\n var theme = _ref14.theme,\n hiddenXS = _ref14.hiddenXS;\n return hiddenXS ? \"\".concat(theme.mediaQueries.mobile, \" { display: none; }\") : undefined;\n}, function (_ref15) {\n var theme = _ref15.theme,\n hasRadius = _ref15.hasRadius,\n borderRadius = _ref15.borderRadius;\n return hasRadius ? theme.borderRadius : borderRadius;\n}, function (_ref16) {\n var borderStyle = _ref16.borderStyle;\n return borderStyle;\n}, function (_ref17) {\n var borderWidth = _ref17.borderWidth;\n return borderWidth;\n}, function (_ref18) {\n var borderColor = _ref18.borderColor,\n theme = _ref18.theme;\n return theme.colors[borderColor];\n}, function (_ref19) {\n var theme = _ref19.theme,\n borderColor = _ref19.borderColor,\n borderStyle = _ref19.borderStyle,\n borderWidth = _ref19.borderWidth;\n\n // This condition prevents borderColor from override the border-color attribute when not passing borderStyle nor borderWidth\n if (borderColor && !borderStyle && !borderWidth) {\n return \"1px solid \".concat(theme.colors[borderColor]);\n }\n\n return undefined;\n}, function (_ref20) {\n var theme = _ref20.theme,\n shadow = _ref20.shadow;\n return theme.shadows[shadow];\n}, function (_ref21) {\n var pointerEvents = _ref21.pointerEvents;\n return pointerEvents;\n}, function (_ref22) {\n var _hover = _ref22._hover,\n theme = _ref22.theme;\n return _hover ? _hover(theme) : undefined;\n}, function (_ref23) {\n var display = _ref23.display;\n return display;\n}, function (_ref24) {\n var position = _ref24.position;\n return position;\n}, function (_ref25) {\n var left = _ref25.left,\n theme = _ref25.theme;\n return theme.spaces[left] || left;\n}, function (_ref26) {\n var right = _ref26.right,\n theme = _ref26.theme;\n return theme.spaces[right] || right;\n}, function (_ref27) {\n var top = _ref27.top,\n theme = _ref27.theme;\n return theme.spaces[top] || top;\n}, function (_ref28) {\n var bottom = _ref28.bottom,\n theme = _ref28.theme;\n return theme.spaces[bottom] || bottom;\n}, function (_ref29) {\n var zIndex = _ref29.zIndex;\n return zIndex;\n}, function (_ref30) {\n var overflow = _ref30.overflow;\n return overflow;\n}, function (_ref31) {\n var cursor = _ref31.cursor;\n return cursor;\n}, function (_ref32) {\n var width = _ref32.width,\n theme = _ref32.theme;\n return theme.sizes[width] || width;\n}, function (_ref33) {\n var maxWidth = _ref33.maxWidth,\n theme = _ref33.theme;\n return theme.sizes[maxWidth] || maxWidth;\n}, function (_ref34) {\n var minWidth = _ref34.minWidth,\n theme = _ref34.theme;\n return theme.sizes[minWidth] || minWidth;\n}, function (_ref35) {\n var height = _ref35.height,\n theme = _ref35.theme;\n return theme.sizes[height] || height;\n}, function (_ref36) {\n var maxHeight = _ref36.maxHeight,\n theme = _ref36.theme;\n return theme.sizes[maxHeight] || maxHeight;\n}, function (_ref37) {\n var minHeight = _ref37.minHeight,\n theme = _ref37.theme;\n return theme.sizes[minHeight] || minHeight;\n}, function (_ref38) {\n var transition = _ref38.transition;\n return transition;\n}, function (_ref39) {\n var transform = _ref39.transform;\n return transform;\n}, function (_ref40) {\n var animation = _ref40.animation;\n return animation;\n}, function (_ref41) {\n var shrink = _ref41.shrink;\n return shrink;\n}, function (_ref42) {\n var grow = _ref42.grow;\n return grow;\n}, function (_ref43) {\n var basis = _ref43.basis;\n return basis;\n}, function (_ref44) {\n var flex = _ref44.flex;\n return flex;\n}, function (_ref45) {\n var textAlign = _ref45.textAlign;\n return textAlign;\n}, function (_ref46) {\n var textTransform = _ref46.textTransform;\n return textTransform;\n}, function (_ref47) {\n var lineHeight = _ref47.lineHeight;\n return lineHeight;\n}, function (_ref48) {\n var cursor = _ref48.cursor;\n return cursor;\n});\nBox.displayName = 'Box';\nBox.defaultProps = {\n background: undefined,\n borderColor: undefined,\n color: undefined,\n hiddenS: false,\n hiddenXS: false,\n padding: undefined,\n paddingTop: undefined,\n paddingRight: undefined,\n paddingBottom: undefined,\n paddingLeft: undefined,\n hasRadius: false,\n shadow: undefined,\n children: null,\n shrink: undefined,\n grow: undefined,\n basis: undefined,\n flex: undefined,\n _hover: function _hover() {\n return undefined;\n }\n};\nBox.propTypes = {\n _hover: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.func,\n background: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n basis: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n borderColor: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n children: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.node, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n color: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n flex: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n grow: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n hasRadius: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n hiddenS: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n hiddenXS: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n padding: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingBottom: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingLeft: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingRight: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingTop: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n shadow: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n shrink: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string])\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL3NyYy9Cb3gvQm94LmpzPzRjNjAiXSwibmFtZXMiOlsidHJhbnNpZW50UHJvcHMiLCJjb2xvciIsIkJveCIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJzaG91bGRGb3J3YXJkUHJvcCIsInByb3AiLCJkZWZQcm9wVmFsRk4iLCJmb250U2l6ZSIsInRoZW1lIiwiZm9udFNpemVzIiwiYmFja2dyb3VuZCIsImNvbG9ycyIsInBhZGRpbmciLCJoYW5kbGVSZXNwb25zaXZlU3BhY2luZyIsInBhZGRpbmdUb3AiLCJwYWRkaW5nUmlnaHQiLCJwYWRkaW5nQm90dG9tIiwicGFkZGluZ0xlZnQiLCJtYXJnaW5MZWZ0IiwibWFyZ2luUmlnaHQiLCJtYXJnaW5Ub3AiLCJtYXJnaW5Cb3R0b20iLCJoaWRkZW5TIiwibWVkaWFRdWVyaWVzIiwidGFibGV0IiwidW5kZWZpbmVkIiwiaGlkZGVuWFMiLCJtb2JpbGUiLCJoYXNSYWRpdXMiLCJib3JkZXJSYWRpdXMiLCJib3JkZXJTdHlsZSIsImJvcmRlcldpZHRoIiwiYm9yZGVyQ29sb3IiLCJzaGFkb3ciLCJzaGFkb3dzIiwicG9pbnRlckV2ZW50cyIsIl9ob3ZlciIsImRpc3BsYXkiLCJwb3NpdGlvbiIsImxlZnQiLCJzcGFjZXMiLCJyaWdodCIsInRvcCIsImJvdHRvbSIsInpJbmRleCIsIm92ZXJmbG93IiwiY3Vyc29yIiwid2lkdGgiLCJzaXplcyIsIm1heFdpZHRoIiwibWluV2lkdGgiLCJoZWlnaHQiLCJtYXhIZWlnaHQiLCJtaW5IZWlnaHQiLCJ0cmFuc2l0aW9uIiwidHJhbnNmb3JtIiwiYW5pbWF0aW9uIiwic2hyaW5rIiwiZ3JvdyIsImJhc2lzIiwiZmxleCIsInRleHRBbGlnbiIsInRleHRUcmFuc2Zvcm0iLCJsaW5lSGVpZ2h0IiwiZGlzcGxheU5hbWUiLCJkZWZhdWx0UHJvcHMiLCJjaGlsZHJlbiIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsImZ1bmMiLCJz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Q08sT0FBVixDQUFrQlAsaURBQVMsQ0FBQ00sTUFBNUIsQ0FBbkIsQ0FBcEIsQ0FoQkU7QUFpQmR6QyxRQUFNLEVBQUVtQyxpREFBUyxDQUFDRSxNQWpCSjtBQWtCZGIsUUFBTSxFQUFFVyxpREFBUyxDQUFDRyxTQUFWLENBQW9CLENBQUNILGlEQUFTLENBQUNFLE1BQVgsRUFBbUJGLGlEQUFTLENBQUNFLE1BQTdCLENBQXBCO0FBbEJNLENBQWhCIiwiZmlsZSI6Ii4vc3JjL0JveC9Cb3guanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcgZnJvbSAnLi4vaGVscGVycy9oYW5kbGVSZXNwb25zaXZlU3BhY2luZyc7XG5cbi8qKlxuICogUHJldmVudHMgdGhlc2UgYXR0cmlidXRlcyBmcm9tIGJlaW5nIHNwcmVhZCBvbiB0aGUgRE9NIG5vZGVcbiAqL1xuY29uc3QgdHJhbnNpZW50UHJvcHMgPSB7XG4gIGNvbG9yOiB0cnVlLFxufTtcblxuZXhwb3J0IGNvbnN0IEJveCA9IHN0eWxlZC5kaXYud2l0aENvbmZpZyh7XG4gIHNob3VsZEZvcndhcmRQcm9wOiAocHJvcCwgZGVmUHJvcFZhbEZOKSA9PiAhdHJhbnNpZW50UHJvcHNbcHJvcF0gJiYgZGVmUHJvcFZhbEZOKHByb3ApLFxufSlgXG4gIC8vIEZvbnRcbiAgZm9udC1zaXplOiAkeyh7IGZvbnRTaXplLCB0aGVtZSB9KSA9PiB0aGVtZS5mb250U2l6ZXNbZm9udFNpemVdIHx8IGZvbnRTaXplfTtcblxuICAvLyBDb2xvcnNcbiAgYmFja2dyb3VuZDogJHsoeyB0aGVtZSwgYmFja2dyb3VuZCB9KSA9PiB0aGVtZS5jb2xvcnNbYmFja2dyb3VuZF19O1xuICBjb2xvcjogJHsoeyB0aGVtZSwgY29sb3IgfSkgPT4gdGhlbWUuY29sb3JzW2NvbG9yXX07XG5cbiAgLy8gU3BhY2VzXG4gICR7KHsgdGhlbWUsIHBhZGRpbmcgfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ3BhZGRpbmcnLCBwYWRkaW5nLCB0aGVtZSl9XG4gICR7KHsgdGhlbWUsIHBhZGRpbmdUb3AgfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ3BhZGRpbmctdG9wJywgcGFkZGluZ1RvcCwgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBwYWRkaW5nUmlnaHQgfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ3BhZGRpbmctcmlnaHQnLCBwYWRkaW5nUmlnaHQsIHRoZW1lKX1cbiAgJHsoeyB0aGVtZSwgcGFkZGluZ0JvdHRvbSB9KSA9PiBoYW5kbGVSZXNwb25zaXZlU3BhY2luZygncGFkZGluZy1ib3R0b20nLCBwYWRkaW5nQm90dG9tLCB0aGVtZSl9XG4gICR7KHsgdGhlbWUsIHBhZGRpbmdMZWZ0IH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdwYWRkaW5nLWxlZnQnLCBwYWRkaW5nTGVmdCwgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBtYXJnaW5MZWZ0IH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdtYXJnaW4tbGVmdCcsIG1hcmdpbkxlZnQsIHRoZW1lKX1cbiAgJHsoeyB0aGVtZSwgbWFyZ2luUmlnaHQgfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ21hcmdpbi1yaWdodCcsIG1hcmdpblJpZ2h0LCB0aGVtZSl9XG4gICR7KHsgdGhlbWUsIG1hcmdpblRvcCB9KSA9PiBoYW5kbGVSZXNwb25zaXZlU3BhY2luZygnbWFyZ2luLXRvcCcsIG1hcmdpblRvcCwgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBtYXJnaW5Cb3R0b20gfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ21hcmdpbi1ib3R0b20nLCBtYXJnaW5Cb3R0b20sIHRoZW1lKX1cblxuICAvLyBSZXNwb25zaXZlIGhpZGluZ1xuICAkeyh7IHRoZW1lLCBoaWRkZW5TIH0pID0+IChoaWRkZW5TID8gYCR7dGhlbWUubWVkaWFRdWVyaWVzLnRhYmxldH0geyBkaXNwbGF5OiBub25lOyB9YCA6IHVuZGVmaW5lZCl9XG4gICR7KHsgdGhlbWUsIGhpZGRlblhTIH0pID0+IChoaWRkZW5YUyA/IGAke3RoZW1lLm1lZGlhUXVlcmllcy5tb2JpbGV9IHsgZGlzcGxheTogbm9uZTsgfWAgOiB1bmRlZmluZWQpfVxuICBcblxuICAvLyBCb3JkZXJzXG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWUsIGhhc1JhZGl1cywgYm9yZGVyUmFkaXVzIH0pID0+IChoYXNSYWRpdXMgPyB0aGVtZS5ib3JkZXJSYWRpdXMgOiBib3JkZXJSYWRpdXMpfTtcbiAgYm9yZGVyLXN0eWxlOiAkeyh7IGJvcmRlclN0eWxlIH0pID0+IGJvcmRlclN0eWxlfTtcbiAgYm9yZGVyLXdpZHRoOiAkeyh7IGJvcmRlcldpZHRoIH0pID0+IGJvcmRlcldpZHRofTtcbiAgYm9yZGVyLWNvbG9yOiAkeyh7IGJvcmRlckNvbG9yLCB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnNbYm9yZGVyQ29sb3JdfTtcbiAgYm9yZGVyOiAkeyh7IHRoZW1lLCBib3JkZXJDb2xvciwgYm9yZGVyU3R5bGUsIGJvcmRlcldpZHRoIH0pID0+IHtcbiAgICAvLyBUaGlzIGNvbmRpdGlvbiBwcmV2ZW50cyBib3JkZXJDb2xvciBmcm9tIG92ZXJyaWRlIHRoZSBib3JkZXItY29sb3IgYXR0cmlidXRlIHdoZW4gbm90IHBhc3NpbmcgYm9yZGVyU3R5bGUgbm9yIGJvcmRlcldpZHRoXG4gICAgaWYgKGJvcmRlckNvbG9yICYmICFib3JkZXJTdHlsZSAmJiAhYm9yZGVyV2lkdGgpIHtcbiAgICAgIHJldHVybiBgMXB4IHNvbGlkICR7dGhlbWUuY29sb3JzW2JvcmRlckNvbG9yXX1gO1xuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH19O1xuXG4gIC8vIFNoYWRvd3NcbiAgYm94LXNoYWRvdzogJHsoeyB0aGVtZSwgc2hhZG93IH0pID0+IHRoZW1lLnNoYWRvd3Nbc2hhZG93XX07XG5cbiAgLy8gSGFuZGxlcnNcbiAgcG9pbnRlci1ldmVudHM6ICR7KHsgcG9pbnRlckV2ZW50cyB9KSA9PiBwb2ludGVyRXZlbnRzfTtcbiAgJjpob3ZlciB7XG4gICAgJHsoeyBfaG92ZXIsIHRoZW1lIH0pID0+IChfaG92ZXIgPyBfaG92ZXIodGhlbWUpIDogdW5kZWZpbmVkKX1cbiAgfVxuXG4gIC8vIERpc3BsYXlcbiAgZGlzcGxheTogJHsoeyBkaXNwbGF5IH0pID0+IGRpc3BsYXl9O1xuXG4gIC8vIFBvc2l0aW9uXG4gIHBvc2l0aW9uOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9ufTtcbiAgbGVmdDogJHsoeyBsZWZ0LCB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZXNbbGVmdF0gfHwgbGVmdH07XG4gIHJpZ2h0OiAkeyh7IHJpZ2h0LCB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZXNbcmlnaHRdIHx8IHJpZ2h0fTtcbiAgdG9wOiAkeyh7IHRvcCwgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VzW3RvcF0gfHwgdG9wfTtcbiAgYm90dG9tOiAkeyh7IGJvdHRvbSwgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VzW2JvdHRvbV0gfHwgYm90dG9tfTtcbiAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4fTtcbiAgb3ZlcmZsb3c6ICR7KHsgb3ZlcmZsb3cgfSkgPT4gb3ZlcmZsb3d9O1xuICBjdXJzb3I6ICR7KHsgY3Vyc29yIH0pID0+IGN1cnNvcn07XG5cbiAgLy8gU2l6ZVxuICB3aWR0aDogJHsoeyB3aWR0aCwgdGhlbWUgfSkgPT4gdGhlbWUuc2l6ZXNbd2lkdGhdIHx8IHdpZHRofTtcbiAgbWF4LXdpZHRoOiAkeyh7IG1heFdpZHRoLCB0aGVtZSB9KSA9PiB0aGVtZS5zaXplc1ttYXhXaWR0aF0gfHwgbWF4V2lkdGh9O1xuICBtaW4td2lkdGg6ICR7KHsgbWluV2lkdGgsIHRoZW1lIH0pID0+IHRoZW1lLnNpemVzW21pbldpZHRoXSB8fCBtaW5XaWR0aH07XG4gIGhlaWdodDogJHsoeyBoZWlnaHQsIHRoZW1lIH0pID0+IHRoZW1lLnNpemVzW2hlaWdodF0gfHwgaGVpZ2h0fTtcbiAgbWF4LWhlaWdodDogJHsoeyBtYXhIZWlnaHQsIHRoZW1lIH0pID0+IHRoZW1lLnNpemVzW21heEhlaWdodF0gfHwgbWF4SGVpZ2h0fTtcbiAgbWluLWhlaWdodDogJHsoeyBtaW5IZWlnaHQsIHRoZW1lIH0pID0+IHRoZW1lLnNpemVzW21pbkhlaWdodF0gfHwgbWluSGVpZ2h0fTtcblxuICAvLyBBbmltYXRpb25cbiAgdHJhbnNpdGlvbjogJHsoeyB0cmFuc2l0aW9uIH0pID0+IHRyYW5zaXRpb259O1xuICB0cmFuc2Zvcm06ICR7KHsgdHJhbnNmb3JtIH0pID0+IHRyYW5zZm9ybX07XG4gIGFuaW1hdGlvbjogJHsoeyBhbmltYXRpb24gfSkgPT4gYW5pbWF0aW9ufTtcblxuICAvL0ZsZXhib3ggY2hpbGRyZW4gcHJvcHNcbiAgZmxleC1zaHJpbms6ICR7KHsgc2hyaW5rIH0pID0+IHNocmlua307XG4gIGZsZXgtZ3JvdzogJHsoeyBncm93IH0pID0+IGdyb3d9O1xuICBmbGV4LWJhc2lzOiAkeyh7IGJhc2lzIH0pID0+IGJhc2lzfTtcbiAgZmxleDogJHsoeyBmbGV4IH0pID0+IGZsZXh9O1xuXG4gIC8vIFRleHRcbiAgdGV4dC1hbGlnbjogJHsoeyB0ZXh0QWxpZ24gfSkgPT4gdGV4dEFsaWdufTtcbiAgdGV4dC10cmFuc2Zvcm06ICR7KHsgdGV4dFRyYW5zZm9ybSB9KSA9PiB0ZXh0VHJhbnNmb3JtfTtcbiAgbGluZS1oZWlnaHQ6ICR7KHsgbGluZUhlaWdodCB9KSA9PiBsaW5lSGVpZ2h0fTtcblxuICAvLyBDdXJzb3JcbiAgY3Vyc29yOiAkeyh7IGN1cnNvciB9KSA9PiBjdXJzb3J9O1xuYDtcblxuQm94LmRpc3BsYXlOYW1lID0gJ0JveCc7XG5cbkJveC5kZWZhdWx0UHJvcHMgPSB7XG4gIGJhY2tncm91bmQ6IHVuZGVmaW5lZCxcbiAgYm9yZGVyQ29sb3I6IHVuZGVmaW5lZCxcbiAgY29sb3I6IHVuZGVmaW5lZCxcbiAgaGlkZGVuUzogZmFsc2UsXG4gIGhpZGRlblhTOiBmYWxzZSxcbiAgcGFkZGluZzogdW5kZWZpbmVkLFxuICBwYWRkaW5nVG9wOiB1bmRlZmluZWQsXG4gIHBhZGRpbmdSaWdodDogdW5kZWZpbmVkLFxuICBwYWRkaW5nQm90dG9tOiB1bmRlZmluZWQsXG4gIHBhZGRpbmdMZWZ0OiB1bmRlZmluZWQsXG4gIGhhc1JhZGl1czogZmFsc2UsXG4gIHNoYWRvdzogdW5kZWZpbmVkLFxuICBjaGlsZHJlbjogbnVsbCxcbiAgc2hyaW5rOiB1bmRlZmluZWQsXG4gIGdyb3c6IHVuZGVmaW5lZCxcbiAgYmFzaXM6IHVuZGVmaW5lZCxcbiAgZmxleDogdW5kZWZpbmVkLFxuICBfaG92ZXI6ICgpID0+IHVuZGVmaW5lZCxcbn07XG5cbkJveC5wcm9wVHlwZXMgPSB7XG4gIF9ob3ZlcjogUHJvcFR5cGVzLmZ1bmMsXG4gIGJhY2tncm91bmQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGJhc2lzOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuc3RyaW5nXSksXG4gIGJvcmRlckNvbG9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBjaGlsZHJlbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm5vZGUsIFByb3BUeXBlcy5zdHJpbmddKSxcbiAgY29sb3I6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGZsZXg6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5zdHJpbmddKSxcbiAgZ3JvdzogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLnN0cmluZ10pLFxuICBoYXNSYWRpdXM6IFByb3BUeXBlcy5ib29sLFxuICBoaWRkZW5TOiBQcm9wVHlwZXMuYm9vbCxcbiAgaGlkZGVuWFM6IFByb3BUeXBlcy5ib29sLFxuICBwYWRkaW5nOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubnVtYmVyKV0pLFxuICBwYWRkaW5nQm90dG9tOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubnVtYmVyKV0pLFxuICBwYWRkaW5nTGVmdDogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm51bWJlcildKSxcbiAgcGFkZGluZ1JpZ2h0OiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubnVtYmVyKV0pLFxuICBwYWRkaW5nVG9wOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubnVtYmVyKV0pLFxuICBzaGFkb3c6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHNocmluazogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLnN0cmluZ10pLFxufTtcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/Box/Box.js\n");
324
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Box\", function() { return Box; });\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js\");\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! styled-components */ \"styled-components\");\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(styled_components__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/handleResponsiveSpacing */ \"./src/helpers/handleResponsiveSpacing.js\");\n\n\nvar _templateObject;\n\n\n\n\n/**\n * Prevents these attributes from being spread on the DOM node\n */\n\nvar transientProps = {\n color: true\n};\nvar Box = styled_components__WEBPACK_IMPORTED_MODULE_2___default.a.div.withConfig({\n shouldForwardProp: function shouldForwardProp(prop, defPropValFN) {\n return !transientProps[prop] && defPropValFN(prop);\n }\n})(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()([\"\\n // Font\\n font-size: \", \";\\n\\n // Colors\\n background: \", \";\\n color: \", \";\\n\\n // Spaces\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n \", \"\\n\\n // Responsive hiding\\n \", \"\\n \", \"\\n \\n\\n // Borders\\n border-radius: \", \";\\n border-style: \", \";\\n border-width: \", \";\\n border-color: \", \";\\n border: \", \";\\n\\n // Shadows\\n box-shadow: \", \";\\n\\n // Handlers\\n pointer-events: \", \";\\n &:hover {\\n \", \"\\n }\\n\\n // Display\\n display: \", \";\\n\\n // Position\\n position: \", \";\\n left: \", \";\\n right: \", \";\\n top: \", \";\\n bottom: \", \";\\n z-index: \", \";\\n overflow: \", \";\\n cursor: \", \";\\n\\n // Size\\n width: \", \";\\n max-width: \", \";\\n min-width: \", \";\\n height: \", \";\\n max-height: \", \";\\n min-height: \", \";\\n\\n // Animation\\n transition: \", \";\\n transform: \", \";\\n animation: \", \";\\n\\n //Flexbox children props\\n flex-shrink: \", \";\\n flex-grow: \", \";\\n flex-basis: \", \";\\n flex: \", \";\\n\\n // Text\\n text-align: \", \";\\n text-transform: \", \";\\n line-height: \", \";\\n\\n // Cursor\\n cursor: \", \";\\n\"])), function (_ref) {\n var fontSize = _ref.fontSize,\n theme = _ref.theme;\n return theme.fontSizes[fontSize] || fontSize;\n}, function (_ref2) {\n var theme = _ref2.theme,\n background = _ref2.background;\n return theme.colors[background];\n}, function (_ref3) {\n var theme = _ref3.theme,\n color = _ref3.color;\n return theme.colors[color];\n}, function (_ref4) {\n var theme = _ref4.theme,\n padding = _ref4.padding;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding', padding, theme);\n}, function (_ref5) {\n var theme = _ref5.theme,\n paddingTop = _ref5.paddingTop;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-top', paddingTop, theme);\n}, function (_ref6) {\n var theme = _ref6.theme,\n paddingRight = _ref6.paddingRight;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-right', paddingRight, theme);\n}, function (_ref7) {\n var theme = _ref7.theme,\n paddingBottom = _ref7.paddingBottom;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-bottom', paddingBottom, theme);\n}, function (_ref8) {\n var theme = _ref8.theme,\n paddingLeft = _ref8.paddingLeft;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('padding-left', paddingLeft, theme);\n}, function (_ref9) {\n var theme = _ref9.theme,\n marginLeft = _ref9.marginLeft;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-left', marginLeft, theme);\n}, function (_ref10) {\n var theme = _ref10.theme,\n marginRight = _ref10.marginRight;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-right', marginRight, theme);\n}, function (_ref11) {\n var theme = _ref11.theme,\n marginTop = _ref11.marginTop;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-top', marginTop, theme);\n}, function (_ref12) {\n var theme = _ref12.theme,\n marginBottom = _ref12.marginBottom;\n return Object(_helpers_handleResponsiveSpacing__WEBPACK_IMPORTED_MODULE_3__[\"default\"])('margin-bottom', marginBottom, theme);\n}, function (_ref13) {\n var theme = _ref13.theme,\n hiddenS = _ref13.hiddenS;\n return hiddenS ? \"\".concat(theme.mediaQueries.tablet, \" { display: none; }\") : undefined;\n}, function (_ref14) {\n var theme = _ref14.theme,\n hiddenXS = _ref14.hiddenXS;\n return hiddenXS ? \"\".concat(theme.mediaQueries.mobile, \" { display: none; }\") : undefined;\n}, function (_ref15) {\n var theme = _ref15.theme,\n hasRadius = _ref15.hasRadius,\n borderRadius = _ref15.borderRadius;\n return hasRadius ? theme.borderRadius : borderRadius;\n}, function (_ref16) {\n var borderStyle = _ref16.borderStyle;\n return borderStyle;\n}, function (_ref17) {\n var borderWidth = _ref17.borderWidth;\n return borderWidth;\n}, function (_ref18) {\n var borderColor = _ref18.borderColor,\n theme = _ref18.theme;\n return theme.colors[borderColor];\n}, function (_ref19) {\n var theme = _ref19.theme,\n borderColor = _ref19.borderColor,\n borderStyle = _ref19.borderStyle,\n borderWidth = _ref19.borderWidth;\n\n // This condition prevents borderColor from override the border-color attribute when not passing borderStyle nor borderWidth\n if (borderColor && !borderStyle && !borderWidth) {\n return \"1px solid \".concat(theme.colors[borderColor]);\n }\n\n return undefined;\n}, function (_ref20) {\n var theme = _ref20.theme,\n shadow = _ref20.shadow;\n return theme.shadows[shadow];\n}, function (_ref21) {\n var pointerEvents = _ref21.pointerEvents;\n return pointerEvents;\n}, function (_ref22) {\n var _hover = _ref22._hover,\n theme = _ref22.theme;\n return _hover ? _hover(theme) : undefined;\n}, function (_ref23) {\n var display = _ref23.display;\n return display;\n}, function (_ref24) {\n var position = _ref24.position;\n return position;\n}, function (_ref25) {\n var left = _ref25.left,\n theme = _ref25.theme;\n return theme.spaces[left] || left;\n}, function (_ref26) {\n var right = _ref26.right,\n theme = _ref26.theme;\n return theme.spaces[right] || right;\n}, function (_ref27) {\n var top = _ref27.top,\n theme = _ref27.theme;\n return theme.spaces[top] || top;\n}, function (_ref28) {\n var bottom = _ref28.bottom,\n theme = _ref28.theme;\n return theme.spaces[bottom] || bottom;\n}, function (_ref29) {\n var zIndex = _ref29.zIndex;\n return zIndex;\n}, function (_ref30) {\n var overflow = _ref30.overflow;\n return overflow;\n}, function (_ref31) {\n var cursor = _ref31.cursor;\n return cursor;\n}, function (_ref32) {\n var width = _ref32.width,\n theme = _ref32.theme;\n return theme.spaces[width] || width;\n}, function (_ref33) {\n var maxWidth = _ref33.maxWidth,\n theme = _ref33.theme;\n return theme.spaces[maxWidth] || maxWidth;\n}, function (_ref34) {\n var minWidth = _ref34.minWidth,\n theme = _ref34.theme;\n return theme.spaces[minWidth] || minWidth;\n}, function (_ref35) {\n var height = _ref35.height,\n theme = _ref35.theme;\n return theme.spaces[height] || height;\n}, function (_ref36) {\n var maxHeight = _ref36.maxHeight,\n theme = _ref36.theme;\n return theme.spaces[maxHeight] || maxHeight;\n}, function (_ref37) {\n var minHeight = _ref37.minHeight,\n theme = _ref37.theme;\n return theme.spaces[minHeight] || minHeight;\n}, function (_ref38) {\n var transition = _ref38.transition;\n return transition;\n}, function (_ref39) {\n var transform = _ref39.transform;\n return transform;\n}, function (_ref40) {\n var animation = _ref40.animation;\n return animation;\n}, function (_ref41) {\n var shrink = _ref41.shrink;\n return shrink;\n}, function (_ref42) {\n var grow = _ref42.grow;\n return grow;\n}, function (_ref43) {\n var basis = _ref43.basis;\n return basis;\n}, function (_ref44) {\n var flex = _ref44.flex;\n return flex;\n}, function (_ref45) {\n var textAlign = _ref45.textAlign;\n return textAlign;\n}, function (_ref46) {\n var textTransform = _ref46.textTransform;\n return textTransform;\n}, function (_ref47) {\n var lineHeight = _ref47.lineHeight;\n return lineHeight;\n}, function (_ref48) {\n var cursor = _ref48.cursor;\n return cursor;\n});\nBox.displayName = 'Box';\nBox.defaultProps = {\n background: undefined,\n borderColor: undefined,\n color: undefined,\n hiddenS: false,\n hiddenXS: false,\n padding: undefined,\n paddingTop: undefined,\n paddingRight: undefined,\n paddingBottom: undefined,\n paddingLeft: undefined,\n hasRadius: false,\n shadow: undefined,\n children: null,\n shrink: undefined,\n grow: undefined,\n basis: undefined,\n flex: undefined,\n _hover: function _hover() {\n return undefined;\n }\n};\nBox.propTypes = {\n _hover: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.func,\n background: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n basis: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n borderColor: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n children: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.node, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n color: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n flex: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n grow: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string]),\n hasRadius: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n hiddenS: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n hiddenXS: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n padding: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingBottom: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingLeft: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingRight: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n paddingTop: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number)]),\n shadow: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n shrink: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string])\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL3NyYy9Cb3gvQm94LmpzPzRjNjAiXSwibmFtZXMiOlsidHJhbnNpZW50UHJvcHMiLCJjb2xvciIsIkJveCIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJzaG91bGRGb3J3YXJkUHJvcCIsInByb3AiLCJkZWZQcm9wVmFsRk4iLCJmb250U2l6ZSIsInRoZW1lIiwiZm9udFNpemVzIiwiYmFja2dyb3VuZCIsImNvbG9ycyIsInBhZGRpbmciLCJoYW5kbGVSZXNwb25zaXZlU3BhY2luZyIsInBhZGRpbmdUb3AiLCJwYWRkaW5nUmlnaHQiLCJwYWRkaW5nQm90dG9tIiwicGFkZGluZ0xlZnQiLCJtYXJnaW5MZWZ0IiwibWFyZ2luUmlnaHQiLCJtYXJnaW5Ub3AiLCJtYXJnaW5Cb3R0b20iLCJoaWRkZW5TIiwibWVkaWFRdWVyaWVzIiwidGFibGV0IiwidW5kZWZpbmVkIiwiaGlkZGVuWFMiLCJtb2JpbGUiLCJoYXNSYWRpdXMiLCJib3JkZXJSYWRpdXMiLCJib3JkZXJTdHlsZSIsImJvcmRlcldpZHRoIiwiYm9yZGVyQ29sb3IiLCJzaGFkb3ciLCJzaGFkb3dzIiwicG9pbnRlckV2ZW50cyIsIl9ob3ZlciIsImRpc3BsYXkiLCJwb3NpdGlvbiIsImxlZnQiLCJzcGFjZXMiLCJyaWdodCIsInRvcCIsImJvdHRvbSIsInpJbmRleCIsIm92ZXJmbG93IiwiY3Vyc29yIiwid2lkdGgiLCJtYXhXaWR0aCIsIm1pbldpZHRoIiwiaGVpZ2h0IiwibWF4SGVpZ2h0IiwibWluSGVpZ2h0IiwidHJhbnNpdGlvbiIsInRyYW5zZm9ybSIsImFuaW1hdGlvbiIsInNocmluayIsImdyb3ciLCJiYXNpcyIsImZsZXgiLCJ0ZXh0QWxpZ24iLCJ0ZXh0VHJhbnNmb3JtIiwibGluZUhlaWdodCIsImRpc3BsYXlOYW1lIiwiZGVmYXVsdFByb3BzIiwiY2hpbGRyZW4iLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJmdW5jIiwic3RyaW5nIiwi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Q0FBa0JQLGlEQUFTLENBQUNNLE1BQTVCLENBQW5CLENBQXBCLENBaEJFO0FBaUJkeEMsUUFBTSxFQUFFa0MsaURBQVMsQ0FBQ0UsTUFqQko7QUFrQmRiLFFBQU0sRUFBRVcsaURBQVMsQ0FBQ0csU0FBVixDQUFvQixDQUFDSCxpREFBUyxDQUFDRSxNQUFYLEVBQW1CRixpREFBUyxDQUFDRSxNQUE3QixDQUFwQjtBQWxCTSxDQUFoQiIsImZpbGUiOiIuL3NyYy9Cb3gvQm94LmpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nIGZyb20gJy4uL2hlbHBlcnMvaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcnO1xuXG4vKipcbiAqIFByZXZlbnRzIHRoZXNlIGF0dHJpYnV0ZXMgZnJvbSBiZWluZyBzcHJlYWQgb24gdGhlIERPTSBub2RlXG4gKi9cbmNvbnN0IHRyYW5zaWVudFByb3BzID0ge1xuICBjb2xvcjogdHJ1ZSxcbn07XG5cbmV4cG9ydCBjb25zdCBCb3ggPSBzdHlsZWQuZGl2LndpdGhDb25maWcoe1xuICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3AsIGRlZlByb3BWYWxGTikgPT4gIXRyYW5zaWVudFByb3BzW3Byb3BdICYmIGRlZlByb3BWYWxGTihwcm9wKSxcbn0pYFxuICAvLyBGb250XG4gIGZvbnQtc2l6ZTogJHsoeyBmb250U2l6ZSwgdGhlbWUgfSkgPT4gdGhlbWUuZm9udFNpemVzW2ZvbnRTaXplXSB8fCBmb250U2l6ZX07XG5cbiAgLy8gQ29sb3JzXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUsIGJhY2tncm91bmQgfSkgPT4gdGhlbWUuY29sb3JzW2JhY2tncm91bmRdfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUsIGNvbG9yIH0pID0+IHRoZW1lLmNvbG9yc1tjb2xvcl19O1xuXG4gIC8vIFNwYWNlc1xuICAkeyh7IHRoZW1lLCBwYWRkaW5nIH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdwYWRkaW5nJywgcGFkZGluZywgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBwYWRkaW5nVG9wIH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdwYWRkaW5nLXRvcCcsIHBhZGRpbmdUb3AsIHRoZW1lKX1cbiAgJHsoeyB0aGVtZSwgcGFkZGluZ1JpZ2h0IH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdwYWRkaW5nLXJpZ2h0JywgcGFkZGluZ1JpZ2h0LCB0aGVtZSl9XG4gICR7KHsgdGhlbWUsIHBhZGRpbmdCb3R0b20gfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ3BhZGRpbmctYm90dG9tJywgcGFkZGluZ0JvdHRvbSwgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBwYWRkaW5nTGVmdCB9KSA9PiBoYW5kbGVSZXNwb25zaXZlU3BhY2luZygncGFkZGluZy1sZWZ0JywgcGFkZGluZ0xlZnQsIHRoZW1lKX1cbiAgJHsoeyB0aGVtZSwgbWFyZ2luTGVmdCB9KSA9PiBoYW5kbGVSZXNwb25zaXZlU3BhY2luZygnbWFyZ2luLWxlZnQnLCBtYXJnaW5MZWZ0LCB0aGVtZSl9XG4gICR7KHsgdGhlbWUsIG1hcmdpblJpZ2h0IH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdtYXJnaW4tcmlnaHQnLCBtYXJnaW5SaWdodCwgdGhlbWUpfVxuICAkeyh7IHRoZW1lLCBtYXJnaW5Ub3AgfSkgPT4gaGFuZGxlUmVzcG9uc2l2ZVNwYWNpbmcoJ21hcmdpbi10b3AnLCBtYXJnaW5Ub3AsIHRoZW1lKX1cbiAgJHsoeyB0aGVtZSwgbWFyZ2luQm90dG9tIH0pID0+IGhhbmRsZVJlc3BvbnNpdmVTcGFjaW5nKCdtYXJnaW4tYm90dG9tJywgbWFyZ2luQm90dG9tLCB0aGVtZSl9XG5cbiAgLy8gUmVzcG9uc2l2ZSBoaWRpbmdcbiAgJHsoeyB0aGVtZSwgaGlkZGVuUyB9KSA9PiAoaGlkZGVuUyA/IGAke3RoZW1lLm1lZGlhUXVlcmllcy50YWJsZXR9IHsgZGlzcGxheTogbm9uZTsgfWAgOiB1bmRlZmluZWQpfVxuICAkeyh7IHRoZW1lLCBoaWRkZW5YUyB9KSA9PiAoaGlkZGVuWFMgPyBgJHt0aGVtZS5tZWRpYVF1ZXJpZXMubW9iaWxlfSB7IGRpc3BsYXk6IG5vbmU7IH1gIDogdW5kZWZpbmVkKX1cbiAgXG5cbiAgLy8gQm9yZGVyc1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lLCBoYXNSYWRpdXMsIGJvcmRlclJhZGl1cyB9KSA9PiAoaGFzUmFkaXVzID8gdGhlbWUuYm9yZGVyUmFkaXVzIDogYm9yZGVyUmFkaXVzKX07XG4gIGJvcmRlci1zdHlsZTogJHsoeyBib3JkZXJTdHlsZSB9KSA9PiBib3JkZXJTdHlsZX07XG4gIGJvcmRlci13aWR0aDogJHsoeyBib3JkZXJXaWR0aCB9KSA9PiBib3JkZXJXaWR0aH07XG4gIGJvcmRlci1jb2xvcjogJHsoeyBib3JkZXJDb2xvciwgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzW2JvcmRlckNvbG9yXX07XG4gIGJvcmRlcjogJHsoeyB0aGVtZSwgYm9yZGVyQ29sb3IsIGJvcmRlclN0eWxlLCBib3JkZXJXaWR0aCB9KSA9PiB7XG4gICAgLy8gVGhpcyBjb25kaXRpb24gcHJldmVudHMgYm9yZGVyQ29sb3IgZnJvbSBvdmVycmlkZSB0aGUgYm9yZGVyLWNvbG9yIGF0dHJpYnV0ZSB3aGVuIG5vdCBwYXNzaW5nIGJvcmRlclN0eWxlIG5vciBib3JkZXJXaWR0aFxuICAgIGlmIChib3JkZXJDb2xvciAmJiAhYm9yZGVyU3R5bGUgJiYgIWJvcmRlcldpZHRoKSB7XG4gICAgICByZXR1cm4gYDFweCBzb2xpZCAke3RoZW1lLmNvbG9yc1tib3JkZXJDb2xvcl19YDtcbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9fTtcblxuICAvLyBTaGFkb3dzXG4gIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUsIHNoYWRvdyB9KSA9PiB0aGVtZS5zaGFkb3dzW3NoYWRvd119O1xuXG4gIC8vIEhhbmRsZXJzXG4gIHBvaW50ZXItZXZlbnRzOiAkeyh7IHBvaW50ZXJFdmVudHMgfSkgPT4gcG9pbnRlckV2ZW50c307XG4gICY6aG92ZXIge1xuICAgICR7KHsgX2hvdmVyLCB0aGVtZSB9KSA9PiAoX2hvdmVyID8gX2hvdmVyKHRoZW1lKSA6IHVuZGVmaW5lZCl9XG4gIH1cblxuICAvLyBEaXNwbGF5XG4gIGRpc3BsYXk6ICR7KHsgZGlzcGxheSB9KSA9PiBkaXNwbGF5fTtcblxuICAvLyBQb3NpdGlvblxuICBwb3NpdGlvbjogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbn07XG4gIGxlZnQ6ICR7KHsgbGVmdCwgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VzW2xlZnRdIHx8IGxlZnR9O1xuICByaWdodDogJHsoeyByaWdodCwgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VzW3JpZ2h0XSB8fCByaWdodH07XG4gIHRvcDogJHsoeyB0b3AsIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1t0b3BdIHx8IHRvcH07XG4gIGJvdHRvbTogJHsoeyBib3R0b20sIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1tib3R0b21dIHx8IGJvdHRvbX07XG4gIHotaW5kZXg6ICR7KHsgekluZGV4IH0pID0+IHpJbmRleH07XG4gIG92ZXJmbG93OiAkeyh7IG92ZXJmbG93IH0pID0+IG92ZXJmbG93fTtcbiAgY3Vyc29yOiAkeyh7IGN1cnNvciB9KSA9PiBjdXJzb3J9O1xuXG4gIC8vIFNpemVcbiAgd2lkdGg6ICR7KHsgd2lkdGgsIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1t3aWR0aF0gfHwgd2lkdGh9O1xuICBtYXgtd2lkdGg6ICR7KHsgbWF4V2lkdGgsIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1ttYXhXaWR0aF0gfHwgbWF4V2lkdGh9O1xuICBtaW4td2lkdGg6ICR7KHsgbWluV2lkdGgsIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1ttaW5XaWR0aF0gfHwgbWluV2lkdGh9O1xuICBoZWlnaHQ6ICR7KHsgaGVpZ2h0LCB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZXNbaGVpZ2h0XSB8fCBoZWlnaHR9O1xuICBtYXgtaGVpZ2h0OiAkeyh7IG1heEhlaWdodCwgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VzW21heEhlaWdodF0gfHwgbWF4SGVpZ2h0fTtcbiAgbWluLWhlaWdodDogJHsoeyBtaW5IZWlnaHQsIHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlc1ttaW5IZWlnaHRdIHx8IG1pbkhlaWdodH07XG5cbiAgLy8gQW5pbWF0aW9uXG4gIHRyYW5zaXRpb246ICR7KHsgdHJhbnNpdGlvbiB9KSA9PiB0cmFuc2l0aW9ufTtcbiAgdHJhbnNmb3JtOiAkeyh7IHRyYW5zZm9ybSB9KSA9PiB0cmFuc2Zvcm19O1xuICBhbmltYXRpb246ICR7KHsgYW5pbWF0aW9uIH0pID0+IGFuaW1hdGlvbn07XG5cbiAgLy9GbGV4Ym94IGNoaWxkcmVuIHByb3BzXG4gIGZsZXgtc2hyaW5rOiAkeyh7IHNocmluayB9KSA9PiBzaHJpbmt9O1xuICBmbGV4LWdyb3c6ICR7KHsgZ3JvdyB9KSA9PiBncm93fTtcbiAgZmxleC1iYXNpczogJHsoeyBiYXNpcyB9KSA9PiBiYXNpc307XG4gIGZsZXg6ICR7KHsgZmxleCB9KSA9PiBmbGV4fTtcblxuICAvLyBUZXh0XG4gIHRleHQtYWxpZ246ICR7KHsgdGV4dEFsaWduIH0pID0+IHRleHRBbGlnbn07XG4gIHRleHQtdHJhbnNmb3JtOiAkeyh7IHRleHRUcmFuc2Zvcm0gfSkgPT4gdGV4dFRyYW5zZm9ybX07XG4gIGxpbmUtaGVpZ2h0OiAkeyh7IGxpbmVIZWlnaHQgfSkgPT4gbGluZUhlaWdodH07XG5cbiAgLy8gQ3Vyc29yXG4gIGN1cnNvcjogJHsoeyBjdXJzb3IgfSkgPT4gY3Vyc29yfTtcbmA7XG5cbkJveC5kaXNwbGF5TmFtZSA9ICdCb3gnO1xuXG5Cb3guZGVmYXVsdFByb3BzID0ge1xuICBiYWNrZ3JvdW5kOiB1bmRlZmluZWQsXG4gIGJvcmRlckNvbG9yOiB1bmRlZmluZWQsXG4gIGNvbG9yOiB1bmRlZmluZWQsXG4gIGhpZGRlblM6IGZhbHNlLFxuICBoaWRkZW5YUzogZmFsc2UsXG4gIHBhZGRpbmc6IHVuZGVmaW5lZCxcbiAgcGFkZGluZ1RvcDogdW5kZWZpbmVkLFxuICBwYWRkaW5nUmlnaHQ6IHVuZGVmaW5lZCxcbiAgcGFkZGluZ0JvdHRvbTogdW5kZWZpbmVkLFxuICBwYWRkaW5nTGVmdDogdW5kZWZpbmVkLFxuICBoYXNSYWRpdXM6IGZhbHNlLFxuICBzaGFkb3c6IHVuZGVmaW5lZCxcbiAgY2hpbGRyZW46IG51bGwsXG4gIHNocmluazogdW5kZWZpbmVkLFxuICBncm93OiB1bmRlZmluZWQsXG4gIGJhc2lzOiB1bmRlZmluZWQsXG4gIGZsZXg6IHVuZGVmaW5lZCxcbiAgX2hvdmVyOiAoKSA9PiB1bmRlZmluZWQsXG59O1xuXG5Cb3gucHJvcFR5cGVzID0ge1xuICBfaG92ZXI6IFByb3BUeXBlcy5mdW5jLFxuICBiYWNrZ3JvdW5kOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBiYXNpczogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLnN0cmluZ10pLFxuICBib3JkZXJDb2xvcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5ub2RlLCBQcm9wVHlwZXMuc3RyaW5nXSksXG4gIGNvbG9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBmbGV4OiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMuc3RyaW5nXSksXG4gIGdyb3c6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5zdHJpbmddKSxcbiAgaGFzUmFkaXVzOiBQcm9wVHlwZXMuYm9vbCxcbiAgaGlkZGVuUzogUHJvcFR5cGVzLmJvb2wsXG4gIGhpZGRlblhTOiBQcm9wVHlwZXMuYm9vbCxcbiAgcGFkZGluZzogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm51bWJlcildKSxcbiAgcGFkZGluZ0JvdHRvbTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm51bWJlcildKSxcbiAgcGFkZGluZ0xlZnQ6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5udW1iZXIsIFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5udW1iZXIpXSksXG4gIHBhZGRpbmdSaWdodDogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm51bWJlcildKSxcbiAgcGFkZGluZ1RvcDogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm51bWJlcildKSxcbiAgc2hhZG93OiBQcm9wVHlwZXMuc3RyaW5nLFxuICBzaHJpbms6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5zdHJpbmddKSxcbn07XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/Box/Box.js\n");
325
325
 
326
326
  /***/ }),
327
327
 
@@ -489,7 +489,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Ico
489
489
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
490
490
 
491
491
  "use strict";
492
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberInput\", function() { return NumberInput; });\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"./node_modules/@babel/runtime/helpers/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js\");\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @strapi/icons/CarretDown */ \"@strapi/icons/CarretDown\");\n/* harmony import */ var _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! styled-components */ \"styled-components\");\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(styled_components__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _themes_sizes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../themes/sizes */ \"./src/themes/sizes.js\");\n/* harmony import */ var _internationalized_number__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @internationalized/number */ \"./node_modules/@internationalized/number/dist/module.js\");\n/* harmony import */ var _Field__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../Field */ \"./src/Field/index.js\");\n/* harmony import */ var _Stack__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../Stack */ \"./src/Stack/index.js\");\n/* harmony import */ var _Flex__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../Flex */ \"./src/Flex/index.js\");\n/* harmony import */ var _Box__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../Box */ \"./src/Box/index.js\");\n/* harmony import */ var _Icon__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../Icon */ \"./src/Icon/index.js\");\n/* harmony import */ var _helpers_useId__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../helpers/useId */ \"./src/helpers/useId.js\");\n/* harmony import */ var _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../helpers/keyboardKeys */ \"./src/helpers/keyboardKeys.js\");\n/* harmony import */ var _helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../helpers/getDefaultLocale */ \"./src/helpers/getDefaultLocale.js\");\n\n\n\n\nvar _excluded = [\"size\", \"startAction\", \"name\", \"hint\", \"error\", \"label\", \"labelAction\", \"id\", \"onValueChange\", \"value\", \"step\", \"required\", \"disabled\"];\n\nvar _templateObject;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar ArrowButton = styled_components__WEBPACK_IMPORTED_MODULE_7___default.a.button(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3___default()([\"\\n display: flex;\\n height: 1rem;\\n align-items: \", \";\\n transform: translateY(\", \");\\n cursor: \", \";\\n svg {\\n display: block;\\n height: \", \"rem;\\n transform: \", \";\\n }\\n\"])), function (_ref) {\n var reverse = _ref.reverse;\n return reverse ? 'flex-end' : 'flex-start';\n}, function (_ref2) {\n var reverse = _ref2.reverse;\n return reverse ? \"-2px\" : \"2px\";\n}, function (_ref3) {\n var disabled = _ref3.disabled;\n return disabled ? 'not-allowed' : undefined;\n}, 4 / 16, function (_ref4) {\n var reverse = _ref4.reverse;\n return reverse ? 'rotateX(180deg)' : undefined;\n});\nvar INITIAL_VALUE = '';\nvar NumberInput = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.forwardRef(function (_ref5, ref) {\n var size = _ref5.size,\n startAction = _ref5.startAction,\n name = _ref5.name,\n hint = _ref5.hint,\n error = _ref5.error,\n label = _ref5.label,\n labelAction = _ref5.labelAction,\n id = _ref5.id,\n onValueChange = _ref5.onValueChange,\n value = _ref5.value,\n step = _ref5.step,\n required = _ref5.required,\n disabled = _ref5.disabled,\n props = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default()(_ref5, _excluded);\n\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useState\"])(value || INITIAL_VALUE),\n _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),\n inputValue = _useState2[0],\n setInputValue = _useState2[1];\n\n var generatedId = Object(_helpers_useId__WEBPACK_IMPORTED_MODULE_15__[\"useId\"])('numberinput', id);\n var numberParserRef = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useRef\"])(new _internationalized_number__WEBPACK_IMPORTED_MODULE_9__[\"NumberParser\"](Object(_helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__[\"getDefaultLocale\"])()));\n var numberFormaterRef = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useRef\"])(new _internationalized_number__WEBPACK_IMPORTED_MODULE_9__[\"NumberFormatter\"](Object(_helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__[\"getDefaultLocale\"])()));\n\n if (!label && !props['aria-label']) {\n throw new Error('The NumberInput component needs a \"label\" or an \"aria-label\" props');\n }\n\n var handleChange = function handleChange(e) {\n var nextValue = e.target.value;\n\n if (numberParserRef.current.isValidPartialNumber(nextValue)) {\n var parsedValue = nextValue === '' ? undefined : numberParserRef.current.parse(nextValue);\n\n if (parsedValue === undefined) {\n onValueChange(undefined);\n } else if (isNaN(parsedValue)) {\n // checking NaN case when only typing a \"-\" (minus) sign inside the field\n onValueChange(undefined);\n } else {\n onValueChange(parsedValue);\n }\n\n setInputValue(e.target.value);\n }\n };\n\n var increment = function increment(fromKeyBoard) {\n if (inputValue === '') {\n onValueChange(step);\n setInputValue(step);\n return;\n }\n\n if (isNaN(inputValue)) {\n var parsedValue = numberParserRef.current.parse(inputValue); // Probably in the minus case\n\n var safeValue = isNaN(parsedValue) ? 0 : parsedValue;\n var nextValue = safeValue + step;\n var formattedValue = numberFormaterRef.current.format(nextValue);\n onValueChange(nextValue);\n setInputValue(fromKeyBoard ? nextValue : formattedValue);\n return;\n }\n\n onValueChange(value + step);\n setInputValue(value + step);\n };\n\n var decrement = function decrement(fromKeyBoard) {\n if (inputValue === '') {\n onValueChange(-step);\n setInputValue(-step);\n return;\n }\n\n if (isNaN(inputValue)) {\n var parsedValue = numberParserRef.current.parse(inputValue); // Probably in the minus case\n\n var safeValue = isNaN(parsedValue) ? 0 : parsedValue;\n var nextValue = safeValue - step;\n var formattedValue = numberFormaterRef.current.format(nextValue);\n onValueChange(nextValue);\n setInputValue(fromKeyBoard ? nextValue : formattedValue);\n return;\n }\n\n onValueChange(value - step);\n setInputValue(value - step);\n };\n\n var handleKeyDown = function handleKeyDown(e) {\n if (disabled) return;\n\n switch (e.key) {\n case _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__[\"KeyboardKeys\"].DOWN:\n {\n e.preventDefault();\n decrement(true);\n break;\n }\n\n case _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__[\"KeyboardKeys\"].UP:\n {\n e.preventDefault();\n increment(true);\n break;\n }\n\n default:\n break;\n }\n };\n\n var handleFocus = function handleFocus() {\n if (value !== undefined && !isNaN(value)) {\n setInputValue(numberParserRef.current.parse(inputValue));\n }\n };\n\n var handleBlur = function handleBlur() {\n if (value === undefined) {\n setInputValue(undefined);\n } else {\n setInputValue(numberFormaterRef.current.format(value));\n }\n };\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"Field\"], {\n name: name,\n hint: hint,\n error: error,\n id: generatedId\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Stack__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"], {\n size: 1\n }, label && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Flex__WEBPACK_IMPORTED_MODULE_12__[\"Flex\"], {\n cols: \"auto auto 1fr\",\n gap: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldLabel\"], {\n required: required\n }, label), labelAction && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Box__WEBPACK_IMPORTED_MODULE_13__[\"Box\"], {\n paddingLeft: 1\n }, labelAction)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldInput\"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({\n ref: ref,\n startAction: startAction,\n disabled: disabled,\n type: \"text\",\n inputmode: \"decimal\",\n onChange: handleChange,\n onKeyDown: handleKeyDown,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: inputValue !== null && inputValue !== void 0 ? inputValue : '',\n size: size,\n endAction: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_4___default.a.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(ArrowButton, {\n disabled: disabled,\n \"aria-hidden\": true,\n reverse: true,\n onClick: function onClick() {\n // increment needs an argument, so we can't remove the parenthesis\n increment();\n },\n tabIndex: -1,\n type: \"button\",\n \"data-testid\": \"ArrowUp\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Icon__WEBPACK_IMPORTED_MODULE_14__[\"Icon\"], {\n as: _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default.a,\n color: \"neutral500\"\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(ArrowButton, {\n disabled: disabled,\n \"aria-hidden\": true,\n onClick: function onClick() {\n // decrement needs an argument, so we can't remove the parenthesis\n decrement();\n },\n tabIndex: -1,\n type: \"button\",\n \"data-testid\": \"ArrowDown\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Icon__WEBPACK_IMPORTED_MODULE_14__[\"Icon\"], {\n as: _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default.a,\n color: \"neutral500\"\n })))\n }, props)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldHint\"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldError\"], null)));\n});\nNumberInput.displayName = 'NumberInput';\nNumberInput.defaultProps = {\n 'aria-label': undefined,\n disabled: false,\n error: undefined,\n hint: undefined,\n id: undefined,\n label: undefined,\n labelAction: undefined,\n required: false,\n size: 'M',\n startAction: undefined,\n step: 1,\n value: undefined\n};\nNumberInput.propTypes = {\n 'aria-label': prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n disabled: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.bool,\n error: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n hint: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n id: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n label: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n labelAction: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.element,\n name: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string.isRequired,\n onValueChange: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.func.isRequired,\n required: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.bool,\n size: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.oneOf(Object.keys(_themes_sizes__WEBPACK_IMPORTED_MODULE_8__[\"sizes\"].input)),\n startAction: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.element,\n step: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.number,\n value: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.number\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL3NyYy9OdW1iZXJJbnB1dC9OdW1iZXJJbnB1dC5qcz9mNTY2Il0sIm5hbWVzIjpbIkFycm93QnV0dG9uIiwic3R5bGVkIiwiYnV0dG9uIiwicmV2ZXJzZSIsImRpc2FibGVkIiwidW5kZWZpbmVkIiwiSU5JVElBTF9WQUxVRSIsIk51bWJlcklucHV0IiwiUmVhY3QiLCJmb3J3YXJkUmVmIiwicmVmIiwic2l6ZSIsInN0YXJ0QWN0aW9uIiwibmFtZSIsImhpbnQiLCJlcnJvciIsImxhYmVsIiwibGFiZWxBY3Rpb24iLCJpZCIsIm9uVmFsdWVDaGFuZ2UiLCJ2YWx1ZSIsInN0ZXAiLCJyZXF1aXJlZCIsInByb3BzIiwidXNlU3RhdGUiLCJpbnB1dFZhbHVlIiwic2V0SW5wdXRWYWx1ZSIsImdlbmVyYXRlZElkIiwidXNlSWQiLCJudW1iZXJQYXJzZXJSZWYiLCJ1c2VSZWYiLCJOdW1iZXJQYXJzZXIiLCJnZXREZWZhdWx0TG9jYWxlIiwibnVtYmVyRm9ybWF0ZXJSZWYiLCJOdW1iZXJGb3JtYXR0ZXIiLCJFcnJvciIsImhhbmRsZUNoYW5nZSIsImUiLCJuZXh0VmFsdWUiLCJ0YXJnZXQiLCJjdXJyZW50IiwiaXNWYWxpZFBhcnRpYWxOdW1iZXIiLCJwYXJzZWRWYWx1ZSIsInBhcnNlIiwiaXNOYU4iLCJpbmNyZW1lbnQiLCJmcm9tS2V5Qm9hcmQiLCJzYWZlVmFsdWUiLCJmb3JtYXR0ZWRWYWx1ZSIsImZvcm1hdCIsImRlY3JlbWVudCIsImhhbmRsZUtleURvd24iLCJrZXkiLCJLZXlib2FyZEtleXMiLCJET1dOIiwicHJldmVudERlZmF1bHQiLCJVUCIsImhhbmRsZUZvY3VzIiwiaGFuZGxlQmx1ciIsIkNhcnJldERvd24iLCJkaXNwbGF5TmFtZSIsImRlZmF1bHRQcm9wcyIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsImJvb2wiLCJlbGVtZW50IiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJvbmVPZiIsIk9i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QlcsT0FBSyxFQUFFWCxTQU5rQjtBQU96QlksYUFBVyxFQUFFWixTQVBZO0FBUXpCaUIsVUFBUSxFQUFFLEtBUmU7QUFTekJYLE1BQUksRUFBRSxHQVRtQjtBQVV6QkMsYUFBVyxFQUFFUCxTQVZZO0FBV3pCZ0IsTUFBSSxFQUFFLENBWG1CO0FBWXpCRCxPQUFLLEVBQUVmO0FBWmtCLENBQTNCO0FBZUFFLFdBQVcsQ0FBQ3VELFNBQVosR0FBd0I7QUFDdEIsZ0JBQWNDLGlEQUFTLENBQUNDLE1BREY7QUFFdEI1RCxVQUFRLEVBQUUyRCxpREFBUyxDQUFDRSxJQUZFO0FBR3RCbEQsT0FBSyxFQUFFZ0QsaURBQVMsQ0FBQ0MsTUFISztBQUl0QmxELE1BQUksRUFBRWlELGlEQUFTLENBQUNDLE1BSk07QUFLdEI5QyxJQUFFLEVBQUU2QyxpREFBUyxDQUFDQyxNQUxRO0FBTXRCaEQsT0FBSyxFQUFFK0MsaURBQVMsQ0FBQ0MsTUFOSztBQU90Qi9DLGFBQVcsRUFBRThDLGlEQUFTLENBQUNHLE9BUEQ7QUFRdEJyRCxNQUFJLEVBQUVrRCxpREFBUyxDQUFDQyxNQUFWLENBQWlCRyxVQVJEO0FBU3RCaEQsZUFBYSxFQUFFNEMsaURBQVMsQ0FBQ0ssSUFBVixDQUFlRCxVQVRSO0FBVXRCN0MsVUFBUSxFQUFFeUMsaURBQVMsQ0FBQ0UsSUFWRTtBQVd0QnRELE1BQUksRUFBRW9ELGlEQUFTLENBQUNNLEtBQVYsQ0FBZ0JDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZQyxtREFBSyxDQUFDQyxLQUFsQixDQUFoQixDQVhnQjtBQVl0QjdELGFBQVcsRUFBRW1ELGlEQUFTLENBQUNHLE9BWkQ7QUFhdEI3QyxNQUFJLEVBQUUwQyxpREFBUyxDQUFDVyxNQWJNO0FBY3RCdEQsT0FBSyxFQUFFMkMsaURBQVMsQ0FBQ1c7QUFkSyxDQUF4QiIsImZpbGUiOiIuL3NyYy9OdW1iZXJJbnB1dC9OdW1iZXJJbnB1dC5qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBDYXJyZXREb3duIGZyb20gJ0BzdHJhcGkvaWNvbnMvQ2FycmV0RG93bic7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7IHNpemVzIH0gZnJvbSAnLi4vdGhlbWVzL3NpemVzJztcbmltcG9ydCB7IE51bWJlckZvcm1hdHRlciwgTnVtYmVyUGFyc2VyIH0gZnJvbSAnQGludGVybmF0aW9uYWxpemVkL251bWJlcic7XG5pbXBvcnQgeyBGaWVsZCwgRmllbGRMYWJlbCwgRmllbGRIaW50LCBGaWVsZEVycm9yLCBGaWVsZElucHV0IH0gZnJvbSAnLi4vRmllbGQnO1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjayc7XG5pbXBvcnQgeyBGbGV4IH0gZnJvbSAnLi4vRmxleCc7XG5pbXBvcnQgeyBCb3ggfSBmcm9tICcuLi9Cb3gnO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJy4uL0ljb24nO1xuaW1wb3J0IHsgdXNlSWQgfSBmcm9tICcuLi9oZWxwZXJzL3VzZUlkJztcbmltcG9ydCB7IEtleWJvYXJkS2V5cyB9IGZyb20gJy4uL2hlbHBlcnMva2V5Ym9hcmRLZXlzJztcbmltcG9ydCB7IGdldERlZmF1bHRMb2NhbGUgfSBmcm9tICcuLi9oZWxwZXJzL2dldERlZmF1bHRMb2NhbGUnO1xuXG5jb25zdCBBcnJvd0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMXJlbTtcbiAgYWxpZ24taXRlbXM6ICR7KHsgcmV2ZXJzZSB9KSA9PiAocmV2ZXJzZSA/ICdmbGV4LWVuZCcgOiAnZmxleC1zdGFydCcpfTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR7KHsgcmV2ZXJzZSB9KSA9PiAocmV2ZXJzZSA/IGAtMnB4YCA6IGAycHhgKX0pO1xuICBjdXJzb3I6ICR7KHsgZGlzYWJsZWQgfSkgPT4gKGRpc2FibGVkID8gJ25vdC1hbGxvd2VkJyA6IHVuZGVmaW5lZCl9O1xuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJHs0IC8gMTZ9cmVtO1xuICAgIHRyYW5zZm9ybTogJHsoeyByZXZlcnNlIH0pID0+IChyZXZlcnNlID8gJ3JvdGF0ZVgoMTgwZGVnKScgOiB1bmRlZmluZWQpfTtcbiAgfVxuYDtcblxuY29uc3QgSU5JVElBTF9WQUxVRSA9ICcnO1xuXG5leHBvcnQgY29uc3QgTnVtYmVySW5wdXQgPSBSZWFjdC5mb3J3YXJkUmVmKFxuICAoXG4gICAge1xuICAgICAgc2l6ZSxcbiAgICAgIHN0YXJ0QWN0aW9uLFxuICAgICAgbmFtZSxcbiAgICAgIGhpbnQsXG4gICAgICBlcnJvcixcbiAgICAgIGxhYmVsLFxuICAgICAgbGFiZWxBY3Rpb24sXG4gICAgICBpZCxcbiAgICAgIG9uVmFsdWVDaGFuZ2UsXG4gICAgICB2YWx1ZSxcbiAgICAgIHN0ZXAsXG4gICAgICByZXF1aXJlZCxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgLi4ucHJvcHNcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgW2lucHV0VmFsdWUsIHNldElucHV0VmFsdWVdID0gdXNlU3RhdGUodmFsdWUgfHwgSU5JVElBTF9WQUxVRSk7XG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSB1c2VJZCgnbnVtYmVyaW5wdXQnLCBpZCk7XG4gICAgY29uc3QgbnVtYmVyUGFyc2VyUmVmID0gdXNlUmVmKG5ldyBOdW1iZXJQYXJzZXIoZ2V0RGVmYXVsdExvY2FsZSgpKSk7XG4gICAgY29uc3QgbnVtYmVyRm9ybWF0ZXJSZWYgPSB1c2VSZWYobmV3IE51bWJlckZvcm1hdHRlcihnZXREZWZhdWx0TG9jYWxlKCkpKTtcblxuICAgIGlmICghbGFiZWwgJiYgIXByb3BzWydhcmlhLWxhYmVsJ10pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIE51bWJlcklucHV0IGNvbXBvbmVudCBuZWVkcyBhIFwibGFiZWxcIiBvciBhbiBcImFyaWEtbGFiZWxcIiBwcm9wcycpO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChlKSA9PiB7XG4gICAgICBjb25zdCBuZXh0VmFsdWUgPSBlLnRhcmdldC52YWx1ZTtcblxuICAgICAgaWYgKG51bWJlclBhcnNlclJlZi5jdXJyZW50LmlzVmFsaWRQYXJ0aWFsTnVtYmVyKG5leHRWYWx1ZSkpIHtcbiAgICAgICAgY29uc3QgcGFyc2VkVmFsdWUgPSBuZXh0VmFsdWUgPT09ICcnID8gdW5kZWZpbmVkIDogbnVtYmVyUGFyc2VyUmVmLmN1cnJlbnQucGFyc2UobmV4dFZhbHVlKTtcblxuICAgICAgICBpZiAocGFyc2VkVmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIG9uVmFsdWVDaGFuZ2UodW5kZWZpbmVkKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc05hTihwYXJzZWRWYWx1ZSkpIHtcbiAgICAgICAgICAvLyBjaGVja2luZyBOYU4gY2FzZSB3aGVuIG9ubHkgdHlwaW5nIGEgXCItXCIgKG1pbnVzKSBzaWduIGluc2lkZSB0aGUgZmllbGRcbiAgICAgICAgICBvblZhbHVlQ2hhbmdlKHVuZGVmaW5lZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25WYWx1ZUNoYW5nZShwYXJzZWRWYWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRJbnB1dFZhbHVlKGUudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgaW5jcmVtZW50ID0gKGZyb21LZXlCb2FyZCkgPT4ge1xuICAgICAgaWYgKGlucHV0VmFsdWUgPT09ICcnKSB7XG4gICAgICAgIG9uVmFsdWVDaGFuZ2Uoc3RlcCk7XG4gICAgICAgIHNldElucHV0VmFsdWUoc3RlcCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzTmFOKGlucHV0VmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gbnVtYmVyUGFyc2VyUmVmLmN1cnJlbnQucGFyc2UoaW5wdXRWYWx1ZSk7XG5cbiAgICAgICAgLy8gUHJvYmFibHkgaW4gdGhlIG1pbnVzIGNhc2VcbiAgICAgICAgY29uc3Qgc2FmZVZhbHVlID0gaXNOYU4ocGFyc2VkVmFsdWUpID8gMCA6IHBhcnNlZFZhbHVlO1xuXG4gICAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IHNhZmVWYWx1ZSArIHN0ZXA7XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID0gbnVtYmVyRm9ybWF0ZXJSZWYuY3VycmVudC5mb3JtYXQobmV4dFZhbHVlKTtcblxuICAgICAgICBvblZhbHVlQ2hhbmdlKG5leHRWYWx1ZSk7XG4gICAgICAgIHNldElucHV0VmFsdWUoZnJvbUtleUJvYXJkID8gbmV4dFZhbHVlIDogZm9ybWF0dGVkVmFsdWUpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgb25WYWx1ZUNoYW5nZSh2YWx1ZSArIHN0ZXApO1xuICAgICAgc2V0SW5wdXRWYWx1ZSh2YWx1ZSArIHN0ZXApO1xuICAgIH07XG5cbiAgICBjb25zdCBkZWNyZW1lbnQgPSAoZnJvbUtleUJvYXJkKSA9PiB7XG4gICAgICBpZiAoaW5wdXRWYWx1ZSA9PT0gJycpIHtcbiAgICAgICAgb25WYWx1ZUNoYW5nZSgtc3RlcCk7XG4gICAgICAgIHNldElucHV0VmFsdWUoLXN0ZXApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpc05hTihpbnB1dFZhbHVlKSkge1xuICAgICAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IG51bWJlclBhcnNlclJlZi5jdXJyZW50LnBhcnNlKGlucHV0VmFsdWUpO1xuXG4gICAgICAgIC8vIFByb2JhYmx5IGluIHRoZSBtaW51cyBjYXNlXG4gICAgICAgIGNvbnN0IHNhZmVWYWx1ZSA9IGlzTmFOKHBhcnNlZFZhbHVlKSA/IDAgOiBwYXJzZWRWYWx1ZTtcblxuICAgICAgICBjb25zdCBuZXh0VmFsdWUgPSBzYWZlVmFsdWUgLSBzdGVwO1xuICAgICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IG51bWJlckZvcm1hdGVyUmVmLmN1cnJlbnQuZm9ybWF0KG5leHRWYWx1ZSk7XG5cbiAgICAgICAgb25WYWx1ZUNoYW5nZShuZXh0VmFsdWUpO1xuICAgICAgICBzZXRJbnB1dFZhbHVlKGZyb21LZXlCb2FyZCA/IG5leHRWYWx1ZSA6IGZvcm1hdHRlZFZhbHVlKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG9uVmFsdWVDaGFuZ2UodmFsdWUgLSBzdGVwKTtcbiAgICAgIHNldElucHV0VmFsdWUodmFsdWUgLSBzdGVwKTtcbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlS2V5RG93biA9IChlKSA9PiB7XG4gICAgICBpZiAoZGlzYWJsZWQpIHJldHVybjtcblxuICAgICAgc3dpdGNoIChlLmtleSkge1xuICAgICAgICBjYXNlIEtleWJvYXJkS2V5cy5ET1dOOiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGRlY3JlbWVudCh0cnVlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRLZXlzLlVQOiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGluY3JlbWVudCh0cnVlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKCkgPT4ge1xuICAgICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgIWlzTmFOKHZhbHVlKSkge1xuICAgICAgICBzZXRJbnB1dFZhbHVlKG51bWJlclBhcnNlclJlZi5jdXJyZW50LnBhcnNlKGlucHV0VmFsdWUpKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlQmx1ciA9ICgpID0+IHtcbiAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHNldElucHV0VmFsdWUodW5kZWZpbmVkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldElucHV0VmFsdWUobnVtYmVyRm9ybWF0ZXJSZWYuY3VycmVudC5mb3JtYXQodmFsdWUpKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxGaWVsZCBuYW1lPXtuYW1lfSBoaW50PXtoaW50fSBlcnJvcj17ZXJyb3J9IGlkPXtnZW5lcmF0ZWRJZH0+XG4gICAgICAgIDxTdGFjayBzaXplPXsxfT5cbiAgICAgICAgICB7bGFiZWwgJiYgKFxuICAgICAgICAgICAgPEZsZXggY29scz1cImF1dG8gYXV0byAxZnJcIiBnYXA9ezF9PlxuICAgICAgICAgICAgICA8RmllbGRMYWJlbCByZXF1aXJlZD17cmVxdWlyZWR9PntsYWJlbH08L0ZpZWxkTGFiZWw+XG4gICAgICAgICAgICAgIHtsYWJlbEFjdGlvbiAmJiA8Qm94IHBhZGRpbmdMZWZ0PXsxfT57bGFiZWxBY3Rpb259PC9Cb3g+fVxuICAgICAgICAgICAgPC9GbGV4PlxuICAgICAgICAgICl9XG4gICAgICAgICAgPEZpZWxkSW5wdXRcbiAgICAgICAgICAgIHJlZj17cmVmfVxuICAgICAgICAgICAgc3RhcnRBY3Rpb249e3N0YXJ0QWN0aW9ufVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgaW5wdXRtb2RlPVwiZGVjaW1hbFwiXG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3dufVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlRm9jdXN9XG4gICAgICAgICAgICB2YWx1ZT17aW5wdXRWYWx1ZSA/PyAnJ31cbiAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICBlbmRBY3Rpb249e1xuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxBcnJvd0J1dHRvblxuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAgICAgICAgIHJldmVyc2VcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gaW5jcmVtZW50IG5lZWRzIGFuIGFyZ3VtZW50LCBzbyB3ZSBjYW4ndCByZW1vdmUgdGhlIHBhcmVudGhlc2lzXG4gICAgICAgICAgICAgICAgICAgIGluY3JlbWVudCgpO1xuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJBcnJvd1VwXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8SWNvbiBhcz17Q2FycmV0RG93bn0gY29sb3I9XCJuZXV0cmFsNTAwXCIgLz5cbiAgICAgICAgICAgICAgICA8L0Fycm93QnV0dG9uPlxuICAgICAgICAgICAgICAgIDxBcnJvd0J1dHRvblxuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZGVjcmVtZW50IG5lZWRzIGFuIGFyZ3VtZW50LCBzbyB3ZSBjYW4ndCByZW1vdmUgdGhlIHBhcmVudGhlc2lzXG4gICAgICAgICAgICAgICAgICAgIGRlY3JlbWVudCgpO1xuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJBcnJvd0Rvd25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxJY29uIGFzPXtDYXJyZXREb3dufSBjb2xvcj1cIm5ldXRyYWw1MDBcIiAvPlxuICAgICAgICAgICAgICAgIDwvQXJyb3dCdXR0b24+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEZpZWxkSGludCAvPlxuICAgICAgICAgIDxGaWVsZEVycm9yIC8+XG4gICAgICAgIDwvU3RhY2s+XG4gICAgICA8L0ZpZWxkPlxuICAgICk7XG4gIH0sXG4pO1xuXG5OdW1iZXJJbnB1dC5kaXNwbGF5TmFtZSA9ICdOdW1iZXJJbnB1dCc7XG5cbk51bWJlcklucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnOiB1bmRlZmluZWQsXG4gIGRpc2FibGVkOiBmYWxzZSxcbiAgZXJyb3I6IHVuZGVmaW5lZCxcbiAgaGludDogdW5kZWZpbmVkLFxuICBpZDogdW5kZWZpbmVkLFxuICBsYWJlbDogdW5kZWZpbmVkLFxuICBsYWJlbEFjdGlvbjogdW5kZWZpbmVkLFxuICByZXF1aXJlZDogZmFsc2UsXG4gIHNpemU6ICdNJyxcbiAgc3RhcnRBY3Rpb246IHVuZGVmaW5lZCxcbiAgc3RlcDogMSxcbiAgdmFsdWU6IHVuZGVmaW5lZCxcbn07XG5cbk51bWJlcklucHV0LnByb3BUeXBlcyA9IHtcbiAgJ2FyaWEtbGFiZWwnOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gIGVycm9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBoaW50OiBQcm9wVHlwZXMuc3RyaW5nLFxuICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGxhYmVsQWN0aW9uOiBQcm9wVHlwZXMuZWxlbWVudCxcbiAgbmFtZTogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICBvblZhbHVlQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICByZXF1aXJlZDogUHJvcFR5cGVzLmJvb2wsXG4gIHNpemU6IFByb3BUeXBlcy5vbmVPZihPYmplY3Qua2V5cyhzaXplcy5pbnB1dCkpLFxuICBzdGFydEFjdGlvbjogUHJvcFR5cGVzLmVsZW1lbnQsXG4gIHN0ZXA6IFByb3BUeXBlcy5udW1iZXIsXG4gIHZhbHVlOiBQcm9wVHlwZXMubnVtYmVyLFxufTtcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/NumberInput/NumberInput.js\n");
492
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NumberInput\", function() { return NumberInput; });\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"./node_modules/@babel/runtime/helpers/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js\");\n/* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @strapi/icons/CarretDown */ \"@strapi/icons/CarretDown\");\n/* harmony import */ var _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! styled-components */ \"styled-components\");\n/* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(styled_components__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _themes_sizes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../themes/sizes */ \"./src/themes/sizes.js\");\n/* harmony import */ var _internationalized_number__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @internationalized/number */ \"./node_modules/@internationalized/number/dist/module.js\");\n/* harmony import */ var _Field__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../Field */ \"./src/Field/index.js\");\n/* harmony import */ var _Stack__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../Stack */ \"./src/Stack/index.js\");\n/* harmony import */ var _Flex__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../Flex */ \"./src/Flex/index.js\");\n/* harmony import */ var _Box__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../Box */ \"./src/Box/index.js\");\n/* harmony import */ var _Icon__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../Icon */ \"./src/Icon/index.js\");\n/* harmony import */ var _helpers_useId__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../helpers/useId */ \"./src/helpers/useId.js\");\n/* harmony import */ var _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../helpers/keyboardKeys */ \"./src/helpers/keyboardKeys.js\");\n/* harmony import */ var _helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../helpers/getDefaultLocale */ \"./src/helpers/getDefaultLocale.js\");\n\n\n\n\nvar _excluded = [\"size\", \"startAction\", \"name\", \"hint\", \"error\", \"label\", \"labelAction\", \"id\", \"onValueChange\", \"value\", \"step\", \"required\", \"disabled\"];\n\nvar _templateObject;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar ArrowButton = styled_components__WEBPACK_IMPORTED_MODULE_7___default.a.button(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_3___default()([\"\\n display: flex;\\n height: 1rem;\\n align-items: \", \";\\n transform: translateY(\", \");\\n cursor: \", \";\\n svg {\\n display: block;\\n height: \", \"rem;\\n transform: \", \";\\n }\\n\"])), function (_ref) {\n var reverse = _ref.reverse;\n return reverse ? 'flex-end' : 'flex-start';\n}, function (_ref2) {\n var reverse = _ref2.reverse;\n return reverse ? \"-2px\" : \"2px\";\n}, function (_ref3) {\n var disabled = _ref3.disabled;\n return disabled ? 'not-allowed' : undefined;\n}, 4 / 16, function (_ref4) {\n var reverse = _ref4.reverse;\n return reverse ? 'rotateX(180deg)' : undefined;\n});\nvar INITIAL_VALUE = '';\nvar NumberInput = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.forwardRef(function (_ref5, ref) {\n var size = _ref5.size,\n startAction = _ref5.startAction,\n name = _ref5.name,\n hint = _ref5.hint,\n error = _ref5.error,\n label = _ref5.label,\n labelAction = _ref5.labelAction,\n id = _ref5.id,\n onValueChange = _ref5.onValueChange,\n value = _ref5.value,\n step = _ref5.step,\n required = _ref5.required,\n disabled = _ref5.disabled,\n props = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default()(_ref5, _excluded);\n\n // inputValue should ALWAYS be a string. value should ALWAYS stay a number\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useState\"])(value === undefined || value === null ? INITIAL_VALUE : String(value)),\n _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),\n inputValue = _useState2[0],\n setInputValue = _useState2[1];\n\n var generatedId = Object(_helpers_useId__WEBPACK_IMPORTED_MODULE_15__[\"useId\"])('numberinput', id);\n var numberParserRef = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useRef\"])(new _internationalized_number__WEBPACK_IMPORTED_MODULE_9__[\"NumberParser\"](Object(_helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__[\"getDefaultLocale\"])()));\n var numberFormaterRef = Object(react__WEBPACK_IMPORTED_MODULE_4__[\"useRef\"])(new _internationalized_number__WEBPACK_IMPORTED_MODULE_9__[\"NumberFormatter\"](Object(_helpers_getDefaultLocale__WEBPACK_IMPORTED_MODULE_17__[\"getDefaultLocale\"])()));\n\n if (!label && !props['aria-label']) {\n throw new Error('The NumberInput component needs a \"label\" or an \"aria-label\" props');\n }\n\n var handleChange = function handleChange(e) {\n var nextValue = e.target.value;\n\n if (numberParserRef.current.isValidPartialNumber(nextValue)) {\n var parsedValue = nextValue === '' ? undefined : numberParserRef.current.parse(nextValue);\n\n if (parsedValue === undefined) {\n onValueChange(undefined);\n } else if (isNaN(parsedValue)) {\n // checking NaN case when only typing a \"-\" (minus) sign inside the field\n onValueChange(undefined);\n } else {\n onValueChange(parsedValue);\n }\n\n setInputValue(e.target.value);\n }\n };\n\n var increment = function increment(fromKeyBoard) {\n if (inputValue === '') {\n onValueChange(step);\n setInputValue(String(step));\n return;\n }\n\n if (isNaN(inputValue)) {\n var parsedValue = numberParserRef.current.parse(inputValue); // Probably in the minus case\n\n var safeValue = isNaN(parsedValue) ? 0 : parsedValue;\n var nextValue = safeValue + step;\n var formattedValue = numberFormaterRef.current.format(nextValue);\n onValueChange(nextValue);\n setInputValue(fromKeyBoard ? String(nextValue) : formattedValue);\n return;\n }\n\n onValueChange(value + step);\n setInputValue(String(value + step));\n };\n\n var decrement = function decrement(fromKeyBoard) {\n if (inputValue === '') {\n onValueChange(-step);\n setInputValue(String(-step));\n return;\n }\n\n if (isNaN(inputValue)) {\n var parsedValue = numberParserRef.current.parse(inputValue); // Probably in the minus case\n\n var safeValue = isNaN(parsedValue) ? 0 : parsedValue;\n var nextValue = safeValue - step;\n var formattedValue = numberFormaterRef.current.format(nextValue);\n onValueChange(nextValue);\n setInputValue(fromKeyBoard ? String(nextValue) : formattedValue);\n return;\n }\n\n onValueChange(value - step);\n setInputValue(String(value - step));\n };\n\n var handleKeyDown = function handleKeyDown(e) {\n if (disabled) return;\n\n switch (e.key) {\n case _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__[\"KeyboardKeys\"].DOWN:\n {\n e.preventDefault();\n decrement(true);\n break;\n }\n\n case _helpers_keyboardKeys__WEBPACK_IMPORTED_MODULE_16__[\"KeyboardKeys\"].UP:\n {\n e.preventDefault();\n increment(true);\n break;\n }\n\n default:\n break;\n }\n };\n\n var handleFocus = function handleFocus() {\n if (value !== undefined) {\n setInputValue(String(numberParserRef.current.parse(inputValue)));\n }\n };\n\n var handleBlur = function handleBlur() {\n if (value === undefined) {\n setInputValue(undefined);\n } else {\n setInputValue(numberFormaterRef.current.format(value));\n }\n };\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"Field\"], {\n name: name,\n hint: hint,\n error: error,\n id: generatedId\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Stack__WEBPACK_IMPORTED_MODULE_11__[\"Stack\"], {\n size: 1\n }, label && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Flex__WEBPACK_IMPORTED_MODULE_12__[\"Flex\"], {\n cols: \"auto auto 1fr\",\n gap: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldLabel\"], {\n required: required\n }, label), labelAction && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Box__WEBPACK_IMPORTED_MODULE_13__[\"Box\"], {\n paddingLeft: 1\n }, labelAction)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldInput\"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({\n ref: ref,\n startAction: startAction,\n disabled: disabled,\n type: \"text\",\n inputmode: \"decimal\",\n onChange: handleChange,\n onKeyDown: handleKeyDown,\n onBlur: handleBlur,\n onFocus: handleFocus,\n value: inputValue !== null && inputValue !== void 0 ? inputValue : '',\n size: size,\n endAction: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_4___default.a.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(ArrowButton, {\n disabled: disabled,\n \"aria-hidden\": true,\n reverse: true,\n onClick: function onClick() {\n // increment needs an argument, so we can't remove the parenthesis\n increment();\n },\n tabIndex: -1,\n type: \"button\",\n \"data-testid\": \"ArrowUp\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Icon__WEBPACK_IMPORTED_MODULE_14__[\"Icon\"], {\n as: _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default.a,\n color: \"neutral500\"\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(ArrowButton, {\n disabled: disabled,\n \"aria-hidden\": true,\n onClick: function onClick() {\n // decrement needs an argument, so we can't remove the parenthesis\n decrement();\n },\n tabIndex: -1,\n type: \"button\",\n \"data-testid\": \"ArrowDown\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Icon__WEBPACK_IMPORTED_MODULE_14__[\"Icon\"], {\n as: _strapi_icons_CarretDown__WEBPACK_IMPORTED_MODULE_6___default.a,\n color: \"neutral500\"\n })))\n }, props)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldHint\"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_Field__WEBPACK_IMPORTED_MODULE_10__[\"FieldError\"], null)));\n});\nNumberInput.displayName = 'NumberInput';\nNumberInput.defaultProps = {\n 'aria-label': undefined,\n disabled: false,\n error: undefined,\n hint: undefined,\n id: undefined,\n label: undefined,\n labelAction: undefined,\n required: false,\n size: 'M',\n startAction: undefined,\n step: 1,\n value: undefined\n};\nNumberInput.propTypes = {\n 'aria-label': prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n disabled: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.bool,\n error: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n hint: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n id: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n label: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string,\n labelAction: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.element,\n name: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.string.isRequired,\n onValueChange: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.func.isRequired,\n required: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.bool,\n size: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.oneOf(Object.keys(_themes_sizes__WEBPACK_IMPORTED_MODULE_8__[\"sizes\"].input)),\n startAction: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.element,\n step: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.number,\n value: prop_types__WEBPACK_IMPORTED_MODULE_5___default.a.number\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHJhcGlEcy8uL3NyYy9OdW1iZXJJbnB1dC9OdW1iZXJJbnB1dC5qcz9mNTY2Il0sIm5hbWVzIjpbIkFycm93QnV0dG9uIiwic3R5bGVkIiwiYnV0dG9uIiwicmV2ZXJzZSIsImRpc2FibGVkIiwidW5kZWZpbmVkIiwiSU5JVElBTF9WQUxVRSIsIk51bWJlcklucHV0IiwiUmVhY3QiLCJmb3J3YXJkUmVmIiwicmVmIiwic2l6ZSIsInN0YXJ0QWN0aW9uIiwibmFtZSIsImhpbnQiLCJlcnJvciIsImxhYmVsIiwibGFiZWxBY3Rpb24iLCJpZCIsIm9uVmFsdWVDaGFuZ2UiLCJ2YWx1ZSIsInN0ZXAiLCJyZXF1aXJlZCIsInByb3BzIiwidXNlU3RhdGUiLCJTdHJpbmciLCJpbnB1dFZhbHVlIiwic2V0SW5wdXRWYWx1ZSIsImdlbmVyYXRlZElkIiwidXNlSWQiLCJudW1iZXJQYXJzZXJSZWYiLCJ1c2VSZWYiLCJOdW1iZXJQYXJzZXIiLCJnZXREZWZhdWx0TG9jYWxlIiwibnVtYmVyRm9ybWF0ZXJSZWYiLCJOdW1iZXJGb3JtYXR0ZXIiLCJFcnJvciIsImhhbmRsZUNoYW5nZSIsImUiLCJuZXh0VmFsdWUiLCJ0YXJnZXQiLCJjdXJyZW50IiwiaXNWYWxpZFBhcnRpYWxOdW1iZXIiLCJwYXJzZWRWYWx1ZSIsInBhcnNlIiwiaXNOYU4iLCJpbmNyZW1lbnQiLCJmcm9tS2V5Qm9hcmQiLCJzYWZlVmFsdWUiLCJmb3JtYXR0ZWRWYWx1ZSIsImZvcm1hdCIsImRlY3JlbWVudCIsImhhbmRsZUtleURvd24iLCJrZXkiLCJLZXlib2FyZEtleXMiLCJET1dOIiwicHJldmVudERlZmF1bHQiLCJVUCIsImhhbmRsZUZvY3VzIiwiaGFuZGxlQmx1ciIsIkNhcnJldERvd24iLCJkaXNwbGF5TmFtZSIsImRlZmF1bHRQcm9wcyIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsImJvb2wiLCJlbGVtZW50IiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJv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Q0FBQ1csTUFiTTtBQWN0QnZELE9BQUssRUFBRTRDLGlEQUFTLENBQUNXO0FBZEssQ0FBeEIiLCJmaWxlIjoiLi9zcmMvTnVtYmVySW5wdXQvTnVtYmVySW5wdXQuanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgQ2FycmV0RG93biBmcm9tICdAc3RyYXBpL2ljb25zL0NhcnJldERvd24nO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBzaXplcyB9IGZyb20gJy4uL3RoZW1lcy9zaXplcyc7XG5pbXBvcnQgeyBOdW1iZXJGb3JtYXR0ZXIsIE51bWJlclBhcnNlciB9IGZyb20gJ0BpbnRlcm5hdGlvbmFsaXplZC9udW1iZXInO1xuaW1wb3J0IHsgRmllbGQsIEZpZWxkTGFiZWwsIEZpZWxkSGludCwgRmllbGRFcnJvciwgRmllbGRJbnB1dCB9IGZyb20gJy4uL0ZpZWxkJztcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uL0ZsZXgnO1xuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vQm94JztcbmltcG9ydCB7IEljb24gfSBmcm9tICcuLi9JY29uJztcbmltcG9ydCB7IHVzZUlkIH0gZnJvbSAnLi4vaGVscGVycy91c2VJZCc7XG5pbXBvcnQgeyBLZXlib2FyZEtleXMgfSBmcm9tICcuLi9oZWxwZXJzL2tleWJvYXJkS2V5cyc7XG5pbXBvcnQgeyBnZXREZWZhdWx0TG9jYWxlIH0gZnJvbSAnLi4vaGVscGVycy9nZXREZWZhdWx0TG9jYWxlJztcblxuY29uc3QgQXJyb3dCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDFyZW07XG4gIGFsaWduLWl0ZW1zOiAkeyh7IHJldmVyc2UgfSkgPT4gKHJldmVyc2UgPyAnZmxleC1lbmQnIDogJ2ZsZXgtc3RhcnQnKX07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeyh7IHJldmVyc2UgfSkgPT4gKHJldmVyc2UgPyBgLTJweGAgOiBgMnB4YCl9KTtcbiAgY3Vyc29yOiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICdub3QtYWxsb3dlZCcgOiB1bmRlZmluZWQpfTtcbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICR7NCAvIDE2fXJlbTtcbiAgICB0cmFuc2Zvcm06ICR7KHsgcmV2ZXJzZSB9KSA9PiAocmV2ZXJzZSA/ICdyb3RhdGVYKDE4MGRlZyknIDogdW5kZWZpbmVkKX07XG4gIH1cbmA7XG5cbmNvbnN0IElOSVRJQUxfVkFMVUUgPSAnJztcblxuZXhwb3J0IGNvbnN0IE51bWJlcklucHV0ID0gUmVhY3QuZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIHNpemUsXG4gICAgICBzdGFydEFjdGlvbixcbiAgICAgIG5hbWUsXG4gICAgICBoaW50LFxuICAgICAgZXJyb3IsXG4gICAgICBsYWJlbCxcbiAgICAgIGxhYmVsQWN0aW9uLFxuICAgICAgaWQsXG4gICAgICBvblZhbHVlQ2hhbmdlLFxuICAgICAgdmFsdWUsXG4gICAgICBzdGVwLFxuICAgICAgcmVxdWlyZWQsXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIC4uLnByb3BzXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIC8vIGlucHV0VmFsdWUgc2hvdWxkIEFMV0FZUyBiZSBhIHN0cmluZy4gdmFsdWUgc2hvdWxkIEFMV0FZUyBzdGF5IGEgbnVtYmVyXG4gICAgY29uc3QgW2lucHV0VmFsdWUsIHNldElucHV0VmFsdWVdID0gdXNlU3RhdGUodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCA/IElOSVRJQUxfVkFMVUUgOiBTdHJpbmcodmFsdWUpKTtcbiAgICBjb25zdCBnZW5lcmF0ZWRJZCA9IHVzZUlkKCdudW1iZXJpbnB1dCcsIGlkKTtcbiAgICBjb25zdCBudW1iZXJQYXJzZXJSZWYgPSB1c2VSZWYobmV3IE51bWJlclBhcnNlcihnZXREZWZhdWx0TG9jYWxlKCkpKTtcbiAgICBjb25zdCBudW1iZXJGb3JtYXRlclJlZiA9IHVzZVJlZihuZXcgTnVtYmVyRm9ybWF0dGVyKGdldERlZmF1bHRMb2NhbGUoKSkpO1xuXG4gICAgaWYgKCFsYWJlbCAmJiAhcHJvcHNbJ2FyaWEtbGFiZWwnXSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgTnVtYmVySW5wdXQgY29tcG9uZW50IG5lZWRzIGEgXCJsYWJlbFwiIG9yIGFuIFwiYXJpYS1sYWJlbFwiIHByb3BzJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGUpID0+IHtcbiAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuXG4gICAgICBpZiAobnVtYmVyUGFyc2VyUmVmLmN1cnJlbnQuaXNWYWxpZFBhcnRpYWxOdW1iZXIobmV4dFZhbHVlKSkge1xuICAgICAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IG5leHRWYWx1ZSA9PT0gJycgPyB1bmRlZmluZWQgOiBudW1iZXJQYXJzZXJSZWYuY3VycmVudC5wYXJzZShuZXh0VmFsdWUpO1xuXG4gICAgICAgIGlmIChwYXJzZWRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgb25WYWx1ZUNoYW5nZSh1bmRlZmluZWQpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzTmFOKHBhcnNlZFZhbHVlKSkge1xuICAgICAgICAgIC8vIGNoZWNraW5nIE5hTiBjYXNlIHdoZW4gb25seSB0eXBpbmcgYSBcIi1cIiAobWludXMpIHNpZ24gaW5zaWRlIHRoZSBmaWVsZFxuICAgICAgICAgIG9uVmFsdWVDaGFuZ2UodW5kZWZpbmVkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvblZhbHVlQ2hhbmdlKHBhcnNlZFZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldElucHV0VmFsdWUoZS50YXJnZXQudmFsdWUpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBpbmNyZW1lbnQgPSAoZnJvbUtleUJvYXJkKSA9PiB7XG4gICAgICBpZiAoaW5wdXRWYWx1ZSA9PT0gJycpIHtcbiAgICAgICAgb25WYWx1ZUNoYW5nZShzdGVwKTtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZShTdHJpbmcoc3RlcCkpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpc05hTihpbnB1dFZhbHVlKSkge1xuICAgICAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IG51bWJlclBhcnNlclJlZi5jdXJyZW50LnBhcnNlKGlucHV0VmFsdWUpO1xuXG4gICAgICAgIC8vIFByb2JhYmx5IGluIHRoZSBtaW51cyBjYXNlXG4gICAgICAgIGNvbnN0IHNhZmVWYWx1ZSA9IGlzTmFOKHBhcnNlZFZhbHVlKSA/IDAgOiBwYXJzZWRWYWx1ZTtcblxuICAgICAgICBjb25zdCBuZXh0VmFsdWUgPSBzYWZlVmFsdWUgKyBzdGVwO1xuICAgICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IG51bWJlckZvcm1hdGVyUmVmLmN1cnJlbnQuZm9ybWF0KG5leHRWYWx1ZSk7XG5cbiAgICAgICAgb25WYWx1ZUNoYW5nZShuZXh0VmFsdWUpO1xuICAgICAgICBzZXRJbnB1dFZhbHVlKGZyb21LZXlCb2FyZCA/IFN0cmluZyhuZXh0VmFsdWUpIDogZm9ybWF0dGVkVmFsdWUpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgb25WYWx1ZUNoYW5nZSh2YWx1ZSArIHN0ZXApO1xuICAgICAgc2V0SW5wdXRWYWx1ZShTdHJpbmcodmFsdWUgKyBzdGVwKSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGRlY3JlbWVudCA9IChmcm9tS2V5Qm9hcmQpID0+IHtcbiAgICAgIGlmIChpbnB1dFZhbHVlID09PSAnJykge1xuICAgICAgICBvblZhbHVlQ2hhbmdlKC1zdGVwKTtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZShTdHJpbmcoLXN0ZXApKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNOYU4oaW5wdXRWYWx1ZSkpIHtcbiAgICAgICAgY29uc3QgcGFyc2VkVmFsdWUgPSBudW1iZXJQYXJzZXJSZWYuY3VycmVudC5wYXJzZShpbnB1dFZhbHVlKTtcblxuICAgICAgICAvLyBQcm9iYWJseSBpbiB0aGUgbWludXMgY2FzZVxuICAgICAgICBjb25zdCBzYWZlVmFsdWUgPSBpc05hTihwYXJzZWRWYWx1ZSkgPyAwIDogcGFyc2VkVmFsdWU7XG5cbiAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gc2FmZVZhbHVlIC0gc3RlcDtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkVmFsdWUgPSBudW1iZXJGb3JtYXRlclJlZi5jdXJyZW50LmZvcm1hdChuZXh0VmFsdWUpO1xuXG4gICAgICAgIG9uVmFsdWVDaGFuZ2UobmV4dFZhbHVlKTtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZShmcm9tS2V5Qm9hcmQgPyBTdHJpbmcobmV4dFZhbHVlKSA6IGZvcm1hdHRlZFZhbHVlKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG9uVmFsdWVDaGFuZ2UodmFsdWUgLSBzdGVwKTtcbiAgICAgIHNldElucHV0VmFsdWUoU3RyaW5nKHZhbHVlIC0gc3RlcCkpO1xuICAgIH07XG5cbiAgICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGUpID0+IHtcbiAgICAgIGlmIChkaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICAgIGNhc2UgS2V5Ym9hcmRLZXlzLkRPV046IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgZGVjcmVtZW50KHRydWUpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBLZXlib2FyZEtleXMuVVA6IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgaW5jcmVtZW50KHRydWUpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlRm9jdXMgPSAoKSA9PiB7XG4gICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBzZXRJbnB1dFZhbHVlKFN0cmluZyhudW1iZXJQYXJzZXJSZWYuY3VycmVudC5wYXJzZShpbnB1dFZhbHVlKSkpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBoYW5kbGVCbHVyID0gKCkgPT4ge1xuICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZSh1bmRlZmluZWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZShudW1iZXJGb3JtYXRlclJlZi5jdXJyZW50LmZvcm1hdCh2YWx1ZSkpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gKFxuICAgICAgPEZpZWxkIG5hbWU9e25hbWV9IGhpbnQ9e2hpbnR9IGVycm9yPXtlcnJvcn0gaWQ9e2dlbmVyYXRlZElkfT5cbiAgICAgICAgPFN0YWNrIHNpemU9ezF9PlxuICAgICAgICAgIHtsYWJlbCAmJiAoXG4gICAgICAgICAgICA8RmxleCBjb2xzPVwiYXV0byBhdXRvIDFmclwiIGdhcD17MX0+XG4gICAgICAgICAgICAgIDxGaWVsZExhYmVsIHJlcXVpcmVkPXtyZXF1aXJlZH0+e2xhYmVsfTwvRmllbGRMYWJlbD5cbiAgICAgICAgICAgICAge2xhYmVsQWN0aW9uICYmIDxCb3ggcGFkZGluZ0xlZnQ9ezF9PntsYWJlbEFjdGlvbn08L0JveD59XG4gICAgICAgICAgICA8L0ZsZXg+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8RmllbGRJbnB1dFxuICAgICAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgICAgICBzdGFydEFjdGlvbj17c3RhcnRBY3Rpb259XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBpbnB1dG1vZGU9XCJkZWNpbWFsXCJcbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbktleURvd249e2hhbmRsZUtleURvd259XG4gICAgICAgICAgICBvbkJsdXI9e2hhbmRsZUJsdXJ9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIHZhbHVlPXtpbnB1dFZhbHVlID8/ICcnfVxuICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgIGVuZEFjdGlvbj17XG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPEFycm93QnV0dG9uXG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlblxuICAgICAgICAgICAgICAgICAgcmV2ZXJzZVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBpbmNyZW1lbnQgbmVlZHMgYW4gYXJndW1lbnQsIHNvIHdlIGNhbid0IHJlbW92ZSB0aGUgcGFyZW50aGVzaXNcbiAgICAgICAgICAgICAgICAgICAgaW5jcmVtZW50KCk7XG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cIkFycm93VXBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxJY29uIGFzPXtDYXJyZXREb3dufSBjb2xvcj1cIm5ldXRyYWw1MDBcIiAvPlxuICAgICAgICAgICAgICAgIDwvQXJyb3dCdXR0b24+XG4gICAgICAgICAgICAgICAgPEFycm93QnV0dG9uXG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlblxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBkZWNyZW1lbnQgbmVlZHMgYW4gYXJndW1lbnQsIHNvIHdlIGNhbid0IHJlbW92ZSB0aGUgcGFyZW50aGVzaXNcbiAgICAgICAgICAgICAgICAgICAgZGVjcmVtZW50KCk7XG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cIkFycm93RG93blwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEljb24gYXM9e0NhcnJldERvd259IGNvbG9yPVwibmV1dHJhbDUwMFwiIC8+XG4gICAgICAgICAgICAgICAgPC9BcnJvd0J1dHRvbj5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8RmllbGRIaW50IC8+XG4gICAgICAgICAgPEZpZWxkRXJyb3IgLz5cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgIDwvRmllbGQ+XG4gICAgKTtcbiAgfSxcbik7XG5cbk51bWJlcklucHV0LmRpc3BsYXlOYW1lID0gJ051bWJlcklucHV0JztcblxuTnVtYmVySW5wdXQuZGVmYXVsdFByb3BzID0ge1xuICAnYXJpYS1sYWJlbCc6IHVuZGVmaW5lZCxcbiAgZGlzYWJsZWQ6IGZhbHNlLFxuICBlcnJvcjogdW5kZWZpbmVkLFxuICBoaW50OiB1bmRlZmluZWQsXG4gIGlkOiB1bmRlZmluZWQsXG4gIGxhYmVsOiB1bmRlZmluZWQsXG4gIGxhYmVsQWN0aW9uOiB1bmRlZmluZWQsXG4gIHJlcXVpcmVkOiBmYWxzZSxcbiAgc2l6ZTogJ00nLFxuICBzdGFydEFjdGlvbjogdW5kZWZpbmVkLFxuICBzdGVwOiAxLFxuICB2YWx1ZTogdW5kZWZpbmVkLFxufTtcblxuTnVtYmVySW5wdXQucHJvcFR5cGVzID0ge1xuICAnYXJpYS1sYWJlbCc6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgZXJyb3I6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGhpbnQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGlkOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgbGFiZWxBY3Rpb246IFByb3BUeXBlcy5lbGVtZW50LFxuICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIG9uVmFsdWVDaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHJlcXVpcmVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgc2l6ZTogUHJvcFR5cGVzLm9uZU9mKE9iamVjdC5rZXlzKHNpemVzLmlucHV0KSksXG4gIHN0YXJ0QWN0aW9uOiBQcm9wVHlwZXMuZWxlbWVudCxcbiAgc3RlcDogUHJvcFR5cGVzLm51bWJlcixcbiAgdmFsdWU6IFByb3BUeXBlcy5udW1iZXIsXG59O1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/NumberInput/NumberInput.js\n");
493
493
 
494
494
  /***/ }),
495
495