@alma/widgets 3.4.0 → 4.0.1
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.
- package/README.md +2 -3
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/DesktopModal/index.d.ts +9 -9
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/MobileModal/index.d.ts +9 -9
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/ModalContainer.d.ts +16 -16
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/ModalContainer.test.d.ts +1 -1
- package/dist/types/{Widgets/PaymentPlans → src/Widgets/EligibilityModal}/__tests__/Basics.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/__tests__/Cards.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/__tests__/ModalContainer.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/__tests__/Plans.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/__tests__/Schedule.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/classNames.const.d.ts +23 -23
- package/dist/types/src/Widgets/EligibilityModal/components/Cards/index.d.ts +7 -0
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/components/EligibilityPlansButtons/index.d.ts +8 -8
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/components/Info/index.d.ts +5 -5
- package/dist/types/src/Widgets/EligibilityModal/components/Schedule/index.d.ts +6 -0
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/components/Title/index.d.ts +6 -6
- package/dist/types/{Widgets → src/Widgets}/EligibilityModal/index.d.ts +11 -11
- package/dist/types/{Widgets/EligibilityModal → src/Widgets/PaymentPlans}/__tests__/Basics.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/Credit.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/CustomTransitionDelay.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/HideBorder.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/HideWidget.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/IneligibleOptions.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/LanguageCheck.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/LaunchModal.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/Monochrome.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/PaymentPlanContainer.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/SuggestedPaymentPlan.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/__tests__/WithoutPlans.test.d.ts +1 -1
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/classNames.const.d.ts +13 -13
- package/dist/types/{Widgets → src/Widgets}/PaymentPlans/index.d.ts +18 -18
- package/dist/types/{assets → src/assets}/Cross.d.ts +5 -6
- package/dist/types/{assets → src/assets}/almaLogo.d.ts +6 -6
- package/dist/types/{assets → src/assets}/cards/amex.d.ts +3 -3
- package/dist/types/{assets → src/assets}/cards/cb.d.ts +3 -3
- package/dist/types/{assets → src/assets}/cards/mastercard.d.ts +3 -3
- package/dist/types/{assets → src/assets}/cards/visa.d.ts +3 -3
- package/dist/types/{components → src/components}/Installments/Installment/index.d.ts +8 -8
- package/dist/types/src/components/Installments/TotalBlock/index.d.ts +6 -0
- package/dist/types/src/components/Loader/index.d.ts +5 -0
- package/dist/types/src/components/LoadingIndicator/LoadingIndicator.d.ts +4 -0
- package/dist/types/{components → src/components}/Modal/index.d.ts +12 -12
- package/dist/types/{consts.d.ts → src/consts.d.ts} +6 -6
- package/dist/types/{hooks → src/hooks}/useButtonAnimation.d.ts +7 -7
- package/dist/types/src/hooks/useFetchEligibility.d.ts +3 -0
- package/dist/types/{hooks → src/hooks}/useSessionStorage.d.ts +20 -20
- package/dist/types/{hooks → src/hooks}/useSessionStorage.test.d.ts +1 -1
- package/dist/types/{index.d.ts → src/index.d.ts} +16 -18
- package/dist/types/{intl → src/intl}/IntlProvider.d.ts +8 -8
- package/dist/types/src/intl/messages/messages.de.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.en.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.es.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.fr.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.it.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.nl.json.d.ts +35 -0
- package/dist/types/src/intl/messages/messages.pt.json.d.ts +35 -0
- package/dist/types/{intl → src/intl}/utils.d.ts +2 -2
- package/dist/types/{types.d.ts → src/types.d.ts} +97 -97
- package/dist/types/src/utils/fetch.d.ts +6 -0
- package/dist/types/{utils → src/utils}/filterEligibility.d.ts +3 -3
- package/dist/types/{utils → src/utils}/index.d.ts +7 -7
- package/dist/types/{utils → src/utils}/index.test.d.ts +1 -1
- package/dist/types/{utils → src/utils}/merchantOrderPreferences.d.ts +14 -14
- package/dist/types/{utils → src/utils}/paymentPlanStrings.d.ts +4 -4
- package/dist/types/{utils → src/utils}/utilsForStorage.d.ts +2 -2
- package/dist/types/{utils → src/utils}/utilsForStorage.test.d.ts +1 -1
- package/dist/types/src/widgets_controller.d.ts +15 -0
- package/dist/types/vite.config.d.ts +2 -0
- package/dist/widgets-wc.umd.js +55 -1
- package/dist/widgets-wc.umd.js.map +1 -0
- package/dist/widgets.css +1 -16
- package/dist/widgets.js +7332 -1
- package/dist/widgets.js.map +1 -1
- package/dist/widgets.min.css +1 -0
- package/dist/widgets.umd.js +55 -1
- package/dist/widgets.umd.js.map +1 -1
- package/package.json +14 -8
- package/dist/raw/widgets-wc.umd.js +0 -17971
- package/dist/raw/widgets.css +0 -577
- package/dist/raw/widgets.js +0 -3422
- package/dist/raw/widgets.js.map +0 -1
- package/dist/raw/widgets.m.js +0 -3426
- package/dist/raw/widgets.m.js.map +0 -1
- package/dist/raw/widgets.modern.js +0 -3360
- package/dist/raw/widgets.modern.js.map +0 -1
- package/dist/raw/widgets.umd.js +0 -17971
- package/dist/raw/widgets.umd.js.map +0 -1
- package/dist/types/Widgets/EligibilityModal/components/Cards/index.d.ts +0 -7
- package/dist/types/Widgets/EligibilityModal/components/Schedule/index.d.ts +0 -6
- package/dist/types/components/Installments/TotalBlock/index.d.ts +0 -6
- package/dist/types/components/Loader/index.d.ts +0 -5
- package/dist/types/components/LoadingIndicator/LoadingIndicator.d.ts +0 -4
- package/dist/types/hooks/useFetchEligibility.d.ts +0 -3
- package/dist/types/setupTests.d.ts +0 -1
- package/dist/types/utils/fetch.d.ts +0 -6
- package/dist/types/widgets_controller.d.ts +0 -15
- package/dist/widgets.m.js +0 -2
- package/dist/widgets.m.js.map +0 -1
- package/dist/widgets.modern.js +0 -2
- package/dist/widgets.modern.js.map +0 -1
- /package/dist/{raw/widgets-wc.umd.js.map → types/src/setupTests.d.ts} +0 -0
package/dist/widgets.umd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widgets.umd.js","sources":["../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/iterator-create-constructor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/function-uncurry-this-accessor.js","../node_modules/core-js/internals/is-possible-prototype.js","../node_modules/core-js/internals/iterator-define.js","../node_modules/core-js/internals/create-iter-result-object.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/function-uncurry-this-clause.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../src/types.ts","../node_modules/core-js/modules/es.array.from.js","../src/utils/index.ts","../src/utils/polyfills.js","../node_modules/object-assign/index.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/tslib/tslib.es6.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/@formatjs/icu-messageformat-parser/lib/error.js","../node_modules/@formatjs/icu-messageformat-parser/lib/types.js","../node_modules/@formatjs/ecma402-abstract/lib/utils.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/@formatjs/icu-messageformat-parser/lib/regex.generated.js","../node_modules/@formatjs/icu-skeleton-parser/lib/date-time.js","../node_modules/@formatjs/icu-skeleton-parser/lib/regex.generated.js","../node_modules/@formatjs/icu-skeleton-parser/lib/number.js","../node_modules/@formatjs/icu-messageformat-parser/lib/time-data.generated.js","../node_modules/@formatjs/icu-messageformat-parser/lib/parser.js","../node_modules/@formatjs/icu-messageformat-parser/lib/date-time-pattern-generator.js","../node_modules/@formatjs/icu-messageformat-parser/lib/index.js","../node_modules/@formatjs/fast-memoize/lib/index.js","../node_modules/intl-messageformat/lib/src/error.js","../node_modules/intl-messageformat/lib/src/formatters.js","../node_modules/intl-messageformat/lib/src/core.js","../node_modules/@formatjs/intl/lib/src/error.js","../node_modules/@formatjs/intl/lib/src/utils.js","../node_modules/@formatjs/intl/lib/src/message.js","../node_modules/@formatjs/intl/lib/src/dateTime.js","../node_modules/@formatjs/intl/lib/src/displayName.js","../node_modules/@formatjs/intl/lib/src/list.js","../node_modules/@formatjs/intl/lib/src/plural.js","../node_modules/@formatjs/intl/lib/src/relativeTime.js","../node_modules/@formatjs/intl/lib/src/number.js","../node_modules/react-intl/lib/src/utils.js","../node_modules/react-intl/lib/src/components/injectIntl.js","../node_modules/react-intl/lib/src/components/createFormattedComponent.js","../node_modules/react-intl/lib/src/components/useIntl.js","../node_modules/react-intl/lib/src/components/provider.js","../node_modules/@formatjs/intl/lib/src/create-intl.js","../node_modules/react-intl/lib/src/components/message.js","../node_modules/react-intl/lib/index.js","../src/intl/utils.ts","../src/intl/IntlProvider.tsx","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/scheduler/cjs/scheduler-tracing.production.min.js","../node_modules/scheduler/tracing.js","../node_modules/react-dom/index.js","../src/utils/filterEligibility.ts","../src/hooks/useFetchEligibility.ts","../src/utils/utilsForStorage.ts","../src/hooks/useSessionStorage.tsx","../src/utils/fetch.ts","../node_modules/classnames/index.js","../src/Widgets/EligibilityModal/classNames.const.ts","../src/components/Installments/TotalBlock/index.tsx","../src/components/LoadingIndicator/LoadingIndicator.tsx","../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/node_modules/react-is/index.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/react-modal/lib/helpers/tabbable.js","../node_modules/react-modal/lib/helpers/focusManager.js","../node_modules/react-modal/lib/helpers/scopeTab.js","../node_modules/warning/warning.js","../node_modules/exenv/index.js","../node_modules/react-modal/lib/helpers/safeHTMLElement.js","../node_modules/react-modal/lib/helpers/ariaAppHider.js","../node_modules/react-modal/lib/helpers/classList.js","../node_modules/react-modal/lib/helpers/portalOpenInstances.js","../node_modules/react-modal/lib/helpers/bodyTrap.js","../node_modules/react-modal/lib/components/ModalPortal.js","../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../node_modules/react-modal/lib/components/Modal.js","../node_modules/react-modal/lib/index.js","../node_modules/no-scroll/index.js","../src/assets/Cross.tsx","../src/components/Modal/index.tsx","../node_modules/react-responsive/dist/react-responsive.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/date-fns/esm/_lib/requiredArgs/index.js","../node_modules/date-fns/esm/toDate/index.js","../node_modules/date-fns/esm/startOfDay/index.js","../node_modules/date-fns/esm/isSameDay/index.js","../node_modules/date-fns/esm/secondsToMilliseconds/index.js","../node_modules/date-fns/esm/constants/index.js","../src/consts.ts","../src/index.ts","../src/utils/paymentPlanStrings.tsx","../src/Widgets/EligibilityModal/components/EligibilityPlansButtons/index.tsx","../src/components/Installments/Installment/index.tsx","../node_modules/date-fns/esm/isToday/index.js","../src/Widgets/EligibilityModal/components/Schedule/index.tsx","../src/assets/almaLogo.tsx","../src/assets/cards/amex.tsx","../src/assets/cards/visa.tsx","../src/assets/cards/mastercard.tsx","../src/assets/cards/cb.tsx","../src/Widgets/EligibilityModal/components/Cards/index.tsx","../src/Widgets/EligibilityModal/components/Info/index.tsx","../src/Widgets/EligibilityModal/components/Title/index.tsx","../src/Widgets/EligibilityModal/DesktopModal/index.tsx","../src/Widgets/EligibilityModal/MobileModal/index.tsx","../src/Widgets/EligibilityModal/index.tsx","../src/Widgets/EligibilityModal/ModalContainer.tsx","../src/components/Loader/index.tsx","../src/Widgets/PaymentPlans/classNames.const.ts","../src/Widgets/PaymentPlans/index.tsx","../src/utils/merchantOrderPreferences.ts","../src/hooks/useButtonAnimation.ts","../src/widgets_controller.tsx"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar globalThis = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});\n\n(store.versions || (store.versions = [])).push({\n version: '3.37.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar store = require('../internals/shared-store');\n\nmodule.exports = function (key, value) {\n return store[key] || (store[key] = value || {});\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar documentAll = typeof document == 'object' && document.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nmodule.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\).*$/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n if (length === 0) return !IS_INCLUDES && -1;\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = global[TARGET] && global[TARGET].prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar isPossiblePrototype = require('../internals/is-possible-prototype');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (isPossiblePrototype(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar isObject = require('../internals/is-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n requireObjectCoercible(O);\n aPossiblePrototype(proto);\n if (!isObject(O)) return O;\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nmodule.exports = function (argument) {\n return isObject(argument) || argument === null;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, [], argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n if (DESCRIPTORS) definePropertyModule.f(object, key, createPropertyDescriptor(0, value));\n else object[key] = value;\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n result = IS_CONSTRUCTOR ? new this() : [];\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","import { ApiMode } from 'consts'\nimport React from 'react'\n\nexport type ApiConfig = { domain: ApiMode; merchantId: string }\n\nexport enum widgetTypes {\n PaymentPlans = 'PaymentPlans',\n Modal = 'Modal',\n}\nexport enum statusResponse {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n}\n\nexport type ConfigPlan = {\n installmentsCount: number\n deferredDays?: number\n deferredMonths?: number\n minAmount: number\n maxAmount: number\n}\n\nexport type PaymentPlan = {\n customer_fee: number\n customer_interest: number\n due_date: number\n purchase_amount: number\n total_amount: number\n refunded_interest?: number\n}\nexport type EligibilityPlan = {\n annual_interest_rate?: number\n customer_total_cost_amount: number\n customer_total_cost_bps: number\n deferred_days: number\n deferred_months: number\n eligible: boolean\n reasons?: Record<string, unknown>\n installments_count: number\n payment_plan?: PaymentPlan[]\n purchase_amount: number\n constraints?: {\n purchase_amount?: { minimum: number; maximum: number }\n }\n}\n\nexport type EligibilityPlanToDisplay = EligibilityPlan & {\n minAmount?: number\n maxAmount?: number\n}\n\nexport enum Locale {\n en = 'en',\n 'fr-FR' = 'fr-FR',\n fr = 'fr',\n 'de-DE' = 'de-DE',\n de = 'de',\n it = 'it',\n 'it-IT' = 'it-IT',\n es = 'es',\n 'es-ES' = 'es-ES',\n pt = 'pt',\n 'pt-PT' = 'pt-PT',\n nl = 'nl',\n 'nl-NL' = 'nl-NL',\n 'nl-BE' = 'nl-BE',\n}\n\nexport type Card = 'cb' | 'amex' | 'mastercard' | 'visa'\n\nexport type PaymentPlanWidgetOptions = {\n container: string\n hideIfNotEligible?: boolean\n locale?: Locale\n cards?: Card[]\n monochrome?: boolean\n plans?: ConfigPlan[]\n purchaseAmount: number\n suggestedPaymentPlan?: number | number[]\n transitionDelay?: number\n hideBorder?: boolean\n customerBillingCountry?: string\n customerShippingCountry?: string\n onModalClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nexport type ModalOptions = {\n container: string\n clickableSelector: string\n purchaseAmount: number\n customerBillingCountry?: string\n customerShippingCountry?: string\n plans?: ConfigPlan[]\n locale?: Locale\n cards?: Card[]\n onClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nexport type WidgetNames = keyof typeof widgetTypes\n\nexport type WidgetOptions = PaymentPlanWidgetOptions | ModalOptions\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","import { EligibilityPlan } from '../types'\n\nexport function priceToCents(price: number): number {\n return Math.round(price * 100)\n}\n\nexport function priceFromCents(cents: number): number {\n return Number((cents / 100).toFixed(2))\n}\n\nexport function formatCents(cents: number): string {\n return String(priceFromCents(cents)).replace('.', ',')\n}\n\nexport const secondsToMilliseconds = (date: number): number => date * 1000\n\nexport const desktopWidth = 800\n\nexport const isP1X = (plan: EligibilityPlan): boolean =>\n plan?.installments_count === 1 && plan?.deferred_days === 0 && plan?.deferred_months === 0\n","/* eslint-disable */\n\n/*\n * Element.prototype.closest & Element.prototype.matches polyfills\n */\n\n;(function (ElementProto) {\n if (typeof ElementProto.matches !== 'function') {\n ElementProto.matches =\n ElementProto.msMatchesSelector ||\n ElementProto.mozMatchesSelector ||\n ElementProto.webkitMatchesSelector ||\n function matches(selector) {\n var element = this\n var elements = (element.document || element.ownerDocument).querySelectorAll(selector)\n var index = 0\n\n while (elements[index] && elements[index] !== element) {\n ++index\n }\n\n return Boolean(elements[index])\n }\n }\n\n if (typeof ElementProto.closest !== 'function') {\n ElementProto.closest = function closest(selector) {\n var element = this\n\n while (element && element.nodeType === 1) {\n if (element.matches(selector)) {\n return element\n }\n\n element = element.parentNode\n }\n\n return null\n }\n }\n})(window.Element.prototype)\n\n/*\n * Element.prototype.classList polyfill\n */\n\n// 1. String.prototype.trim polyfill\nif (!''.trim)\n String.prototype.trim = function () {\n return this.replace(/^[\\s]+|[\\s]+$/g, '')\n }\n;(function (window) {\n 'use strict' // prevent global namespace pollution\n if (!window.DOMException)\n (DOMException = function (reason) {\n this.message = reason\n }).prototype = new Error()\n var wsRE = /[\\11\\12\\14\\15\\40]/,\n wsIndex = 0,\n checkIfValidClassListEntry = function (O, V) {\n if (V === '')\n throw new DOMException(\n \"Failed to execute '\" + O + \"' on 'DOMTokenList': The token provided must not be empty.\"\n )\n if ((wsIndex = V.search(wsRE)) !== -1)\n throw new DOMException(\n \"Failed to execute '\" +\n O +\n \"' on 'DOMTokenList': \" +\n \"The token provided ('\" +\n V[wsIndex] +\n \"') contains HTML space characters, which are not valid in tokens.\"\n )\n }\n // 2. Implement the barebones DOMTokenList livelyness polyfill\n if (typeof DOMTokenList !== 'function')\n (function (window) {\n var document = window.document,\n Object = window.Object,\n hasOwnProp = Object.prototype.hasOwnProperty\n var defineProperty = Object.defineProperty,\n allowTokenListConstruction = 0,\n skipPropChange = 0\n\n var DOMTokenList = function () {\n if (!allowTokenListConstruction) throw TypeError('Illegal constructor') // internally let it through\n }\n\n DOMTokenList.prototype.toString = DOMTokenList.prototype.toLocaleString = function () {\n return this.value\n }\n DOMTokenList.prototype.add = function () {\n a: for (\n var v = 0, argLen = arguments.length, val = '', ele = this[' uCL'], proto = ele[' uCLp'];\n v !== argLen;\n ++v\n ) {\n ;(val = arguments[v] + ''), checkIfValidClassListEntry('add', val)\n for (var i = 0, Len = proto.length, resStr = val; i !== Len; ++i)\n if (this[i] === val) continue a\n else resStr += ' ' + this[i]\n ;(this[Len] = val), (proto.length += 1), (proto.value = resStr)\n }\n ;(skipPropChange = 1), (ele.className = proto.value), (skipPropChange = 0)\n }\n DOMTokenList.prototype.remove = function () {\n for (\n var v = 0, argLen = arguments.length, val = '', ele = this[' uCL'], proto = ele[' uCLp'];\n v !== argLen;\n ++v\n ) {\n ;(val = arguments[v] + ''), checkIfValidClassListEntry('remove', val)\n for (var i = 0, Len = proto.length, resStr = '', is = 0; i !== Len; ++i)\n if (is) {\n this[i - 1] = this[i]\n } else {\n if (this[i] !== val) {\n resStr += this[i] + ' '\n } else {\n is = 1\n }\n }\n if (!is) continue\n delete this[Len], (proto.length -= 1), (proto.value = resStr)\n }\n ;(skipPropChange = 1), (ele.className = proto.value), (skipPropChange = 0)\n }\n window.DOMTokenList = DOMTokenList\n\n function whenPropChanges() {\n var evt = window.event,\n prop = evt.propertyName\n if (\n !skipPropChange &&\n (prop === 'className' || (prop === 'classList' && !defineProperty))\n ) {\n var target = evt.srcElement,\n protoObjProto = target[' uCLp'],\n strval = '' + target[prop]\n var tokens = strval.trim().split(wsRE),\n resTokenList = target[prop === 'classList' ? ' uCL' : 'classList']\n var oldLen = protoObjProto.length\n a: for (\n var cI = 0, cLen = (protoObjProto.length = tokens.length), sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (var innerI = 0; innerI !== cI; ++innerI)\n if (tokens[innerI] === tokens[cI]) {\n sub++\n continue a\n }\n resTokenList[cI - sub] = tokens[cI]\n }\n for (var i = cLen - sub; i < oldLen; ++i) delete resTokenList[i] //remove trailing indexs\n if (prop !== 'classList') return\n ;(skipPropChange = 1), (target.classList = resTokenList), (target.className = strval)\n ;(skipPropChange = 0), (resTokenList.length = tokens.length - sub)\n }\n }\n\n function polyfillClassList(ele) {\n if (!ele || !('innerHTML' in ele)) throw TypeError('Illegal invocation')\n ele.detachEvent('onpropertychange', whenPropChanges) // prevent duplicate handler infinite loop\n allowTokenListConstruction = 1\n try {\n var protoObj = function () {}\n\n protoObj.prototype = new DOMTokenList()\n } finally {\n allowTokenListConstruction = 0\n }\n var protoObjProto = protoObj.prototype,\n resTokenList = new protoObj()\n a: for (\n var toks = ele.className.trim().split(wsRE), cI = 0, cLen = toks.length, sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (var innerI = 0; innerI !== cI; ++innerI)\n if (toks[innerI] === toks[cI]) {\n sub++\n continue a\n }\n this[cI - sub] = toks[cI]\n }\n ;(protoObjProto.length = cLen - sub),\n (protoObjProto.value = ele.className),\n (protoObjProto[' uCL'] = ele)\n if (defineProperty) {\n defineProperty(ele, 'classList', {\n // IE8 & IE9 allow defineProperty on the DOM\n enumerable: 1,\n get: function () {\n return resTokenList\n },\n configurable: 0,\n set: function (newVal) {\n ;(skipPropChange = 1),\n (ele.className = protoObjProto.value = newVal += ''),\n (skipPropChange = 0)\n var toks = newVal.trim().split(wsRE),\n oldLen = protoObjProto.length\n a: for (\n var cI = 0, cLen = (protoObjProto.length = toks.length), sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (var innerI = 0; innerI !== cI; ++innerI)\n if (toks[innerI] === toks[cI]) {\n sub++\n continue a\n }\n resTokenList[cI - sub] = toks[cI]\n }\n for (var i = cLen - sub; i < oldLen; ++i) delete resTokenList[i] //remove trailing indexs\n },\n })\n defineProperty(ele, ' uCLp', {\n // for accessing the hidden prototype\n enumerable: 0,\n configurable: 0,\n writeable: 0,\n value: protoObj.prototype,\n })\n defineProperty(protoObjProto, ' uCL', {\n enumerable: 0,\n configurable: 0,\n writeable: 0,\n value: ele,\n })\n } else {\n ;(ele.classList = resTokenList),\n (ele[' uCL'] = resTokenList),\n (ele[' uCLp'] = protoObj.prototype)\n }\n ele.attachEvent('onpropertychange', whenPropChanges)\n }\n\n try {\n // Much faster & cleaner version for IE8 & IE9:\n // Should work in IE8 because Element.prototype instanceof Node is true according to the specs\n window.Object.defineProperty(window.Element.prototype, 'classList', {\n enumerable: 1,\n get: function (val) {\n if (!hasOwnProp.call(this, 'classList')) polyfillClassList(this)\n return this.classList\n },\n configurable: 0,\n set: function (val) {\n this.className = val\n },\n })\n } catch (e) {\n // Less performant fallback for older browsers (IE 6-8):\n window[' uCL'] = polyfillClassList\n // the below code ensures polyfillClassList is applied to all current and future elements in the doc.\n document.documentElement.firstChild.appendChild(\n document.createElement('style')\n ).styleSheet.cssText =\n '_*{x-uCLp:expression(!this.hasOwnProperty(\"classList\")&&window[\" uCL\"](this))}' + // IE6\n '[class]{x-uCLp/**/:expression(!this.hasOwnProperty(\"classList\")&&window[\" uCL\"](this))}' //IE7-8\n }\n })(window)\n // 3. Patch in unsupported methods in DOMTokenList\n ;(function (DOMTokenListProto, testClass) {\n if (!DOMTokenListProto.item)\n DOMTokenListProto.item = function (i) {\n function NullCheck(n) {\n return n === void 0 ? null : n\n }\n\n return NullCheck(this[i])\n }\n if (!DOMTokenListProto.toggle || testClass.toggle('a', 0) !== false)\n DOMTokenListProto.toggle = function (val) {\n if (arguments.length > 1) return this[arguments[1] ? 'add' : 'remove'](val), !!arguments[1]\n var oldValue = this.value\n return this.remove(oldValue), oldValue === this.value && (this.add(val), true) /*|| false*/\n }\n if (!DOMTokenListProto.replace || typeof testClass.replace('a', 'b') !== 'boolean')\n DOMTokenListProto.replace = function (oldToken, newToken) {\n checkIfValidClassListEntry('replace', oldToken),\n checkIfValidClassListEntry('replace', newToken)\n var oldValue = this.value\n return this.remove(oldToken), this.value !== oldValue && (this.add(newToken), true)\n }\n if (!DOMTokenListProto.contains)\n DOMTokenListProto.contains = function (value) {\n for (var i = 0, Len = this.length; i !== Len; ++i) if (this[i] === value) return true\n return false\n }\n if (!DOMTokenListProto.forEach)\n DOMTokenListProto.forEach = function (f) {\n if (arguments.length === 1)\n for (var i = 0, Len = this.length; i !== Len; ++i) f(this[i], i, this)\n else\n for (var i = 0, Len = this.length, tArg = arguments[1]; i !== Len; ++i)\n f.call(tArg, this[i], i, this)\n }\n if (!DOMTokenListProto.entries)\n DOMTokenListProto.entries = function () {\n var nextIndex = 0,\n that = this\n return {\n next: function () {\n return nextIndex < that.length\n ? {\n value: [nextIndex, that[nextIndex]],\n done: false,\n }\n : { done: true }\n },\n }\n }\n if (!DOMTokenListProto.values)\n DOMTokenListProto.values = function () {\n var nextIndex = 0,\n that = this\n return {\n next: function () {\n return nextIndex < that.length\n ? { value: that[nextIndex], done: false }\n : { done: true }\n },\n }\n }\n if (!DOMTokenListProto.keys)\n DOMTokenListProto.keys = function () {\n var nextIndex = 0,\n that = this\n return {\n next: function () {\n return nextIndex < that.length ? { value: nextIndex, done: false } : { done: true }\n },\n }\n }\n })(window.DOMTokenList.prototype, window.document.createElement('div').classList)\n})(window)\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/** @license React v17.0.2\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=require(\"object-assign\"),n=60103,p=60106;exports.Fragment=60107;exports.StrictMode=60108;exports.Profiler=60114;var q=60109,r=60110,t=60112;exports.Suspense=60113;var u=60115,v=60116;\nif(\"function\"===typeof Symbol&&Symbol.for){var w=Symbol.for;n=w(\"react.element\");p=w(\"react.portal\");exports.Fragment=w(\"react.fragment\");exports.StrictMode=w(\"react.strict_mode\");exports.Profiler=w(\"react.profiler\");q=w(\"react.provider\");r=w(\"react.context\");t=w(\"react.forward_ref\");exports.Suspense=w(\"react.suspense\");u=w(\"react.memo\");v=w(\"react.lazy\")}var x=\"function\"===typeof Symbol&&Symbol.iterator;\nfunction y(a){if(null===a||\"object\"!==typeof a)return null;a=x&&a[x]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}function z(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}\nvar A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},B={};function C(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}C.prototype.isReactComponent={};C.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(z(85));this.updater.enqueueSetState(this,a,b,\"setState\")};C.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};\nfunction D(){}D.prototype=C.prototype;function E(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}var F=E.prototype=new D;F.constructor=E;l(F,C.prototype);F.isPureReactComponent=!0;var G={current:null},H=Object.prototype.hasOwnProperty,I={key:!0,ref:!0,__self:!0,__source:!0};\nfunction J(a,b,c){var e,d={},k=null,h=null;if(null!=b)for(e in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)H.call(b,e)&&!I.hasOwnProperty(e)&&(d[e]=b[e]);var g=arguments.length-2;if(1===g)d.children=c;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];d.children=f}if(a&&a.defaultProps)for(e in g=a.defaultProps,g)void 0===d[e]&&(d[e]=g[e]);return{$$typeof:n,type:a,key:k,ref:h,props:d,_owner:G.current}}\nfunction K(a,b){return{$$typeof:n,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function L(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===n}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var M=/\\/+/g;function N(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction O(a,b,c,e,d){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case n:case p:h=!0}}if(h)return h=a,d=d(h),a=\"\"===e?\".\"+N(h,0):e,Array.isArray(d)?(c=\"\",null!=a&&(c=a.replace(M,\"$&/\")+\"/\"),O(d,b,c,\"\",function(a){return a})):null!=d&&(L(d)&&(d=K(d,c+(!d.key||h&&h.key===d.key?\"\":(\"\"+d.key).replace(M,\"$&/\")+\"/\")+a)),b.push(d)),1;h=0;e=\"\"===e?\".\":e+\":\";if(Array.isArray(a))for(var g=\n0;g<a.length;g++){k=a[g];var f=e+N(k,g);h+=O(k,b,c,f,d)}else if(f=y(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=e+N(k,g++),h+=O(k,b,c,f,d);else if(\"object\"===k)throw b=\"\"+a,Error(z(31,\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b));return h}function P(a,b,c){if(null==a)return a;var e=[],d=0;O(a,e,\"\",\"\",function(a){return b.call(c,a,d++)});return e}\nfunction Q(a){if(-1===a._status){var b=a._result;b=b();a._status=0;a._result=b;b.then(function(b){0===a._status&&(b=b.default,a._status=1,a._result=b)},function(b){0===a._status&&(a._status=2,a._result=b)})}if(1===a._status)return a._result;throw a._result;}var R={current:null};function S(){var a=R.current;if(null===a)throw Error(z(321));return a}var T={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:G,IsSomeRendererActing:{current:!1},assign:l};\nexports.Children={map:P,forEach:function(a,b,c){P(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;P(a,function(){b++});return b},toArray:function(a){return P(a,function(a){return a})||[]},only:function(a){if(!L(a))throw Error(z(143));return a}};exports.Component=C;exports.PureComponent=E;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T;\nexports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(z(267,a));var e=l({},a.props),d=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=G.current);void 0!==b.key&&(d=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)H.call(b,f)&&!I.hasOwnProperty(f)&&(e[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)e.children=c;else if(1<f){g=Array(f);for(var m=0;m<f;m++)g[m]=arguments[m+2];e.children=g}return{$$typeof:n,type:a.type,\nkey:d,ref:k,props:e,_owner:h}};exports.createContext=function(a,b){void 0===b&&(b=null);a={$$typeof:r,_calculateChangedBits:b,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:q,_context:a};return a.Consumer=a};exports.createElement=J;exports.createFactory=function(a){var b=J.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};exports.forwardRef=function(a){return{$$typeof:t,render:a}};exports.isValidElement=L;\nexports.lazy=function(a){return{$$typeof:v,_payload:{_status:-1,_result:a},_init:Q}};exports.memo=function(a,b){return{$$typeof:u,type:a,compare:void 0===b?null:b}};exports.useCallback=function(a,b){return S().useCallback(a,b)};exports.useContext=function(a,b){return S().useContext(a,b)};exports.useDebugValue=function(){};exports.useEffect=function(a,b){return S().useEffect(a,b)};exports.useImperativeHandle=function(a,b,c){return S().useImperativeHandle(a,b,c)};\nexports.useLayoutEffect=function(a,b){return S().useLayoutEffect(a,b)};exports.useMemo=function(a,b){return S().useMemo(a,b)};exports.useReducer=function(a,b,c){return S().useReducer(a,b,c)};exports.useRef=function(a){return S().useRef(a)};exports.useState=function(a){return S().useState(a)};exports.version=\"17.0.2\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","export var ErrorKind;\n(function (ErrorKind) {\n /** Argument is unclosed (e.g. `{0`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_CLOSING_BRACE\"] = 1] = \"EXPECT_ARGUMENT_CLOSING_BRACE\";\n /** Argument is empty (e.g. `{}`). */\n ErrorKind[ErrorKind[\"EMPTY_ARGUMENT\"] = 2] = \"EMPTY_ARGUMENT\";\n /** Argument is malformed (e.g. `{foo!}``) */\n ErrorKind[ErrorKind[\"MALFORMED_ARGUMENT\"] = 3] = \"MALFORMED_ARGUMENT\";\n /** Expect an argument type (e.g. `{foo,}`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_TYPE\"] = 4] = \"EXPECT_ARGUMENT_TYPE\";\n /** Unsupported argument type (e.g. `{foo,foo}`) */\n ErrorKind[ErrorKind[\"INVALID_ARGUMENT_TYPE\"] = 5] = \"INVALID_ARGUMENT_TYPE\";\n /** Expect an argument style (e.g. `{foo, number, }`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_STYLE\"] = 6] = \"EXPECT_ARGUMENT_STYLE\";\n /** The number skeleton is invalid. */\n ErrorKind[ErrorKind[\"INVALID_NUMBER_SKELETON\"] = 7] = \"INVALID_NUMBER_SKELETON\";\n /** The date time skeleton is invalid. */\n ErrorKind[ErrorKind[\"INVALID_DATE_TIME_SKELETON\"] = 8] = \"INVALID_DATE_TIME_SKELETON\";\n /** Exepct a number skeleton following the `::` (e.g. `{foo, number, ::}`) */\n ErrorKind[ErrorKind[\"EXPECT_NUMBER_SKELETON\"] = 9] = \"EXPECT_NUMBER_SKELETON\";\n /** Exepct a date time skeleton following the `::` (e.g. `{foo, date, ::}`) */\n ErrorKind[ErrorKind[\"EXPECT_DATE_TIME_SKELETON\"] = 10] = \"EXPECT_DATE_TIME_SKELETON\";\n /** Unmatched apostrophes in the argument style (e.g. `{foo, number, 'test`) */\n ErrorKind[ErrorKind[\"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\"] = 11] = \"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\";\n /** Missing select argument options (e.g. `{foo, select}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_OPTIONS\"] = 12] = \"EXPECT_SELECT_ARGUMENT_OPTIONS\";\n /** Expecting an offset value in `plural` or `selectordinal` argument (e.g `{foo, plural, offset}`) */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\"] = 13] = \"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\";\n /** Offset value in `plural` or `selectordinal` is invalid (e.g. `{foo, plural, offset: x}`) */\n ErrorKind[ErrorKind[\"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\"] = 14] = \"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\";\n /** Expecting a selector in `select` argument (e.g `{foo, select}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_SELECTOR\"] = 15] = \"EXPECT_SELECT_ARGUMENT_SELECTOR\";\n /** Expecting a selector in `plural` or `selectordinal` argument (e.g `{foo, plural}`) */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_SELECTOR\"] = 16] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR\";\n /** Expecting a message fragment after the `select` selector (e.g. `{foo, select, apple}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\"] = 17] = \"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\";\n /**\n * Expecting a message fragment after the `plural` or `selectordinal` selector\n * (e.g. `{foo, plural, one}`)\n */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\"] = 18] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\";\n /** Selector in `plural` or `selectordinal` is malformed (e.g. `{foo, plural, =x {#}}`) */\n ErrorKind[ErrorKind[\"INVALID_PLURAL_ARGUMENT_SELECTOR\"] = 19] = \"INVALID_PLURAL_ARGUMENT_SELECTOR\";\n /**\n * Duplicate selectors in `plural` or `selectordinal` argument.\n * (e.g. {foo, plural, one {#} one {#}})\n */\n ErrorKind[ErrorKind[\"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\"] = 20] = \"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\";\n /** Duplicate selectors in `select` argument.\n * (e.g. {foo, select, apple {apple} apple {apple}})\n */\n ErrorKind[ErrorKind[\"DUPLICATE_SELECT_ARGUMENT_SELECTOR\"] = 21] = \"DUPLICATE_SELECT_ARGUMENT_SELECTOR\";\n /** Plural or select argument option must have `other` clause. */\n ErrorKind[ErrorKind[\"MISSING_OTHER_CLAUSE\"] = 22] = \"MISSING_OTHER_CLAUSE\";\n /** The tag is malformed. (e.g. `<bold!>foo</bold!>) */\n ErrorKind[ErrorKind[\"INVALID_TAG\"] = 23] = \"INVALID_TAG\";\n /** The tag name is invalid. (e.g. `<123>foo</123>`) */\n ErrorKind[ErrorKind[\"INVALID_TAG_NAME\"] = 25] = \"INVALID_TAG_NAME\";\n /** The closing tag does not match the opening tag. (e.g. `<bold>foo</italic>`) */\n ErrorKind[ErrorKind[\"UNMATCHED_CLOSING_TAG\"] = 26] = \"UNMATCHED_CLOSING_TAG\";\n /** The opening tag has unmatched closing tag. (e.g. `<bold>foo`) */\n ErrorKind[ErrorKind[\"UNCLOSED_TAG\"] = 27] = \"UNCLOSED_TAG\";\n})(ErrorKind || (ErrorKind = {}));\n","export var TYPE;\n(function (TYPE) {\n /**\n * Raw text\n */\n TYPE[TYPE[\"literal\"] = 0] = \"literal\";\n /**\n * Variable w/o any format, e.g `var` in `this is a {var}`\n */\n TYPE[TYPE[\"argument\"] = 1] = \"argument\";\n /**\n * Variable w/ number format\n */\n TYPE[TYPE[\"number\"] = 2] = \"number\";\n /**\n * Variable w/ date format\n */\n TYPE[TYPE[\"date\"] = 3] = \"date\";\n /**\n * Variable w/ time format\n */\n TYPE[TYPE[\"time\"] = 4] = \"time\";\n /**\n * Variable w/ select format\n */\n TYPE[TYPE[\"select\"] = 5] = \"select\";\n /**\n * Variable w/ plural format\n */\n TYPE[TYPE[\"plural\"] = 6] = \"plural\";\n /**\n * Only possible within plural argument.\n * This is the `#` symbol that will be substituted with the count.\n */\n TYPE[TYPE[\"pound\"] = 7] = \"pound\";\n /**\n * XML-like tag\n */\n TYPE[TYPE[\"tag\"] = 8] = \"tag\";\n})(TYPE || (TYPE = {}));\nexport var SKELETON_TYPE;\n(function (SKELETON_TYPE) {\n SKELETON_TYPE[SKELETON_TYPE[\"number\"] = 0] = \"number\";\n SKELETON_TYPE[SKELETON_TYPE[\"dateTime\"] = 1] = \"dateTime\";\n})(SKELETON_TYPE || (SKELETON_TYPE = {}));\n/**\n * Type Guards\n */\nexport function isLiteralElement(el) {\n return el.type === TYPE.literal;\n}\nexport function isArgumentElement(el) {\n return el.type === TYPE.argument;\n}\nexport function isNumberElement(el) {\n return el.type === TYPE.number;\n}\nexport function isDateElement(el) {\n return el.type === TYPE.date;\n}\nexport function isTimeElement(el) {\n return el.type === TYPE.time;\n}\nexport function isSelectElement(el) {\n return el.type === TYPE.select;\n}\nexport function isPluralElement(el) {\n return el.type === TYPE.plural;\n}\nexport function isPoundElement(el) {\n return el.type === TYPE.pound;\n}\nexport function isTagElement(el) {\n return el.type === TYPE.tag;\n}\nexport function isNumberSkeleton(el) {\n return !!(el && typeof el === 'object' && el.type === SKELETON_TYPE.number);\n}\nexport function isDateTimeSkeleton(el) {\n return !!(el && typeof el === 'object' && el.type === SKELETON_TYPE.dateTime);\n}\nexport function createLiteralElement(value) {\n return {\n type: TYPE.literal,\n value: value,\n };\n}\nexport function createNumberElement(value, style) {\n return {\n type: TYPE.number,\n value: value,\n style: style,\n };\n}\n","/**\n * Cannot do Math.log(x) / Math.log(10) bc if IEEE floating point issue\n * @param x number\n */\nexport function getMagnitude(x) {\n // Cannot count string length via Number.toString because it may use scientific notation\n // for very small or very large numbers.\n return Math.floor(Math.log(x) * Math.LOG10E);\n}\nexport function repeat(s, times) {\n if (typeof s.repeat === 'function') {\n return s.repeat(times);\n }\n var arr = new Array(times);\n for (var i = 0; i < arr.length; i++) {\n arr[i] = s;\n }\n return arr.join('');\n}\nexport function setInternalSlot(map, pl, field, value) {\n if (!map.get(pl)) {\n map.set(pl, Object.create(null));\n }\n var slots = map.get(pl);\n slots[field] = value;\n}\nexport function setMultiInternalSlots(map, pl, props) {\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\n var k = _a[_i];\n setInternalSlot(map, pl, k, props[k]);\n }\n}\nexport function getInternalSlot(map, pl, field) {\n return getMultiInternalSlots(map, pl, field)[field];\n}\nexport function getMultiInternalSlots(map, pl) {\n var fields = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n fields[_i - 2] = arguments[_i];\n }\n var slots = map.get(pl);\n if (!slots) {\n throw new TypeError(\"\".concat(pl, \" InternalSlot has not been initialized\"));\n }\n return fields.reduce(function (all, f) {\n all[f] = slots[f];\n return all;\n }, Object.create(null));\n}\nexport function isLiteralPart(patternPart) {\n return patternPart.type === 'literal';\n}\n/*\n 17 ECMAScript Standard Built-in Objects:\n Every built-in Function object, including constructors, that is not\n identified as an anonymous function has a name property whose value\n is a String.\n\n Unless otherwise specified, the name property of a built-in Function\n object, if it exists, has the attributes { [[Writable]]: false,\n [[Enumerable]]: false, [[Configurable]]: true }.\n*/\nexport function defineProperty(target, name, _a) {\n var value = _a.value;\n Object.defineProperty(target, name, {\n configurable: true,\n enumerable: false,\n writable: true,\n value: value,\n });\n}\nexport var UNICODE_EXTENSION_SEQUENCE_REGEX = /-u(?:-[0-9a-z]{2,8})+/gi;\nexport function invariant(condition, message, Err) {\n if (Err === void 0) { Err = Error; }\n if (!condition) {\n throw new Err(message);\n }\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","// @generated from regex-gen.ts\nexport var SPACE_SEPARATOR_REGEX = /[ \\xA0\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/;\nexport var WHITE_SPACE_REGEX = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/;\n","/**\n * https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * Credit: https://github.com/caridy/intl-datetimeformat-pattern/blob/master/index.js\n * with some tweaks\n */\nvar DATE_TIME_REGEX = /(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;\n/**\n * Parse Date time skeleton into Intl.DateTimeFormatOptions\n * Ref: https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * @public\n * @param skeleton skeleton string\n */\nexport function parseDateTimeSkeleton(skeleton) {\n var result = {};\n skeleton.replace(DATE_TIME_REGEX, function (match) {\n var len = match.length;\n switch (match[0]) {\n // Era\n case 'G':\n result.era = len === 4 ? 'long' : len === 5 ? 'narrow' : 'short';\n break;\n // Year\n case 'y':\n result.year = len === 2 ? '2-digit' : 'numeric';\n break;\n case 'Y':\n case 'u':\n case 'U':\n case 'r':\n throw new RangeError('`Y/u/U/r` (year) patterns are not supported, use `y` instead');\n // Quarter\n case 'q':\n case 'Q':\n throw new RangeError('`q/Q` (quarter) patterns are not supported');\n // Month\n case 'M':\n case 'L':\n result.month = ['numeric', '2-digit', 'short', 'long', 'narrow'][len - 1];\n break;\n // Week\n case 'w':\n case 'W':\n throw new RangeError('`w/W` (week) patterns are not supported');\n case 'd':\n result.day = ['numeric', '2-digit'][len - 1];\n break;\n case 'D':\n case 'F':\n case 'g':\n throw new RangeError('`D/F/g` (day) patterns are not supported, use `d` instead');\n // Weekday\n case 'E':\n result.weekday = len === 4 ? 'short' : len === 5 ? 'narrow' : 'short';\n break;\n case 'e':\n if (len < 4) {\n throw new RangeError('`e..eee` (weekday) patterns are not supported');\n }\n result.weekday = ['short', 'long', 'narrow', 'short'][len - 4];\n break;\n case 'c':\n if (len < 4) {\n throw new RangeError('`c..ccc` (weekday) patterns are not supported');\n }\n result.weekday = ['short', 'long', 'narrow', 'short'][len - 4];\n break;\n // Period\n case 'a': // AM, PM\n result.hour12 = true;\n break;\n case 'b': // am, pm, noon, midnight\n case 'B': // flexible day periods\n throw new RangeError('`b/B` (period) patterns are not supported, use `a` instead');\n // Hour\n case 'h':\n result.hourCycle = 'h12';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'H':\n result.hourCycle = 'h23';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'K':\n result.hourCycle = 'h11';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'k':\n result.hourCycle = 'h24';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'j':\n case 'J':\n case 'C':\n throw new RangeError('`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead');\n // Minute\n case 'm':\n result.minute = ['numeric', '2-digit'][len - 1];\n break;\n // Second\n case 's':\n result.second = ['numeric', '2-digit'][len - 1];\n break;\n case 'S':\n case 'A':\n throw new RangeError('`S/A` (second) patterns are not supported, use `s` instead');\n // Zone\n case 'z': // 1..3, 4: specific non-location format\n result.timeZoneName = len < 4 ? 'short' : 'long';\n break;\n case 'Z': // 1..3, 4, 5: The ISO8601 varios formats\n case 'O': // 1, 4: miliseconds in day short, long\n case 'v': // 1, 4: generic non-location format\n case 'V': // 1, 2, 3, 4: time zone ID or city\n case 'X': // 1, 2, 3, 4: The ISO8601 varios formats\n case 'x': // 1, 2, 3, 4: The ISO8601 varios formats\n throw new RangeError('`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead');\n }\n return '';\n });\n return result;\n}\n","// @generated from regex-gen.ts\nexport var WHITE_SPACE_REGEX = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/i;\n","import { __assign } from \"tslib\";\nimport { WHITE_SPACE_REGEX } from './regex.generated';\nexport function parseNumberSkeletonFromString(skeleton) {\n if (skeleton.length === 0) {\n throw new Error('Number skeleton cannot be empty');\n }\n // Parse the skeleton\n var stringTokens = skeleton\n .split(WHITE_SPACE_REGEX)\n .filter(function (x) { return x.length > 0; });\n var tokens = [];\n for (var _i = 0, stringTokens_1 = stringTokens; _i < stringTokens_1.length; _i++) {\n var stringToken = stringTokens_1[_i];\n var stemAndOptions = stringToken.split('/');\n if (stemAndOptions.length === 0) {\n throw new Error('Invalid number skeleton');\n }\n var stem = stemAndOptions[0], options = stemAndOptions.slice(1);\n for (var _a = 0, options_1 = options; _a < options_1.length; _a++) {\n var option = options_1[_a];\n if (option.length === 0) {\n throw new Error('Invalid number skeleton');\n }\n }\n tokens.push({ stem: stem, options: options });\n }\n return tokens;\n}\nfunction icuUnitToEcma(unit) {\n return unit.replace(/^(.*?)-/, '');\n}\nvar FRACTION_PRECISION_REGEX = /^\\.(?:(0+)(\\*)?|(#+)|(0+)(#+))$/g;\nvar SIGNIFICANT_PRECISION_REGEX = /^(@+)?(\\+|#+)?[rs]?$/g;\nvar INTEGER_WIDTH_REGEX = /(\\*)(0+)|(#+)(0+)|(0+)/g;\nvar CONCISE_INTEGER_WIDTH_REGEX = /^(0+)$/;\nfunction parseSignificantPrecision(str) {\n var result = {};\n if (str[str.length - 1] === 'r') {\n result.roundingPriority = 'morePrecision';\n }\n else if (str[str.length - 1] === 's') {\n result.roundingPriority = 'lessPrecision';\n }\n str.replace(SIGNIFICANT_PRECISION_REGEX, function (_, g1, g2) {\n // @@@ case\n if (typeof g2 !== 'string') {\n result.minimumSignificantDigits = g1.length;\n result.maximumSignificantDigits = g1.length;\n }\n // @@@+ case\n else if (g2 === '+') {\n result.minimumSignificantDigits = g1.length;\n }\n // .### case\n else if (g1[0] === '#') {\n result.maximumSignificantDigits = g1.length;\n }\n // .@@## or .@@@ case\n else {\n result.minimumSignificantDigits = g1.length;\n result.maximumSignificantDigits =\n g1.length + (typeof g2 === 'string' ? g2.length : 0);\n }\n return '';\n });\n return result;\n}\nfunction parseSign(str) {\n switch (str) {\n case 'sign-auto':\n return {\n signDisplay: 'auto',\n };\n case 'sign-accounting':\n case '()':\n return {\n currencySign: 'accounting',\n };\n case 'sign-always':\n case '+!':\n return {\n signDisplay: 'always',\n };\n case 'sign-accounting-always':\n case '()!':\n return {\n signDisplay: 'always',\n currencySign: 'accounting',\n };\n case 'sign-except-zero':\n case '+?':\n return {\n signDisplay: 'exceptZero',\n };\n case 'sign-accounting-except-zero':\n case '()?':\n return {\n signDisplay: 'exceptZero',\n currencySign: 'accounting',\n };\n case 'sign-never':\n case '+_':\n return {\n signDisplay: 'never',\n };\n }\n}\nfunction parseConciseScientificAndEngineeringStem(stem) {\n // Engineering\n var result;\n if (stem[0] === 'E' && stem[1] === 'E') {\n result = {\n notation: 'engineering',\n };\n stem = stem.slice(2);\n }\n else if (stem[0] === 'E') {\n result = {\n notation: 'scientific',\n };\n stem = stem.slice(1);\n }\n if (result) {\n var signDisplay = stem.slice(0, 2);\n if (signDisplay === '+!') {\n result.signDisplay = 'always';\n stem = stem.slice(2);\n }\n else if (signDisplay === '+?') {\n result.signDisplay = 'exceptZero';\n stem = stem.slice(2);\n }\n if (!CONCISE_INTEGER_WIDTH_REGEX.test(stem)) {\n throw new Error('Malformed concise eng/scientific notation');\n }\n result.minimumIntegerDigits = stem.length;\n }\n return result;\n}\nfunction parseNotationOptions(opt) {\n var result = {};\n var signOpts = parseSign(opt);\n if (signOpts) {\n return signOpts;\n }\n return result;\n}\n/**\n * https://github.com/unicode-org/icu/blob/master/docs/userguide/format_parse/numbers/skeletons.md#skeleton-stems-and-options\n */\nexport function parseNumberSkeleton(tokens) {\n var result = {};\n for (var _i = 0, tokens_1 = tokens; _i < tokens_1.length; _i++) {\n var token = tokens_1[_i];\n switch (token.stem) {\n case 'percent':\n case '%':\n result.style = 'percent';\n continue;\n case '%x100':\n result.style = 'percent';\n result.scale = 100;\n continue;\n case 'currency':\n result.style = 'currency';\n result.currency = token.options[0];\n continue;\n case 'group-off':\n case ',_':\n result.useGrouping = false;\n continue;\n case 'precision-integer':\n case '.':\n result.maximumFractionDigits = 0;\n continue;\n case 'measure-unit':\n case 'unit':\n result.style = 'unit';\n result.unit = icuUnitToEcma(token.options[0]);\n continue;\n case 'compact-short':\n case 'K':\n result.notation = 'compact';\n result.compactDisplay = 'short';\n continue;\n case 'compact-long':\n case 'KK':\n result.notation = 'compact';\n result.compactDisplay = 'long';\n continue;\n case 'scientific':\n result = __assign(__assign(__assign({}, result), { notation: 'scientific' }), token.options.reduce(function (all, opt) { return (__assign(__assign({}, all), parseNotationOptions(opt))); }, {}));\n continue;\n case 'engineering':\n result = __assign(__assign(__assign({}, result), { notation: 'engineering' }), token.options.reduce(function (all, opt) { return (__assign(__assign({}, all), parseNotationOptions(opt))); }, {}));\n continue;\n case 'notation-simple':\n result.notation = 'standard';\n continue;\n // https://github.com/unicode-org/icu/blob/master/icu4c/source/i18n/unicode/unumberformatter.h\n case 'unit-width-narrow':\n result.currencyDisplay = 'narrowSymbol';\n result.unitDisplay = 'narrow';\n continue;\n case 'unit-width-short':\n result.currencyDisplay = 'code';\n result.unitDisplay = 'short';\n continue;\n case 'unit-width-full-name':\n result.currencyDisplay = 'name';\n result.unitDisplay = 'long';\n continue;\n case 'unit-width-iso-code':\n result.currencyDisplay = 'symbol';\n continue;\n case 'scale':\n result.scale = parseFloat(token.options[0]);\n continue;\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#integer-width\n case 'integer-width':\n if (token.options.length > 1) {\n throw new RangeError('integer-width stems only accept a single optional option');\n }\n token.options[0].replace(INTEGER_WIDTH_REGEX, function (_, g1, g2, g3, g4, g5) {\n if (g1) {\n result.minimumIntegerDigits = g2.length;\n }\n else if (g3 && g4) {\n throw new Error('We currently do not support maximum integer digits');\n }\n else if (g5) {\n throw new Error('We currently do not support exact integer digits');\n }\n return '';\n });\n continue;\n }\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#integer-width\n if (CONCISE_INTEGER_WIDTH_REGEX.test(token.stem)) {\n result.minimumIntegerDigits = token.stem.length;\n continue;\n }\n if (FRACTION_PRECISION_REGEX.test(token.stem)) {\n // Precision\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#fraction-precision\n // precision-integer case\n if (token.options.length > 1) {\n throw new RangeError('Fraction-precision stems only accept a single optional option');\n }\n token.stem.replace(FRACTION_PRECISION_REGEX, function (_, g1, g2, g3, g4, g5) {\n // .000* case (before ICU67 it was .000+)\n if (g2 === '*') {\n result.minimumFractionDigits = g1.length;\n }\n // .### case\n else if (g3 && g3[0] === '#') {\n result.maximumFractionDigits = g3.length;\n }\n // .00## case\n else if (g4 && g5) {\n result.minimumFractionDigits = g4.length;\n result.maximumFractionDigits = g4.length + g5.length;\n }\n else {\n result.minimumFractionDigits = g1.length;\n result.maximumFractionDigits = g1.length;\n }\n return '';\n });\n var opt = token.options[0];\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#trailing-zero-display\n if (opt === 'w') {\n result = __assign(__assign({}, result), { trailingZeroDisplay: 'stripIfInteger' });\n }\n else if (opt) {\n result = __assign(__assign({}, result), parseSignificantPrecision(opt));\n }\n continue;\n }\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#significant-digits-precision\n if (SIGNIFICANT_PRECISION_REGEX.test(token.stem)) {\n result = __assign(__assign({}, result), parseSignificantPrecision(token.stem));\n continue;\n }\n var signOpts = parseSign(token.stem);\n if (signOpts) {\n result = __assign(__assign({}, result), signOpts);\n }\n var conciseScientificAndEngineeringOpts = parseConciseScientificAndEngineeringStem(token.stem);\n if (conciseScientificAndEngineeringOpts) {\n result = __assign(__assign({}, result), conciseScientificAndEngineeringOpts);\n }\n }\n return result;\n}\n","// @generated from time-data-gen.ts\n// prettier-ignore \nexport var timeData = {\n \"AX\": [\n \"H\"\n ],\n \"BQ\": [\n \"H\"\n ],\n \"CP\": [\n \"H\"\n ],\n \"CZ\": [\n \"H\"\n ],\n \"DK\": [\n \"H\"\n ],\n \"FI\": [\n \"H\"\n ],\n \"ID\": [\n \"H\"\n ],\n \"IS\": [\n \"H\"\n ],\n \"ML\": [\n \"H\"\n ],\n \"NE\": [\n \"H\"\n ],\n \"RU\": [\n \"H\"\n ],\n \"SE\": [\n \"H\"\n ],\n \"SJ\": [\n \"H\"\n ],\n \"SK\": [\n \"H\"\n ],\n \"AS\": [\n \"h\",\n \"H\"\n ],\n \"BT\": [\n \"h\",\n \"H\"\n ],\n \"DJ\": [\n \"h\",\n \"H\"\n ],\n \"ER\": [\n \"h\",\n \"H\"\n ],\n \"GH\": [\n \"h\",\n \"H\"\n ],\n \"IN\": [\n \"h\",\n \"H\"\n ],\n \"LS\": [\n \"h\",\n \"H\"\n ],\n \"PG\": [\n \"h\",\n \"H\"\n ],\n \"PW\": [\n \"h\",\n \"H\"\n ],\n \"SO\": [\n \"h\",\n \"H\"\n ],\n \"TO\": [\n \"h\",\n \"H\"\n ],\n \"VU\": [\n \"h\",\n \"H\"\n ],\n \"WS\": [\n \"h\",\n \"H\"\n ],\n \"001\": [\n \"H\",\n \"h\"\n ],\n \"AL\": [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"TD\": [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"ca-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"CF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"CM\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"fr-CA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"gl-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-CH\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-IT\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"LU\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"NP\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"PF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SC\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SM\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SN\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"TF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"VA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"CY\": [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n \"GR\": [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n \"CO\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"DO\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"KP\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"KR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"NA\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"PA\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"PR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"VE\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"AC\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"AI\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"BW\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"BZ\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CC\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CX\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"DG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"FK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GB\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GI\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IE\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IM\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IO\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"JE\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"LT\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"MK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"MN\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"MS\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NF\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NR\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NU\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"PN\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"SH\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"SX\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"TA\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"ZA\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"af-ZA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"AR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"CL\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"CR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"CU\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"EA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BO\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-EC\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-ES\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-GQ\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-PE\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"GT\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"HN\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"IC\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"KG\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"KM\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"LK\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"MA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"MX\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"NI\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"PY\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"SV\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"UY\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"JP\": [\n \"H\",\n \"h\",\n \"K\"\n ],\n \"AD\": [\n \"H\",\n \"hB\"\n ],\n \"AM\": [\n \"H\",\n \"hB\"\n ],\n \"AO\": [\n \"H\",\n \"hB\"\n ],\n \"AT\": [\n \"H\",\n \"hB\"\n ],\n \"AW\": [\n \"H\",\n \"hB\"\n ],\n \"BE\": [\n \"H\",\n \"hB\"\n ],\n \"BF\": [\n \"H\",\n \"hB\"\n ],\n \"BJ\": [\n \"H\",\n \"hB\"\n ],\n \"BL\": [\n \"H\",\n \"hB\"\n ],\n \"BR\": [\n \"H\",\n \"hB\"\n ],\n \"CG\": [\n \"H\",\n \"hB\"\n ],\n \"CI\": [\n \"H\",\n \"hB\"\n ],\n \"CV\": [\n \"H\",\n \"hB\"\n ],\n \"DE\": [\n \"H\",\n \"hB\"\n ],\n \"EE\": [\n \"H\",\n \"hB\"\n ],\n \"FR\": [\n \"H\",\n \"hB\"\n ],\n \"GA\": [\n \"H\",\n \"hB\"\n ],\n \"GF\": [\n \"H\",\n \"hB\"\n ],\n \"GN\": [\n \"H\",\n \"hB\"\n ],\n \"GP\": [\n \"H\",\n \"hB\"\n ],\n \"GW\": [\n \"H\",\n \"hB\"\n ],\n \"HR\": [\n \"H\",\n \"hB\"\n ],\n \"IL\": [\n \"H\",\n \"hB\"\n ],\n \"IT\": [\n \"H\",\n \"hB\"\n ],\n \"KZ\": [\n \"H\",\n \"hB\"\n ],\n \"MC\": [\n \"H\",\n \"hB\"\n ],\n \"MD\": [\n \"H\",\n \"hB\"\n ],\n \"MF\": [\n \"H\",\n \"hB\"\n ],\n \"MQ\": [\n \"H\",\n \"hB\"\n ],\n \"MZ\": [\n \"H\",\n \"hB\"\n ],\n \"NC\": [\n \"H\",\n \"hB\"\n ],\n \"NL\": [\n \"H\",\n \"hB\"\n ],\n \"PM\": [\n \"H\",\n \"hB\"\n ],\n \"PT\": [\n \"H\",\n \"hB\"\n ],\n \"RE\": [\n \"H\",\n \"hB\"\n ],\n \"RO\": [\n \"H\",\n \"hB\"\n ],\n \"SI\": [\n \"H\",\n \"hB\"\n ],\n \"SR\": [\n \"H\",\n \"hB\"\n ],\n \"ST\": [\n \"H\",\n \"hB\"\n ],\n \"TG\": [\n \"H\",\n \"hB\"\n ],\n \"TR\": [\n \"H\",\n \"hB\"\n ],\n \"WF\": [\n \"H\",\n \"hB\"\n ],\n \"YT\": [\n \"H\",\n \"hB\"\n ],\n \"BD\": [\n \"h\",\n \"hB\",\n \"H\"\n ],\n \"PK\": [\n \"h\",\n \"hB\",\n \"H\"\n ],\n \"AZ\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"BA\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"BG\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"CH\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"GE\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"LI\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"ME\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"RS\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"UA\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"UZ\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"XK\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"AG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"AU\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BB\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BS\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"CA\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"DM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"en-001\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"FJ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"FM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GD\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GU\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GY\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"JM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KI\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KN\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KY\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"LC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"LR\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MH\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MP\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MW\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"NZ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SB\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SL\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SS\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SZ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"TC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"TT\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"UM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"US\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VI\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"ZM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BO\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"EC\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"ES\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"GQ\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"PE\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"AE\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"ar-001\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"BH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"DZ\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"EG\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"EH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"HK\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"IQ\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"JO\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"KW\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"LB\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"LY\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"MO\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"MR\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"OM\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"PH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"PS\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"QA\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SA\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SD\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SY\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"TN\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"YE\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"AF\": [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n \"LA\": [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n \"CN\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"LV\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"TL\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"zu-ZA\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"CD\": [\n \"hB\",\n \"H\"\n ],\n \"IR\": [\n \"hB\",\n \"H\"\n ],\n \"hi-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"kn-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"ml-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"te-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"KH\": [\n \"hB\",\n \"h\",\n \"H\",\n \"hb\"\n ],\n \"ta-IN\": [\n \"hB\",\n \"h\",\n \"hb\",\n \"H\"\n ],\n \"BN\": [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"MY\": [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"ET\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"gu-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"mr-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"pa-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"TW\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"KE\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"MM\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"TZ\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"UG\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ]\n};\n","var _a;\nimport { __assign } from \"tslib\";\nimport { ErrorKind } from './error';\nimport { SKELETON_TYPE, TYPE, } from './types';\nimport { SPACE_SEPARATOR_REGEX } from './regex.generated';\nimport { parseNumberSkeleton, parseNumberSkeletonFromString, parseDateTimeSkeleton, } from '@formatjs/icu-skeleton-parser';\nimport { getBestPattern } from './date-time-pattern-generator';\nvar SPACE_SEPARATOR_START_REGEX = new RegExp(\"^\".concat(SPACE_SEPARATOR_REGEX.source, \"*\"));\nvar SPACE_SEPARATOR_END_REGEX = new RegExp(\"\".concat(SPACE_SEPARATOR_REGEX.source, \"*$\"));\nfunction createLocation(start, end) {\n return { start: start, end: end };\n}\n// #region Ponyfills\n// Consolidate these variables up top for easier toggling during debugging\nvar hasNativeStartsWith = !!String.prototype.startsWith;\nvar hasNativeFromCodePoint = !!String.fromCodePoint;\nvar hasNativeFromEntries = !!Object.fromEntries;\nvar hasNativeCodePointAt = !!String.prototype.codePointAt;\nvar hasTrimStart = !!String.prototype.trimStart;\nvar hasTrimEnd = !!String.prototype.trimEnd;\nvar hasNativeIsSafeInteger = !!Number.isSafeInteger;\nvar isSafeInteger = hasNativeIsSafeInteger\n ? Number.isSafeInteger\n : function (n) {\n return (typeof n === 'number' &&\n isFinite(n) &&\n Math.floor(n) === n &&\n Math.abs(n) <= 0x1fffffffffffff);\n };\n// IE11 does not support y and u.\nvar REGEX_SUPPORTS_U_AND_Y = true;\ntry {\n var re = RE('([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)', 'yu');\n /**\n * legacy Edge or Xbox One browser\n * Unicode flag support: supported\n * Pattern_Syntax support: not supported\n * See https://github.com/formatjs/formatjs/issues/2822\n */\n REGEX_SUPPORTS_U_AND_Y = ((_a = re.exec('a')) === null || _a === void 0 ? void 0 : _a[0]) === 'a';\n}\ncatch (_) {\n REGEX_SUPPORTS_U_AND_Y = false;\n}\nvar startsWith = hasNativeStartsWith\n ? // Native\n function startsWith(s, search, position) {\n return s.startsWith(search, position);\n }\n : // For IE11\n function startsWith(s, search, position) {\n return s.slice(position, position + search.length) === search;\n };\nvar fromCodePoint = hasNativeFromCodePoint\n ? String.fromCodePoint\n : // IE11\n function fromCodePoint() {\n var codePoints = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n codePoints[_i] = arguments[_i];\n }\n var elements = '';\n var length = codePoints.length;\n var i = 0;\n var code;\n while (length > i) {\n code = codePoints[i++];\n if (code > 0x10ffff)\n throw RangeError(code + ' is not a valid code point');\n elements +=\n code < 0x10000\n ? String.fromCharCode(code)\n : String.fromCharCode(((code -= 0x10000) >> 10) + 0xd800, (code % 0x400) + 0xdc00);\n }\n return elements;\n };\nvar fromEntries = \n// native\nhasNativeFromEntries\n ? Object.fromEntries\n : // Ponyfill\n function fromEntries(entries) {\n var obj = {};\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\n var _a = entries_1[_i], k = _a[0], v = _a[1];\n obj[k] = v;\n }\n return obj;\n };\nvar codePointAt = hasNativeCodePointAt\n ? // Native\n function codePointAt(s, index) {\n return s.codePointAt(index);\n }\n : // IE 11\n function codePointAt(s, index) {\n var size = s.length;\n if (index < 0 || index >= size) {\n return undefined;\n }\n var first = s.charCodeAt(index);\n var second;\n return first < 0xd800 ||\n first > 0xdbff ||\n index + 1 === size ||\n (second = s.charCodeAt(index + 1)) < 0xdc00 ||\n second > 0xdfff\n ? first\n : ((first - 0xd800) << 10) + (second - 0xdc00) + 0x10000;\n };\nvar trimStart = hasTrimStart\n ? // Native\n function trimStart(s) {\n return s.trimStart();\n }\n : // Ponyfill\n function trimStart(s) {\n return s.replace(SPACE_SEPARATOR_START_REGEX, '');\n };\nvar trimEnd = hasTrimEnd\n ? // Native\n function trimEnd(s) {\n return s.trimEnd();\n }\n : // Ponyfill\n function trimEnd(s) {\n return s.replace(SPACE_SEPARATOR_END_REGEX, '');\n };\n// Prevent minifier to translate new RegExp to literal form that might cause syntax error on IE11.\nfunction RE(s, flag) {\n return new RegExp(s, flag);\n}\n// #endregion\nvar matchIdentifierAtIndex;\nif (REGEX_SUPPORTS_U_AND_Y) {\n // Native\n var IDENTIFIER_PREFIX_RE_1 = RE('([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)', 'yu');\n matchIdentifierAtIndex = function matchIdentifierAtIndex(s, index) {\n var _a;\n IDENTIFIER_PREFIX_RE_1.lastIndex = index;\n var match = IDENTIFIER_PREFIX_RE_1.exec(s);\n return (_a = match[1]) !== null && _a !== void 0 ? _a : '';\n };\n}\nelse {\n // IE11\n matchIdentifierAtIndex = function matchIdentifierAtIndex(s, index) {\n var match = [];\n while (true) {\n var c = codePointAt(s, index);\n if (c === undefined || _isWhiteSpace(c) || _isPatternSyntax(c)) {\n break;\n }\n match.push(c);\n index += c >= 0x10000 ? 2 : 1;\n }\n return fromCodePoint.apply(void 0, match);\n };\n}\nvar Parser = /** @class */ (function () {\n function Parser(message, options) {\n if (options === void 0) { options = {}; }\n this.message = message;\n this.position = { offset: 0, line: 1, column: 1 };\n this.ignoreTag = !!options.ignoreTag;\n this.locale = options.locale;\n this.requiresOtherClause = !!options.requiresOtherClause;\n this.shouldParseSkeletons = !!options.shouldParseSkeletons;\n }\n Parser.prototype.parse = function () {\n if (this.offset() !== 0) {\n throw Error('parser can only be used once');\n }\n return this.parseMessage(0, '', false);\n };\n Parser.prototype.parseMessage = function (nestingLevel, parentArgType, expectingCloseTag) {\n var elements = [];\n while (!this.isEOF()) {\n var char = this.char();\n if (char === 123 /* `{` */) {\n var result = this.parseArgument(nestingLevel, expectingCloseTag);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n else if (char === 125 /* `}` */ && nestingLevel > 0) {\n break;\n }\n else if (char === 35 /* `#` */ &&\n (parentArgType === 'plural' || parentArgType === 'selectordinal')) {\n var position = this.clonePosition();\n this.bump();\n elements.push({\n type: TYPE.pound,\n location: createLocation(position, this.clonePosition()),\n });\n }\n else if (char === 60 /* `<` */ &&\n !this.ignoreTag &&\n this.peek() === 47 // char code for '/'\n ) {\n if (expectingCloseTag) {\n break;\n }\n else {\n return this.error(ErrorKind.UNMATCHED_CLOSING_TAG, createLocation(this.clonePosition(), this.clonePosition()));\n }\n }\n else if (char === 60 /* `<` */ &&\n !this.ignoreTag &&\n _isAlpha(this.peek() || 0)) {\n var result = this.parseTag(nestingLevel, parentArgType);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n else {\n var result = this.parseLiteral(nestingLevel, parentArgType);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n }\n return { val: elements, err: null };\n };\n /**\n * A tag name must start with an ASCII lower/upper case letter. The grammar is based on the\n * [custom element name][] except that a dash is NOT always mandatory and uppercase letters\n * are accepted:\n *\n * ```\n * tag ::= \"<\" tagName (whitespace)* \"/>\" | \"<\" tagName (whitespace)* \">\" message \"</\" tagName (whitespace)* \">\"\n * tagName ::= [a-z] (PENChar)*\n * PENChar ::=\n * \"-\" | \".\" | [0-9] | \"_\" | [a-z] | [A-Z] | #xB7 | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x37D] |\n * [#x37F-#x1FFF] | [#x200C-#x200D] | [#x203F-#x2040] | [#x2070-#x218F] | [#x2C00-#x2FEF] |\n * [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]\n * ```\n *\n * [custom element name]: https://html.spec.whatwg.org/multipage/custom-elements.html#valid-custom-element-name\n * NOTE: We're a bit more lax here since HTML technically does not allow uppercase HTML element but we do\n * since other tag-based engines like React allow it\n */\n Parser.prototype.parseTag = function (nestingLevel, parentArgType) {\n var startPosition = this.clonePosition();\n this.bump(); // `<`\n var tagName = this.parseTagName();\n this.bumpSpace();\n if (this.bumpIf('/>')) {\n // Self closing tag\n return {\n val: {\n type: TYPE.literal,\n value: \"<\".concat(tagName, \"/>\"),\n location: createLocation(startPosition, this.clonePosition()),\n },\n err: null,\n };\n }\n else if (this.bumpIf('>')) {\n var childrenResult = this.parseMessage(nestingLevel + 1, parentArgType, true);\n if (childrenResult.err) {\n return childrenResult;\n }\n var children = childrenResult.val;\n // Expecting a close tag\n var endTagStartPosition = this.clonePosition();\n if (this.bumpIf('</')) {\n if (this.isEOF() || !_isAlpha(this.char())) {\n return this.error(ErrorKind.INVALID_TAG, createLocation(endTagStartPosition, this.clonePosition()));\n }\n var closingTagNameStartPosition = this.clonePosition();\n var closingTagName = this.parseTagName();\n if (tagName !== closingTagName) {\n return this.error(ErrorKind.UNMATCHED_CLOSING_TAG, createLocation(closingTagNameStartPosition, this.clonePosition()));\n }\n this.bumpSpace();\n if (!this.bumpIf('>')) {\n return this.error(ErrorKind.INVALID_TAG, createLocation(endTagStartPosition, this.clonePosition()));\n }\n return {\n val: {\n type: TYPE.tag,\n value: tagName,\n children: children,\n location: createLocation(startPosition, this.clonePosition()),\n },\n err: null,\n };\n }\n else {\n return this.error(ErrorKind.UNCLOSED_TAG, createLocation(startPosition, this.clonePosition()));\n }\n }\n else {\n return this.error(ErrorKind.INVALID_TAG, createLocation(startPosition, this.clonePosition()));\n }\n };\n /**\n * This method assumes that the caller has peeked ahead for the first tag character.\n */\n Parser.prototype.parseTagName = function () {\n var startOffset = this.offset();\n this.bump(); // the first tag name character\n while (!this.isEOF() && _isPotentialElementNameChar(this.char())) {\n this.bump();\n }\n return this.message.slice(startOffset, this.offset());\n };\n Parser.prototype.parseLiteral = function (nestingLevel, parentArgType) {\n var start = this.clonePosition();\n var value = '';\n while (true) {\n var parseQuoteResult = this.tryParseQuote(parentArgType);\n if (parseQuoteResult) {\n value += parseQuoteResult;\n continue;\n }\n var parseUnquotedResult = this.tryParseUnquoted(nestingLevel, parentArgType);\n if (parseUnquotedResult) {\n value += parseUnquotedResult;\n continue;\n }\n var parseLeftAngleResult = this.tryParseLeftAngleBracket();\n if (parseLeftAngleResult) {\n value += parseLeftAngleResult;\n continue;\n }\n break;\n }\n var location = createLocation(start, this.clonePosition());\n return {\n val: { type: TYPE.literal, value: value, location: location },\n err: null,\n };\n };\n Parser.prototype.tryParseLeftAngleBracket = function () {\n if (!this.isEOF() &&\n this.char() === 60 /* `<` */ &&\n (this.ignoreTag ||\n // If at the opening tag or closing tag position, bail.\n !_isAlphaOrSlash(this.peek() || 0))) {\n this.bump(); // `<`\n return '<';\n }\n return null;\n };\n /**\n * Starting with ICU 4.8, an ASCII apostrophe only starts quoted text if it immediately precedes\n * a character that requires quoting (that is, \"only where needed\"), and works the same in\n * nested messages as on the top level of the pattern. The new behavior is otherwise compatible.\n */\n Parser.prototype.tryParseQuote = function (parentArgType) {\n if (this.isEOF() || this.char() !== 39 /* `'` */) {\n return null;\n }\n // Parse escaped char following the apostrophe, or early return if there is no escaped char.\n // Check if is valid escaped character\n switch (this.peek()) {\n case 39 /* `'` */:\n // double quote, should return as a single quote.\n this.bump();\n this.bump();\n return \"'\";\n // '{', '<', '>', '}'\n case 123:\n case 60:\n case 62:\n case 125:\n break;\n case 35: // '#'\n if (parentArgType === 'plural' || parentArgType === 'selectordinal') {\n break;\n }\n return null;\n default:\n return null;\n }\n this.bump(); // apostrophe\n var codePoints = [this.char()]; // escaped char\n this.bump();\n // read chars until the optional closing apostrophe is found\n while (!this.isEOF()) {\n var ch = this.char();\n if (ch === 39 /* `'` */) {\n if (this.peek() === 39 /* `'` */) {\n codePoints.push(39);\n // Bump one more time because we need to skip 2 characters.\n this.bump();\n }\n else {\n // Optional closing apostrophe.\n this.bump();\n break;\n }\n }\n else {\n codePoints.push(ch);\n }\n this.bump();\n }\n return fromCodePoint.apply(void 0, codePoints);\n };\n Parser.prototype.tryParseUnquoted = function (nestingLevel, parentArgType) {\n if (this.isEOF()) {\n return null;\n }\n var ch = this.char();\n if (ch === 60 /* `<` */ ||\n ch === 123 /* `{` */ ||\n (ch === 35 /* `#` */ &&\n (parentArgType === 'plural' || parentArgType === 'selectordinal')) ||\n (ch === 125 /* `}` */ && nestingLevel > 0)) {\n return null;\n }\n else {\n this.bump();\n return fromCodePoint(ch);\n }\n };\n Parser.prototype.parseArgument = function (nestingLevel, expectingCloseTag) {\n var openingBracePosition = this.clonePosition();\n this.bump(); // `{`\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n if (this.char() === 125 /* `}` */) {\n this.bump();\n return this.error(ErrorKind.EMPTY_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n // argument name\n var value = this.parseIdentifierIfPossible().value;\n if (!value) {\n return this.error(ErrorKind.MALFORMED_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n switch (this.char()) {\n // Simple argument: `{name}`\n case 125 /* `}` */: {\n this.bump(); // `}`\n return {\n val: {\n type: TYPE.argument,\n // value does not include the opening and closing braces.\n value: value,\n location: createLocation(openingBracePosition, this.clonePosition()),\n },\n err: null,\n };\n }\n // Argument with options: `{name, format, ...}`\n case 44 /* `,` */: {\n this.bump(); // `,`\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n return this.parseArgumentOptions(nestingLevel, expectingCloseTag, value, openingBracePosition);\n }\n default:\n return this.error(ErrorKind.MALFORMED_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n };\n /**\n * Advance the parser until the end of the identifier, if it is currently on\n * an identifier character. Return an empty string otherwise.\n */\n Parser.prototype.parseIdentifierIfPossible = function () {\n var startingPosition = this.clonePosition();\n var startOffset = this.offset();\n var value = matchIdentifierAtIndex(this.message, startOffset);\n var endOffset = startOffset + value.length;\n this.bumpTo(endOffset);\n var endPosition = this.clonePosition();\n var location = createLocation(startingPosition, endPosition);\n return { value: value, location: location };\n };\n Parser.prototype.parseArgumentOptions = function (nestingLevel, expectingCloseTag, value, openingBracePosition) {\n var _a;\n // Parse this range:\n // {name, type, style}\n // ^---^\n var typeStartPosition = this.clonePosition();\n var argType = this.parseIdentifierIfPossible().value;\n var typeEndPosition = this.clonePosition();\n switch (argType) {\n case '':\n // Expecting a style string number, date, time, plural, selectordinal, or select.\n return this.error(ErrorKind.EXPECT_ARGUMENT_TYPE, createLocation(typeStartPosition, typeEndPosition));\n case 'number':\n case 'date':\n case 'time': {\n // Parse this range:\n // {name, number, style}\n // ^-------^\n this.bumpSpace();\n var styleAndLocation = null;\n if (this.bumpIf(',')) {\n this.bumpSpace();\n var styleStartPosition = this.clonePosition();\n var result = this.parseSimpleArgStyleIfPossible();\n if (result.err) {\n return result;\n }\n var style = trimEnd(result.val);\n if (style.length === 0) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_STYLE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n var styleLocation = createLocation(styleStartPosition, this.clonePosition());\n styleAndLocation = { style: style, styleLocation: styleLocation };\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n var location_1 = createLocation(openingBracePosition, this.clonePosition());\n // Extract style or skeleton\n if (styleAndLocation && startsWith(styleAndLocation === null || styleAndLocation === void 0 ? void 0 : styleAndLocation.style, '::', 0)) {\n // Skeleton starts with `::`.\n var skeleton = trimStart(styleAndLocation.style.slice(2));\n if (argType === 'number') {\n var result = this.parseNumberSkeletonFromString(skeleton, styleAndLocation.styleLocation);\n if (result.err) {\n return result;\n }\n return {\n val: { type: TYPE.number, value: value, location: location_1, style: result.val },\n err: null,\n };\n }\n else {\n if (skeleton.length === 0) {\n return this.error(ErrorKind.EXPECT_DATE_TIME_SKELETON, location_1);\n }\n var dateTimePattern = skeleton;\n // Get \"best match\" pattern only if locale is passed, if not, let it\n // pass as-is where `parseDateTimeSkeleton()` will throw an error\n // for unsupported patterns.\n if (this.locale) {\n dateTimePattern = getBestPattern(skeleton, this.locale);\n }\n var style = {\n type: SKELETON_TYPE.dateTime,\n pattern: dateTimePattern,\n location: styleAndLocation.styleLocation,\n parsedOptions: this.shouldParseSkeletons\n ? parseDateTimeSkeleton(dateTimePattern)\n : {},\n };\n var type = argType === 'date' ? TYPE.date : TYPE.time;\n return {\n val: { type: type, value: value, location: location_1, style: style },\n err: null,\n };\n }\n }\n // Regular style or no style.\n return {\n val: {\n type: argType === 'number'\n ? TYPE.number\n : argType === 'date'\n ? TYPE.date\n : TYPE.time,\n value: value,\n location: location_1,\n style: (_a = styleAndLocation === null || styleAndLocation === void 0 ? void 0 : styleAndLocation.style) !== null && _a !== void 0 ? _a : null,\n },\n err: null,\n };\n }\n case 'plural':\n case 'selectordinal':\n case 'select': {\n // Parse this range:\n // {name, plural, options}\n // ^---------^\n var typeEndPosition_1 = this.clonePosition();\n this.bumpSpace();\n if (!this.bumpIf(',')) {\n return this.error(ErrorKind.EXPECT_SELECT_ARGUMENT_OPTIONS, createLocation(typeEndPosition_1, __assign({}, typeEndPosition_1)));\n }\n this.bumpSpace();\n // Parse offset:\n // {name, plural, offset:1, options}\n // ^-----^\n //\n // or the first option:\n //\n // {name, plural, one {...} other {...}}\n // ^--^\n var identifierAndLocation = this.parseIdentifierIfPossible();\n var pluralOffset = 0;\n if (argType !== 'select' && identifierAndLocation.value === 'offset') {\n if (!this.bumpIf(':')) {\n return this.error(ErrorKind.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n this.bumpSpace();\n var result = this.tryParseDecimalInteger(ErrorKind.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, ErrorKind.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);\n if (result.err) {\n return result;\n }\n // Parse another identifier for option parsing\n this.bumpSpace();\n identifierAndLocation = this.parseIdentifierIfPossible();\n pluralOffset = result.val;\n }\n var optionsResult = this.tryParsePluralOrSelectOptions(nestingLevel, argType, expectingCloseTag, identifierAndLocation);\n if (optionsResult.err) {\n return optionsResult;\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n var location_2 = createLocation(openingBracePosition, this.clonePosition());\n if (argType === 'select') {\n return {\n val: {\n type: TYPE.select,\n value: value,\n options: fromEntries(optionsResult.val),\n location: location_2,\n },\n err: null,\n };\n }\n else {\n return {\n val: {\n type: TYPE.plural,\n value: value,\n options: fromEntries(optionsResult.val),\n offset: pluralOffset,\n pluralType: argType === 'plural' ? 'cardinal' : 'ordinal',\n location: location_2,\n },\n err: null,\n };\n }\n }\n default:\n return this.error(ErrorKind.INVALID_ARGUMENT_TYPE, createLocation(typeStartPosition, typeEndPosition));\n }\n };\n Parser.prototype.tryParseArgumentClose = function (openingBracePosition) {\n // Parse: {value, number, ::currency/GBP }\n //\n if (this.isEOF() || this.char() !== 125 /* `}` */) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n this.bump(); // `}`\n return { val: true, err: null };\n };\n /**\n * See: https://github.com/unicode-org/icu/blob/af7ed1f6d2298013dc303628438ec4abe1f16479/icu4c/source/common/messagepattern.cpp#L659\n */\n Parser.prototype.parseSimpleArgStyleIfPossible = function () {\n var nestedBraces = 0;\n var startPosition = this.clonePosition();\n while (!this.isEOF()) {\n var ch = this.char();\n switch (ch) {\n case 39 /* `'` */: {\n // Treat apostrophe as quoting but include it in the style part.\n // Find the end of the quoted literal text.\n this.bump();\n var apostrophePosition = this.clonePosition();\n if (!this.bumpUntil(\"'\")) {\n return this.error(ErrorKind.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE, createLocation(apostrophePosition, this.clonePosition()));\n }\n this.bump();\n break;\n }\n case 123 /* `{` */: {\n nestedBraces += 1;\n this.bump();\n break;\n }\n case 125 /* `}` */: {\n if (nestedBraces > 0) {\n nestedBraces -= 1;\n }\n else {\n return {\n val: this.message.slice(startPosition.offset, this.offset()),\n err: null,\n };\n }\n break;\n }\n default:\n this.bump();\n break;\n }\n }\n return {\n val: this.message.slice(startPosition.offset, this.offset()),\n err: null,\n };\n };\n Parser.prototype.parseNumberSkeletonFromString = function (skeleton, location) {\n var tokens = [];\n try {\n tokens = parseNumberSkeletonFromString(skeleton);\n }\n catch (e) {\n return this.error(ErrorKind.INVALID_NUMBER_SKELETON, location);\n }\n return {\n val: {\n type: SKELETON_TYPE.number,\n tokens: tokens,\n location: location,\n parsedOptions: this.shouldParseSkeletons\n ? parseNumberSkeleton(tokens)\n : {},\n },\n err: null,\n };\n };\n /**\n * @param nesting_level The current nesting level of messages.\n * This can be positive when parsing message fragment in select or plural argument options.\n * @param parent_arg_type The parent argument's type.\n * @param parsed_first_identifier If provided, this is the first identifier-like selector of\n * the argument. It is a by-product of a previous parsing attempt.\n * @param expecting_close_tag If true, this message is directly or indirectly nested inside\n * between a pair of opening and closing tags. The nested message will not parse beyond\n * the closing tag boundary.\n */\n Parser.prototype.tryParsePluralOrSelectOptions = function (nestingLevel, parentArgType, expectCloseTag, parsedFirstIdentifier) {\n var _a;\n var hasOtherClause = false;\n var options = [];\n var parsedSelectors = new Set();\n var selector = parsedFirstIdentifier.value, selectorLocation = parsedFirstIdentifier.location;\n // Parse:\n // one {one apple}\n // ^--^\n while (true) {\n if (selector.length === 0) {\n var startPosition = this.clonePosition();\n if (parentArgType !== 'select' && this.bumpIf('=')) {\n // Try parse `={number}` selector\n var result = this.tryParseDecimalInteger(ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR, ErrorKind.INVALID_PLURAL_ARGUMENT_SELECTOR);\n if (result.err) {\n return result;\n }\n selectorLocation = createLocation(startPosition, this.clonePosition());\n selector = this.message.slice(startPosition.offset, this.offset());\n }\n else {\n break;\n }\n }\n // Duplicate selector clauses\n if (parsedSelectors.has(selector)) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.DUPLICATE_SELECT_ARGUMENT_SELECTOR\n : ErrorKind.DUPLICATE_PLURAL_ARGUMENT_SELECTOR, selectorLocation);\n }\n if (selector === 'other') {\n hasOtherClause = true;\n }\n // Parse:\n // one {one apple}\n // ^----------^\n this.bumpSpace();\n var openingBracePosition = this.clonePosition();\n if (!this.bumpIf('{')) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\n : ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT, createLocation(this.clonePosition(), this.clonePosition()));\n }\n var fragmentResult = this.parseMessage(nestingLevel + 1, parentArgType, expectCloseTag);\n if (fragmentResult.err) {\n return fragmentResult;\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n options.push([\n selector,\n {\n value: fragmentResult.val,\n location: createLocation(openingBracePosition, this.clonePosition()),\n },\n ]);\n // Keep track of the existing selectors\n parsedSelectors.add(selector);\n // Prep next selector clause.\n this.bumpSpace();\n (_a = this.parseIdentifierIfPossible(), selector = _a.value, selectorLocation = _a.location);\n }\n if (options.length === 0) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.EXPECT_SELECT_ARGUMENT_SELECTOR\n : ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR, createLocation(this.clonePosition(), this.clonePosition()));\n }\n if (this.requiresOtherClause && !hasOtherClause) {\n return this.error(ErrorKind.MISSING_OTHER_CLAUSE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n return { val: options, err: null };\n };\n Parser.prototype.tryParseDecimalInteger = function (expectNumberError, invalidNumberError) {\n var sign = 1;\n var startingPosition = this.clonePosition();\n if (this.bumpIf('+')) {\n }\n else if (this.bumpIf('-')) {\n sign = -1;\n }\n var hasDigits = false;\n var decimal = 0;\n while (!this.isEOF()) {\n var ch = this.char();\n if (ch >= 48 /* `0` */ && ch <= 57 /* `9` */) {\n hasDigits = true;\n decimal = decimal * 10 + (ch - 48);\n this.bump();\n }\n else {\n break;\n }\n }\n var location = createLocation(startingPosition, this.clonePosition());\n if (!hasDigits) {\n return this.error(expectNumberError, location);\n }\n decimal *= sign;\n if (!isSafeInteger(decimal)) {\n return this.error(invalidNumberError, location);\n }\n return { val: decimal, err: null };\n };\n Parser.prototype.offset = function () {\n return this.position.offset;\n };\n Parser.prototype.isEOF = function () {\n return this.offset() === this.message.length;\n };\n Parser.prototype.clonePosition = function () {\n // This is much faster than `Object.assign` or spread.\n return {\n offset: this.position.offset,\n line: this.position.line,\n column: this.position.column,\n };\n };\n /**\n * Return the code point at the current position of the parser.\n * Throws if the index is out of bound.\n */\n Parser.prototype.char = function () {\n var offset = this.position.offset;\n if (offset >= this.message.length) {\n throw Error('out of bound');\n }\n var code = codePointAt(this.message, offset);\n if (code === undefined) {\n throw Error(\"Offset \".concat(offset, \" is at invalid UTF-16 code unit boundary\"));\n }\n return code;\n };\n Parser.prototype.error = function (kind, location) {\n return {\n val: null,\n err: {\n kind: kind,\n message: this.message,\n location: location,\n },\n };\n };\n /** Bump the parser to the next UTF-16 code unit. */\n Parser.prototype.bump = function () {\n if (this.isEOF()) {\n return;\n }\n var code = this.char();\n if (code === 10 /* '\\n' */) {\n this.position.line += 1;\n this.position.column = 1;\n this.position.offset += 1;\n }\n else {\n this.position.column += 1;\n // 0 ~ 0x10000 -> unicode BMP, otherwise skip the surrogate pair.\n this.position.offset += code < 0x10000 ? 1 : 2;\n }\n };\n /**\n * If the substring starting at the current position of the parser has\n * the given prefix, then bump the parser to the character immediately\n * following the prefix and return true. Otherwise, don't bump the parser\n * and return false.\n */\n Parser.prototype.bumpIf = function (prefix) {\n if (startsWith(this.message, prefix, this.offset())) {\n for (var i = 0; i < prefix.length; i++) {\n this.bump();\n }\n return true;\n }\n return false;\n };\n /**\n * Bump the parser until the pattern character is found and return `true`.\n * Otherwise bump to the end of the file and return `false`.\n */\n Parser.prototype.bumpUntil = function (pattern) {\n var currentOffset = this.offset();\n var index = this.message.indexOf(pattern, currentOffset);\n if (index >= 0) {\n this.bumpTo(index);\n return true;\n }\n else {\n this.bumpTo(this.message.length);\n return false;\n }\n };\n /**\n * Bump the parser to the target offset.\n * If target offset is beyond the end of the input, bump the parser to the end of the input.\n */\n Parser.prototype.bumpTo = function (targetOffset) {\n if (this.offset() > targetOffset) {\n throw Error(\"targetOffset \".concat(targetOffset, \" must be greater than or equal to the current offset \").concat(this.offset()));\n }\n targetOffset = Math.min(targetOffset, this.message.length);\n while (true) {\n var offset = this.offset();\n if (offset === targetOffset) {\n break;\n }\n if (offset > targetOffset) {\n throw Error(\"targetOffset \".concat(targetOffset, \" is at invalid UTF-16 code unit boundary\"));\n }\n this.bump();\n if (this.isEOF()) {\n break;\n }\n }\n };\n /** advance the parser through all whitespace to the next non-whitespace code unit. */\n Parser.prototype.bumpSpace = function () {\n while (!this.isEOF() && _isWhiteSpace(this.char())) {\n this.bump();\n }\n };\n /**\n * Peek at the *next* Unicode codepoint in the input without advancing the parser.\n * If the input has been exhausted, then this returns null.\n */\n Parser.prototype.peek = function () {\n if (this.isEOF()) {\n return null;\n }\n var code = this.char();\n var offset = this.offset();\n var nextCode = this.message.charCodeAt(offset + (code >= 0x10000 ? 2 : 1));\n return nextCode !== null && nextCode !== void 0 ? nextCode : null;\n };\n return Parser;\n}());\nexport { Parser };\n/**\n * This check if codepoint is alphabet (lower & uppercase)\n * @param codepoint\n * @returns\n */\nfunction _isAlpha(codepoint) {\n return ((codepoint >= 97 && codepoint <= 122) ||\n (codepoint >= 65 && codepoint <= 90));\n}\nfunction _isAlphaOrSlash(codepoint) {\n return _isAlpha(codepoint) || codepoint === 47; /* '/' */\n}\n/** See `parseTag` function docs. */\nfunction _isPotentialElementNameChar(c) {\n return (c === 45 /* '-' */ ||\n c === 46 /* '.' */ ||\n (c >= 48 && c <= 57) /* 0..9 */ ||\n c === 95 /* '_' */ ||\n (c >= 97 && c <= 122) /** a..z */ ||\n (c >= 65 && c <= 90) /* A..Z */ ||\n c == 0xb7 ||\n (c >= 0xc0 && c <= 0xd6) ||\n (c >= 0xd8 && c <= 0xf6) ||\n (c >= 0xf8 && c <= 0x37d) ||\n (c >= 0x37f && c <= 0x1fff) ||\n (c >= 0x200c && c <= 0x200d) ||\n (c >= 0x203f && c <= 0x2040) ||\n (c >= 0x2070 && c <= 0x218f) ||\n (c >= 0x2c00 && c <= 0x2fef) ||\n (c >= 0x3001 && c <= 0xd7ff) ||\n (c >= 0xf900 && c <= 0xfdcf) ||\n (c >= 0xfdf0 && c <= 0xfffd) ||\n (c >= 0x10000 && c <= 0xeffff));\n}\n/**\n * Code point equivalent of regex `\\p{White_Space}`.\n * From: https://www.unicode.org/Public/UCD/latest/ucd/PropList.txt\n */\nfunction _isWhiteSpace(c) {\n return ((c >= 0x0009 && c <= 0x000d) ||\n c === 0x0020 ||\n c === 0x0085 ||\n (c >= 0x200e && c <= 0x200f) ||\n c === 0x2028 ||\n c === 0x2029);\n}\n/**\n * Code point equivalent of regex `\\p{Pattern_Syntax}`.\n * See https://www.unicode.org/Public/UCD/latest/ucd/PropList.txt\n */\nfunction _isPatternSyntax(c) {\n return ((c >= 0x0021 && c <= 0x0023) ||\n c === 0x0024 ||\n (c >= 0x0025 && c <= 0x0027) ||\n c === 0x0028 ||\n c === 0x0029 ||\n c === 0x002a ||\n c === 0x002b ||\n c === 0x002c ||\n c === 0x002d ||\n (c >= 0x002e && c <= 0x002f) ||\n (c >= 0x003a && c <= 0x003b) ||\n (c >= 0x003c && c <= 0x003e) ||\n (c >= 0x003f && c <= 0x0040) ||\n c === 0x005b ||\n c === 0x005c ||\n c === 0x005d ||\n c === 0x005e ||\n c === 0x0060 ||\n c === 0x007b ||\n c === 0x007c ||\n c === 0x007d ||\n c === 0x007e ||\n c === 0x00a1 ||\n (c >= 0x00a2 && c <= 0x00a5) ||\n c === 0x00a6 ||\n c === 0x00a7 ||\n c === 0x00a9 ||\n c === 0x00ab ||\n c === 0x00ac ||\n c === 0x00ae ||\n c === 0x00b0 ||\n c === 0x00b1 ||\n c === 0x00b6 ||\n c === 0x00bb ||\n c === 0x00bf ||\n c === 0x00d7 ||\n c === 0x00f7 ||\n (c >= 0x2010 && c <= 0x2015) ||\n (c >= 0x2016 && c <= 0x2017) ||\n c === 0x2018 ||\n c === 0x2019 ||\n c === 0x201a ||\n (c >= 0x201b && c <= 0x201c) ||\n c === 0x201d ||\n c === 0x201e ||\n c === 0x201f ||\n (c >= 0x2020 && c <= 0x2027) ||\n (c >= 0x2030 && c <= 0x2038) ||\n c === 0x2039 ||\n c === 0x203a ||\n (c >= 0x203b && c <= 0x203e) ||\n (c >= 0x2041 && c <= 0x2043) ||\n c === 0x2044 ||\n c === 0x2045 ||\n c === 0x2046 ||\n (c >= 0x2047 && c <= 0x2051) ||\n c === 0x2052 ||\n c === 0x2053 ||\n (c >= 0x2055 && c <= 0x205e) ||\n (c >= 0x2190 && c <= 0x2194) ||\n (c >= 0x2195 && c <= 0x2199) ||\n (c >= 0x219a && c <= 0x219b) ||\n (c >= 0x219c && c <= 0x219f) ||\n c === 0x21a0 ||\n (c >= 0x21a1 && c <= 0x21a2) ||\n c === 0x21a3 ||\n (c >= 0x21a4 && c <= 0x21a5) ||\n c === 0x21a6 ||\n (c >= 0x21a7 && c <= 0x21ad) ||\n c === 0x21ae ||\n (c >= 0x21af && c <= 0x21cd) ||\n (c >= 0x21ce && c <= 0x21cf) ||\n (c >= 0x21d0 && c <= 0x21d1) ||\n c === 0x21d2 ||\n c === 0x21d3 ||\n c === 0x21d4 ||\n (c >= 0x21d5 && c <= 0x21f3) ||\n (c >= 0x21f4 && c <= 0x22ff) ||\n (c >= 0x2300 && c <= 0x2307) ||\n c === 0x2308 ||\n c === 0x2309 ||\n c === 0x230a ||\n c === 0x230b ||\n (c >= 0x230c && c <= 0x231f) ||\n (c >= 0x2320 && c <= 0x2321) ||\n (c >= 0x2322 && c <= 0x2328) ||\n c === 0x2329 ||\n c === 0x232a ||\n (c >= 0x232b && c <= 0x237b) ||\n c === 0x237c ||\n (c >= 0x237d && c <= 0x239a) ||\n (c >= 0x239b && c <= 0x23b3) ||\n (c >= 0x23b4 && c <= 0x23db) ||\n (c >= 0x23dc && c <= 0x23e1) ||\n (c >= 0x23e2 && c <= 0x2426) ||\n (c >= 0x2427 && c <= 0x243f) ||\n (c >= 0x2440 && c <= 0x244a) ||\n (c >= 0x244b && c <= 0x245f) ||\n (c >= 0x2500 && c <= 0x25b6) ||\n c === 0x25b7 ||\n (c >= 0x25b8 && c <= 0x25c0) ||\n c === 0x25c1 ||\n (c >= 0x25c2 && c <= 0x25f7) ||\n (c >= 0x25f8 && c <= 0x25ff) ||\n (c >= 0x2600 && c <= 0x266e) ||\n c === 0x266f ||\n (c >= 0x2670 && c <= 0x2767) ||\n c === 0x2768 ||\n c === 0x2769 ||\n c === 0x276a ||\n c === 0x276b ||\n c === 0x276c ||\n c === 0x276d ||\n c === 0x276e ||\n c === 0x276f ||\n c === 0x2770 ||\n c === 0x2771 ||\n c === 0x2772 ||\n c === 0x2773 ||\n c === 0x2774 ||\n c === 0x2775 ||\n (c >= 0x2794 && c <= 0x27bf) ||\n (c >= 0x27c0 && c <= 0x27c4) ||\n c === 0x27c5 ||\n c === 0x27c6 ||\n (c >= 0x27c7 && c <= 0x27e5) ||\n c === 0x27e6 ||\n c === 0x27e7 ||\n c === 0x27e8 ||\n c === 0x27e9 ||\n c === 0x27ea ||\n c === 0x27eb ||\n c === 0x27ec ||\n c === 0x27ed ||\n c === 0x27ee ||\n c === 0x27ef ||\n (c >= 0x27f0 && c <= 0x27ff) ||\n (c >= 0x2800 && c <= 0x28ff) ||\n (c >= 0x2900 && c <= 0x2982) ||\n c === 0x2983 ||\n c === 0x2984 ||\n c === 0x2985 ||\n c === 0x2986 ||\n c === 0x2987 ||\n c === 0x2988 ||\n c === 0x2989 ||\n c === 0x298a ||\n c === 0x298b ||\n c === 0x298c ||\n c === 0x298d ||\n c === 0x298e ||\n c === 0x298f ||\n c === 0x2990 ||\n c === 0x2991 ||\n c === 0x2992 ||\n c === 0x2993 ||\n c === 0x2994 ||\n c === 0x2995 ||\n c === 0x2996 ||\n c === 0x2997 ||\n c === 0x2998 ||\n (c >= 0x2999 && c <= 0x29d7) ||\n c === 0x29d8 ||\n c === 0x29d9 ||\n c === 0x29da ||\n c === 0x29db ||\n (c >= 0x29dc && c <= 0x29fb) ||\n c === 0x29fc ||\n c === 0x29fd ||\n (c >= 0x29fe && c <= 0x2aff) ||\n (c >= 0x2b00 && c <= 0x2b2f) ||\n (c >= 0x2b30 && c <= 0x2b44) ||\n (c >= 0x2b45 && c <= 0x2b46) ||\n (c >= 0x2b47 && c <= 0x2b4c) ||\n (c >= 0x2b4d && c <= 0x2b73) ||\n (c >= 0x2b74 && c <= 0x2b75) ||\n (c >= 0x2b76 && c <= 0x2b95) ||\n c === 0x2b96 ||\n (c >= 0x2b97 && c <= 0x2bff) ||\n (c >= 0x2e00 && c <= 0x2e01) ||\n c === 0x2e02 ||\n c === 0x2e03 ||\n c === 0x2e04 ||\n c === 0x2e05 ||\n (c >= 0x2e06 && c <= 0x2e08) ||\n c === 0x2e09 ||\n c === 0x2e0a ||\n c === 0x2e0b ||\n c === 0x2e0c ||\n c === 0x2e0d ||\n (c >= 0x2e0e && c <= 0x2e16) ||\n c === 0x2e17 ||\n (c >= 0x2e18 && c <= 0x2e19) ||\n c === 0x2e1a ||\n c === 0x2e1b ||\n c === 0x2e1c ||\n c === 0x2e1d ||\n (c >= 0x2e1e && c <= 0x2e1f) ||\n c === 0x2e20 ||\n c === 0x2e21 ||\n c === 0x2e22 ||\n c === 0x2e23 ||\n c === 0x2e24 ||\n c === 0x2e25 ||\n c === 0x2e26 ||\n c === 0x2e27 ||\n c === 0x2e28 ||\n c === 0x2e29 ||\n (c >= 0x2e2a && c <= 0x2e2e) ||\n c === 0x2e2f ||\n (c >= 0x2e30 && c <= 0x2e39) ||\n (c >= 0x2e3a && c <= 0x2e3b) ||\n (c >= 0x2e3c && c <= 0x2e3f) ||\n c === 0x2e40 ||\n c === 0x2e41 ||\n c === 0x2e42 ||\n (c >= 0x2e43 && c <= 0x2e4f) ||\n (c >= 0x2e50 && c <= 0x2e51) ||\n c === 0x2e52 ||\n (c >= 0x2e53 && c <= 0x2e7f) ||\n (c >= 0x3001 && c <= 0x3003) ||\n c === 0x3008 ||\n c === 0x3009 ||\n c === 0x300a ||\n c === 0x300b ||\n c === 0x300c ||\n c === 0x300d ||\n c === 0x300e ||\n c === 0x300f ||\n c === 0x3010 ||\n c === 0x3011 ||\n (c >= 0x3012 && c <= 0x3013) ||\n c === 0x3014 ||\n c === 0x3015 ||\n c === 0x3016 ||\n c === 0x3017 ||\n c === 0x3018 ||\n c === 0x3019 ||\n c === 0x301a ||\n c === 0x301b ||\n c === 0x301c ||\n c === 0x301d ||\n (c >= 0x301e && c <= 0x301f) ||\n c === 0x3020 ||\n c === 0x3030 ||\n c === 0xfd3e ||\n c === 0xfd3f ||\n (c >= 0xfe45 && c <= 0xfe46));\n}\n","import { timeData } from './time-data.generated';\n/**\n * Returns the best matching date time pattern if a date time skeleton\n * pattern is provided with a locale. Follows the Unicode specification:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#table-mapping-requested-time-skeletons-to-patterns\n * @param skeleton date time skeleton pattern that possibly includes j, J or C\n * @param locale\n */\nexport function getBestPattern(skeleton, locale) {\n var skeletonCopy = '';\n for (var patternPos = 0; patternPos < skeleton.length; patternPos++) {\n var patternChar = skeleton.charAt(patternPos);\n if (patternChar === 'j') {\n var extraLength = 0;\n while (patternPos + 1 < skeleton.length &&\n skeleton.charAt(patternPos + 1) === patternChar) {\n extraLength++;\n patternPos++;\n }\n var hourLen = 1 + (extraLength & 1);\n var dayPeriodLen = extraLength < 2 ? 1 : 3 + (extraLength >> 1);\n var dayPeriodChar = 'a';\n var hourChar = getDefaultHourSymbolFromLocale(locale);\n if (hourChar == 'H' || hourChar == 'k') {\n dayPeriodLen = 0;\n }\n while (dayPeriodLen-- > 0) {\n skeletonCopy += dayPeriodChar;\n }\n while (hourLen-- > 0) {\n skeletonCopy = hourChar + skeletonCopy;\n }\n }\n else if (patternChar === 'J') {\n skeletonCopy += 'H';\n }\n else {\n skeletonCopy += patternChar;\n }\n }\n return skeletonCopy;\n}\n/**\n * Maps the [hour cycle type](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/hourCycle)\n * of the given `locale` to the corresponding time pattern.\n * @param locale\n */\nfunction getDefaultHourSymbolFromLocale(locale) {\n var hourCycle = locale.hourCycle;\n if (hourCycle === undefined &&\n // @ts-ignore hourCycle(s) is not identified yet\n locale.hourCycles &&\n // @ts-ignore\n locale.hourCycles.length) {\n // @ts-ignore\n hourCycle = locale.hourCycles[0];\n }\n if (hourCycle) {\n switch (hourCycle) {\n case 'h24':\n return 'k';\n case 'h23':\n return 'H';\n case 'h12':\n return 'h';\n case 'h11':\n return 'K';\n default:\n throw new Error('Invalid hourCycle');\n }\n }\n // TODO: Once hourCycle is fully supported remove the following with data generation\n var languageTag = locale.language;\n var regionTag;\n if (languageTag !== 'root') {\n regionTag = locale.maximize().region;\n }\n var hourCycles = timeData[regionTag || ''] ||\n timeData[languageTag || ''] ||\n timeData[\"\".concat(languageTag, \"-001\")] ||\n timeData['001'];\n return hourCycles[0];\n}\n","import { __assign } from \"tslib\";\nimport { ErrorKind } from './error';\nimport { Parser } from './parser';\nimport { isDateElement, isDateTimeSkeleton, isNumberElement, isNumberSkeleton, isPluralElement, isSelectElement, isTagElement, isTimeElement, } from './types';\nfunction pruneLocation(els) {\n els.forEach(function (el) {\n delete el.location;\n if (isSelectElement(el) || isPluralElement(el)) {\n for (var k in el.options) {\n delete el.options[k].location;\n pruneLocation(el.options[k].value);\n }\n }\n else if (isNumberElement(el) && isNumberSkeleton(el.style)) {\n delete el.style.location;\n }\n else if ((isDateElement(el) || isTimeElement(el)) &&\n isDateTimeSkeleton(el.style)) {\n delete el.style.location;\n }\n else if (isTagElement(el)) {\n pruneLocation(el.children);\n }\n });\n}\nexport function parse(message, opts) {\n if (opts === void 0) { opts = {}; }\n opts = __assign({ shouldParseSkeletons: true, requiresOtherClause: true }, opts);\n var result = new Parser(message, opts).parse();\n if (result.err) {\n var error = SyntaxError(ErrorKind[result.err.kind]);\n // @ts-expect-error Assign to error object\n error.location = result.err.location;\n // @ts-expect-error Assign to error object\n error.originalMessage = result.err.message;\n throw error;\n }\n if (!(opts === null || opts === void 0 ? void 0 : opts.captureLocation)) {\n pruneLocation(result.val);\n }\n return result.val;\n}\nexport * from './types';\n","//\n// Main\n//\nexport default function memoize(fn, options) {\n var cache = options && options.cache ? options.cache : cacheDefault;\n var serializer = options && options.serializer ? options.serializer : serializerDefault;\n var strategy = options && options.strategy ? options.strategy : strategyDefault;\n return strategy(fn, {\n cache: cache,\n serializer: serializer,\n });\n}\n//\n// Strategy\n//\nfunction isPrimitive(value) {\n return (value == null || typeof value === 'number' || typeof value === 'boolean'); // || typeof value === \"string\" 'unsafe' primitive for our needs\n}\nfunction monadic(fn, cache, serializer, arg) {\n var cacheKey = isPrimitive(arg) ? arg : serializer(arg);\n var computedValue = cache.get(cacheKey);\n if (typeof computedValue === 'undefined') {\n computedValue = fn.call(this, arg);\n cache.set(cacheKey, computedValue);\n }\n return computedValue;\n}\nfunction variadic(fn, cache, serializer) {\n var args = Array.prototype.slice.call(arguments, 3);\n var cacheKey = serializer(args);\n var computedValue = cache.get(cacheKey);\n if (typeof computedValue === 'undefined') {\n computedValue = fn.apply(this, args);\n cache.set(cacheKey, computedValue);\n }\n return computedValue;\n}\nfunction assemble(fn, context, strategy, cache, serialize) {\n return strategy.bind(context, fn, cache, serialize);\n}\nfunction strategyDefault(fn, options) {\n var strategy = fn.length === 1 ? monadic : variadic;\n return assemble(fn, this, strategy, options.cache.create(), options.serializer);\n}\nfunction strategyVariadic(fn, options) {\n return assemble(fn, this, variadic, options.cache.create(), options.serializer);\n}\nfunction strategyMonadic(fn, options) {\n return assemble(fn, this, monadic, options.cache.create(), options.serializer);\n}\n//\n// Serializer\n//\nvar serializerDefault = function () {\n return JSON.stringify(arguments);\n};\n//\n// Cache\n//\nfunction ObjectWithoutPrototypeCache() {\n this.cache = Object.create(null);\n}\nObjectWithoutPrototypeCache.prototype.get = function (key) {\n return this.cache[key];\n};\nObjectWithoutPrototypeCache.prototype.set = function (key, value) {\n this.cache[key] = value;\n};\nvar cacheDefault = {\n create: function create() {\n // @ts-ignore\n return new ObjectWithoutPrototypeCache();\n },\n};\nexport var strategies = {\n variadic: strategyVariadic,\n monadic: strategyMonadic,\n};\n","import { __extends } from \"tslib\";\nexport var ErrorCode;\n(function (ErrorCode) {\n // When we have a placeholder but no value to format\n ErrorCode[\"MISSING_VALUE\"] = \"MISSING_VALUE\";\n // When value supplied is invalid\n ErrorCode[\"INVALID_VALUE\"] = \"INVALID_VALUE\";\n // When we need specific Intl API but it's not available\n ErrorCode[\"MISSING_INTL_API\"] = \"MISSING_INTL_API\";\n})(ErrorCode || (ErrorCode = {}));\nvar FormatError = /** @class */ (function (_super) {\n __extends(FormatError, _super);\n function FormatError(msg, code, originalMessage) {\n var _this = _super.call(this, msg) || this;\n _this.code = code;\n _this.originalMessage = originalMessage;\n return _this;\n }\n FormatError.prototype.toString = function () {\n return \"[formatjs Error: \".concat(this.code, \"] \").concat(this.message);\n };\n return FormatError;\n}(Error));\nexport { FormatError };\nvar InvalidValueError = /** @class */ (function (_super) {\n __extends(InvalidValueError, _super);\n function InvalidValueError(variableId, value, options, originalMessage) {\n return _super.call(this, \"Invalid values for \\\"\".concat(variableId, \"\\\": \\\"\").concat(value, \"\\\". Options are \\\"\").concat(Object.keys(options).join('\", \"'), \"\\\"\"), ErrorCode.INVALID_VALUE, originalMessage) || this;\n }\n return InvalidValueError;\n}(FormatError));\nexport { InvalidValueError };\nvar InvalidValueTypeError = /** @class */ (function (_super) {\n __extends(InvalidValueTypeError, _super);\n function InvalidValueTypeError(value, type, originalMessage) {\n return _super.call(this, \"Value for \\\"\".concat(value, \"\\\" must be of type \").concat(type), ErrorCode.INVALID_VALUE, originalMessage) || this;\n }\n return InvalidValueTypeError;\n}(FormatError));\nexport { InvalidValueTypeError };\nvar MissingValueError = /** @class */ (function (_super) {\n __extends(MissingValueError, _super);\n function MissingValueError(variableId, originalMessage) {\n return _super.call(this, \"The intl string context variable \\\"\".concat(variableId, \"\\\" was not provided to the string \\\"\").concat(originalMessage, \"\\\"\"), ErrorCode.MISSING_VALUE, originalMessage) || this;\n }\n return MissingValueError;\n}(FormatError));\nexport { MissingValueError };\n","import { isArgumentElement, isDateElement, isDateTimeSkeleton, isLiteralElement, isNumberElement, isNumberSkeleton, isPluralElement, isPoundElement, isSelectElement, isTimeElement, isTagElement, } from '@formatjs/icu-messageformat-parser';\nimport { MissingValueError, InvalidValueError, ErrorCode, FormatError, InvalidValueTypeError, } from './error';\nexport var PART_TYPE;\n(function (PART_TYPE) {\n PART_TYPE[PART_TYPE[\"literal\"] = 0] = \"literal\";\n PART_TYPE[PART_TYPE[\"object\"] = 1] = \"object\";\n})(PART_TYPE || (PART_TYPE = {}));\nfunction mergeLiteral(parts) {\n if (parts.length < 2) {\n return parts;\n }\n return parts.reduce(function (all, part) {\n var lastPart = all[all.length - 1];\n if (!lastPart ||\n lastPart.type !== PART_TYPE.literal ||\n part.type !== PART_TYPE.literal) {\n all.push(part);\n }\n else {\n lastPart.value += part.value;\n }\n return all;\n }, []);\n}\nexport function isFormatXMLElementFn(el) {\n return typeof el === 'function';\n}\n// TODO(skeleton): add skeleton support\nexport function formatToParts(els, locales, formatters, formats, values, currentPluralValue, \n// For debugging\noriginalMessage) {\n // Hot path for straight simple msg translations\n if (els.length === 1 && isLiteralElement(els[0])) {\n return [\n {\n type: PART_TYPE.literal,\n value: els[0].value,\n },\n ];\n }\n var result = [];\n for (var _i = 0, els_1 = els; _i < els_1.length; _i++) {\n var el = els_1[_i];\n // Exit early for string parts.\n if (isLiteralElement(el)) {\n result.push({\n type: PART_TYPE.literal,\n value: el.value,\n });\n continue;\n }\n // TODO: should this part be literal type?\n // Replace `#` in plural rules with the actual numeric value.\n if (isPoundElement(el)) {\n if (typeof currentPluralValue === 'number') {\n result.push({\n type: PART_TYPE.literal,\n value: formatters.getNumberFormat(locales).format(currentPluralValue),\n });\n }\n continue;\n }\n var varName = el.value;\n // Enforce that all required values are provided by the caller.\n if (!(values && varName in values)) {\n throw new MissingValueError(varName, originalMessage);\n }\n var value = values[varName];\n if (isArgumentElement(el)) {\n if (!value || typeof value === 'string' || typeof value === 'number') {\n value =\n typeof value === 'string' || typeof value === 'number'\n ? String(value)\n : '';\n }\n result.push({\n type: typeof value === 'string' ? PART_TYPE.literal : PART_TYPE.object,\n value: value,\n });\n continue;\n }\n // Recursively format plural and select parts' option — which can be a\n // nested pattern structure. The choosing of the option to use is\n // abstracted-by and delegated-to the part helper object.\n if (isDateElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.date[el.style]\n : isDateTimeSkeleton(el.style)\n ? el.style.parsedOptions\n : undefined;\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getDateTimeFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isTimeElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.time[el.style]\n : isDateTimeSkeleton(el.style)\n ? el.style.parsedOptions\n : formats.time.medium;\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getDateTimeFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isNumberElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.number[el.style]\n : isNumberSkeleton(el.style)\n ? el.style.parsedOptions\n : undefined;\n if (style && style.scale) {\n value =\n value *\n (style.scale || 1);\n }\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getNumberFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isTagElement(el)) {\n var children = el.children, value_1 = el.value;\n var formatFn = values[value_1];\n if (!isFormatXMLElementFn(formatFn)) {\n throw new InvalidValueTypeError(value_1, 'function', originalMessage);\n }\n var parts = formatToParts(children, locales, formatters, formats, values, currentPluralValue);\n var chunks = formatFn(parts.map(function (p) { return p.value; }));\n if (!Array.isArray(chunks)) {\n chunks = [chunks];\n }\n result.push.apply(result, chunks.map(function (c) {\n return {\n type: typeof c === 'string' ? PART_TYPE.literal : PART_TYPE.object,\n value: c,\n };\n }));\n }\n if (isSelectElement(el)) {\n var opt = el.options[value] || el.options.other;\n if (!opt) {\n throw new InvalidValueError(el.value, value, Object.keys(el.options), originalMessage);\n }\n result.push.apply(result, formatToParts(opt.value, locales, formatters, formats, values));\n continue;\n }\n if (isPluralElement(el)) {\n var opt = el.options[\"=\".concat(value)];\n if (!opt) {\n if (!Intl.PluralRules) {\n throw new FormatError(\"Intl.PluralRules is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-pluralrules\\\"\\n\", ErrorCode.MISSING_INTL_API, originalMessage);\n }\n var rule = formatters\n .getPluralRules(locales, { type: el.pluralType })\n .select(value - (el.offset || 0));\n opt = el.options[rule] || el.options.other;\n }\n if (!opt) {\n throw new InvalidValueError(el.value, value, Object.keys(el.options), originalMessage);\n }\n result.push.apply(result, formatToParts(opt.value, locales, formatters, formats, values, value - (el.offset || 0)));\n continue;\n }\n }\n return mergeLiteral(result);\n}\n","/*\nCopyright (c) 2014, Yahoo! Inc. All rights reserved.\nCopyrights licensed under the New BSD License.\nSee the accompanying LICENSE file for terms.\n*/\nimport { __assign, __spreadArray } from \"tslib\";\nimport { parse } from '@formatjs/icu-messageformat-parser';\nimport memoize, { strategies } from '@formatjs/fast-memoize';\nimport { formatToParts, PART_TYPE, } from './formatters';\n// -- MessageFormat --------------------------------------------------------\nfunction mergeConfig(c1, c2) {\n if (!c2) {\n return c1;\n }\n return __assign(__assign(__assign({}, (c1 || {})), (c2 || {})), Object.keys(c1).reduce(function (all, k) {\n all[k] = __assign(__assign({}, c1[k]), (c2[k] || {}));\n return all;\n }, {}));\n}\nfunction mergeConfigs(defaultConfig, configs) {\n if (!configs) {\n return defaultConfig;\n }\n return Object.keys(defaultConfig).reduce(function (all, k) {\n all[k] = mergeConfig(defaultConfig[k], configs[k]);\n return all;\n }, __assign({}, defaultConfig));\n}\nfunction createFastMemoizeCache(store) {\n return {\n create: function () {\n return {\n get: function (key) {\n return store[key];\n },\n set: function (key, value) {\n store[key] = value;\n },\n };\n },\n };\n}\nfunction createDefaultFormatters(cache) {\n if (cache === void 0) { cache = {\n number: {},\n dateTime: {},\n pluralRules: {},\n }; }\n return {\n getNumberFormat: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.NumberFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.number),\n strategy: strategies.variadic,\n }),\n getDateTimeFormat: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.DateTimeFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.dateTime),\n strategy: strategies.variadic,\n }),\n getPluralRules: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.PluralRules).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.pluralRules),\n strategy: strategies.variadic,\n }),\n };\n}\nvar IntlMessageFormat = /** @class */ (function () {\n function IntlMessageFormat(message, locales, overrideFormats, opts) {\n var _this = this;\n if (locales === void 0) { locales = IntlMessageFormat.defaultLocale; }\n this.formatterCache = {\n number: {},\n dateTime: {},\n pluralRules: {},\n };\n this.format = function (values) {\n var parts = _this.formatToParts(values);\n // Hot path for straight simple msg translations\n if (parts.length === 1) {\n return parts[0].value;\n }\n var result = parts.reduce(function (all, part) {\n if (!all.length ||\n part.type !== PART_TYPE.literal ||\n typeof all[all.length - 1] !== 'string') {\n all.push(part.value);\n }\n else {\n all[all.length - 1] += part.value;\n }\n return all;\n }, []);\n if (result.length <= 1) {\n return result[0] || '';\n }\n return result;\n };\n this.formatToParts = function (values) {\n return formatToParts(_this.ast, _this.locales, _this.formatters, _this.formats, values, undefined, _this.message);\n };\n this.resolvedOptions = function () { return ({\n locale: _this.resolvedLocale.toString(),\n }); };\n this.getAst = function () { return _this.ast; };\n // Defined first because it's used to build the format pattern.\n this.locales = locales;\n this.resolvedLocale = IntlMessageFormat.resolveLocale(locales);\n if (typeof message === 'string') {\n this.message = message;\n if (!IntlMessageFormat.__parse) {\n throw new TypeError('IntlMessageFormat.__parse must be set to process `message` of type `string`');\n }\n // Parse string messages into an AST.\n this.ast = IntlMessageFormat.__parse(message, {\n ignoreTag: opts === null || opts === void 0 ? void 0 : opts.ignoreTag,\n locale: this.resolvedLocale,\n });\n }\n else {\n this.ast = message;\n }\n if (!Array.isArray(this.ast)) {\n throw new TypeError('A message must be provided as a String or AST.');\n }\n // Creates a new object with the specified `formats` merged with the default\n // formats.\n this.formats = mergeConfigs(IntlMessageFormat.formats, overrideFormats);\n this.formatters =\n (opts && opts.formatters) || createDefaultFormatters(this.formatterCache);\n }\n Object.defineProperty(IntlMessageFormat, \"defaultLocale\", {\n get: function () {\n if (!IntlMessageFormat.memoizedDefaultLocale) {\n IntlMessageFormat.memoizedDefaultLocale =\n new Intl.NumberFormat().resolvedOptions().locale;\n }\n return IntlMessageFormat.memoizedDefaultLocale;\n },\n enumerable: false,\n configurable: true\n });\n IntlMessageFormat.memoizedDefaultLocale = null;\n IntlMessageFormat.resolveLocale = function (locales) {\n var supportedLocales = Intl.NumberFormat.supportedLocalesOf(locales);\n if (supportedLocales.length > 0) {\n return new Intl.Locale(supportedLocales[0]);\n }\n return new Intl.Locale(typeof locales === 'string' ? locales : locales[0]);\n };\n IntlMessageFormat.__parse = parse;\n // Default format options used as the prototype of the `formats` provided to the\n // constructor. These are used when constructing the internal Intl.NumberFormat\n // and Intl.DateTimeFormat instances.\n IntlMessageFormat.formats = {\n number: {\n integer: {\n maximumFractionDigits: 0,\n },\n currency: {\n style: 'currency',\n },\n percent: {\n style: 'percent',\n },\n },\n date: {\n short: {\n month: 'numeric',\n day: 'numeric',\n year: '2-digit',\n },\n medium: {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n },\n long: {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n full: {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n },\n time: {\n short: {\n hour: 'numeric',\n minute: 'numeric',\n },\n medium: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n },\n long: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n timeZoneName: 'short',\n },\n full: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n timeZoneName: 'short',\n },\n },\n };\n return IntlMessageFormat;\n}());\nexport { IntlMessageFormat };\n","import { __extends } from \"tslib\";\nexport var IntlErrorCode;\n(function (IntlErrorCode) {\n IntlErrorCode[\"FORMAT_ERROR\"] = \"FORMAT_ERROR\";\n IntlErrorCode[\"UNSUPPORTED_FORMATTER\"] = \"UNSUPPORTED_FORMATTER\";\n IntlErrorCode[\"INVALID_CONFIG\"] = \"INVALID_CONFIG\";\n IntlErrorCode[\"MISSING_DATA\"] = \"MISSING_DATA\";\n IntlErrorCode[\"MISSING_TRANSLATION\"] = \"MISSING_TRANSLATION\";\n})(IntlErrorCode || (IntlErrorCode = {}));\nvar IntlError = /** @class */ (function (_super) {\n __extends(IntlError, _super);\n function IntlError(code, message, exception) {\n var _this = this;\n var err = exception\n ? exception instanceof Error\n ? exception\n : new Error(String(exception))\n : undefined;\n _this = _super.call(this, \"[@formatjs/intl Error \".concat(code, \"] \").concat(message, \" \\n\").concat(err ? \"\\n\".concat(err.message, \"\\n\").concat(err.stack) : '')) || this;\n _this.code = code;\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (typeof Error.captureStackTrace === 'function') {\n // @ts-ignore just so we don't need to declare dep on @types/node\n Error.captureStackTrace(_this, IntlError);\n }\n return _this;\n }\n return IntlError;\n}(Error));\nexport { IntlError };\nvar UnsupportedFormatterError = /** @class */ (function (_super) {\n __extends(UnsupportedFormatterError, _super);\n function UnsupportedFormatterError(message, exception) {\n return _super.call(this, IntlErrorCode.UNSUPPORTED_FORMATTER, message, exception) || this;\n }\n return UnsupportedFormatterError;\n}(IntlError));\nexport { UnsupportedFormatterError };\nvar InvalidConfigError = /** @class */ (function (_super) {\n __extends(InvalidConfigError, _super);\n function InvalidConfigError(message, exception) {\n return _super.call(this, IntlErrorCode.INVALID_CONFIG, message, exception) || this;\n }\n return InvalidConfigError;\n}(IntlError));\nexport { InvalidConfigError };\nvar MissingDataError = /** @class */ (function (_super) {\n __extends(MissingDataError, _super);\n function MissingDataError(message, exception) {\n return _super.call(this, IntlErrorCode.MISSING_DATA, message, exception) || this;\n }\n return MissingDataError;\n}(IntlError));\nexport { MissingDataError };\nvar IntlFormatError = /** @class */ (function (_super) {\n __extends(IntlFormatError, _super);\n function IntlFormatError(message, locale, exception) {\n return _super.call(this, IntlErrorCode.FORMAT_ERROR, \"\".concat(message, \" \\nLocale: \").concat(locale, \"\\n\"), exception) || this;\n }\n return IntlFormatError;\n}(IntlError));\nexport { IntlFormatError };\nvar MessageFormatError = /** @class */ (function (_super) {\n __extends(MessageFormatError, _super);\n function MessageFormatError(message, locale, descriptor, exception) {\n var _this = _super.call(this, \"\".concat(message, \" \\nMessageID: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.id, \"\\nDefault Message: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.defaultMessage, \"\\nDescription: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.description, \" \\n\"), locale, exception) || this;\n _this.descriptor = descriptor;\n return _this;\n }\n return MessageFormatError;\n}(IntlFormatError));\nexport { MessageFormatError };\nvar MissingTranslationError = /** @class */ (function (_super) {\n __extends(MissingTranslationError, _super);\n function MissingTranslationError(descriptor, locale) {\n var _this = _super.call(this, IntlErrorCode.MISSING_TRANSLATION, \"Missing message: \\\"\".concat(descriptor.id, \"\\\" for locale \\\"\").concat(locale, \"\\\", using \").concat(descriptor.defaultMessage ? 'default message' : 'id', \" as fallback.\")) || this;\n _this.descriptor = descriptor;\n return _this;\n }\n return MissingTranslationError;\n}(IntlError));\nexport { MissingTranslationError };\n","import { __assign, __spreadArray } from \"tslib\";\nimport { IntlMessageFormat } from 'intl-messageformat';\nimport memoize, { strategies } from '@formatjs/fast-memoize';\nimport { UnsupportedFormatterError } from './error';\nexport function filterProps(props, allowlist, defaults) {\n if (defaults === void 0) { defaults = {}; }\n return allowlist.reduce(function (filtered, name) {\n if (name in props) {\n filtered[name] = props[name];\n }\n else if (name in defaults) {\n filtered[name] = defaults[name];\n }\n return filtered;\n }, {});\n}\nvar defaultErrorHandler = function (error) {\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (process.env.NODE_ENV !== 'production') {\n console.error(error);\n }\n};\nvar defaultWarnHandler = function (warning) {\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n};\nexport var DEFAULT_INTL_CONFIG = {\n formats: {},\n messages: {},\n timeZone: undefined,\n defaultLocale: 'en',\n defaultFormats: {},\n fallbackOnEmptyString: true,\n onError: defaultErrorHandler,\n onWarn: defaultWarnHandler,\n};\nexport function createIntlCache() {\n return {\n dateTime: {},\n number: {},\n message: {},\n relativeTime: {},\n pluralRules: {},\n list: {},\n displayNames: {},\n };\n}\nfunction createFastMemoizeCache(store) {\n return {\n create: function () {\n return {\n get: function (key) {\n return store[key];\n },\n set: function (key, value) {\n store[key] = value;\n },\n };\n },\n };\n}\n/**\n * Create intl formatters and populate cache\n * @param cache explicit cache to prevent leaking memory\n */\nexport function createFormatters(cache) {\n if (cache === void 0) { cache = createIntlCache(); }\n var RelativeTimeFormat = Intl.RelativeTimeFormat;\n var ListFormat = Intl.ListFormat;\n var DisplayNames = Intl.DisplayNames;\n var getDateTimeFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.DateTimeFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.dateTime),\n strategy: strategies.variadic,\n });\n var getNumberFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.NumberFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.number),\n strategy: strategies.variadic,\n });\n var getPluralRules = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.PluralRules).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.pluralRules),\n strategy: strategies.variadic,\n });\n return {\n getDateTimeFormat: getDateTimeFormat,\n getNumberFormat: getNumberFormat,\n getMessageFormat: memoize(function (message, locales, overrideFormats, opts) {\n return new IntlMessageFormat(message, locales, overrideFormats, __assign({ formatters: {\n getNumberFormat: getNumberFormat,\n getDateTimeFormat: getDateTimeFormat,\n getPluralRules: getPluralRules,\n } }, (opts || {})));\n }, {\n cache: createFastMemoizeCache(cache.message),\n strategy: strategies.variadic,\n }),\n getRelativeTimeFormat: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (RelativeTimeFormat.bind.apply(RelativeTimeFormat, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.relativeTime),\n strategy: strategies.variadic,\n }),\n getPluralRules: getPluralRules,\n getListFormat: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (ListFormat.bind.apply(ListFormat, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.list),\n strategy: strategies.variadic,\n }),\n getDisplayNames: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (DisplayNames.bind.apply(DisplayNames, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.displayNames),\n strategy: strategies.variadic,\n }),\n };\n}\nexport function getNamedFormat(formats, type, name, onError) {\n var formatType = formats && formats[type];\n var format;\n if (formatType) {\n format = formatType[name];\n }\n if (format) {\n return format;\n }\n onError(new UnsupportedFormatterError(\"No \".concat(type, \" format named: \").concat(name)));\n}\n","import { __assign } from \"tslib\";\nimport { invariant } from '@formatjs/ecma402-abstract';\nimport { IntlMessageFormat, } from 'intl-messageformat';\nimport { MissingTranslationError, MessageFormatError } from './error';\nimport { TYPE } from '@formatjs/icu-messageformat-parser';\nfunction setTimeZoneInOptions(opts, timeZone) {\n return Object.keys(opts).reduce(function (all, k) {\n all[k] = __assign({ timeZone: timeZone }, opts[k]);\n return all;\n }, {});\n}\nfunction deepMergeOptions(opts1, opts2) {\n var keys = Object.keys(__assign(__assign({}, opts1), opts2));\n return keys.reduce(function (all, k) {\n all[k] = __assign(__assign({}, (opts1[k] || {})), (opts2[k] || {}));\n return all;\n }, {});\n}\nfunction deepMergeFormatsAndSetTimeZone(f1, timeZone) {\n if (!timeZone) {\n return f1;\n }\n var mfFormats = IntlMessageFormat.formats;\n return __assign(__assign(__assign({}, mfFormats), f1), { date: deepMergeOptions(setTimeZoneInOptions(mfFormats.date, timeZone), setTimeZoneInOptions(f1.date || {}, timeZone)), time: deepMergeOptions(setTimeZoneInOptions(mfFormats.time, timeZone), setTimeZoneInOptions(f1.time || {}, timeZone)) });\n}\nexport function formatMessage(_a, state, messageDescriptor, values, opts) {\n var locale = _a.locale, formats = _a.formats, messages = _a.messages, defaultLocale = _a.defaultLocale, defaultFormats = _a.defaultFormats, fallbackOnEmptyString = _a.fallbackOnEmptyString, onError = _a.onError, timeZone = _a.timeZone, defaultRichTextElements = _a.defaultRichTextElements;\n if (messageDescriptor === void 0) { messageDescriptor = { id: '' }; }\n var msgId = messageDescriptor.id, defaultMessage = messageDescriptor.defaultMessage;\n // `id` is a required field of a Message Descriptor.\n invariant(!!msgId, \"[@formatjs/intl] An `id` must be provided to format a message. You can either:\\n1. Configure your build toolchain with [babel-plugin-formatjs](https://formatjs.io/docs/tooling/babel-plugin)\\nor [@formatjs/ts-transformer](https://formatjs.io/docs/tooling/ts-transformer) OR\\n2. Configure your `eslint` config to include [eslint-plugin-formatjs](https://formatjs.io/docs/tooling/linter#enforce-id)\\nto autofix this issue\");\n var id = String(msgId);\n var message = \n // In case messages is Object.create(null)\n // e.g import('foo.json') from webpack)\n // See https://github.com/formatjs/formatjs/issues/1914\n messages &&\n Object.prototype.hasOwnProperty.call(messages, id) &&\n messages[id];\n // IMPORTANT: Hot path if `message` is AST with a single literal node\n if (Array.isArray(message) &&\n message.length === 1 &&\n message[0].type === TYPE.literal) {\n return message[0].value;\n }\n // IMPORTANT: Hot path straight lookup for performance\n if (!values &&\n message &&\n typeof message === 'string' &&\n !defaultRichTextElements) {\n return message.replace(/'\\{(.*?)\\}'/gi, \"{$1}\");\n }\n values = __assign(__assign({}, defaultRichTextElements), (values || {}));\n formats = deepMergeFormatsAndSetTimeZone(formats, timeZone);\n defaultFormats = deepMergeFormatsAndSetTimeZone(defaultFormats, timeZone);\n if (!message) {\n if (fallbackOnEmptyString === false && message === '') {\n return message;\n }\n if (!defaultMessage ||\n (locale && locale.toLowerCase() !== defaultLocale.toLowerCase())) {\n // This prevents warnings from littering the console in development\n // when no `messages` are passed into the <IntlProvider> for the\n // default locale.\n onError(new MissingTranslationError(messageDescriptor, locale));\n }\n if (defaultMessage) {\n try {\n var formatter = state.getMessageFormat(defaultMessage, defaultLocale, defaultFormats, opts);\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting default message for: \\\"\".concat(id, \"\\\", rendering default message verbatim\"), locale, messageDescriptor, e));\n return typeof defaultMessage === 'string' ? defaultMessage : id;\n }\n }\n return id;\n }\n // We have the translated message\n try {\n var formatter = state.getMessageFormat(message, locale, formats, __assign({ formatters: state }, (opts || {})));\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting message: \\\"\".concat(id, \"\\\", using \").concat(defaultMessage ? 'default message' : 'id', \" as fallback.\"), locale, messageDescriptor, e));\n }\n if (defaultMessage) {\n try {\n var formatter = state.getMessageFormat(defaultMessage, defaultLocale, defaultFormats, opts);\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting the default message for: \\\"\".concat(id, \"\\\", rendering message verbatim\"), locale, messageDescriptor, e));\n }\n }\n if (typeof message === 'string') {\n return message;\n }\n if (typeof defaultMessage === 'string') {\n return defaultMessage;\n }\n return id;\n}\n","import { __assign } from \"tslib\";\nimport { filterProps, getNamedFormat } from './utils';\nimport { IntlError, IntlErrorCode } from './error';\nvar DATE_TIME_FORMAT_OPTIONS = [\n 'localeMatcher',\n 'formatMatcher',\n 'timeZone',\n 'hour12',\n 'weekday',\n 'era',\n 'year',\n 'month',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'timeZoneName',\n 'hourCycle',\n 'dateStyle',\n 'timeStyle',\n 'calendar',\n // 'dayPeriod',\n 'numberingSystem',\n];\nexport function getFormatter(_a, type, getDateTimeFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError, timeZone = _a.timeZone;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = __assign(__assign({}, (timeZone && { timeZone: timeZone })), (format && getNamedFormat(formats, type, format, onError)));\n var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, defaults);\n if (type === 'time' &&\n !filteredOptions.hour &&\n !filteredOptions.minute &&\n !filteredOptions.second &&\n !filteredOptions.timeStyle &&\n !filteredOptions.dateStyle) {\n // Add default formatting options if hour, minute, or second isn't defined.\n filteredOptions = __assign(__assign({}, filteredOptions), { hour: 'numeric', minute: 'numeric' });\n }\n return getDateTimeFormat(locale, filteredOptions);\n}\nexport function formatDate(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'date', getDateTimeFormat, options).format(date);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting date.', e));\n }\n return String(date);\n}\nexport function formatTime(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'time', getDateTimeFormat, options).format(date);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting time.', e));\n }\n return String(date);\n}\nexport function formatDateTimeRange(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var from = _a[0], to = _a[1], _b = _a[2], options = _b === void 0 ? {} : _b;\n var timeZone = config.timeZone, locale = config.locale, onError = config.onError;\n var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, timeZone ? { timeZone: timeZone } : {});\n try {\n return getDateTimeFormat(locale, filteredOptions).formatRange(from, to);\n }\n catch (e) {\n onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting date time range.', e));\n }\n return String(from);\n}\nexport function formatDateToParts(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'date', getDateTimeFormat, options).formatToParts(date);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting date.', e));\n }\n return [];\n}\nexport function formatTimeToParts(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'time', getDateTimeFormat, options).formatToParts(date);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting time.', e));\n }\n return [];\n}\n","import { filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlErrorCode, IntlError } from './error';\nvar DISPLAY_NAMES_OPTONS = [\n 'localeMatcher',\n 'style',\n 'type',\n 'fallback',\n];\nexport function formatDisplayName(_a, getDisplayNames, value, options) {\n var locale = _a.locale, onError = _a.onError;\n var DisplayNames = Intl.DisplayNames;\n if (!DisplayNames) {\n onError(new FormatError(\"Intl.DisplayNames is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-displaynames\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, DISPLAY_NAMES_OPTONS);\n try {\n return getDisplayNames(locale, filteredOptions).of(value);\n }\n catch (e) {\n onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting display name.', e));\n }\n}\n","import { __assign } from \"tslib\";\nimport { filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlError, IntlErrorCode } from './error';\nvar LIST_FORMAT_OPTIONS = [\n 'localeMatcher',\n 'type',\n 'style',\n];\nvar now = Date.now();\nfunction generateToken(i) {\n return \"\".concat(now, \"_\").concat(i, \"_\").concat(now);\n}\nexport function formatList(opts, getListFormat, values, options) {\n if (options === void 0) { options = {}; }\n var results = formatListToParts(opts, getListFormat, values, options).reduce(function (all, el) {\n var val = el.value;\n if (typeof val !== 'string') {\n all.push(val);\n }\n else if (typeof all[all.length - 1] === 'string') {\n all[all.length - 1] += val;\n }\n else {\n all.push(val);\n }\n return all;\n }, []);\n return results.length === 1 ? results[0] : results;\n}\nexport function formatListToParts(_a, getListFormat, values, options) {\n var locale = _a.locale, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var ListFormat = Intl.ListFormat;\n if (!ListFormat) {\n onError(new FormatError(\"Intl.ListFormat is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-listformat\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, LIST_FORMAT_OPTIONS);\n try {\n var richValues_1 = {};\n var serializedValues = values.map(function (v, i) {\n if (typeof v === 'object') {\n var id = generateToken(i);\n richValues_1[id] = v;\n return id;\n }\n return String(v);\n });\n return getListFormat(locale, filteredOptions)\n .formatToParts(serializedValues)\n .map(function (part) {\n return part.type === 'literal'\n ? part\n : __assign(__assign({}, part), { value: richValues_1[part.value] || part.value });\n });\n }\n catch (e) {\n onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting list.', e));\n }\n // @ts-ignore\n return values;\n}\n","import { filterProps } from './utils';\nimport { IntlFormatError } from './error';\nimport { ErrorCode, FormatError } from 'intl-messageformat';\nvar PLURAL_FORMAT_OPTIONS = [\n 'localeMatcher',\n 'type',\n];\nexport function formatPlural(_a, getPluralRules, value, options) {\n var locale = _a.locale, onError = _a.onError;\n if (options === void 0) { options = {}; }\n if (!Intl.PluralRules) {\n onError(new FormatError(\"Intl.PluralRules is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-pluralrules\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, PLURAL_FORMAT_OPTIONS);\n try {\n return getPluralRules(locale, filteredOptions).select(value);\n }\n catch (e) {\n onError(new IntlFormatError('Error formatting plural.', locale, e));\n }\n return 'other';\n}\n","import { getNamedFormat, filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlFormatError } from './error';\nvar RELATIVE_TIME_FORMAT_OPTIONS = ['numeric', 'style'];\nfunction getFormatter(_a, getRelativeTimeFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = (!!format && getNamedFormat(formats, 'relative', format, onError)) || {};\n var filteredOptions = filterProps(options, RELATIVE_TIME_FORMAT_OPTIONS, defaults);\n return getRelativeTimeFormat(locale, filteredOptions);\n}\nexport function formatRelativeTime(config, getRelativeTimeFormat, value, unit, options) {\n if (options === void 0) { options = {}; }\n if (!unit) {\n unit = 'second';\n }\n var RelativeTimeFormat = Intl.RelativeTimeFormat;\n if (!RelativeTimeFormat) {\n config.onError(new FormatError(\"Intl.RelativeTimeFormat is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-relativetimeformat\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n try {\n return getFormatter(config, getRelativeTimeFormat, options).format(value, unit);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting relative time.', config.locale, e));\n }\n return String(value);\n}\n","import { getNamedFormat, filterProps } from './utils';\nimport { IntlError, IntlErrorCode } from './error';\nvar NUMBER_FORMAT_OPTIONS = [\n 'localeMatcher',\n 'style',\n 'currency',\n 'currencyDisplay',\n 'unit',\n 'unitDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits',\n // ES2020 NumberFormat\n 'compactDisplay',\n 'currencyDisplay',\n 'currencySign',\n 'notation',\n 'signDisplay',\n 'unit',\n 'unitDisplay',\n 'numberingSystem',\n];\nexport function getFormatter(_a, getNumberFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = ((format &&\n getNamedFormat(formats, 'number', format, onError)) ||\n {});\n var filteredOptions = filterProps(options, NUMBER_FORMAT_OPTIONS, defaults);\n return getNumberFormat(locale, filteredOptions);\n}\nexport function formatNumber(config, getNumberFormat, value, options) {\n if (options === void 0) { options = {}; }\n try {\n return getFormatter(config, getNumberFormat, options).format(value);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting number.', e));\n }\n return String(value);\n}\nexport function formatNumberToParts(config, getNumberFormat, value, options) {\n if (options === void 0) { options = {}; }\n try {\n return getFormatter(config, getNumberFormat, options).formatToParts(value);\n }\n catch (e) {\n config.onError(new IntlError(IntlErrorCode.FORMAT_ERROR, 'Error formatting number.', e));\n }\n return [];\n}\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { invariant } from '@formatjs/ecma402-abstract';\nimport { DEFAULT_INTL_CONFIG as CORE_DEFAULT_INTL_CONFIG } from '@formatjs/intl';\nexport function invariantIntlContext(intl) {\n invariant(intl, '[React Intl] Could not find required `intl` object. ' +\n '<IntlProvider> needs to exist in the component ancestry.');\n}\nexport var DEFAULT_INTL_CONFIG = __assign(__assign({}, CORE_DEFAULT_INTL_CONFIG), { textComponent: React.Fragment });\n/**\n * Takes a `formatXMLElementFn`, and composes it in function, which passes\n * argument `parts` through, assigning unique key to each part, to prevent\n * \"Each child in a list should have a unique \"key\"\" React error.\n * @param formatXMLElementFn\n */\nexport function assignUniqueKeysToParts(formatXMLElementFn) {\n return function (parts) {\n // eslint-disable-next-line prefer-rest-params\n return formatXMLElementFn(React.Children.toArray(parts));\n };\n}\nexport function shallowEqual(objA, objB) {\n if (objA === objB) {\n return true;\n }\n if (!objA || !objB) {\n return false;\n }\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n var len = aKeys.length;\n if (bKeys.length !== len) {\n return false;\n }\n for (var i = 0; i < len; i++) {\n var key = aKeys[i];\n if (objA[key] !== objB[key] ||\n !Object.prototype.hasOwnProperty.call(objB, key)) {\n return false;\n }\n }\n return true;\n}\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\nimport { invariantIntlContext } from '../utils';\nfunction getDisplayName(Component) {\n return Component.displayName || Component.name || 'Component';\n}\n// TODO: We should provide initial value here\nvar IntlContext = React.createContext(null);\nvar IntlConsumer = IntlContext.Consumer, IntlProvider = IntlContext.Provider;\nexport var Provider = IntlProvider;\nexport var Context = IntlContext;\nexport default function injectIntl(WrappedComponent, options) {\n var _a = options || {}, _b = _a.intlPropName, intlPropName = _b === void 0 ? 'intl' : _b, _c = _a.forwardRef, forwardRef = _c === void 0 ? false : _c, _d = _a.enforceContext, enforceContext = _d === void 0 ? true : _d;\n var WithIntl = function (props) { return (React.createElement(IntlConsumer, null, function (intl) {\n var _a;\n if (enforceContext) {\n invariantIntlContext(intl);\n }\n var intlProp = (_a = {}, _a[intlPropName] = intl, _a);\n return (React.createElement(WrappedComponent, __assign({}, props, intlProp, { ref: forwardRef ? props.forwardedRef : null })));\n })); };\n WithIntl.displayName = \"injectIntl(\".concat(getDisplayName(WrappedComponent), \")\");\n WithIntl.WrappedComponent = WrappedComponent;\n if (forwardRef) {\n return hoistNonReactStatics(React.forwardRef(function (props, ref) { return (React.createElement(WithIntl, __assign({}, props, { forwardedRef: ref }))); }), WrappedComponent);\n }\n return hoistNonReactStatics(WithIntl, WrappedComponent);\n}\n","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport useIntl from './useIntl';\nvar DisplayName;\n(function (DisplayName) {\n DisplayName[\"formatDate\"] = \"FormattedDate\";\n DisplayName[\"formatTime\"] = \"FormattedTime\";\n DisplayName[\"formatNumber\"] = \"FormattedNumber\";\n DisplayName[\"formatList\"] = \"FormattedList\";\n // Note that this DisplayName is the locale display name, not to be confused with\n // the name of the enum, which is for React component display name in dev tools.\n DisplayName[\"formatDisplayName\"] = \"FormattedDisplayName\";\n})(DisplayName || (DisplayName = {}));\nvar DisplayNameParts;\n(function (DisplayNameParts) {\n DisplayNameParts[\"formatDate\"] = \"FormattedDateParts\";\n DisplayNameParts[\"formatTime\"] = \"FormattedTimeParts\";\n DisplayNameParts[\"formatNumber\"] = \"FormattedNumberParts\";\n DisplayNameParts[\"formatList\"] = \"FormattedListParts\";\n})(DisplayNameParts || (DisplayNameParts = {}));\nexport var FormattedNumberParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n return children(intl.formatNumberToParts(value, formatProps));\n};\nFormattedNumberParts.displayName = 'FormattedNumberParts';\nexport var FormattedListParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n return children(intl.formatListToParts(value, formatProps));\n};\nFormattedNumberParts.displayName = 'FormattedNumberParts';\nexport function createFormattedDateTimePartsComponent(name) {\n var ComponentParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n var formattedParts = name === 'formatDate'\n ? intl.formatDateToParts(date, formatProps)\n : intl.formatTimeToParts(date, formatProps);\n return children(formattedParts);\n };\n ComponentParts.displayName = DisplayNameParts[name];\n return ComponentParts;\n}\nexport function createFormattedComponent(name) {\n var Component = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props\n // TODO: fix TS type definition for localeMatcher upstream\n , [\"value\", \"children\"]);\n // TODO: fix TS type definition for localeMatcher upstream\n var formattedValue = intl[name](value, formatProps);\n if (typeof children === 'function') {\n return children(formattedValue);\n }\n var Text = intl.textComponent || React.Fragment;\n return React.createElement(Text, null, formattedValue);\n };\n Component.displayName = DisplayName[name];\n return Component;\n}\n","import * as React from 'react';\nimport { Context } from './injectIntl';\nimport { invariantIntlContext } from '../utils';\nexport default function useIntl() {\n var intl = React.useContext(Context);\n invariantIntlContext(intl);\n return intl;\n}\n","/*\n * Copyright 2015, Yahoo Inc.\n * Copyrights licensed under the New BSD License.\n * See the accompanying LICENSE file for terms.\n */\nimport { __assign, __extends, __rest, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { Provider } from './injectIntl';\nimport { DEFAULT_INTL_CONFIG, invariantIntlContext, assignUniqueKeysToParts, shallowEqual, } from '../utils';\nimport { formatMessage as coreFormatMessage, createIntl as coreCreateIntl, createIntlCache, } from '@formatjs/intl';\nimport { isFormatXMLElementFn, } from 'intl-messageformat';\nfunction processIntlConfig(config) {\n return {\n locale: config.locale,\n timeZone: config.timeZone,\n fallbackOnEmptyString: config.fallbackOnEmptyString,\n formats: config.formats,\n textComponent: config.textComponent,\n messages: config.messages,\n defaultLocale: config.defaultLocale,\n defaultFormats: config.defaultFormats,\n onError: config.onError,\n onWarn: config.onWarn,\n wrapRichTextChunksInFragment: config.wrapRichTextChunksInFragment,\n defaultRichTextElements: config.defaultRichTextElements,\n };\n}\nfunction assignUniqueKeysToFormatXMLElementFnArgument(values) {\n if (!values) {\n return values;\n }\n return Object.keys(values).reduce(function (acc, k) {\n var v = values[k];\n acc[k] = isFormatXMLElementFn(v)\n ? assignUniqueKeysToParts(v)\n : v;\n return acc;\n }, {});\n}\nvar formatMessage = function (config, formatters, descriptor, rawValues) {\n var rest = [];\n for (var _i = 4; _i < arguments.length; _i++) {\n rest[_i - 4] = arguments[_i];\n }\n var values = assignUniqueKeysToFormatXMLElementFnArgument(rawValues);\n var chunks = coreFormatMessage.apply(void 0, __spreadArray([config,\n formatters,\n descriptor,\n values], rest, false));\n if (Array.isArray(chunks)) {\n return React.Children.toArray(chunks);\n }\n return chunks;\n};\n/**\n * Create intl object\n * @param config intl config\n * @param cache cache for formatter instances to prevent memory leak\n */\nexport var createIntl = function (_a, cache) {\n var rawDefaultRichTextElements = _a.defaultRichTextElements, config = __rest(_a, [\"defaultRichTextElements\"]);\n var defaultRichTextElements = assignUniqueKeysToFormatXMLElementFnArgument(rawDefaultRichTextElements);\n var coreIntl = coreCreateIntl(__assign(__assign(__assign({}, DEFAULT_INTL_CONFIG), config), { defaultRichTextElements: defaultRichTextElements }), cache);\n return __assign(__assign({}, coreIntl), { formatMessage: formatMessage.bind(null, {\n locale: coreIntl.locale,\n timeZone: coreIntl.timeZone,\n fallbackOnEmptyString: coreIntl.fallbackOnEmptyString,\n formats: coreIntl.formats,\n defaultLocale: coreIntl.defaultLocale,\n defaultFormats: coreIntl.defaultFormats,\n messages: coreIntl.messages,\n onError: coreIntl.onError,\n defaultRichTextElements: defaultRichTextElements,\n }, coreIntl.formatters) });\n};\nvar IntlProvider = /** @class */ (function (_super) {\n __extends(IntlProvider, _super);\n function IntlProvider() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.cache = createIntlCache();\n _this.state = {\n cache: _this.cache,\n intl: createIntl(processIntlConfig(_this.props), _this.cache),\n prevConfig: processIntlConfig(_this.props),\n };\n return _this;\n }\n IntlProvider.getDerivedStateFromProps = function (props, _a) {\n var prevConfig = _a.prevConfig, cache = _a.cache;\n var config = processIntlConfig(props);\n if (!shallowEqual(prevConfig, config)) {\n return {\n intl: createIntl(config, cache),\n prevConfig: config,\n };\n }\n return null;\n };\n IntlProvider.prototype.render = function () {\n invariantIntlContext(this.state.intl);\n return React.createElement(Provider, { value: this.state.intl }, this.props.children);\n };\n IntlProvider.displayName = 'IntlProvider';\n IntlProvider.defaultProps = DEFAULT_INTL_CONFIG;\n return IntlProvider;\n}(React.PureComponent));\nexport default IntlProvider;\n","import { __assign } from \"tslib\";\nimport { createFormatters, DEFAULT_INTL_CONFIG } from './utils';\nimport { InvalidConfigError, MissingDataError } from './error';\nimport { formatNumber, formatNumberToParts } from './number';\nimport { formatRelativeTime } from './relativeTime';\nimport { formatDate, formatDateToParts, formatTime, formatTimeToParts, formatDateTimeRange, } from './dateTime';\nimport { formatPlural } from './plural';\nimport { formatMessage } from './message';\nimport { formatList, formatListToParts } from './list';\nimport { formatDisplayName } from './displayName';\nfunction messagesContainString(messages) {\n var firstMessage = messages ? messages[Object.keys(messages)[0]] : undefined;\n return typeof firstMessage === 'string';\n}\nfunction verifyConfigMessages(config) {\n if (config.onWarn &&\n config.defaultRichTextElements &&\n messagesContainString(config.messages || {})) {\n config.onWarn(\"[@formatjs/intl] \\\"defaultRichTextElements\\\" was specified but \\\"message\\\" was not pre-compiled. \\nPlease consider using \\\"@formatjs/cli\\\" to pre-compile your messages for performance.\\nFor more details see https://formatjs.io/docs/getting-started/message-distribution\");\n }\n}\n/**\n * Create intl object\n * @param config intl config\n * @param cache cache for formatter instances to prevent memory leak\n */\nexport function createIntl(config, cache) {\n var formatters = createFormatters(cache);\n var resolvedConfig = __assign(__assign({}, DEFAULT_INTL_CONFIG), config);\n var locale = resolvedConfig.locale, defaultLocale = resolvedConfig.defaultLocale, onError = resolvedConfig.onError;\n if (!locale) {\n if (onError) {\n onError(new InvalidConfigError(\"\\\"locale\\\" was not configured, using \\\"\".concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl/api#intlshape for more details\")));\n }\n // Since there's no registered locale data for `locale`, this will\n // fallback to the `defaultLocale` to make sure things can render.\n // The `messages` are overridden to the `defaultProps` empty object\n // to maintain referential equality across re-renders. It's assumed\n // each <FormattedMessage> contains a `defaultMessage` prop.\n resolvedConfig.locale = resolvedConfig.defaultLocale || 'en';\n }\n else if (!Intl.NumberFormat.supportedLocalesOf(locale).length && onError) {\n onError(new MissingDataError(\"Missing locale data for locale: \\\"\".concat(locale, \"\\\" in Intl.NumberFormat. Using default locale: \\\"\").concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details\")));\n }\n else if (!Intl.DateTimeFormat.supportedLocalesOf(locale).length &&\n onError) {\n onError(new MissingDataError(\"Missing locale data for locale: \\\"\".concat(locale, \"\\\" in Intl.DateTimeFormat. Using default locale: \\\"\").concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details\")));\n }\n verifyConfigMessages(resolvedConfig);\n return __assign(__assign({}, resolvedConfig), { formatters: formatters, formatNumber: formatNumber.bind(null, resolvedConfig, formatters.getNumberFormat), formatNumberToParts: formatNumberToParts.bind(null, resolvedConfig, formatters.getNumberFormat), formatRelativeTime: formatRelativeTime.bind(null, resolvedConfig, formatters.getRelativeTimeFormat), formatDate: formatDate.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatDateToParts: formatDateToParts.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatTime: formatTime.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatDateTimeRange: formatDateTimeRange.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatTimeToParts: formatTimeToParts.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatPlural: formatPlural.bind(null, resolvedConfig, formatters.getPluralRules), formatMessage: formatMessage.bind(null, resolvedConfig, formatters), $t: formatMessage.bind(null, resolvedConfig, formatters), formatList: formatList.bind(null, resolvedConfig, formatters.getListFormat), formatListToParts: formatListToParts.bind(null, resolvedConfig, formatters.getListFormat), formatDisplayName: formatDisplayName.bind(null, resolvedConfig, formatters.getDisplayNames) });\n}\n","/*\n * Copyright 2015, Yahoo Inc.\n * Copyrights licensed under the New BSD License.\n * See the accompanying LICENSE file for terms.\n */\nimport { __rest } from \"tslib\";\nimport * as React from 'react';\nimport useIntl from './useIntl';\nimport { shallowEqual } from '../utils';\nfunction areEqual(prevProps, nextProps) {\n var values = prevProps.values, otherProps = __rest(prevProps, [\"values\"]);\n var nextValues = nextProps.values, nextOtherProps = __rest(nextProps, [\"values\"]);\n return (shallowEqual(nextValues, values) &&\n shallowEqual(otherProps, nextOtherProps));\n}\nfunction FormattedMessage(props) {\n var intl = useIntl();\n var formatMessage = intl.formatMessage, _a = intl.textComponent, Text = _a === void 0 ? React.Fragment : _a;\n var id = props.id, description = props.description, defaultMessage = props.defaultMessage, values = props.values, children = props.children, _b = props.tagName, Component = _b === void 0 ? Text : _b, ignoreTag = props.ignoreTag;\n var descriptor = { id: id, description: description, defaultMessage: defaultMessage };\n var nodes = formatMessage(descriptor, values, {\n ignoreTag: ignoreTag,\n });\n if (typeof children === 'function') {\n return children(Array.isArray(nodes) ? nodes : [nodes]);\n }\n if (Component) {\n return React.createElement(Component, null, React.Children.toArray(nodes));\n }\n return React.createElement(React.Fragment, null, nodes);\n}\nFormattedMessage.displayName = 'FormattedMessage';\nvar MemoizedFormattedMessage = React.memo(FormattedMessage, areEqual);\nMemoizedFormattedMessage.displayName = 'MemoizedFormattedMessage';\nexport default MemoizedFormattedMessage;\n","import { createFormattedComponent, createFormattedDateTimePartsComponent, } from './src/components/createFormattedComponent';\nimport injectIntl, { Provider as RawIntlProvider, Context as IntlContext, } from './src/components/injectIntl';\nimport useIntl from './src/components/useIntl';\nimport IntlProvider, { createIntl } from './src/components/provider';\nimport FormattedRelativeTime from './src/components/relative';\nimport FormattedPlural from './src/components/plural';\nimport FormattedMessage from './src/components/message';\nimport FormattedDateTimeRange from './src/components/dateTimeRange';\nexport { FormattedDateTimeRange, FormattedMessage, FormattedPlural, FormattedRelativeTime, IntlContext, IntlProvider, RawIntlProvider, createIntl, injectIntl, useIntl, };\nexport { createIntlCache, UnsupportedFormatterError, InvalidConfigError, MissingDataError, MessageFormatError, MissingTranslationError, IntlErrorCode as ReactIntlErrorCode, IntlError as ReactIntlError, } from '@formatjs/intl';\nexport function defineMessages(msgs) {\n return msgs;\n}\nexport function defineMessage(msg) {\n return msg;\n}\n// IMPORTANT: Explicit here to prevent api-extractor from outputing `import('./src/types').CustomFormatConfig`\nexport var FormattedDate = createFormattedComponent('formatDate');\nexport var FormattedTime = createFormattedComponent('formatTime');\n// @ts-ignore issue w/ TS Intl types\nexport var FormattedNumber = createFormattedComponent('formatNumber');\nexport var FormattedList = createFormattedComponent('formatList');\nexport var FormattedDisplayName = createFormattedComponent('formatDisplayName');\nexport var FormattedDateParts = createFormattedDateTimePartsComponent('formatDate');\nexport var FormattedTimeParts = createFormattedDateTimePartsComponent('formatTime');\nexport { FormattedNumberParts, FormattedListParts, } from './src/components/createFormattedComponent';\n","import messagesDE from 'intl/messages/messages.de.json'\nimport messagesEN from 'intl/messages/messages.en.json'\nimport messagesES from 'intl/messages/messages.es.json'\nimport messagesFR from 'intl/messages/messages.fr.json'\nimport messagesIT from 'intl/messages/messages.it.json'\nimport messagesNL from 'intl/messages/messages.nl.json'\nimport messagesPT from 'intl/messages/messages.pt.json'\nimport { Locale } from 'types'\n\nexport const getTranslationsByLocale = (locale: Locale): Record<string, string> => {\n // A CMS plugin can add LCID format like : 'fr-FR' instead of 'fr'.\n // Instead of specifying all possibilities we just remove the last part of the string.\n const merchantLocale = locale.slice(0, 2)\n switch (merchantLocale) {\n case Locale.fr:\n return messagesFR\n case Locale.es:\n return messagesES\n case Locale.it:\n return messagesIT\n case Locale.de:\n return messagesDE\n case Locale.pt:\n return messagesPT\n case Locale.nl:\n return messagesNL\n case Locale.en:\n default:\n return messagesEN\n }\n}\n","import React, { FC, ReactNode } from 'react'\nimport { IntlProvider } from 'react-intl'\nimport { Locale } from 'types'\nimport { getTranslationsByLocale } from './utils'\n\ntype Props = { children: ReactNode; locale: Locale }\n\nconst Provider: FC<Props> = ({ children, locale }) => (\n <IntlProvider messages={getTranslationsByLocale(locale)} locale={locale} defaultLocale=\"en\">\n {children}\n </IntlProvider>\n)\n\nexport default Provider\n","/** @license React v0.20.2\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f,g,h,k;if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}\nif(\"undefined\"===typeof window||\"function\"!==typeof MessageChannel){var t=null,u=null,w=function(){if(null!==t)try{var a=exports.unstable_now();t(!0,a);t=null}catch(b){throw setTimeout(w,0),b;}};f=function(a){null!==t?setTimeout(f,0,a):(t=a,setTimeout(w,0))};g=function(a,b){u=setTimeout(a,b)};h=function(){clearTimeout(u)};exports.unstable_shouldYield=function(){return!1};k=exports.unstable_forceFrameRate=function(){}}else{var x=window.setTimeout,y=window.clearTimeout;if(\"undefined\"!==typeof console){var z=\nwindow.cancelAnimationFrame;\"function\"!==typeof window.requestAnimationFrame&&console.error(\"This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\");\"function\"!==typeof z&&console.error(\"This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\")}var A=!1,B=null,C=-1,D=5,E=0;exports.unstable_shouldYield=function(){return exports.unstable_now()>=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):D=0<a?Math.floor(1E3/a):5};var F=new MessageChannel,G=F.port2;F.port1.onmessage=function(){if(null!==B){var a=exports.unstable_now();E=a+D;try{B(!0,a)?G.postMessage(null):(A=!1,B=null)}catch(b){throw G.postMessage(null),b;}}else A=!1};f=function(a){B=a;A||(A=!0,G.postMessage(null))};g=function(a,b){C=\nx(function(){a(exports.unstable_now())},b)};h=function(){y(C);C=-1}}function H(a,b){var c=a.length;a.push(b);a:for(;;){var d=c-1>>>1,e=a[d];if(void 0!==e&&0<I(e,b))a[d]=b,a[c]=e,c=d;else break a}}function J(a){a=a[0];return void 0===a?null:a}\nfunction K(a){var b=a[0];if(void 0!==b){var c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length;d<e;){var m=2*(d+1)-1,n=a[m],v=m+1,r=a[v];if(void 0!==n&&0>I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e=-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:N++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/** @license React v17.0.2\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),m=require(\"object-assign\"),r=require(\"scheduler\");function y(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}if(!aa)throw Error(y(227));var ba=new Set,ca={};function da(a,b){ea(a,b);ea(a+\"Capture\",b)}\nfunction ea(a,b){ca[a]=b;for(a=0;a<b.length;a++)ba.add(b[a])}\nvar fa=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),ha=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,ia=Object.prototype.hasOwnProperty,\nja={},ka={};function la(a){if(ia.call(ka,a))return!0;if(ia.call(ja,a))return!1;if(ha.test(a))return ka[a]=!0;ja[a]=!0;return!1}function ma(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction na(a,b,c,d){if(null===b||\"undefined\"===typeof b||ma(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function B(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var D={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){D[a]=new B(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];D[b]=new B(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){D[a]=new B(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){D[a]=new B(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){D[a]=new B(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){D[a]=new B(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){D[a]=new B(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){D[a]=new B(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){D[a]=new B(a,5,!1,a.toLowerCase(),null,!1,!1)});var oa=/[\\-:]([a-z])/g;function pa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(oa,\npa);D[b]=new B(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!1,!1)});\nD.xlinkHref=new B(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction qa(a,b,c,d){var e=D.hasOwnProperty(b)?D[b]:null;var f=null!==e?0===e.type:d?!1:!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1]?!1:!0;f||(na(b,c,e,d)&&(c=null),d||null===e?la(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c))))}\nvar ra=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sa=60103,ta=60106,ua=60107,wa=60108,xa=60114,ya=60109,za=60110,Aa=60112,Ba=60113,Ca=60120,Da=60115,Ea=60116,Fa=60121,Ga=60128,Ha=60129,Ia=60130,Ja=60131;\nif(\"function\"===typeof Symbol&&Symbol.for){var E=Symbol.for;sa=E(\"react.element\");ta=E(\"react.portal\");ua=E(\"react.fragment\");wa=E(\"react.strict_mode\");xa=E(\"react.profiler\");ya=E(\"react.provider\");za=E(\"react.context\");Aa=E(\"react.forward_ref\");Ba=E(\"react.suspense\");Ca=E(\"react.suspense_list\");Da=E(\"react.memo\");Ea=E(\"react.lazy\");Fa=E(\"react.block\");E(\"react.scope\");Ga=E(\"react.opaque.id\");Ha=E(\"react.debug_trace_mode\");Ia=E(\"react.offscreen\");Ja=E(\"react.legacy_hidden\")}\nvar Ka=\"function\"===typeof Symbol&&Symbol.iterator;function La(a){if(null===a||\"object\"!==typeof a)return null;a=Ka&&a[Ka]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}var Ma;function Na(a){if(void 0===Ma)try{throw Error();}catch(c){var b=c.stack.trim().match(/\\n( *(at )?)/);Ma=b&&b[1]||\"\"}return\"\\n\"+Ma+a}var Oa=!1;\nfunction Pa(a,b){if(!a||Oa)return\"\";Oa=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,\"props\",{set:function(){throw Error();}}),\"object\"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(k){var d=k}Reflect.construct(a,[],b)}else{try{b.call()}catch(k){d=k}a.call(b.prototype)}else{try{throw Error();}catch(k){d=k}a()}}catch(k){if(k&&d&&\"string\"===typeof k.stack){for(var e=k.stack.split(\"\\n\"),\nf=d.stack.split(\"\\n\"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h])return\"\\n\"+e[g].replace(\" at new \",\" at \");while(1<=g&&0<=h)}break}}}finally{Oa=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Na(a):\"\"}\nfunction Qa(a){switch(a.tag){case 5:return Na(a.type);case 16:return Na(\"Lazy\");case 13:return Na(\"Suspense\");case 19:return Na(\"SuspenseList\");case 0:case 2:case 15:return a=Pa(a.type,!1),a;case 11:return a=Pa(a.type.render,!1),a;case 22:return a=Pa(a.type._render,!1),a;case 1:return a=Pa(a.type,!0),a;default:return\"\"}}\nfunction Ra(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ua:return\"Fragment\";case ta:return\"Portal\";case xa:return\"Profiler\";case wa:return\"StrictMode\";case Ba:return\"Suspense\";case Ca:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case za:return(a.displayName||\"Context\")+\".Consumer\";case ya:return(a._context.displayName||\"Context\")+\".Provider\";case Aa:var b=a.render;b=b.displayName||b.name||\"\";\nreturn a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\"ForwardRef\");case Da:return Ra(a.type);case Fa:return Ra(a._render);case Ea:b=a._payload;a=a._init;try{return Ra(a(b))}catch(c){}}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return m({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function $a(a,b){b=b.checked;null!=b&&qa(a,\"checked\",b,!1)}\nfunction ab(a,b){$a(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?bb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&bb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction cb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction bb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function db(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function eb(a,b){a=m({children:void 0},b);if(b=db(b.children))a.children=b;return a}\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction gb(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(y(91));return m({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function hb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(y(92));if(Array.isArray(c)){if(!(1>=c.length))throw Error(y(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var kb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction lb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function mb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?lb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar nb,ob=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==kb.svg||\"innerHTML\"in a)a.innerHTML=b;else{nb=nb||document.createElement(\"div\");nb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=nb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction pb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar qb={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(qb).forEach(function(a){rb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);qb[b]=qb[a]})});function sb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||qb.hasOwnProperty(a)&&qb[a]?(\"\"+b).trim():b+\"px\"}\nfunction tb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=sb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var ub=m({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction vb(a,b){if(b){if(ub[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(y(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(y(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(y(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(y(62));}}\nfunction wb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(y(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a<b.length;a++)Bb(b[a])}}function Gb(a,b){return a(b)}function Hb(a,b,c,d,e){return a(b,c,d,e)}function Ib(){}var Jb=Gb,Kb=!1,Lb=!1;function Mb(){if(null!==zb||null!==Ab)Ib(),Fb()}\nfunction Nb(a,b,c){if(Lb)return a(b,c);Lb=!0;try{return Jb(a,b,c)}finally{Lb=!1,Mb()}}\nfunction Ob(a,b){var c=a.stateNode;if(null===c)return null;var d=Db(c);if(null===d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==\ntypeof c)throw Error(y(231,b,typeof c));return c}var Pb=!1;if(fa)try{var Qb={};Object.defineProperty(Qb,\"passive\",{get:function(){Pb=!0}});window.addEventListener(\"test\",Qb,Qb);window.removeEventListener(\"test\",Qb,Qb)}catch(a){Pb=!1}function Rb(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(n){this.onError(n)}}var Sb=!1,Tb=null,Ub=!1,Vb=null,Wb={onError:function(a){Sb=!0;Tb=a}};function Xb(a,b,c,d,e,f,g,h,k){Sb=!1;Tb=null;Rb.apply(Wb,arguments)}\nfunction Yb(a,b,c,d,e,f,g,h,k){Xb.apply(this,arguments);if(Sb){if(Sb){var l=Tb;Sb=!1;Tb=null}else throw Error(y(198));Ub||(Ub=!0,Vb=l)}}function Zb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&1026)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function $b(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function ac(a){if(Zb(a)!==a)throw Error(y(188));}\nfunction bc(a){var b=a.alternate;if(!b){b=Zb(a);if(null===b)throw Error(y(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return ac(e),a;if(f===d)return ac(e),b;f=f.sibling}throw Error(y(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(y(189));}}if(c.alternate!==d)throw Error(y(190));}if(3!==c.tag)throw Error(y(188));return c.stateNode.current===c?a:b}function cc(a){a=bc(a);if(!a)return null;for(var b=a;;){if(5===b.tag||6===b.tag)return b;if(b.child)b.child.return=b,b=b.child;else{if(b===a)break;for(;!b.sibling;){if(!b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}}return null}\nfunction dc(a,b){for(var c=a.alternate;null!==b;){if(b===a||b===c)return!0;b=b.return}return!1}var ec,fc,gc,hc,ic=!1,jc=[],kc=null,lc=null,mc=null,nc=new Map,oc=new Map,pc=[],qc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit\".split(\" \");\nfunction rc(a,b,c,d,e){return{blockedOn:a,domEventName:b,eventSystemFlags:c|16,nativeEvent:e,targetContainers:[d]}}function sc(a,b){switch(a){case \"focusin\":case \"focusout\":kc=null;break;case \"dragenter\":case \"dragleave\":lc=null;break;case \"mouseover\":case \"mouseout\":mc=null;break;case \"pointerover\":case \"pointerout\":nc.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":oc.delete(b.pointerId)}}\nfunction tc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a=rc(b,c,d,e,f),null!==b&&(b=Cb(b),null!==b&&fc(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}\nfunction uc(a,b,c,d,e){switch(b){case \"focusin\":return kc=tc(kc,a,b,c,d,e),!0;case \"dragenter\":return lc=tc(lc,a,b,c,d,e),!0;case \"mouseover\":return mc=tc(mc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;nc.set(f,tc(nc.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,oc.set(f,tc(oc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction vc(a){var b=wc(a.target);if(null!==b){var c=Zb(b);if(null!==c)if(b=c.tag,13===b){if(b=$b(c),null!==b){a.blockedOn=b;hc(a.lanePriority,function(){r.unstable_runWithPriority(a.priority,function(){gc(c)})});return}}else if(3===b&&c.stateNode.hydrate){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}\nfunction xc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c)return b=Cb(c),null!==b&&fc(b),a.blockedOn=c,!1;b.shift()}return!0}function zc(a,b,c){xc(a)&&c.delete(b)}\nfunction Ac(){for(ic=!1;0<jc.length;){var a=jc[0];if(null!==a.blockedOn){a=Cb(a.blockedOn);null!==a&&ec(a);break}for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c){a.blockedOn=c;break}b.shift()}null===a.blockedOn&&jc.shift()}null!==kc&&xc(kc)&&(kc=null);null!==lc&&xc(lc)&&(lc=null);null!==mc&&xc(mc)&&(mc=null);nc.forEach(zc);oc.forEach(zc)}\nfunction Bc(a,b){a.blockedOn===b&&(a.blockedOn=null,ic||(ic=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Ac)))}\nfunction Cc(a){function b(b){return Bc(b,a)}if(0<jc.length){Bc(jc[0],a);for(var c=1;c<jc.length;c++){var d=jc[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==kc&&Bc(kc,a);null!==lc&&Bc(lc,a);null!==mc&&Bc(mc,a);nc.forEach(b);oc.forEach(b);for(c=0;c<pc.length;c++)d=pc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<pc.length&&(c=pc[0],null===c.blockedOn);)vc(c),null===c.blockedOn&&pc.shift()}\nfunction Dc(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var Ec={animationend:Dc(\"Animation\",\"AnimationEnd\"),animationiteration:Dc(\"Animation\",\"AnimationIteration\"),animationstart:Dc(\"Animation\",\"AnimationStart\"),transitionend:Dc(\"Transition\",\"TransitionEnd\")},Fc={},Gc={};\nfa&&(Gc=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete Ec.animationend.animation,delete Ec.animationiteration.animation,delete Ec.animationstart.animation),\"TransitionEvent\"in window||delete Ec.transitionend.transition);function Hc(a){if(Fc[a])return Fc[a];if(!Ec[a])return a;var b=Ec[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Gc)return Fc[a]=b[c];return a}\nvar Ic=Hc(\"animationend\"),Jc=Hc(\"animationiteration\"),Kc=Hc(\"animationstart\"),Lc=Hc(\"transitionend\"),Mc=new Map,Nc=new Map,Oc=[\"abort\",\"abort\",Ic,\"animationEnd\",Jc,\"animationIteration\",Kc,\"animationStart\",\"canplay\",\"canPlay\",\"canplaythrough\",\"canPlayThrough\",\"durationchange\",\"durationChange\",\"emptied\",\"emptied\",\"encrypted\",\"encrypted\",\"ended\",\"ended\",\"error\",\"error\",\"gotpointercapture\",\"gotPointerCapture\",\"load\",\"load\",\"loadeddata\",\"loadedData\",\"loadedmetadata\",\"loadedMetadata\",\"loadstart\",\"loadStart\",\n\"lostpointercapture\",\"lostPointerCapture\",\"playing\",\"playing\",\"progress\",\"progress\",\"seeking\",\"seeking\",\"stalled\",\"stalled\",\"suspend\",\"suspend\",\"timeupdate\",\"timeUpdate\",Lc,\"transitionEnd\",\"waiting\",\"waiting\"];function Pc(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];e=\"on\"+(e[0].toUpperCase()+e.slice(1));Nc.set(d,b);Mc.set(d,e);da(e,[d])}}var Qc=r.unstable_now;Qc();var F=8;\nfunction Rc(a){if(0!==(1&a))return F=15,1;if(0!==(2&a))return F=14,2;if(0!==(4&a))return F=13,4;var b=24&a;if(0!==b)return F=12,b;if(0!==(a&32))return F=11,32;b=192&a;if(0!==b)return F=10,b;if(0!==(a&256))return F=9,256;b=3584&a;if(0!==b)return F=8,b;if(0!==(a&4096))return F=7,4096;b=4186112&a;if(0!==b)return F=6,b;b=62914560&a;if(0!==b)return F=5,b;if(a&67108864)return F=4,67108864;if(0!==(a&134217728))return F=3,134217728;b=805306368&a;if(0!==b)return F=2,b;if(0!==(1073741824&a))return F=1,1073741824;\nF=8;return a}function Sc(a){switch(a){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function Tc(a){switch(a){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(y(358,a));}}\nfunction Uc(a,b){var c=a.pendingLanes;if(0===c)return F=0;var d=0,e=0,f=a.expiredLanes,g=a.suspendedLanes,h=a.pingedLanes;if(0!==f)d=f,e=F=15;else if(f=c&134217727,0!==f){var k=f&~g;0!==k?(d=Rc(k),e=F):(h&=f,0!==h&&(d=Rc(h),e=F))}else f=c&~g,0!==f?(d=Rc(f),e=F):0!==h&&(d=Rc(h),e=F);if(0===d)return 0;d=31-Vc(d);d=c&((0>d?0:1<<d)<<1)-1;if(0!==b&&b!==d&&0===(b&g)){Rc(b);if(e<=F)return b;F=e}b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-Vc(b),e=1<<c,d|=a[c],b&=~e;return d}\nfunction Wc(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function Xc(a,b){switch(a){case 15:return 1;case 14:return 2;case 12:return a=Yc(24&~b),0===a?Xc(10,b):a;case 10:return a=Yc(192&~b),0===a?Xc(8,b):a;case 8:return a=Yc(3584&~b),0===a&&(a=Yc(4186112&~b),0===a&&(a=512)),a;case 2:return b=Yc(805306368&~b),0===b&&(b=268435456),b}throw Error(y(358,a));}function Yc(a){return a&-a}function Zc(a){for(var b=[],c=0;31>c;c++)b.push(a);return b}\nfunction $c(a,b,c){a.pendingLanes|=b;var d=b-1;a.suspendedLanes&=d;a.pingedLanes&=d;a=a.eventTimes;b=31-Vc(b);a[b]=c}var Vc=Math.clz32?Math.clz32:ad,bd=Math.log,cd=Math.LN2;function ad(a){return 0===a?32:31-(bd(a)/cd|0)|0}var dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function gd(a,b,c,d){Kb||Ib();var e=hd,f=Kb;Kb=!0;try{Hb(e,a,b,c,d)}finally{(Kb=f)||Mb()}}function id(a,b,c,d){ed(dd,hd.bind(null,a,b,c,d))}\nfunction hd(a,b,c,d){if(fd){var e;if((e=0===(b&4))&&0<jc.length&&-1<qc.indexOf(a))a=rc(null,a,b,c,d),jc.push(a);else{var f=yc(a,b,c,d);if(null===f)e&&sc(a,d);else{if(e){if(-1<qc.indexOf(a)){a=rc(f,a,b,c,d);jc.push(a);return}if(uc(f,a,b,c,d))return;sc(a,d)}jd(a,b,d,null,c)}}}}\nfunction yc(a,b,c,d){var e=xb(d);e=wc(e);if(null!==e){var f=Zb(e);if(null===f)e=null;else{var g=f.tag;if(13===g){e=$b(f);if(null!==e)return e;e=null}else if(3===g){if(f.stateNode.hydrate)return 3===f.tag?f.stateNode.containerInfo:null;e=null}else f!==e&&(e=null)}}jd(a,b,d,e,c);return null}var kd=null,ld=null,md=null;\nfunction nd(){if(md)return md;var a,b=ld,c=b.length,d,e=\"value\"in kd?kd.value:kd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return md=e.slice(a,1<d?1-d:void 0)}function od(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function pd(){return!0}function qd(){return!1}\nfunction rd(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?pd:qd;this.isPropagationStopped=qd;return this}m(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&\n(a.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd});return b}\nvar sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td=rd(sd),ud=m({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=m({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){if(\"movementX\"in\na)return a.movementX;a!==yd&&(yd&&\"mousemove\"===a.type?(wd=a.screenX-yd.screenX,xd=a.screenY-yd.screenY):xd=wd=0,yd=a);return wd},movementY:function(a){return\"movementY\"in a?a.movementY:xd}}),Bd=rd(Ad),Cd=m({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=m({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=m({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=m({},sd,{clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=m({},sd,{data:0}),Ld=rd(Kd),Md={Esc:\"Escape\",\nSpacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},Nd={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",\n119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},Od={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pd(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Od[a])?!!b[a]:!1}function zd(){return Pd}\nvar Qd=m({},ud,{key:function(a){if(a.key){var b=Md[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=od(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?Nd[a.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(a){return\"keypress\"===a.type?od(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===\na.type?od(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),Rd=rd(Qd),Sd=m({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=m({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=m({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=m({},Ad,{deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in a?-a.wheelDeltaX:0},\ndeltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae=fa&&\"CompositionEvent\"in window,be=null;fa&&\"documentMode\"in document&&(be=document.documentMode);var ce=fa&&\"TextEvent\"in window&&!be,de=fa&&(!ae||be&&8<be&&11>=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return de&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar le={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function me(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!le[a.type]:\"textarea\"===b?!0:!1}function ne(a,b,c,d){Eb(d);b=oe(b,\"onChange\");0<b.length&&(c=new td(\"onChange\",\"change\",null,c,d),a.push({event:c,listeners:b}))}var pe=null,qe=null;function re(a){se(a,0)}function te(a){var b=ue(a);if(Wa(b))return a}\nfunction ve(a,b){if(\"change\"===a)return b}var we=!1;if(fa){var xe;if(fa){var ye=\"oninput\"in document;if(!ye){var ze=document.createElement(\"div\");ze.setAttribute(\"oninput\",\"return;\");ye=\"function\"===typeof ze.oninput}xe=ye}else xe=!1;we=xe&&(!document.documentMode||9<document.documentMode)}function Ae(){pe&&(pe.detachEvent(\"onpropertychange\",Be),qe=pe=null)}function Be(a){if(\"value\"===a.propertyName&&te(qe)){var b=[];ne(b,qe,a,xb(a));a=re;if(Kb)a(b);else{Kb=!0;try{Gb(a,b)}finally{Kb=!1,Mb()}}}}\nfunction Ce(a,b,c){\"focusin\"===a?(Ae(),pe=b,qe=c,pe.attachEvent(\"onpropertychange\",Be)):\"focusout\"===a&&Ae()}function De(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return te(qe)}function Ee(a,b){if(\"click\"===a)return te(b)}function Fe(a,b){if(\"input\"===a||\"change\"===a)return te(b)}function Ge(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var He=\"function\"===typeof Object.is?Object.is:Ge,Ie=Object.prototype.hasOwnProperty;\nfunction Je(a,b){if(He(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!Ie.call(b,c[d])||!He(a[c[d]],b[c[d]]))return!1;return!0}function Ke(a){for(;a&&a.firstChild;)a=a.firstChild;return a}\nfunction Le(a,b){var c=Ke(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Ke(c)}}function Me(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Me(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Ne(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Oe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nvar Pe=fa&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Oe(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Je(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0<d.length&&(b=new td(\"onSelect\",\"select\",null,b,c),a.push({event:b,listeners:d}),b.target=Qe)))}\nPc(\"cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange\".split(\" \"),\n0);Pc(\"drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel\".split(\" \"),1);Pc(Oc,2);for(var Ve=\"change selectionchange textInput compositionstart compositionend compositionupdate\".split(\" \"),We=0;We<Ve.length;We++)Nc.set(Ve[We],0);ea(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]);\nea(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]);ea(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]);ea(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]);da(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \"));da(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \"));da(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]);da(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \"));\nda(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \"));da(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var Xe=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),Ye=new Set(\"cancel close invalid load scroll toggle\".split(\" \").concat(Xe));\nfunction Ze(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=c;Yb(d,b,void 0,a);a.currentTarget=null}\nfunction se(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}}}if(Ub)throw a=Vb,Ub=!1,Vb=null,a;}\nfunction G(a,b){var c=$e(b),d=a+\"__bubble\";c.has(d)||(af(b,a,2,!1),c.add(d))}var bf=\"_reactListening\"+Math.random().toString(36).slice(2);function cf(a){a[bf]||(a[bf]=!0,ba.forEach(function(b){Ye.has(b)||df(b,!1,a,null);df(b,!0,a,null)}))}\nfunction df(a,b,c,d){var e=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,f=c;\"selectionchange\"===a&&9!==c.nodeType&&(f=c.ownerDocument);if(null!==d&&!b&&Ye.has(a)){if(\"scroll\"!==a)return;e|=2;f=d}var g=$e(f),h=a+\"__\"+(b?\"capture\":\"bubble\");g.has(h)||(b&&(e|=4),af(f,a,e,b),g.add(h))}\nfunction af(a,b,c,d){var e=Nc.get(b);switch(void 0===e?2:e){case 0:e=gd;break;case 1:e=id;break;default:e=hd}c=e.bind(null,b,c,a);e=void 0;!Pb||\"touchstart\"!==b&&\"touchmove\"!==b&&\"wheel\"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}\nfunction jd(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=wc(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}Nb(function(){var d=f,e=xb(c),g=[];\na:{var h=Mc.get(a);if(void 0!==h){var k=td,x=a;switch(a){case \"keypress\":if(0===od(c))break a;case \"keydown\":case \"keyup\":k=Rd;break;case \"focusin\":x=\"focus\";k=Fd;break;case \"focusout\":x=\"blur\";k=Fd;break;case \"beforeblur\":case \"afterblur\":k=Fd;break;case \"click\":if(2===c.button)break a;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":k=Bd;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":k=\nDd;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":k=Vd;break;case Ic:case Jc:case Kc:k=Hd;break;case Lc:k=Xd;break;case \"scroll\":k=vd;break;case \"wheel\":k=Zd;break;case \"copy\":case \"cut\":case \"paste\":k=Jd;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":k=Td}var w=0!==(b&4),z=!w&&\"scroll\"===a,u=w?null!==h?h+\"Capture\":null:h;w=[];for(var t=d,q;null!==\nt;){q=t;var v=q.stateNode;5===q.tag&&null!==v&&(q=v,null!==u&&(v=Ob(t,u),null!=v&&w.push(ef(t,v,q))));if(z)break;t=t.return}0<w.length&&(h=new k(h,x,null,c,e),g.push({event:h,listeners:w}))}}if(0===(b&7)){a:{h=\"mouseover\"===a||\"pointerover\"===a;k=\"mouseout\"===a||\"pointerout\"===a;if(h&&0===(b&16)&&(x=c.relatedTarget||c.fromElement)&&(wc(x)||x[ff]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(x=c.relatedTarget||c.toElement,k=d,x=x?wc(x):null,null!==\nx&&(z=Zb(x),x!==z||5!==x.tag&&6!==x.tag))x=null}else k=null,x=d;if(k!==x){w=Bd;v=\"onMouseLeave\";u=\"onMouseEnter\";t=\"mouse\";if(\"pointerout\"===a||\"pointerover\"===a)w=Td,v=\"onPointerLeave\",u=\"onPointerEnter\",t=\"pointer\";z=null==k?h:ue(k);q=null==x?h:ue(x);h=new w(v,t+\"leave\",k,c,e);h.target=z;h.relatedTarget=q;v=null;wc(e)===d&&(w=new w(u,t+\"enter\",x,c,e),w.target=q,w.relatedTarget=z,v=w);z=v;if(k&&x)b:{w=k;u=x;t=0;for(q=w;q;q=gf(q))t++;q=0;for(v=u;v;v=gf(v))q++;for(;0<t-q;)w=gf(w),t--;for(;0<q-t;)u=\ngf(u),q--;for(;t--;){if(w===u||null!==u&&w===u.alternate)break b;w=gf(w);u=gf(u)}w=null}else w=null;null!==k&&hf(g,h,k,w,!1);null!==x&&null!==z&&hf(g,z,x,w,!0)}}}a:{h=d?ue(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if(\"select\"===k||\"input\"===k&&\"file\"===h.type)var J=ve;else if(me(h))if(we)J=Fe;else{J=De;var K=Ce}else(k=h.nodeName)&&\"input\"===k.toLowerCase()&&(\"checkbox\"===h.type||\"radio\"===h.type)&&(J=Ee);if(J&&(J=J(a,d))){ne(g,J,c,e);break a}K&&K(a,h,d);\"focusout\"===a&&(K=h._wrapperState)&&\nK.controlled&&\"number\"===h.type&&bb(h,\"number\",h.value)}K=d?ue(d):window;switch(a){case \"focusin\":if(me(K)||\"true\"===K.contentEditable)Qe=K,Re=d,Se=null;break;case \"focusout\":Se=Re=Qe=null;break;case \"mousedown\":Te=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":Te=!1;Ue(g,c,e);break;case \"selectionchange\":if(Pe)break;case \"keydown\":case \"keyup\":Ue(g,c,e)}var Q;if(ae)b:{switch(a){case \"compositionstart\":var L=\"onCompositionStart\";break b;case \"compositionend\":L=\"onCompositionEnd\";break b;\ncase \"compositionupdate\":L=\"onCompositionUpdate\";break b}L=void 0}else ie?ge(a,c)&&(L=\"onCompositionEnd\"):\"keydown\"===a&&229===c.keyCode&&(L=\"onCompositionStart\");L&&(de&&\"ko\"!==c.locale&&(ie||\"onCompositionStart\"!==L?\"onCompositionEnd\"===L&&ie&&(Q=nd()):(kd=e,ld=\"value\"in kd?kd.value:kd.textContent,ie=!0)),K=oe(d,L),0<K.length&&(L=new Ld(L,a,null,c,e),g.push({event:L,listeners:K}),Q?L.data=Q:(Q=he(c),null!==Q&&(L.data=Q))));if(Q=ce?je(a,c):ke(a,c))d=oe(d,\"onBeforeInput\"),0<d.length&&(e=new Ld(\"onBeforeInput\",\n\"beforeinput\",null,c,e),g.push({event:e,listeners:d}),e.data=Q)}se(g,b)})}function ef(a,b,c){return{instance:a,listener:b,currentTarget:c}}function oe(a,b){for(var c=b+\"Capture\",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==f&&(e=f,f=Ob(a,c),null!=f&&d.unshift(ef(a,f,e)),f=Ob(a,b),null!=f&&d.push(ef(a,f,e)));a=a.return}return d}function gf(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction hf(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=Ob(c,f),null!=k&&g.unshift(ef(c,k,h))):e||(k=Ob(c,f),null!=k&&g.push(ef(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}function jf(){}var kf=null,lf=null;function mf(a,b){switch(a){case \"button\":case \"input\":case \"select\":case \"textarea\":return!!b.autoFocus}return!1}\nfunction nf(a,b){return\"textarea\"===a||\"option\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}var of=\"function\"===typeof setTimeout?setTimeout:void 0,pf=\"function\"===typeof clearTimeout?clearTimeout:void 0;function qf(a){1===a.nodeType?a.textContent=\"\":9===a.nodeType&&(a=a.body,null!=a&&(a.textContent=\"\"))}\nfunction rf(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break}return a}function sf(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(\"$\"===c||\"$!\"===c||\"$?\"===c){if(0===b)return a;b--}else\"/$\"===c&&b++}a=a.previousSibling}return null}var tf=0;function uf(a){return{$$typeof:Ga,toString:a,valueOf:a}}var vf=Math.random().toString(36).slice(2),wf=\"__reactFiber$\"+vf,xf=\"__reactProps$\"+vf,ff=\"__reactContainer$\"+vf,yf=\"__reactEvents$\"+vf;\nfunction wc(a){var b=a[wf];if(b)return b;for(var c=a.parentNode;c;){if(b=c[ff]||c[wf]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=sf(a);null!==a;){if(c=a[wf])return c;a=sf(a)}return b}a=c;c=a.parentNode}return null}function Cb(a){a=a[wf]||a[ff];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function ue(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(y(33));}function Db(a){return a[xf]||null}\nfunction $e(a){var b=a[yf];void 0===b&&(b=a[yf]=new Set);return b}var zf=[],Af=-1;function Bf(a){return{current:a}}function H(a){0>Af||(a.current=zf[Af],zf[Af]=null,Af--)}function I(a,b){Af++;zf[Af]=a.current;a.current=b}var Cf={},M=Bf(Cf),N=Bf(!1),Df=Cf;\nfunction Ef(a,b){var c=a.type.contextTypes;if(!c)return Cf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function Ff(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gf(){H(N);H(M)}function Hf(a,b,c){if(M.current!==Cf)throw Error(y(168));I(M,b);I(N,c)}\nfunction If(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(y(108,Ra(b)||\"Unknown\",e));return m({},c,d)}function Jf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Cf;Df=M.current;I(M,a);I(N,N.current);return!0}function Kf(a,b,c){var d=a.stateNode;if(!d)throw Error(y(169));c?(a=If(a,b,Df),d.__reactInternalMemoizedMergedChildContext=a,H(N),H(M),I(M,a)):H(N);I(N,c)}\nvar Lf=null,Mf=null,Nf=r.unstable_runWithPriority,Of=r.unstable_scheduleCallback,Pf=r.unstable_cancelCallback,Qf=r.unstable_shouldYield,Rf=r.unstable_requestPaint,Sf=r.unstable_now,Tf=r.unstable_getCurrentPriorityLevel,Uf=r.unstable_ImmediatePriority,Vf=r.unstable_UserBlockingPriority,Wf=r.unstable_NormalPriority,Xf=r.unstable_LowPriority,Yf=r.unstable_IdlePriority,Zf={},$f=void 0!==Rf?Rf:function(){},ag=null,bg=null,cg=!1,dg=Sf(),O=1E4>dg?Sf:function(){return Sf()-dg};\nfunction eg(){switch(Tf()){case Uf:return 99;case Vf:return 98;case Wf:return 97;case Xf:return 96;case Yf:return 95;default:throw Error(y(332));}}function fg(a){switch(a){case 99:return Uf;case 98:return Vf;case 97:return Wf;case 96:return Xf;case 95:return Yf;default:throw Error(y(332));}}function gg(a,b){a=fg(a);return Nf(a,b)}function hg(a,b,c){a=fg(a);return Of(a,b,c)}function ig(){if(null!==bg){var a=bg;bg=null;Pf(a)}jg()}\nfunction jg(){if(!cg&&null!==ag){cg=!0;var a=0;try{var b=ag;gg(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});ag=null}catch(c){throw null!==ag&&(ag=ag.slice(a+1)),Of(Uf,ig),c;}finally{cg=!1}}}var kg=ra.ReactCurrentBatchConfig;function lg(a,b){if(a&&a.defaultProps){b=m({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}var mg=Bf(null),ng=null,og=null,pg=null;function qg(){pg=og=ng=null}\nfunction rg(a){var b=mg.current;H(mg);a.type._context._currentValue=b}function sg(a,b){for(;null!==a;){var c=a.alternate;if((a.childLanes&b)===b)if(null===c||(c.childLanes&b)===b)break;else c.childLanes|=b;else a.childLanes|=b,null!==c&&(c.childLanes|=b);a=a.return}}function tg(a,b){ng=a;pg=og=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(ug=!0),a.firstContext=null)}\nfunction vg(a,b){if(pg!==a&&!1!==b&&0!==b){if(\"number\"!==typeof b||1073741823===b)pg=a,b=1073741823;b={context:a,observedBits:b,next:null};if(null===og){if(null===ng)throw Error(y(308));og=b;ng.dependencies={lanes:0,firstContext:b,responders:null}}else og=og.next=b}return a._currentValue}var wg=!1;function xg(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}\nfunction yg(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function zg(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}function Ag(a,b){a=a.updateQueue;if(null!==a){a=a.shared;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}}\nfunction Bg(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction Cg(a,b,c,d){var e=a.updateQueue;wg=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var n=a.alternate;if(null!==n){n=n.updateQueue;var A=n.lastBaseUpdate;A!==g&&(null===A?n.firstBaseUpdate=l:A.next=l,n.lastBaseUpdate=k)}}if(null!==f){A=e.baseState;g=0;n=l=k=null;do{h=f.lane;var p=f.eventTime;if((d&h)===h){null!==n&&(n=n.next={eventTime:p,lane:0,tag:f.tag,payload:f.payload,callback:f.callback,\nnext:null});a:{var C=a,x=f;h=b;p=c;switch(x.tag){case 1:C=x.payload;if(\"function\"===typeof C){A=C.call(p,A,h);break a}A=C;break a;case 3:C.flags=C.flags&-4097|64;case 0:C=x.payload;h=\"function\"===typeof C?C.call(p,A,h):C;if(null===h||void 0===h)break a;A=m({},A,h);break a;case 2:wg=!0}}null!==f.callback&&(a.flags|=32,h=e.effects,null===h?e.effects=[f]:h.push(f))}else p={eventTime:p,lane:h,tag:f.tag,payload:f.payload,callback:f.callback,next:null},null===n?(l=n=p,k=A):n=n.next=p,g|=h;f=f.next;if(null===\nf)if(h=e.shared.pending,null===h)break;else f=h.next,h.next=null,e.lastBaseUpdate=h,e.shared.pending=null}while(1);null===n&&(k=A);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=n;Dg|=g;a.lanes=g;a.memoizedState=A}}function Eg(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if(\"function\"!==typeof e)throw Error(y(191,e));e.call(d)}}}var Fg=(new aa.Component).refs;\nfunction Gg(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:m({},b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}\nvar Kg={isMounted:function(a){return(a=a._reactInternals)?Zb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueForceUpdate:function(a,b){a=a._reactInternals;var c=Hg(),d=Ig(a),e=zg(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=\nb);Ag(a,e);Jg(a,d,c)}};function Lg(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!Je(c,d)||!Je(e,f):!0}\nfunction Mg(a,b,c){var d=!1,e=Cf;var f=b.contextType;\"object\"===typeof f&&null!==f?f=vg(f):(e=Ff(b)?Df:M.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Ef(a,e):Cf);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Kg;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Ng(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Kg.enqueueReplaceState(b,b.state,null)}\nfunction Og(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs=Fg;xg(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=vg(f):(f=Ff(b)?Df:M.current,e.context=Ef(a,f));Cg(a,c,e,d);e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Gg(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||\n(b=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Kg.enqueueReplaceState(e,e.state,null),Cg(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.flags|=4)}var Pg=Array.isArray;\nfunction Qg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(y(309));var d=c.stateNode}if(!d)throw Error(y(147,a));var e=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===e)return b.ref;b=function(a){var b=d.refs;b===Fg&&(b=d.refs={});null===a?delete b[e]:b[e]=a};b._stringRef=e;return b}if(\"string\"!==typeof a)throw Error(y(284));if(!c._owner)throw Error(y(290,a));}return a}\nfunction Rg(a,b){if(\"textarea\"!==a.type)throw Error(y(31,\"[object Object]\"===Object.prototype.toString.call(b)?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":b));}\nfunction Sg(a){function b(b,c){if(a){var d=b.lastEffect;null!==d?(d.nextEffect=c,b.lastEffect=c):b.firstEffect=b.lastEffect=c;c.nextEffect=null;c.flags=8}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Tg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags=2,\nc):d;b.flags=2;return c}function g(b){a&&null===b.alternate&&(b.flags=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Ug(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){if(null!==b&&b.elementType===c.type)return d=e(b,c.props),d.ref=Qg(a,b,c),d.return=a,d;d=Vg(c.type,c.key,c.props,null,a.mode,d);d.ref=Qg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||b.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=\nWg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function n(a,b,c,d,f){if(null===b||7!==b.tag)return b=Xg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function A(a,b,c){if(\"string\"===typeof b||\"number\"===typeof b)return b=Ug(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case sa:return c=Vg(b.type,b.key,b.props,null,a.mode,c),c.ref=Qg(a,null,b),c.return=a,c;case ta:return b=Wg(b,a.mode,c),b.return=a,b}if(Pg(b)||La(b))return b=Xg(b,\na.mode,c,null),b.return=a,b;Rg(a,b)}return null}function p(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case sa:return c.key===e?c.type===ua?n(a,b,c.props.children,d,e):k(a,b,c,d):null;case ta:return c.key===e?l(a,b,c,d):null}if(Pg(c)||La(c))return null!==e?null:n(a,b,c,d,null);Rg(a,c)}return null}function C(a,b,c,d,e){if(\"string\"===typeof d||\"number\"===typeof d)return a=a.get(c)||\nnull,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case sa:return a=a.get(null===d.key?c:d.key)||null,d.type===ua?n(b,a,d.props.children,e,d.key):k(b,a,d,e);case ta:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e)}if(Pg(d)||La(d))return a=a.get(c)||null,n(b,a,d,e,null);Rg(b,d)}return null}function x(e,g,h,k){for(var l=null,t=null,u=g,z=g=0,q=null;null!==u&&z<h.length;z++){u.index>z?(q=u,u=null):q=u.sibling;var n=p(e,u,h[z],k);if(null===n){null===u&&(u=q);break}a&&u&&null===\nn.alternate&&b(e,u);g=f(n,g,z);null===t?l=n:t.sibling=n;t=n;u=q}if(z===h.length)return c(e,u),l;if(null===u){for(;z<h.length;z++)u=A(e,h[z],k),null!==u&&(g=f(u,g,z),null===t?l=u:t.sibling=u,t=u);return l}for(u=d(e,u);z<h.length;z++)q=C(u,e,z,h[z],k),null!==q&&(a&&null!==q.alternate&&u.delete(null===q.key?z:q.key),g=f(q,g,z),null===t?l=q:t.sibling=q,t=q);a&&u.forEach(function(a){return b(e,a)});return l}function w(e,g,h,k){var l=La(h);if(\"function\"!==typeof l)throw Error(y(150));h=l.call(h);if(null==\nh)throw Error(y(151));for(var t=l=null,u=g,z=g=0,q=null,n=h.next();null!==u&&!n.done;z++,n=h.next()){u.index>z?(q=u,u=null):q=u.sibling;var w=p(e,u,n.value,k);if(null===w){null===u&&(u=q);break}a&&u&&null===w.alternate&&b(e,u);g=f(w,g,z);null===t?l=w:t.sibling=w;t=w;u=q}if(n.done)return c(e,u),l;if(null===u){for(;!n.done;z++,n=h.next())n=A(e,n.value,k),null!==n&&(g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);return l}for(u=d(e,u);!n.done;z++,n=h.next())n=C(u,e,z,n.value,k),null!==n&&(a&&null!==n.alternate&&\nu.delete(null===n.key?z:n.key),g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);a&&u.forEach(function(a){return b(e,a)});return l}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ua&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case sa:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ua){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,k.sibling);\nd=e(k,f.props);d.ref=Qg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ua?(d=Xg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Vg(f.type,f.key,f.props,null,a.mode,h),h.ref=Qg(a,d,f),h.return=a,a=h)}return g(a);case ta:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=\nWg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Ug(f,a.mode,h),d.return=a,a=d),g(a);if(Pg(f))return x(a,d,f,h);if(La(f))return w(a,d,f,h);l&&Rg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 22:case 0:case 11:case 15:throw Error(y(152,Ra(a.type)||\"Component\"));}return c(a,d)}}var Yg=Sg(!0),Zg=Sg(!1),$g={},ah=Bf($g),bh=Bf($g),ch=Bf($g);\nfunction dh(a){if(a===$g)throw Error(y(174));return a}function eh(a,b){I(ch,b);I(bh,a);I(ah,$g);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:mb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=mb(b,a)}H(ah);I(ah,b)}function fh(){H(ah);H(bh);H(ch)}function gh(a){dh(ch.current);var b=dh(ah.current);var c=mb(b,a.type);b!==c&&(I(bh,a),I(ah,c))}function hh(a){bh.current===a&&(H(ah),H(bh))}var P=Bf(0);\nfunction ih(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var jh=null,kh=null,lh=!1;\nfunction mh(a,b){var c=nh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.flags=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}function oh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction ph(a){if(lh){var b=kh;if(b){var c=b;if(!oh(a,b)){b=rf(c.nextSibling);if(!b||!oh(a,b)){a.flags=a.flags&-1025|2;lh=!1;jh=a;return}mh(jh,c)}jh=a;kh=rf(b.firstChild)}else a.flags=a.flags&-1025|2,lh=!1,jh=a}}function qh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;jh=a}\nfunction rh(a){if(a!==jh)return!1;if(!lh)return qh(a),lh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!nf(b,a.memoizedProps))for(b=kh;b;)mh(a,b),b=rf(b.nextSibling);qh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(y(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){kh=rf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}kh=null}}else kh=jh?rf(a.stateNode.nextSibling):null;return!0}\nfunction sh(){kh=jh=null;lh=!1}var th=[];function uh(){for(var a=0;a<th.length;a++)th[a]._workInProgressVersionPrimary=null;th.length=0}var vh=ra.ReactCurrentDispatcher,wh=ra.ReactCurrentBatchConfig,xh=0,R=null,S=null,T=null,yh=!1,zh=!1;function Ah(){throw Error(y(321));}function Bh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!He(a[c],b[c]))return!1;return!0}\nfunction Ch(a,b,c,d,e,f){xh=f;R=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;vh.current=null===a||null===a.memoizedState?Dh:Eh;a=c(d,e);if(zh){f=0;do{zh=!1;if(!(25>f))throw Error(y(301));f+=1;T=S=null;b.updateQueue=null;vh.current=Fh;a=c(d,e)}while(zh)}vh.current=Gh;b=null!==S&&null!==S.next;xh=0;T=S=R=null;yh=!1;if(b)throw Error(y(300));return a}function Hh(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===T?R.memoizedState=T=a:T=T.next=a;return T}\nfunction Ih(){if(null===S){var a=R.alternate;a=null!==a?a.memoizedState:null}else a=S.next;var b=null===T?R.memoizedState:T.next;if(null!==b)T=b,S=a;else{if(null===a)throw Error(y(310));S=a;a={memoizedState:S.memoizedState,baseState:S.baseState,baseQueue:S.baseQueue,queue:S.queue,next:null};null===T?R.memoizedState=T=a:T=T.next=a}return T}function Jh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Kh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=S,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.lane;if((xh&l)===l)null!==h&&(h=h.next={lane:0,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),d=k.eagerReducer===a?k.eagerState:a(d,k.action);else{var n={lane:l,action:k.action,eagerReducer:k.eagerReducer,\neagerState:k.eagerState,next:null};null===h?(g=h=n,f=d):h=h.next=n;R.lanes|=l;Dg|=l}k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;He(d,b.memoizedState)||(ug=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction Lh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(ug=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction Mh(a,b,c){var d=b._getVersion;d=d(b._source);var e=b._workInProgressVersionPrimary;if(null!==e)a=e===d;else if(a=a.mutableReadLanes,a=(xh&a)===a)b._workInProgressVersionPrimary=d,th.push(b);if(a)return c(b._source);th.push(b);throw Error(y(350));}\nfunction Nh(a,b,c,d){var e=U;if(null===e)throw Error(y(349));var f=b._getVersion,g=f(b._source),h=vh.current,k=h.useState(function(){return Mh(e,b,c)}),l=k[1],n=k[0];k=T;var A=a.memoizedState,p=A.refs,C=p.getSnapshot,x=A.source;A=A.subscribe;var w=R;a.memoizedState={refs:p,source:b,subscribe:d};h.useEffect(function(){p.getSnapshot=c;p.setSnapshot=l;var a=f(b._source);if(!He(g,a)){a=c(b._source);He(n,a)||(l(a),a=Ig(w),e.mutableReadLanes|=a&e.pendingLanes);a=e.mutableReadLanes;e.entangledLanes|=a;for(var d=\ne.entanglements,h=a;0<h;){var k=31-Vc(h),v=1<<k;d[k]|=a;h&=~v}}},[c,b,d]);h.useEffect(function(){return d(b._source,function(){var a=p.getSnapshot,c=p.setSnapshot;try{c(a(b._source));var d=Ig(w);e.mutableReadLanes|=d&e.pendingLanes}catch(q){c(function(){throw q;})}})},[b,d]);He(C,c)&&He(x,b)&&He(A,d)||(a={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:n},a.dispatch=l=Oh.bind(null,R,a),k.queue=a,k.baseQueue=null,n=Mh(e,b,c),k.memoizedState=k.baseState=n);return n}\nfunction Ph(a,b,c){var d=Ih();return Nh(d,a,b,c)}function Qh(a){var b=Hh();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a=b.queue={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:a};a=a.dispatch=Oh.bind(null,R,a);return[b.memoizedState,a]}\nfunction Rh(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=R.updateQueue;null===b?(b={lastEffect:null},R.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function Sh(a){var b=Hh();a={current:a};return b.memoizedState=a}function Th(){return Ih().memoizedState}function Uh(a,b,c,d){var e=Hh();R.flags|=a;e.memoizedState=Rh(1|b,c,void 0,void 0===d?null:d)}\nfunction Vh(a,b,c,d){var e=Ih();d=void 0===d?null:d;var f=void 0;if(null!==S){var g=S.memoizedState;f=g.destroy;if(null!==d&&Bh(d,g.deps)){Rh(b,c,f,d);return}}R.flags|=a;e.memoizedState=Rh(1|b,c,f,d)}function Wh(a,b){return Uh(516,4,a,b)}function Xh(a,b){return Vh(516,4,a,b)}function Yh(a,b){return Vh(4,2,a,b)}function Zh(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}\nfunction $h(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Vh(4,2,Zh.bind(null,b,a),c)}function ai(){}function bi(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}function ci(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}\nfunction di(a,b){var c=eg();gg(98>c?98:c,function(){a(!0)});gg(97<c?97:c,function(){var c=wh.transition;wh.transition=1;try{a(!1),b()}finally{wh.transition=c}})}\nfunction Oh(a,b,c){var d=Hg(),e=Ig(a),f={lane:e,action:c,eagerReducer:null,eagerState:null,next:null},g=b.pending;null===g?f.next=f:(f.next=g.next,g.next=f);b.pending=f;g=a.alternate;if(a===R||null!==g&&g===R)zh=yh=!0;else{if(0===a.lanes&&(null===g||0===g.lanes)&&(g=b.lastRenderedReducer,null!==g))try{var h=b.lastRenderedState,k=g(h,c);f.eagerReducer=g;f.eagerState=k;if(He(k,h))return}catch(l){}finally{}Jg(a,e,d)}}\nvar Gh={readContext:vg,useCallback:Ah,useContext:Ah,useEffect:Ah,useImperativeHandle:Ah,useLayoutEffect:Ah,useMemo:Ah,useReducer:Ah,useRef:Ah,useState:Ah,useDebugValue:Ah,useDeferredValue:Ah,useTransition:Ah,useMutableSource:Ah,useOpaqueIdentifier:Ah,unstable_isNewReconciler:!1},Dh={readContext:vg,useCallback:function(a,b){Hh().memoizedState=[a,void 0===b?null:b];return a},useContext:vg,useEffect:Wh,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Uh(4,2,Zh.bind(null,\nb,a),c)},useLayoutEffect:function(a,b){return Uh(4,2,a,b)},useMemo:function(a,b){var c=Hh();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Hh();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a=d.queue={pending:null,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};a=a.dispatch=Oh.bind(null,R,a);return[d.memoizedState,a]},useRef:Sh,useState:Qh,useDebugValue:ai,useDeferredValue:function(a){var b=Qh(a),c=b[0],d=b[1];Wh(function(){var b=wh.transition;\nwh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Qh(!1),b=a[0];a=di.bind(null,a[1]);Sh(a);return[a,b]},useMutableSource:function(a,b,c){var d=Hh();d.memoizedState={refs:{getSnapshot:b,setSnapshot:null},source:a,subscribe:c};return Nh(d,a,b,c)},useOpaqueIdentifier:function(){if(lh){var a=!1,b=uf(function(){a||(a=!0,c(\"r:\"+(tf++).toString(36)));throw Error(y(355));}),c=Qh(b)[1];0===(R.mode&2)&&(R.flags|=516,Rh(5,function(){c(\"r:\"+(tf++).toString(36))},\nvoid 0,null));return b}b=\"r:\"+(tf++).toString(36);Qh(b);return b},unstable_isNewReconciler:!1},Eh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Kh,useRef:Th,useState:function(){return Kh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Kh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Kh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Kh(Jh)[0]},unstable_isNewReconciler:!1},Fh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Lh,useRef:Th,useState:function(){return Lh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Lh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Lh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Lh(Jh)[0]},unstable_isNewReconciler:!1},ei=ra.ReactCurrentOwner,ug=!1;function fi(a,b,c,d){b.child=null===a?Zg(b,null,c,d):Yg(b,a.child,c,d)}function gi(a,b,c,d,e){c=c.render;var f=b.ref;tg(b,e);d=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,d,e);return b.child}\nfunction ii(a,b,c,d,e,f){if(null===a){var g=c.type;if(\"function\"===typeof g&&!ji(g)&&void 0===g.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=g,ki(a,b,g,d,e,f);a=Vg(c.type,null,d,b,b.mode,f);a.ref=b.ref;a.return=b;return b.child=a}g=a.child;if(0===(e&f)&&(e=g.memoizedProps,c=c.compare,c=null!==c?c:Je,c(e,d)&&a.ref===b.ref))return hi(a,b,f);b.flags|=1;a=Tg(g,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction ki(a,b,c,d,e,f){if(null!==a&&Je(a.memoizedProps,d)&&a.ref===b.ref)if(ug=!1,0!==(f&e))0!==(a.flags&16384)&&(ug=!0);else return b.lanes=a.lanes,hi(a,b,f);return li(a,b,c,d,f)}\nfunction mi(a,b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if(\"hidden\"===d.mode||\"unstable-defer-without-hiding\"===d.mode)if(0===(b.mode&4))b.memoizedState={baseLanes:0},ni(b,c);else if(0!==(c&1073741824))b.memoizedState={baseLanes:0},ni(b,null!==f?f.baseLanes:c);else return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a},ni(b,a),null;else null!==f?(d=f.baseLanes|c,b.memoizedState=null):d=c,ni(b,d);fi(a,b,e,c);return b.child}\nfunction oi(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=128}function li(a,b,c,d,e){var f=Ff(c)?Df:M.current;f=Ef(b,f);tg(b,e);c=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,c,e);return b.child}\nfunction pi(a,b,c,d,e){if(Ff(c)){var f=!0;Jf(b)}else f=!1;tg(b,e);if(null===b.stateNode)null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),Mg(b,c,d),Og(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=vg(l):(l=Ff(c)?Df:M.current,l=Ef(b,l));var n=c.getDerivedStateFromProps,A=\"function\"===typeof n||\"function\"===typeof g.getSnapshotBeforeUpdate;A||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\n\"function\"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&Ng(b,g,d,l);wg=!1;var p=b.memoizedState;g.state=p;Cg(b,d,g,e);k=b.memoizedState;h!==d||p!==k||N.current||wg?(\"function\"===typeof n&&(Gg(b,c,n,d),k=b.memoizedState),(h=wg||Lg(b,c,h,d,p,k,l))?(A||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===\ntypeof g.componentDidMount&&(b.flags|=4)):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),d=!1)}else{g=b.stateNode;yg(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:lg(b.type,h);g.props=l;A=b.pendingProps;p=g.context;k=c.contextType;\"object\"===typeof k&&null!==k?k=vg(k):(k=Ff(c)?Df:M.current,k=Ef(b,k));var C=c.getDerivedStateFromProps;(n=\"function\"===typeof C||\n\"function\"===typeof g.getSnapshotBeforeUpdate)||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==A||p!==k)&&Ng(b,g,d,k);wg=!1;p=b.memoizedState;g.state=p;Cg(b,d,g,e);var x=b.memoizedState;h!==A||p!==x||N.current||wg?(\"function\"===typeof C&&(Gg(b,c,C,d),x=b.memoizedState),(l=wg||Lg(b,c,l,d,p,x,k))?(n||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,\nx,k),\"function\"===typeof g.UNSAFE_componentWillUpdate&&g.UNSAFE_componentWillUpdate(d,x,k)),\"function\"===typeof g.componentDidUpdate&&(b.flags|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=256)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),b.memoizedProps=d,b.memoizedState=x),g.props=d,g.state=x,g.context=k,d=l):(\"function\"!==typeof g.componentDidUpdate||\nh===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),d=!1)}return qi(a,b,c,d,f,e)}\nfunction qi(a,b,c,d,e,f){oi(a,b);var g=0!==(b.flags&64);if(!d&&!g)return e&&Kf(b,c,!1),hi(a,b,f);d=b.stateNode;ei.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Yg(b,a.child,null,f),b.child=Yg(b,null,h,f)):fi(a,b,h,f);b.memoizedState=d.state;e&&Kf(b,c,!0);return b.child}function ri(a){var b=a.stateNode;b.pendingContext?Hf(a,b.pendingContext,b.pendingContext!==b.context):b.context&&Hf(a,b.context,!1);eh(a,b.containerInfo)}\nvar si={dehydrated:null,retryLane:0};\nfunction ti(a,b,c){var d=b.pendingProps,e=P.current,f=!1,g;(g=0!==(b.flags&64))||(g=null!==a&&null===a.memoizedState?!1:0!==(e&2));g?(f=!0,b.flags&=-65):null!==a&&null===a.memoizedState||void 0===d.fallback||!0===d.unstable_avoidThisFallback||(e|=1);I(P,e&1);if(null===a){void 0!==d.fallback&&ph(b);a=d.children;e=d.fallback;if(f)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},b.memoizedState=si,a;if(\"number\"===typeof d.unstable_expectedLoadTime)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},\nb.memoizedState=si,b.lanes=33554432,a;c=vi({mode:\"visible\",children:a},b.mode,c,null);c.return=b;return b.child=c}if(null!==a.memoizedState){if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:\n{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}function ui(a,b,c,d){var e=a.mode,f=a.child;b={mode:\"hidden\",children:b};0===(e&2)&&null!==f?(f.childLanes=0,f.pendingProps=b):f=vi(b,e,0,null);c=Xg(c,e,d,null);f.return=a;c.return=a;f.sibling=c;a.child=f;return c}\nfunction xi(a,b,c,d){var e=a.child;a=e.sibling;c=Tg(e,{mode:\"visible\",children:c});0===(b.mode&2)&&(c.lanes=d);c.return=b;c.sibling=null;null!==a&&(a.nextEffect=null,a.flags=8,b.firstEffect=b.lastEffect=a);return b.child=c}\nfunction wi(a,b,c,d,e){var f=b.mode,g=a.child;a=g.sibling;var h={mode:\"hidden\",children:c};0===(f&2)&&b.child!==g?(c=b.child,c.childLanes=0,c.pendingProps=h,g=c.lastEffect,null!==g?(b.firstEffect=c.firstEffect,b.lastEffect=g,g.nextEffect=null):b.firstEffect=b.lastEffect=null):c=Tg(g,h);null!==a?d=Tg(a,d):(d=Xg(d,f,e,null),d.flags|=2);d.return=b;c.return=b;c.sibling=d;b.child=c;return d}function yi(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);sg(a.return,b)}\nfunction zi(a,b,c,d,e,f){var g=a.memoizedState;null===g?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e,lastEffect:f}:(g.isBackwards=b,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=c,g.tailMode=e,g.lastEffect=f)}\nfunction Ai(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;fi(a,b,d.children,c);d=P.current;if(0!==(d&2))d=d&1|2,b.flags|=64;else{if(null!==a&&0!==(a.flags&64))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&yi(a,c);else if(19===a.tag)yi(a,c);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}I(P,d);if(0===(b.mode&2))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===ih(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);zi(b,!1,e,c,f,b.lastEffect);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===ih(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}zi(b,!0,c,null,f,b.lastEffect);break;case \"together\":zi(b,!1,null,null,void 0,b.lastEffect);break;default:b.memoizedState=null}return b.child}\nfunction hi(a,b,c){null!==a&&(b.dependencies=a.dependencies);Dg|=b.lanes;if(0!==(c&b.childLanes)){if(null!==a&&b.child!==a.child)throw Error(y(153));if(null!==b.child){a=b.child;c=Tg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Tg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}return null}var Bi,Ci,Di,Ei;\nBi=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};Ci=function(){};\nDi=function(a,b,c,d){var e=a.memoizedProps;if(e!==d){a=b.stateNode;dh(ah.current);var f=null;switch(c){case \"input\":e=Ya(a,e);d=Ya(a,d);f=[];break;case \"option\":e=eb(a,e);d=eb(a,d);f=[];break;case \"select\":e=m({},e,{value:void 0});d=m({},d,{value:void 0});f=[];break;case \"textarea\":e=gb(a,e);d=gb(a,d);f=[];break;default:\"function\"!==typeof e.onClick&&\"function\"===typeof d.onClick&&(a.onclick=jf)}vb(c,d);var g;c=null;for(l in e)if(!d.hasOwnProperty(l)&&e.hasOwnProperty(l)&&null!=e[l])if(\"style\"===\nl){var h=e[l];for(g in h)h.hasOwnProperty(g)&&(c||(c={}),c[g]=\"\")}else\"dangerouslySetInnerHTML\"!==l&&\"children\"!==l&&\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&\"autoFocus\"!==l&&(ca.hasOwnProperty(l)?f||(f=[]):(f=f||[]).push(l,null));for(l in d){var k=d[l];h=null!=e?e[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if(\"style\"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]=\"\");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||\n(c={}),c[g]=k[g])}else c||(f||(f=[]),f.push(l,c)),c=k;else\"dangerouslySetInnerHTML\"===l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(f=f||[]).push(l,k)):\"children\"===l?\"string\"!==typeof k&&\"number\"!==typeof k||(f=f||[]).push(l,\"\"+k):\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&(ca.hasOwnProperty(l)?(null!=k&&\"onScroll\"===l&&G(\"scroll\",a),f||h===k||(f=[])):\"object\"===typeof k&&null!==k&&k.$$typeof===Ga?k.toString():(f=f||[]).push(l,k))}c&&(f=f||[]).push(\"style\",\nc);var l=f;if(b.updateQueue=l)b.flags|=4}};Ei=function(a,b,c,d){c!==d&&(b.flags|=4)};function Fi(a,b){if(!lh)switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction Gi(a,b,c){var d=b.pendingProps;switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return Ff(b.type)&&Gf(),null;case 3:fh();H(N);H(M);uh();d=b.stateNode;d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null);if(null===a||null===a.child)rh(b)?b.flags|=4:d.hydrate||(b.flags|=256);Ci(b);return null;case 5:hh(b);var e=dh(ch.current);c=b.type;if(null!==a&&null!=b.stateNode)Di(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=128);else{if(!d){if(null===\nb.stateNode)throw Error(y(166));return null}a=dh(ah.current);if(rh(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[wf]=b;d[xf]=f;switch(c){case \"dialog\":G(\"cancel\",d);G(\"close\",d);break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",d);break;case \"video\":case \"audio\":for(a=0;a<Xe.length;a++)G(Xe[a],d);break;case \"source\":G(\"error\",d);break;case \"img\":case \"image\":case \"link\":G(\"error\",d);G(\"load\",d);break;case \"details\":G(\"toggle\",d);break;case \"input\":Za(d,f);G(\"invalid\",d);break;case \"select\":d._wrapperState=\n{wasMultiple:!!f.multiple};G(\"invalid\",d);break;case \"textarea\":hb(d,f),G(\"invalid\",d)}vb(c,f);a=null;for(var g in f)f.hasOwnProperty(g)&&(e=f[g],\"children\"===g?\"string\"===typeof e?d.textContent!==e&&(a=[\"children\",e]):\"number\"===typeof e&&d.textContent!==\"\"+e&&(a=[\"children\",\"\"+e]):ca.hasOwnProperty(g)&&null!=e&&\"onScroll\"===g&&G(\"scroll\",d));switch(c){case \"input\":Va(d);cb(d,f,!0);break;case \"textarea\":Va(d);jb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&(d.onclick=\njf)}d=a;b.updateQueue=d;null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;a===kb.html&&(a=lb(c));a===kb.html?\"script\"===c?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[wf]=b;a[xf]=d;Bi(a,b,!1,!1);b.stateNode=a;g=wb(c,d);switch(c){case \"dialog\":G(\"cancel\",a);G(\"close\",a);\ne=d;break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;e<Xe.length;e++)G(Xe[e],a);e=d;break;case \"source\":G(\"error\",a);e=d;break;case \"img\":case \"image\":case \"link\":G(\"error\",a);G(\"load\",a);e=d;break;case \"details\":G(\"toggle\",a);e=d;break;case \"input\":Za(a,d);e=Ya(a,d);G(\"invalid\",a);break;case \"option\":e=eb(a,d);break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};e=m({},d,{value:void 0});G(\"invalid\",a);break;case \"textarea\":hb(a,d);e=\ngb(a,d);G(\"invalid\",a);break;default:e=d}vb(c,e);var h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];\"style\"===f?tb(a,k):\"dangerouslySetInnerHTML\"===f?(k=k?k.__html:void 0,null!=k&&ob(a,k)):\"children\"===f?\"string\"===typeof k?(\"textarea\"!==c||\"\"!==k)&&pb(a,k):\"number\"===typeof k&&pb(a,\"\"+k):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(ca.hasOwnProperty(f)?null!=k&&\"onScroll\"===f&&G(\"scroll\",a):null!=k&&qa(a,f,k,g))}switch(c){case \"input\":Va(a);cb(a,d,!1);\nbreak;case \"textarea\":Va(a);jb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+Sa(d.value));break;case \"select\":a.multiple=!!d.multiple;f=d.value;null!=f?fb(a,!!d.multiple,f,!1):null!=d.defaultValue&&fb(a,!!d.multiple,d.defaultValue,!0);break;default:\"function\"===typeof e.onClick&&(a.onclick=jf)}mf(c,d)&&(b.flags|=4)}null!==b.ref&&(b.flags|=128)}return null;case 6:if(a&&null!=b.stateNode)Ei(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(y(166));\nc=dh(ch.current);dh(ah.current);rh(b)?(d=b.stateNode,c=b.memoizedProps,d[wf]=b,d.nodeValue!==c&&(b.flags|=4)):(d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[wf]=b,b.stateNode=d)}return null;case 13:H(P);d=b.memoizedState;if(0!==(b.flags&64))return b.lanes=c,b;d=null!==d;c=!1;null===a?void 0!==b.memoizedProps.fallback&&rh(b):c=null!==a.memoizedState;if(d&&!c&&0!==(b.mode&2))if(null===a&&!0!==b.memoizedProps.unstable_avoidThisFallback||0!==(P.current&1))0===V&&(V=3);else{if(0===V||3===V)V=\n4;null===U||0===(Dg&134217727)&&0===(Hi&134217727)||Ii(U,W)}if(d||c)b.flags|=4;return null;case 4:return fh(),Ci(b),null===a&&cf(b.stateNode.containerInfo),null;case 10:return rg(b),null;case 17:return Ff(b.type)&&Gf(),null;case 19:H(P);d=b.memoizedState;if(null===d)return null;f=0!==(b.flags&64);g=d.rendering;if(null===g)if(f)Fi(d,!1);else{if(0!==V||null!==a&&0!==(a.flags&64))for(a=b.child;null!==a;){g=ih(a);if(null!==g){b.flags|=64;Fi(d,!1);f=g.updateQueue;null!==f&&(b.updateQueue=f,b.flags|=4);\nnull===d.lastEffect&&(b.firstEffect=null);b.lastEffect=d.lastEffect;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=2,f.nextEffect=null,f.firstEffect=null,f.lastEffect=null,g=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,\nf.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;I(P,P.current&1|2);return b.child}a=a.sibling}null!==d.tail&&O()>Ji&&(b.flags|=64,f=!0,Fi(d,!1),b.lanes=33554432)}else{if(!f)if(a=ih(g),null!==a){if(b.flags|=64,f=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Fi(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!g.alternate&&!lh)return b=b.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*O()-d.renderingStartTime>Ji&&1073741824!==c&&(b.flags|=\n64,f=!0,Fi(d,!1),b.lanes=33554432);d.isBackwards?(g.sibling=b.child,b.child=g):(c=d.last,null!==c?c.sibling=g:b.child=g,d.last=g)}return null!==d.tail?(c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=O(),c.sibling=null,b=P.current,I(P,f?b&1|2:b&1),c):null;case 23:case 24:return Ki(),null!==a&&null!==a.memoizedState!==(null!==b.memoizedState)&&\"unstable-defer-without-hiding\"!==d.mode&&(b.flags|=4),null}throw Error(y(156,b.tag));}\nfunction Li(a){switch(a.tag){case 1:Ff(a.type)&&Gf();var b=a.flags;return b&4096?(a.flags=b&-4097|64,a):null;case 3:fh();H(N);H(M);uh();b=a.flags;if(0!==(b&64))throw Error(y(285));a.flags=b&-4097|64;return a;case 5:return hh(a),null;case 13:return H(P),b=a.flags,b&4096?(a.flags=b&-4097|64,a):null;case 19:return H(P),null;case 4:return fh(),null;case 10:return rg(a),null;case 23:case 24:return Ki(),null;default:return null}}\nfunction Mi(a,b){try{var c=\"\",d=b;do c+=Qa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e}}function Ni(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Oi=\"function\"===typeof WeakMap?WeakMap:Map;function Pi(a,b,c){c=zg(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Qi||(Qi=!0,Ri=d);Ni(a,b)};return c}\nfunction Si(a,b,c){c=zg(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ni(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===Ti?Ti=new Set([this]):Ti.add(this),Ni(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}var Ui=\"function\"===typeof WeakSet?WeakSet:Set;\nfunction Vi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Wi(a,c)}else b.current=null}function Xi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.flags&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:lg(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:b.flags&256&&qf(b.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(y(163));}\nfunction Yi(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{if(3===(a.tag&3)){var d=a.create;a.destroy=d()}a=a.next}while(a!==b)}b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{var e=a;d=e.next;e=e.tag;0!==(e&4)&&0!==(e&1)&&(Zi(c,a),$i(c,a));a=d}while(a!==b)}return;case 1:a=c.stateNode;c.flags&4&&(null===b?a.componentDidMount():(d=c.elementType===c.type?b.memoizedProps:lg(c.type,b.memoizedProps),a.componentDidUpdate(d,\nb.memoizedState,a.__reactInternalSnapshotBeforeUpdate)));b=c.updateQueue;null!==b&&Eg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Eg(c,b,a)}return;case 5:a=c.stateNode;null===b&&c.flags&4&&mf(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Cc(c))));\nreturn;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(y(163));}\nfunction aj(a,b){for(var c=a;;){if(5===c.tag){var d=c.stateNode;if(b)d=d.style,\"function\"===typeof d.setProperty?d.setProperty(\"display\",\"none\",\"important\"):d.display=\"none\";else{d=c.stateNode;var e=c.memoizedProps.style;e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null;d.style.display=sb(\"display\",e)}}else if(6===c.tag)c.stateNode.nodeValue=b?\"\":c.memoizedProps;else if((23!==c.tag&&24!==c.tag||null===c.memoizedState||c===a)&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===\na)break;for(;null===c.sibling;){if(null===c.return||c.return===a)return;c=c.return}c.sibling.return=c.return;c=c.sibling}}\nfunction bj(a,b){if(Mf&&\"function\"===typeof Mf.onCommitFiberUnmount)try{Mf.onCommitFiberUnmount(Lf,b)}catch(f){}switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var c=a=a.next;do{var d=c,e=d.destroy;d=d.tag;if(void 0!==e)if(0!==(d&4))Zi(b,c);else{d=b;try{e()}catch(f){Wi(d,f)}}c=c.next}while(c!==a)}break;case 1:Vi(b);a=b.stateNode;if(\"function\"===typeof a.componentWillUnmount)try{a.props=b.memoizedProps,a.state=b.memoizedState,a.componentWillUnmount()}catch(f){Wi(b,\nf)}break;case 5:Vi(b);break;case 4:cj(a,b)}}function dj(a){a.alternate=null;a.child=null;a.dependencies=null;a.firstEffect=null;a.lastEffect=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.return=null;a.updateQueue=null}function ej(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction fj(a){a:{for(var b=a.return;null!==b;){if(ej(b))break a;b=b.return}throw Error(y(160));}var c=b;b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(y(161));}c.flags&16&&(pb(b,\"\"),c.flags&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||ej(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.flags&2)continue b;if(null===\nc.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.flags&2)){c=c.stateNode;break a}}d?gj(a,c,b):hj(a,c,b)}\nfunction gj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=jf));else if(4!==d&&(a=a.child,null!==a))for(gj(a,b,c),a=a.sibling;null!==a;)gj(a,b,c),a=a.sibling}\nfunction hj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(hj(a,b,c),a=a.sibling;null!==a;)hj(a,b,c),a=a.sibling}\nfunction cj(a,b){for(var c=b,d=!1,e,f;;){if(!d){d=c.return;a:for(;;){if(null===d)throw Error(y(160));e=d.stateNode;switch(d.tag){case 5:f=!1;break a;case 3:e=e.containerInfo;f=!0;break a;case 4:e=e.containerInfo;f=!0;break a}d=d.return}d=!0}if(5===c.tag||6===c.tag){a:for(var g=a,h=c,k=h;;)if(bj(g,k),null!==k.child&&4!==k.tag)k.child.return=k,k=k.child;else{if(k===h)break a;for(;null===k.sibling;){if(null===k.return||k.return===h)break a;k=k.return}k.sibling.return=k.return;k=k.sibling}f?(g=e,h=c.stateNode,\n8===g.nodeType?g.parentNode.removeChild(h):g.removeChild(h)):e.removeChild(c.stateNode)}else if(4===c.tag){if(null!==c.child){e=c.stateNode.containerInfo;f=!0;c.child.return=c;c=c.child;continue}}else if(bj(a,c),null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return;4===c.tag&&(d=!1)}c.sibling.return=c.return;c=c.sibling}}\nfunction ij(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:var c=b.updateQueue;c=null!==c?c.lastEffect:null;if(null!==c){var d=c=c.next;do 3===(d.tag&3)&&(a=d.destroy,d.destroy=void 0,void 0!==a&&a()),d=d.next;while(d!==c)}return;case 1:return;case 5:c=b.stateNode;if(null!=c){d=b.memoizedProps;var e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[xf]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&$a(c,d);wb(a,e);b=wb(a,d);for(e=0;e<f.length;e+=\n2){var g=f[e],h=f[e+1];\"style\"===g?tb(c,h):\"dangerouslySetInnerHTML\"===g?ob(c,h):\"children\"===g?pb(c,h):qa(c,g,h,b)}switch(a){case \"input\":ab(c,d);break;case \"textarea\":ib(c,d);break;case \"select\":a=c._wrapperState.wasMultiple,c._wrapperState.wasMultiple=!!d.multiple,f=d.value,null!=f?fb(c,!!d.multiple,f,!1):a!==!!d.multiple&&(null!=d.defaultValue?fb(c,!!d.multiple,d.defaultValue,!0):fb(c,!!d.multiple,d.multiple?[]:\"\",!1))}}}return;case 6:if(null===b.stateNode)throw Error(y(162));b.stateNode.nodeValue=\nb.memoizedProps;return;case 3:c=b.stateNode;c.hydrate&&(c.hydrate=!1,Cc(c.containerInfo));return;case 12:return;case 13:null!==b.memoizedState&&(jj=O(),aj(b.child,!0));kj(b);return;case 19:kj(b);return;case 17:return;case 23:case 24:aj(b,null!==b.memoizedState);return}throw Error(y(163));}function kj(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Ui);b.forEach(function(b){var d=lj.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction mj(a,b){return null!==a&&(a=a.memoizedState,null===a||null!==a.dehydrated)?(b=b.memoizedState,null!==b&&null===b.dehydrated):!1}var nj=Math.ceil,oj=ra.ReactCurrentDispatcher,pj=ra.ReactCurrentOwner,X=0,U=null,Y=null,W=0,qj=0,rj=Bf(0),V=0,sj=null,tj=0,Dg=0,Hi=0,uj=0,vj=null,jj=0,Ji=Infinity;function wj(){Ji=O()+500}var Z=null,Qi=!1,Ri=null,Ti=null,xj=!1,yj=null,zj=90,Aj=[],Bj=[],Cj=null,Dj=0,Ej=null,Fj=-1,Gj=0,Hj=0,Ij=null,Jj=!1;function Hg(){return 0!==(X&48)?O():-1!==Fj?Fj:Fj=O()}\nfunction Ig(a){a=a.mode;if(0===(a&2))return 1;if(0===(a&4))return 99===eg()?1:2;0===Gj&&(Gj=tj);if(0!==kg.transition){0!==Hj&&(Hj=null!==vj?vj.pendingLanes:0);a=Gj;var b=4186112&~Hj;b&=-b;0===b&&(a=4186112&~a,b=a&-a,0===b&&(b=8192));return b}a=eg();0!==(X&4)&&98===a?a=Xc(12,Gj):(a=Sc(a),a=Xc(a,Gj));return a}\nfunction Jg(a,b,c){if(50<Dj)throw Dj=0,Ej=null,Error(y(185));a=Kj(a,b);if(null===a)return null;$c(a,b,c);a===U&&(Hi|=b,4===V&&Ii(a,W));var d=eg();1===b?0!==(X&8)&&0===(X&48)?Lj(a):(Mj(a,c),0===X&&(wj(),ig())):(0===(X&4)||98!==d&&99!==d||(null===Cj?Cj=new Set([a]):Cj.add(a)),Mj(a,c));vj=a}function Kj(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}\nfunction Mj(a,b){for(var c=a.callbackNode,d=a.suspendedLanes,e=a.pingedLanes,f=a.expirationTimes,g=a.pendingLanes;0<g;){var h=31-Vc(g),k=1<<h,l=f[h];if(-1===l){if(0===(k&d)||0!==(k&e)){l=b;Rc(k);var n=F;f[h]=10<=n?l+250:6<=n?l+5E3:-1}}else l<=b&&(a.expiredLanes|=k);g&=~k}d=Uc(a,a===U?W:0);b=F;if(0===d)null!==c&&(c!==Zf&&Pf(c),a.callbackNode=null,a.callbackPriority=0);else{if(null!==c){if(a.callbackPriority===b)return;c!==Zf&&Pf(c)}15===b?(c=Lj.bind(null,a),null===ag?(ag=[c],bg=Of(Uf,jg)):ag.push(c),\nc=Zf):14===b?c=hg(99,Lj.bind(null,a)):(c=Tc(b),c=hg(c,Nj.bind(null,a)));a.callbackPriority=b;a.callbackNode=c}}\nfunction Nj(a){Fj=-1;Hj=Gj=0;if(0!==(X&48))throw Error(y(327));var b=a.callbackNode;if(Oj()&&a.callbackNode!==b)return null;var c=Uc(a,a===U?W:0);if(0===c)return null;var d=c;var e=X;X|=16;var f=Pj();if(U!==a||W!==d)wj(),Qj(a,d);do try{Rj();break}catch(h){Sj(a,h)}while(1);qg();oj.current=f;X=e;null!==Y?d=0:(U=null,W=0,d=V);if(0!==(tj&Hi))Qj(a,0);else if(0!==d){2===d&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),c=Wc(a),0!==c&&(d=Tj(a,c)));if(1===d)throw b=sj,Qj(a,0),Ii(a,c),Mj(a,O()),b;a.finishedWork=\na.current.alternate;a.finishedLanes=c;switch(d){case 0:case 1:throw Error(y(345));case 2:Uj(a);break;case 3:Ii(a,c);if((c&62914560)===c&&(d=jj+500-O(),10<d)){if(0!==Uc(a,0))break;e=a.suspendedLanes;if((e&c)!==c){Hg();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=of(Uj.bind(null,a),d);break}Uj(a);break;case 4:Ii(a,c);if((c&4186112)===c)break;d=a.eventTimes;for(e=-1;0<c;){var g=31-Vc(c);f=1<<g;g=d[g];g>e&&(e=g);c&=~f}c=e;c=O()-c;c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3E3>c?3E3:4320>\nc?4320:1960*nj(c/1960))-c;if(10<c){a.timeoutHandle=of(Uj.bind(null,a),c);break}Uj(a);break;case 5:Uj(a);break;default:throw Error(y(329));}}Mj(a,O());return a.callbackNode===b?Nj.bind(null,a):null}function Ii(a,b){b&=~uj;b&=~Hi;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-Vc(b),d=1<<c;a[c]=-1;b&=~d}}\nfunction Lj(a){if(0!==(X&48))throw Error(y(327));Oj();if(a===U&&0!==(a.expiredLanes&W)){var b=W;var c=Tj(a,b);0!==(tj&Hi)&&(b=Uc(a,b),c=Tj(a,b))}else b=Uc(a,0),c=Tj(a,b);0!==a.tag&&2===c&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),b=Wc(a),0!==b&&(c=Tj(a,b)));if(1===c)throw c=sj,Qj(a,0),Ii(a,b),Mj(a,O()),c;a.finishedWork=a.current.alternate;a.finishedLanes=b;Uj(a);Mj(a,O());return null}\nfunction Vj(){if(null!==Cj){var a=Cj;Cj=null;a.forEach(function(a){a.expiredLanes|=24&a.pendingLanes;Mj(a,O())})}ig()}function Wj(a,b){var c=X;X|=1;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function Xj(a,b){var c=X;X&=-2;X|=8;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function ni(a,b){I(rj,qj);qj|=b;tj|=b}function Ki(){qj=rj.current;H(rj)}\nfunction Qj(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,pf(c));if(null!==Y)for(c=Y.return;null!==c;){var d=c;switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&Gf();break;case 3:fh();H(N);H(M);uh();break;case 5:hh(d);break;case 4:fh();break;case 13:H(P);break;case 19:H(P);break;case 10:rg(d);break;case 23:case 24:Ki()}c=c.return}U=a;Y=Tg(a.current,null);W=qj=tj=b;V=0;sj=null;uj=Hi=Dg=0}\nfunction Sj(a,b){do{var c=Y;try{qg();vh.current=Gh;if(yh){for(var d=R.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}yh=!1}xh=0;T=S=R=null;zh=!1;pj.current=null;if(null===c||null===c.return){V=1;sj=b;Y=null;break}a:{var f=a,g=c.return,h=c,k=b;b=W;h.flags|=2048;h.firstEffect=h.lastEffect=null;if(null!==k&&\"object\"===typeof k&&\"function\"===typeof k.then){var l=k;if(0===(h.mode&2)){var n=h.alternate;n?(h.updateQueue=n.updateQueue,h.memoizedState=n.memoizedState,h.lanes=n.lanes):\n(h.updateQueue=null,h.memoizedState=null)}var A=0!==(P.current&1),p=g;do{var C;if(C=13===p.tag){var x=p.memoizedState;if(null!==x)C=null!==x.dehydrated?!0:!1;else{var w=p.memoizedProps;C=void 0===w.fallback?!1:!0!==w.unstable_avoidThisFallback?!0:A?!1:!0}}if(C){var z=p.updateQueue;if(null===z){var u=new Set;u.add(l);p.updateQueue=u}else z.add(l);if(0===(p.mode&2)){p.flags|=64;h.flags|=16384;h.flags&=-2981;if(1===h.tag)if(null===h.alternate)h.tag=17;else{var t=zg(-1,1);t.tag=2;Ag(h,t)}h.lanes|=1;break a}k=\nvoid 0;h=b;var q=f.pingCache;null===q?(q=f.pingCache=new Oi,k=new Set,q.set(l,k)):(k=q.get(l),void 0===k&&(k=new Set,q.set(l,k)));if(!k.has(h)){k.add(h);var v=Yj.bind(null,f,l,h);l.then(v,v)}p.flags|=4096;p.lanes=b;break a}p=p.return}while(null!==p);k=Error((Ra(h.type)||\"A React component\")+\" suspended while rendering, but no fallback UI was specified.\\n\\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.\")}5!==V&&(V=2);k=Mi(k,h);p=\ng;do{switch(p.tag){case 3:f=k;p.flags|=4096;b&=-b;p.lanes|=b;var J=Pi(p,f,b);Bg(p,J);break a;case 1:f=k;var K=p.type,Q=p.stateNode;if(0===(p.flags&64)&&(\"function\"===typeof K.getDerivedStateFromError||null!==Q&&\"function\"===typeof Q.componentDidCatch&&(null===Ti||!Ti.has(Q)))){p.flags|=4096;b&=-b;p.lanes|=b;var L=Si(p,f,b);Bg(p,L);break a}}p=p.return}while(null!==p)}Zj(c)}catch(va){b=va;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}\nfunction Pj(){var a=oj.current;oj.current=Gh;return null===a?Gh:a}function Tj(a,b){var c=X;X|=16;var d=Pj();U===a&&W===b||Qj(a,b);do try{ak();break}catch(e){Sj(a,e)}while(1);qg();X=c;oj.current=d;if(null!==Y)throw Error(y(261));U=null;W=0;return V}function ak(){for(;null!==Y;)bk(Y)}function Rj(){for(;null!==Y&&!Qf();)bk(Y)}function bk(a){var b=ck(a.alternate,a,qj);a.memoizedProps=a.pendingProps;null===b?Zj(a):Y=b;pj.current=null}\nfunction Zj(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&2048)){c=Gi(c,b,qj);if(null!==c){Y=c;return}c=b;if(24!==c.tag&&23!==c.tag||null===c.memoizedState||0!==(qj&1073741824)||0===(c.mode&4)){for(var d=0,e=c.child;null!==e;)d|=e.lanes|e.childLanes,e=e.sibling;c.childLanes=d}null!==a&&0===(a.flags&2048)&&(null===a.firstEffect&&(a.firstEffect=b.firstEffect),null!==b.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=b.firstEffect),a.lastEffect=b.lastEffect),1<b.flags&&(null!==\na.lastEffect?a.lastEffect.nextEffect=b:a.firstEffect=b,a.lastEffect=b))}else{c=Li(b);if(null!==c){c.flags&=2047;Y=c;return}null!==a&&(a.firstEffect=a.lastEffect=null,a.flags|=2048)}b=b.sibling;if(null!==b){Y=b;return}Y=b=a}while(null!==b);0===V&&(V=5)}function Uj(a){var b=eg();gg(99,dk.bind(null,a,b));return null}\nfunction dk(a,b){do Oj();while(null!==yj);if(0!==(X&48))throw Error(y(327));var c=a.finishedWork;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(y(177));a.callbackNode=null;var d=c.lanes|c.childLanes,e=d,f=a.pendingLanes&~e;a.pendingLanes=e;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=e;a.mutableReadLanes&=e;a.entangledLanes&=e;e=a.entanglements;for(var g=a.eventTimes,h=a.expirationTimes;0<f;){var k=31-Vc(f),l=1<<k;e[k]=0;g[k]=-1;h[k]=-1;f&=~l}null!==\nCj&&0===(d&24)&&Cj.has(a)&&Cj.delete(a);a===U&&(Y=U=null,W=0);1<c.flags?null!==c.lastEffect?(c.lastEffect.nextEffect=c,d=c.firstEffect):d=c:d=c.firstEffect;if(null!==d){e=X;X|=32;pj.current=null;kf=fd;g=Ne();if(Oe(g)){if(\"selectionStart\"in g)h={start:g.selectionStart,end:g.selectionEnd};else a:if(h=(h=g.ownerDocument)&&h.defaultView||window,(l=h.getSelection&&h.getSelection())&&0!==l.rangeCount){h=l.anchorNode;f=l.anchorOffset;k=l.focusNode;l=l.focusOffset;try{h.nodeType,k.nodeType}catch(va){h=null;\nbreak a}var n=0,A=-1,p=-1,C=0,x=0,w=g,z=null;b:for(;;){for(var u;;){w!==h||0!==f&&3!==w.nodeType||(A=n+f);w!==k||0!==l&&3!==w.nodeType||(p=n+l);3===w.nodeType&&(n+=w.nodeValue.length);if(null===(u=w.firstChild))break;z=w;w=u}for(;;){if(w===g)break b;z===h&&++C===f&&(A=n);z===k&&++x===l&&(p=n);if(null!==(u=w.nextSibling))break;w=z;z=w.parentNode}w=u}h=-1===A||-1===p?null:{start:A,end:p}}else h=null;h=h||{start:0,end:0}}else h=null;lf={focusedElem:g,selectionRange:h};fd=!1;Ij=null;Jj=!1;Z=d;do try{ek()}catch(va){if(null===\nZ)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Ij=null;Z=d;do try{for(g=a;null!==Z;){var t=Z.flags;t&16&&pb(Z.stateNode,\"\");if(t&128){var q=Z.alternate;if(null!==q){var v=q.ref;null!==v&&(\"function\"===typeof v?v(null):v.current=null)}}switch(t&1038){case 2:fj(Z);Z.flags&=-3;break;case 6:fj(Z);Z.flags&=-3;ij(Z.alternate,Z);break;case 1024:Z.flags&=-1025;break;case 1028:Z.flags&=-1025;ij(Z.alternate,Z);break;case 4:ij(Z.alternate,Z);break;case 8:h=Z;cj(g,h);var J=h.alternate;dj(h);null!==\nJ&&dj(J)}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);v=lf;q=Ne();t=v.focusedElem;g=v.selectionRange;if(q!==t&&t&&t.ownerDocument&&Me(t.ownerDocument.documentElement,t)){null!==g&&Oe(t)&&(q=g.start,v=g.end,void 0===v&&(v=q),\"selectionStart\"in t?(t.selectionStart=q,t.selectionEnd=Math.min(v,t.value.length)):(v=(q=t.ownerDocument||document)&&q.defaultView||window,v.getSelection&&(v=v.getSelection(),h=t.textContent.length,J=Math.min(g.start,h),g=void 0===\ng.end?J:Math.min(g.end,h),!v.extend&&J>g&&(h=g,g=J,J=h),h=Le(t,J),f=Le(t,g),h&&f&&(1!==v.rangeCount||v.anchorNode!==h.node||v.anchorOffset!==h.offset||v.focusNode!==f.node||v.focusOffset!==f.offset)&&(q=q.createRange(),q.setStart(h.node,h.offset),v.removeAllRanges(),J>g?(v.addRange(q),v.extend(f.node,f.offset)):(q.setEnd(f.node,f.offset),v.addRange(q))))));q=[];for(v=t;v=v.parentNode;)1===v.nodeType&&q.push({element:v,left:v.scrollLeft,top:v.scrollTop});\"function\"===typeof t.focus&&t.focus();for(t=\n0;t<q.length;t++)v=q[t],v.element.scrollLeft=v.left,v.element.scrollTop=v.top}fd=!!kf;lf=kf=null;a.current=c;Z=d;do try{for(t=a;null!==Z;){var K=Z.flags;K&36&&Yi(t,Z.alternate,Z);if(K&128){q=void 0;var Q=Z.ref;if(null!==Q){var L=Z.stateNode;switch(Z.tag){case 5:q=L;break;default:q=L}\"function\"===typeof Q?Q(q):Q.current=q}}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Z=null;$f();X=e}else a.current=c;if(xj)xj=!1,yj=a,zj=b;else for(Z=d;null!==Z;)b=\nZ.nextEffect,Z.nextEffect=null,Z.flags&8&&(K=Z,K.sibling=null,K.stateNode=null),Z=b;d=a.pendingLanes;0===d&&(Ti=null);1===d?a===Ej?Dj++:(Dj=0,Ej=a):Dj=0;c=c.stateNode;if(Mf&&\"function\"===typeof Mf.onCommitFiberRoot)try{Mf.onCommitFiberRoot(Lf,c,void 0,64===(c.current.flags&64))}catch(va){}Mj(a,O());if(Qi)throw Qi=!1,a=Ri,Ri=null,a;if(0!==(X&8))return null;ig();return null}\nfunction ek(){for(;null!==Z;){var a=Z.alternate;Jj||null===Ij||(0!==(Z.flags&8)?dc(Z,Ij)&&(Jj=!0):13===Z.tag&&mj(a,Z)&&dc(Z,Ij)&&(Jj=!0));var b=Z.flags;0!==(b&256)&&Xi(a,Z);0===(b&512)||xj||(xj=!0,hg(97,function(){Oj();return null}));Z=Z.nextEffect}}function Oj(){if(90!==zj){var a=97<zj?97:zj;zj=90;return gg(a,fk)}return!1}function $i(a,b){Aj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}function Zi(a,b){Bj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}\nfunction fk(){if(null===yj)return!1;var a=yj;yj=null;if(0!==(X&48))throw Error(y(331));var b=X;X|=32;var c=Bj;Bj=[];for(var d=0;d<c.length;d+=2){var e=c[d],f=c[d+1],g=e.destroy;e.destroy=void 0;if(\"function\"===typeof g)try{g()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}c=Aj;Aj=[];for(d=0;d<c.length;d+=2){e=c[d];f=c[d+1];try{var h=e.create;e.destroy=h()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}for(h=a.current.firstEffect;null!==h;)a=h.nextEffect,h.nextEffect=null,h.flags&8&&(h.sibling=\nnull,h.stateNode=null),h=a;X=b;ig();return!0}function gk(a,b,c){b=Mi(c,b);b=Pi(a,b,1);Ag(a,b);b=Hg();a=Kj(a,1);null!==a&&($c(a,1,b),Mj(a,b))}\nfunction Wi(a,b){if(3===a.tag)gk(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){gk(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if(\"function\"===typeof c.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d))){a=Mi(b,a);var e=Si(c,a,1);Ag(c,e);e=Hg();c=Kj(c,1);if(null!==c)$c(c,1,e),Mj(c,e);else if(\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d)))try{d.componentDidCatch(b,a)}catch(f){}break}}c=c.return}}\nfunction Yj(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=Hg();a.pingedLanes|=a.suspendedLanes&c;U===a&&(W&c)===c&&(4===V||3===V&&(W&62914560)===W&&500>O()-jj?Qj(a,0):uj|=c);Mj(a,b)}function lj(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=a.mode,0===(b&2)?b=1:0===(b&4)?b=99===eg()?1:2:(0===Gj&&(Gj=tj),b=Yc(62914560&~Gj),0===b&&(b=4194304)));c=Hg();a=Kj(a,b);null!==a&&($c(a,b,c),Mj(a,c))}var ck;\nck=function(a,b,c){var d=b.lanes;if(null!==a)if(a.memoizedProps!==b.pendingProps||N.current)ug=!0;else if(0!==(c&d))ug=0!==(a.flags&16384)?!0:!1;else{ug=!1;switch(b.tag){case 3:ri(b);sh();break;case 5:gh(b);break;case 1:Ff(b.type)&&Jf(b);break;case 4:eh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;var e=b.type._context;I(mg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){if(0!==(c&b.child.childLanes))return ti(a,b,c);I(P,P.current&1);b=hi(a,b,c);return null!==\nb?b.sibling:null}I(P,P.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&64)){if(d)return Ai(a,b,c);b.flags|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);I(P,P.current);if(d)break;else return null;case 23:case 24:return b.lanes=0,mi(a,b,c)}return hi(a,b,c)}else ug=!1;b.lanes=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=Ef(b,M.current);tg(b,c);e=Ch(null,b,d,a,e,c);b.flags|=1;if(\"object\"===\ntypeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(Ff(d)){var f=!0;Jf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;xg(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Gg(b,d,g,a);e.updater=Kg;b.stateNode=e;e._reactInternals=b;Og(b,d,a,c);b=qi(null,b,d,!0,f,c)}else b.tag=0,fi(null,b,e,c),b=b.child;return b;case 16:e=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);\na=b.pendingProps;f=e._init;e=f(e._payload);b.type=e;f=b.tag=hk(e);a=lg(e,a);switch(f){case 0:b=li(null,b,e,a,c);break a;case 1:b=pi(null,b,e,a,c);break a;case 11:b=gi(null,b,e,a,c);break a;case 14:b=ii(null,b,e,lg(e.type,a),d,c);break a}throw Error(y(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),li(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),pi(a,b,d,e,c);case 3:ri(b);d=b.updateQueue;if(null===a||null===d)throw Error(y(282));\nd=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;yg(a,b);Cg(b,d,null,c);d=b.memoizedState.element;if(d===e)sh(),b=hi(a,b,c);else{e=b.stateNode;if(f=e.hydrate)kh=rf(b.stateNode.containerInfo.firstChild),jh=b,f=lh=!0;if(f){a=e.mutableSourceEagerHydrationData;if(null!=a)for(e=0;e<a.length;e+=2)f=a[e],f._workInProgressVersionPrimary=a[e+1],th.push(f);c=Zg(b,null,d,c);for(b.child=c;c;)c.flags=c.flags&-3|1024,c=c.sibling}else fi(a,b,d,c),sh();b=b.child}return b;case 5:return gh(b),null===a&&\nph(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,nf(d,e)?g=null:null!==f&&nf(d,f)&&(b.flags|=16),oi(a,b),fi(a,b,g,c),b.child;case 6:return null===a&&ph(b),null;case 13:return ti(a,b,c);case 4:return eh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Yg(b,null,d,c):fi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),gi(a,b,d,e,c);case 7:return fi(a,b,b.pendingProps,c),b.child;case 8:return fi(a,b,b.pendingProps.children,\nc),b.child;case 12:return fi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;g=b.memoizedProps;f=e.value;var h=b.type._context;I(mg,h._currentValue);h._currentValue=f;if(null!==g)if(h=g.value,f=He(h,f)?0:(\"function\"===typeof d._calculateChangedBits?d._calculateChangedBits(h,f):1073741823)|0,0===f){if(g.children===e.children&&!N.current){b=hi(a,b,c);break a}}else for(h=b.child,null!==h&&(h.return=b);null!==h;){var k=h.dependencies;if(null!==k){g=h.child;for(var l=\nk.firstContext;null!==l;){if(l.context===d&&0!==(l.observedBits&f)){1===h.tag&&(l=zg(-1,c&-c),l.tag=2,Ag(h,l));h.lanes|=c;l=h.alternate;null!==l&&(l.lanes|=c);sg(h.return,c);k.lanes|=c;break}l=l.next}}else g=10===h.tag?h.type===b.type?null:h.child:h.child;if(null!==g)g.return=h;else for(g=h;null!==g;){if(g===b){g=null;break}h=g.sibling;if(null!==h){h.return=g.return;g=h;break}g=g.return}h=g}fi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,f=b.pendingProps,d=f.children,tg(b,c),e=vg(e,\nf.unstable_observedBits),d=d(e),b.flags|=1,fi(a,b,d,c),b.child;case 14:return e=b.type,f=lg(e,b.pendingProps),f=lg(e.type,f),ii(a,b,e,f,d,c);case 15:return ki(a,b,b.type,b.pendingProps,d,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),b.tag=1,Ff(d)?(a=!0,Jf(b)):a=!1,tg(b,c),Mg(b,d,e),Og(b,d,e,c),qi(null,b,d,!0,a,c);case 19:return Ai(a,b,c);case 23:return mi(a,b,c);case 24:return mi(a,b,c)}throw Error(y(156,b.tag));\n};function ik(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.flags=0;this.lastEffect=this.firstEffect=this.nextEffect=null;this.childLanes=this.lanes=0;this.alternate=null}function nh(a,b,c,d){return new ik(a,b,c,d)}function ji(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction hk(a){if(\"function\"===typeof a)return ji(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Aa)return 11;if(a===Da)return 14}return 2}\nfunction Tg(a,b){var c=a.alternate;null===c?(c=nh(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.nextEffect=null,c.firstEffect=null,c.lastEffect=null);c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Vg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)ji(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ua:return Xg(c.children,e,f,b);case Ha:g=8;e|=16;break;case wa:g=8;e|=1;break;case xa:return a=nh(12,c,b,e|8),a.elementType=xa,a.type=xa,a.lanes=f,a;case Ba:return a=nh(13,c,b,e),a.type=Ba,a.elementType=Ba,a.lanes=f,a;case Ca:return a=nh(19,c,b,e),a.elementType=Ca,a.lanes=f,a;case Ia:return vi(c,e,f,b);case Ja:return a=nh(24,c,b,e),a.elementType=Ja,a.lanes=f,a;default:if(\"object\"===\ntypeof a&&null!==a)switch(a.$$typeof){case ya:g=10;break a;case za:g=9;break a;case Aa:g=11;break a;case Da:g=14;break a;case Ea:g=16;d=null;break a;case Fa:g=22;break a}throw Error(y(130,null==a?a:typeof a,\"\"));}b=nh(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Xg(a,b,c,d){a=nh(7,a,d,b);a.lanes=c;return a}function vi(a,b,c,d){a=nh(23,a,d,b);a.elementType=Ia;a.lanes=c;return a}function Ug(a,b,c){a=nh(6,a,null,b);a.lanes=c;return a}\nfunction Wg(a,b,c){b=nh(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction jk(a,b,c){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.pendingContext=this.context=null;this.hydrate=c;this.callbackNode=null;this.callbackPriority=0;this.eventTimes=Zc(0);this.expirationTimes=Zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=Zc(0);this.mutableSourceEagerHydrationData=null}\nfunction kk(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:ta,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nfunction lk(a,b,c,d){var e=b.current,f=Hg(),g=Ig(e);a:if(c){c=c._reactInternals;b:{if(Zb(c)!==c||1!==c.tag)throw Error(y(170));var h=c;do{switch(h.tag){case 3:h=h.stateNode.context;break b;case 1:if(Ff(h.type)){h=h.stateNode.__reactInternalMemoizedMergedChildContext;break b}}h=h.return}while(null!==h);throw Error(y(171));}if(1===c.tag){var k=c.type;if(Ff(k)){c=If(c,k,h);break a}}c=h}else c=Cf;null===b.context?b.context=c:b.pendingContext=c;b=zg(f,g);b.payload={element:a};d=void 0===d?null:d;null!==\nd&&(b.callback=d);Ag(e,b);Jg(e,g,f);return g}function mk(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function nk(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function ok(a,b){nk(a,b);(a=a.alternate)&&nk(a,b)}function pk(){return null}\nfunction qk(a,b,c){var d=null!=c&&null!=c.hydrationOptions&&c.hydrationOptions.mutableSources||null;c=new jk(a,b,null!=c&&!0===c.hydrate);b=nh(3,null,null,2===b?7:1===b?3:0);c.current=b;b.stateNode=c;xg(b);a[ff]=c.current;cf(8===a.nodeType?a.parentNode:a);if(d)for(a=0;a<d.length;a++){b=d[a];var e=b._getVersion;e=e(b._source);null==c.mutableSourceEagerHydrationData?c.mutableSourceEagerHydrationData=[b,e]:c.mutableSourceEagerHydrationData.push(b,e)}this._internalRoot=c}\nqk.prototype.render=function(a){lk(a,this._internalRoot,null,null)};qk.prototype.unmount=function(){var a=this._internalRoot,b=a.containerInfo;lk(null,a,null,function(){b[ff]=null})};function rk(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}\nfunction sk(a,b){b||(b=a?9===a.nodeType?a.documentElement:a.firstChild:null,b=!(!b||1!==b.nodeType||!b.hasAttribute(\"data-reactroot\")));if(!b)for(var c;c=a.lastChild;)a.removeChild(c);return new qk(a,0,b?{hydrate:!0}:void 0)}\nfunction tk(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f._internalRoot;if(\"function\"===typeof e){var h=e;e=function(){var a=mk(g);h.call(a)}}lk(b,g,a,e)}else{f=c._reactRootContainer=sk(c,d);g=f._internalRoot;if(\"function\"===typeof e){var k=e;e=function(){var a=mk(g);k.call(a)}}Xj(function(){lk(b,g,a,e)})}return mk(g)}ec=function(a){if(13===a.tag){var b=Hg();Jg(a,4,b);ok(a,4)}};fc=function(a){if(13===a.tag){var b=Hg();Jg(a,67108864,b);ok(a,67108864)}};\ngc=function(a){if(13===a.tag){var b=Hg(),c=Ig(a);Jg(a,c,b);ok(a,c)}};hc=function(a,b){return b()};\nyb=function(a,b,c){switch(b){case \"input\":ab(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Db(d);if(!e)throw Error(y(90));Wa(d);ab(d,e)}}}break;case \"textarea\":ib(a,c);break;case \"select\":b=c.value,null!=b&&fb(a,!!c.multiple,b,!1)}};Gb=Wj;\nHb=function(a,b,c,d,e){var f=X;X|=4;try{return gg(98,a.bind(null,b,c,d,e))}finally{X=f,0===X&&(wj(),ig())}};Ib=function(){0===(X&49)&&(Vj(),Oj())};Jb=function(a,b){var c=X;X|=2;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}};function uk(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!rk(b))throw Error(y(200));return kk(a,b,null,c)}var vk={Events:[Cb,ue,Db,Eb,Fb,Oj,{current:!1}]},wk={findFiberByHostInstance:wc,bundleType:0,version:\"17.0.2\",rendererPackageName:\"react-dom\"};\nvar xk={bundleType:wk.bundleType,version:wk.version,rendererPackageName:wk.rendererPackageName,rendererConfig:wk.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ra.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=cc(a);return null===a?null:a.stateNode},findFiberByHostInstance:wk.findFiberByHostInstance||\npk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if(\"undefined\"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var yk=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yk.isDisabled&&yk.supportsFiber)try{Lf=yk.inject(xk),Mf=yk}catch(a){}}exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=vk;exports.createPortal=uk;\nexports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if(\"function\"===typeof a.render)throw Error(y(188));throw Error(y(268,Object.keys(a)));}a=cc(b);a=null===a?null:a.stateNode;return a};exports.flushSync=function(a,b){var c=X;if(0!==(c&48))return a(b);X|=1;try{if(a)return gg(99,a.bind(null,b))}finally{X=c,ig()}};exports.hydrate=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!0,c)};\nexports.render=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!1,c)};exports.unmountComponentAtNode=function(a){if(!rk(a))throw Error(y(40));return a._reactRootContainer?(Xj(function(){tk(null,null,a,!1,function(){a._reactRootContainer=null;a[ff]=null})}),!0):!1};exports.unstable_batchedUpdates=Wj;exports.unstable_createPortal=function(a,b){return uk(a,b,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)};\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!rk(c))throw Error(y(200));if(null==a||void 0===a._reactInternals)throw Error(y(38));return tk(a,b,c,!1,d)};exports.version=\"17.0.2\";\n","/** @license React v0.20.2\n * scheduler-tracing.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var b=0;exports.__interactionsRef=null;exports.__subscriberRef=null;exports.unstable_clear=function(a){return a()};exports.unstable_getCurrent=function(){return null};exports.unstable_getThreadID=function(){return++b};exports.unstable_subscribe=function(){};exports.unstable_trace=function(a,d,c){return c()};exports.unstable_unsubscribe=function(){};exports.unstable_wrap=function(a){return a};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler-tracing.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler-tracing.development.js');\n}\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","import { ConfigPlan, EligibilityPlan, EligibilityPlanToDisplay } from 'types'\n\nconst isPlanEligible = (plan: EligibilityPlan, configPlan?: ConfigPlan) => {\n if (!plan.eligible) {\n return false\n }\n return configPlan\n ? plan.purchase_amount >= configPlan?.minAmount && plan.purchase_amount <= configPlan?.maxAmount\n : false\n}\n\nconst getPaymentPlanBoundaries = (plan: EligibilityPlan, configPlan?: ConfigPlan) => {\n // When the plan is not eligible, the purchase amount constraints is given from the merchant config\n const purchaseAmountConstraints = plan.constraints?.purchase_amount\n if (purchaseAmountConstraints && configPlan) {\n return {\n minAmount: Math.max(configPlan.minAmount, purchaseAmountConstraints?.minimum),\n maxAmount: Math.min(configPlan.maxAmount, purchaseAmountConstraints?.maximum),\n }\n }\n return configPlan ?? {}\n}\n\nconst filterEligibility = (\n eligibilities: EligibilityPlan[],\n configPlans?: ConfigPlan[],\n): EligibilityPlanToDisplay[] => {\n // Remove P1X if no configuration is provided\n if (!configPlans) {\n return eligibilities.filter(\n (plan) =>\n !(plan.installments_count === 1 && plan.deferred_days === 0 && plan.deferred_months === 0),\n )\n }\n\n // Else check if the plan is eligible regarding the related configPlan\n return eligibilities.map((plan) => {\n const eligibilityDeferredDays =\n (plan.deferred_months ? plan.deferred_months : 0) * 30 +\n (plan.deferred_days ? plan.deferred_days : 0)\n\n // find the related configPlan\n const relatedConfigPlan = configPlans.find((configPlan) => {\n const configPlanDeferredDays =\n (configPlan.deferredMonths ? configPlan.deferredMonths : 0) * 30 +\n (configPlan.deferredDays ? configPlan.deferredDays : 0)\n return (\n plan.installments_count === configPlan.installmentsCount &&\n eligibilityDeferredDays === configPlanDeferredDays\n )\n })\n\n return {\n ...plan,\n eligible: isPlanEligible(plan, relatedConfigPlan),\n ...getPaymentPlanBoundaries(plan, relatedConfigPlan),\n }\n })\n}\n\nexport default filterEligibility\n","import { useEffect, useState } from 'react'\nimport { ApiConfig, statusResponse, ConfigPlan, EligibilityPlan } from 'types'\nimport { fetchFromApi } from 'utils/fetch'\nimport filterEligibility from 'utils/filterEligibility'\nimport { useSessionStorage } from 'hooks/useSessionStorage'\nimport { isMoreThanOneHourAgo } from '../utils/utilsForStorage'\n\nconst useFetchEligibility = (\n purchaseAmount: number,\n { domain, merchantId }: ApiConfig,\n plans?: ConfigPlan[],\n customerBillingCountry?: string,\n customerShippingCountry?: string,\n): [EligibilityPlan[], statusResponse] => {\n const [eligibility, setEligibility] = useState([] as EligibilityPlan[])\n const [status, setStatus] = useState(statusResponse.PENDING)\n\n // caching\n const { getCache, setCache, createKey } = useSessionStorage()\n const key = createKey({\n purchaseAmount,\n plans,\n customerBillingCountry,\n customerShippingCountry,\n })\n const currentCache = getCache(key)?.value\n const lastCacheTimestamp = getCache(key)?.timestamp\n // If the stored date is more than an hour ago, we should invalidate the cache\n const shouldInvalidate = lastCacheTimestamp && isMoreThanOneHourAgo(lastCacheTimestamp)\n\n const configInstallments = plans?.map((plan) => ({\n installments_count: plan.installmentsCount,\n deferred_days: plan?.deferredDays,\n deferred_months: plan?.deferredMonths,\n }))\n useEffect(() => {\n if (status === statusResponse.PENDING) {\n let billing_address = null\n if (customerBillingCountry) {\n billing_address = {\n country: customerBillingCountry,\n }\n }\n\n let shipping_address = null\n if (customerShippingCountry) {\n shipping_address = {\n country: customerShippingCountry,\n }\n }\n if (currentCache && !shouldInvalidate) {\n setEligibility(currentCache)\n setStatus(statusResponse.SUCCESS)\n }\n\n if (!currentCache || shouldInvalidate) {\n fetchFromApi(\n domain + '/v2/payments/eligibility',\n {\n purchase_amount: purchaseAmount,\n queries: configInstallments,\n billing_address,\n shipping_address,\n },\n {\n Authorization: `Alma-Merchant-Auth ${merchantId}`,\n 'X-Alma-Agent': `Alma Widget/${process.env.VERSION}`,\n },\n )\n .then((res) => {\n setCache(key, res)\n setEligibility(res)\n setStatus(statusResponse.SUCCESS)\n })\n .catch(() => {\n setStatus(statusResponse.FAILED)\n })\n }\n }\n }, [status, purchaseAmount, key])\n\n return [filterEligibility(eligibility, plans), status]\n}\nexport default useFetchEligibility\n","// Function to hash a string\n// https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript\nexport const hashStringForStorage = (str: string): string => {\n return (\n str\n // The input string is split into an array of characters.\n .split('')\n // The reduce function is used to apply a function against an accumulator and each element in the array (from left to right) to reduce it to a single output value.\n .reduce((a, b) => {\n // The accumulator (a) is shifted left by 5 bits (multiplied by 32), then subtracted by itself and added to the ASCII value of the current character (b).\n // The bitwise OR operation with 0 is used to ensure the result is a 32-bit integer.\n return ((a << 5) - a + b.charCodeAt(0)) | 0\n }, 0) // The initial value of the accumulator is 0.\n .toString() // The result is then converted to a string.\n .replace('-', 'A')\n ) // If the hash is negative (which is represented by a leading '-'), it's replaced with 'A' to ensure the hash is alphanumeric.\n}\n\nexport const isMoreThanOneHourAgo = (date: number): boolean => {\n const ONE_HOUR_IN_MILLISECONDS = 1000 * 60 * 60\n const currentTime = Date.now()\n const difference = currentTime - date\n\n return difference >= ONE_HOUR_IN_MILLISECONDS\n}\n","import { ConfigPlan, EligibilityPlan } from 'types'\nimport { hashStringForStorage } from 'utils/utilsForStorage'\n\ntype CreateKeyType = {\n purchaseAmount: number\n plans?: ConfigPlan[]\n customerBillingCountry?: string\n customerShippingCountry?: string\n}\n\ntype StorageType = {\n value: EligibilityPlan[]\n timestamp: number\n}\n\ntype UseSessionStorageType = {\n getCache: (key: string) => StorageType | null\n setCache: (key: string, value: EligibilityPlan[]) => void\n clearCache: () => void\n deleteCache: (key: string) => void\n createKey: (params: CreateKeyType) => string\n}\n\nexport const useSessionStorage: () => UseSessionStorageType = () => {\n const setCache = (key: string, value: EligibilityPlan[]) => {\n // Save data to sessionStorage and create timestamp\n const timestamp = Date.now()\n sessionStorage.setItem(key, JSON.stringify({ value, timestamp }))\n }\n\n const getCache = (key: string): StorageType | null => {\n // Get saved data from sessionStorage\n const stringData = sessionStorage.getItem(key) || ''\n // Parse cached data to use it directly as an array of EligibilityPlan\n return stringData ? JSON.parse(stringData) : null\n }\n\n const deleteCache = (key: string) => {\n // Remove saved data from sessionStorage\n sessionStorage.removeItem(key)\n }\n\n const clearCache = () => {\n // Remove all saved data from sessionStorage\n sessionStorage.clear()\n }\n\n const createKey = (params: CreateKeyType): string => {\n const { purchaseAmount, plans, customerBillingCountry, customerShippingCountry } = params\n\n const stringAmount = purchaseAmount.toString()\n const stringPlans = JSON.stringify(plans)\n return hashStringForStorage(\n `${stringAmount}${stringPlans}${customerBillingCountry}${customerShippingCountry}`,\n )\n }\n\n return {\n setCache,\n getCache,\n clearCache,\n deleteCache,\n createKey,\n }\n}\n","import { EligibilityPlan } from 'types'\n\nexport async function fetchFromApi(\n url = '',\n data: { [key: string]: unknown },\n headers?: { [key: string]: unknown },\n): Promise<EligibilityPlan[]> {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...headers,\n },\n cache: 'force-cache',\n body: JSON.stringify(data),\n })\n return response.json()\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/**\n * Prefix classes to avoid name collisions.\n */\nconst prefix = 'alma-eligibility-modal'\n\n/**\n * Class names for the **eligibility modale** widget.\n * Those classes are intended to be used by the **merchant developer**.\n */\nconst STATIC_CUSTOMISATION_CLASSES = {\n desktopModal: prefix + '-desktop-modal',\n mobileModal: prefix + '-mobile-modal',\n leftSide: prefix + '-left-side',\n bullet: prefix + '-bullet',\n rightSide: prefix + '-right-side',\n title: prefix + '-title',\n info: prefix + '-info',\n infoMessage: prefix + '-info-message',\n eligibilityOptions: prefix + '-eligibility-options',\n activeOption: prefix + '-active-option',\n closeButton: prefix + '-close-button',\n scheduleDetails: prefix + '-schedule-details',\n scheduleTotal: prefix + '-schedule-total',\n scheduleCredit: prefix + '-schedule-credit',\n cardContainer: prefix + '-card-logos',\n summary: prefix + '-summary',\n}\n\nexport default STATIC_CUSTOMISATION_CLASSES\n","import React, { FunctionComponent } from 'react'\nimport { FormattedMessage, FormattedNumber, useIntl } from 'react-intl'\nimport { EligibilityPlan } from 'types'\nimport { priceFromCents } from 'utils'\nimport cx from 'classnames'\nimport s from './TotalBlock.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nconst TotalBlock: FunctionComponent<{ currentPlan: EligibilityPlan }> = ({ currentPlan }) => {\n const intl = useIntl()\n const total = priceFromCents(currentPlan.purchase_amount + currentPlan.customer_total_cost_amount)\n const creditCost = priceFromCents(currentPlan.customer_total_cost_amount)\n const TAEG = (currentPlan?.annual_interest_rate && currentPlan.annual_interest_rate / 10000) || 0\n const customerFees = priceFromCents(currentPlan.customer_total_cost_amount)\n const isCredit = currentPlan.installments_count > 4\n const firstInstallmentAmount = priceFromCents(currentPlan.payment_plan?.[0]?.total_amount ?? 0)\n // For totalWithoutFirstInstallment, we need to get the total price and add the credit cost, before removing the first installment, to get the rest of the amount to pay.\n const totalWithoutFirstInstallment = priceFromCents(\n currentPlan.purchase_amount +\n currentPlan.customer_total_cost_amount -\n (currentPlan.payment_plan?.[0]?.total_amount ?? 0),\n )\n\n return (\n <>\n {isCredit && (\n <div className={s.creditInfo}>\n <span className={s.creditInfoTitle}>\n <FormattedMessage\n id=\"credit-features.information.title\"\n defaultMessage=\"Un crédit vous engage et doit être remboursé.\"\n />\n </span>\n <br />\n <FormattedMessage\n id=\"credit-features.information\"\n defaultMessage=\"Vérifiez vos capacités de remboursement avant de vous engager.\"\n />\n </div>\n )}\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.summary)}\n data-testid=\"modal-summary\"\n >\n <div className={cx(s.total, STATIC_CUSTOMISATION_CLASSES.scheduleTotal)}>\n <FormattedMessage tagName=\"div\" id=\"installments.total-amount\" defaultMessage=\"Total\" />\n <FormattedNumber value={total || 0} style=\"currency\" currency=\"EUR\" />\n </div>\n <div className={cx(s.fees, STATIC_CUSTOMISATION_CLASSES.scheduleCredit)}>\n {isCredit ? (\n <>\n <FormattedMessage\n id=\"credit-features.total-credit-cost\"\n defaultMessage=\"Dont coût du crédit\"\n />\n <span className={s.creditCost}>\n <FormattedMessage\n id=\"credit-features.credit-cost-display\"\n defaultMessage=\"{creditCost} (TAEG {taegPercentage})\"\n values={{\n creditCost: intl.formatNumber(creditCost, {\n style: 'currency',\n currency: 'EUR',\n }),\n taegPercentage: intl.formatNumber(TAEG, {\n style: 'percent',\n maximumFractionDigits: 2,\n }),\n }}\n />\n </span>\n </>\n ) : (\n <>\n <FormattedMessage\n id=\"installments.total-fees\"\n defaultMessage=\"Dont frais (TTC)\"\n tagName=\"div\"\n />\n <div>\n <FormattedNumber value={customerFees} style=\"currency\" currency=\"EUR\" />\n </div>\n </>\n )}\n </div>\n {isCredit && (\n <div className={s.creditInfoLegalText}>\n <FormattedMessage\n id=\"credit-features.legal-text\"\n defaultMessage=\"Crédit d'un montant de {totalWithoutFirstInstallment} au taux débiteur fixe de {taegPercentage} sur une durée de {installmeentsCountWithoutFirst} mois. Permettant, en complément d'un acompte de {firstInstallmentAmount}, de financer un achat d'un montant de {productPriceWithoutCreditCost}. Sous réserve d'étude et d'acceptation par Alma. Délai légal de rétractation de 14 jours. Simulation présentée par Alma, immatriculée au RCS Nanterre sous le numéro 839 100 575, établissement de paiement et société de financement agréée par l’ACPR sous le n° 17408 (numéro CIB / Code banque).\"\n values={{\n totalWithoutFirstInstallment: intl.formatNumber(totalWithoutFirstInstallment, {\n style: 'currency',\n currency: 'EUR',\n }),\n taegPercentage: intl.formatNumber(TAEG, {\n style: 'percent',\n maximumFractionDigits: 2,\n }),\n installmeentsCountWithoutFirst: currentPlan.installments_count - 1,\n firstInstallmentAmount: intl.formatNumber(firstInstallmentAmount, {\n style: 'currency',\n currency: 'EUR',\n }),\n productPriceWithoutCreditCost: intl.formatNumber(total - creditCost, {\n style: 'currency',\n currency: 'EUR',\n }),\n }}\n />\n </div>\n )}\n </div>\n </>\n )\n}\n\nexport default TotalBlock\n","import cx from 'classnames'\nimport React, { VoidFunctionComponent } from 'react'\nimport s from './LoadingIndicator.module.css'\n\nexport const LoadingIndicator: VoidFunctionComponent<{ className?: string }> = ({ className }) => (\n <div className={cx(s.loadingIndicator, className)} data-testid=\"loader\">\n <svg\n width=\"120\"\n height=\"134\"\n viewBox=\"0 0 120 134\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M83.8164 41.0325C79.1708 22.8241 69.3458 17 59.9939 17C50.642 17 40.8171 22.8241 36.1715 41.0325L16 117H35.8804C39.119 104.311 49.1016 97.2436 59.9939 97.2436C70.8863 97.2436 80.8689 104.324 84.1075 117H104L83.8164 41.0325ZM59.9939 79.5428C53.6623 79.5428 47.925 82.0552 43.6918 86.1283L55.0936 41.9207C56.1853 37.6953 57.7985 36.3503 60.0061 36.3503C62.2136 36.3503 63.8269 37.6953 64.9185 41.9207L76.3082 86.1283C72.075 82.0552 66.3256 79.5428 59.9939 79.5428Z\"\n fill=\"#FA5022\"\n />\n </svg>\n </div>\n)\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar DISPLAY_NONE = \"none\";\nvar DISPLAY_CONTENTS = \"contents\";\n\nvar tabbableNode = /input|select|textarea|button|object|iframe/;\n\nfunction isNotOverflowing(element, style) {\n return style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0;\n}\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n try {\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n var displayValue = style.getPropertyValue(\"display\");\n return zeroSize ? displayValue !== DISPLAY_CONTENTS && isNotOverflowing(element, style) : displayValue === DISPLAY_NONE;\n } catch (exception) {\n // eslint-disable-next-line no-console\n console.warn(\"Failed to inspect element style\");\n return false;\n }\n}\n\nfunction visible(element) {\n var parentElement = element;\n var rootNode = element.getRootNode && element.getRootNode();\n while (parentElement) {\n if (parentElement === document.body) break;\n\n // if we are not hidden yet, skip to checking outside the Web Component\n if (rootNode && parentElement === rootNode) parentElement = rootNode.host.parentNode;\n\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n var descendants = [].slice.call(element.querySelectorAll(\"*\"), 0).reduce(function (finished, el) {\n return finished.concat(!el.shadowRoot ? [el] : findTabbableDescendants(el.shadowRoot));\n }, []);\n return descendants.filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n focusLaterElements = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n console.log(\"focusManager ----------\");\n focusLaterElements.forEach(function (f) {\n var check = f || {};\n console.log(check.nodeName, check.className, check.id);\n });\n console.log(\"end focusManager ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getActiveElement() {\n var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n\n return el.activeElement.shadowRoot ? getActiveElement(el.activeElement.shadowRoot) : el.activeElement;\n}\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n var activeElement = getActiveElement();\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\n\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n if (globalElement) {\n if (globalElement.removeAttribute) {\n globalElement.removeAttribute(\"aria-hidden\");\n } else if (globalElement.length != null) {\n globalElement.forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n } else {\n document.querySelectorAll(globalElement).forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n }\n }\n globalElement = null;\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var check = globalElement || {};\n console.log(\"ariaAppHider ----------\");\n console.log(check.nodeName, check.className, check.id);\n console.log(\"end ariaAppHider ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n var el = appElement || globalElement;\n if (el) {\n return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n } else {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return [];\n }\n}\n\nfunction hide(appElement) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n\n el.setAttribute(\"aria-hidden\", \"true\");\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\n\nfunction show(appElement) {\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var el = _step2.value;\n\n el.removeAttribute(\"aria-hidden\");\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction removeClass(at, cls) {\n at.classList.remove(cls);\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n var htmlElement = document.getElementsByTagName(\"html\")[0];\n for (var cls in htmlClassList) {\n removeClass(htmlElement, htmlClassList[cls]);\n }\n\n var body = document.body;\n for (var _cls in docBodyClassList) {\n removeClass(body, docBodyClassList[_cls]);\n }\n\n htmlClassList = {};\n docBodyClassList = {};\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \"<html /> (\" + classes + \"):\\n \";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n \";\n }\n\n classes = document.body.className;\n\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n \";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n \";\n }\n\n buffer += \"\\n\";\n\n console.log(buffer);\n }\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.log = log;\nexports.resetState = resetState;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction log() {\n console.log(\"portalOpenInstances ----------\");\n console.log(portalOpenInstances.openInstances.length);\n portalOpenInstances.openInstances.forEach(function (p) {\n return console.log(p);\n });\n console.log(\"end portalOpenInstances ----------\");\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n var _arr = [before, after];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var item = _arr[_i];\n if (!item) continue;\n item.parentNode && item.parentNode.removeChild(item);\n }\n before = after = null;\n instances = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n console.log(\"bodyTrap ----------\");\n console.log(instances.length);\n var _arr2 = [before, after];\n for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n var item = _arr2[_i2];\n var check = item || {};\n console.log(check.nodeName, check.className, check.id);\n }\n console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before && !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\n/**\n * We need to support the deprecated `KeyboardEvent.keyCode` in addition to\n * `KeyboardEvent.code` for apps that still support IE11. Can be removed when\n * `react-modal` only supports React >18 (which dropped IE support).\n */\nvar isTabKey = function isTabKey(event) {\n return event.code === \"Tab\" || event.keyCode === 9;\n};\nvar isEscKey = function isEscKey(event) {\n return event.code === \"Escape\" || event.keyCode === 27;\n};\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName,\n parentSelector = _this$props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Remove classes.\n bodyOpenClassName && classList.remove(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.openAnimationFrame = requestAnimationFrame(function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (isTabKey(event)) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && isEscKey(event)) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n cancelAnimationFrame(this.openAnimationFrame);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName,\n parentSelector = _props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Add classes.\n bodyOpenClassName && classList.add(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n parentSelector: _propTypes2.default.func,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar createHTMLElement = function createHTMLElement(name) {\n return document.createElement(name);\n};\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nif (process.env.NODE_ENV !== \"production\") {\n Modal.setCreateHTMLElement = function (fn) {\n return createHTMLElement = fn;\n };\n}\n\nexports.default = Modal;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];","(function(root) {\n var isOn = false;\n var scrollbarSize;\n var scrollTop;\n\n function getScrollbarSize() {\n if (typeof scrollbarSize !== 'undefined') return scrollbarSize;\n\n var doc = document.documentElement;\n var dummyScroller = document.createElement('div');\n dummyScroller.setAttribute('style', 'width:99px;height:99px;' + 'position:absolute;top:-9999px;overflow:scroll;');\n doc.appendChild(dummyScroller);\n scrollbarSize = dummyScroller.offsetWidth - dummyScroller.clientWidth;\n doc.removeChild(dummyScroller);\n return scrollbarSize;\n }\n\n function hasScrollbar() {\n return document.documentElement.scrollHeight > window.innerHeight;\n }\n\n function on(options) {\n if (typeof document === 'undefined' || isOn) return;\n var doc = document.documentElement;\n scrollTop = window.pageYOffset;\n if (hasScrollbar()) {\n doc.style.width = 'calc(100% - '+ getScrollbarSize() +'px)';\n } else {\n doc.style.width = '100%';\n }\n doc.style.position = 'fixed';\n doc.style.top = -scrollTop + 'px';\n doc.style.overflow = 'hidden';\n isOn = true;\n }\n\n function off() {\n if (typeof document === 'undefined' || !isOn) return;\n var doc = document.documentElement;\n doc.style.width = '';\n doc.style.position = '';\n doc.style.top = '';\n doc.style.overflow = '';\n window.scroll(0, scrollTop);\n isOn = false;\n }\n\n function toggle() {\n if (isOn) {\n off();\n return;\n }\n on();\n }\n\n var noScroll = {\n on: on,\n off: off,\n toggle: toggle,\n };\n\n if (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n module.exports = noScroll;\n } else {\n root.noScroll = noScroll;\n }\n})(this);\n","import React from 'react'\nfunction CrossIcon({\n color = '#fff',\n className,\n}: {\n color?: string\n className?: string\n}): JSX.Element {\n return (\n <svg\n className={className}\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12.5964 11.404L9.41445 8.22205L12.5964 5.04007C12.7732 4.86329 12.7732 4.50974 12.5964 4.33296L11.8893 3.62585C11.6904 3.42698 11.359 3.44908 11.1822 3.62585L8.00023 6.80783L4.81825 3.62585C4.61938 3.42698 4.28792 3.44908 4.11114 3.62585L3.40404 4.33296C3.20516 4.53183 3.20516 4.84119 3.40404 5.04007L6.58602 8.22205L3.40404 11.404C3.20516 11.6029 3.20517 11.9123 3.40404 12.1111L4.11115 12.8182C4.28792 12.995 4.61938 13.0171 4.81825 12.8182L8.00023 9.63626L11.1822 12.8182C11.359 12.995 11.6904 13.0171 11.8893 12.8182L12.5964 12.1111C12.7732 11.9344 12.7732 11.5808 12.5964 11.404Z\"\n fill={color}\n />\n </svg>\n )\n}\n\nexport default CrossIcon\n","import React, { FunctionComponent, ReactNode } from 'react'\nimport Modal from 'react-modal'\nimport noScroll from 'no-scroll'\nimport cx from 'classnames'\n\nimport s from './Modal.module.css'\nimport CrossIcon from 'assets/Cross'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nexport type Props = Modal.Props & {\n children: ReactNode\n isOpen: boolean\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n className?: string\n contentClassName?: string\n scrollable?: boolean\n}\n\nconst ControlledModal: FunctionComponent<Props> = ({\n children,\n isOpen,\n onClose,\n className,\n contentClassName,\n scrollable = false,\n ...props\n}) => {\n /* istanbul ignore next */\n if (process.env.NODE_ENV !== 'test') Modal.setAppElement('body')\n\n return (\n <Modal\n className={cx(s.modal, className)}\n overlayClassName={s.overlay}\n onAfterOpen={() => {\n noScroll.on()\n }}\n onAfterClose={() => {\n noScroll.off()\n }}\n onRequestClose={onClose}\n isOpen={isOpen}\n shouldCloseOnOverlayClick\n shouldCloseOnEsc\n {...props}\n >\n <div className={s.header}>\n <button\n onClick={onClose}\n className={cx(s.closeButton, STATIC_CUSTOMISATION_CLASSES.closeButton)}\n data-testid=\"modal-close-button\"\n >\n <CrossIcon />\n </button>\n </div>\n <div className={cx(s.content, contentClassName, { [s.contentScrollable]: scrollable })}>\n {children}\n </div>\n </Modal>\n )\n}\n\nexport default ControlledModal\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"MediaQuery\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"MediaQuery\"] = factory(root[\"React\"]);\n})(this, (__WEBPACK_EXTERNAL_MODULE_react__) => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./node_modules/css-mediaquery/index.js\":\n/*!**********************************************!*\\\n !*** ./node_modules/css-mediaquery/index.js ***!\n \\**********************************************/\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n/*\nCopyright (c) 2014, Yahoo! Inc. All rights reserved.\nCopyrights licensed under the New BSD License.\nSee the accompanying LICENSE file for terms.\n*/\n\n\n\nexports.match = matchQuery;\nexports.parse = parseQuery;\n\n// -----------------------------------------------------------------------------\n\nvar RE_MEDIA_QUERY = /(?:(only|not)?\\s*([^\\s\\(\\)]+)(?:\\s*and)?\\s*)?(.+)?/i,\n RE_MQ_EXPRESSION = /\\(\\s*([^\\s\\:\\)]+)\\s*(?:\\:\\s*([^\\s\\)]+))?\\s*\\)/,\n RE_MQ_FEATURE = /^(?:(min|max)-)?(.+)/,\n RE_LENGTH_UNIT = /(em|rem|px|cm|mm|in|pt|pc)?$/,\n RE_RESOLUTION_UNIT = /(dpi|dpcm|dppx)?$/;\n\nfunction matchQuery(mediaQuery, values) {\n return parseQuery(mediaQuery).some(function (query) {\n var inverse = query.inverse;\n\n // Either the parsed or specified `type` is \"all\", or the types must be\n // equal for a match.\n var typeMatch = query.type === 'all' || values.type === query.type;\n\n // Quit early when `type` doesn't match, but take \"not\" into account.\n if ((typeMatch && inverse) || !(typeMatch || inverse)) {\n return false;\n }\n\n var expressionsMatch = query.expressions.every(function (expression) {\n var feature = expression.feature,\n modifier = expression.modifier,\n expValue = expression.value,\n value = values[feature];\n\n // Missing or falsy values don't match.\n if (!value) { return false; }\n\n switch (feature) {\n case 'orientation':\n case 'scan':\n return value.toLowerCase() === expValue.toLowerCase();\n\n case 'width':\n case 'height':\n case 'device-width':\n case 'device-height':\n expValue = toPx(expValue);\n value = toPx(value);\n break;\n\n case 'resolution':\n expValue = toDpi(expValue);\n value = toDpi(value);\n break;\n\n case 'aspect-ratio':\n case 'device-aspect-ratio':\n case /* Deprecated */ 'device-pixel-ratio':\n expValue = toDecimal(expValue);\n value = toDecimal(value);\n break;\n\n case 'grid':\n case 'color':\n case 'color-index':\n case 'monochrome':\n expValue = parseInt(expValue, 10) || 1;\n value = parseInt(value, 10) || 0;\n break;\n }\n\n switch (modifier) {\n case 'min': return value >= expValue;\n case 'max': return value <= expValue;\n default : return value === expValue;\n }\n });\n\n return (expressionsMatch && !inverse) || (!expressionsMatch && inverse);\n });\n}\n\nfunction parseQuery(mediaQuery) {\n return mediaQuery.split(',').map(function (query) {\n query = query.trim();\n\n var captures = query.match(RE_MEDIA_QUERY),\n modifier = captures[1],\n type = captures[2],\n expressions = captures[3] || '',\n parsed = {};\n\n parsed.inverse = !!modifier && modifier.toLowerCase() === 'not';\n parsed.type = type ? type.toLowerCase() : 'all';\n\n // Split expressions into a list.\n expressions = expressions.match(/\\([^\\)]+\\)/g) || [];\n\n parsed.expressions = expressions.map(function (expression) {\n var captures = expression.match(RE_MQ_EXPRESSION),\n feature = captures[1].toLowerCase().match(RE_MQ_FEATURE);\n\n return {\n modifier: feature[1],\n feature : feature[2],\n value : captures[2]\n };\n });\n\n return parsed;\n });\n}\n\n// -- Utilities ----------------------------------------------------------------\n\nfunction toDecimal(ratio) {\n var decimal = Number(ratio),\n numbers;\n\n if (!decimal) {\n numbers = ratio.match(/^(\\d+)\\s*\\/\\s*(\\d+)$/);\n decimal = numbers[1] / numbers[2];\n }\n\n return decimal;\n}\n\nfunction toDpi(resolution) {\n var value = parseFloat(resolution),\n units = String(resolution).match(RE_RESOLUTION_UNIT)[1];\n\n switch (units) {\n case 'dpcm': return value / 2.54;\n case 'dppx': return value * 96;\n default : return value;\n }\n}\n\nfunction toPx(length) {\n var value = parseFloat(length),\n units = String(length).match(RE_LENGTH_UNIT)[1];\n\n switch (units) {\n case 'em' : return value * 16;\n case 'rem': return value * 16;\n case 'cm' : return value * 96 / 2.54;\n case 'mm' : return value * 96 / 2.54 / 10;\n case 'in' : return value * 96;\n case 'pt' : return value * 72;\n case 'pc' : return value * 72 / 12;\n default : return value;\n }\n}\n\n\n/***/ }),\n\n/***/ \"./node_modules/hyphenate-style-name/index.js\":\n/*!****************************************************!*\\\n !*** ./node_modules/hyphenate-style-name/index.js ***!\n \\****************************************************/\n/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* eslint-disable no-var, prefer-template */\nvar uppercasePattern = /[A-Z]/g\nvar msPattern = /^ms-/\nvar cache = {}\n\nfunction toHyphenLower(match) {\n return '-' + match.toLowerCase()\n}\n\nfunction hyphenateStyleName(name) {\n if (cache.hasOwnProperty(name)) {\n return cache[name]\n }\n\n var hName = name.replace(uppercasePattern, toHyphenLower)\n return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (hyphenateStyleName);\n\n\n/***/ }),\n\n/***/ \"./node_modules/matchmediaquery/index.js\":\n/*!***********************************************!*\\\n !*** ./node_modules/matchmediaquery/index.js ***!\n \\***********************************************/\n/***/ ((module, __unused_webpack_exports, __webpack_require__) => {\n\n\"use strict\";\n\n\nvar staticMatch = (__webpack_require__(/*! css-mediaquery */ \"./node_modules/css-mediaquery/index.js\").match);\nvar dynamicMatch = typeof window !== 'undefined' ? window.matchMedia : null;\n\n// our fake MediaQueryList\nfunction Mql(query, values, forceStatic){\n var self = this;\n if(dynamicMatch && !forceStatic){\n var mql = dynamicMatch.call(window, query);\n this.matches = mql.matches;\n this.media = mql.media;\n // TODO: is there a time it makes sense to remove this listener?\n mql.addListener(update);\n } else {\n this.matches = staticMatch(query, values);\n this.media = query;\n }\n\n this.addListener = addListener;\n this.removeListener = removeListener;\n this.dispose = dispose;\n\n function addListener(listener){\n if(mql){\n mql.addListener(listener);\n }\n }\n\n function removeListener(listener){\n if(mql){\n mql.removeListener(listener);\n }\n }\n\n // update ourselves!\n function update(evt){\n self.matches = evt.matches;\n self.media = evt.media;\n }\n\n function dispose(){\n if(mql){\n mql.removeListener(update);\n }\n }\n}\n\nfunction matchMedia(query, values, forceStatic){\n return new Mql(query, values, forceStatic);\n}\n\nmodule.exports = matchMedia;\n\n\n/***/ }),\n\n/***/ \"./node_modules/object-assign/index.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/object-assign/index.js ***!\n \\*********************************************/\n/***/ ((module) => {\n\n\"use strict\";\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n/***/ }),\n\n/***/ \"./node_modules/prop-types/checkPropTypes.js\":\n/*!***************************************************!*\\\n !*** ./node_modules/prop-types/checkPropTypes.js ***!\n \\***************************************************/\n/***/ ((module, __unused_webpack_exports, __webpack_require__) => {\n\n\"use strict\";\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar printWarning = function() {};\n\nif (true) {\n var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\n var loggedTypeFailures = {};\n var has = __webpack_require__(/*! ./lib/has */ \"./node_modules/prop-types/lib/has.js\");\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (true) {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (true) {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n/***/ }),\n\n/***/ \"./node_modules/prop-types/factoryWithTypeCheckers.js\":\n/*!************************************************************!*\\\n !*** ./node_modules/prop-types/factoryWithTypeCheckers.js ***!\n \\************************************************************/\n/***/ ((module, __unused_webpack_exports, __webpack_require__) => {\n\n\"use strict\";\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/react-is/index.js\");\nvar assign = __webpack_require__(/*! object-assign */ \"./node_modules/object-assign/index.js\");\n\nvar ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\nvar has = __webpack_require__(/*! ./lib/has */ \"./node_modules/prop-types/lib/has.js\");\nvar checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ \"./node_modules/prop-types/checkPropTypes.js\");\n\nvar printWarning = function() {};\n\nif (true) {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (true) {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if ( true && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (true) {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n/***/ }),\n\n/***/ \"./node_modules/prop-types/index.js\":\n/*!******************************************!*\\\n !*** ./node_modules/prop-types/index.js ***!\n \\******************************************/\n/***/ ((module, __unused_webpack_exports, __webpack_require__) => {\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (true) {\n var ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/react-is/index.js\");\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ \"./node_modules/prop-types/factoryWithTypeCheckers.js\")(ReactIs.isElement, throwOnDirectAccess);\n} else {}\n\n\n/***/ }),\n\n/***/ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\":\n/*!*************************************************************!*\\\n !*** ./node_modules/prop-types/lib/ReactPropTypesSecret.js ***!\n \\*************************************************************/\n/***/ ((module) => {\n\n\"use strict\";\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n/***/ }),\n\n/***/ \"./node_modules/prop-types/lib/has.js\":\n/*!********************************************!*\\\n !*** ./node_modules/prop-types/lib/has.js ***!\n \\********************************************/\n/***/ ((module) => {\n\nmodule.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n\n\n/***/ }),\n\n/***/ \"./node_modules/react-is/cjs/react-is.development.js\":\n/*!***********************************************************!*\\\n !*** ./node_modules/react-is/cjs/react-is.development.js ***!\n \\***********************************************************/\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\n\n\nif (true) {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n\n\n/***/ }),\n\n/***/ \"./node_modules/react-is/index.js\":\n/*!****************************************!*\\\n !*** ./node_modules/react-is/index.js ***!\n \\****************************************/\n/***/ ((module, __unused_webpack_exports, __webpack_require__) => {\n\n\"use strict\";\n\n\nif (false) {} else {\n module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ \"./node_modules/react-is/cjs/react-is.development.js\");\n}\n\n\n/***/ }),\n\n/***/ \"./node_modules/shallow-equal/dist/index.esm.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/shallow-equal/dist/index.esm.js ***!\n \\******************************************************/\n/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"shallowEqualArrays\": () => (/* binding */ shallowEqualArrays),\n/* harmony export */ \"shallowEqualObjects\": () => (/* binding */ shallowEqualObjects)\n/* harmony export */ });\nfunction shallowEqualObjects(objA, objB) {\n if (objA === objB) {\n return true;\n }\n\n if (!objA || !objB) {\n return false;\n }\n\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n var len = aKeys.length;\n\n if (bKeys.length !== len) {\n return false;\n }\n\n for (var i = 0; i < len; i++) {\n var key = aKeys[i];\n\n if (objA[key] !== objB[key] || !Object.prototype.hasOwnProperty.call(objB, key)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction shallowEqualArrays(arrA, arrB) {\n if (arrA === arrB) {\n return true;\n }\n\n if (!arrA || !arrB) {\n return false;\n }\n\n var len = arrA.length;\n\n if (arrB.length !== len) {\n return false;\n }\n\n for (var i = 0; i < len; i++) {\n if (arrA[i] !== arrB[i]) {\n return false;\n }\n }\n\n return true;\n}\n\n\n\n\n/***/ }),\n\n/***/ \"./src/Component.ts\":\n/*!**************************!*\\\n !*** ./src/Component.ts ***!\n \\**************************/\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar useMediaQuery_1 = __importDefault(__webpack_require__(/*! ./useMediaQuery */ \"./src/useMediaQuery.ts\"));\n// ReactNode and ReactElement typings are a little funky for functional components, so the ReactElement cast is needed on the return\nvar MediaQuery = function (_a) {\n var children = _a.children, device = _a.device, onChange = _a.onChange, settings = __rest(_a, [\"children\", \"device\", \"onChange\"]);\n var matches = (0, useMediaQuery_1.default)(settings, device, onChange);\n if (typeof children === 'function') {\n return children(matches);\n }\n return matches ? children : null;\n};\nexports[\"default\"] = MediaQuery;\n\n\n/***/ }),\n\n/***/ \"./src/Context.ts\":\n/*!************************!*\\\n !*** ./src/Context.ts ***!\n \\************************/\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar react_1 = __webpack_require__(/*! react */ \"react\");\nvar Context = (0, react_1.createContext)(undefined);\nexports[\"default\"] = Context;\n\n\n/***/ }),\n\n/***/ \"./src/index.ts\":\n/*!**********************!*\\\n !*** ./src/index.ts ***!\n \\**********************/\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.Context = exports.toQuery = exports.useMediaQuery = exports[\"default\"] = void 0;\nvar useMediaQuery_1 = __importDefault(__webpack_require__(/*! ./useMediaQuery */ \"./src/useMediaQuery.ts\"));\nexports.useMediaQuery = useMediaQuery_1.default;\nvar Component_1 = __importDefault(__webpack_require__(/*! ./Component */ \"./src/Component.ts\"));\nexports[\"default\"] = Component_1.default;\nvar toQuery_1 = __importDefault(__webpack_require__(/*! ./toQuery */ \"./src/toQuery.ts\"));\nexports.toQuery = toQuery_1.default;\nvar Context_1 = __importDefault(__webpack_require__(/*! ./Context */ \"./src/Context.ts\"));\nexports.Context = Context_1.default;\n\n\n/***/ }),\n\n/***/ \"./src/mediaQuery.ts\":\n/*!***************************!*\\\n !*** ./src/mediaQuery.ts ***!\n \\***************************/\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar prop_types_1 = __importDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar stringOrNumber = prop_types_1.default.oneOfType([\n prop_types_1.default.string,\n prop_types_1.default.number\n]);\n// media types\nvar types = {\n all: prop_types_1.default.bool,\n grid: prop_types_1.default.bool,\n aural: prop_types_1.default.bool,\n braille: prop_types_1.default.bool,\n handheld: prop_types_1.default.bool,\n print: prop_types_1.default.bool,\n projection: prop_types_1.default.bool,\n screen: prop_types_1.default.bool,\n tty: prop_types_1.default.bool,\n tv: prop_types_1.default.bool,\n embossed: prop_types_1.default.bool\n};\n// properties that match media queries\nvar matchers = {\n orientation: prop_types_1.default.oneOf([\n 'portrait',\n 'landscape'\n ]),\n scan: prop_types_1.default.oneOf([\n 'progressive',\n 'interlace'\n ]),\n aspectRatio: prop_types_1.default.string,\n deviceAspectRatio: prop_types_1.default.string,\n height: stringOrNumber,\n deviceHeight: stringOrNumber,\n width: stringOrNumber,\n deviceWidth: stringOrNumber,\n color: prop_types_1.default.bool,\n colorIndex: prop_types_1.default.bool,\n monochrome: prop_types_1.default.bool,\n resolution: stringOrNumber,\n type: Object.keys(types)\n};\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nvar type = matchers.type, featureMatchers = __rest(matchers\n// media features\n, [\"type\"]);\n// media features\nvar features = __assign({ minAspectRatio: prop_types_1.default.string, maxAspectRatio: prop_types_1.default.string, minDeviceAspectRatio: prop_types_1.default.string, maxDeviceAspectRatio: prop_types_1.default.string, minHeight: stringOrNumber, maxHeight: stringOrNumber, minDeviceHeight: stringOrNumber, maxDeviceHeight: stringOrNumber, minWidth: stringOrNumber, maxWidth: stringOrNumber, minDeviceWidth: stringOrNumber, maxDeviceWidth: stringOrNumber, minColor: prop_types_1.default.number, maxColor: prop_types_1.default.number, minColorIndex: prop_types_1.default.number, maxColorIndex: prop_types_1.default.number, minMonochrome: prop_types_1.default.number, maxMonochrome: prop_types_1.default.number, minResolution: stringOrNumber, maxResolution: stringOrNumber }, featureMatchers);\nvar all = __assign(__assign({}, types), features);\nexports[\"default\"] = {\n all: all,\n types: types,\n matchers: matchers,\n features: features\n};\n\n\n/***/ }),\n\n/***/ \"./src/toQuery.ts\":\n/*!************************!*\\\n !*** ./src/toQuery.ts ***!\n \\************************/\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar hyphenate_style_name_1 = __importDefault(__webpack_require__(/*! hyphenate-style-name */ \"./node_modules/hyphenate-style-name/index.js\"));\nvar mediaQuery_1 = __importDefault(__webpack_require__(/*! ./mediaQuery */ \"./src/mediaQuery.ts\"));\nvar negate = function (cond) { return \"not \".concat(cond); };\nvar keyVal = function (k, v) {\n var realKey = (0, hyphenate_style_name_1.default)(k);\n // px shorthand\n if (typeof v === 'number') {\n v = \"\".concat(v, \"px\");\n }\n if (v === true) {\n return realKey;\n }\n if (v === false) {\n return negate(realKey);\n }\n return \"(\".concat(realKey, \": \").concat(v, \")\");\n};\nvar join = function (conds) { return conds.join(' and '); };\nvar toQuery = function (obj) {\n var rules = [];\n Object.keys(mediaQuery_1.default.all).forEach(function (k) {\n var v = obj[k];\n if (v != null) {\n rules.push(keyVal(k, v));\n }\n });\n return join(rules);\n};\nexports[\"default\"] = toQuery;\n\n\n/***/ }),\n\n/***/ \"./src/useMediaQuery.ts\":\n/*!******************************!*\\\n !*** ./src/useMediaQuery.ts ***!\n \\******************************/\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar react_1 = __webpack_require__(/*! react */ \"react\");\nvar matchmediaquery_1 = __importDefault(__webpack_require__(/*! matchmediaquery */ \"./node_modules/matchmediaquery/index.js\"));\nvar hyphenate_style_name_1 = __importDefault(__webpack_require__(/*! hyphenate-style-name */ \"./node_modules/hyphenate-style-name/index.js\"));\nvar shallow_equal_1 = __webpack_require__(/*! shallow-equal */ \"./node_modules/shallow-equal/dist/index.esm.js\");\nvar toQuery_1 = __importDefault(__webpack_require__(/*! ./toQuery */ \"./src/toQuery.ts\"));\nvar Context_1 = __importDefault(__webpack_require__(/*! ./Context */ \"./src/Context.ts\"));\nvar makeQuery = function (settings) { return settings.query || (0, toQuery_1.default)(settings); };\nvar hyphenateKeys = function (obj) {\n if (!obj)\n return undefined;\n var keys = Object.keys(obj);\n return keys.reduce(function (result, key) {\n result[(0, hyphenate_style_name_1.default)(key)] = obj[key];\n return result;\n }, {});\n};\nvar useIsUpdate = function () {\n var ref = (0, react_1.useRef)(false);\n (0, react_1.useEffect)(function () {\n ref.current = true;\n }, []);\n return ref.current;\n};\nvar useDevice = function (deviceFromProps) {\n var deviceFromContext = (0, react_1.useContext)(Context_1.default);\n var getDevice = function () {\n return hyphenateKeys(deviceFromProps) || hyphenateKeys(deviceFromContext);\n };\n var _a = (0, react_1.useState)(getDevice), device = _a[0], setDevice = _a[1];\n (0, react_1.useEffect)(function () {\n var newDevice = getDevice();\n if (!(0, shallow_equal_1.shallowEqualObjects)(device, newDevice)) {\n setDevice(newDevice);\n }\n }, [deviceFromProps, deviceFromContext]);\n return device;\n};\nvar useQuery = function (settings) {\n var getQuery = function () { return makeQuery(settings); };\n var _a = (0, react_1.useState)(getQuery), query = _a[0], setQuery = _a[1];\n (0, react_1.useEffect)(function () {\n var newQuery = getQuery();\n if (query !== newQuery) {\n setQuery(newQuery);\n }\n }, [settings]);\n return query;\n};\nvar useMatchMedia = function (query, device) {\n var getMatchMedia = function () { return (0, matchmediaquery_1.default)(query, device || {}, !!device); };\n var _a = (0, react_1.useState)(getMatchMedia), mq = _a[0], setMq = _a[1];\n var isUpdate = useIsUpdate();\n (0, react_1.useEffect)(function () {\n if (isUpdate) {\n // skip on mounting, it has already been set\n var newMq_1 = getMatchMedia();\n setMq(newMq_1);\n return function () {\n if (newMq_1) {\n newMq_1.dispose();\n }\n };\n }\n }, [query, device]);\n return mq;\n};\nvar useMatches = function (mediaQuery) {\n var _a = (0, react_1.useState)(mediaQuery.matches), matches = _a[0], setMatches = _a[1];\n (0, react_1.useEffect)(function () {\n var updateMatches = function (ev) {\n setMatches(ev.matches);\n };\n mediaQuery.addListener(updateMatches);\n setMatches(mediaQuery.matches);\n return function () {\n mediaQuery.removeListener(updateMatches);\n };\n }, [mediaQuery]);\n return matches;\n};\nvar useMediaQuery = function (settings, device, onChange) {\n var deviceSettings = useDevice(device);\n var query = useQuery(settings);\n if (!query)\n throw new Error('Invalid or missing MediaQuery!');\n var mq = useMatchMedia(query, deviceSettings);\n var matches = useMatches(mq);\n var isUpdate = useIsUpdate();\n (0, react_1.useEffect)(function () {\n if (isUpdate && onChange) {\n onChange(matches);\n }\n }, [matches]);\n (0, react_1.useEffect)(function () { return function () {\n if (mq) {\n mq.dispose();\n }\n }; }, []);\n return matches;\n};\nexports[\"default\"] = useMediaQuery;\n\n\n/***/ }),\n\n/***/ \"react\":\n/*!**************************************************************************************!*\\\n !*** external {\"commonjs\":\"react\",\"commonjs2\":\"react\",\"amd\":\"react\",\"root\":\"React\"} ***!\n \\**************************************************************************************/\n/***/ ((module) => {\n\n\"use strict\";\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_react__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t(() => {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = (exports, definition) => {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t(() => {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = (exports) => {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/************************************************************************/\n/******/ \t\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \t// This entry module is referenced by other modules so it can't be inlined\n/******/ \tvar __webpack_exports__ = __webpack_require__(\"./src/index.ts\");\n/******/ \t\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=react-responsive.js.map","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","export default function requiredArgs(required, args) {\n if (args.length < required) {\n throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');\n }\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument);\n\n // Clone the date\n if (argument instanceof Date || _typeof(argument) === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments\");\n // eslint-disable-next-line no-console\n console.warn(new Error().stack);\n }\n return new Date(NaN);\n }\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day (and year and month)?\n *\n * @description\n * Are the given dates in the same day (and year and month)?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day (and year and month)\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n *\n * @example\n * // Are 4 September and 4 October in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2014, 9, 4))\n * //=> false\n *\n * @example\n * // Are 4 September, 2014 and 4 September, 2015 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2015, 8, 4))\n * //=> false\n */\nexport default function isSameDay(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfDay = startOfDay(dirtyDateLeft);\n var dateRightStartOfDay = startOfDay(dirtyDateRight);\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();\n}","import requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { millisecondsInSecond } from \"../constants/index.js\";\n/**\n * @name secondsToMilliseconds\n * @category Conversion Helpers\n * @summary Convert seconds to milliseconds.\n *\n * @description\n * Convert a number of seconds to a full number of milliseconds.\n *\n * @param {number} seconds - number of seconds to be converted\n *\n * @returns {number} the number of seconds converted in milliseconds\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Convert 2 seconds into milliseconds\n * const result = secondsToMilliseconds(2)\n * //=> 2000\n */\nexport default function secondsToMilliseconds(seconds) {\n requiredArgs(1, arguments);\n return seconds * millisecondsInSecond;\n}","/**\n * Days in 1 week.\n *\n * @name daysInWeek\n * @constant\n * @type {number}\n * @default\n */\nexport var daysInWeek = 7;\n\n/**\n * Days in 1 year\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occures every 4 years, except for years that are divisable by 100 and not divisable by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n *\n * @name daysInYear\n * @constant\n * @type {number}\n * @default\n */\nexport var daysInYear = 365.2425;\n\n/**\n * Maximum allowed time.\n *\n * @name maxTime\n * @constant\n * @type {number}\n * @default\n */\nexport var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * Milliseconds in 1 minute\n *\n * @name millisecondsInMinute\n * @constant\n * @type {number}\n * @default\n */\nexport var millisecondsInMinute = 60000;\n\n/**\n * Milliseconds in 1 hour\n *\n * @name millisecondsInHour\n * @constant\n * @type {number}\n * @default\n */\nexport var millisecondsInHour = 3600000;\n\n/**\n * Milliseconds in 1 second\n *\n * @name millisecondsInSecond\n * @constant\n * @type {number}\n * @default\n */\nexport var millisecondsInSecond = 1000;\n\n/**\n * Minimum allowed time.\n *\n * @name minTime\n * @constant\n * @type {number}\n * @default\n */\nexport var minTime = -maxTime;\n\n/**\n * Minutes in 1 hour\n *\n * @name minutesInHour\n * @constant\n * @type {number}\n * @default\n */\nexport var minutesInHour = 60;\n\n/**\n * Months in 1 quarter\n *\n * @name monthsInQuarter\n * @constant\n * @type {number}\n * @default\n */\nexport var monthsInQuarter = 3;\n\n/**\n * Months in 1 year\n *\n * @name monthsInYear\n * @constant\n * @type {number}\n * @default\n */\nexport var monthsInYear = 12;\n\n/**\n * Quarters in 1 year\n *\n * @name quartersInYear\n * @constant\n * @type {number}\n * @default\n */\nexport var quartersInYear = 4;\n\n/**\n * Seconds in 1 hour\n *\n * @name secondsInHour\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInHour = 3600;\n\n/**\n * Seconds in 1 minute\n *\n * @name secondsInMinute\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInMinute = 60;\n\n/**\n * Seconds in 1 day\n *\n * @name secondsInDay\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInDay = secondsInHour * 24;\n\n/**\n * Seconds in 1 week\n *\n * @name secondsInWeek\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInWeek = secondsInDay * 7;\n\n/**\n * Seconds in 1 year\n *\n * @name secondsInYear\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInYear = secondsInDay * daysInYear;\n\n/**\n * Seconds in 1 month\n *\n * @name secondsInMonth\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInMonth = secondsInYear / 12;\n\n/**\n * Seconds in 1 quarter\n *\n * @name secondsInQuarter\n * @constant\n * @type {number}\n * @default\n */\nexport var secondsInQuarter = secondsInMonth * 3;","export const SANDBOX_API_URL = 'https://api.sandbox.getalma.eu'\nexport const LIVE_API_URL = 'https://api.getalma.eu'\n\nexport enum ApiMode {\n LIVE = 'https://api.getalma.eu',\n TEST = 'https://api.sandbox.getalma.eu',\n}\n","import 'core-js/stable/array/from' // todo Looks like legacy code, needs to be tested\nimport { widgetTypes } from 'types'\nimport { ApiMode } from './consts'\nimport './main.css'\nimport * as utils from './utils'\nimport './utils/polyfills' // todo Looks like legacy code, needs to be tested on multiple browsers (old ones too)\nimport { WidgetsController } from './widgets_controller'\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Widgets {\n export function initialize(merchantId: string, mode: ApiMode): WidgetsController {\n return new WidgetsController({ domain: mode, merchantId })\n }\n export const PaymentPlans = widgetTypes.PaymentPlans\n export const Modal = widgetTypes.Modal\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Utils {\n export const priceToCents = utils.priceToCents\n export const priceFromCents = utils.priceFromCents\n export const formatCents = utils.formatCents\n}\n\nexport { ApiMode } from './consts'\n","import { secondsToMilliseconds } from 'date-fns'\nimport React, { ReactNode } from 'react'\nimport { FormattedDate, FormattedMessage, FormattedNumber } from 'react-intl'\nimport { EligibilityPlan, EligibilityPlanToDisplay } from 'types'\nimport { isP1X, priceFromCents } from 'utils'\nimport s from './paymentPlanStrings.module.css'\n\nexport const paymentPlanShorthandName = (payment: EligibilityPlan): ReactNode => {\n const { deferred_days, deferred_months, installments_count: installmentsCount } = payment\n\n if (installmentsCount === 1 && !deferred_days && !deferred_months) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.pay.now.button\"\n defaultMessage=\"Payer maintenant\"\n />\n )\n }\n if (installmentsCount === 1 && deferred_days) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.day-abbreviation\"\n defaultMessage=\"J{deferredDays}\"\n values={{\n deferredDays: `+${deferred_days}`,\n }}\n />\n )\n }\n if (installmentsCount === 1 && deferred_months) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.month-abbreviation\"\n defaultMessage=\"M{deferredMonths}\"\n values={{\n deferredMonths: `+${deferred_months}`,\n }}\n />\n )\n } else {\n return `${installmentsCount}x`\n }\n}\n\nconst withNoFee = (payment: EligibilityPlanToDisplay) => {\n if (\n payment.payment_plan?.every((plan) => plan.customer_fee === 0 && plan.customer_interest === 0)\n ) {\n return (\n <>\n {' '}\n <FormattedMessage id=\"payment-plan-strings.no-fee\" defaultMessage={'(sans frais)'} />\n </>\n )\n }\n}\n\nexport const paymentPlanInfoText = (payment: EligibilityPlanToDisplay): ReactNode => {\n const {\n deferred_days,\n deferred_months,\n installments_count: installmentsCount,\n eligible,\n purchase_amount: purchaseAmount,\n minAmount = 0,\n maxAmount = 0,\n payment_plan,\n } = payment\n const deferredDaysCount = deferred_days + deferred_months * 30\n\n if (!eligible) {\n return purchaseAmount > maxAmount ? (\n <FormattedMessage\n id=\"payment-plan-strings.ineligible-greater-than-max\"\n defaultMessage=\"Jusqu'à {maxAmount}\"\n values={{\n maxAmount: (\n <FormattedNumber value={priceFromCents(maxAmount)} style=\"currency\" currency=\"EUR\" />\n ),\n }}\n />\n ) : (\n <FormattedMessage\n id=\"payment-plan-strings.ineligible-lower-than-min\"\n defaultMessage=\"À partir de {minAmount}\"\n values={{\n minAmount: (\n <FormattedNumber value={priceFromCents(minAmount)} style=\"currency\" currency=\"EUR\" />\n ),\n }}\n />\n )\n } else if (!payment_plan) {\n /* This error should never happen. We added this condition to avoid a typescript warning on\n payment_plan possibly undefined. As far as we know, it only happens when the plan is not\n eligible, which is checked above. */\n throw Error(\n `No payment plan provided for payment in ${installmentsCount} installments. Please contact us if you see this error.`,\n )\n } else if (deferredDaysCount !== 0 && installmentsCount === 1) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.deferred\"\n defaultMessage=\"{totalAmount} à payer le {dueDate}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(payment_plan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n dueDate: (\n <FormattedDate\n value={secondsToMilliseconds(payment_plan[0].due_date)}\n day=\"numeric\"\n month=\"long\"\n year=\"numeric\"\n />\n ),\n }}\n />\n {withNoFee(payment)}\n </>\n )\n } else if (installmentsCount > 0) {\n const areInstallmentsOfSameAmount = payment_plan?.every(\n (installment, index) =>\n index === 0 || installment.total_amount === payment_plan[0].total_amount,\n )\n\n if (installmentsCount > 4) {\n return (\n <span className={s.openModalInfo}>\n <FormattedMessage\n id=\"payment-plan-strings.credit\"\n defaultMessage=\"Cliquez pour en savoir plus\"\n description={`Link to credit details`}\n />\n </span>\n )\n }\n\n if (isP1X(payment)) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.pay-now\"\n defaultMessage=\"Payer maintenant {totalAmount}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(payment_plan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n installmentsCount,\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n\n if (areInstallmentsOfSameAmount) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.multiple-installments-same-amount\"\n defaultMessage=\"{installmentsCount} x {totalAmount}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(payment_plan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n installmentsCount,\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.multiple-installments\"\n defaultMessage=\"{numberOfRemainingInstallments, plural, one {{firstInstallmentAmount} puis {numberOfRemainingInstallments} x {othersInstallmentAmount}} other {{firstInstallmentAmount} puis {numberOfRemainingInstallments} x {othersInstallmentAmount}}}\"\n values={{\n firstInstallmentAmount: (\n <FormattedNumber\n value={priceFromCents(payment_plan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n numberOfRemainingInstallments: installmentsCount - 1,\n othersInstallmentAmount: (\n <FormattedNumber\n value={priceFromCents(payment_plan[1].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n return (\n <FormattedMessage\n id=\"payment-plan-strings.default-message\"\n defaultMessage=\"Payez en plusieurs fois avec Alma\"\n />\n )\n}\n","import React, { FC } from 'react'\nimport cx from 'classnames'\nimport { EligibilityPlan } from 'types'\n\nimport { paymentPlanShorthandName } from 'utils/paymentPlanStrings'\nimport s from './EligibilityPlansButtons.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nconst EligibilityPlansButtons: FC<{\n eligibilityPlans: EligibilityPlan[]\n currentPlanIndex: number\n setCurrentPlanIndex: (index: number) => void\n}> = ({ eligibilityPlans, currentPlanIndex, setCurrentPlanIndex }) => (\n <div className={cx(s.buttons, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)}>\n {eligibilityPlans.map((eligibilityPlan, index) => (\n <button\n key={index}\n className={cx({\n [cx(s.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: index === currentPlanIndex,\n })}\n onClick={() => setCurrentPlanIndex(index)}\n >\n <span className={s.textButton}>{paymentPlanShorthandName(eligibilityPlan)}</span>\n </button>\n ))}\n </div>\n)\n\nexport default EligibilityPlansButtons\n","import { FormattedDate, FormattedMessage, FormattedNumber } from 'react-intl'\nimport React, { FC } from 'react'\n\nimport s from './Installment.module.css'\nimport { PaymentPlan } from 'types'\nimport cx from 'classnames'\nimport { isToday } from 'date-fns'\n\ntype Props = {\n installment: PaymentPlan\n index: number\n}\n\nconst Installment: FC<Props> = ({ installment, index }) => {\n return (\n <div className={s.installment} data-testid={`installment-${index}`}>\n <div className={s.date}>\n <div className={cx(s.dot, { [s.isCurrent]: index === 0 })} />\n {isToday(installment.due_date * 1000) ? (\n <FormattedMessage id=\"installments.today\" defaultMessage=\"Aujourd'hui\" tagName=\"strong\" />\n ) : (\n <FormattedDate\n value={installment.due_date * 1000}\n day=\"numeric\"\n month=\"long\"\n year=\"numeric\"\n />\n )}\n </div>\n <div className={cx({ [s.bold]: index === 0 })}>\n <FormattedNumber value={installment.total_amount / 100} style=\"currency\" currency=\"EUR\" />\n </div>\n </div>\n )\n}\n\nexport default Installment\n","import isSameDay from \"../isSameDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isToday\n * @category Day Helpers\n * @summary Is the given date today?\n * @pure false\n *\n * @description\n * Is the given date today?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is today\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 6 October 14:00:00 today?\n * const result = isToday(new Date(2014, 9, 6, 14, 0))\n * //=> true\n */\nexport default function isToday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, Date.now());\n}","import cx from 'classnames'\nimport React, { FC } from 'react'\nimport { EligibilityPlan } from 'types'\n\nimport Installment from 'components/Installments/Installment'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport s from './Schedule.module.css'\n\nconst Schedule: FC<{ currentPlan: EligibilityPlan }> = ({ currentPlan }) => {\n return (\n <>\n <div\n className={cx(s.schedule, STATIC_CUSTOMISATION_CLASSES.scheduleDetails)}\n data-testid=\"modal-installments-element\"\n >\n {(currentPlan?.payment_plan || []).map((installment, index) => (\n <Installment key={installment.due_date * 1000} installment={installment} index={index} />\n ))}\n </div>\n </>\n )\n}\n\nexport default Schedule\n","import React, { SVGAttributes, VoidFunctionComponent } from 'react'\n\ntype Props = {\n color?: string\n} & SVGAttributes<SVGElement>\n\nexport const AlmaLogo: VoidFunctionComponent<Props> = ({ color = '#FA5022', ...svgProps }) => {\n return (\n <svg\n width=\"50\"\n height=\"25\"\n viewBox=\"0 0 360 109\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...svgProps}\n >\n <path\n d=\"M333.24 28.3462V38.4459C327.504 31.1018 319.176 26.5132 309.288 26.5132C290.208 26.5132 275.424 43.5497 275.424 64.5757C275.424 85.6018 290.208 102.638 309.288 102.638C319.872 102.638 328.668 97.3908 334.416 89.1241V100.817H352.668V28.3462H333.24ZM314.028 84.4876C303.42 84.4876 294.828 75.574 294.828 64.5757C294.828 53.5775 303.42 44.6639 314.028 44.6639C324.636 44.6639 333.228 53.5775 333.228 64.5757C333.228 75.574 324.636 84.4876 314.028 84.4876ZM109.5 8.23073H128.916V100.805H109.5V8.23073ZM151.248 59.7356C151.248 39.8117 163.5 26.5252 180.468 26.5252C191.004 26.5252 199.332 31.1976 204.348 39.1648C209.376 31.1976 217.692 26.5252 228.228 26.5252C245.196 26.5252 257.448 39.8117 257.448 59.7356V100.817H238.032V57.639C238.032 49.8635 232.872 44.7957 226.044 44.7957C219.216 44.7957 214.056 49.8755 214.056 57.639V100.817H194.64V57.639C194.64 49.8635 189.48 44.7957 182.652 44.7957C175.824 44.7957 170.664 49.8755 170.664 57.639V100.817H151.248V59.7356ZM74.34 29.101C69.744 11.9088 60.0241 6.40967 50.772 6.40967C41.5201 6.40967 31.8 11.9088 27.204 29.101L7.24805 100.829H26.916C30.12 88.8485 39.996 82.1753 50.772 82.1753C61.548 82.1753 71.424 88.8605 74.6281 100.829H94.3081L74.34 29.101ZM50.772 65.4623C44.508 65.4623 38.8321 67.8345 34.6441 71.6803L45.924 29.9397C47.0041 25.9501 48.6001 24.6802 50.784 24.6802C52.9681 24.6802 54.5641 25.9501 55.6441 29.9397L66.912 71.6803C62.724 67.8345 57.036 65.4623 50.772 65.4623Z\"\n fill={color}\n />\n </svg>\n )\n}\n","import React, { FC } from 'react'\nconst AmexCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <defs>\n <linearGradient id=\"cardamex\" x1=\"10.914%\" x2=\"87.432%\" y1=\"86.279%\" y2=\"15.035%\">\n <stop offset=\"0%\" stopColor=\"#3FA9F5\"></stop>\n <stop offset=\"100%\" stopColor=\"#0071BC\"></stop>\n </linearGradient>\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n fill=\"url(#cardamex)\"\n fillRule=\"nonzero\"\n d=\"M22.559 16H1.379C.627 16 0 15.392 0 14.662V1.338C0 .608.627 0 1.379 0H22.62C23.373 0 24 .608 24 1.338v13.324c-.063.73-.627 1.338-1.441 1.338z\"\n ></path>\n <g fill=\"#FFF\">\n <path d=\"M10.115 8.711L8.889 6.044H7.295v3.852L5.517 6.044H4.17l-1.778 4.03h1.103l.368-.889h2.023l.368.89h2.084V7.11l1.349 2.963h.92l1.348-2.904v2.904h.98v-4.03H11.28l-1.165 2.667zm-5.272-.474H4.23l.613-1.422v.06l.613 1.362h-.613z\"></path>\n <path\n fillRule=\"nonzero\"\n d=\"M19.372 7.94l.735-.77 1.042-1.185h-1.287L18.697 7.23l-1.164-1.245h-3.985v3.97h3.923l1.226-1.303 1.165 1.304h1.287L20.107 8.71l-.735-.77zM16.92 9.186h-2.33v-.77h2.268v-.77H14.59v-.712h2.33L18.084 8 16.92 9.185z\"\n ></path>\n </g>\n </g>\n </svg>\n)\n\nexport default AmexCard\n","import React, { FC } from 'react'\nconst VisaCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <g fill=\"none\" fillRule=\"nonzero\">\n <path\n fill=\"#FCFCFC\"\n d=\"M22.684 16H1.38C.627 16 0 15.39 0 14.656V1.344C0 .61.627 0 1.379 0H22.62C23.373 0 24 .61 24 1.344v13.374c0 .671-.564 1.282-1.316 1.282z\"\n ></path>{' '}\n <path\n fill=\"#005098\"\n d=\"M8.889 10.726l.948-5.393h1.482l-.949 5.393zM15.704 5.452a3.658 3.658 0 0 0-1.304-.237c-1.481 0-2.489.71-2.489 1.778 0 .77.711 1.185 1.304 1.481.592.237.77.415.77.652 0 .355-.474.533-.889.533-.592 0-.889-.059-1.363-.296l-.177-.06-.178 1.186c.355.178 1.007.296 1.659.296 1.54 0 2.548-.71 2.548-1.837 0-.592-.415-1.067-1.244-1.481-.534-.237-.83-.415-.83-.652 0-.237.237-.474.83-.474.474 0 .83.118 1.126.178l.118.059.119-1.126M19.496 5.333H18.37c-.355 0-.592.119-.77.474l-2.193 4.919h1.541s.237-.652.296-.83h1.897c.059.178.178.83.178.83h1.362l-1.185-5.393zM17.66 8.77l.593-1.481s.118-.296.178-.533l.118.474s.296 1.303.356 1.54h-1.245zM7.644 5.333L6.222 9.007l-.178-.77C5.748 7.348 4.92 6.459 4.03 5.985l1.303 4.682h1.541l2.311-5.393h-1.54\"\n ></path>\n <path\n fill=\"#F6A500\"\n d=\"M4.919 5.333h-2.37v.119c1.836.474 3.08 1.54 3.555 2.844L5.57 5.807c-.118-.414-.355-.474-.651-.474\"\n ></path>\n <path\n fill=\"#0A5296\"\n d=\"M23.937 3.23H0V1.316C0 .598.627 0 1.379 0H22.62C23.373 0 24 .598 24 1.316V3.23h-.063z\"\n ></path>\n <path\n fill=\"#F4A428\"\n d=\"M.063 13H24v1.8c0 .655-.625 1.2-1.375 1.2H1.375C.625 16 0 15.455 0 14.8V13h.063z\"\n ></path>\n </g>\n </svg>\n)\n\nexport default VisaCard\n","import React, { FC } from 'react'\nconst MasterCard: FC = () => (\n <svg\n width=\"24px\"\n height=\"16px\"\n viewBox=\"0 0 24 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g id=\"Parcours-1C-B\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <g id=\"mobile-1C-Paiement-V1\" transform=\"translate(-269.000000, -313.000000)\">\n <g id=\"mastercard\" transform=\"translate(269.000000, 313.000000)\">\n <rect id=\"Rectangle\" fill=\"#FFFFFF\" x=\"0\" y=\"0\" width=\"24\" height=\"16\" rx=\"1\"></rect>\n <g id=\"Group-6\" transform=\"translate(4.000000, 3.000000)\">\n <circle\n id=\"Oval-4-Copy\"\n fill=\"#EA001B\"\n cx=\"5.05263158\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n ></circle>\n <circle\n id=\"Oval-4\"\n fillOpacity=\"0.25\"\n fill=\"#F79F1A\"\n cx=\"10.9473684\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n ></circle>\n <circle\n id=\"Oval-4-Copy-2\"\n fillOpacity=\"0.9\"\n fill=\"#F79F1A\"\n cx=\"10.9473684\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n ></circle>\n <circle\n id=\"Oval-4-Copy-3\"\n fillOpacity=\"0.3\"\n fill=\"#EA001B\"\n cx=\"5.05263158\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n ></circle>\n </g>\n </g>\n </g>\n </g>\n </svg>\n)\n\nexport default MasterCard\n","import React, { FC } from 'react'\nconst CbCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <defs>\n <linearGradient id=\"cardcb\" x1=\"5.842%\" x2=\"95.393%\" y1=\"81.753%\" y2=\"17.344%\">\n <stop offset=\"0%\" stopColor=\"#39B54A\"></stop>{' '}\n <stop offset=\"100%\" stopColor=\"#0A5296\"></stop>\n </linearGradient>\n </defs>\n <g fill=\"none\" fillRule=\"nonzero\">\n <path\n fill=\"url(#cardcb)\"\n d=\"M22.621 16H1.38C.627 16 0 15.392 0 14.662V1.338C0 .608.627 0 1.379 0H22.62C23.373 0 24 .608 24 1.338v13.324c-.063.73-.627 1.338-1.379 1.338z\"\n ></path>\n <g fill=\"#FFF\">\n <path d=\"M19.094 4.03h-6.437V8h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.066-.98-1.955-2.145-1.955zM19.094 8.593h-6.437v3.97h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.067-.98-1.955-2.145-1.955zM7.017 8.06h4.966c-.245-2.371-2.391-4.267-4.966-4.267-2.758 0-5.027 2.074-5.027 4.681s2.269 4.682 5.027 4.682c2.698 0 4.904-2.015 5.027-4.563H7.017v-.534z\"></path>\n </g>\n </g>\n </svg>\n)\n\nexport default CbCard\n","import React, { FC } from 'react'\nimport { Card } from 'types'\nimport AmexCard from 'assets/cards/amex'\nimport VisaCard from 'assets/cards/visa'\nimport MasterCard from 'assets/cards/mastercard'\nimport CbCard from 'assets/cards/cb'\nimport s from './Cards.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport cx from 'classnames'\n\ntype Props = {\n cards: Card[]\n}\n\nconst Cards: FC<Props> = ({ cards }) => {\n // We transform to a Set and back to avoid duplicate values (ex : amex, amex)\n const uniqueCards = Array.from(new Set(cards))\n\n return (\n <div\n data-testid=\"card-logos\"\n className={cx(s.cardContainer, STATIC_CUSTOMISATION_CLASSES.cardContainer)}\n >\n {uniqueCards.map((card: Card) => (\n <div key={card} className={s.card} data-testid={`card-logo-${card}`}>\n {card === 'cb' && <CbCard />}\n {card === 'amex' && <AmexCard />}\n {card === 'mastercard' && <MasterCard />}\n {card === 'visa' && <VisaCard />}\n </div>\n ))}\n </div>\n )\n}\n\nexport default Cards\n","import React, { FC } from 'react'\nimport { FormattedMessage } from 'react-intl'\n\nimport s from './Info.module.css'\nimport cx from 'classnames'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nconst Info: FC<{ isCurrentPlanP1X: boolean }> = ({ isCurrentPlanP1X }) => (\n // TODO: refactor this component into subcomponent to factorise code and be cleaner\n <div className={cx(s.list, STATIC_CUSTOMISATION_CLASSES.info)} data-testid=\"modal-info-element\">\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>1</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-1\"\n defaultMessage=\"Choisissez <strong>Alma - Payer maintenant</strong> au moment du paiement.\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-1\"\n defaultMessage=\"Choisissez <strong>Alma</strong> au moment du paiement.\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n )}\n </div>\n </div>\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>2</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-2\"\n defaultMessage=\"Renseignez les informations de votre <strong>carte bancaire.</strong>\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-2\"\n defaultMessage=\"Laissez-vous guider et validez votre paiement en <strong>2 minutes.</strong>\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n )}\n </div>\n </div>\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>3</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-3\"\n defaultMessage=\"<strong>La validation </strong> de votre paiement est instantanée !\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-3\"\n defaultMessage=\"<strong>Gardez le contrôle</strong> en avançant ou reculant vos échéances à votre rythme.\"\n values={{ strong: (...chunks: string[]) => <strong>{chunks}</strong> }}\n />\n )}\n </div>\n </div>\n </div>\n)\n\nexport default Info\n","import React, { FC } from 'react'\nimport { FormattedMessage } from 'react-intl'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport cx from 'classnames'\n\nimport s from './Title.module.css'\n\nconst Title: FC<{ isSomePlanDeferred: boolean, isCurrentPlanP1X:boolean }> = ({ isSomePlanDeferred, isCurrentPlanP1X }) => (\n <div\n className={cx(s.title, STATIC_CUSTOMISATION_CLASSES.title)}\n data-testid=\"modal-title-element\"\n >\n {isSomePlanDeferred ? (\n <FormattedMessage\n id=\"eligibility-modal.title-deferred-plan\"\n defaultMessage=\"Payez en plusieurs fois ou plus tard par carte bancaire avec Alma.\"\n />\n ) : isCurrentPlanP1X ? (<FormattedMessage\n id=\"eligibility-modal.title-pay-now\"\n defaultMessage=\"Payez comptant par carte bancaire avec Alma.\"\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.title-normal\"\n defaultMessage=\"Payez en plusieurs fois par carte bancaire avec Alma.\"\n />\n )}\n </div>\n)\n\nexport default Title\n","import { AlmaLogo } from 'assets/almaLogo'\nimport cx from 'classnames'\nimport React, { FC } from 'react'\nimport { Card } from 'types'\nimport STATIC_CUSTOMISATION_CLASSES from '../classNames.const'\nimport Cards from '../components/Cards'\nimport Info from '../components/Info'\nimport Title from '../components/Title'\nimport s from './DesktopModal.module.css'\n\ntype Props = {\n isCurrentPlanP1X: boolean\n isSomePlanDeferred: boolean\n cards?: Card[]\n}\nconst DesktopModal: FC<Props> = ({ children, isSomePlanDeferred, cards, isCurrentPlanP1X }) => (\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.desktopModal)}\n data-testid=\"modal-container\"\n >\n <aside className={cx([s.block, s.left, STATIC_CUSTOMISATION_CLASSES.leftSide])}>\n <Title isSomePlanDeferred={isSomePlanDeferred} isCurrentPlanP1X={isCurrentPlanP1X}/>\n <Info isCurrentPlanP1X={isCurrentPlanP1X} />\n {cards && <Cards cards={cards} />}\n <AlmaLogo className={s.logo} width=\"75\" />\n </aside>\n <div className={cx(s.block, STATIC_CUSTOMISATION_CLASSES.rightSide)}>{children}</div>\n </div>\n)\n\nexport default DesktopModal\n","import React, { FC } from 'react'\nimport { Card } from 'types'\nimport STATIC_CUSTOMISATION_CLASSES from '../classNames.const'\nimport Cards from '../components/Cards'\nimport Info from '../components/Info'\nimport Title from '../components/Title'\nimport s from './MobileModal.module.css'\nimport cx from 'classnames'\nimport { AlmaLogo } from 'assets/almaLogo'\n\ntype Props = {\n isCurrentPlanP1X: boolean\n isSomePlanDeferred: boolean\n cards?: Card[]\n}\nconst MobileModal: FC<Props> = ({ children, isSomePlanDeferred, cards, isCurrentPlanP1X }) => (\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.mobileModal)}\n data-testid=\"modal-container\"\n >\n <Title isSomePlanDeferred={isSomePlanDeferred} isCurrentPlanP1X={isCurrentPlanP1X} />\n {children}\n <Info isCurrentPlanP1X={isCurrentPlanP1X} />\n {cards && <Cards cards={cards} />}\n <AlmaLogo className={s.logo} width=\"75\" />\n </div>\n)\n\nexport default MobileModal\n","import TotalBlock from 'components/Installments/TotalBlock'\nimport { LoadingIndicator } from 'components/LoadingIndicator/LoadingIndicator'\nimport Modal from 'components/Modal'\nimport React, { FunctionComponent, useState } from 'react'\nimport { FormattedMessage } from 'react-intl'\nimport { useMediaQuery } from 'react-responsive'\nimport { statusResponse, Card, EligibilityPlan } from 'types'\nimport { desktopWidth, isP1X } from 'utils'\nimport EligibilityPlansButtons from './components/EligibilityPlansButtons'\nimport Schedule from './components/Schedule'\nimport DesktopModal from './DesktopModal'\nimport s from './EligibilityModal.module.css'\nimport MobileModal from './MobileModal'\n\ntype Props = {\n initialPlanIndex?: number\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n eligibilityPlans: EligibilityPlan[]\n status: statusResponse\n cards?: Card[]\n}\n\nconst EligibilityModal: FunctionComponent<Props> = ({\n initialPlanIndex,\n onClose,\n eligibilityPlans,\n status,\n cards,\n}) => {\n const [currentPlanIndex, setCurrentPlanIndex] = useState(initialPlanIndex || 0)\n const isBigScreen = useMediaQuery({ minWidth: desktopWidth })\n const ModalComponent = isBigScreen ? DesktopModal : MobileModal\n const eligiblePlans = eligibilityPlans.filter((plan) => plan.eligible)\n const currentPlan = eligiblePlans[currentPlanIndex]\n\n const isSomePlanDeferred = eligibilityPlans.some(\n (plan) => plan.deferred_days > 0 || plan.deferred_months > 0,\n )\n\n return (\n <Modal onClose={onClose} ariaHideApp={false} scrollable isOpen>\n <ModalComponent\n isSomePlanDeferred={isSomePlanDeferred}\n cards={cards}\n isCurrentPlanP1X={isP1X(currentPlan)}\n >\n {status === statusResponse.PENDING && (\n <div className={s.loader}>\n <LoadingIndicator />\n </div>\n )}\n {status === statusResponse.SUCCESS && eligiblePlans.length === 0 && (\n <div className={s.noEligibility}>\n <FormattedMessage\n id=\"eligibility-modal.no-eligibility\"\n defaultMessage=\"Oups, il semblerait que la simulation n'ait pas fonctionné.\"\n />\n </div>\n )}\n {status === statusResponse.SUCCESS && eligiblePlans.length >= 1 && (\n <>\n <EligibilityPlansButtons\n eligibilityPlans={eligiblePlans}\n currentPlanIndex={currentPlanIndex}\n setCurrentPlanIndex={setCurrentPlanIndex}\n />\n <div className={s.scheduleArea}>\n <div className={s.verticalLine} />\n <Schedule currentPlan={currentPlan} />\n <TotalBlock currentPlan={currentPlan} />\n </div>\n </>\n )}\n </ModalComponent>\n </Modal>\n )\n}\nexport default EligibilityModal\n","import useFetchEligibility from 'hooks/useFetchEligibility'\nimport React from 'react'\nimport { ApiConfig, Card, ConfigPlan } from 'types'\nimport EligibilityModal from '.'\n\ntype Props = {\n purchaseAmount: number\n apiData: ApiConfig\n configPlans?: ConfigPlan[]\n customerBillingCountry?: string\n customerShippingCountry?: string\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n cards?: Card[]\n}\n\n/**\n * This component allows to display only the modal, without PaymentPlans.\n */\nconst ModalContainer: React.FC<Props> = ({\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n onClose,\n cards,\n}) => {\n const [eligibilityPlans, status] = useFetchEligibility(\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n )\n\n return (\n <EligibilityModal\n initialPlanIndex={0}\n onClose={onClose}\n eligibilityPlans={eligibilityPlans}\n status={status}\n cards={cards}\n />\n )\n}\n\nexport default ModalContainer\n","import React, { VoidFunctionComponent } from 'react'\nimport s from './Loader.module.css'\nimport cx from 'classnames'\n\nconst Loader: VoidFunctionComponent<{ className?: string }> = ({ className }) => {\n return (\n <div className={cx(s.loadingIndicator, className)} data-testid=\"loader\">\n <div className={s.line1} />\n <div className={s.line2} />\n </div>\n )\n}\n\nexport default Loader\n","/**\n * Prefix classes to avoid name collisions.\n */\nconst prefix = 'alma-payment-plans'\n\n/**\n * Class names for the **payment plans** widget.\n * Those classes are intended to be used by the **merchant developer**.\n */\nconst STATIC_CUSTOMISATION_CLASSES = {\n container: prefix + '-container',\n eligibilityLine: prefix + '-eligibility-line',\n eligibilityOptions: prefix + '-eligibility-options',\n notEligibleOption: prefix + '-not-eligible-option',\n paymentInfo: prefix + '-payment-info',\n activeOption: prefix + '-active-option',\n}\n\nexport default STATIC_CUSTOMISATION_CLASSES\n","import { AlmaLogo } from 'assets/almaLogo'\nimport cx from 'classnames'\nimport Loader from 'components/Loader'\nimport useButtonAnimation from 'hooks/useButtonAnimation'\nimport useFetchEligibility from 'hooks/useFetchEligibility'\nimport React, { MouseEvent, useEffect, useState, VoidFunctionComponent } from 'react'\nimport { ApiConfig, statusResponse, Card, ConfigPlan } from 'types'\nimport { getIndexOfActivePlan } from 'utils/merchantOrderPreferences'\nimport { paymentPlanInfoText, paymentPlanShorthandName } from 'utils/paymentPlanStrings'\nimport EligibilityModal from 'Widgets/EligibilityModal'\nimport STATIC_CUSTOMISATION_CLASSES from './classNames.const'\nimport s from './PaymentPlans.module.css'\n\ntype Props = {\n purchaseAmount: number\n apiData: ApiConfig\n configPlans?: ConfigPlan[]\n transitionDelay?: number\n customerBillingCountry?: string\n customerShippingCountry?: string\n hideIfNotEligible?: boolean\n monochrome?: boolean\n suggestedPaymentPlan?: number | number[]\n cards?: Card[]\n hideBorder?: boolean\n onModalClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nconst VERY_LONG_TIME_IN_MS = 1000 * 3600\nconst DEFAULT_TRANSITION_TIME = 5500\n\nconst PaymentPlanWidget: VoidFunctionComponent<Props> = ({\n apiData,\n configPlans,\n hideIfNotEligible,\n monochrome,\n purchaseAmount,\n suggestedPaymentPlan,\n cards,\n customerBillingCountry,\n customerShippingCountry,\n transitionDelay,\n hideBorder = false,\n onModalClose,\n}) => {\n const [eligibilityPlans, status] = useFetchEligibility(\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n )\n const eligiblePlans = eligibilityPlans.filter((plan) => plan.eligible)\n const activePlanIndex = getIndexOfActivePlan({\n eligibilityPlans,\n suggestedPaymentPlan: suggestedPaymentPlan ?? 0,\n })\n const isSuggestedPaymentPlanSpecified = suggestedPaymentPlan !== undefined // 👈 The merchant decided to focus a tab\n const isTransitionSpecified = transitionDelay !== undefined // 👈 The merchant has specified a transition time\n const [isOpen, setIsOpen] = useState(false)\n const openModal = () => setIsOpen(true)\n const closeModal = (event: React.MouseEvent | React.KeyboardEvent) => {\n setIsOpen(false)\n onModalClose && onModalClose(event)\n }\n\n const eligiblePlanKeys = eligibilityPlans.reduce<number[]>(\n (acc, plan, index) => (plan.eligible ? [...acc, index] : acc),\n [],\n )\n\n /**\n * If merchand specify a suggestedPaymentPlan and no transition, we set a very long transition delay.\n * Otherwise, we set the transition delay specified by the merchant.\n * If none of those properties are specified, we set a default transition delay.\n * @returns\n */\n const realTransitionTime = () => {\n if (isTransitionSpecified) {\n return transitionDelay ?? DEFAULT_TRANSITION_TIME\n }\n if (isSuggestedPaymentPlanSpecified) {\n return VERY_LONG_TIME_IN_MS\n }\n return DEFAULT_TRANSITION_TIME\n }\n\n const { current, onHover, onLeave } = useButtonAnimation(eligiblePlanKeys, realTransitionTime())\n\n useEffect(() => {\n // When API has given a response AND the marchand set an active plan by default.\n if (status === statusResponse.SUCCESS && isSuggestedPaymentPlanSpecified) {\n onHover(activePlanIndex) // We select the first active plan possible\n onLeave() // We need to call onLeave to reset the animation\n }\n }, [status])\n\n /**\n * It takes a plan index and returns the index of that plan within the eligible plans\n *\n * @param {number} planIndex - The index of the plan that the user has selected.\n * @returns The index of the planKey in the eligiblePlanKeys array.\n */\n const getIndexWithinEligiblePlans = (planIndex: number) => {\n const index = eligiblePlanKeys.findIndex((planKey) => planKey === planIndex)\n return index === -1 ? 0 : index\n }\n\n if (status === statusResponse.PENDING) {\n return (\n <div className={cx(s.widgetButton, s.pending)}>\n <Loader />\n </div>\n )\n }\n\n if (\n (hideIfNotEligible && eligiblePlans.length === 0) ||\n eligibilityPlans.length === 0 ||\n status === statusResponse.FAILED\n ) {\n return null\n }\n\n const handleOpenModal = (e: MouseEvent<HTMLDivElement>) => {\n e.preventDefault()\n if (eligiblePlans.length > 0) {\n openModal()\n }\n }\n\n return (\n <>\n <div\n onClick={handleOpenModal}\n className={cx(\n s.widgetButton,\n {\n [s.clickable]: eligiblePlans.length > 0,\n [s.unClickable]: eligiblePlans.length === 0,\n [s.hideBorder]: hideBorder,\n },\n STATIC_CUSTOMISATION_CLASSES.container,\n )}\n data-testid=\"widget-button\"\n >\n <div className={cx(s.primaryContainer, STATIC_CUSTOMISATION_CLASSES.eligibilityLine)}>\n <AlmaLogo className={s.logo} color={monochrome ? 'var(--off-black)' : undefined} />\n <div className={cx(s.paymentPlans, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)}>\n {eligibilityPlans.map((eligibilityPlan, key) => {\n const isCurrent = key === current\n return (\n <div\n key={key}\n onMouseEnter={() => onHover(key)}\n onTouchStart={() => onHover(key)}\n onMouseOut={onLeave}\n onTouchEnd={onLeave}\n className={cx(s.plan, {\n [cx(s.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: isCurrent,\n [s.monochrome]: monochrome && isCurrent,\n [cx(s.notEligible, STATIC_CUSTOMISATION_CLASSES.notEligibleOption)]:\n !eligibilityPlan.eligible,\n })}\n >\n {paymentPlanShorthandName(eligibilityPlan)}\n </div>\n )\n })}\n </div>\n </div>\n <div\n className={cx(\n s.info,\n {\n [cx(s.notEligible, STATIC_CUSTOMISATION_CLASSES.notEligibleOption)]:\n eligibilityPlans[current] && !eligibilityPlans[current].eligible,\n },\n STATIC_CUSTOMISATION_CLASSES.paymentInfo,\n )}\n >\n {eligibilityPlans.length !== 0 && paymentPlanInfoText(eligibilityPlans[current])}\n </div>\n </div>\n {isOpen && (\n <EligibilityModal\n initialPlanIndex={getIndexWithinEligiblePlans(current)}\n onClose={closeModal}\n eligibilityPlans={eligiblePlans}\n status={status}\n cards={cards}\n />\n )}\n </>\n )\n}\n\nexport default PaymentPlanWidget\n","import { EligibilityPlan } from 'types'\n\ntype Args = {\n suggestedPaymentPlan: number | number[]\n eligibilityPlans: EligibilityPlan[]\n}\n\n/**\n * It returns the **index** of the **first eligible plan** that matches the default installments count\n *\n * @param {number | number[]} suggestedPaymentPlan\n * @param {EligibilityPlan[]} eligibilityPlans\n * @returns number (index of the first eligible plan that matches the default installments count)\n */\nexport const getIndexOfActivePlan = ({ suggestedPaymentPlan, eligibilityPlans }: Args): number => {\n const suggestedPaymentPlanArray = Array.isArray(suggestedPaymentPlan)\n ? suggestedPaymentPlan\n : [suggestedPaymentPlan]\n\n for (const index in suggestedPaymentPlanArray) {\n const installmentsCount = suggestedPaymentPlanArray[index]\n\n const planFound = eligibilityPlans.findIndex((plan) => {\n return (\n plan.installments_count === installmentsCount &&\n plan.eligible &&\n // Remove the PayLater plans from the plan to target, we will code a better solution later\n // To differentiate P1X from PayLater while using the `suggestedPaymentPlan` property.\n !plan.deferred_days &&\n !plan.deferred_months\n )\n })\n\n if (planFound !== -1) {\n return planFound\n }\n }\n\n return 0\n}\n","import { useEffect, useState } from 'react'\n\ntype Props = {\n current: number\n onHover: (current: number) => void\n onLeave: () => void\n}\nconst useButtonAnimation = (iterateValues: number[], transitionDelay: number): Props => {\n const [current, setCurrent] = useState(0)\n const [update, setUpdate] = useState(true)\n\n useEffect(() => {\n let timeout: ReturnType<typeof setTimeout>\n let isMounted = true\n\n if (transitionDelay === -1) {\n return\n }\n\n if (iterateValues.length !== 0) {\n if (!iterateValues.includes(current) && update) setCurrent(iterateValues[0])\n timeout = setTimeout(() => {\n if (update && isMounted) {\n setCurrent(\n iterateValues[\n iterateValues.includes(current)\n ? (iterateValues.indexOf(current) + 1) % iterateValues.length\n : 0\n ],\n )\n }\n }, transitionDelay)\n }\n return () => {\n isMounted = false\n clearTimeout(timeout)\n }\n }, [iterateValues, current])\n\n return {\n current,\n onHover: (current: number) => {\n setCurrent(current)\n setUpdate(false)\n },\n onLeave: () => {\n setUpdate(true)\n },\n }\n}\nexport default useButtonAnimation\n","import { ApiMode } from 'consts'\nimport IntlProvider from 'intl/IntlProvider'\nimport React from 'react'\nimport { render, unmountComponentAtNode } from 'react-dom'\nimport {\n Locale,\n ModalOptions,\n PaymentPlanWidgetOptions,\n WidgetNames,\n WidgetOptions,\n widgetTypes,\n} from 'types'\nimport ModalContainer from 'Widgets/EligibilityModal/ModalContainer'\nimport PaymentPlanWidget from 'Widgets/PaymentPlans'\n\nexport type AddReturnType =\n | {\n open: () => void\n close: (event: React.MouseEvent | React.KeyboardEvent) => void\n }\n | undefined\n\nexport class WidgetsController {\n constructor(private readonly apiData: { domain: ApiMode; merchantId: string }) {}\n\n add(widget: WidgetNames, options: WidgetOptions): AddReturnType {\n const containerDiv = document.querySelector(options.container)\n\n if (containerDiv) {\n unmountComponentAtNode(containerDiv)\n }\n\n if (widget === widgetTypes.PaymentPlans) {\n const {\n container,\n purchaseAmount,\n plans,\n transitionDelay,\n hideIfNotEligible,\n hideBorder = false,\n monochrome = true,\n suggestedPaymentPlan,\n customerBillingCountry,\n customerShippingCountry,\n locale = Locale.en,\n cards,\n onModalClose,\n } = options as PaymentPlanWidgetOptions\n\n if (containerDiv) {\n render(\n <IntlProvider locale={locale}>\n <PaymentPlanWidget\n apiData={this.apiData}\n configPlans={plans}\n hideIfNotEligible={hideIfNotEligible}\n monochrome={monochrome}\n purchaseAmount={purchaseAmount}\n suggestedPaymentPlan={suggestedPaymentPlan}\n cards={cards}\n customerBillingCountry={customerBillingCountry}\n customerShippingCountry={customerShippingCountry}\n transitionDelay={transitionDelay}\n hideBorder={hideBorder}\n onModalClose={onModalClose}\n />\n </IntlProvider>,\n document.querySelector(container),\n )\n }\n }\n\n if (widget === widgetTypes.Modal) {\n const {\n container,\n clickableSelector,\n purchaseAmount,\n plans,\n locale = Locale.en,\n customerBillingCountry,\n customerShippingCountry,\n cards,\n onClose,\n } = options as ModalOptions\n\n const close = (event: React.MouseEvent | React.KeyboardEvent) => {\n if (!containerDiv) return\n unmountComponentAtNode(containerDiv)\n onClose && onClose(event)\n }\n const renderModal = () => {\n render(\n <IntlProvider locale={locale}>\n <ModalContainer\n purchaseAmount={purchaseAmount}\n apiData={this.apiData}\n configPlans={plans}\n customerBillingCountry={customerBillingCountry}\n customerShippingCountry={customerShippingCountry}\n onClose={close}\n cards={cards}\n />\n </IntlProvider>,\n document.querySelector(container),\n )\n }\n\n // if clickableSelector is provided, add an onClick event handler to open the Modal.\n if (clickableSelector) {\n document.querySelector(clickableSelector)?.addEventListener('click', renderModal, false)\n }\n\n return {\n open: renderModal,\n close,\n }\n }\n }\n}\n"],"names":["exec","error","fails","test","bind","hasOwnProperty","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","NATIVE_BIND","fn","apply","arguments","ceil","Math","floor","trunc","x","n","argument","number","match","version","check","it","globalThis","window","self","global","this","defineProperty","Object","key","value","configurable","writable","store","module","defineGlobalProperty","versions","push","mode","copyright","license","source","$TypeError","TypeError","isNullOrUndefined","$Object","requireObjectCoercible","uncurryThis","hasOwn","toObject","id","postfix","random","toString","undefined","navigator","String","userAgent","process","Deno","v8","split","$String","getOwnPropertySymbols","symbol","Symbol","sham","V8_VERSION","NATIVE_SYMBOL","iterator","WellKnownSymbolsStore","shared","createWellKnownSymbol","USE_SYMBOL_AS_UID","withoutSetter","uid","name","wellKnownSymbol","set","get","has","documentAll","document","all","stringSlice","slice","TO_STRING_TAG","CORRECT_ARGUMENTS","classofRaw","TO_STRING_TAG_SUPPORT","O","tag","result","tryGet","isCallable","callee","classof","charAt","charCodeAt","createMethod","CONVERT_TO_STRING","$this","pos","first","second","S","position","toIntegerOrInfinity","size","length","codeAt","WeakMap","EXISTS","isObject","createElement","DESCRIPTORS","a","aFunction","namespace","method","isPrototypeOf","$Symbol","getBuiltIn","tryToString","V","P","func","aCallable","TO_PRIMITIVE","input","pref","isSymbol","exoticToPrim","getMethod","val","valueOf","ordinaryToPrimitive","toPrimitive","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","V8_PROTOTYPE_DEFINE_BUG","Attributes","anObject","toPropertyKey","current","enumerable","IE8_DOM_DEFINE","bitmap","object","definePropertyModule","f","createPropertyDescriptor","keys","NATIVE_WEAK_MAP","state","metadata","facade","STATE","sharedKey","hiddenKeys","createNonEnumerableProperty","enforce","getterFor","TYPE","type","$propertyIsEnumerable","propertyIsEnumerable","1","descriptor","IndexedObject","toIndexedObject","propertyIsEnumerableModule","getDescriptor","PROPER","CONFIGURABLE","functionToString","inspectSource","activeXDocument","CONFIGURABLE_FUNCTION_NAME","require$$0","enforceInternalState","InternalStateModule","getInternalState","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","options","getter","setter","arity","constructor","simple","unsafe","nonConfigurable","nonWritable","max","min","obj","len","IS_INCLUDES","el","fromIndex","lengthOfArrayLike","index","integer","toAbsoluteIndex","indexOf","names","i","enumBugKeys","concat","getOwnPropertyNames","internalObjectKeys","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","target","exceptions","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","copyConstructorProperties","defineBuiltIn","defineProperties","Properties","props","objectKeys","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","domain","documentCreateElement","style","display","html","appendChild","src","contentWindow","open","F","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","create","definePropertiesModule","getPrototypeOf","ObjectPrototype","CORRECT_PROTOTYPE_GETTER","ITERATOR","BUGGY_SAFARI_ITERATORS","TAG","returnThis","setPrototypeOf","CORRECT_SETTER","uncurryThisAccessor","Array","proto","isPossiblePrototype","aPossiblePrototype","__proto__","IteratorsCore","done","setInternalState","Iterable","NAME","IteratorConstructor","next","DEFAULT","IS_SET","FORCED","ENUMERABLE_NEXT","point","createIterResultObject","setToStringTag","Iterators","createIteratorConstructor","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","nativeIterator","values","entries","$","iterated","that","ENTRIES","kind","innerResult","iteratorClose","ArrayPrototype","noop","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","called","usingIterator","iteratorMethod","getIteratorMethod","$Array","SAFE_CLOSING","iteratorWithReturn","return","from","widgetTypes","statusResponse","Locale","INCORRECT_ITERATION","SKIP_CLOSING","ITERATION_SUPPORT","checkCorrectnessOfIteration","priceFromCents","cents","Number","toFixed","arrayLike","IS_CONSTRUCTOR","isConstructor","argumentsLength","mapfn","mapping","step","isArrayIteratorMethod","createProperty","getIterator","callWithSafeIterationClosing","ElementProto","isP1X","plan","installments_count","deferred_days","deferred_months","Element","matches","msMatchesSelector","mozMatchesSelector","webkitMatchesSelector","selector","elements","ownerDocument","querySelectorAll","Boolean","closest","element","nodeType","parentNode","trim","DOMException","reason","message","Error","DOMTokenListProto","testClass","wsRE","wsIndex","checkIfValidClassListEntry","search","DOMTokenList","hasOwnProp","allowTokenListConstruction","skipPropChange","whenPropChanges","evt","event","prop","propertyName","srcElement","protoObjProto","strval","tokens","resTokenList","oldLen","cI","cLen","sub","innerI","classList","className","polyfillClassList","ele","detachEvent","protoObj","toks","newVal","writeable","attachEvent","toLocaleString","add","v","argLen","Len","resStr","remove","is","e","documentElement","firstChild","styleSheet","cssText","item","NullCheck","toggle","oldValue","oldToken","newToken","contains","forEach","tArg","propIsEnumerable","assign","test1","test2","fromCharCode","map","test3","letter","err","shouldUseNative","symbols","to","s","p","exports","q","r","t","u","for","w","z","b","c","encodeURIComponent","A","isMounted","enqueueForceUpdate","enqueueReplaceState","enqueueSetState","B","C","context","refs","updater","D","E","isReactComponent","setState","forceUpdate","l","isPureReactComponent","G","H","I","ref","__self","__source","J","d","k","h","g","children","m","defaultProps","$$typeof","_owner","L","M","N","=",":","escape","isArray","K","y","Q","_status","_result","then","default","R","T","ReactCurrentDispatcher","ReactCurrentBatchConfig","transition","ReactCurrentOwner","IsSomeRendererActing","count","toArray","only","_calculateChangedBits","_currentValue","_currentValue2","_threadCount","Provider","Consumer","_context","render","_payload","_init","compare","useCallback","useContext","useEffect","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useRef","useState","extendStatics","__extends","__","__assign","__rest","__spreadArray","pack","ar","SuppressedError","ErrorKind","SKELETON_TYPE","invariant","condition","Err","isLiteralElement","literal","isArgumentElement","isNumberElement","isDateElement","date","isTimeElement","time","isSelectElement","select","isPluralElement","plural","isPoundElement","pound","isTagElement","isNumberSkeleton","isDateTimeSkeleton","dateTime","SPACE_SEPARATOR_REGEX","DATE_TIME_REGEX","parseDateTimeSkeleton","skeleton","era","year","RangeError","month","day","weekday","hour12","hourCycle","hour","minute","timeZoneName","WHITE_SPACE_REGEX","FRACTION_PRECISION_REGEX","SIGNIFICANT_PRECISION_REGEX","INTEGER_WIDTH_REGEX","CONCISE_INTEGER_WIDTH_REGEX","parseSignificantPrecision","str","roundingPriority","_","g1","g2","minimumSignificantDigits","maximumSignificantDigits","parseSign","signDisplay","currencySign","parseConciseScientificAndEngineeringStem","stem","notation","minimumIntegerDigits","parseNotationOptions","opt","parseNumberSkeleton","_i","tokens_1","token","scale","currency","useGrouping","maximumFractionDigits","unit","compactDisplay","reduce","currencyDisplay","unitDisplay","parseFloat","g3","g4","g5","minimumFractionDigits","trailingZeroDisplay","signOpts","conciseScientificAndEngineeringOpts","_a","timeData","AX","BQ","CP","CZ","DK","FI","ID","IS","ML","NE","RU","SE","SJ","SK","AS","BT","DJ","ER","GH","IN","LS","PG","PW","SO","TO","VU","WS","001","AL","TD","ca-ES","CF","CM","fr-CA","gl-ES","it-CH","it-IT","LU","NP","PF","SC","SM","SN","TF","VA","CY","GR","CO","DO","KP","KR","NA","PA","PR","VE","AC","AI","BW","BZ","CC","CK","CX","DG","FK","GB","GG","GI","IE","IM","IO","JE","MK","MN","MS","NF","NG","NR","NU","PN","SH","SX","TA","ZA","af-ZA","AR","CL","CR","CU","EA","es-BO","es-BR","es-EC","es-ES","es-GQ","es-PE","GT","HN","IC","KG","KM","LK","MA","MX","NI","PY","SV","UY","JP","AD","AM","AO","AT","AW","BE","BF","BJ","BL","BR","CG","CI","CV","DE","EE","FR","GA","GF","GN","GP","GW","HR","IL","IT","KZ","MC","MD","MF","MQ","MZ","NC","NL","PM","PT","RE","RO","SI","SR","ST","TG","TR","WF","YT","BD","PK","AZ","BA","BG","CH","GE","LI","ME","RS","UA","UZ","XK","AG","AU","BB","BM","BS","CA","DM","en-001","FJ","FM","GD","GM","GU","GY","JM","KI","KN","KY","LC","LR","MH","MP","MW","NZ","SB","SG","SL","SS","SZ","TC","TT","UM","US","VC","VG","VI","ZM","BO","EC","ES","GQ","PE","AE","ar-001","BH","DZ","EG","EH","HK","IQ","JO","KW","LB","LY","MO","MR","OM","PH","PS","QA","SA","SD","SY","TN","YE","AF","LA","CN","LV","TL","zu-ZA","CD","IR","hi-IN","kn-IN","ml-IN","te-IN","KH","ta-IN","BN","MY","ET","gu-IN","mr-IN","pa-IN","TW","KE","MM","TZ","UG","getDefaultHourSymbolFromLocale","locale","hourCycles","regionTag","languageTag","language","maximize","region","SPACE_SEPARATOR_START_REGEX","RegExp","SPACE_SEPARATOR_END_REGEX","createLocation","start","end","hasNativeStartsWith","startsWith","hasNativeFromCodePoint","fromCodePoint","hasNativeFromEntries","fromEntries","hasNativeCodePointAt","codePointAt","hasTrimStart","trimStart","hasTrimEnd","trimEnd","isSafeInteger","isFinite","abs","REGEX_SUPPORTS_U_AND_Y","matchIdentifierAtIndex","codePoints","code","entries_1","flag","IDENTIFIER_PREFIX_RE_1","lastIndex","_isWhiteSpace","_isPatternSyntax","Parser","offset","line","column","ignoreTag","requiresOtherClause","shouldParseSkeletons","parse","parseMessage","nestingLevel","parentArgType","expectingCloseTag","isEOF","char","parseArgument","peek","UNMATCHED_CLOSING_TAG","clonePosition","_isAlpha","parseTag","parseLiteral","bump","location","startPosition","tagName","parseTagName","bumpSpace","bumpIf","childrenResult","endTagStartPosition","INVALID_TAG","closingTagNameStartPosition","UNCLOSED_TAG","startOffset","_isPotentialElementNameChar","parseQuoteResult","tryParseQuote","parseUnquotedResult","tryParseUnquoted","parseLeftAngleResult","tryParseLeftAngleBracket","codepoint","ch","openingBracePosition","EXPECT_ARGUMENT_CLOSING_BRACE","EMPTY_ARGUMENT","parseIdentifierIfPossible","MALFORMED_ARGUMENT","parseArgumentOptions","startingPosition","bumpTo","typeStartPosition","argType","typeEndPosition","EXPECT_ARGUMENT_TYPE","styleAndLocation","styleStartPosition","parseSimpleArgStyleIfPossible","EXPECT_ARGUMENT_STYLE","styleLocation","argCloseResult","tryParseArgumentClose","location_1","parseNumberSkeletonFromString","EXPECT_DATE_TIME_SKELETON","dateTimePattern","skeletonCopy","patternPos","patternChar","extraLength","hourLen","dayPeriodLen","hourChar","getBestPattern","pattern","parsedOptions","typeEndPosition_1","EXPECT_SELECT_ARGUMENT_OPTIONS","identifierAndLocation","pluralOffset","EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE","tryParseDecimalInteger","INVALID_PLURAL_ARGUMENT_OFFSET_VALUE","optionsResult","tryParsePluralOrSelectOptions","location_2","pluralType","INVALID_ARGUMENT_TYPE","nestedBraces","apostrophePosition","bumpUntil","UNCLOSED_QUOTE_IN_ARGUMENT_STYLE","stringTokens_1","filter","stemAndOptions","options_1","INVALID_NUMBER_SKELETON","expectCloseTag","parsedFirstIdentifier","hasOtherClause","parsedSelectors","Set","selectorLocation","EXPECT_PLURAL_ARGUMENT_SELECTOR","INVALID_PLURAL_ARGUMENT_SELECTOR","DUPLICATE_SELECT_ARGUMENT_SELECTOR","DUPLICATE_PLURAL_ARGUMENT_SELECTOR","EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT","EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT","fragmentResult","EXPECT_SELECT_ARGUMENT_SELECTOR","MISSING_OTHER_CLAUSE","expectNumberError","invalidNumberError","sign","hasDigits","decimal","prefix","currentOffset","targetOffset","nextCode","opts","SyntaxError","originalMessage","captureLocation","pruneLocation","els","memoize","strategy","strategyDefault","cache","cacheDefault","serializer","serializerDefault","monadic","arg","cacheKey","computedValue","variadic","args","assemble","serialize","JSON","stringify","ObjectWithoutPrototypeCache","ErrorCode","strategies","PART_TYPE","FormatError","_super","msg","_this","InvalidValueError","variableId","INVALID_VALUE","InvalidValueTypeError","MissingValueError","MISSING_VALUE","isFormatXMLElementFn","createFastMemoizeCache","IntlErrorCode","IntlMessageFormat","locales","overrideFormats","defaultConfig","configs","defaultLocale","formatterCache","pluralRules","format","parts","formatToParts","part","formatters","formats","currentPluralValue","els_1","getNumberFormat","varName","getDateTimeFormat","medium","value_1","formatFn","chunks","other","Intl","PluralRules","MISSING_INTL_API","rule","getPluralRules","lastPart","ast","resolvedOptions","resolvedLocale","getAst","resolveLocale","__parse","c1","c2","NumberFormat","DateTimeFormat","memoizedDefaultLocale","supportedLocales","supportedLocalesOf","percent","short","long","full","IntlError","exception","stack","captureStackTrace","UnsupportedFormatterError","UNSUPPORTED_FORMATTER","InvalidConfigError","INVALID_CONFIG","MissingDataError","MISSING_DATA","IntlFormatError","FORMAT_ERROR","MessageFormatError","defaultMessage","description","MissingTranslationError","MISSING_TRANSLATION","filterProps","allowlist","defaults","filtered","DEFAULT_INTL_CONFIG","messages","timeZone","defaultFormats","fallbackOnEmptyString","onError","onWarn","warning","getNamedFormat","formatType","setTimeZoneInOptions","deepMergeOptions","opts1","opts2","deepMergeFormatsAndSetTimeZone","f1","mfFormats","formatMessage","messageDescriptor","defaultRichTextElements","msgId","getMessageFormat","DATE_TIME_FORMAT_OPTIONS","getFormatter","filteredOptions","timeStyle","dateStyle","formatDate","config","_b","Date","formatTime","formatDateTimeRange","formatRange","formatDateToParts","formatTimeToParts","DISPLAY_NAMES_OPTONS","formatDisplayName","getDisplayNames","DisplayNames","of","LIST_FORMAT_OPTIONS","now","formatList","getListFormat","results","formatListToParts","ListFormat","richValues_1","serializedValues","generateToken","PLURAL_FORMAT_OPTIONS","formatPlural","RELATIVE_TIME_FORMAT_OPTIONS","formatRelativeTime","getRelativeTimeFormat","RelativeTimeFormat","NUMBER_FORMAT_OPTIONS","formatNumber","formatNumberToParts","invariantIntlContext","intl","CORE_DEFAULT_INTL_CONFIG","textComponent","React","shallowEqual","objA","objB","aKeys","bKeys","DisplayName","DisplayNameParts","IntlContext","Context","useIntl","createFormattedComponent","Component","formatProps","formattedValue","displayName","processIntlConfig","wrapRichTextChunksInFragment","assignUniqueKeysToFormatXMLElementFnArgument","acc","formatXMLElementFn","rawValues","rest","coreFormatMessage","createIntl","rawDefaultRichTextElements","coreIntl","relativeTime","list","displayNames","createFormatters","resolvedConfig","verifyConfigMessages","$t","coreCreateIntl","IntlProvider","prevConfig","getDerivedStateFromProps","FormattedMessage","nodes","MemoizedFormattedMessage","prevProps","nextProps","otherProps","nextValues","nextOtherProps","FormattedDate","FormattedNumber","getTranslationsByLocale","fr","messagesFR","es","messagesES","messagesIT","de","messagesDE","pt","messagesPT","nl","messagesNL","en","messagesEN","_ref","performance","MessageChannel","unstable_now","setTimeout","clearTimeout","console","cancelAnimationFrame","requestAnimationFrame","port2","port1","onmessage","postMessage","pop","sortIndex","callback","startTime","expirationTime","U","unstable_shouldYield","priorityLevel","W","delay","aa","ba","ca","da","ea","fa","ha","ia","ja","ka","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","sanitizeURL","removeEmptyString","oa","pa","toUpperCase","qa","ma","isNaN","na","la","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ra","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","sa","ta","ua","wa","xa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ma","Ka","La","Na","Oa","Pa","prepareStackTrace","Reflect","Qa","_render","Ra","Sa","Ta","nodeName","Va","_valueTracker","getValue","setValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","controlled","$a","ab","bb","cb","eb","Children","db","fb","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","hb","ib","jb","textContent","kb","lb","mb","nb","ob","MSApp","execUnsafeLocalFunction","namespaceURI","innerHTML","removeChild","pb","lastChild","nodeValue","qb","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","rb","sb","tb","setProperty","substring","ub","menuitem","area","base","br","col","embed","hr","img","keygen","link","meta","param","track","wbr","vb","wb","xb","correspondingUseElement","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Ob","Pb","Qb","addEventListener","removeEventListener","Rb","Sb","Tb","Ub","Vb","Wb","Xb","Zb","alternate","flags","$b","memoizedState","dehydrated","ac","cc","child","sibling","bc","ec","fc","gc","hc","ic","jc","kc","lc","mc","nc","Map","oc","pc","qc","rc","blockedOn","domEventName","eventSystemFlags","nativeEvent","targetContainers","sc","delete","pointerId","tc","vc","wc","lanePriority","unstable_runWithPriority","priority","hydrate","containerInfo","xc","yc","shift","zc","Ac","Bc","unstable_scheduleCallback","unstable_NormalPriority","Cc","Dc","Ec","animationend","animationiteration","animationstart","transitionend","Fc","Gc","Hc","animation","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Uc","pendingLanes","expiredLanes","suspendedLanes","pingedLanes","Vc","entangledLanes","entanglements","Wc","Yc","Zc","$c","eventTimes","clz32","bd","cd","log","LN2","dd","unstable_UserBlockingPriority","ed","fd","gd","hd","uc","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","stopPropagation","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Jd","clipboardData","Ld","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","8","9","12","13","16","17","18","19","20","27","32","33","34","35","36","37","38","39","40","45","46","112","113","114","115","116","117","118","119","120","121","122","123","144","145","224","Od","Alt","Control","Meta","Shift","Pd","Rd","repeat","which","Td","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Zd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","$d","ae","be","documentMode","ce","ee","fe","ge","he","ie","le","color","datetime","datetime-local","email","password","range","tel","text","url","week","me","ne","oe","listeners","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","Be","Ce","De","Ee","Fe","He","Ie","Je","Ke","Le","node","nextSibling","Ne","HTMLIFrameElement","href","Oe","contentEditable","Pe","Qe","Re","Se","Te","Ue","selectionStart","selectionEnd","anchorNode","defaultView","getSelection","anchorOffset","focusNode","focusOffset","Ve","We","Xe","Ye","Ze","Yb","instance","listener","$e","af","bf","cf","df","capture","passive","Nb","ef","ff","gf","hf","je","ke","unshift","jf","kf","lf","mf","autoFocus","nf","__html","pf","qf","rf","sf","previousSibling","tf","vf","wf","xf","yf","zf","Af","Bf","Cf","Df","Ef","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Ff","childContextTypes","Gf","Hf","If","getChildContext","Jf","__reactInternalMemoizedMergedChildContext","Kf","Lf","Mf","Nf","Of","Pf","unstable_cancelCallback","Qf","Rf","unstable_requestPaint","Sf","Tf","unstable_getCurrentPriorityLevel","Uf","unstable_ImmediatePriority","Vf","Wf","Xf","unstable_LowPriority","Yf","unstable_IdlePriority","Zf","$f","ag","bg","cg","dg","eg","fg","gg","hg","ig","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","childLanes","tg","dependencies","firstContext","lanes","ug","vg","observedBits","responders","wg","xg","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","pending","effects","yg","zg","eventTime","lane","payload","Ag","Bg","Cg","Dg","Eg","Fg","Gg","Kg","_reactInternals","Hg","Ig","Jg","Lg","shouldComponentUpdate","Mg","contextType","Ng","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Og","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Pg","Qg","_stringRef","Rg","Sg","lastEffect","nextEffect","firstEffect","Tg","Ug","elementType","Vg","implementation","Wg","Xg","Yg","Zg","$g","ah","bh","dh","eh","fh","gh","hh","ih","memoizedProps","revealOrder","jh","kh","lh","mh","nh","oh","pendingProps","ph","qh","rh","sh","th","uh","_workInProgressVersionPrimary","vh","wh","xh","yh","zh","Ah","Bh","Ch","Dh","Eh","Fh","Gh","Hh","baseQueue","queue","Ih","Jh","Kh","lastRenderedReducer","action","eagerReducer","eagerState","lastRenderedState","dispatch","Lh","Mh","_getVersion","_source","mutableReadLanes","Nh","getSnapshot","subscribe","setSnapshot","Oh","Ph","Qh","Rh","destroy","deps","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","readContext","useDebugValue","useDeferredValue","useTransition","useMutableSource","useOpaqueIdentifier","unstable_isNewReconciler","uf","ei","fi","gi","hi","ii","ji","ki","li","mi","baseLanes","ni","oi","pi","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","qi","getDerivedStateFromError","ri","pendingContext","Bi","Di","Ei","si","retryLane","ti","fallback","unstable_avoidThisFallback","ui","unstable_expectedLoadTime","vi","wi","xi","yi","zi","isBackwards","rendering","renderingStartTime","last","tail","tailMode","Ai","Fi","Gi","wasMultiple","multiple","onClick","onclick","createElementNS","createTextNode","Hi","Ii","Ji","Ki","Li","Mi","Ni","Oi","Pi","Qi","Ri","Si","componentDidCatch","Ti","componentStack","Ui","WeakSet","Vi","Wi","Xi","__reactInternalSnapshotBeforeUpdate","Yi","Zi","$i","focus","aj","bj","onCommitFiberUnmount","componentWillUnmount","cj","dj","ej","fj","gj","insertBefore","_reactRootContainer","hj","ij","jj","kj","lj","nj","oj","pj","X","Y","qj","rj","sj","tj","uj","vj","Infinity","wj","ck","Z","xj","yj","zj","Aj","Bj","Cj","Dj","Ej","Fj","Gj","Hj","Xc","Sc","Kj","Lj","Mj","callbackNode","expirationTimes","callbackPriority","Tc","Nj","Oj","Pj","Qj","Rj","Sj","Tj","finishedWork","finishedLanes","Uj","timeoutHandle","Wj","Xj","pingCache","Yj","Zj","va","ak","bk","dk","rangeCount","focusedElem","selectionRange","ek","Me","compareDocumentPosition","extend","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","onCommitFiberRoot","fk","gk","ik","pendingChildren","jk","mutableSourceEagerHydrationData","kk","lk","mk","nk","ok","qk","hydrationOptions","mutableSources","_internalRoot","rk","tk","hasAttribute","sk","uk","hk","unstable_observedBits","unmount","form","Vj","vk","Events","wk","findFiberByHostInstance","bundleType","rendererPackageName","xk","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","__REACT_DEVTOOLS_GLOBAL_HOOK__","yk","isDisabled","supportsFiber","inject","checkDCE","isPlanEligible","configPlan","eligible","purchase_amount","minAmount","maxAmount","useFetchEligibility","purchaseAmount","plans","customerBillingCountry","customerShippingCountry","eligibilities","configPlans","merchantId","_useState","eligibility","setEligibility","_useState2","PENDING","status","setStatus","getCache","stringData","sessionStorage","getItem","params","createKey","currentCache","_getCache","lastCacheTimestamp","_getCache2","timestamp","shouldInvalidate","configInstallments","installmentsCount","deferredDays","deferredMonths","billing_address","country","shipping_address","SUCCESS","headers","fetch","_extends","Content-Type","response","json","Promise","reject","fetchFromApi","queries","Authorization","X-Alma-Agent","res","setItem","setCache","FAILED","eligibilityDeferredDays","relatedConfigPlan","find","purchaseAmountConstraints","_plan$constraints","constraints","minimum","maximum","getPaymentPlanBoundaries","classNames","classes","appendClass","parseValue","includes","newClass","STATIC_CUSTOMISATION_CLASSES","desktopModal","mobileModal","leftSide","bullet","rightSide","title","info","infoMessage","eligibilityOptions","activeOption","closeButton","scheduleDetails","scheduleTotal","scheduleCredit","cardContainer","summary","TotalBlock","currentPlan","total","customer_total_cost_amount","creditCost","TAEG","annual_interest_rate","customerFees","isCredit","firstInstallmentAmount","_currentPlan$payment_","_currentPlan$payment_2","payment_plan","total_amount","totalWithoutFirstInstallment","_currentPlan$payment_3","_currentPlan$payment_4","cx","taegPercentage","installmeentsCountWithoutFirst","productPriceWithoutCreditCost","LoadingIndicator","viewBox","fill","xmlns","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","propFullName","secret","getShim","isRequired","ReactPropTypes","array","bigint","bool","any","arrayOf","instanceOf","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","require$$2","findTabbableDescendants","finished","shadowRoot","tabbable","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","getComputedStyle","displayValue","getPropertyValue","scrollWidth","scrollHeight","isNotOverflowing","warn","tabIndex","getAttribute","isTabIndexNaN","isTabIndexNotNaN","parentElement","rootNode","getRootNode","host","visible","focusable","focusLaterElements","handleBlur","handleFocus","preventScroll","toFocus","modalElement","_tabbable2","_tabbable","__esModule","needToFocus","head","getActiveElement","checkSafari","canUseDOM","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","canUseViewport","screen","_exenv","SafeHTMLElement","HTMLElement","HTMLCollection","NodeList","globalElement","assertNodeList","useElement","_safeHTMLElement","validateElement","appElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_warning2","_warning","nodeList","htmlElement","getElementsByTagName","cls","htmlClassList","removeClass","_cls","docBodyClassList","at","classString","classListRef","poll","incrementReference","decrementReference","portalOpenInstances","openInstances","PortalOpenInstances","Constructor","_classCallCheck","register","openInstance","emit","deregister","splice","subscribers","eventType","subscriber","_arr","before","after","instances","_arr2","_i2","_portalOpenInstances2","_portalOpenInstances","focusContent","cloneNode","_typeof","_createClass","protoProps","staticProps","_propTypes2","_interopRequireDefault","_propTypes","focusManager","_interopRequireWildcard","_focusManager","_scopeTab2","_scopeTab","ariaAppHider","_ariaAppHider","_classList","_safeHTMLElement2","newObj","CLASS_NAMES","overlay","ariaHiddenInstances","ModalPortal","_Component","ReferenceError","_possibleConstructorReturn","setOverlayRef","overlayRef","setContentRef","contentRef","afterClose","_this$props","ariaHideApp","htmlOpenClassName","bodyOpenClassName","parentSelector","parentDocument","show","shouldFocusAfterRender","shouldReturnFocusAfterClose","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","beforeOpen","afterOpen","beforeClose","closeTimer","setupScopedFocus","markForFocusLater","isOpen","openAnimationFrame","onAfterOpen","overlayEl","contentEl","closeTimeoutMS","closeWithTimeout","closeWithoutTimeout","contentHasFocus","closesAt","handleKeyDown","isTabKey","shouldCloseOnEsc","isEscKey","requestClose","handleOverlayOnClick","shouldClose","shouldCloseOnOverlayClick","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","handleContentOnClick","handleContentOnMouseDown","onRequestClose","shouldBeClosed","buildClassName","additional","attributesFromObject","items","moveFromContentToOverlay","subClass","superClass","_inherits","prevState","_props","hide","_props2","overlayClassName","defaultStyles","contentStyles","overlayStyles","overlayProps","onMouseDown","contentProps","onKeyDown","onMouseUp","role","aria-label","contentLabel","modal","aria","data-testid","testId","contentElement","overlayElement","_react","propTypes","SafeHTMLCollection","SafeNodeList","nextState","__reactInternalSnapshotFlag","__reactInternalSnapshot","__suppressDeprecationWarning","_react2","_reactDom2","_reactDom","_ModalPortal2","_ModalPortal","portalClassName","isReact16","createPortal","createHTMLElement","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","Modal","_temp","_len","_key","removePortal","unmountComponentAtNode","parent","portalRef","portal","renderPortal","prevParent","nextParent","snapshot","setElement","right","bottom","backgroundColor","border","background","overflow","WebkitOverflowScrolling","borderRadius","outline","padding","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","maybeSnapshot","_Modal2","_Modal","root","scrollbarSize","isOn","on","doc","pageYOffset","innerHeight","dummyScroller","clientWidth","getScrollbarSize","off","scroll","CrossIcon","_ref$color","ControlledModal","onClose","contentClassName","_ref$scrollable","scrollable","_objectWithoutPropertiesLoose","_excluded","setAppElement","noScroll","_cx","factory","o","requiredArgs","required","toDate","argStr","getTime","NaN","startOfDay","dirtyDate","setHours","isSameDay","dirtyDateLeft","dirtyDateRight","dateLeftStartOfDay","dateRightStartOfDay","secondsToMilliseconds","seconds","ApiMode","Widgets","Utils","paymentPlanShorthandName","payment","withNoFee","_payment$payment_plan","every","customer_fee","customer_interest","EligibilityPlansButtons","eligibilityPlans","currentPlanIndex","setCurrentPlanIndex","eligibilityPlan","Installment","installment","isToday","due_date","_cx2","Schedule","AlmaLogo","svgProps","AmexCard","x1","x2","y1","y2","stopColor","fillRule","VisaCard","MasterCard","stroke","transform","rx","cy","CbCard","Cards","uniqueCards","cards","card","Info","isCurrentPlanP1X","strong","Title","isSomePlanDeferred","DesktopModal","MobileModal","EligibilityModal","initialPlanIndex","ModalComponent","useMediaQuery","minWidth","eligiblePlans","some","ModalContainer","_useFetchEligibility","apiData","Loader","container","eligibilityLine","notEligibleOption","paymentInfo","PaymentPlanWidget","planIndex","hideIfNotEligible","monochrome","suggestedPaymentPlan","transitionDelay","_ref$hideBorder","hideBorder","onModalClose","activePlanIndex","_ret","suggestedPaymentPlanArray","_loop","planFound","findIndex","getIndexOfActivePlan","isSuggestedPaymentPlanSpecified","isTransitionSpecified","setIsOpen","eligiblePlanKeys","_useButtonAnimation","iterateValues","setCurrent","update","setUpdate","timeout","onHover","onLeave","useButtonAnimation","isCurrent","onMouseEnter","onTouchStart","onMouseOut","onTouchEnd","_cx3","_payment$minAmount","_payment$maxAmount","deferredDaysCount","totalAmount","dueDate","areInstallmentsOfSameAmount","numberOfRemainingInstallments","othersInstallmentAmount","paymentPlanInfoText","planKey","WidgetsController","widget","containerDiv","querySelector","PaymentPlans","_options$hideBorder","_options$monochrome","_options$locale","_document$querySelect","clickableSelector","_options$locale2","renderModal","price","round","utils"],"mappings":"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AAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,GAAM,CACF,IACA,KAEJC,MAAO,CACH,IACA,KAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,QAAS,CACL,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,QAAS,CACL,IACA,IACA,MAEJC,QAAS,CACL,IACA,IACA,MAEJC,QAAS,CACL,IACA,IACA,MAEJC,QAAS,CACL,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJzc,GAAM,CACF,IACA,IACA,KACA,MAEJ0c,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,QAAS,CACL,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KACA,MAEJC,GAAM,CACF,IACA,IACA,KAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,MAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,SAAU,CACN,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,IACA,MAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,SAAU,CACN,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,GAAM,CACF,IACA,KACA,KACA,KAEJC,QAAS,CACL,IACA,KACA,KACA,KAEJC,GAAM,CACF,KACA,KAEJC,GAAM,CACF,KACA,KAEJC,QAAS,CACL,KACA,IACA,KAEJC,QAAS,CACL,KACA,IACA,KAEJC,QAAS,CACL,KACA,IACA,KAEJC,QAAS,CACL,KACA,IACA,KAEJC,GAAM,CACF,KACA,IACA,IACA,MAEJC,QAAS,CACL,KACA,IACA,KACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,QAAS,CACL,KACA,KACA,IACA,KAEJC,QAAS,CACL,KACA,KACA,IACA,KAEJC,QAAS,CACL,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,KAEJC,GAAM,CACF,KACA,KACA,IACA,MEzwCR,SAASC,GAA+BC,GACpC,IAAIhT,EAAYgT,EAAOhT,UASvB,QARkBthB,IAAdshB,GAEAgT,EAAOC,YAEPD,EAAOC,WAAWhxB,SAElB+d,EAAYgT,EAAOC,WAAW,IAE9BjT,EACA,OAAQA,GACJ,IAAK,MACD,MAAO,IACX,IAAK,MACD,MAAO,IACX,IAAK,MACD,MAAO,IACX,IAAK,MACD,MAAO,IACX,QACI,MAAM,IAAI3M,MAAM,qBAI5B,IACI6f,EADAC,EAAcH,EAAOI,SASzB,MAPoB,SAAhBD,IACAD,EAAYF,EAAOK,WAAWC,SAEjBtQ,GAASkQ,GAAa,KACnClQ,GAASmQ,GAAe,KACxBnQ,GAAS,GAAGva,OAAO0qB,EAAa,UAChCnQ,GAAS,QACK,GD1EtB,IAAIuQ,GAA8B,IAAIC,OAAO,IAAI/qB,OAAO4W,GAAsBxhB,OAAQ,MAClF41B,GAA4B,IAAID,OAAO,GAAG/qB,OAAO4W,GAAsBxhB,OAAQ,OACnF,SAAS61B,GAAeC,EAAOC,GAC3B,MAAO,CAAED,MAAOA,EAAOC,IAAKA,GAIhC,IAAIC,KAAwBj1B,OAAOrD,UAAUu4B,WACzCC,KAA2Bn1B,OAAOo1B,cAClCC,KAAyBj3B,OAAOk3B,YAChCC,KAAyBv1B,OAAOrD,UAAU64B,YAC1CC,KAAiBz1B,OAAOrD,UAAU+4B,UAClCC,KAAe31B,OAAOrD,UAAUi5B,QAEhCC,GAD2BzjB,OAAOyjB,cAEhCzjB,OAAOyjB,cACP,SAAUt4B,GACR,MAAqB,iBAANA,GACXu4B,SAASv4B,IACTJ,KAAKC,MAAMG,KAAOA,GAClBJ,KAAK44B,IAAIx4B,IAAM,kBAGvBy4B,IAAyB,EAC7B,IAQIA,GAA8F,OAA5C,QAAvB7R,GAPlBgJ,GAAG,4CAA6C,MAOtBhxB,KAAK,YAAyB,IAAPgoB,QAAgB,EAASA,GAAG,IAE1F,MAAOnC,GACHgU,IAAyB,EAE7B,IAyFIC,GAzFAf,GAAaD,GAET,SAAoBlc,EAAGhE,EAAQ7R,GAC3B,OAAO6V,EAAEmc,WAAWngB,EAAQ7R,IAGhC,SAAoB6V,EAAGhE,EAAQ7R,GAC3B,OAAO6V,EAAElX,MAAMqB,EAAUA,EAAW6R,EAAO1R,UAAY0R,GAE/DqgB,GAAgBD,GACdn1B,OAAOo1B,cAEL,WAEI,IADA,IAAIc,EAAa,GACRnT,EAAK,EAAGA,EAAK9lB,UAAUoG,OAAQ0f,IACpCmT,EAAWnT,GAAM9lB,UAAU8lB,GAM/B,IAJA,IAGIoT,EAHAtiB,EAAW,GACXxQ,EAAS6yB,EAAW7yB,OACpBsG,EAAI,EAEDtG,EAASsG,GAAG,CAEf,IADAwsB,EAAOD,EAAWvsB,MACP,QACP,MAAMoX,WAAWoV,EAAO,8BAC5BtiB,GACIsiB,EAAO,MACDn2B,OAAOuY,aAAa4d,GACpBn2B,OAAOuY,aAAyC,QAA1B4d,GAAQ,QAAY,IAAeA,EAAO,KAAS,OAEvF,OAAOtiB,GAEfyhB,GAEJD,GACMj3B,OAAOk3B,YAEL,SAAqBnlB,GAEjB,IADA,IAAInH,EAAM,GACD+Z,EAAK,EAAGqT,EAAYjmB,EAAS4S,EAAKqT,EAAU/yB,OAAQ0f,IAAM,CAC/D,IAAIoB,EAAKiS,EAAUrT,GACnB/Z,EAD4Bmb,EAAG,IAAQA,EAAG,GAG9C,OAAOnb,GAEfwsB,GAAcD,GAEV,SAAqBxc,EAAGzP,GACpB,OAAOyP,EAAEyc,YAAYlsB,IAGzB,SAAqByP,EAAGzP,GACpB,IAAIlG,EAAO2V,EAAE1V,OACb,KAAIiG,EAAQ,GAAKA,GAASlG,GAA1B,CAGA,IACIJ,EADAD,EAAQgW,EAAErW,WAAW4G,GAEzB,OAAOvG,EAAQ,OACXA,EAAQ,OACRuG,EAAQ,IAAMlG,IACbJ,EAAS+V,EAAErW,WAAW4G,EAAQ,IAAM,OACrCtG,EAAS,MACPD,EAC4BC,EAAS,OAAnCD,EAAQ,OAAW,IAA0B,QAE7D2yB,GAAYD,GAER,SAAmB1c,GACf,OAAOA,EAAE2c,aAGb,SAAmB3c,GACf,OAAOA,EAAE/Q,QAAQ2sB,GAA6B,KAEtDiB,GAAUD,GAEN,SAAiB5c,GACb,OAAOA,EAAE6c,WAGb,SAAiB7c,GACb,OAAOA,EAAE/Q,QAAQ6sB,GAA2B,KAGxD,SAAS1H,GAAGpU,EAAGsd,GACX,OAAO,IAAIzB,OAAO7b,EAAGsd,GAIzB,GAAIL,GAAwB,CAExB,IAAIM,GAAyBnJ,GAAG,4CAA6C,MAC7E8I,GAAyB,SAAgCld,EAAGzP,GACxD,IAAI6a,EAGJ,OAFAmS,GAAuBC,UAAYjtB,EAER,QAAnB6a,EADImS,GAAuBn6B,KAAK4c,GACrB,UAAuB,IAAPoL,EAAgBA,EAAK,SAK5D8R,GAAyB,SAAgCld,EAAGzP,GAExD,IADA,IAAI5L,EAAQ,KACC,CACT,IAAIgc,EAAI8b,GAAYzc,EAAGzP,GACvB,QAAUxJ,IAAN4Z,GAAmB8c,GAAc9c,IAAM+c,GAAiB/c,GACxD,MAEJhc,EAAMmB,KAAK6a,GACXpQ,GAASoQ,GAAK,MAAU,EAAI,EAEhC,OAAO0b,GAAcp4B,WAAM,EAAQU,IAG3C,IAAIg5B,GAAwB,WACxB,SAASA,EAAOliB,EAASnM,QACL,IAAZA,IAAsBA,EAAU,IACpCnK,KAAKsW,QAAUA,EACftW,KAAKgF,SAAW,CAAEyzB,OAAQ,EAAGC,KAAM,EAAGC,OAAQ,GAC9C34B,KAAK44B,YAAczuB,EAAQyuB,UAC3B54B,KAAKk2B,OAAS/rB,EAAQ+rB,OACtBl2B,KAAK64B,sBAAwB1uB,EAAQ0uB,oBACrC74B,KAAK84B,uBAAyB3uB,EAAQ2uB,qBAsyB1C,OApyBAN,EAAO/5B,UAAUs6B,MAAQ,WACrB,GAAsB,IAAlB/4B,KAAKy4B,SACL,MAAMliB,MAAM,gCAEhB,OAAOvW,KAAKg5B,aAAa,EAAG,IAAI,IAEpCR,EAAO/5B,UAAUu6B,aAAe,SAAUC,EAAcC,EAAeC,GAEnE,IADA,IAAIxjB,EAAW,IACP3V,KAAKo5B,SAAS,CAClB,IAAIC,EAAOr5B,KAAKq5B,OAChB,GAAa,MAATA,EAAwB,CAExB,IADIn1B,EAASlE,KAAKs5B,cAAcL,EAAcE,IACnC1e,IACP,OAAOvW,EAEXyR,EAAShV,KAAKuD,EAAO0C,SAEpB,CAAA,GAAa,MAATyyB,GAA0BJ,EAAe,EAC9C,MAEC,GAAa,KAATI,GACc,WAAlBH,GAAgD,kBAAlBA,EAQ9B,CAAA,GAAa,KAATG,IACJr5B,KAAK44B,WACU,KAAhB54B,KAAKu5B,OACP,CACE,GAAIJ,EACA,MAGA,OAAOn5B,KAAK9B,MAAM8iB,GAAUwY,sBAAuB5C,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAGhG,GAAa,KAATJ,IACJr5B,KAAK44B,WACNc,GAAS15B,KAAKu5B,QAAU,GAAI,CAE5B,IADIr1B,EAASlE,KAAK25B,SAASV,EAAcC,IAC9Bze,IACP,OAAOvW,EAEXyR,EAAShV,KAAKuD,EAAO0C,SAEpB,CACD,IAAI1C,EACJ,IADIA,EAASlE,KAAK45B,aAAaX,EAAcC,IAClCze,IACP,OAAOvW,EAEXyR,EAAShV,KAAKuD,EAAO0C,UAjC8C,CACnE,IAAI5B,EAAWhF,KAAKy5B,gBACpBz5B,KAAK65B,OACLlkB,EAAShV,KAAK,CACVgI,KAAMD,GAAKwZ,MACX4X,SAAUlD,GAAe5xB,EAAUhF,KAAKy5B,qBA+BpD,MAAO,CAAE7yB,IAAK+O,EAAU8E,IAAK,OAoBjC+d,EAAO/5B,UAAUk7B,SAAW,SAAUV,EAAcC,GAChD,IAAIa,EAAgB/5B,KAAKy5B,gBACzBz5B,KAAK65B,OACL,IAAIG,EAAUh6B,KAAKi6B,eAEnB,GADAj6B,KAAKk6B,YACDl6B,KAAKm6B,OAAO,MAEZ,MAAO,CACHvzB,IAAK,CACD+B,KAAMD,GAAK4Y,QACXlhB,MAAO,IAAIuL,OAAOquB,EAAS,MAC3BF,SAAUlD,GAAemD,EAAe/5B,KAAKy5B,kBAEjDhf,IAAK,MAGR,GAAIza,KAAKm6B,OAAO,KAAM,CACvB,IAAIC,EAAiBp6B,KAAKg5B,aAAaC,EAAe,EAAGC,GAAe,GACxE,GAAIkB,EAAe3f,IACf,OAAO2f,EAEX,IAAI9c,EAAW8c,EAAexzB,IAE1ByzB,EAAsBr6B,KAAKy5B,gBAC/B,GAAIz5B,KAAKm6B,OAAO,MAAO,CACnB,GAAIn6B,KAAKo5B,UAAYM,GAAS15B,KAAKq5B,QAC/B,OAAOr5B,KAAK9B,MAAM8iB,GAAUsZ,YAAa1D,GAAeyD,EAAqBr6B,KAAKy5B,kBAEtF,IAAIc,EAA8Bv6B,KAAKy5B,gBAEvC,OAAIO,IADiBh6B,KAAKi6B,eAEfj6B,KAAK9B,MAAM8iB,GAAUwY,sBAAuB5C,GAAe2D,EAA6Bv6B,KAAKy5B,mBAExGz5B,KAAKk6B,YACAl6B,KAAKm6B,OAAO,KAGV,CACHvzB,IAAK,CACD+B,KAAMD,GAAKzE,IACX7D,MAAO45B,EACP1c,SAAUA,EACVwc,SAAUlD,GAAemD,EAAe/5B,KAAKy5B,kBAEjDhf,IAAK,MATEza,KAAK9B,MAAM8iB,GAAUsZ,YAAa1D,GAAeyD,EAAqBr6B,KAAKy5B,mBAatF,OAAOz5B,KAAK9B,MAAM8iB,GAAUwZ,aAAc5D,GAAemD,EAAe/5B,KAAKy5B,kBAIjF,OAAOz5B,KAAK9B,MAAM8iB,GAAUsZ,YAAa1D,GAAemD,EAAe/5B,KAAKy5B,mBAMpFjB,EAAO/5B,UAAUw7B,aAAe,WAC5B,IAAIQ,EAAcz6B,KAAKy4B,SAEvB,IADAz4B,KAAK65B,QACG75B,KAAKo5B,SAAWsB,GAA4B16B,KAAKq5B,SACrDr5B,KAAK65B,OAET,OAAO75B,KAAKsW,QAAQ3S,MAAM82B,EAAaz6B,KAAKy4B,WAEhDD,EAAO/5B,UAAUm7B,aAAe,SAAUX,EAAcC,GAGpD,IAFA,IAAIrC,EAAQ72B,KAAKy5B,gBACbr5B,EAAQ,KACC,CACT,IAAIu6B,EAAmB36B,KAAK46B,cAAc1B,GAC1C,GAAIyB,EACAv6B,GAASu6B,MADb,CAIA,IAAIE,EAAsB76B,KAAK86B,iBAAiB7B,EAAcC,GAC9D,GAAI2B,EACAz6B,GAASy6B,MADb,CAIA,IAAIE,EAAuB/6B,KAAKg7B,2BAChC,IAAID,EAIJ,MAHI36B,GAAS26B,IAKjB,IAAIjB,EAAWlD,GAAeC,EAAO72B,KAAKy5B,iBAC1C,MAAO,CACH7yB,IAAK,CAAE+B,KAAMD,GAAK4Y,QAASlhB,MAAOA,EAAO05B,SAAUA,GACnDrf,IAAK,OAGb+d,EAAO/5B,UAAUu8B,yBAA2B,WACxC,OAAKh7B,KAAKo5B,SACU,KAAhBp5B,KAAKq5B,SACJr5B,KAAK44B,YAooBPc,GADcuB,EAjoBQj7B,KAAKu5B,QAAU,IAkoBA,KAAd0B,GA9nBnB,MAHHj7B,KAAK65B,OACE,KA+nBnB,IAAyBoB,GAtnBrBzC,EAAO/5B,UAAUm8B,cAAgB,SAAU1B,GACvC,GAAIl5B,KAAKo5B,SAA2B,KAAhBp5B,KAAKq5B,OACrB,OAAO,KAIX,OAAQr5B,KAAKu5B,QACT,KAAK,GAID,OAFAv5B,KAAK65B,OACL75B,KAAK65B,OACE,IAEX,KAAK,IACL,KAAK,GACL,KAAK,GACL,KAAK,IACD,MACJ,KAAK,GACD,GAAsB,WAAlBX,GAAgD,kBAAlBA,EAC9B,MAEJ,OAAO,KACX,QACI,OAAO,KAEfl5B,KAAK65B,OACL,IAAI7B,EAAa,CAACh4B,KAAKq5B,QAGvB,IAFAr5B,KAAK65B,QAEG75B,KAAKo5B,SAAS,CAClB,IAAI8B,EAAKl7B,KAAKq5B,OACd,GAAW,KAAP6B,EAAqB,CACrB,GAAoB,KAAhBl7B,KAAKu5B,OAKJ,CAEDv5B,KAAK65B,OACL,MAPA7B,EAAWr3B,KAAK,IAEhBX,KAAK65B,YAST7B,EAAWr3B,KAAKu6B,GAEpBl7B,KAAK65B,OAET,OAAO3C,GAAcp4B,WAAM,EAAQk5B,IAEvCQ,EAAO/5B,UAAUq8B,iBAAmB,SAAU7B,EAAcC,GACxD,GAAIl5B,KAAKo5B,QACL,OAAO,KAEX,IAAI8B,EAAKl7B,KAAKq5B,OACd,OAAW,KAAP6B,GACO,MAAPA,GACQ,KAAPA,IACsB,WAAlBhC,GAAgD,kBAAlBA,IAC3B,MAAPgC,GAAwBjC,EAAe,EACjC,MAGPj5B,KAAK65B,OACE3C,GAAcgE,KAG7B1C,EAAO/5B,UAAU66B,cAAgB,SAAUL,EAAcE,GACrD,IAAIgC,EAAuBn7B,KAAKy5B,gBAGhC,GAFAz5B,KAAK65B,OACL75B,KAAKk6B,YACDl6B,KAAKo5B,QACL,OAAOp5B,KAAK9B,MAAM8iB,GAAUoa,8BAA+BxE,GAAeuE,EAAsBn7B,KAAKy5B,kBAEzG,GAAoB,MAAhBz5B,KAAKq5B,OAEL,OADAr5B,KAAK65B,OACE75B,KAAK9B,MAAM8iB,GAAUqa,eAAgBzE,GAAeuE,EAAsBn7B,KAAKy5B,kBAG1F,IAAIr5B,EAAQJ,KAAKs7B,4BAA4Bl7B,MAC7C,IAAKA,EACD,OAAOJ,KAAK9B,MAAM8iB,GAAUua,mBAAoB3E,GAAeuE,EAAsBn7B,KAAKy5B,kBAG9F,GADAz5B,KAAKk6B,YACDl6B,KAAKo5B,QACL,OAAOp5B,KAAK9B,MAAM8iB,GAAUoa,8BAA+BxE,GAAeuE,EAAsBn7B,KAAKy5B,kBAEzG,OAAQz5B,KAAKq5B,QAET,KAAK,IAED,OADAr5B,KAAK65B,OACE,CACHjzB,IAAK,CACD+B,KAAMD,GAAKpJ,SAEXc,MAAOA,EACP05B,SAAUlD,GAAeuE,EAAsBn7B,KAAKy5B,kBAExDhf,IAAK,MAIb,KAAK,GAGD,OAFAza,KAAK65B,OACL75B,KAAKk6B,YACDl6B,KAAKo5B,QACEp5B,KAAK9B,MAAM8iB,GAAUoa,8BAA+BxE,GAAeuE,EAAsBn7B,KAAKy5B,kBAElGz5B,KAAKw7B,qBAAqBvC,EAAcE,EAAmB/4B,EAAO+6B,GAE7E,QACI,OAAOn7B,KAAK9B,MAAM8iB,GAAUua,mBAAoB3E,GAAeuE,EAAsBn7B,KAAKy5B,oBAOtGjB,EAAO/5B,UAAU68B,0BAA4B,WACzC,IAAIG,EAAmBz7B,KAAKy5B,gBACxBgB,EAAcz6B,KAAKy4B,SACnBr4B,EAAQ23B,GAAuB/3B,KAAKsW,QAASmkB,GAKjD,OAHAz6B,KAAK07B,OADWjB,EAAcr6B,EAAM+E,QAI7B,CAAE/E,MAAOA,EAAO05B,SADRlD,GAAe6E,EADZz7B,KAAKy5B,mBAI3BjB,EAAO/5B,UAAU+8B,qBAAuB,SAAUvC,EAAcE,EAAmB/4B,EAAO+6B,GACtF,IAAIlV,EAIA0V,EAAoB37B,KAAKy5B,gBACzBmC,EAAU57B,KAAKs7B,4BAA4Bl7B,MAC3Cy7B,EAAkB77B,KAAKy5B,gBAC3B,OAAQmC,GACJ,IAAK,GAED,OAAO57B,KAAK9B,MAAM8iB,GAAU8a,qBAAsBlF,GAAe+E,EAAmBE,IACxF,IAAK,SACL,IAAK,OACL,IAAK,OAID77B,KAAKk6B,YACL,IAAI6B,EAAmB,KACvB,GAAI/7B,KAAKm6B,OAAO,KAAM,CAClBn6B,KAAKk6B,YACL,IAAI8B,EAAqBh8B,KAAKy5B,gBAE9B,IADIv1B,EAASlE,KAAKi8B,iCACPxhB,IACP,OAAOvW,EAGX,GAAqB,KADjB0K,EAAQ8oB,GAAQxzB,EAAO0C,MACjBzB,OACN,OAAOnF,KAAK9B,MAAM8iB,GAAUkb,sBAAuBtF,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAGjGsC,EAAmB,CAAEntB,MAAOA,EAAOutB,cADfvF,GAAeoF,EAAoBh8B,KAAKy5B,kBAIhE,IADI2C,EAAiBp8B,KAAKq8B,sBAAsBlB,IAC7B1gB,IACf,OAAO2hB,EAEX,IAAIE,EAAa1F,GAAeuE,EAAsBn7B,KAAKy5B,iBAE3D,GAAIsC,GAAoB/E,GAAW+E,MAAAA,OAA2D,EAASA,EAAiBntB,MAAO,KAAM,GAAI,CAErI,IAAI8T,EAAW8U,GAAUuE,EAAiBntB,MAAMjL,MAAM,IACtD,GAAgB,WAAZi4B,EAEA,OADI13B,EAASlE,KAAKu8B,8BAA8B7Z,EAAUqZ,EAAiBI,gBAChE1hB,IACAvW,EAEJ,CACH0C,IAAK,CAAE+B,KAAMD,GAAKnJ,OAAQa,MAAOA,EAAO05B,SAAUwC,EAAY1tB,MAAO1K,EAAO0C,KAC5E6T,IAAK,MAIT,GAAwB,IAApBiI,EAASvd,OACT,OAAOnF,KAAK9B,MAAM8iB,GAAUwb,0BAA2BF,GAE3D,IAAIG,EAAkB/Z,EAIlB1iB,KAAKk2B,SACLuG,EC1hBrB,SAAwB/Z,EAAUwT,GAErC,IADA,IAAIwG,EAAe,GACVC,EAAa,EAAGA,EAAaja,EAASvd,OAAQw3B,IAAc,CACjE,IAAIC,EAAcla,EAASne,OAAOo4B,GAClC,GAAoB,MAAhBC,EAAqB,CAErB,IADA,IAAIC,EAAc,EACXF,EAAa,EAAIja,EAASvd,QAC7Bud,EAASne,OAAOo4B,EAAa,KAAOC,GACpCC,IACAF,IAEJ,IAAIG,EAAU,GAAmB,EAAdD,GACfE,EAAeF,EAAc,EAAI,EAAI,GAAKA,GAAe,GAEzDG,EAAW/G,GAA+BC,GAI9C,IAHgB,KAAZ8G,GAA+B,KAAZA,IACnBD,EAAe,GAEZA,KAAiB,GACpBL,GANgB,IAQpB,KAAOI,KAAY,GACfJ,EAAeM,EAAWN,OAI9BA,GADqB,MAAhBE,EACW,IAGAA,EAGxB,OAAOF,ED0fmCO,CAAeva,EAAU1iB,KAAKk2B,SAEpD,IAAItnB,EAAQ,CACRjG,KAAMsY,GAAcqB,SACpB4a,QAAST,EACT3C,SAAUiC,EAAiBI,cAC3BgB,cAAen9B,KAAK84B,qBACdrW,GAAsBga,GACtB,IAGV,MAAO,CACH71B,IAAK,CAAE+B,KAFY,SAAZizB,EAAqBlzB,GAAKgZ,KAAOhZ,GAAKkZ,KAE1BxhB,MAAOA,EAAO05B,SAAUwC,EAAY1tB,MAAOA,GAC9D6L,IAAK,MAKjB,MAAO,CACH7T,IAAK,CACD+B,KAAkB,WAAZizB,EACAlzB,GAAKnJ,OACO,SAAZq8B,EACIlzB,GAAKgZ,KACLhZ,GAAKkZ,KACfxhB,MAAOA,EACP05B,SAAUwC,EACV1tB,MAA6G,QAArGqX,EAAK8V,MAAAA,OAA2D,EAASA,EAAiBntB,aAA0B,IAAPqX,EAAgBA,EAAK,MAE9IxL,IAAK,MAGb,IAAK,SACL,IAAK,gBACL,IAAK,SAID,IAAI2iB,EAAoBp9B,KAAKy5B,gBAE7B,GADAz5B,KAAKk6B,aACAl6B,KAAKm6B,OAAO,KACb,OAAOn6B,KAAK9B,MAAM8iB,GAAUqc,+BAAgCzG,GAAewG,EAAmB1c,GAAS,GAAI0c,KAE/Gp9B,KAAKk6B,YASL,IAAIoD,EAAwBt9B,KAAKs7B,4BAC7BiC,EAAe,EACnB,GAAgB,WAAZ3B,GAAwD,WAAhC0B,EAAsBl9B,MAAoB,CAClE,IAAKJ,KAAKm6B,OAAO,KACb,OAAOn6B,KAAK9B,MAAM8iB,GAAUwc,oCAAqC5G,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAG/G,IAAIv1B,EACJ,GAFAlE,KAAKk6B,aACDh2B,EAASlE,KAAKy9B,uBAAuBzc,GAAUwc,oCAAqCxc,GAAU0c,uCACvFjjB,IACP,OAAOvW,EAGXlE,KAAKk6B,YACLoD,EAAwBt9B,KAAKs7B,4BAC7BiC,EAAer5B,EAAO0C,IAE1B,IAIIw1B,EAJAuB,EAAgB39B,KAAK49B,8BAA8B3E,EAAc2C,EAASzC,EAAmBmE,GACjG,GAAIK,EAAcljB,IACd,OAAOkjB,EAGX,IADIvB,EAAiBp8B,KAAKq8B,sBAAsBlB,IAC7B1gB,IACf,OAAO2hB,EAEX,IAAIyB,EAAajH,GAAeuE,EAAsBn7B,KAAKy5B,iBAC3D,MAAgB,WAAZmC,EACO,CACHh1B,IAAK,CACD+B,KAAMD,GAAKoZ,OACX1hB,MAAOA,EACP+J,QAASitB,GAAYuG,EAAc/2B,KACnCkzB,SAAU+D,GAEdpjB,IAAK,MAIF,CACH7T,IAAK,CACD+B,KAAMD,GAAKsZ,OACX5hB,MAAOA,EACP+J,QAASitB,GAAYuG,EAAc/2B,KACnC6xB,OAAQ8E,EACRO,WAAwB,WAAZlC,EAAuB,WAAa,UAChD9B,SAAU+D,GAEdpjB,IAAK,MAIjB,QACI,OAAOza,KAAK9B,MAAM8iB,GAAU+c,sBAAuBnH,GAAe+E,EAAmBE,MAGjGrD,EAAO/5B,UAAU49B,sBAAwB,SAAUlB,GAG/C,OAAIn7B,KAAKo5B,SAA2B,MAAhBp5B,KAAKq5B,OACdr5B,KAAK9B,MAAM8iB,GAAUoa,8BAA+BxE,GAAeuE,EAAsBn7B,KAAKy5B,mBAEzGz5B,KAAK65B,OACE,CAAEjzB,KAAK,EAAM6T,IAAK,QAK7B+d,EAAO/5B,UAAUw9B,8BAAgC,WAG7C,IAFA,IAAI+B,EAAe,EACfjE,EAAgB/5B,KAAKy5B,iBACjBz5B,KAAKo5B,SAET,OADSp5B,KAAKq5B,QAEV,KAAK,GAGDr5B,KAAK65B,OACL,IAAIoE,EAAqBj+B,KAAKy5B,gBAC9B,IAAKz5B,KAAKk+B,UAAU,KAChB,OAAOl+B,KAAK9B,MAAM8iB,GAAUmd,iCAAkCvH,GAAeqH,EAAoBj+B,KAAKy5B,kBAE1Gz5B,KAAK65B,OACL,MAEJ,KAAK,IACDmE,GAAgB,EAChBh+B,KAAK65B,OACL,MAEJ,KAAK,IACD,KAAImE,EAAe,GAIf,MAAO,CACHp3B,IAAK5G,KAAKsW,QAAQ3S,MAAMo2B,EAActB,OAAQz4B,KAAKy4B,UACnDhe,IAAK,MALTujB,GAAgB,EAQpB,MAEJ,QACIh+B,KAAK65B,OAIjB,MAAO,CACHjzB,IAAK5G,KAAKsW,QAAQ3S,MAAMo2B,EAActB,OAAQz4B,KAAKy4B,UACnDhe,IAAK,OAGb+d,EAAO/5B,UAAU89B,8BAAgC,SAAU7Z,EAAUoX,GACjE,IAAIpiB,EAAS,GACb,IACIA,EFrsBL,SAAuCgL,GAC1C,GAAwB,IAApBA,EAASvd,OACT,MAAM,IAAIoR,MAAM,mCAOpB,IAJA,IAGImB,EAAS,GACJmN,EAAK,EAAGuZ,EAJE1b,EACdvgB,MAAMmhB,IACN+a,OAAO,SAAUj/B,GAAK,OAAOA,EAAE+F,OAAS,IAEG0f,EAAKuZ,EAAej5B,OAAQ0f,IAAM,CAC9E,IACIyZ,EADcF,EAAevZ,GACA1iB,MAAM,KACvC,GAA8B,IAA1Bm8B,EAAen5B,OACf,MAAM,IAAIoR,MAAM,2BAGpB,IADA,IAAIgO,EAAO+Z,EAAe,GAAIn0B,EAAUm0B,EAAe36B,MAAM,GACpDsiB,EAAK,EAAGsY,EAAYp0B,EAAS8b,EAAKsY,EAAUp5B,OAAQ8gB,IAEzD,GAAsB,IADTsY,EAAUtY,GACZ9gB,OACP,MAAM,IAAIoR,MAAM,2BAGxBmB,EAAO/W,KAAK,CAAE4jB,KAAMA,EAAMpa,QAASA,IAEvC,OAAOuN,EE6qBU6kB,CAA8B7Z,GAE3C,MAAOvJ,GACH,OAAOnZ,KAAK9B,MAAM8iB,GAAUwd,wBAAyB1E,GAEzD,MAAO,CACHlzB,IAAK,CACD+B,KAAMsY,GAAc1hB,OACpBmY,OAAQA,EACRoiB,SAAUA,EACVqD,cAAen9B,KAAK84B,qBACdlU,GAAoBlN,GACpB,IAEV+C,IAAK,OAab+d,EAAO/5B,UAAUm/B,8BAAgC,SAAU3E,EAAcC,EAAeuF,EAAgBC,GASpG,IARA,IAAIzY,EACA0Y,GAAiB,EACjBx0B,EAAU,GACVy0B,EAAkB,IAAIC,IACtBnpB,EAAWgpB,EAAsBt+B,MAAO0+B,EAAmBJ,EAAsB5E,WAIxE,CACT,GAAwB,IAApBpkB,EAASvQ,OAAc,CACvB,IAAI40B,EAAgB/5B,KAAKy5B,gBACzB,GAAsB,WAAlBP,IAA8Bl5B,KAAKm6B,OAAO,KAU1C,MARA,IAAIj2B,EAASlE,KAAKy9B,uBAAuBzc,GAAU+d,gCAAiC/d,GAAUge,kCAC9F,GAAI96B,EAAOuW,IACP,OAAOvW,EAEX46B,EAAmBlI,GAAemD,EAAe/5B,KAAKy5B,iBACtD/jB,EAAW1V,KAAKsW,QAAQ3S,MAAMo2B,EAActB,OAAQz4B,KAAKy4B,UAOjE,GAAImG,EAAgBt7B,IAAIoS,GACpB,OAAO1V,KAAK9B,MAAwB,WAAlBg7B,EACZlY,GAAUie,mCACVje,GAAUke,mCAAoCJ,GAEvC,UAAbppB,IACAipB,GAAiB,GAKrB3+B,KAAKk6B,YACL,IAAIiB,EAAuBn7B,KAAKy5B,gBAChC,IAAKz5B,KAAKm6B,OAAO,KACb,OAAOn6B,KAAK9B,MAAwB,WAAlBg7B,EACZlY,GAAUme,yCACVne,GAAUoe,yCAA0CxI,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAExG,IAAI4F,EAAiBr/B,KAAKg5B,aAAaC,EAAe,EAAGC,EAAeuF,GACxE,GAAIY,EAAe5kB,IACf,OAAO4kB,EAEX,IAAIjD,EAAiBp8B,KAAKq8B,sBAAsBlB,GAChD,GAAIiB,EAAe3hB,IACf,OAAO2hB,EAEXjyB,EAAQxJ,KAAK,CACT+U,EACA,CACItV,MAAOi/B,EAAez4B,IACtBkzB,SAAUlD,GAAeuE,EAAsBn7B,KAAKy5B,oBAI5DmF,EAAgBhmB,IAAIlD,GAEpB1V,KAAKk6B,YACmCxkB,GAAvCuQ,EAAKjmB,KAAKs7B,6BAA2Cl7B,MAAO0+B,EAAmB7Y,EAAG6T,SAEvF,OAAuB,IAAnB3vB,EAAQhF,OACDnF,KAAK9B,MAAwB,WAAlBg7B,EACZlY,GAAUse,gCACVte,GAAU+d,gCAAiCnI,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAE3Fz5B,KAAK64B,sBAAwB8F,EACtB3+B,KAAK9B,MAAM8iB,GAAUue,qBAAsB3I,GAAe52B,KAAKy5B,gBAAiBz5B,KAAKy5B,kBAEzF,CAAE7yB,IAAKuD,EAASsQ,IAAK,OAEhC+d,EAAO/5B,UAAUg/B,uBAAyB,SAAU+B,EAAmBC,GACnE,IAAIC,EAAO,EACPjE,EAAmBz7B,KAAKy5B,gBACxBz5B,KAAKm6B,OAAO,MAEPn6B,KAAKm6B,OAAO,OACjBuF,GAAQ,GAIZ,IAFA,IAAIC,GAAY,EACZC,EAAU,GACN5/B,KAAKo5B,SAAS,CAClB,IAAI8B,EAAKl7B,KAAKq5B,OACd,KAAI6B,GAAM,IAAgBA,GAAM,IAM5B,MALAyE,GAAY,EACZC,EAAoB,GAAVA,GAAgB1E,EAAK,IAC/Bl7B,KAAK65B,OAMb,IAAIC,EAAWlD,GAAe6E,EAAkBz7B,KAAKy5B,iBACrD,OAAKkG,EAIAhI,GADLiI,GAAWF,GAIJ,CAAE94B,IAAKg5B,EAASnlB,IAAK,MAFjBza,KAAK9B,MAAMuhC,EAAoB3F,GAJ/B95B,KAAK9B,MAAMshC,EAAmB1F,IAQ7CtB,EAAO/5B,UAAUg6B,OAAS,WACtB,OAAOz4B,KAAKgF,SAASyzB,QAEzBD,EAAO/5B,UAAU26B,MAAQ,WACrB,OAAOp5B,KAAKy4B,WAAaz4B,KAAKsW,QAAQnR,QAE1CqzB,EAAO/5B,UAAUg7B,cAAgB,WAE7B,MAAO,CACHhB,OAAQz4B,KAAKgF,SAASyzB,OACtBC,KAAM14B,KAAKgF,SAAS0zB,KACpBC,OAAQ34B,KAAKgF,SAAS2zB,SAO9BH,EAAO/5B,UAAU46B,KAAO,WACpB,IAAIZ,EAASz4B,KAAKgF,SAASyzB,OAC3B,GAAIA,GAAUz4B,KAAKsW,QAAQnR,OACvB,MAAMoR,MAAM,gBAEhB,IAAI0hB,EAAOX,GAAYt3B,KAAKsW,QAASmiB,GACrC,QAAa72B,IAATq2B,EACA,MAAM1hB,MAAM,UAAU5K,OAAO8sB,EAAQ,6CAEzC,OAAOR,GAEXO,EAAO/5B,UAAUP,MAAQ,SAAUoU,EAAMwnB,GACrC,MAAO,CACHlzB,IAAK,KACL6T,IAAK,CACDnI,KAAMA,EACNgE,QAAStW,KAAKsW,QACdwjB,SAAUA,KAKtBtB,EAAO/5B,UAAUo7B,KAAO,WACpB,IAAI75B,KAAKo5B,QAAT,CAGA,IAAInB,EAAOj4B,KAAKq5B,OACH,KAATpB,GACAj4B,KAAKgF,SAAS0zB,MAAQ,EACtB14B,KAAKgF,SAAS2zB,OAAS,EACvB34B,KAAKgF,SAASyzB,QAAU,IAGxBz4B,KAAKgF,SAAS2zB,QAAU,EAExB34B,KAAKgF,SAASyzB,QAAUR,EAAO,MAAU,EAAI,KASrDO,EAAO/5B,UAAU07B,OAAS,SAAU0F,GAChC,GAAI7I,GAAWh3B,KAAKsW,QAASupB,EAAQ7/B,KAAKy4B,UAAW,CACjD,IAAK,IAAIhtB,EAAI,EAAGA,EAAIo0B,EAAO16B,OAAQsG,IAC/BzL,KAAK65B,OAET,OAAO,EAEX,OAAO,GAMXrB,EAAO/5B,UAAUy/B,UAAY,SAAUhB,GACnC,IAAI4C,EAAgB9/B,KAAKy4B,SACrBrtB,EAAQpL,KAAKsW,QAAQ/K,QAAQ2xB,EAAS4C,GAC1C,OAAI10B,GAAS,GACTpL,KAAK07B,OAAOtwB,IACL,IAGPpL,KAAK07B,OAAO17B,KAAKsW,QAAQnR,SAClB,IAOfqzB,EAAO/5B,UAAUi9B,OAAS,SAAUqE,GAChC,GAAI//B,KAAKy4B,SAAWsH,EAChB,MAAMxpB,MAAM,gBAAgB5K,OAAOo0B,EAAc,yDAAyDp0B,OAAO3L,KAAKy4B,WAG1H,IADAsH,EAAe9gC,KAAK4L,IAAIk1B,EAAc//B,KAAKsW,QAAQnR,UACtC,CACT,IAAIszB,EAASz4B,KAAKy4B,SAClB,GAAIA,IAAWsH,EACX,MAEJ,GAAItH,EAASsH,EACT,MAAMxpB,MAAM,gBAAgB5K,OAAOo0B,EAAc,6CAGrD,GADA//B,KAAK65B,OACD75B,KAAKo5B,QACL,QAKZZ,EAAO/5B,UAAUy7B,UAAY,WACzB,MAAQl6B,KAAKo5B,SAAWd,GAAct4B,KAAKq5B,SACvCr5B,KAAK65B,QAObrB,EAAO/5B,UAAU86B,KAAO,WACpB,GAAIv5B,KAAKo5B,QACL,OAAO,KAEX,IAAInB,EAAOj4B,KAAKq5B,OACZZ,EAASz4B,KAAKy4B,SACduH,EAAWhgC,KAAKsW,QAAQ9R,WAAWi0B,GAAUR,GAAQ,MAAU,EAAI,IACvE,OAAO+H,MAAAA,EAA2CA,EAAW,MAE1DxH,EA9yBiB,GAszB5B,SAASkB,GAASuB,GACd,OAASA,GAAa,IAAMA,GAAa,KACpCA,GAAa,IAAMA,GAAa,GAMzC,SAASP,GAA4Blf,GACjC,OAAc,KAANA,GACE,KAANA,GACCA,GAAK,IAAMA,GAAK,IACX,KAANA,GACCA,GAAK,IAAMA,GAAK,KAChBA,GAAK,IAAMA,GAAK,IACZ,KAALA,GACCA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAASA,GAAK,MACnBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,OAM9B,SAAS8c,GAAc9c,GACnB,OAASA,GAAK,GAAUA,GAAK,IACnB,KAANA,GACM,MAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,EAMR,SAAS+c,GAAiB/c,GACtB,OAASA,GAAK,IAAUA,GAAK,IACnB,KAANA,GACCA,GAAK,IAAUA,GAAK,IACf,KAANA,GACM,KAANA,GACM,KAANA,GACM,KAANA,GACM,KAANA,GACM,KAANA,GACCA,GAAK,IAAUA,GAAK,IACpBA,GAAK,IAAUA,GAAK,IACpBA,GAAK,IAAUA,GAAK,IACpBA,GAAK,IAAUA,GAAK,IACf,KAANA,GACM,KAANA,GACM,KAANA,GACM,KAANA,GACM,KAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACCA,GAAK,KAAUA,GAAK,KACf,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACM,MAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACM,OAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,KACf,OAANA,GACM,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACf,OAANA,GACCA,GAAK,MAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACCA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,OACf,QAANA,GACM,QAANA,GACM,QAANA,GACM,QAANA,GACCA,GAAK,OAAUA,GAAK,MEjuCtB,SAASud,GAAMziB,EAAS2pB,QACd,IAATA,IAAmBA,EAAO,IAC9BA,EAAOvf,GAAS,CAAEoY,sB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"}
|
|
1
|
+
{"version":3,"file":"widgets.umd.js","sources":["../src/types.ts","../src/utils/index.ts","../src/utils/polyfills.js","../node_modules/preact/dist/preact.module.js","../node_modules/preact/hooks/dist/hooks.module.js","../node_modules/preact/compat/dist/compat.module.js","../node_modules/preact/compat/client.mjs","../node_modules/tslib/tslib.es6.mjs","../node_modules/@formatjs/fast-memoize/lib/index.js","../node_modules/@formatjs/ecma402-abstract/lib/utils.js","../node_modules/@formatjs/icu-messageformat-parser/lib/error.js","../node_modules/@formatjs/icu-messageformat-parser/lib/types.js","../node_modules/@formatjs/icu-messageformat-parser/lib/regex.generated.js","../node_modules/@formatjs/icu-skeleton-parser/lib/date-time.js","../node_modules/@formatjs/icu-skeleton-parser/lib/regex.generated.js","../node_modules/@formatjs/icu-skeleton-parser/lib/number.js","../node_modules/@formatjs/icu-messageformat-parser/lib/time-data.generated.js","../node_modules/@formatjs/icu-messageformat-parser/lib/date-time-pattern-generator.js","../node_modules/@formatjs/icu-messageformat-parser/lib/parser.js","../node_modules/@formatjs/icu-messageformat-parser/lib/index.js","../node_modules/intl-messageformat/lib/src/error.js","../node_modules/intl-messageformat/lib/src/formatters.js","../node_modules/intl-messageformat/lib/src/core.js","../node_modules/@formatjs/intl/lib/src/error.js","../node_modules/@formatjs/intl/lib/src/utils.js","../node_modules/@formatjs/intl/lib/src/message.js","../node_modules/@formatjs/intl/lib/src/dateTime.js","../node_modules/@formatjs/intl/lib/src/displayName.js","../node_modules/@formatjs/intl/lib/src/list.js","../node_modules/@formatjs/intl/lib/src/plural.js","../node_modules/@formatjs/intl/lib/src/relativeTime.js","../node_modules/@formatjs/intl/lib/src/number.js","../node_modules/@formatjs/intl/lib/src/create-intl.js","../node_modules/react-intl/lib/src/utils.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/react-intl/lib/src/components/injectIntl.js","../node_modules/react-intl/lib/src/components/useIntl.js","../node_modules/react-intl/lib/src/components/createFormattedComponent.js","../node_modules/react-intl/lib/src/components/createIntl.js","../node_modules/react-intl/lib/src/components/provider.js","../node_modules/react-intl/lib/src/components/message.js","../node_modules/react-intl/lib/index.js","../src/intl/utils.ts","../src/intl/IntlProvider.tsx","../src/utils/utilsForStorage.ts","../src/hooks/useSessionStorage.tsx","../src/utils/fetch.ts","../src/utils/filterEligibility.ts","../src/hooks/useFetchEligibility.ts","../node_modules/css-mediaquery/index.js","../node_modules/matchmediaquery/index.js","../node_modules/hyphenate-style-name/index.js","../node_modules/shallow-equal/dist/index.modern.mjs","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/react-responsive/dist/esm/index.js","../node_modules/classnames/index.js","../src/Widgets/EligibilityModal/classNames.const.ts","../src/components/Installments/TotalBlock/index.tsx","../src/components/LoadingIndicator/LoadingIndicator.tsx","../node_modules/no-scroll/index.js","../node_modules/react-modal/lib/helpers/tabbable.js","../node_modules/react-modal/lib/helpers/focusManager.js","../node_modules/react-modal/lib/helpers/scopeTab.js","../node_modules/warning/warning.js","../node_modules/exenv/index.js","../node_modules/react-modal/lib/helpers/safeHTMLElement.js","../node_modules/react-modal/lib/helpers/ariaAppHider.js","../node_modules/react-modal/lib/helpers/classList.js","../node_modules/react-modal/lib/helpers/portalOpenInstances.js","../node_modules/react-modal/lib/helpers/bodyTrap.js","../node_modules/react-modal/lib/components/ModalPortal.js","../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../node_modules/react-modal/lib/components/Modal.js","../node_modules/react-modal/lib/index.js","../src/assets/Cross.tsx","../src/components/Modal/index.tsx","../node_modules/date-fns/constants.js","../node_modules/date-fns/constructFrom.js","../node_modules/date-fns/toDate.js","../node_modules/date-fns/_lib/normalizeDates.js","../node_modules/date-fns/startOfDay.js","../node_modules/date-fns/constructNow.js","../node_modules/date-fns/isSameDay.js","../node_modules/date-fns/isToday.js","../node_modules/date-fns/secondsToMilliseconds.js","../src/utils/paymentPlanStrings.tsx","../src/Widgets/EligibilityModal/components/EligibilityPlansButtons/index.tsx","../src/components/Installments/Installment/index.tsx","../src/Widgets/EligibilityModal/components/Schedule/index.tsx","../src/assets/almaLogo.tsx","../src/assets/cards/amex.tsx","../src/assets/cards/cb.tsx","../src/assets/cards/mastercard.tsx","../src/assets/cards/visa.tsx","../src/Widgets/EligibilityModal/components/Cards/index.tsx","../src/Widgets/EligibilityModal/components/Info/index.tsx","../src/Widgets/EligibilityModal/components/Title/index.tsx","../src/Widgets/EligibilityModal/DesktopModal/index.tsx","../src/Widgets/EligibilityModal/MobileModal/index.tsx","../src/Widgets/EligibilityModal/index.tsx","../src/Widgets/EligibilityModal/ModalContainer.tsx","../src/components/Loader/index.tsx","../src/hooks/useButtonAnimation.ts","../src/utils/merchantOrderPreferences.ts","../src/Widgets/PaymentPlans/classNames.const.ts","../src/Widgets/PaymentPlans/index.tsx","../src/widgets_controller.tsx","../src/consts.ts","../src/index.ts"],"sourcesContent":["import React from 'react'\n\nimport { ApiMode } from '@/consts'\n\nexport type ApiConfig = { domain: ApiMode; merchantId: string }\n\nexport enum widgetTypes {\n PaymentPlans = 'PaymentPlans',\n Modal = 'Modal',\n}\nexport enum statusResponse {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n}\n\nexport type ConfigPlan = {\n installmentsCount: number\n deferredDays?: number\n deferredMonths?: number\n minAmount: number\n maxAmount: number\n}\n\nexport type PaymentPlan = {\n customer_fee: number\n customer_interest: number\n due_date: number\n purchase_amount: number\n total_amount: number\n refunded_interest?: number\n}\nexport type EligibilityPlan = {\n annual_interest_rate?: number\n customer_total_cost_amount: number\n customer_total_cost_bps: number\n deferred_days: number\n deferred_months: number\n eligible: boolean\n reasons?: Record<string, unknown>\n installments_count: number\n payment_plan?: PaymentPlan[]\n purchase_amount: number\n constraints?: {\n purchase_amount?: { minimum: number; maximum: number }\n }\n}\n\nexport type EligibilityPlanToDisplay = EligibilityPlan & {\n minAmount?: number\n maxAmount?: number\n}\n\nexport enum Locale {\n en = 'en',\n 'fr-FR' = 'fr-FR',\n fr = 'fr',\n 'de-DE' = 'de-DE',\n de = 'de',\n it = 'it',\n 'it-IT' = 'it-IT',\n es = 'es',\n 'es-ES' = 'es-ES',\n pt = 'pt',\n 'pt-PT' = 'pt-PT',\n nl = 'nl',\n 'nl-NL' = 'nl-NL',\n 'nl-BE' = 'nl-BE',\n}\n\nexport type Card = 'cb' | 'amex' | 'mastercard' | 'visa'\n\nexport type PaymentPlanWidgetOptions = {\n container: string\n hideIfNotEligible?: boolean\n locale?: Locale\n cards?: Card[]\n monochrome?: boolean\n plans?: ConfigPlan[]\n purchaseAmount: number\n suggestedPaymentPlan?: number | number[]\n transitionDelay?: number\n hideBorder?: boolean\n customerBillingCountry?: string\n customerShippingCountry?: string\n onModalClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nexport type ModalOptions = {\n container: string\n clickableSelector: string\n purchaseAmount: number\n customerBillingCountry?: string\n customerShippingCountry?: string\n plans?: ConfigPlan[]\n locale?: Locale\n cards?: Card[]\n onClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nexport type WidgetNames = keyof typeof widgetTypes\n\nexport type WidgetOptions = PaymentPlanWidgetOptions | ModalOptions\n","import { EligibilityPlan } from '@/types'\n\nexport function priceToCents(price: number): number {\n return Math.round(price * 100)\n}\n\nexport function priceFromCents(cents: number): number {\n return Number((cents / 100).toFixed(2))\n}\n\nexport function formatCents(cents: number): string {\n return String(priceFromCents(cents)).replace('.', ',')\n}\n\nexport const secondsToMilliseconds = (date: number): number => date * 1000\n\nexport const desktopWidth = 800\n\nexport const isP1X = (plan: EligibilityPlan): boolean =>\n plan?.installments_count === 1 && plan?.deferred_days === 0 && plan?.deferred_months === 0\n","/* eslint-disable */\n/*\n * Element.prototype.closest & Element.prototype.matches polyfills\n */\n\n;(function (ElementProto) {\n if (typeof ElementProto.matches !== 'function') {\n ElementProto.matches =\n ElementProto.msMatchesSelector ||\n ElementProto.mozMatchesSelector ||\n ElementProto.webkitMatchesSelector ||\n function matches(selector) {\n const element = this\n const elements = (element.document || element.ownerDocument).querySelectorAll(selector)\n let index = 0\n\n while (elements[index] && elements[index] !== element) {\n ++index\n }\n\n return Boolean(elements[index])\n }\n }\n\n if (typeof ElementProto.closest !== 'function') {\n ElementProto.closest = function closest(selector) {\n let element = this\n\n while (element && element.nodeType === 1) {\n if (element.matches(selector)) {\n return element\n }\n\n element = element.parentNode\n }\n\n return null\n }\n }\n})(window.Element.prototype)\n\n/*\n * Element.prototype.classList polyfill\n */\n\n// 1. String.prototype.trim polyfill\nif (!''.trim)\n String.prototype.trim = function () {\n return this.replace(/^[\\s]+|[\\s]+$/g, '')\n }\n;(function (window) {\n // prevent global namespace pollution\n if (!window.DOMException)\n (DOMException = function (reason) {\n this.message = reason\n }).prototype = new Error()\n const wsRE = /[\\11\\12\\14\\15\\40]/\n let wsIndex = 0\n const checkIfValidClassListEntry = function (O, V) {\n if (V === '')\n throw new DOMException(\n `Failed to execute '${O}' on 'DOMTokenList': The token provided must not be empty.`,\n )\n if ((wsIndex = V.search(wsRE)) !== -1)\n throw new DOMException(\n `Failed to execute '${O}' on 'DOMTokenList': ` +\n `The token provided ('${\n V[wsIndex]\n }') contains HTML space characters, which are not valid in tokens.`,\n )\n }\n // 2. Implement the barebones DOMTokenList livelyness polyfill\n if (typeof DOMTokenList !== 'function')\n (function (window) {\n const document = window.document\n const Object = window.Object\n const hasOwnProp = Object.prototype.hasOwnProperty\n const defineProperty = Object.defineProperty\n let allowTokenListConstruction = 0\n let skipPropChange = 0\n\n const DOMTokenList = function () {\n if (!allowTokenListConstruction) throw TypeError('Illegal constructor') // internally let it through\n }\n\n DOMTokenList.prototype.toString = DOMTokenList.prototype.toLocaleString = function () {\n return this.value\n }\n DOMTokenList.prototype.add = function () {\n a: for (\n var v = 0, argLen = arguments.length, val = '', ele = this[' uCL'], proto = ele[' uCLp'];\n v !== argLen;\n ++v\n ) {\n ;(val = `${arguments[v]}`), checkIfValidClassListEntry('add', val)\n for (var i = 0, Len = proto.length, resStr = val; i !== Len; ++i)\n if (this[i] === val) continue a\n else resStr += ` ${this[i]}`\n ;(this[Len] = val), (proto.length += 1), (proto.value = resStr)\n }\n ;(skipPropChange = 1), (ele.className = proto.value), (skipPropChange = 0)\n }\n DOMTokenList.prototype.remove = function () {\n for (\n var v = 0, argLen = arguments.length, val = '', ele = this[' uCL'], proto = ele[' uCLp'];\n v !== argLen;\n ++v\n ) {\n ;(val = `${arguments[v]}`), checkIfValidClassListEntry('remove', val)\n for (var i = 0, Len = proto.length, resStr = '', is = 0; i !== Len; ++i)\n if (is) {\n this[i - 1] = this[i]\n } else if (this[i] !== val) {\n resStr += `${this[i]} `\n } else {\n is = 1\n }\n if (!is) continue\n delete this[Len], (proto.length -= 1), (proto.value = resStr)\n }\n ;(skipPropChange = 1), (ele.className = proto.value), (skipPropChange = 0)\n }\n window.DOMTokenList = DOMTokenList\n\n function whenPropChanges() {\n const evt = window.event\n const prop = evt.propertyName\n if (\n !skipPropChange &&\n (prop === 'className' || (prop === 'classList' && !defineProperty))\n ) {\n const target = evt.srcElement\n const protoObjProto = target[' uCLp']\n const strval = `${target[prop]}`\n const tokens = strval.trim().split(wsRE)\n const resTokenList = target[prop === 'classList' ? ' uCL' : 'classList']\n const oldLen = protoObjProto.length\n a: for (\n var cI = 0, cLen = (protoObjProto.length = tokens.length), sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (let innerI = 0; innerI !== cI; ++innerI)\n if (tokens[innerI] === tokens[cI]) {\n sub++\n continue a\n }\n resTokenList[cI - sub] = tokens[cI]\n }\n for (let i = cLen - sub; i < oldLen; ++i) delete resTokenList[i] // remove trailing indexs\n if (prop !== 'classList') return\n ;(skipPropChange = 1), (target.classList = resTokenList), (target.className = strval)\n ;(skipPropChange = 0), (resTokenList.length = tokens.length - sub)\n }\n }\n\n function polyfillClassList(ele) {\n if (!ele || !('innerHTML' in ele)) throw TypeError('Illegal invocation')\n ele.detachEvent('onpropertychange', whenPropChanges) // prevent duplicate handler infinite loop\n allowTokenListConstruction = 1\n try {\n var protoObj = function () {}\n\n protoObj.prototype = new DOMTokenList()\n } finally {\n allowTokenListConstruction = 0\n }\n const protoObjProto = protoObj.prototype\n const resTokenList = new protoObj()\n a: for (\n var toks = ele.className.trim().split(wsRE), cI = 0, cLen = toks.length, sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (let innerI = 0; innerI !== cI; ++innerI)\n if (toks[innerI] === toks[cI]) {\n sub++\n continue a\n }\n this[cI - sub] = toks[cI]\n }\n ;(protoObjProto.length = cLen - sub),\n (protoObjProto.value = ele.className),\n (protoObjProto[' uCL'] = ele)\n if (defineProperty) {\n defineProperty(ele, 'classList', {\n // IE8 & IE9 allow defineProperty on the DOM\n enumerable: 1,\n get() {\n return resTokenList\n },\n configurable: 0,\n set(newVal) {\n ;(skipPropChange = 1),\n (ele.className = protoObjProto.value = newVal += ''),\n (skipPropChange = 0)\n const toks = newVal.trim().split(wsRE)\n const oldLen = protoObjProto.length\n a: for (\n var cI = 0, cLen = (protoObjProto.length = toks.length), sub = 0;\n cI !== cLen;\n ++cI\n ) {\n for (let innerI = 0; innerI !== cI; ++innerI)\n if (toks[innerI] === toks[cI]) {\n sub++\n continue a\n }\n resTokenList[cI - sub] = toks[cI]\n }\n for (let i = cLen - sub; i < oldLen; ++i) delete resTokenList[i] // remove trailing indexs\n },\n })\n defineProperty(ele, ' uCLp', {\n // for accessing the hidden prototype\n enumerable: 0,\n configurable: 0,\n writeable: 0,\n value: protoObj.prototype,\n })\n defineProperty(protoObjProto, ' uCL', {\n enumerable: 0,\n configurable: 0,\n writeable: 0,\n value: ele,\n })\n } else {\n ;(ele.classList = resTokenList),\n (ele[' uCL'] = resTokenList),\n (ele[' uCLp'] = protoObj.prototype)\n }\n ele.attachEvent('onpropertychange', whenPropChanges)\n }\n\n try {\n // Much faster & cleaner version for IE8 & IE9:\n // Should work in IE8 because Element.prototype instanceof Node is true according to the specs\n window.Object.defineProperty(window.Element.prototype, 'classList', {\n enumerable: 1,\n get(val) {\n if (!hasOwnProp.call(this, 'classList')) polyfillClassList(this)\n return this.classList\n },\n configurable: 0,\n set(val) {\n this.className = val\n },\n })\n } catch (e) {\n // Less performant fallback for older browsers (IE 6-8):\n window[' uCL'] = polyfillClassList\n // the below code ensures polyfillClassList is applied to all current and future elements in the doc.\n document.documentElement.firstChild.appendChild(\n document.createElement('style'),\n ).styleSheet.cssText =\n '_*{x-uCLp:expression(!this.hasOwnProperty(\"classList\")&&window[\" uCL\"](this))}' + // IE6\n '[class]{x-uCLp/**/:expression(!this.hasOwnProperty(\"classList\")&&window[\" uCL\"](this))}' // IE7-8\n }\n })(window)\n // 3. Patch in unsupported methods in DOMTokenList\n ;(function (DOMTokenListProto, testClass) {\n if (!DOMTokenListProto.item)\n DOMTokenListProto.item = function (i) {\n function NullCheck(n) {\n return n === void 0 ? null : n\n }\n\n return NullCheck(this[i])\n }\n if (!DOMTokenListProto.toggle || testClass.toggle('a', 0) !== false)\n DOMTokenListProto.toggle = function (val) {\n if (arguments.length > 1) return this[arguments[1] ? 'add' : 'remove'](val), !!arguments[1]\n const oldValue = this.value\n return (\n this.remove(oldValue), oldValue === this.value && (this.add(val), true)\n ) /* || false */\n }\n if (!DOMTokenListProto.replace || typeof testClass.replace('a', 'b') !== 'boolean')\n DOMTokenListProto.replace = function (oldToken, newToken) {\n checkIfValidClassListEntry('replace', oldToken),\n checkIfValidClassListEntry('replace', newToken)\n const oldValue = this.value\n return this.remove(oldToken), this.value !== oldValue && (this.add(newToken), true)\n }\n if (!DOMTokenListProto.contains)\n DOMTokenListProto.contains = function (value) {\n for (let i = 0, Len = this.length; i !== Len; ++i) if (this[i] === value) return true\n return false\n }\n if (!DOMTokenListProto.forEach)\n DOMTokenListProto.forEach = function (f) {\n if (arguments.length === 1)\n for (var i = 0, Len = this.length; i !== Len; ++i) f(this[i], i, this)\n else\n for (var i = 0, Len = this.length, tArg = arguments[1]; i !== Len; ++i)\n f.call(tArg, this[i], i, this)\n }\n if (!DOMTokenListProto.entries)\n DOMTokenListProto.entries = function () {\n const nextIndex = 0\n const that = this\n return {\n next() {\n return nextIndex < that.length\n ? {\n value: [nextIndex, that[nextIndex]],\n done: false,\n }\n : { done: true }\n },\n }\n }\n if (!DOMTokenListProto.values)\n DOMTokenListProto.values = function () {\n const nextIndex = 0\n const that = this\n return {\n next() {\n return nextIndex < that.length\n ? { value: that[nextIndex], done: false }\n : { done: true }\n },\n }\n }\n if (!DOMTokenListProto.keys)\n DOMTokenListProto.keys = function () {\n const nextIndex = 0\n const that = this\n return {\n next() {\n return nextIndex < that.length ? { value: nextIndex, done: false } : { done: true }\n },\n }\n }\n })(window.DOMTokenList.prototype, window.document.createElement('div').classList)\n})(window)\n","var n,l,u,t,i,o,r,f,e,c,s,a,h={},v=[],p=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var u in l)n[u]=l[u];return n}function w(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,o,r,f={};for(r in u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return g(l,f,i,o,null)}function g(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function m(){return{current:null}}function b(n){return n.children}function k(n,l){this.props=n,this.context=l}function x(n,l){if(null==l)return n.__?x(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?x(n):null}function C(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return C(n)}}function S(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!M.__r++||o!==l.debounceRendering)&&((o=l.debounceRendering)||r)(M)}function M(){var n,u,t,o,r,e,c,s;for(i.sort(f);n=i.shift();)n.__d&&(u=i.length,o=void 0,e=(r=(t=n).__v).__e,c=[],s=[],t.__P&&((o=d({},r)).__v=r.__v+1,l.vnode&&l.vnode(o),O(t.__P,o,r,t.__n,t.__P.namespaceURI,32&r.__u?[e]:null,c,null==e?x(r):e,!!(32&r.__u),s),o.__v=r.__v,o.__.__k[o.__i]=o,j(c,o,s),o.__e!=e&&C(o)),i.length>u&&i.sort(f));M.__r=0}function P(n,l,u,t,i,o,r,f,e,c,s){var a,p,y,d,w,_=t&&t.__k||v,g=l.length;for(u.__d=e,$(u,l,_),e=u.__d,a=0;a<g;a++)null!=(y=u.__k[a])&&(p=-1===y.__i?h:_[y.__i]||h,y.__i=a,O(n,y,p,i,o,r,f,e,c,s),d=y.__e,y.ref&&p.ref!=y.ref&&(p.ref&&N(p.ref,null,y),s.push(y.ref,y.__c||d,y)),null==w&&null!=d&&(w=d),65536&y.__u||p.__k===y.__k?e=I(y,e,n):\"function\"==typeof y.type&&void 0!==y.__d?e=y.__d:d&&(e=d.nextSibling),y.__d=void 0,y.__u&=-196609);u.__d=e,u.__e=w}function $(n,l,u){var t,i,o,r,f,e=l.length,c=u.length,s=c,a=0;for(n.__k=[],t=0;t<e;t++)null!=(i=l[t])&&\"boolean\"!=typeof i&&\"function\"!=typeof i?(r=t+a,(i=n.__k[t]=\"string\"==typeof i||\"number\"==typeof i||\"bigint\"==typeof i||i.constructor==String?g(null,i,null,null,null):y(i)?g(b,{children:i},null,null,null):void 0===i.constructor&&i.__b>0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i).__=n,i.__b=n.__b+1,o=null,-1!==(f=i.__i=L(i,u,r,s))&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,\"function\"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f==r-1?a--:f==r+1?a++:(f>r?a--:a++,i.__u|=65536))):i=n.__k[t]=null;if(s)for(t=0;t<c;t++)null!=(o=u[t])&&0==(131072&o.__u)&&(o.__e==n.__d&&(n.__d=x(o)),V(o,o))}function I(n,l,u){var t,i;if(\"function\"==typeof n.type){for(t=n.__k,i=0;t&&i<t.length;i++)t[i]&&(t[i].__=n,l=I(t[i],l,u));return l}n.__e!=l&&(l&&n.type&&!u.contains(l)&&(l=x(n)),u.insertBefore(n.__e,l||null),l=n.__e);do{l=l&&l.nextSibling}while(null!=l&&8===l.nodeType);return l}function H(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(y(n)?n.some(function(n){H(n,l)}):l.push(n)),l}function L(n,l,u,t){var i=n.key,o=n.type,r=u-1,f=u+1,e=l[u];if(null===e||e&&i==e.key&&o===e.type&&0==(131072&e.__u))return u;if(t>(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f<l.length;){if(r>=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f<l.length){if((e=l[f])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return f;f++}}return-1}function T(n,l,u){\"-\"===l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||p.test(l)?u:u+\"px\"}function A(n,l,u,t,i){var o;n:if(\"style\"===l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof t&&(n.style.cssText=t=\"\"),t)for(l in t)u&&l in u||T(n.style,l,\"\");if(u)for(l in u)t&&u[l]===t[l]||T(n.style,l,u[l])}else if(\"o\"===l[0]&&\"n\"===l[1])o=l!==(l=l.replace(/(PointerCapture)$|Capture$/i,\"$1\")),l=l.toLowerCase()in n||\"onFocusOut\"===l||\"onFocusIn\"===l?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=e,n.addEventListener(l,o?s:c,o)):n.removeEventListener(l,o?s:c,o);else{if(\"http://www.w3.org/2000/svg\"==i)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=l&&\"height\"!=l&&\"href\"!=l&&\"list\"!=l&&\"form\"!=l&&\"tabIndex\"!=l&&\"download\"!=l&&\"rowSpan\"!=l&&\"colSpan\"!=l&&\"role\"!=l&&\"popover\"!=l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!==l[4]?n.removeAttribute(l):n.setAttribute(l,\"popover\"==l&&1==u?\"\":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=e++;else if(u.t<t.u)return;return t(l.event?l.event(u):u)}}}function O(n,u,t,i,o,r,f,e,c,s){var a,h,v,p,w,_,g,m,x,C,S,M,$,I,H,L,T=u.type;if(void 0!==u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),r=[e=u.__e=t.__e]),(a=l.__b)&&a(u);n:if(\"function\"==typeof T)try{if(m=u.props,x=\"prototype\"in T&&T.prototype.render,C=(a=T.contextType)&&i[a.__c],S=a?C?C.props.value:a.__:i,t.__c?g=(h=u.__c=t.__c).__=h.__E:(x?u.__c=h=new T(m,S):(u.__c=h=new k(m,S),h.constructor=T,h.render=q),C&&C.sub(h),h.props=m,h.state||(h.state={}),h.context=S,h.__n=i,v=h.__d=!0,h.__h=[],h._sb=[]),x&&null==h.__s&&(h.__s=h.state),x&&null!=T.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=d({},h.__s)),d(h.__s,T.getDerivedStateFromProps(m,h.__s))),p=h.props,w=h.state,h.__v=u,v)x&&null==T.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),x&&null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(x&&null==T.getDerivedStateFromProps&&m!==p&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(m,S),!h.__e&&(null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(m,h.__s,S)||u.__v===t.__v)){for(u.__v!==t.__v&&(h.props=m,h.state=h.__s,h.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.some(function(n){n&&(n.__=u)}),M=0;M<h._sb.length;M++)h.__h.push(h._sb[M]);h._sb=[],h.__h.length&&f.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(m,h.__s,S),x&&null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(p,w,_)})}if(h.context=S,h.props=m,h.__P=n,h.__e=!1,$=l.__r,I=0,x){for(h.state=h.__s,h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),H=0;H<h._sb.length;H++)h.__h.push(h._sb[H]);h._sb=[]}else do{h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++I<25);h.state=h.__s,null!=h.getChildContext&&(i=d(d({},i),h.getChildContext())),x&&!v&&null!=h.getSnapshotBeforeUpdate&&(_=h.getSnapshotBeforeUpdate(p,w)),P(n,y(L=null!=a&&a.type===b&&null==a.key?a.props.children:a)?L:[L],u,t,i,o,r,f,e,c,s),h.base=u.__e,u.__u&=-161,h.__h.length&&f.push(h),g&&(h.__E=h.__=null)}catch(n){if(u.__v=null,c||null!=r){for(u.__u|=c?160:128;e&&8===e.nodeType&&e.nextSibling;)e=e.nextSibling;r[r.indexOf(e)]=null,u.__e=e}else u.__e=t.__e,u.__k=t.__k;l.__e(n,u,t)}else null==r&&u.__v===t.__v?(u.__k=t.__k,u.__e=t.__e):u.__e=z(t.__e,u,t,i,o,r,f,c,s);(a=l.diffed)&&a(u)}function j(n,u,t){u.__d=void 0;for(var i=0;i<t.length;i++)N(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function z(u,t,i,o,r,f,e,c,s){var a,v,p,d,_,g,m,b=i.props,k=t.props,C=t.type;if(\"svg\"===C?r=\"http://www.w3.org/2000/svg\":\"math\"===C?r=\"http://www.w3.org/1998/Math/MathML\":r||(r=\"http://www.w3.org/1999/xhtml\"),null!=f)for(a=0;a<f.length;a++)if((_=f[a])&&\"setAttribute\"in _==!!C&&(C?_.localName===C:3===_.nodeType)){u=_,f[a]=null;break}if(null==u){if(null===C)return document.createTextNode(k);u=document.createElementNS(r,C,k.is&&k),c&&(l.__m&&l.__m(t,f),c=!1),f=null}if(null===C)b===k||c&&u.data===k||(u.data=k);else{if(f=f&&n.call(u.childNodes),b=i.props||h,!c&&null!=f)for(b={},a=0;a<u.attributes.length;a++)b[(_=u.attributes[a]).name]=_.value;for(a in b)if(_=b[a],\"children\"==a);else if(\"dangerouslySetInnerHTML\"==a)p=_;else if(!(a in k)){if(\"value\"==a&&\"defaultValue\"in k||\"checked\"==a&&\"defaultChecked\"in k)continue;A(u,a,null,_,r)}for(a in k)_=k[a],\"children\"==a?d=_:\"dangerouslySetInnerHTML\"==a?v=_:\"value\"==a?g=_:\"checked\"==a?m=_:c&&\"function\"!=typeof _||b[a]===_||A(u,a,_,b[a],r);if(v)c||p&&(v.__html===p.__html||v.__html===u.innerHTML)||(u.innerHTML=v.__html),t.__k=[];else if(p&&(u.innerHTML=\"\"),P(u,y(d)?d:[d],t,i,o,\"foreignObject\"===C?\"http://www.w3.org/1999/xhtml\":r,f,e,f?f[0]:i.__k&&x(i,0),c,s),null!=f)for(a=f.length;a--;)w(f[a]);c||(a=\"value\",\"progress\"===C&&null==g?u.removeAttribute(\"value\"):void 0!==g&&(g!==u[a]||\"progress\"===C&&!g||\"option\"===C&&g!==b[a])&&A(u,a,g,b[a],r),a=\"checked\",void 0!==m&&m!==u[a]&&A(u,a,m,b[a],r))}return u}function N(n,u,t){try{if(\"function\"==typeof n){var i=\"function\"==typeof n.__u;i&&n.__u(),i&&null==u||(n.__u=n(u))}else n.current=u}catch(n){l.__e(n,t)}}function V(n,u,t){var i,o;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!==n.__e||N(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null}if(i=n.__k)for(o=0;o<i.length;o++)i[o]&&V(i[o],u,t||\"function\"!=typeof n.type);t||w(n.__e),n.__c=n.__=n.__e=n.__d=void 0}function q(n,l,u){return this.constructor(n,u)}function B(u,t,i){var o,r,f,e;l.__&&l.__(u,t),r=(o=\"function\"==typeof i)?null:i&&i.__k||t.__k,f=[],e=[],O(t,u=(!o&&i||t).__k=_(b,null,[u]),r||h,h,t.namespaceURI,!o&&i?[i]:r?null:t.firstChild?n.call(t.childNodes):null,f,!o&&i?i:r?r.__e:t.firstChild,o,e),j(f,u,e)}function D(n,l){B(n,l,D)}function E(l,u,t){var i,o,r,f,e=d({},l.props);for(r in l.type&&l.type.defaultProps&&(f=l.type.defaultProps),u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:e[r]=void 0===u[r]&&void 0!==f?f[r]:u[r];return arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),g(l.type,e,i||l.key,o||l.ref,null)}function G(n,l){var u={__c:l=\"__cC\"+a++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.forEach(function(n){n.__e=!0,S(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=v.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},k.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof n&&(n=n(d({},u),this.props)),n&&d(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),S(this))},k.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),S(this))},k.prototype.render=b,i=[],r=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},M.__r=0,e=0,c=F(!1),s=F(!0),a=0;export{k as Component,b as Fragment,E as cloneElement,G as createContext,_ as createElement,m as createRef,_ as h,D as hydrate,t as isValidElement,l as options,B as render,H as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","import{options as n}from\"preact\";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function d(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return o=1,p(D,n)}function p(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!c||c.call(this,n,t,r))};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=d(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__H.__h.push(i))}function _(n,u){var i=d(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){return\"function\"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function T(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.i=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.i=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k=\"function\"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return\"function\"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,p as useReducer,A as useRef,h as useState};\n//# sourceMappingURL=hooks.module.js.map\n","import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as c,createRef as f,cloneElement as l}from\"preact\";export{Component,Fragment,createContext,createElement,createRef}from\"preact\";import{useCallback as a,useContext as s,useDebugValue as h,useEffect as v,useId as d,useImperativeHandle as p,useLayoutEffect as m,useMemo as y,useReducer as _,useRef as b,useState as S}from\"preact/hooks\";export*from\"preact/hooks\";function g(n,t){for(var e in n)if(\"__source\"!==e&&!(e in t))return!0;for(var r in t)if(\"__source\"!==r&&n[r]!==t[r])return!0;return!1}function E(n,t){this.props=n,this.context=t}function C(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:g(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName=\"Memo(\"+(n.displayName||n.name)+\")\",u.prototype.isReactComponent=!0,u.__f=!0,u}(E.prototype=new n).isPureReactComponent=!0,E.prototype.shouldComponentUpdate=function(n,t){return g(this.props,n)||g(this.state,t)};var x=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),x&&x(n)};var R=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.forward_ref\")||3911;function w(n){function t(t){if(!(\"ref\"in t))return n(t,null);var e=t.ref;delete t.ref;var r=n(t,e);return t.ref=e,r}return t.$$typeof=R,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName=\"ForwardRef(\"+(n.displayName||n.name)+\")\",t}var k=function(n,t){return null==n?null:r(r(n).map(t))},I={map:k,forEach:k,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw\"Children.only\";return t[0]},toArray:r},N=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);N(n,t,e,r)};var M=e.unmount;function T(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){\"function\"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=function(n,t){for(var e in t)n[e]=t[e];return n}({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return T(n,t,e)})),n}function A(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return A(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function D(){this.__u=0,this.t=null,this.__b=null}function L(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function O(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t(r,o)}return o.displayName=\"Lazy\",o.__f=!0,o}function F(){this.u=null,this.o=null}e.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),M&&M(n)},(D.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=L(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=A(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},D.prototype.componentWillUnmount=function(){this.t=[]},D.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement(\"div\"),o=this.__v.__k[0].__c;this.__v.__k[0]=T(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var U=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&(\"t\"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.u=e=e[2]}};function V(n){return this.getChildContext=function(){return n.context},n.children}function W(n){var e=this,r=n.i;e.componentWillUnmount=function(){o(null,e.l),e.l=null,e.i=null},e.i&&e.i!==r&&e.componentWillUnmount(),e.l||(e.i=r,e.l={nodeType:1,parentNode:r,childNodes:[],contains:function(){return!0},appendChild:function(n){this.childNodes.push(n),e.i.appendChild(n)},insertBefore:function(n,t){this.childNodes.push(n),e.i.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),e.i.removeChild(n)}}),o(t(V,{context:e.context},n.__v),e.l)}function P(n,e){var r=t(W,{__v:n,i:e});return r.containerInfo=e,r}(F.prototype=new n).__a=function(n){var t=this,e=L(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),U(t,n,r)):u()};e?e(o):o()}},F.prototype.render=function(n){this.u=null,this.o=new Map;var t=r(n.children);n.revealOrder&&\"b\"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.o.set(t[e],this.u=[1,0,this.u]);return n.children},F.prototype.componentDidUpdate=F.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){U(n,e,t)})};var j=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.element\")||60103,z=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,B=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,H=/[A-Z0-9]/g,Z=\"undefined\"!=typeof document,Y=function(n){return(\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function $(n,t,e){return null==t.__k&&(t.textContent=\"\"),o(n,t),\"function\"==typeof e&&e(),n?n.__c:null}function q(n,t,e){return i(n,t),\"function\"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},[\"componentWillMount\",\"componentWillReceiveProps\",\"componentWillUpdate\"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this[\"UNSAFE_\"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var G=e.event;function J(){}function K(){return this.cancelBubble}function Q(){return this.defaultPrevented}e.event=function(n){return G&&(n=G(n)),n.persist=J,n.isPropagationStopped=K,n.isDefaultPrevented=Q,n.nativeEvent=n};var X,nn={enumerable:!1,configurable:!0,get:function(){return this.class}},tn=e.vnode;e.vnode=function(n){\"string\"==typeof n.type&&function(n){var t=n.props,e=n.type,u={},o=-1===e.indexOf(\"-\");for(var i in t){var c=t[i];if(!(\"value\"===i&&\"defaultValue\"in t&&null==c||Z&&\"children\"===i&&\"noscript\"===e||\"class\"===i||\"className\"===i)){var f=i.toLowerCase();\"defaultValue\"===i&&\"value\"in t&&null==t.value?i=\"value\":\"download\"===i&&!0===c?c=\"\":\"translate\"===f&&\"no\"===c?c=!1:\"o\"===f[0]&&\"n\"===f[1]?\"ondoubleclick\"===f?i=\"ondblclick\":\"onchange\"!==f||\"input\"!==e&&\"textarea\"!==e||Y(t.type)?\"onfocus\"===f?i=\"onfocusin\":\"onblur\"===f?i=\"onfocusout\":B.test(i)&&(i=f):f=i=\"oninput\":o&&z.test(i)?i=i.replace(H,\"-$&\").toLowerCase():null===c&&(c=void 0),\"oninput\"===f&&u[i=f]&&(i=\"oninputCapture\"),u[i]=c}}\"select\"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),\"select\"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,\"className\",nn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=j,tn&&tn(n)};var en=e.__r;e.__r=function(n){en&&en(n),X=n.__c};var rn=e.diffed;e.diffed=function(n){rn&&rn(n);var t=n.props,e=n.__e;null!=e&&\"textarea\"===n.type&&\"value\"in t&&t.value!==e.value&&(e.value=null==t.value?\"\":t.value),X=null};var un={ReactCurrentDispatcher:{current:{readContext:function(n){return X.__n[n.__c].props.value},useCallback:a,useContext:s,useDebugValue:h,useDeferredValue:_n,useEffect:v,useId:d,useImperativeHandle:p,useInsertionEffect:Sn,useLayoutEffect:m,useMemo:y,useReducer:_,useRef:b,useState:S,useSyncExternalStore:En,useTransition:bn}}},on=\"18.3.1\";function cn(n){return t.bind(null,n)}function fn(n){return!!n&&n.$$typeof===j}function ln(n){return fn(n)&&n.type===u}function an(n){return!!n&&!!n.displayName&&(\"string\"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith(\"Memo(\")}function sn(n){return fn(n)?l.apply(null,arguments):n}function hn(n){return!!n.__k&&(o(null,n),!0)}function vn(n){return n&&(n.base||1===n.nodeType&&n)||null}var dn=function(n,t){return n(t)},pn=function(n,t){return n(t)},mn=u;function yn(n){n()}function _n(n){return n}function bn(){return[!1,yn]}var Sn=m,gn=fn;function En(n,t){var e=t(),r=S({h:{__:e,v:t}}),u=r[0].h,o=r[1];return m(function(){u.__=e,u.v=t,Cn(u)&&o({h:u})},[n,e,t]),v(function(){return Cn(u)&&o({h:u}),n(function(){Cn(u)&&o({h:u})})},[n]),e}function Cn(n){var t,e,r=n.v,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}var xn={useState:S,useId:d,useReducer:_,useEffect:v,useLayoutEffect:m,useInsertionEffect:Sn,useTransition:bn,useDeferredValue:_n,useSyncExternalStore:En,startTransition:yn,useRef:b,useImperativeHandle:p,useMemo:y,useCallback:a,useContext:s,useDebugValue:h,version:\"18.3.1\",Children:I,render:$,hydrate:q,unmountComponentAtNode:hn,createPortal:P,createElement:t,createContext:c,createFactory:cn,cloneElement:sn,createRef:f,Fragment:u,isValidElement:fn,isElement:gn,isFragment:ln,isMemo:an,findDOMNode:vn,Component:n,PureComponent:E,memo:C,forwardRef:w,flushSync:pn,unstable_batchedUpdates:dn,StrictMode:mn,Suspense:D,SuspenseList:F,lazy:O,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:un};export{I as Children,E as PureComponent,mn as StrictMode,D as Suspense,F as SuspenseList,un as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sn as cloneElement,cn as createFactory,P as createPortal,xn as default,vn as findDOMNode,pn as flushSync,w as forwardRef,q as hydrate,gn as isElement,ln as isFragment,an as isMemo,fn as isValidElement,O as lazy,C as memo,$ as render,yn as startTransition,hn as unmountComponentAtNode,dn as unstable_batchedUpdates,_n as useDeferredValue,Sn as useInsertionEffect,En as useSyncExternalStore,bn as useTransition,on as version};\n//# sourceMappingURL=compat.module.js.map\n","import { render, hydrate, unmountComponentAtNode } from 'preact/compat';\n\nexport function createRoot(container) {\n\treturn {\n\t\t// eslint-disable-next-line\n\t\trender: function (children) {\n\t\t\trender(children, container);\n\t\t},\n\t\t// eslint-disable-next-line\n\t\tunmount: function () {\n\t\t\tunmountComponentAtNode(container);\n\t\t}\n\t};\n}\n\nexport function hydrateRoot(container, children) {\n\thydrate(children, container);\n\treturn createRoot(container);\n}\n\nexport default {\n\tcreateRoot,\n\thydrateRoot\n};\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","//\n// Main\n//\nexport function memoize(fn, options) {\n var cache = options && options.cache ? options.cache : cacheDefault;\n var serializer = options && options.serializer ? options.serializer : serializerDefault;\n var strategy = options && options.strategy ? options.strategy : strategyDefault;\n return strategy(fn, {\n cache: cache,\n serializer: serializer,\n });\n}\n//\n// Strategy\n//\nfunction isPrimitive(value) {\n return (value == null || typeof value === 'number' || typeof value === 'boolean'); // || typeof value === \"string\" 'unsafe' primitive for our needs\n}\nfunction monadic(fn, cache, serializer, arg) {\n var cacheKey = isPrimitive(arg) ? arg : serializer(arg);\n var computedValue = cache.get(cacheKey);\n if (typeof computedValue === 'undefined') {\n computedValue = fn.call(this, arg);\n cache.set(cacheKey, computedValue);\n }\n return computedValue;\n}\nfunction variadic(fn, cache, serializer) {\n var args = Array.prototype.slice.call(arguments, 3);\n var cacheKey = serializer(args);\n var computedValue = cache.get(cacheKey);\n if (typeof computedValue === 'undefined') {\n computedValue = fn.apply(this, args);\n cache.set(cacheKey, computedValue);\n }\n return computedValue;\n}\nfunction assemble(fn, context, strategy, cache, serialize) {\n return strategy.bind(context, fn, cache, serialize);\n}\nfunction strategyDefault(fn, options) {\n var strategy = fn.length === 1 ? monadic : variadic;\n return assemble(fn, this, strategy, options.cache.create(), options.serializer);\n}\nfunction strategyVariadic(fn, options) {\n return assemble(fn, this, variadic, options.cache.create(), options.serializer);\n}\nfunction strategyMonadic(fn, options) {\n return assemble(fn, this, monadic, options.cache.create(), options.serializer);\n}\n//\n// Serializer\n//\nvar serializerDefault = function () {\n return JSON.stringify(arguments);\n};\n//\n// Cache\n//\nfunction ObjectWithoutPrototypeCache() {\n this.cache = Object.create(null);\n}\nObjectWithoutPrototypeCache.prototype.get = function (key) {\n return this.cache[key];\n};\nObjectWithoutPrototypeCache.prototype.set = function (key, value) {\n this.cache[key] = value;\n};\nvar cacheDefault = {\n create: function create() {\n // @ts-ignore\n return new ObjectWithoutPrototypeCache();\n },\n};\nexport var strategies = {\n variadic: strategyVariadic,\n monadic: strategyMonadic,\n};\n","import { __spreadArray } from \"tslib\";\nimport { memoize, strategies } from '@formatjs/fast-memoize';\n/**\n * Cannot do Math.log(x) / Math.log(10) bc if IEEE floating point issue\n * @param x number\n */\nexport function getMagnitude(x) {\n // Cannot count string length via Number.toString because it may use scientific notation\n // for very small or very large numbers.\n return Math.floor(Math.log(x) * Math.LOG10E);\n}\nexport function repeat(s, times) {\n if (typeof s.repeat === 'function') {\n return s.repeat(times);\n }\n var arr = new Array(times);\n for (var i = 0; i < arr.length; i++) {\n arr[i] = s;\n }\n return arr.join('');\n}\nexport function setInternalSlot(map, pl, field, value) {\n if (!map.get(pl)) {\n map.set(pl, Object.create(null));\n }\n var slots = map.get(pl);\n slots[field] = value;\n}\nexport function setMultiInternalSlots(map, pl, props) {\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\n var k = _a[_i];\n setInternalSlot(map, pl, k, props[k]);\n }\n}\nexport function getInternalSlot(map, pl, field) {\n return getMultiInternalSlots(map, pl, field)[field];\n}\nexport function getMultiInternalSlots(map, pl) {\n var fields = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n fields[_i - 2] = arguments[_i];\n }\n var slots = map.get(pl);\n if (!slots) {\n throw new TypeError(\"\".concat(pl, \" InternalSlot has not been initialized\"));\n }\n return fields.reduce(function (all, f) {\n all[f] = slots[f];\n return all;\n }, Object.create(null));\n}\nexport function isLiteralPart(patternPart) {\n return patternPart.type === 'literal';\n}\n/*\n 17 ECMAScript Standard Built-in Objects:\n Every built-in Function object, including constructors, that is not\n identified as an anonymous function has a name property whose value\n is a String.\n\n Unless otherwise specified, the name property of a built-in Function\n object, if it exists, has the attributes { [[Writable]]: false,\n [[Enumerable]]: false, [[Configurable]]: true }.\n*/\nexport function defineProperty(target, name, _a) {\n var value = _a.value;\n Object.defineProperty(target, name, {\n configurable: true,\n enumerable: false,\n writable: true,\n value: value,\n });\n}\n/**\n * 7.3.5 CreateDataProperty\n * @param target\n * @param name\n * @param value\n */\nexport function createDataProperty(target, name, value) {\n Object.defineProperty(target, name, {\n configurable: true,\n enumerable: true,\n writable: true,\n value: value,\n });\n}\nexport var UNICODE_EXTENSION_SEQUENCE_REGEX = /-u(?:-[0-9a-z]{2,8})+/gi;\nexport function invariant(condition, message, Err) {\n if (Err === void 0) { Err = Error; }\n if (!condition) {\n throw new Err(message);\n }\n}\nexport var createMemoizedNumberFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.NumberFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n}, {\n strategy: strategies.variadic,\n});\nexport var createMemoizedDateTimeFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.DateTimeFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n}, {\n strategy: strategies.variadic,\n});\nexport var createMemoizedPluralRules = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.PluralRules).bind.apply(_a, __spreadArray([void 0], args, false)))();\n}, {\n strategy: strategies.variadic,\n});\nexport var createMemoizedLocale = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.Locale).bind.apply(_a, __spreadArray([void 0], args, false)))();\n}, {\n strategy: strategies.variadic,\n});\nexport var createMemoizedListFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.ListFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n}, {\n strategy: strategies.variadic,\n});\n","export var ErrorKind;\n(function (ErrorKind) {\n /** Argument is unclosed (e.g. `{0`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_CLOSING_BRACE\"] = 1] = \"EXPECT_ARGUMENT_CLOSING_BRACE\";\n /** Argument is empty (e.g. `{}`). */\n ErrorKind[ErrorKind[\"EMPTY_ARGUMENT\"] = 2] = \"EMPTY_ARGUMENT\";\n /** Argument is malformed (e.g. `{foo!}``) */\n ErrorKind[ErrorKind[\"MALFORMED_ARGUMENT\"] = 3] = \"MALFORMED_ARGUMENT\";\n /** Expect an argument type (e.g. `{foo,}`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_TYPE\"] = 4] = \"EXPECT_ARGUMENT_TYPE\";\n /** Unsupported argument type (e.g. `{foo,foo}`) */\n ErrorKind[ErrorKind[\"INVALID_ARGUMENT_TYPE\"] = 5] = \"INVALID_ARGUMENT_TYPE\";\n /** Expect an argument style (e.g. `{foo, number, }`) */\n ErrorKind[ErrorKind[\"EXPECT_ARGUMENT_STYLE\"] = 6] = \"EXPECT_ARGUMENT_STYLE\";\n /** The number skeleton is invalid. */\n ErrorKind[ErrorKind[\"INVALID_NUMBER_SKELETON\"] = 7] = \"INVALID_NUMBER_SKELETON\";\n /** The date time skeleton is invalid. */\n ErrorKind[ErrorKind[\"INVALID_DATE_TIME_SKELETON\"] = 8] = \"INVALID_DATE_TIME_SKELETON\";\n /** Exepct a number skeleton following the `::` (e.g. `{foo, number, ::}`) */\n ErrorKind[ErrorKind[\"EXPECT_NUMBER_SKELETON\"] = 9] = \"EXPECT_NUMBER_SKELETON\";\n /** Exepct a date time skeleton following the `::` (e.g. `{foo, date, ::}`) */\n ErrorKind[ErrorKind[\"EXPECT_DATE_TIME_SKELETON\"] = 10] = \"EXPECT_DATE_TIME_SKELETON\";\n /** Unmatched apostrophes in the argument style (e.g. `{foo, number, 'test`) */\n ErrorKind[ErrorKind[\"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\"] = 11] = \"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\";\n /** Missing select argument options (e.g. `{foo, select}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_OPTIONS\"] = 12] = \"EXPECT_SELECT_ARGUMENT_OPTIONS\";\n /** Expecting an offset value in `plural` or `selectordinal` argument (e.g `{foo, plural, offset}`) */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\"] = 13] = \"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\";\n /** Offset value in `plural` or `selectordinal` is invalid (e.g. `{foo, plural, offset: x}`) */\n ErrorKind[ErrorKind[\"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\"] = 14] = \"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\";\n /** Expecting a selector in `select` argument (e.g `{foo, select}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_SELECTOR\"] = 15] = \"EXPECT_SELECT_ARGUMENT_SELECTOR\";\n /** Expecting a selector in `plural` or `selectordinal` argument (e.g `{foo, plural}`) */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_SELECTOR\"] = 16] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR\";\n /** Expecting a message fragment after the `select` selector (e.g. `{foo, select, apple}`) */\n ErrorKind[ErrorKind[\"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\"] = 17] = \"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\";\n /**\n * Expecting a message fragment after the `plural` or `selectordinal` selector\n * (e.g. `{foo, plural, one}`)\n */\n ErrorKind[ErrorKind[\"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\"] = 18] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\";\n /** Selector in `plural` or `selectordinal` is malformed (e.g. `{foo, plural, =x {#}}`) */\n ErrorKind[ErrorKind[\"INVALID_PLURAL_ARGUMENT_SELECTOR\"] = 19] = \"INVALID_PLURAL_ARGUMENT_SELECTOR\";\n /**\n * Duplicate selectors in `plural` or `selectordinal` argument.\n * (e.g. {foo, plural, one {#} one {#}})\n */\n ErrorKind[ErrorKind[\"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\"] = 20] = \"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\";\n /** Duplicate selectors in `select` argument.\n * (e.g. {foo, select, apple {apple} apple {apple}})\n */\n ErrorKind[ErrorKind[\"DUPLICATE_SELECT_ARGUMENT_SELECTOR\"] = 21] = \"DUPLICATE_SELECT_ARGUMENT_SELECTOR\";\n /** Plural or select argument option must have `other` clause. */\n ErrorKind[ErrorKind[\"MISSING_OTHER_CLAUSE\"] = 22] = \"MISSING_OTHER_CLAUSE\";\n /** The tag is malformed. (e.g. `<bold!>foo</bold!>) */\n ErrorKind[ErrorKind[\"INVALID_TAG\"] = 23] = \"INVALID_TAG\";\n /** The tag name is invalid. (e.g. `<123>foo</123>`) */\n ErrorKind[ErrorKind[\"INVALID_TAG_NAME\"] = 25] = \"INVALID_TAG_NAME\";\n /** The closing tag does not match the opening tag. (e.g. `<bold>foo</italic>`) */\n ErrorKind[ErrorKind[\"UNMATCHED_CLOSING_TAG\"] = 26] = \"UNMATCHED_CLOSING_TAG\";\n /** The opening tag has unmatched closing tag. (e.g. `<bold>foo`) */\n ErrorKind[ErrorKind[\"UNCLOSED_TAG\"] = 27] = \"UNCLOSED_TAG\";\n})(ErrorKind || (ErrorKind = {}));\n","export var TYPE;\n(function (TYPE) {\n /**\n * Raw text\n */\n TYPE[TYPE[\"literal\"] = 0] = \"literal\";\n /**\n * Variable w/o any format, e.g `var` in `this is a {var}`\n */\n TYPE[TYPE[\"argument\"] = 1] = \"argument\";\n /**\n * Variable w/ number format\n */\n TYPE[TYPE[\"number\"] = 2] = \"number\";\n /**\n * Variable w/ date format\n */\n TYPE[TYPE[\"date\"] = 3] = \"date\";\n /**\n * Variable w/ time format\n */\n TYPE[TYPE[\"time\"] = 4] = \"time\";\n /**\n * Variable w/ select format\n */\n TYPE[TYPE[\"select\"] = 5] = \"select\";\n /**\n * Variable w/ plural format\n */\n TYPE[TYPE[\"plural\"] = 6] = \"plural\";\n /**\n * Only possible within plural argument.\n * This is the `#` symbol that will be substituted with the count.\n */\n TYPE[TYPE[\"pound\"] = 7] = \"pound\";\n /**\n * XML-like tag\n */\n TYPE[TYPE[\"tag\"] = 8] = \"tag\";\n})(TYPE || (TYPE = {}));\nexport var SKELETON_TYPE;\n(function (SKELETON_TYPE) {\n SKELETON_TYPE[SKELETON_TYPE[\"number\"] = 0] = \"number\";\n SKELETON_TYPE[SKELETON_TYPE[\"dateTime\"] = 1] = \"dateTime\";\n})(SKELETON_TYPE || (SKELETON_TYPE = {}));\n/**\n * Type Guards\n */\nexport function isLiteralElement(el) {\n return el.type === TYPE.literal;\n}\nexport function isArgumentElement(el) {\n return el.type === TYPE.argument;\n}\nexport function isNumberElement(el) {\n return el.type === TYPE.number;\n}\nexport function isDateElement(el) {\n return el.type === TYPE.date;\n}\nexport function isTimeElement(el) {\n return el.type === TYPE.time;\n}\nexport function isSelectElement(el) {\n return el.type === TYPE.select;\n}\nexport function isPluralElement(el) {\n return el.type === TYPE.plural;\n}\nexport function isPoundElement(el) {\n return el.type === TYPE.pound;\n}\nexport function isTagElement(el) {\n return el.type === TYPE.tag;\n}\nexport function isNumberSkeleton(el) {\n return !!(el && typeof el === 'object' && el.type === SKELETON_TYPE.number);\n}\nexport function isDateTimeSkeleton(el) {\n return !!(el && typeof el === 'object' && el.type === SKELETON_TYPE.dateTime);\n}\nexport function createLiteralElement(value) {\n return {\n type: TYPE.literal,\n value: value,\n };\n}\nexport function createNumberElement(value, style) {\n return {\n type: TYPE.number,\n value: value,\n style: style,\n };\n}\n","// @generated from regex-gen.ts\nexport var SPACE_SEPARATOR_REGEX = /[ \\xA0\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/;\nexport var WHITE_SPACE_REGEX = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/;\n","/**\n * https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * Credit: https://github.com/caridy/intl-datetimeformat-pattern/blob/master/index.js\n * with some tweaks\n */\nvar DATE_TIME_REGEX = /(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;\n/**\n * Parse Date time skeleton into Intl.DateTimeFormatOptions\n * Ref: https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * @public\n * @param skeleton skeleton string\n */\nexport function parseDateTimeSkeleton(skeleton) {\n var result = {};\n skeleton.replace(DATE_TIME_REGEX, function (match) {\n var len = match.length;\n switch (match[0]) {\n // Era\n case 'G':\n result.era = len === 4 ? 'long' : len === 5 ? 'narrow' : 'short';\n break;\n // Year\n case 'y':\n result.year = len === 2 ? '2-digit' : 'numeric';\n break;\n case 'Y':\n case 'u':\n case 'U':\n case 'r':\n throw new RangeError('`Y/u/U/r` (year) patterns are not supported, use `y` instead');\n // Quarter\n case 'q':\n case 'Q':\n throw new RangeError('`q/Q` (quarter) patterns are not supported');\n // Month\n case 'M':\n case 'L':\n result.month = ['numeric', '2-digit', 'short', 'long', 'narrow'][len - 1];\n break;\n // Week\n case 'w':\n case 'W':\n throw new RangeError('`w/W` (week) patterns are not supported');\n case 'd':\n result.day = ['numeric', '2-digit'][len - 1];\n break;\n case 'D':\n case 'F':\n case 'g':\n throw new RangeError('`D/F/g` (day) patterns are not supported, use `d` instead');\n // Weekday\n case 'E':\n result.weekday = len === 4 ? 'long' : len === 5 ? 'narrow' : 'short';\n break;\n case 'e':\n if (len < 4) {\n throw new RangeError('`e..eee` (weekday) patterns are not supported');\n }\n result.weekday = ['short', 'long', 'narrow', 'short'][len - 4];\n break;\n case 'c':\n if (len < 4) {\n throw new RangeError('`c..ccc` (weekday) patterns are not supported');\n }\n result.weekday = ['short', 'long', 'narrow', 'short'][len - 4];\n break;\n // Period\n case 'a': // AM, PM\n result.hour12 = true;\n break;\n case 'b': // am, pm, noon, midnight\n case 'B': // flexible day periods\n throw new RangeError('`b/B` (period) patterns are not supported, use `a` instead');\n // Hour\n case 'h':\n result.hourCycle = 'h12';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'H':\n result.hourCycle = 'h23';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'K':\n result.hourCycle = 'h11';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'k':\n result.hourCycle = 'h24';\n result.hour = ['numeric', '2-digit'][len - 1];\n break;\n case 'j':\n case 'J':\n case 'C':\n throw new RangeError('`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead');\n // Minute\n case 'm':\n result.minute = ['numeric', '2-digit'][len - 1];\n break;\n // Second\n case 's':\n result.second = ['numeric', '2-digit'][len - 1];\n break;\n case 'S':\n case 'A':\n throw new RangeError('`S/A` (second) patterns are not supported, use `s` instead');\n // Zone\n case 'z': // 1..3, 4: specific non-location format\n result.timeZoneName = len < 4 ? 'short' : 'long';\n break;\n case 'Z': // 1..3, 4, 5: The ISO8601 varios formats\n case 'O': // 1, 4: milliseconds in day short, long\n case 'v': // 1, 4: generic non-location format\n case 'V': // 1, 2, 3, 4: time zone ID or city\n case 'X': // 1, 2, 3, 4: The ISO8601 varios formats\n case 'x': // 1, 2, 3, 4: The ISO8601 varios formats\n throw new RangeError('`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead');\n }\n return '';\n });\n return result;\n}\n","// @generated from regex-gen.ts\nexport var WHITE_SPACE_REGEX = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/i;\n","import { __assign } from \"tslib\";\nimport { WHITE_SPACE_REGEX } from './regex.generated';\nexport function parseNumberSkeletonFromString(skeleton) {\n if (skeleton.length === 0) {\n throw new Error('Number skeleton cannot be empty');\n }\n // Parse the skeleton\n var stringTokens = skeleton\n .split(WHITE_SPACE_REGEX)\n .filter(function (x) { return x.length > 0; });\n var tokens = [];\n for (var _i = 0, stringTokens_1 = stringTokens; _i < stringTokens_1.length; _i++) {\n var stringToken = stringTokens_1[_i];\n var stemAndOptions = stringToken.split('/');\n if (stemAndOptions.length === 0) {\n throw new Error('Invalid number skeleton');\n }\n var stem = stemAndOptions[0], options = stemAndOptions.slice(1);\n for (var _a = 0, options_1 = options; _a < options_1.length; _a++) {\n var option = options_1[_a];\n if (option.length === 0) {\n throw new Error('Invalid number skeleton');\n }\n }\n tokens.push({ stem: stem, options: options });\n }\n return tokens;\n}\nfunction icuUnitToEcma(unit) {\n return unit.replace(/^(.*?)-/, '');\n}\nvar FRACTION_PRECISION_REGEX = /^\\.(?:(0+)(\\*)?|(#+)|(0+)(#+))$/g;\nvar SIGNIFICANT_PRECISION_REGEX = /^(@+)?(\\+|#+)?[rs]?$/g;\nvar INTEGER_WIDTH_REGEX = /(\\*)(0+)|(#+)(0+)|(0+)/g;\nvar CONCISE_INTEGER_WIDTH_REGEX = /^(0+)$/;\nfunction parseSignificantPrecision(str) {\n var result = {};\n if (str[str.length - 1] === 'r') {\n result.roundingPriority = 'morePrecision';\n }\n else if (str[str.length - 1] === 's') {\n result.roundingPriority = 'lessPrecision';\n }\n str.replace(SIGNIFICANT_PRECISION_REGEX, function (_, g1, g2) {\n // @@@ case\n if (typeof g2 !== 'string') {\n result.minimumSignificantDigits = g1.length;\n result.maximumSignificantDigits = g1.length;\n }\n // @@@+ case\n else if (g2 === '+') {\n result.minimumSignificantDigits = g1.length;\n }\n // .### case\n else if (g1[0] === '#') {\n result.maximumSignificantDigits = g1.length;\n }\n // .@@## or .@@@ case\n else {\n result.minimumSignificantDigits = g1.length;\n result.maximumSignificantDigits =\n g1.length + (typeof g2 === 'string' ? g2.length : 0);\n }\n return '';\n });\n return result;\n}\nfunction parseSign(str) {\n switch (str) {\n case 'sign-auto':\n return {\n signDisplay: 'auto',\n };\n case 'sign-accounting':\n case '()':\n return {\n currencySign: 'accounting',\n };\n case 'sign-always':\n case '+!':\n return {\n signDisplay: 'always',\n };\n case 'sign-accounting-always':\n case '()!':\n return {\n signDisplay: 'always',\n currencySign: 'accounting',\n };\n case 'sign-except-zero':\n case '+?':\n return {\n signDisplay: 'exceptZero',\n };\n case 'sign-accounting-except-zero':\n case '()?':\n return {\n signDisplay: 'exceptZero',\n currencySign: 'accounting',\n };\n case 'sign-never':\n case '+_':\n return {\n signDisplay: 'never',\n };\n }\n}\nfunction parseConciseScientificAndEngineeringStem(stem) {\n // Engineering\n var result;\n if (stem[0] === 'E' && stem[1] === 'E') {\n result = {\n notation: 'engineering',\n };\n stem = stem.slice(2);\n }\n else if (stem[0] === 'E') {\n result = {\n notation: 'scientific',\n };\n stem = stem.slice(1);\n }\n if (result) {\n var signDisplay = stem.slice(0, 2);\n if (signDisplay === '+!') {\n result.signDisplay = 'always';\n stem = stem.slice(2);\n }\n else if (signDisplay === '+?') {\n result.signDisplay = 'exceptZero';\n stem = stem.slice(2);\n }\n if (!CONCISE_INTEGER_WIDTH_REGEX.test(stem)) {\n throw new Error('Malformed concise eng/scientific notation');\n }\n result.minimumIntegerDigits = stem.length;\n }\n return result;\n}\nfunction parseNotationOptions(opt) {\n var result = {};\n var signOpts = parseSign(opt);\n if (signOpts) {\n return signOpts;\n }\n return result;\n}\n/**\n * https://github.com/unicode-org/icu/blob/master/docs/userguide/format_parse/numbers/skeletons.md#skeleton-stems-and-options\n */\nexport function parseNumberSkeleton(tokens) {\n var result = {};\n for (var _i = 0, tokens_1 = tokens; _i < tokens_1.length; _i++) {\n var token = tokens_1[_i];\n switch (token.stem) {\n case 'percent':\n case '%':\n result.style = 'percent';\n continue;\n case '%x100':\n result.style = 'percent';\n result.scale = 100;\n continue;\n case 'currency':\n result.style = 'currency';\n result.currency = token.options[0];\n continue;\n case 'group-off':\n case ',_':\n result.useGrouping = false;\n continue;\n case 'precision-integer':\n case '.':\n result.maximumFractionDigits = 0;\n continue;\n case 'measure-unit':\n case 'unit':\n result.style = 'unit';\n result.unit = icuUnitToEcma(token.options[0]);\n continue;\n case 'compact-short':\n case 'K':\n result.notation = 'compact';\n result.compactDisplay = 'short';\n continue;\n case 'compact-long':\n case 'KK':\n result.notation = 'compact';\n result.compactDisplay = 'long';\n continue;\n case 'scientific':\n result = __assign(__assign(__assign({}, result), { notation: 'scientific' }), token.options.reduce(function (all, opt) { return (__assign(__assign({}, all), parseNotationOptions(opt))); }, {}));\n continue;\n case 'engineering':\n result = __assign(__assign(__assign({}, result), { notation: 'engineering' }), token.options.reduce(function (all, opt) { return (__assign(__assign({}, all), parseNotationOptions(opt))); }, {}));\n continue;\n case 'notation-simple':\n result.notation = 'standard';\n continue;\n // https://github.com/unicode-org/icu/blob/master/icu4c/source/i18n/unicode/unumberformatter.h\n case 'unit-width-narrow':\n result.currencyDisplay = 'narrowSymbol';\n result.unitDisplay = 'narrow';\n continue;\n case 'unit-width-short':\n result.currencyDisplay = 'code';\n result.unitDisplay = 'short';\n continue;\n case 'unit-width-full-name':\n result.currencyDisplay = 'name';\n result.unitDisplay = 'long';\n continue;\n case 'unit-width-iso-code':\n result.currencyDisplay = 'symbol';\n continue;\n case 'scale':\n result.scale = parseFloat(token.options[0]);\n continue;\n case 'rounding-mode-floor':\n result.roundingMode = 'floor';\n continue;\n case 'rounding-mode-ceiling':\n result.roundingMode = 'ceil';\n continue;\n case 'rounding-mode-down':\n result.roundingMode = 'trunc';\n continue;\n case 'rounding-mode-up':\n result.roundingMode = 'expand';\n continue;\n case 'rounding-mode-half-even':\n result.roundingMode = 'halfEven';\n continue;\n case 'rounding-mode-half-down':\n result.roundingMode = 'halfTrunc';\n continue;\n case 'rounding-mode-half-up':\n result.roundingMode = 'halfExpand';\n continue;\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#integer-width\n case 'integer-width':\n if (token.options.length > 1) {\n throw new RangeError('integer-width stems only accept a single optional option');\n }\n token.options[0].replace(INTEGER_WIDTH_REGEX, function (_, g1, g2, g3, g4, g5) {\n if (g1) {\n result.minimumIntegerDigits = g2.length;\n }\n else if (g3 && g4) {\n throw new Error('We currently do not support maximum integer digits');\n }\n else if (g5) {\n throw new Error('We currently do not support exact integer digits');\n }\n return '';\n });\n continue;\n }\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#integer-width\n if (CONCISE_INTEGER_WIDTH_REGEX.test(token.stem)) {\n result.minimumIntegerDigits = token.stem.length;\n continue;\n }\n if (FRACTION_PRECISION_REGEX.test(token.stem)) {\n // Precision\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#fraction-precision\n // precision-integer case\n if (token.options.length > 1) {\n throw new RangeError('Fraction-precision stems only accept a single optional option');\n }\n token.stem.replace(FRACTION_PRECISION_REGEX, function (_, g1, g2, g3, g4, g5) {\n // .000* case (before ICU67 it was .000+)\n if (g2 === '*') {\n result.minimumFractionDigits = g1.length;\n }\n // .### case\n else if (g3 && g3[0] === '#') {\n result.maximumFractionDigits = g3.length;\n }\n // .00## case\n else if (g4 && g5) {\n result.minimumFractionDigits = g4.length;\n result.maximumFractionDigits = g4.length + g5.length;\n }\n else {\n result.minimumFractionDigits = g1.length;\n result.maximumFractionDigits = g1.length;\n }\n return '';\n });\n var opt = token.options[0];\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#trailing-zero-display\n if (opt === 'w') {\n result = __assign(__assign({}, result), { trailingZeroDisplay: 'stripIfInteger' });\n }\n else if (opt) {\n result = __assign(__assign({}, result), parseSignificantPrecision(opt));\n }\n continue;\n }\n // https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#significant-digits-precision\n if (SIGNIFICANT_PRECISION_REGEX.test(token.stem)) {\n result = __assign(__assign({}, result), parseSignificantPrecision(token.stem));\n continue;\n }\n var signOpts = parseSign(token.stem);\n if (signOpts) {\n result = __assign(__assign({}, result), signOpts);\n }\n var conciseScientificAndEngineeringOpts = parseConciseScientificAndEngineeringStem(token.stem);\n if (conciseScientificAndEngineeringOpts) {\n result = __assign(__assign({}, result), conciseScientificAndEngineeringOpts);\n }\n }\n return result;\n}\n","// @generated from time-data-gen.ts\n// prettier-ignore \nexport var timeData = {\n \"001\": [\n \"H\",\n \"h\"\n ],\n \"419\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"AC\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"AD\": [\n \"H\",\n \"hB\"\n ],\n \"AE\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"AF\": [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n \"AG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"AI\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"AL\": [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"AM\": [\n \"H\",\n \"hB\"\n ],\n \"AO\": [\n \"H\",\n \"hB\"\n ],\n \"AR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"AS\": [\n \"h\",\n \"H\"\n ],\n \"AT\": [\n \"H\",\n \"hB\"\n ],\n \"AU\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"AW\": [\n \"H\",\n \"hB\"\n ],\n \"AX\": [\n \"H\"\n ],\n \"AZ\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"BA\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"BB\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BD\": [\n \"h\",\n \"hB\",\n \"H\"\n ],\n \"BE\": [\n \"H\",\n \"hB\"\n ],\n \"BF\": [\n \"H\",\n \"hB\"\n ],\n \"BG\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"BH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"BI\": [\n \"H\",\n \"h\"\n ],\n \"BJ\": [\n \"H\",\n \"hB\"\n ],\n \"BL\": [\n \"H\",\n \"hB\"\n ],\n \"BM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BN\": [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"BO\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"BQ\": [\n \"H\"\n ],\n \"BR\": [\n \"H\",\n \"hB\"\n ],\n \"BS\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"BT\": [\n \"h\",\n \"H\"\n ],\n \"BW\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"BY\": [\n \"H\",\n \"h\"\n ],\n \"BZ\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CA\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"CC\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CD\": [\n \"hB\",\n \"H\"\n ],\n \"CF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"CG\": [\n \"H\",\n \"hB\"\n ],\n \"CH\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"CI\": [\n \"H\",\n \"hB\"\n ],\n \"CK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CL\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"CM\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"CN\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"CO\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"CP\": [\n \"H\"\n ],\n \"CR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"CU\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"CV\": [\n \"H\",\n \"hB\"\n ],\n \"CW\": [\n \"H\",\n \"hB\"\n ],\n \"CX\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"CY\": [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n \"CZ\": [\n \"H\"\n ],\n \"DE\": [\n \"H\",\n \"hB\"\n ],\n \"DG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"DJ\": [\n \"h\",\n \"H\"\n ],\n \"DK\": [\n \"H\"\n ],\n \"DM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"DO\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"DZ\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"EA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"EC\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"EE\": [\n \"H\",\n \"hB\"\n ],\n \"EG\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"EH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"ER\": [\n \"h\",\n \"H\"\n ],\n \"ES\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"ET\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"FI\": [\n \"H\"\n ],\n \"FJ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"FK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"FM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"FO\": [\n \"H\",\n \"h\"\n ],\n \"FR\": [\n \"H\",\n \"hB\"\n ],\n \"GA\": [\n \"H\",\n \"hB\"\n ],\n \"GB\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GD\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GE\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"GF\": [\n \"H\",\n \"hB\"\n ],\n \"GG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GH\": [\n \"h\",\n \"H\"\n ],\n \"GI\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"GL\": [\n \"H\",\n \"h\"\n ],\n \"GM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GN\": [\n \"H\",\n \"hB\"\n ],\n \"GP\": [\n \"H\",\n \"hB\"\n ],\n \"GQ\": [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n \"GR\": [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n \"GT\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"GU\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"GW\": [\n \"H\",\n \"hB\"\n ],\n \"GY\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"HK\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"HN\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"HR\": [\n \"H\",\n \"hB\"\n ],\n \"HU\": [\n \"H\",\n \"h\"\n ],\n \"IC\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"ID\": [\n \"H\"\n ],\n \"IE\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IL\": [\n \"H\",\n \"hB\"\n ],\n \"IM\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IN\": [\n \"h\",\n \"H\"\n ],\n \"IO\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"IQ\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"IR\": [\n \"hB\",\n \"H\"\n ],\n \"IS\": [\n \"H\"\n ],\n \"IT\": [\n \"H\",\n \"hB\"\n ],\n \"JE\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"JM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"JO\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"JP\": [\n \"H\",\n \"K\",\n \"h\"\n ],\n \"KE\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"KG\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"KH\": [\n \"hB\",\n \"h\",\n \"H\",\n \"hb\"\n ],\n \"KI\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KM\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"KN\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KP\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"KR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"KW\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"KY\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"KZ\": [\n \"H\",\n \"hB\"\n ],\n \"LA\": [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n \"LB\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"LC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"LI\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"LK\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"LR\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"LS\": [\n \"h\",\n \"H\"\n ],\n \"LT\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"LU\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"LV\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"LY\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"MA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"MC\": [\n \"H\",\n \"hB\"\n ],\n \"MD\": [\n \"H\",\n \"hB\"\n ],\n \"ME\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"MF\": [\n \"H\",\n \"hB\"\n ],\n \"MG\": [\n \"H\",\n \"h\"\n ],\n \"MH\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MK\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"ML\": [\n \"H\"\n ],\n \"MM\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"MN\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"MO\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"MP\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MQ\": [\n \"H\",\n \"hB\"\n ],\n \"MR\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"MS\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"MT\": [\n \"H\",\n \"h\"\n ],\n \"MU\": [\n \"H\",\n \"h\"\n ],\n \"MV\": [\n \"H\",\n \"h\"\n ],\n \"MW\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"MX\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"MY\": [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"MZ\": [\n \"H\",\n \"hB\"\n ],\n \"NA\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"NC\": [\n \"H\",\n \"hB\"\n ],\n \"NE\": [\n \"H\"\n ],\n \"NF\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NG\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NI\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"NL\": [\n \"H\",\n \"hB\"\n ],\n \"NO\": [\n \"H\",\n \"h\"\n ],\n \"NP\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"NR\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NU\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"NZ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"OM\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"PA\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"PE\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"PF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"PG\": [\n \"h\",\n \"H\"\n ],\n \"PH\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"PK\": [\n \"h\",\n \"hB\",\n \"H\"\n ],\n \"PL\": [\n \"H\",\n \"h\"\n ],\n \"PM\": [\n \"H\",\n \"hB\"\n ],\n \"PN\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"PR\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"PS\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"PT\": [\n \"H\",\n \"hB\"\n ],\n \"PW\": [\n \"h\",\n \"H\"\n ],\n \"PY\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"QA\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"RE\": [\n \"H\",\n \"hB\"\n ],\n \"RO\": [\n \"H\",\n \"hB\"\n ],\n \"RS\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"RU\": [\n \"H\"\n ],\n \"RW\": [\n \"H\",\n \"h\"\n ],\n \"SA\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SB\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SC\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SD\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SE\": [\n \"H\"\n ],\n \"SG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SH\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"SI\": [\n \"H\",\n \"hB\"\n ],\n \"SJ\": [\n \"H\"\n ],\n \"SK\": [\n \"H\"\n ],\n \"SL\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"SM\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SN\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"SO\": [\n \"h\",\n \"H\"\n ],\n \"SR\": [\n \"H\",\n \"hB\"\n ],\n \"SS\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"ST\": [\n \"H\",\n \"hB\"\n ],\n \"SV\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"SX\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"SY\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"SZ\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"TA\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"TC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"TD\": [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"TF\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"TG\": [\n \"H\",\n \"hB\"\n ],\n \"TH\": [\n \"H\",\n \"h\"\n ],\n \"TJ\": [\n \"H\",\n \"h\"\n ],\n \"TL\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"TM\": [\n \"H\",\n \"h\"\n ],\n \"TN\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"TO\": [\n \"h\",\n \"H\"\n ],\n \"TR\": [\n \"H\",\n \"hB\"\n ],\n \"TT\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"TW\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"TZ\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"UA\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"UG\": [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n \"UM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"US\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"UY\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"UZ\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"VA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"VC\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VE\": [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n \"VG\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VI\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"VN\": [\n \"H\",\n \"h\"\n ],\n \"VU\": [\n \"h\",\n \"H\"\n ],\n \"WF\": [\n \"H\",\n \"hB\"\n ],\n \"WS\": [\n \"h\",\n \"H\"\n ],\n \"XK\": [\n \"H\",\n \"hB\",\n \"h\"\n ],\n \"YE\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"YT\": [\n \"H\",\n \"hB\"\n ],\n \"ZA\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"ZM\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"ZW\": [\n \"H\",\n \"h\"\n ],\n \"af-ZA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"ar-001\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"ca-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"en-001\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"en-HK\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"en-IL\": [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"en-MY\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"es-BR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-ES\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-GQ\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"fr-CA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"gl-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"gu-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"hi-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"it-CH\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-IT\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"kn-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"ml-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"mr-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"pa-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"ta-IN\": [\n \"hB\",\n \"h\",\n \"hb\",\n \"H\"\n ],\n \"te-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"zu-ZA\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ]\n};\n","import { timeData } from './time-data.generated';\n/**\n * Returns the best matching date time pattern if a date time skeleton\n * pattern is provided with a locale. Follows the Unicode specification:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#table-mapping-requested-time-skeletons-to-patterns\n * @param skeleton date time skeleton pattern that possibly includes j, J or C\n * @param locale\n */\nexport function getBestPattern(skeleton, locale) {\n var skeletonCopy = '';\n for (var patternPos = 0; patternPos < skeleton.length; patternPos++) {\n var patternChar = skeleton.charAt(patternPos);\n if (patternChar === 'j') {\n var extraLength = 0;\n while (patternPos + 1 < skeleton.length &&\n skeleton.charAt(patternPos + 1) === patternChar) {\n extraLength++;\n patternPos++;\n }\n var hourLen = 1 + (extraLength & 1);\n var dayPeriodLen = extraLength < 2 ? 1 : 3 + (extraLength >> 1);\n var dayPeriodChar = 'a';\n var hourChar = getDefaultHourSymbolFromLocale(locale);\n if (hourChar == 'H' || hourChar == 'k') {\n dayPeriodLen = 0;\n }\n while (dayPeriodLen-- > 0) {\n skeletonCopy += dayPeriodChar;\n }\n while (hourLen-- > 0) {\n skeletonCopy = hourChar + skeletonCopy;\n }\n }\n else if (patternChar === 'J') {\n skeletonCopy += 'H';\n }\n else {\n skeletonCopy += patternChar;\n }\n }\n return skeletonCopy;\n}\n/**\n * Maps the [hour cycle type](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/hourCycle)\n * of the given `locale` to the corresponding time pattern.\n * @param locale\n */\nfunction getDefaultHourSymbolFromLocale(locale) {\n var hourCycle = locale.hourCycle;\n if (hourCycle === undefined &&\n // @ts-ignore hourCycle(s) is not identified yet\n locale.hourCycles &&\n // @ts-ignore\n locale.hourCycles.length) {\n // @ts-ignore\n hourCycle = locale.hourCycles[0];\n }\n if (hourCycle) {\n switch (hourCycle) {\n case 'h24':\n return 'k';\n case 'h23':\n return 'H';\n case 'h12':\n return 'h';\n case 'h11':\n return 'K';\n default:\n throw new Error('Invalid hourCycle');\n }\n }\n // TODO: Once hourCycle is fully supported remove the following with data generation\n var languageTag = locale.language;\n var regionTag;\n if (languageTag !== 'root') {\n regionTag = locale.maximize().region;\n }\n var hourCycles = timeData[regionTag || ''] ||\n timeData[languageTag || ''] ||\n timeData[\"\".concat(languageTag, \"-001\")] ||\n timeData['001'];\n return hourCycles[0];\n}\n","var _a;\nimport { __assign } from \"tslib\";\nimport { ErrorKind } from './error';\nimport { SKELETON_TYPE, TYPE, } from './types';\nimport { SPACE_SEPARATOR_REGEX } from './regex.generated';\nimport { parseNumberSkeleton, parseNumberSkeletonFromString, parseDateTimeSkeleton, } from '@formatjs/icu-skeleton-parser';\nimport { getBestPattern } from './date-time-pattern-generator';\nvar SPACE_SEPARATOR_START_REGEX = new RegExp(\"^\".concat(SPACE_SEPARATOR_REGEX.source, \"*\"));\nvar SPACE_SEPARATOR_END_REGEX = new RegExp(\"\".concat(SPACE_SEPARATOR_REGEX.source, \"*$\"));\nfunction createLocation(start, end) {\n return { start: start, end: end };\n}\n// #region Ponyfills\n// Consolidate these variables up top for easier toggling during debugging\nvar hasNativeStartsWith = !!String.prototype.startsWith && '_a'.startsWith('a', 1);\nvar hasNativeFromCodePoint = !!String.fromCodePoint;\nvar hasNativeFromEntries = !!Object.fromEntries;\nvar hasNativeCodePointAt = !!String.prototype.codePointAt;\nvar hasTrimStart = !!String.prototype.trimStart;\nvar hasTrimEnd = !!String.prototype.trimEnd;\nvar hasNativeIsSafeInteger = !!Number.isSafeInteger;\nvar isSafeInteger = hasNativeIsSafeInteger\n ? Number.isSafeInteger\n : function (n) {\n return (typeof n === 'number' &&\n isFinite(n) &&\n Math.floor(n) === n &&\n Math.abs(n) <= 0x1fffffffffffff);\n };\n// IE11 does not support y and u.\nvar REGEX_SUPPORTS_U_AND_Y = true;\ntry {\n var re = RE('([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)', 'yu');\n /**\n * legacy Edge or Xbox One browser\n * Unicode flag support: supported\n * Pattern_Syntax support: not supported\n * See https://github.com/formatjs/formatjs/issues/2822\n */\n REGEX_SUPPORTS_U_AND_Y = ((_a = re.exec('a')) === null || _a === void 0 ? void 0 : _a[0]) === 'a';\n}\ncatch (_) {\n REGEX_SUPPORTS_U_AND_Y = false;\n}\nvar startsWith = hasNativeStartsWith\n ? // Native\n function startsWith(s, search, position) {\n return s.startsWith(search, position);\n }\n : // For IE11\n function startsWith(s, search, position) {\n return s.slice(position, position + search.length) === search;\n };\nvar fromCodePoint = hasNativeFromCodePoint\n ? String.fromCodePoint\n : // IE11\n function fromCodePoint() {\n var codePoints = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n codePoints[_i] = arguments[_i];\n }\n var elements = '';\n var length = codePoints.length;\n var i = 0;\n var code;\n while (length > i) {\n code = codePoints[i++];\n if (code > 0x10ffff)\n throw RangeError(code + ' is not a valid code point');\n elements +=\n code < 0x10000\n ? String.fromCharCode(code)\n : String.fromCharCode(((code -= 0x10000) >> 10) + 0xd800, (code % 0x400) + 0xdc00);\n }\n return elements;\n };\nvar fromEntries = \n// native\nhasNativeFromEntries\n ? Object.fromEntries\n : // Ponyfill\n function fromEntries(entries) {\n var obj = {};\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\n var _a = entries_1[_i], k = _a[0], v = _a[1];\n obj[k] = v;\n }\n return obj;\n };\nvar codePointAt = hasNativeCodePointAt\n ? // Native\n function codePointAt(s, index) {\n return s.codePointAt(index);\n }\n : // IE 11\n function codePointAt(s, index) {\n var size = s.length;\n if (index < 0 || index >= size) {\n return undefined;\n }\n var first = s.charCodeAt(index);\n var second;\n return first < 0xd800 ||\n first > 0xdbff ||\n index + 1 === size ||\n (second = s.charCodeAt(index + 1)) < 0xdc00 ||\n second > 0xdfff\n ? first\n : ((first - 0xd800) << 10) + (second - 0xdc00) + 0x10000;\n };\nvar trimStart = hasTrimStart\n ? // Native\n function trimStart(s) {\n return s.trimStart();\n }\n : // Ponyfill\n function trimStart(s) {\n return s.replace(SPACE_SEPARATOR_START_REGEX, '');\n };\nvar trimEnd = hasTrimEnd\n ? // Native\n function trimEnd(s) {\n return s.trimEnd();\n }\n : // Ponyfill\n function trimEnd(s) {\n return s.replace(SPACE_SEPARATOR_END_REGEX, '');\n };\n// Prevent minifier to translate new RegExp to literal form that might cause syntax error on IE11.\nfunction RE(s, flag) {\n return new RegExp(s, flag);\n}\n// #endregion\nvar matchIdentifierAtIndex;\nif (REGEX_SUPPORTS_U_AND_Y) {\n // Native\n var IDENTIFIER_PREFIX_RE_1 = RE('([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)', 'yu');\n matchIdentifierAtIndex = function matchIdentifierAtIndex(s, index) {\n var _a;\n IDENTIFIER_PREFIX_RE_1.lastIndex = index;\n var match = IDENTIFIER_PREFIX_RE_1.exec(s);\n return (_a = match[1]) !== null && _a !== void 0 ? _a : '';\n };\n}\nelse {\n // IE11\n matchIdentifierAtIndex = function matchIdentifierAtIndex(s, index) {\n var match = [];\n while (true) {\n var c = codePointAt(s, index);\n if (c === undefined || _isWhiteSpace(c) || _isPatternSyntax(c)) {\n break;\n }\n match.push(c);\n index += c >= 0x10000 ? 2 : 1;\n }\n return fromCodePoint.apply(void 0, match);\n };\n}\nvar Parser = /** @class */ (function () {\n function Parser(message, options) {\n if (options === void 0) { options = {}; }\n this.message = message;\n this.position = { offset: 0, line: 1, column: 1 };\n this.ignoreTag = !!options.ignoreTag;\n this.locale = options.locale;\n this.requiresOtherClause = !!options.requiresOtherClause;\n this.shouldParseSkeletons = !!options.shouldParseSkeletons;\n }\n Parser.prototype.parse = function () {\n if (this.offset() !== 0) {\n throw Error('parser can only be used once');\n }\n return this.parseMessage(0, '', false);\n };\n Parser.prototype.parseMessage = function (nestingLevel, parentArgType, expectingCloseTag) {\n var elements = [];\n while (!this.isEOF()) {\n var char = this.char();\n if (char === 123 /* `{` */) {\n var result = this.parseArgument(nestingLevel, expectingCloseTag);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n else if (char === 125 /* `}` */ && nestingLevel > 0) {\n break;\n }\n else if (char === 35 /* `#` */ &&\n (parentArgType === 'plural' || parentArgType === 'selectordinal')) {\n var position = this.clonePosition();\n this.bump();\n elements.push({\n type: TYPE.pound,\n location: createLocation(position, this.clonePosition()),\n });\n }\n else if (char === 60 /* `<` */ &&\n !this.ignoreTag &&\n this.peek() === 47 // char code for '/'\n ) {\n if (expectingCloseTag) {\n break;\n }\n else {\n return this.error(ErrorKind.UNMATCHED_CLOSING_TAG, createLocation(this.clonePosition(), this.clonePosition()));\n }\n }\n else if (char === 60 /* `<` */ &&\n !this.ignoreTag &&\n _isAlpha(this.peek() || 0)) {\n var result = this.parseTag(nestingLevel, parentArgType);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n else {\n var result = this.parseLiteral(nestingLevel, parentArgType);\n if (result.err) {\n return result;\n }\n elements.push(result.val);\n }\n }\n return { val: elements, err: null };\n };\n /**\n * A tag name must start with an ASCII lower/upper case letter. The grammar is based on the\n * [custom element name][] except that a dash is NOT always mandatory and uppercase letters\n * are accepted:\n *\n * ```\n * tag ::= \"<\" tagName (whitespace)* \"/>\" | \"<\" tagName (whitespace)* \">\" message \"</\" tagName (whitespace)* \">\"\n * tagName ::= [a-z] (PENChar)*\n * PENChar ::=\n * \"-\" | \".\" | [0-9] | \"_\" | [a-z] | [A-Z] | #xB7 | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x37D] |\n * [#x37F-#x1FFF] | [#x200C-#x200D] | [#x203F-#x2040] | [#x2070-#x218F] | [#x2C00-#x2FEF] |\n * [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]\n * ```\n *\n * [custom element name]: https://html.spec.whatwg.org/multipage/custom-elements.html#valid-custom-element-name\n * NOTE: We're a bit more lax here since HTML technically does not allow uppercase HTML element but we do\n * since other tag-based engines like React allow it\n */\n Parser.prototype.parseTag = function (nestingLevel, parentArgType) {\n var startPosition = this.clonePosition();\n this.bump(); // `<`\n var tagName = this.parseTagName();\n this.bumpSpace();\n if (this.bumpIf('/>')) {\n // Self closing tag\n return {\n val: {\n type: TYPE.literal,\n value: \"<\".concat(tagName, \"/>\"),\n location: createLocation(startPosition, this.clonePosition()),\n },\n err: null,\n };\n }\n else if (this.bumpIf('>')) {\n var childrenResult = this.parseMessage(nestingLevel + 1, parentArgType, true);\n if (childrenResult.err) {\n return childrenResult;\n }\n var children = childrenResult.val;\n // Expecting a close tag\n var endTagStartPosition = this.clonePosition();\n if (this.bumpIf('</')) {\n if (this.isEOF() || !_isAlpha(this.char())) {\n return this.error(ErrorKind.INVALID_TAG, createLocation(endTagStartPosition, this.clonePosition()));\n }\n var closingTagNameStartPosition = this.clonePosition();\n var closingTagName = this.parseTagName();\n if (tagName !== closingTagName) {\n return this.error(ErrorKind.UNMATCHED_CLOSING_TAG, createLocation(closingTagNameStartPosition, this.clonePosition()));\n }\n this.bumpSpace();\n if (!this.bumpIf('>')) {\n return this.error(ErrorKind.INVALID_TAG, createLocation(endTagStartPosition, this.clonePosition()));\n }\n return {\n val: {\n type: TYPE.tag,\n value: tagName,\n children: children,\n location: createLocation(startPosition, this.clonePosition()),\n },\n err: null,\n };\n }\n else {\n return this.error(ErrorKind.UNCLOSED_TAG, createLocation(startPosition, this.clonePosition()));\n }\n }\n else {\n return this.error(ErrorKind.INVALID_TAG, createLocation(startPosition, this.clonePosition()));\n }\n };\n /**\n * This method assumes that the caller has peeked ahead for the first tag character.\n */\n Parser.prototype.parseTagName = function () {\n var startOffset = this.offset();\n this.bump(); // the first tag name character\n while (!this.isEOF() && _isPotentialElementNameChar(this.char())) {\n this.bump();\n }\n return this.message.slice(startOffset, this.offset());\n };\n Parser.prototype.parseLiteral = function (nestingLevel, parentArgType) {\n var start = this.clonePosition();\n var value = '';\n while (true) {\n var parseQuoteResult = this.tryParseQuote(parentArgType);\n if (parseQuoteResult) {\n value += parseQuoteResult;\n continue;\n }\n var parseUnquotedResult = this.tryParseUnquoted(nestingLevel, parentArgType);\n if (parseUnquotedResult) {\n value += parseUnquotedResult;\n continue;\n }\n var parseLeftAngleResult = this.tryParseLeftAngleBracket();\n if (parseLeftAngleResult) {\n value += parseLeftAngleResult;\n continue;\n }\n break;\n }\n var location = createLocation(start, this.clonePosition());\n return {\n val: { type: TYPE.literal, value: value, location: location },\n err: null,\n };\n };\n Parser.prototype.tryParseLeftAngleBracket = function () {\n if (!this.isEOF() &&\n this.char() === 60 /* `<` */ &&\n (this.ignoreTag ||\n // If at the opening tag or closing tag position, bail.\n !_isAlphaOrSlash(this.peek() || 0))) {\n this.bump(); // `<`\n return '<';\n }\n return null;\n };\n /**\n * Starting with ICU 4.8, an ASCII apostrophe only starts quoted text if it immediately precedes\n * a character that requires quoting (that is, \"only where needed\"), and works the same in\n * nested messages as on the top level of the pattern. The new behavior is otherwise compatible.\n */\n Parser.prototype.tryParseQuote = function (parentArgType) {\n if (this.isEOF() || this.char() !== 39 /* `'` */) {\n return null;\n }\n // Parse escaped char following the apostrophe, or early return if there is no escaped char.\n // Check if is valid escaped character\n switch (this.peek()) {\n case 39 /* `'` */:\n // double quote, should return as a single quote.\n this.bump();\n this.bump();\n return \"'\";\n // '{', '<', '>', '}'\n case 123:\n case 60:\n case 62:\n case 125:\n break;\n case 35: // '#'\n if (parentArgType === 'plural' || parentArgType === 'selectordinal') {\n break;\n }\n return null;\n default:\n return null;\n }\n this.bump(); // apostrophe\n var codePoints = [this.char()]; // escaped char\n this.bump();\n // read chars until the optional closing apostrophe is found\n while (!this.isEOF()) {\n var ch = this.char();\n if (ch === 39 /* `'` */) {\n if (this.peek() === 39 /* `'` */) {\n codePoints.push(39);\n // Bump one more time because we need to skip 2 characters.\n this.bump();\n }\n else {\n // Optional closing apostrophe.\n this.bump();\n break;\n }\n }\n else {\n codePoints.push(ch);\n }\n this.bump();\n }\n return fromCodePoint.apply(void 0, codePoints);\n };\n Parser.prototype.tryParseUnquoted = function (nestingLevel, parentArgType) {\n if (this.isEOF()) {\n return null;\n }\n var ch = this.char();\n if (ch === 60 /* `<` */ ||\n ch === 123 /* `{` */ ||\n (ch === 35 /* `#` */ &&\n (parentArgType === 'plural' || parentArgType === 'selectordinal')) ||\n (ch === 125 /* `}` */ && nestingLevel > 0)) {\n return null;\n }\n else {\n this.bump();\n return fromCodePoint(ch);\n }\n };\n Parser.prototype.parseArgument = function (nestingLevel, expectingCloseTag) {\n var openingBracePosition = this.clonePosition();\n this.bump(); // `{`\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n if (this.char() === 125 /* `}` */) {\n this.bump();\n return this.error(ErrorKind.EMPTY_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n // argument name\n var value = this.parseIdentifierIfPossible().value;\n if (!value) {\n return this.error(ErrorKind.MALFORMED_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n switch (this.char()) {\n // Simple argument: `{name}`\n case 125 /* `}` */: {\n this.bump(); // `}`\n return {\n val: {\n type: TYPE.argument,\n // value does not include the opening and closing braces.\n value: value,\n location: createLocation(openingBracePosition, this.clonePosition()),\n },\n err: null,\n };\n }\n // Argument with options: `{name, format, ...}`\n case 44 /* `,` */: {\n this.bump(); // `,`\n this.bumpSpace();\n if (this.isEOF()) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n return this.parseArgumentOptions(nestingLevel, expectingCloseTag, value, openingBracePosition);\n }\n default:\n return this.error(ErrorKind.MALFORMED_ARGUMENT, createLocation(openingBracePosition, this.clonePosition()));\n }\n };\n /**\n * Advance the parser until the end of the identifier, if it is currently on\n * an identifier character. Return an empty string otherwise.\n */\n Parser.prototype.parseIdentifierIfPossible = function () {\n var startingPosition = this.clonePosition();\n var startOffset = this.offset();\n var value = matchIdentifierAtIndex(this.message, startOffset);\n var endOffset = startOffset + value.length;\n this.bumpTo(endOffset);\n var endPosition = this.clonePosition();\n var location = createLocation(startingPosition, endPosition);\n return { value: value, location: location };\n };\n Parser.prototype.parseArgumentOptions = function (nestingLevel, expectingCloseTag, value, openingBracePosition) {\n var _a;\n // Parse this range:\n // {name, type, style}\n // ^---^\n var typeStartPosition = this.clonePosition();\n var argType = this.parseIdentifierIfPossible().value;\n var typeEndPosition = this.clonePosition();\n switch (argType) {\n case '':\n // Expecting a style string number, date, time, plural, selectordinal, or select.\n return this.error(ErrorKind.EXPECT_ARGUMENT_TYPE, createLocation(typeStartPosition, typeEndPosition));\n case 'number':\n case 'date':\n case 'time': {\n // Parse this range:\n // {name, number, style}\n // ^-------^\n this.bumpSpace();\n var styleAndLocation = null;\n if (this.bumpIf(',')) {\n this.bumpSpace();\n var styleStartPosition = this.clonePosition();\n var result = this.parseSimpleArgStyleIfPossible();\n if (result.err) {\n return result;\n }\n var style = trimEnd(result.val);\n if (style.length === 0) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_STYLE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n var styleLocation = createLocation(styleStartPosition, this.clonePosition());\n styleAndLocation = { style: style, styleLocation: styleLocation };\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n var location_1 = createLocation(openingBracePosition, this.clonePosition());\n // Extract style or skeleton\n if (styleAndLocation && startsWith(styleAndLocation === null || styleAndLocation === void 0 ? void 0 : styleAndLocation.style, '::', 0)) {\n // Skeleton starts with `::`.\n var skeleton = trimStart(styleAndLocation.style.slice(2));\n if (argType === 'number') {\n var result = this.parseNumberSkeletonFromString(skeleton, styleAndLocation.styleLocation);\n if (result.err) {\n return result;\n }\n return {\n val: { type: TYPE.number, value: value, location: location_1, style: result.val },\n err: null,\n };\n }\n else {\n if (skeleton.length === 0) {\n return this.error(ErrorKind.EXPECT_DATE_TIME_SKELETON, location_1);\n }\n var dateTimePattern = skeleton;\n // Get \"best match\" pattern only if locale is passed, if not, let it\n // pass as-is where `parseDateTimeSkeleton()` will throw an error\n // for unsupported patterns.\n if (this.locale) {\n dateTimePattern = getBestPattern(skeleton, this.locale);\n }\n var style = {\n type: SKELETON_TYPE.dateTime,\n pattern: dateTimePattern,\n location: styleAndLocation.styleLocation,\n parsedOptions: this.shouldParseSkeletons\n ? parseDateTimeSkeleton(dateTimePattern)\n : {},\n };\n var type = argType === 'date' ? TYPE.date : TYPE.time;\n return {\n val: { type: type, value: value, location: location_1, style: style },\n err: null,\n };\n }\n }\n // Regular style or no style.\n return {\n val: {\n type: argType === 'number'\n ? TYPE.number\n : argType === 'date'\n ? TYPE.date\n : TYPE.time,\n value: value,\n location: location_1,\n style: (_a = styleAndLocation === null || styleAndLocation === void 0 ? void 0 : styleAndLocation.style) !== null && _a !== void 0 ? _a : null,\n },\n err: null,\n };\n }\n case 'plural':\n case 'selectordinal':\n case 'select': {\n // Parse this range:\n // {name, plural, options}\n // ^---------^\n var typeEndPosition_1 = this.clonePosition();\n this.bumpSpace();\n if (!this.bumpIf(',')) {\n return this.error(ErrorKind.EXPECT_SELECT_ARGUMENT_OPTIONS, createLocation(typeEndPosition_1, __assign({}, typeEndPosition_1)));\n }\n this.bumpSpace();\n // Parse offset:\n // {name, plural, offset:1, options}\n // ^-----^\n //\n // or the first option:\n //\n // {name, plural, one {...} other {...}}\n // ^--^\n var identifierAndLocation = this.parseIdentifierIfPossible();\n var pluralOffset = 0;\n if (argType !== 'select' && identifierAndLocation.value === 'offset') {\n if (!this.bumpIf(':')) {\n return this.error(ErrorKind.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n this.bumpSpace();\n var result = this.tryParseDecimalInteger(ErrorKind.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, ErrorKind.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);\n if (result.err) {\n return result;\n }\n // Parse another identifier for option parsing\n this.bumpSpace();\n identifierAndLocation = this.parseIdentifierIfPossible();\n pluralOffset = result.val;\n }\n var optionsResult = this.tryParsePluralOrSelectOptions(nestingLevel, argType, expectingCloseTag, identifierAndLocation);\n if (optionsResult.err) {\n return optionsResult;\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n var location_2 = createLocation(openingBracePosition, this.clonePosition());\n if (argType === 'select') {\n return {\n val: {\n type: TYPE.select,\n value: value,\n options: fromEntries(optionsResult.val),\n location: location_2,\n },\n err: null,\n };\n }\n else {\n return {\n val: {\n type: TYPE.plural,\n value: value,\n options: fromEntries(optionsResult.val),\n offset: pluralOffset,\n pluralType: argType === 'plural' ? 'cardinal' : 'ordinal',\n location: location_2,\n },\n err: null,\n };\n }\n }\n default:\n return this.error(ErrorKind.INVALID_ARGUMENT_TYPE, createLocation(typeStartPosition, typeEndPosition));\n }\n };\n Parser.prototype.tryParseArgumentClose = function (openingBracePosition) {\n // Parse: {value, number, ::currency/GBP }\n //\n if (this.isEOF() || this.char() !== 125 /* `}` */) {\n return this.error(ErrorKind.EXPECT_ARGUMENT_CLOSING_BRACE, createLocation(openingBracePosition, this.clonePosition()));\n }\n this.bump(); // `}`\n return { val: true, err: null };\n };\n /**\n * See: https://github.com/unicode-org/icu/blob/af7ed1f6d2298013dc303628438ec4abe1f16479/icu4c/source/common/messagepattern.cpp#L659\n */\n Parser.prototype.parseSimpleArgStyleIfPossible = function () {\n var nestedBraces = 0;\n var startPosition = this.clonePosition();\n while (!this.isEOF()) {\n var ch = this.char();\n switch (ch) {\n case 39 /* `'` */: {\n // Treat apostrophe as quoting but include it in the style part.\n // Find the end of the quoted literal text.\n this.bump();\n var apostrophePosition = this.clonePosition();\n if (!this.bumpUntil(\"'\")) {\n return this.error(ErrorKind.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE, createLocation(apostrophePosition, this.clonePosition()));\n }\n this.bump();\n break;\n }\n case 123 /* `{` */: {\n nestedBraces += 1;\n this.bump();\n break;\n }\n case 125 /* `}` */: {\n if (nestedBraces > 0) {\n nestedBraces -= 1;\n }\n else {\n return {\n val: this.message.slice(startPosition.offset, this.offset()),\n err: null,\n };\n }\n break;\n }\n default:\n this.bump();\n break;\n }\n }\n return {\n val: this.message.slice(startPosition.offset, this.offset()),\n err: null,\n };\n };\n Parser.prototype.parseNumberSkeletonFromString = function (skeleton, location) {\n var tokens = [];\n try {\n tokens = parseNumberSkeletonFromString(skeleton);\n }\n catch (e) {\n return this.error(ErrorKind.INVALID_NUMBER_SKELETON, location);\n }\n return {\n val: {\n type: SKELETON_TYPE.number,\n tokens: tokens,\n location: location,\n parsedOptions: this.shouldParseSkeletons\n ? parseNumberSkeleton(tokens)\n : {},\n },\n err: null,\n };\n };\n /**\n * @param nesting_level The current nesting level of messages.\n * This can be positive when parsing message fragment in select or plural argument options.\n * @param parent_arg_type The parent argument's type.\n * @param parsed_first_identifier If provided, this is the first identifier-like selector of\n * the argument. It is a by-product of a previous parsing attempt.\n * @param expecting_close_tag If true, this message is directly or indirectly nested inside\n * between a pair of opening and closing tags. The nested message will not parse beyond\n * the closing tag boundary.\n */\n Parser.prototype.tryParsePluralOrSelectOptions = function (nestingLevel, parentArgType, expectCloseTag, parsedFirstIdentifier) {\n var _a;\n var hasOtherClause = false;\n var options = [];\n var parsedSelectors = new Set();\n var selector = parsedFirstIdentifier.value, selectorLocation = parsedFirstIdentifier.location;\n // Parse:\n // one {one apple}\n // ^--^\n while (true) {\n if (selector.length === 0) {\n var startPosition = this.clonePosition();\n if (parentArgType !== 'select' && this.bumpIf('=')) {\n // Try parse `={number}` selector\n var result = this.tryParseDecimalInteger(ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR, ErrorKind.INVALID_PLURAL_ARGUMENT_SELECTOR);\n if (result.err) {\n return result;\n }\n selectorLocation = createLocation(startPosition, this.clonePosition());\n selector = this.message.slice(startPosition.offset, this.offset());\n }\n else {\n break;\n }\n }\n // Duplicate selector clauses\n if (parsedSelectors.has(selector)) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.DUPLICATE_SELECT_ARGUMENT_SELECTOR\n : ErrorKind.DUPLICATE_PLURAL_ARGUMENT_SELECTOR, selectorLocation);\n }\n if (selector === 'other') {\n hasOtherClause = true;\n }\n // Parse:\n // one {one apple}\n // ^----------^\n this.bumpSpace();\n var openingBracePosition = this.clonePosition();\n if (!this.bumpIf('{')) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\n : ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT, createLocation(this.clonePosition(), this.clonePosition()));\n }\n var fragmentResult = this.parseMessage(nestingLevel + 1, parentArgType, expectCloseTag);\n if (fragmentResult.err) {\n return fragmentResult;\n }\n var argCloseResult = this.tryParseArgumentClose(openingBracePosition);\n if (argCloseResult.err) {\n return argCloseResult;\n }\n options.push([\n selector,\n {\n value: fragmentResult.val,\n location: createLocation(openingBracePosition, this.clonePosition()),\n },\n ]);\n // Keep track of the existing selectors\n parsedSelectors.add(selector);\n // Prep next selector clause.\n this.bumpSpace();\n (_a = this.parseIdentifierIfPossible(), selector = _a.value, selectorLocation = _a.location);\n }\n if (options.length === 0) {\n return this.error(parentArgType === 'select'\n ? ErrorKind.EXPECT_SELECT_ARGUMENT_SELECTOR\n : ErrorKind.EXPECT_PLURAL_ARGUMENT_SELECTOR, createLocation(this.clonePosition(), this.clonePosition()));\n }\n if (this.requiresOtherClause && !hasOtherClause) {\n return this.error(ErrorKind.MISSING_OTHER_CLAUSE, createLocation(this.clonePosition(), this.clonePosition()));\n }\n return { val: options, err: null };\n };\n Parser.prototype.tryParseDecimalInteger = function (expectNumberError, invalidNumberError) {\n var sign = 1;\n var startingPosition = this.clonePosition();\n if (this.bumpIf('+')) {\n }\n else if (this.bumpIf('-')) {\n sign = -1;\n }\n var hasDigits = false;\n var decimal = 0;\n while (!this.isEOF()) {\n var ch = this.char();\n if (ch >= 48 /* `0` */ && ch <= 57 /* `9` */) {\n hasDigits = true;\n decimal = decimal * 10 + (ch - 48);\n this.bump();\n }\n else {\n break;\n }\n }\n var location = createLocation(startingPosition, this.clonePosition());\n if (!hasDigits) {\n return this.error(expectNumberError, location);\n }\n decimal *= sign;\n if (!isSafeInteger(decimal)) {\n return this.error(invalidNumberError, location);\n }\n return { val: decimal, err: null };\n };\n Parser.prototype.offset = function () {\n return this.position.offset;\n };\n Parser.prototype.isEOF = function () {\n return this.offset() === this.message.length;\n };\n Parser.prototype.clonePosition = function () {\n // This is much faster than `Object.assign` or spread.\n return {\n offset: this.position.offset,\n line: this.position.line,\n column: this.position.column,\n };\n };\n /**\n * Return the code point at the current position of the parser.\n * Throws if the index is out of bound.\n */\n Parser.prototype.char = function () {\n var offset = this.position.offset;\n if (offset >= this.message.length) {\n throw Error('out of bound');\n }\n var code = codePointAt(this.message, offset);\n if (code === undefined) {\n throw Error(\"Offset \".concat(offset, \" is at invalid UTF-16 code unit boundary\"));\n }\n return code;\n };\n Parser.prototype.error = function (kind, location) {\n return {\n val: null,\n err: {\n kind: kind,\n message: this.message,\n location: location,\n },\n };\n };\n /** Bump the parser to the next UTF-16 code unit. */\n Parser.prototype.bump = function () {\n if (this.isEOF()) {\n return;\n }\n var code = this.char();\n if (code === 10 /* '\\n' */) {\n this.position.line += 1;\n this.position.column = 1;\n this.position.offset += 1;\n }\n else {\n this.position.column += 1;\n // 0 ~ 0x10000 -> unicode BMP, otherwise skip the surrogate pair.\n this.position.offset += code < 0x10000 ? 1 : 2;\n }\n };\n /**\n * If the substring starting at the current position of the parser has\n * the given prefix, then bump the parser to the character immediately\n * following the prefix and return true. Otherwise, don't bump the parser\n * and return false.\n */\n Parser.prototype.bumpIf = function (prefix) {\n if (startsWith(this.message, prefix, this.offset())) {\n for (var i = 0; i < prefix.length; i++) {\n this.bump();\n }\n return true;\n }\n return false;\n };\n /**\n * Bump the parser until the pattern character is found and return `true`.\n * Otherwise bump to the end of the file and return `false`.\n */\n Parser.prototype.bumpUntil = function (pattern) {\n var currentOffset = this.offset();\n var index = this.message.indexOf(pattern, currentOffset);\n if (index >= 0) {\n this.bumpTo(index);\n return true;\n }\n else {\n this.bumpTo(this.message.length);\n return false;\n }\n };\n /**\n * Bump the parser to the target offset.\n * If target offset is beyond the end of the input, bump the parser to the end of the input.\n */\n Parser.prototype.bumpTo = function (targetOffset) {\n if (this.offset() > targetOffset) {\n throw Error(\"targetOffset \".concat(targetOffset, \" must be greater than or equal to the current offset \").concat(this.offset()));\n }\n targetOffset = Math.min(targetOffset, this.message.length);\n while (true) {\n var offset = this.offset();\n if (offset === targetOffset) {\n break;\n }\n if (offset > targetOffset) {\n throw Error(\"targetOffset \".concat(targetOffset, \" is at invalid UTF-16 code unit boundary\"));\n }\n this.bump();\n if (this.isEOF()) {\n break;\n }\n }\n };\n /** advance the parser through all whitespace to the next non-whitespace code unit. */\n Parser.prototype.bumpSpace = function () {\n while (!this.isEOF() && _isWhiteSpace(this.char())) {\n this.bump();\n }\n };\n /**\n * Peek at the *next* Unicode codepoint in the input without advancing the parser.\n * If the input has been exhausted, then this returns null.\n */\n Parser.prototype.peek = function () {\n if (this.isEOF()) {\n return null;\n }\n var code = this.char();\n var offset = this.offset();\n var nextCode = this.message.charCodeAt(offset + (code >= 0x10000 ? 2 : 1));\n return nextCode !== null && nextCode !== void 0 ? nextCode : null;\n };\n return Parser;\n}());\nexport { Parser };\n/**\n * This check if codepoint is alphabet (lower & uppercase)\n * @param codepoint\n * @returns\n */\nfunction _isAlpha(codepoint) {\n return ((codepoint >= 97 && codepoint <= 122) ||\n (codepoint >= 65 && codepoint <= 90));\n}\nfunction _isAlphaOrSlash(codepoint) {\n return _isAlpha(codepoint) || codepoint === 47; /* '/' */\n}\n/** See `parseTag` function docs. */\nfunction _isPotentialElementNameChar(c) {\n return (c === 45 /* '-' */ ||\n c === 46 /* '.' */ ||\n (c >= 48 && c <= 57) /* 0..9 */ ||\n c === 95 /* '_' */ ||\n (c >= 97 && c <= 122) /** a..z */ ||\n (c >= 65 && c <= 90) /* A..Z */ ||\n c == 0xb7 ||\n (c >= 0xc0 && c <= 0xd6) ||\n (c >= 0xd8 && c <= 0xf6) ||\n (c >= 0xf8 && c <= 0x37d) ||\n (c >= 0x37f && c <= 0x1fff) ||\n (c >= 0x200c && c <= 0x200d) ||\n (c >= 0x203f && c <= 0x2040) ||\n (c >= 0x2070 && c <= 0x218f) ||\n (c >= 0x2c00 && c <= 0x2fef) ||\n (c >= 0x3001 && c <= 0xd7ff) ||\n (c >= 0xf900 && c <= 0xfdcf) ||\n (c >= 0xfdf0 && c <= 0xfffd) ||\n (c >= 0x10000 && c <= 0xeffff));\n}\n/**\n * Code point equivalent of regex `\\p{White_Space}`.\n * From: https://www.unicode.org/Public/UCD/latest/ucd/PropList.txt\n */\nfunction _isWhiteSpace(c) {\n return ((c >= 0x0009 && c <= 0x000d) ||\n c === 0x0020 ||\n c === 0x0085 ||\n (c >= 0x200e && c <= 0x200f) ||\n c === 0x2028 ||\n c === 0x2029);\n}\n/**\n * Code point equivalent of regex `\\p{Pattern_Syntax}`.\n * See https://www.unicode.org/Public/UCD/latest/ucd/PropList.txt\n */\nfunction _isPatternSyntax(c) {\n return ((c >= 0x0021 && c <= 0x0023) ||\n c === 0x0024 ||\n (c >= 0x0025 && c <= 0x0027) ||\n c === 0x0028 ||\n c === 0x0029 ||\n c === 0x002a ||\n c === 0x002b ||\n c === 0x002c ||\n c === 0x002d ||\n (c >= 0x002e && c <= 0x002f) ||\n (c >= 0x003a && c <= 0x003b) ||\n (c >= 0x003c && c <= 0x003e) ||\n (c >= 0x003f && c <= 0x0040) ||\n c === 0x005b ||\n c === 0x005c ||\n c === 0x005d ||\n c === 0x005e ||\n c === 0x0060 ||\n c === 0x007b ||\n c === 0x007c ||\n c === 0x007d ||\n c === 0x007e ||\n c === 0x00a1 ||\n (c >= 0x00a2 && c <= 0x00a5) ||\n c === 0x00a6 ||\n c === 0x00a7 ||\n c === 0x00a9 ||\n c === 0x00ab ||\n c === 0x00ac ||\n c === 0x00ae ||\n c === 0x00b0 ||\n c === 0x00b1 ||\n c === 0x00b6 ||\n c === 0x00bb ||\n c === 0x00bf ||\n c === 0x00d7 ||\n c === 0x00f7 ||\n (c >= 0x2010 && c <= 0x2015) ||\n (c >= 0x2016 && c <= 0x2017) ||\n c === 0x2018 ||\n c === 0x2019 ||\n c === 0x201a ||\n (c >= 0x201b && c <= 0x201c) ||\n c === 0x201d ||\n c === 0x201e ||\n c === 0x201f ||\n (c >= 0x2020 && c <= 0x2027) ||\n (c >= 0x2030 && c <= 0x2038) ||\n c === 0x2039 ||\n c === 0x203a ||\n (c >= 0x203b && c <= 0x203e) ||\n (c >= 0x2041 && c <= 0x2043) ||\n c === 0x2044 ||\n c === 0x2045 ||\n c === 0x2046 ||\n (c >= 0x2047 && c <= 0x2051) ||\n c === 0x2052 ||\n c === 0x2053 ||\n (c >= 0x2055 && c <= 0x205e) ||\n (c >= 0x2190 && c <= 0x2194) ||\n (c >= 0x2195 && c <= 0x2199) ||\n (c >= 0x219a && c <= 0x219b) ||\n (c >= 0x219c && c <= 0x219f) ||\n c === 0x21a0 ||\n (c >= 0x21a1 && c <= 0x21a2) ||\n c === 0x21a3 ||\n (c >= 0x21a4 && c <= 0x21a5) ||\n c === 0x21a6 ||\n (c >= 0x21a7 && c <= 0x21ad) ||\n c === 0x21ae ||\n (c >= 0x21af && c <= 0x21cd) ||\n (c >= 0x21ce && c <= 0x21cf) ||\n (c >= 0x21d0 && c <= 0x21d1) ||\n c === 0x21d2 ||\n c === 0x21d3 ||\n c === 0x21d4 ||\n (c >= 0x21d5 && c <= 0x21f3) ||\n (c >= 0x21f4 && c <= 0x22ff) ||\n (c >= 0x2300 && c <= 0x2307) ||\n c === 0x2308 ||\n c === 0x2309 ||\n c === 0x230a ||\n c === 0x230b ||\n (c >= 0x230c && c <= 0x231f) ||\n (c >= 0x2320 && c <= 0x2321) ||\n (c >= 0x2322 && c <= 0x2328) ||\n c === 0x2329 ||\n c === 0x232a ||\n (c >= 0x232b && c <= 0x237b) ||\n c === 0x237c ||\n (c >= 0x237d && c <= 0x239a) ||\n (c >= 0x239b && c <= 0x23b3) ||\n (c >= 0x23b4 && c <= 0x23db) ||\n (c >= 0x23dc && c <= 0x23e1) ||\n (c >= 0x23e2 && c <= 0x2426) ||\n (c >= 0x2427 && c <= 0x243f) ||\n (c >= 0x2440 && c <= 0x244a) ||\n (c >= 0x244b && c <= 0x245f) ||\n (c >= 0x2500 && c <= 0x25b6) ||\n c === 0x25b7 ||\n (c >= 0x25b8 && c <= 0x25c0) ||\n c === 0x25c1 ||\n (c >= 0x25c2 && c <= 0x25f7) ||\n (c >= 0x25f8 && c <= 0x25ff) ||\n (c >= 0x2600 && c <= 0x266e) ||\n c === 0x266f ||\n (c >= 0x2670 && c <= 0x2767) ||\n c === 0x2768 ||\n c === 0x2769 ||\n c === 0x276a ||\n c === 0x276b ||\n c === 0x276c ||\n c === 0x276d ||\n c === 0x276e ||\n c === 0x276f ||\n c === 0x2770 ||\n c === 0x2771 ||\n c === 0x2772 ||\n c === 0x2773 ||\n c === 0x2774 ||\n c === 0x2775 ||\n (c >= 0x2794 && c <= 0x27bf) ||\n (c >= 0x27c0 && c <= 0x27c4) ||\n c === 0x27c5 ||\n c === 0x27c6 ||\n (c >= 0x27c7 && c <= 0x27e5) ||\n c === 0x27e6 ||\n c === 0x27e7 ||\n c === 0x27e8 ||\n c === 0x27e9 ||\n c === 0x27ea ||\n c === 0x27eb ||\n c === 0x27ec ||\n c === 0x27ed ||\n c === 0x27ee ||\n c === 0x27ef ||\n (c >= 0x27f0 && c <= 0x27ff) ||\n (c >= 0x2800 && c <= 0x28ff) ||\n (c >= 0x2900 && c <= 0x2982) ||\n c === 0x2983 ||\n c === 0x2984 ||\n c === 0x2985 ||\n c === 0x2986 ||\n c === 0x2987 ||\n c === 0x2988 ||\n c === 0x2989 ||\n c === 0x298a ||\n c === 0x298b ||\n c === 0x298c ||\n c === 0x298d ||\n c === 0x298e ||\n c === 0x298f ||\n c === 0x2990 ||\n c === 0x2991 ||\n c === 0x2992 ||\n c === 0x2993 ||\n c === 0x2994 ||\n c === 0x2995 ||\n c === 0x2996 ||\n c === 0x2997 ||\n c === 0x2998 ||\n (c >= 0x2999 && c <= 0x29d7) ||\n c === 0x29d8 ||\n c === 0x29d9 ||\n c === 0x29da ||\n c === 0x29db ||\n (c >= 0x29dc && c <= 0x29fb) ||\n c === 0x29fc ||\n c === 0x29fd ||\n (c >= 0x29fe && c <= 0x2aff) ||\n (c >= 0x2b00 && c <= 0x2b2f) ||\n (c >= 0x2b30 && c <= 0x2b44) ||\n (c >= 0x2b45 && c <= 0x2b46) ||\n (c >= 0x2b47 && c <= 0x2b4c) ||\n (c >= 0x2b4d && c <= 0x2b73) ||\n (c >= 0x2b74 && c <= 0x2b75) ||\n (c >= 0x2b76 && c <= 0x2b95) ||\n c === 0x2b96 ||\n (c >= 0x2b97 && c <= 0x2bff) ||\n (c >= 0x2e00 && c <= 0x2e01) ||\n c === 0x2e02 ||\n c === 0x2e03 ||\n c === 0x2e04 ||\n c === 0x2e05 ||\n (c >= 0x2e06 && c <= 0x2e08) ||\n c === 0x2e09 ||\n c === 0x2e0a ||\n c === 0x2e0b ||\n c === 0x2e0c ||\n c === 0x2e0d ||\n (c >= 0x2e0e && c <= 0x2e16) ||\n c === 0x2e17 ||\n (c >= 0x2e18 && c <= 0x2e19) ||\n c === 0x2e1a ||\n c === 0x2e1b ||\n c === 0x2e1c ||\n c === 0x2e1d ||\n (c >= 0x2e1e && c <= 0x2e1f) ||\n c === 0x2e20 ||\n c === 0x2e21 ||\n c === 0x2e22 ||\n c === 0x2e23 ||\n c === 0x2e24 ||\n c === 0x2e25 ||\n c === 0x2e26 ||\n c === 0x2e27 ||\n c === 0x2e28 ||\n c === 0x2e29 ||\n (c >= 0x2e2a && c <= 0x2e2e) ||\n c === 0x2e2f ||\n (c >= 0x2e30 && c <= 0x2e39) ||\n (c >= 0x2e3a && c <= 0x2e3b) ||\n (c >= 0x2e3c && c <= 0x2e3f) ||\n c === 0x2e40 ||\n c === 0x2e41 ||\n c === 0x2e42 ||\n (c >= 0x2e43 && c <= 0x2e4f) ||\n (c >= 0x2e50 && c <= 0x2e51) ||\n c === 0x2e52 ||\n (c >= 0x2e53 && c <= 0x2e7f) ||\n (c >= 0x3001 && c <= 0x3003) ||\n c === 0x3008 ||\n c === 0x3009 ||\n c === 0x300a ||\n c === 0x300b ||\n c === 0x300c ||\n c === 0x300d ||\n c === 0x300e ||\n c === 0x300f ||\n c === 0x3010 ||\n c === 0x3011 ||\n (c >= 0x3012 && c <= 0x3013) ||\n c === 0x3014 ||\n c === 0x3015 ||\n c === 0x3016 ||\n c === 0x3017 ||\n c === 0x3018 ||\n c === 0x3019 ||\n c === 0x301a ||\n c === 0x301b ||\n c === 0x301c ||\n c === 0x301d ||\n (c >= 0x301e && c <= 0x301f) ||\n c === 0x3020 ||\n c === 0x3030 ||\n c === 0xfd3e ||\n c === 0xfd3f ||\n (c >= 0xfe45 && c <= 0xfe46));\n}\n","import { __assign } from \"tslib\";\nimport { ErrorKind } from './error';\nimport { Parser } from './parser';\nimport { isDateElement, isDateTimeSkeleton, isNumberElement, isNumberSkeleton, isPluralElement, isSelectElement, isTagElement, isTimeElement, } from './types';\nfunction pruneLocation(els) {\n els.forEach(function (el) {\n delete el.location;\n if (isSelectElement(el) || isPluralElement(el)) {\n for (var k in el.options) {\n delete el.options[k].location;\n pruneLocation(el.options[k].value);\n }\n }\n else if (isNumberElement(el) && isNumberSkeleton(el.style)) {\n delete el.style.location;\n }\n else if ((isDateElement(el) || isTimeElement(el)) &&\n isDateTimeSkeleton(el.style)) {\n delete el.style.location;\n }\n else if (isTagElement(el)) {\n pruneLocation(el.children);\n }\n });\n}\nexport function parse(message, opts) {\n if (opts === void 0) { opts = {}; }\n opts = __assign({ shouldParseSkeletons: true, requiresOtherClause: true }, opts);\n var result = new Parser(message, opts).parse();\n if (result.err) {\n var error = SyntaxError(ErrorKind[result.err.kind]);\n // @ts-expect-error Assign to error object\n error.location = result.err.location;\n // @ts-expect-error Assign to error object\n error.originalMessage = result.err.message;\n throw error;\n }\n if (!(opts === null || opts === void 0 ? void 0 : opts.captureLocation)) {\n pruneLocation(result.val);\n }\n return result.val;\n}\nexport * from './types';\n// only for testing\nexport var _Parser = Parser;\n","import { __extends } from \"tslib\";\nexport var ErrorCode;\n(function (ErrorCode) {\n // When we have a placeholder but no value to format\n ErrorCode[\"MISSING_VALUE\"] = \"MISSING_VALUE\";\n // When value supplied is invalid\n ErrorCode[\"INVALID_VALUE\"] = \"INVALID_VALUE\";\n // When we need specific Intl API but it's not available\n ErrorCode[\"MISSING_INTL_API\"] = \"MISSING_INTL_API\";\n})(ErrorCode || (ErrorCode = {}));\nvar FormatError = /** @class */ (function (_super) {\n __extends(FormatError, _super);\n function FormatError(msg, code, originalMessage) {\n var _this = _super.call(this, msg) || this;\n _this.code = code;\n _this.originalMessage = originalMessage;\n return _this;\n }\n FormatError.prototype.toString = function () {\n return \"[formatjs Error: \".concat(this.code, \"] \").concat(this.message);\n };\n return FormatError;\n}(Error));\nexport { FormatError };\nvar InvalidValueError = /** @class */ (function (_super) {\n __extends(InvalidValueError, _super);\n function InvalidValueError(variableId, value, options, originalMessage) {\n return _super.call(this, \"Invalid values for \\\"\".concat(variableId, \"\\\": \\\"\").concat(value, \"\\\". Options are \\\"\").concat(Object.keys(options).join('\", \"'), \"\\\"\"), ErrorCode.INVALID_VALUE, originalMessage) || this;\n }\n return InvalidValueError;\n}(FormatError));\nexport { InvalidValueError };\nvar InvalidValueTypeError = /** @class */ (function (_super) {\n __extends(InvalidValueTypeError, _super);\n function InvalidValueTypeError(value, type, originalMessage) {\n return _super.call(this, \"Value for \\\"\".concat(value, \"\\\" must be of type \").concat(type), ErrorCode.INVALID_VALUE, originalMessage) || this;\n }\n return InvalidValueTypeError;\n}(FormatError));\nexport { InvalidValueTypeError };\nvar MissingValueError = /** @class */ (function (_super) {\n __extends(MissingValueError, _super);\n function MissingValueError(variableId, originalMessage) {\n return _super.call(this, \"The intl string context variable \\\"\".concat(variableId, \"\\\" was not provided to the string \\\"\").concat(originalMessage, \"\\\"\"), ErrorCode.MISSING_VALUE, originalMessage) || this;\n }\n return MissingValueError;\n}(FormatError));\nexport { MissingValueError };\n","import { isArgumentElement, isDateElement, isDateTimeSkeleton, isLiteralElement, isNumberElement, isNumberSkeleton, isPluralElement, isPoundElement, isSelectElement, isTimeElement, isTagElement, } from '@formatjs/icu-messageformat-parser';\nimport { MissingValueError, InvalidValueError, ErrorCode, FormatError, InvalidValueTypeError, } from './error';\nexport var PART_TYPE;\n(function (PART_TYPE) {\n PART_TYPE[PART_TYPE[\"literal\"] = 0] = \"literal\";\n PART_TYPE[PART_TYPE[\"object\"] = 1] = \"object\";\n})(PART_TYPE || (PART_TYPE = {}));\nfunction mergeLiteral(parts) {\n if (parts.length < 2) {\n return parts;\n }\n return parts.reduce(function (all, part) {\n var lastPart = all[all.length - 1];\n if (!lastPart ||\n lastPart.type !== PART_TYPE.literal ||\n part.type !== PART_TYPE.literal) {\n all.push(part);\n }\n else {\n lastPart.value += part.value;\n }\n return all;\n }, []);\n}\nexport function isFormatXMLElementFn(el) {\n return typeof el === 'function';\n}\n// TODO(skeleton): add skeleton support\nexport function formatToParts(els, locales, formatters, formats, values, currentPluralValue, \n// For debugging\noriginalMessage) {\n // Hot path for straight simple msg translations\n if (els.length === 1 && isLiteralElement(els[0])) {\n return [\n {\n type: PART_TYPE.literal,\n value: els[0].value,\n },\n ];\n }\n var result = [];\n for (var _i = 0, els_1 = els; _i < els_1.length; _i++) {\n var el = els_1[_i];\n // Exit early for string parts.\n if (isLiteralElement(el)) {\n result.push({\n type: PART_TYPE.literal,\n value: el.value,\n });\n continue;\n }\n // TODO: should this part be literal type?\n // Replace `#` in plural rules with the actual numeric value.\n if (isPoundElement(el)) {\n if (typeof currentPluralValue === 'number') {\n result.push({\n type: PART_TYPE.literal,\n value: formatters.getNumberFormat(locales).format(currentPluralValue),\n });\n }\n continue;\n }\n var varName = el.value;\n // Enforce that all required values are provided by the caller.\n if (!(values && varName in values)) {\n throw new MissingValueError(varName, originalMessage);\n }\n var value = values[varName];\n if (isArgumentElement(el)) {\n if (!value || typeof value === 'string' || typeof value === 'number') {\n value =\n typeof value === 'string' || typeof value === 'number'\n ? String(value)\n : '';\n }\n result.push({\n type: typeof value === 'string' ? PART_TYPE.literal : PART_TYPE.object,\n value: value,\n });\n continue;\n }\n // Recursively format plural and select parts' option — which can be a\n // nested pattern structure. The choosing of the option to use is\n // abstracted-by and delegated-to the part helper object.\n if (isDateElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.date[el.style]\n : isDateTimeSkeleton(el.style)\n ? el.style.parsedOptions\n : undefined;\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getDateTimeFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isTimeElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.time[el.style]\n : isDateTimeSkeleton(el.style)\n ? el.style.parsedOptions\n : formats.time.medium;\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getDateTimeFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isNumberElement(el)) {\n var style = typeof el.style === 'string'\n ? formats.number[el.style]\n : isNumberSkeleton(el.style)\n ? el.style.parsedOptions\n : undefined;\n if (style && style.scale) {\n value =\n value *\n (style.scale || 1);\n }\n result.push({\n type: PART_TYPE.literal,\n value: formatters\n .getNumberFormat(locales, style)\n .format(value),\n });\n continue;\n }\n if (isTagElement(el)) {\n var children = el.children, value_1 = el.value;\n var formatFn = values[value_1];\n if (!isFormatXMLElementFn(formatFn)) {\n throw new InvalidValueTypeError(value_1, 'function', originalMessage);\n }\n var parts = formatToParts(children, locales, formatters, formats, values, currentPluralValue);\n var chunks = formatFn(parts.map(function (p) { return p.value; }));\n if (!Array.isArray(chunks)) {\n chunks = [chunks];\n }\n result.push.apply(result, chunks.map(function (c) {\n return {\n type: typeof c === 'string' ? PART_TYPE.literal : PART_TYPE.object,\n value: c,\n };\n }));\n }\n if (isSelectElement(el)) {\n var opt = el.options[value] || el.options.other;\n if (!opt) {\n throw new InvalidValueError(el.value, value, Object.keys(el.options), originalMessage);\n }\n result.push.apply(result, formatToParts(opt.value, locales, formatters, formats, values));\n continue;\n }\n if (isPluralElement(el)) {\n var opt = el.options[\"=\".concat(value)];\n if (!opt) {\n if (!Intl.PluralRules) {\n throw new FormatError(\"Intl.PluralRules is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-pluralrules\\\"\\n\", ErrorCode.MISSING_INTL_API, originalMessage);\n }\n var rule = formatters\n .getPluralRules(locales, { type: el.pluralType })\n .select(value - (el.offset || 0));\n opt = el.options[rule] || el.options.other;\n }\n if (!opt) {\n throw new InvalidValueError(el.value, value, Object.keys(el.options), originalMessage);\n }\n result.push.apply(result, formatToParts(opt.value, locales, formatters, formats, values, value - (el.offset || 0)));\n continue;\n }\n }\n return mergeLiteral(result);\n}\n","/*\nCopyright (c) 2014, Yahoo! Inc. All rights reserved.\nCopyrights licensed under the New BSD License.\nSee the accompanying LICENSE file for terms.\n*/\nimport { __assign, __rest, __spreadArray } from \"tslib\";\nimport { memoize, strategies } from '@formatjs/fast-memoize';\nimport { parse, } from '@formatjs/icu-messageformat-parser';\nimport { formatToParts, PART_TYPE, } from './formatters';\n// -- MessageFormat --------------------------------------------------------\nfunction mergeConfig(c1, c2) {\n if (!c2) {\n return c1;\n }\n return __assign(__assign(__assign({}, (c1 || {})), (c2 || {})), Object.keys(c1).reduce(function (all, k) {\n all[k] = __assign(__assign({}, c1[k]), (c2[k] || {}));\n return all;\n }, {}));\n}\nfunction mergeConfigs(defaultConfig, configs) {\n if (!configs) {\n return defaultConfig;\n }\n return Object.keys(defaultConfig).reduce(function (all, k) {\n all[k] = mergeConfig(defaultConfig[k], configs[k]);\n return all;\n }, __assign({}, defaultConfig));\n}\nfunction createFastMemoizeCache(store) {\n return {\n create: function () {\n return {\n get: function (key) {\n return store[key];\n },\n set: function (key, value) {\n store[key] = value;\n },\n };\n },\n };\n}\nfunction createDefaultFormatters(cache) {\n if (cache === void 0) { cache = {\n number: {},\n dateTime: {},\n pluralRules: {},\n }; }\n return {\n getNumberFormat: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.NumberFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.number),\n strategy: strategies.variadic,\n }),\n getDateTimeFormat: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.DateTimeFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.dateTime),\n strategy: strategies.variadic,\n }),\n getPluralRules: memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.PluralRules).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.pluralRules),\n strategy: strategies.variadic,\n }),\n };\n}\nvar IntlMessageFormat = /** @class */ (function () {\n function IntlMessageFormat(message, locales, overrideFormats, opts) {\n if (locales === void 0) { locales = IntlMessageFormat.defaultLocale; }\n var _this = this;\n this.formatterCache = {\n number: {},\n dateTime: {},\n pluralRules: {},\n };\n this.format = function (values) {\n var parts = _this.formatToParts(values);\n // Hot path for straight simple msg translations\n if (parts.length === 1) {\n return parts[0].value;\n }\n var result = parts.reduce(function (all, part) {\n if (!all.length ||\n part.type !== PART_TYPE.literal ||\n typeof all[all.length - 1] !== 'string') {\n all.push(part.value);\n }\n else {\n all[all.length - 1] += part.value;\n }\n return all;\n }, []);\n if (result.length <= 1) {\n return result[0] || '';\n }\n return result;\n };\n this.formatToParts = function (values) {\n return formatToParts(_this.ast, _this.locales, _this.formatters, _this.formats, values, undefined, _this.message);\n };\n this.resolvedOptions = function () {\n var _a;\n return ({\n locale: ((_a = _this.resolvedLocale) === null || _a === void 0 ? void 0 : _a.toString()) ||\n Intl.NumberFormat.supportedLocalesOf(_this.locales)[0],\n });\n };\n this.getAst = function () { return _this.ast; };\n // Defined first because it's used to build the format pattern.\n this.locales = locales;\n this.resolvedLocale = IntlMessageFormat.resolveLocale(locales);\n if (typeof message === 'string') {\n this.message = message;\n if (!IntlMessageFormat.__parse) {\n throw new TypeError('IntlMessageFormat.__parse must be set to process `message` of type `string`');\n }\n var _a = opts || {}, formatters = _a.formatters, parseOpts = __rest(_a, [\"formatters\"]);\n // Parse string messages into an AST.\n this.ast = IntlMessageFormat.__parse(message, __assign(__assign({}, parseOpts), { locale: this.resolvedLocale }));\n }\n else {\n this.ast = message;\n }\n if (!Array.isArray(this.ast)) {\n throw new TypeError('A message must be provided as a String or AST.');\n }\n // Creates a new object with the specified `formats` merged with the default\n // formats.\n this.formats = mergeConfigs(IntlMessageFormat.formats, overrideFormats);\n this.formatters =\n (opts && opts.formatters) || createDefaultFormatters(this.formatterCache);\n }\n Object.defineProperty(IntlMessageFormat, \"defaultLocale\", {\n get: function () {\n if (!IntlMessageFormat.memoizedDefaultLocale) {\n IntlMessageFormat.memoizedDefaultLocale =\n new Intl.NumberFormat().resolvedOptions().locale;\n }\n return IntlMessageFormat.memoizedDefaultLocale;\n },\n enumerable: false,\n configurable: true\n });\n IntlMessageFormat.memoizedDefaultLocale = null;\n IntlMessageFormat.resolveLocale = function (locales) {\n if (typeof Intl.Locale === 'undefined') {\n return;\n }\n var supportedLocales = Intl.NumberFormat.supportedLocalesOf(locales);\n if (supportedLocales.length > 0) {\n return new Intl.Locale(supportedLocales[0]);\n }\n return new Intl.Locale(typeof locales === 'string' ? locales : locales[0]);\n };\n IntlMessageFormat.__parse = parse;\n // Default format options used as the prototype of the `formats` provided to the\n // constructor. These are used when constructing the internal Intl.NumberFormat\n // and Intl.DateTimeFormat instances.\n IntlMessageFormat.formats = {\n number: {\n integer: {\n maximumFractionDigits: 0,\n },\n currency: {\n style: 'currency',\n },\n percent: {\n style: 'percent',\n },\n },\n date: {\n short: {\n month: 'numeric',\n day: 'numeric',\n year: '2-digit',\n },\n medium: {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n },\n long: {\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n full: {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n },\n time: {\n short: {\n hour: 'numeric',\n minute: 'numeric',\n },\n medium: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n },\n long: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n timeZoneName: 'short',\n },\n full: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n timeZoneName: 'short',\n },\n },\n };\n return IntlMessageFormat;\n}());\nexport { IntlMessageFormat };\n","import { __extends } from \"tslib\";\nexport var IntlErrorCode;\n(function (IntlErrorCode) {\n IntlErrorCode[\"FORMAT_ERROR\"] = \"FORMAT_ERROR\";\n IntlErrorCode[\"UNSUPPORTED_FORMATTER\"] = \"UNSUPPORTED_FORMATTER\";\n IntlErrorCode[\"INVALID_CONFIG\"] = \"INVALID_CONFIG\";\n IntlErrorCode[\"MISSING_DATA\"] = \"MISSING_DATA\";\n IntlErrorCode[\"MISSING_TRANSLATION\"] = \"MISSING_TRANSLATION\";\n})(IntlErrorCode || (IntlErrorCode = {}));\nvar IntlError = /** @class */ (function (_super) {\n __extends(IntlError, _super);\n function IntlError(code, message, exception) {\n var _this = this;\n var err = exception\n ? exception instanceof Error\n ? exception\n : new Error(String(exception))\n : undefined;\n _this = _super.call(this, \"[@formatjs/intl Error \".concat(code, \"] \").concat(message, \"\\n\").concat(err ? \"\\n\".concat(err.message, \"\\n\").concat(err.stack) : '')) || this;\n _this.code = code;\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (typeof Error.captureStackTrace === 'function') {\n // @ts-ignore just so we don't need to declare dep on @types/node\n Error.captureStackTrace(_this, IntlError);\n }\n return _this;\n }\n return IntlError;\n}(Error));\nexport { IntlError };\nvar UnsupportedFormatterError = /** @class */ (function (_super) {\n __extends(UnsupportedFormatterError, _super);\n function UnsupportedFormatterError(message, exception) {\n return _super.call(this, IntlErrorCode.UNSUPPORTED_FORMATTER, message, exception) || this;\n }\n return UnsupportedFormatterError;\n}(IntlError));\nexport { UnsupportedFormatterError };\nvar InvalidConfigError = /** @class */ (function (_super) {\n __extends(InvalidConfigError, _super);\n function InvalidConfigError(message, exception) {\n return _super.call(this, IntlErrorCode.INVALID_CONFIG, message, exception) || this;\n }\n return InvalidConfigError;\n}(IntlError));\nexport { InvalidConfigError };\nvar MissingDataError = /** @class */ (function (_super) {\n __extends(MissingDataError, _super);\n function MissingDataError(message, exception) {\n return _super.call(this, IntlErrorCode.MISSING_DATA, message, exception) || this;\n }\n return MissingDataError;\n}(IntlError));\nexport { MissingDataError };\nvar IntlFormatError = /** @class */ (function (_super) {\n __extends(IntlFormatError, _super);\n function IntlFormatError(message, locale, exception) {\n var _this = _super.call(this, IntlErrorCode.FORMAT_ERROR, \"\".concat(message, \"\\nLocale: \").concat(locale, \"\\n\"), exception) || this;\n _this.locale = locale;\n return _this;\n }\n return IntlFormatError;\n}(IntlError));\nexport { IntlFormatError };\nvar MessageFormatError = /** @class */ (function (_super) {\n __extends(MessageFormatError, _super);\n function MessageFormatError(message, locale, descriptor, exception) {\n var _this = _super.call(this, \"\".concat(message, \"\\nMessageID: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.id, \"\\nDefault Message: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.defaultMessage, \"\\nDescription: \").concat(descriptor === null || descriptor === void 0 ? void 0 : descriptor.description, \"\\n\"), locale, exception) || this;\n _this.descriptor = descriptor;\n _this.locale = locale;\n return _this;\n }\n return MessageFormatError;\n}(IntlFormatError));\nexport { MessageFormatError };\nvar MissingTranslationError = /** @class */ (function (_super) {\n __extends(MissingTranslationError, _super);\n function MissingTranslationError(descriptor, locale) {\n var _this = _super.call(this, IntlErrorCode.MISSING_TRANSLATION, \"Missing message: \\\"\".concat(descriptor.id, \"\\\" for locale \\\"\").concat(locale, \"\\\", using \").concat(descriptor.defaultMessage\n ? \"default message (\".concat(typeof descriptor.defaultMessage === 'string'\n ? descriptor.defaultMessage\n : descriptor.defaultMessage\n .map(function (e) { var _a; return (_a = e.value) !== null && _a !== void 0 ? _a : JSON.stringify(e); })\n .join(), \")\")\n : 'id', \" as fallback.\")) || this;\n _this.descriptor = descriptor;\n return _this;\n }\n return MissingTranslationError;\n}(IntlError));\nexport { MissingTranslationError };\n","import { __assign, __spreadArray } from \"tslib\";\nimport { IntlMessageFormat } from 'intl-messageformat';\nimport { memoize, strategies } from '@formatjs/fast-memoize';\nimport { UnsupportedFormatterError } from './error';\nexport function filterProps(props, allowlist, defaults) {\n if (defaults === void 0) { defaults = {}; }\n return allowlist.reduce(function (filtered, name) {\n if (name in props) {\n filtered[name] = props[name];\n }\n else if (name in defaults) {\n filtered[name] = defaults[name];\n }\n return filtered;\n }, {});\n}\nvar defaultErrorHandler = function (error) {\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (process.env.NODE_ENV !== 'production') {\n console.error(error);\n }\n};\nvar defaultWarnHandler = function (warning) {\n // @ts-ignore just so we don't need to declare dep on @types/node\n if (process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n};\nexport var DEFAULT_INTL_CONFIG = {\n formats: {},\n messages: {},\n timeZone: undefined,\n defaultLocale: 'en',\n defaultFormats: {},\n fallbackOnEmptyString: true,\n onError: defaultErrorHandler,\n onWarn: defaultWarnHandler,\n};\nexport function createIntlCache() {\n return {\n dateTime: {},\n number: {},\n message: {},\n relativeTime: {},\n pluralRules: {},\n list: {},\n displayNames: {},\n };\n}\nfunction createFastMemoizeCache(store) {\n return {\n create: function () {\n return {\n get: function (key) {\n return store[key];\n },\n set: function (key, value) {\n store[key] = value;\n },\n };\n },\n };\n}\n/**\n * Create intl formatters and populate cache\n * @param cache explicit cache to prevent leaking memory\n */\nexport function createFormatters(cache) {\n if (cache === void 0) { cache = createIntlCache(); }\n var RelativeTimeFormat = Intl.RelativeTimeFormat;\n var ListFormat = Intl.ListFormat;\n var DisplayNames = Intl.DisplayNames;\n var getDateTimeFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.DateTimeFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.dateTime),\n strategy: strategies.variadic,\n });\n var getNumberFormat = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.NumberFormat).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.number),\n strategy: strategies.variadic,\n });\n var getPluralRules = memoize(function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new ((_a = Intl.PluralRules).bind.apply(_a, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.pluralRules),\n strategy: strategies.variadic,\n });\n return {\n getDateTimeFormat: getDateTimeFormat,\n getNumberFormat: getNumberFormat,\n getMessageFormat: memoize(function (message, locales, overrideFormats, opts) {\n return new IntlMessageFormat(message, locales, overrideFormats, __assign({ formatters: {\n getNumberFormat: getNumberFormat,\n getDateTimeFormat: getDateTimeFormat,\n getPluralRules: getPluralRules,\n } }, (opts || {})));\n }, {\n cache: createFastMemoizeCache(cache.message),\n strategy: strategies.variadic,\n }),\n getRelativeTimeFormat: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (RelativeTimeFormat.bind.apply(RelativeTimeFormat, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.relativeTime),\n strategy: strategies.variadic,\n }),\n getPluralRules: getPluralRules,\n getListFormat: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (ListFormat.bind.apply(ListFormat, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.list),\n strategy: strategies.variadic,\n }),\n getDisplayNames: memoize(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return new (DisplayNames.bind.apply(DisplayNames, __spreadArray([void 0], args, false)))();\n }, {\n cache: createFastMemoizeCache(cache.displayNames),\n strategy: strategies.variadic,\n }),\n };\n}\nexport function getNamedFormat(formats, type, name, onError) {\n var formatType = formats && formats[type];\n var format;\n if (formatType) {\n format = formatType[name];\n }\n if (format) {\n return format;\n }\n onError(new UnsupportedFormatterError(\"No \".concat(type, \" format named: \").concat(name)));\n}\n","import { __assign } from \"tslib\";\nimport { invariant } from '@formatjs/ecma402-abstract';\nimport { IntlMessageFormat, } from 'intl-messageformat';\nimport { MissingTranslationError, MessageFormatError } from './error';\nimport { TYPE } from '@formatjs/icu-messageformat-parser';\nfunction setTimeZoneInOptions(opts, timeZone) {\n return Object.keys(opts).reduce(function (all, k) {\n all[k] = __assign({ timeZone: timeZone }, opts[k]);\n return all;\n }, {});\n}\nfunction deepMergeOptions(opts1, opts2) {\n var keys = Object.keys(__assign(__assign({}, opts1), opts2));\n return keys.reduce(function (all, k) {\n all[k] = __assign(__assign({}, (opts1[k] || {})), (opts2[k] || {}));\n return all;\n }, {});\n}\nfunction deepMergeFormatsAndSetTimeZone(f1, timeZone) {\n if (!timeZone) {\n return f1;\n }\n var mfFormats = IntlMessageFormat.formats;\n return __assign(__assign(__assign({}, mfFormats), f1), { date: deepMergeOptions(setTimeZoneInOptions(mfFormats.date, timeZone), setTimeZoneInOptions(f1.date || {}, timeZone)), time: deepMergeOptions(setTimeZoneInOptions(mfFormats.time, timeZone), setTimeZoneInOptions(f1.time || {}, timeZone)) });\n}\nexport var formatMessage = function (_a, state, messageDescriptor, values, opts) {\n var locale = _a.locale, formats = _a.formats, messages = _a.messages, defaultLocale = _a.defaultLocale, defaultFormats = _a.defaultFormats, fallbackOnEmptyString = _a.fallbackOnEmptyString, onError = _a.onError, timeZone = _a.timeZone, defaultRichTextElements = _a.defaultRichTextElements;\n if (messageDescriptor === void 0) { messageDescriptor = { id: '' }; }\n var msgId = messageDescriptor.id, defaultMessage = messageDescriptor.defaultMessage;\n // `id` is a required field of a Message Descriptor.\n invariant(!!msgId, \"[@formatjs/intl] An `id` must be provided to format a message. You can either:\\n1. Configure your build toolchain with [babel-plugin-formatjs](https://formatjs.io/docs/tooling/babel-plugin)\\nor [@formatjs/ts-transformer](https://formatjs.io/docs/tooling/ts-transformer) OR\\n2. Configure your `eslint` config to include [eslint-plugin-formatjs](https://formatjs.io/docs/tooling/linter#enforce-id)\\nto autofix this issue\");\n var id = String(msgId);\n var message = \n // In case messages is Object.create(null)\n // e.g import('foo.json') from webpack)\n // See https://github.com/formatjs/formatjs/issues/1914\n messages &&\n Object.prototype.hasOwnProperty.call(messages, id) &&\n messages[id];\n // IMPORTANT: Hot path if `message` is AST with a single literal node\n if (Array.isArray(message) &&\n message.length === 1 &&\n message[0].type === TYPE.literal) {\n return message[0].value;\n }\n // IMPORTANT: Hot path straight lookup for performance\n if (!values &&\n message &&\n typeof message === 'string' &&\n !defaultRichTextElements) {\n return message.replace(/'\\{(.*?)\\}'/gi, \"{$1}\");\n }\n values = __assign(__assign({}, defaultRichTextElements), (values || {}));\n formats = deepMergeFormatsAndSetTimeZone(formats, timeZone);\n defaultFormats = deepMergeFormatsAndSetTimeZone(defaultFormats, timeZone);\n if (!message) {\n if (fallbackOnEmptyString === false && message === '') {\n return message;\n }\n if (!defaultMessage ||\n (locale && locale.toLowerCase() !== defaultLocale.toLowerCase())) {\n // This prevents warnings from littering the console in development\n // when no `messages` are passed into the <IntlProvider> for the\n // default locale.\n onError(new MissingTranslationError(messageDescriptor, locale));\n }\n if (defaultMessage) {\n try {\n var formatter = state.getMessageFormat(defaultMessage, defaultLocale, defaultFormats, opts);\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting default message for: \\\"\".concat(id, \"\\\", rendering default message verbatim\"), locale, messageDescriptor, e));\n return typeof defaultMessage === 'string' ? defaultMessage : id;\n }\n }\n return id;\n }\n // We have the translated message\n try {\n var formatter = state.getMessageFormat(message, locale, formats, __assign({ formatters: state }, (opts || {})));\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting message: \\\"\".concat(id, \"\\\", using \").concat(defaultMessage ? 'default message' : 'id', \" as fallback.\"), locale, messageDescriptor, e));\n }\n if (defaultMessage) {\n try {\n var formatter = state.getMessageFormat(defaultMessage, defaultLocale, defaultFormats, opts);\n return formatter.format(values);\n }\n catch (e) {\n onError(new MessageFormatError(\"Error formatting the default message for: \\\"\".concat(id, \"\\\", rendering message verbatim\"), locale, messageDescriptor, e));\n }\n }\n if (typeof message === 'string') {\n return message;\n }\n if (typeof defaultMessage === 'string') {\n return defaultMessage;\n }\n return id;\n};\n","import { __assign } from \"tslib\";\nimport { filterProps, getNamedFormat } from './utils';\nimport { IntlFormatError } from './error';\nvar DATE_TIME_FORMAT_OPTIONS = [\n 'formatMatcher',\n 'timeZone',\n 'hour12',\n 'weekday',\n 'era',\n 'year',\n 'month',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'timeZoneName',\n 'hourCycle',\n 'dateStyle',\n 'timeStyle',\n 'calendar',\n // 'dayPeriod',\n 'numberingSystem',\n 'fractionalSecondDigits',\n];\nexport function getFormatter(_a, type, getDateTimeFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError, timeZone = _a.timeZone;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = __assign(__assign({}, (timeZone && { timeZone: timeZone })), (format && getNamedFormat(formats, type, format, onError)));\n var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, defaults);\n if (type === 'time' &&\n !filteredOptions.hour &&\n !filteredOptions.minute &&\n !filteredOptions.second &&\n !filteredOptions.timeStyle &&\n !filteredOptions.dateStyle) {\n // Add default formatting options if hour, minute, or second isn't defined.\n filteredOptions = __assign(__assign({}, filteredOptions), { hour: 'numeric', minute: 'numeric' });\n }\n return getDateTimeFormat(locale, filteredOptions);\n}\nexport function formatDate(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'date', getDateTimeFormat, options).format(date);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting date.', config.locale, e));\n }\n return String(date);\n}\nexport function formatTime(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'time', getDateTimeFormat, options).format(date);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting time.', config.locale, e));\n }\n return String(date);\n}\nexport function formatDateTimeRange(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var from = _a[0], to = _a[1], _b = _a[2], options = _b === void 0 ? {} : _b;\n var timeZone = config.timeZone, locale = config.locale, onError = config.onError;\n var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, timeZone ? { timeZone: timeZone } : {});\n try {\n return getDateTimeFormat(locale, filteredOptions).formatRange(from, to);\n }\n catch (e) {\n onError(new IntlFormatError('Error formatting date time range.', config.locale, e));\n }\n return String(from);\n}\nexport function formatDateToParts(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'date', getDateTimeFormat, options).formatToParts(date); // TODO: remove this when https://github.com/microsoft/TypeScript/pull/50402 is merged\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting date.', config.locale, e));\n }\n return [];\n}\nexport function formatTimeToParts(config, getDateTimeFormat) {\n var _a = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n _a[_i - 2] = arguments[_i];\n }\n var value = _a[0], _b = _a[1], options = _b === void 0 ? {} : _b;\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n try {\n return getFormatter(config, 'time', getDateTimeFormat, options).formatToParts(date); // TODO: remove this when https://github.com/microsoft/TypeScript/pull/50402 is merged\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting time.', config.locale, e));\n }\n return [];\n}\n","import { filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlFormatError } from './error';\nvar DISPLAY_NAMES_OPTONS = [\n 'style',\n 'type',\n 'fallback',\n 'languageDisplay',\n];\nexport function formatDisplayName(_a, getDisplayNames, value, options) {\n var locale = _a.locale, onError = _a.onError;\n var DisplayNames = Intl.DisplayNames;\n if (!DisplayNames) {\n onError(new FormatError(\"Intl.DisplayNames is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-displaynames\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, DISPLAY_NAMES_OPTONS);\n try {\n return getDisplayNames(locale, filteredOptions).of(value);\n }\n catch (e) {\n onError(new IntlFormatError('Error formatting display name.', locale, e));\n }\n}\n","import { __assign } from \"tslib\";\nimport { filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlFormatError } from './error';\nvar LIST_FORMAT_OPTIONS = [\n 'type',\n 'style',\n];\nvar now = Date.now();\nfunction generateToken(i) {\n return \"\".concat(now, \"_\").concat(i, \"_\").concat(now);\n}\nexport function formatList(opts, getListFormat, values, options) {\n if (options === void 0) { options = {}; }\n var results = formatListToParts(opts, getListFormat, values, options).reduce(function (all, el) {\n var val = el.value;\n if (typeof val !== 'string') {\n all.push(val);\n }\n else if (typeof all[all.length - 1] === 'string') {\n all[all.length - 1] += val;\n }\n else {\n all.push(val);\n }\n return all;\n }, []);\n return results.length === 1 ? results[0] : results.length === 0 ? '' : results;\n}\nexport function formatListToParts(_a, getListFormat, values, options) {\n var locale = _a.locale, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var ListFormat = Intl.ListFormat;\n if (!ListFormat) {\n onError(new FormatError(\"Intl.ListFormat is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-listformat\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, LIST_FORMAT_OPTIONS);\n try {\n var richValues_1 = {};\n var serializedValues = values.map(function (v, i) {\n if (typeof v === 'object') {\n var id = generateToken(i);\n richValues_1[id] = v;\n return id;\n }\n return String(v);\n });\n return getListFormat(locale, filteredOptions)\n .formatToParts(serializedValues)\n .map(function (part) {\n return part.type === 'literal'\n ? part\n : __assign(__assign({}, part), { value: richValues_1[part.value] || part.value });\n });\n }\n catch (e) {\n onError(new IntlFormatError('Error formatting list.', locale, e));\n }\n // @ts-ignore\n return values;\n}\n","import { filterProps } from './utils';\nimport { IntlFormatError } from './error';\nimport { ErrorCode, FormatError } from 'intl-messageformat';\nvar PLURAL_FORMAT_OPTIONS = ['type'];\nexport function formatPlural(_a, getPluralRules, value, options) {\n var locale = _a.locale, onError = _a.onError;\n if (options === void 0) { options = {}; }\n if (!Intl.PluralRules) {\n onError(new FormatError(\"Intl.PluralRules is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-pluralrules\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n var filteredOptions = filterProps(options, PLURAL_FORMAT_OPTIONS);\n try {\n return getPluralRules(locale, filteredOptions).select(value);\n }\n catch (e) {\n onError(new IntlFormatError('Error formatting plural.', locale, e));\n }\n return 'other';\n}\n","import { getNamedFormat, filterProps } from './utils';\nimport { FormatError, ErrorCode } from 'intl-messageformat';\nimport { IntlFormatError } from './error';\nvar RELATIVE_TIME_FORMAT_OPTIONS = ['numeric', 'style'];\nfunction getFormatter(_a, getRelativeTimeFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = (!!format && getNamedFormat(formats, 'relative', format, onError)) || {};\n var filteredOptions = filterProps(options, RELATIVE_TIME_FORMAT_OPTIONS, defaults);\n return getRelativeTimeFormat(locale, filteredOptions);\n}\nexport function formatRelativeTime(config, getRelativeTimeFormat, value, unit, options) {\n if (options === void 0) { options = {}; }\n if (!unit) {\n unit = 'second';\n }\n var RelativeTimeFormat = Intl.RelativeTimeFormat;\n if (!RelativeTimeFormat) {\n config.onError(new FormatError(\"Intl.RelativeTimeFormat is not available in this environment.\\nTry polyfilling it using \\\"@formatjs/intl-relativetimeformat\\\"\\n\", ErrorCode.MISSING_INTL_API));\n }\n try {\n return getFormatter(config, getRelativeTimeFormat, options).format(value, unit);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting relative time.', config.locale, e));\n }\n return String(value);\n}\n","import { IntlFormatError } from './error';\nimport { filterProps, getNamedFormat } from './utils';\nvar NUMBER_FORMAT_OPTIONS = [\n 'style',\n 'currency',\n 'unit',\n 'unitDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits',\n // ES2020 NumberFormat\n 'compactDisplay',\n 'currencyDisplay',\n 'currencySign',\n 'notation',\n 'signDisplay',\n 'unit',\n 'unitDisplay',\n 'numberingSystem',\n // ES2023 NumberFormat\n 'trailingZeroDisplay',\n 'roundingPriority',\n 'roundingIncrement',\n 'roundingMode',\n];\nexport function getFormatter(_a, getNumberFormat, options) {\n var locale = _a.locale, formats = _a.formats, onError = _a.onError;\n if (options === void 0) { options = {}; }\n var format = options.format;\n var defaults = ((format &&\n getNamedFormat(formats, 'number', format, onError)) ||\n {});\n var filteredOptions = filterProps(options, NUMBER_FORMAT_OPTIONS, defaults);\n return getNumberFormat(locale, filteredOptions);\n}\nexport function formatNumber(config, getNumberFormat, value, options) {\n if (options === void 0) { options = {}; }\n try {\n return getFormatter(config, getNumberFormat, options).format(value);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting number.', config.locale, e));\n }\n return String(value);\n}\nexport function formatNumberToParts(config, getNumberFormat, value, options) {\n if (options === void 0) { options = {}; }\n try {\n return getFormatter(config, getNumberFormat, options).formatToParts(value);\n }\n catch (e) {\n config.onError(new IntlFormatError('Error formatting number.', config.locale, e));\n }\n return [];\n}\n","import { __assign } from \"tslib\";\nimport { createFormatters, DEFAULT_INTL_CONFIG } from './utils';\nimport { InvalidConfigError, MissingDataError } from './error';\nimport { formatNumber, formatNumberToParts } from './number';\nimport { formatRelativeTime } from './relativeTime';\nimport { formatDate, formatDateToParts, formatTime, formatTimeToParts, formatDateTimeRange, } from './dateTime';\nimport { formatPlural } from './plural';\nimport { formatMessage } from './message';\nimport { formatList, formatListToParts } from './list';\nimport { formatDisplayName } from './displayName';\nfunction messagesContainString(messages) {\n var firstMessage = messages ? messages[Object.keys(messages)[0]] : undefined;\n return typeof firstMessage === 'string';\n}\nfunction verifyConfigMessages(config) {\n if (config.onWarn &&\n config.defaultRichTextElements &&\n messagesContainString(config.messages || {})) {\n config.onWarn(\"[@formatjs/intl] \\\"defaultRichTextElements\\\" was specified but \\\"message\\\" was not pre-compiled. \\nPlease consider using \\\"@formatjs/cli\\\" to pre-compile your messages for performance.\\nFor more details see https://formatjs.io/docs/getting-started/message-distribution\");\n }\n}\n/**\n * Create intl object\n * @param config intl config\n * @param cache cache for formatter instances to prevent memory leak\n */\nexport function createIntl(config, cache) {\n var formatters = createFormatters(cache);\n var resolvedConfig = __assign(__assign({}, DEFAULT_INTL_CONFIG), config);\n var locale = resolvedConfig.locale, defaultLocale = resolvedConfig.defaultLocale, onError = resolvedConfig.onError;\n if (!locale) {\n if (onError) {\n onError(new InvalidConfigError(\"\\\"locale\\\" was not configured, using \\\"\".concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl/api#intlshape for more details\")));\n }\n // Since there's no registered locale data for `locale`, this will\n // fallback to the `defaultLocale` to make sure things can render.\n // The `messages` are overridden to the `defaultProps` empty object\n // to maintain referential equality across re-renders. It's assumed\n // each <FormattedMessage> contains a `defaultMessage` prop.\n resolvedConfig.locale = resolvedConfig.defaultLocale || 'en';\n }\n else if (!Intl.NumberFormat.supportedLocalesOf(locale).length && onError) {\n onError(new MissingDataError(\"Missing locale data for locale: \\\"\".concat(locale, \"\\\" in Intl.NumberFormat. Using default locale: \\\"\").concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details\")));\n }\n else if (!Intl.DateTimeFormat.supportedLocalesOf(locale).length &&\n onError) {\n onError(new MissingDataError(\"Missing locale data for locale: \\\"\".concat(locale, \"\\\" in Intl.DateTimeFormat. Using default locale: \\\"\").concat(defaultLocale, \"\\\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details\")));\n }\n verifyConfigMessages(resolvedConfig);\n return __assign(__assign({}, resolvedConfig), { formatters: formatters, formatNumber: formatNumber.bind(null, resolvedConfig, formatters.getNumberFormat), formatNumberToParts: formatNumberToParts.bind(null, resolvedConfig, formatters.getNumberFormat), formatRelativeTime: formatRelativeTime.bind(null, resolvedConfig, formatters.getRelativeTimeFormat), formatDate: formatDate.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatDateToParts: formatDateToParts.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatTime: formatTime.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatDateTimeRange: formatDateTimeRange.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatTimeToParts: formatTimeToParts.bind(null, resolvedConfig, formatters.getDateTimeFormat), formatPlural: formatPlural.bind(null, resolvedConfig, formatters.getPluralRules), \n // @ts-expect-error TODO: will get to this later\n formatMessage: formatMessage.bind(null, resolvedConfig, formatters), \n // @ts-expect-error TODO: will get to this later\n $t: formatMessage.bind(null, resolvedConfig, formatters), formatList: formatList.bind(null, resolvedConfig, formatters.getListFormat), formatListToParts: formatListToParts.bind(null, resolvedConfig, formatters.getListFormat), formatDisplayName: formatDisplayName.bind(null, resolvedConfig, formatters.getDisplayNames) });\n}\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { invariant } from '@formatjs/ecma402-abstract';\nimport { DEFAULT_INTL_CONFIG as CORE_DEFAULT_INTL_CONFIG } from '@formatjs/intl';\nexport function invariantIntlContext(intl) {\n invariant(intl, '[React Intl] Could not find required `intl` object. ' +\n '<IntlProvider> needs to exist in the component ancestry.');\n}\nexport var DEFAULT_INTL_CONFIG = __assign(__assign({}, CORE_DEFAULT_INTL_CONFIG), { textComponent: React.Fragment });\n/**\n * Takes a `formatXMLElementFn`, and composes it in function, which passes\n * argument `parts` through, assigning unique key to each part, to prevent\n * \"Each child in a list should have a unique \"key\"\" React error.\n * @param formatXMLElementFn\n */\nexport function assignUniqueKeysToParts(formatXMLElementFn) {\n return function (parts) {\n // eslint-disable-next-line prefer-rest-params\n return formatXMLElementFn(React.Children.toArray(parts));\n };\n}\nexport function shallowEqual(objA, objB) {\n if (objA === objB) {\n return true;\n }\n if (!objA || !objB) {\n return false;\n }\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n var len = aKeys.length;\n if (bKeys.length !== len) {\n return false;\n }\n for (var i = 0; i < len; i++) {\n var key = aKeys[i];\n if (objA[key] !== objB[key] ||\n !Object.prototype.hasOwnProperty.call(objB, key)) {\n return false;\n }\n }\n return true;\n}\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","import { __assign } from \"tslib\";\nimport hoistNonReactStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { invariantIntlContext } from '../utils';\nfunction getDisplayName(Component) {\n return Component.displayName || Component.name || 'Component';\n}\n// This is primarily dealing with packaging systems where multiple copies of react-intl\n// might exist\nvar IntlContext = typeof window !== 'undefined' && !window.__REACT_INTL_BYPASS_GLOBAL_CONTEXT__\n ? window.__REACT_INTL_CONTEXT__ ||\n (window.__REACT_INTL_CONTEXT__ = React.createContext(null))\n : React.createContext(null);\nvar IntlConsumer = IntlContext.Consumer, IntlProvider = IntlContext.Provider;\nexport var Provider = IntlProvider;\nexport var Context = IntlContext;\nexport default function injectIntl(WrappedComponent, options) {\n var _a = options || {}, _b = _a.intlPropName, intlPropName = _b === void 0 ? 'intl' : _b, _c = _a.forwardRef, forwardRef = _c === void 0 ? false : _c, _d = _a.enforceContext, enforceContext = _d === void 0 ? true : _d;\n var WithIntl = function (props) { return (React.createElement(IntlConsumer, null, function (intl) {\n var _a;\n if (enforceContext) {\n invariantIntlContext(intl);\n }\n var intlProp = (_a = {}, _a[intlPropName] = intl, _a);\n return (React.createElement(WrappedComponent, __assign({}, props, intlProp, { ref: forwardRef ? props.forwardedRef : null })));\n })); };\n WithIntl.displayName = \"injectIntl(\".concat(getDisplayName(WrappedComponent), \")\");\n WithIntl.WrappedComponent = WrappedComponent;\n if (forwardRef) {\n return hoistNonReactStatics(\n // @ts-expect-error\n React.forwardRef(function (props, ref) { return (React.createElement(WithIntl, __assign({}, props, { forwardedRef: ref }))); }), WrappedComponent);\n }\n return hoistNonReactStatics(WithIntl, WrappedComponent);\n}\n","import * as React from 'react';\nimport { invariantIntlContext } from '../utils';\nimport { Context } from './injectIntl';\nexport default function useIntl() {\n var intl = React.useContext(Context);\n invariantIntlContext(intl);\n return intl;\n}\n","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport useIntl from './useIntl';\nvar DisplayName;\n(function (DisplayName) {\n DisplayName[\"formatDate\"] = \"FormattedDate\";\n DisplayName[\"formatTime\"] = \"FormattedTime\";\n DisplayName[\"formatNumber\"] = \"FormattedNumber\";\n DisplayName[\"formatList\"] = \"FormattedList\";\n // Note that this DisplayName is the locale display name, not to be confused with\n // the name of the enum, which is for React component display name in dev tools.\n DisplayName[\"formatDisplayName\"] = \"FormattedDisplayName\";\n})(DisplayName || (DisplayName = {}));\nvar DisplayNameParts;\n(function (DisplayNameParts) {\n DisplayNameParts[\"formatDate\"] = \"FormattedDateParts\";\n DisplayNameParts[\"formatTime\"] = \"FormattedTimeParts\";\n DisplayNameParts[\"formatNumber\"] = \"FormattedNumberParts\";\n DisplayNameParts[\"formatList\"] = \"FormattedListParts\";\n})(DisplayNameParts || (DisplayNameParts = {}));\nexport var FormattedNumberParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n return children(intl.formatNumberToParts(value, formatProps));\n};\nFormattedNumberParts.displayName = 'FormattedNumberParts';\nexport var FormattedListParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n return children(intl.formatListToParts(value, formatProps));\n};\nFormattedNumberParts.displayName = 'FormattedNumberParts';\nexport function createFormattedDateTimePartsComponent(name) {\n var ComponentParts = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props, [\"value\", \"children\"]);\n var date = typeof value === 'string' ? new Date(value || 0) : value;\n var formattedParts = name === 'formatDate'\n ? intl.formatDateToParts(date, formatProps)\n : intl.formatTimeToParts(date, formatProps);\n return children(formattedParts);\n };\n ComponentParts.displayName = DisplayNameParts[name];\n return ComponentParts;\n}\nexport function createFormattedComponent(name) {\n var Component = function (props) {\n var intl = useIntl();\n var value = props.value, children = props.children, formatProps = __rest(props\n // TODO: fix TS type definition for localeMatcher upstream\n , [\"value\", \"children\"]);\n // TODO: fix TS type definition for localeMatcher upstream\n var formattedValue = intl[name](value, formatProps);\n if (typeof children === 'function') {\n return children(formattedValue);\n }\n var Text = intl.textComponent || React.Fragment;\n return React.createElement(Text, null, formattedValue);\n };\n Component.displayName = DisplayName[name];\n return Component;\n}\n","/*\n * Copyright 2015, Yahoo Inc.\n * Copyrights licensed under the New BSD License.\n * See the accompanying LICENSE file for terms.\n */\nimport { __assign, __rest, __spreadArray } from \"tslib\";\nimport { createIntl as coreCreateIntl, formatMessage as coreFormatMessage, } from '@formatjs/intl';\nimport * as React from 'react';\nimport { DEFAULT_INTL_CONFIG, assignUniqueKeysToParts } from '../utils';\nimport { isFormatXMLElementFn, } from 'intl-messageformat';\nfunction assignUniqueKeysToFormatXMLElementFnArgument(values) {\n if (!values) {\n return values;\n }\n return Object.keys(values).reduce(function (acc, k) {\n var v = values[k];\n acc[k] = isFormatXMLElementFn(v)\n ? assignUniqueKeysToParts(v)\n : v;\n return acc;\n }, {});\n}\nvar formatMessage = function (config, formatters, descriptor, rawValues) {\n var rest = [];\n for (var _i = 4; _i < arguments.length; _i++) {\n rest[_i - 4] = arguments[_i];\n }\n var values = assignUniqueKeysToFormatXMLElementFnArgument(rawValues);\n var chunks = coreFormatMessage.apply(void 0, __spreadArray([config,\n formatters,\n descriptor,\n values], rest, false));\n if (Array.isArray(chunks)) {\n return React.Children.toArray(chunks);\n }\n return chunks;\n};\n/**\n * Create intl object\n * @param config intl config\n * @param cache cache for formatter instances to prevent memory leak\n */\nexport var createIntl = function (_a, cache) {\n var rawDefaultRichTextElements = _a.defaultRichTextElements, config = __rest(_a, [\"defaultRichTextElements\"]);\n var defaultRichTextElements = assignUniqueKeysToFormatXMLElementFnArgument(rawDefaultRichTextElements);\n var coreIntl = coreCreateIntl(__assign(__assign(__assign({}, DEFAULT_INTL_CONFIG), config), { defaultRichTextElements: defaultRichTextElements }), cache);\n var resolvedConfig = {\n locale: coreIntl.locale,\n timeZone: coreIntl.timeZone,\n fallbackOnEmptyString: coreIntl.fallbackOnEmptyString,\n formats: coreIntl.formats,\n defaultLocale: coreIntl.defaultLocale,\n defaultFormats: coreIntl.defaultFormats,\n messages: coreIntl.messages,\n onError: coreIntl.onError,\n defaultRichTextElements: defaultRichTextElements,\n };\n return __assign(__assign({}, coreIntl), { formatMessage: formatMessage.bind(null, resolvedConfig, \n // @ts-expect-error fix this\n coreIntl.formatters), \n // @ts-expect-error fix this\n $t: formatMessage.bind(null, resolvedConfig, coreIntl.formatters) });\n};\n","/*\n * Copyright 2015, Yahoo Inc.\n * Copyrights licensed under the New BSD License.\n * See the accompanying LICENSE file for terms.\n */\nimport { __extends } from \"tslib\";\nimport { createIntlCache } from '@formatjs/intl';\nimport * as React from 'react';\nimport { DEFAULT_INTL_CONFIG, invariantIntlContext, shallowEqual } from '../utils';\nimport { Provider } from './injectIntl';\nimport { createIntl } from './createIntl';\nfunction processIntlConfig(config) {\n return {\n locale: config.locale,\n timeZone: config.timeZone,\n fallbackOnEmptyString: config.fallbackOnEmptyString,\n formats: config.formats,\n textComponent: config.textComponent,\n messages: config.messages,\n defaultLocale: config.defaultLocale,\n defaultFormats: config.defaultFormats,\n onError: config.onError,\n onWarn: config.onWarn,\n wrapRichTextChunksInFragment: config.wrapRichTextChunksInFragment,\n defaultRichTextElements: config.defaultRichTextElements,\n };\n}\nvar IntlProvider = /** @class */ (function (_super) {\n __extends(IntlProvider, _super);\n function IntlProvider() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.cache = createIntlCache();\n _this.state = {\n cache: _this.cache,\n intl: createIntl(processIntlConfig(_this.props), _this.cache),\n prevConfig: processIntlConfig(_this.props),\n };\n return _this;\n }\n IntlProvider.getDerivedStateFromProps = function (props, _a) {\n var prevConfig = _a.prevConfig, cache = _a.cache;\n var config = processIntlConfig(props);\n if (!shallowEqual(prevConfig, config)) {\n return {\n intl: createIntl(config, cache),\n prevConfig: config,\n };\n }\n return null;\n };\n IntlProvider.prototype.render = function () {\n invariantIntlContext(this.state.intl);\n return React.createElement(Provider, { value: this.state.intl }, this.props.children);\n };\n IntlProvider.displayName = 'IntlProvider';\n IntlProvider.defaultProps = DEFAULT_INTL_CONFIG;\n return IntlProvider;\n}(React.PureComponent));\nexport default IntlProvider;\n","/*\n * Copyright 2015, Yahoo Inc.\n * Copyrights licensed under the New BSD License.\n * See the accompanying LICENSE file for terms.\n */\nimport { __rest } from \"tslib\";\nimport * as React from 'react';\nimport useIntl from './useIntl';\nimport { shallowEqual } from '../utils';\nfunction areEqual(prevProps, nextProps) {\n var values = prevProps.values, otherProps = __rest(prevProps, [\"values\"]);\n var nextValues = nextProps.values, nextOtherProps = __rest(nextProps, [\"values\"]);\n return (shallowEqual(nextValues, values) &&\n shallowEqual(otherProps, nextOtherProps));\n}\nfunction FormattedMessage(props) {\n var intl = useIntl();\n var formatMessage = intl.formatMessage, _a = intl.textComponent, Text = _a === void 0 ? React.Fragment : _a;\n var id = props.id, description = props.description, defaultMessage = props.defaultMessage, values = props.values, children = props.children, _b = props.tagName, Component = _b === void 0 ? Text : _b, ignoreTag = props.ignoreTag;\n var descriptor = { id: id, description: description, defaultMessage: defaultMessage };\n var nodes = formatMessage(descriptor, values, {\n ignoreTag: ignoreTag,\n });\n if (typeof children === 'function') {\n return children(Array.isArray(nodes) ? nodes : [nodes]);\n }\n if (Component) {\n return React.createElement(Component, null, React.Children.toArray(nodes));\n }\n return React.createElement(React.Fragment, null, nodes);\n}\nFormattedMessage.displayName = 'FormattedMessage';\nvar MemoizedFormattedMessage = React.memo(FormattedMessage, areEqual);\nMemoizedFormattedMessage.displayName = 'MemoizedFormattedMessage';\nexport default MemoizedFormattedMessage;\n","import { createFormattedComponent, createFormattedDateTimePartsComponent, } from './src/components/createFormattedComponent';\nimport injectIntl, { Provider as RawIntlProvider, Context as IntlContext, } from './src/components/injectIntl';\nimport useIntl from './src/components/useIntl';\nimport IntlProvider from './src/components/provider';\nimport { createIntl } from './src/components/createIntl';\nimport FormattedRelativeTime from './src/components/relative';\nimport FormattedPlural from './src/components/plural';\nimport FormattedMessage from './src/components/message';\nimport FormattedDateTimeRange from './src/components/dateTimeRange';\nexport { FormattedDateTimeRange, FormattedMessage, FormattedPlural, FormattedRelativeTime, IntlContext, IntlProvider, RawIntlProvider, createIntl, injectIntl, useIntl, };\nexport { createIntlCache, UnsupportedFormatterError, InvalidConfigError, MissingDataError, MessageFormatError, MissingTranslationError, IntlErrorCode as ReactIntlErrorCode, IntlError as ReactIntlError, } from '@formatjs/intl';\nexport function defineMessages(msgs) {\n return msgs;\n}\nexport function defineMessage(msg) {\n return msg;\n}\n// IMPORTANT: Explicit here to prevent api-extractor from outputing `import('./src/types').CustomFormatConfig`\nexport var FormattedDate = createFormattedComponent('formatDate');\nexport var FormattedTime = createFormattedComponent('formatTime');\nexport var FormattedNumber = createFormattedComponent('formatNumber');\nexport var FormattedList = createFormattedComponent('formatList');\nexport var FormattedDisplayName = createFormattedComponent('formatDisplayName');\nexport var FormattedDateParts = createFormattedDateTimePartsComponent('formatDate');\nexport var FormattedTimeParts = createFormattedDateTimePartsComponent('formatTime');\nexport { FormattedNumberParts, FormattedListParts, } from './src/components/createFormattedComponent';\n","import { Locale } from '@/types'\nimport messagesDE from 'intl/messages/messages.de.json'\nimport messagesEN from 'intl/messages/messages.en.json'\nimport messagesES from 'intl/messages/messages.es.json'\nimport messagesFR from 'intl/messages/messages.fr.json'\nimport messagesIT from 'intl/messages/messages.it.json'\nimport messagesNL from 'intl/messages/messages.nl.json'\nimport messagesPT from 'intl/messages/messages.pt.json'\n\nexport const getTranslationsByLocale = (locale: Locale): Record<string, string> => {\n // A CMS plugin can add LCID format like : 'fr-FR' instead of 'fr'.\n // Instead of specifying all possibilities we just remove the last part of the string.\n const merchantLocale = locale.slice(0, 2)\n switch (merchantLocale) {\n case Locale.fr:\n return messagesFR\n case Locale.es:\n return messagesES\n case Locale.it:\n return messagesIT\n case Locale.de:\n return messagesDE\n case Locale.pt:\n return messagesPT\n case Locale.nl:\n return messagesNL\n case Locale.en:\n default:\n return messagesEN\n }\n}\n","import React, { FC, ReactNode } from 'react'\n\nimport { IntlProvider } from 'react-intl'\n\nimport { Locale } from '@/types'\nimport { getTranslationsByLocale } from 'intl/utils'\n\ntype Props = { children: ReactNode; locale: Locale }\n\nconst Provider: FC<Props> = ({ children, locale }) => (\n <IntlProvider messages={getTranslationsByLocale(locale)} locale={locale} defaultLocale=\"en\">\n {children}\n </IntlProvider>\n)\n\nexport default Provider\n","/* eslint-disable */\n// Function to hash a string\n// https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript\nexport const hashStringForStorage = (str: string): string =>\n str\n // The input string is split into an array of characters.\n .split('')\n // The reduce function is used to apply a function against an accumulator and each element in the array (from left to right) to reduce it to a single output value.\n .reduce(\n (a, b) =>\n // The accumulator (a) is shifted left by 5 bits (multiplied by 32), then subtracted by itself and added to the ASCII value of the current character (b).\n // The bitwise OR operation with 0 is used to ensure the result is a 32-bit integer.\n // eslint-disable-next-line no-bitwise\n ((a << 5) - a + b.charCodeAt(0)) | 0,\n 0,\n ) // The initial value of the accumulator is 0.\n .toString() // The result is then converted to a string.\n .replace('-', 'A') // If the hash is negative (which is represented by a leading '-'), it's replaced with 'A' to ensure the hash is alphanumeric.\n\nexport const isMoreThanOneHourAgo = (date: number): boolean => {\n const ONE_HOUR_IN_MILLISECONDS = 1000 * 60 * 60\n const currentTime = Date.now()\n const difference = currentTime - date\n\n return difference >= ONE_HOUR_IN_MILLISECONDS\n}\n","import { ConfigPlan, EligibilityPlan } from '@/types'\nimport { hashStringForStorage } from 'utils/utilsForStorage'\n\ntype CreateKeyType = {\n purchaseAmount: number\n plans?: ConfigPlan[]\n customerBillingCountry?: string\n customerShippingCountry?: string\n}\n\ntype StorageType = {\n value: EligibilityPlan[]\n timestamp: number\n}\n\ntype UseSessionStorageType = {\n getCache: (key: string) => StorageType | null\n setCache: (key: string, value: EligibilityPlan[]) => void\n clearCache: () => void\n deleteCache: (key: string) => void\n createKey: (params: CreateKeyType) => string\n}\n\nexport const useSessionStorage: () => UseSessionStorageType = () => {\n const setCache = (key: string, value: EligibilityPlan[]) => {\n // Save data to sessionStorage and create timestamp\n const timestamp = Date.now()\n sessionStorage.setItem(key, JSON.stringify({ value, timestamp }))\n }\n\n const getCache = (key: string): StorageType | null => {\n // Get saved data from sessionStorage\n const stringData = sessionStorage.getItem(key) || ''\n // Parse cached data to use it directly as an array of EligibilityPlan\n return stringData ? JSON.parse(stringData) : null\n }\n\n const deleteCache = (key: string) => {\n // Remove saved data from sessionStorage\n sessionStorage.removeItem(key)\n }\n\n const clearCache = () => {\n // Remove all saved data from sessionStorage\n sessionStorage.clear()\n }\n\n const createKey = (params: CreateKeyType): string => {\n const { purchaseAmount, plans, customerBillingCountry, customerShippingCountry } = params\n\n const stringAmount = purchaseAmount.toString()\n const stringPlans = JSON.stringify(plans)\n return hashStringForStorage(\n `${stringAmount}${stringPlans}${customerBillingCountry}${customerShippingCountry}`,\n )\n }\n\n return {\n setCache,\n getCache,\n clearCache,\n deleteCache,\n createKey,\n }\n}\n","import { EligibilityPlan } from '@/types'\n\nexport async function fetchFromApi(\n data: { [key: string]: unknown },\n headers?: { [key: string]: unknown },\n url = '',\n): Promise<EligibilityPlan[]> {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...headers,\n },\n cache: 'force-cache',\n body: JSON.stringify(data),\n })\n return response.json()\n}\n","import { ConfigPlan, EligibilityPlan, EligibilityPlanToDisplay } from '@/types'\n\nconst isPlanEligible = (plan: EligibilityPlan, configPlan?: ConfigPlan) => {\n if (!plan.eligible) {\n return false\n }\n return configPlan\n ? plan.purchase_amount >= configPlan?.minAmount && plan.purchase_amount <= configPlan?.maxAmount\n : false\n}\n\nconst getPaymentPlanBoundaries = (plan: EligibilityPlan, configPlan?: ConfigPlan) => {\n // When the plan is not eligible, the purchase amount constraints is given from the merchant config\n const purchaseAmountConstraints = plan.constraints?.purchase_amount\n if (purchaseAmountConstraints && configPlan) {\n return {\n minAmount: Math.max(configPlan.minAmount, purchaseAmountConstraints?.minimum),\n maxAmount: Math.min(configPlan.maxAmount, purchaseAmountConstraints?.maximum),\n }\n }\n return configPlan ?? {}\n}\n\nconst filterEligibility = (\n eligibilities: EligibilityPlan[],\n configPlans?: ConfigPlan[],\n): EligibilityPlanToDisplay[] => {\n // Remove P1X if no configuration is provided\n if (!configPlans) {\n return eligibilities.filter(\n (plan) =>\n !(plan.installments_count === 1 && plan.deferred_days === 0 && plan.deferred_months === 0),\n )\n }\n\n // Else check if the plan is eligible regarding the related configPlan\n return eligibilities.map((plan) => {\n const eligibilityDeferredDays =\n (plan.deferred_months ? plan.deferred_months : 0) * 30 +\n (plan.deferred_days ? plan.deferred_days : 0)\n\n // find the related configPlan\n const relatedConfigPlan = configPlans.find((configPlan) => {\n const configPlanDeferredDays =\n (configPlan.deferredMonths ? configPlan.deferredMonths : 0) * 30 +\n (configPlan.deferredDays ? configPlan.deferredDays : 0)\n return (\n plan.installments_count === configPlan.installmentsCount &&\n eligibilityDeferredDays === configPlanDeferredDays\n )\n })\n\n return {\n ...plan,\n eligible: isPlanEligible(plan, relatedConfigPlan),\n ...getPaymentPlanBoundaries(plan, relatedConfigPlan),\n }\n })\n}\n\nexport default filterEligibility\n","import { useEffect, useState } from 'react'\n\nimport { ApiConfig, ConfigPlan, EligibilityPlan, statusResponse } from '@/types'\nimport { useSessionStorage } from 'hooks/useSessionStorage'\nimport { fetchFromApi } from 'utils/fetch'\nimport filterEligibility from 'utils/filterEligibility'\nimport { isMoreThanOneHourAgo } from 'utils/utilsForStorage'\n\nconst useFetchEligibility = (\n purchaseAmount: number,\n { domain, merchantId }: ApiConfig,\n plans?: ConfigPlan[],\n customerBillingCountry?: string,\n customerShippingCountry?: string,\n): [EligibilityPlan[], statusResponse] => {\n const [eligibility, setEligibility] = useState([] as EligibilityPlan[])\n const [status, setStatus] = useState(statusResponse.PENDING)\n\n // caching\n const { getCache, setCache, createKey } = useSessionStorage()\n const key = createKey({\n purchaseAmount,\n plans,\n customerBillingCountry,\n customerShippingCountry,\n })\n const currentCache = getCache(key)?.value\n const lastCacheTimestamp = getCache(key)?.timestamp\n // If the stored date is more than an hour ago, we should invalidate the cache\n const shouldInvalidate = lastCacheTimestamp && isMoreThanOneHourAgo(lastCacheTimestamp)\n\n const configInstallments = plans?.map((plan) => ({\n installments_count: plan.installmentsCount,\n deferred_days: plan?.deferredDays,\n deferred_months: plan?.deferredMonths,\n }))\n useEffect(() => {\n if (status === statusResponse.PENDING) {\n let billingAddress = null\n if (customerBillingCountry) {\n billingAddress = {\n country: customerBillingCountry,\n }\n }\n\n let shippingAddress = null\n if (customerShippingCountry) {\n shippingAddress = {\n country: customerShippingCountry,\n }\n }\n if (currentCache && !shouldInvalidate) {\n setEligibility(currentCache)\n setStatus(statusResponse.SUCCESS)\n }\n\n if (!currentCache || shouldInvalidate) {\n fetchFromApi(\n {\n purchase_amount: purchaseAmount,\n queries: configInstallments,\n billing_address: billingAddress,\n shipping_address: shippingAddress,\n },\n {\n Authorization: `Alma-Merchant-Auth ${merchantId}`,\n 'X-Alma-Agent': `Alma Widget/${process.env.VERSION}`,\n },\n `${domain}/v2/payments/eligibility`,\n )\n .then((res) => {\n setCache(key, res)\n setEligibility(res)\n setStatus(statusResponse.SUCCESS)\n })\n .catch(() => {\n setStatus(statusResponse.FAILED)\n })\n }\n }\n }, [\n status,\n purchaseAmount,\n key,\n customerBillingCountry,\n customerShippingCountry,\n currentCache,\n shouldInvalidate,\n configInstallments,\n merchantId,\n domain,\n setCache,\n ])\n\n return [filterEligibility(eligibility, plans), status]\n}\nexport default useFetchEligibility\n","/*\nCopyright (c) 2014, Yahoo! Inc. All rights reserved.\nCopyrights licensed under the New BSD License.\nSee the accompanying LICENSE file for terms.\n*/\n\n'use strict';\n\nexports.match = matchQuery;\nexports.parse = parseQuery;\n\n// -----------------------------------------------------------------------------\n\nvar RE_MEDIA_QUERY = /(?:(only|not)?\\s*([^\\s\\(\\)]+)(?:\\s*and)?\\s*)?(.+)?/i,\n RE_MQ_EXPRESSION = /\\(\\s*([^\\s\\:\\)]+)\\s*(?:\\:\\s*([^\\s\\)]+))?\\s*\\)/,\n RE_MQ_FEATURE = /^(?:(min|max)-)?(.+)/,\n RE_LENGTH_UNIT = /(em|rem|px|cm|mm|in|pt|pc)?$/,\n RE_RESOLUTION_UNIT = /(dpi|dpcm|dppx)?$/;\n\nfunction matchQuery(mediaQuery, values) {\n return parseQuery(mediaQuery).some(function (query) {\n var inverse = query.inverse;\n\n // Either the parsed or specified `type` is \"all\", or the types must be\n // equal for a match.\n var typeMatch = query.type === 'all' || values.type === query.type;\n\n // Quit early when `type` doesn't match, but take \"not\" into account.\n if ((typeMatch && inverse) || !(typeMatch || inverse)) {\n return false;\n }\n\n var expressionsMatch = query.expressions.every(function (expression) {\n var feature = expression.feature,\n modifier = expression.modifier,\n expValue = expression.value,\n value = values[feature];\n\n // Missing or falsy values don't match.\n if (!value) { return false; }\n\n switch (feature) {\n case 'orientation':\n case 'scan':\n return value.toLowerCase() === expValue.toLowerCase();\n\n case 'width':\n case 'height':\n case 'device-width':\n case 'device-height':\n expValue = toPx(expValue);\n value = toPx(value);\n break;\n\n case 'resolution':\n expValue = toDpi(expValue);\n value = toDpi(value);\n break;\n\n case 'aspect-ratio':\n case 'device-aspect-ratio':\n case /* Deprecated */ 'device-pixel-ratio':\n expValue = toDecimal(expValue);\n value = toDecimal(value);\n break;\n\n case 'grid':\n case 'color':\n case 'color-index':\n case 'monochrome':\n expValue = parseInt(expValue, 10) || 1;\n value = parseInt(value, 10) || 0;\n break;\n }\n\n switch (modifier) {\n case 'min': return value >= expValue;\n case 'max': return value <= expValue;\n default : return value === expValue;\n }\n });\n\n return (expressionsMatch && !inverse) || (!expressionsMatch && inverse);\n });\n}\n\nfunction parseQuery(mediaQuery) {\n return mediaQuery.split(',').map(function (query) {\n query = query.trim();\n\n var captures = query.match(RE_MEDIA_QUERY),\n modifier = captures[1],\n type = captures[2],\n expressions = captures[3] || '',\n parsed = {};\n\n parsed.inverse = !!modifier && modifier.toLowerCase() === 'not';\n parsed.type = type ? type.toLowerCase() : 'all';\n\n // Split expressions into a list.\n expressions = expressions.match(/\\([^\\)]+\\)/g) || [];\n\n parsed.expressions = expressions.map(function (expression) {\n var captures = expression.match(RE_MQ_EXPRESSION),\n feature = captures[1].toLowerCase().match(RE_MQ_FEATURE);\n\n return {\n modifier: feature[1],\n feature : feature[2],\n value : captures[2]\n };\n });\n\n return parsed;\n });\n}\n\n// -- Utilities ----------------------------------------------------------------\n\nfunction toDecimal(ratio) {\n var decimal = Number(ratio),\n numbers;\n\n if (!decimal) {\n numbers = ratio.match(/^(\\d+)\\s*\\/\\s*(\\d+)$/);\n decimal = numbers[1] / numbers[2];\n }\n\n return decimal;\n}\n\nfunction toDpi(resolution) {\n var value = parseFloat(resolution),\n units = String(resolution).match(RE_RESOLUTION_UNIT)[1];\n\n switch (units) {\n case 'dpcm': return value / 2.54;\n case 'dppx': return value * 96;\n default : return value;\n }\n}\n\nfunction toPx(length) {\n var value = parseFloat(length),\n units = String(length).match(RE_LENGTH_UNIT)[1];\n\n switch (units) {\n case 'em' : return value * 16;\n case 'rem': return value * 16;\n case 'cm' : return value * 96 / 2.54;\n case 'mm' : return value * 96 / 2.54 / 10;\n case 'in' : return value * 96;\n case 'pt' : return value * 72;\n case 'pc' : return value * 72 / 12;\n default : return value;\n }\n}\n","'use strict';\n\nvar staticMatch = require('css-mediaquery').match;\nvar dynamicMatch = typeof window !== 'undefined' ? window.matchMedia : null;\n\n// our fake MediaQueryList\nfunction Mql(query, values, forceStatic){\n var self = this;\n var mql;\n\n // matchMedia will return null in FF when it's called in a hidden iframe\n // ref: https://stackoverflow.com/a/12330568\n if(dynamicMatch && !forceStatic) mql = dynamicMatch.call(window, query);\n\n if (mql) {\n this.matches = mql.matches;\n this.media = mql.media;\n // TODO: is there a time it makes sense to remove this listener?\n mql.addListener(update);\n } else {\n this.matches = staticMatch(query, values);\n this.media = query;\n }\n\n this.addListener = addListener;\n this.removeListener = removeListener;\n this.dispose = dispose;\n\n function addListener(listener){\n if(mql){\n mql.addListener(listener);\n }\n }\n\n function removeListener(listener){\n if(mql){\n mql.removeListener(listener);\n }\n }\n\n // update ourselves!\n function update(evt){\n self.matches = evt.matches;\n self.media = evt.media;\n }\n\n function dispose(){\n if(mql){\n mql.removeListener(update);\n }\n }\n}\n\nfunction matchMedia(query, values, forceStatic){\n return new Mql(query, values, forceStatic);\n}\n\nmodule.exports = matchMedia;\n","/* eslint-disable no-var, prefer-template */\nvar uppercasePattern = /[A-Z]/g\nvar msPattern = /^ms-/\nvar cache = {}\n\nfunction toHyphenLower(match) {\n return '-' + match.toLowerCase()\n}\n\nfunction hyphenateStyleName(name) {\n if (cache.hasOwnProperty(name)) {\n return cache[name]\n }\n\n var hName = name.replace(uppercasePattern, toHyphenLower)\n return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)\n}\n\nexport default hyphenateStyleName\n","function shallowEqualArrays(arrA, arrB) {\n if (arrA === arrB) {\n return true;\n }\n if (!arrA || !arrB) {\n return false;\n }\n const len = arrA.length;\n if (arrB.length !== len) {\n return false;\n }\n for (let i = 0; i < len; i++) {\n if (arrA[i] !== arrB[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction shallowEqualObjects(objA, objB) {\n if (objA === objB) {\n return true;\n }\n if (!objA || !objB) {\n return false;\n }\n const aKeys = Object.keys(objA);\n const bKeys = Object.keys(objB);\n const len = aKeys.length;\n if (bKeys.length !== len) {\n return false;\n }\n for (let i = 0; i < len; i++) {\n const key = aKeys[i];\n if (objA[key] !== objB[key] || !Object.prototype.hasOwnProperty.call(objB, key)) {\n return false;\n }\n }\n return true;\n}\n\nfunction shallowEqual(a, b) {\n const aIsArr = Array.isArray(a);\n const bIsArr = Array.isArray(b);\n if (aIsArr !== bIsArr) {\n return false;\n }\n if (aIsArr && bIsArr) {\n return shallowEqualArrays(a, b);\n }\n return shallowEqualObjects(a, b);\n}\n\nexport { shallowEqual, shallowEqualArrays, shallowEqualObjects };\n//# sourceMappingURL=index.modern.mjs.map\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import { createContext, useRef, useEffect, useContext, useState } from 'react';\nimport matchMedia from 'matchmediaquery';\nimport hyphenate from 'hyphenate-style-name';\nimport { shallowEqualObjects } from 'shallow-equal';\nimport PropTypes from 'prop-types';\n\nconst stringOrNumber = PropTypes.oneOfType([PropTypes.string, PropTypes.number]);\n// media types\nconst types = {\n all: PropTypes.bool,\n grid: PropTypes.bool,\n aural: PropTypes.bool,\n braille: PropTypes.bool,\n handheld: PropTypes.bool,\n print: PropTypes.bool,\n projection: PropTypes.bool,\n screen: PropTypes.bool,\n tty: PropTypes.bool,\n tv: PropTypes.bool,\n embossed: PropTypes.bool\n};\n// properties that match media queries\nconst matchers = {\n orientation: PropTypes.oneOf(['portrait', 'landscape']),\n scan: PropTypes.oneOf(['progressive', 'interlace']),\n aspectRatio: PropTypes.string,\n deviceAspectRatio: PropTypes.string,\n height: stringOrNumber,\n deviceHeight: stringOrNumber,\n width: stringOrNumber,\n deviceWidth: stringOrNumber,\n color: PropTypes.bool,\n colorIndex: PropTypes.bool,\n monochrome: PropTypes.bool,\n resolution: stringOrNumber,\n type: Object.keys(types)\n};\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst { type, ...featureMatchers } = matchers;\n// media features\nconst features = {\n minAspectRatio: PropTypes.string,\n maxAspectRatio: PropTypes.string,\n minDeviceAspectRatio: PropTypes.string,\n maxDeviceAspectRatio: PropTypes.string,\n minHeight: stringOrNumber,\n maxHeight: stringOrNumber,\n minDeviceHeight: stringOrNumber,\n maxDeviceHeight: stringOrNumber,\n minWidth: stringOrNumber,\n maxWidth: stringOrNumber,\n minDeviceWidth: stringOrNumber,\n maxDeviceWidth: stringOrNumber,\n minColor: PropTypes.number,\n maxColor: PropTypes.number,\n minColorIndex: PropTypes.number,\n maxColorIndex: PropTypes.number,\n minMonochrome: PropTypes.number,\n maxMonochrome: PropTypes.number,\n minResolution: stringOrNumber,\n maxResolution: stringOrNumber,\n ...featureMatchers\n};\nconst all = { ...types, ...features };\nvar mq = {\n all: all,\n types: types,\n matchers: matchers,\n features: features\n};\n\nconst negate = (cond) => `not ${cond}`;\nconst keyVal = (k, v) => {\n const realKey = hyphenate(k);\n // px shorthand\n if (typeof v === 'number') {\n v = `${v}px`;\n }\n if (v === true) {\n return realKey;\n }\n if (v === false) {\n return negate(realKey);\n }\n return `(${realKey}: ${v})`;\n};\nconst join = (conds) => conds.join(' and ');\nconst toQuery = (obj) => {\n const rules = [];\n Object.keys(mq.all).forEach((k) => {\n const v = obj[k];\n if (v != null) {\n rules.push(keyVal(k, v));\n }\n });\n return join(rules);\n};\n\nconst Context = createContext(undefined);\n\nconst makeQuery = (settings) => settings.query || toQuery(settings);\nconst hyphenateKeys = (obj) => {\n if (!obj)\n return undefined;\n const keys = Object.keys(obj);\n return keys.reduce((result, key) => {\n result[hyphenate(key)] = obj[key];\n return result;\n }, {});\n};\nconst useIsUpdate = () => {\n const ref = useRef(false);\n useEffect(() => {\n ref.current = true;\n }, []);\n return ref.current;\n};\nconst useDevice = (deviceFromProps) => {\n const deviceFromContext = useContext(Context);\n const getDevice = () => hyphenateKeys(deviceFromProps) || hyphenateKeys(deviceFromContext);\n const [device, setDevice] = useState(getDevice);\n useEffect(() => {\n const newDevice = getDevice();\n if (!shallowEqualObjects(device, newDevice)) {\n setDevice(newDevice);\n }\n }, [deviceFromProps, deviceFromContext]);\n return device;\n};\nconst useQuery = (settings) => {\n const getQuery = () => makeQuery(settings);\n const [query, setQuery] = useState(getQuery);\n useEffect(() => {\n const newQuery = getQuery();\n if (query !== newQuery) {\n setQuery(newQuery);\n }\n }, [settings]);\n return query;\n};\nconst useMatchMedia = (query, device) => {\n const getMatchMedia = () => matchMedia(query, device || {}, !!device);\n const [mq, setMq] = useState(getMatchMedia);\n const isUpdate = useIsUpdate();\n useEffect(() => {\n if (isUpdate) {\n // skip on mounting, it has already been set\n const newMq = getMatchMedia();\n setMq(newMq);\n return () => {\n if (newMq) {\n newMq.dispose();\n }\n };\n }\n }, [query, device]);\n return mq;\n};\nconst useMatches = (mediaQuery) => {\n const [matches, setMatches] = useState(mediaQuery.matches);\n useEffect(() => {\n const updateMatches = (ev) => {\n setMatches(ev.matches);\n };\n mediaQuery.addListener(updateMatches);\n setMatches(mediaQuery.matches);\n return () => {\n mediaQuery.removeListener(updateMatches);\n };\n }, [mediaQuery]);\n return matches;\n};\nconst useMediaQuery = (settings, device, onChange) => {\n const deviceSettings = useDevice(device);\n const query = useQuery(settings);\n if (!query)\n throw new Error('Invalid or missing MediaQuery!');\n const mq = useMatchMedia(query, deviceSettings);\n const matches = useMatches(mq);\n const isUpdate = useIsUpdate();\n useEffect(() => {\n if (isUpdate && onChange) {\n onChange(matches);\n }\n }, [matches]);\n useEffect(() => () => {\n if (mq) {\n mq.dispose();\n }\n }, []);\n return matches;\n};\n\n// ReactNode and ReactElement typings are a little funky for functional components, so the ReactElement cast is needed on the return\nconst MediaQuery = ({ children, device, onChange, ...settings }) => {\n const matches = useMediaQuery(settings, device, onChange);\n if (typeof children === 'function') {\n return children(matches);\n }\n return matches ? children : null;\n};\n\nexport { Context, MediaQuery as default, toQuery, useMediaQuery };\n//# sourceMappingURL=index.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/**\n * Prefix classes to avoid name collisions.\n */\nconst prefix = 'alma-eligibility-modal'\n\n/**\n * Class names for the **eligibility modale** widget.\n * Those classes are intended to be used by the **merchant developer**.\n */\nconst STATIC_CUSTOMISATION_CLASSES = {\n desktopModal: `${prefix}-desktop-modal`,\n mobileModal: `${prefix}-mobile-modal`,\n leftSide: `${prefix}-left-side`,\n bullet: `${prefix}-bullet`,\n rightSide: `${prefix}-right-side`,\n title: `${prefix}-title`,\n info: `${prefix}-info`,\n infoMessage: `${prefix}-info-message`,\n eligibilityOptions: `${prefix}-eligibility-options`,\n activeOption: `${prefix}-active-option`,\n closeButton: `${prefix}-close-button`,\n scheduleDetails: `${prefix}-schedule-details`,\n scheduleTotal: `${prefix}-schedule-total`,\n scheduleCredit: `${prefix}-schedule-credit`,\n cardContainer: `${prefix}-card-logos`,\n summary: `${prefix}-summary`,\n}\n\nexport default STATIC_CUSTOMISATION_CLASSES\n","import React, { FunctionComponent } from 'react'\n\nimport cx from 'classnames'\nimport { FormattedMessage, FormattedNumber, useIntl } from 'react-intl'\n\nimport { EligibilityPlan } from '@/types'\nimport { priceFromCents } from '@/utils'\nimport s from 'components/Installments/TotalBlock/TotalBlock.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nconst TotalBlock: FunctionComponent<{ currentPlan: EligibilityPlan }> = ({ currentPlan }) => {\n const intl = useIntl()\n const total = priceFromCents(currentPlan.purchase_amount + currentPlan.customer_total_cost_amount)\n const creditCost = priceFromCents(currentPlan.customer_total_cost_amount)\n const TAEG = (currentPlan?.annual_interest_rate && currentPlan.annual_interest_rate / 10000) || 0\n const customerFees = priceFromCents(currentPlan.customer_total_cost_amount)\n const isCredit = currentPlan.installments_count > 4\n const firstInstallmentAmount = priceFromCents(currentPlan.payment_plan?.[0]?.total_amount ?? 0)\n // For totalWithoutFirstInstallment, we need to get the total price and add the credit cost, before removing the first installment, to get the rest of the amount to pay.\n const totalWithoutFirstInstallment = priceFromCents(\n currentPlan.purchase_amount +\n currentPlan.customer_total_cost_amount -\n (currentPlan.payment_plan?.[0]?.total_amount ?? 0),\n )\n\n return (\n <>\n {isCredit && (\n <div className={s.creditInfo}>\n <span className={s.creditInfoTitle}>\n <FormattedMessage\n id=\"credit-features.information.title\"\n defaultMessage=\"Un crédit vous engage et doit être remboursé.\"\n />\n </span>\n <br />\n <FormattedMessage\n id=\"credit-features.information\"\n defaultMessage=\"Vérifiez vos capacités de remboursement avant de vous engager.\"\n />\n </div>\n )}\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.summary)}\n data-testid=\"modal-summary\"\n >\n <div className={cx(s.total, STATIC_CUSTOMISATION_CLASSES.scheduleTotal)}>\n <FormattedMessage tagName=\"div\" id=\"installments.total-amount\" defaultMessage=\"Total\" />\n <FormattedNumber value={total || 0} style=\"currency\" currency=\"EUR\" />\n </div>\n <div className={cx(s.fees, STATIC_CUSTOMISATION_CLASSES.scheduleCredit)}>\n {isCredit ? (\n <>\n <FormattedMessage\n id=\"credit-features.total-credit-cost\"\n defaultMessage=\"Dont coût du crédit\"\n />\n <span className={s.creditCost}>\n <FormattedMessage\n id=\"credit-features.credit-cost-display\"\n defaultMessage=\"{creditCost} (TAEG {taegPercentage})\"\n values={{\n creditCost: intl.formatNumber(creditCost, {\n style: 'currency',\n currency: 'EUR',\n }),\n taegPercentage: intl.formatNumber(TAEG, {\n style: 'percent',\n maximumFractionDigits: 2,\n }),\n }}\n />\n </span>\n </>\n ) : (\n <>\n <FormattedMessage\n id=\"installments.total-fees\"\n defaultMessage=\"Dont frais (TTC)\"\n tagName=\"div\"\n />\n <div>\n <FormattedNumber value={customerFees} style=\"currency\" currency=\"EUR\" />\n </div>\n </>\n )}\n </div>\n {isCredit && (\n <div className={s.creditInfoLegalText}>\n <FormattedMessage\n id=\"credit-features.legal-text\"\n defaultMessage=\"Crédit d'un montant de {totalWithoutFirstInstallment} au taux débiteur fixe de {taegPercentage} sur une durée de {installmeentsCountWithoutFirst} mois. Permettant, en complément d'un acompte de {firstInstallmentAmount}, de financer un achat d'un montant de {productPriceWithoutCreditCost}. Sous réserve d'étude et d'acceptation par Alma. Délai légal de rétractation de 14 jours. Simulation présentée par Alma, immatriculée au RCS Nanterre sous le numéro 839 100 575, établissement de paiement et société de financement agréée par l’ACPR sous le n° 17408 (numéro CIB / Code banque).\"\n values={{\n totalWithoutFirstInstallment: intl.formatNumber(totalWithoutFirstInstallment, {\n style: 'currency',\n currency: 'EUR',\n }),\n taegPercentage: intl.formatNumber(TAEG, {\n style: 'percent',\n maximumFractionDigits: 2,\n }),\n installmeentsCountWithoutFirst: currentPlan.installments_count - 1,\n firstInstallmentAmount: intl.formatNumber(firstInstallmentAmount, {\n style: 'currency',\n currency: 'EUR',\n }),\n productPriceWithoutCreditCost: intl.formatNumber(total - creditCost, {\n style: 'currency',\n currency: 'EUR',\n }),\n }}\n />\n </div>\n )}\n </div>\n </>\n )\n}\n\nexport default TotalBlock\n","import React, { FunctionComponent } from 'react'\n\nimport cx from 'classnames'\n\nimport s from 'components/LoadingIndicator/LoadingIndicator.module.css'\n\nexport const LoadingIndicator: FunctionComponent<{ className?: string }> = ({ className }) => (\n <div className={cx(s.loadingIndicator, className)} data-testid=\"loader\">\n <svg\n width=\"120\"\n height=\"134\"\n viewBox=\"0 0 120 134\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M83.8164 41.0325C79.1708 22.8241 69.3458 17 59.9939 17C50.642 17 40.8171 22.8241 36.1715 41.0325L16 117H35.8804C39.119 104.311 49.1016 97.2436 59.9939 97.2436C70.8863 97.2436 80.8689 104.324 84.1075 117H104L83.8164 41.0325ZM59.9939 79.5428C53.6623 79.5428 47.925 82.0552 43.6918 86.1283L55.0936 41.9207C56.1853 37.6953 57.7985 36.3503 60.0061 36.3503C62.2136 36.3503 63.8269 37.6953 64.9185 41.9207L76.3082 86.1283C72.075 82.0552 66.3256 79.5428 59.9939 79.5428Z\"\n fill=\"#FA5022\"\n />\n </svg>\n </div>\n)\n","(function(root) {\n var isOn = false;\n var scrollbarSize;\n var scrollTop;\n\n function getScrollbarSize() {\n if (typeof scrollbarSize !== 'undefined') return scrollbarSize;\n\n var doc = document.documentElement;\n var dummyScroller = document.createElement('div');\n dummyScroller.setAttribute('style', 'width:99px;height:99px;' + 'position:absolute;top:-9999px;overflow:scroll;');\n doc.appendChild(dummyScroller);\n scrollbarSize = dummyScroller.offsetWidth - dummyScroller.clientWidth;\n doc.removeChild(dummyScroller);\n return scrollbarSize;\n }\n\n function hasScrollbar() {\n return document.documentElement.scrollHeight > window.innerHeight;\n }\n\n function on(options) {\n if (typeof document === 'undefined' || isOn) return;\n var doc = document.documentElement;\n scrollTop = window.pageYOffset;\n if (hasScrollbar()) {\n doc.style.width = 'calc(100% - '+ getScrollbarSize() +'px)';\n } else {\n doc.style.width = '100%';\n }\n doc.style.position = 'fixed';\n doc.style.top = -scrollTop + 'px';\n doc.style.overflow = 'hidden';\n isOn = true;\n }\n\n function off() {\n if (typeof document === 'undefined' || !isOn) return;\n var doc = document.documentElement;\n doc.style.width = '';\n doc.style.position = '';\n doc.style.top = '';\n doc.style.overflow = '';\n window.scroll(0, scrollTop);\n isOn = false;\n }\n\n function toggle() {\n if (isOn) {\n off();\n return;\n }\n on();\n }\n\n var noScroll = {\n on: on,\n off: off,\n toggle: toggle,\n };\n\n if (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n module.exports = noScroll;\n } else {\n root.noScroll = noScroll;\n }\n})(this);\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar DISPLAY_NONE = \"none\";\nvar DISPLAY_CONTENTS = \"contents\";\n\nvar tabbableNode = /input|select|textarea|button|object|iframe/;\n\nfunction isNotOverflowing(element, style) {\n return style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0;\n}\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n try {\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n var displayValue = style.getPropertyValue(\"display\");\n return zeroSize ? displayValue !== DISPLAY_CONTENTS && isNotOverflowing(element, style) : displayValue === DISPLAY_NONE;\n } catch (exception) {\n // eslint-disable-next-line no-console\n console.warn(\"Failed to inspect element style\");\n return false;\n }\n}\n\nfunction visible(element) {\n var parentElement = element;\n var rootNode = element.getRootNode && element.getRootNode();\n while (parentElement) {\n if (parentElement === document.body) break;\n\n // if we are not hidden yet, skip to checking outside the Web Component\n if (rootNode && parentElement === rootNode) parentElement = rootNode.host.parentNode;\n\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n var descendants = [].slice.call(element.querySelectorAll(\"*\"), 0).reduce(function (finished, el) {\n return finished.concat(!el.shadowRoot ? [el] : findTabbableDescendants(el.shadowRoot));\n }, []);\n return descendants.filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n focusLaterElements = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n console.log(\"focusManager ----------\");\n focusLaterElements.forEach(function (f) {\n var check = f || {};\n console.log(check.nodeName, check.className, check.id);\n });\n console.log(\"end focusManager ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getActiveElement() {\n var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n\n return el.activeElement.shadowRoot ? getActiveElement(el.activeElement.shadowRoot) : el.activeElement;\n}\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n var activeElement = getActiveElement();\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\n\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n if (globalElement) {\n if (globalElement.removeAttribute) {\n globalElement.removeAttribute(\"aria-hidden\");\n } else if (globalElement.length != null) {\n globalElement.forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n } else {\n document.querySelectorAll(globalElement).forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n }\n }\n globalElement = null;\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var check = globalElement || {};\n console.log(\"ariaAppHider ----------\");\n console.log(check.nodeName, check.className, check.id);\n console.log(\"end ariaAppHider ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n var el = appElement || globalElement;\n if (el) {\n return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n } else {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return [];\n }\n}\n\nfunction hide(appElement) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n\n el.setAttribute(\"aria-hidden\", \"true\");\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\n\nfunction show(appElement) {\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var el = _step2.value;\n\n el.removeAttribute(\"aria-hidden\");\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction removeClass(at, cls) {\n at.classList.remove(cls);\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n var htmlElement = document.getElementsByTagName(\"html\")[0];\n for (var cls in htmlClassList) {\n removeClass(htmlElement, htmlClassList[cls]);\n }\n\n var body = document.body;\n for (var _cls in docBodyClassList) {\n removeClass(body, docBodyClassList[_cls]);\n }\n\n htmlClassList = {};\n docBodyClassList = {};\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \"<html /> (\" + classes + \"):\\n \";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n \";\n }\n\n classes = document.body.className;\n\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n \";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n \";\n }\n\n buffer += \"\\n\";\n\n console.log(buffer);\n }\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.log = log;\nexports.resetState = resetState;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction log() {\n console.log(\"portalOpenInstances ----------\");\n console.log(portalOpenInstances.openInstances.length);\n portalOpenInstances.openInstances.forEach(function (p) {\n return console.log(p);\n });\n console.log(\"end portalOpenInstances ----------\");\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n var _arr = [before, after];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var item = _arr[_i];\n if (!item) continue;\n item.parentNode && item.parentNode.removeChild(item);\n }\n before = after = null;\n instances = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n console.log(\"bodyTrap ----------\");\n console.log(instances.length);\n var _arr2 = [before, after];\n for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n var item = _arr2[_i2];\n var check = item || {};\n console.log(check.nodeName, check.className, check.id);\n }\n console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before && !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\n/**\n * We need to support the deprecated `KeyboardEvent.keyCode` in addition to\n * `KeyboardEvent.code` for apps that still support IE11. Can be removed when\n * `react-modal` only supports React >18 (which dropped IE support).\n */\nvar isTabKey = function isTabKey(event) {\n return event.code === \"Tab\" || event.keyCode === 9;\n};\nvar isEscKey = function isEscKey(event) {\n return event.code === \"Escape\" || event.keyCode === 27;\n};\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName,\n parentSelector = _this$props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Remove classes.\n bodyOpenClassName && classList.remove(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.openAnimationFrame = requestAnimationFrame(function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (isTabKey(event)) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && isEscKey(event)) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n cancelAnimationFrame(this.openAnimationFrame);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName,\n parentSelector = _props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Add classes.\n bodyOpenClassName && classList.add(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n parentSelector: _propTypes2.default.func,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar createHTMLElement = function createHTMLElement(name) {\n return document.createElement(name);\n};\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nif (process.env.NODE_ENV !== \"production\") {\n Modal.setCreateHTMLElement = function (fn) {\n return createHTMLElement = fn;\n };\n}\n\nexports.default = Modal;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];","import React from 'react'\n\nfunction CrossIcon({\n color = '#fff',\n className,\n}: {\n color?: string\n className?: string\n}): JSX.Element {\n return (\n <svg\n className={className}\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12.5964 11.404L9.41445 8.22205L12.5964 5.04007C12.7732 4.86329 12.7732 4.50974 12.5964 4.33296L11.8893 3.62585C11.6904 3.42698 11.359 3.44908 11.1822 3.62585L8.00023 6.80783L4.81825 3.62585C4.61938 3.42698 4.28792 3.44908 4.11114 3.62585L3.40404 4.33296C3.20516 4.53183 3.20516 4.84119 3.40404 5.04007L6.58602 8.22205L3.40404 11.404C3.20516 11.6029 3.20517 11.9123 3.40404 12.1111L4.11115 12.8182C4.28792 12.995 4.61938 13.0171 4.81825 12.8182L8.00023 9.63626L11.1822 12.8182C11.359 12.995 11.6904 13.0171 11.8893 12.8182L12.5964 12.1111C12.7732 11.9344 12.7732 11.5808 12.5964 11.404Z\"\n fill={color}\n />\n </svg>\n )\n}\n\nexport default CrossIcon\n","import React, { FunctionComponent, ReactNode } from 'react'\n\nimport cx from 'classnames'\nimport noScroll from 'no-scroll'\nimport Modal from 'react-modal'\n\nimport CrossIcon from 'assets/Cross'\nimport s from 'components/Modal/Modal.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nexport type Props = Modal.Props & {\n children: ReactNode\n isOpen: boolean\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n className?: string\n contentClassName?: string\n scrollable?: boolean\n}\n\nconst ControlledModal: FunctionComponent<Props> = ({\n children,\n isOpen,\n onClose,\n className,\n contentClassName,\n scrollable = false,\n ...props\n}) => {\n /* istanbul ignore next */\n if (process.env.NODE_ENV !== 'test') Modal.setAppElement('body')\n\n return (\n <Modal\n className={cx(s.modal, className)}\n overlayClassName={s.overlay}\n onAfterOpen={() => {\n noScroll.on()\n }}\n onAfterClose={() => {\n noScroll.off()\n }}\n onRequestClose={onClose}\n isOpen={isOpen}\n shouldCloseOnOverlayClick\n shouldCloseOnEsc\n {...props}\n >\n <div className={s.header}>\n <button\n type=\"button\"\n onClick={onClose}\n className={cx(s.closeButton, STATIC_CUSTOMISATION_CLASSES.closeButton)}\n data-testid=\"modal-close-button\"\n >\n <CrossIcon />\n </button>\n </div>\n <div className={cx(s.content, contentClassName, { [s.contentScrollable]: scrollable })}>\n {children}\n </div>\n </Modal>\n )\n}\n\nexport default ControlledModal\n","/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n\n/**\n * @constant\n * @name constructFromSymbol\n * @summary Symbol enabling Date extensions to inherit properties from the reference date.\n *\n * The symbol is used to enable the `constructFrom` function to construct a date\n * using a reference date and a value. It allows to transfer extra properties\n * from the reference date to the new date. It's useful for extensions like\n * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as\n * a constructor argument.\n */\nexport const constructFromSymbol = Symbol.for(\"constructDateFrom\");\n","import { constructFromSymbol } from \"./constants.js\";\n\n/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * Starting from v3.7.0, it allows to construct a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from \"./constructFrom/date-fns\";\n *\n * // A function that clones a date preserving the original type\n * function cloneDate<DateType extends Date>(date: DateType): DateType {\n * return constructFrom(\n * date, // Use constructor from the given date\n * date.getTime() // Use the date value to create a new date\n * );\n * }\n */\nexport function constructFrom(date, value) {\n if (typeof date === \"function\") return date(value);\n\n if (date && typeof date === \"object\" && constructFromSymbol in date)\n return date[constructFromSymbol](value);\n\n if (date instanceof Date) return new date.constructor(value);\n\n return new Date(value);\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * Starting from v3.7.0, it clones a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument, context) {\n // [TODO] Get rid of `toDate` or `constructFrom`?\n return constructFrom(context || argument, argument);\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","import { constructFrom } from \"../constructFrom.js\";\n\nexport function normalizeDates(context, ...dates) {\n const normalize = constructFrom.bind(\n null,\n context || dates.find((date) => typeof date === \"object\"),\n );\n return dates.map(normalize);\n}\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfDay} function options.\n */\n\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - The options\n *\n * @returns The start of a day\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\nexport function startOfDay(date, options) {\n const _date = toDate(date, options?.in);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfDay;\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name constructNow\n * @category Generic Helpers\n * @summary Constructs a new current date using the passed value constructor.\n * @pure false\n *\n * @description\n * The function constructs a new current date using the constructor from\n * the reference date. It helps to build generic functions that accept date\n * extensions and use the current date.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * @param date - The reference date to take constructor from\n *\n * @returns Current date initialized using the given date constructor\n *\n * @example\n * import { constructNow, isSameDay } from 'date-fns'\n *\n * function isToday<DateType extends Date>(\n * date: DateArg<DateType>,\n * ): boolean {\n * // If we were to use `new Date()` directly, the function would behave\n * // differently in different timezones and return false for the same date.\n * return isSameDay(date, constructNow(date));\n * }\n */\nexport function constructNow(date) {\n return constructFrom(date, Date.now());\n}\n\n// Fallback for modularized imports:\nexport default constructNow;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { startOfDay } from \"./startOfDay.js\";\n\n/**\n * The {@link isSameDay} function options.\n */\n\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day (and year and month)?\n *\n * @description\n * Are the given dates in the same day (and year and month)?\n *\n * @param laterDate - The first date to check\n * @param earlierDate - The second date to check\n * @param options - An object with options\n *\n * @returns The dates are in the same day (and year and month)\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n *\n * @example\n * // Are 4 September and 4 October in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2014, 9, 4))\n * //=> false\n *\n * @example\n * // Are 4 September, 2014 and 4 September, 2015 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2015, 8, 4))\n * //=> false\n */\nexport function isSameDay(laterDate, earlierDate, options) {\n const [dateLeft_, dateRight_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n return +startOfDay(dateLeft_) === +startOfDay(dateRight_);\n}\n\n// Fallback for modularized imports:\nexport default isSameDay;\n","import { constructFrom } from \"./constructFrom.js\";\nimport { constructNow } from \"./constructNow.js\";\nimport { isSameDay } from \"./isSameDay.js\";\n\n/**\n * The {@link isToday} function options.\n */\n\n/**\n * @name isToday\n * @category Day Helpers\n * @summary Is the given date today?\n * @pure false\n *\n * @description\n * Is the given date today?\n *\n * @param date - The date to check\n * @param options - An object with options\n *\n * @returns The date is today\n *\n * @example\n * // If today is 6 October 2014, is 6 October 14:00:00 today?\n * const result = isToday(new Date(2014, 9, 6, 14, 0))\n * //=> true\n */\nexport function isToday(date, options) {\n return isSameDay(\n constructFrom(options?.in || date, date),\n constructNow(options?.in || date),\n );\n}\n\n// Fallback for modularized imports:\nexport default isToday;\n","import { millisecondsInSecond } from \"./constants.js\";\n\n/**\n * @name secondsToMilliseconds\n * @category Conversion Helpers\n * @summary Convert seconds to milliseconds.\n *\n * @description\n * Convert a number of seconds to a full number of milliseconds.\n *\n * @param seconds - The number of seconds to be converted\n *\n * @returns The number of seconds converted in milliseconds\n *\n * @example\n * // Convert 2 seconds into milliseconds\n * const result = secondsToMilliseconds(2)\n * //=> 2000\n */\nexport function secondsToMilliseconds(seconds) {\n return seconds * millisecondsInSecond;\n}\n\n// Fallback for modularized imports:\nexport default secondsToMilliseconds;\n","import React, { ReactNode } from 'react'\n\nimport { secondsToMilliseconds } from 'date-fns'\nimport { FormattedDate, FormattedMessage, FormattedNumber } from 'react-intl'\n\nimport { EligibilityPlan, EligibilityPlanToDisplay } from '@/types'\nimport { isP1X, priceFromCents } from '@/utils'\nimport s from '@/utils/paymentPlanStrings.module.css'\n\nexport const paymentPlanShorthandName = (payment: EligibilityPlan): ReactNode => {\n const {\n deferred_days: deferredDays,\n deferred_months: deferredMonths,\n installments_count: installmentsCount,\n } = payment\n\n if (installmentsCount === 1 && !deferredDays && !deferredMonths) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.pay.now.button\"\n defaultMessage=\"Payer maintenant\"\n />\n )\n }\n if (installmentsCount === 1 && deferredDays) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.day-abbreviation\"\n defaultMessage=\"J{deferredDays}\"\n values={{\n deferredDays: `+${deferredDays}`,\n }}\n />\n )\n }\n if (installmentsCount === 1 && deferredMonths) {\n return (\n <FormattedMessage\n id=\"payment-plan-strings.month-abbreviation\"\n defaultMessage=\"M{deferredMonths}\"\n values={{\n deferredMonths: `+${deferredMonths}`,\n }}\n />\n )\n }\n return `${installmentsCount}x`\n}\n\n// eslint-disable-next-line consistent-return\nconst withNoFee = (payment: EligibilityPlanToDisplay) => {\n if (\n payment.payment_plan?.every((plan) => plan.customer_fee === 0 && plan.customer_interest === 0)\n ) {\n return (\n <>\n {' '}\n <FormattedMessage id=\"payment-plan-strings.no-fee\" defaultMessage=\"(sans frais)\" />\n </>\n )\n }\n}\n\nexport const paymentPlanInfoText = (payment: EligibilityPlanToDisplay): ReactNode => {\n const {\n deferred_days: deferredDays,\n deferred_months: deferredMonths,\n installments_count: installmentsCount,\n eligible,\n purchase_amount: purchaseAmount,\n minAmount = 0,\n maxAmount = 0,\n payment_plan: paymentPlan,\n } = payment\n const deferredDaysCount = deferredDays + deferredMonths * 30\n\n if (!eligible) {\n return purchaseAmount > maxAmount ? (\n <FormattedMessage\n id=\"payment-plan-strings.ineligible-greater-than-max\"\n defaultMessage=\"Jusqu'à {maxAmount}\"\n values={{\n maxAmount: (\n <FormattedNumber value={priceFromCents(maxAmount)} style=\"currency\" currency=\"EUR\" />\n ),\n }}\n />\n ) : (\n <FormattedMessage\n id=\"payment-plan-strings.ineligible-lower-than-min\"\n defaultMessage=\"À partir de {minAmount}\"\n values={{\n minAmount: (\n <FormattedNumber value={priceFromCents(minAmount)} style=\"currency\" currency=\"EUR\" />\n ),\n }}\n />\n )\n }\n if (!paymentPlan) {\n /* This error should never happen. We added this condition to avoid a typescript warning on\n payment_plan possibly undefined. As far as we know, it only happens when the plan is not\n eligible, which is checked above. */\n throw Error(\n `No payment plan provided for payment in ${installmentsCount} installments. Please contact us if you see this error.`,\n )\n } else if (deferredDaysCount !== 0 && installmentsCount === 1) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.deferred\"\n defaultMessage=\"{totalAmount} à payer le {dueDate}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(paymentPlan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n dueDate: (\n <FormattedDate\n value={secondsToMilliseconds(paymentPlan[0].due_date)}\n day=\"numeric\"\n month=\"long\"\n year=\"numeric\"\n />\n ),\n }}\n />\n {withNoFee(payment)}\n </>\n )\n } else if (installmentsCount > 0) {\n const areInstallmentsOfSameAmount = paymentPlan?.every(\n (installment, index) =>\n index === 0 || installment.total_amount === paymentPlan[0].total_amount,\n )\n\n if (installmentsCount > 4) {\n return (\n <span className={s.openModalInfo}>\n <FormattedMessage\n id=\"payment-plan-strings.credit\"\n defaultMessage=\"Cliquez pour en savoir plus\"\n description=\"Link to credit details\"\n />\n </span>\n )\n }\n\n if (isP1X(payment)) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.pay-now\"\n defaultMessage=\"Payer maintenant {totalAmount}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(paymentPlan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n installmentsCount,\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n\n if (areInstallmentsOfSameAmount) {\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.multiple-installments-same-amount\"\n defaultMessage=\"{installmentsCount} x {totalAmount}\"\n values={{\n totalAmount: (\n <FormattedNumber\n value={priceFromCents(paymentPlan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n installmentsCount,\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n\n return (\n <>\n <FormattedMessage\n id=\"payment-plan-strings.multiple-installments\"\n defaultMessage=\"{numberOfRemainingInstallments, plural, one {{firstInstallmentAmount} puis {numberOfRemainingInstallments} x {othersInstallmentAmount}} other {{firstInstallmentAmount} puis {numberOfRemainingInstallments} x {othersInstallmentAmount}}}\"\n values={{\n firstInstallmentAmount: (\n <FormattedNumber\n value={priceFromCents(paymentPlan[0].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n numberOfRemainingInstallments: installmentsCount - 1,\n othersInstallmentAmount: (\n <FormattedNumber\n value={priceFromCents(paymentPlan[1].total_amount)}\n style=\"currency\"\n currency=\"EUR\"\n />\n ),\n }}\n />\n {withNoFee(payment)}\n </>\n )\n }\n return (\n <FormattedMessage\n id=\"payment-plan-strings.default-message\"\n defaultMessage=\"Payez en plusieurs fois avec Alma\"\n />\n )\n}\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\n\nimport { EligibilityPlan } from '@/types'\nimport { paymentPlanShorthandName } from 'utils/paymentPlanStrings'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport s from 'Widgets/EligibilityModal/components/EligibilityPlansButtons/EligibilityPlansButtons.module.css'\n\nconst EligibilityPlansButtons: FC<{\n eligibilityPlans: EligibilityPlan[]\n currentPlanIndex: number\n // eslint-disable-next-line no-unused-vars\n setCurrentPlanIndex: (index: number) => void\n}> = ({ eligibilityPlans, currentPlanIndex, setCurrentPlanIndex }) => (\n <div className={cx(s.buttons, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)}>\n {eligibilityPlans.map((eligibilityPlan, key) => (\n <button\n type=\"button\"\n key={`p${eligibilityPlan.installments_count}x-d+${eligibilityPlan.deferred_days}-m+${eligibilityPlan.deferred_months}`}\n className={cx({\n [cx(s.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: key === currentPlanIndex,\n })}\n onClick={() => setCurrentPlanIndex(key)}\n >\n <span className={s.textButton}>{paymentPlanShorthandName(eligibilityPlan)}</span>\n </button>\n ))}\n </div>\n)\n\nexport default EligibilityPlansButtons\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\nimport { isToday } from 'date-fns'\nimport { FormattedDate, FormattedMessage, FormattedNumber } from 'react-intl'\n\nimport { PaymentPlan } from '@/types'\nimport s from 'components/Installments/Installment/Installment.module.css'\n\ntype Props = {\n installment: PaymentPlan\n index: number\n}\n\nconst Installment: FC<Props> = ({ installment, index }) => (\n <div className={s.installment} data-testid={`installment-${index}`}>\n <div className={s.date}>\n <div className={cx(s.dot, { [s.isCurrent]: index === 0 })} />\n {isToday(installment.due_date * 1000) ? (\n <FormattedMessage id=\"installments.today\" defaultMessage=\"Aujourd'hui\" tagName=\"strong\" />\n ) : (\n <FormattedDate\n value={installment.due_date * 1000}\n day=\"numeric\"\n month=\"long\"\n year=\"numeric\"\n />\n )}\n </div>\n <div className={cx({ [s.bold]: index === 0 })}>\n <FormattedNumber value={installment.total_amount / 100} style=\"currency\" currency=\"EUR\" />\n </div>\n </div>\n)\n\nexport default Installment\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\n\nimport { EligibilityPlan } from '@/types'\nimport Installment from 'components/Installments/Installment'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport s from 'Widgets/EligibilityModal/components/Schedule/Schedule.module.css'\n\nconst Schedule: FC<{ currentPlan: EligibilityPlan }> = ({ currentPlan }) => (\n <div\n className={cx(s.schedule, STATIC_CUSTOMISATION_CLASSES.scheduleDetails)}\n data-testid=\"modal-installments-element\"\n >\n {(currentPlan?.payment_plan || []).map((installment, index) => (\n <Installment key={installment.due_date * 1000} installment={installment} index={index} />\n ))}\n </div>\n)\n\nexport default Schedule\n","import React, { SVGAttributes, VoidFunctionComponent } from 'react'\n\ntype Props = {\n color?: string\n} & SVGAttributes<SVGElement>\n\nexport const AlmaLogo: VoidFunctionComponent<Props> = ({ color = '#FA5022', ...svgProps }) => (\n <svg\n width=\"50\"\n height=\"25\"\n viewBox=\"0 0 360 109\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...svgProps}\n >\n <path\n d=\"M333.24 28.3462V38.4459C327.504 31.1018 319.176 26.5132 309.288 26.5132C290.208 26.5132 275.424 43.5497 275.424 64.5757C275.424 85.6018 290.208 102.638 309.288 102.638C319.872 102.638 328.668 97.3908 334.416 89.1241V100.817H352.668V28.3462H333.24ZM314.028 84.4876C303.42 84.4876 294.828 75.574 294.828 64.5757C294.828 53.5775 303.42 44.6639 314.028 44.6639C324.636 44.6639 333.228 53.5775 333.228 64.5757C333.228 75.574 324.636 84.4876 314.028 84.4876ZM109.5 8.23073H128.916V100.805H109.5V8.23073ZM151.248 59.7356C151.248 39.8117 163.5 26.5252 180.468 26.5252C191.004 26.5252 199.332 31.1976 204.348 39.1648C209.376 31.1976 217.692 26.5252 228.228 26.5252C245.196 26.5252 257.448 39.8117 257.448 59.7356V100.817H238.032V57.639C238.032 49.8635 232.872 44.7957 226.044 44.7957C219.216 44.7957 214.056 49.8755 214.056 57.639V100.817H194.64V57.639C194.64 49.8635 189.48 44.7957 182.652 44.7957C175.824 44.7957 170.664 49.8755 170.664 57.639V100.817H151.248V59.7356ZM74.34 29.101C69.744 11.9088 60.0241 6.40967 50.772 6.40967C41.5201 6.40967 31.8 11.9088 27.204 29.101L7.24805 100.829H26.916C30.12 88.8485 39.996 82.1753 50.772 82.1753C61.548 82.1753 71.424 88.8605 74.6281 100.829H94.3081L74.34 29.101ZM50.772 65.4623C44.508 65.4623 38.8321 67.8345 34.6441 71.6803L45.924 29.9397C47.0041 25.9501 48.6001 24.6802 50.784 24.6802C52.9681 24.6802 54.5641 25.9501 55.6441 29.9397L66.912 71.6803C62.724 67.8345 57.036 65.4623 50.772 65.4623Z\"\n fill={color}\n />\n </svg>\n)\n","import React, { FC } from 'react'\n\nconst AmexCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <defs>\n <linearGradient id=\"cardamex\" x1=\"10.914%\" x2=\"87.432%\" y1=\"86.279%\" y2=\"15.035%\">\n <stop offset=\"0%\" stopColor=\"#3FA9F5\" />\n <stop offset=\"100%\" stopColor=\"#0071BC\" />\n </linearGradient>\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n fill=\"url(#cardamex)\"\n fillRule=\"nonzero\"\n d=\"M22.559 16H1.379C.627 16 0 15.392 0 14.662V1.338C0 .608.627 0 1.379 0H22.62C23.373 0 24 .608 24 1.338v13.324c-.063.73-.627 1.338-1.441 1.338z\"\n />\n <g fill=\"#FFF\">\n <path d=\"M10.115 8.711L8.889 6.044H7.295v3.852L5.517 6.044H4.17l-1.778 4.03h1.103l.368-.889h2.023l.368.89h2.084V7.11l1.349 2.963h.92l1.348-2.904v2.904h.98v-4.03H11.28l-1.165 2.667zm-5.272-.474H4.23l.613-1.422v.06l.613 1.362h-.613z\" />\n <path\n fillRule=\"nonzero\"\n d=\"M19.372 7.94l.735-.77 1.042-1.185h-1.287L18.697 7.23l-1.164-1.245h-3.985v3.97h3.923l1.226-1.303 1.165 1.304h1.287L20.107 8.71l-.735-.77zM16.92 9.186h-2.33v-.77h2.268v-.77H14.59v-.712h2.33L18.084 8 16.92 9.185z\"\n />\n </g>\n </g>\n </svg>\n)\n\nexport default AmexCard\n","import React, { FC } from 'react'\n\nconst CbCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <defs>\n <linearGradient id=\"cardcb\" x1=\"5.842%\" x2=\"95.393%\" y1=\"81.753%\" y2=\"17.344%\">\n <stop offset=\"0%\" stopColor=\"#39B54A\" /> <stop offset=\"100%\" stopColor=\"#0A5296\" />\n </linearGradient>\n </defs>\n <g fill=\"none\" fillRule=\"nonzero\">\n <path\n fill=\"url(#cardcb)\"\n d=\"M22.621 16H1.38C.627 16 0 15.392 0 14.662V1.338C0 .608.627 0 1.379 0H22.62C23.373 0 24 .608 24 1.338v13.324c-.063.73-.627 1.338-1.379 1.338z\"\n />\n <g fill=\"#FFF\">\n <path d=\"M19.094 4.03h-6.437V8h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.066-.98-1.955-2.145-1.955zM19.094 8.593h-6.437v3.97h6.498c1.165 0 2.084-.889 2.084-2.015-.06-1.067-.98-1.955-2.145-1.955zM7.017 8.06h4.966c-.245-2.371-2.391-4.267-4.966-4.267-2.758 0-5.027 2.074-5.027 4.681s2.269 4.682 5.027 4.682c2.698 0 4.904-2.015 5.027-4.563H7.017v-.534z\" />\n </g>\n </g>\n </svg>\n)\n\nexport default CbCard\n","import React, { FC } from 'react'\n\nconst MasterCard: FC = () => (\n <svg\n width=\"24px\"\n height=\"16px\"\n viewBox=\"0 0 24 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g id=\"Parcours-1C-B\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <g id=\"mobile-1C-Paiement-V1\" transform=\"translate(-269.000000, -313.000000)\">\n <g id=\"mastercard\" transform=\"translate(269.000000, 313.000000)\">\n <rect id=\"Rectangle\" fill=\"#FFFFFF\" x=\"0\" y=\"0\" width=\"24\" height=\"16\" rx=\"1\" />\n <g id=\"Group-6\" transform=\"translate(4.000000, 3.000000)\">\n <circle\n id=\"Oval-4-Copy\"\n fill=\"#EA001B\"\n cx=\"5.05263158\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n />\n <circle\n id=\"Oval-4\"\n fillOpacity=\"0.25\"\n fill=\"#F79F1A\"\n cx=\"10.9473684\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n />\n <circle\n id=\"Oval-4-Copy-2\"\n fillOpacity=\"0.9\"\n fill=\"#F79F1A\"\n cx=\"10.9473684\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n />\n <circle\n id=\"Oval-4-Copy-3\"\n fillOpacity=\"0.3\"\n fill=\"#EA001B\"\n cx=\"5.05263158\"\n cy=\"5.05263158\"\n r=\"5.05263158\"\n />\n </g>\n </g>\n </g>\n </g>\n </svg>\n)\n\nexport default MasterCard\n","import React, { FC } from 'react'\n\nconst VisaCard: FC = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"16\" viewBox=\"0 0 24 16\">\n <g fill=\"none\" fillRule=\"nonzero\">\n <path\n fill=\"#FCFCFC\"\n d=\"M22.684 16H1.38C.627 16 0 15.39 0 14.656V1.344C0 .61.627 0 1.379 0H22.62C23.373 0 24 .61 24 1.344v13.374c0 .671-.564 1.282-1.316 1.282z\"\n />{' '}\n <path\n fill=\"#005098\"\n d=\"M8.889 10.726l.948-5.393h1.482l-.949 5.393zM15.704 5.452a3.658 3.658 0 0 0-1.304-.237c-1.481 0-2.489.71-2.489 1.778 0 .77.711 1.185 1.304 1.481.592.237.77.415.77.652 0 .355-.474.533-.889.533-.592 0-.889-.059-1.363-.296l-.177-.06-.178 1.186c.355.178 1.007.296 1.659.296 1.54 0 2.548-.71 2.548-1.837 0-.592-.415-1.067-1.244-1.481-.534-.237-.83-.415-.83-.652 0-.237.237-.474.83-.474.474 0 .83.118 1.126.178l.118.059.119-1.126M19.496 5.333H18.37c-.355 0-.592.119-.77.474l-2.193 4.919h1.541s.237-.652.296-.83h1.897c.059.178.178.83.178.83h1.362l-1.185-5.393zM17.66 8.77l.593-1.481s.118-.296.178-.533l.118.474s.296 1.303.356 1.54h-1.245zM7.644 5.333L6.222 9.007l-.178-.77C5.748 7.348 4.92 6.459 4.03 5.985l1.303 4.682h1.541l2.311-5.393h-1.54\"\n />\n <path\n fill=\"#F6A500\"\n d=\"M4.919 5.333h-2.37v.119c1.836.474 3.08 1.54 3.555 2.844L5.57 5.807c-.118-.414-.355-.474-.651-.474\"\n />\n <path\n fill=\"#0A5296\"\n d=\"M23.937 3.23H0V1.316C0 .598.627 0 1.379 0H22.62C23.373 0 24 .598 24 1.316V3.23h-.063z\"\n />\n <path\n fill=\"#F4A428\"\n d=\"M.063 13H24v1.8c0 .655-.625 1.2-1.375 1.2H1.375C.625 16 0 15.455 0 14.8V13h.063z\"\n />\n </g>\n </svg>\n)\n\nexport default VisaCard\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\n\nimport { Card } from '@/types'\nimport AmexCard from 'assets/cards/amex'\nimport CbCard from 'assets/cards/cb'\nimport MasterCard from 'assets/cards/mastercard'\nimport VisaCard from 'assets/cards/visa'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport s from 'Widgets/EligibilityModal/components/Cards/Cards.module.css'\n\ntype Props = {\n cards: Card[]\n}\n\nconst Cards: FC<Props> = ({ cards }) => {\n // We transform to a Set and back to avoid duplicate values (ex : amex, amex)\n const uniqueCards = Array.from(new Set(cards))\n\n return (\n <div\n data-testid=\"card-logos\"\n className={cx(s.cardContainer, STATIC_CUSTOMISATION_CLASSES.cardContainer)}\n >\n {uniqueCards.map((card: Card) => (\n <div key={card} className={s.card} data-testid={`card-logo-${card}`}>\n {card === 'cb' && <CbCard />}\n {card === 'amex' && <AmexCard />}\n {card === 'mastercard' && <MasterCard />}\n {card === 'visa' && <VisaCard />}\n </div>\n ))}\n </div>\n )\n}\n\nexport default Cards\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\nimport { FormattedMessage } from 'react-intl'\n\nimport s from 'Widgets//EligibilityModal/components/Info/Info.module.css'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\n\nconst StrongText = (chunks: React.ReactNode) => <strong>{chunks}</strong>\n\nconst Info: FC<{ isCurrentPlanP1X: boolean }> = ({ isCurrentPlanP1X }) => (\n // TODO: refactor this component into subcomponent to factorise code and be cleaner\n <div className={cx(s.list, STATIC_CUSTOMISATION_CLASSES.info)} data-testid=\"modal-info-element\">\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>1</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-1\"\n defaultMessage=\"Choisissez <strong>Alma - Payer maintenant</strong> au moment du paiement.\"\n values={{ strong: StrongText }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-1\"\n defaultMessage=\"Choisissez <strong>Alma</strong> au moment du paiement.\"\n values={{ strong: StrongText }}\n />\n )}\n </div>\n </div>\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>2</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-2\"\n defaultMessage=\"Renseignez les informations de votre <strong>carte bancaire.</strong>\"\n values={{ strong: StrongText }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-2\"\n defaultMessage=\"Laissez-vous guider et validez votre paiement en <strong>2 minutes.</strong>\"\n values={{ strong: StrongText }}\n />\n )}\n </div>\n </div>\n <div className={s.listItem}>\n <div className={cx(s.bullet, STATIC_CUSTOMISATION_CLASSES.bullet)}>3</div>\n <div className={STATIC_CUSTOMISATION_CLASSES.infoMessage}>\n {isCurrentPlanP1X ? (\n <FormattedMessage\n id=\"eligibility-modal.p1x-bullet-3\"\n defaultMessage=\"<strong>La validation </strong> de votre paiement est instantanée !\"\n values={{ strong: StrongText }}\n />\n ) : (\n <FormattedMessage\n id=\"eligibility-modal.bullet-3\"\n defaultMessage=\"<strong>Gardez le contrôle</strong> en avançant ou reculant vos échéances à votre rythme.\"\n values={{ strong: StrongText }}\n />\n )}\n </div>\n </div>\n </div>\n)\n\nexport default Info\n","import React, { FC } from 'react'\n\nimport cx from 'classnames'\nimport { FormattedMessage } from 'react-intl'\n\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport s from 'Widgets/EligibilityModal/components/Title/Title.module.css'\n\nconst Title: FC<{ isSomePlanDeferred: boolean; isCurrentPlanP1X: boolean }> = ({\n isSomePlanDeferred,\n isCurrentPlanP1X,\n}) => (\n <div\n className={cx(s.title, STATIC_CUSTOMISATION_CLASSES.title)}\n data-testid=\"modal-title-element\"\n >\n {isSomePlanDeferred && (\n <FormattedMessage\n id=\"eligibility-modal.title-deferred-plan\"\n defaultMessage=\"Payez en plusieurs fois ou plus tard par carte bancaire avec Alma.\"\n />\n )}\n {!isSomePlanDeferred && isCurrentPlanP1X && (\n <FormattedMessage\n id=\"eligibility-modal.title-pay-now\"\n defaultMessage=\"Payez comptant par carte bancaire avec Alma.\"\n />\n )}\n {!isSomePlanDeferred && !isCurrentPlanP1X && (\n <FormattedMessage\n id=\"eligibility-modal.title-normal\"\n defaultMessage=\"Payez en plusieurs fois par carte bancaire avec Alma.\"\n />\n )}\n </div>\n)\n\nexport default Title\n","import React, { FC, PropsWithChildren } from 'react'\n\nimport cx from 'classnames'\n\nimport { Card } from '@/types'\nimport { AlmaLogo } from 'assets/almaLogo'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport Cards from 'Widgets/EligibilityModal/components/Cards'\nimport Info from 'Widgets/EligibilityModal/components/Info'\nimport Title from 'Widgets/EligibilityModal/components/Title'\nimport s from 'Widgets/EligibilityModal/DesktopModal/DesktopModal.module.css'\n\ntype Props = {\n isCurrentPlanP1X: boolean\n isSomePlanDeferred: boolean\n cards?: Card[]\n} & PropsWithChildren\nconst DesktopModal: FC<Props> = ({ children, isSomePlanDeferred, cards, isCurrentPlanP1X }) => (\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.desktopModal)}\n data-testid=\"modal-container\"\n >\n <aside className={cx([s.block, s.left, STATIC_CUSTOMISATION_CLASSES.leftSide])}>\n <Title isSomePlanDeferred={isSomePlanDeferred} isCurrentPlanP1X={isCurrentPlanP1X} />\n <Info isCurrentPlanP1X={isCurrentPlanP1X} />\n {cards && <Cards cards={cards} />}\n <AlmaLogo className={s.logo} width=\"75\" />\n </aside>\n <div className={cx(s.block, STATIC_CUSTOMISATION_CLASSES.rightSide)}>{children}</div>\n </div>\n)\n\nexport default DesktopModal\n","import React, { FC, PropsWithChildren } from 'react'\n\nimport cx from 'classnames'\n\nimport { Card } from '@/types'\nimport { AlmaLogo } from 'assets/almaLogo'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets/EligibilityModal/classNames.const'\nimport Cards from 'Widgets/EligibilityModal/components/Cards'\nimport Info from 'Widgets/EligibilityModal/components/Info'\nimport Title from 'Widgets/EligibilityModal/components/Title'\nimport s from 'Widgets/EligibilityModal/MobileModal/MobileModal.module.css'\n\ntype Props = {\n isCurrentPlanP1X: boolean\n isSomePlanDeferred: boolean\n cards?: Card[]\n} & PropsWithChildren\nconst MobileModal: FC<Props> = ({ children, isSomePlanDeferred, cards, isCurrentPlanP1X }) => (\n <div\n className={cx(s.container, STATIC_CUSTOMISATION_CLASSES.mobileModal)}\n data-testid=\"modal-container\"\n >\n <Title isSomePlanDeferred={isSomePlanDeferred} isCurrentPlanP1X={isCurrentPlanP1X} />\n {children}\n <Info isCurrentPlanP1X={isCurrentPlanP1X} />\n {cards && <Cards cards={cards} />}\n <AlmaLogo className={s.logo} width=\"75\" />\n </div>\n)\n\nexport default MobileModal\n","import React, { FunctionComponent, useState } from 'react'\n\nimport { FormattedMessage } from 'react-intl'\nimport { useMediaQuery } from 'react-responsive'\n\nimport { Card, EligibilityPlan, statusResponse } from '@/types'\nimport { desktopWidth, isP1X } from '@/utils'\nimport TotalBlock from 'components/Installments/TotalBlock'\nimport { LoadingIndicator } from 'components/LoadingIndicator/LoadingIndicator'\nimport Modal from 'components/Modal'\nimport EligibilityPlansButtons from 'Widgets/EligibilityModal/components/EligibilityPlansButtons'\nimport Schedule from 'Widgets/EligibilityModal/components/Schedule'\nimport DesktopModal from 'Widgets/EligibilityModal/DesktopModal'\nimport s from 'Widgets/EligibilityModal/EligibilityModal.module.css'\nimport MobileModal from 'Widgets/EligibilityModal/MobileModal'\n\ntype Props = {\n initialPlanIndex?: number\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n eligibilityPlans: EligibilityPlan[]\n status: statusResponse\n cards?: Card[]\n}\n\nconst EligibilityModal: FunctionComponent<Props> = ({\n initialPlanIndex,\n onClose,\n eligibilityPlans,\n status,\n cards,\n}) => {\n const [currentPlanIndex, setCurrentPlanIndex] = useState(initialPlanIndex || 0)\n const isBigScreen = useMediaQuery({ minWidth: desktopWidth })\n const ModalComponent = isBigScreen ? DesktopModal : MobileModal\n const eligiblePlans = eligibilityPlans.filter((plan) => plan.eligible)\n const currentPlan = eligiblePlans[currentPlanIndex]\n\n const isSomePlanDeferred = eligibilityPlans.some(\n (plan) => plan.deferred_days > 0 || plan.deferred_months > 0,\n )\n\n return (\n <Modal onClose={onClose} ariaHideApp={false} scrollable isOpen>\n <ModalComponent\n isSomePlanDeferred={isSomePlanDeferred}\n cards={cards}\n isCurrentPlanP1X={isP1X(currentPlan)}\n >\n {status === statusResponse.PENDING && (\n <div className={s.loader}>\n <LoadingIndicator />\n </div>\n )}\n {status === statusResponse.SUCCESS && eligiblePlans.length === 0 && (\n <div className={s.noEligibility}>\n <FormattedMessage\n id=\"eligibility-modal.no-eligibility\"\n defaultMessage=\"Oups, il semblerait que la simulation n'ait pas fonctionné.\"\n />\n </div>\n )}\n {status === statusResponse.SUCCESS && eligiblePlans.length >= 1 && (\n <>\n <EligibilityPlansButtons\n eligibilityPlans={eligiblePlans}\n currentPlanIndex={currentPlanIndex}\n setCurrentPlanIndex={setCurrentPlanIndex}\n />\n <div className={s.scheduleArea}>\n <div className={s.verticalLine} />\n <Schedule currentPlan={currentPlan} />\n <TotalBlock currentPlan={currentPlan} />\n </div>\n </>\n )}\n </ModalComponent>\n </Modal>\n )\n}\nexport default EligibilityModal\n","import React from 'react'\n\nimport { ApiConfig, Card, ConfigPlan } from '@/types'\nimport useFetchEligibility from 'hooks/useFetchEligibility'\nimport EligibilityModal from 'Widgets/EligibilityModal'\n\ntype Props = {\n purchaseAmount: number\n apiData: ApiConfig\n configPlans?: ConfigPlan[]\n customerBillingCountry?: string\n customerShippingCountry?: string\n onClose: (event: React.MouseEvent | React.KeyboardEvent) => void\n cards?: Card[]\n}\n\n/**\n * This component allows to display only the modal, without PaymentPlans.\n */\nconst ModalContainer: React.FC<Props> = ({\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n onClose,\n cards,\n}) => {\n const [eligibilityPlans, status] = useFetchEligibility(\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n )\n\n return (\n <EligibilityModal\n initialPlanIndex={0}\n onClose={onClose}\n eligibilityPlans={eligibilityPlans}\n status={status}\n cards={cards}\n />\n )\n}\n\nexport { ModalContainer }\n","import React, { FunctionComponent } from 'react'\n\nimport cx from 'classnames'\n\nimport s from 'components/Loader/Loader.module.css'\n\nconst Loader: FunctionComponent<{ className?: string }> = ({ className }) => (\n <div className={cx(s.loadingIndicator, className)} data-testid=\"loader\">\n <div className={s.line1} />\n <div className={s.line2} />\n </div>\n)\n\nexport default Loader\n","import { useEffect, useState } from 'react'\n\ntype Props = {\n current: number\n onHover: (current: number) => void\n onLeave: () => void\n}\nconst useButtonAnimation = (iterateValues: number[], transitionDelay: number): Props => {\n const [current, setCurrent] = useState(0)\n const [update, setUpdate] = useState(true)\n\n useEffect(() => {\n let timeout: ReturnType<typeof setTimeout>\n let isMounted = true\n\n if (transitionDelay === -1) {\n return\n }\n\n if (iterateValues.length !== 0) {\n if (!iterateValues.includes(current) && update) setCurrent(iterateValues[0])\n timeout = setTimeout(() => {\n if (update && isMounted) {\n setCurrent(\n iterateValues[\n iterateValues.includes(current)\n ? (iterateValues.indexOf(current) + 1) % iterateValues.length\n : 0\n ],\n )\n }\n }, transitionDelay)\n }\n // eslint-disable-next-line consistent-return\n return () => {\n isMounted = false\n clearTimeout(timeout)\n }\n }, [iterateValues, current, transitionDelay, update])\n\n return {\n current,\n onHover: (currentIndex: number) => {\n setCurrent(currentIndex)\n setUpdate(false)\n },\n onLeave: () => {\n setUpdate(true)\n },\n }\n}\nexport default useButtonAnimation\n","import { EligibilityPlan } from '@/types'\n\ntype Args = {\n suggestedPaymentPlan: number | number[]\n eligibilityPlans: EligibilityPlan[]\n}\n\n/**\n * It returns the **index** of the **first eligible plan** that matches the default installments count\n *\n * @param {number | number[]} suggestedPaymentPlan\n * @param {EligibilityPlan[]} eligibilityPlans\n * @returns number (index of the first eligible plan that matches the default installments count)\n */\nexport const getIndexOfActivePlan = ({ suggestedPaymentPlan, eligibilityPlans }: Args): number => {\n const suggestedPaymentPlanArray = Array.isArray(suggestedPaymentPlan)\n ? suggestedPaymentPlan\n : [suggestedPaymentPlan]\n\n let foundIndex = 0\n\n suggestedPaymentPlanArray.some((installmentsCount) => {\n const planFound = eligibilityPlans.findIndex(\n (plan) =>\n plan.installments_count === installmentsCount &&\n plan.eligible &&\n // Remove the PayLater plans from the plan to target, we will code a better solution later\n // To differentiate P1X from PayLater while using the `suggestedPaymentPlan` property.\n !plan.deferred_days &&\n !plan.deferred_months,\n )\n\n if (planFound !== -1) {\n foundIndex = planFound\n return true\n }\n\n return false\n })\n\n return foundIndex\n}\n","/**\n * Prefix classes to avoid name collisions.\n */\nconst prefix = 'alma-payment-plans'\n\n/**\n * Class names for the **payment plans** widget.\n * Those classes are intended to be used by the **merchant developer**.\n */\nconst STATIC_CUSTOMISATION_CLASSES = {\n container: `${prefix}-container`,\n eligibilityLine: `${prefix}-eligibility-line`,\n eligibilityOptions: `${prefix}-eligibility-options`,\n notEligibleOption: `${prefix}-not-eligible-option`,\n paymentInfo: `${prefix}-payment-info`,\n activeOption: `${prefix}-active-option`,\n}\n\nexport default STATIC_CUSTOMISATION_CLASSES\n","import React, { FunctionComponent, MouseEvent, useEffect, useState } from 'react'\n\nimport cx from 'classnames'\n\nimport { ApiConfig, Card, ConfigPlan, statusResponse } from '@/types'\nimport { AlmaLogo } from 'assets/almaLogo'\nimport Loader from 'components/Loader'\nimport useButtonAnimation from 'hooks/useButtonAnimation'\nimport useFetchEligibility from 'hooks/useFetchEligibility'\nimport { getIndexOfActivePlan } from 'utils/merchantOrderPreferences'\nimport { paymentPlanInfoText, paymentPlanShorthandName } from 'utils/paymentPlanStrings'\nimport STATIC_CUSTOMISATION_CLASSES from 'Widgets//PaymentPlans/classNames.const'\nimport EligibilityModal from 'Widgets/EligibilityModal'\nimport s from 'Widgets/PaymentPlans/PaymentPlans.module.css'\n\ntype Props = {\n purchaseAmount: number\n apiData: ApiConfig\n configPlans?: ConfigPlan[]\n transitionDelay?: number\n customerBillingCountry?: string\n customerShippingCountry?: string\n hideIfNotEligible?: boolean\n monochrome?: boolean\n suggestedPaymentPlan?: number | number[]\n cards?: Card[]\n hideBorder?: boolean\n onModalClose?: (event: React.MouseEvent | React.KeyboardEvent) => void\n}\n\nconst VERY_LONG_TIME_IN_MS = 1000 * 3600\nconst DEFAULT_TRANSITION_TIME = 5500\n\nconst PaymentPlanWidget: FunctionComponent<Props> = ({\n apiData,\n configPlans,\n hideIfNotEligible,\n monochrome,\n purchaseAmount,\n suggestedPaymentPlan,\n cards,\n customerBillingCountry,\n customerShippingCountry,\n transitionDelay,\n hideBorder = false,\n onModalClose,\n}) => {\n const [eligibilityPlans, status] = useFetchEligibility(\n purchaseAmount,\n apiData,\n configPlans,\n customerBillingCountry,\n customerShippingCountry,\n )\n const eligiblePlans = eligibilityPlans.filter((plan) => plan.eligible)\n const activePlanIndex = getIndexOfActivePlan({\n eligibilityPlans,\n suggestedPaymentPlan: suggestedPaymentPlan ?? 0,\n })\n const isSuggestedPaymentPlanSpecified = suggestedPaymentPlan !== undefined // 👈 The merchant decided to focus a tab\n const isTransitionSpecified = transitionDelay !== undefined // 👈 The merchant has specified a transition time\n const [isOpen, setIsOpen] = useState(false)\n const openModal = () => setIsOpen(true)\n const closeModal = (event: React.MouseEvent | React.KeyboardEvent) => {\n setIsOpen(false)\n onModalClose?.(event)\n }\n\n const eligiblePlanKeys = eligibilityPlans.reduce<number[]>(\n (acc, plan, index) => (plan.eligible ? [...acc, index] : acc),\n [],\n )\n\n /**\n * If merchand specify a suggestedPaymentPlan and no transition, we set a very long transition delay.\n * Otherwise, we set the transition delay specified by the merchant.\n * If none of those properties are specified, we set a default transition delay.\n * @returns\n */\n const realTransitionTime = () => {\n if (isTransitionSpecified) {\n return transitionDelay ?? DEFAULT_TRANSITION_TIME\n }\n if (isSuggestedPaymentPlanSpecified) {\n return VERY_LONG_TIME_IN_MS\n }\n return DEFAULT_TRANSITION_TIME\n }\n\n const { current, onHover, onLeave } = useButtonAnimation(eligiblePlanKeys, realTransitionTime())\n\n useEffect(() => {\n // When API has given a response AND the marchand set an active plan by default.\n if (status === statusResponse.SUCCESS && isSuggestedPaymentPlanSpecified) {\n onHover(activePlanIndex) // We select the first active plan possible\n onLeave() // We need to call onLeave to reset the animation\n }\n // We intentionally exclude 'activePlanIndex', 'isSuggestedPaymentPlanSpecified', 'onHover', and 'onLeave'\n // because including them would cause the effect to re-run unnecessarily, leading to unwanted behavior.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [status])\n\n /**\n * It takes a plan index and returns the index of that plan within the eligible plans\n *\n * @param {number} planIndex - The index of the plan that the user has selected.\n * @returns The index of the planKey in the eligiblePlanKeys array.\n */\n const getIndexWithinEligiblePlans = (planIndex: number) => {\n const index = eligiblePlanKeys.findIndex((planKey) => planKey === planIndex)\n return index === -1 ? 0 : index\n }\n\n if (status === statusResponse.PENDING) {\n return (\n <div className={cx(s.widgetButton, s.pending)}>\n <Loader />\n </div>\n )\n }\n\n if (\n (hideIfNotEligible && eligiblePlans.length === 0) ||\n eligibilityPlans.length === 0 ||\n status === statusResponse.FAILED\n ) {\n return null\n }\n\n const handleOpenModal = (e: MouseEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>) => {\n e.preventDefault()\n if (eligiblePlans.length > 0) {\n openModal()\n }\n }\n\n return (\n <>\n <div\n tabIndex={0}\n role=\"button\"\n onClick={handleOpenModal}\n onKeyDown={(e) => e.key === 'Enter' && handleOpenModal(e)}\n className={cx(\n s.widgetButton,\n {\n [s.clickable]: eligiblePlans.length > 0,\n [s.unClickable]: eligiblePlans.length === 0,\n [s.hideBorder]: hideBorder,\n },\n STATIC_CUSTOMISATION_CLASSES.container,\n )}\n data-testid=\"widget-button\"\n >\n <div className={cx(s.primaryContainer, STATIC_CUSTOMISATION_CLASSES.eligibilityLine)}>\n <AlmaLogo className={s.logo} color={monochrome ? 'var(--off-black)' : undefined} />\n <div className={cx(s.paymentPlans, STATIC_CUSTOMISATION_CLASSES.eligibilityOptions)}>\n {eligibilityPlans.map((eligibilityPlan, key) => {\n const isCurrent = key === current\n return (\n <div\n key={`p${eligibilityPlan.installments_count}x-d+${eligibilityPlan.deferred_days}-m+${eligibilityPlan.deferred_months}`}\n onMouseEnter={() => onHover(key)}\n onTouchStart={() => onHover(key)}\n onMouseOut={onLeave}\n onBlur={onLeave}\n onTouchEnd={onLeave}\n className={cx(s.plan, {\n [cx(s.active, STATIC_CUSTOMISATION_CLASSES.activeOption)]: isCurrent,\n [s.monochrome]: monochrome && isCurrent,\n [cx(s.notEligible, STATIC_CUSTOMISATION_CLASSES.notEligibleOption)]:\n !eligibilityPlan.eligible,\n })}\n >\n {paymentPlanShorthandName(eligibilityPlan)}\n </div>\n )\n })}\n </div>\n </div>\n <div\n className={cx(\n s.info,\n {\n [cx(s.notEligible, STATIC_CUSTOMISATION_CLASSES.notEligibleOption)]:\n eligibilityPlans[current] && !eligibilityPlans[current].eligible,\n },\n STATIC_CUSTOMISATION_CLASSES.paymentInfo,\n )}\n >\n {eligibilityPlans.length !== 0 && paymentPlanInfoText(eligibilityPlans[current])}\n </div>\n </div>\n {isOpen && (\n <EligibilityModal\n initialPlanIndex={getIndexWithinEligiblePlans(current)}\n onClose={closeModal}\n eligibilityPlans={eligiblePlans}\n status={status}\n cards={cards}\n />\n )}\n </>\n )\n}\n\nexport default PaymentPlanWidget\n","import React from 'react'\n\nimport { createRoot, Root } from 'react-dom/client'\n\nimport { ApiMode } from '@/consts'\nimport {\n Locale,\n ModalOptions,\n PaymentPlanWidgetOptions,\n WidgetNames,\n WidgetOptions,\n widgetTypes,\n} from '@/types'\nimport IntlProvider from 'intl/IntlProvider'\nimport { ModalContainer } from 'Widgets/EligibilityModal/ModalContainer'\nimport PaymentPlanWidget from 'Widgets/PaymentPlans'\n\nexport type AddReturnType =\n | {\n open: () => void\n close: (event: React.MouseEvent | React.KeyboardEvent) => void\n }\n | undefined\n\ntype ApiData = { domain: ApiMode; merchantId: string }\n\nconst rootMap: Map<Element, Root> = new Map()\n\nconst addWidget = (\n apiData: ApiData,\n widget: WidgetNames,\n options: WidgetOptions,\n): AddReturnType => {\n const containerDiv = document.querySelector(options.container)\n\n if (containerDiv) {\n const existingRoot = rootMap.get(containerDiv)\n if (existingRoot) {\n existingRoot.unmount()\n rootMap.delete(containerDiv)\n }\n }\n\n if (widget === widgetTypes.PaymentPlans) {\n const {\n purchaseAmount,\n plans,\n transitionDelay,\n hideIfNotEligible,\n hideBorder = false,\n monochrome = true,\n suggestedPaymentPlan,\n customerBillingCountry,\n customerShippingCountry,\n locale = Locale.en,\n cards,\n onModalClose,\n } = options as PaymentPlanWidgetOptions\n\n if (containerDiv) {\n const root = createRoot(containerDiv)\n root.render(\n <IntlProvider locale={locale}>\n <PaymentPlanWidget\n apiData={apiData}\n configPlans={plans}\n hideIfNotEligible={hideIfNotEligible}\n monochrome={monochrome}\n purchaseAmount={purchaseAmount}\n suggestedPaymentPlan={suggestedPaymentPlan}\n cards={cards}\n customerBillingCountry={customerBillingCountry}\n customerShippingCountry={customerShippingCountry}\n transitionDelay={transitionDelay}\n hideBorder={hideBorder}\n onModalClose={onModalClose}\n />\n </IntlProvider>,\n )\n rootMap.set(containerDiv, root)\n }\n }\n\n if (widget === widgetTypes.Modal) {\n const {\n clickableSelector,\n purchaseAmount,\n plans,\n locale = Locale.en,\n customerBillingCountry,\n customerShippingCountry,\n cards,\n onClose,\n } = options as ModalOptions\n\n const close = (event: React.MouseEvent | React.KeyboardEvent) => {\n if (!containerDiv) return\n const root = rootMap.get(containerDiv)\n if (root) {\n root.unmount()\n rootMap.delete(containerDiv)\n }\n onClose?.(event)\n }\n\n const renderModal = () => {\n if (containerDiv) {\n const root = createRoot(containerDiv)\n root.render(\n <IntlProvider locale={locale}>\n <ModalContainer\n purchaseAmount={purchaseAmount}\n apiData={apiData}\n configPlans={plans}\n customerBillingCountry={customerBillingCountry}\n customerShippingCountry={customerShippingCountry}\n onClose={close}\n cards={cards}\n />\n </IntlProvider>,\n )\n rootMap.set(containerDiv, root)\n }\n }\n\n if (clickableSelector) {\n document.querySelector(clickableSelector)?.addEventListener('click', renderModal, false)\n }\n\n return {\n open: renderModal,\n close,\n }\n }\n\n return undefined\n}\n\nexport const WidgetsController = (apiData: ApiData) => ({\n add: (widget: WidgetNames, options: WidgetOptions) => addWidget(apiData, widget, options),\n})\n","export const SANDBOX_API_URL = 'https://api.sandbox.getalma.eu'\nexport const LIVE_API_URL = 'https://api.getalma.eu'\n\nexport enum ApiMode {\n LIVE = 'https://api.getalma.eu',\n TEST = 'https://api.sandbox.getalma.eu',\n}\n","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { ApiMode } from '@/consts'\nimport { widgetTypes } from '@/types'\nimport '@/main.css'\nimport * as utils from '@/utils'\nimport 'utils/polyfills' // todo Looks like legacy code, needs to be tested on multiple browsers (old ones too)\nimport { WidgetsController } from '@/widgets_controller'\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Widgets {\n export function initialize(merchantId: string, mode: ApiMode) {\n return WidgetsController({ domain: mode, merchantId })\n }\n export const PaymentPlans = widgetTypes.PaymentPlans\n export const Modal = widgetTypes.Modal\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Utils {\n export const priceToCents = utils.priceToCents\n export const priceFromCents = utils.priceFromCents\n export const formatCents = utils.formatCents\n}\n\nexport { ApiMode } from '@/consts'\n"],"names":["widgetTypes","statusResponse","Locale","priceToCents","price","priceFromCents","cents","formatCents","desktopWidth","isP1X","plan","ElementProto","selector","element","elements","index","window","reason","wsRE","wsIndex","checkIfValidClassListEntry","O","V","document","Object","hasOwnProp","defineProperty","allowTokenListConstruction","skipPropChange","DOMTokenList","a","v","argLen","val","ele","proto","i","Len","resStr","is","whenPropChanges","evt","prop","target","protoObjProto","strval","tokens","resTokenList","oldLen","cI","cLen","sub","innerI","polyfillClassList","protoObj","toks","newVal","e","DOMTokenListProto","testClass","NullCheck","n","oldValue","oldToken","newToken","value","f","tArg","that","l","u","o","r","c","s","h","p","y","d","w","_","t","g","m","b","k","x","C","S","M","j","P","$","N","I","L","H","T","A","F","q","z","B","D","E","G","R","U","W","Z","Y","J","K","Q","X","nn","tn","en","rn","un","_n","Sn","En","on","cn","fn","ln","an","sn","hn","vn","dn","pn","mn","yn","gn","Cn","xn","createRoot","container","children","render","unmountComponentAtNode","extendStatics","__extends","__","__assign","__rest","__spreadArray","to","from","pack","ar","memoize","options","cache","cacheDefault","serializer","serializerDefault","strategy","strategyDefault","isPrimitive","monadic","arg","cacheKey","computedValue","variadic","args","assemble","context","serialize","strategyVariadic","strategyMonadic","ObjectWithoutPrototypeCache","key","strategies","invariant","condition","message","Err","_a","_i","ErrorKind","TYPE","SKELETON_TYPE","isLiteralElement","el","isArgumentElement","isNumberElement","isDateElement","isTimeElement","isSelectElement","isPluralElement","isPoundElement","isTagElement","isNumberSkeleton","isDateTimeSkeleton","SPACE_SEPARATOR_REGEX","DATE_TIME_REGEX","parseDateTimeSkeleton","skeleton","result","match","len","WHITE_SPACE_REGEX","parseNumberSkeletonFromString","stringTokens","stringTokens_1","stringToken","stemAndOptions","stem","options_1","option","icuUnitToEcma","unit","FRACTION_PRECISION_REGEX","SIGNIFICANT_PRECISION_REGEX","INTEGER_WIDTH_REGEX","CONCISE_INTEGER_WIDTH_REGEX","parseSignificantPrecision","str","g1","g2","parseSign","parseConciseScientificAndEngineeringStem","signDisplay","parseNotationOptions","opt","signOpts","parseNumberSkeleton","tokens_1","token","all","g3","g4","g5","conciseScientificAndEngineeringOpts","timeData","getBestPattern","locale","skeletonCopy","patternPos","patternChar","extraLength","hourLen","dayPeriodLen","dayPeriodChar","hourChar","getDefaultHourSymbolFromLocale","hourCycle","languageTag","regionTag","hourCycles","SPACE_SEPARATOR_START_REGEX","SPACE_SEPARATOR_END_REGEX","createLocation","start","end","hasNativeStartsWith","hasNativeFromCodePoint","hasNativeFromEntries","hasNativeCodePointAt","hasTrimStart","hasTrimEnd","hasNativeIsSafeInteger","isSafeInteger","REGEX_SUPPORTS_U_AND_Y","re","RE","startsWith","search","position","fromCodePoint","codePoints","length","code","fromEntries","entries","obj","entries_1","codePointAt","size","first","second","trimStart","trimEnd","flag","matchIdentifierAtIndex","IDENTIFIER_PREFIX_RE_1","_isWhiteSpace","_isPatternSyntax","Parser","nestingLevel","parentArgType","expectingCloseTag","char","_isAlpha","startPosition","tagName","childrenResult","endTagStartPosition","closingTagNameStartPosition","closingTagName","startOffset","_isPotentialElementNameChar","parseQuoteResult","parseUnquotedResult","parseLeftAngleResult","location","_isAlphaOrSlash","ch","openingBracePosition","startingPosition","endOffset","endPosition","typeStartPosition","argType","typeEndPosition","styleAndLocation","styleStartPosition","style","styleLocation","argCloseResult","location_1","dateTimePattern","type","typeEndPosition_1","identifierAndLocation","pluralOffset","optionsResult","location_2","nestedBraces","apostrophePosition","expectCloseTag","parsedFirstIdentifier","hasOtherClause","parsedSelectors","selectorLocation","fragmentResult","expectNumberError","invalidNumberError","sign","hasDigits","decimal","offset","kind","prefix","pattern","currentOffset","targetOffset","nextCode","codepoint","pruneLocation","els","parse","opts","error","ErrorCode","FormatError","_super","msg","originalMessage","_this","InvalidValueError","variableId","InvalidValueTypeError","MissingValueError","PART_TYPE","mergeLiteral","parts","part","lastPart","isFormatXMLElementFn","formatToParts","locales","formatters","formats","values","currentPluralValue","els_1","varName","value_1","formatFn","chunks","rule","mergeConfig","c1","c2","mergeConfigs","defaultConfig","configs","createFastMemoizeCache","store","createDefaultFormatters","IntlMessageFormat","overrideFormats","parseOpts","supportedLocales","IntlErrorCode","IntlError","exception","err","UnsupportedFormatterError","InvalidConfigError","MissingDataError","IntlFormatError","MessageFormatError","descriptor","MissingTranslationError","filterProps","props","allowlist","defaults","filtered","name","defaultErrorHandler","defaultWarnHandler","warning","DEFAULT_INTL_CONFIG","createIntlCache","createFormatters","RelativeTimeFormat","ListFormat","DisplayNames","getDateTimeFormat","getNumberFormat","getPluralRules","getNamedFormat","onError","formatType","format","setTimeZoneInOptions","timeZone","deepMergeOptions","opts1","opts2","keys","deepMergeFormatsAndSetTimeZone","f1","mfFormats","formatMessage","state","messageDescriptor","messages","defaultLocale","defaultFormats","fallbackOnEmptyString","defaultRichTextElements","msgId","defaultMessage","id","formatter","DATE_TIME_FORMAT_OPTIONS","getFormatter","filteredOptions","formatDate","config","_b","date","formatTime","formatDateTimeRange","formatDateToParts","formatTimeToParts","DISPLAY_NAMES_OPTONS","formatDisplayName","getDisplayNames","LIST_FORMAT_OPTIONS","now","generateToken","formatList","getListFormat","results","formatListToParts","richValues_1","serializedValues","PLURAL_FORMAT_OPTIONS","formatPlural","RELATIVE_TIME_FORMAT_OPTIONS","getRelativeTimeFormat","formatRelativeTime","NUMBER_FORMAT_OPTIONS","formatNumber","formatNumberToParts","messagesContainString","firstMessage","verifyConfigMessages","createIntl","resolvedConfig","invariantIntlContext","intl","CORE_DEFAULT_INTL_CONFIG","React.Fragment","assignUniqueKeysToParts","formatXMLElementFn","React.Children","shallowEqual","objA","objB","aKeys","bKeys","reactIs_production_min","reactIsModule","require$$0","reactIs","FORWARD_REF_STATICS","MEMO_STATICS","TYPE_STATICS","IntlContext","React.createContext","IntlProvider","Provider","Context","useIntl","React.useContext","DisplayName","DisplayNameParts","createFormattedDateTimePartsComponent","ComponentParts","formatProps","formattedParts","createFormattedComponent","Component","formattedValue","Text","React.createElement","assignUniqueKeysToFormatXMLElementFnArgument","acc","rawValues","rest","coreFormatMessage","rawDefaultRichTextElements","coreIntl","coreCreateIntl","processIntlConfig","prevConfig","React.PureComponent","areEqual","prevProps","nextProps","otherProps","nextValues","nextOtherProps","FormattedMessage","description","ignoreTag","nodes","MemoizedFormattedMessage","React.memo","FormattedDate","FormattedNumber","getTranslationsByLocale","messagesFR","messagesES","messagesIT","messagesDE","messagesPT","messagesNL","messagesEN","React","hashStringForStorage","isMoreThanOneHourAgo","useSessionStorage","timestamp","stringData","params","purchaseAmount","plans","customerBillingCountry","customerShippingCountry","stringAmount","stringPlans","fetchFromApi","data","headers","url","__async","__spreadValues","isPlanEligible","configPlan","getPaymentPlanBoundaries","purchaseAmountConstraints","filterEligibility","eligibilities","configPlans","eligibilityDeferredDays","relatedConfigPlan","configPlanDeferredDays","__spreadProps","useFetchEligibility","domain","merchantId","eligibility","setEligibility","useState","status","setStatus","getCache","setCache","createKey","currentCache","lastCacheTimestamp","shouldInvalidate","configInstallments","useEffect","billingAddress","shippingAddress","define_process_env_default","res","cssMediaquery","matchQuery","parseQuery","RE_MEDIA_QUERY","RE_MQ_EXPRESSION","RE_MQ_FEATURE","RE_LENGTH_UNIT","RE_RESOLUTION_UNIT","mediaQuery","query","inverse","typeMatch","expressionsMatch","expression","feature","modifier","expValue","toPx","toDpi","toDecimal","captures","expressions","parsed","ratio","numbers","resolution","units","staticMatch","dynamicMatch","Mql","forceStatic","self","mql","update","addListener","removeListener","dispose","listener","matchMedia","matchmediaquery","uppercasePattern","msPattern","toHyphenLower","hyphenateStyleName","hName","shallowEqualObjects","ReactPropTypesSecret","ReactPropTypesSecret_1","emptyFunction","emptyFunctionWithReset","factoryWithThrowingShims","shim","propName","componentName","propFullName","secret","getShim","ReactPropTypes","propTypesModule","require$$2","stringOrNumber","PropTypes","types","matchers","featureMatchers","__objRest","features","mq","negate","cond","keyVal","realKey","hyphenate","join","conds","toQuery","rules","createContext","makeQuery","settings","hyphenateKeys","useIsUpdate","ref","useRef","useDevice","deviceFromProps","deviceFromContext","useContext","getDevice","device","setDevice","newDevice","useQuery","getQuery","setQuery","newQuery","useMatchMedia","getMatchMedia","setMq","isUpdate","newMq","useMatches","matches","setMatches","updateMatches","ev","useMediaQuery","onChange","deviceSettings","hasOwn","classNames","classes","appendClass","parseValue","newClass","module","STATIC_CUSTOMISATION_CLASSES","TotalBlock","currentPlan","total","creditCost","TAEG","customerFees","isCredit","firstInstallmentAmount","_c","totalWithoutFirstInstallment","_f","_e","_d","cx","LoadingIndicator","className","root","isOn","scrollbarSize","scrollTop","getScrollbarSize","doc","dummyScroller","hasScrollbar","off","toggle","noScroll","exports","findTabbableDescendants","DISPLAY_NONE","DISPLAY_CONTENTS","tabbableNode","isNotOverflowing","hidesContents","zeroSize","displayValue","visible","parentElement","rootNode","focusable","isTabIndexNotNaN","nodeName","tabbable","tabIndex","isTabIndexNaN","descendants","finished","focusManager","resetState","log","handleBlur","handleFocus","markForFocusLater","returnFocus","popWithoutFocus","setupScopedFocus","teardownScopedFocus","_tabbable","_tabbable2","_interopRequireDefault","focusLaterElements","modalElement","needToFocus","preventScroll","toFocus","scopeTab","getActiveElement","node","event","shiftKey","head","tail","activeElement","checkSafari","isSafariDesktop","warning_1","canUseDOM","ExecutionEnvironment","safeHTMLElement","_exenv","_exenv2","EE","SafeHTMLElement","ariaAppHider","ariaAppHider$1","assertNodeList","setElement","validateElement","hide","show","documentNotReadyOrSSRTesting","_warning","_warning2","_safeHTMLElement","require$$1","globalElement","nodeList","useElement","appElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","classList","htmlClassList","docBodyClassList","removeClass","at","cls","htmlElement","body","_cls","incrementReference","poll","decrementReference","trackClass","classListRef","untrackClass","classString","portalOpenInstances_1","portalOpenInstances$1","_classCallCheck","instance","Constructor","PortalOpenInstances","openInstance","callback","eventType","subscriber","portalOpenInstances","bodyTrap_1","bodyTrap$1","_portalOpenInstances","_portalOpenInstances2","before","after","instances","_arr","item","_arr2","_i2","check","focusContent","bodyTrap","openInstances","_extends","source","_typeof","_createClass","defineProperties","protoProps","staticProps","_react","_propTypes","_propTypes2","_focusManager","_interopRequireWildcard","_scopeTab","require$$3","_scopeTab2","_ariaAppHider","require$$4","_classList","require$$5","require$$6","_safeHTMLElement2","require$$7","newObj","_possibleConstructorReturn","call","_inherits","subClass","superClass","CLASS_NAMES","isTabKey","isEscKey","ariaHiddenInstances","ModalPortal","_Component","overlay","content","_this$props","ariaHideApp","htmlOpenClassName","bodyOpenClassName","parentSelector","parentDocument","closesAt","which","additional","items","prevState","_props","_props2","overlayClassName","defaultStyles","contentStyles","overlayStyles","overlayProps","contentProps","contentElement","componentWillMount","componentWillReceiveProps","updater","componentWillUpdate","nextState","polyfill","prototype","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","Modal_1","_react2","_reactDom","_reactDom2","_ModalPortal","_ModalPortal2","_reactLifecyclesCompat","portalClassName","isReact16","createHTMLElement","getCreatePortal","getParentElement","Modal","_ref","_temp","_ret","_len","_key","parent","createPortal","portal","prevParent","nextParent","isOpen","Modal$1","contentEl","Modal$2","_Modal","_Modal2","CrossIcon","color","ControlledModal","onClose","contentClassName","scrollable","millisecondsInSecond","constructFromSymbol","constructFrom","toDate","argument","normalizeDates","dates","normalize","startOfDay","_date","constructNow","isSameDay","laterDate","earlierDate","dateLeft_","dateRight_","isToday","secondsToMilliseconds","seconds","paymentPlanShorthandName","payment","deferredDays","deferredMonths","installmentsCount","withNoFee","paymentPlanInfoText","eligible","minAmount","maxAmount","paymentPlan","deferredDaysCount","areInstallmentsOfSameAmount","installment","EligibilityPlansButtons","eligibilityPlans","currentPlanIndex","setCurrentPlanIndex","eligibilityPlan","Installment","Schedule","AlmaLogo","svgProps","AmexCard","CbCard","MasterCard","VisaCard","Cards","cards","uniqueCards","card","StrongText","Info","isCurrentPlanP1X","Title","isSomePlanDeferred","DesktopModal","MobileModal","EligibilityModal","initialPlanIndex","ModalComponent","eligiblePlans","ModalContainer","apiData","Loader","useButtonAnimation","iterateValues","transitionDelay","current","setCurrent","setUpdate","timeout","isMounted","currentIndex","getIndexOfActivePlan","suggestedPaymentPlan","suggestedPaymentPlanArray","foundIndex","planFound","VERY_LONG_TIME_IN_MS","DEFAULT_TRANSITION_TIME","PaymentPlanWidget","hideIfNotEligible","monochrome","hideBorder","onModalClose","activePlanIndex","isSuggestedPaymentPlanSpecified","isTransitionSpecified","setIsOpen","openModal","closeModal","eligiblePlanKeys","realTransitionTime","onHover","onLeave","getIndexWithinEligiblePlans","planIndex","planKey","handleOpenModal","isCurrent","rootMap","addWidget","widget","containerDiv","existingRoot","clickableSelector","close","renderModal","WidgetsController","ApiMode","Widgets","initialize","mode","Utils","utils.priceToCents","utils.priceFromCents","utils.formatCents"],"mappings":"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AAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,KACA,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,GACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,KACA,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,KACA,KACA,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,GAAM,CACF,IACA,KACA,GACH,EACD,GAAM,CACF,IACA,KACA,KACA,GACH,EACD,GAAM,CACF,IACA,IACH,EACD,GAAM,CACF,IACA,IACA,KACA,IACH,EACD,GAAM,CACF,IACA,KACA,IACA,IACH,EACD,GAAM,CACF,IACA,GACH,EACD,QAAS,CACL,IACA,IACA,KACA,IACH,EACD,SAAU,CACN,IACA,KACA,KACA,GACH,EACD,QAAS,CACL,IACA,IACA,IACH,EACD,SAAU,CACN,IACA,KACA,IACA,IACH,EACD,QAAS,CACL,IACA,KACA,IACA,IACH,EACD,QAAS,CACL,IACA,IACA,KACA,IACH,EACD,QAAS,CACL,IACA,KACA,IACA,IACH,EACD,QAAS,CACL,IACA,IACA,KACA,IACH,EACD,QAAS,CACL,IACA,IACA,KACA,IACH,EACD,QAAS,CACL,IACA,IACA,KACA,IACH,EACD,QAAS,CACL,IACA,IACA,IACH,EACD,QAAS,CACL,IACA,IACA,IACH,EACD,QAAS,CACL,KACA,KACA,IACA,GACH,EACD,QAAS,CACL,KACA,IACA,GACH,EACD,QAAS,CACL,IACA,IACA,IACH,EACD,QAAS,CACL,IACA,IACA,IACH,EACD,QAAS,CACL,KACA,IACA,GACH,EACD,QAAS,CACL,KACA,IACA,GACH,EACD,QAAS,CACL,KACA,KACA,IACA,GACH,EACD,QAAS,CACL,KACA,KACA,IACA,GACH,EACD,QAAS,CACL,KACA,IACA,KACA,GACH,EACD,QAAS,CACL,KACA,IACA,GACH,EACD,QAAS,CACL,IACA,KACA,KACA,GACR,CACA,ECh4CO,SAASC,GAAetC,EAAUuC,EAAQ,CAE7C,QADIC,EAAe,GACVC,EAAa,EAAGA,EAAazC,EAAS,OAAQyC,IAAc,CACjE,IAAIC,EAAc1C,EAAS,OAAOyC,CAAU,EAC5C,GAAIC,IAAgB,IAAK,CAErB,Q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NA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACLA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACrBA,IAAM,OACNA,IAAM,OACNA,IAAM,OACLA,GAAK,OAAUA,GAAK,OAC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","x_google_ignoreList":[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,51,52,53,54,55,56,57,58,59,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,80,81,82,83,84,85,86,87,88]}
|