{"version":3,"file":"index-64e12e99.js","sources":["../../node_modules/react/cjs/react.production.min.js","../../node_modules/react/index.js","../../node_modules/react-dom/node_modules/scheduler/cjs/scheduler.production.min.js","../../node_modules/react-dom/node_modules/scheduler/index.js","../../node_modules/react-dom/cjs/react-dom.production.min.js","../../node_modules/react-dom/index.js","../../node_modules/react-dom/client.js","../../node_modules/react-justanother-router/dist/historyEvents.js","../../node_modules/react-justanother-router/dist/monkeyPatch.js","../../node_modules/react-justanother-router/dist/Link.js","../../node_modules/react-justanother-router/dist/useRouter.js","../../node_modules/react-justanother-router/dist/useNavigate.js","../../node_modules/react-justanother-router/dist/Redirect.js","../../node_modules/has-symbols/shams.js","../../node_modules/has-symbols/index.js","../../node_modules/has-proto/index.js","../../node_modules/function-bind/implementation.js","../../node_modules/function-bind/index.js","../../node_modules/hasown/index.js","../../node_modules/get-intrinsic/index.js","../../node_modules/has-property-descriptors/index.js","../../node_modules/gopd/index.js","../../node_modules/define-data-property/index.js","../../node_modules/set-function-length/index.js","../../node_modules/call-bind/index.js","../../node_modules/call-bind/callBound.js","../../__vite-browser-external","../../node_modules/object-inspect/index.js","../../node_modules/side-channel/index.js","../../node_modules/qs/lib/formats.js","../../node_modules/qs/lib/utils.js","../../node_modules/qs/lib/stringify.js","../../node_modules/qs/lib/parse.js","../../node_modules/qs/lib/index.js","../../node_modules/path-to-regexp/dist.es2015/index.js","../../node_modules/react-justanother-router/dist/utils.js","../../node_modules/react-justanother-router/dist/useLocation.js","../../node_modules/react-justanother-router/dist/RouterRender.js","../../node_modules/react-justanother-router/dist/Router.js","../../node_modules/react-justanother-router/dist/history.js","../../node_modules/react-justanother-router/dist/historyStatic.js","../../node_modules/react-justanother-router/dist/routing.js","../../node_modules/react-justanother-router/dist/index.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../node_modules/react-i18next/dist/es/utils.js","../../node_modules/react-i18next/dist/es/unescape.js","../../node_modules/react-i18next/dist/es/defaults.js","../../node_modules/react-i18next/dist/es/i18nInstance.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/react-i18next/dist/es/initReactI18next.js","../../node_modules/react-i18next/dist/es/context.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../../node_modules/react-i18next/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../../node_modules/react-i18next/dist/es/useTranslation.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/inherits.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../../node_modules/i18next/node_modules/@babel/runtime/helpers/esm/toArray.js","../../node_modules/i18next/dist/esm/i18next.js","../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../node_modules/react/jsx-runtime.js","../../react/jsx-runtime","../../node_modules/@rubin-dev/goblin/dist/ui/esm/index.js","../../src/component/user/AuthRestoreConfirmForm.tsx","../../src/component/user/AuthRegistrationForm.tsx","../../src/shared/libs/utils/router.ts","../../node_modules/tslib/tslib.es6.mjs","../../node_modules/ts-invariant/lib/invariant.js","../../node_modules/@apollo/client/version.js","../../node_modules/@apollo/client/utilities/globals/maybe.js","../../node_modules/@apollo/client/utilities/globals/global.js","../../node_modules/@apollo/client/utilities/common/makeUniqueId.js","../../node_modules/@apollo/client/utilities/common/stringifyForDisplay.js","../../node_modules/@apollo/client/utilities/globals/invariantWrappers.js","../../node_modules/graphql/jsutils/devAssert.mjs","../../node_modules/graphql/jsutils/isObjectLike.mjs","../../node_modules/graphql/jsutils/invariant.mjs","../../node_modules/graphql/language/location.mjs","../../node_modules/graphql/language/printLocation.mjs","../../node_modules/graphql/error/GraphQLError.mjs","../../node_modules/graphql/error/syntaxError.mjs","../../node_modules/graphql/language/ast.mjs","../../node_modules/graphql/language/directiveLocation.mjs","../../node_modules/graphql/language/kinds.mjs","../../node_modules/graphql/language/characterClasses.mjs","../../node_modules/graphql/language/blockString.mjs","../../node_modules/graphql/language/tokenKind.mjs","../../node_modules/graphql/language/lexer.mjs","../../node_modules/graphql/jsutils/inspect.mjs","../../node_modules/graphql/jsutils/instanceOf.mjs","../../node_modules/graphql/language/source.mjs","../../node_modules/graphql/language/parser.mjs","../../node_modules/graphql/language/printString.mjs","../../node_modules/graphql/language/visitor.mjs","../../node_modules/graphql/language/printer.mjs","../../node_modules/graphql/language/predicates.mjs","../../node_modules/@apollo/client/utilities/graphql/directives.js","../../node_modules/@wry/trie/lib/index.js","../../node_modules/@apollo/client/utilities/common/canUse.js","../../node_modules/@apollo/client/utilities/common/objects.js","../../node_modules/@apollo/client/utilities/graphql/fragments.js","../../node_modules/@apollo/client/utilities/graphql/storeUtils.js","../../node_modules/@apollo/client/utilities/graphql/getFromAST.js","../../node_modules/@apollo/client/utilities/graphql/DocumentTransform.js","../../node_modules/@apollo/client/utilities/graphql/print.js","../../node_modules/@apollo/client/utilities/common/arrays.js","../../node_modules/@apollo/client/utilities/graphql/transform.js","../../node_modules/@apollo/client/utilities/common/mergeDeep.js","../../node_modules/zen-observable-ts/module.js","../../node_modules/symbol-observable/es/ponyfill.js","../../node_modules/symbol-observable/es/index.js","../../node_modules/@apollo/client/utilities/observables/Observable.js","../../node_modules/@apollo/client/utilities/common/cloneDeep.js","../../node_modules/@apollo/client/utilities/common/maybeDeepFreeze.js","../../node_modules/@apollo/client/utilities/observables/iteration.js","../../node_modules/@apollo/client/utilities/observables/asyncMap.js","../../node_modules/@apollo/client/utilities/observables/subclassing.js","../../node_modules/@apollo/client/utilities/observables/Concast.js","../../node_modules/@apollo/client/utilities/common/incrementalResult.js","../../node_modules/@apollo/client/utilities/common/errorHandling.js","../../node_modules/@apollo/client/utilities/common/compact.js","../../node_modules/@apollo/client/utilities/common/mergeOptions.js","../../node_modules/@apollo/client/link/utils/fromError.js","../../node_modules/@apollo/client/link/utils/toPromise.js","../../node_modules/@apollo/client/link/utils/fromPromise.js","../../node_modules/@apollo/client/link/utils/throwServerError.js","../../node_modules/@apollo/client/link/utils/validateOperation.js","../../node_modules/@apollo/client/link/utils/createOperation.js","../../node_modules/@apollo/client/link/utils/transformOperation.js","../../node_modules/@apollo/client/link/utils/filterOperationVariables.js","../../node_modules/@apollo/client/link/core/ApolloLink.js","../../node_modules/@apollo/client/link/core/empty.js","../../node_modules/@apollo/client/link/core/from.js","../../node_modules/@apollo/client/link/core/split.js","../../node_modules/@apollo/client/link/core/concat.js","../../node_modules/@apollo/client/link/core/execute.js","../../node_modules/@apollo/client/link/http/iterators/async.js","../../node_modules/@apollo/client/link/http/iterators/nodeStream.js","../../node_modules/@apollo/client/link/http/iterators/promise.js","../../node_modules/@apollo/client/link/http/iterators/reader.js","../../node_modules/@apollo/client/link/http/responseIterator.js","../../node_modules/@apollo/client/errors/index.js","../../node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js","../../node_modules/@apollo/client/link/http/serializeFetchParameter.js","../../node_modules/@apollo/client/link/http/selectHttpOptionsAndBody.js","../../node_modules/@apollo/client/link/http/checkFetcher.js","../../node_modules/@apollo/client/link/http/createSignalIfSupported.js","../../node_modules/@apollo/client/link/http/selectURI.js","../../node_modules/@apollo/client/link/http/rewriteURIForGET.js","../../node_modules/@apollo/client/link/http/createHttpLink.js","../../node_modules/@apollo/client/link/http/HttpLink.js","../../node_modules/@wry/equality/lib/index.js","../../node_modules/optimism/node_modules/@wry/trie/lib/index.js","../../node_modules/@wry/caches/lib/strong.js","../../node_modules/@wry/context/lib/slot.js","../../node_modules/optimism/lib/context.js","../../node_modules/optimism/lib/helpers.js","../../node_modules/optimism/lib/entry.js","../../node_modules/optimism/lib/dep.js","../../node_modules/optimism/lib/index.js","../../node_modules/@apollo/client/cache/core/cache.js","../../node_modules/@apollo/client/cache/core/types/Cache.js","../../node_modules/@apollo/client/cache/core/types/common.js","../../node_modules/@apollo/client/cache/inmemory/helpers.js","../../node_modules/@apollo/client/cache/inmemory/entityStore.js","../../node_modules/@apollo/client/cache/inmemory/object-canon.js","../../node_modules/@apollo/client/cache/inmemory/readFromStore.js","../../node_modules/@apollo/client/cache/inmemory/reactiveVars.js","../../node_modules/@apollo/client/cache/inmemory/key-extractor.js","../../node_modules/@apollo/client/cache/inmemory/policies.js","../../node_modules/@apollo/client/cache/inmemory/writeToStore.js","../../node_modules/@apollo/client/cache/inmemory/inMemoryCache.js","../../node_modules/@apollo/client/core/networkStatus.js","../../node_modules/@apollo/client/core/equalByQuery.js","../../node_modules/@apollo/client/core/ObservableQuery.js","../../node_modules/@apollo/client/core/LocalState.js","../../node_modules/@apollo/client/core/QueryInfo.js","../../node_modules/@apollo/client/core/QueryManager.js","../../node_modules/@apollo/client/core/ApolloClient.js","../../node_modules/graphql-tag/lib/index.js","../../node_modules/@apollo/client/core/index.js","../../node_modules/@apollo/client/react/context/ApolloContext.js","../../node_modules/@apollo/client/react/context/ApolloProvider.js","../../node_modules/@apollo/client/react/hooks/useApolloClient.js","../../node_modules/@apollo/client/react/hooks/useSyncExternalStore.js","../../node_modules/@apollo/client/react/parser/index.js","../../node_modules/@apollo/client/react/hooks/useQuery.js","../../node_modules/@apollo/client/react/hooks/useLazyQuery.js","../../node_modules/@apollo/client/react/hooks/useMutation.js","../../src/apolloGenerated.ts","../../node_modules/bitcoin-address-validation/lib/index.esm.js","../../packages/validation/btc.ts","../../packages/validation/eth.ts","../../packages/validation/tron.ts","../../packages/validation/detectNetwork.ts","../../src/shared/libs/utils/validator.ts","../../src/shared/libs/const/global.const.ts","../../src/shared/libs/const/lang.const.ts","../../src/shared/libs/hooks/useAddressValidate.ts","../../src/shared/libs/hooks/useTransactionValidate.ts","../../src/component/user/AuthLoginFormContainer.tsx","../../src/component/user/AuthRestoreForm.tsx","../../node_modules/js-cookie/dist/js.cookie.mjs","../../node_modules/@apollo/client/link/context/index.js","../../node_modules/@apollo/client/link/error/index.js","../../src/core/service/ApolloErrorService.ts","../../src/apollo/auth.ts","../../node_modules/extract-files/public/ReactNativeFile.js","../../node_modules/extract-files/public/isExtractableFile.js","../../node_modules/extract-files/public/extractFiles.js","../../node_modules/apollo-upload-client/public/formDataAppendFile.js","../../node_modules/apollo-upload-client/public/isExtractableFile.js","../../node_modules/apollo-upload-client/public/createUploadLink.js","../../src/apollo/cache.ts","../../src/config.ts","../../src/apollo/index.ts","../../src/query/billing.ts","../../src/query/fragments.ts","../../src/query/registrationConfirm.ts","../../src/query/restoreCheck.ts","../../src/query/restore.ts","../../src/query/me.ts","../../src/query/blockchain.ts","../../src/query/login.ts","../../src/query/subscription.ts","../../src/query/explorer.ts","../../src/query/restoreConfirm.ts","../../src/query/registration.ts","../../src/query/refreshToken.ts","../../src/query/userView.ts","../../src/query/marking.ts","../../src/core/utils/auth.ts","../../src/component/user/AuthLoginForm.tsx","../../node_modules/classnames/index.js","../../node_modules/classnames-bem/dist/index.js","../../src/component/AppError.tsx","../../src/component/explorer/ExplorerAddressWallet.tsx","../../src/core/utils/string.ts","../../src/core/helpers/address.ts","../../src/component/explorer/ExplorerAddressTransactionTitle.tsx","../../node_modules/bignumber.js/bignumber.mjs","../../src/component/NewRisk/ui/RiskDot/RiskScoreInformation.tsx","../../src/component/NewRisk/ui/RiskDot/RiskDot.tsx","../../node_modules/luxon/src/errors.js","../../node_modules/luxon/src/impl/formats.js","../../node_modules/luxon/src/impl/util.js","../../node_modules/luxon/src/impl/english.js","../../node_modules/luxon/src/impl/formatter.js","../../node_modules/luxon/src/impl/invalid.js","../../node_modules/luxon/src/zone.js","../../node_modules/luxon/src/zones/systemZone.js","../../node_modules/luxon/src/zones/IANAZone.js","../../node_modules/luxon/src/zones/fixedOffsetZone.js","../../node_modules/luxon/src/zones/invalidZone.js","../../node_modules/luxon/src/impl/zoneUtil.js","../../node_modules/luxon/src/settings.js","../../node_modules/luxon/src/impl/locale.js","../../node_modules/luxon/src/impl/regexParser.js","../../node_modules/luxon/src/duration.js","../../node_modules/luxon/src/interval.js","../../node_modules/luxon/src/info.js","../../node_modules/luxon/src/impl/diff.js","../../node_modules/luxon/src/impl/digits.js","../../node_modules/luxon/src/impl/tokenParser.js","../../node_modules/luxon/src/impl/conversions.js","../../node_modules/luxon/src/datetime.js","../../src/core/utils/timestamp.ts","../../src/shared/ui/TableCell/TableCellDate/TableCellDate.tsx","../../src/shared/ui/TableCell/TableCellHash/TableCellHash.tsx","../../src/core/helpers/dom.ts","../../src/core/hooks/useIsEllipsis.ts","../../packages/amount/amount.ts","../../src/shared/ui/TableCell/TableCellAmount/TableCellAmount.tsx","../../src/shared/ui/TableCell/TableCellToken/TableCellToken.tsx","../../src/shared/ui/TableCell/TableCellCheckbox/TableCellCheckbox.tsx","../../src/shared/ui/TableCell/TableCellChevron/TableCellChevron.tsx","../../src/shared/ui/icons/PoliceIcon.tsx","../../src/shared/ui/icons/ArrowRightDirectionIcon.tsx","../../src/shared/ui/icons/NetworkIcon.tsx","../../src/shared/ui/icons/ArrowRightToLeftIcon.tsx","../../src/shared/ui/icons/ArrowLeftToRightIcon.tsx","../../src/shared/ui/icons/IconAnalyzer.tsx","../../src/shared/ui/icons/IconApi.tsx","../../src/shared/ui/icons/IconMarkup.tsx","../../src/shared/ui/icons/CodeIcon.tsx","../../src/shared/ui/icons/RightIcon.tsx","../../src/shared/ui/icons/IconUser.tsx","../../src/shared/ui/ListItem/ListItem.tsx","../../src/shared/ui/CardItem/CardItem.tsx","../../src/images/logo/matchsystem/logo.png","../../src/images/logo/matchsystem/logo-dense.svg","../../src/images/logo/plainchain/logo.png","../../src/images/logo/hermespro/hermespro.png","../../src/shared/ui/Logo/Logo.tsx","../../src/shared/ui/Container/Container.tsx","../../node_modules/devextreme/esm/core/utils/type.js","../../node_modules/devextreme/esm/core/utils/extend.js","../../node_modules/devextreme/esm/core/utils/iterator.js","../../node_modules/devextreme/esm/core/utils/console.js","../../node_modules/devextreme/esm/core/utils/string.js","../../node_modules/devextreme/esm/core/version.js","../../node_modules/devextreme/esm/core/utils/error.js","../../node_modules/devextreme/esm/core/errors.js","../../node_modules/devextreme/esm/core/class.js","../../node_modules/devextreme/esm/core/utils/dependency_injector.js","../../node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/devextreme/esm/core/config.js","../../node_modules/devextreme/esm/core/guid.js","../../node_modules/devextreme/esm/core/utils/callbacks.js","../../node_modules/devextreme/esm/core/utils/deferred.js","../../node_modules/devextreme/esm/core/utils/variable_wrapper.js","../../node_modules/devextreme/esm/core/utils/object.js","../../node_modules/devextreme/esm/core/utils/data.js","../../node_modules/devextreme/esm/core/utils/common.js","../../node_modules/devextreme/esm/core/utils/shadow_dom.js","../../node_modules/devextreme/esm/core/dom_adapter.js","../../node_modules/devextreme/esm/core/memorized_callbacks.js","../../node_modules/devextreme/esm/events/core/event_registrator_callbacks.js","../../node_modules/devextreme/esm/core/utils/window.js","../../node_modules/devextreme/esm/events/core/hook_touch_props.js","../../node_modules/devextreme/esm/core/utils/call_once.js","../../node_modules/devextreme/esm/events/core/events_engine.js","../../node_modules/devextreme/esm/core/element_data.js","../../node_modules/devextreme/esm/core/utils/inflector.js","../../node_modules/devextreme/esm/core/utils/style.js","../../node_modules/devextreme/esm/core/utils/size.js","../../node_modules/devextreme/esm/core/utils/html_parser.js","../../node_modules/devextreme/esm/core/renderer_base.js","../../node_modules/devextreme/esm/core/renderer.js","../../node_modules/devextreme/esm/core/component_registrator_callbacks.js","../../node_modules/devextreme/esm/events/core/event_registrator.js","../../node_modules/devextreme/esm/events/remove.js","../../node_modules/devextreme/esm/core/utils/public_component.js","../../node_modules/devextreme/esm/core/component_registrator.js","../../node_modules/devextreme/esm/viz/components/consts.js","../../node_modules/devextreme/esm/core/utils/dom.js","../../node_modules/devextreme/esm/core/utils/svg.js","../../node_modules/devextreme/esm/animation/frame.js","../../node_modules/devextreme/esm/viz/core/renderers/animation.js","../../node_modules/devextreme/esm/core/utils/math.js","../../node_modules/devextreme/esm/renovation/ui/common/utils/date/toMilliseconds.js","../../node_modules/devextreme/esm/core/utils/date.js","../../node_modules/devextreme/esm/color.js","../../node_modules/devextreme/esm/viz/core/utils.js","../../node_modules/devextreme/esm/viz/core/renderers/renderer.js","../../node_modules/devextreme/esm/localization/utils.js","../../node_modules/devextreme/esm/localization/ldml/number.js","../../node_modules/devextreme/esm/localization/currency.js","../../node_modules/devextreme/esm/localization/cldr-data/parent_locales.js","../../node_modules/devextreme/esm/localization/parentLocale.js","../../node_modules/devextreme/esm/localization/core.js","../../node_modules/devextreme/esm/localization/open_xml_currency_format.js","../../node_modules/devextreme/esm/localization/cldr-data/accounting_formats.js","../../node_modules/devextreme/esm/localization/intl/number.js","../../node_modules/devextreme/esm/localization/number.js","../../node_modules/devextreme/esm/localization/ldml/date.formatter.js","../../node_modules/devextreme/esm/localization/ldml/date.format.js","../../node_modules/devextreme/esm/localization/ldml/date.parser.js","../../node_modules/devextreme/esm/localization/default_date_names.js","../../node_modules/devextreme/esm/localization/cldr-data/first_day_of_week_data.js","../../node_modules/devextreme/esm/localization/intl/date.js","../../node_modules/devextreme/esm/localization/date.js","../../node_modules/devextreme/esm/format_helper.js","../../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/devextreme/esm/viz/core/plaque.js","../../node_modules/devextreme/esm/viz/core/tooltip.js","../../node_modules/devextreme/esm/core/utils/ready_callbacks.js","../../node_modules/devextreme/esm/core/utils/resize_callbacks.js","../../node_modules/devextreme/esm/core/events_strategy.js","../../node_modules/devextreme/esm/core/utils/storage.js","../../node_modules/devextreme/esm/core/utils/view_port.js","../../node_modules/devextreme/esm/core/devices.js","../../node_modules/devextreme/esm/core/utils/support.js","../../node_modules/devextreme/esm/core/utils/browser.js","../../node_modules/devextreme/esm/events/utils/add_namespace.js","../../node_modules/devextreme/esm/ui/widget/selectors.js","../../node_modules/devextreme/esm/events/utils/index.js","../../node_modules/devextreme/esm/events/pointer/base.js","../../node_modules/devextreme/esm/events/pointer/touch.js","../../node_modules/devextreme/esm/events/pointer/observer.js","../../node_modules/devextreme/esm/events/pointer/mouse.js","../../node_modules/devextreme/esm/events/pointer/mouse_and_touch.js","../../node_modules/devextreme/esm/events/pointer.js","../../node_modules/devextreme/esm/core/utils/array.js","../../node_modules/devextreme/esm/events/core/emitter.js","../../node_modules/devextreme/esm/events/gesture/emitter.gesture.js","../../node_modules/devextreme/esm/events/core/wheel.js","../../node_modules/devextreme/esm/events/core/emitter_registrator.js","../../node_modules/devextreme/esm/events/drag.js","../../node_modules/devextreme/esm/viz/core/annotations.js","../../node_modules/devextreme/esm/viz/translators/range.js","../../node_modules/devextreme/esm/viz/translators/translator1d.js","../../node_modules/devextreme/esm/viz/core/layout_element.js","../../node_modules/devextreme/esm/viz/chart_components/layout_manager.js","../../node_modules/devextreme/esm/events/utils/event_nodes_disposing.js","../../node_modules/devextreme/esm/events/click.js","../../node_modules/devextreme/esm/viz/chart_components/tracker.js","../../node_modules/devextreme/esm/viz/palette.js","../../node_modules/devextreme/esm/ui/themes_callback.js","../../node_modules/devextreme/esm/ui/widget/ui.errors.js","../../node_modules/devextreme/esm/ui/themes.js","../../node_modules/devextreme/esm/viz/core/themes/generic.light.js","../../node_modules/devextreme/esm/viz/core/themes/generic.carmine.js","../../node_modules/devextreme/esm/viz/core/themes/generic.dark.js","../../node_modules/devextreme/esm/viz/core/themes/generic.contrast.js","../../node_modules/devextreme/esm/viz/core/themes/generic.darkmoon.js","../../node_modules/devextreme/esm/viz/core/themes/generic.darkviolet.js","../../node_modules/devextreme/esm/viz/core/themes/generic.greenmist.js","../../node_modules/devextreme/esm/viz/core/themes/generic.softblue.js","../../node_modules/devextreme/esm/viz/core/themes/material.js","../../node_modules/devextreme/esm/viz/themes.js","../../node_modules/devextreme/esm/viz/core/base_theme_manager.js","../../node_modules/devextreme/esm/viz/components/chart_theme_manager.js","../../node_modules/devextreme/esm/core/utils/date_serialization.js","../../node_modules/devextreme/esm/viz/components/parse_utils.js","../../node_modules/devextreme/esm/viz/components/data_validator.js","../../node_modules/devextreme/esm/viz/core/title.js","../../node_modules/devextreme/esm/viz/components/legend.js","../../node_modules/devextreme/esm/data/utils.js","../../node_modules/devextreme/esm/data/errors.js","../../node_modules/devextreme/esm/data/array_utils.js","../../node_modules/devextreme/esm/data/array_query.js","../../node_modules/devextreme/esm/data/store_helper.js","../../node_modules/devextreme/esm/data/abstract_store.js","../../node_modules/devextreme/esm/data/custom_store.js","../../node_modules/devextreme/esm/core/utils/queue.js","../../node_modules/devextreme/esm/core/http_request.js","../../node_modules/devextreme/esm/core/utils/ajax.js","../../node_modules/devextreme/esm/data/query_adapters.js","../../node_modules/devextreme/esm/data/remote_query.js","../../node_modules/devextreme/esm/data/query_implementation.js","../../node_modules/devextreme/esm/data/query.js","../../node_modules/devextreme/esm/data/array_store.js","../../node_modules/devextreme/esm/data/data_source/utils.js","../../node_modules/devextreme/esm/data/data_source/operation_manager.js","../../node_modules/devextreme/esm/data/data_source/data_source.js","../../node_modules/devextreme/esm/ui/collection/data_controller.js","../../node_modules/devextreme/esm/data_helper.js","../../node_modules/devextreme/esm/viz/core/data_source.js","../../node_modules/devextreme/esm/exporter/file_saver.js","../../node_modules/jszip/dist/jszip.min.js","../../node_modules/devextreme/esm/localization/language_codes.js","../../node_modules/devextreme/esm/exporter/excel_format_converter.js","../../node_modules/devextreme/esm/exporter/excel/excel.tag_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.cell_alignment_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.color_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.pattern_fill_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.fill_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.font_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.cell_format_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.number_format_helper.js","../../node_modules/devextreme/esm/exporter/excel/excel.file.js","../../node_modules/devextreme/esm/exporter/excel_creator.js","../../node_modules/devextreme/esm/exporter/image_creator.js","../../node_modules/devextreme/esm/exporter/svg_creator.js","../../node_modules/devextreme/esm/exporter/pdf_creator.js","../../node_modules/devextreme/esm/exporter.js","../../node_modules/devextreme/esm/localization/default_messages.js","../../node_modules/devextreme/esm/localization/message.js","../../node_modules/devextreme/esm/events/hover.js","../../node_modules/devextreme/esm/viz/core/export.js","../../node_modules/devextreme/esm/viz/core/loading_indicator.js","../../node_modules/devextreme/esm/localization.js","../../node_modules/devextreme/esm/viz/series/helpers/display_format_parser.js","../../node_modules/devextreme/esm/viz/series/points/label.js","../../node_modules/devextreme/esm/viz/series/points/symbol_point.js","../../node_modules/devextreme/esm/viz/series/points/bar_point.js","../../node_modules/devextreme/esm/viz/series/points/bubble_point.js","../../node_modules/devextreme/esm/viz/series/points/pie_point.js","../../node_modules/devextreme/esm/viz/series/points/range_symbol_point.js","../../node_modules/devextreme/esm/viz/series/points/range_bar_point.js","../../node_modules/devextreme/esm/viz/series/points/candlestick_point.js","../../node_modules/devextreme/esm/viz/series/points/stock_point.js","../../node_modules/devextreme/esm/viz/series/points/polar_point.js","../../node_modules/devextreme/esm/viz/series/points/base_point.js","../../node_modules/devextreme/esm/viz/series/helpers/range_data_calculator.js","../../node_modules/devextreme/esm/viz/series/scatter_series.js","../../node_modules/devextreme/esm/viz/series/line_series.js","../../node_modules/devextreme/esm/viz/series/area_series.js","../../node_modules/devextreme/esm/viz/series/bar_series.js","../../node_modules/devextreme/esm/viz/series/range_series.js","../../node_modules/devextreme/esm/viz/series/bubble_series.js","../../node_modules/devextreme/esm/viz/series/pie_series.js","../../node_modules/devextreme/esm/viz/series/financial_series.js","../../node_modules/devextreme/esm/viz/series/stacked_series.js","../../node_modules/devextreme/esm/viz/series/base_series.js","../../node_modules/devextreme/esm/core/utils/comparator.js","../../node_modules/devextreme/esm/core/options/utils.js","../../node_modules/devextreme/esm/core/options/option_manager.js","../../node_modules/devextreme/esm/core/options/index.js","../../node_modules/devextreme/esm/core/action.js","../../node_modules/devextreme/esm/core/postponed_operations.js","../../node_modules/devextreme/esm/core/component.js","../../node_modules/devextreme/esm/events/visibility_change.js","../../node_modules/devextreme/esm/core/templates/template_base.js","../../node_modules/devextreme/esm/core/templates/function_template.js","../../node_modules/devextreme/esm/core/templates/empty_template.js","../../node_modules/devextreme/esm/core/element.js","../../node_modules/devextreme/esm/core/templates/child_default_template.js","../../node_modules/devextreme/esm/core/templates/template_engine_registry.js","../../node_modules/devextreme/esm/core/templates/template_engines.js","../../node_modules/devextreme/esm/core/templates/template.js","../../node_modules/devextreme/esm/core/utils/template_manager.js","../../node_modules/devextreme/esm/core/template_manager.js","../../node_modules/devextreme/esm/events/core/keyboard_processor.js","../../node_modules/devextreme/esm/events/short.js","../../node_modules/devextreme/esm/core/dom_component.js","../../node_modules/devextreme/esm/viz/core/errors_warnings.js","../../node_modules/devextreme/esm/core/resize_observer.js","../../node_modules/devextreme/esm/viz/core/base_widget.utils.js","../../node_modules/devextreme/esm/viz/core/helpers.js","../../node_modules/devextreme/esm/viz/core/layout.js","../../node_modules/devextreme/esm/viz/utils.js","../../node_modules/devextreme/esm/__internal/viz/core/m_base_widget.js","../../node_modules/devextreme/esm/__internal/viz/chart_components/rolling_stock.js","../../node_modules/devextreme/esm/__internal/viz/chart_components/m_base_chart.js","../../node_modules/devextreme/esm/__internal/viz/m_pie_chart.js","../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../node_modules/prop-types/factoryWithThrowingShims.js","../../node_modules/prop-types/index.js","../../node_modules/devextreme/esm/events/index.js","../../node_modules/devextreme-react/core/config.js","../../node_modules/devextreme-react/core/helpers.js","../../node_modules/devextreme-react/core/template-wrapper.js","../../node_modules/devextreme-react/core/dx-template.js","../../node_modules/devextreme-react/core/templates-manager.js","../../node_modules/devextreme-react/core/templates-renderer.js","../../node_modules/devextreme-react/core/templates-store.js","../../node_modules/devextreme-react/core/configuration/utils.js","../../node_modules/devextreme-react/core/configuration/tree.js","../../node_modules/devextreme-react/core/configuration/comparer.js","../../node_modules/devextreme-react/core/options-manager.js","../../node_modules/devextreme-react/core/widget-config.js","../../node_modules/devextreme-react/core/template.js","../../node_modules/devextreme-react/core/configuration/react/element.js","../../node_modules/devextreme-react/core/configuration/react/templates.js","../../node_modules/devextreme-react/core/configuration/react/tree.js","../../node_modules/devextreme-react/core/component-base.js","../../node_modules/devextreme-react/core/extension-component.js","../../node_modules/devextreme-react/core/component.js","../../node_modules/devextreme-react/core/nested-option.js","../../node_modules/devextreme-react/pie-chart.js","../../src/shared/ui/PieChart/PieChart.tsx","../../src/contexts/AppContext.tsx","../../src/shared/ui/LangSelect/LangSelect.tsx","../../src/shared/ui/ColorPicker/ColorItem.tsx","../../src/shared/ui/ColorPicker/ColorPicker.tsx","../../src/shared/ui/Blur/Blur.tsx","../../src/shared/ui/InstructionsSelect/constants.ts","../../src/shared/ui/InstructionsSelect/InstructionsSelect.tsx","../../node_modules/@tanstack/query-core/build/modern/subscribable.js","../../node_modules/@tanstack/query-core/build/modern/utils.js","../../node_modules/@tanstack/query-core/build/modern/focusManager.js","../../node_modules/@tanstack/query-core/build/modern/onlineManager.js","../../node_modules/@tanstack/query-core/build/modern/retryer.js","../../node_modules/@tanstack/query-core/build/modern/notifyManager.js","../../node_modules/@tanstack/query-core/build/modern/removable.js","../../node_modules/@tanstack/query-core/build/modern/query.js","../../node_modules/@tanstack/query-core/build/modern/queryCache.js","../../node_modules/@tanstack/query-core/build/modern/mutation.js","../../node_modules/@tanstack/query-core/build/modern/mutationCache.js","../../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../../node_modules/@tanstack/query-core/build/modern/queryClient.js","../../node_modules/@tanstack/query-core/build/modern/queryObserver.js","../../node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js","../../node_modules/@tanstack/react-query/build/modern/isRestoring.js","../../node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js","../../node_modules/@tanstack/react-query/build/modern/utils.js","../../node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js","../../node_modules/@tanstack/react-query/build/modern/suspense.js","../../node_modules/@tanstack/react-query/build/modern/useBaseQuery.js","../../node_modules/@tanstack/react-query/build/modern/useQuery.js","../../node_modules/@tanstack/react-query/build/modern/useMutation.js","../../packages/sdk/risk/index.ts","../../packages/sdk/dashboard/index.ts","../../node_modules/axios/lib/helpers/bind.js","../../node_modules/axios/lib/utils.js","../../node_modules/axios/lib/core/AxiosError.js","../../node_modules/axios/lib/helpers/null.js","../../node_modules/axios/lib/helpers/toFormData.js","../../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../../node_modules/axios/lib/helpers/buildURL.js","../../node_modules/axios/lib/core/InterceptorManager.js","../../node_modules/axios/lib/defaults/transitional.js","../../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../../node_modules/axios/lib/platform/browser/classes/FormData.js","../../node_modules/axios/lib/platform/browser/classes/Blob.js","../../node_modules/axios/lib/platform/browser/index.js","../../node_modules/axios/lib/platform/common/utils.js","../../node_modules/axios/lib/platform/index.js","../../node_modules/axios/lib/helpers/toURLEncodedForm.js","../../node_modules/axios/lib/helpers/formDataToJSON.js","../../node_modules/axios/lib/defaults/index.js","../../node_modules/axios/lib/helpers/parseHeaders.js","../../node_modules/axios/lib/core/AxiosHeaders.js","../../node_modules/axios/lib/core/transformData.js","../../node_modules/axios/lib/cancel/isCancel.js","../../node_modules/axios/lib/cancel/CanceledError.js","../../node_modules/axios/lib/core/settle.js","../../node_modules/axios/lib/helpers/cookies.js","../../node_modules/axios/lib/helpers/isAbsoluteURL.js","../../node_modules/axios/lib/helpers/combineURLs.js","../../node_modules/axios/lib/core/buildFullPath.js","../../node_modules/axios/lib/helpers/isURLSameOrigin.js","../../node_modules/axios/lib/helpers/parseProtocol.js","../../node_modules/axios/lib/helpers/speedometer.js","../../node_modules/axios/lib/adapters/xhr.js","../../node_modules/axios/lib/adapters/adapters.js","../../node_modules/axios/lib/core/dispatchRequest.js","../../node_modules/axios/lib/core/mergeConfig.js","../../node_modules/axios/lib/env/data.js","../../node_modules/axios/lib/helpers/validator.js","../../node_modules/axios/lib/core/Axios.js","../../node_modules/axios/lib/cancel/CancelToken.js","../../node_modules/axios/lib/helpers/spread.js","../../node_modules/axios/lib/helpers/isAxiosError.js","../../node_modules/axios/lib/helpers/HttpStatusCode.js","../../node_modules/axios/lib/axios.js","../../node_modules/axios/index.js","../../packages/sdk/interceptor.ts","../../packages/sdk/api.ts","../../packages/sdk/index.ts","../../src/component/explorer/ExplorerCategoriesTable.tsx","../../src/component/explorer/ui/ExplorerAddressMentions/MentionsTitle.tsx","../../src/component/explorer/ui/ExplorerAddressMentions/constants.ts","../../src/core/hooks/useModal.ts","../../src/core/constants/permissions.const.ts","../../src/component/explorer/ui/ExplorerAddressMentions/ExplorerAddressMentions.tsx","../../src/component/explorer/ui/ExplorerClusterAddresses/ExplorerClusterAddresses.tsx","../../src/component/explorer/ui/ExplorerBlockTransactions/ExplorerBlockTransactions.tsx","../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../../node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../../src/i18n/i18n.ts","../../src/component/explorer/ui/ExplorerAddressTransactions/constants.tsx","../../src/component/explorer/ui/ExplorerAddressTransactions/shared/TableCellReceiveAddresses.tsx","../../src/component/explorer/ui/ExplorerAddressTransactions/ExplorerAddressTransactions.tsx","../../src/component/explorer/ui/ExplorerSearchExample/ExplorerSearchExample.tsx","../../src/component/explorer/ui/ExplorerSearchForm/ExplorerSearchForm.tsx","../../src/component/explorer/ui/ExplorerTabs/ExplorerTabs.tsx","../../src/component/explorer/ui/ExplorerTransactionDriver/ExplorerTransactionDriver.tsx","../../src/component/Marking/ContentMarkingComponent.tsx","../../node_modules/file-selector/dist/es5/file.js","../../node_modules/file-selector/dist/es5/file-selector.js","../../node_modules/attr-accept/dist/es/index.js","../../node_modules/react-dropzone/dist/es/utils/index.js","../../node_modules/react-dropzone/dist/es/index.js","../../src/component/Marking/OtherAddresses.tsx","../../src/component/Marking/FormMarking.tsx","../../src/component/Marking/MarkingEditComponent.tsx","../../src/core/utils/RouterHistory.ts","../../src/core/hooks/useGoBack.ts","../../src/screen/Auth/AuthLoginScreen.tsx","../../src/router/types.ts","../../src/screen/StaticPage/PageNotFound.tsx","../../src/screen/Auth/AuthRegistrationScreen.tsx","../../src/screen/Auth/AuthRestoreScreen.tsx","../../src/screen/Auth/AuthRestoreConfirmScreen.tsx","../../src/screen/Auth/AuthRegistrationConfirmScreen.tsx","../../src/screen/Explorer/ExplorerSearchScreen.tsx","../../src/screen/Explorer/ExplorerBlockScreen.tsx","../../src/component/Transaction/ui/TransactionDetailHead/TransactionDetailHead.tsx","../../src/component/Transaction/ui/TransactionDetailBody/TransactionDetailBody.tsx","../../src/component/Transaction/consts/table.const.ts","../../src/component/NewGraph/types/table.ts","../../src/component/NewGraph/modules/Sidebar/shared/ui/GraphWindow/GraphWindow.tsx","../../src/component/NewGraph/modules/Sidebar/shared/ui/TableCellUTXO/TableCellUTXO.tsx","../../src/component/NewGraph/modules/Sidebar/shared/ui/TransactionItem/TransactionItem.tsx","../../src/component/NewGraph/modules/Sidebar/shared/ui/TransactionInfo/TransactionInfo.tsx","../../node_modules/moment/dist/moment.js","../../src/component/Address/libs/hooks/useActivityPeriod.ts","../../src/component/Address/ui/AddressMainInfo/AddressMainInfo.tsx","../../src/component/Address/libs/hooks/useClusterRisk.ts","../../src/component/Address/ui/AddressMainInfo/ClusterMainInfo.tsx","../../src/component/Address/ui/AddressTooltip/TooltipRow.tsx","../../src/component/Address/ui/AddressTooltip/TransactionsTooltip.tsx","../../src/component/Address/ui/AddressTooltip/BalanceTooltip.tsx","../../src/component/NewGraph/modules/Sidebar/shared/ui/TransactionsCard/TransactionsCard.tsx","../../src/component/NewGraph/modules/Sidebar/shared/ui/BalanceCard/BalanceCard.tsx","../../src/component/NewGraph/modules/Sidebar/shared/context/DataContext.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/hooks/useSidebarData.ts","../../node_modules/zustand/esm/vanilla.mjs","../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../../node_modules/use-sync-external-store/shim/index.js","../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../../node_modules/use-sync-external-store/shim/with-selector.js","../../node_modules/zustand/esm/index.mjs","../../src/component/NewGraph/libs/store/event/types/names.ts","../../src/component/NewGraph/libs/store/event/index.ts","../../src/component/NewGraph/libs/store/status/index.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/hooks/useSidebarEvents.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/store/windowStore.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/hooks/useSidebarWindow.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/hooks/useSidebarTrTabs.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/helpers/tabs.ts","../../src/component/NewGraph/libs/helpers/getReverseTxType.ts","../../src/component/NewGraph/models/Link/LinkService.ts","../../src/component/NewGraph/types/address.ts","../../src/component/NewGraph/const/address.const.ts","../../src/component/NewGraph/models/Link/LinkList.ts","../../src/component/NewGraph/models/Annotation/Annotation.tsx","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../../src/component/NewGraph/models/Link/Link.tsx","../../src/component/NewGraph/models/Node/NodeList.ts","../../src/component/NewGraph/models/Meta/Meta.ts","../../src/component/NewGraph/models/Risk/RiskCategories.ts","../../src/component/NewGraph/models/Node/Node.tsx","../../src/component/NewGraph/models/Address/AddressTable.ts","../../src/component/NewGraph/models/Address/AddressBetweenList.ts","../../src/component/NewGraph/models/Data/TableController.ts","../../src/core/utils/file.ts","../../node_modules/ajv/dist/compile/codegen/code.js","../../node_modules/ajv/dist/compile/codegen/scope.js","../../node_modules/ajv/dist/compile/codegen/index.js","../../node_modules/ajv/dist/compile/util.js","../../node_modules/ajv/dist/compile/names.js","../../node_modules/ajv/dist/compile/errors.js","../../node_modules/ajv/dist/compile/validate/boolSchema.js","../../node_modules/ajv/dist/compile/rules.js","../../node_modules/ajv/dist/compile/validate/applicability.js","../../node_modules/ajv/dist/compile/validate/dataType.js","../../node_modules/ajv/dist/compile/validate/defaults.js","../../node_modules/ajv/dist/vocabularies/code.js","../../node_modules/ajv/dist/compile/validate/keyword.js","../../node_modules/ajv/dist/compile/validate/subschema.js","../../node_modules/fast-deep-equal/index.js","../../node_modules/json-schema-traverse/index.js","../../node_modules/ajv/dist/compile/resolve.js","../../node_modules/ajv/dist/compile/validate/index.js","../../node_modules/ajv/dist/runtime/validation_error.js","../../node_modules/ajv/dist/compile/ref_error.js","../../node_modules/ajv/dist/compile/index.js","../../node_modules/uri-js/dist/es5/uri.all.js","../../node_modules/ajv/dist/runtime/uri.js","../../node_modules/ajv/dist/core.js","../../node_modules/ajv/dist/vocabularies/core/id.js","../../node_modules/ajv/dist/vocabularies/core/ref.js","../../node_modules/ajv/dist/vocabularies/core/index.js","../../node_modules/ajv/dist/vocabularies/validation/limitNumber.js","../../node_modules/ajv/dist/vocabularies/validation/multipleOf.js","../../node_modules/ajv/dist/runtime/ucs2length.js","../../node_modules/ajv/dist/vocabularies/validation/limitLength.js","../../node_modules/ajv/dist/vocabularies/validation/pattern.js","../../node_modules/ajv/dist/vocabularies/validation/limitProperties.js","../../node_modules/ajv/dist/vocabularies/validation/required.js","../../node_modules/ajv/dist/vocabularies/validation/limitItems.js","../../node_modules/ajv/dist/runtime/equal.js","../../node_modules/ajv/dist/vocabularies/validation/uniqueItems.js","../../node_modules/ajv/dist/vocabularies/validation/const.js","../../node_modules/ajv/dist/vocabularies/validation/enum.js","../../node_modules/ajv/dist/vocabularies/validation/index.js","../../node_modules/ajv/dist/vocabularies/applicator/additionalItems.js","../../node_modules/ajv/dist/vocabularies/applicator/items.js","../../node_modules/ajv/dist/vocabularies/applicator/prefixItems.js","../../node_modules/ajv/dist/vocabularies/applicator/items2020.js","../../node_modules/ajv/dist/vocabularies/applicator/contains.js","../../node_modules/ajv/dist/vocabularies/applicator/dependencies.js","../../node_modules/ajv/dist/vocabularies/applicator/propertyNames.js","../../node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js","../../node_modules/ajv/dist/vocabularies/applicator/properties.js","../../node_modules/ajv/dist/vocabularies/applicator/patternProperties.js","../../node_modules/ajv/dist/vocabularies/applicator/not.js","../../node_modules/ajv/dist/vocabularies/applicator/anyOf.js","../../node_modules/ajv/dist/vocabularies/applicator/oneOf.js","../../node_modules/ajv/dist/vocabularies/applicator/allOf.js","../../node_modules/ajv/dist/vocabularies/applicator/if.js","../../node_modules/ajv/dist/vocabularies/applicator/thenElse.js","../../node_modules/ajv/dist/vocabularies/applicator/index.js","../../node_modules/ajv/dist/vocabularies/format/format.js","../../node_modules/ajv/dist/vocabularies/format/index.js","../../node_modules/ajv/dist/vocabularies/metadata.js","../../node_modules/ajv/dist/vocabularies/draft7.js","../../node_modules/ajv/dist/vocabularies/discriminator/types.js","../../node_modules/ajv/dist/vocabularies/discriminator/index.js","../../node_modules/ajv/dist/ajv.js","../../src/component/NewGraph/models/Node/NodeService.ts","../../src/component/NewGraph/const/validate.const.ts","../../src/component/NewGraph/const/config.const.ts","../../src/component/NewGraph/models/Data/DataConverter.ts","../../src/component/NewGraph/types/graph.ts","../../src/component/NewGraph/libs/helpers/createDataResult.ts","../../src/component/NewGraph/models/Data/DataController.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/models/Address.ts","../../src/component/NewGraph/modules/Sidebar/shared/libs/models/Transaction.ts","../../src/component/NewGraph/modules/Sidebar/shared/const/table.ts","../../src/component/NewGraph/modules/Sidebar/entities/Line/ui/LineInfo/LineInfo.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Line/ui/LineAmountCell/LineAmountCell.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Line/models/LineDataService.ts","../../src/component/NewGraph/modules/Sidebar/entities/Line/libs/hooks/useBetweenTransactions.ts","../../src/component/NewGraph/modules/Sidebar/features/Line/conts/table.ts","../../src/component/NewGraph/modules/Sidebar/features/Line/ui/LineTable/LineTable.tsx","../../src/component/NewGraph/modules/Sidebar/widget/Line/ui/LineWindow/LineWindow.tsx","../../src/component/NewGraph/modules/Sidebar/entities/TransactionDetail/ui/TransactionDetailContainer/TransactionDetailContainer.tsx","../../src/component/NewGraph/modules/Sidebar/entities/TransactionDetail/ui/TransactionDetailInfo/TransactionDetailInfo.tsx","../../src/component/NewGraph/modules/Sidebar/features/TransactionDetail/const/table.ts","../../src/component/NewGraph/modules/Sidebar/features/TransactionDetail/ui/TransactionDetailTable/TransactionDetailTable.tsx","../../src/component/NewGraph/modules/Sidebar/widget/Node/ui/TransactionDetailWindow/TransactionDetailWindow.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Address/ui/AddressTransactionInfo/AddressTransactionInfo.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Address/ui/AddressTransactionsCard/AddressTransactionsCard.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Address/ui/AddressBalanceCard/AddressBalanceCard.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Address/ui/AddressInfo/AddressInfo.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Address/conts/table.ts","../../src/component/NewGraph/modules/Sidebar/entities/Address/ui/AddressTransactionsTable/AddressTransactionsTable.tsx","../../src/component/NewGraph/modules/Sidebar/widget/Node/ui/AddressWindow/AddressWindow.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Cluster/ui/ClusterBalanceCard/ClusterBalanceCard.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Cluster/ui/ClusterTransactionsCard/ClusterTransactionsCard.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Cluster/ui/ClusterTransactionInfo/ClusterTransactionInfo.tsx","../../src/component/NewGraph/modules/Sidebar/entities/Cluster/ui/ClusterInfo/ClusterInfo.tsx","../../src/component/NewGraph/modules/Sidebar/features/Cluster/conts/table.ts","../../src/component/NewGraph/modules/Sidebar/features/Cluster/conts/tabs.ts","../../src/component/NewGraph/modules/Sidebar/features/Cluster/ui/ClusterTransactions/ClusterTransactions.tsx","../../src/component/NewGraph/modules/Sidebar/features/Cluster/ui/ClusterAddresses/ClusterAddresses.tsx","../../src/component/NewGraph/modules/Sidebar/widget/Node/ui/ClusterWindow/ClusterWindow.tsx","../../src/component/NewGraph/modules/Sidebar/widget/Node/ui/NodeWindow/NodeWindow.tsx","../../src/component/NewGraph/modules/Sidebar/app/index.tsx","../../src/component/NewGraph/modules/Visualization/features/Event/ui/EventsController/EventsController.tsx","../../node_modules/@rubin-dev/octavius/dist/esm/index.js","../../src/component/NewGraph/modules/Visualization/widget/View/ui/VisualizationView/VisualizationView.tsx","../../node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../../node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs","../../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../../node_modules/@floating-ui/react/node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../../node_modules/@floating-ui/react/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../../node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../../node_modules/tabbable/dist/index.esm.js","../../node_modules/@floating-ui/react/dist/floating-ui.react.mjs","../../src/component/NewGraph/modules/Visualization/entities/ContextMenu/ui/FloatingMenu/FloatingMenu.tsx","../../src/component/NewGraph/libs/helpers/table.ts","../../src/component/NewGraph/modules/Visualization/entities/ContextMenu/ui/ContextMenuWrapper/ContextMenuWrapper.tsx","../../src/component/NewGraph/modules/Visualization/entities/ContextMenu/ui/ColorMenu/ColorMenu.tsx","../../src/component/NewGraph/modules/Visualization/entities/ContextMenu/libs/store/index.ts","../../src/component/NewGraph/modules/Visualization/entities/ContextMenu/const/link.ts","../../src/component/NewGraph/modules/Visualization/features/ContextMenu/libs/hooks/useMenuNodeEvent.ts","../../src/component/NewGraph/modules/Visualization/features/ContextMenu/ui/NodeMenu/NodeMenu.tsx","../../src/component/NewGraph/modules/Visualization/features/ContextMenu/libs/hooks/useMenuLinkEvent.ts","../../src/component/NewGraph/modules/Visualization/features/ContextMenu/ui/LinkMenu/LinkMenu.tsx","../../src/component/NewGraph/libs/hooks/useGraphLineData/index.ts","../../node_modules/lodash/lodash.js","../../src/component/NewGraph/libs/hooks/useGraphData/index.ts","../../src/component/NewGraph/libs/helpers/initHashes.ts","../../src/component/NewGraph/libs/hooks/useGraphDataController/index.ts","../../src/component/NewGraph/libs/hooks/useGraphNodeData/index.ts","../../src/component/NewGraph/libs/hooks/useGraphIntegration/index.ts","../../src/component/NewGraph/libs/hooks/useGraphLineController/index.ts","../../src/component/NewGraph/libs/hooks/useGraphNodeController/index.ts","../../src/component/NewGraph/libs/hooks/useGraphAnnotation/index.ts","../../src/component/NewGraph/modules/Visualization/features/ContextMenu/ui/LabelNodeMenu/LabelNodeMenu.tsx","../../src/component/NewGraph/modules/Visualization/widget/ContextMenu/ui/ContextMenu/ContextMenu.tsx","../../src/component/NewGraph/modules/Visualization/app/index.tsx","../../src/component/NewGraph/modules/Visualization/entities/View/const/line.ts","../../src/component/NewGraph/modules/Visualization/entities/View/ui/LineAmount/LineAmount.tsx","../../src/component/NewGraph/modules/Visualization/entities/View/ui/NodeLabel/NodeLabel.tsx","../../src/component/NewGraph/modules/Visualization/entities/View/ui/Annotation/Annotation.tsx","../../src/component/NewGraph/modules/Visualization/entities/View/ui/LineContentWrap/LineContentWrap.tsx","../../src/screen/Explorer/ui/ExplorerTransactionDetailsScreen/ExplorerTransactionDetailsScreen.tsx","../../src/screen/Explorer/ExplorerBlockTransactionsScreen.tsx","../../src/screen/Explorer/ExplorerAddressScreen.tsx","../../src/screen/Explorer/ExplorerWalletScreen.tsx","../../src/screen/User/constants.tsx","../../src/screen/User/UserListScreen.tsx","../../src/component/Profile/ui/ProfileMainInfo/ProfileMainInfo.tsx","../../src/component/Profile/ui/ProfileProductWrapper/ProfileProductWrapper.tsx","../../src/component/Profile/ui/ProfileMarkup/ProfileMarkup.tsx","../../src/component/Profile/ui/ProfileAnalyzer/ProfileAnalyzer.tsx","../../src/component/Profile/ui/ProfileAPI/ProfileAPI.tsx","../../src/component/Profile/ui/ApiKeys/renderTableSlot.tsx","../../src/component/Profile/ui/ApiKeys/ApiKeys.tsx","../../src/component/Profile/ui/RemoveApiKeyModal/RemoveApiKeyModal.tsx","../../src/screen/User/ProfileScreen.tsx","../../src/screen/User/UserCreateScreen.tsx","../../src/screen/HomepageScreen.tsx","../../src/component/NewGraph/const/annotation.const.ts","../../src/component/NewGraph/ui/GraphAnnotationModal/GraphAnnotationModal.tsx","../../src/component/NewGraph/ui/GraphRenameModal/GraphRenameModal.tsx","../../src/component/NewGraph/ui/GraphRemoveModal/GraphRemoveModal.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphBackButton/GraphBackButton.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphNameInput/GraphNameInput.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphExportButton/GraphExportButton.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphSaveStatus/GraphSaveStatus.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphSidebarButton/GraphSidebarButton.tsx","../../src/component/NewGraph/ui/GraphToolbar/shared/GraphInput/GraphInput.tsx","../../src/component/NewGraph/ui/GraphStatus/shared/GraphLoader/GraphLoader.tsx","../../src/component/NewGraph/ui/GraphToolbar/GraphToolbar.tsx","../../src/component/NewGraph/ui/GraphStatus/shared/GraphCrash/GraphCrash.tsx","../../src/component/NewGraph/ui/GraphStatus/shared/GraphNotFound/GraphNotFound.tsx","../../src/component/NewGraph/ui/GraphStatus/GraphStatus.tsx","../../src/component/NewGraph/const/table.const.ts","../../src/component/NewGraph/ui/GraphsList/shared/GraphsListControlDropdown/GraphsListControlDropdown.tsx","../../src/component/NewGraph/ui/GraphsList/shared/GraphsListHeader/GraphsListHeader.tsx","../../src/component/NewGraph/ui/GraphsList/shared/GraphsListImportButton/GraphsListImportButton.tsx","../../src/component/NewGraph/ui/GraphsList/GraphsList.tsx","../../src/screen/NewVisualization/ui/NewVisualizationScreen/NewVisualizationScreen.tsx","../../src/screen/NewVisualization/ui/GraphsListScreen/GraphsListScreen.tsx","../../src/screen/Transactions/constants.tsx","../../src/screen/Transactions/HeaderControls.tsx","../../src/screen/Transactions/types.ts","../../src/screen/Transactions/OverLimit.tsx","../../src/screen/Transactions/CleanDataTable.tsx","../../src/screen/Transactions/BlockedDataTable.tsx","../../src/screen/Transactions/TransactionsScreen.tsx","../../src/screen/Category/CategoryAllListScreen.tsx","../../src/screen/Markup/SubmitButton.tsx","../../src/component/FormContainer.tsx","../../src/screen/Markup/WrapperFinderContent.tsx","../../src/screen/Markup/RegistrationComponent.tsx","../../src/component/Mention/libs/store/subscription.tsx","../../src/component/Mention/ui/MentionsError/MentionsError.tsx","../../src/component/Mention/ui/MentionRow/MentionRow.tsx","../../node_modules/react-simple-image-viewer/dist/index.esm.js","../../src/screen/Markup/Screenshots.tsx","../../src/component/Mention/ui/Mention/Mention.tsx","../../src/component/Mention/ui/SubscribeButton/SubscribeButton.tsx","../../src/screen/Markup/Mentions.tsx","../../src/screen/Markup/PermissionWrapper.tsx","../../src/screen/Markup/FinderTab.tsx","../../src/screen/Markup/RequestsTab.tsx","../../src/screen/Markup/MarkupScreen.tsx","../../src/screen/Markup/DetailsScreen.tsx","../../src/screen/Tariffs/CardTariff.tsx","../../src/screen/Tariffs/TariffApi.tsx","../../src/screen/Tariffs/TariffAnalyzer.tsx","../../src/screen/Tariffs/TariffMarkup.tsx","../../node_modules/@react-pdf/renderer/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/primitives/src/index.js","../../node_modules/inherits/inherits_browser.js","../../node_modules/events/events.js","../../node_modules/queue/index.js","../../node_modules/@react-pdf/renderer/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/renderer/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@react-pdf/renderer/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/@react-pdf/font/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/font/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@react-pdf/font/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/@react-pdf/font/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/font/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/cross-fetch/dist/browser-ponyfill.js","../../node_modules/restructure/src/DecodeStream.js","../../node_modules/restructure/src/EncodeStream.js","../../node_modules/restructure/src/Base.js","../../node_modules/restructure/src/Number.js","../../node_modules/restructure/src/utils.js","../../node_modules/restructure/src/Array.js","../../node_modules/restructure/src/LazyArray.js","../../node_modules/restructure/src/Bitfield.js","../../node_modules/restructure/src/Buffer.js","../../node_modules/restructure/src/Optional.js","../../node_modules/restructure/src/Reserved.js","../../node_modules/restructure/src/String.js","../../node_modules/restructure/src/Struct.js","../../node_modules/restructure/src/VersionedStruct.js","../../node_modules/restructure/src/Pointer.js","../../node_modules/@swc/helpers/esm/_define_property.js","../../node_modules/base64-js/index.js","../../node_modules/tiny-inflate/index.js","../../node_modules/unicode-trie/swap.js","../../node_modules/unicode-trie/index.js","../../node_modules/unicode-properties/dist/module.mjs","../../node_modules/dfa/index.js","../../node_modules/clone/clone.js","../../node_modules/brotli/dec/streams.js","../../node_modules/brotli/dec/bit_reader.js","../../node_modules/brotli/dec/dictionary.bin.js","../../node_modules/brotli/dec/dictionary-browser.js","../../node_modules/brotli/dec/dictionary.js","../../node_modules/brotli/dec/huffman.js","../../node_modules/brotli/dec/context.js","../../node_modules/brotli/dec/prefix.js","../../node_modules/brotli/dec/transform.js","../../node_modules/brotli/dec/decode.js","../../node_modules/brotli/decompress.js","../../node_modules/fontkit/dist/browser-module.mjs","../../node_modules/@react-pdf/font/lib/index.browser.js","../../node_modules/@react-pdf/fns/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/fns/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@react-pdf/fns/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/@react-pdf/fns/lib/index.js","../../node_modules/abs-svg-path/index.js","../../node_modules/parse-svg-path/index.js","../../node_modules/svg-arc-to-cubic-bezier/modules/index.js","../../node_modules/normalize-svg-path/index.mjs","../../node_modules/color-name/index.js","../../node_modules/simple-swizzle/node_modules/is-arrayish/index.js","../../node_modules/simple-swizzle/index.js","../../node_modules/color-string/index.js","../../node_modules/@react-pdf/render/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/render/lib/index.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../../node_modules/pako/lib/zlib/zstream.js","../../node_modules/pako/lib/utils/common.js","../../node_modules/pako/lib/zlib/trees.js","../../node_modules/pako/lib/zlib/adler32.js","../../node_modules/pako/lib/zlib/crc32.js","../../node_modules/pako/lib/zlib/messages.js","../../node_modules/pako/lib/zlib/deflate.js","../../node_modules/pako/lib/zlib/inffast.js","../../node_modules/pako/lib/zlib/inftrees.js","../../node_modules/pako/lib/zlib/inflate.js","../../node_modules/pako/lib/zlib/constants.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/crypto-js/core.js","../../node_modules/crypto-js/md5.js","../../node_modules/jay-peg/src/markers/dac.js","../../node_modules/jay-peg/src/markers/utils.js","../../node_modules/jay-peg/src/markers/dht.js","../../node_modules/jay-peg/src/markers/dqt.js","../../node_modules/jay-peg/src/markers/dri.js","../../node_modules/jay-peg/src/markers/eoi.js","../../node_modules/jay-peg/src/markers/exif.js","../../node_modules/jay-peg/src/markers/jfif.js","../../node_modules/jay-peg/src/markers/sos.js","../../node_modules/jay-peg/src/markers/sof.js","../../node_modules/jay-peg/src/markers/soi.js","../../node_modules/jay-peg/src/index.js","../../node_modules/@react-pdf/png-js/lib/png-js.browser.js","../../node_modules/@react-pdf/pdfkit/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/pdfkit/lib/pdfkit.browser.js","../../node_modules/postcss-value-parser/lib/parse.js","../../node_modules/postcss-value-parser/lib/unit.js","../../node_modules/hsl-to-rgb-for-reals/converter.js","../../node_modules/hsl-to-hex/index.js","../../node_modules/@react-pdf/stylesheet/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/media-engine/src/queries.js","../../node_modules/media-engine/src/operators.js","../../node_modules/media-engine/src/parser.js","../../node_modules/media-engine/src/index.js","../../node_modules/@react-pdf/stylesheet/lib/index.js","../../node_modules/@react-pdf/textkit/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/textkit/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/bidi-js/dist/bidi.mjs","../../node_modules/@react-pdf/textkit/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../node_modules/@react-pdf/textkit/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../node_modules/@react-pdf/textkit/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js","../../node_modules/hyphen/hyphen.js","../../node_modules/hyphen/patterns/en-us.js","../../node_modules/@react-pdf/textkit/lib/textkit.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/yoga-layout/src/generated/YGEnums.js","../../node_modules/yoga-layout/src/wrapAssembly.js","../../node_modules/yoga-layout/binaries/wasm-async-web.js","../../node_modules/yoga-layout/src/entrypoint/wasm-async-web.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@react-pdf/layout/node_modules/emoji-regex/index.mjs","../../node_modules/@react-pdf/image/node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@react-pdf/image/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@react-pdf/image/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/@react-pdf/image/lib/index.browser.js","../../node_modules/@react-pdf/layout/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/@react-pdf/layout/lib/index.js","../../node_modules/@react-pdf/renderer/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/object-assign/index.js","../../node_modules/scheduler/cjs/scheduler.production.min.js","../../node_modules/scheduler/index.js","../../node_modules/@react-pdf/renderer/lib/react-pdf.browser.js","../../src/component/downloadPDF/ui/Header.tsx","../../src/component/downloadPDF/ui/DescriptionCategories.tsx","../../src/component/downloadPDF/ui/TableRow.tsx","../../src/component/downloadPDF/ui/Table.tsx","../../node_modules/html2canvas/dist/html2canvas.esm.js","../../src/component/downloadPDF/ui/Wrapper.tsx","../../src/screen/DownloadScreenPDF/DownloadScreenPDF.tsx","../../src/screen/TechnicalWorks/itemContact.tsx","../../src/shared/ui/icons/TgIcon.tsx","../../src/shared/ui/icons/EmailIcon.tsx","../../src/screen/TechnicalWorks/TechnicalWorks.tsx","../../src/screen/Marking/MarkingScreen.tsx","../../src/screen/Marking/MarkingEdit.tsx","../../src/component/Marking/MarginDetailsComponent.tsx","../../src/screen/Marking/MarkingDetailsScreen.tsx","../../node_modules/uuidv7/dist/index.js","../../src/component/Marking/MarkingCreateComponent.tsx","../../src/screen/Marking/MarkingCreateScreen.tsx","../../src/component/Layout/ui/LayoutClean/LayoutClean.tsx","../../src/core/utils/react.ts","../../src/component/Layout/ui/ProfileControl/ProfileControl.tsx","../../src/component/Layout/ui/Header/Header.tsx","../../src/component/Layout/ui/Base/Base.tsx","../../src/component/Layout/ui/LayoutUser/LayoutUser.tsx","../../src/component/Layout/ui/LayoutUserCreate/LayoutUserCreate.tsx","../../src/component/Layout/ui/LayoutGraph/LayoutGraph.tsx","../../src/component/Layout/ui/LayoutProfile/LayoutProfile.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerGraphs.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorer.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerAddress.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerWallet.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerTransaction.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerBlock.tsx","../../src/component/Layout/ui/LayoutExplorer/LayoutExplorerBlockTransaction.tsx","../../src/screen/Transactions/EditLimitModal.tsx","../../src/component/billing/ui/BillingCheckCounter/BillingCheckCounter.tsx","../../src/component/Layout/ui/LayoutTransactions/LayoutTransactions.tsx","../../src/component/Layout/ui/LayoutMarkup/LayoutMarkup.tsx","../../src/component/Layout/ui/LayoutTariff/LayoutTariff.tsx","../../src/component/Layout/ui/LayoutMarking/LayoutMarking.tsx","../../src/router/routes.ts","../../src/router/history.ts","../../src/router/router.tsx","../../src/component/explorer/ui/ExplorerAddressMentions/ModalTariffs.tsx","../../src/component/explorer/ui/ExplorerAddressMentions/ViewsDetailsModal.tsx","../../src/shared/ui/DialogTariffSelect/DialogTariffSelect.tsx","../../src/screen/User/RemoveUserDialog.tsx","../../src/screen/User/ActivateUser.tsx","../../src/screen/User/EditUserDialog.tsx","../../src/screen/Marking/DialogCategoryList.tsx","../../src/screen/Marking/DialogMarkingDelete.tsx","../../src/screen/Marking/DialogSuccess.tsx","../../src/Root.tsx","../../src/config/luxon.ts","../../node_modules/@sentry/utils/esm/is.js","../../node_modules/@sentry/utils/esm/string.js","../../node_modules/@sentry/utils/esm/aggregate-errors.js","../../node_modules/@sentry/utils/esm/worldwide.js","../../node_modules/@sentry/utils/esm/browser.js","../../node_modules/@sentry/utils/esm/debug-build.js","../../node_modules/@sentry/utils/esm/logger.js","../../node_modules/@sentry/utils/esm/dsn.js","../../node_modules/@sentry/utils/esm/error.js","../../node_modules/@sentry/utils/esm/object.js","../../node_modules/@sentry/utils/esm/stacktrace.js","../../node_modules/@sentry/utils/esm/instrument/_handlers.js","../../node_modules/@sentry/utils/esm/instrument/console.js","../../node_modules/@sentry/utils/esm/misc.js","../../node_modules/@sentry/utils/esm/instrument/dom.js","../../node_modules/@sentry/utils/esm/supports.js","../../node_modules/@sentry/utils/esm/instrument/fetch.js","../../node_modules/@sentry/utils/esm/instrument/globalError.js","../../node_modules/@sentry/utils/esm/instrument/globalUnhandledRejection.js","../../node_modules/@sentry/utils/esm/vendor/supportsHistory.js","../../node_modules/@sentry/utils/esm/instrument/history.js","../../node_modules/@sentry/utils/esm/instrument/xhr.js","../../node_modules/@sentry/utils/esm/env.js","../../node_modules/@sentry/utils/esm/node.js","../../node_modules/@sentry/utils/esm/isBrowser.js","../../node_modules/@sentry/utils/esm/memo.js","../../node_modules/@sentry/utils/esm/normalize.js","../../node_modules/@sentry/utils/esm/syncpromise.js","../../node_modules/@sentry/utils/esm/promisebuffer.js","../../node_modules/@sentry/utils/esm/url.js","../../node_modules/@sentry/utils/esm/severity.js","../../node_modules/@sentry/utils/esm/time.js","../../node_modules/@sentry/utils/esm/baggage.js","../../node_modules/@sentry/utils/esm/tracing.js","../../node_modules/@sentry/utils/esm/envelope.js","../../node_modules/@sentry/utils/esm/clientreport.js","../../node_modules/@sentry/utils/esm/ratelimit.js","../../node_modules/@sentry/utils/esm/buildPolyfills/_nullishCoalesce.js","../../node_modules/@sentry/utils/esm/buildPolyfills/_optionalChain.js","../../node_modules/@sentry/core/esm/debug-build.js","../../node_modules/@sentry/core/esm/constants.js","../../node_modules/@sentry/core/esm/eventProcessors.js","../../node_modules/@sentry/core/esm/session.js","../../node_modules/@sentry/core/esm/utils/spanUtils.js","../../node_modules/@sentry/core/esm/utils/prepareEvent.js","../../node_modules/@sentry/core/esm/exports.js","../../node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.js","../../node_modules/@sentry/core/esm/utils/applyScopeDataToEvent.js","../../node_modules/@sentry/core/esm/scope.js","../../node_modules/@sentry/core/esm/version.js","../../node_modules/@sentry/core/esm/hub.js","../../node_modules/@sentry/core/esm/tracing/utils.js","../../node_modules/@sentry/core/esm/tracing/errors.js","../../node_modules/@sentry/core/esm/tracing/span.js","../../node_modules/@sentry/core/esm/semanticAttributes.js","../../node_modules/@sentry/core/esm/tracing/transaction.js","../../node_modules/@sentry/core/esm/tracing/idletransaction.js","../../node_modules/@sentry/core/esm/utils/hasTracingEnabled.js","../../node_modules/@sentry/core/esm/tracing/sampling.js","../../node_modules/@sentry/core/esm/tracing/hubextensions.js","../../node_modules/@sentry/core/esm/tracing/trace.js","../../node_modules/@sentry/core/esm/envelope.js","../../node_modules/@sentry/core/esm/api.js","../../node_modules/@sentry/core/esm/integration.js","../../node_modules/@sentry/core/esm/metrics/utils.js","../../node_modules/@sentry/core/esm/metrics/envelope.js","../../node_modules/@sentry/core/esm/baseclient.js","../../node_modules/@sentry/core/esm/sdk.js","../../node_modules/@sentry/core/esm/transports/base.js","../../node_modules/@sentry/core/esm/integrations/functiontostring.js","../../node_modules/@sentry/core/esm/integrations/inboundfilters.js","../../node_modules/@sentry/core/esm/utils/isSentryRequestUrl.js","../../node_modules/@sentry/browser/esm/helpers.js","../../node_modules/@sentry/browser/esm/debug-build.js","../../node_modules/@sentry/browser/esm/eventbuilder.js","../../node_modules/@sentry/browser/esm/userfeedback.js","../../node_modules/@sentry/browser/esm/client.js","../../node_modules/@sentry/browser/esm/transports/utils.js","../../node_modules/@sentry/browser/esm/transports/fetch.js","../../node_modules/@sentry/browser/esm/transports/xhr.js","../../node_modules/@sentry/browser/esm/stack-parsers.js","../../node_modules/@sentry/browser/esm/integrations/globalhandlers.js","../../node_modules/@sentry/browser/esm/integrations/trycatch.js","../../node_modules/@sentry/browser/esm/integrations/breadcrumbs.js","../../node_modules/@sentry/browser/esm/integrations/linkederrors.js","../../node_modules/@sentry/browser/esm/integrations/httpcontext.js","../../node_modules/@sentry/browser/esm/integrations/dedupe.js","../../node_modules/@sentry/browser/esm/sdk.js","../../node_modules/@sentry-internal/tracing/esm/common/debug-build.js","../../node_modules/@sentry-internal/tracing/esm/browser/types.js","../../node_modules/@sentry-internal/tracing/esm/browser/backgroundtab.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/bindReporter.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/generateUniqueID.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/getNavigationEntry.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/getActivationStart.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/initMetric.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/observe.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/onHidden.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/getCLS.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/lib/getVisibilityWatcher.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/getFID.js","../../node_modules/@sentry-internal/tracing/esm/browser/web-vitals/getLCP.js","../../node_modules/@sentry-internal/tracing/esm/browser/instrument.js","../../node_modules/@sentry-internal/tracing/esm/browser/metrics/utils.js","../../node_modules/@sentry-internal/tracing/esm/browser/metrics/index.js","../../node_modules/@sentry-internal/tracing/esm/common/fetch.js","../../node_modules/@sentry-internal/tracing/esm/browser/request.js","../../node_modules/@sentry-internal/tracing/esm/browser/router.js","../../node_modules/@sentry-internal/tracing/esm/browser/browsertracing.js","../../node_modules/@sentry/replay/esm/index.js","../../node_modules/@sentry/react/esm/sdk.js","../../src/config/sentry.ts","../../src/config/goblin.ts","../../src/main.tsx"],"sourcesContent":["/**\n * @license React\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=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}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}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=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","/**\n * @license React\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\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(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 z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(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){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(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(ra,\nsa);z[b]=new v(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(ra,sa);z[b]=new v(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(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(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 ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction 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 A({},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 ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(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\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(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 cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!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,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({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 ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(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}}var wb=null;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(p(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>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=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)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=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){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 Ne(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)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=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&&Ne(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&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;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}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&uh(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=sh(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Ah(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=yh(f.type,f.key,f.props,null,a.mode,h),h.ref=sh(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)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=zh(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);th(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=xh(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(a){if(a===Dh)throw Error(p(174));return a}function Ih(a,b){G(Gh,b);G(Fh,a);G(Eh,Dh);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(Eh);G(Eh,b)}function Jh(){E(Eh);E(Fh);E(Gh)}\nfunction Kh(a){Hh(Gh.current);var b=Hh(Eh.current);var c=lb(b,a.type);b!==c&&(G(Fh,a),G(Eh,c))}function Lh(a){Fh.current===a&&(E(Eh),E(Fh))}var M=Uf(0);\nfunction Mh(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&128))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 Nh=[];\nfunction Oh(){for(var a=0;ac?c:4;a(!0);var d=Qh.transition;Qh.transition={};try{a(!1),b()}finally{C=c,Qh.transition=d}}function Fi(){return di().memoizedState}\nfunction Gi(a,b,c){var d=lh(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,c);else if(c=Yg(a,b,c,d),null!==c){var e=L();mh(c,a,d,e);Ji(c,b,d)}}\nfunction ri(a,b,c){var d=lh(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,Xg(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=Yg(a,b,e,d);null!==c&&(e=L(),mh(c,a,d,e),Ji(c,b,d))}}\nfunction Hi(a){var b=a.alternate;return a===N||null!==b&&b===N}function Ii(a,b){Th=Sh=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Ji(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar ai={readContext:Vg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useInsertionEffect:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useDeferredValue:Q,useTransition:Q,useMutableSource:Q,useSyncExternalStore:Q,useId:Q,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(a,b){ci().memoizedState=[a,void 0===b?null:b];return a},useContext:Vg,useEffect:vi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ti(4194308,\n4,yi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ti(4194308,4,a,b)},useInsertionEffect:function(a,b){return ti(4,2,a,b)},useMemo:function(a,b){var c=ci();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=ci();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=Gi.bind(null,N,a);return[d.memoizedState,a]},useRef:function(a){var b=\nci();a={current:a};return b.memoizedState=a},useState:qi,useDebugValue:Ai,useDeferredValue:function(a){return ci().memoizedState=a},useTransition:function(){var a=qi(!1),b=a[0];a=Ei.bind(null,a[1]);ci().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=N,e=ci();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===R)throw Error(p(349));0!==(Rh&30)||ni(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;vi(ki.bind(null,d,\nf,a),[a]);d.flags|=2048;li(9,mi.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=ci(),b=R.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Uh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"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[Of]=b;a[Pf]=d;Aj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eHj&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304)}else{if(!d)if(a=Mh(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Ej(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Hj&&1073741824!==c&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=M.current,G(M,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Ij(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(gj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Jj(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return Jh(),E(Wf),E(H),Oh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Lh(b),null;case 13:E(M);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(M),null;case 4:return Jh(),null;case 10:return Rg(b.type._context),null;case 22:case 23:return Ij(),\nnull;case 24:return null;default:return null}}var Kj=!1,U=!1,Lj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Mj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Nj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Oj=!1;\nfunction Pj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Lg(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Oj;Oj=!1;return n}\nfunction Qj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Nj(b,c,f)}e=e.next}while(e!==d)}}function Rj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Sj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Tj(a){var b=a.alternate;null!==b&&(a.alternate=null,Tj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Uj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Vj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Uj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,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=Bf));else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}\nfunction Xj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Xj(a,b,c),a=a.sibling;null!==a;)Xj(a,b,c),a=a.sibling}var X=null,Yj=!1;function Zj(a,b,c){for(c=c.child;null!==c;)ak(a,b,c),c=c.sibling}\nfunction ak(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Mj(c,b);case 6:var d=X,e=Yj;X=null;Zj(a,b,c);X=d;Yj=e;null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Yj;X=c.stateNode.containerInfo;Yj=!0;\nZj(a,b,c);X=d;Yj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Nj(c,b,g):0!==(f&4)&&Nj(c,b,g));e=e.next}while(e!==d)}Zj(a,b,c);break;case 1:if(!U&&(Mj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Zj(a,b,c);break;case 21:Zj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Zj(a,b,c),U=d):Zj(a,b,c);break;default:Zj(a,b,c)}}function bk(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Lj);b.forEach(function(b){var d=ck.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction dk(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*mk(d/1960))-d;if(10a?16:a;if(null===xk)var d=!1;else{a=xk;xk=null;yk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-gk?Lk(a,0):sk|=c);Ek(a,b)}function Zk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=L();a=Zg(a,b);null!==a&&(Ac(a,b,c),Ek(a,c))}function vj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Zk(a,c)}\nfunction ck(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Zk(a,c)}var Wk;\nWk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)Ug=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return Ug=!1,zj(a,b,c);Ug=0!==(a.flags&131072)?!0:!1}else Ug=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;jj(a,b);a=b.pendingProps;var e=Yf(b,H.current);Tg(b,c);e=Xh(null,b,d,a,e,c);var f=bi();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,ah(b),e.updater=nh,b.stateNode=e,e._reactInternals=b,rh(b,d,a,c),b=kj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Yi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{jj(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=$k(d);a=Lg(d,a);switch(e){case 0:b=dj(null,b,d,a,c);break a;case 1:b=ij(null,b,d,a,c);break a;case 11:b=Zi(null,b,d,a,c);break a;case 14:b=aj(null,b,d,Lg(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),dj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),ij(a,b,d,e,c);case 3:a:{lj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;bh(a,b);gh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ki(Error(p(423)),b);b=mj(a,b,d,c,e);break a}else if(d!==e){e=Ki(Error(p(424)),b);b=mj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Ch(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=$i(a,b,c);break a}Yi(a,b,d,c)}b=b.child}return b;case 5:return Kh(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\nhj(a,b),Yi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return pj(a,b,c);case 4:return Ih(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Bh(b,null,d,c):Yi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),Zi(a,b,d,e,c);case 7:return Yi(a,b,b.pendingProps,c),b.child;case 8:return Yi(a,b,b.pendingProps.children,c),b.child;case 12:return Yi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Mg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=$i(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=ch(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);Sg(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);Sg(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Yi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,Tg(b,c),e=Vg(e),d=d(e),b.flags|=1,Yi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Lg(d,b.pendingProps),e=Lg(d.type,e),aj(a,b,d,e,c);case 15:return cj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),jj(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,Tg(b,c),ph(b,d,e),rh(b,d,e,c),kj(null,b,d,!0,a,c);case 19:return yj(a,b,c);case 22:return ej(a,b,c)}throw Error(p(156,b.tag));};function Gk(a,b){return ac(a,b)}\nfunction al(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.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new al(a,b,c,d)}function bj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction $k(a){if(\"function\"===typeof a)return bj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction wh(a,b){var c=a.alternate;null===c?(c=Bg(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.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;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 yh(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)bj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Ah(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return qj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Ah(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function qj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function xh(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction zh(a,b,c){b=Bg(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 bl(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=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.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function cl(a,b,c,d,e,f,g,h,k){a=new bl(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};ah(f);return a}function dl(a,b,c){var d=3 {\n var { to, params = {}, query = {}, children, replace, onClick, href } = _a, rest = __rest(_a, [\"to\", \"params\", \"query\", \"children\", \"replace\", \"onClick\", \"href\"]);\n const { urlFor, navigate } = (0, _1.useNavigate)();\n const handleClick = (0, react_1.useCallback)((e) => {\n var _a;\n // ignores the navigation when clicked using right mouse button or\n // by holding a special modifier key: ctrl, command, win, alt, shift\n if (e) {\n if (e.ctrlKey ||\n e.metaKey ||\n e.altKey ||\n e.shiftKey ||\n e.button !== 0) {\n return;\n }\n e.preventDefault();\n }\n if (onClick) {\n onClick(e);\n }\n if (rest.target === '_blank') {\n (_a = window === null || window === void 0 ? void 0 : window.open(urlFor(to, params, query), '_blank')) === null || _a === void 0 ? void 0 : _a.focus();\n }\n else {\n navigate(to, params, query, replace);\n }\n }, [onClick, to, params, query, replace]);\n return (react_1.default.createElement(\"a\", Object.assign({}, rest, { onClick: handleClick, href: href || urlFor(to, params, query) }), children));\n};\nexports.Link = Link;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useCurrentRoute = exports.CurrentRouteContext = exports.useRouter = exports.RouterContext = void 0;\nconst react_1 = require(\"react\");\nexports.RouterContext = (0, react_1.createContext)({});\nconst useRouter = () => (0, react_1.useContext)(exports.RouterContext);\nexports.useRouter = useRouter;\nexports.CurrentRouteContext = (0, react_1.createContext)({});\nconst useCurrentRoute = () => {\n return (0, react_1.useContext)(exports.CurrentRouteContext);\n};\nexports.useCurrentRoute = useCurrentRoute;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useNavigate = void 0;\nconst react_1 = require(\"react\");\nconst useRouter_1 = require(\"./useRouter\");\nconst useNavigate = () => {\n const { router, history } = (0, useRouter_1.useRouter)();\n const urlFor = (0, react_1.useCallback)((route, params, query) => (route.indexOf('/') > -1 ? route : router.urlFor(route, params, query)), [router]);\n const navigate = (route, params, query, replace, scrollToTop = true) => {\n if (scrollToTop && typeof window !== \"undefined\") {\n window.scrollTo({\n top: 0,\n });\n }\n history.navigate(urlFor(route, params, query), replace);\n };\n return {\n navigate,\n urlFor\n };\n};\nexports.useNavigate = useNavigate;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Redirect = void 0;\nconst react_1 = require(\"react\");\nconst useNavigate_1 = require(\"./useNavigate\");\nconst Redirect = ({ to, params, query, replace, }) => {\n const { navigate } = (0, useNavigate_1.useNavigate)();\n (0, react_1.useEffect)(() => {\n navigate(to, params, query, replace);\n }, [to, params, query, replace]);\n return null;\n};\nexports.Redirect = Redirect;\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nmodule.exports = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar toStr = Object.prototype.toString;\nvar max = Math.max;\nvar funcType = '[object Function]';\n\nvar concatty = function concatty(a, b) {\n var arr = [];\n\n for (var i = 0; i < a.length; i += 1) {\n arr[i] = a[i];\n }\n for (var j = 0; j < b.length; j += 1) {\n arr[j + a.length] = b[j];\n }\n\n return arr;\n};\n\nvar slicy = function slicy(arrLike, offset) {\n var arr = [];\n for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {\n arr[j] = arrLike[i];\n }\n return arr;\n};\n\nvar joiny = function (arr, joiner) {\n var str = '';\n for (var i = 0; i < arr.length; i += 1) {\n str += arr[i];\n if (i + 1 < arr.length) {\n str += joiner;\n }\n }\n return str;\n};\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.apply(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slicy(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n concatty(args, arguments)\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n }\n return target.apply(\n that,\n concatty(args, arguments)\n );\n\n };\n\n var boundLength = max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs[i] = '$' + i;\n }\n\n bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar call = Function.prototype.call;\nvar $hasOwn = Object.prototype.hasOwnProperty;\nvar bind = require('function-bind');\n\n/** @type {(o: {}, p: PropertyKey) => p is keyof o} */\nmodule.exports = bind.call(call, $hasOwn);\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\nvar hasProto = require('has-proto')();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('hasown');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\n\nvar hasPropertyDescriptors = function hasPropertyDescriptors() {\n\tif ($defineProperty) {\n\t\ttry {\n\t\t\t$defineProperty({}, 'a', { value: 1 });\n\t\t\treturn true;\n\t\t} catch (e) {\n\t\t\t// IE 8 has a broken defineProperty\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn false;\n};\n\nhasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {\n\t// node v0.6 has a bug where array lengths can be Set but not Defined\n\tif (!hasPropertyDescriptors()) {\n\t\treturn null;\n\t}\n\ttry {\n\t\treturn $defineProperty([], 'length', { value: 1 }).length !== 1;\n\t} catch (e) {\n\t\t// In Firefox 4-22, defining length on an array throws an exception.\n\t\treturn true;\n\t}\n};\n\nmodule.exports = hasPropertyDescriptors;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\n\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","'use strict';\n\nvar hasPropertyDescriptors = require('has-property-descriptors')();\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $defineProperty = hasPropertyDescriptors && GetIntrinsic('%Object.defineProperty%', true);\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = false;\n\t}\n}\n\nvar $SyntaxError = GetIntrinsic('%SyntaxError%');\nvar $TypeError = GetIntrinsic('%TypeError%');\n\nvar gopd = require('gopd');\n\n/** @type {(obj: Record, property: PropertyKey, value: unknown, nonEnumerable?: boolean | null, nonWritable?: boolean | null, nonConfigurable?: boolean | null, loose?: boolean) => void} */\nmodule.exports = function defineDataProperty(\n\tobj,\n\tproperty,\n\tvalue\n) {\n\tif (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) {\n\t\tthrow new $TypeError('`obj` must be an object or a function`');\n\t}\n\tif (typeof property !== 'string' && typeof property !== 'symbol') {\n\t\tthrow new $TypeError('`property` must be a string or a symbol`');\n\t}\n\tif (arguments.length > 3 && typeof arguments[3] !== 'boolean' && arguments[3] !== null) {\n\t\tthrow new $TypeError('`nonEnumerable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 4 && typeof arguments[4] !== 'boolean' && arguments[4] !== null) {\n\t\tthrow new $TypeError('`nonWritable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 5 && typeof arguments[5] !== 'boolean' && arguments[5] !== null) {\n\t\tthrow new $TypeError('`nonConfigurable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 6 && typeof arguments[6] !== 'boolean') {\n\t\tthrow new $TypeError('`loose`, if provided, must be a boolean');\n\t}\n\n\tvar nonEnumerable = arguments.length > 3 ? arguments[3] : null;\n\tvar nonWritable = arguments.length > 4 ? arguments[4] : null;\n\tvar nonConfigurable = arguments.length > 5 ? arguments[5] : null;\n\tvar loose = arguments.length > 6 ? arguments[6] : false;\n\n\t/* @type {false | TypedPropertyDescriptor} */\n\tvar desc = !!gopd && gopd(obj, property);\n\n\tif ($defineProperty) {\n\t\t$defineProperty(obj, property, {\n\t\t\tconfigurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,\n\t\t\tenumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,\n\t\t\tvalue: value,\n\t\t\twritable: nonWritable === null && desc ? desc.writable : !nonWritable\n\t\t});\n\t} else if (loose || (!nonEnumerable && !nonWritable && !nonConfigurable)) {\n\t\t// must fall back to [[Set]], and was not explicitly asked to make non-enumerable, non-writable, or non-configurable\n\t\tobj[property] = value; // eslint-disable-line no-param-reassign\n\t} else {\n\t\tthrow new $SyntaxError('This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.');\n\t}\n};\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\nvar define = require('define-data-property');\nvar hasDescriptors = require('has-property-descriptors')();\nvar gOPD = require('gopd');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $floor = GetIntrinsic('%Math.floor%');\n\n/** @typedef {(...args: unknown[]) => unknown} Func */\n\n/** @type {(fn: T, length: number, loose?: boolean) => T} */\nmodule.exports = function setFunctionLength(fn, length) {\n\tif (typeof fn !== 'function') {\n\t\tthrow new $TypeError('`fn` is not a function');\n\t}\n\tif (typeof length !== 'number' || length < 0 || length > 0xFFFFFFFF || $floor(length) !== length) {\n\t\tthrow new $TypeError('`length` must be a positive 32-bit integer');\n\t}\n\n\tvar loose = arguments.length > 2 && !!arguments[2];\n\n\tvar functionLengthIsConfigurable = true;\n\tvar functionLengthIsWritable = true;\n\tif ('length' in fn && gOPD) {\n\t\tvar desc = gOPD(fn, 'length');\n\t\tif (desc && !desc.configurable) {\n\t\t\tfunctionLengthIsConfigurable = false;\n\t\t}\n\t\tif (desc && !desc.writable) {\n\t\t\tfunctionLengthIsWritable = false;\n\t\t}\n\t}\n\n\tif (functionLengthIsConfigurable || functionLengthIsWritable || !loose) {\n\t\tif (hasDescriptors) {\n\t\t\tdefine(/** @type {Parameters[0]} */ (fn), 'length', length, true, true);\n\t\t} else {\n\t\t\tdefine(/** @type {Parameters[0]} */ (fn), 'length', length);\n\t\t}\n\t}\n\treturn fn;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\nvar setFunctionLength = require('set-function-length');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tif (typeof originalFunction !== 'function') {\n\t\tthrow new $TypeError('a function is required');\n\t}\n\tvar func = $reflectApply(bind, $call, arguments);\n\treturn setFunctionLength(\n\t\tfunc,\n\t\t1 + $max(0, originalFunction.length - (arguments.length - 1)),\n\t\ttrue\n\t);\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","export default {}","var hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = require('./util.inspect');\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nmodule.exports = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '';\n return s;\n }\n if (isArray(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n if (mapForEach) {\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n }\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n if (setForEach) {\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n }\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n // note: in IE 8, sometimes `global !== window` but both are the prototypes of each other\n /* eslint-env browser */\n if (typeof window !== 'undefined' && obj === window) {\n return '{ [object Window] }';\n }\n if (obj === global) {\n return '{ [object globalThis] }';\n }\n if (!isDate(obj) && !isRegExp(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '"');\n}\n\nfunction isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\nvar callBound = require('call-bind/callBound');\nvar inspect = require('object-inspect');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nmodule.exports = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n","'use strict';\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nmodule.exports = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n","'use strict';\n\nvar formats = require('./formats');\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray(target) && !isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray(target) && isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n","'use strict';\n\nvar getSideChannel = require('side-channel');\nvar utils = require('./utils');\nvar formats = require('./formats');\nvar has = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray = Array.isArray;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats['default'];\nvar defaults = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray(obj)) {\n obj = utils.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray(obj)) {\n // we need to join elements in\n if (encodeValuesOnly && encoder) {\n obj = utils.maybeMap(obj, encoder);\n }\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has.call(formats.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats.formatters[format];\n\n var filter = defaults.filter;\n if (typeof opts.filter === 'function' || isArray(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {\n throw new TypeError('`commaRoundTrip` must be a boolean, or absent');\n }\n var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify(\n obj[key],\n key,\n generateArrayPrefix,\n commaRoundTrip,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('✓'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n","'use strict';\n\nvar utils = require('./utils');\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/&#(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = { __proto__: null };\n\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n","'use strict';\n\nvar stringify = require('./stringify');\nvar parse = require('./parse');\nvar formats = require('./formats');\n\nmodule.exports = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n","/**\n * Tokenize input string.\n */\nfunction lexer(str) {\n var tokens = [];\n var i = 0;\n while (i < str.length) {\n var char = str[i];\n if (char === \"*\" || char === \"+\" || char === \"?\") {\n tokens.push({ type: \"MODIFIER\", index: i, value: str[i++] });\n continue;\n }\n if (char === \"\\\\\") {\n tokens.push({ type: \"ESCAPED_CHAR\", index: i++, value: str[i++] });\n continue;\n }\n if (char === \"{\") {\n tokens.push({ type: \"OPEN\", index: i, value: str[i++] });\n continue;\n }\n if (char === \"}\") {\n tokens.push({ type: \"CLOSE\", index: i, value: str[i++] });\n continue;\n }\n if (char === \":\") {\n var name = \"\";\n var j = i + 1;\n while (j < str.length) {\n var code = str.charCodeAt(j);\n if (\n // `0-9`\n (code >= 48 && code <= 57) ||\n // `A-Z`\n (code >= 65 && code <= 90) ||\n // `a-z`\n (code >= 97 && code <= 122) ||\n // `_`\n code === 95) {\n name += str[j++];\n continue;\n }\n break;\n }\n if (!name)\n throw new TypeError(\"Missing parameter name at \".concat(i));\n tokens.push({ type: \"NAME\", index: i, value: name });\n i = j;\n continue;\n }\n if (char === \"(\") {\n var count = 1;\n var pattern = \"\";\n var j = i + 1;\n if (str[j] === \"?\") {\n throw new TypeError(\"Pattern cannot start with \\\"?\\\" at \".concat(j));\n }\n while (j < str.length) {\n if (str[j] === \"\\\\\") {\n pattern += str[j++] + str[j++];\n continue;\n }\n if (str[j] === \")\") {\n count--;\n if (count === 0) {\n j++;\n break;\n }\n }\n else if (str[j] === \"(\") {\n count++;\n if (str[j + 1] !== \"?\") {\n throw new TypeError(\"Capturing groups are not allowed at \".concat(j));\n }\n }\n pattern += str[j++];\n }\n if (count)\n throw new TypeError(\"Unbalanced pattern at \".concat(i));\n if (!pattern)\n throw new TypeError(\"Missing pattern at \".concat(i));\n tokens.push({ type: \"PATTERN\", index: i, value: pattern });\n i = j;\n continue;\n }\n tokens.push({ type: \"CHAR\", index: i, value: str[i++] });\n }\n tokens.push({ type: \"END\", index: i, value: \"\" });\n return tokens;\n}\n/**\n * Parse a string for the raw tokens.\n */\nexport function parse(str, options) {\n if (options === void 0) { options = {}; }\n var tokens = lexer(str);\n var _a = options.prefixes, prefixes = _a === void 0 ? \"./\" : _a;\n var defaultPattern = \"[^\".concat(escapeString(options.delimiter || \"/#?\"), \"]+?\");\n var result = [];\n var key = 0;\n var i = 0;\n var path = \"\";\n var tryConsume = function (type) {\n if (i < tokens.length && tokens[i].type === type)\n return tokens[i++].value;\n };\n var mustConsume = function (type) {\n var value = tryConsume(type);\n if (value !== undefined)\n return value;\n var _a = tokens[i], nextType = _a.type, index = _a.index;\n throw new TypeError(\"Unexpected \".concat(nextType, \" at \").concat(index, \", expected \").concat(type));\n };\n var consumeText = function () {\n var result = \"\";\n var value;\n while ((value = tryConsume(\"CHAR\") || tryConsume(\"ESCAPED_CHAR\"))) {\n result += value;\n }\n return result;\n };\n while (i < tokens.length) {\n var char = tryConsume(\"CHAR\");\n var name = tryConsume(\"NAME\");\n var pattern = tryConsume(\"PATTERN\");\n if (name || pattern) {\n var prefix = char || \"\";\n if (prefixes.indexOf(prefix) === -1) {\n path += prefix;\n prefix = \"\";\n }\n if (path) {\n result.push(path);\n path = \"\";\n }\n result.push({\n name: name || key++,\n prefix: prefix,\n suffix: \"\",\n pattern: pattern || defaultPattern,\n modifier: tryConsume(\"MODIFIER\") || \"\",\n });\n continue;\n }\n var value = char || tryConsume(\"ESCAPED_CHAR\");\n if (value) {\n path += value;\n continue;\n }\n if (path) {\n result.push(path);\n path = \"\";\n }\n var open = tryConsume(\"OPEN\");\n if (open) {\n var prefix = consumeText();\n var name_1 = tryConsume(\"NAME\") || \"\";\n var pattern_1 = tryConsume(\"PATTERN\") || \"\";\n var suffix = consumeText();\n mustConsume(\"CLOSE\");\n result.push({\n name: name_1 || (pattern_1 ? key++ : \"\"),\n pattern: name_1 && !pattern_1 ? defaultPattern : pattern_1,\n prefix: prefix,\n suffix: suffix,\n modifier: tryConsume(\"MODIFIER\") || \"\",\n });\n continue;\n }\n mustConsume(\"END\");\n }\n return result;\n}\n/**\n * Compile a string to a template function for the path.\n */\nexport function compile(str, options) {\n return tokensToFunction(parse(str, options), options);\n}\n/**\n * Expose a method for transforming tokens into the path function.\n */\nexport function tokensToFunction(tokens, options) {\n if (options === void 0) { options = {}; }\n var reFlags = flags(options);\n var _a = options.encode, encode = _a === void 0 ? function (x) { return x; } : _a, _b = options.validate, validate = _b === void 0 ? true : _b;\n // Compile all the tokens into regexps.\n var matches = tokens.map(function (token) {\n if (typeof token === \"object\") {\n return new RegExp(\"^(?:\".concat(token.pattern, \")$\"), reFlags);\n }\n });\n return function (data) {\n var path = \"\";\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n if (typeof token === \"string\") {\n path += token;\n continue;\n }\n var value = data ? data[token.name] : undefined;\n var optional = token.modifier === \"?\" || token.modifier === \"*\";\n var repeat = token.modifier === \"*\" || token.modifier === \"+\";\n if (Array.isArray(value)) {\n if (!repeat) {\n throw new TypeError(\"Expected \\\"\".concat(token.name, \"\\\" to not repeat, but got an array\"));\n }\n if (value.length === 0) {\n if (optional)\n continue;\n throw new TypeError(\"Expected \\\"\".concat(token.name, \"\\\" to not be empty\"));\n }\n for (var j = 0; j < value.length; j++) {\n var segment = encode(value[j], token);\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(\"Expected all \\\"\".concat(token.name, \"\\\" to match \\\"\").concat(token.pattern, \"\\\", but got \\\"\").concat(segment, \"\\\"\"));\n }\n path += token.prefix + segment + token.suffix;\n }\n continue;\n }\n if (typeof value === \"string\" || typeof value === \"number\") {\n var segment = encode(String(value), token);\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(\"Expected \\\"\".concat(token.name, \"\\\" to match \\\"\").concat(token.pattern, \"\\\", but got \\\"\").concat(segment, \"\\\"\"));\n }\n path += token.prefix + segment + token.suffix;\n continue;\n }\n if (optional)\n continue;\n var typeOfMessage = repeat ? \"an array\" : \"a string\";\n throw new TypeError(\"Expected \\\"\".concat(token.name, \"\\\" to be \").concat(typeOfMessage));\n }\n return path;\n };\n}\n/**\n * Create path match function from `path-to-regexp` spec.\n */\nexport function match(str, options) {\n var keys = [];\n var re = pathToRegexp(str, keys, options);\n return regexpToFunction(re, keys, options);\n}\n/**\n * Create a path match function from `path-to-regexp` output.\n */\nexport function regexpToFunction(re, keys, options) {\n if (options === void 0) { options = {}; }\n var _a = options.decode, decode = _a === void 0 ? function (x) { return x; } : _a;\n return function (pathname) {\n var m = re.exec(pathname);\n if (!m)\n return false;\n var path = m[0], index = m.index;\n var params = Object.create(null);\n var _loop_1 = function (i) {\n if (m[i] === undefined)\n return \"continue\";\n var key = keys[i - 1];\n if (key.modifier === \"*\" || key.modifier === \"+\") {\n params[key.name] = m[i].split(key.prefix + key.suffix).map(function (value) {\n return decode(value, key);\n });\n }\n else {\n params[key.name] = decode(m[i], key);\n }\n };\n for (var i = 1; i < m.length; i++) {\n _loop_1(i);\n }\n return { path: path, index: index, params: params };\n };\n}\n/**\n * Escape a regular expression string.\n */\nfunction escapeString(str) {\n return str.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n}\n/**\n * Get the flags for a regexp from the options.\n */\nfunction flags(options) {\n return options && options.sensitive ? \"\" : \"i\";\n}\n/**\n * Pull out keys from a regexp.\n */\nfunction regexpToRegexp(path, keys) {\n if (!keys)\n return path;\n var groupsRegex = /\\((?:\\?<(.*?)>)?(?!\\?)/g;\n var index = 0;\n var execResult = groupsRegex.exec(path.source);\n while (execResult) {\n keys.push({\n // Use parenthesized substring match if available, index otherwise\n name: execResult[1] || index++,\n prefix: \"\",\n suffix: \"\",\n modifier: \"\",\n pattern: \"\",\n });\n execResult = groupsRegex.exec(path.source);\n }\n return path;\n}\n/**\n * Transform an array into a regexp.\n */\nfunction arrayToRegexp(paths, keys, options) {\n var parts = paths.map(function (path) { return pathToRegexp(path, keys, options).source; });\n return new RegExp(\"(?:\".concat(parts.join(\"|\"), \")\"), flags(options));\n}\n/**\n * Create a path regexp from string input.\n */\nfunction stringToRegexp(path, keys, options) {\n return tokensToRegexp(parse(path, options), keys, options);\n}\n/**\n * Expose a function for taking tokens and returning a RegExp.\n */\nexport function tokensToRegexp(tokens, keys, options) {\n if (options === void 0) { options = {}; }\n var _a = options.strict, strict = _a === void 0 ? false : _a, _b = options.start, start = _b === void 0 ? true : _b, _c = options.end, end = _c === void 0 ? true : _c, _d = options.encode, encode = _d === void 0 ? function (x) { return x; } : _d, _e = options.delimiter, delimiter = _e === void 0 ? \"/#?\" : _e, _f = options.endsWith, endsWith = _f === void 0 ? \"\" : _f;\n var endsWithRe = \"[\".concat(escapeString(endsWith), \"]|$\");\n var delimiterRe = \"[\".concat(escapeString(delimiter), \"]\");\n var route = start ? \"^\" : \"\";\n // Iterate over the tokens and create our regexp string.\n for (var _i = 0, tokens_1 = tokens; _i < tokens_1.length; _i++) {\n var token = tokens_1[_i];\n if (typeof token === \"string\") {\n route += escapeString(encode(token));\n }\n else {\n var prefix = escapeString(encode(token.prefix));\n var suffix = escapeString(encode(token.suffix));\n if (token.pattern) {\n if (keys)\n keys.push(token);\n if (prefix || suffix) {\n if (token.modifier === \"+\" || token.modifier === \"*\") {\n var mod = token.modifier === \"*\" ? \"?\" : \"\";\n route += \"(?:\".concat(prefix, \"((?:\").concat(token.pattern, \")(?:\").concat(suffix).concat(prefix, \"(?:\").concat(token.pattern, \"))*)\").concat(suffix, \")\").concat(mod);\n }\n else {\n route += \"(?:\".concat(prefix, \"(\").concat(token.pattern, \")\").concat(suffix, \")\").concat(token.modifier);\n }\n }\n else {\n if (token.modifier === \"+\" || token.modifier === \"*\") {\n route += \"((?:\".concat(token.pattern, \")\").concat(token.modifier, \")\");\n }\n else {\n route += \"(\".concat(token.pattern, \")\").concat(token.modifier);\n }\n }\n }\n else {\n route += \"(?:\".concat(prefix).concat(suffix, \")\").concat(token.modifier);\n }\n }\n }\n if (end) {\n if (!strict)\n route += \"\".concat(delimiterRe, \"?\");\n route += !options.endsWith ? \"$\" : \"(?=\".concat(endsWithRe, \")\");\n }\n else {\n var endToken = tokens[tokens.length - 1];\n var isEndDelimited = typeof endToken === \"string\"\n ? delimiterRe.indexOf(endToken[endToken.length - 1]) > -1\n : endToken === undefined;\n if (!strict) {\n route += \"(?:\".concat(delimiterRe, \"(?=\").concat(endsWithRe, \"))?\");\n }\n if (!isEndDelimited) {\n route += \"(?=\".concat(delimiterRe, \"|\").concat(endsWithRe, \")\");\n }\n }\n return new RegExp(route, flags(options));\n}\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n */\nexport function pathToRegexp(path, keys, options) {\n if (path instanceof RegExp)\n return regexpToRegexp(path, keys);\n if (Array.isArray(path))\n return arrayToRegexp(path, keys, options);\n return stringToRegexp(path, keys, options);\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.locationToString = exports.locationIsEqual = exports.splitUri = exports.buildFrom = exports.buildUri = exports.cleanPath = void 0;\nconst qs_1 = __importDefault(require(\"qs\"));\nconst path_to_regexp_1 = require(\"path-to-regexp\");\n/**\n * Clean path by stripping subsequent \"//\"'s. Without this\n * the user must be careful when to use \"/\" or not, which leads\n * to bad UX.\n */\nconst cleanPath = (path) => (path.replace(/\\/\\/+/g, '/'));\nexports.cleanPath = cleanPath;\nconst buildUri = (uri, query = {}) => (Object.keys(query).length > 0 ? `${uri}?${qs_1.default.stringify(query)}` : uri);\nexports.buildUri = buildUri;\nfunction buildFrom(path, params, query) {\n return (0, exports.buildUri)((0, path_to_regexp_1.compile)(path)(params), query);\n}\nexports.buildFrom = buildFrom;\n/**\n * Parse uri string into string before ? and search object after ?\n * @param uri\n */\nconst splitUri = (uri) => {\n const parts = uri.split('?').filter((f) => f);\n return {\n pathname: parts.length > 0 ? parts[0] : '',\n search: qs_1.default.parse(parts[1] ? parts[1] : ''),\n };\n};\nexports.splitUri = splitUri;\nconst locationIsEqual = (a, b) => (a.search === b.search &&\n a.pathname === b.pathname &&\n a.hash === b.hash);\nexports.locationIsEqual = locationIsEqual;\nconst locationToString = ({ pathname, search }) => [\n pathname,\n search ? search.substring(1) : ''\n].filter((t) => t).join(\"?\");\nexports.locationToString = locationToString;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useLocation = void 0;\nconst react_1 = require(\"react\");\nconst useRouter_1 = require(\"./useRouter\");\nconst utils_1 = require(\"./utils\");\nconst useLocation = () => {\n const { history } = (0, useRouter_1.useRouter)();\n const [location, setLocation] = (0, react_1.useState)(() => history.location);\n (0, react_1.useEffect)(() => history.listen(newLocation => {\n if ((0, utils_1.locationIsEqual)(location, newLocation)) {\n return;\n }\n setLocation(newLocation);\n }), [location]);\n return (0, react_1.useMemo)(() => location, [location]);\n};\nexports.useLocation = useLocation;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RouterRender = void 0;\nconst react_1 = __importDefault(require(\"react\"));\nconst _1 = require(\".\");\nconst useLocation_1 = require(\"./useLocation\");\nconst RouterRender = ({ renderer, router, }) => {\n const location = (0, useLocation_1.useLocation)();\n const route = router.match((0, _1.locationToString)(location));\n if (route === null) {\n return null;\n }\n const content = renderer(route);\n return (react_1.default.createElement(_1.CurrentRouteContext.Provider, { value: { currentRoute: route } }, content));\n};\nexports.RouterRender = RouterRender;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Router = void 0;\nconst react_1 = __importDefault(require(\"react\"));\nconst RouterRender_1 = require(\"./RouterRender\");\nconst useRouter_1 = require(\"./useRouter\");\nconst Router = ({ router, history, children, renderer, }) => {\n return (react_1.default.createElement(useRouter_1.RouterContext.Provider, { value: { history, router } },\n react_1.default.createElement(RouterRender_1.RouterRender, { router: router, renderer: renderer }),\n children));\n};\nexports.Router = Router;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createHistory = exports.History = void 0;\nconst historyEvents_1 = require(\"./historyEvents\");\nclass History {\n constructor(initial) {\n this.prevId = '/';\n this.initial = initial;\n }\n get location() {\n const { pathname, search, hash } = window.location;\n return { pathname: pathname || '/', search, hash };\n }\n getId(loc) {\n const { pathname, search, hash } = loc;\n return (pathname || '') + (search || '') + (hash || '');\n }\n listen(fn) {\n // this function checks if the location has been changed since the\n // last render and updates the state only when needed.\n // unfortunately, we can't rely on `path` value here, since it can be stale,\n // that's why we store the last pathname in a ref.\n const checkForUpdates = () => {\n const newLocation = this.location;\n const id = this.getId(newLocation);\n if (this.prevId !== id) {\n this.prevId = id;\n fn(newLocation);\n }\n };\n historyEvents_1.historyEvents.forEach((e) => addEventListener(e, checkForUpdates));\n // it's possible that an update has occurred between render and the effect handler,\n // so we run additional check on mount to catch these updates. Based on:\n // https://gist.github.com/bvaughn/e25397f70e8c65b0ae0d7c90b731b189\n checkForUpdates();\n return () => historyEvents_1.historyEvents.forEach((e) => removeEventListener(e, checkForUpdates));\n }\n navigate(uri, replace) {\n const state = {};\n if (replace) {\n return history.replaceState(state, '', uri);\n }\n else {\n return history.pushState(state, '', uri);\n }\n }\n}\nexports.History = History;\nconst createHistory = (initial) => new History(initial);\nexports.createHistory = createHistory;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createHistoryStatic = exports.HistoryStatic = void 0;\nclass HistoryStatic {\n constructor(initial) {\n this.initial = initial;\n }\n get location() {\n return this.initial;\n }\n listen(fn) {\n return () => { };\n }\n navigate(uri, replace) {\n }\n}\nexports.HistoryStatic = HistoryStatic;\nconst createHistoryStatic = (initial) => new HistoryStatic(initial);\nexports.createHistoryStatic = createHistoryStatic;\n","\"use strict\";\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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RouterEngine = exports.buildRoutes = void 0;\nconst path_to_regexp_1 = require(\"path-to-regexp\");\nconst utils_1 = require(\"./utils\");\nfunction buildRoutes(routes, parentUri = '/') {\n const result = [];\n for (let i = 0; i < routes.length; i++) {\n const _a = routes[i], { children } = _a, route = __rest(_a, [\"children\"]);\n const path = route.path\n ? (0, utils_1.cleanPath)([parentUri, route.path || ''].join('/'))\n : parentUri;\n if (Array.isArray(children) && children.length > 0) {\n result.push(...buildRoutes(children, path));\n }\n if (route.component) {\n const { name, component, props } = route;\n const target = {\n name,\n component,\n path,\n props,\n route: {\n match: (0, path_to_regexp_1.match)(path),\n tokens: (0, path_to_regexp_1.parse)(path).slice(1),\n }\n };\n result.push(target);\n }\n }\n return result;\n}\nexports.buildRoutes = buildRoutes;\nclass RouterEngine {\n /**\n * @param routes\n */\n constructor(routes) {\n this.routes = [];\n this.routes = buildRoutes(routes);\n }\n /**\n * @param uri\n */\n match(uri) {\n for (let i = 0; i < this.routes.length; i++) {\n const route = this.routes[i];\n const parts = (0, utils_1.splitUri)(uri);\n const result = route.route.match(parts.pathname);\n if (result) {\n return {\n name: route.name,\n component: route.component,\n params: result.params,\n query: parts.search,\n props: route.props,\n };\n }\n }\n return null;\n }\n getRoutes() {\n return this.routes;\n }\n /**\n * @param name\n */\n findRoute(name) {\n for (let i = 0; i < this.routes.length; i++) {\n if (this.routes[i].name === name) {\n return this.routes[i];\n }\n }\n return null;\n }\n validate(name, tokens, params = {}) {\n const parameterNames = Object.keys(params);\n const tokenNames = tokens\n .slice(0, tokens.length - 1)\n .map((token) => typeof token === 'object' ? token.name : token)\n .filter((t) => !String(t).startsWith('/'));\n const diffTokens = tokenNames.filter((i) => parameterNames.indexOf(i) < 0);\n if (diffTokens.length > 0) {\n throw new Error(`Missing required parameters for ${name}: ${diffTokens.join(', ')}`);\n }\n }\n urlFor(name, params, query) {\n const route = this.findRoute(name);\n if (null === route) {\n throw new Error(`route ${name} not found`);\n }\n this.validate(name, route.route.tokens, params);\n return (0, utils_1.buildFrom)(route.path, params, query);\n }\n}\nexports.RouterEngine = RouterEngine;\n","\"use strict\";\nvar __createBinding = (this && this.__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}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nrequire(\"./monkeyPatch\");\n__exportStar(require(\"./Link\"), exports);\n__exportStar(require(\"./Redirect\"), exports);\n__exportStar(require(\"./Router\"), exports);\n__exportStar(require(\"./history\"), exports);\n__exportStar(require(\"./historyStatic\"), exports);\n__exportStar(require(\"./historyEvents\"), exports);\n__exportStar(require(\"./routing\"), exports);\n__exportStar(require(\"./utils\"), exports);\n__exportStar(require(\"./useRouter\"), exports);\n__exportStar(require(\"./useNavigate\"), exports);\n__exportStar(require(\"./useLocation\"), exports);\n","export default 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}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export function warn() {\n if (console && console.warn) {\n var _console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (typeof args[0] === 'string') args[0] = \"react-i18next:: \".concat(args[0]);\n\n (_console = console).warn.apply(_console, args);\n }\n}\nvar alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn.apply(void 0, args);\n}\n\nvar loadedClb = function loadedClb(i18n, cb) {\n return function () {\n if (i18n.isInitialized) {\n cb();\n } else {\n var initialized = function initialized() {\n setTimeout(function () {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n\n i18n.on('initialized', initialized);\n }\n };\n};\n\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, loadedClb(i18n, cb));\n}\nexport function loadLanguages(i18n, lng, ns, cb) {\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (i18n.options.ns.indexOf(n) < 0) i18n.options.ns.push(n);\n });\n i18n.loadLanguages(lng, loadedClb(i18n, cb));\n}\n\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var lng = i18n.languages[0];\n var fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n var lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = i18n.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\n\nexport function hasLoadedNamespace(ns, i18n) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n\n var isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n\n return i18n.hasLoadedNamespace(ns, {\n lng: options.lng,\n precheck: function precheck(i18nInstance, loadNotPending) {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","var matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nvar htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\n};\n\nvar unescapeHtmlEntity = function unescapeHtmlEntity(m) {\n return htmlEntities[m];\n};\n\nexport var unescape = function unescape(text) {\n return text.replace(matchHtmlEntity, unescapeHtmlEntity);\n};","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { unescape } from './unescape.js';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape: unescape\n};\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}","var i18nInstance;\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { createContext } from 'react';\nimport { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport var I18nContext = createContext();\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context.js';\nimport { warnOnce, loadNamespaces, loadLanguages, hasLoadedNamespace } from './utils.js';\n\nvar usePrevious = function usePrevious(value, ignore) {\n var ref = useRef();\n useEffect(function () {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\n\nexport function useTranslation(ns) {\n var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nFromProps = props.i18n;\n\n var _ref = useContext(I18nContext) || {},\n i18nFromContext = _ref.i18n,\n defaultNSFromContext = _ref.defaultNS;\n\n var i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n\n var notReadyT = function notReadyT(k, optsOrDefaultValue) {\n if (typeof optsOrDefaultValue === 'string') return optsOrDefaultValue;\n if (optsOrDefaultValue && _typeof(optsOrDefaultValue) === 'object' && typeof optsOrDefaultValue.defaultValue === 'string') return optsOrDefaultValue.defaultValue;\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n\n var retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n\n var i18nOptions = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), i18n.options.react), props);\n\n var useSuspense = i18nOptions.useSuspense,\n keyPrefix = i18nOptions.keyPrefix;\n var namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n var ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(function (n) {\n return hasLoadedNamespace(n, i18n, i18nOptions);\n });\n\n function getT() {\n return i18n.getFixedT(props.lng || null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n\n var _useState = useState(getT),\n _useState2 = _slicedToArray(_useState, 2),\n t = _useState2[0],\n setT = _useState2[1];\n\n var joinedNS = namespaces.join();\n if (props.lng) joinedNS = \"\".concat(props.lng).concat(joinedNS);\n var previousJoinedNS = usePrevious(joinedNS);\n var isMounted = useRef(true);\n useEffect(function () {\n var bindI18n = i18nOptions.bindI18n,\n bindI18nStore = i18nOptions.bindI18nStore;\n isMounted.current = true;\n\n if (!ready && !useSuspense) {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n } else {\n loadNamespaces(i18n, namespaces, function () {\n if (isMounted.current) setT(getT);\n });\n }\n }\n\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getT);\n }\n\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return function () {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(function (e) {\n return i18n.off(e, boundReset);\n });\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(function (e) {\n return i18n.store.off(e, boundReset);\n });\n };\n }, [i18n, joinedNS]);\n var isInitial = useRef(true);\n useEffect(function () {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n\n isInitial.current = false;\n }, [i18n, keyPrefix]);\n var ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(function (resolve) {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, function () {\n return resolve();\n });\n } else {\n loadNamespaces(i18n, namespaces, function () {\n return resolve();\n });\n }\n });\n}","export default 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}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _toArray from '@babel/runtime/helpers/esm/toArray';\n\nfunction ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Logger);\n this.init(concreteLogger, options);\n }\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }), this.options));\n }\n }, {\n key: \"clone\",\n value: function clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n }]);\n return Logger;\n}();\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n this.observers = {};\n }\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && typeof window.navigator.userAgentData === 'undefined' && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\nvar chars = [' ', ',', '?', '!', ';'];\nfunction looksLikeObjectPath(key, nsSeparator, keySeparator) {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n var possibleChars = chars.filter(function (c) {\n return nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0;\n });\n if (possibleChars.length === 0) return true;\n var r = new RegExp(\"(\".concat(possibleChars.map(function (c) {\n return c === '?' ? '\\\\?' : c;\n }).join('|'), \")\"));\n var matched = !r.test(key);\n if (!matched) {\n var ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n}\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n if (mix === undefined) return undefined;\n if (mix === null) return null;\n if (path.endsWith(p)) {\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n }\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n current = current[paths[i]];\n }\n return current;\n}\n\nfunction ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$3() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n var _super = _createSuper$3(ResourceStore);\n function ResourceStore(data) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n _classCallCheck(this, ResourceStore);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.data = data || {};\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n return _this;\n }\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread$5(_objectSpread$5({}, pack), resources);\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread$5(_objectSpread$5({}, {}), this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"hasLanguageSomeTranslations\",\n value: function hasLanguageSomeTranslations(lng) {\n var data = this.getDataByLanguage(lng);\n var n = data && Object.keys(data) || [];\n return !!n.find(function (v) {\n return data[v] && Object.keys(data[v]).length > 0;\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nfunction ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar checkedLoadedFor = {};\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n var _super = _createSuper$2(Translator);\n function Translator(services) {\n var _this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, Translator);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key === undefined || key === null) {\n return false;\n }\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS || [];\n var wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n var seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n var m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (_typeof(options) === 'object') options = _objectSpread$4({}, options);\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (returnDetails) {\n return {\n res: \"\".concat(namespace).concat(nsSeparator).concat(key),\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return \"\".concat(namespace).concat(nsSeparator).concat(key);\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace\n };\n }\n return key;\n }\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n var r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread$4(_objectSpread$4({}, options), {}, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n if (returnDetails) {\n resolved.res = r;\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread$4(_objectSpread$4({}, options), {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread$4(_objectSpread$4({}, options), {}, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n var send = function send(l, k, specificDefaultValue) {\n var defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n _this2.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language, options).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n if (this.options.compatibilityAPI !== 'v1') {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? \"\".concat(namespace, \":\").concat(key) : key, usedDefault ? res : undefined);\n } else {\n res = this.options.parseMissingKeyHandler(res);\n }\n }\n }\n if (returnDetails) {\n resolved.res = res;\n return resolved;\n }\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread$4(_objectSpread$4({}, options), {\n interpolation: _objectSpread$4(_objectSpread$4({}, this.options.interpolation), options.interpolation)\n }));\n var skipOnVariables = typeof res === 'string' && (options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n var nestBef;\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread$4(_objectSpread$4({}, this.options.interpolation.defaultVariables), data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (!options.lng && this.options.compatibilityAPI !== 'v1' && resolved && resolved.res) options.lng = resolved.usedLng;\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n return null;\n }\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread$4({\n i18nResolved: resolved\n }, options) : options, this);\n }\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n var extracted = _this4.extractFromKey(k, options);\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0 && _this4.pluralResolver.shouldUseIntlApi();\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKeys = [key];\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count, options);\n var zeroSuffix = \"\".concat(_this4.options.pluralSeparator, \"zero\");\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n var contextKey = \"\".concat(key).concat(_this4.options.contextSeparator).concat(options.context);\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n var possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n }]);\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n return p.join('-');\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n var cleanedLng = _this.formatLanguageCode(code);\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n var lngOnly = _this.getLanguagePartFromCode(code);\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng === lngOnly) return supportedLng;\n if (supportedLng.indexOf('-') < 0 && lngOnly.indexOf('-') < 0) return;\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n var addCode = function addCode(c) {\n if (!c) return;\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\nvar deprecatedJsonVersions = ['v1', 'v2', 'v3'];\nvar suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, PluralResolver);\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n if ((!this.options.compatibilityJSON || this.options.compatibilityJSON === 'v4') && (typeof Intl === 'undefined' || !Intl.PluralRules)) {\n this.options.compatibilityJSON = 'v3';\n this.logger.error('Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.');\n }\n this.rules = createRules();\n }\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (this.shouldUseIntlApi()) {\n try {\n return new Intl.PluralRules(code, {\n type: options.ordinal ? 'ordinal' : 'cardinal'\n });\n } catch (_unused) {\n return;\n }\n }\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (this.shouldUseIntlApi()) {\n return rule && rule.resolvedOptions().pluralCategories.length > 1;\n }\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(function (suffix) {\n return \"\".concat(key).concat(suffix);\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var rule = this.getRule(code, options);\n if (!rule) {\n return [];\n }\n if (this.shouldUseIntlApi()) {\n return rule.resolvedOptions().pluralCategories.sort(function (pluralCategory1, pluralCategory2) {\n return suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2];\n }).map(function (pluralCategory) {\n return \"\".concat(_this.options.prepend).concat(pluralCategory);\n });\n }\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number, options);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var rule = this.getRule(code, options);\n if (rule) {\n if (this.shouldUseIntlApi()) {\n return \"\".concat(this.options.prepend).concat(rule.select(count));\n }\n return this.getSuffixRetroCompatible(rule, count);\n }\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }, {\n key: \"getSuffixRetroCompatible\",\n value: function getSuffixRetroCompatible(rule, count) {\n var _this2 = this;\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n }, {\n key: \"shouldUseIntlApi\",\n value: function shouldUseIntlApi() {\n return !deprecatedJsonVersions.includes(this.options.compatibilityJSON);\n }\n }]);\n return PluralResolver;\n}();\n\nfunction ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction deepFindWithDefaults(data, defaultData, key) {\n var keySeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '.';\n var ignoreJSONStructure = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var path = getPathWithDefaults(data, defaultData, key);\n if (!path && ignoreJSONStructure && typeof key === 'string') {\n path = deepFind(data, key, keySeparator);\n if (path === undefined) path = deepFind(defaultData, key, keySeparator);\n }\n return path;\n}\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Interpolator);\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n this.init(options);\n }\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = deepFindWithDefaults(data, defaultData, key, _this.options.keySeparator, _this.options.ignoreJSONStructure);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: key\n })) : path;\n }\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(deepFindWithDefaults(data, defaultData, k, _this.options.keySeparator, _this.options.ignoreJSONStructure), f, lng, _objectSpread$3(_objectSpread$3(_objectSpread$3({}, options), data), {}, {\n interpolationkey: k\n }));\n };\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n var matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(matchedVar, \" for interpolating \").concat(str));\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n var clonedOptions;\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n var matchedSingleQuotes = optionsString.match(/'/g);\n var matchedDoubleQuotes = optionsString.match(/\"/g);\n if (matchedSingleQuotes && matchedSingleQuotes.length % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread$3(_objectSpread$3({}, inheritedOptions), clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n delete clonedOptions.defaultValue;\n return key;\n }\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n clonedOptions = _objectSpread$3({}, options);\n clonedOptions = clonedOptions.replace && typeof clonedOptions.replace !== 'string' ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n var doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread$3(_objectSpread$3({}, options), {}, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n }]);\n return Interpolator;\n}();\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction parseFormatStr(formatStr) {\n var formatName = formatStr.toLowerCase().trim();\n var formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n var p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n var optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n var opts = optStr.split(';');\n opts.forEach(function (opt) {\n if (!opt) return;\n var _opt$split = opt.split(':'),\n _opt$split2 = _toArray(_opt$split),\n key = _opt$split2[0],\n rest = _opt$split2.slice(1);\n var val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n if (!formatOptions[key.trim()]) formatOptions[key.trim()] = val;\n if (val === 'false') formatOptions[key.trim()] = false;\n if (val === 'true') formatOptions[key.trim()] = true;\n if (!isNaN(val)) formatOptions[key.trim()] = parseInt(val, 10);\n });\n }\n }\n return {\n formatName: formatName,\n formatOptions: formatOptions\n };\n}\nfunction createCachedFormatter(fn) {\n var cache = {};\n return function invokeFormatter(val, lng, options) {\n var key = lng + JSON.stringify(options);\n var formatter = cache[key];\n if (!formatter) {\n formatter = fn(lng, options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n}\nvar Formatter = function () {\n function Formatter() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n _classCallCheck(this, Formatter);\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n currency: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.NumberFormat(lng, _objectSpread$2(_objectSpread$2({}, opt), {}, {\n style: 'currency'\n }));\n return function (val) {\n return formatter.format(val);\n };\n }),\n datetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.DateTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n }),\n relativetime: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.RelativeTimeFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val, opt.range || 'day');\n };\n }),\n list: createCachedFormatter(function (lng, opt) {\n var formatter = new Intl.ListFormat(lng, _objectSpread$2({}, opt));\n return function (val) {\n return formatter.format(val);\n };\n })\n };\n this.init(options);\n }\n _createClass(Formatter, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n var iOpts = options.interpolation;\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n }\n }, {\n key: \"add\",\n value: function add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n }, {\n key: \"addCached\",\n value: function addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n }, {\n key: \"format\",\n value: function format(value, _format, lng) {\n var _this = this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var formats = _format.split(this.formatSeparator);\n var result = formats.reduce(function (mem, f) {\n var _parseFormatStr = parseFormatStr(f),\n formatName = _parseFormatStr.formatName,\n formatOptions = _parseFormatStr.formatOptions;\n if (_this.formats[formatName]) {\n var formatted = mem;\n try {\n var valOptions = options && options.formatParams && options.formatParams[options.interpolationkey] || {};\n var l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = _this.formats[formatName](mem, l, _objectSpread$2(_objectSpread$2(_objectSpread$2({}, formatOptions), options), valOptions));\n } catch (error) {\n _this.logger.warn(error);\n }\n return formatted;\n } else {\n _this.logger.warn(\"there was no format function for \".concat(formatName));\n }\n return mem;\n }, value);\n return result;\n }\n }]);\n return Formatter;\n}();\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction removePending(q, name) {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n}\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n var _super = _createSuper$1(Connector);\n function Connector(backend, store, services) {\n var _this;\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n _classCallCheck(this, Connector);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.waitingReads = [];\n _this.maxParallelReads = options.maxParallelReads || 10;\n _this.readingCalls = 0;\n _this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n _this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n _this.state = {};\n _this.queue = [];\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n return _this;\n }\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n var toLoad = {};\n var pending = {};\n var toLoadLanguages = {};\n var toLoadNamespaces = {};\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending: pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = {};\n var loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(function (n) {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng: lng,\n ns: ns,\n fcName: fcName,\n tried: tried,\n wait: wait,\n callback: callback\n });\n return;\n }\n this.readingCalls++;\n var resolver = function resolver(err, data) {\n _this3.readingCalls--;\n if (_this3.waitingReads.length > 0) {\n var next = _this3.waitingReads.shift();\n _this3.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < _this3.maxRetries) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n var fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n var r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return resolver(null, data);\n })[\"catch\"](resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n var clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : function () {};\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend && this.backend.create) {\n var opts = _objectSpread$1(_objectSpread$1({}, options), {}, {\n isUpdate: isUpdate\n });\n var fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n var r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(function (data) {\n return clb(null, data);\n })[\"catch\"](clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n return options;\n}\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction noop() {}\nfunction bindMemberFunctions(inst) {\n var mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(function (mem) {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n}\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n var _super = _createSuper(I18n);\n function I18n() {\n var _this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n _classCallCheck(this, I18n);\n _this = _super.call(this);\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n bindMemberFunctions(_assertThisInitialized(_this));\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n return _this;\n }\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!options.defaultNS && options.defaultNS !== false && options.ns) {\n if (typeof options.ns === 'string') {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n var defOpts = get();\n this.options = _objectSpread(_objectSpread(_objectSpread({}, defOpts), this.options), transformOptions(options));\n if (this.options.compatibilityAPI !== 'v1') {\n this.options.interpolation = _objectSpread(_objectSpread({}, defOpts.interpolation), this.options.interpolation);\n }\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n var formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else if (typeof Intl !== 'undefined') {\n formatter = Formatter;\n }\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n return _this2;\n };\n });\n var deferred = defer();\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n _this2.emit('initialized', _this2.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n var append = function append(lng) {\n if (!lng) return;\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n this.services.backendConnector.load(toLoad, this.options.ns, function (e) {\n if (!e && !_this3.resolvedLanguage && _this3.language) _this3.setResolvedLanguage(_this3.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n }, {\n key: \"setResolvedLanguage\",\n value: function setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (var li = 0; li < this.languages.length; li++) {\n var lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n var setLngProps = function setLngProps(l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n _this4.resolvedLanguage = undefined;\n _this4.setResolvedLanguage(l);\n };\n var done = function done(err, l) {\n if (l) {\n setLngProps(l);\n _this4.translator.changeLanguage(l);\n _this4.isLanguageChangingTo = undefined;\n _this4.emit('languageChanged', l);\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!_this4.language) {\n setLngProps(l);\n }\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector && _this4.services.languageDetector.cacheUserLanguage) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n var fixedT = function fixedT(key, opts) {\n var options;\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(function (k) {\n return \"\".concat(options.keyPrefix).concat(keySeparator).concat(k);\n });\n } else {\n resultKey = options.keyPrefix ? \"\".concat(options.keyPrefix).concat(keySeparator).concat(key) : key;\n }\n return _this5.t(resultKey, options);\n };\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n var lng = options.lng || this.resolvedLanguage || this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n return loadState === -1 || loadState === 2;\n };\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n var deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n var languageUtils = this.services && this.services.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var mergedOptions = _objectSpread(_objectSpread(_objectSpread({}, this.options), options), {\n isClone: true\n });\n var clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n }]);\n return I18n;\n}(EventEmitter);\n_defineProperty(I18n, \"createInstance\", function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n});\nvar instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nvar createInstance = instance.createInstance;\nvar dir = instance.dir;\nvar init = instance.init;\nvar loadResources = instance.loadResources;\nvar reloadResources = instance.reloadResources;\nvar use = instance.use;\nvar changeLanguage = instance.changeLanguage;\nvar getFixedT = instance.getFixedT;\nvar t = instance.t;\nvar exists = instance.exists;\nvar setDefaultNamespace = instance.setDefaultNamespace;\nvar hasLoadedNamespace = instance.hasLoadedNamespace;\nvar loadNamespaces = instance.loadNamespaces;\nvar loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n","/**\n * @license React\n * react-jsx-runtime.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=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import * as jsxRuntime from \"/app/node_modules/react/jsx-runtime.js\"\nexport const jsx = jsxRuntime.jsx\nexport const jsxs = jsxRuntime.jsxs\nexport const Fragment = jsxRuntime.Fragment","import * as React$1 from 'react';\nimport React__default, { Children, isValidElement, cloneElement, useState, useRef, useEffect, useCallback, useLayoutEffect, forwardRef, useMemo, createElement, useId as useId$1, createContext, useContext, memo, useReducer } from 'react';\nimport i18nLib from 'i18next';\nimport { initReactI18next, useTranslation } from 'react-i18next';\nimport { useNavigate, useRouter, Link } from 'react-justanother-router';\nimport { jsx, Fragment, jsxs } from 'react/jsx-runtime';\nimport * as require$$2 from 'react-dom';\nimport require$$2__default, { createPortal } from 'react-dom';\n\nconst DEFAULT_SPACING = 2;\nconst defaultShadow = {\n small: '0px 2px 8px 0px rgba(106, 115, 129, 0.12)',\n medium: '0px 3px 8px 0px rgba(87, 102, 117, 0.06), 0px 6px 12px 0px rgba(106, 115, 129, 0.16)',\n high: '0px 3px 8px 0px rgba(87, 102, 117, 0.06), 0px 6px 12px 0px rgba(106, 115, 129, 0.16)',\n};\nconst defaultLightColors = {\n // neutrals\n 'neutrals-1': '#FFFFFF',\n 'neutrals-2': '#f8f9fb',\n 'neutrals-3': '#eef1f6',\n 'neutrals-4': '#e4e8ee',\n 'neutrals-5': '#CDD3DD',\n 'neutrals-6': '#a8b1bd',\n 'neutrals-7': '#798597',\n 'neutrals-8': '#1f2329',\n // primary\n 'primary-1': '#4067CA',\n 'primary-2': '#3E599F',\n 'primary-3': '#839BD7',\n // on primary\n 'on-primary-1': '#F5F6FA',\n 'on-primary-2': '#F7FCFF',\n 'on-primary-3': '#CFD6E8',\n // secondary\n 'secondary-1': '#EFF0F3',\n 'secondary-2': '#ECEDEF',\n 'secondary-3': '#F8F8F9',\n // on secondary\n 'on-secondary-1': '#717B99',\n 'on-secondary-2': '#727781',\n 'on-secondary-3': '#9599A2',\n // surface\n 'surface-1': '#fff',\n 'surface-2': '#fafafc',\n 'surface-3': '#f0f2f6',\n 'surface-4': '#47547C',\n 'surface-5': '#333E60',\n // on surface primary\n 'on-surface-primary-1': '#3c4654',\n 'on-surface-primary-2': '#69798f',\n 'on-surface-primary-3': '#a3afc2',\n // on surface secondary\n 'on-surface-secondary-1': '#A3A9BD',\n 'on-surface-secondary-2': '#717B99',\n 'on-surface-secondary-3': '#C7CAD1',\n // outline\n 'outline-1': '#dfe2eb',\n 'outline-2': '#c5cedb',\n 'outline-3': '#dfe4ec',\n // error\n 'error-1': '#F8E1DE',\n 'error-2': '#B8433D',\n 'error-3': '#9E3A34',\n // warning\n 'warning-1': '#fdf5d5',\n 'warning-2': '#F0A717',\n // success\n 'success-1': '#dffcec',\n 'success-2': '#3D7A21',\n // other\n 'text-link': '#034ab3',\n};\nconst defaultDarkColors = {\n // neutrals\n 'neutrals-1': '#FFFFFF',\n 'neutrals-2': '#f8f9fb',\n 'neutrals-3': '#eef1f6',\n 'neutrals-4': '#e4e8ee',\n 'neutrals-5': '#CDD3DD',\n 'neutrals-6': '#a8b1bd',\n 'neutrals-7': '#798597',\n 'neutrals-8': '#1f2329',\n // primary\n 'primary-1': '#0060aa',\n 'primary-2': '#00518f',\n 'primary-3': '#e1ecf4',\n // on primary\n 'on-primary-1': '#f7fcff',\n 'on-primary-2': '#f7fcff',\n 'on-primary-3': '#aabfcf',\n // secondary\n 'secondary-1': '#e4e8ee',\n 'secondary-2': '#e4e8ee',\n 'secondary-3': '#eff2f7',\n // on secondary\n 'on-secondary-1': '#475262',\n 'on-secondary-2': '#798597',\n 'on-secondary-3': '#a8b1bd',\n // surface\n 'surface-1': '#fff',\n 'surface-2': '#fafafc',\n 'surface-3': '#f0f2f6',\n 'surface-4': '#47547C',\n 'surface-5': '#333E60',\n // on surface primary\n 'on-surface-primary-1': '#3c4654',\n 'on-surface-primary-2': '#69798f',\n 'on-surface-primary-3': '#a3afc2',\n // on surface secondary\n 'on-surface-secondary-1': '#a1afc1',\n 'on-surface-secondary-2': '#475262',\n 'on-surface-secondary-3': '#a3afc2',\n // outline\n 'outline-1': '#dfe2eb',\n 'outline-2': '#c5cedb',\n 'outline-3': '#dfe4ec',\n // error\n 'error-1': '#f8e1de',\n 'error-2': '#cd4842',\n 'error-3': '#9E3A34',\n // warning\n 'warning-1': '#fdf5d5',\n 'warning-2': '#f4b73f',\n // success\n 'success-1': '#dffcec',\n 'success-2': '#49822f',\n // other\n 'text-link': '#034ab3',\n};\nconst defaultTheme = {\n fontFamily: 'Inter, sans-serif',\n fontFamilySecondary: 'Clear Sans, sans-serif',\n spacing: DEFAULT_SPACING,\n borderRadius: {\n small: DEFAULT_SPACING * 2,\n medium: DEFAULT_SPACING * 4,\n large: DEFAULT_SPACING * 5,\n 'x-large': DEFAULT_SPACING * 6,\n 'xx-large': DEFAULT_SPACING * 8,\n 'xxx-large': DEFAULT_SPACING * 12,\n },\n mode: {\n light: {\n shadow: defaultShadow,\n colors: defaultLightColors,\n },\n dark: {\n shadow: defaultShadow,\n colors: defaultDarkColors,\n },\n },\n};\n\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj);\n}\nfunction mergeDeep(source = {}, target = {}, arrayFn) {\n const out = {};\n for (const key in source) {\n out[key] = source[key];\n }\n for (const key in target) {\n const sourceProperty = source[key];\n const targetProperty = target[key];\n if (isObject(sourceProperty) && isObject(targetProperty)) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn);\n continue;\n }\n if (Array.isArray(sourceProperty) &&\n Array.isArray(targetProperty) &&\n arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty);\n continue;\n }\n out[key] = targetProperty;\n }\n return out;\n}\n\nfunction childrenWithProps({ children, ...props }) {\n return Children.map(children, (child) => isValidElement(child) &&\n cloneElement(child, { ...props, ...child.props }));\n}\n\nconst isBoolean = (val) => typeof val === 'boolean';\nconst isArray$1 = (val) => Array.isArray(val);\nconst isUndefined$1 = (val) => typeof val == 'undefined';\nconst isNumber$1 = (val) => typeof val === 'number' && isFinite(val) && !isNaN(val);\nconst isString$1 = (val) => typeof val === 'string';\nconst isForwardRef = (component) => !!(component?.type?.$$typeof && typeof component.type.render === 'function');\n\nconst stopPropagation = (e) => {\n e.stopPropagation();\n};\nconst preventDefault = (e) => {\n e.preventDefault();\n};\nconst stopEvent = (e) => {\n preventDefault(e);\n stopPropagation(e);\n};\nconst fireEvent = (ref, event) => {\n const nativeEvent = new Event(event, { bubbles: true });\n ref?.dispatchEvent(nativeEvent);\n};\n\nconst setCssVar = (name, value) => {\n document.documentElement.style.setProperty(`--${name}`, value);\n};\nconst setCssPxVar = (name, value) => {\n setCssVar(name, `${value}px`);\n};\n\nconst setBorderRadiusVars = (radii) => {\n Object.entries(radii).forEach(([key, value]) => setCssPxVar(`radius-${key}`, value));\n};\nconst setShadowVars = (shadows) => {\n Object.entries(shadows).forEach(([key, value]) => setCssVar(`shadow-${key}`, value));\n};\nconst setColorsVars = (colors) => {\n Object.entries(colors).forEach(([key, value]) => setCssVar(key, value));\n};\n\nconst updateThemeMode = (theme, mode) => {\n const { colors, shadow } = theme.mode[mode];\n setShadowVars(shadow);\n setColorsVars(colors);\n document.body.setAttribute('data-theme', mode);\n};\nconst mergeThemeWithOptions = (options) => {\n const modes = options?.mode;\n if (modes)\n Object.entries(modes).forEach(([key, values]) => {\n if (key !== 'light' && key !== 'dark') {\n modes[key] = mergeDeep(defaultTheme.mode.light, values);\n }\n });\n return mergeDeep(defaultTheme, options);\n};\nconst createTheme = (params, initMode) => {\n const theme = mergeThemeWithOptions(params);\n setCssVar('font-family', theme.fontFamily);\n setCssVar('font-family-secondary', theme.fontFamilySecondary);\n setCssPxVar('spacing', theme.spacing);\n setBorderRadiusVars(theme.borderRadius);\n updateThemeMode(theme, initMode);\n return theme;\n};\n\nconst russianTranslate = {\n Pagination: {\n buttonText: 'Перейти',\n inputLabel: 'Перейти на страницу',\n },\n Select: {\n notFound: 'Не найдено',\n },\n CopyHash: {\n tooltipText: 'Скопировано в буфер обмена!',\n },\n Calendar: {\n apply: 'Применить',\n date: 'Дата',\n },\n};\nconst englishTranslate = {\n Pagination: {\n buttonText: 'Go',\n inputLabel: 'Go to Page',\n },\n Select: {\n notFound: 'Not found',\n },\n CopyHash: {\n tooltipText: 'Copied to clipboard!',\n },\n Calendar: {\n apply: 'Apply',\n date: 'Date',\n },\n};\nconst defaultTranslations = {\n ru: { translation: russianTranslate },\n en: { translation: englishTranslate },\n};\n\nconst initI18n = (initLang, resources) => {\n const i18n = window.i18n || i18nLib;\n if (i18n.isInitialized) {\n Object.entries(resources).forEach(([lang, values]) => i18n.addResourceBundle(lang, 'translation', values.translation, true));\n }\n else {\n i18n.use(initReactI18next).init({\n fallbackLng: initLang,\n lng: initLang,\n debug: true,\n resources,\n interpolation: {\n escapeValue: false,\n },\n saveMissing: true,\n saveMissingTo: 'all',\n });\n }\n};\n\nconst mergeLangWithOptions = (langs) => {\n if (langs)\n Object.entries(langs).forEach(([key, values]) => {\n if (key !== 'ru' && key !== 'en') {\n langs[key] = mergeDeep(defaultTranslations.en, values);\n }\n });\n return mergeDeep(defaultTranslations, langs);\n};\nconst createLang = (params, initLang) => {\n const lang = mergeLangWithOptions(params);\n initI18n(initLang, lang);\n return lang;\n};\n\nlet initedLang = 'en';\nlet initedMode = 'light';\nlet initialTheme;\nconst createGoblin = (params) => {\n const { theme, initMode, lang, initLang } = params || {};\n initedMode = initMode || initedMode;\n initedLang = initLang || initedLang;\n initialTheme = {\n theme: createTheme(theme || {}, initedMode),\n lang: createLang(lang || {}, initedLang),\n };\n return initialTheme;\n};\n\nconst useTheme = () => {\n const [mode, setMode] = useState(initedMode);\n const updateMode = (mode) => {\n setMode(mode);\n updateThemeMode(initialTheme.theme, mode);\n };\n return [\n { updateMode },\n {\n mode,\n theme: initialTheme.theme,\n },\n ];\n};\n\nconst useLang = () => {\n const [lang, setLang] = useState(initedLang);\n const updateLang = (lang) => {\n i18nLib.changeLanguage(lang);\n setLang(lang);\n };\n return [updateLang, lang];\n};\n\nconst useIsMounted = () => {\n const isMounted = useRef(false);\n useEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return useCallback(() => isMounted.current, []);\n};\n\nfunction useOnClickOutside(ref, handler, event = 'click') {\n useLayoutEffect(() => {\n const handleClickOutside = (event) => {\n const el = ref?.current;\n if (!el || el.contains(event.target))\n return;\n handler(event);\n };\n window.addEventListener(event, handleClickOutside);\n return () => {\n window.removeEventListener(event, handleClickOutside);\n };\n }, []);\n}\n\nconst useCopyToClipboard = () => {\n const [copiedText, setCopiedText] = useState(null);\n const copy = useCallback(async (text) => {\n if (!navigator?.clipboard) {\n console.warn('Clipboard not supported');\n return false;\n }\n try {\n await navigator.clipboard.writeText(text);\n setCopiedText(text);\n return true;\n }\n catch (error) {\n console.warn('Copy failed', error);\n setCopiedText(null);\n return false;\n }\n }, []);\n return [copiedText, copy];\n};\n\nconst useRouterPath = () => {\n const { urlFor } = useNavigate();\n const { history } = useRouter();\n const isActive = (name) => String(history.location.pathname).startsWith(urlFor(name));\n return {\n checkActivePath: isActive,\n };\n};\n\nconst useKeyHandler = (callback, key = 'Enter') => {\n useEffect(() => {\n const handleKeyDown = (event) => {\n if (event.key === key &&\n !event.altKey &&\n !event.ctrlKey &&\n !event.metaKey &&\n !event.shiftKey) {\n callback();\n }\n };\n window.addEventListener('keydown', handleKeyDown);\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n };\n }, [callback]);\n};\n\nfunction useForm(callback, initialState, initialErrors) {\n const [values, setValues] = useState(initialState);\n const [errors, setErrors] = useState(initialErrors ?? {});\n const isChecked = (value) => value === '1' || value === true || value === 'true';\n const reset = useCallback(() => {\n setValues(initialState);\n setErrors({});\n }, [initialState]);\n const onChange = useCallback((e) => {\n if (!(e.target instanceof HTMLInputElement) &&\n !(e.target instanceof HTMLTextAreaElement) &&\n !(e.target instanceof HTMLSelectElement))\n return;\n const { type, value, name } = e.target;\n if (type === 'file') {\n const files = e.target.files || [];\n const file = files[0];\n setValues((state) => ({\n ...state,\n [name]: value.trim(),\n [`${name}File`]: file,\n }));\n }\n else if (type === 'checkbox' || type === 'radio') {\n const inputValue = e.target.checked;\n setValues((state) => ({\n ...state,\n [name]: inputValue,\n }));\n }\n else {\n setValues((state) => ({\n ...state,\n [name]: value,\n }));\n }\n }, []);\n const setBatchValues = useCallback((newValues) => {\n setValues((state) => ({\n ...state,\n ...newValues,\n }));\n }, []);\n const setFormErrors = (formErrors) => {\n formErrors && setErrors(formErrors);\n };\n const onSubmitTrigger = useCallback(async () => {\n await callback(values, setFormErrors, setBatchValues, reset);\n }, [callback, reset, setBatchValues, values]);\n const onCmdEnterSubmit = useCallback((e) => {\n const isEnter = e.code === 'Enter' || e.code === 'NumpadEnter';\n const isCtrl = e.ctrlKey || e.metaKey;\n if (isEnter && isCtrl) {\n e.preventDefault();\n e.stopPropagation();\n onSubmitTrigger();\n }\n }, [onSubmitTrigger]);\n const onSubmit = async (e) => {\n e.preventDefault();\n await onSubmitTrigger();\n };\n return {\n setBatchValues,\n onCmdEnterSubmit,\n onChange,\n setFormErrors,\n errors,\n onSubmit,\n onSubmitTrigger,\n isChecked,\n reset,\n values,\n };\n}\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z$z = \".typography-module_typography__IwWZz {\\n font-family: var(--font-family);\\n transition: color 0.2s ease;\\n}\\n.typography-module_typography--head-32__6PfVA {\\n font-size: 32px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 40px;\\n letter-spacing: -0.5px;\\n}\\n.typography-module_typography--head-24__OgQ2a {\\n font-family: var(--font-family-secondary);\\n font-size: 24px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 28px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--head-20__2Fmmr {\\n font-size: 20px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 24px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--head-16__kUWFK {\\n font-size: 16px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 24px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--head-14__6U9Ac {\\n font-size: 14px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 20px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--head-12__GWsH5 {\\n font-size: 12px;\\n font-style: normal;\\n font-weight: 700;\\n line-height: 16px;\\n letter-spacing: 0.4px;\\n}\\n.typography-module_typography--body-16__UB1Nf {\\n font-size: 16px;\\n font-style: normal;\\n font-weight: 400;\\n line-height: 22px;\\n letter-spacing: -0.5px;\\n}\\n.typography-module_typography--body-14__7ERxH {\\n font-size: 14px;\\n font-style: normal;\\n font-weight: 400;\\n line-height: 20px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--body-12__q2KUe {\\n font-size: 12px;\\n font-style: normal;\\n font-weight: 400;\\n line-height: 16px;\\n letter-spacing: -0.3px;\\n}\\n.typography-module_typography--uppercase-14__Gs-OR {\\n font-size: 14px;\\n font-style: normal;\\n font-weight: 600;\\n line-height: 20px;\\n letter-spacing: -0.3px;\\n text-transform: uppercase;\\n}\\n.typography-module_typography--ellipsis__qfhDy {\\n text-overflow: ellipsis;\\n overflow: hidden;\\n white-space: nowrap;\\n}\";\nvar styles$y = {\"typography\":\"typography-module_typography__IwWZz\",\"typography--head-32\":\"typography-module_typography--head-32__6PfVA\",\"typography--head-24\":\"typography-module_typography--head-24__OgQ2a\",\"typography--head-20\":\"typography-module_typography--head-20__2Fmmr\",\"typography--head-16\":\"typography-module_typography--head-16__kUWFK\",\"typography--head-14\":\"typography-module_typography--head-14__6U9Ac\",\"typography--head-12\":\"typography-module_typography--head-12__GWsH5\",\"typography--body-16\":\"typography-module_typography--body-16__UB1Nf\",\"typography--body-14\":\"typography-module_typography--body-14__7ERxH\",\"typography--body-12\":\"typography-module_typography--body-12__q2KUe\",\"typography--uppercase-14\":\"typography-module_typography--uppercase-14__Gs-OR\",\"typography--ellipsis\":\"typography-module_typography--ellipsis__qfhDy\"};\nstyleInject(css_248z$z);\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nfunction getAugmentedNamespace(n) {\n if (n.__esModule) return n;\n var f = n.default;\n\tif (typeof f == \"function\") {\n\t\tvar a = function a () {\n\t\t\tif (this instanceof a) {\n return Reflect.construct(f, arguments, this.constructor);\n\t\t\t}\n\t\t\treturn f.apply(this, arguments);\n\t\t};\n\t\ta.prototype = f.prototype;\n } else a = {};\n Object.defineProperty(a, '__esModule', {value: true});\n\tObject.keys(n).forEach(function (k) {\n\t\tvar d = Object.getOwnPropertyDescriptor(n, k);\n\t\tObject.defineProperty(a, k, d.get ? d : {\n\t\t\tenumerable: true,\n\t\t\tget: function () {\n\t\t\t\treturn n[k];\n\t\t\t}\n\t\t});\n\t});\n\treturn a;\n}\n\nvar classnames = {exports: {}};\n\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n\n(function (module) {\n\t/* global define */\n\n\t(function () {\n\n\t\tvar hasOwn = {}.hasOwnProperty;\n\n\t\tfunction classNames() {\n\t\t\tvar classes = [];\n\n\t\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\t\tvar arg = arguments[i];\n\t\t\t\tif (!arg) continue;\n\n\t\t\t\tvar argType = typeof arg;\n\n\t\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\t\tclasses.push(arg);\n\t\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\t\tif (arg.length) {\n\t\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\t\tif (inner) {\n\t\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else if (argType === 'object') {\n\t\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn classes.join(' ');\n\t\t}\n\n\t\tif (module.exports) {\n\t\t\tclassNames.default = classNames;\n\t\t\tmodule.exports = classNames;\n\t\t} else {\n\t\t\twindow.classNames = classNames;\n\t\t}\n\t}()); \n} (classnames));\n\nvar classnamesExports = classnames.exports;\nvar cx = /*@__PURE__*/getDefaultExportFromCjs(classnamesExports);\n\nconst Typography = forwardRef(({ tag: Tag = 'p', variant, color, ellipsis, className, children, to, style = {}, onClick, ...rest }, forwardedRef) => {\n const curStyle = {\n ...(() => (color ? { color: `var(--${color})` } : {}))(),\n ...style,\n };\n const classes = cx(styles$y.typography, styles$y[`typography--${variant}`], ellipsis && styles$y['typography--ellipsis'], className);\n const props = {\n className: classes,\n style: curStyle,\n ...rest,\n };\n const tagProps = {\n onClick: onClick,\n ref: forwardedRef,\n ...props,\n };\n if (to)\n return (jsx(Link, { to: to, ...props, children: children }));\n return jsx(Tag, { ...tagProps, children: children });\n});\n\nvar css_248z$y = \".tab-item-module_tabItem__-n4V2 {\\n padding: calc(var(--spacing) * 7) 0;\\n cursor: pointer;\\n text-transform: uppercase;\\n color: var(--on-surface-primary-2);\\n transition: color 0.2s ease;\\n position: relative;\\n background-color: transparent;\\n border: none;\\n outline: none;\\n}\\n.tab-item-module_tabItem__-n4V2:after {\\n content: \\\"\\\";\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n width: 100%;\\n background: var(--primary-1);\\n height: var(--spacing);\\n opacity: 0;\\n transition: opacity 0.2s ease;\\n}\\n.tab-item-module_tabItem__-n4V2:hover, .tab-item-module_tabItem_active__rdIZ8 {\\n color: var(--on-surface-primary-1);\\n}\\n.tab-item-module_tabItem_active__rdIZ8:after {\\n opacity: 1;\\n}\\n.tab-item-module_tabItem_disabled__TaSll {\\n color: var(--on-surface-primary-3);\\n pointer-events: none;\\n}\";\nvar styles$x = {\"tabItem\":\"tab-item-module_tabItem__-n4V2\",\"tabItem_active\":\"tab-item-module_tabItem_active__rdIZ8\",\"tabItem_disabled\":\"tab-item-module_tabItem_disabled__TaSll\"};\nstyleInject(css_248z$y);\n\n// Usage only in children Tabs component\nconst TabItem = ({ label, active, disabled, value, onChange, children, onClick, ...rest }) => {\n return (jsx(Typography, { tag: \"button\", className: cx(styles$x.tabItem, active && styles$x.tabItem_active, disabled && styles$x.tabItem_disabled), onClick: (e) => {\n onChange && onChange(value);\n onClick && onClick(e);\n }, variant: \"uppercase-14\", ...rest, children: label || children }));\n};\n\nvar css_248z$x = \".tabs-module_tabs__vjtJl {\\n display: inline-flex;\\n gap: calc(var(--spacing) * 10);\\n}\";\nvar styles$w = {\"tabs\":\"tabs-module_tabs__vjtJl\"};\nstyleInject(css_248z$x);\n\nconst Tabs = ({ initValue: initValueProps, keyValue, onChange, children, className, ...rest }) => {\n const childrenArr = useMemo(() => {\n const arrComponents = Array.isArray(children) ? children : [children];\n // filter all components except TabItem\n const filteredComponents = arrComponents.filter((el) => el.type.name === TabItem.name);\n if (arrComponents.length > filteredComponents.length)\n console.error('Only TabItem components can be passed to the Tabs component');\n return filteredComponents;\n }, [children]);\n const initValue = initValueProps || childrenArr[0]?.props?.value || 0;\n const [tab, setTab] = useState(initValue);\n const handleClickTab = (value) => {\n setTab(value);\n onChange && onChange(value);\n };\n const isObjectTabValue = (value) => {\n return !!(isObject(value) && isObject(tab) && keyValue);\n };\n const getKeyTab = ({ value }, idx) => {\n if (isObjectTabValue(value))\n return value[keyValue];\n else if (value)\n return value;\n return idx;\n };\n const getActiveTab = (props, idx) => {\n const tabValue = getKeyTab(props, idx);\n if (isObjectTabValue(props.value))\n return tabValue === tab[keyValue];\n return tabValue === tab;\n };\n return (jsx(\"div\", { className: cx(styles$w.tabs, className), ...rest, children: childrenArr.map((el, idx) => cloneElement(el, {\n active: getActiveTab(el?.props, idx),\n key: getKeyTab(el?.props, idx),\n onChange: () => handleClickTab(el?.props?.value || idx),\n ...(el?.props || {}),\n })) }));\n};\n\nvar css_248z$w = \".buttons-module_button__7jPwm {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n text-align: center;\\n outline: none;\\n border: none;\\n cursor: pointer;\\n}\\n.buttons-module_button_disabled__BGvTm {\\n pointer-events: none;\\n}\\n.buttons-module_button_fullWidth__DXEeR {\\n display: flex;\\n width: 100%;\\n}\\n.buttons-module_button_size-default__vJnWe {\\n min-height: calc(var(--spacing) * 20);\\n padding: calc(var(--spacing) * 5) calc(var(--spacing) * 7);\\n border-radius: var(--radius-x-large);\\n}\\n.buttons-module_button_size-default__vJnWe.buttons-module_button_variant-outlined__JKZYX {\\n padding: calc(var(--spacing) * 5 - 1px) calc(var(--spacing) * 7);\\n}\\n.buttons-module_button_size-large__nZh1J {\\n min-height: calc(var(--spacing) * 16);\\n padding: calc(var(--spacing) * 6) calc(var(--spacing) * 10);\\n border-radius: var(--radius-x-large);\\n}\\n.buttons-module_button_size-large__nZh1J.buttons-module_button_variant-outlined__JKZYX {\\n padding: calc(var(--spacing) * 6 - 1px) calc(var(--spacing) * 10);\\n}\\n.buttons-module_button_size-small__IvsdD {\\n min-height: calc(var(--spacing) * 16);\\n padding: calc(var(--spacing) * 3) calc(var(--spacing) * 6);\\n border-radius: var(--radius-large);\\n}\\n.buttons-module_button_size-small__IvsdD.buttons-module_button_variant-outlined__JKZYX {\\n padding: calc(var(--spacing) * 3 - 1px) calc(var(--spacing) * 6);\\n}\\n.buttons-module_button_hasPrependIcon__g59HF {\\n display: grid;\\n align-items: center;\\n grid-auto-columns: minmax(0, max-content);\\n grid-auto-flow: column;\\n grid-gap: calc(var(--spacing) * 2);\\n}\\n.buttons-module_button_hasPrependIcon__g59HF.buttons-module_button_size-large__nZh1J {\\n padding-left: calc(var(--spacing) * 8);\\n}\\n.buttons-module_button_icon__uGEw6.buttons-module_button_size-large__nZh1J {\\n padding-left: calc(var(--spacing) * 10);\\n}\\n.buttons-module_button_size-default__vJnWe.buttons-module_button_icon__uGEw6, .buttons-module_button_size-large__nZh1J.buttons-module_button_icon__uGEw6 {\\n grid-gap: 0;\\n padding: calc(var(--spacing) * 6);\\n}\\n.buttons-module_button_size-default__vJnWe.buttons-module_button_icon__uGEw6.buttons-module_button_variant-outlined__JKZYX, .buttons-module_button_size-large__nZh1J.buttons-module_button_icon__uGEw6.buttons-module_button_variant-outlined__JKZYX {\\n padding: calc(var(--spacing) * 6 - 1px);\\n}\\n.buttons-module_button_size-small__IvsdD.buttons-module_button_icon__uGEw6 {\\n grid-gap: 0;\\n padding: calc(var(--spacing) * 4);\\n}\\n.buttons-module_button_size-small__IvsdD.buttons-module_button_icon__uGEw6.buttons-module_button_variant-outlined__JKZYX {\\n padding: calc(var(--spacing) * 4 - 1px);\\n}\\n.buttons-module_button_variant-default__38809 {\\n transition: color, background-color, border-color 0.2s ease;\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-default__38809 {\\n background-color: var(--primary-1);\\n color: var(--on-primary-1);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-default__38809:hover, .buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-default__38809.buttons-module_button_active__u973h {\\n color: var(--on-primary-2);\\n background-color: var(--primary-2);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-default__38809.buttons-module_button_disabled__BGvTm {\\n color: var(--on-primary-3);\\n background: var(--primary-3);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-outlined__JKZYX {\\n background-color: var(--surface-1);\\n border: 1px solid var(--outline-1);\\n color: var(--on-surface-primary-1);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-outlined__JKZYX:hover, .buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-outlined__JKZYX.buttons-module_button_active__u973h {\\n color: var(--on-surface-primary-2);\\n background: var(--surface-2);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-outlined__JKZYX.buttons-module_button_disabled__BGvTm {\\n color: var(--on-surface-primary-3);\\n border-color: var(--outline-3);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-text__DrsO3 {\\n background-color: transparent;\\n color: var(--on-surface-primary-1);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-text__DrsO3:hover, .buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-text__DrsO3.buttons-module_button_active__u973h {\\n color: var(--on-surface-primary-2);\\n}\\n.buttons-module_button_color-primary__8XKhC.buttons-module_button_variant-text__DrsO3.buttons-module_button_disabled__BGvTm {\\n color: var(--on-surface-primary-3);\\n}\\n.buttons-module_button_color-secondary__P4wY2.buttons-module_button_variant-default__38809 {\\n background-color: var(--secondary-1);\\n color: var(--on-secondary-1);\\n}\\n.buttons-module_button_color-secondary__P4wY2.buttons-module_button_variant-default__38809:hover, .buttons-module_button_color-secondary__P4wY2.buttons-module_button_variant-default__38809.buttons-module_button_active__u973h {\\n color: var(--on-secondary-2);\\n background: var(--secondary-2);\\n}\\n.buttons-module_button_color-secondary__P4wY2.buttons-module_button_variant-default__38809.buttons-module_button_disabled__BGvTm {\\n color: var(--on-primary-3);\\n background: var(--secondary-3);\\n}\\n.buttons-module_button_color-danger__1UFB5.buttons-module_button_variant-default__38809 {\\n background-color: var(--error-2);\\n color: var(--surface-1);\\n}\\n.buttons-module_button_color-danger__1UFB5.buttons-module_button_variant-default__38809:hover, .buttons-module_button_color-danger__1UFB5.buttons-module_button_variant-default__38809.buttons-module_button_active__u973h {\\n color: var(--surface-1);\\n background: var(--error-3);\\n}\\n.buttons-module_button_color-danger__1UFB5.buttons-module_button_variant-default__38809.buttons-module_button_disabled__BGvTm {\\n color: var(--on-secondary-3);\\n background: var(--secondary-3);\\n}\";\nvar styles$v = {\"button\":\"buttons-module_button__7jPwm\",\"button_disabled\":\"buttons-module_button_disabled__BGvTm\",\"button_fullWidth\":\"buttons-module_button_fullWidth__DXEeR\",\"button_size-default\":\"buttons-module_button_size-default__vJnWe\",\"button_variant-outlined\":\"buttons-module_button_variant-outlined__JKZYX\",\"button_size-large\":\"buttons-module_button_size-large__nZh1J\",\"button_size-small\":\"buttons-module_button_size-small__IvsdD\",\"button_hasPrependIcon\":\"buttons-module_button_hasPrependIcon__g59HF\",\"button_icon\":\"buttons-module_button_icon__uGEw6\",\"button_variant-default\":\"buttons-module_button_variant-default__38809\",\"button_color-primary\":\"buttons-module_button_color-primary__8XKhC\",\"button_active\":\"buttons-module_button_active__u973h\",\"button_variant-text\":\"buttons-module_button_variant-text__DrsO3\",\"button_color-secondary\":\"buttons-module_button_color-secondary__P4wY2\",\"button_color-danger\":\"buttons-module_button_color-danger__1UFB5\"};\nstyleInject(css_248z$w);\n\nvar css_248z$v = \".loader-module_loader__exAp7 {\\n display: inline-block;\\n position: relative;\\n overflow: hidden;\\n border-style: solid;\\n animation: loader-module_spinner-animation__6k7wh infinite linear;\\n border-radius: 50%;\\n}\\n\\n@keyframes loader-module_spinner-animation__6k7wh {\\n from {\\n transform: rotate(0deg);\\n }\\n to {\\n transform: rotate(360deg);\\n }\\n}\";\nvar styles$u = {\"loader\":\"loader-module_loader__exAp7\",\"spinner-animation\":\"loader-module_spinner-animation__6k7wh\"};\nstyleInject(css_248z$v);\n\nconst Loader = ({ size = 24, width = 2, speed = 1000, colorSpinner = 'primary-1', colorTrack = 'secondary-1', className, style, ...rest }) => {\n const styleAttr = {\n width: `${size}px`,\n height: `${size}px`,\n animationDuration: `${speed}ms`,\n borderWidth: `${width}px`,\n borderColor: `var(--${colorTrack}) var(--${colorTrack}) var(--${colorTrack})\n var(--${colorSpinner})`,\n ...style,\n };\n return (jsx(\"div\", { className: cx(styles$u.loader, className), \"data-testid\": \"loader\", style: styleAttr, ...rest }));\n};\n\nvar css_248z$u = \".loader-overlay-module_loaderOverlay__IK6Wz {\\n cursor: wait;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n right: 0;\\n width: 100%;\\n height: 100%;\\n z-index: 1000;\\n}\\n.loader-overlay-module_loaderOverlay_fixed__ppvqQ {\\n background: none;\\n position: fixed;\\n}\\n.loader-overlay-module_loaderOverlay__loader__W1MDB {\\n position: relative;\\n z-index: 11;\\n}\";\nvar styles$t = {\"loaderOverlay\":\"loader-overlay-module_loaderOverlay__IK6Wz\",\"loaderOverlay_fixed\":\"loader-overlay-module_loaderOverlay_fixed__ppvqQ\",\"loaderOverlay__loader\":\"loader-overlay-module_loaderOverlay__loader__W1MDB\"};\nstyleInject(css_248z$u);\n\nvar css_248z$t = \".overlay-module_overlay__5itjW {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n}\";\nvar styles$s = {\"overlay\":\"overlay-module_overlay__5itjW\"};\nstyleInject(css_248z$t);\n\nconst Overlay = ({ zIndex = 10, background = 'rgba(37, 40, 63, 0.4)', className, style, ...rest }) => {\n const stylesAttr = {\n zIndex,\n background,\n ...style,\n };\n return (jsx(\"div\", { className: cx(styles$s.overlay, className), style: stylesAttr, \"data-testid\": \"overlay\", ...rest }));\n};\n\nconst Fade = ({ isOpen, duration = 150, children, }) => {\n let timer;\n const [shouldRender, setShouldRender] = useState(isOpen);\n const [curIsOpen, setCurIsOpen] = useState(isOpen);\n useEffect(() => {\n if (isOpen) {\n setShouldRender(true);\n timer = setTimeout(() => setCurIsOpen(true), duration);\n }\n else {\n setCurIsOpen(false);\n timer = setTimeout(() => setShouldRender(false), duration);\n }\n return () => clearTimeout(timer);\n }, [isOpen]);\n const stylesAttr = {\n opacity: curIsOpen ? 1 : 0,\n transition: `opacity ${duration}ms ease-in-out`,\n };\n if (!shouldRender)\n return jsx(Fragment, {});\n return isValidElement(children) ? (cloneElement(children, {\n ...children.props,\n 'data-testid': 'fade',\n style: { ...stylesAttr, ...(children.props?.style || {}) },\n })) : (jsx(\"div\", { style: stylesAttr, \"data-testid\": \"fade\", children: children }));\n};\n\nconst LoaderOverlay = ({ fixed, show, loaderProps, overlayProps, offset, }) => {\n return (jsx(Fade, { isOpen: !!show, children: jsxs(\"div\", { \"data-testid\": \"loader-overlay\", className: cx(styles$t.loaderOverlay, fixed && styles$t.loaderOverlay_fixed), style: { top: offset?.top, left: offset?.left }, children: [jsx(Overlay, { background: 'rgba(255, 255, 255, .5)', ...overlayProps }), jsx(Loader, { className: styles$t.loaderOverlay__loader, ...loaderProps })] }) }));\n};\n\nconst Button = forwardRef(({ size = 'default', variant = 'default', color = 'primary', disabled, fullWidth, className, children, onClick, prependIcon, loading, icon, active, ...rest }, forwardRef) => {\n const classes = cx(styles$v.button, styles$v[`button_size-${size}`], styles$v[`button_variant-${variant}`], styles$v[`button_color-${color}`], disabled && styles$v.button_disabled, active && styles$v.button_active, fullWidth && styles$v.button_fullWidth, prependIcon && styles$v.button_hasPrependIcon, icon && styles$v.button_icon, className);\n const getTypographyVariant = () => {\n switch (size) {\n case 'default':\n case 'small':\n return 'body-14';\n case 'large':\n return 'body-16';\n }\n return 'body-16';\n };\n return (jsx(Typography, { ref: forwardRef, tag: \"button\", variant: getTypographyVariant(), className: classes, onClick: onClick, ...rest, children: loading ? (jsx(Loader, { size: 16 })) : (jsxs(Fragment, { children: [prependIcon &&\n createElement(prependIcon, {\n width: size === 'large' ? 24 : 16,\n height: size === 'large' ? 24 : 16,\n }), ' ', jsx(\"span\", { children: !icon && children })] })) }));\n});\n\nconst ResetIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { viewBox: \"0 0 24 24\", width: width, height: height, ...rest, children: jsx(\"path\", { d: \"M4 5.78149V10.4482H8.66667 M5.95222 14.3261C6.45653 15.7575 7.41237 16.9862 8.67574 17.8271C9.9391 18.6681 11.4415 19.0756 12.9567 18.9884C14.4718 18.9012 15.9176 18.324 17.0761 17.3437C18.2346 16.3633 19.0432 15.033 19.38 13.5532C19.7167 12.0734 19.5634 10.5243 18.9432 9.13915C18.3229 7.75404 17.2693 6.60803 15.9411 5.87378C14.6129 5.13954 13.082 4.85684 11.5792 5.06828C10.0764 5.27972 8.68293 5.97385 7.60889 7.04608L4 10.4372\", stroke: color, fill: \"none\", fillRule: \"evenodd\", clipRule: \"evenodd\" }) }));\n};\n\nconst DocumentIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", fill: color, d: \"M4.23223 2.2322C4.70107 1.76336 5.33696 1.49997 6 1.49997H14C14.1326 1.49997 14.2598 1.55265 14.3536 1.64642L20.3536 7.64642C20.4473 7.74018 20.5 7.86736 20.5 7.99997V20C20.5 20.663 20.2366 21.2989 19.7678 21.7677C19.2989 22.2366 18.663 22.5 18 22.5H6C5.33696 22.5 4.70107 22.2366 4.23223 21.7677C3.76339 21.2989 3.5 20.663 3.5 20V3.99997C3.5 3.33693 3.76339 2.70104 4.23223 2.2322ZM6 2.49997C5.60218 2.49997 5.22064 2.658 4.93934 2.93931C4.65804 3.22061 4.5 3.60214 4.5 3.99997V20C4.5 20.3978 4.65804 20.7793 4.93934 21.0606C5.22064 21.3419 5.60218 21.5 6 21.5H18C18.3978 21.5 18.7794 21.3419 19.0607 21.0606C19.342 20.7793 19.5 20.3978 19.5 20V8.49997H14C13.7239 8.49997 13.5 8.27611 13.5 7.99997V2.49997H6ZM14.5 3.20708L18.7929 7.49997H14.5V3.20708Z\" }) }));\n};\n\nconst UkIcon = ({ width = 24, height = 24, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\", fill: \"#F2F2F2\" }), jsx(\"path\", { d: \"M4.06645 5.91211C3.28094 6.9341 2.68863 8.11203 2.34375 9.39168H7.54602L4.06645 5.91211Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M21.6553 9.39164C21.3104 8.11203 20.7181 6.9341 19.9326 5.91211L16.4531 9.39164H21.6553Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M2.34375 14.6084C2.68867 15.888 3.28098 17.0659 4.06645 18.0879L7.5459 14.6084H2.34375Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M18.0889 4.06746C17.0669 3.28195 15.889 2.68965 14.6094 2.34473V7.54695L18.0889 4.06746Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M5.91211 19.9326C6.9341 20.7181 8.11203 21.3104 9.39164 21.6553V16.4531L5.91211 19.9326Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M9.3916 2.34473C8.11199 2.68965 6.93406 3.28195 5.91211 4.06742L9.3916 7.54691V2.34473Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M14.6094 21.6553C15.889 21.3104 17.0669 20.7181 18.0889 19.9326L14.6094 16.4531V21.6553Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M16.4531 14.6084L19.9326 18.0879C20.7181 17.066 21.3104 15.888 21.6553 14.6084H16.4531Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M21.9154 10.6957H13.3044H13.3044V2.08465C12.8774 2.02906 12.4421 2 12 2C11.5579 2 11.1226 2.02906 10.6957 2.08465V10.6956V10.6956H2.08465C2.02906 11.1226 2 11.5579 2 12C2 12.4421 2.02906 12.8774 2.08465 13.3043H10.6956H10.6956V21.9154C11.1226 21.9709 11.5579 22 12 22C12.4421 22 12.8774 21.971 13.3043 21.9154V13.3044V13.3044H21.9154C21.9709 12.8774 22 12.4421 22 12C22 11.5579 21.9709 11.1226 21.9154 10.6957Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M14.6094 14.6084L19.0717 19.0708C19.277 18.8656 19.4727 18.6511 19.6595 18.4288L15.8391 14.6084H14.6094V14.6084Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M9.39207 14.6084H9.39199L4.92969 19.0707C5.13484 19.2759 5.34934 19.4717 5.57168 19.6585L9.39207 15.838V14.6084Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M9.39195 9.39117V9.39109L4.92961 4.92871C4.72438 5.13387 4.52859 5.34836 4.3418 5.5707L8.16223 9.39113H9.39195V9.39117Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M14.6094 9.39102L19.0718 4.92859C18.8666 4.72336 18.6521 4.52758 18.4298 4.34082L14.6094 8.16125V9.39102Z\", fill: \"#D80027\" })] }));\n};\n\nconst UkDenseIcon = ({ width = 16, height = 16, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8.00065 14.6663C11.6826 14.6663 14.6673 11.6816 14.6673 7.99967C14.6673 4.31778 11.6826 1.33301 8.00065 1.33301C4.31875 1.33301 1.33398 4.31778 1.33398 7.99967C1.33398 11.6816 4.31875 14.6663 8.00065 14.6663Z\", fill: \"#F2F2F2\" }), jsx(\"path\", { d: \"M2.71096 3.94141C2.18729 4.62273 1.79242 5.40802 1.5625 6.26112H5.03068L2.71096 3.94141Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M14.4369 6.26109C14.207 5.40802 13.8121 4.62273 13.2884 3.94141L10.9688 6.26109H14.4369Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M1.5625 9.73926C1.79245 10.5923 2.18732 11.3776 2.71096 12.0589L5.0306 9.73926H1.5625Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M12.058 2.71099C11.3766 2.18732 10.5914 1.79245 9.73828 1.5625V5.03065L12.058 2.71099Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M3.93945 13.2884C4.62078 13.8121 5.40607 14.2069 6.25914 14.4369V10.9688L3.93945 13.2884Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M6.25911 1.5625C5.40604 1.79245 4.62076 2.18732 3.93945 2.71096L6.25911 5.03063V1.5625Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M9.73828 14.4369C10.5914 14.2069 11.3766 13.8121 12.0579 13.2884L9.73828 10.9688V14.4369Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M10.9688 9.73926L13.2884 12.0589C13.8121 11.3776 14.207 10.5923 14.4369 9.73926H10.9688Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M14.6089 7.13109H8.86831H8.86828V1.39042C8.58362 1.35336 8.29341 1.33398 7.9987 1.33398C7.70393 1.33398 7.41378 1.35336 7.12914 1.39042V7.13104V7.13107H1.38846C1.35141 7.41573 1.33203 7.70594 1.33203 8.00065C1.33203 8.29542 1.35141 8.58557 1.38846 8.87021H7.12909H7.12912V14.6109C7.41378 14.6479 7.70393 14.6673 7.9987 14.6673C8.29341 14.6673 8.58362 14.648 8.86826 14.6109V8.87026V8.87023H14.6089C14.646 8.58557 14.6654 8.29542 14.6654 8.00065C14.6654 7.70594 14.646 7.41573 14.6089 7.13109Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M9.73828 9.73928L12.7132 12.7142C12.85 12.5774 12.9805 12.4344 13.1051 12.2862L10.5581 9.73926H9.73828V9.73928Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M6.26008 9.73926H6.26003L3.28516 12.7141C3.42193 12.851 3.56492 12.9815 3.71315 13.106L6.26008 10.559V9.73926Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M6.2613 6.26111V6.26105L3.28641 3.28613C3.14958 3.4229 3.01906 3.5659 2.89453 3.71413L5.44148 6.26108H6.2613V6.26111Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M9.73828 6.26133L12.7132 3.28638C12.5764 3.14956 12.4334 3.01904 12.2852 2.89453L9.73828 5.44148V6.26133Z\", fill: \"#D80027\" })] }));\n};\n\nconst RussiaIcon = ({ width = 24, height = 24, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", fill: \"#F2F2F2\" }), jsx(\"path\", { d: \"M21.378 15.478C21.78 14.3946 22 13.2229 22 11.9997C22 10.7765 21.78 9.6048 21.378 8.52148H2.62199C2.22004 9.6048 2 10.7765 2 11.9997C2 13.2229 2.22004 14.3946 2.62199 15.478L12 16.3475L21.378 15.478Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M11.9991 22.0003C16.2987 22.0003 19.9642 19.2865 21.3771 15.4785H2.62109C4.03402 19.2865 7.69945 22.0003 11.9991 22.0003Z\", fill: \"#D80027\" })] }));\n};\n\nconst RussiaDenseIcon = ({ width = 16, height = 16, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"8.00065\", cy: \"7.99967\", r: \"6.66667\", fill: \"#F2F2F2\" }), jsx(\"path\", { d: \"M14.2507 10.3193C14.5187 9.59708 14.6653 8.81594 14.6653 8.00047C14.6653 7.185 14.5187 6.40385 14.2507 5.68164H1.74669C1.47872 6.40385 1.33203 7.185 1.33203 8.00047C1.33203 8.81594 1.47872 9.59708 1.74669 10.3193L7.99869 10.899L14.2507 10.3193Z\", fill: \"#0052B4\" }), jsx(\"path\", { d: \"M7.99809 14.6662C10.8645 14.6662 13.3081 12.857 14.2501 10.3184H1.74609C2.68805 12.857 5.13166 14.6662 7.99809 14.6662Z\", fill: \"#D80027\" })] }));\n};\n\nconst SpainIcon = ({ width = 24, height = 24, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M2 12.0832C2 13.3064 2.22004 14.4781 2.62199 15.5614L12 16.431L21.378 15.5614C21.7799 14.4781 22 13.3064 22 12.0832C22 10.86 21.7799 9.68824 21.378 8.60492L12 7.73535L2.62199 8.60492C2.22004 9.68824 2 10.86 2 12.0832V12.0832Z\", fill: \"#FFDA44\" }), jsx(\"path\", { d: \"M21.3771 8.60477C19.9642 4.7968 16.2987 2.08301 11.9991 2.08301C7.69945 2.08301 4.03402 4.7968 2.62109 8.60477H21.3771Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M2.62109 15.5615C4.03402 19.3695 7.69945 22.0833 11.9991 22.0833C16.2987 22.0833 19.9642 19.3695 21.3771 15.5615H2.62109Z\", fill: \"#D80027\" })] }));\n};\n\nconst SpainDenseIcon = ({ width = 16, height = 16, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M1.33398 8.05577C1.33398 8.87124 1.48068 9.65238 1.74865 10.3746L8.00064 10.9543L14.2526 10.3746C14.5206 9.65238 14.6673 8.87124 14.6673 8.05577C14.6673 7.2403 14.5206 6.45915 14.2526 5.73694L8.00064 5.15723L1.74865 5.73694C1.48068 6.45915 1.33398 7.2403 1.33398 8.05577V8.05577Z\", fill: \"#FFDA44\" }), jsx(\"path\", { d: \"M14.2501 5.73651C13.3081 3.19786 10.8645 1.38867 7.99809 1.38867C5.13166 1.38867 2.68805 3.19786 1.74609 5.73651H14.2501Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M1.74609 10.374C2.68805 12.9127 5.13166 14.7219 7.99809 14.7219C10.8645 14.7219 13.3081 12.9127 14.2501 10.374H1.74609Z\", fill: \"#D80027\" })] }));\n};\n\nconst PortugalIcon = ({ width = 24, height = 24, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M2 12.0001C2 16.2997 4.71375 19.9651 8.52167 21.378L9.39128 12L8.52167 2.62207C4.71375 4.03504 2 7.70043 2 12.0001Z\", fill: \"#6DA544\" }), jsx(\"path\", { d: \"M21.9998 12C21.9998 6.47719 17.5226 2 11.9998 2C10.7766 2 9.60484 2.22004 8.52148 2.62199V21.378C9.60484 21.78 10.7766 22 11.9998 22C17.5226 22 21.9998 17.5228 21.9998 12Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M8.52121 15.478C10.4422 15.478 11.9994 13.9207 11.9994 11.9997C11.9994 10.0787 10.4422 8.52148 8.52121 8.52148C6.60023 8.52148 5.04297 10.0787 5.04297 11.9997C5.04297 13.9207 6.60023 15.478 8.52121 15.478Z\", fill: \"#FFDA44\" }), jsx(\"path\", { d: \"M6.56445 10.2607V12.4346C6.56445 13.5152 7.44039 14.3912 8.52097 14.3912C9.60156 14.3912 10.4775 13.5152 10.4775 12.4346V10.2607H6.56445Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M8.52133 13.0871C8.16172 13.0871 7.86914 12.7946 7.86914 12.435V11.5654H9.17347V12.435C9.17347 12.7946 8.8809 13.0871 8.52133 13.0871Z\", fill: \"#F0F0F0\" })] }));\n};\n\nconst PortugalDenseIcon = ({ width = 16, height = 16, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, \"data-testid\": \"multicolor\", viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M1.33203 8.00005C1.33203 10.8665 3.1412 13.3101 5.67981 14.252L6.25955 8.00003L5.67981 1.74805C3.1412 2.69003 1.33203 5.13362 1.33203 8.00005Z\", fill: \"#6DA544\" }), jsx(\"path\", { d: \"M14.6652 8.00065C14.6652 4.31878 11.6804 1.33398 7.99856 1.33398C7.1831 1.33398 6.40193 1.48068 5.67969 1.74865V14.2527C6.40193 14.5207 7.1831 14.6673 7.99856 14.6673C11.6804 14.6673 14.6652 11.6825 14.6652 8.00065Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M5.68015 10.3193C6.9608 10.3193 7.99898 9.28112 7.99898 8.00047C7.99898 6.71982 6.9608 5.68164 5.68015 5.68164C4.3995 5.68164 3.36133 6.71982 3.36133 8.00047C3.36133 9.28112 4.3995 10.3193 5.68015 10.3193Z\", fill: \"#FFDA44\" }), jsx(\"path\", { d: \"M4.375 6.84082V8.29009C4.375 9.01046 4.95896 9.59444 5.67935 9.59444C6.39974 9.59444 6.98369 9.01048 6.98369 8.29009V6.84082H4.375Z\", fill: \"#D80027\" }), jsx(\"path\", { d: \"M5.68088 8.72542C5.44115 8.72542 5.24609 8.53036 5.24609 8.29063V7.71094H6.11565V8.29065C6.11565 8.53037 5.9206 8.72542 5.68088 8.72542Z\", fill: \"#F0F0F0\" })] }));\n};\n\nconst DesignIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"rect\", { width: \"5.78605\", height: \"5.78605\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 12 3)\", fill: color }), jsx(\"rect\", { width: \"5.78605\", height: \"5.78605\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 7.0918 7.91016)\", fill: color }), jsx(\"rect\", { width: \"5.78605\", height: \"5.78605\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 16.9082 7.91016)\", fill: color }), jsx(\"rect\", { width: \"5.78605\", height: \"5.78605\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 12 12.8184)\", fill: color })] }));\n};\n\nconst DesignDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"rect\", { width: \"5.14364\", height: \"5.14364\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 8 -0.000976562)\", fill: color }), jsx(\"rect\", { width: \"5.14364\", height: \"5.14364\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 3.63672 4.36426)\", fill: color }), jsx(\"rect\", { width: \"5.14364\", height: \"5.14364\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 12.3613 4.36426)\", fill: color }), jsx(\"rect\", { width: \"5.14364\", height: \"5.14364\", transform: \"matrix(0.707105 0.707109 -0.707105 0.707109 8 8.72754)\", fill: color })] }));\n};\n\nconst ArrowRightLongIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M12 16L16 12M16 12L12 8M16 12H8\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowRightLongDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M8 12L12 8M12 8L8 4M12 8H4\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowLeftLongIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M12 16L8 12M8 12L12 8M8 12H16\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowLeftLongDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M8 12L4 8M4 8L8 4M4 8H12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowBottomLongIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 5V18\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M19 12L12 19L5 12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst ArrowBottomLongDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8 1V15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M15 8L8 15L1 8\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst ArrowTopIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M19 15L12 9L5 15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowTopDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M14 10L8 5L2 10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowBottomIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M5 10L12 16L19 10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowBottomDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M2 6L8 11L14 6\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowLeftIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M14 5L8 12L14 19\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowLeftDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M10 2L5 8L10 14\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowRightIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M10 19L16 12L10 5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ArrowRightDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M6 14L11 8L6 2\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst MoreIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 7C12.5523 7 13 6.55228 13 6C13 5.44772 12.5523 5 12 5C11.4477 5 11 5.44772 11 6C11 6.55228 11.4477 7 12 7Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 19C12.5523 19 13 18.5523 13 18C13 17.4477 12.5523 17 12 17C11.4477 17 11 17.4477 11 18C11 18.5523 11.4477 19 12 19Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst MoreDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8 9C8.55228 9 9 8.55228 9 8C9 7.44772 8.55228 7 8 7C7.44772 7 7 7.44772 7 8C7 8.55228 7.44772 9 8 9Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8 3C8.55228 3 9 2.55228 9 2C9 1.44772 8.55228 1 8 1C7.44772 1 7 1.44772 7 2C7 2.55228 7.44772 3 8 3Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8 15C8.55228 15 9 14.5523 9 14C9 13.4477 8.55228 13 8 13C7.44772 13 7 13.4477 7 14C7 14.5523 7.44772 15 8 15Z\", fill: color, stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst MoreHorizontalIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 25 25\", fill: \"none\", ...rest, children: [jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M17.1943 12.875C17.1943 13.4273 17.6421 13.875 18.1943 13.875C18.7466 13.875 19.1943 13.4273 19.1943 12.875C19.1943 12.3227 18.7466 11.875 18.1943 11.875C17.6421 11.875 17.1943 12.3227 17.1943 12.875ZM11.1943 12.875C11.1943 13.4273 11.6421 13.875 12.1943 13.875C12.7466 13.875 13.1943 13.4273 13.1943 12.875C13.1943 12.3227 12.7466 11.875 12.1943 11.875C11.6421 11.875 11.1943 12.3227 11.1943 12.875ZM6.19434 13.875C5.64205 13.875 5.19434 13.4273 5.19434 12.875C5.19434 12.3227 5.64205 11.875 6.19434 11.875C6.74662 11.875 7.19434 12.3227 7.19434 12.875C7.19434 13.4273 6.74662 13.875 6.19434 13.875Z\", fill: color }), jsx(\"path\", { d: \"M18.1943 13.375C17.9182 13.375 17.6943 13.1511 17.6943 12.875L16.6943 12.875C16.6943 13.7034 17.3659 14.375 18.1943 14.375L18.1943 13.375ZM18.6943 12.875C18.6943 13.1511 18.4705 13.375 18.1943 13.375L18.1943 14.375C19.0228 14.375 19.6943 13.7034 19.6943 12.875L18.6943 12.875ZM18.1943 12.375C18.4705 12.375 18.6943 12.5989 18.6943 12.875L19.6943 12.875C19.6943 12.0466 19.0228 11.375 18.1943 11.375L18.1943 12.375ZM17.6943 12.875C17.6943 12.5989 17.9182 12.375 18.1943 12.375L18.1943 11.375C17.3659 11.375 16.6943 12.0466 16.6943 12.875L17.6943 12.875ZM12.1943 13.375C11.9182 13.375 11.6943 13.1511 11.6943 12.875L10.6943 12.875C10.6943 13.7034 11.3659 14.375 12.1943 14.375L12.1943 13.375ZM12.6943 12.875C12.6943 13.1511 12.4705 13.375 12.1943 13.375L12.1943 14.375C13.0228 14.375 13.6943 13.7034 13.6943 12.875L12.6943 12.875ZM12.1943 12.375C12.4705 12.375 12.6943 12.5989 12.6943 12.875L13.6943 12.875C13.6943 12.0466 13.0228 11.375 12.1943 11.375L12.1943 12.375ZM11.6943 12.875C11.6943 12.5989 11.9182 12.375 12.1943 12.375L12.1943 11.375C11.3659 11.375 10.6943 12.0466 10.6943 12.875L11.6943 12.875ZM4.69434 12.875C4.69434 13.7034 5.36591 14.375 6.19434 14.375L6.19434 13.375C5.91819 13.375 5.69434 13.1511 5.69434 12.875L4.69434 12.875ZM6.19434 11.375C5.36591 11.375 4.69434 12.0466 4.69434 12.875L5.69434 12.875C5.69434 12.5989 5.91819 12.375 6.19434 12.375L6.19434 11.375ZM7.69434 12.875C7.69434 12.0466 7.02276 11.375 6.19434 11.375L6.19434 12.375C6.47048 12.375 6.69434 12.5989 6.69434 12.875L7.69434 12.875ZM6.19434 14.375C7.02276 14.375 7.69434 13.7034 7.69434 12.875L6.69434 12.875C6.69434 13.1511 6.47048 13.375 6.19434 13.375L6.19434 14.375Z\", fill: color })] }));\n};\n\nconst SortIcon = ({ width = 24, height = 24, color = 'currentColor', classNameTop, classNameBottom, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { className: classNameTop, d: \"M8 9L12 6L16 9\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { className: classNameBottom, d: \"M16 15L12 18L8 15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SortDenseIcon = ({ width = 16, height = 16, color = 'currentColor', classNameTop, classNameBottom, ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { className: classNameTop, d: \"M4 5L8 2L12 5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { className: classNameBottom, d: \"M12 11L8 14L4 11\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst LockIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M17.6008 9.59961H6.40078C5.51713 9.59961 4.80078 10.4788 4.80078 11.5632V18.436C4.80078 19.5205 5.51713 20.3996 6.40078 20.3996H17.6008C18.4844 20.3996 19.2008 19.5205 19.2008 18.436V11.5632C19.2008 10.4788 18.4844 9.59961 17.6008 9.59961Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8.40039 9.5V7C8.40039 5.93913 8.77968 4.92172 9.45481 4.17157C10.1299 3.42143 11.0456 3 12.0004 3C12.9552 3 13.8708 3.42143 14.546 4.17157C15.2211 4.92172 15.6004 5.93913 15.6004 7V9.5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst LockDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12.6667 6H3.33333C2.59695 6 2 6.73262 2 7.63636V13.3636C2 14.2674 2.59695 15 3.33333 15H12.6667C13.403 15 14 14.2674 14 13.3636V7.63636C14 6.73262 13.403 6 12.6667 6Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5 6V4.07692C5 3.26087 5.31607 2.47825 5.87868 1.90121C6.44129 1.32417 7.20435 1 8 1C8.79565 1 9.55871 1.32417 10.1213 1.90121C10.6839 2.47825 11 3.26087 11 4.07692V6\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CopyIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...rest, children: [jsx(\"path\", { d: \"M13.1538 9H4.84615C3.82655 9 3 9.82655 3 10.8462V19.1538C3 20.1734 3.82655 21 4.84615 21H13.1538C14.1734 21 15 20.1734 15 19.1538V10.8462C15 9.82655 14.1734 9 13.1538 9Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9 5.76923L9 4.84615C9 4.35652 9.19451 3.88695 9.54073 3.54073C9.88695 3.1945 10.3565 3 10.8462 3L19.1538 3C19.6435 3 20.1131 3.1945 20.4593 3.54073C20.8055 3.88695 21 4.35652 21 4.84615L21 13.1538C21 13.6435 20.8055 14.1131 20.4593 14.4593C20.1131 14.8055 19.6435 15 19.1538 15L18.2308 15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CopyDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...rest, children: [jsx(\"path\", { d: \"M8.61539 6H2.38462C1.61991 6 1 6.61991 1 7.38462V13.6154C1 14.3801 1.61991 15 2.38462 15H8.61539C9.38009 15 10 14.3801 10 13.6154V7.38462C10 6.61991 9.38009 6 8.61539 6Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M6 3.07692L6 2.38462C6 2.01739 6.14588 1.66521 6.40554 1.40554C6.66521 1.14588 7.01739 1 7.38462 1L13.6154 1C13.9826 1 14.3348 1.14588 14.5945 1.40554C14.8541 1.66521 15 2.01739 15 2.38462L15 8.61538C15 8.98261 14.8541 9.33479 14.5945 9.59446C14.3348 9.85412 13.9826 10 13.6154 10L12.9231 10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CheckRoundIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"9.5\", stroke: color }), jsx(\"path\", { d: \"M9 12.5L11 14.5L15.5 10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CheckRoundDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"8\", cy: \"8\", r: \"7\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5.59961 8.39941L7.19961 9.99941L10.7996 6.39941\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CloseRoundIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"9.5\", stroke: color }), jsx(\"path\", { d: \"M9 15L15 9\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9 9L15 15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CloseRoundDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"8\", cy: \"8\", r: \"7\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5.59961 10.3996L10.3996 5.59961\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5.60039 5.59961L10.4004 10.3996\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst EditIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M16.6168 3.75204C16.8552 3.51361 17.1383 3.32448 17.4498 3.19545C17.7613 3.06641 18.0952 3 18.4324 3C18.7696 3 19.1035 3.06641 19.415 3.19545C19.7265 3.32448 20.0095 3.51361 20.248 3.75204C20.4864 3.99046 20.6755 4.27351 20.8046 4.58503C20.9336 4.89655 21 5.23043 21 5.56761C21 5.90479 20.9336 6.23868 20.8046 6.55019C20.6755 6.86171 20.4864 7.14476 20.248 7.38319L7.99283 19.6383L3 21L4.36168 16.0072L16.6168 3.75204Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst EditDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M11.5909 1.58492C11.7763 1.39948 11.9964 1.25238 12.2387 1.15201C12.481 1.05165 12.7407 1 13.003 1C13.2652 1 13.5249 1.05165 13.7672 1.15201C14.0095 1.25238 14.2296 1.39948 14.4151 1.58492C14.6005 1.77036 14.7476 1.99051 14.848 2.2328C14.9483 2.47509 15 2.73478 15 2.99703C15 3.25928 14.9483 3.51897 14.848 3.76126C14.7476 4.00355 14.6005 4.2237 14.4151 4.40914L4.88331 13.9409L1 15L2.05909 11.1167L11.5909 1.58492Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst ExportIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M4 12V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M16 6L12 2L8 6\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 2V15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst ExportDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M2 9V13.8C2 14.1183 2.15804 14.4235 2.43934 14.6485C2.72064 14.8736 3.10218 15 3.5 15H12.5C12.8978 15 13.2794 14.8736 13.5607 14.6485C13.842 14.4235 14 14.1183 14 13.8V9\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 5L8 1L4 5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8 2L8 11\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst TrashIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M3 6H5H21\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8 6V4C8 3.46957 8.21071 2.96086 8.58579 2.58579C8.96086 2.21071 9.46957 2 10 2H14C14.5304 2 15.0391 2.21071 15.4142 2.58579C15.7893 2.96086 16 3.46957 16 4V6M19 6V20C19 20.5304 18.7893 21.0391 18.4142 21.4142C18.0391 21.7893 17.5304 22 17 22H7C6.46957 22 5.96086 21.7893 5.58579 21.4142C5.21071 21.0391 5 20.5304 5 20V6H19Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst TrashDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M1 4H2.55556H15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M4.88802 3.9996V2.55556C4.88802 2.143 5.05191 1.74733 5.34363 1.45561C5.63536 1.16389 6.03102 1 6.44358 1H9.55469C9.96725 1 10.3629 1.16389 10.6546 1.45561C10.9464 1.74733 11.1102 2.143 11.1102 2.55556V3.9996M13.4436 3.9996V13.9996C13.4436 14.4122 13.2797 14.8078 12.988 15.0995C12.6962 15.3913 12.3006 15.5552 11.888 15.5552H4.11024C3.69768 15.5552 3.30202 15.3913 3.0103 15.0995C2.71858 14.8078 2.55469 14.4122 2.55469 13.9996V3.9996H13.4436Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CloseIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M5 5L19 19\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M19 5L5 19\", stroke: color, strokeLinecap: \"round\" })] }));\n};\n\nconst CloseDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M2 2L14 14\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M14 2L2 14\", stroke: color, strokeLinecap: \"round\" })] }));\n};\n\nconst CheckIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M5 12.6957L8.9375 17L19 6\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst CheckDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M1 8.69565L4.9375 13L15 2\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst PlusIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 5V19\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M19 12L5 12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst PlusDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8 1V15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M15 8L1 8\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst MinusIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M19 12H5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst MinusDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M15 8H1\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst SearchIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M21.0004 21.0004L16.6504 16.6504\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SearchDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M7 13C10.3137 13 13 10.3137 13 7C13 3.68629 10.3137 1 7 1C3.68629 1 1 3.68629 1 7C1 10.3137 3.68629 13 7 13Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M11.5 11.5L15 15\", stroke: color, strokeLinecap: \"round\" })] }));\n};\n\nconst VisualizationIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"12\", cy: \"5\", r: \"3\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"6\", cy: \"17\", r: \"3\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"18\", cy: \"17\", r: \"3\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M12 9V12.5L8 15\", stroke: color }), jsx(\"path\", { d: \"M12 8V12.5L16 15\", stroke: color })] }));\n};\n\nconst VisualizationDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"8\", cy: \"3\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"3\", cy: \"13\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"13\", cy: \"13\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M8 7V8.91667L4.5 11.5\", stroke: color }), jsx(\"path\", { d: \"M8 5V8.91667L11.5 11.5\", stroke: color })] }));\n};\n\nconst ImportIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M16 12L12 8L8 12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 8V19\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M6.44444 21H4C2.89543 21 2 20.1046 2 19V4C2 2.89543 2.89543 2 4 2H20C21.1046 2 22 2.89543 22 4V19C22 20.1046 21.1046 21 20 21H17.5556\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst ImportDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M11.0521 8.42116L7.89422 5.05273L4.73633 8.42116\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M7.89453 5.05273V14.3159\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M4.11111 15H3C1.89543 15 1 14.1046 1 13V3C1 1.89543 1.89543 1 3 1H13C14.1046 1 15 1.89543 15 3V13C15 14.1046 14.1046 15 13 15H11.8889\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CompassIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M16.2398 7.75977L14.1198 14.1198L7.75977 16.2398L9.87977 9.87977L16.2398 7.75977Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CompassDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M11 5L9.5 9.5L5 11L6.5 6.5L11 5Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CodeIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M16 18L22 12L16 6\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8 6L2 12L8 18\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CodeDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M11 12L15 8L11 4\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5 4L1 8L5 12\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SwapIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...rest, children: [jsx(\"path\", { d: \"M17 1L21 5M21 5L17 9M21 5H6C4.34315 5 3 6.34315 3 8V10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M7 23L3 19M3 19L7 15M3 19H18C19.6569 19 21 17.6569 21 16V14\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SwapDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...rest, children: [jsx(\"path\", { d: \"M11.3333 1L14 3.66667M14 3.66667L11.3333 6.33333M14 3.66667H4C2.89543 3.66667 2 4.5621 2 5.66667V7\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M4.66862 15L2.00195 12.3333M2.00195 12.3333L4.66862 9.66667M2.00195 12.3333H12.002C13.1065 12.3333 14.002 11.4379 14.002 10.3333V9\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst InfoIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M11 15.5012H13.3103\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12.1583 15.5018V11.25H11.0078\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12.0999 8.24533C12.0999 8.38345 11.9879 8.49543 11.8498 8.49543C11.7117 8.49543 11.5997 8.38345 11.5997 8.24533C11.5997 8.1072 11.7117 7.99522 11.8498 7.99522\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M11.8498 7.99527C11.9879 7.99527 12.0999 8.10725 12.0999 8.24538\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst InfoDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"circle\", { cx: \"8\", cy: \"8\", r: \"7\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M7 11.8811H9.3103\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8.15829 11.8807V7.62891H7.00781\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M8.10188 4.62521C8.10188 4.76334 7.9899 4.87531 7.85177 4.87531C7.71364 4.87531 7.60167 4.76334 7.60167 4.62521C7.60167 4.48708 7.71364 4.3751 7.85177 4.3751\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M7.85172 4.37516C7.98985 4.37516 8.10182 4.48713 8.10182 4.62526\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst InfoSlabDenseIcon = ({ width = 16, height = 16, color = 'currentColor', fill = 'none', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: fill, ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", stroke: color, d: \"M15 8C15 11.866 11.866 15 8 15C4.13401 15 1 11.866 1 8C1 4.13401 4.13401 1 8 1C11.866 1 15 4.13401 15 8ZM8 4.17532C8.33137 4.17532 8.6 4.44395 8.6 4.77532V8.16887C8.6 8.50024 8.33137 8.76887 8 8.76887C7.66863 8.76887 7.4 8.50024 7.4 8.16887V4.77532C7.4 4.44395 7.66863 4.17532 8 4.17532ZM8 11.5341C8.37538 11.5341 8.67969 11.2298 8.67969 10.8544C8.67969 10.4791 8.37538 10.1747 8 10.1747C7.62462 10.1747 7.32031 10.4791 7.32031 10.8544C7.32031 11.2298 7.62462 11.5341 8 11.5341Z\", fill: fill }) }));\n};\n\nconst TableIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"rect\", { x: \"3.5\", y: \"3.5\", width: \"17\", height: \"17\", rx: \"1.5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9 3.5V20.5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M4 9L20 9\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst TableDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"rect\", { x: \"0.5\", y: \"0.5\", width: \"15\", height: \"15\", rx: \"1.5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5 0.444336V15.5554\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M0.888672 5L15.1109 5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst FiltersIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M10 18L21 18\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M4 18H5\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M19 12H21\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M4 12H14\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M10 6L21 6\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M4 6H5\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"7.5\", cy: \"6\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"7.5\", cy: \"18\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"16.5\", cy: \"12\", r: \"2\", stroke: color, strokeLinecap: \"round\" })] }));\n};\n\nconst FiltersDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M14 8H15\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M1 8H10\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M6 3L15 3\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M6 13L15 13\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M1 3L2 3\", stroke: color, strokeLinecap: \"round\" }), jsx(\"path\", { d: \"M1 13L2 13\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"4\", cy: \"3\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"4\", cy: \"13\", r: \"2\", stroke: color, strokeLinecap: \"round\" }), jsx(\"circle\", { cx: \"12\", cy: \"8\", r: \"2\", stroke: color, strokeLinecap: \"round\" })] }));\n};\n\nconst SidebarIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M19 3H5C3.89543 3 3 3.89543 3 5V19C3 20.1046 3.89543 21 5 21H19C20.1046 21 21 20.1046 21 19V5C21 3.89543 20.1046 3 19 3Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9 3V21\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SidebarDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: jsxs(\"g\", { clipPath: \"url(#clip0_1139_712)\", children: [jsx(\"rect\", { x: \"0.5\", y: \"0.5\", width: \"15\", height: \"15\", rx: \"1.5\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M5 0V16\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }) }));\n};\n\nconst SettingIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15V15Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst SettingDenseIcon = ({ width = 16, height = 16, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 16 16\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M8 10C9.10457 10 10 9.10457 10 8C10 6.89543 9.10457 6 8 6C6.89543 6 6 6.89543 6 8C6 9.10457 6.89543 10 8 10Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12.7091 9.90909C12.6244 10.101 12.5991 10.3139 12.6365 10.5204C12.674 10.7268 12.7724 10.9173 12.9191 11.0673L12.9573 11.1055C13.0756 11.2237 13.1695 11.364 13.2335 11.5185C13.2976 11.673 13.3305 11.8387 13.3305 12.0059C13.3305 12.1732 13.2976 12.3388 13.2335 12.4933C13.1695 12.6478 13.0756 12.7882 12.9573 12.9064C12.8391 13.0247 12.6987 13.1186 12.5442 13.1826C12.3897 13.2467 12.2241 13.2796 12.0568 13.2796C11.8896 13.2796 11.7239 13.2467 11.5694 13.1826C11.4149 13.1186 11.2746 13.0247 11.1564 12.9064L11.1182 12.8682C10.9682 12.7215 10.7777 12.6231 10.5713 12.5856C10.3649 12.5482 10.1519 12.5735 9.96 12.6582C9.77178 12.7388 9.61126 12.8728 9.4982 13.0435C9.38513 13.2143 9.32445 13.4143 9.32364 13.6191V13.7273C9.32364 14.0648 9.18955 14.3885 8.95086 14.6272C8.71218 14.8659 8.38846 15 8.05091 15C7.71336 15 7.38964 14.8659 7.15096 14.6272C6.91227 14.3885 6.77818 14.0648 6.77818 13.7273V13.67C6.77325 13.4594 6.70508 13.2551 6.58251 13.0837C6.45994 12.9123 6.28865 12.7818 6.09091 12.7091C5.89897 12.6244 5.68606 12.5991 5.47963 12.6365C5.27319 12.674 5.0827 12.7724 4.93273 12.9191L4.89455 12.9573C4.77634 13.0756 4.63598 13.1695 4.48147 13.2335C4.32696 13.2976 4.16135 13.3305 3.99409 13.3305C3.82683 13.3305 3.66122 13.2976 3.50671 13.2335C3.35221 13.1695 3.21184 13.0756 3.09364 12.9573C2.9753 12.8391 2.88143 12.6987 2.81738 12.5442C2.75333 12.3897 2.72036 12.2241 2.72036 12.0568C2.72036 11.8896 2.75333 11.7239 2.81738 11.5694C2.88143 11.4149 2.9753 11.2746 3.09364 11.1564L3.13182 11.1182C3.27852 10.9682 3.37694 10.7777 3.41437 10.5713C3.4518 10.3649 3.42653 10.1519 3.34182 9.96C3.26115 9.77178 3.12721 9.61126 2.95648 9.4982C2.78575 9.38513 2.58568 9.32445 2.38091 9.32364H2.27273C1.93518 9.32364 1.61146 9.18955 1.37277 8.95086C1.13409 8.71218 1 8.38846 1 8.05091C1 7.71336 1.13409 7.38964 1.37277 7.15096C1.61146 6.91227 1.93518 6.77818 2.27273 6.77818H2.33C2.54063 6.77325 2.74491 6.70508 2.91628 6.58251C3.08765 6.45994 3.21818 6.28865 3.29091 6.09091C3.37562 5.89897 3.40089 5.68606 3.36346 5.47963C3.32603 5.27319 3.22761 5.0827 3.08091 4.93273L3.04273 4.89455C2.92439 4.77634 2.83052 4.63598 2.76647 4.48147C2.70242 4.32696 2.66945 4.16135 2.66945 3.99409C2.66945 3.82683 2.70242 3.66122 2.76647 3.50671C2.83052 3.35221 2.92439 3.21184 3.04273 3.09364C3.16093 2.9753 3.3013 2.88143 3.4558 2.81738C3.61031 2.75333 3.77593 2.72036 3.94318 2.72036C4.11044 2.72036 4.27605 2.75333 4.43056 2.81738C4.58507 2.88143 4.72543 2.9753 4.84364 3.09364L4.88182 3.13182C5.0318 3.27852 5.22228 3.37694 5.42872 3.41437C5.63515 3.4518 5.84806 3.42653 6.04 3.34182H6.09091C6.27913 3.26115 6.43965 3.12721 6.55271 2.95648C6.66578 2.78575 6.72646 2.58568 6.72727 2.38091V2.27273C6.72727 1.93518 6.86136 1.61146 7.10005 1.37277C7.33873 1.13409 7.66245 1 8 1C8.33755 1 8.66127 1.13409 8.89995 1.37277C9.13864 1.61146 9.27273 1.93518 9.27273 2.27273V2.33C9.27354 2.53477 9.33422 2.73484 9.44729 2.90557C9.56035 3.0763 9.72087 3.21024 9.90909 3.29091C10.101 3.37562 10.3139 3.40089 10.5204 3.36346C10.7268 3.32603 10.9173 3.22761 11.0673 3.08091L11.1055 3.04273C11.2237 2.92439 11.364 2.83052 11.5185 2.76647C11.673 2.70242 11.8387 2.66945 12.0059 2.66945C12.1732 2.66945 12.3388 2.70242 12.4933 2.76647C12.6478 2.83052 12.7882 2.92439 12.9064 3.04273C13.0247 3.16093 13.1186 3.3013 13.1826 3.4558C13.2467 3.61031 13.2796 3.77593 13.2796 3.94318C13.2796 4.11044 13.2467 4.27605 13.1826 4.43056C13.1186 4.58507 13.0247 4.72543 12.9064 4.84364L12.8682 4.88182C12.7215 5.0318 12.6231 5.22228 12.5856 5.42872C12.5482 5.63515 12.5735 5.84806 12.6582 6.04V6.09091C12.7388 6.27913 12.8728 6.43965 13.0435 6.55271C13.2143 6.66578 13.4143 6.72646 13.6191 6.72727H13.7273C14.0648 6.72727 14.3885 6.86136 14.6272 7.10005C14.8659 7.33873 15 7.66245 15 8C15 8.33755 14.8659 8.66127 14.6272 8.89995C14.3885 9.13864 14.0648 9.27273 13.7273 9.27273H13.67C13.4652 9.27354 13.2652 9.33422 13.0944 9.44729C12.9237 9.56035 12.7898 9.72087 12.7091 9.90909V9.90909Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CalendarIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", ...rest, children: jsx(\"path\", { fill: color, d: \"M7 11H9V13H7V11M21 5V19C21 20.11 20.11 21 19 21H5C3.89 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H6V1H8V3H16V1H18V3H19C20.11 3 21 3.9 21 5M5 7H19V5H5V7M19 19V9H5V19H19M15 13V11H17V13H15M11 13V11H13V13H11M7 15H9V17H7V15M15 17V15H17V17H15M11 17V15H13V17H11Z\" }) }));\n};\n\nconst HelpCircleIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9.08984 8.99959C9.32495 8.33126 9.789 7.7677 10.3998 7.40873C11.0106 7.04975 11.7287 6.91853 12.427 7.0383C13.1253 7.15808 13.7587 7.52112 14.2149 8.06312C14.6712 8.60512 14.9209 9.29112 14.9198 9.99959C14.9198 11.9996 11.9198 12.9996 11.9198 12.9996\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"circle\", { stroke: color, cx: \"12\", cy: \"16.6797\", r: \"0.679688\", fill: color })] }));\n};\n\nconst AlertIcon = ({ width = 24, height = 20, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 20\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M10.7252 0.631851C11.1146 0.412624 11.5539 0.297455 12.0008 0.297455C12.4476 0.297455 12.8869 0.412624 13.2763 0.631851C13.6657 0.851077 13.992 1.16696 14.2238 1.54902L14.2255 1.55187L14.2255 1.55188L22.6955 15.6919L22.7004 15.7001L22.7004 15.7002C22.9274 16.0933 23.0475 16.5391 23.0488 16.993C23.0501 17.447 22.9324 17.8934 22.7076 18.2878C22.4828 18.6823 22.1586 19.0109 21.7674 19.2412C21.3761 19.4714 20.9313 19.5952 20.4774 19.6002L20.4708 19.6002V19.6002H3.53078H3.52418L3.52418 19.6002C3.07022 19.5952 2.62548 19.4714 2.2342 19.2412C1.84293 19.0109 1.51875 18.6823 1.29394 18.2878C1.06912 17.8934 0.951498 17.447 0.952769 16.993C0.95404 16.5391 1.07416 16.0933 1.30118 15.7002L1.30599 15.6918L1.30606 15.6919L9.77606 1.55188L9.77778 1.54902C10.0095 1.16696 10.3358 0.851077 10.7252 0.631851ZM12.0008 1.49745C11.7602 1.49745 11.5236 1.55947 11.3139 1.67751C11.1047 1.79531 10.9293 1.96493 10.8046 2.17008C10.8043 2.17051 10.804 2.17094 10.8038 2.17138L2.33819 16.304C2.21736 16.5148 2.15344 16.7534 2.15276 16.9964C2.15208 17.2409 2.21542 17.4812 2.33647 17.6936C2.45753 17.906 2.63208 18.083 2.84277 18.2069C3.05259 18.3304 3.29097 18.397 3.53437 18.4002H20.4672C20.7106 18.397 20.949 18.3304 21.1588 18.2069C21.3695 18.083 21.544 17.906 21.6651 17.6936C21.7861 17.4812 21.8495 17.2409 21.8488 16.9964C21.8481 16.7534 21.7842 16.5148 21.6634 16.3041L13.1978 2.17138C13.1975 2.17094 13.1973 2.17051 13.197 2.17008C13.0722 1.96493 12.8968 1.79531 12.6876 1.67751C12.4779 1.55947 12.2414 1.49745 12.0008 1.49745ZM12 6.39999C12.3314 6.39999 12.6 6.66862 12.6 6.99999V12.5C12.6 12.8314 12.3314 13.1 12 13.1C11.6687 13.1 11.4 12.8314 11.4 12.5V6.99999C11.4 6.66862 11.6687 6.39999 12 6.39999ZM11.4 15C11.4 14.6686 11.6687 14.4 12 14.4H12.01C12.3414 14.4 12.61 14.6686 12.61 15C12.61 15.3314 12.3414 15.6 12.01 15.6H12C11.6687 15.6 11.4 15.3314 11.4 15Z\", fill: color, stroke: color }) }));\n};\n\nconst FileText = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 17 21\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M1.23223 1.23223C1.70107 0.763392 2.33696 0.5 3 0.5H11C11.1326 0.5 11.2598 0.552678 11.3536 0.646447L17.3536 6.64645C17.4473 6.74021 17.5 6.86739 17.5 7V19C17.5 19.663 17.2366 20.2989 16.7678 20.7678C16.2989 21.2366 15.663 21.5 15 21.5H3C2.33696 21.5 1.70107 21.2366 1.23223 20.7678C0.763392 20.2989 0.5 19.663 0.5 19V3C0.5 2.33696 0.763392 1.70107 1.23223 1.23223ZM3 1.5C2.60218 1.5 2.22064 1.65804 1.93934 1.93934C1.65804 2.22064 1.5 2.60218 1.5 3V19C1.5 19.3978 1.65804 19.7794 1.93934 20.0607C2.22064 20.342 2.60218 20.5 3 20.5H15C15.3978 20.5 15.7794 20.342 16.0607 20.0607C16.342 19.7794 16.5 19.3978 16.5 19V7.5H11C10.7239 7.5 10.5 7.27614 10.5 7V1.5H3ZM11.5 2.20711L15.7929 6.5H11.5V2.20711ZM4.5 8C4.5 7.72386 4.72386 7.5 5 7.5H7C7.27614 7.5 7.5 7.72386 7.5 8C7.5 8.27614 7.27614 8.5 7 8.5H5C4.72386 8.5 4.5 8.27614 4.5 8ZM4.5 12C4.5 11.7239 4.72386 11.5 5 11.5H13C13.2761 11.5 13.5 11.7239 13.5 12C13.5 12.2761 13.2761 12.5 13 12.5H5C4.72386 12.5 4.5 12.2761 4.5 12ZM4.5 16C4.5 15.7239 4.72386 15.5 5 15.5H13C13.2761 15.5 13.5 15.7239 13.5 16C13.5 16.2761 13.2761 16.5 13 16.5H5C4.72386 16.5 4.5 16.2761 4.5 16Z\", fill: color }) }));\n};\n\nconst FilePlus = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: [jsx(\"path\", { d: \"M14 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V8L14 2Z\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M14 2V8H20\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M12 17V11\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), jsx(\"path\", { d: \"M9 14H15\", stroke: color, strokeLinecap: \"round\", strokeLinejoin: \"round\" })] }));\n};\n\nconst CurrencyDollarIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12 0.5C12.2761 0.5 12.5 0.723858 12.5 1V4.5H17C17.2761 4.5 17.5 4.72386 17.5 5C17.5 5.27614 17.2761 5.5 17 5.5H12.5V11.5H14.5C15.5609 11.5 16.5783 11.9214 17.3284 12.6716C18.0786 13.4217 18.5 14.4391 18.5 15.5C18.5 16.5609 18.0786 17.5783 17.3284 18.3284C16.5783 19.0786 15.5609 19.5 14.5 19.5H12.5V23C12.5 23.2761 12.2761 23.5 12 23.5C11.7239 23.5 11.5 23.2761 11.5 23V19.5H6C5.72386 19.5 5.5 19.2761 5.5 19C5.5 18.7239 5.72386 18.5 6 18.5H11.5V12.5H9.5C8.43913 12.5 7.42172 12.0786 6.67157 11.3284C5.92143 10.5783 5.5 9.56087 5.5 8.5C5.5 7.43913 5.92143 6.42172 6.67157 5.67157C7.42172 4.92143 8.43913 4.5 9.5 4.5H11.5V1C11.5 0.723858 11.7239 0.5 12 0.5ZM11.5 5.5H9.5C8.70435 5.5 7.94129 5.81607 7.37868 6.37868C6.81607 6.94129 6.5 7.70435 6.5 8.5C6.5 9.29565 6.81607 10.0587 7.37868 10.6213C7.94129 11.1839 8.70435 11.5 9.5 11.5H11.5V5.5ZM12.5 12.5V18.5H14.5C15.2956 18.5 16.0587 18.1839 16.6213 17.6213C17.1839 17.0587 17.5 16.2956 17.5 15.5C17.5 14.7044 17.1839 13.9413 16.6213 13.3787C16.0587 12.8161 15.2956 12.5 14.5 12.5H12.5Z\", fill: color }) }));\n};\n\nconst AccountIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", fill: color, d: \"M12 3.5C10.067 3.5 8.5 5.067 8.5 7C8.5 8.933 10.067 10.5 12 10.5C13.933 10.5 15.5 8.933 15.5 7C15.5 5.067 13.933 3.5 12 3.5ZM7.5 7C7.5 4.51472 9.51472 2.5 12 2.5C14.4853 2.5 16.5 4.51472 16.5 7C16.5 9.48528 14.4853 11.5 12 11.5C9.51472 11.5 7.5 9.48528 7.5 7ZM4.81802 15.818C5.66193 14.9741 6.80653 14.5 8 14.5H16C17.1935 14.5 18.3381 14.9741 19.182 15.818C20.0259 16.6619 20.5 17.8065 20.5 19V21C20.5 21.2761 20.2761 21.5 20 21.5C19.7239 21.5 19.5 21.2761 19.5 21V19C19.5 18.0717 19.1313 17.1815 18.4749 16.5251C17.8185 15.8687 16.9283 15.5 16 15.5H8C7.07174 15.5 6.1815 15.8687 5.52513 16.5251C4.86875 17.1815 4.5 18.0717 4.5 19V21C4.5 21.2761 4.27614 21.5 4 21.5C3.72386 21.5 3.5 21.2761 3.5 21V19C3.5 17.8065 3.97411 16.6619 4.81802 15.818Z\" }) }));\n};\n\nconst LogoutIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fill: color, fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 3.5C4.60218 3.5 4.22064 3.65804 3.93934 3.93934C3.65804 4.22064 3.5 4.60218 3.5 5V19C3.5 19.3978 3.65804 19.7794 3.93934 20.0607C4.22064 20.342 4.60218 20.5 5 20.5H9C9.27614 20.5 9.5 20.7239 9.5 21C9.5 21.2761 9.27614 21.5 9 21.5H5C4.33696 21.5 3.70107 21.2366 3.23223 20.7678C2.76339 20.2989 2.5 19.663 2.5 19V5C2.5 4.33696 2.76339 3.70107 3.23223 3.23223C3.70107 2.76339 4.33696 2.5 5 2.5H9C9.27614 2.5 9.5 2.72386 9.5 3C9.5 3.27614 9.27614 3.5 9 3.5H5ZM15.6464 6.64645C15.8417 6.45118 16.1583 6.45118 16.3536 6.64645L21.3536 11.6464C21.5488 11.8417 21.5488 12.1583 21.3536 12.3536L16.3536 17.3536C16.1583 17.5488 15.8417 17.5488 15.6464 17.3536C15.4512 17.1583 15.4512 16.8417 15.6464 16.6464L19.7929 12.5H9C8.72386 12.5 8.5 12.2761 8.5 12C8.5 11.7239 8.72386 11.5 9 11.5H19.7929L15.6464 7.35355C15.4512 7.15829 15.4512 6.84171 15.6464 6.64645Z\" }) }));\n};\n\nconst InteractionIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12.4987 3.50003C11.2576 3.49679 10.0333 3.78676 8.92544 4.34633L8.92354 4.34728L8.92354 4.34728C7.59484 5.01134 6.47726 6.03222 5.69598 7.29556C4.91471 8.55891 4.50059 10.0148 4.50001 11.5002L4.50001 11.5013C4.49678 12.7424 4.78675 13.9668 5.34631 15.0746C5.40642 15.1936 5.41651 15.3317 5.37436 15.4581L3.79058 20.2095L8.5419 18.6257C8.66837 18.5835 8.80644 18.5936 8.92544 18.6537C10.0333 19.2133 11.2576 19.5033 12.4987 19.5L12.4998 19.5C13.9852 19.4995 15.4411 19.0853 16.7045 18.3041C17.9678 17.5228 18.9887 16.4052 19.6528 15.0765L19.6537 15.0746C20.2133 13.9668 20.5033 12.7424 20.5 11.5013L20.5 11.5V11.014C20.3887 9.05759 19.5615 7.21031 18.1756 5.82444C16.7897 4.43858 14.9425 3.6113 12.986 3.50003H12.5L12.4987 3.50003ZM12.5007 2.50003C11.1026 2.49649 9.7235 2.82309 8.47553 3.45325C6.98116 4.20033 5.72423 5.34863 4.84548 6.76959C3.96664 8.1907 3.50076 9.82839 3.50001 11.4993C3.50001 11.4991 3.50001 11.4989 3.50002 11.4987L4.00001 11.5L3.50001 11.4998C3.50001 11.4997 3.50001 11.4995 3.50001 11.4993C3.49663 12.8274 3.7912 14.1384 4.36092 15.3362L2.52567 20.8419C2.46578 21.0216 2.51254 21.2197 2.64646 21.3536C2.78038 21.4875 2.97846 21.5343 3.15813 21.4744L8.66386 19.6391C9.86161 20.2088 11.1726 20.5034 12.5008 20.5C12.5006 20.5 12.5004 20.5 12.5002 20.5L12.5 20L12.5013 20.5C12.5011 20.5 12.5009 20.5 12.5008 20.5C14.1716 20.4993 15.8093 20.0334 17.2304 19.1546C18.6514 18.2758 19.7998 17.0188 20.5469 15.5244C21.177 14.2765 21.5035 12.8974 21.5 11.4995C21.5 11.4992 21.5 11.499 21.5 11.4987L21.5 11C21.5 10.9908 21.4998 10.9817 21.4993 10.9725C21.3775 8.76524 20.4458 6.68047 18.8827 5.11733C17.3196 3.5542 15.2348 2.62256 13.0276 2.50079C13.0184 2.50028 13.0092 2.50003 13 2.50003H12.5007Z\", fill: color }) }));\n};\n\nconst PinIcon = ({ width = 24, height = 24, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: width, height: height, viewBox: \"0 0 24 24\", fill: \"none\", ...rest, children: jsx(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M14.2357 1.05367C14.431 0.858411 14.7475 0.858411 14.9428 1.05367L16.35 2.46083L21.9786 8.08946L23.3857 9.49662C23.581 9.69188 23.581 10.0085 23.3857 10.2037C23.1905 10.399 22.8739 10.399 22.6786 10.2037L21.625 9.15012L16.5825 14.1927C17.1504 15.8122 17.2747 19.1291 14.2392 22.1646C14.044 22.3598 13.7274 22.3598 13.5321 22.1646L8.25705 16.8895L2.98197 22.1646C2.78671 22.3598 2.47013 22.3598 2.27486 22.1646C2.0796 21.9693 2.0796 21.6527 2.27486 21.4574L7.54994 16.1824L2.27487 10.9073C2.0796 10.712 2.0796 10.3955 2.27487 10.2002C5.31033 7.16473 8.62719 7.28906 10.2468 7.85692L15.2893 2.81438L14.2357 1.76078C14.0404 1.56552 14.0404 1.24894 14.2357 1.05367ZM15.9964 3.52149L10.7213 8.79656C10.574 8.94394 10.3506 8.98444 10.1609 8.89819C9.08697 8.41006 6.16895 8.00799 3.3443 10.5625L8.6106 15.8288L13.8769 21.0951C16.4314 18.2705 16.0294 15.3524 15.5412 14.2785C15.455 14.0888 15.4955 13.8655 15.6429 13.7181L20.9179 8.44301L15.9964 3.52149Z\", fill: color }) }));\n};\n\nvar css_248z$s = \".pagination-module_pagination__G1PXd {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n display: flex;\\n justify-content: space-between;\\n flex-wrap: wrap;\\n grid-row-gap: calc(var(--spacing) * 8);\\n}\\n.pagination-module_pagination_column__XvzLt {\\n flex-direction: column;\\n}\\n.pagination-module_pagination__wrapper__itOXy {\\n display: flex;\\n align-items: center;\\n gap: calc(var(--spacing) * 4);\\n}\\n.pagination-module_pagination__group__RDjqn {\\n width: auto;\\n display: flex;\\n align-items: center;\\n}\\n.pagination-module_pagination__text__C7s7i:not(:last-child) {\\n margin-right: calc(var(--spacing) * 2);\\n}\\n.pagination-module_pagination__input__lmqnb {\\n max-width: 65px;\\n height: 32px;\\n padding: 0 8px;\\n display: flex;\\n background-color: #fff;\\n border: 1px solid var(--outline-1);\\n border-radius: var(--radius-medium);\\n transition: border-color 0.2s ease;\\n outline: none;\\n}\\n.pagination-module_pagination__input__lmqnb:hover, .pagination-module_pagination__input__lmqnb:focus {\\n border: 1px solid var(--primary-2);\\n}\";\nvar styles$r = {\"pagination\":\"pagination-module_pagination__G1PXd\",\"pagination_column\":\"pagination-module_pagination_column__XvzLt\",\"pagination__wrapper\":\"pagination-module_pagination__wrapper__itOXy\",\"pagination__group\":\"pagination-module_pagination__group__RDjqn\",\"pagination__text\":\"pagination-module_pagination__text__C7s7i\",\"pagination__input\":\"pagination-module_pagination__input__lmqnb\"};\nstyleInject(css_248z$s);\n\nconst formatNumber = (number, options) => {\n return Intl.NumberFormat('ru-Ru', options).format(+number);\n};\n\nvar css_248z$r = \".text-field-module_textField__22Qh9 {\\n position: relative;\\n display: inline-flex;\\n align-items: center;\\n gap: calc(var(--spacing) * 3);\\n border: 1px solid var(--outline-1);\\n background: var(--surface-1);\\n cursor: text;\\n transition: all 0.2s ease;\\n}\\n.text-field-module_textField__22Qh9:hover, .text-field-module_textField_focused__lKOI6 {\\n border-color: var(--primary-2);\\n}\\n.text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-small__uD2nF .text-field-module_textField__label__8y36P, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-small__uD2nF .text-field-module_textField__label__8y36P {\\n transform: translateY(-5px);\\n}\\n.text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-small__uD2nF .text-field-module_textField__input__6MrTa, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-small__uD2nF .text-field-module_textField__input__6MrTa {\\n transform: translateY(5px);\\n}\\n.text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-medium__viMHZ .text-field-module_textField__label__8y36P, .text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-large__Qnql- .text-field-module_textField__label__8y36P, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-medium__viMHZ .text-field-module_textField__label__8y36P, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-large__Qnql- .text-field-module_textField__label__8y36P {\\n transform: translateY(-7px);\\n}\\n.text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-medium__viMHZ .text-field-module_textField__input__6MrTa, .text-field-module_textField_focused__lKOI6.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-large__Qnql- .text-field-module_textField__input__6MrTa, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-medium__viMHZ .text-field-module_textField__input__6MrTa, .text-field-module_textField_filled__UtFZP.text-field-module_textField_withLabel__oKh4x.text-field-module_textField_size-large__Qnql- .text-field-module_textField__input__6MrTa {\\n transform: translateY(7px);\\n}\\n.text-field-module_textField_ellipsis__MRHhF .text-field-module_textField__input__6MrTa {\\n text-overflow: ellipsis;\\n overflow: hidden;\\n white-space: nowrap;\\n}\\n.text-field-module_textField_disabled__avCnH {\\n border-color: var(--outline-3);\\n pointer-events: none;\\n user-select: none;\\n}\\n.text-field-module_textField_disabled__avCnH .text-field-module_textField__input__6MrTa, .text-field-module_textField_disabled__avCnH .text-field-module_textField__input__6MrTa::placeholder {\\n color: var(--on-surface-primary-3);\\n}\\n.text-field-module_textField_fullWidth__CtzfL {\\n display: flex;\\n width: 100%;\\n}\\n.text-field-module_textField_size-small__uD2nF {\\n border-radius: var(--radius-large);\\n height: calc(var(--spacing) * 16);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 6);\\n}\\n.text-field-module_textField_size-small__uD2nF .text-field-module_textField__input__6MrTa, .text-field-module_textField_size-small__uD2nF .text-field-module_textField__input__6MrTa::placeholder, .text-field-module_textField_size-small__uD2nF .text-field-module_textField__label__8y36P {\\n font-family: var(--font-family);\\n font-size: 14px;\\n letter-spacing: -0.3px;\\n line-height: 20px;\\n}\\n.text-field-module_textField_size-medium__viMHZ {\\n border-radius: var(--radius-large);\\n height: calc(var(--spacing) * 20);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 7);\\n}\\n.text-field-module_textField_size-medium__viMHZ .text-field-module_textField__input__6MrTa, .text-field-module_textField_size-medium__viMHZ .text-field-module_textField__input__6MrTa::placeholder, .text-field-module_textField_size-medium__viMHZ .text-field-module_textField__label__8y36P {\\n font-family: var(--font-family);\\n font-size: 14px;\\n letter-spacing: -0.3px;\\n line-height: 20px;\\n}\\n.text-field-module_textField_size-large__Qnql- {\\n border-radius: var(--radius-x-large);\\n height: calc(var(--spacing) * 20 + var(--spacing) * 4);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 8);\\n}\\n.text-field-module_textField_size-large__Qnql- .text-field-module_textField__input__6MrTa, .text-field-module_textField_size-large__Qnql- .text-field-module_textField__input__6MrTa::placeholder, .text-field-module_textField_size-large__Qnql- .text-field-module_textField__label__8y36P {\\n font-family: var(--font-family);\\n font-size: 16px;\\n line-height: 24px;\\n letter-spacing: -0.5px;\\n}\\n.text-field-module_textField_size-textarea__rptyG {\\n height: auto;\\n}\\n.text-field-module_textField_size-textarea__rptyG .text-field-module_textField__labelWrap__cTxo9 {\\n height: 100%;\\n}\\n.text-field-module_textField__input__6MrTa {\\n resize: none;\\n border: none;\\n outline: none;\\n padding: 0;\\n height: 100%;\\n width: 100%;\\n color: var(--neutrals-8);\\n transition: transform 0.3s ease;\\n}\\n.text-field-module_textField__input__6MrTa::placeholder {\\n color: var(--on-surface-primary-2);\\n}\\n.text-field-module_textField__labelWrap__cTxo9 {\\n position: relative;\\n display: flex;\\n width: 100%;\\n}\\n.text-field-module_textField__right__Ujkv3 {\\n margin-left: auto;\\n display: flex;\\n align-items: center;\\n gap: calc(var(--spacing) * 3);\\n}\\n.text-field-module_textField__clear__sXKRr {\\n transition: color 0.2s ease;\\n cursor: pointer;\\n}\\n.text-field-module_textField__clear__sXKRr:hover {\\n color: var(--on-surface-primary-1);\\n}\\n.text-field-module_textField__prepend__frol7, .text-field-module_textField__append__AvPIS {\\n display: flex;\\n}\\n.text-field-module_textField__clear__sXKRr, .text-field-module_textField__prepend__frol7, .text-field-module_textField__append__AvPIS {\\n color: var(--on-surface-secondary-1);\\n}\\n.text-field-module_textField__label__8y36P {\\n top: -2px;\\n left: 0;\\n position: absolute;\\n cursor: text;\\n user-select: none;\\n transition: all 0.3s ease;\\n color: var(--on-surface-primary-2);\\n}\\n.text-field-module_textField_focused__lKOI6 .text-field-module_textField__label__8y36P, .text-field-module_textField_filled__UtFZP .text-field-module_textField__label__8y36P {\\n font-size: 12px;\\n letter-spacing: -0.3px;\\n line-height: 16px;\\n color: var(--on-surface-primary-2);\\n}\\n.text-field-module_textField__errorWrap__7f5wl {\\n position: absolute;\\n left: 0;\\n bottom: calc(var(--spacing) * -1);\\n transform: translateY(100%);\\n display: flex;\\n flex-direction: column;\\n gap: var(--spacing);\\n}\\n.text-field-module_textField_error__Fy9JJ {\\n border-color: var(--error-2);\\n}\";\nvar styles$q = {\"textField\":\"text-field-module_textField__22Qh9\",\"textField_focused\":\"text-field-module_textField_focused__lKOI6\",\"textField_withLabel\":\"text-field-module_textField_withLabel__oKh4x\",\"textField_size-small\":\"text-field-module_textField_size-small__uD2nF\",\"textField__label\":\"text-field-module_textField__label__8y36P\",\"textField_filled\":\"text-field-module_textField_filled__UtFZP\",\"textField__input\":\"text-field-module_textField__input__6MrTa\",\"textField_size-medium\":\"text-field-module_textField_size-medium__viMHZ\",\"textField_size-large\":\"text-field-module_textField_size-large__Qnql-\",\"textField_ellipsis\":\"text-field-module_textField_ellipsis__MRHhF\",\"textField_disabled\":\"text-field-module_textField_disabled__avCnH\",\"textField_fullWidth\":\"text-field-module_textField_fullWidth__CtzfL\",\"textField_size-textarea\":\"text-field-module_textField_size-textarea__rptyG\",\"textField__labelWrap\":\"text-field-module_textField__labelWrap__cTxo9\",\"textField__right\":\"text-field-module_textField__right__Ujkv3\",\"textField__clear\":\"text-field-module_textField__clear__sXKRr\",\"textField__prepend\":\"text-field-module_textField__prepend__frol7\",\"textField__append\":\"text-field-module_textField__append__AvPIS\",\"textField__errorWrap\":\"text-field-module_textField__errorWrap__7f5wl\",\"textField_error\":\"text-field-module_textField_error__Fy9JJ\"};\nstyleInject(css_248z$r);\n\nconst TextField = ({ tag: Tag = 'input', min, initValue = '', value: curValue, style, className, label, id, type = 'text', size = 'medium', disabled, placeholder, fullWidth, error, appendSlot, prependSlot, clearable, onChange, onBlur, onFocus, onClear, autoFocus, ellipsis, readonly, ...rest }) => {\n const inputRef = useRef(null);\n const uniqId = useId$1();\n const curId = id || uniqId;\n const textVariant = size === 'large' ? 'body-16' : 'body-14';\n const errorVariant = size === 'large' ? 'body-14' : 'body-12';\n const iconSize = size === 'large' ? 24 : 16;\n const [isFocused, setIsFocused] = useState(false);\n const [value, setValue] = useState(initValue);\n const isFilled = !!value;\n const classes = cx(styles$q.textField, fullWidth && styles$q.textField_fullWidth, ellipsis && styles$q.textField_ellipsis, disabled && styles$q.textField_disabled, error && styles$q.textField_error, isFocused && styles$q.textField_focused, isFilled && styles$q.textField_filled, label && styles$q.textField_withLabel, styles$q[`textField_size-${size}`], Tag === 'textarea' && styles$q['textField_size-textarea'], className);\n const handleClear = () => {\n if (!clearable)\n return '';\n setValue('');\n onClear && onClear();\n };\n const handleBlur = (e) => {\n setIsFocused(false);\n onBlur && onBlur(e);\n };\n const handleFocus = (e) => {\n setIsFocused(true);\n onFocus && onFocus(e);\n };\n const handleChange = (e) => {\n if (disabled)\n return;\n setValue(e.target.value);\n onChange && onChange(e);\n };\n const handleClickWrapper = () => {\n inputRef.current?.focus();\n };\n useEffect(() => {\n if (autoFocus)\n handleClickWrapper();\n }, []);\n useEffect(() => {\n if (isString$1(curValue))\n setValue(curValue);\n }, [curValue]);\n useEffect(() => {\n if (inputRef.current?.value)\n setValue(inputRef.current?.value);\n }, []);\n return (jsxs(\"div\", { className: classes, style: style, \"data-testid\": \"text-field\", onClick: handleClickWrapper, children: [prependSlot && (jsx(\"div\", { className: styles$q.textField__prepend, children: prependSlot })), jsxs(\"label\", { htmlFor: curId, className: styles$q.textField__labelWrap, children: [jsx(Tag, { min: min, className: styles$q.textField__input, value: value, type: type, id: curId, ref: inputRef, \"data-testid\": \"input\", autoFocus: autoFocus, placeholder: placeholder, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur, readOnly: readonly, ...rest }), label && (jsx(Typography, { className: styles$q.textField__label, variant: textVariant, children: label }))] }), !!(clearable || appendSlot) && (jsxs(\"div\", { className: styles$q.textField__right, children: [clearable && (jsx(CloseIcon, { \"data-testid\": \"clear\", className: styles$q.textField__clear, width: iconSize, height: iconSize, onClick: handleClear })), appendSlot && (jsx(\"div\", { className: styles$q.textField__append, children: appendSlot }))] })), error && error?.length && (jsxs(\"div\", { className: styles$q.textField__errorWrap, children: [isString$1(error) && (jsx(Typography, { variant: errorVariant, \"data-testid\": \"error\", color: \"error-2\", children: error })), isArray$1(error) &&\n error.map((el) => (jsx(Typography, { variant: errorVariant, \"data-testid\": \"error\", color: \"error-2\", children: el }, el)))] }))] }));\n};\n\nconst Pagination = ({ page: curPage = 1, pageCount = 1, scrollToTop, onChange, className, column, ...rest }) => {\n const { t } = useTranslation();\n const [inputValue, setInputValue] = useState('');\n const [page, setPage] = useState(curPage);\n const onPageChangeHandle = useCallback((page) => {\n if (scrollToTop)\n window.scrollTo(0, 0);\n setPage(page);\n onChange && onChange(Number(page));\n }, [page, onChange]);\n const updateInputValue = (value) => {\n const numValue = +value;\n if (numValue > pageCount) {\n setInputValue(String(pageCount));\n return null;\n }\n if (numValue < 1) {\n setInputValue('1');\n return null;\n }\n };\n useEffect(() => {\n if (curPage !== page)\n setPage(curPage);\n }, [curPage]);\n if (!pageCount)\n return jsx(Fragment, {});\n return (jsxs(\"div\", { className: cx(styles$r.pagination, column && styles$r.pagination_column, className), ...rest, children: [jsxs(\"div\", { className: styles$r.pagination__wrapper, children: [page > 1 && (jsx(Button, { size: \"small\", color: \"secondary\", prependIcon: ArrowLeftDenseIcon, \"data-testid\": \"prev-page-button\", icon: true, onClick: () => onPageChangeHandle(page - 1) })), jsxs(\"div\", { className: styles$r.pagination__group, children: [jsx(Typography, { tag: \"span\", variant: \"body-14\", color: \"on-surface-primary-1\", className: styles$r.pagination__text, \"data-testid\": \"current-page\", children: formatNumber(page) }), jsxs(Typography, { tag: \"span\", variant: \"body-14\", color: \"on-surface-primary-2\", className: styles$r.pagination__text, \"data-testid\": \"count-page\", children: [\"/ \", formatNumber(pageCount)] })] }), pageCount - page >= 1 && (jsx(Button, { color: \"secondary\", size: \"small\", \"data-testid\": \"next-page-button\", prependIcon: ArrowRightDenseIcon, icon: true, onClick: () => onPageChangeHandle(page + 1) }))] }), jsx(\"div\", { className: styles$r.pagination__wrapper, children: pageCount > 2 && (jsxs(Fragment, { children: [jsxs(Typography, { variant: \"body-14\", color: \"on-surface-primary-2\", className: styles$r.pagination__label, children: [t('Pagination.inputLabel'), \":\"] }), jsx(TextField, { min: \"1\", value: inputValue, onChange: (e) => setInputValue(e.target.value), onBlur: (e) => updateInputValue(e.target.value), onKeyPress: (event) => {\n if (!/[0-9]/.test(event.key))\n event.preventDefault();\n }, size: 'small', className: styles$r.pagination__input, autoComplete: \"off\", \"data-testid\": \"input-field\" }), jsx(Button, { size: \"small\", color: \"secondary\", \"data-testid\": \"submit-button\", onClick: () => onPageChangeHandle(+inputValue || 1), children: t('Pagination.buttonText') })] })) })] }));\n};\n\nvar isArray = Array.isArray;\nvar toClassName = function (val) {\n var str = '';\n if (typeof val === 'string')\n str += val;\n else if (typeof val === 'object') {\n var tmp = void 0;\n if (isArray(val)) {\n var i = 0;\n var l = val.length;\n while (i < l) {\n tmp = toClassName(val[i++]);\n if (tmp) {\n if (str) {\n str += ' ';\n }\n str += tmp;\n }\n }\n }\n else {\n // eslint-disable-next-line guard-for-in\n for (tmp in val) {\n if (tmp && val[tmp]) {\n if (str) {\n str += ' ';\n }\n str += tmp;\n }\n }\n }\n }\n return str;\n};\nfunction cnb() {\n var l = arguments.length;\n var i = 0;\n var n;\n var tmp;\n var str = '';\n while (i < l) {\n n = arguments[i++];\n if (n) {\n tmp = toClassName(n);\n if (tmp) {\n if (str) {\n str += ' ';\n }\n str += tmp;\n }\n }\n }\n return str;\n}\n\nfunction e(e,i,t,o){for(;i>=t&&!e(\"(min-resolution: \"+i/o+\"dppx)\").matches;)i--;return i}function i(i){if(void 0===i&&(i=window),!i)return 1;if(void 0!==i.devicePixelRatio)return i.devicePixelRatio;var t=i.document.frames;return void 0!==t?void 0!==t.devicePixelRatio?t.devicePixelRatio:t.screen.deviceXDPI/t.screen.systemXDPI:void 0!==i.matchMedia?function(i){for(var t=i.matchMedia,o=10,n=.1,r=1,a=o,c=0;c<4;c++)o=(a=10*e(t,o,n,r))+9,n=a,r*=10;return a/r}(i):1}\n\nvar cjs = {exports: {}};\n\nvar Draggable$1 = {};\n\nvar propTypes = {exports: {}};\n\nvar reactIs = {exports: {}};\n\nvar reactIs_production_min = {};\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\nvar hasRequiredReactIs_production_min;\n\nfunction requireReactIs_production_min () {\n\tif (hasRequiredReactIs_production_min) return reactIs_production_min;\n\thasRequiredReactIs_production_min = 1;\nvar 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?\n\tSymbol.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;\n\tfunction 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}reactIs_production_min.AsyncMode=l;reactIs_production_min.ConcurrentMode=m;reactIs_production_min.ContextConsumer=k;reactIs_production_min.ContextProvider=h;reactIs_production_min.Element=c;reactIs_production_min.ForwardRef=n;reactIs_production_min.Fragment=e;reactIs_production_min.Lazy=t;reactIs_production_min.Memo=r;reactIs_production_min.Portal=d;\n\treactIs_production_min.Profiler=g;reactIs_production_min.StrictMode=f;reactIs_production_min.Suspense=p;reactIs_production_min.isAsyncMode=function(a){return A(a)||z(a)===l};reactIs_production_min.isConcurrentMode=A;reactIs_production_min.isContextConsumer=function(a){return z(a)===k};reactIs_production_min.isContextProvider=function(a){return z(a)===h};reactIs_production_min.isElement=function(a){return \"object\"===typeof a&&null!==a&&a.$$typeof===c};reactIs_production_min.isForwardRef=function(a){return z(a)===n};reactIs_production_min.isFragment=function(a){return z(a)===e};reactIs_production_min.isLazy=function(a){return z(a)===t};\n\treactIs_production_min.isMemo=function(a){return z(a)===r};reactIs_production_min.isPortal=function(a){return z(a)===d};reactIs_production_min.isProfiler=function(a){return z(a)===g};reactIs_production_min.isStrictMode=function(a){return z(a)===f};reactIs_production_min.isSuspense=function(a){return z(a)===p};\n\treactIs_production_min.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)};reactIs_production_min.typeOf=z;\n\treturn reactIs_production_min;\n}\n\nvar reactIs_development = {};\n\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\nvar hasRequiredReactIs_development;\n\nfunction requireReactIs_development () {\n\tif (hasRequiredReactIs_development) return reactIs_development;\n\thasRequiredReactIs_development = 1;\n\n\n\n\tif (process.env.NODE_ENV !== \"production\") {\n\t (function() {\n\n\t// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n\t// nor polyfill, then a plain number is used for performance.\n\tvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\n\tvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\n\tvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\n\tvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\n\tvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\n\tvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\n\tvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\n\tvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n\t// (unstable) APIs that have been removed. Can we remove the symbols?\n\n\tvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\n\tvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\n\tvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\n\tvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\n\tvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\n\tvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\n\tvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\n\tvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\n\tvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\n\tvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\n\tvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\n\tfunction isValidElementType(type) {\n\t return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n\t 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\t}\n\n\tfunction typeOf(object) {\n\t if (typeof object === 'object' && object !== null) {\n\t var $$typeof = object.$$typeof;\n\n\t switch ($$typeof) {\n\t case REACT_ELEMENT_TYPE:\n\t var type = object.type;\n\n\t switch (type) {\n\t case REACT_ASYNC_MODE_TYPE:\n\t case REACT_CONCURRENT_MODE_TYPE:\n\t case REACT_FRAGMENT_TYPE:\n\t case REACT_PROFILER_TYPE:\n\t case REACT_STRICT_MODE_TYPE:\n\t case REACT_SUSPENSE_TYPE:\n\t return type;\n\n\t default:\n\t var $$typeofType = type && type.$$typeof;\n\n\t switch ($$typeofType) {\n\t case REACT_CONTEXT_TYPE:\n\t case REACT_FORWARD_REF_TYPE:\n\t case REACT_LAZY_TYPE:\n\t case REACT_MEMO_TYPE:\n\t case REACT_PROVIDER_TYPE:\n\t return $$typeofType;\n\n\t default:\n\t return $$typeof;\n\t }\n\n\t }\n\n\t case REACT_PORTAL_TYPE:\n\t return $$typeof;\n\t }\n\t }\n\n\t return undefined;\n\t} // AsyncMode is deprecated along with isAsyncMode\n\n\tvar AsyncMode = REACT_ASYNC_MODE_TYPE;\n\tvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\n\tvar ContextConsumer = REACT_CONTEXT_TYPE;\n\tvar ContextProvider = REACT_PROVIDER_TYPE;\n\tvar Element = REACT_ELEMENT_TYPE;\n\tvar ForwardRef = REACT_FORWARD_REF_TYPE;\n\tvar Fragment = REACT_FRAGMENT_TYPE;\n\tvar Lazy = REACT_LAZY_TYPE;\n\tvar Memo = REACT_MEMO_TYPE;\n\tvar Portal = REACT_PORTAL_TYPE;\n\tvar Profiler = REACT_PROFILER_TYPE;\n\tvar StrictMode = REACT_STRICT_MODE_TYPE;\n\tvar Suspense = REACT_SUSPENSE_TYPE;\n\tvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\n\tfunction isAsyncMode(object) {\n\t {\n\t if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n\t hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n\t 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\t }\n\t }\n\n\t return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n\t}\n\tfunction isConcurrentMode(object) {\n\t return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n\t}\n\tfunction isContextConsumer(object) {\n\t return typeOf(object) === REACT_CONTEXT_TYPE;\n\t}\n\tfunction isContextProvider(object) {\n\t return typeOf(object) === REACT_PROVIDER_TYPE;\n\t}\n\tfunction isElement(object) {\n\t return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n\t}\n\tfunction isForwardRef(object) {\n\t return typeOf(object) === REACT_FORWARD_REF_TYPE;\n\t}\n\tfunction isFragment(object) {\n\t return typeOf(object) === REACT_FRAGMENT_TYPE;\n\t}\n\tfunction isLazy(object) {\n\t return typeOf(object) === REACT_LAZY_TYPE;\n\t}\n\tfunction isMemo(object) {\n\t return typeOf(object) === REACT_MEMO_TYPE;\n\t}\n\tfunction isPortal(object) {\n\t return typeOf(object) === REACT_PORTAL_TYPE;\n\t}\n\tfunction isProfiler(object) {\n\t return typeOf(object) === REACT_PROFILER_TYPE;\n\t}\n\tfunction isStrictMode(object) {\n\t return typeOf(object) === REACT_STRICT_MODE_TYPE;\n\t}\n\tfunction isSuspense(object) {\n\t return typeOf(object) === REACT_SUSPENSE_TYPE;\n\t}\n\n\treactIs_development.AsyncMode = AsyncMode;\n\treactIs_development.ConcurrentMode = ConcurrentMode;\n\treactIs_development.ContextConsumer = ContextConsumer;\n\treactIs_development.ContextProvider = ContextProvider;\n\treactIs_development.Element = Element;\n\treactIs_development.ForwardRef = ForwardRef;\n\treactIs_development.Fragment = Fragment;\n\treactIs_development.Lazy = Lazy;\n\treactIs_development.Memo = Memo;\n\treactIs_development.Portal = Portal;\n\treactIs_development.Profiler = Profiler;\n\treactIs_development.StrictMode = StrictMode;\n\treactIs_development.Suspense = Suspense;\n\treactIs_development.isAsyncMode = isAsyncMode;\n\treactIs_development.isConcurrentMode = isConcurrentMode;\n\treactIs_development.isContextConsumer = isContextConsumer;\n\treactIs_development.isContextProvider = isContextProvider;\n\treactIs_development.isElement = isElement;\n\treactIs_development.isForwardRef = isForwardRef;\n\treactIs_development.isFragment = isFragment;\n\treactIs_development.isLazy = isLazy;\n\treactIs_development.isMemo = isMemo;\n\treactIs_development.isPortal = isPortal;\n\treactIs_development.isProfiler = isProfiler;\n\treactIs_development.isStrictMode = isStrictMode;\n\treactIs_development.isSuspense = isSuspense;\n\treactIs_development.isValidElementType = isValidElementType;\n\treactIs_development.typeOf = typeOf;\n\t })();\n\t}\n\treturn reactIs_development;\n}\n\nvar hasRequiredReactIs;\n\nfunction requireReactIs () {\n\tif (hasRequiredReactIs) return reactIs.exports;\n\thasRequiredReactIs = 1;\n\n\tif (process.env.NODE_ENV === 'production') {\n\t reactIs.exports = requireReactIs_production_min();\n\t} else {\n\t reactIs.exports = requireReactIs_development();\n\t}\n\treturn reactIs.exports;\n}\n\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\nvar objectAssign;\nvar hasRequiredObjectAssign;\n\nfunction requireObjectAssign () {\n\tif (hasRequiredObjectAssign) return objectAssign;\n\thasRequiredObjectAssign = 1;\n\t/* eslint-disable no-unused-vars */\n\tvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\n\tvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\tvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\n\tfunction toObject(val) {\n\t\tif (val === null || val === undefined) {\n\t\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t\t}\n\n\t\treturn Object(val);\n\t}\n\n\tfunction shouldUseNative() {\n\t\ttry {\n\t\t\tif (!Object.assign) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\t\ttest1[5] = 'de';\n\t\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\t\tvar test2 = {};\n\t\t\tfor (var i = 0; i < 10; i++) {\n\t\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t\t}\n\t\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\t\treturn test2[n];\n\t\t\t});\n\t\t\tif (order2.join('') !== '0123456789') {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\t\tvar test3 = {};\n\t\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\t\ttest3[letter] = letter;\n\t\t\t});\n\t\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn true;\n\t\t} catch (err) {\n\t\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tobjectAssign = shouldUseNative() ? Object.assign : function (target, source) {\n\t\tvar from;\n\t\tvar to = toObject(target);\n\t\tvar symbols;\n\n\t\tfor (var s = 1; s < arguments.length; s++) {\n\t\t\tfrom = Object(arguments[s]);\n\n\t\t\tfor (var key in from) {\n\t\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\t\tto[key] = from[key];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (getOwnPropertySymbols) {\n\t\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn to;\n\t};\n\treturn objectAssign;\n}\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\nvar ReactPropTypesSecret_1;\nvar hasRequiredReactPropTypesSecret;\n\nfunction requireReactPropTypesSecret () {\n\tif (hasRequiredReactPropTypesSecret) return ReactPropTypesSecret_1;\n\thasRequiredReactPropTypesSecret = 1;\n\n\tvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\n\tReactPropTypesSecret_1 = ReactPropTypesSecret;\n\treturn ReactPropTypesSecret_1;\n}\n\nvar has;\nvar hasRequiredHas;\n\nfunction requireHas () {\n\tif (hasRequiredHas) return has;\n\thasRequiredHas = 1;\n\thas = Function.call.bind(Object.prototype.hasOwnProperty);\n\treturn has;\n}\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\nvar checkPropTypes_1;\nvar hasRequiredCheckPropTypes;\n\nfunction requireCheckPropTypes () {\n\tif (hasRequiredCheckPropTypes) return checkPropTypes_1;\n\thasRequiredCheckPropTypes = 1;\n\n\tvar printWarning = function() {};\n\n\tif (process.env.NODE_ENV !== 'production') {\n\t var ReactPropTypesSecret = requireReactPropTypesSecret();\n\t var loggedTypeFailures = {};\n\t var has = requireHas();\n\n\t printWarning = function(text) {\n\t var message = 'Warning: ' + text;\n\t if (typeof console !== 'undefined') {\n\t console.error(message);\n\t }\n\t try {\n\t // --- Welcome to debugging React ---\n\t // This error was thrown as a convenience so that you can use this stack\n\t // to find the callsite that caused this warning to fire.\n\t throw new Error(message);\n\t } catch (x) { /**/ }\n\t };\n\t}\n\n\t/**\n\t * Assert that the values match with the type specs.\n\t * Error messages are memorized and will only be shown once.\n\t *\n\t * @param {object} typeSpecs Map of name to a ReactPropType\n\t * @param {object} values Runtime values that need to be type-checked\n\t * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n\t * @param {string} componentName Name of the component for error messages.\n\t * @param {?Function} getStack Returns the component stack.\n\t * @private\n\t */\n\tfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n\t if (process.env.NODE_ENV !== 'production') {\n\t for (var typeSpecName in typeSpecs) {\n\t if (has(typeSpecs, typeSpecName)) {\n\t var error;\n\t // Prop type validation may throw. In case they do, we don't want to\n\t // fail the render phase where it didn't fail before. So we log it.\n\t // After these have been cleaned up, we'll let them throw.\n\t try {\n\t // This is intentionally an invariant that gets caught. It's the same\n\t // behavior as without this statement except with a better message.\n\t if (typeof typeSpecs[typeSpecName] !== 'function') {\n\t var err = Error(\n\t (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n\t 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n\t 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n\t );\n\t err.name = 'Invariant Violation';\n\t throw err;\n\t }\n\t error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n\t } catch (ex) {\n\t error = ex;\n\t }\n\t if (error && !(error instanceof Error)) {\n\t printWarning(\n\t (componentName || 'React class') + ': type specification of ' +\n\t location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n\t 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n\t 'You may have forgotten to pass an argument to the type checker ' +\n\t 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n\t 'shape all require an argument).'\n\t );\n\t }\n\t if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n\t // Only monitor this failure once because there tends to be a lot of the\n\t // same error.\n\t loggedTypeFailures[error.message] = true;\n\n\t var stack = getStack ? getStack() : '';\n\n\t printWarning(\n\t 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n\t );\n\t }\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Resets warning cache when testing.\n\t *\n\t * @private\n\t */\n\tcheckPropTypes.resetWarningCache = function() {\n\t if (process.env.NODE_ENV !== 'production') {\n\t loggedTypeFailures = {};\n\t }\n\t};\n\n\tcheckPropTypes_1 = checkPropTypes;\n\treturn checkPropTypes_1;\n}\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\nvar factoryWithTypeCheckers;\nvar hasRequiredFactoryWithTypeCheckers;\n\nfunction requireFactoryWithTypeCheckers () {\n\tif (hasRequiredFactoryWithTypeCheckers) return factoryWithTypeCheckers;\n\thasRequiredFactoryWithTypeCheckers = 1;\n\n\tvar ReactIs = requireReactIs();\n\tvar assign = requireObjectAssign();\n\n\tvar ReactPropTypesSecret = requireReactPropTypesSecret();\n\tvar has = requireHas();\n\tvar checkPropTypes = requireCheckPropTypes();\n\n\tvar printWarning = function() {};\n\n\tif (process.env.NODE_ENV !== 'production') {\n\t printWarning = function(text) {\n\t var message = 'Warning: ' + text;\n\t if (typeof console !== 'undefined') {\n\t console.error(message);\n\t }\n\t try {\n\t // --- Welcome to debugging React ---\n\t // This error was thrown as a convenience so that you can use this stack\n\t // to find the callsite that caused this warning to fire.\n\t throw new Error(message);\n\t } catch (x) {}\n\t };\n\t}\n\n\tfunction emptyFunctionThatReturnsNull() {\n\t return null;\n\t}\n\n\tfactoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {\n\t /* global Symbol */\n\t var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n\t var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n\t /**\n\t * Returns the iterator method function contained on the iterable object.\n\t *\n\t * Be sure to invoke the function with the iterable as context:\n\t *\n\t * var iteratorFn = getIteratorFn(myIterable);\n\t * if (iteratorFn) {\n\t * var iterator = iteratorFn.call(myIterable);\n\t * ...\n\t * }\n\t *\n\t * @param {?object} maybeIterable\n\t * @return {?function}\n\t */\n\t function getIteratorFn(maybeIterable) {\n\t var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n\t if (typeof iteratorFn === 'function') {\n\t return iteratorFn;\n\t }\n\t }\n\n\t /**\n\t * Collection of methods that allow declaration and validation of props that are\n\t * supplied to React components. Example usage:\n\t *\n\t * var Props = require('ReactPropTypes');\n\t * var MyArticle = React.createClass({\n\t * propTypes: {\n\t * // An optional string prop named \"description\".\n\t * description: Props.string,\n\t *\n\t * // A required enum prop named \"category\".\n\t * category: Props.oneOf(['News','Photos']).isRequired,\n\t *\n\t * // A prop named \"dialog\" that requires an instance of Dialog.\n\t * dialog: Props.instanceOf(Dialog).isRequired\n\t * },\n\t * render: function() { ... }\n\t * });\n\t *\n\t * A more formal specification of how these methods are used:\n\t *\n\t * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n\t * decl := ReactPropTypes.{type}(.isRequired)?\n\t *\n\t * Each and every declaration produces a function with the same signature. This\n\t * allows the creation of custom validation functions. For example:\n\t *\n\t * var MyLink = React.createClass({\n\t * propTypes: {\n\t * // An optional string or URI prop named \"href\".\n\t * href: function(props, propName, componentName) {\n\t * var propValue = props[propName];\n\t * if (propValue != null && typeof propValue !== 'string' &&\n\t * !(propValue instanceof URI)) {\n\t * return new Error(\n\t * 'Expected a string or an URI for ' + propName + ' in ' +\n\t * componentName\n\t * );\n\t * }\n\t * }\n\t * },\n\t * render: function() {...}\n\t * });\n\t *\n\t * @internal\n\t */\n\n\t var ANONYMOUS = '<>';\n\n\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n\t var ReactPropTypes = {\n\t array: createPrimitiveTypeChecker('array'),\n\t bigint: createPrimitiveTypeChecker('bigint'),\n\t bool: createPrimitiveTypeChecker('boolean'),\n\t func: createPrimitiveTypeChecker('function'),\n\t number: createPrimitiveTypeChecker('number'),\n\t object: createPrimitiveTypeChecker('object'),\n\t string: createPrimitiveTypeChecker('string'),\n\t symbol: createPrimitiveTypeChecker('symbol'),\n\n\t any: createAnyTypeChecker(),\n\t arrayOf: createArrayOfTypeChecker,\n\t element: createElementTypeChecker(),\n\t elementType: createElementTypeTypeChecker(),\n\t instanceOf: createInstanceTypeChecker,\n\t node: createNodeChecker(),\n\t objectOf: createObjectOfTypeChecker,\n\t oneOf: createEnumTypeChecker,\n\t oneOfType: createUnionTypeChecker,\n\t shape: createShapeTypeChecker,\n\t exact: createStrictShapeTypeChecker,\n\t };\n\n\t /**\n\t * inlined Object.is polyfill to avoid requiring consumers ship their own\n\t * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n\t */\n\t /*eslint-disable no-self-compare*/\n\t function is(x, y) {\n\t // SameValue algorithm\n\t if (x === y) {\n\t // Steps 1-5, 7-10\n\t // Steps 6.b-6.e: +0 != -0\n\t return x !== 0 || 1 / x === 1 / y;\n\t } else {\n\t // Step 6.a: NaN == NaN\n\t return x !== x && y !== y;\n\t }\n\t }\n\t /*eslint-enable no-self-compare*/\n\n\t /**\n\t * We use an Error-like object for backward compatibility as people may call\n\t * PropTypes directly and inspect their output. However, we don't use real\n\t * Errors anymore. We don't inspect their stack anyway, and creating them\n\t * is prohibitively expensive if they are created too often, such as what\n\t * happens in oneOfType() for any type before the one that matched.\n\t */\n\t function PropTypeError(message, data) {\n\t this.message = message;\n\t this.data = data && typeof data === 'object' ? data: {};\n\t this.stack = '';\n\t }\n\t // Make `instanceof Error` still work for returned errors.\n\t PropTypeError.prototype = Error.prototype;\n\n\t function createChainableTypeChecker(validate) {\n\t if (process.env.NODE_ENV !== 'production') {\n\t var manualPropTypeCallCache = {};\n\t var manualPropTypeWarningCount = 0;\n\t }\n\t function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n\t componentName = componentName || ANONYMOUS;\n\t propFullName = propFullName || propName;\n\n\t if (secret !== ReactPropTypesSecret) {\n\t if (throwOnDirectAccess) {\n\t // New behavior only for users of `prop-types` package\n\t var err = new Error(\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use `PropTypes.checkPropTypes()` to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t err.name = 'Invariant Violation';\n\t throw err;\n\t } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n\t // Old behavior for people using React.PropTypes\n\t var cacheKey = componentName + ':' + propName;\n\t if (\n\t !manualPropTypeCallCache[cacheKey] &&\n\t // Avoid spamming the console because they are often not actionable except for lib authors\n\t manualPropTypeWarningCount < 3\n\t ) {\n\t printWarning(\n\t 'You are manually calling a React.PropTypes validation ' +\n\t 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n\t 'and will throw in the standalone `prop-types` package. ' +\n\t 'You may be seeing this warning due to a third-party PropTypes ' +\n\t 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n\t );\n\t manualPropTypeCallCache[cacheKey] = true;\n\t manualPropTypeWarningCount++;\n\t }\n\t }\n\t }\n\t if (props[propName] == null) {\n\t if (isRequired) {\n\t if (props[propName] === null) {\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n\t }\n\t return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n\t }\n\t return null;\n\t } else {\n\t return validate(props, propName, componentName, location, propFullName);\n\t }\n\t }\n\n\t var chainedCheckType = checkType.bind(null, false);\n\t chainedCheckType.isRequired = checkType.bind(null, true);\n\n\t return chainedCheckType;\n\t }\n\n\t function createPrimitiveTypeChecker(expectedType) {\n\t function validate(props, propName, componentName, location, propFullName, secret) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== expectedType) {\n\t // `propValue` being instance of, say, date/regexp, pass the 'object'\n\t // check, but we can offer a more precise error message here rather than\n\t // 'of type `object`'.\n\t var preciseType = getPreciseType(propValue);\n\n\t return new PropTypeError(\n\t 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n\t {expectedType: expectedType}\n\t );\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createAnyTypeChecker() {\n\t return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n\t }\n\n\t function createArrayOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n\t }\n\t var propValue = props[propName];\n\t if (!Array.isArray(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n\t }\n\t for (var i = 0; i < propValue.length; i++) {\n\t var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createElementTypeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t if (!isValidElement(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createElementTypeTypeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t if (!ReactIs.isValidElementType(propValue)) {\n\t var propType = getPropType(propValue);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createInstanceTypeChecker(expectedClass) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!(props[propName] instanceof expectedClass)) {\n\t var expectedClassName = expectedClass.name || ANONYMOUS;\n\t var actualClassName = getClassName(props[propName]);\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createEnumTypeChecker(expectedValues) {\n\t if (!Array.isArray(expectedValues)) {\n\t if (process.env.NODE_ENV !== 'production') {\n\t if (arguments.length > 1) {\n\t printWarning(\n\t 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n\t 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n\t );\n\t } else {\n\t printWarning('Invalid argument supplied to oneOf, expected an array.');\n\t }\n\t }\n\t return emptyFunctionThatReturnsNull;\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t for (var i = 0; i < expectedValues.length; i++) {\n\t if (is(propValue, expectedValues[i])) {\n\t return null;\n\t }\n\t }\n\n\t var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n\t var type = getPreciseType(value);\n\t if (type === 'symbol') {\n\t return String(value);\n\t }\n\t return value;\n\t });\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createObjectOfTypeChecker(typeChecker) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (typeof typeChecker !== 'function') {\n\t return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n\t }\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n\t }\n\t for (var key in propValue) {\n\t if (has(propValue, key)) {\n\t var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error instanceof Error) {\n\t return error;\n\t }\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createUnionTypeChecker(arrayOfTypeCheckers) {\n\t if (!Array.isArray(arrayOfTypeCheckers)) {\n\t process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n\t return emptyFunctionThatReturnsNull;\n\t }\n\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t if (typeof checker !== 'function') {\n\t printWarning(\n\t 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n\t 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n\t );\n\t return emptyFunctionThatReturnsNull;\n\t }\n\t }\n\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var expectedTypes = [];\n\t for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n\t var checker = arrayOfTypeCheckers[i];\n\t var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n\t if (checkerResult == null) {\n\t return null;\n\t }\n\t if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n\t expectedTypes.push(checkerResult.data.expectedType);\n\t }\n\t }\n\t var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createNodeChecker() {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t if (!isNode(props[propName])) {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function invalidValidatorError(componentName, location, propFullName, key, type) {\n\t return new PropTypeError(\n\t (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n\t 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n\t );\n\t }\n\n\t function createShapeTypeChecker(shapeTypes) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n\t }\n\t for (var key in shapeTypes) {\n\t var checker = shapeTypes[key];\n\t if (typeof checker !== 'function') {\n\t return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n\t }\n\t var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function createStrictShapeTypeChecker(shapeTypes) {\n\t function validate(props, propName, componentName, location, propFullName) {\n\t var propValue = props[propName];\n\t var propType = getPropType(propValue);\n\t if (propType !== 'object') {\n\t return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n\t }\n\t // We need to check all keys in case some are required but missing from props.\n\t var allKeys = assign({}, props[propName], shapeTypes);\n\t for (var key in allKeys) {\n\t var checker = shapeTypes[key];\n\t if (has(shapeTypes, key) && typeof checker !== 'function') {\n\t return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n\t }\n\t if (!checker) {\n\t return new PropTypeError(\n\t 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n\t '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n\t '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n\t );\n\t }\n\t var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n\t if (error) {\n\t return error;\n\t }\n\t }\n\t return null;\n\t }\n\n\t return createChainableTypeChecker(validate);\n\t }\n\n\t function isNode(propValue) {\n\t switch (typeof propValue) {\n\t case 'number':\n\t case 'string':\n\t case 'undefined':\n\t return true;\n\t case 'boolean':\n\t return !propValue;\n\t case 'object':\n\t if (Array.isArray(propValue)) {\n\t return propValue.every(isNode);\n\t }\n\t if (propValue === null || isValidElement(propValue)) {\n\t return true;\n\t }\n\n\t var iteratorFn = getIteratorFn(propValue);\n\t if (iteratorFn) {\n\t var iterator = iteratorFn.call(propValue);\n\t var step;\n\t if (iteratorFn !== propValue.entries) {\n\t while (!(step = iterator.next()).done) {\n\t if (!isNode(step.value)) {\n\t return false;\n\t }\n\t }\n\t } else {\n\t // Iterator will provide entry [k,v] tuples rather than values.\n\t while (!(step = iterator.next()).done) {\n\t var entry = step.value;\n\t if (entry) {\n\t if (!isNode(entry[1])) {\n\t return false;\n\t }\n\t }\n\t }\n\t }\n\t } else {\n\t return false;\n\t }\n\n\t return true;\n\t default:\n\t return false;\n\t }\n\t }\n\n\t function isSymbol(propType, propValue) {\n\t // Native Symbol.\n\t if (propType === 'symbol') {\n\t return true;\n\t }\n\n\t // falsy value can't be a Symbol\n\t if (!propValue) {\n\t return false;\n\t }\n\n\t // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n\t if (propValue['@@toStringTag'] === 'Symbol') {\n\t return true;\n\t }\n\n\t // Fallback for non-spec compliant Symbols which are polyfilled.\n\t if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n\t return true;\n\t }\n\n\t return false;\n\t }\n\n\t // Equivalent of `typeof` but with special handling for array and regexp.\n\t function getPropType(propValue) {\n\t var propType = typeof propValue;\n\t if (Array.isArray(propValue)) {\n\t return 'array';\n\t }\n\t if (propValue instanceof RegExp) {\n\t // Old webkits (at least until Android 4.0) return 'function' rather than\n\t // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n\t // passes PropTypes.object.\n\t return 'object';\n\t }\n\t if (isSymbol(propType, propValue)) {\n\t return 'symbol';\n\t }\n\t return propType;\n\t }\n\n\t // This handles more types than `getPropType`. Only used for error messages.\n\t // See `createPrimitiveTypeChecker`.\n\t function getPreciseType(propValue) {\n\t if (typeof propValue === 'undefined' || propValue === null) {\n\t return '' + propValue;\n\t }\n\t var propType = getPropType(propValue);\n\t if (propType === 'object') {\n\t if (propValue instanceof Date) {\n\t return 'date';\n\t } else if (propValue instanceof RegExp) {\n\t return 'regexp';\n\t }\n\t }\n\t return propType;\n\t }\n\n\t // Returns a string that is postfixed to a warning about an invalid type.\n\t // For example, \"undefined\" or \"of type array\"\n\t function getPostfixForTypeWarning(value) {\n\t var type = getPreciseType(value);\n\t switch (type) {\n\t case 'array':\n\t case 'object':\n\t return 'an ' + type;\n\t case 'boolean':\n\t case 'date':\n\t case 'regexp':\n\t return 'a ' + type;\n\t default:\n\t return type;\n\t }\n\t }\n\n\t // Returns class name of the object, if any.\n\t function getClassName(propValue) {\n\t if (!propValue.constructor || !propValue.constructor.name) {\n\t return ANONYMOUS;\n\t }\n\t return propValue.constructor.name;\n\t }\n\n\t ReactPropTypes.checkPropTypes = checkPropTypes;\n\t ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\treturn factoryWithTypeCheckers;\n}\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\nvar factoryWithThrowingShims;\nvar hasRequiredFactoryWithThrowingShims;\n\nfunction requireFactoryWithThrowingShims () {\n\tif (hasRequiredFactoryWithThrowingShims) return factoryWithThrowingShims;\n\thasRequiredFactoryWithThrowingShims = 1;\n\n\tvar ReactPropTypesSecret = requireReactPropTypesSecret();\n\n\tfunction emptyFunction() {}\n\tfunction emptyFunctionWithReset() {}\n\temptyFunctionWithReset.resetWarningCache = emptyFunction;\n\n\tfactoryWithThrowingShims = function() {\n\t function shim(props, propName, componentName, location, propFullName, secret) {\n\t if (secret === ReactPropTypesSecret) {\n\t // It is still safe when called from React.\n\t return;\n\t }\n\t var err = new Error(\n\t 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n\t 'Use PropTypes.checkPropTypes() to call them. ' +\n\t 'Read more at http://fb.me/use-check-prop-types'\n\t );\n\t err.name = 'Invariant Violation';\n\t throw err;\n\t }\t shim.isRequired = shim;\n\t function getShim() {\n\t return shim;\n\t }\t // Important!\n\t // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n\t var ReactPropTypes = {\n\t array: shim,\n\t bigint: shim,\n\t bool: shim,\n\t func: shim,\n\t number: shim,\n\t object: shim,\n\t string: shim,\n\t symbol: shim,\n\n\t any: shim,\n\t arrayOf: getShim,\n\t element: shim,\n\t elementType: shim,\n\t instanceOf: getShim,\n\t node: shim,\n\t objectOf: getShim,\n\t oneOf: getShim,\n\t oneOfType: getShim,\n\t shape: getShim,\n\t exact: getShim,\n\n\t checkPropTypes: emptyFunctionWithReset,\n\t resetWarningCache: emptyFunction\n\t };\n\n\t ReactPropTypes.PropTypes = ReactPropTypes;\n\n\t return ReactPropTypes;\n\t};\n\treturn factoryWithThrowingShims;\n}\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 = requireReactIs();\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 propTypes.exports = requireFactoryWithTypeCheckers()(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 propTypes.exports = requireFactoryWithThrowingShims()();\n}\n\nvar propTypesExports = propTypes.exports;\n\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t | TouchList*/, callback /*: Function*/) /*: any*/{\n for (let i = 0, length = array.length; i < length; i++) {\n if (callback.apply(callback, [array[i], i, array])) return array[i];\n }\n}\nfunction isFunction(func /*: any*/) /*: boolean %checks*/{\n // $FlowIgnore[method-unbinding]\n return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';\n}\nfunction isNum$1(num /*: any*/) /*: boolean %checks*/{\n return typeof num === 'number' && !isNaN(num);\n}\nfunction int$1(a /*: string*/) /*: number*/{\n return parseInt(a, 10);\n}\nfunction dontSetMe(props /*: Object*/, propName /*: string*/, componentName /*: string*/) /*: ?Error*/{\n if (props[propName]) {\n return new Error(\"Invalid prop \".concat(propName, \" passed to \").concat(componentName, \" - do not set this, set it on the child.\"));\n }\n}\n\nvar getPrefix$1 = {};\n\nObject.defineProperty(getPrefix$1, \"__esModule\", {\n value: true\n});\ngetPrefix$1.browserPrefixToKey = browserPrefixToKey;\ngetPrefix$1.browserPrefixToStyle = browserPrefixToStyle;\ngetPrefix$1.default = void 0;\ngetPrefix$1.getPrefix = getPrefix;\nconst prefixes = ['Moz', 'Webkit', 'O', 'ms'];\nfunction getPrefix() /*: string*/{\n var _window$document;\n let prop /*: string*/ = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';\n // Ensure we're running in an environment where there is actually a global\n // `window` obj\n if (typeof window === 'undefined') return '';\n\n // If we're in a pseudo-browser server-side environment, this access\n // path may not exist, so bail out if it doesn't.\n const style = (_window$document = window.document) === null || _window$document === void 0 || (_window$document = _window$document.documentElement) === null || _window$document === void 0 ? void 0 : _window$document.style;\n if (!style) return '';\n if (prop in style) return '';\n for (let i = 0; i < prefixes.length; i++) {\n if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];\n }\n return '';\n}\nfunction browserPrefixToKey(prop /*: string*/, prefix /*: string*/) /*: string*/{\n return prefix ? \"\".concat(prefix).concat(kebabToTitleCase(prop)) : prop;\n}\nfunction browserPrefixToStyle(prop /*: string*/, prefix /*: string*/) /*: string*/{\n return prefix ? \"-\".concat(prefix.toLowerCase(), \"-\").concat(prop) : prop;\n}\nfunction kebabToTitleCase(str /*: string*/) /*: string*/{\n let out = '';\n let shouldCapitalize = true;\n for (let i = 0; i < str.length; i++) {\n if (shouldCapitalize) {\n out += str[i].toUpperCase();\n shouldCapitalize = false;\n } else if (str[i] === '-') {\n shouldCapitalize = true;\n } else {\n out += str[i];\n }\n }\n return out;\n}\n\n// Default export is the prefix itself, like 'Moz', 'Webkit', etc\n// Note that you may have to re-test for certain things; for instance, Chrome 50\n// can handle unprefixed `transform`, but not unprefixed `user-select`\ngetPrefix$1.default = (getPrefix() /*: string*/);\n\nObject.defineProperty(domFns, \"__esModule\", {\n value: true\n});\ndomFns.addClassName = addClassName;\ndomFns.addEvent = addEvent;\ndomFns.addUserSelectStyles = addUserSelectStyles;\ndomFns.createCSSTransform = createCSSTransform;\ndomFns.createSVGTransform = createSVGTransform;\ndomFns.getTouch = getTouch;\ndomFns.getTouchIdentifier = getTouchIdentifier;\ndomFns.getTranslation = getTranslation;\ndomFns.innerHeight = innerHeight;\ndomFns.innerWidth = innerWidth;\ndomFns.matchesSelector = matchesSelector;\ndomFns.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;\ndomFns.offsetXYFromParent = offsetXYFromParent;\ndomFns.outerHeight = outerHeight;\ndomFns.outerWidth = outerWidth;\ndomFns.removeClassName = removeClassName;\ndomFns.removeEvent = removeEvent;\ndomFns.removeUserSelectStyles = removeUserSelectStyles;\nvar _shims$2 = shims;\nvar _getPrefix = _interopRequireWildcard$1(getPrefix$1);\nfunction _getRequireWildcardCache$1(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache$1 = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard$1(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache$1(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/*:: import type {ControlPosition, PositionOffsetControlPosition, MouseTouchEvent} from './types';*/\nlet matchesSelectorFunc = '';\nfunction matchesSelector(el /*: Node*/, selector /*: string*/) /*: boolean*/{\n if (!matchesSelectorFunc) {\n matchesSelectorFunc = (0, _shims$2.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {\n // $FlowIgnore: Doesn't think elements are indexable\n return (0, _shims$2.isFunction)(el[method]);\n });\n }\n\n // Might not be found entirely (not an Element?) - in that case, bail\n // $FlowIgnore: Doesn't think elements are indexable\n if (!(0, _shims$2.isFunction)(el[matchesSelectorFunc])) return false;\n\n // $FlowIgnore: Doesn't think elements are indexable\n return el[matchesSelectorFunc](selector);\n}\n\n// Works up the tree to the draggable itself attempting to match selector.\nfunction matchesSelectorAndParentsTo(el /*: Node*/, selector /*: string*/, baseNode /*: Node*/) /*: boolean*/{\n let node = el;\n do {\n if (matchesSelector(node, selector)) return true;\n if (node === baseNode) return false;\n // $FlowIgnore[incompatible-type]\n node = node.parentNode;\n } while (node);\n return false;\n}\nfunction addEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{\n if (!el) return;\n const options = {\n capture: true,\n ...inputOptions\n };\n // $FlowIgnore[method-unbinding]\n if (el.addEventListener) {\n el.addEventListener(event, handler, options);\n } else if (el.attachEvent) {\n el.attachEvent('on' + event, handler);\n } else {\n // $FlowIgnore: Doesn't think elements are indexable\n el['on' + event] = handler;\n }\n}\nfunction removeEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{\n if (!el) return;\n const options = {\n capture: true,\n ...inputOptions\n };\n // $FlowIgnore[method-unbinding]\n if (el.removeEventListener) {\n el.removeEventListener(event, handler, options);\n } else if (el.detachEvent) {\n el.detachEvent('on' + event, handler);\n } else {\n // $FlowIgnore: Doesn't think elements are indexable\n el['on' + event] = null;\n }\n}\nfunction outerHeight(node /*: HTMLElement*/) /*: number*/{\n // This is deliberately excluding margin for our calculations, since we are using\n // offsetTop which is including margin. See getBoundPosition\n let height = node.clientHeight;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n height += (0, _shims$2.int)(computedStyle.borderTopWidth);\n height += (0, _shims$2.int)(computedStyle.borderBottomWidth);\n return height;\n}\nfunction outerWidth(node /*: HTMLElement*/) /*: number*/{\n // This is deliberately excluding margin for our calculations, since we are using\n // offsetLeft which is including margin. See getBoundPosition\n let width = node.clientWidth;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n width += (0, _shims$2.int)(computedStyle.borderLeftWidth);\n width += (0, _shims$2.int)(computedStyle.borderRightWidth);\n return width;\n}\nfunction innerHeight(node /*: HTMLElement*/) /*: number*/{\n let height = node.clientHeight;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n height -= (0, _shims$2.int)(computedStyle.paddingTop);\n height -= (0, _shims$2.int)(computedStyle.paddingBottom);\n return height;\n}\nfunction innerWidth(node /*: HTMLElement*/) /*: number*/{\n let width = node.clientWidth;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n width -= (0, _shims$2.int)(computedStyle.paddingLeft);\n width -= (0, _shims$2.int)(computedStyle.paddingRight);\n return width;\n}\n/*:: interface EventWithOffset {\n clientX: number, clientY: number\n}*/\n// Get from offsetParent\nfunction offsetXYFromParent(evt /*: EventWithOffset*/, offsetParent /*: HTMLElement*/, scale /*: number*/) /*: ControlPosition*/{\n const isBody = offsetParent === offsetParent.ownerDocument.body;\n const offsetParentRect = isBody ? {\n left: 0,\n top: 0\n } : offsetParent.getBoundingClientRect();\n const x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;\n const y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;\n return {\n x,\n y\n };\n}\nfunction createCSSTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: Object*/{\n const translation = getTranslation(controlPos, positionOffset, 'px');\n return {\n [(0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default)]: translation\n };\n}\nfunction createSVGTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: string*/{\n const translation = getTranslation(controlPos, positionOffset, '');\n return translation;\n}\nfunction getTranslation(_ref /*:: */, positionOffset /*: PositionOffsetControlPosition*/, unitSuffix /*: string*/) /*: string*/{\n let {\n x,\n y\n } /*: ControlPosition*/ = _ref /*: ControlPosition*/;\n let translation = \"translate(\".concat(x).concat(unitSuffix, \",\").concat(y).concat(unitSuffix, \")\");\n if (positionOffset) {\n const defaultX = \"\".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);\n const defaultY = \"\".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);\n translation = \"translate(\".concat(defaultX, \", \").concat(defaultY, \")\") + translation;\n }\n return translation;\n}\nfunction getTouch(e /*: MouseTouchEvent*/, identifier /*: number*/) /*: ?{clientX: number, clientY: number}*/{\n return e.targetTouches && (0, _shims$2.findInArray)(e.targetTouches, t => identifier === t.identifier) || e.changedTouches && (0, _shims$2.findInArray)(e.changedTouches, t => identifier === t.identifier);\n}\nfunction getTouchIdentifier(e /*: MouseTouchEvent*/) /*: ?number*/{\n if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;\n if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;\n}\n\n// User-select Hacks:\n//\n// Useful for preventing blue highlights all over everything when dragging.\n\n// Note we're passing `document` b/c we could be iframed\nfunction addUserSelectStyles(doc /*: ?Document*/) {\n if (!doc) return;\n let styleEl = doc.getElementById('react-draggable-style-el');\n if (!styleEl) {\n styleEl = doc.createElement('style');\n styleEl.type = 'text/css';\n styleEl.id = 'react-draggable-style-el';\n styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\\n';\n styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\\n';\n doc.getElementsByTagName('head')[0].appendChild(styleEl);\n }\n if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');\n}\nfunction removeUserSelectStyles(doc /*: ?Document*/) {\n if (!doc) return;\n try {\n if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection');\n // $FlowIgnore: IE\n if (doc.selection) {\n // $FlowIgnore: IE\n doc.selection.empty();\n } else {\n // Remove selection caused by scroll, unless it's a focused input\n // (we use doc.defaultView in case we're in an iframe)\n const selection = (doc.defaultView || window).getSelection();\n if (selection && selection.type !== 'Caret') {\n selection.removeAllRanges();\n }\n }\n } catch (e) {\n // probably IE\n }\n}\nfunction addClassName(el /*: HTMLElement*/, className /*: string*/) {\n if (el.classList) {\n el.classList.add(className);\n } else {\n if (!el.className.match(new RegExp(\"(?:^|\\\\s)\".concat(className, \"(?!\\\\S)\")))) {\n el.className += \" \".concat(className);\n }\n }\n}\nfunction removeClassName(el /*: HTMLElement*/, className /*: string*/) {\n if (el.classList) {\n el.classList.remove(className);\n } else {\n el.className = el.className.replace(new RegExp(\"(?:^|\\\\s)\".concat(className, \"(?!\\\\S)\"), 'g'), '');\n }\n}\n\nvar positionFns = {};\n\nObject.defineProperty(positionFns, \"__esModule\", {\n value: true\n});\npositionFns.canDragX = canDragX;\npositionFns.canDragY = canDragY;\npositionFns.createCoreData = createCoreData;\npositionFns.createDraggableData = createDraggableData;\npositionFns.getBoundPosition = getBoundPosition;\npositionFns.getControlPosition = getControlPosition;\npositionFns.snapToGrid = snapToGrid;\nvar _shims$1 = shims;\nvar _domFns$1 = domFns;\n/*:: import type Draggable from '../Draggable';*/\n/*:: import type {Bounds, ControlPosition, DraggableData, MouseTouchEvent} from './types';*/\n/*:: import type DraggableCore from '../DraggableCore';*/\nfunction getBoundPosition(draggable /*: Draggable*/, x /*: number*/, y /*: number*/) /*: [number, number]*/{\n // If no bounds, short-circuit and move on\n if (!draggable.props.bounds) return [x, y];\n\n // Clone new bounds\n let {\n bounds\n } = draggable.props;\n bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);\n const node = findDOMNode(draggable);\n if (typeof bounds === 'string') {\n const {\n ownerDocument\n } = node;\n const ownerWindow = ownerDocument.defaultView;\n let boundNode;\n if (bounds === 'parent') {\n boundNode = node.parentNode;\n } else {\n boundNode = ownerDocument.querySelector(bounds);\n }\n if (!(boundNode instanceof ownerWindow.HTMLElement)) {\n throw new Error('Bounds selector \"' + bounds + '\" could not find an element.');\n }\n const boundNodeEl /*: HTMLElement*/ = boundNode; // for Flow, can't seem to refine correctly\n const nodeStyle = ownerWindow.getComputedStyle(node);\n const boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl);\n // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.\n bounds = {\n left: -node.offsetLeft + (0, _shims$1.int)(boundNodeStyle.paddingLeft) + (0, _shims$1.int)(nodeStyle.marginLeft),\n top: -node.offsetTop + (0, _shims$1.int)(boundNodeStyle.paddingTop) + (0, _shims$1.int)(nodeStyle.marginTop),\n right: (0, _domFns$1.innerWidth)(boundNodeEl) - (0, _domFns$1.outerWidth)(node) - node.offsetLeft + (0, _shims$1.int)(boundNodeStyle.paddingRight) - (0, _shims$1.int)(nodeStyle.marginRight),\n bottom: (0, _domFns$1.innerHeight)(boundNodeEl) - (0, _domFns$1.outerHeight)(node) - node.offsetTop + (0, _shims$1.int)(boundNodeStyle.paddingBottom) - (0, _shims$1.int)(nodeStyle.marginBottom)\n };\n }\n\n // Keep x and y below right and bottom limits...\n if ((0, _shims$1.isNum)(bounds.right)) x = Math.min(x, bounds.right);\n if ((0, _shims$1.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom);\n\n // But above left and top limits.\n if ((0, _shims$1.isNum)(bounds.left)) x = Math.max(x, bounds.left);\n if ((0, _shims$1.isNum)(bounds.top)) y = Math.max(y, bounds.top);\n return [x, y];\n}\nfunction snapToGrid(grid /*: [number, number]*/, pendingX /*: number*/, pendingY /*: number*/) /*: [number, number]*/{\n const x = Math.round(pendingX / grid[0]) * grid[0];\n const y = Math.round(pendingY / grid[1]) * grid[1];\n return [x, y];\n}\nfunction canDragX(draggable /*: Draggable*/) /*: boolean*/{\n return draggable.props.axis === 'both' || draggable.props.axis === 'x';\n}\nfunction canDragY(draggable /*: Draggable*/) /*: boolean*/{\n return draggable.props.axis === 'both' || draggable.props.axis === 'y';\n}\n\n// Get {x, y} positions from event.\nfunction getControlPosition(e /*: MouseTouchEvent*/, touchIdentifier /*: ?number*/, draggableCore /*: DraggableCore*/) /*: ?ControlPosition*/{\n const touchObj = typeof touchIdentifier === 'number' ? (0, _domFns$1.getTouch)(e, touchIdentifier) : null;\n if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch\n const node = findDOMNode(draggableCore);\n // User can provide an offsetParent if desired.\n const offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;\n return (0, _domFns$1.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);\n}\n\n// Create an data object exposed by 's events\nfunction createCoreData(draggable /*: DraggableCore*/, x /*: number*/, y /*: number*/) /*: DraggableData*/{\n const isStart = !(0, _shims$1.isNum)(draggable.lastX);\n const node = findDOMNode(draggable);\n if (isStart) {\n // If this is our first move, use the x and y as last coords.\n return {\n node,\n deltaX: 0,\n deltaY: 0,\n lastX: x,\n lastY: y,\n x,\n y\n };\n } else {\n // Otherwise calculate proper values.\n return {\n node,\n deltaX: x - draggable.lastX,\n deltaY: y - draggable.lastY,\n lastX: draggable.lastX,\n lastY: draggable.lastY,\n x,\n y\n };\n }\n}\n\n// Create an data exposed by 's events\nfunction createDraggableData(draggable /*: Draggable*/, coreData /*: DraggableData*/) /*: DraggableData*/{\n const scale = draggable.props.scale;\n return {\n node: coreData.node,\n x: draggable.state.x + coreData.deltaX / scale,\n y: draggable.state.y + coreData.deltaY / scale,\n deltaX: coreData.deltaX / scale,\n deltaY: coreData.deltaY / scale,\n lastX: draggable.state.x,\n lastY: draggable.state.y\n };\n}\n\n// A lot faster than stringify/parse\nfunction cloneBounds(bounds /*: Bounds*/) /*: Bounds*/{\n return {\n left: bounds.left,\n top: bounds.top,\n right: bounds.right,\n bottom: bounds.bottom\n };\n}\nfunction findDOMNode(draggable /*: Draggable | DraggableCore*/) /*: HTMLElement*/{\n const node = draggable.findDOMNode();\n if (!node) {\n throw new Error(': Unmounted during event!');\n }\n // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME\n return node;\n}\n\nvar DraggableCore$2 = {};\n\nvar log$1 = {};\n\nObject.defineProperty(log$1, \"__esModule\", {\n value: true\n});\nlog$1.default = log;\n/*eslint no-console:0*/\nfunction log() {\n}\n\nObject.defineProperty(DraggableCore$2, \"__esModule\", {\n value: true\n});\nDraggableCore$2.default = void 0;\nvar React = _interopRequireWildcard(React__default);\nvar _propTypes = _interopRequireDefault(propTypesExports);\nvar _reactDom = _interopRequireDefault(require$$2__default);\nvar _domFns = domFns;\nvar _positionFns = positionFns;\nvar _shims = shims;\nvar _log = _interopRequireDefault(log$1);\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n/*:: import type {EventHandler, MouseTouchEvent} from './utils/types';*/\n/*:: import type {Element as ReactElement} from 'react';*/\n// Simple abstraction for dragging events names.\nconst eventsFor = {\n touch: {\n start: 'touchstart',\n move: 'touchmove',\n stop: 'touchend'\n },\n mouse: {\n start: 'mousedown',\n move: 'mousemove',\n stop: 'mouseup'\n }\n};\n\n// Default to mouse events.\nlet dragEventFor = eventsFor.mouse;\n/*:: export type DraggableData = {\n node: HTMLElement,\n x: number, y: number,\n deltaX: number, deltaY: number,\n lastX: number, lastY: number,\n};*/\n/*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/\n/*:: export type ControlPosition = {x: number, y: number};*/\n/*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/\n/*:: export type DraggableCoreDefaultProps = {\n allowAnyClick: boolean,\n disabled: boolean,\n enableUserSelectHack: boolean,\n onStart: DraggableEventHandler,\n onDrag: DraggableEventHandler,\n onStop: DraggableEventHandler,\n onMouseDown: (e: MouseEvent) => void,\n scale: number,\n};*/\n/*:: export type DraggableCoreProps = {\n ...DraggableCoreDefaultProps,\n cancel: string,\n children: ReactElement,\n offsetParent: HTMLElement,\n grid: [number, number],\n handle: string,\n nodeRef?: ?React.ElementRef,\n};*/\n//\n// Define .\n//\n// is for advanced usage of . It maintains minimal internal state so it can\n// work well with libraries that require more control over the element.\n//\n\nlet DraggableCore$1 = class DraggableCore extends React.Component /*:: */{\n constructor() {\n super(...arguments);\n _defineProperty(this, \"dragging\", false);\n // Used while dragging to determine deltas.\n _defineProperty(this, \"lastX\", NaN);\n _defineProperty(this, \"lastY\", NaN);\n _defineProperty(this, \"touchIdentifier\", null);\n _defineProperty(this, \"mounted\", false);\n _defineProperty(this, \"handleDragStart\", e => {\n // Make it possible to attach event handlers on top of this one.\n this.props.onMouseDown(e);\n\n // Only accept left-clicks.\n if (!this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false;\n\n // Get nodes. Be sure to grab relative document (could be iframed)\n const thisNode = this.findDOMNode();\n if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {\n throw new Error(' not mounted on DragStart!');\n }\n const {\n ownerDocument\n } = thisNode;\n\n // Short circuit if handle or cancel prop was provided and selector doesn't match.\n if (this.props.disabled || !(e.target instanceof ownerDocument.defaultView.Node) || this.props.handle && !(0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.handle, thisNode) || this.props.cancel && (0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.cancel, thisNode)) {\n return;\n }\n\n // Prevent scrolling on mobile devices, like ipad/iphone.\n // Important that this is after handle/cancel.\n if (e.type === 'touchstart') e.preventDefault();\n\n // Set touch identifier in component state if this is a touch event. This allows us to\n // distinguish between individual touches on multitouch screens by identifying which\n // touchpoint was set to this element.\n const touchIdentifier = (0, _domFns.getTouchIdentifier)(e);\n this.touchIdentifier = touchIdentifier;\n\n // Get the current drag point from the event. This is used as the offset.\n const position = (0, _positionFns.getControlPosition)(e, touchIdentifier, this);\n if (position == null) return; // not possible but satisfies flow\n const {\n x,\n y\n } = position;\n\n // Create an event object with all the data parents need to make a decision here.\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent);\n\n // Call event handler. If it returns explicit false, cancel.\n (0, _log.default)('calling', this.props.onStart);\n const shouldUpdate = this.props.onStart(e, coreEvent);\n if (shouldUpdate === false || this.mounted === false) return;\n\n // Add a style to the body to disable user-select. This prevents text from\n // being selected all over the page.\n if (this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument);\n\n // Initiate dragging. Set the current x and y as offsets\n // so we know how much we've moved during the drag. This allows us\n // to drag elements around even if they have been moved, without issue.\n this.dragging = true;\n this.lastX = x;\n this.lastY = y;\n\n // Add events to the document directly so we catch when the user's mouse/touch moves outside of\n // this element. We use different events depending on whether or not we have detected that this\n // is a touch-capable device.\n (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, this.handleDrag);\n (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, this.handleDragStop);\n });\n _defineProperty(this, \"handleDrag\", e => {\n // Get the current drag point from the event. This is used as the offset.\n const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);\n if (position == null) return;\n let {\n x,\n y\n } = position;\n\n // Snap to grid if prop has been provided\n if (Array.isArray(this.props.grid)) {\n let deltaX = x - this.lastX,\n deltaY = y - this.lastY;\n [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);\n if (!deltaX && !deltaY) return; // skip useless drag\n x = this.lastX + deltaX, y = this.lastY + deltaY;\n }\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent);\n\n // Call event handler. If it returns explicit false, trigger end.\n const shouldUpdate = this.props.onDrag(e, coreEvent);\n if (shouldUpdate === false || this.mounted === false) {\n try {\n // $FlowIgnore\n this.handleDragStop(new MouseEvent('mouseup'));\n } catch (err) {\n // Old browsers\n const event = ((document.createEvent('MouseEvents') /*: any*/) /*: MouseTouchEvent*/);\n // I see why this insanity was deprecated\n // $FlowIgnore\n event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\n this.handleDragStop(event);\n }\n return;\n }\n this.lastX = x;\n this.lastY = y;\n });\n _defineProperty(this, \"handleDragStop\", e => {\n if (!this.dragging) return;\n const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);\n if (position == null) return;\n let {\n x,\n y\n } = position;\n\n // Snap to grid if prop has been provided\n if (Array.isArray(this.props.grid)) {\n let deltaX = x - this.lastX || 0;\n let deltaY = y - this.lastY || 0;\n [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);\n x = this.lastX + deltaX, y = this.lastY + deltaY;\n }\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n\n // Call event handler\n const shouldContinue = this.props.onStop(e, coreEvent);\n if (shouldContinue === false || this.mounted === false) return false;\n const thisNode = this.findDOMNode();\n if (thisNode) {\n // Remove user-select hack\n if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);\n }\n (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent);\n\n // Reset the el.\n this.dragging = false;\n this.lastX = NaN;\n this.lastY = NaN;\n if (thisNode) {\n // Remove event handlers\n (0, _log.default)('DraggableCore: Removing handlers');\n (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, this.handleDrag);\n (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, this.handleDragStop);\n }\n });\n _defineProperty(this, \"onMouseDown\", e => {\n dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse\n\n return this.handleDragStart(e);\n });\n _defineProperty(this, \"onMouseUp\", e => {\n dragEventFor = eventsFor.mouse;\n return this.handleDragStop(e);\n });\n // Same as onMouseDown (start drag), but now consider this a touch device.\n _defineProperty(this, \"onTouchStart\", e => {\n // We're on a touch device now, so change the event handlers\n dragEventFor = eventsFor.touch;\n return this.handleDragStart(e);\n });\n _defineProperty(this, \"onTouchEnd\", e => {\n // We're on a touch device now, so change the event handlers\n dragEventFor = eventsFor.touch;\n return this.handleDragStop(e);\n });\n }\n componentDidMount() {\n this.mounted = true;\n // Touch handlers must be added with {passive: false} to be cancelable.\n // https://developers.google.com/web/updates/2017/01/scrolling-intervention\n const thisNode = this.findDOMNode();\n if (thisNode) {\n (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {\n passive: false\n });\n }\n }\n componentWillUnmount() {\n this.mounted = false;\n // Remove any leftover event handlers. Remove both touch and mouse handlers in case\n // some browser quirk caused a touch event to fire during a mouse move, or vice versa.\n const thisNode = this.findDOMNode();\n if (thisNode) {\n const {\n ownerDocument\n } = thisNode;\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);\n (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {\n passive: false\n });\n if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);\n }\n }\n\n // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find\n // the underlying DOM node ourselves. See the README for more information.\n findDOMNode() /*: ?HTMLElement*/{\n var _this$props, _this$props2;\n return (_this$props = this.props) !== null && _this$props !== void 0 && _this$props.nodeRef ? (_this$props2 = this.props) === null || _this$props2 === void 0 || (_this$props2 = _this$props2.nodeRef) === null || _this$props2 === void 0 ? void 0 : _this$props2.current : _reactDom.default.findDOMNode(this);\n }\n render() /*: React.Element*/{\n // Reuse the child provided\n // This makes it flexible to use whatever element is wanted (div, ul, etc)\n return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {\n // Note: mouseMove handler is attached to document so it will still function\n // when the user drags quickly and leaves the bounds of the element.\n onMouseDown: this.onMouseDown,\n onMouseUp: this.onMouseUp,\n // onTouchStart is added on `componentDidMount` so they can be added with\n // {passive: false}, which allows it to cancel. See\n // https://developers.google.com/web/updates/2017/01/scrolling-intervention\n onTouchEnd: this.onTouchEnd\n });\n }\n};\nDraggableCore$2.default = DraggableCore$1;\n_defineProperty(DraggableCore$1, \"displayName\", 'DraggableCore');\n_defineProperty(DraggableCore$1, \"propTypes\", {\n /**\n * `allowAnyClick` allows dragging using any mouse button.\n * By default, we only accept the left button.\n *\n * Defaults to `false`.\n */\n allowAnyClick: _propTypes.default.bool,\n children: _propTypes.default.node.isRequired,\n /**\n * `disabled`, if true, stops the from dragging. All handlers,\n * with the exception of `onMouseDown`, will not fire.\n */\n disabled: _propTypes.default.bool,\n /**\n * By default, we add 'user-select:none' attributes to the document body\n * to prevent ugly text selection during drag. If this is causing problems\n * for your app, set this to `false`.\n */\n enableUserSelectHack: _propTypes.default.bool,\n /**\n * `offsetParent`, if set, uses the passed DOM node to compute drag offsets\n * instead of using the parent node.\n */\n offsetParent: function (props /*: DraggableCoreProps*/, propName /*: $Keys*/) {\n if (props[propName] && props[propName].nodeType !== 1) {\n throw new Error('Draggable\\'s offsetParent must be a DOM Node.');\n }\n },\n /**\n * `grid` specifies the x and y that dragging should snap to.\n */\n grid: _propTypes.default.arrayOf(_propTypes.default.number),\n /**\n * `handle` specifies a selector to be used as the handle that initiates drag.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return (\n * \n *
\n *
Click me to drag
\n *
This is some other content
\n *
\n *
\n * );\n * }\n * });\n * ```\n */\n handle: _propTypes.default.string,\n /**\n * `cancel` specifies a selector to be used to prevent drag initialization.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return(\n * \n *
\n *
You can't drag from here
\n *
Dragging here works fine
\n *
\n *
\n * );\n * }\n * });\n * ```\n */\n cancel: _propTypes.default.string,\n /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.\n * Unfortunately, in order for to work properly, we need raw access\n * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`\n * as in this example:\n *\n * function MyComponent() {\n * const nodeRef = React.useRef(null);\n * return (\n * \n *
Example Target
\n *
\n * );\n * }\n *\n * This can be used for arbitrarily nested components, so long as the ref ends up\n * pointing to the actual child DOM node and not a custom component.\n */\n nodeRef: _propTypes.default.object,\n /**\n * Called when dragging starts.\n * If this function returns the boolean false, dragging will be canceled.\n */\n onStart: _propTypes.default.func,\n /**\n * Called while dragging.\n * If this function returns the boolean false, dragging will be canceled.\n */\n onDrag: _propTypes.default.func,\n /**\n * Called when dragging stops.\n * If this function returns the boolean false, the drag will remain active.\n */\n onStop: _propTypes.default.func,\n /**\n * A workaround option which can be passed if onMouseDown needs to be accessed,\n * since it'll always be blocked (as there is internal use of onMouseDown)\n */\n onMouseDown: _propTypes.default.func,\n /**\n * `scale`, if set, applies scaling while dragging an element\n */\n scale: _propTypes.default.number,\n /**\n * These properties should be defined on the child, not here.\n */\n className: _shims.dontSetMe,\n style: _shims.dontSetMe,\n transform: _shims.dontSetMe\n});\n_defineProperty(DraggableCore$1, \"defaultProps\", {\n allowAnyClick: false,\n // by default only accept left click\n disabled: false,\n enableUserSelectHack: true,\n onStart: function () {},\n onDrag: function () {},\n onStop: function () {},\n onMouseDown: function () {},\n scale: 1\n});\n\n(function (exports) {\n\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\tObject.defineProperty(exports, \"DraggableCore\", {\n\t enumerable: true,\n\t get: function () {\n\t return _DraggableCore.default;\n\t }\n\t});\n\texports.default = void 0;\n\tvar React = _interopRequireWildcard(React__default);\n\tvar _propTypes = _interopRequireDefault(propTypesExports);\n\tvar _reactDom = _interopRequireDefault(require$$2__default);\n\tvar _clsx = _interopRequireDefault(require$$3);\n\tvar _domFns = domFns;\n\tvar _positionFns = positionFns;\n\tvar _shims = shims;\n\tvar _DraggableCore = _interopRequireDefault(DraggableCore$2);\n\tvar _log = _interopRequireDefault(log$1);\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\tfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\tfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\tfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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; }; return _extends.apply(this, arguments); }\n\tfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\tfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\n\tfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); } /*:: import type {ControlPosition, PositionOffsetControlPosition, DraggableCoreProps, DraggableCoreDefaultProps} from './DraggableCore';*/\n\t/*:: import type {Bounds, DraggableEventHandler} from './utils/types';*/\n\t/*:: import type {Element as ReactElement} from 'react';*/\n\t/*:: type DraggableState = {\n\t dragging: boolean,\n\t dragged: boolean,\n\t x: number, y: number,\n\t slackX: number, slackY: number,\n\t isElementSVG: boolean,\n\t prevPropsPosition: ?ControlPosition,\n\t};*/\n\t/*:: export type DraggableDefaultProps = {\n\t ...DraggableCoreDefaultProps,\n\t axis: 'both' | 'x' | 'y' | 'none',\n\t bounds: Bounds | string | false,\n\t defaultClassName: string,\n\t defaultClassNameDragging: string,\n\t defaultClassNameDragged: string,\n\t defaultPosition: ControlPosition,\n\t scale: number,\n\t};*/\n\t/*:: export type DraggableProps = {\n\t ...DraggableCoreProps,\n\t ...DraggableDefaultProps,\n\t positionOffset: PositionOffsetControlPosition,\n\t position: ControlPosition,\n\t};*/\n\t//\n\t// Define \n\t//\n\tclass Draggable extends React.Component /*:: */{\n\t // React 16.3+\n\t // Arity (props, state)\n\t static getDerivedStateFromProps(_ref /*:: */, _ref2 /*:: */) /*: ?Partial*/{\n\t let {\n\t position\n\t } /*: DraggableProps*/ = _ref /*: DraggableProps*/;\n\t let {\n\t prevPropsPosition\n\t } /*: DraggableState*/ = _ref2 /*: DraggableState*/;\n\t // Set x/y if a new position is provided in props that is different than the previous.\n\t if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {\n\t (0, _log.default)('Draggable: getDerivedStateFromProps %j', {\n\t position,\n\t prevPropsPosition\n\t });\n\t return {\n\t x: position.x,\n\t y: position.y,\n\t prevPropsPosition: {\n\t ...position\n\t }\n\t };\n\t }\n\t return null;\n\t }\n\t constructor(props /*: DraggableProps*/) {\n\t super(props);\n\t _defineProperty(this, \"onDragStart\", (e, coreData) => {\n\t (0, _log.default)('Draggable: onDragStart: %j', coreData);\n\n\t // Short-circuit if user's callback killed it.\n\t const shouldStart = this.props.onStart(e, (0, _positionFns.createDraggableData)(this, coreData));\n\t // Kills start event on core as well, so move handlers are never bound.\n\t if (shouldStart === false) return false;\n\t this.setState({\n\t dragging: true,\n\t dragged: true\n\t });\n\t });\n\t _defineProperty(this, \"onDrag\", (e, coreData) => {\n\t if (!this.state.dragging) return false;\n\t (0, _log.default)('Draggable: onDrag: %j', coreData);\n\t const uiData = (0, _positionFns.createDraggableData)(this, coreData);\n\t const newState = {\n\t x: uiData.x,\n\t y: uiData.y,\n\t slackX: 0,\n\t slackY: 0\n\t };\n\n\t // Keep within bounds.\n\t if (this.props.bounds) {\n\t // Save original x and y.\n\t const {\n\t x,\n\t y\n\t } = newState;\n\n\t // Add slack to the values used to calculate bound position. This will ensure that if\n\t // we start removing slack, the element won't react to it right away until it's been\n\t // completely removed.\n\t newState.x += this.state.slackX;\n\t newState.y += this.state.slackY;\n\n\t // Get bound position. This will ceil/floor the x and y within the boundaries.\n\t const [newStateX, newStateY] = (0, _positionFns.getBoundPosition)(this, newState.x, newState.y);\n\t newState.x = newStateX;\n\t newState.y = newStateY;\n\n\t // Recalculate slack by noting how much was shaved by the boundPosition handler.\n\t newState.slackX = this.state.slackX + (x - newState.x);\n\t newState.slackY = this.state.slackY + (y - newState.y);\n\n\t // Update the event we fire to reflect what really happened after bounds took effect.\n\t uiData.x = newState.x;\n\t uiData.y = newState.y;\n\t uiData.deltaX = newState.x - this.state.x;\n\t uiData.deltaY = newState.y - this.state.y;\n\t }\n\n\t // Short-circuit if user's callback killed it.\n\t const shouldUpdate = this.props.onDrag(e, uiData);\n\t if (shouldUpdate === false) return false;\n\t this.setState(newState);\n\t });\n\t _defineProperty(this, \"onDragStop\", (e, coreData) => {\n\t if (!this.state.dragging) return false;\n\n\t // Short-circuit if user's callback killed it.\n\t const shouldContinue = this.props.onStop(e, (0, _positionFns.createDraggableData)(this, coreData));\n\t if (shouldContinue === false) return false;\n\t (0, _log.default)('Draggable: onDragStop: %j', coreData);\n\t const newState /*: Partial*/ = {\n\t dragging: false,\n\t slackX: 0,\n\t slackY: 0\n\t };\n\n\t // If this is a controlled component, the result of this operation will be to\n\t // revert back to the old position. We expect a handler on `onDragStop`, at the least.\n\t const controlled = Boolean(this.props.position);\n\t if (controlled) {\n\t const {\n\t x,\n\t y\n\t } = this.props.position;\n\t newState.x = x;\n\t newState.y = y;\n\t }\n\t this.setState(newState);\n\t });\n\t this.state = {\n\t // Whether or not we are currently dragging.\n\t dragging: false,\n\t // Whether or not we have been dragged before.\n\t dragged: false,\n\t // Current transform x and y.\n\t x: props.position ? props.position.x : props.defaultPosition.x,\n\t y: props.position ? props.position.y : props.defaultPosition.y,\n\t prevPropsPosition: {\n\t ...props.position\n\t },\n\t // Used for compensating for out-of-bounds drags\n\t slackX: 0,\n\t slackY: 0,\n\t // Can only determine if SVG after mounting\n\t isElementSVG: false\n\t };\n\t if (props.position && !(props.onDrag || props.onStop)) {\n\t // eslint-disable-next-line no-console\n\t console.warn('A `position` was applied to this , without drag handlers. This will make this ' + 'component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the ' + '`position` of this element.');\n\t }\n\t }\n\t componentDidMount() {\n\t // Check to see if the element passed is an instanceof SVGElement\n\t if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {\n\t this.setState({\n\t isElementSVG: true\n\t });\n\t }\n\t }\n\t componentWillUnmount() {\n\t this.setState({\n\t dragging: false\n\t }); // prevents invariant if unmounted while dragging\n\t }\n\n\t // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find\n\t // the underlying DOM node ourselves. See the README for more information.\n\t findDOMNode() /*: ?HTMLElement*/{\n\t var _this$props$nodeRef$c, _this$props;\n\t return (_this$props$nodeRef$c = (_this$props = this.props) === null || _this$props === void 0 || (_this$props = _this$props.nodeRef) === null || _this$props === void 0 ? void 0 : _this$props.current) !== null && _this$props$nodeRef$c !== void 0 ? _this$props$nodeRef$c : _reactDom.default.findDOMNode(this);\n\t }\n\t render() /*: ReactElement*/{\n\t const {\n\t axis,\n\t bounds,\n\t children,\n\t defaultPosition,\n\t defaultClassName,\n\t defaultClassNameDragging,\n\t defaultClassNameDragged,\n\t position,\n\t positionOffset,\n\t scale,\n\t ...draggableCoreProps\n\t } = this.props;\n\t let style = {};\n\t let svgTransform = null;\n\n\t // If this is controlled, we don't want to move it - unless it's dragging.\n\t const controlled = Boolean(position);\n\t const draggable = !controlled || this.state.dragging;\n\t const validPosition = position || defaultPosition;\n\t const transformOpts = {\n\t // Set left if horizontal drag is enabled\n\t x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,\n\t // Set top if vertical drag is enabled\n\t y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y\n\t };\n\n\t // If this element was SVG, we use the `transform` attribute.\n\t if (this.state.isElementSVG) {\n\t svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);\n\t } else {\n\t // Add a CSS transform to move the element around. This allows us to move the element around\n\t // without worrying about whether or not it is relatively or absolutely positioned.\n\t // If the item you are dragging already has a transform set, wrap it in a so \n\t // has a clean slate.\n\t style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);\n\t }\n\n\t // Mark with class while dragging\n\t const className = (0, _clsx.default)(children.props.className || '', defaultClassName, {\n\t [defaultClassNameDragging]: this.state.dragging,\n\t [defaultClassNameDragged]: this.state.dragged\n\t });\n\n\t // Reuse the child provided\n\t // This makes it flexible to use whatever element is wanted (div, ul, etc)\n\t return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {\n\t onStart: this.onDragStart,\n\t onDrag: this.onDrag,\n\t onStop: this.onDragStop\n\t }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {\n\t className: className,\n\t style: {\n\t ...children.props.style,\n\t ...style\n\t },\n\t transform: svgTransform\n\t }));\n\t }\n\t}\n\texports.default = Draggable;\n\t_defineProperty(Draggable, \"displayName\", 'Draggable');\n\t_defineProperty(Draggable, \"propTypes\", {\n\t // Accepts all props accepts.\n\t ..._DraggableCore.default.propTypes,\n\t /**\n\t * `axis` determines which axis the draggable can move.\n\t *\n\t * Note that all callbacks will still return data as normal. This only\n\t * controls flushing to the DOM.\n\t *\n\t * 'both' allows movement horizontally and vertically.\n\t * 'x' limits movement to horizontal axis.\n\t * 'y' limits movement to vertical axis.\n\t * 'none' limits all movement.\n\t *\n\t * Defaults to 'both'.\n\t */\n\t axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),\n\t /**\n\t * `bounds` determines the range of movement available to the element.\n\t * Available values are:\n\t *\n\t * 'parent' restricts movement within the Draggable's parent node.\n\t *\n\t * Alternatively, pass an object with the following properties, all of which are optional:\n\t *\n\t * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}\n\t *\n\t * All values are in px.\n\t *\n\t * Example:\n\t *\n\t * ```jsx\n\t * let App = React.createClass({\n\t * render: function () {\n\t * return (\n\t * \n\t *
Content
\n\t *
\n\t * );\n\t * }\n\t * });\n\t * ```\n\t */\n\t bounds: _propTypes.default.oneOfType([_propTypes.default.shape({\n\t left: _propTypes.default.number,\n\t right: _propTypes.default.number,\n\t top: _propTypes.default.number,\n\t bottom: _propTypes.default.number\n\t }), _propTypes.default.string, _propTypes.default.oneOf([false])]),\n\t defaultClassName: _propTypes.default.string,\n\t defaultClassNameDragging: _propTypes.default.string,\n\t defaultClassNameDragged: _propTypes.default.string,\n\t /**\n\t * `defaultPosition` specifies the x and y that the dragged item should start at\n\t *\n\t * Example:\n\t *\n\t * ```jsx\n\t * let App = React.createClass({\n\t * render: function () {\n\t * return (\n\t * \n\t *
I start with transformX: 25px and transformY: 25px;
\n\t *
\n\t * );\n\t * }\n\t * });\n\t * ```\n\t */\n\t defaultPosition: _propTypes.default.shape({\n\t x: _propTypes.default.number,\n\t y: _propTypes.default.number\n\t }),\n\t positionOffset: _propTypes.default.shape({\n\t x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n\t y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])\n\t }),\n\t /**\n\t * `position`, if present, defines the current position of the element.\n\t *\n\t * This is similar to how form elements in React work - if no `position` is supplied, the component\n\t * is uncontrolled.\n\t *\n\t * Example:\n\t *\n\t * ```jsx\n\t * let App = React.createClass({\n\t * render: function () {\n\t * return (\n\t * \n\t *
I start with transformX: 25px and transformY: 25px;
\n\t *
\n\t * );\n\t * }\n\t * });\n\t * ```\n\t */\n\t position: _propTypes.default.shape({\n\t x: _propTypes.default.number,\n\t y: _propTypes.default.number\n\t }),\n\t /**\n\t * These properties should be defined on the child, not here.\n\t */\n\t className: _shims.dontSetMe,\n\t style: _shims.dontSetMe,\n\t transform: _shims.dontSetMe\n\t});\n\t_defineProperty(Draggable, \"defaultProps\", {\n\t ..._DraggableCore.default.defaultProps,\n\t axis: 'both',\n\t bounds: false,\n\t defaultClassName: 'react-draggable',\n\t defaultClassNameDragging: 'react-draggable-dragging',\n\t defaultClassNameDragged: 'react-draggable-dragged',\n\t defaultPosition: {\n\t x: 0,\n\t y: 0\n\t },\n\t scale: 1\n\t}); \n} (Draggable$1));\n\nconst {\n default: Draggable,\n DraggableCore\n} = Draggable$1;\n\n// Previous versions of this lib exported as the root export. As to no-// them, or TypeScript, we export *both* as the root and as 'default'.\n// See https://github.com/mzabriskie/react-draggable/pull/254\n// and https://github.com/mzabriskie/react-draggable/issues/266\ncjs.exports = Draggable;\ncjs.exports.default = Draggable;\nvar DraggableCore_1 = cjs.exports.DraggableCore = DraggableCore;\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 */\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\nfunction __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\nvar __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\nfunction __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\nfunction __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}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nvar doc = (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) === 'object' ? document : null;\nvar isBrowser = typeof window !== 'undefined' && typeof navigator !== 'undefined' && typeof document !== 'undefined';\nvar isUndef = function isUndef(v) {\n return typeof v === 'undefined';\n};\nvar isFun = function isFun(v) {\n return typeof v === 'function';\n};\nvar isNum = function isNum(v) {\n return typeof v === 'number';\n};\n/**\r\n * @description Will return renderer result if presented, div element otherwise.\r\n * If renderer is presented it'll receive `elementRef` function which should be used as HTMLElement's ref.\r\n *\r\n * @param props {ElementPropsWithElementRefAndRenderer}\r\n * @param elementRef {ElementRef}\r\n */\n\nvar renderDivWithRenderer = function renderDivWithRenderer(props, elementRef) {\n if (isFun(props.renderer)) {\n props.elementRef = elementRef;\n var renderer = props.renderer;\n delete props.renderer;\n return renderer(props);\n }\n\n delete props.elementRef;\n return React$1.createElement(\"div\", __assign({}, props, {\n ref: elementRef\n }));\n};\n\nvar getInnerSize = function getInnerSize(el, dimension, padding1, padding2) {\n var styles = getComputedStyle(el);\n\n if (styles.boxSizing === 'border-box') {\n return Math.max(0, (Number.parseFloat(styles[dimension]) || 0) - (Number.parseFloat(styles[padding1]) || 0) - (Number.parseFloat(styles[padding2]) || 0));\n }\n\n return Number.parseFloat(styles[dimension]) || 0;\n};\n/**\r\n * @description Return element's height without padding\r\n */\n\n\nvar getInnerHeight = function getInnerHeight(el) {\n return getInnerSize(el, 'height', 'paddingTop', 'paddingBottom');\n};\n/**\r\n * @description Return element's width without padding\r\n */\n\nvar getInnerWidth = function getInnerWidth(el) {\n return getInnerSize(el, 'width', 'paddingLeft', 'paddingRight');\n};\n/**\r\n * @description Return unique UUID v4\r\n */\n\nvar uuid = function uuid() {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n var uuid = '';\n\n for (var i = 0; i < 32; i++) {\n switch (i) {\n case 8:\n case 20:\n {\n uuid += \"-\".concat(Math.trunc(Math.random() * 16).toString(16));\n break;\n }\n\n case 12:\n {\n uuid += '-4';\n break;\n }\n\n case 16:\n {\n uuid += \"-\".concat((Math.random() * 16 | 0 & 3 | 8).toString(16));\n break;\n }\n\n default:\n {\n uuid += Math.trunc(Math.random() * 16).toString(16);\n }\n }\n }\n\n return uuid;\n};\n/**\r\n * @description Calculate thumb size for given viewport and track parameters\r\n *\r\n * @param {number} contentSize - Scrollable content size\r\n * @param {number} viewportSize - Viewport size\r\n * @param {number} trackSize - Track size thumb can move\r\n * @param {number} minimalSize - Minimal thumb's size\r\n * @param {number} maximalSize - Maximal thumb's size\r\n */\n\nvar calcThumbSize = function calcThumbSize(contentSize, viewportSize, trackSize, minimalSize, maximalSize) {\n if (viewportSize >= contentSize) {\n return 0;\n }\n\n var thumbSize = viewportSize / contentSize * trackSize;\n\n if (isNum(maximalSize)) {\n thumbSize = Math.min(maximalSize, thumbSize);\n }\n\n if (isNum(minimalSize)) {\n thumbSize = Math.max(minimalSize, thumbSize);\n }\n\n return thumbSize;\n};\n/**\r\n * @description Calculate thumb offset for given viewport, track and thumb parameters\r\n *\r\n * @param {number} contentSize - Scrollable content size\r\n * @param {number} viewportSize - Viewport size\r\n * @param {number} trackSize - Track size thumb can move\r\n * @param {number} thumbSize - Thumb size\r\n * @param {number} scroll - Scroll value to represent\r\n */\n\nvar calcThumbOffset = function calcThumbOffset(contentSize, viewportSize, trackSize, thumbSize, scroll) {\n if (!scroll || !thumbSize || viewportSize >= contentSize) {\n return 0;\n }\n\n return (trackSize - thumbSize) * scroll / (contentSize - viewportSize);\n};\n/**\r\n * @description Calculate scroll for given viewport, track and thumb parameters\r\n *\r\n * @param {number} contentSize - Scrollable content size\r\n * @param {number} viewportSize - Viewport size\r\n * @param {number} trackSize - Track size thumb can move\r\n * @param {number} thumbSize - Thumb size\r\n * @param {number} thumbOffset - Thumb's offset representing the scroll\r\n */\n\nvar calcScrollForThumbOffset = function calcScrollForThumbOffset(contentSize, viewportSize, trackSize, thumbSize, thumbOffset) {\n if (!thumbOffset || !thumbSize || viewportSize >= contentSize) {\n return 0;\n }\n\n return thumbOffset * (contentSize - viewportSize) / (trackSize - thumbSize);\n};\n/**\r\n * @description Returns scrollbar width specific for current environment. Can return undefined if DOM is not ready yet.\r\n */\n\nvar getScrollbarWidth = function getScrollbarWidth(force) {\n if (force === void 0) {\n force = false;\n }\n\n if (!doc) {\n getScrollbarWidth._cache = 0;\n return getScrollbarWidth._cache;\n }\n\n if (!force && !isUndef(getScrollbarWidth._cache)) {\n return getScrollbarWidth._cache;\n }\n\n var el = doc.createElement('div');\n el.setAttribute('style', 'position:absolute;width:100px;height:100px;top:-999px;left:-999px;overflow:scroll;');\n doc.body.append(el);\n /* istanbul ignore next */\n\n if (el.clientWidth === 0) {\n // Do not even cache this value because there is no calculations. Issue https://github.com/xobotyi/react-scrollbars-custom/issues/123\n el.remove();\n return;\n }\n\n getScrollbarWidth._cache = 100 - el.clientWidth;\n el.remove();\n return getScrollbarWidth._cache;\n};\n/**\r\n * @description Detect need of horizontal scroll reverse while RTL.\r\n */\n\nvar shouldReverseRtlScroll = function shouldReverseRtlScroll(force) {\n if (force === void 0) {\n force = false;\n }\n\n if (!force && !isUndef(shouldReverseRtlScroll._cache)) {\n return shouldReverseRtlScroll._cache;\n }\n\n if (!doc) {\n shouldReverseRtlScroll._cache = false;\n return shouldReverseRtlScroll._cache;\n }\n\n var el = doc.createElement('div');\n var child = doc.createElement('div');\n el.append(child);\n el.setAttribute('style', 'position:absolute;width:100px;height:100px;top:-999px;left:-999px;overflow:scroll;direction:rtl');\n child.setAttribute('style', 'width:1000px;height:1000px');\n doc.body.append(el);\n el.scrollLeft = -50;\n shouldReverseRtlScroll._cache = el.scrollLeft === -50;\n el.remove();\n return shouldReverseRtlScroll._cache;\n};\n\nvar Emittr =\n/** @class */\nfunction () {\n function Emittr(maxHandlers) {\n if (maxHandlers === void 0) {\n maxHandlers = 10;\n }\n\n this.setMaxHandlers(maxHandlers);\n this._handlers = Object.create(null);\n }\n\n Emittr._callEventHandlers = function (emitter, handlers, args) {\n if (!handlers.length) {\n return;\n }\n\n if (handlers.length === 1) {\n Reflect.apply(handlers[0], emitter, args);\n return;\n }\n\n handlers = __spreadArray([], handlers, true);\n var idx;\n\n for (idx = 0; idx < handlers.length; idx++) {\n Reflect.apply(handlers[idx], emitter, args);\n }\n };\n\n Emittr.prototype.setMaxHandlers = function (count) {\n if (!isNum(count) || count <= 0) {\n throw new TypeError(\"Expected maxHandlers to be a positive number, got '\".concat(count, \"' of type \").concat(_typeof(count)));\n }\n\n this._maxHandlers = count;\n return this;\n };\n\n Emittr.prototype.getMaxHandlers = function () {\n return this._maxHandlers;\n };\n\n Emittr.prototype.emit = function (name) {\n var args = [];\n\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n\n if (_typeof(this._handlers[name]) !== 'object' || !Array.isArray(this._handlers[name])) {\n return false;\n }\n\n Emittr._callEventHandlers(this, this._handlers[name], args);\n\n return true;\n };\n\n Emittr.prototype.on = function (name, handler) {\n Emittr._addHandler(this, name, handler);\n\n return this;\n };\n\n Emittr.prototype.prependOn = function (name, handler) {\n Emittr._addHandler(this, name, handler, true);\n\n return this;\n };\n\n Emittr.prototype.once = function (name, handler) {\n if (!isFun(handler)) {\n throw new TypeError(\"Expected event handler to be a function, got \".concat(_typeof(handler)));\n }\n\n Emittr._addHandler(this, name, this._wrapOnceHandler(name, handler));\n\n return this;\n };\n\n Emittr.prototype.prependOnce = function (name, handler) {\n if (!isFun(handler)) {\n throw new TypeError(\"Expected event handler to be a function, got \".concat(_typeof(handler)));\n }\n\n Emittr._addHandler(this, name, this._wrapOnceHandler(name, handler), true);\n\n return this;\n };\n\n Emittr.prototype.off = function (name, handler) {\n Emittr._removeHandler(this, name, handler);\n\n return this;\n };\n\n Emittr.prototype.removeAllHandlers = function () {\n var handlers = this._handlers;\n this._handlers = Object.create(null);\n var removeHandlers = handlers.removeHandler;\n delete handlers.removeHandler;\n var idx;\n var eventName; // eslint-disable-next-line guard-for-in,no-restricted-syntax\n\n for (eventName in handlers) {\n for (idx = handlers[eventName].length - 1; idx >= 0; idx--) {\n Emittr._callEventHandlers(this, removeHandlers, [eventName, handlers[eventName][idx].handler || handlers[eventName][idx]]);\n }\n }\n\n return this;\n };\n\n Emittr.prototype._wrapOnceHandler = function (name, handler) {\n var onceState = {\n fired: false,\n handler: handler,\n wrappedHandler: undefined,\n emitter: this,\n event: name\n };\n\n var wrappedHandler = Emittr._onceWrapper.bind(onceState);\n\n onceState.wrappedHandler = wrappedHandler;\n wrappedHandler.handler = handler;\n wrappedHandler.event = name;\n return wrappedHandler;\n };\n\n Emittr._addHandler = function (emitter, name, handler, prepend) {\n if (prepend === void 0) {\n prepend = false;\n }\n\n if (!isFun(handler)) {\n throw new TypeError(\"Expected event handler to be a function, got \".concat(_typeof(handler)));\n }\n\n emitter._handlers[name] = emitter._handlers[name] || [];\n emitter.emit('addHandler', name, handler);\n\n if (prepend) {\n emitter._handlers[name].unshift(handler);\n } else {\n emitter._handlers[name].push(handler);\n }\n\n return emitter;\n };\n\n Emittr._onceWrapper = function _onceWrapper() {\n var args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n\n if (!this.fired) {\n this.fired = true;\n this.emitter.off(this.event, this.wrappedHandler);\n Reflect.apply(this.handler, this.emitter, args);\n }\n };\n\n Emittr._removeHandler = function (emitter, name, handler) {\n if (!isFun(handler)) {\n throw new TypeError(\"Expected event handler to be a function, got \".concat(_typeof(handler)));\n }\n\n if (isUndef(emitter._handlers[name]) || !emitter._handlers[name].length) {\n return emitter;\n }\n\n var idx = -1;\n\n if (emitter._handlers[name].length === 1) {\n if (emitter._handlers[name][0] === handler || emitter._handlers[name][0].handler === handler) {\n idx = 0;\n handler = emitter._handlers[name][0].handler || emitter._handlers[name][0];\n }\n } else {\n for (idx = emitter._handlers[name].length - 1; idx >= 0; idx--) {\n if (emitter._handlers[name][idx] === handler || emitter._handlers[name][idx].handler === handler) {\n handler = emitter._handlers[name][idx].handler || emitter._handlers[name][idx];\n break;\n }\n }\n }\n\n if (idx === -1) {\n return emitter;\n }\n\n if (idx === 0) {\n emitter._handlers[name].shift();\n } else {\n emitter._handlers[name].splice(idx, 1);\n }\n\n emitter.emit('removeHandler', name, handler);\n return emitter;\n };\n\n return Emittr;\n}();\n\nvar RAFLoop =\n/** @class */\nfunction () {\n function RAFLoop() {\n var _this = this;\n /**\r\n * @description List of targets to update\r\n */\n\n\n this.targets = [];\n /**\r\n * @description ID of requested animation frame. Valuable only if loop is active and has items to iterate.\r\n */\n\n this.animationFrameID = 0;\n /**\r\n * @description Loop's state.\r\n */\n\n this._isActive = false;\n /**\r\n * @description Start the loop if it wasn't yet.\r\n */\n\n this.start = function () {\n if (!_this._isActive && _this.targets.length) {\n _this._isActive = true;\n if (_this.animationFrameID) cancelAnimationFrame(_this.animationFrameID);\n _this.animationFrameID = requestAnimationFrame(_this.rafCallback);\n }\n\n return _this;\n };\n /**\r\n * @description Stop the loop if is was active.\r\n */\n\n\n this.stop = function () {\n if (_this._isActive) {\n _this._isActive = false;\n if (_this.animationFrameID) cancelAnimationFrame(_this.animationFrameID);\n _this.animationFrameID = 0;\n }\n\n return _this;\n };\n /**\r\n * @description Add target to the iteration list if it's not there.\r\n */\n\n\n this.addTarget = function (target, silent) {\n if (silent === void 0) {\n silent = false;\n }\n\n if (!_this.targets.includes(target)) {\n _this.targets.push(target);\n\n if (_this.targets.length === 1 && !silent) _this.start();\n }\n\n return _this;\n };\n /**\r\n * @description Remove target from iteration list if it was there.\r\n */\n\n\n this.removeTarget = function (target) {\n var idx = _this.targets.indexOf(target);\n\n if (idx !== -1) {\n _this.targets.splice(idx, 1);\n\n if (_this.targets.length === 0) _this.stop();\n }\n\n return _this;\n };\n /**\r\n * @description Callback that called each animation frame.\r\n */\n\n\n this.rafCallback = function () {\n if (!_this._isActive) {\n return 0;\n }\n\n for (var i = 0; i < _this.targets.length; i++) {\n if (!_this.targets[i]._unmounted) _this.targets[i].update();\n }\n\n _this.animationFrameID = requestAnimationFrame(_this.rafCallback);\n return _this.animationFrameID;\n };\n }\n\n Object.defineProperty(RAFLoop.prototype, \"isActive\", {\n /**\r\n * @description Loop's state.\r\n */\n get: function get() {\n return this._isActive;\n },\n enumerable: false,\n configurable: true\n });\n return RAFLoop;\n}();\nvar Loop = new RAFLoop();\n\nvar AXIS_DIRECTION;\n\n(function (AXIS_DIRECTION) {\n AXIS_DIRECTION[\"X\"] = \"x\";\n AXIS_DIRECTION[\"Y\"] = \"y\";\n})(AXIS_DIRECTION || (AXIS_DIRECTION = {}));\n\nvar TRACK_CLICK_BEHAVIOR;\n\n(function (TRACK_CLICK_BEHAVIOR) {\n TRACK_CLICK_BEHAVIOR[\"JUMP\"] = \"jump\";\n TRACK_CLICK_BEHAVIOR[\"STEP\"] = \"step\";\n})(TRACK_CLICK_BEHAVIOR || (TRACK_CLICK_BEHAVIOR = {}));\n\nvar ScrollbarThumb =\n/** @class */\nfunction (_super) {\n __extends(ScrollbarThumb, _super);\n\n function ScrollbarThumb() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n\n _this.element = null;\n _this.initialOffsetX = 0;\n _this.initialOffsetY = 0;\n _this.elementRefHack = React$1.createRef();\n _this.lastDragData = {\n x: 0,\n y: 0,\n deltaX: 0,\n deltaY: 0,\n lastX: 0,\n lastY: 0\n };\n\n _this.handleOnDragStart = function (ev, data) {\n if (!_this.element) {\n _this.handleOnDragStop(ev, data);\n\n return;\n }\n\n if (isBrowser) {\n _this.prevUserSelect = document.body.style.userSelect;\n document.body.style.userSelect = 'none';\n _this.prevOnSelectStart = document.onselectstart;\n document.addEventListener('selectstart', ScrollbarThumb.selectStartReplacer);\n }\n\n if (_this.props.onDragStart) {\n _this.props.onDragStart(_this.lastDragData = {\n x: data.x - _this.initialOffsetX,\n y: data.y - _this.initialOffsetY,\n lastX: data.lastX - _this.initialOffsetX,\n lastY: data.lastY - _this.initialOffsetY,\n deltaX: data.deltaX,\n deltaY: data.deltaY\n });\n }\n\n _this.element.classList.add('dragging');\n };\n\n _this.handleOnDrag = function (ev, data) {\n if (!_this.element) {\n _this.handleOnDragStop(ev, data);\n\n return;\n }\n\n if (_this.props.onDrag) {\n _this.props.onDrag(_this.lastDragData = {\n x: data.x - _this.initialOffsetX,\n y: data.y - _this.initialOffsetY,\n lastX: data.lastX - _this.initialOffsetX,\n lastY: data.lastY - _this.initialOffsetY,\n deltaX: data.deltaX,\n deltaY: data.deltaY\n });\n }\n };\n\n _this.handleOnDragStop = function (ev, data) {\n var resultData = data ? {\n x: data.x - _this.initialOffsetX,\n y: data.y - _this.initialOffsetY,\n lastX: data.lastX - _this.initialOffsetX,\n lastY: data.lastY - _this.initialOffsetY,\n deltaX: data.deltaX,\n deltaY: data.deltaY\n } : _this.lastDragData;\n if (_this.props.onDragEnd) _this.props.onDragEnd(resultData);\n if (_this.element) _this.element.classList.remove('dragging');\n\n if (isBrowser) {\n document.body.style.userSelect = _this.prevUserSelect;\n\n if (_this.prevOnSelectStart) {\n document.addEventListener('selectstart', _this.prevOnSelectStart);\n }\n\n _this.prevOnSelectStart = null;\n }\n\n _this.initialOffsetX = 0;\n _this.initialOffsetY = 0;\n _this.lastDragData = {\n x: 0,\n y: 0,\n deltaX: 0,\n deltaY: 0,\n lastX: 0,\n lastY: 0\n };\n };\n\n _this.handleOnMouseDown = function (ev) {\n if (!_this.element) {\n return;\n }\n\n ev.preventDefault();\n ev.stopPropagation();\n\n if (!isUndef(ev.offsetX)) {\n /* istanbul ignore next */\n _this.initialOffsetX = ev.offsetX;\n /* istanbul ignore next */\n\n _this.initialOffsetY = ev.offsetY;\n } else {\n var rect = _this.element.getBoundingClientRect();\n\n _this.initialOffsetX = (ev.clientX || ev.touches[0].clientX) - rect.left;\n _this.initialOffsetY = (ev.clientY || ev.touches[0].clientY) - rect.top;\n }\n };\n\n _this.elementRef = function (ref) {\n if (isFun(_this.props.elementRef)) _this.props.elementRef(ref);\n _this.element = ref; // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n\n _this.elementRefHack.current = ref;\n };\n\n return _this;\n }\n\n ScrollbarThumb.prototype.componentDidMount = function () {\n if (!this.element) {\n this.setState(function () {\n throw new Error(\" Element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n }\n };\n\n ScrollbarThumb.prototype.componentWillUnmount = function () {\n this.handleOnDragStop();\n this.elementRef(null);\n };\n\n ScrollbarThumb.prototype.render = function () {\n var _a = this.props;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.elementRef;\n var axis = _a.axis;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onDrag;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onDragEnd;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onDragStart;\n var props = __rest(_a, [\"elementRef\", \"axis\", \"onDrag\", \"onDragEnd\", \"onDragStart\"]);\n\n props.className = cnb('ScrollbarsCustom-Thumb', axis === AXIS_DIRECTION.X ? 'ScrollbarsCustom-ThumbX' : 'ScrollbarsCustom-ThumbY', props.className);\n\n if (props.renderer) {\n props.axis = axis;\n }\n\n return React$1.createElement(DraggableCore_1, {\n allowAnyClick: false,\n enableUserSelectHack: false,\n onMouseDown: this.handleOnMouseDown,\n onDrag: this.handleOnDrag,\n onStart: this.handleOnDragStart,\n onStop: this.handleOnDragStop,\n nodeRef: this.elementRefHack\n }, renderDivWithRenderer(props, this.elementRef));\n };\n\n ScrollbarThumb.selectStartReplacer = function () {\n return false;\n };\n\n return ScrollbarThumb;\n}(React$1.Component);\n\nvar ScrollbarTrack =\n/** @class */\nfunction (_super) {\n __extends(ScrollbarTrack, _super);\n\n function ScrollbarTrack() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n\n _this.element = null;\n\n _this.elementRef = function (ref) {\n if (isFun(_this.props.elementRef)) _this.props.elementRef(ref);\n _this.element = ref;\n };\n\n _this.handleClick = function (ev) {\n if (!ev || !_this.element || ev.button !== 0) {\n return;\n }\n\n if (isFun(_this.props.onClick) && ev.target === _this.element) {\n if (!isUndef(ev.offsetX)) {\n _this.props.onClick(ev, {\n axis: _this.props.axis,\n offset: _this.props.axis === AXIS_DIRECTION.X ? ev.offsetX : ev.offsetY\n });\n } else {\n // support for old browsers\n\n /* istanbul ignore next */\n var rect = _this.element.getBoundingClientRect();\n /* istanbul ignore next */\n\n\n _this.props.onClick(ev, {\n axis: _this.props.axis,\n offset: _this.props.axis === AXIS_DIRECTION.X ? (ev.clientX || ev.touches[0].clientX) - rect.left : (ev.clientY || ev.touches[0].clientY) - rect.top\n });\n }\n }\n\n return true;\n };\n\n return _this;\n }\n\n ScrollbarTrack.prototype.componentDidMount = function () {\n if (!this.element) {\n this.setState(function () {\n throw new Error(\"Element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n return;\n }\n\n this.element.addEventListener('click', this.handleClick);\n };\n\n ScrollbarTrack.prototype.componentWillUnmount = function () {\n if (this.element) {\n this.element.removeEventListener('click', this.handleClick);\n this.element = null;\n this.elementRef(null);\n }\n };\n\n ScrollbarTrack.prototype.render = function () {\n var _a = this.props;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.elementRef;\n var axis = _a.axis;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onClick;\n var props = __rest(_a, [\"elementRef\", \"axis\", \"onClick\"]);\n\n props.className = cnb('ScrollbarsCustom-Track', axis === AXIS_DIRECTION.X ? 'ScrollbarsCustom-TrackX' : 'ScrollbarsCustom-TrackY', props.className);\n\n if (props.renderer) {\n props.axis = axis;\n }\n\n return renderDivWithRenderer(props, this.elementRef);\n };\n\n return ScrollbarTrack;\n}(React$1.Component);\n\nvar style$1 = {\n holder: {\n position: 'relative',\n width: '100%',\n height: '100%'\n },\n wrapper: {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0\n },\n content: {\n boxSizing: 'border-box'\n },\n track: {\n common: {\n position: 'absolute',\n overflow: 'hidden',\n borderRadius: 4,\n background: 'rgba(0,0,0,.1)',\n userSelect: 'none'\n },\n x: {\n height: 10,\n width: 'calc(100% - 20px)',\n bottom: 0,\n left: 10\n },\n y: {\n width: 10,\n height: 'calc(100% - 20px)',\n top: 10\n }\n },\n thumb: {\n common: {\n cursor: 'pointer',\n borderRadius: 4,\n background: 'rgba(0,0,0,.4)'\n },\n x: {\n height: '100%',\n width: 0\n },\n y: {\n width: '100%',\n height: 0\n }\n }\n};\n\nvar pageZoomLevel = isBrowser ? i() : 1;\n\nif (isBrowser) {\n window.addEventListener('resize', function () {\n pageZoomLevel = i();\n }, {\n passive: true\n });\n}\n\nvar ScrollbarContext = React$1.createContext({\n parentScrollbar: null\n});\n\nvar Scrollbar =\n/** @class */\nfunction (_super) {\n __extends(Scrollbar, _super);\n\n function Scrollbar(props) {\n var _this = _super.call(this, props) || this;\n /**\r\n * @description Get current scroll-related values.
\r\n * If force if truthy - will recalculate them instead of returning cached values.\r\n *\r\n * @return ScrollState\r\n */\n\n\n _this.getScrollState = function (force) {\n if (force === void 0) {\n force = false;\n }\n\n if (_this.scrollValues && !force) {\n return __assign({}, _this.scrollValues);\n }\n\n var scrollState = {\n clientHeight: 0,\n clientWidth: 0,\n contentScrollHeight: 0,\n contentScrollWidth: 0,\n scrollHeight: 0,\n scrollWidth: 0,\n scrollTop: 0,\n scrollLeft: 0,\n scrollYBlocked: false,\n scrollXBlocked: false,\n scrollYPossible: false,\n scrollXPossible: false,\n trackYVisible: false,\n trackXVisible: false,\n zoomLevel: pageZoomLevel * 1,\n isRTL: undefined\n };\n var props = _this.props;\n scrollState.isRTL = _this.state.isRTL;\n scrollState.scrollYBlocked = props.noScroll || props.noScrollY;\n scrollState.scrollXBlocked = props.noScroll || props.noScrollX;\n\n if (_this.scrollerElement) {\n scrollState.clientHeight = _this.scrollerElement.clientHeight;\n scrollState.clientWidth = _this.scrollerElement.clientWidth;\n scrollState.scrollHeight = _this.scrollerElement.scrollHeight;\n scrollState.scrollWidth = _this.scrollerElement.scrollWidth;\n scrollState.scrollTop = _this.scrollerElement.scrollTop;\n scrollState.scrollLeft = _this.scrollerElement.scrollLeft;\n scrollState.scrollYPossible = !scrollState.scrollYBlocked && scrollState.scrollHeight > scrollState.clientHeight;\n scrollState.scrollXPossible = !scrollState.scrollXBlocked && scrollState.scrollWidth > scrollState.clientWidth;\n scrollState.trackYVisible = scrollState.scrollYPossible || props.permanentTracks || props.permanentTrackY;\n scrollState.trackXVisible = scrollState.scrollXPossible || props.permanentTracks || props.permanentTrackX;\n }\n\n if (_this.contentElement) {\n scrollState.contentScrollHeight = _this.contentElement.scrollHeight;\n scrollState.contentScrollWidth = _this.contentElement.scrollWidth;\n }\n\n return scrollState;\n };\n /**\r\n * @description Scroll to top border\r\n */\n\n\n _this.scrollToTop = function () {\n if (_this.scrollerElement) {\n _this.scrollerElement.scrollTop = 0;\n }\n\n return _this;\n };\n /**\r\n * @description Scroll to left border\r\n */\n\n\n _this.scrollToLeft = function () {\n if (_this.scrollerElement) {\n _this.scrollerElement.scrollLeft = 0;\n }\n\n return _this;\n };\n /**\r\n * @description Scroll to bottom border\r\n */\n\n\n _this.scrollToBottom = function () {\n if (_this.scrollerElement) {\n _this.scrollerElement.scrollTop = _this.scrollerElement.scrollHeight - _this.scrollerElement.clientHeight;\n }\n\n return _this;\n };\n /**\r\n * @description Scroll to right border\r\n */\n\n\n _this.scrollToRight = function () {\n if (_this.scrollerElement) {\n _this.scrollerElement.scrollLeft = _this.scrollerElement.scrollWidth - _this.scrollerElement.clientWidth;\n }\n\n return _this;\n };\n /**\r\n * @description Set the scrolls at given coordinates.
\r\n * If coordinate is undefined - current scroll value will persist.\r\n */\n\n\n _this.scrollTo = function (x, y) {\n if (_this.scrollerElement) {\n if (isNum(x)) _this.scrollerElement.scrollLeft = x;\n if (isNum(y)) _this.scrollerElement.scrollTop = y;\n }\n\n return _this;\n };\n /**\r\n * @description Center the viewport at given coordinates.
\r\n * If coordinate is undefined - current scroll value will persist.\r\n */\n\n\n _this.centerAt = function (x, y) {\n if (_this.scrollerElement) {\n if (isNum(x)) _this.scrollerElement.scrollLeft = x - _this.scrollerElement.clientWidth / 2;\n if (isNum(y)) _this.scrollerElement.scrollTop = y - _this.scrollerElement.clientHeight / 2;\n }\n\n return _this;\n };\n\n _this.update = function (force) {\n if (force === void 0) {\n force = false;\n }\n\n if (!_this.scrollerElement) {\n return;\n } // autodetect direction if not defined\n\n\n if (isUndef(_this.state.isRTL)) {\n _this.setState({\n isRTL: getComputedStyle(_this.scrollerElement).direction === 'rtl'\n });\n\n return _this.getScrollState();\n }\n\n var scrollState = _this.getScrollState(true);\n\n var prevScrollState = __assign({}, _this.scrollValues);\n\n var props = _this.props;\n var bitmask = 0;\n\n if (!force) {\n if (prevScrollState.clientHeight !== scrollState.clientHeight) bitmask |= Math.trunc(1);\n if (prevScrollState.clientWidth !== scrollState.clientWidth) bitmask |= 1 << 1;\n if (prevScrollState.scrollHeight !== scrollState.scrollHeight) bitmask |= 1 << 2;\n if (prevScrollState.scrollWidth !== scrollState.scrollWidth) bitmask |= 1 << 3;\n if (prevScrollState.scrollTop !== scrollState.scrollTop) bitmask |= 1 << 4;\n if (prevScrollState.scrollLeft !== scrollState.scrollLeft) bitmask |= 1 << 5;\n if (prevScrollState.scrollYBlocked !== scrollState.scrollYBlocked) bitmask |= 1 << 6;\n if (prevScrollState.scrollXBlocked !== scrollState.scrollXBlocked) bitmask |= 1 << 7;\n if (prevScrollState.scrollYPossible !== scrollState.scrollYPossible) bitmask |= 1 << 8;\n if (prevScrollState.scrollXPossible !== scrollState.scrollXPossible) bitmask |= 1 << 9;\n if (prevScrollState.trackYVisible !== scrollState.trackYVisible) bitmask |= 1 << 10;\n if (prevScrollState.trackXVisible !== scrollState.trackXVisible) bitmask |= 1 << 11;\n if (prevScrollState.isRTL !== scrollState.isRTL) bitmask |= 1 << 12;\n if (prevScrollState.contentScrollHeight !== scrollState.contentScrollHeight) bitmask |= 1 << 13;\n if (prevScrollState.contentScrollWidth !== scrollState.contentScrollWidth) bitmask |= 1 << 14;\n if (prevScrollState.zoomLevel !== scrollState.zoomLevel) bitmask |= 1 << 15; // if not forced and nothing has changed - skip this update\n\n if (bitmask === 0) {\n return prevScrollState;\n }\n } else {\n bitmask = 32767;\n }\n\n if (!props.native && _this.holderElement) {\n if (bitmask & 1 << 13 && (props.translateContentSizesToHolder || props.translateContentSizeYToHolder)) {\n _this.holderElement.style.height = \"\".concat(scrollState.contentScrollHeight, \"px\");\n }\n\n if (bitmask & 1 << 14 && (props.translateContentSizesToHolder || props.translateContentSizeXToHolder)) {\n _this.holderElement.style.width = \"\".concat(scrollState.contentScrollWidth, \"px\");\n }\n\n if (props.translateContentSizesToHolder || props.translateContentSizeYToHolder || props.translateContentSizeXToHolder) {\n if (!scrollState.clientHeight && scrollState.contentScrollHeight || !scrollState.clientWidth && scrollState.contentScrollWidth) {\n return;\n }\n }\n } // if scrollbars visibility has changed\n\n\n if (bitmask & 1 << 10 || bitmask & 1 << 11) {\n prevScrollState.scrollYBlocked = scrollState.scrollYBlocked;\n prevScrollState.scrollXBlocked = scrollState.scrollXBlocked;\n prevScrollState.scrollYPossible = scrollState.scrollYPossible;\n prevScrollState.scrollXPossible = scrollState.scrollXPossible;\n\n if (_this.trackYElement && bitmask & 1 << 10) {\n _this.trackYElement.style.display = scrollState.trackYVisible ? '' : 'none';\n }\n\n if (_this.trackXElement && bitmask & 1 << 11) {\n _this.trackXElement.style.display = scrollState.trackXVisible ? '' : 'none';\n }\n\n _this.scrollValues = prevScrollState;\n\n _this.setState({\n trackYVisible: _this.scrollValues.trackYVisible = scrollState.trackYVisible,\n trackXVisible: _this.scrollValues.trackXVisible = scrollState.trackXVisible\n });\n\n return;\n }\n\n (props.native ? _this.updaterNative : _this.updaterCustom)(bitmask, scrollState);\n _this.scrollValues = scrollState;\n\n if (!props.native && bitmask & 1 << 15) {\n getScrollbarWidth(true);\n\n _this.forceUpdate();\n }\n\n _this.eventEmitter.emit('update', __assign({}, scrollState), prevScrollState);\n\n if (bitmask & 1 << 4 || bitmask & 1 << 5) _this.eventEmitter.emit('scroll', __assign({}, scrollState), prevScrollState);\n return _this.scrollValues;\n }; // eslint-disable-next-line class-methods-use-this\n\n\n _this.updaterNative = function () {\n // just for future\n return true;\n };\n\n _this.updaterCustom = function (bitmask, scrollValues) {\n var props = _this.props;\n\n if (_this.trackYElement) {\n if (_this.thumbYElement && (bitmask & Math.trunc(1) || bitmask & 1 << 2 || bitmask & 1 << 4 || bitmask & 1 << 6 || bitmask & 1 << 8)) {\n if (scrollValues.scrollYPossible) {\n var trackInnerSize = getInnerHeight(_this.trackYElement);\n var thumbSize = calcThumbSize(scrollValues.scrollHeight, scrollValues.clientHeight, trackInnerSize, props.minimalThumbYSize || props.minimalThumbSize, props.maximalThumbYSize || props.maximalThumbSize);\n var thumbOffset = calcThumbOffset(scrollValues.scrollHeight, scrollValues.clientHeight, trackInnerSize, thumbSize, scrollValues.scrollTop);\n _this.thumbYElement.style.transform = \"translateY(\".concat(thumbOffset, \"px)\");\n _this.thumbYElement.style.height = \"\".concat(thumbSize, \"px\");\n _this.thumbYElement.style.display = '';\n } else {\n _this.thumbYElement.style.transform = '';\n _this.thumbYElement.style.height = '0px';\n _this.thumbYElement.style.display = 'none';\n }\n }\n }\n\n if (_this.trackXElement) {\n if (_this.thumbXElement && (bitmask & 1 << 1 || bitmask & 1 << 3 || bitmask & 1 << 5 || bitmask & 1 << 7 || bitmask & 1 << 9 || bitmask & 1 << 12)) {\n if (scrollValues.scrollXPossible) {\n var trackInnerSize = getInnerWidth(_this.trackXElement);\n var thumbSize = calcThumbSize(scrollValues.scrollWidth, scrollValues.clientWidth, trackInnerSize, props.minimalThumbXSize || props.minimalThumbSize, props.maximalThumbXSize || props.maximalThumbSize);\n var thumbOffset = calcThumbOffset(scrollValues.scrollWidth, scrollValues.clientWidth, trackInnerSize, thumbSize, scrollValues.scrollLeft);\n\n if (_this.state.isRTL && shouldReverseRtlScroll()) {\n thumbOffset += trackInnerSize - thumbSize;\n }\n\n _this.thumbXElement.style.transform = \"translateX(\".concat(thumbOffset, \"px)\");\n _this.thumbXElement.style.width = \"\".concat(thumbSize, \"px\");\n _this.thumbXElement.style.display = '';\n } else {\n _this.thumbXElement.style.transform = '';\n _this.thumbXElement.style.width = '0px';\n _this.thumbXElement.style.display = 'none';\n }\n }\n }\n\n return true;\n };\n\n _this.elementRefHolder = function (ref) {\n _this.holderElement = ref;\n\n if (isFun(_this.props.elementRef)) {\n _this.props.elementRef(ref);\n }\n };\n\n _this.elementRefWrapper = function (ref) {\n _this.wrapperElement = ref;\n\n if (isFun(_this.props.wrapperProps.elementRef)) {\n _this.props.wrapperProps.elementRef(ref);\n }\n };\n\n _this.elementRefScroller = function (ref) {\n _this.scrollerElement = ref;\n\n if (isFun(_this.props.scrollerProps.elementRef)) {\n _this.props.scrollerProps.elementRef(ref);\n }\n };\n\n _this.elementRefContent = function (ref) {\n _this.contentElement = ref;\n\n if (isFun(_this.props.contentProps.elementRef)) {\n _this.props.contentProps.elementRef(ref);\n }\n };\n\n _this.elementRefTrackX = function (ref) {\n _this.trackXElement = ref;\n\n if (isFun(_this.props.trackXProps.elementRef)) {\n _this.props.trackXProps.elementRef(ref);\n }\n };\n\n _this.elementRefTrackY = function (ref) {\n _this.trackYElement = ref;\n\n if (isFun(_this.props.trackYProps.elementRef)) {\n _this.props.trackYProps.elementRef(ref);\n }\n };\n\n _this.elementRefThumbX = function (ref) {\n _this.thumbXElement = ref;\n\n if (isFun(_this.props.thumbXProps.elementRef)) {\n _this.props.thumbXProps.elementRef(ref);\n }\n };\n\n _this.elementRefThumbY = function (ref) {\n _this.thumbYElement = ref;\n\n if (isFun(_this.props.thumbYProps.elementRef)) {\n _this.props.thumbYProps.elementRef(ref);\n }\n };\n\n _this.handleTrackXClick = function (ev, values) {\n if (_this.props.trackXProps.onClick) {\n _this.props.trackXProps.onClick(ev, values);\n }\n\n if (!_this.scrollerElement || !_this.trackXElement || !_this.thumbXElement || !_this.scrollValues || !_this.scrollValues.scrollXPossible) {\n return;\n }\n\n _this._scrollDetection();\n\n var thumbSize = _this.thumbXElement.clientWidth;\n var trackInnerSize = getInnerWidth(_this.trackXElement);\n var thumbOffset = (_this.scrollValues.isRTL && shouldReverseRtlScroll() ? values.offset + thumbSize / 2 - trackInnerSize : values.offset - thumbSize / 2) - (Number.parseFloat(getComputedStyle(_this.trackXElement).paddingLeft) || 0);\n var target = calcScrollForThumbOffset(_this.scrollValues.scrollWidth, _this.scrollValues.clientWidth, trackInnerSize, thumbSize, thumbOffset);\n\n if (_this.props.trackClickBehavior === TRACK_CLICK_BEHAVIOR.STEP) {\n target = (_this.scrollValues.isRTL ? _this.scrollValues.scrollLeft > target : _this.scrollValues.scrollLeft < target) ? _this.scrollValues.scrollLeft + _this.scrollValues.clientWidth : _this.scrollValues.scrollLeft - _this.scrollValues.clientWidth;\n }\n\n _this.scrollerElement.scrollLeft = target;\n };\n\n _this.handleTrackYClick = function (ev, values) {\n if (_this.props.trackYProps.onClick) _this.props.trackYProps.onClick(ev, values);\n\n if (!_this.scrollerElement || !_this.trackYElement || !_this.thumbYElement || !_this.scrollValues || !_this.scrollValues.scrollYPossible) {\n return;\n }\n\n _this._scrollDetection();\n\n var thumbSize = _this.thumbYElement.clientHeight;\n var target = calcScrollForThumbOffset(_this.scrollValues.scrollHeight, _this.scrollValues.clientHeight, getInnerHeight(_this.trackYElement), thumbSize, values.offset - thumbSize / 2) - (Number.parseFloat(getComputedStyle(_this.trackYElement).paddingTop) || 0);\n\n if (_this.props.trackClickBehavior === TRACK_CLICK_BEHAVIOR.JUMP) {\n _this.scrollerElement.scrollTop = target;\n } else {\n _this.scrollerElement.scrollTop = _this.scrollValues.scrollTop < target ? _this.scrollValues.scrollTop + _this.scrollValues.clientHeight : _this.scrollValues.scrollTop - _this.scrollValues.clientHeight;\n }\n };\n\n _this.handleTrackYMouseWheel = function (ev) {\n var props = _this.props;\n\n if (props.trackYProps && props.trackYProps.onWheel) {\n props.trackYProps.onWheel(ev);\n }\n\n if (props.disableTracksMousewheelScrolling || props.disableTrackYMousewheelScrolling) {\n return;\n }\n\n _this._scrollDetection();\n\n if (!_this.scrollerElement || _this.scrollValues.scrollYBlocked) {\n return;\n }\n\n _this.scrollTop += ev.deltaY;\n };\n\n _this.handleTrackXMouseWheel = function (ev) {\n var props = _this.props;\n\n if (props.trackXProps && props.trackXProps.onWheel) {\n props.trackXProps.onWheel(ev);\n }\n\n if (props.disableTracksMousewheelScrolling || props.disableTrackXMousewheelScrolling) {\n return;\n }\n\n _this._scrollDetection();\n\n if (!_this.scrollerElement || _this.scrollValues.scrollXBlocked) {\n return;\n }\n\n _this.scrollLeft += ev.deltaX;\n };\n\n _this.handleThumbXDrag = function (data) {\n var _a;\n\n if (!_this.trackXElement || !_this.thumbXElement || !_this.scrollerElement || !_this.scrollValues || !_this.scrollValues.scrollXPossible) {\n return;\n }\n\n _this._scrollDetection();\n\n var trackRect = _this.trackXElement.getBoundingClientRect();\n\n var styles = getComputedStyle(_this.trackXElement);\n var paddingLeft = Number.parseFloat(styles.paddingLeft) || 0;\n var paddingRight = Number.parseFloat(styles.paddingRight) || 0;\n var trackInnerSize = trackRect.width - paddingLeft - paddingRight;\n var thumbSize = _this.thumbXElement.clientWidth;\n var offset = _this.scrollValues.isRTL && shouldReverseRtlScroll() ? data.x + thumbSize - trackInnerSize + paddingLeft : data.lastX - paddingLeft;\n _this.scrollerElement.scrollLeft = calcScrollForThumbOffset(_this.scrollValues.scrollWidth, _this.scrollValues.clientWidth, trackInnerSize, thumbSize, offset);\n\n if ((_a = _this.props.thumbXProps) === null || _a === void 0 ? void 0 : _a.onDrag) {\n _this.props.thumbXProps.onDrag(data);\n }\n };\n\n _this.handleThumbXDragEnd = function (data) {\n var _a;\n\n _this.handleThumbXDrag(data);\n\n if ((_a = _this.props.thumbXProps) === null || _a === void 0 ? void 0 : _a.onDragEnd) {\n _this.props.thumbXProps.onDragEnd(data);\n }\n };\n\n _this.handleThumbYDrag = function (data) {\n var _a;\n\n if (!_this.scrollerElement || !_this.trackYElement || !_this.thumbYElement || !_this.scrollValues || !_this.scrollValues.scrollYPossible) {\n return;\n }\n\n _this._scrollDetection();\n\n var trackRect = _this.trackYElement.getBoundingClientRect();\n\n var styles = getComputedStyle(_this.trackYElement);\n var paddingTop = Number.parseFloat(styles.paddingTop) || 0;\n var paddingBottom = Number.parseFloat(styles.paddingBottom) || 0;\n var trackInnerSize = trackRect.height - paddingTop - paddingBottom;\n var thumbSize = _this.thumbYElement.clientHeight;\n var offset = data.y - paddingTop;\n _this.scrollerElement.scrollTop = calcScrollForThumbOffset(_this.scrollValues.scrollHeight, _this.scrollValues.clientHeight, trackInnerSize, thumbSize, offset);\n\n if ((_a = _this.props.thumbYProps) === null || _a === void 0 ? void 0 : _a.onDrag) {\n _this.props.thumbYProps.onDrag(data);\n }\n };\n\n _this.handleThumbYDragEnd = function (data) {\n var _a;\n\n _this.handleThumbYDrag(data);\n\n if ((_a = _this.props.thumbYProps) === null || _a === void 0 ? void 0 : _a.onDragEnd) {\n _this.props.thumbYProps.onDragEnd(data);\n }\n };\n\n _this.handleScrollerScroll = function () {\n _this._scrollDetection();\n };\n\n _this._scrollDetection = function () {\n if (!_this._scrollDetectionTO) {\n _this.eventEmitter.emit('scrollStart', _this.getScrollState());\n } else if (isBrowser) {\n window.clearTimeout(_this._scrollDetectionTO);\n }\n\n _this._scrollDetectionTO = isBrowser ? window.setTimeout(_this._scrollDetectionCallback, _this.props.scrollDetectionThreshold || 0) : null;\n };\n\n _this._scrollDetectionCallback = function () {\n _this._scrollDetectionTO = null;\n\n _this.eventEmitter.emit('scrollStop', _this.getScrollState());\n };\n\n _this.state = {\n trackXVisible: false,\n trackYVisible: false,\n isRTL: props.rtl\n };\n _this.scrollValues = _this.getScrollState(true);\n _this.eventEmitter = new Emittr(15);\n if (props.onUpdate) _this.eventEmitter.on('update', props.onUpdate);\n if (props.onScroll) _this.eventEmitter.on('scroll', props.onScroll);\n if (props.onScrollStart) _this.eventEmitter.on('scrollStart', props.onScrollStart);\n if (props.onScrollStop) _this.eventEmitter.on('scrollStop', props.onScrollStop);\n _this.id = uuid();\n return _this;\n }\n\n Object.defineProperty(Scrollbar.prototype, \"scrollTop\", {\n // eslint-disable-next-line react/sort-comp\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.scrollTop;\n }\n\n return 0;\n },\n set: function set(top) {\n if (this.scrollerElement) {\n this.scrollerElement.scrollTop = top;\n this.update();\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Scrollbar.prototype, \"scrollLeft\", {\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.scrollLeft;\n }\n\n return 0;\n },\n set: function set(left) {\n if (this.scrollerElement) {\n this.scrollerElement.scrollLeft = left;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Scrollbar.prototype, \"scrollHeight\", {\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.scrollHeight;\n }\n\n return 0;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Scrollbar.prototype, \"scrollWidth\", {\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.scrollWidth;\n }\n\n return 0;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Scrollbar.prototype, \"clientHeight\", {\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.clientHeight;\n }\n\n return 0;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Scrollbar.prototype, \"clientWidth\", {\n get: function get() {\n if (this.scrollerElement) {\n return this.scrollerElement.clientWidth;\n }\n\n return 0;\n },\n enumerable: false,\n configurable: true\n }); // eslint-disable-next-line react/sort-comp\n\n Scrollbar.calculateStyles = function (props, state, scrollValues, scrollbarWidth) {\n var _a, _b, _c, _d;\n\n var useDefaultStyles = !props.noDefaultStyles;\n return {\n holder: __assign(__assign(__assign({}, useDefaultStyles && style$1.holder), {\n position: 'relative'\n }), props.style),\n wrapper: __assign(__assign(__assign({}, useDefaultStyles && __assign(__assign(__assign({}, style$1.wrapper), !props.disableTracksWidthCompensation && !props.disableTrackYWidthCompensation && (_a = {}, _a[state.isRTL ? 'left' : 'right'] = state.trackYVisible ? 10 : 0, _a)), !props.disableTracksWidthCompensation && !props.disableTrackXWidthCompensation && {\n bottom: state.trackXVisible ? 10 : 0\n })), props.wrapperProps.style), {\n position: 'absolute',\n overflow: 'hidden'\n }),\n content: __assign(__assign(__assign(__assign(__assign({}, useDefaultStyles && style$1.content), props.translateContentSizesToHolder || props.translateContentSizeYToHolder || props.translateContentSizeXToHolder ? {\n display: 'table-cell'\n } : {\n padding: 0.05 // needed to disable margin collapsing without flexboxes, other possible solutions here: https://stackoverflow.com/questions/19718634/how-to-disable-margin-collapsing\n\n }), useDefaultStyles && !(props.translateContentSizesToHolder || props.translateContentSizeYToHolder) && {\n minHeight: '100%'\n }), useDefaultStyles && !(props.translateContentSizesToHolder || props.translateContentSizeXToHolder) && {\n minWidth: '100%'\n }), props.contentProps.style),\n scroller: __assign(__assign(__assign(__assign((_b = {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n paddingBottom: !scrollbarWidth && scrollValues.scrollXPossible ? props.fallbackScrollbarWidth : undefined\n }, _b[state.isRTL ? 'paddingLeft' : 'paddingRight'] = !scrollbarWidth && scrollValues.scrollYPossible ? props.fallbackScrollbarWidth : undefined, _b), props.scrollerProps.style), !isUndef(props.rtl) && {\n direction: props.rtl ? 'rtl' : 'ltr'\n }), props.momentum && {\n WebkitOverflowScrolling: 'touch'\n }), (_c = {\n overflowY: scrollValues.scrollYPossible ? 'scroll' : 'hidden',\n overflowX: scrollValues.scrollXPossible ? 'scroll' : 'hidden',\n marginBottom: scrollValues.scrollXPossible ? -(scrollbarWidth || props.fallbackScrollbarWidth) - Number(scrollValues.zoomLevel !== 1) : undefined\n }, _c[state.isRTL ? 'marginLeft' : 'marginRight'] = scrollValues.scrollYPossible ? -(scrollbarWidth || props.fallbackScrollbarWidth) - Number(scrollValues.zoomLevel !== 1) : undefined, _c)),\n trackX: __assign(__assign(__assign(__assign({}, useDefaultStyles && style$1.track.common), useDefaultStyles && style$1.track.x), props.trackXProps.style), !state.trackXVisible && {\n display: 'none'\n }),\n trackY: __assign(__assign(__assign(__assign(__assign({}, useDefaultStyles && style$1.track.common), useDefaultStyles && style$1.track.y), useDefaultStyles && (_d = {}, _d[state.isRTL ? 'left' : 'right'] = 0, _d)), props.trackYProps.style), !state.trackYVisible && {\n display: 'none'\n }),\n thumbX: __assign(__assign(__assign({}, useDefaultStyles && style$1.thumb.common), useDefaultStyles && style$1.thumb.x), props.thumbXProps.style),\n thumbY: __assign(__assign(__assign({}, useDefaultStyles && style$1.thumb.common), useDefaultStyles && style$1.thumb.y), props.thumbYProps.style)\n };\n };\n\n Scrollbar.prototype.componentDidMount = function () {\n if (!this.scrollerElement) {\n this.setState(function () {\n throw new Error(\"scroller element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n return;\n }\n\n if (!this.contentElement) {\n this.setState(function () {\n throw new Error(\"content element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n return;\n }\n\n var props = this.props;\n\n if (!props.native && !props.mobileNative) {\n // ToDo: move native state to the state so it can be synchronized\n if (!this.holderElement) {\n this.setState(function () {\n throw new Error(\"holder element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n return;\n }\n\n if (!this.wrapperElement) {\n this.setState(function () {\n throw new Error(\"wrapper element was not created. Possibly you haven't provided HTMLDivElement to renderer's `elementRef` function.\");\n });\n return;\n }\n }\n\n Loop.addTarget(this);\n\n if (!isUndef(props.scrollTop)) {\n this.scrollerElement.scrollTop = props.scrollTop;\n }\n\n if (!isUndef(props.scrollLeft)) {\n this.scrollerElement.scrollLeft = props.scrollLeft;\n }\n\n this.update(true);\n };\n\n Scrollbar.prototype.componentWillUnmount = function () {\n Loop.removeTarget(this);\n };\n\n Scrollbar.prototype.componentDidUpdate = function (prevProps, prevState) {\n if (!this.scrollerElement) {\n return;\n }\n\n var props = this.props;\n\n if (props.rtl !== prevProps.rtl && props.rtl !== this.state.isRTL) {\n this.setState({\n isRTL: props.rtl\n });\n }\n\n if (this.state.isRTL !== prevState.isRTL) {\n this.update();\n }\n\n if (!isUndef(props.scrollTop) && props.scrollTop !== this.scrollerElement.scrollTop) {\n this.scrollerElement.scrollTop = props.scrollTop;\n }\n\n if (!isUndef(props.scrollLeft) && props.scrollLeft !== this.scrollerElement.scrollLeft) {\n this.scrollerElement.scrollLeft = props.scrollLeft;\n }\n\n if (prevProps.onUpdate !== props.onUpdate) {\n if (prevProps.onUpdate) this.eventEmitter.off('update', prevProps.onUpdate);\n if (props.onUpdate) this.eventEmitter.on('update', props.onUpdate);\n }\n\n if (prevProps.onScroll !== props.onScroll) {\n if (prevProps.onScroll) this.eventEmitter.off('scroll', prevProps.onScroll);\n if (props.onScroll) this.eventEmitter.on('scroll', props.onScroll);\n }\n\n if (prevProps.onScrollStart !== props.onScrollStart) {\n if (prevProps.onScrollStart) this.eventEmitter.off('scrollStart', prevProps.onScrollStart);\n if (props.onScrollStart) this.eventEmitter.on('scrollStart', props.onScrollStart);\n }\n\n if (prevProps.onScrollStop !== props.onScrollStop) {\n if (prevProps.onScrollStop) this.eventEmitter.off('scrollStop', prevProps.onScrollStop);\n if (props.onScrollStop) this.eventEmitter.on('scrollStop', props.onScrollStop);\n }\n }; // eslint-disable-next-line react/sort-comp\n\n\n Scrollbar.prototype.render = function () {\n var _a = this.props,\n createContext = _a.createContext,\n rtl = _a.rtl,\n native = _a.native,\n mobileNative = _a.mobileNative,\n momentum = _a.momentum;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.noDefaultStyles;\n var disableTracksMousewheelScrolling = _a.disableTracksMousewheelScrolling,\n disableTrackXMousewheelScrolling = _a.disableTrackXMousewheelScrolling,\n disableTrackYMousewheelScrolling = _a.disableTrackYMousewheelScrolling;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.disableTracksWidthCompensation;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.disableTrackXWidthCompensation;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.disableTrackYWidthCompensation;\n var noScrollX = _a.noScrollX,\n noScrollY = _a.noScrollY,\n noScroll = _a.noScroll,\n permanentTrackX = _a.permanentTrackX,\n permanentTrackY = _a.permanentTrackY,\n permanentTracks = _a.permanentTracks,\n removeTracksWhenNotUsed = _a.removeTracksWhenNotUsed,\n removeTrackYWhenNotUsed = _a.removeTrackYWhenNotUsed,\n removeTrackXWhenNotUsed = _a.removeTrackXWhenNotUsed;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.minimalThumbSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.maximalThumbSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.minimalThumbXSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.maximalThumbXSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.minimalThumbYSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.maximalThumbYSize;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.fallbackScrollbarWidth;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.scrollTop;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.scrollLeft;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.trackClickBehavior;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.scrollDetectionThreshold;\n var propsWrapperProps = _a.wrapperProps,\n propsScrollerProps = _a.scrollerProps,\n propsContentProps = _a.contentProps,\n propsTrackXProps = _a.trackXProps,\n propsTrackYProps = _a.trackYProps,\n propsThumbXProps = _a.thumbXProps,\n propsThumbYProps = _a.thumbYProps,\n propsScrollbarWidth = _a.scrollbarWidth;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.elementRef;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onUpdate;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onScroll;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onScrollStart;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.onScrollStop;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.translateContentSizesToHolder;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.translateContentSizeYToHolder;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _a.translateContentSizeXToHolder;\n var children = _a.children,\n propsHolderProps = __rest(_a, [\"createContext\", \"rtl\", \"native\", \"mobileNative\", \"momentum\", \"noDefaultStyles\", \"disableTracksMousewheelScrolling\", \"disableTrackXMousewheelScrolling\", \"disableTrackYMousewheelScrolling\", \"disableTracksWidthCompensation\", \"disableTrackXWidthCompensation\", \"disableTrackYWidthCompensation\", \"noScrollX\", \"noScrollY\", \"noScroll\", \"permanentTrackX\", \"permanentTrackY\", \"permanentTracks\", \"removeTracksWhenNotUsed\", \"removeTrackYWhenNotUsed\", \"removeTrackXWhenNotUsed\", \"minimalThumbSize\", \"maximalThumbSize\", \"minimalThumbXSize\", \"maximalThumbXSize\", \"minimalThumbYSize\", \"maximalThumbYSize\", \"fallbackScrollbarWidth\", \"scrollTop\", \"scrollLeft\", \"trackClickBehavior\", \"scrollDetectionThreshold\", \"wrapperProps\", \"scrollerProps\", \"contentProps\", \"trackXProps\", \"trackYProps\", \"thumbXProps\", \"thumbYProps\", \"scrollbarWidth\", \"elementRef\", \"onUpdate\", \"onScroll\", \"onScrollStart\", \"onScrollStop\", \"translateContentSizesToHolder\", \"translateContentSizeYToHolder\", \"translateContentSizeXToHolder\", \"children\"]);\n\n var scrollbarWidth = !isUndef(propsScrollbarWidth) ? propsScrollbarWidth : getScrollbarWidth() || 0;\n\n if (native || !scrollbarWidth && mobileNative) {\n this.elementRefHolder(null);\n this.elementRefWrapper(null);\n this.elementRefTrackX(null);\n this.elementRefTrackY(null);\n this.elementRefThumbX(null);\n this.elementRefThumbY(null);\n\n var contentProps_1 = __assign(__assign({}, propsContentProps), {\n key: 'ScrollbarsCustom-Content',\n className: cnb('ScrollbarsCustom-Content', propsContentProps.className),\n children: children\n });\n\n var scrollerProps_1 = __assign(__assign({}, propsHolderProps), {\n className: cnb('ScrollbarsCustom native', this.state.trackYVisible && 'trackYVisible', this.state.trackXVisible && 'trackXVisible', this.state.isRTL && 'rtl', propsHolderProps.className),\n style: __assign(__assign(__assign(__assign({}, propsHolderProps.style), !isUndef(rtl) && {\n direction: rtl ? 'rtl' : 'ltr'\n }), momentum && {\n WebkitOverflowScrolling: 'touch'\n }), {\n overflowX: noScroll || noScrollX ? 'hidden' : permanentTracks || permanentTrackX ? 'scroll' : 'auto',\n overflowY: noScroll || noScrollY ? 'hidden' : permanentTracks || permanentTrackY ? 'scroll' : 'auto'\n }),\n onScroll: this.handleScrollerScroll,\n children: renderDivWithRenderer(contentProps_1, this.elementRefContent),\n renderer: propsScrollerProps.renderer,\n elementRef: propsScrollerProps.elementRef\n });\n\n return renderDivWithRenderer(scrollerProps_1, this.elementRefScroller);\n }\n\n var styles = Scrollbar.calculateStyles(this.props, this.state, this.scrollValues, scrollbarWidth);\n var holderChildren = [];\n\n var contentProps = __assign(__assign({}, propsContentProps), {\n key: 'ScrollbarsCustom-Content',\n className: cnb('ScrollbarsCustom-Content', propsContentProps.className),\n style: styles.content,\n children: createContext ? // eslint-disable-next-line react/jsx-no-constructed-context-values\n React$1.createElement(ScrollbarContext.Provider, {\n value: {\n parentScrollbar: this\n }\n }, children) : children\n });\n\n var scrollerProps = __assign(__assign({}, propsScrollerProps), {\n key: 'ScrollbarsCustom-Scroller',\n className: cnb('ScrollbarsCustom-Scroller', propsScrollerProps.className),\n style: styles.scroller,\n children: renderDivWithRenderer(contentProps, this.elementRefContent),\n onScroll: this.handleScrollerScroll\n });\n\n var wrapperProps = __assign(__assign({}, propsWrapperProps), {\n key: 'ScrollbarsCustom-Wrapper',\n className: cnb('ScrollbarsCustom-Wrapper', propsWrapperProps.className),\n style: styles.wrapper,\n children: renderDivWithRenderer(scrollerProps, this.elementRefScroller)\n });\n\n holderChildren.push(renderDivWithRenderer(wrapperProps, this.elementRefWrapper));\n\n if (this.state.trackYVisible || !removeTracksWhenNotUsed && !removeTrackYWhenNotUsed) {\n var thumbYProps = __assign(__assign({}, propsThumbYProps), {\n key: 'ScrollbarsCustom-ThumbY',\n style: styles.thumbY,\n elementRef: this.elementRefThumbY,\n onDrag: this.handleThumbYDrag,\n onDragEnd: this.handleThumbYDragEnd,\n axis: AXIS_DIRECTION.Y\n });\n\n var trackYProps = __assign(__assign(__assign(__assign({}, propsTrackYProps), {\n key: 'ScrollbarsCustom-TrackY',\n style: styles.trackY,\n elementRef: this.elementRefTrackY,\n onClick: this.handleTrackYClick\n }), (disableTracksMousewheelScrolling || disableTrackYMousewheelScrolling) && {\n onWheel: this.handleTrackYMouseWheel\n }), {\n axis: AXIS_DIRECTION.Y\n });\n\n trackYProps.children = React$1.createElement(ScrollbarThumb, __assign({}, thumbYProps));\n holderChildren.push(React$1.createElement(ScrollbarTrack, __assign({}, trackYProps)));\n } else {\n this.elementRefTrackY(null);\n this.elementRefThumbY(null);\n }\n\n if (this.state.trackXVisible || !removeTracksWhenNotUsed && !removeTrackXWhenNotUsed) {\n var thumbXProps = __assign(__assign({}, propsThumbXProps), {\n key: 'ScrollbarsCustom-ThumbX',\n style: styles.thumbX,\n elementRef: this.elementRefThumbX,\n onDrag: this.handleThumbXDrag,\n onDragEnd: this.handleThumbXDragEnd,\n axis: AXIS_DIRECTION.X\n });\n\n var trackXProps = __assign(__assign(__assign(__assign({}, propsTrackXProps), {\n key: 'ScrollbarsCustom-TrackX',\n style: styles.trackX,\n elementRef: this.elementRefTrackX,\n onClick: this.handleTrackXClick\n }), (disableTracksMousewheelScrolling || disableTrackXMousewheelScrolling) && {\n onWheel: this.handleTrackXMouseWheel\n }), {\n axis: AXIS_DIRECTION.X\n });\n\n trackXProps.children = React$1.createElement(ScrollbarThumb, __assign({}, thumbXProps));\n holderChildren.push(React$1.createElement(ScrollbarTrack, __assign({}, trackXProps)));\n } else {\n this.elementRefTrackX(null);\n this.elementRefThumbX(null);\n }\n\n var holderProps = __assign(__assign({}, propsHolderProps), {\n className: cnb('ScrollbarsCustom', this.state.trackYVisible && 'trackYVisible', this.state.trackXVisible && 'trackXVisible', this.state.isRTL && 'rtl', propsHolderProps.className),\n style: styles.holder,\n children: holderChildren\n });\n\n return renderDivWithRenderer(holderProps, this.elementRefHolder);\n }; // eslint-disable-next-line react/static-property-placement\n\n\n Scrollbar.contextType = ScrollbarContext; // eslint-disable-next-line react/static-property-placement\n\n Scrollbar.defaultProps = {\n momentum: true,\n minimalThumbSize: 30,\n fallbackScrollbarWidth: 20,\n trackClickBehavior: TRACK_CLICK_BEHAVIOR.JUMP,\n scrollDetectionThreshold: 100,\n wrapperProps: {},\n scrollerProps: {},\n contentProps: {},\n trackXProps: {},\n trackYProps: {},\n thumbXProps: {},\n thumbYProps: {}\n };\n return Scrollbar;\n}(React$1.Component);\n\nvar css_248z$q = \".scroll-module_scroll__track__RHChj {\\n position: absolute;\\n overflow: hidden;\\n background: transparent;\\n user-select: none;\\n width: calc(var(--spacing) * 4);\\n height: 100%;\\n top: 0;\\n right: 0;\\n padding: calc(var(--spacing) * 8) calc(var(--spacing) * 1.5);\\n}\\n.scroll-module_scroll__thumb__nzmTd {\\n cursor: pointer;\\n border-radius: var(--spacing);\\n background: var(--on-surface-primary-3);\\n width: 100%;\\n}\\n.scroll-module_scroll__wrapper__0yU76 {\\n position: absolute;\\n overflow: hidden;\\n inset: 0 calc(var(--spacing) * 4) 0 0;\\n}\\n.scroll-module_scroll__wrapper_hideInset__LrNR2 {\\n inset: 0;\\n}\";\nvar styles$p = {\"scroll__track\":\"scroll-module_scroll__track__RHChj\",\"scroll__thumb\":\"scroll-module_scroll__thumb__nzmTd\",\"scroll__wrapper\":\"scroll-module_scroll__wrapper__0yU76\",\"scroll__wrapper_hideInset\":\"scroll-module_scroll__wrapper_hideInset__LrNR2\"};\nstyleInject(css_248z$q);\n\nconst Scroll = ({ children, maxHeight, className, style, trackClassName, hideInset, ref: _, ...rest }) => {\n const rewriteStyle = {};\n return (jsx(Scrollbar, { \"data-testid\": \"scroll\", className: cx(styles$p.scroll, className), style: {\n ...(maxHeight ? { maxHeight: `${maxHeight}px` } : rewriteStyle),\n ...style,\n }, trackYProps: {\n renderer: ({ elementRef, ...props }) => (jsx(\"div\", { ...props, \"data-testid\": \"track\", className: cx(styles$p.scroll__track, trackClassName), style: rewriteStyle, ref: elementRef })),\n }, thumbYProps: {\n renderer: ({ elementRef, style, ...props }) => (jsx(\"div\", { ...props, \"data-testid\": \"thumb\", className: cx(styles$p.scroll__thumb), ref: elementRef, style: { transform: style?.transform, height: style?.height } })),\n }, contentProps: {\n renderer: ({ elementRef, ...props }) => (jsx(\"div\", { \"data-testid\": \"scroll-view\", ref: elementRef, ...props })),\n }, wrapperProps: {\n renderer: ({ elementRef, style, ...props }) => (jsx(\"div\", { ...props, \"data-testid\": \"scroll-wrapper\", style: rewriteStyle, className: cx(styles$p.scroll__wrapper, hideInset && styles$p.scroll__wrapper_hideInset), ref: elementRef })),\n }, noScrollX: true, ...rest, children: children }));\n};\n\nvar css_248z$p = \".dropdown-list-module_dropdownList__A2tbl {\\n height: 100%;\\n padding: calc(var(--spacing) * 4);\\n border-radius: var(--radius-x-large);\\n background-color: var(--neutrals-1);\\n box-shadow: var(--shadow-medium);\\n}\\n.dropdown-list-module_dropdownList__track__ulnH8 {\\n right: calc(var(--spacing) * 4 * -1);\\n}\";\nvar styles$o = {\"dropdownList\":\"dropdown-list-module_dropdownList__A2tbl\",\"dropdownList__track\":\"dropdown-list-module_dropdownList__track__ulnH8\"};\nstyleInject(css_248z$p);\n\nconst convertToUnit = (str, unit = 'px') => {\n return `${str}${unit}`;\n};\n\nconst getShortAddress = (value, beforeSymbols = 4, afterSymbols = 4) => `${value.slice(0, beforeSymbols)}...${value.slice(-afterSymbols)}`;\nconst formatDimension = (input) => {\n if (isNumber$1(input)) {\n return convertToUnit(input);\n }\n else if (isString$1(input)) {\n const trimmedInput = input.trim();\n if (/^\\d+(\\.\\d+)?(px|%)$/.test(trimmedInput)) {\n return trimmedInput;\n }\n else {\n throw new Error('Неверный формат строки');\n }\n }\n else {\n throw new Error('Неверный тип данных');\n }\n};\n\nconst DropdownList = ({ className, maxHeight = 250, width, children, style, ...rest }) => {\n const [height, setHeight] = useState(0);\n const stylesProp = {\n height: `${height + 18}px`,\n maxHeight: `${maxHeight}px`,\n ...(width ? { width: formatDimension(width) } : {}),\n ...style,\n };\n const ref = useRef(null);\n useLayoutEffect(() => {\n setHeight(ref?.current?.getBoundingClientRect()?.height || 0);\n }, [ref, children]);\n return (jsx(\"div\", { className: cx(styles$o.dropdownList, maxHeight && styles$o.dropdownList_withScroll, className), \"data-testid\": \"dropdown-list\", style: stylesProp, ...rest, children: jsx(Scroll, { maxHeight: maxHeight, hideInset: true, trackClassName: styles$o.dropdownList__track, children: jsx(\"div\", { ref: ref, children: children }) }) }));\n};\n\nvar css_248z$o = \".checkbox-module_checkbox__-3v96 {\\n display: inline-flex;\\n}\\n.checkbox-module_checkbox_fullWidth__-9sEE {\\n display: block;\\n width: 100%;\\n}\\n.checkbox-module_checkbox_checked__onsqW .checkbox-module_checkbox__boxIcon__OPFZa {\\n opacity: 1;\\n}\\n.checkbox-module_checkbox_disabled__0STuu {\\n pointer-events: none;\\n}\\n.checkbox-module_checkbox_disabled__0STuu .checkbox-module_checkbox__box__-Zpph {\\n color: var(--outline-3);\\n}\\n.checkbox-module_checkbox_disabled__0STuu .checkbox-module_checkbox__label__Rartt {\\n color: var(--on-surface-primary-3);\\n}\\n.checkbox-module_checkbox_error__KXbVv .checkbox-module_checkbox__box__-Zpph {\\n border-color: var(--error-2);\\n color: var(--error-2);\\n}\\n.checkbox-module_checkbox__input__IxoAN {\\n position: absolute;\\n opacity: 0;\\n width: 0;\\n height: 0;\\n margin: 0;\\n padding: 0;\\n}\\n.checkbox-module_checkbox__label__Rartt {\\n display: flex;\\n grid-gap: calc(var(--spacing) * 4);\\n align-items: center;\\n cursor: pointer;\\n color: var(--on-surface-primary-1);\\n}\\n.checkbox-module_checkbox__box__-Zpph {\\n position: relative;\\n width: 20px;\\n height: 20px;\\n min-width: 20px;\\n border-radius: calc(var(--spacing) * 2);\\n border: 1px solid var(--outline-1);\\n background: var(--surface-1);\\n color: var(--primary-1);\\n}\\n.checkbox-module_checkbox__boxIcon__OPFZa {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n opacity: 0;\\n transition: opacity 0.05s ease;\\n}\";\nvar styles$n = {\"checkbox\":\"checkbox-module_checkbox__-3v96\",\"checkbox_fullWidth\":\"checkbox-module_checkbox_fullWidth__-9sEE\",\"checkbox_checked\":\"checkbox-module_checkbox_checked__onsqW\",\"checkbox__boxIcon\":\"checkbox-module_checkbox__boxIcon__OPFZa\",\"checkbox_disabled\":\"checkbox-module_checkbox_disabled__0STuu\",\"checkbox__box\":\"checkbox-module_checkbox__box__-Zpph\",\"checkbox__label\":\"checkbox-module_checkbox__label__Rartt\",\"checkbox_error\":\"checkbox-module_checkbox_error__KXbVv\",\"checkbox__input\":\"checkbox-module_checkbox__input__IxoAN\"};\nstyleInject(css_248z$o);\n\nconst CheckboxIcon = ({ width = 12, height = 8, color = 'currentColor', ...rest }) => {\n return (jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"12\", height: \"8\", viewBox: \"0 0 12 8\", fill: \"none\", ...rest, children: jsx(\"path\", { d: \"M1 3.4L4.3 7L11 1\", stroke: color, strokeWidth: \"2\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }) }));\n};\n\nconst Checkbox = ({ id, label, children, checked, disabled, hasError, fullWidth, className, ...rest }) => {\n const uniqId = useId$1();\n const classes = cx(styles$n.checkbox, checked && styles$n.checkbox_checked, disabled && styles$n.checkbox_disabled, hasError && styles$n.checkbox_error, fullWidth && styles$n.checkbox_fullWidth, className);\n return (jsx(\"div\", { className: classes, children: jsxs(\"label\", { htmlFor: id || uniqId, className: styles$n.checkbox__label, \"data-testid\": \"label-wrap-checkbox\", children: [jsx(\"input\", { id: id || uniqId, type: \"checkbox\", checked: checked, disabled: disabled, \"data-testid\": \"input-checkbox\", className: styles$n.checkbox__input, ...rest }), jsx(\"div\", { className: styles$n.checkbox__box, children: jsx(CheckboxIcon, { className: styles$n.checkbox__boxIcon }) }), children, label && (jsx(Typography, { tag: \"span\", \"data-testid\": \"label-checkbox\", variant: \"body-16\", children: label }))] }) }));\n};\n\nvar css_248z$n = \".dropdown-item-module_dropdownItem__-kXoY {\\n display: inline-flex;\\n align-items: center;\\n gap: calc(var(--spacing) * 4);\\n border-radius: var(--radius-medium);\\n background-color: var(--surface-1);\\n transition: background-color 0.2s ease;\\n cursor: pointer;\\n color: var(--on-surface-primary-1);\\n}\\n.dropdown-item-module_dropdownItem__-kXoY:hover, .dropdown-item-module_dropdownItem_selected__2UTSj {\\n background-color: var(--surface-2);\\n}\\n.dropdown-item-module_dropdownItem_size-default__i37g9 {\\n min-height: calc(var(--spacing) * 20);\\n padding: calc(var(--spacing) * 4) calc(var(--spacing) * 8);\\n}\\n.dropdown-item-module_dropdownItem_size-small__y51in {\\n min-height: calc(var(--spacing) * 16 + var(--spacing) * 2);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 4);\\n}\\n.dropdown-item-module_dropdownItem_fullWidth__ry3pM {\\n display: flex;\\n width: 100%;\\n}\\n.dropdown-item-module_dropdownItem_multiple__aaq-- {\\n padding: calc(var(--spacing) * 4) calc(var(--spacing) * 6);\\n}\\n.dropdown-item-module_dropdownItem_disabled__7ZLaY {\\n pointer-events: none;\\n color: var(--on-surface-primary-3);\\n}\\n.dropdown-item-module_dropdownItem_disabled__7ZLaY .dropdown-item-module_dropdownItem__icon__6H5Rp {\\n color: var(--on-surface-secondary-3);\\n}\\n.dropdown-item-module_dropdownItem__checkbox__g1Bdy {\\n position: relative;\\n}\\n.dropdown-item-module_dropdownItem__checkbox__g1Bdy::before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n}\\n.dropdown-item-module_dropdownItem__icon__6H5Rp {\\n width: 24px;\\n height: 24px;\\n min-width: 24px;\\n color: var(--on-surface-secondary-1);\\n}\\n.dropdown-item-module_dropdownItem__icon_append__i5uzr {\\n margin-left: auto;\\n}\";\nvar styles$m = {\"dropdownItem\":\"dropdown-item-module_dropdownItem__-kXoY\",\"dropdownItem_selected\":\"dropdown-item-module_dropdownItem_selected__2UTSj\",\"dropdownItem_size-default\":\"dropdown-item-module_dropdownItem_size-default__i37g9\",\"dropdownItem_size-small\":\"dropdown-item-module_dropdownItem_size-small__y51in\",\"dropdownItem_fullWidth\":\"dropdown-item-module_dropdownItem_fullWidth__ry3pM\",\"dropdownItem_multiple\":\"dropdown-item-module_dropdownItem_multiple__aaq--\",\"dropdownItem_disabled\":\"dropdown-item-module_dropdownItem_disabled__7ZLaY\",\"dropdownItem__icon\":\"dropdown-item-module_dropdownItem__icon__6H5Rp\",\"dropdownItem__checkbox\":\"dropdown-item-module_dropdownItem__checkbox__g1Bdy\",\"dropdownItem__icon_append\":\"dropdown-item-module_dropdownItem__icon_append__i5uzr\"};\nstyleInject(css_248z$n);\n\nconst DropdownItem = function ({ className, label, disabled, multiple, active, children, fullWidth, icon, onClick, appendIcon, selected, size = 'default', ...rest }) {\n const labelVariant = size === 'small' ? 'body-14' : 'body-16';\n return (jsxs(\"div\", { className: cx(styles$m.dropdownItem, styles$m[`dropdownItem_size-${size}`], fullWidth && styles$m.dropdownItem_fullWidth, active && styles$m.dropdownItem_active, selected && styles$m.dropdownItem_selected, multiple && styles$m.dropdownItem_multiple, disabled && styles$m.dropdownItem_disabled, className), \"data-testid\": \"dropdown-item\", onClick: (e) => onClick && onClick(e), ...rest, children: [icon &&\n createElement(icon, {\n className: styles$m.dropdownItem__icon,\n }), multiple && (jsx(Checkbox, { className: styles$m.dropdownItem__checkbox, checked: active, disabled: disabled, \"data-testid\": \"checkbox\" })), children && jsx(\"div\", { className: styles$m.dropdownItem__slot, children: children }), label && jsx(Typography, { variant: labelVariant, children: label }), appendIcon &&\n createElement(appendIcon, {\n className: cx(styles$m.dropdownItem__icon, styles$m.dropdownItem__icon_append),\n })] }));\n};\n\nvar css_248z$m = \".select-module_select__KkUqM {\\n cursor: pointer;\\n display: grid;\\n align-items: center;\\n gap: calc(var(--spacing) * 3);\\n background: var(--surface-1);\\n border-radius: var(--radius-medium);\\n border: 1px solid;\\n border-color: var(--outline-1);\\n min-width: 160px;\\n transition: border-color, color 0.2s ease;\\n color: var(--on-surface-primary-2);\\n}\\n.select-module_select__KkUqM:hover, .select-module_select_active__gLcQa {\\n border-color: var(--outline-2);\\n}\\n.select-module_select_hasValue__PbKrN {\\n color: var(--on-surface-primary-1);\\n}\\n.select-module_select__native__ioSIS {\\n display: none;\\n}\\n.select-module_select_active__gLcQa .select-module_select__arrow__mwKoB {\\n transform: rotate(180deg);\\n}\\n.select-module_select_fullWidth__ZKZeI {\\n width: 100%;\\n}\\n.select-module_select__content__nA0yl {\\n display: flex;\\n gap: calc(var(--spacing) * 3);\\n align-items: center;\\n}\\n.select-module_select__arrow__mwKoB {\\n transition: transform 0.2s ease;\\n}\\n.select-module_select_size-large__TEEr7 {\\n height: calc(var(--spacing) * 4 * 6);\\n grid-template-columns: 1fr calc(var(--spacing) * 4 * 3);\\n padding: calc(var(--spacing) * 3) calc(var(--spacing) * 8);\\n}\\n.select-module_select_size-default__Tm8j- {\\n height: calc(var(--spacing) * 4 * 5);\\n grid-template-columns: 1fr calc(var(--spacing) * 4 * 2);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 7);\\n}\\n.select-module_select_size-small__4pSCp {\\n height: calc(var(--spacing) * 4 * 4);\\n grid-template-columns: 1fr calc(var(--spacing) * 4 * 2);\\n padding: calc(var(--spacing) * 2) calc(var(--spacing) * 6);\\n}\\n.select-module_select_disabled__uGIvT {\\n pointer-events: none;\\n color: var(--on-surface-primary-3);\\n border-color: var(--outline-3);\\n}\";\nvar styles$l = {\"select\":\"select-module_select__KkUqM\",\"select_active\":\"select-module_select_active__gLcQa\",\"select_hasValue\":\"select-module_select_hasValue__PbKrN\",\"select__native\":\"select-module_select__native__ioSIS\",\"select__arrow\":\"select-module_select__arrow__mwKoB\",\"select_fullWidth\":\"select-module_select_fullWidth__ZKZeI\",\"select__content\":\"select-module_select__content__nA0yl\",\"select_size-large\":\"select-module_select_size-large__TEEr7\",\"select_size-default\":\"select-module_select_size-default__Tm8j-\",\"select_size-small\":\"select-module_select_size-small__4pSCp\",\"select_disabled\":\"select-module_select_disabled__uGIvT\"};\nstyleInject(css_248z$m);\n\nvar css_248z$l = \".dropdown-module_dropdown__5HCmB {\\n display: inline-flex;\\n position: relative;\\n}\\n.dropdown-module_dropdown_fullWidth__amTrh {\\n display: flex;\\n width: 100%;\\n}\\n.dropdown-module_dropdown_fullWidth__amTrh .dropdown-module_dropdown__target__UHNaB {\\n width: 100%;\\n}\\n.dropdown-module_dropdown_contentFullWidth__yOCvk .dropdown-module_dropdown__content__glcfm {\\n width: 100%;\\n}\\n.dropdown-module_dropdown__content__glcfm {\\n position: absolute;\\n}\";\nvar styles$k = {\"dropdown\":\"dropdown-module_dropdown__5HCmB\",\"dropdown_fullWidth\":\"dropdown-module_dropdown_fullWidth__amTrh\",\"dropdown__target\":\"dropdown-module_dropdown__target__UHNaB\",\"dropdown_contentFullWidth\":\"dropdown-module_dropdown_contentFullWidth__yOCvk\",\"dropdown__content\":\"dropdown-module_dropdown__content__glcfm\"};\nstyleInject(css_248z$l);\n\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null ? void 0 : (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n // Browsers without `ShadowRoot` support.\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle$1(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isContainingBlock(element) {\n const webkit = isWebKit();\n const css = getComputedStyle$1(element);\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else {\n currentNode = getParentNode(currentNode);\n }\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\nfunction getComputedStyle$1(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.pageXOffset,\n scrollTop: element.pageYOffset\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\n\nfunction activeElement(doc) {\n let activeElement = doc.activeElement;\n while (((_activeElement = activeElement) == null || (_activeElement = _activeElement.shadowRoot) == null ? void 0 : _activeElement.activeElement) != null) {\n var _activeElement;\n activeElement = activeElement.shadowRoot.activeElement;\n }\n return activeElement;\n}\nfunction contains(parent, child) {\n if (!parent || !child) {\n return false;\n }\n const rootNode = child.getRootNode && child.getRootNode();\n\n // First, attempt with faster native method\n if (parent.contains(child)) {\n return true;\n }\n\n // then fallback to custom implementation with Shadow DOM support\n if (rootNode && isShadowRoot(rootNode)) {\n let next = child;\n while (next) {\n if (parent === next) {\n return true;\n }\n // @ts-ignore\n next = next.parentNode || next.host;\n }\n }\n\n // Give up, the result is false\n return false;\n}\n// Avoid Chrome DevTools blue warning.\nfunction getPlatform() {\n const uaData = navigator.userAgentData;\n if (uaData != null && uaData.platform) {\n return uaData.platform;\n }\n return navigator.platform;\n}\nfunction getUserAgent() {\n const uaData = navigator.userAgentData;\n if (uaData && Array.isArray(uaData.brands)) {\n return uaData.brands.map(_ref => {\n let {\n brand,\n version\n } = _ref;\n return brand + \"/\" + version;\n }).join(' ');\n }\n return navigator.userAgent;\n}\nfunction isVirtualPointerEvent(event) {\n return !isAndroid() && event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse' ||\n // iOS VoiceOver returns 0.333• for width/height.\n event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0;\n}\nfunction isSafari() {\n // Chrome DevTools does not complain about navigator.vendor\n return /apple/i.test(navigator.vendor);\n}\nfunction isAndroid() {\n const re = /android/i;\n return re.test(getPlatform()) || re.test(getUserAgent());\n}\nfunction isMac() {\n return getPlatform().toLowerCase().startsWith('mac') && !navigator.maxTouchPoints;\n}\nfunction isMouseLikePointerType(pointerType, strict) {\n // On some Linux machines with Chromium, mouse inputs return a `pointerType`\n // of \"pen\": https://github.com/floating-ui/floating-ui/issues/2015\n const values = ['mouse', 'pen'];\n if (!strict) {\n values.push('', undefined);\n }\n return values.includes(pointerType);\n}\nfunction isReactEvent(event) {\n return 'nativeEvent' in event;\n}\nfunction isRootElement(element) {\n return element.matches('html,body');\n}\nfunction getDocument(node) {\n return (node == null ? void 0 : node.ownerDocument) || document;\n}\nfunction isEventTargetWithin(event, node) {\n if (node == null) {\n return false;\n }\n if ('composedPath' in event) {\n return event.composedPath().includes(node);\n }\n\n // TS thinks `event` is of type never as it assumes all browsers support composedPath, but browsers without shadow dom don't\n const e = event;\n return e.target != null && node.contains(e.target);\n}\nfunction getTarget(event) {\n if ('composedPath' in event) {\n return event.composedPath()[0];\n }\n\n // TS thinks `event` is of type never as it assumes all browsers support\n // `composedPath()`, but browsers without shadow DOM don't.\n return event.target;\n}\nconst TYPEABLE_SELECTOR = \"input:not([type='hidden']):not([disabled]),\" + \"[contenteditable]:not([contenteditable='false']),textarea:not([disabled])\";\nfunction isTypeableElement(element) {\n return isHTMLElement(element) && element.matches(TYPEABLE_SELECTOR);\n}\n\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n return {\n ...rect,\n top: rect.y,\n left: rect.x,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n };\n}\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain positioning strategy.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition$1 = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n continue;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n ...rects.floating,\n x,\n y\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow$1 = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$map$so;\n const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: 0,\n crossAxis: 0,\n alignmentAxis: null,\n ...rawValue\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset$1 = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n const {\n x,\n y\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: diffCoords\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y\n }\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const overflowAvailableHeight = height - overflow[heightSide];\n const overflowAvailableWidth = width - overflow[widthSide];\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if (isYAxis) {\n const maximumClippingWidth = width - overflow.left - overflow.right;\n availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;\n } else {\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle$1(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentIFrame = win.frameElement;\n while (currentIFrame && offsetParent && offsetWin !== win) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle$1(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentIFrame = getWindow(currentIFrame).frameElement;\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n if (offsetParent === documentElement) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\nfunction getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle$1(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n ...clippingAncestor,\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle$1(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle$1(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n return getCssDimensions(element);\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n return element.offsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const window = getWindow(element);\n if (!isHTMLElement(element)) {\n return window;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {\n return window;\n }\n return offsetParent || getContainingBlock(element) || window;\n}\n\nconst getElementRects = async function (_ref) {\n let {\n reference,\n floating,\n strategy\n } = _ref;\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n return {\n reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),\n floating: {\n x: 0,\n y: 0,\n ...(await getDimensionsFn(floating))\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle$1(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n clearTimeout(timeoutId);\n io && io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const {\n left,\n top,\n width,\n height\n } = element.getBoundingClientRect();\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 100);\n } else {\n refresh(false, ratio);\n }\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle