{"version":3,"file":"static/js/29.db357da9.chunk.js","mappings":"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","sources":["../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/index.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js","../node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","../node_modules/@emotion/react/dist/emotion-react.browser.esm.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js","../node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js","../node_modules/memoize-one/dist/memoize-one.esm.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/createSuper.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/react-select/dist/useStateManager-7e1e8489.esm.js","../node_modules/react-select/dist/useCreatable-d97ef2c9.esm.js","../node_modules/react-select/creatable/dist/react-select-creatable.esm.js"],"sourcesContent":["'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","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 _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 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}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nexport default function _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\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 _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}","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}","export default function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\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 _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 _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}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(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 _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import * as React from 'react';\n\nvar syncFallback = function syncFallback(create) {\n return create();\n};\n\nvar useInsertionEffect = React['useInsertion' + 'Effect'] ? React['useInsertion' + 'Effect'] : false;\nvar useInsertionEffectAlwaysWithSyncFallback = useInsertionEffect || syncFallback;\nvar useInsertionEffectWithLayoutFallback = useInsertionEffect || React.useLayoutEffect;\n\nexport { useInsertionEffectAlwaysWithSyncFallback, useInsertionEffectWithLayoutFallback };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.3\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.3\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.2\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\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}","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 _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 objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\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\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","function 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 || (_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(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(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(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\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isWebKit };\n","import { rectToClientRect, autoPlacement as autoPlacement$1, shift as shift$1, flip as flip$1, size as size$1, hide as hide$1, arrow as arrow$1, inline as inline$1, limitShift as limitShift$1, computePosition as computePosition$1 } from '@floating-ui/core';\nexport { detectOverflow, offset } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle, isHTMLElement, isElement, getWindow, isWebKit, getDocumentElement, getNodeName, isOverflowElement, getNodeScroll, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle(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(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(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(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(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(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 const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\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(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(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(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(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