{"version":3,"file":"index-e62a6abb.js","sources":["../../node_modules/react/cjs/react.production.min.js","../../node_modules/react/index.js","../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../node_modules/react/jsx-runtime.js","../../node_modules/scheduler/cjs/scheduler.production.min.js","../../node_modules/scheduler/index.js","../../node_modules/react-dom/cjs/react-dom.production.min.js","../../node_modules/react-dom/index.js","../../node_modules/react-dom/client.js","../../node_modules/tslib/tslib.es6.mjs","../../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../node_modules/use-sidecar/dist/es2015/medium.js","../../node_modules/use-sidecar/dist/es2015/exports.js","../../node_modules/react-remove-scroll/dist/es2015/medium.js","../../node_modules/react-remove-scroll/dist/es2015/UI.js","../../node_modules/get-nonce/dist/es2015/index.js","../../node_modules/react-style-singleton/dist/es2015/singleton.js","../../node_modules/react-style-singleton/dist/es2015/hook.js","../../node_modules/react-style-singleton/dist/es2015/component.js","../../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../../node_modules/react-remove-scroll/dist/es2015/Combination.js","../../node_modules/@mantine/core/esm/core/utils/keys/keys.mjs","../../node_modules/@mantine/core/esm/core/utils/deep-merge/deep-merge.mjs","../../node_modules/@mantine/core/esm/core/utils/camel-to-kebab-case/camel-to-kebab-case.mjs","../../node_modules/@mantine/core/esm/core/utils/units-converters/px.mjs","../../node_modules/@mantine/core/esm/core/utils/units-converters/rem.mjs","../../node_modules/@mantine/core/esm/core/utils/filter-props/filter-props.mjs","../../node_modules/@mantine/core/esm/core/utils/is-number-like/is-number-like.mjs","../../node_modules/@mantine/core/esm/core/utils/is-element/is-element.mjs","../../node_modules/@mantine/core/esm/core/utils/create-safe-context/create-safe-context.mjs","../../node_modules/@mantine/core/esm/core/utils/create-optional-context/create-optional-context.mjs","../../node_modules/@mantine/core/esm/core/utils/get-safe-id/get-safe-id.mjs","../../node_modules/@mantine/core/esm/core/utils/find-element-ancestor/find-element-ancestor.mjs","../../node_modules/@mantine/core/esm/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.mjs","../../node_modules/@mantine/core/esm/core/utils/get-default-z-index/get-default-z-index.mjs","../../node_modules/@mantine/core/esm/core/utils/noop/noop.mjs","../../node_modules/@mantine/core/esm/core/utils/close-on-escape/close-on-escape.mjs","../../node_modules/@mantine/core/esm/core/utils/get-size/get-size.mjs","../../node_modules/@mantine/core/esm/core/utils/create-event-handler/create-event-handler.mjs","../../node_modules/@mantine/core/esm/core/utils/get-breakpoint-value/get-breakpoint-value.mjs","../../node_modules/@mantine/core/esm/core/utils/get-sorted-breakpoints/get-sorted-breakpoints.mjs","../../node_modules/@mantine/core/esm/core/utils/get-base-value/get-base-value.mjs","../../node_modules/@mantine/core/esm/core/utils/get-context-item-index/get-context-item-index.mjs","../../node_modules/@mantine/core/esm/core/utils/use-hovered/use-hovered.mjs","../../node_modules/@mantine/core/esm/core/utils/create-use-external-events/create-use-external-events.mjs","../../node_modules/@mantine/core/esm/core/styles-api/create-vars-resolver/create-vars-resolver.mjs","../../node_modules/clsx/dist/clsx.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/resolve-class-names/resolve-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/resolve-styles/resolve-styles.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/default-colors.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/get-primary-shade/get-primary-shade.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/parse-theme-color/parse-theme-color.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/get-theme-color/get-theme-color.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/get-gradient/get-gradient.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/to-rgba/to-rgba.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/darken/darken.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/rgba/rgba.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/default-theme.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-global-class-names/get-global-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-static-class-names/get-static-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-theme-class-names/get-theme-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-variant-class-name/get-variant-class-name.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-root-class-name/get-root-class-name.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-selector-class-name/get-selector-class-name.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-resolved-class-names/get-resolved-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-options-class-names/get-options-class-names.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-class-name/get-class-name.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/get-theme-styles/get-theme-styles.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/resolve-style/resolve-style.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/resolve-vars/merge-vars.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/resolve-vars/resolve-vars.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/get-style/get-style.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/Mantine.context.mjs","../../node_modules/@mantine/core/esm/core/styles-api/use-styles/use-styles.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/suppress-nextjs-warning.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-scheme-managers/is-mantine-color-scheme.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/color-scheme-managers/local-storage-manager.mjs","../../node_modules/@mantine/hooks/esm/use-callback-ref/use-callback-ref.mjs","../../node_modules/@mantine/hooks/esm/use-debounced-callback/use-debounced-callback.mjs","../../node_modules/@mantine/hooks/esm/use-click-outside/use-click-outside.mjs","../../node_modules/@mantine/hooks/esm/use-clipboard/use-clipboard.mjs","../../node_modules/@mantine/hooks/esm/use-media-query/use-media-query.mjs","../../node_modules/@mantine/hooks/esm/utils/clamp/clamp.mjs","../../node_modules/@mantine/hooks/esm/use-isomorphic-effect/use-isomorphic-effect.mjs","../../node_modules/@mantine/hooks/esm/use-did-update/use-did-update.mjs","../../node_modules/@mantine/hooks/esm/use-focus-return/use-focus-return.mjs","../../node_modules/@mantine/hooks/esm/use-focus-trap/tabbable.mjs","../../node_modules/@mantine/hooks/esm/use-focus-trap/scope-tab.mjs","../../node_modules/@mantine/hooks/esm/utils/random-id/random-id.mjs","../../node_modules/@mantine/hooks/esm/use-focus-trap/create-aria-hider.mjs","../../node_modules/@mantine/hooks/esm/use-focus-trap/use-focus-trap.mjs","../../node_modules/@mantine/hooks/esm/use-force-update/use-force-update.mjs","../../node_modules/@mantine/hooks/esm/use-id/use-react-id.mjs","../../node_modules/@mantine/hooks/esm/use-id/use-id.mjs","../../node_modules/@mantine/hooks/esm/use-list-state/use-list-state.mjs","../../node_modules/@mantine/hooks/esm/use-window-event/use-window-event.mjs","../../node_modules/@mantine/hooks/esm/use-merged-ref/use-merged-ref.mjs","../../node_modules/@mantine/hooks/esm/use-move/use-move.mjs","../../node_modules/@mantine/hooks/esm/use-uncontrolled/use-uncontrolled.mjs","../../node_modules/@mantine/hooks/esm/utils/range/range.mjs","../../node_modules/@mantine/hooks/esm/use-pagination/use-pagination.mjs","../../node_modules/@mantine/hooks/esm/use-reduced-motion/use-reduced-motion.mjs","../../node_modules/@mantine/hooks/esm/use-resize-observer/use-resize-observer.mjs","../../node_modules/@mantine/hooks/esm/use-disclosure/use-disclosure.mjs","../../node_modules/@mantine/hooks/esm/use-timeout/use-timeout.mjs","../../node_modules/@mantine/hooks/esm/use-eye-dropper/use-eye-dropper.mjs","../../node_modules/@mantine/hooks/esm/utils/upper-first/upper-first.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/use-respect-reduce-motion/use-respect-reduce-motion.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/convert-css-variables/css-variables-object-to-string.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/convert-css-variables/wrap-with-selector.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/convert-css-variables/convert-css-variables.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineCssVariables/default-css-variables-resolver.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineCssVariables/get-merged-variables.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineCssVariables/remove-default-variables.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineClasses/MantineClasses.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/MantineProvider.mjs","../../node_modules/@mantine/core/esm/core/MantineProvider/use-props/use-props.mjs","../../node_modules/@mantine/core/esm/core/InlineStyles/css-object-to-string/css-object-to-string.mjs","../../node_modules/@mantine/core/esm/core/InlineStyles/styles-to-string/styles-to-string.mjs","../../node_modules/@mantine/core/esm/core/InlineStyles/InlineStyles.mjs","../../node_modules/@mantine/core/esm/core/Box/use-random-classname/use-random-classname.mjs","../../node_modules/@mantine/core/esm/core/Box/get-style-object/get-style-object.mjs","../../node_modules/@mantine/core/esm/core/Box/get-box-style/get-box-style.mjs","../../node_modules/@mantine/core/esm/core/Box/get-box-mod/get-box-mod.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/color-resolver/color-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/font-size-resolver/font-size-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/spacing-resolver/spacing-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/identity-resolver/identity-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/size-resolver/size-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/line-height-resolver/line-height-resolver.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/resolvers/index.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/parse-style-props/sort-media-queries.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/parse-style-props/parse-style-props.mjs","../../node_modules/@mantine/core/esm/core/Box/style-props/style-props-data.mjs","../../node_modules/@mantine/core/esm/core/factory/create-polymorphic-component.mjs","../../node_modules/@mantine/core/esm/core/Box/Box.mjs","../../node_modules/@mantine/core/esm/core/factory/factory.mjs","../../node_modules/@mantine/core/esm/core/factory/polymorphic-factory.mjs","../../node_modules/@mantine/core/esm/core/DirectionProvider/DirectionProvider.mjs","../../node_modules/@mantine/core/esm/components/Collapse/use-collapse.mjs","../../node_modules/@mantine/core/esm/components/Collapse/Collapse.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.context.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/use-resize-observer.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/compose-event-handlers.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/get-thumb-ratio.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/get-thumb-size.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/is-scrolling-within-scrollbar-bounds.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/to-int.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/linear-scale.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/get-thumb-offset-from-scroll.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/get-scroll-position-from-pointer.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.module.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/utils/add-unlinked-scroll-listener.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.mjs","../../node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.mjs","../../node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.module.mjs","../../node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.mjs","../../node_modules/@mantine/core/esm/components/Paper/Paper.module.mjs","../../node_modules/@mantine/core/esm/components/Paper/Paper.mjs","../../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../../node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.mjs","../../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../../node_modules/@floating-ui/react/dist/floating-ui.react.esm.js","../../node_modules/@mantine/core/esm/components/Floating/use-floating-auto-update.mjs","../../node_modules/@mantine/core/esm/components/Popover/use-popover.mjs","../../node_modules/@mantine/core/esm/components/Popover/Popover.context.mjs","../../node_modules/@mantine/core/esm/components/Popover/PopoverTarget/PopoverTarget.mjs","../../node_modules/@mantine/core/esm/components/Popover/Popover.module.mjs","../../node_modules/@mantine/core/esm/components/Portal/Portal.mjs","../../node_modules/@mantine/core/esm/components/Portal/OptionalPortal.mjs","../../node_modules/@mantine/core/esm/components/Transition/transitions.mjs","../../node_modules/@mantine/core/esm/components/Transition/get-transition-styles/get-transition-styles.mjs","../../node_modules/@mantine/core/esm/components/Transition/use-transition.mjs","../../node_modules/@mantine/core/esm/components/Transition/Transition.mjs","../../node_modules/@mantine/core/esm/components/FocusTrap/FocusTrap.mjs","../../node_modules/@mantine/core/esm/components/Floating/FloatingArrow/get-arrow-position-styles.mjs","../../node_modules/@mantine/core/esm/components/Floating/FloatingArrow/FloatingArrow.mjs","../../node_modules/@mantine/core/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs","../../node_modules/@mantine/core/esm/components/Floating/get-floating-position/get-floating-position.mjs","../../node_modules/@mantine/core/esm/components/Popover/Popover.mjs","../../node_modules/@mantine/core/esm/components/ActionIcon/ActionIcon.module.mjs","../../node_modules/@mantine/core/esm/components/ActionIcon/ActionIconGroup/ActionIconGroup.mjs","../../node_modules/@mantine/core/esm/components/Loader/Loader.module.mjs","../../node_modules/@mantine/core/esm/components/Loader/loaders/Bars.mjs","../../node_modules/@mantine/core/esm/components/Loader/loaders/Oval.mjs","../../node_modules/@mantine/core/esm/components/Loader/loaders/Dots.mjs","../../node_modules/@mantine/core/esm/components/Loader/Loader.mjs","../../node_modules/@mantine/core/esm/components/ActionIcon/ActionIcon.mjs","../../node_modules/@mantine/core/esm/components/CloseButton/CloseIcon.mjs","../../node_modules/@mantine/core/esm/components/CloseButton/CloseButton.module.mjs","../../node_modules/@mantine/core/esm/components/CloseButton/CloseButton.mjs","../../node_modules/@mantine/core/esm/components/Group/filter-falsy-children/filter-falsy-children.mjs","../../node_modules/@mantine/core/esm/components/Group/Group.module.mjs","../../node_modules/@mantine/core/esm/components/Group/Group.mjs","../../node_modules/@mantine/core/esm/components/Overlay/Overlay.module.mjs","../../node_modules/@mantine/core/esm/components/Overlay/Overlay.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBase.context.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/use-lock-scroll.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/use-modal.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBase.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/use-modal-body-id.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBase.module.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseBody.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseCloseButton.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseContent.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseHeader.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/use-modal-transition.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseOverlay.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/use-modal-title-id.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/ModalBaseTitle.mjs","../../node_modules/@mantine/core/esm/components/ModalBase/NativeScrollArea.mjs","../../node_modules/@mantine/core/esm/components/Input/InputWrapper.context.mjs","../../node_modules/@mantine/core/esm/components/Input/Input.module.mjs","../../node_modules/@mantine/core/esm/components/Input/InputLabel/InputLabel.mjs","../../node_modules/@mantine/core/esm/components/Input/InputError/InputError.mjs","../../node_modules/@mantine/core/esm/components/Input/InputDescription/InputDescription.mjs","../../node_modules/@mantine/core/esm/components/Input/InputPlaceholder/InputPlaceholder.mjs","../../node_modules/@mantine/core/esm/components/Input/InputWrapper/get-input-offsets/get-input-offsets.mjs","../../node_modules/@mantine/core/esm/components/Input/InputWrapper/InputWrapper.mjs","../../node_modules/@mantine/core/esm/components/Input/Input.mjs","../../node_modules/@mantine/core/esm/components/Input/use-input-props.mjs","../../node_modules/@mantine/core/esm/components/InputBase/InputBase.mjs","../../node_modules/@mantine/core/esm/components/Flex/flex-props.mjs","../../node_modules/@mantine/core/esm/components/Flex/Flex.module.mjs","../../node_modules/@mantine/core/esm/components/Flex/Flex.mjs","../../node_modules/@mantine/core/esm/components/Accordion/AccordionChevron.mjs","../../node_modules/@mantine/core/esm/components/Accordion/Accordion.context.mjs","../../node_modules/@mantine/core/esm/components/Accordion/AccordionItem.context.mjs","../../node_modules/@mantine/core/esm/components/Accordion/Accordion.module.mjs","../../node_modules/@mantine/core/esm/components/Accordion/AccordionItem/AccordionItem.mjs","../../node_modules/@mantine/core/esm/components/Accordion/AccordionPanel/AccordionPanel.mjs","../../node_modules/@mantine/core/esm/components/Accordion/AccordionControl/AccordionControl.mjs","../../node_modules/@mantine/core/esm/components/Accordion/Accordion.mjs","../../node_modules/@mantine/core/esm/components/Affix/Affix.module.mjs","../../node_modules/@mantine/core/esm/components/Affix/Affix.mjs","../../node_modules/@mantine/core/esm/components/Alert/Alert.module.mjs","../../node_modules/@mantine/core/esm/components/Alert/Alert.mjs","../../node_modules/@mantine/core/esm/components/Anchor/Anchor.module.mjs","../../node_modules/@mantine/core/esm/components/Text/Text.module.mjs","../../node_modules/@mantine/core/esm/components/Text/Text.mjs","../../node_modules/@mantine/core/esm/components/Anchor/Anchor.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShell.context.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShell.module.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellNavbar/AppShellNavbar.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellHeader/AppShellHeader.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellFooter/AppShellFooter.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellAside/AppShellAside.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMain/AppShellMain.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellSection/AppShellSection.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/is-responsive-size/is-responsive-size.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/is-primitive-size/is-primitive-size.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/get-base-size/get-base-size.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/get-padding-value/get-padding-value.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/assign-padding-variables/assign-padding-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/get-variables/get-variables.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.mjs","../../node_modules/@mantine/core/esm/components/AppShell/use-resizing/use-resizing.mjs","../../node_modules/@mantine/core/esm/components/AppShell/AppShell.mjs","../../node_modules/@mantine/core/esm/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.mjs","../../node_modules/@mantine/core/esm/components/Combobox/get-options-lockup/get-options-lockup.mjs","../../node_modules/@mantine/core/esm/components/Combobox/use-combobox/get-index/get-index.mjs","../../node_modules/@mantine/core/esm/components/Combobox/use-combobox/use-combobox.mjs","../../node_modules/@mantine/core/esm/components/Combobox/Combobox.context.mjs","../../node_modules/@mantine/core/esm/components/Combobox/use-combobox-target-props/use-combobox-target-props.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxTarget/ComboboxTarget.mjs","../../node_modules/@mantine/core/esm/components/Combobox/Combobox.module.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxDropdown/ComboboxDropdown.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxOptions/ComboboxOptions.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxOption/ComboboxOption.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxSearch/ComboboxSearch.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxEmpty/ComboboxEmpty.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxChevron/ComboboxChevron.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxFooter/ComboboxFooter.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxHeader/ComboboxHeader.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxGroup/ComboboxGroup.mjs","../../node_modules/@mantine/core/esm/components/Combobox/ComboboxClearButton/ComboboxClearButton.mjs","../../node_modules/@mantine/core/esm/components/Combobox/Combobox.mjs","../../node_modules/@mantine/core/esm/components/Combobox/OptionsDropdown/is-options-group.mjs","../../node_modules/@mantine/core/esm/components/Combobox/OptionsDropdown/default-options-filter.mjs","../../node_modules/@mantine/core/esm/components/Combobox/OptionsDropdown/is-empty-combobox-data.mjs","../../node_modules/@mantine/core/esm/components/Combobox/OptionsDropdown/validate-options.mjs","../../node_modules/@mantine/core/esm/components/Checkbox/CheckIcon.mjs","../../node_modules/@mantine/core/esm/components/Combobox/OptionsDropdown/OptionsDropdown.mjs","../../node_modules/@mantine/core/esm/components/Avatar/AvatarGroup/AvatarGroup.context.mjs","../../node_modules/@mantine/core/esm/components/Avatar/Avatar.module.mjs","../../node_modules/@mantine/core/esm/components/Avatar/AvatarGroup/AvatarGroup.mjs","../../node_modules/@mantine/core/esm/components/Avatar/AvatarPlaceholderIcon.mjs","../../node_modules/@mantine/core/esm/components/Avatar/Avatar.mjs","../../node_modules/@mantine/core/esm/components/Badge/Badge.module.mjs","../../node_modules/@mantine/core/esm/components/Badge/Badge.mjs","../../node_modules/@mantine/core/esm/components/Breadcrumbs/Breadcrumbs.module.mjs","../../node_modules/@mantine/core/esm/components/Breadcrumbs/Breadcrumbs.mjs","../../node_modules/@mantine/core/esm/components/Button/Button.module.mjs","../../node_modules/@mantine/core/esm/components/Button/ButtonGroup/ButtonGroup.mjs","../../node_modules/@mantine/core/esm/components/Button/Button.mjs","../../node_modules/@mantine/core/esm/components/Card/Card.context.mjs","../../node_modules/@mantine/core/esm/components/Card/Card.module.mjs","../../node_modules/@mantine/core/esm/components/Card/CardSection/CardSection.mjs","../../node_modules/@mantine/core/esm/components/Card/Card.mjs","../../node_modules/@mantine/core/esm/components/Center/Center.module.mjs","../../node_modules/@mantine/core/esm/components/Center/Center.mjs","../../node_modules/@mantine/core/esm/components/Checkbox/CheckboxGroup.context.mjs","../../node_modules/@mantine/core/esm/components/InputsGroupFieldset/InputsGroupFieldset.mjs","../../node_modules/@mantine/core/esm/components/Checkbox/CheckboxGroup/CheckboxGroup.mjs","../../node_modules/@mantine/core/esm/components/Checkbox/Checkbox.module.mjs","../../node_modules/@mantine/core/esm/components/InlineInput/InlineInput.module.mjs","../../node_modules/@mantine/core/esm/components/InlineInput/InlineInput.mjs","../../node_modules/@mantine/core/esm/components/Checkbox/Checkbox.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.context.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/Thumb/Thumb.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/ColorSlider/ColorSlider.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/converters/parsers.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/AlphaSlider/AlphaSlider.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/HueSlider/HueSlider.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/converters/converters.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/Saturation/Saturation.mjs","../../node_modules/@mantine/core/esm/components/ColorSwatch/ColorSwatch.module.mjs","../../node_modules/@mantine/core/esm/components/ColorSwatch/ColorSwatch.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/Swatches/Swatches.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.module.mjs","../../node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.mjs","../../node_modules/@mantine/core/esm/components/ColorInput/EyeDropperIcon.mjs","../../node_modules/@mantine/core/esm/components/ColorInput/ColorInput.module.mjs","../../node_modules/@mantine/core/esm/components/ColorInput/ColorInput.mjs","../../node_modules/@mantine/core/esm/components/Container/Container.module.mjs","../../node_modules/@mantine/core/esm/components/Container/Container.mjs","../../node_modules/@mantine/core/esm/components/CopyButton/CopyButton.mjs","../../node_modules/@mantine/core/esm/components/Dialog/Dialog.module.mjs","../../node_modules/@mantine/core/esm/components/Dialog/Dialog.mjs","../../node_modules/@mantine/core/esm/components/Divider/Divider.module.mjs","../../node_modules/@mantine/core/esm/components/Divider/Divider.mjs","../../node_modules/@mantine/core/esm/components/Drawer/Drawer.context.mjs","../../node_modules/@mantine/core/esm/components/Drawer/Drawer.module.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerRoot.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerBody.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerCloseButton.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerOverlay.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerContent.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerTitle.mjs","../../node_modules/@mantine/core/esm/components/Drawer/DrawerHeader.mjs","../../node_modules/@mantine/core/esm/components/Drawer/Drawer.mjs","../../node_modules/@mantine/core/esm/components/FileButton/FileButton.mjs","../../node_modules/@mantine/core/esm/components/FileInput/FileInput.mjs","../../node_modules/@mantine/core/esm/components/Floating/use-delayed-hover.mjs","../../node_modules/@mantine/core/esm/components/Image/Image.module.mjs","../../node_modules/@mantine/core/esm/components/Image/Image.mjs","../../node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js","../../node_modules/use-latest/dist/use-latest.esm.js","../../node_modules/use-composed-ref/dist/use-composed-ref.esm.js","../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.browser.esm.js","../../node_modules/@mantine/core/esm/components/Textarea/Textarea.mjs","../../node_modules/@mantine/core/esm/components/List/List.context.mjs","../../node_modules/@mantine/core/esm/components/List/List.module.mjs","../../node_modules/@mantine/core/esm/components/List/ListItem/ListItem.mjs","../../node_modules/@mantine/core/esm/components/List/List.mjs","../../node_modules/@mantine/core/esm/components/LoadingOverlay/LoadingOverlay.module.mjs","../../node_modules/@mantine/core/esm/components/LoadingOverlay/LoadingOverlay.mjs","../../node_modules/@mantine/core/esm/components/Menu/Menu.module.mjs","../../node_modules/@mantine/core/esm/components/Menu/Menu.context.mjs","../../node_modules/@mantine/core/esm/components/Menu/MenuDivider/MenuDivider.mjs","../../node_modules/@mantine/core/esm/components/Menu/MenuDropdown/MenuDropdown.mjs","../../node_modules/@mantine/core/esm/components/Menu/MenuItem/MenuItem.mjs","../../node_modules/@mantine/core/esm/components/Menu/MenuLabel/MenuLabel.mjs","../../node_modules/@mantine/core/esm/components/Menu/MenuTarget/MenuTarget.mjs","../../node_modules/@mantine/core/esm/components/Menu/Menu.mjs","../../node_modules/@mantine/core/esm/components/Modal/Modal.context.mjs","../../node_modules/@mantine/core/esm/components/Modal/Modal.module.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalRoot.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalBody.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalCloseButton.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalOverlay.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalContent.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalTitle.mjs","../../node_modules/@mantine/core/esm/components/Modal/ModalHeader.mjs","../../node_modules/@mantine/core/esm/components/Modal/Modal.mjs","../../node_modules/@mantine/core/esm/components/Pill/PillGroup.context.mjs","../../node_modules/@mantine/core/esm/components/PillsInput/PillsInput.context.mjs","../../node_modules/@mantine/core/esm/components/Pill/Pill.module.mjs","../../node_modules/@mantine/core/esm/components/Pill/PillGroup/PillGroup.mjs","../../node_modules/@mantine/core/esm/components/Pill/Pill.mjs","../../node_modules/@mantine/core/esm/components/PillsInput/PillsInput.module.mjs","../../node_modules/@mantine/core/esm/components/PillsInput/PillsInputField/PillsInputField.mjs","../../node_modules/@mantine/core/esm/components/PillsInput/PillsInput.mjs","../../node_modules/@mantine/core/esm/components/Notification/Notification.module.mjs","../../node_modules/@mantine/core/esm/components/Notification/Notification.mjs","../../node_modules/react-number-format/dist/react-number-format.es.js","../../node_modules/@mantine/core/esm/components/NumberFormatter/NumberFormatter.mjs","../../node_modules/@mantine/core/esm/components/NumberInput/NumberInputChevron.mjs","../../node_modules/@mantine/core/esm/components/NumberInput/NumberInput.module.mjs","../../node_modules/@mantine/core/esm/components/NumberInput/NumberInput.mjs","../../node_modules/@mantine/core/esm/components/Pagination/Pagination.context.mjs","../../node_modules/@mantine/core/esm/components/Pagination/Pagination.module.mjs","../../node_modules/@mantine/core/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs","../../node_modules/@mantine/core/esm/components/Pagination/PaginationControl/PaginationControl.mjs","../../node_modules/@mantine/core/esm/components/Pagination/Pagination.icons.mjs","../../node_modules/@mantine/core/esm/components/Pagination/PaginationDots/PaginationDots.mjs","../../node_modules/@mantine/core/esm/components/Pagination/PaginationEdges/PaginationEdges.mjs","../../node_modules/@mantine/core/esm/components/Pagination/PaginationItems/PaginationItems.mjs","../../node_modules/@mantine/core/esm/components/Pagination/Pagination.mjs","../../node_modules/@mantine/core/esm/components/PasswordInput/PasswordToggleIcon.mjs","../../node_modules/@mantine/core/esm/components/PasswordInput/PasswordInput.module.mjs","../../node_modules/@mantine/core/esm/components/PasswordInput/PasswordInput.mjs","../../node_modules/@mantine/core/esm/components/Radio/RadioIcon.mjs","../../node_modules/@mantine/core/esm/components/Radio/RadioGroup.context.mjs","../../node_modules/@mantine/core/esm/components/Radio/RadioGroup/RadioGroup.mjs","../../node_modules/@mantine/core/esm/components/Radio/Radio.module.mjs","../../node_modules/@mantine/core/esm/components/Radio/Radio.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/Tooltip.module.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/TooltipFloating/use-floating-tooltip.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/TooltipFloating/TooltipFloating.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/TooltipGroup/TooltipGroup.context.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/TooltipGroup/TooltipGroup.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/use-tooltip.mjs","../../node_modules/@mantine/core/esm/components/Transition/get-transition-props/get-transition-props.mjs","../../node_modules/@mantine/core/esm/components/Tooltip/Tooltip.mjs","../../node_modules/@mantine/core/esm/components/SegmentedControl/get-root-padding.mjs","../../node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.module.mjs","../../node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.mjs","../../node_modules/@mantine/core/esm/components/Select/Select.mjs","../../node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGridVariables.mjs","../../node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGrid.module.mjs","../../node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGrid.mjs","../../node_modules/@mantine/core/esm/components/Skeleton/Skeleton.module.mjs","../../node_modules/@mantine/core/esm/components/Skeleton/Skeleton.mjs","../../node_modules/@mantine/core/esm/components/Spoiler/Spoiler.module.mjs","../../node_modules/@mantine/core/esm/components/Spoiler/Spoiler.mjs","../../node_modules/@mantine/core/esm/components/Stack/Stack.module.mjs","../../node_modules/@mantine/core/esm/components/Stack/Stack.mjs","../../node_modules/@mantine/core/esm/components/Stepper/Stepper.context.mjs","../../node_modules/@mantine/core/esm/components/Stepper/Stepper.module.mjs","../../node_modules/@mantine/core/esm/components/Stepper/StepperStep/StepperStep.mjs","../../node_modules/@mantine/core/esm/components/Stepper/StepperCompleted/StepperCompleted.mjs","../../node_modules/@mantine/core/esm/components/Stepper/Stepper.mjs","../../node_modules/@mantine/core/esm/components/Table/Table.context.mjs","../../node_modules/@mantine/core/esm/components/Table/Table.module.mjs","../../node_modules/@mantine/core/esm/components/Table/Table.components.mjs","../../node_modules/@mantine/core/esm/components/Table/TableDataRenderer.mjs","../../node_modules/@mantine/core/esm/components/Table/TableScrollContainer.mjs","../../node_modules/@mantine/core/esm/components/Table/Table.mjs","../../node_modules/@mantine/core/esm/components/TagsInput/get-splitted-tags.mjs","../../node_modules/@mantine/core/esm/components/TagsInput/filter-picked-tags.mjs","../../node_modules/@mantine/core/esm/components/TagsInput/TagsInput.mjs","../../node_modules/@mantine/core/esm/components/TextInput/TextInput.mjs","../../node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.module.mjs","../../node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.mjs","../../node_modules/@mantine/core/esm/components/Timeline/Timeline.context.mjs","../../node_modules/@mantine/core/esm/components/Timeline/Timeline.module.mjs","../../node_modules/@mantine/core/esm/components/Timeline/TimelineItem/TimelineItem.mjs","../../node_modules/@mantine/core/esm/components/Timeline/Timeline.mjs","../../node_modules/@mantine/core/esm/components/Title/get-title-size.mjs","../../node_modules/@mantine/core/esm/components/Title/Title.module.mjs","../../node_modules/@mantine/core/esm/components/Title/Title.mjs","../../node_modules/@remix-run/router/dist/router.js","../../node_modules/react-router/dist/index.js","../../node_modules/react-router-dom/dist/index.js","../../node_modules/fast-deep-equal/index.js","../../node_modules/@mantine/form/esm/filter-errors/filter-errors.mjs","../../node_modules/@mantine/form/esm/lists/clear-list-state.mjs","../../node_modules/@mantine/form/esm/form-index.mjs","../../node_modules/@mantine/form/esm/validate/should-validate-on-change.mjs","../../node_modules/klona/full/index.mjs","../../node_modules/@mantine/form/esm/paths/get-splitted-path.mjs","../../node_modules/@mantine/form/esm/paths/set-path.mjs","../../node_modules/@mantine/form/esm/paths/get-path.mjs","../../node_modules/@mantine/form/esm/validate/validate-values.mjs","../../node_modules/@mantine/form/esm/validate/validate-field-value.mjs","../../node_modules/@mantine/form/esm/paths/reorder-path.mjs","../../node_modules/@mantine/form/esm/lists/reorder-errors.mjs","../../node_modules/@mantine/form/esm/paths/remove-path.mjs","../../node_modules/@mantine/form/esm/lists/change-error-indices.mjs","../../node_modules/@mantine/form/esm/paths/insert-path.mjs","../../node_modules/@mantine/form/esm/get-status/get-status.mjs","../../node_modules/@mantine/form/esm/actions/actions.mjs","../../node_modules/@mantine/form/esm/get-input-on-change/get-input-on-change.mjs","../../node_modules/@mantine/form/esm/use-form.mjs","../../node_modules/@mantine/form/esm/validators/matches/matches.mjs","../../node_modules/@mantine/form/esm/validators/is-email/is-email.mjs","../../node_modules/@mantine/form/esm/validators/has-length/has-length.mjs","../../node_modules/@mantine/form/esm/validators/matches-field/matches-field.mjs","../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../node_modules/prop-types/factoryWithThrowingShims.js","../../node_modules/prop-types/index.js","../../node_modules/@tabler/icons-react/dist/esm/defaultAttributes.js","../../node_modules/@tabler/icons-react/dist/esm/createReactComponent.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconAffiliate.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconAlertCircle.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconAlertTriangle.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconArrowLeft.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconBolt.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconBrandOpenai.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconChartDots3.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconChevronDown.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCircleCheck.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCircleDashed.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCirclePlus.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCreditCard.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCurrencyEuro.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconCurrentLocation.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceGamepad.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconEdit.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconExclamationCircle.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconExternalLink.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconEye.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconFileText.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconFiles.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconHelpCircle.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconHexagon.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconHexagons.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconHome2.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconInfoCircle.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconLogout.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconMessage2.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconMessageChatbot.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconMessage.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconNotebook.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPackages.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPencil.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPhone.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerPlayFilled.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerStopFilled.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPlus.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconPointFilled.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconQuote.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconRefresh.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconRobot.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconRocket.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconSend.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconSettings.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconShare2.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconShieldLock.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconSpy.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconStethoscope.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconTargetArrow.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconTelescope.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconTrash.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconUsersGroup.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconVideo.js","../../node_modules/@tabler/icons-react/dist/esm/icons/IconX.js","../../src/utils.ts","../../src/api.ts","../../src/contexts/AuthContext.tsx","../../src/assets/maia-logo.svg","../../src/components/MAIALogo.tsx","../../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/dist/es/initReactI18next.js","../../node_modules/react-i18next/dist/es/context.js","../../node_modules/react-i18next/dist/es/useTranslation.js","../../src/routes/Login.tsx","../../src/components/UserMenu.tsx","../../src/components/LoggedHeader.tsx","../../src/components/DataTable.tsx","../../node_modules/react-timeago/es6/dateParser.js","../../node_modules/react-timeago/es6/defaultFormatter.js","../../node_modules/react-timeago/es6/index.js","../../node_modules/react-timeago/lib/formatters/buildFormatter.js","../../node_modules/react-timeago/lib/language-strings/en.js","../../node_modules/react-timeago/lib/language-strings/fr.js","../../node_modules/react-timeago/lib/language-strings/es.js","../../node_modules/react-timeago/lib/language-strings/de.js","../../node_modules/react-timeago/lib/language-strings/it.js","../../src/components/TimeAgoLocale.tsx","../../node_modules/mantine-datatable/dist/index.mjs","../../node_modules/@formkit/auto-animate/index.mjs","../../node_modules/@formkit/auto-animate/react/index.mjs","../../src/components/ProjectsDataTable.tsx","../../node_modules/engine.io-parser/build/esm/commons.js","../../node_modules/engine.io-parser/build/esm/encodePacket.browser.js","../../node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","../../node_modules/engine.io-parser/build/esm/decodePacket.browser.js","../../node_modules/engine.io-parser/build/esm/index.js","../../node_modules/@socket.io/component-emitter/index.mjs","../../node_modules/engine.io-client/build/esm/globalThis.browser.js","../../node_modules/engine.io-client/build/esm/util.js","../../node_modules/engine.io-client/build/esm/contrib/parseqs.js","../../node_modules/engine.io-client/build/esm/transport.js","../../node_modules/engine.io-client/build/esm/contrib/yeast.js","../../node_modules/engine.io-client/build/esm/contrib/has-cors.js","../../node_modules/engine.io-client/build/esm/transports/xmlhttprequest.browser.js","../../node_modules/engine.io-client/build/esm/transports/polling.js","../../node_modules/engine.io-client/build/esm/transports/websocket-constructor.browser.js","../../node_modules/engine.io-client/build/esm/transports/websocket.js","../../node_modules/engine.io-client/build/esm/transports/webtransport.js","../../node_modules/engine.io-client/build/esm/transports/index.js","../../node_modules/engine.io-client/build/esm/contrib/parseuri.js","../../node_modules/engine.io-client/build/esm/socket.js","../../node_modules/socket.io-client/build/esm/url.js","../../node_modules/socket.io-parser/build/esm/is-binary.js","../../node_modules/socket.io-parser/build/esm/binary.js","../../node_modules/socket.io-parser/build/esm/index.js","../../node_modules/socket.io-client/build/esm/on.js","../../node_modules/socket.io-client/build/esm/socket.js","../../node_modules/socket.io-client/build/esm/contrib/backo2.js","../../node_modules/socket.io-client/build/esm/manager.js","../../node_modules/socket.io-client/build/esm/index.js","../../src/contexts/SocketContext.tsx","../../src/components/PaginationControl.tsx","../../node_modules/@mantine/store/esm/store.mjs","../../node_modules/@mantine/notifications/esm/notifications.store.mjs","../../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../node_modules/react-transition-group/esm/config.js","../../node_modules/react-transition-group/esm/TransitionGroupContext.js","../../node_modules/react-transition-group/esm/utils/reflow.js","../../node_modules/react-transition-group/esm/Transition.js","../../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../../node_modules/react-transition-group/esm/utils/ChildMapping.js","../../node_modules/react-transition-group/esm/TransitionGroup.js","../../node_modules/@mantine/notifications/esm/get-auto-close/get-auto-close.mjs","../../node_modules/@mantine/notifications/esm/NotificationContainer.mjs","../../node_modules/@mantine/notifications/esm/get-notification-state-styles.mjs","../../node_modules/@mantine/notifications/esm/Notifications.module.mjs","../../node_modules/@mantine/notifications/esm/Notifications.mjs","../../src/hooks.ts","../../src/components/ProjectSearchBarAndFilter.tsx","../../src/routes/ProjectList.tsx","../../src/routes/ProjectListExplore.tsx","../../src/components/HelpAssistantChat.tsx","../../src/components/HelpAssistantChatWrapper.tsx","../../src/components/IconHelpAssistant.tsx","../../src/components/RequireLoggedIn.tsx","../../src/components/ProjectIntentSuggestionsModal.tsx","../../src/components/ProjectIntentDrawer.tsx","../../src/components/ProjectIntentsDataTable.tsx","../../src/routes/ProjectIntents.tsx","../../src/components/ProjectResponseAudioPlayer.tsx","../../node_modules/react-dropzone-esm/dist/esm/file.mjs","../../node_modules/react-dropzone-esm/dist/esm/file-selector.mjs","../../node_modules/react-dropzone-esm/dist/esm/attr-accept.mjs","../../node_modules/react-dropzone-esm/dist/esm/utils.mjs","../../node_modules/react-dropzone-esm/dist/esm/index.mjs","../../node_modules/@mantine/dropzone/esm/Dropzone.context.mjs","../../node_modules/@mantine/dropzone/esm/DropzoneStatus.mjs","../../node_modules/@mantine/dropzone/esm/Dropzone.module.mjs","../../node_modules/@mantine/dropzone/esm/Dropzone.mjs","../../node_modules/@mantine/dropzone/esm/DropzoneFullScreen.mjs","../../node_modules/@mantine/dropzone/esm/mime-types.mjs","../../node_modules/@mantine/dropzone/esm/index.mjs","../../src/components/MediaUpload.tsx","../../src/components/ProjectResponseDrawer.tsx","../../src/components/ProjectResponsesDataTable.tsx","../../src/routes/ProjectResponses.tsx","../../src/components/ProjectStoriesDataTable.tsx","../../src/components/ProjectStoryDrawer.tsx","../../src/routes/ProjectStories.tsx","../../src/components/CopyButton.tsx","../../node_modules/@mantine/modals/esm/context.mjs","../../node_modules/@mantine/modals/esm/use-modals/use-modals.mjs","../../node_modules/@mantine/modals/esm/ConfirmModal.mjs","../../node_modules/@mantine/modals/esm/reducer.mjs","../../node_modules/@mantine/modals/esm/events.mjs","../../node_modules/@mantine/modals/esm/ModalsProvider.mjs","../../src/components/SharedLinksDataTable.tsx","../../src/components/ProjectBuildRetriever.tsx","../../src/routes/ProjectShare.tsx","../../src/components/ProjectNavbarHeader.tsx","../../src/components/NavbarLink.tsx","../../src/layouts/ProjectLayout.tsx","../../src/layouts/CustomProjectLayout.tsx","../../src/layouts/DocumentsProjectLayout.tsx","../../src/routes/Project.tsx","../../src/components/ProjectBuildsDataTable.tsx","../../src/routes/ProjectBuilds.tsx","../../src/components/ProjectCustomBuildPlayer.tsx","../../src/components/ProjectDocumentBuildPlayer.tsx","../../src/routes/Shared.tsx","../../src/assets/phone.svg","../../src/assets/alexa.png","../../src/assets/telegram.svg","../../node_modules/react-countdown/dist/index.es.js","../../src/routes/ProjectDeployments.tsx","../../src/routes/ProjectTest.tsx","../../src/routes/ForgotPassword.tsx","../../src/routes/PasswordReset.tsx","../../src/components/ProjectConversationsDataTable.tsx","../../src/components/ProjectConversationDrawer.tsx","../../src/routes/ProjectSniffer.tsx","../../src/components/IconRadio.tsx","../../src/components/IconCheckbox.tsx","../../src/routes/ProjectCreate.tsx","../../src/routes/ProjectHome/Custom.tsx","../../src/routes/ProjectHome/Documents.tsx","../../src/routes/ProjectHome/index.tsx","../../__vite-browser-external","../../node_modules/pdfjs-dist/build/pdf.js","../../node_modules/react-pdf/dist/esm/pdfjs.js","../../node_modules/make-event-props/dist/esm/index.js","../../node_modules/make-cancellable-promise/dist/esm/index.js","../../node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../../node_modules/tiny-warning/dist/tiny-warning.esm.js","../../node_modules/react-pdf/dist/esm/DocumentContext.js","../../node_modules/react-pdf/dist/esm/Message.js","../../node_modules/react-pdf/dist/esm/LinkService.js","../../node_modules/react-pdf/dist/esm/PasswordResponses.js","../../node_modules/react-pdf/dist/esm/shared/utils.js","../../node_modules/react-pdf/dist/esm/shared/hooks/useResolver.js","../../node_modules/react-pdf/dist/esm/shared/propTypes.js","../../node_modules/react-pdf/dist/esm/Document.js","../../node_modules/react-pdf/dist/esm/shared/hooks/useDocumentContext.js","../../node_modules/merge-refs/dist/esm/index.js","../../node_modules/react-pdf/dist/esm/PageContext.js","../../node_modules/react-pdf/dist/esm/shared/constants.js","../../node_modules/react-pdf/dist/esm/shared/structTreeUtils.js","../../node_modules/react-pdf/dist/esm/StructTreeItem.js","../../node_modules/react-pdf/dist/esm/shared/hooks/usePageContext.js","../../node_modules/react-pdf/dist/esm/StructTree.js","../../node_modules/react-pdf/dist/esm/Page/PageCanvas.js","../../node_modules/react-pdf/dist/esm/Page/PageSVG.js","../../node_modules/react-pdf/dist/esm/Page/TextLayer.js","../../node_modules/react-pdf/dist/esm/Page/AnnotationLayer.js","../../node_modules/react-pdf/dist/esm/Page.js","../../node_modules/react-pdf/dist/esm/index.js","../../src/components/DocumentViewer.tsx","../../src/components/ProjectSourcesDataTable.tsx","../../src/components/ProjectSourceDrawer.tsx","../../src/routes/ProjectSources.tsx","../../src/routes/ProjectSettings/Custom.tsx","../../src/routes/ProjectSettings/Documents.tsx","../../src/routes/ProjectSettings/index.tsx","../../node_modules/@maia-cognitive/maia-videochat/lib/maia-videochat.es.js","../../src/routes/ProjectPlayground/Custom.tsx","../../src/routes/ProjectPlayground/Documents.tsx","../../src/routes/ProjectPlayground/index.tsx","../../src/layouts/SettingsLayout.tsx","../../src/routes/Settings.tsx","../../src/layouts/AdminLayout.tsx","../../src/routes/Admin.tsx","../../src/routes/AdminHome.tsx","../../src/components/UserDrawer.tsx","../../src/routes/AdminUsers.tsx","../../src/components/LanguageSwitcher.tsx","../../src/routes/SettingsAccount.tsx","../../src/routes/SettingsBilling.tsx","../../src/routes/NotFound.tsx","../../src/routes/AdminProjects.tsx","../../src/layouts/TeamSettingsLayout.tsx","../../src/routes/TeamSettings.tsx","../../src/routes/TeamSettingsTeam.tsx","../../src/routes/TeamSettingsMembers.tsx","../../src/routes/SettingsTeams.tsx","../../src/routes/TeamJoin.tsx","../../src/routes/TeamSettingsBilling.tsx","../../src/App.tsx","../../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/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/misc.js","../../node_modules/@sentry/utils/esm/stacktrace.js","../../node_modules/@sentry/utils/esm/supports.js","../../node_modules/@sentry/utils/esm/vendor/supportsHistory.js","../../node_modules/@sentry/utils/esm/instrument.js","../../node_modules/@sentry/utils/esm/env.js","../../node_modules/@sentry/utils/esm/node.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/core/esm/constants.js","../../node_modules/@sentry/core/esm/eventProcessors.js","../../node_modules/@sentry/core/esm/session.js","../../node_modules/@sentry/core/esm/scope.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/tracing/dynamicSamplingContext.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/envelope.js","../../node_modules/@sentry/core/esm/exports.js","../../node_modules/@sentry/core/esm/api.js","../../node_modules/@sentry/core/esm/integration.js","../../node_modules/@sentry/core/esm/utils/prepareEvent.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/version.js","../../node_modules/@sentry/core/esm/integrations/functiontostring.js","../../node_modules/@sentry/core/esm/integrations/inboundfilters.js","../../node_modules/@sentry/browser/esm/helpers.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/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/browser/request.js","../../node_modules/@sentry-internal/tracing/esm/browser/router.js","../../node_modules/@sentry-internal/tracing/esm/browser/browsertracing.js","../../node_modules/@sentry/react/esm/sdk.js","../../node_modules/i18next/dist/esm/i18next.js","../../node_modules/i18next-http-backend/esm/utils.js","../../node_modules/cross-fetch/dist/browser-ponyfill.js","../../node_modules/i18next-http-backend/esm/getFetch.cjs","../../node_modules/i18next-http-backend/esm/request.js","../../node_modules/i18next-http-backend/esm/index.js","../../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.js","../../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= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\n/**\n * Name of a CSS variable containing the amount of \"hidden\" scrollbar\n * ! might be undefined ! use will fallback!\n */\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","import { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return
...
\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue || null, function (newValue) { return refs.forEach(function (ref) { return assignRef(ref, newValue); }); });\n}\n","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = __rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, __assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { effectCar } from './medium';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing,\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, gapMode = props.gapMode, rest = __rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\", \"gapMode\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([ref, parentRef]);\n var containerProps = __assign(__assign({}, rest), callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode: gapMode })),\n forwardProps ? (React.cloneElement(React.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef }))) : (React.createElement(Container, __assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false,\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName,\n};\nexport { RemoveScroll };\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from './singleton';\n/**\n * creates a hook to control style singleton\n * @see {@link styleSingleton} for a safer component version\n * @example\n * ```tsx\n * const useStyle = styleHookSingleton();\n * ///\n * useStyle('body { overflow: hidden}');\n */\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles, isDynamic) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, [styles && isDynamic]);\n };\n};\n","import { styleHookSingleton } from './hook';\n/**\n * create a Component to add styles on demand\n * - styles are added when first instance is mounted\n * - styles are removed when the last instance is unmounted\n * - changing styles in runtime does nothing unless dynamic is set. But with multiple components that can lead to the undefined behavior\n */\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles, dynamic = _a.dynamic;\n useStyle(styles, dynamic);\n return null;\n };\n return Sheet;\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [parse(left), parse(top), parse(right)];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from './constants';\nimport { getGapWidth } from './utils';\nvar Style = styleSingleton();\n// important tip - once we measure scrollBar width and remove them\n// we could not repeat this operation\n// thus we are using style-singleton - only the first \"yet correct\" style will be applied.\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\".concat(noScrollbarsClassName, \" {\\n overflow: hidden \").concat(important, \";\\n padding-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n body {\\n overflow: hidden \").concat(important, \";\\n overscroll-behavior: contain;\\n \").concat([\n allowRelative && \"position: relative \".concat(important, \";\"),\n gapMode === 'margin' &&\n \"\\n padding-left: \".concat(left, \"px;\\n padding-top: \").concat(top, \"px;\\n padding-right: \").concat(right, \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n \"),\n gapMode === 'padding' && \"padding-right: \".concat(gap, \"px \").concat(important, \";\"),\n ]\n .filter(Boolean)\n .join(''), \"\\n }\\n \\n .\").concat(zeroRightClassName, \" {\\n right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" {\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(zeroRightClassName, \" .\").concat(zeroRightClassName, \" {\\n right: 0 \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" .\").concat(fullWidthClassName, \" {\\n margin-right: 0 \").concat(important, \";\\n }\\n \\n body {\\n \").concat(removedBarSizeVariable, \": \").concat(gap, \"px;\\n }\\n\");\n};\n/**\n * Removes page scrollbar and blocks page scroll when mounted\n */\nexport var RemoveScrollBar = function (props) {\n var noRelative = props.noRelative, noImportant = props.noImportant, _a = props.gapMode, gapMode = _a === void 0 ? 'margin' : _a;\n /*\n gap will be measured on every component mount\n however it will be used only by the \"first\" invocation\n due to singleton nature of d) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== ownerDocument.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [\n scrollTop,\n scrollHeight,\n clientHeight,\n ];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [\n scrollLeft,\n scrollWidth,\n clientWidth,\n ];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nvar getDirectionFactor = function (axis, direction) {\n /**\n * If the element's direction is rtl (right-to-left), then scrollLeft is 0 when the scrollbar is at its rightmost position,\n * and then increasingly negative as you scroll towards the end of the content.\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft\n */\n return axis === 'h' && direction === 'rtl' ? -1 : 1;\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var directionFactor = getDirectionFactor(axis, window.getComputedStyle(endTarget).direction);\n var delta = directionFactor * sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - directionFactor * position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n target = target.parentNode;\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n if (isDeltaPositive && ((noOverscroll && availableScroll === 0) || (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && availableScrollTop === 0) || (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { nonPassive } from './aggresiveCapture';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY] : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) { return x[0] === y[0] && x[1] === y[1]; };\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\".concat(id, \" {pointer-events: none;}\\n .allow-interactivity-\").concat(id, \" {pointer-events: all;}\\n\"); };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(styleSingleton)[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\".concat(id));\n var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\".concat(id)); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\".concat(id));\n allow_1.forEach(function (el) { return el.classList.remove(\"allow-interactivity-\".concat(id)); });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if ('touches' in event && event.touches.length === 2) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n // allow horizontal touch move on Range inputs. They will not cause any scroll\n if ('touches' in event && moveDirection === 'h' && target.type === 'range') {\n return false;\n }\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current && 'changedTouches' in event && (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) { return e.name === event.type && e.target === event.target && deltaCompare(e.delta, delta); })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n if (event.cancelable) {\n event.preventDefault();\n }\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0 ? shouldCancelEvent(event, shardNodes[0]) : !lastProps.current.noIsolation;\n if (shouldStop) {\n if (event.cancelable) {\n event.preventDefault();\n }\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove,\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { gapMode: props.gapMode }) : null));\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","'use client';\nfunction keys(object) {\n return Object.keys(object);\n}\n\nexport { keys };\n//# sourceMappingURL=keys.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction isObject(item) {\n return item && typeof item === \"object\" && !Array.isArray(item);\n}\nfunction deepMerge(target, source) {\n const result = __spreadValues({}, target);\n const _source = source;\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach((key) => {\n if (isObject(_source[key])) {\n if (!(key in target)) {\n result[key] = _source[key];\n } else {\n result[key] = deepMerge(result[key], _source[key]);\n }\n } else {\n result[key] = _source[key];\n }\n });\n }\n return result;\n}\n\nexport { deepMerge };\n//# sourceMappingURL=deep-merge.mjs.map\n","'use client';\nfunction camelToKebabCase(value) {\n return value.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`);\n}\n\nexport { camelToKebabCase };\n//# sourceMappingURL=camel-to-kebab-case.mjs.map\n","function getTransformedScaledValue(value) {\n var _a;\n if (typeof value !== \"string\" || !value.includes(\"var(--mantine-scale)\")) {\n return value;\n }\n return (_a = value.match(/^calc\\((.*?)\\)$/)) == null ? void 0 : _a[1].split(\"*\")[0].trim();\n}\nfunction px(value) {\n const transformedValue = getTransformedScaledValue(value);\n if (typeof transformedValue === \"number\") {\n return transformedValue;\n }\n if (typeof transformedValue === \"string\") {\n if (transformedValue.includes(\"calc\") || transformedValue.includes(\"var\")) {\n return transformedValue;\n }\n if (transformedValue.includes(\"px\")) {\n return Number(transformedValue.replace(\"px\", \"\"));\n }\n if (transformedValue.includes(\"rem\")) {\n return Number(transformedValue.replace(\"rem\", \"\")) * 16;\n }\n if (transformedValue.includes(\"em\")) {\n return Number(transformedValue.replace(\"em\", \"\")) * 16;\n }\n return Number(transformedValue);\n }\n return NaN;\n}\n\nexport { px };\n//# sourceMappingURL=px.mjs.map\n","function scaleRem(remValue) {\n return `calc(${remValue} * var(--mantine-scale))`;\n}\nfunction createConverter(units, { shouldScale = false } = {}) {\n function converter(value) {\n if (value === 0 || value === \"0\") {\n return \"0\";\n }\n if (typeof value === \"number\") {\n const val = `${value / 16}${units}`;\n return shouldScale ? scaleRem(val) : val;\n }\n if (typeof value === \"string\") {\n if (value.startsWith(\"calc(\") || value.startsWith(\"var(\")) {\n return value;\n }\n if (value.includes(\" \")) {\n return value.split(\" \").map((val) => converter(val)).join(\" \");\n }\n if (value.includes(units)) {\n return shouldScale ? scaleRem(value) : value;\n }\n const replaced = value.replace(\"px\", \"\");\n if (!Number.isNaN(Number(replaced))) {\n const val = `${Number(replaced) / 16}${units}`;\n return shouldScale ? scaleRem(val) : val;\n }\n }\n return value;\n }\n return converter;\n}\nconst rem = createConverter(\"rem\", { shouldScale: true });\nconst em = createConverter(\"em\");\n\nexport { em, rem };\n//# sourceMappingURL=rem.mjs.map\n","'use client';\nfunction filterProps(props) {\n return Object.keys(props).reduce((acc, key) => {\n if (props[key] !== void 0) {\n acc[key] = props[key];\n }\n return acc;\n }, {});\n}\n\nexport { filterProps };\n//# sourceMappingURL=filter-props.mjs.map\n","'use client';\nfunction isNumberLike(value) {\n if (typeof value === \"number\") {\n return true;\n }\n if (typeof value === \"string\") {\n if (value.startsWith(\"calc(\") || value.startsWith(\"var(\") || value.includes(\" \") && value.trim() !== \"\") {\n return true;\n }\n return /[0-9]/.test(value.trim().replace(\"-\", \"\")[0]);\n }\n return false;\n}\n\nexport { isNumberLike };\n//# sourceMappingURL=is-number-like.mjs.map\n","'use client';\nimport React from 'react';\n\nfunction isElement(value) {\n if (Array.isArray(value) || value === null) {\n return false;\n }\n if (typeof value === \"object\") {\n if (value.type === React.Fragment) {\n return false;\n }\n return true;\n }\n return false;\n}\n\nexport { isElement };\n//# sourceMappingURL=is-element.mjs.map\n","'use client';\nimport React, { createContext, useContext } from 'react';\n\nfunction createSafeContext(errorMessage) {\n const Context = createContext(null);\n const useSafeContext = () => {\n const ctx = useContext(Context);\n if (ctx === null) {\n throw new Error(errorMessage);\n }\n return ctx;\n };\n const Provider = ({ children, value }) => /* @__PURE__ */ React.createElement(Context.Provider, { value }, children);\n return [Provider, useSafeContext];\n}\n\nexport { createSafeContext };\n//# sourceMappingURL=create-safe-context.mjs.map\n","'use client';\nimport React, { createContext, useContext } from 'react';\n\nfunction createOptionalContext(initialValue = null) {\n const Context = createContext(initialValue);\n const useOptionalContext = () => useContext(Context);\n const Provider = ({ children, value }) => /* @__PURE__ */ React.createElement(Context.Provider, { value }, children);\n return [Provider, useOptionalContext];\n}\n\nexport { createOptionalContext };\n//# sourceMappingURL=create-optional-context.mjs.map\n","'use client';\nfunction getSafeId(uid, errorMessage) {\n return (value) => {\n if (typeof value !== \"string\" || value.trim().length === 0) {\n throw new Error(errorMessage);\n }\n return `${uid}-${value}`;\n };\n}\n\nexport { getSafeId };\n//# sourceMappingURL=get-safe-id.mjs.map\n","'use client';\nfunction findElementAncestor(element, selector) {\n let _element = element;\n while ((_element = _element.parentElement) && !_element.matches(selector))\n ;\n return _element;\n}\n\nexport { findElementAncestor };\n//# sourceMappingURL=find-element-ancestor.mjs.map\n","'use client';\nimport { findElementAncestor } from '../find-element-ancestor/find-element-ancestor.mjs';\n\nfunction getPreviousIndex(current, elements, loop) {\n for (let i = current - 1; i >= 0; i -= 1) {\n if (!elements[i].disabled) {\n return i;\n }\n }\n if (loop) {\n for (let i = elements.length - 1; i > -1; i -= 1) {\n if (!elements[i].disabled) {\n return i;\n }\n }\n }\n return current;\n}\nfunction getNextIndex(current, elements, loop) {\n for (let i = current + 1; i < elements.length; i += 1) {\n if (!elements[i].disabled) {\n return i;\n }\n }\n if (loop) {\n for (let i = 0; i < elements.length; i += 1) {\n if (!elements[i].disabled) {\n return i;\n }\n }\n }\n return current;\n}\nfunction onSameLevel(target, sibling, parentSelector) {\n return findElementAncestor(target, parentSelector) === findElementAncestor(sibling, parentSelector);\n}\nfunction createScopedKeydownHandler({\n parentSelector,\n siblingSelector,\n onKeyDown,\n loop = true,\n activateOnFocus = false,\n dir = \"rtl\",\n orientation\n}) {\n return (event) => {\n var _a;\n onKeyDown == null ? void 0 : onKeyDown(event);\n const elements = Array.from(\n ((_a = findElementAncestor(event.currentTarget, parentSelector)) == null ? void 0 : _a.querySelectorAll(\n siblingSelector\n )) || []\n ).filter((node) => onSameLevel(event.currentTarget, node, parentSelector));\n const current = elements.findIndex((el) => event.currentTarget === el);\n const _nextIndex = getNextIndex(current, elements, loop);\n const _previousIndex = getPreviousIndex(current, elements, loop);\n const nextIndex = dir === \"rtl\" ? _previousIndex : _nextIndex;\n const previousIndex = dir === \"rtl\" ? _nextIndex : _previousIndex;\n switch (event.key) {\n case \"ArrowRight\": {\n if (orientation === \"horizontal\") {\n event.stopPropagation();\n event.preventDefault();\n elements[nextIndex].focus();\n activateOnFocus && elements[nextIndex].click();\n }\n break;\n }\n case \"ArrowLeft\": {\n if (orientation === \"horizontal\") {\n event.stopPropagation();\n event.preventDefault();\n elements[previousIndex].focus();\n activateOnFocus && elements[previousIndex].click();\n }\n break;\n }\n case \"ArrowUp\": {\n if (orientation === \"vertical\") {\n event.stopPropagation();\n event.preventDefault();\n elements[_previousIndex].focus();\n activateOnFocus && elements[_previousIndex].click();\n }\n break;\n }\n case \"ArrowDown\": {\n if (orientation === \"vertical\") {\n event.stopPropagation();\n event.preventDefault();\n elements[_nextIndex].focus();\n activateOnFocus && elements[_nextIndex].click();\n }\n break;\n }\n case \"Home\": {\n event.stopPropagation();\n event.preventDefault();\n !elements[0].disabled && elements[0].focus();\n break;\n }\n case \"End\": {\n event.stopPropagation();\n event.preventDefault();\n const last = elements.length - 1;\n !elements[last].disabled && elements[last].focus();\n break;\n }\n }\n };\n}\n\nexport { createScopedKeydownHandler };\n//# sourceMappingURL=create-scoped-keydown-handler.mjs.map\n","'use client';\nconst elevations = {\n app: 100,\n modal: 200,\n popover: 300,\n overlay: 400,\n max: 9999\n};\nfunction getDefaultZIndex(level) {\n return elevations[level];\n}\n\nexport { getDefaultZIndex };\n//# sourceMappingURL=get-default-z-index.mjs.map\n","'use client';\nconst noop = () => {\n};\n\nexport { noop };\n//# sourceMappingURL=noop.mjs.map\n","'use client';\nimport { noop } from '../noop/noop.mjs';\n\nfunction closeOnEscape(callback, options = { active: true }) {\n if (typeof callback !== \"function\" || !options.active) {\n return options.onKeyDown || noop;\n }\n return (event) => {\n var _a;\n if (event.key === \"Escape\") {\n callback(event);\n (_a = options.onTrigger) == null ? void 0 : _a.call(options);\n }\n };\n}\n\nexport { closeOnEscape };\n//# sourceMappingURL=close-on-escape.mjs.map\n","'use client';\nimport { isNumberLike } from '../is-number-like/is-number-like.mjs';\nimport { rem } from '../units-converters/rem.mjs';\n\nfunction getSize(size, prefix = \"size\", convertToRem = true) {\n if (size === void 0) {\n return void 0;\n }\n return isNumberLike(size) ? convertToRem ? rem(size) : size : `var(--${prefix}-${size})`;\n}\nfunction getSpacing(size) {\n return getSize(size, \"mantine-spacing\");\n}\nfunction getRadius(size) {\n if (size === void 0) {\n return \"var(--mantine-radius-default)\";\n }\n return getSize(size, \"mantine-radius\");\n}\nfunction getFontSize(size) {\n return getSize(size, \"mantine-font-size\");\n}\nfunction getLineHeight(size) {\n return getSize(size, \"mantine-line-height\", false);\n}\nfunction getShadow(size) {\n if (!size) {\n return void 0;\n }\n return getSize(size, \"mantine-shadow\", false);\n}\n\nexport { getFontSize, getLineHeight, getRadius, getShadow, getSize, getSpacing };\n//# sourceMappingURL=get-size.mjs.map\n","'use client';\nfunction createEventHandler(parentEventHandler, eventHandler) {\n return (event) => {\n parentEventHandler == null ? void 0 : parentEventHandler(event);\n eventHandler == null ? void 0 : eventHandler(event);\n };\n}\n\nexport { createEventHandler };\n//# sourceMappingURL=create-event-handler.mjs.map\n","'use client';\nimport { px } from '../units-converters/px.mjs';\n\nfunction getBreakpointValue(breakpoint, theme) {\n if (breakpoint in theme.breakpoints) {\n return px(theme.breakpoints[breakpoint]);\n }\n return px(breakpoint);\n}\n\nexport { getBreakpointValue };\n//# sourceMappingURL=get-breakpoint-value.mjs.map\n","'use client';\nimport { getBreakpointValue } from '../get-breakpoint-value/get-breakpoint-value.mjs';\n\nfunction getSortedBreakpoints(breakpoints, theme) {\n const convertedBreakpoints = breakpoints.map((breakpoint) => ({\n value: breakpoint,\n px: getBreakpointValue(breakpoint, theme)\n }));\n convertedBreakpoints.sort((a, b) => a.px - b.px);\n return convertedBreakpoints;\n}\n\nexport { getSortedBreakpoints };\n//# sourceMappingURL=get-sorted-breakpoints.mjs.map\n","'use client';\nfunction getBaseValue(value) {\n if (typeof value === \"object\" && value !== null) {\n if (\"base\" in value) {\n return value.base;\n }\n return void 0;\n }\n return value;\n}\n\nexport { getBaseValue };\n//# sourceMappingURL=get-base-value.mjs.map\n","'use client';\nimport { findElementAncestor } from '../find-element-ancestor/find-element-ancestor.mjs';\n\nfunction getContextItemIndex(elementSelector, parentSelector, node) {\n var _a;\n if (!node) {\n return null;\n }\n return Array.from(\n ((_a = findElementAncestor(node, parentSelector)) == null ? void 0 : _a.querySelectorAll(elementSelector)) || []\n ).findIndex((element) => element === node);\n}\n\nexport { getContextItemIndex };\n//# sourceMappingURL=get-context-item-index.mjs.map\n","'use client';\nimport { useState } from 'react';\n\nfunction useHovered() {\n const [hovered, setHovered] = useState(-1);\n const resetHovered = () => setHovered(-1);\n return [hovered, { setHovered, resetHovered }];\n}\n\nexport { useHovered };\n//# sourceMappingURL=use-hovered.mjs.map\n","'use client';\nimport { useLayoutEffect, useEffect } from 'react';\n\nfunction dispatchEvent(type, detail) {\n window.dispatchEvent(new CustomEvent(type, { detail }));\n}\nconst useIsomorphicEffect = typeof window !== \"undefined\" ? useLayoutEffect : useEffect;\nfunction createUseExternalEvents(prefix) {\n function _useExternalEvents(events) {\n const handlers = Object.keys(events).reduce((acc, eventKey) => {\n acc[`${prefix}:${eventKey}`] = (event) => events[eventKey](event.detail);\n return acc;\n }, {});\n useIsomorphicEffect(() => {\n Object.keys(handlers).forEach((eventKey) => {\n window.removeEventListener(eventKey, handlers[eventKey]);\n window.addEventListener(eventKey, handlers[eventKey]);\n });\n return () => Object.keys(handlers).forEach((eventKey) => {\n window.removeEventListener(eventKey, handlers[eventKey]);\n });\n }, [handlers]);\n }\n function createEvent(event) {\n return (...payload) => dispatchEvent(`${prefix}:${String(event)}`, payload[0]);\n }\n return [_useExternalEvents, createEvent];\n}\n\nexport { createUseExternalEvents };\n//# sourceMappingURL=create-use-external-events.mjs.map\n","'use client';\nfunction createVarsResolver(resolver) {\n return resolver;\n}\n\nexport { createVarsResolver };\n//# sourceMappingURL=create-vars-resolver.mjs.map\n","function 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 {\n Object.entries(obj).forEach(([key, value]) => {\n if (merged[key]) {\n merged[key] = cx(merged[key], value);\n } else {\n merged[key] = value;\n }\n });\n });\n return merged;\n}\nfunction resolveClassNames({ theme, classNames, props, stylesCtx }) {\n const arrayClassNames = Array.isArray(classNames) ? classNames : [classNames];\n const resolvedClassNames = arrayClassNames.map(\n (item) => typeof item === \"function\" ? item(theme, props, stylesCtx) : item || EMPTY_CLASS_NAMES\n );\n return mergeClassNames(resolvedClassNames);\n}\n\nexport { resolveClassNames };\n//# sourceMappingURL=resolve-class-names.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction resolveStyles({ theme, styles, props, stylesCtx }) {\n const arrayStyles = Array.isArray(styles) ? styles : [styles];\n return arrayStyles.reduce((acc, style) => {\n if (typeof style === \"function\") {\n return __spreadValues(__spreadValues({}, acc), style(theme, props, stylesCtx));\n }\n return __spreadValues(__spreadValues({}, acc), style);\n }, {});\n}\n\nexport { resolveStyles };\n//# sourceMappingURL=resolve-styles.mjs.map\n","const DEFAULT_COLORS = {\n dark: [\n \"#C1C2C5\",\n \"#A6A7AB\",\n \"#909296\",\n \"#5c5f66\",\n \"#373A40\",\n \"#2C2E33\",\n \"#25262b\",\n \"#1A1B1E\",\n \"#141517\",\n \"#101113\"\n ],\n gray: [\n \"#f8f9fa\",\n \"#f1f3f5\",\n \"#e9ecef\",\n \"#dee2e6\",\n \"#ced4da\",\n \"#adb5bd\",\n \"#868e96\",\n \"#495057\",\n \"#343a40\",\n \"#212529\"\n ],\n red: [\n \"#fff5f5\",\n \"#ffe3e3\",\n \"#ffc9c9\",\n \"#ffa8a8\",\n \"#ff8787\",\n \"#ff6b6b\",\n \"#fa5252\",\n \"#f03e3e\",\n \"#e03131\",\n \"#c92a2a\"\n ],\n pink: [\n \"#fff0f6\",\n \"#ffdeeb\",\n \"#fcc2d7\",\n \"#faa2c1\",\n \"#f783ac\",\n \"#f06595\",\n \"#e64980\",\n \"#d6336c\",\n \"#c2255c\",\n \"#a61e4d\"\n ],\n grape: [\n \"#f8f0fc\",\n \"#f3d9fa\",\n \"#eebefa\",\n \"#e599f7\",\n \"#da77f2\",\n \"#cc5de8\",\n \"#be4bdb\",\n \"#ae3ec9\",\n \"#9c36b5\",\n \"#862e9c\"\n ],\n violet: [\n \"#f3f0ff\",\n \"#e5dbff\",\n \"#d0bfff\",\n \"#b197fc\",\n \"#9775fa\",\n \"#845ef7\",\n \"#7950f2\",\n \"#7048e8\",\n \"#6741d9\",\n \"#5f3dc4\"\n ],\n indigo: [\n \"#edf2ff\",\n \"#dbe4ff\",\n \"#bac8ff\",\n \"#91a7ff\",\n \"#748ffc\",\n \"#5c7cfa\",\n \"#4c6ef5\",\n \"#4263eb\",\n \"#3b5bdb\",\n \"#364fc7\"\n ],\n blue: [\n \"#e7f5ff\",\n \"#d0ebff\",\n \"#a5d8ff\",\n \"#74c0fc\",\n \"#4dabf7\",\n \"#339af0\",\n \"#228be6\",\n \"#1c7ed6\",\n \"#1971c2\",\n \"#1864ab\"\n ],\n cyan: [\n \"#e3fafc\",\n \"#c5f6fa\",\n \"#99e9f2\",\n \"#66d9e8\",\n \"#3bc9db\",\n \"#22b8cf\",\n \"#15aabf\",\n \"#1098ad\",\n \"#0c8599\",\n \"#0b7285\"\n ],\n teal: [\n \"#e6fcf5\",\n \"#c3fae8\",\n \"#96f2d7\",\n \"#63e6be\",\n \"#38d9a9\",\n \"#20c997\",\n \"#12b886\",\n \"#0ca678\",\n \"#099268\",\n \"#087f5b\"\n ],\n green: [\n \"#ebfbee\",\n \"#d3f9d8\",\n \"#b2f2bb\",\n \"#8ce99a\",\n \"#69db7c\",\n \"#51cf66\",\n \"#40c057\",\n \"#37b24d\",\n \"#2f9e44\",\n \"#2b8a3e\"\n ],\n lime: [\n \"#f4fce3\",\n \"#e9fac8\",\n \"#d8f5a2\",\n \"#c0eb75\",\n \"#a9e34b\",\n \"#94d82d\",\n \"#82c91e\",\n \"#74b816\",\n \"#66a80f\",\n \"#5c940d\"\n ],\n yellow: [\n \"#fff9db\",\n \"#fff3bf\",\n \"#ffec99\",\n \"#ffe066\",\n \"#ffd43b\",\n \"#fcc419\",\n \"#fab005\",\n \"#f59f00\",\n \"#f08c00\",\n \"#e67700\"\n ],\n orange: [\n \"#fff4e6\",\n \"#ffe8cc\",\n \"#ffd8a8\",\n \"#ffc078\",\n \"#ffa94d\",\n \"#ff922b\",\n \"#fd7e14\",\n \"#f76707\",\n \"#e8590c\",\n \"#d9480f\"\n ]\n};\n\nexport { DEFAULT_COLORS };\n//# sourceMappingURL=default-colors.mjs.map\n","'use client';\nfunction getPrimaryShade(theme, colorScheme) {\n if (typeof theme.primaryShade === \"number\") {\n return theme.primaryShade;\n }\n if (colorScheme === \"dark\") {\n return theme.primaryShade.dark;\n }\n return theme.primaryShade.light;\n}\n\nexport { getPrimaryShade };\n//# sourceMappingURL=get-primary-shade.mjs.map\n","'use client';\nimport { getPrimaryShade } from '../get-primary-shade/get-primary-shade.mjs';\n\nfunction parseThemeColor({\n color,\n theme,\n colorScheme\n}) {\n if (typeof color !== \"string\") {\n throw new Error(`[@mantine/core] Failed to parse color. Instead got ${typeof color}`);\n }\n if (color === \"white\" || color === \"black\") {\n return {\n color,\n value: color === \"white\" ? theme.white : theme.black,\n shade: void 0,\n isThemeColor: false,\n variable: `--mantine-color-${color}`\n };\n }\n const [_color, shade] = color.split(\".\");\n const colorShade = shade ? Number(shade) : void 0;\n const isThemeColor = _color in theme.colors;\n if (isThemeColor) {\n return {\n color: _color,\n value: colorShade !== void 0 ? theme.colors[_color][colorShade] : theme.colors[_color][getPrimaryShade(theme, colorScheme || \"light\")],\n shade: colorShade,\n isThemeColor,\n variable: shade ? `--mantine-color-${_color}-${colorShade}` : `--mantine-color-${_color}-filled`\n };\n }\n return {\n color,\n value: color,\n isThemeColor,\n shade: colorShade,\n variable: void 0\n };\n}\n\nexport { parseThemeColor };\n//# sourceMappingURL=parse-theme-color.mjs.map\n","'use client';\nimport { parseThemeColor } from '../parse-theme-color/parse-theme-color.mjs';\n\nfunction getThemeColor(color, theme) {\n const parsed = parseThemeColor({ color: color || theme.primaryColor, theme });\n return parsed.variable ? `var(${parsed.variable})` : color;\n}\n\nexport { getThemeColor };\n//# sourceMappingURL=get-theme-color.mjs.map\n","'use client';\nimport { getThemeColor } from '../get-theme-color/get-theme-color.mjs';\n\nfunction getGradient(gradient, theme) {\n const merged = {\n from: (gradient == null ? void 0 : gradient.from) || theme.defaultGradient.from,\n to: (gradient == null ? void 0 : gradient.to) || theme.defaultGradient.to,\n deg: (gradient == null ? void 0 : gradient.deg) || theme.defaultGradient.deg || 0\n };\n const fromColor = getThemeColor(merged.from, theme);\n const toColor = getThemeColor(merged.to, theme);\n return `linear-gradient(${merged.deg}deg, ${fromColor} 0%, ${toColor} 100%)`;\n}\n\nexport { getGradient };\n//# sourceMappingURL=get-gradient.mjs.map\n","function isHexColor(hex) {\n const HEX_REGEXP = /^#?([0-9A-F]{3}){1,2}$/i;\n return HEX_REGEXP.test(hex);\n}\nfunction hexToRgba(color) {\n let hexString = color.replace(\"#\", \"\");\n if (hexString.length === 3) {\n const shorthandHex = hexString.split(\"\");\n hexString = [\n shorthandHex[0],\n shorthandHex[0],\n shorthandHex[1],\n shorthandHex[1],\n shorthandHex[2],\n shorthandHex[2]\n ].join(\"\");\n }\n const parsed = parseInt(hexString, 16);\n const r = parsed >> 16 & 255;\n const g = parsed >> 8 & 255;\n const b = parsed & 255;\n return {\n r,\n g,\n b,\n a: 1\n };\n}\nfunction rgbStringToRgba(color) {\n const [r, g, b, a] = color.replace(/[^0-9,.]/g, \"\").split(\",\").map(Number);\n return { r, g, b, a: a || 1 };\n}\nfunction hslStringToRgba(hslaString) {\n const hslaRegex = /^hsla?\\(\\s*(\\d+)\\s*,\\s*(\\d+%)\\s*,\\s*(\\d+%)\\s*(,\\s*(0?\\.\\d+|\\d+(\\.\\d+)?))?\\s*\\)$/i;\n const matches = hslaString.match(hslaRegex);\n if (!matches) {\n return {\n r: 0,\n g: 0,\n b: 0,\n a: 1\n };\n }\n const h = parseInt(matches[1], 10);\n const s = parseInt(matches[2], 10) / 100;\n const l = parseInt(matches[3], 10) / 100;\n const a = matches[5] ? parseFloat(matches[5]) : void 0;\n const chroma = (1 - Math.abs(2 * l - 1)) * s;\n const huePrime = h / 60;\n const x = chroma * (1 - Math.abs(huePrime % 2 - 1));\n const m = l - chroma / 2;\n let r;\n let g;\n let b;\n if (huePrime >= 0 && huePrime < 1) {\n r = chroma;\n g = x;\n b = 0;\n } else if (huePrime >= 1 && huePrime < 2) {\n r = x;\n g = chroma;\n b = 0;\n } else if (huePrime >= 2 && huePrime < 3) {\n r = 0;\n g = chroma;\n b = x;\n } else if (huePrime >= 3 && huePrime < 4) {\n r = 0;\n g = x;\n b = chroma;\n } else if (huePrime >= 4 && huePrime < 5) {\n r = x;\n g = 0;\n b = chroma;\n } else {\n r = chroma;\n g = 0;\n b = x;\n }\n return {\n r: Math.round((r + m) * 255),\n g: Math.round((g + m) * 255),\n b: Math.round((b + m) * 255),\n a: a || 1\n };\n}\nfunction toRgba(color) {\n if (isHexColor(color)) {\n return hexToRgba(color);\n }\n if (color.startsWith(\"rgb\")) {\n return rgbStringToRgba(color);\n }\n if (color.startsWith(\"hsl\")) {\n return hslStringToRgba(color);\n }\n return {\n r: 0,\n g: 0,\n b: 0,\n a: 1\n };\n}\n\nexport { toRgba };\n//# sourceMappingURL=to-rgba.mjs.map\n","import { toRgba } from '../to-rgba/to-rgba.mjs';\n\nfunction darken(color, alpha) {\n if (color.startsWith(\"var(\")) {\n return color;\n }\n const { r, g, b, a } = toRgba(color);\n const f = 1 - alpha;\n const dark = (input) => Math.round(input * f);\n return `rgba(${dark(r)}, ${dark(g)}, ${dark(b)}, ${a})`;\n}\n\nexport { darken };\n//# sourceMappingURL=darken.mjs.map\n","import { toRgba } from '../to-rgba/to-rgba.mjs';\n\nfunction rgba(color, alpha) {\n if (typeof color !== \"string\" || alpha > 1 || alpha < 0) {\n return \"rgba(0, 0, 0, 1)\";\n }\n const { r, g, b } = toRgba(color);\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n\nexport { rgba };\n//# sourceMappingURL=rgba.mjs.map\n","'use client';\nimport { parseThemeColor } from '../parse-theme-color/parse-theme-color.mjs';\nimport { getGradient } from '../get-gradient/get-gradient.mjs';\nimport { darken } from '../darken/darken.mjs';\nimport { rgba } from '../rgba/rgba.mjs';\nimport { rem } from '../../../utils/units-converters/rem.mjs';\n\nconst defaultVariantColorsResolver = ({\n color,\n theme,\n variant,\n gradient\n}) => {\n const parsed = parseThemeColor({ color, theme });\n if (variant === \"filled\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: `var(--mantine-color-${color}-filled)`,\n hover: `var(--mantine-color-${color}-filled-hover)`,\n color: \"var(--mantine-color-white)\",\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n hover: `var(--mantine-color-${parsed.color}-${parsed.shade === 9 ? 8 : parsed.shade + 1})`,\n color: \"var(--mantine-color-white)\",\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: color,\n hover: darken(color, 0.1),\n color: \"var(--mantine-color-white)\",\n border: `${rem(1)} solid transparent`\n };\n }\n if (variant === \"light\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: `var(--mantine-color-${color}-light)`,\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`\n };\n }\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n return {\n background: rgba(parsedColor, 0.1),\n hover: rgba(parsedColor, 0.12),\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: rgba(color, 0.1),\n hover: rgba(color, 0.12),\n color,\n border: `${rem(1)} solid transparent`\n };\n }\n if (variant === \"outline\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: \"transparent\",\n hover: `var(--mantine-color-${color}-outline-hover)`,\n color: `var(--mantine-color-${color}-outline)`,\n border: `${rem(1)} solid var(--mantine-color-${color}-outline)`\n };\n }\n return {\n background: \"transparent\",\n hover: rgba(theme.colors[parsed.color][parsed.shade], 0.05),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid var(--mantine-color-${parsed.color}-${parsed.shade})`\n };\n }\n return {\n background: \"transparent\",\n hover: rgba(color, 0.05),\n color,\n border: `${rem(1)} solid ${color}`\n };\n }\n if (variant === \"subtle\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: \"transparent\",\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`\n };\n }\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n return {\n background: \"transparent\",\n hover: rgba(parsedColor, 0.12),\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: \"transparent\",\n hover: rgba(color, 0.12),\n color,\n border: `${rem(1)} solid transparent`\n };\n }\n if (variant === \"transparent\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: \"transparent\",\n hover: \"transparent\",\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: \"transparent\",\n hover: \"transparent\",\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: \"transparent\",\n hover: \"transparent\",\n color,\n border: `${rem(1)} solid transparent`\n };\n }\n if (variant === \"white\") {\n if (parsed.isThemeColor) {\n if (parsed.shade === void 0) {\n return {\n background: \"var(--mantine-color-white)\",\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${color}-filled)`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: \"var(--mantine-color-white)\",\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid transparent`\n };\n }\n return {\n background: \"var(--mantine-color-white)\",\n hover: darken(theme.white, 0.01),\n color,\n border: `${rem(1)} solid transparent`\n };\n }\n if (variant === \"gradient\") {\n return {\n background: getGradient(gradient, theme),\n hover: getGradient(gradient, theme),\n color: \"var(--mantine-color-white)\",\n border: \"none\"\n };\n }\n if (variant === \"default\") {\n return {\n background: \"var(--mantine-color-default)\",\n hover: \"var(--mantine-color-default-hover)\",\n color: \"var(--mantine-color-default-color)\",\n border: `${rem(1)} solid var(--mantine-color-default-border)`\n };\n }\n return {};\n};\n\nexport { defaultVariantColorsResolver };\n//# sourceMappingURL=default-variant-colors-resolver.mjs.map\n","import { DEFAULT_COLORS } from './default-colors.mjs';\nimport { defaultVariantColorsResolver } from './color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs';\nimport { rem } from '../utils/units-converters/rem.mjs';\n\nconst DEFAULT_FONT_FAMILY = \"-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji\";\nconst DEFAULT_THEME = {\n scale: 1,\n fontSmoothing: true,\n focusRing: \"auto\",\n white: \"#fff\",\n black: \"#000\",\n colors: DEFAULT_COLORS,\n primaryShade: { light: 6, dark: 8 },\n primaryColor: \"blue\",\n variantColorResolver: defaultVariantColorsResolver,\n fontFamily: DEFAULT_FONT_FAMILY,\n fontFamilyMonospace: \"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace\",\n respectReducedMotion: false,\n cursorType: \"default\",\n defaultGradient: { from: \"blue\", to: \"cyan\", deg: 45 },\n defaultRadius: \"sm\",\n activeClassName: \"mantine-active\",\n focusClassName: \"\",\n headings: {\n fontFamily: DEFAULT_FONT_FAMILY,\n fontWeight: \"700\",\n sizes: {\n h1: { fontSize: rem(34), lineHeight: \"1.3\" },\n h2: { fontSize: rem(26), lineHeight: \"1.35\" },\n h3: { fontSize: rem(22), lineHeight: \"1.4\" },\n h4: { fontSize: rem(18), lineHeight: \"1.45\" },\n h5: { fontSize: rem(16), lineHeight: \"1.5\" },\n h6: { fontSize: rem(14), lineHeight: \"1.5\" }\n }\n },\n fontSizes: {\n xs: rem(12),\n sm: rem(14),\n md: rem(16),\n lg: rem(18),\n xl: rem(20)\n },\n lineHeights: {\n xs: \"1.4\",\n sm: \"1.45\",\n md: \"1.55\",\n lg: \"1.6\",\n xl: \"1.65\"\n },\n radius: {\n xs: rem(2),\n sm: rem(4),\n md: rem(8),\n lg: rem(16),\n xl: rem(32)\n },\n spacing: {\n xs: rem(10),\n sm: rem(12),\n md: rem(16),\n lg: rem(20),\n xl: rem(32)\n },\n breakpoints: {\n xs: \"36em\",\n sm: \"48em\",\n md: \"62em\",\n lg: \"75em\",\n xl: \"88em\"\n },\n shadows: {\n xs: `0 ${rem(1)} ${rem(3)} rgba(0, 0, 0, 0.05), 0 ${rem(1)} ${rem(2)} rgba(0, 0, 0, 0.1)`,\n sm: `0 ${rem(1)} ${rem(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${rem(10)} ${rem(\n 15\n )} ${rem(-5)}, rgba(0, 0, 0, 0.04) 0 ${rem(7)} ${rem(7)} ${rem(-5)}`,\n md: `0 ${rem(1)} ${rem(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${rem(20)} ${rem(\n 25\n )} ${rem(-5)}, rgba(0, 0, 0, 0.04) 0 ${rem(10)} ${rem(10)} ${rem(-5)}`,\n lg: `0 ${rem(1)} ${rem(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${rem(28)} ${rem(\n 23\n )} ${rem(-7)}, rgba(0, 0, 0, 0.04) 0 ${rem(12)} ${rem(12)} ${rem(-7)}`,\n xl: `0 ${rem(1)} ${rem(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${rem(36)} ${rem(\n 28\n )} ${rem(-7)}, rgba(0, 0, 0, 0.04) 0 ${rem(17)} ${rem(17)} ${rem(-7)}`\n },\n other: {},\n components: {}\n};\n\nexport { DEFAULT_THEME };\n//# sourceMappingURL=default-theme.mjs.map\n","'use client';\nimport { deepMerge } from '../../utils/deep-merge/deep-merge.mjs';\n\nconst INVALID_PRIMARY_COLOR_ERROR = \"[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more \\u2013 https://mantine.dev/theming/colors/#primary-color\";\nconst INVALID_PRIMARY_SHADE_ERROR = \"[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }\";\nfunction isValidPrimaryShade(shade) {\n if (shade < 0 || shade > 9) {\n return false;\n }\n return parseInt(shade.toString(), 10) === shade;\n}\nfunction validateMantineTheme(theme) {\n if (!(theme.primaryColor in theme.colors)) {\n throw new Error(INVALID_PRIMARY_COLOR_ERROR);\n }\n if (typeof theme.primaryShade === \"object\") {\n if (!isValidPrimaryShade(theme.primaryShade.dark) || !isValidPrimaryShade(theme.primaryShade.light)) {\n throw new Error(INVALID_PRIMARY_SHADE_ERROR);\n }\n }\n if (typeof theme.primaryShade === \"number\" && !isValidPrimaryShade(theme.primaryShade)) {\n throw new Error(INVALID_PRIMARY_SHADE_ERROR);\n }\n}\nfunction mergeMantineTheme(currentTheme, themeOverride) {\n var _a;\n if (!themeOverride) {\n validateMantineTheme(currentTheme);\n return currentTheme;\n }\n const result = deepMerge(currentTheme, themeOverride);\n if (themeOverride.fontFamily && !((_a = themeOverride.headings) == null ? void 0 : _a.fontFamily)) {\n result.headings.fontFamily = themeOverride.fontFamily;\n }\n validateMantineTheme(result);\n return result;\n}\n\nexport { INVALID_PRIMARY_COLOR_ERROR, INVALID_PRIMARY_SHADE_ERROR, mergeMantineTheme, validateMantineTheme };\n//# sourceMappingURL=merge-mantine-theme.mjs.map\n","'use client';\nimport React, { createContext, useContext, useMemo } from 'react';\nimport { DEFAULT_THEME } from '../default-theme.mjs';\nimport { mergeMantineTheme } from '../merge-mantine-theme/merge-mantine-theme.mjs';\n\nconst MantineThemeContext = createContext(null);\nconst useSafeMantineTheme = () => useContext(MantineThemeContext) || DEFAULT_THEME;\nfunction useMantineTheme() {\n const ctx = useContext(MantineThemeContext);\n if (!ctx) {\n throw new Error(\n \"@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app\"\n );\n }\n return ctx;\n}\nfunction MantineThemeProvider({\n theme,\n children,\n inherit = true\n}) {\n const parentTheme = useSafeMantineTheme();\n const mergedTheme = useMemo(\n () => mergeMantineTheme(inherit ? parentTheme : DEFAULT_THEME, theme),\n [theme, parentTheme, inherit]\n );\n return /* @__PURE__ */ React.createElement(MantineThemeContext.Provider, { value: mergedTheme }, children);\n}\nMantineThemeProvider.displayName = \"@mantine/core/MantineThemeProvider\";\n\nexport { MantineThemeContext, MantineThemeProvider, useMantineTheme, useSafeMantineTheme };\n//# sourceMappingURL=MantineThemeProvider.mjs.map\n","'use client';\nimport { resolveClassNames } from '../use-styles/get-class-name/resolve-class-names/resolve-class-names.mjs';\nimport { resolveStyles } from '../use-styles/get-style/resolve-styles/resolve-styles.mjs';\nimport { useMantineTheme } from '../../MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\n\nfunction useResolvedStylesApi({\n classNames,\n styles,\n props,\n stylesCtx\n}) {\n const theme = useMantineTheme();\n return {\n resolvedClassNames: resolveClassNames({\n theme,\n classNames,\n props,\n stylesCtx: stylesCtx || void 0\n }),\n resolvedStyles: resolveStyles({\n theme,\n styles,\n props,\n stylesCtx: stylesCtx || void 0\n })\n };\n}\n\nexport { useResolvedStylesApi };\n//# sourceMappingURL=use-resolved-styles-api.mjs.map\n","'use client';\nimport cx from 'clsx';\n\nconst FOCUS_CLASS_NAMES = {\n always: \"mantine-focus-always\",\n auto: \"mantine-focus-auto\",\n never: \"mantine-focus-never\"\n};\nfunction getGlobalClassNames({ theme, options, unstyled }) {\n return cx(\n (options == null ? void 0 : options.focusable) && !unstyled && (theme.focusClassName || FOCUS_CLASS_NAMES[theme.focusRing]),\n (options == null ? void 0 : options.active) && !unstyled && theme.activeClassName\n );\n}\n\nexport { FOCUS_CLASS_NAMES, getGlobalClassNames };\n//# sourceMappingURL=get-global-class-names.mjs.map\n","'use client';\nfunction getStaticClassNames({\n themeName,\n classNamesPrefix,\n selector\n}) {\n return themeName.map((n) => `${classNamesPrefix}-${n}-${selector}`);\n}\n\nexport { getStaticClassNames };\n//# sourceMappingURL=get-static-class-names.mjs.map\n","'use client';\nimport { resolveClassNames } from '../resolve-class-names/resolve-class-names.mjs';\n\nfunction getThemeClassNames({\n themeName,\n theme,\n selector,\n props,\n stylesCtx\n}) {\n return themeName.map(\n (n) => {\n var _a, _b;\n return (_b = resolveClassNames({\n theme,\n classNames: (_a = theme.components[n]) == null ? void 0 : _a.classNames,\n props,\n stylesCtx\n })) == null ? void 0 : _b[selector];\n }\n );\n}\n\nexport { getThemeClassNames };\n//# sourceMappingURL=get-theme-class-names.mjs.map\n","'use client';\nfunction getVariantClassName({\n options,\n classes,\n selector,\n unstyled\n}) {\n return (options == null ? void 0 : options.variant) && !unstyled ? classes[`${selector}--${options.variant}`] : void 0;\n}\n\nexport { getVariantClassName };\n//# sourceMappingURL=get-variant-class-name.mjs.map\n","'use client';\nfunction getRootClassName({ rootSelector, selector, className }) {\n return rootSelector === selector ? className : void 0;\n}\n\nexport { getRootClassName };\n//# sourceMappingURL=get-root-class-name.mjs.map\n","'use client';\nfunction getSelectorClassName({ selector, classes, unstyled }) {\n return unstyled ? void 0 : classes[selector];\n}\n\nexport { getSelectorClassName };\n//# sourceMappingURL=get-selector-class-name.mjs.map\n","'use client';\nimport { resolveClassNames } from '../resolve-class-names/resolve-class-names.mjs';\n\nfunction getResolvedClassNames({\n selector,\n stylesCtx,\n theme,\n classNames,\n props\n}) {\n return resolveClassNames({ theme, classNames, props, stylesCtx })[selector];\n}\n\nexport { getResolvedClassNames };\n//# sourceMappingURL=get-resolved-class-names.mjs.map\n","'use client';\nimport { resolveClassNames } from '../resolve-class-names/resolve-class-names.mjs';\n\nfunction getOptionsClassNames({\n selector,\n stylesCtx,\n options,\n props,\n theme\n}) {\n return resolveClassNames({\n theme,\n classNames: options == null ? void 0 : options.classNames,\n props: (options == null ? void 0 : options.props) || props,\n stylesCtx\n })[selector];\n}\n\nexport { getOptionsClassNames };\n//# sourceMappingURL=get-options-class-names.mjs.map\n","'use client';\nimport cx from 'clsx';\nimport { getStaticClassNames } from './get-static-class-names/get-static-class-names.mjs';\nimport { getThemeClassNames } from './get-theme-class-names/get-theme-class-names.mjs';\nimport { getGlobalClassNames } from './get-global-class-names/get-global-class-names.mjs';\nimport { getVariantClassName } from './get-variant-class-name/get-variant-class-name.mjs';\nimport { getRootClassName } from './get-root-class-name/get-root-class-name.mjs';\nimport { getSelectorClassName } from './get-selector-class-name/get-selector-class-name.mjs';\nimport { getResolvedClassNames } from './get-resolved-class-names/get-resolved-class-names.mjs';\nimport { getOptionsClassNames } from './get-options-class-names/get-options-class-names.mjs';\n\nfunction getClassName({\n theme,\n options,\n themeName,\n selector,\n classNamesPrefix,\n classNames,\n classes,\n unstyled,\n className,\n rootSelector,\n props,\n stylesCtx\n}) {\n return cx(\n getGlobalClassNames({ theme, options, unstyled }),\n getThemeClassNames({ theme, themeName, selector, props, stylesCtx }),\n getVariantClassName({ options, classes, selector, unstyled }),\n getResolvedClassNames({ selector, stylesCtx, theme, classNames, props }),\n getOptionsClassNames({ selector, stylesCtx, options, props, theme }),\n getRootClassName({ rootSelector, selector, className }),\n getSelectorClassName({ selector, classes, unstyled }),\n getStaticClassNames({ themeName, classNamesPrefix, selector }),\n options == null ? void 0 : options.className\n );\n}\n\nexport { getClassName };\n//# sourceMappingURL=get-class-name.mjs.map\n","'use client';\nimport { resolveStyles } from '../resolve-styles/resolve-styles.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction getThemeStyles({\n theme,\n themeName,\n props,\n stylesCtx,\n selector\n}) {\n return themeName.map(\n (n) => {\n var _a;\n return resolveStyles({\n theme,\n styles: (_a = theme.components[n]) == null ? void 0 : _a.styles,\n props,\n stylesCtx\n })[selector];\n }\n ).reduce((acc, val) => __spreadValues(__spreadValues({}, acc), val), {});\n}\n\nexport { getThemeStyles };\n//# sourceMappingURL=get-theme-styles.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction resolveStyle({ style, theme }) {\n if (Array.isArray(style)) {\n return [...style].reduce(\n (acc, item) => __spreadValues(__spreadValues({}, acc), resolveStyle({ style: item, theme })),\n {}\n );\n }\n if (typeof style === \"function\") {\n return style(theme);\n }\n if (style == null) {\n return {};\n }\n return style;\n}\n\nexport { resolveStyle };\n//# sourceMappingURL=resolve-style.mjs.map\n","'use client';\nimport { filterProps } from '../../../../utils/filter-props/filter-props.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction mergeVars(vars) {\n return vars.reduce((acc, current) => {\n if (current) {\n Object.keys(current).forEach((key) => {\n acc[key] = __spreadValues(__spreadValues({}, acc[key]), filterProps(current[key]));\n });\n }\n return acc;\n }, {});\n}\n\nexport { mergeVars };\n//# sourceMappingURL=merge-vars.mjs.map\n","'use client';\nimport { mergeVars } from './merge-vars.mjs';\n\nfunction resolveVars({\n vars,\n varsResolver,\n theme,\n props,\n stylesCtx,\n selector,\n themeName\n}) {\n var _a;\n return (_a = mergeVars([\n varsResolver == null ? void 0 : varsResolver(theme, props, stylesCtx),\n ...themeName.map((name) => {\n var _a2, _b, _c;\n return (_c = (_b = (_a2 = theme.components) == null ? void 0 : _a2[name]) == null ? void 0 : _b.vars) == null ? void 0 : _c.call(_b, theme, props, stylesCtx);\n }),\n vars == null ? void 0 : vars(theme, props, stylesCtx)\n ])) == null ? void 0 : _a[selector];\n}\n\nexport { resolveVars };\n//# sourceMappingURL=resolve-vars.mjs.map\n","'use client';\nimport { getThemeStyles } from './get-theme-styles/get-theme-styles.mjs';\nimport { resolveStyles } from './resolve-styles/resolve-styles.mjs';\nimport { resolveStyle } from './resolve-style/resolve-style.mjs';\nimport { resolveVars } from './resolve-vars/resolve-vars.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction getStyle({\n theme,\n themeName,\n selector,\n options,\n props,\n stylesCtx,\n rootSelector,\n styles,\n style,\n vars,\n varsResolver\n}) {\n return __spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues({}, getThemeStyles({ theme, themeName, props, stylesCtx, selector })), resolveStyles({ theme, styles, props, stylesCtx })[selector]), resolveStyles({ theme, styles: options == null ? void 0 : options.styles, props: (options == null ? void 0 : options.props) || props, stylesCtx })[selector]), resolveVars({ theme, props, stylesCtx, vars, varsResolver, selector, themeName })), rootSelector === selector ? resolveStyle({ style, theme }) : null), resolveStyle({ style: options == null ? void 0 : options.style, theme }));\n}\n\nexport { getStyle };\n//# sourceMappingURL=get-style.mjs.map\n","'use client';\nimport { createContext, useContext } from 'react';\n\nconst MantineContext = createContext(null);\nfunction useMantineContext() {\n const ctx = useContext(MantineContext);\n if (!ctx) {\n throw new Error(\"[@mantine/core] MantineProvider was not found in tree\");\n }\n return ctx;\n}\nfunction useMantineCssVariablesResolver() {\n return useMantineContext().cssVariablesResolver;\n}\nfunction useMantineClassNamesPrefix() {\n return useMantineContext().classNamesPrefix;\n}\nfunction useMantineStyleNonce() {\n return useMantineContext().getStyleNonce;\n}\n\nexport { MantineContext, useMantineClassNamesPrefix, useMantineContext, useMantineCssVariablesResolver, useMantineStyleNonce };\n//# sourceMappingURL=Mantine.context.mjs.map\n","'use client';\nimport { getClassName } from './get-class-name/get-class-name.mjs';\nimport { getStyle } from './get-style/get-style.mjs';\nimport { useMantineTheme } from '../../MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport { useMantineClassNamesPrefix } from '../../MantineProvider/Mantine.context.mjs';\n\nfunction useStyles({\n name,\n classes,\n props,\n stylesCtx,\n className,\n style,\n rootSelector = \"root\",\n unstyled,\n classNames,\n styles,\n vars,\n varsResolver\n}) {\n const theme = useMantineTheme();\n const classNamesPrefix = useMantineClassNamesPrefix();\n const themeName = (Array.isArray(name) ? name : [name]).filter((n) => n);\n return (selector, options) => ({\n className: getClassName({\n theme,\n options,\n themeName,\n selector,\n classNamesPrefix,\n classNames,\n classes,\n unstyled,\n className,\n rootSelector,\n props,\n stylesCtx\n }),\n style: getStyle({\n theme,\n themeName,\n selector,\n options,\n props,\n stylesCtx,\n rootSelector,\n styles,\n style,\n vars,\n varsResolver\n })\n });\n}\n\nexport { useStyles };\n//# sourceMappingURL=use-styles.mjs.map\n","'use client';\nfunction suppressNextjsWarning() {\n const originalError = console.error;\n console.error = (...args) => {\n if (args.length > 1 && typeof args[0] === \"string\" && args[0].toLowerCase().includes(\"extra attributes from the server\") && typeof args[1] === \"string\" && args[1].toLowerCase().includes(\"data-mantine-color-scheme\")) ; else {\n originalError(...args);\n }\n };\n}\n\nexport { suppressNextjsWarning };\n//# sourceMappingURL=suppress-nextjs-warning.mjs.map\n","'use client';\nfunction isMantineColorScheme(value) {\n return value === \"auto\" || value === \"dark\" || value === \"light\";\n}\n\nexport { isMantineColorScheme };\n//# sourceMappingURL=is-mantine-color-scheme.mjs.map\n","'use client';\nimport { isMantineColorScheme } from './is-mantine-color-scheme.mjs';\n\nfunction localStorageColorSchemeManager({\n key = \"mantine-color-scheme-value\"\n} = {}) {\n let handleStorageEvent;\n return {\n get: (defaultValue) => {\n if (typeof window === \"undefined\") {\n return defaultValue;\n }\n try {\n const storedColorScheme = window.localStorage.getItem(key);\n return isMantineColorScheme(storedColorScheme) ? storedColorScheme : defaultValue;\n } catch (e) {\n return defaultValue;\n }\n },\n set: (value) => {\n try {\n window.localStorage.setItem(key, value);\n } catch (error) {\n console.warn(\n \"[@mantine/core] Local storage color scheme manager was unable to save color scheme.\",\n error\n );\n }\n },\n subscribe: (onUpdate) => {\n handleStorageEvent = (event) => {\n if (event.storageArea === window.localStorage && event.key === key) {\n isMantineColorScheme(event.newValue) && onUpdate(event.newValue);\n }\n };\n window.addEventListener(\"storage\", handleStorageEvent);\n },\n unsubscribe: () => {\n window.removeEventListener(\"storage\", handleStorageEvent);\n },\n clear: () => {\n window.localStorage.removeItem(key);\n }\n };\n}\n\nexport { localStorageColorSchemeManager };\n//# sourceMappingURL=local-storage-manager.mjs.map\n","'use client';\nimport { useRef, useEffect, useMemo } from 'react';\n\nfunction useCallbackRef(callback) {\n const callbackRef = useRef(callback);\n useEffect(() => {\n callbackRef.current = callback;\n });\n return useMemo(() => (...args) => {\n var _a;\n return (_a = callbackRef.current) == null ? void 0 : _a.call(callbackRef, ...args);\n }, []);\n}\n\nexport { useCallbackRef };\n//# sourceMappingURL=use-callback-ref.mjs.map\n","'use client';\nimport { useRef, useEffect, useCallback } from 'react';\nimport { useCallbackRef } from '../use-callback-ref/use-callback-ref.mjs';\n\nfunction useDebounceCallback(callback, delay) {\n const handleCallback = useCallbackRef(callback);\n const debounceTimerRef = useRef(0);\n useEffect(() => () => window.clearTimeout(debounceTimerRef.current), []);\n return useCallback(() => {\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [handleCallback, delay]);\n}\n\nexport { useDebounceCallback };\n//# sourceMappingURL=use-debounced-callback.mjs.map\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nconst DEFAULT_EVENTS = [\"mousedown\", \"touchstart\"];\nfunction useClickOutside(handler, events, nodes) {\n const ref = useRef();\n useEffect(() => {\n const listener = (event) => {\n const { target } = event != null ? event : {};\n if (Array.isArray(nodes)) {\n const shouldIgnore = (target == null ? void 0 : target.hasAttribute(\"data-ignore-outside-clicks\")) || !document.body.contains(target) && target.tagName !== \"HTML\";\n const shouldTrigger = nodes.every((node) => !!node && !event.composedPath().includes(node));\n shouldTrigger && !shouldIgnore && handler();\n } else if (ref.current && !ref.current.contains(target)) {\n handler();\n }\n };\n (events || DEFAULT_EVENTS).forEach((fn) => document.addEventListener(fn, listener));\n return () => {\n (events || DEFAULT_EVENTS).forEach((fn) => document.removeEventListener(fn, listener));\n };\n }, [ref, handler, nodes]);\n return ref;\n}\n\nexport { useClickOutside };\n//# sourceMappingURL=use-click-outside.mjs.map\n","'use client';\nimport { useState } from 'react';\n\nfunction useClipboard({ timeout = 2e3 } = {}) {\n const [error, setError] = useState(null);\n const [copied, setCopied] = useState(false);\n const [copyTimeout, setCopyTimeout] = useState(null);\n const handleCopyResult = (value) => {\n window.clearTimeout(copyTimeout);\n setCopyTimeout(window.setTimeout(() => setCopied(false), timeout));\n setCopied(value);\n };\n const copy = (valueToCopy) => {\n if (\"clipboard\" in navigator) {\n navigator.clipboard.writeText(valueToCopy).then(() => handleCopyResult(true)).catch((err) => setError(err));\n } else {\n setError(new Error(\"useClipboard: navigator.clipboard is not supported\"));\n }\n };\n const reset = () => {\n setCopied(false);\n setError(null);\n window.clearTimeout(copyTimeout);\n };\n return { copy, reset, error, copied };\n}\n\nexport { useClipboard };\n//# sourceMappingURL=use-clipboard.mjs.map\n","'use client';\nimport { useState, useRef, useEffect } from 'react';\n\nfunction attachMediaListener(query, callback) {\n try {\n query.addEventListener(\"change\", callback);\n return () => query.removeEventListener(\"change\", callback);\n } catch (e) {\n query.addListener(callback);\n return () => query.removeListener(callback);\n }\n}\nfunction getInitialValue(query, initialValue) {\n if (typeof initialValue === \"boolean\") {\n return initialValue;\n }\n if (typeof window !== \"undefined\" && \"matchMedia\" in window) {\n return window.matchMedia(query).matches;\n }\n return false;\n}\nfunction useMediaQuery(query, initialValue, { getInitialValueInEffect } = {\n getInitialValueInEffect: true\n}) {\n const [matches, setMatches] = useState(\n getInitialValueInEffect ? initialValue : getInitialValue(query, initialValue)\n );\n const queryRef = useRef();\n useEffect(() => {\n if (\"matchMedia\" in window) {\n queryRef.current = window.matchMedia(query);\n setMatches(queryRef.current.matches);\n return attachMediaListener(queryRef.current, (event) => setMatches(event.matches));\n }\n return void 0;\n }, [query]);\n return matches;\n}\n\nexport { useMediaQuery };\n//# sourceMappingURL=use-media-query.mjs.map\n","'use client';\nfunction clamp(value, min, max) {\n if (min === void 0 && max === void 0) {\n return value;\n }\n if (min !== void 0 && max === void 0) {\n return Math.max(value, min);\n }\n if (min === void 0 && max !== void 0) {\n return Math.min(value, max);\n }\n return Math.min(Math.max(value, min), max);\n}\n\nexport { clamp };\n//# sourceMappingURL=clamp.mjs.map\n","'use client';\nimport { useLayoutEffect, useEffect } from 'react';\n\nconst useIsomorphicEffect = typeof document !== \"undefined\" ? useLayoutEffect : useEffect;\n\nexport { useIsomorphicEffect };\n//# sourceMappingURL=use-isomorphic-effect.mjs.map\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nfunction useDidUpdate(fn, dependencies) {\n const mounted = useRef(false);\n useEffect(\n () => () => {\n mounted.current = false;\n },\n []\n );\n useEffect(() => {\n if (mounted.current) {\n return fn();\n }\n mounted.current = true;\n return void 0;\n }, dependencies);\n}\n\nexport { useDidUpdate };\n//# sourceMappingURL=use-did-update.mjs.map\n","'use client';\nimport { useRef } from 'react';\nimport { useDidUpdate } from '../use-did-update/use-did-update.mjs';\n\nfunction useFocusReturn({ opened, shouldReturnFocus = true }) {\n const lastActiveElement = useRef();\n const returnFocus = () => {\n var _a;\n if (lastActiveElement.current && \"focus\" in lastActiveElement.current && typeof lastActiveElement.current.focus === \"function\") {\n (_a = lastActiveElement.current) == null ? void 0 : _a.focus({ preventScroll: true });\n }\n };\n useDidUpdate(() => {\n let timeout = -1;\n const clearFocusTimeout = (event) => {\n if (event.key === \"Tab\") {\n window.clearTimeout(timeout);\n }\n };\n document.addEventListener(\"keydown\", clearFocusTimeout);\n if (opened) {\n lastActiveElement.current = document.activeElement;\n } else if (shouldReturnFocus) {\n timeout = window.setTimeout(returnFocus, 10);\n }\n return () => {\n window.clearTimeout(timeout);\n document.removeEventListener(\"keydown\", clearFocusTimeout);\n };\n }, [opened, shouldReturnFocus]);\n return returnFocus;\n}\n\nexport { useFocusReturn };\n//# sourceMappingURL=use-focus-return.mjs.map\n","'use client';\nconst TABBABLE_NODES = /input|select|textarea|button|object/;\nconst FOCUS_SELECTOR = \"a, input, select, textarea, button, object, [tabindex]\";\nfunction hidden(element) {\n if (process.env.NODE_ENV === \"test\") {\n return false;\n }\n return element.style.display === \"none\";\n}\nfunction visible(element) {\n const isHidden = element.getAttribute(\"aria-hidden\") || element.getAttribute(\"hidden\") || element.getAttribute(\"type\") === \"hidden\";\n if (isHidden) {\n return false;\n }\n let parentElement = element;\n while (parentElement) {\n if (parentElement === document.body || parentElement.nodeType === 11) {\n break;\n }\n if (hidden(parentElement)) {\n return false;\n }\n parentElement = parentElement.parentNode;\n }\n return true;\n}\nfunction getElementTabIndex(element) {\n let tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) {\n tabIndex = void 0;\n }\n return parseInt(tabIndex, 10);\n}\nfunction focusable(element) {\n const nodeName = element.nodeName.toLowerCase();\n const isTabIndexNotNaN = !Number.isNaN(getElementTabIndex(element));\n const res = (\n // @ts-ignore\n TABBABLE_NODES.test(nodeName) && !element.disabled || (element instanceof HTMLAnchorElement ? element.href || isTabIndexNotNaN : isTabIndexNotNaN)\n );\n return res && visible(element);\n}\nfunction tabbable(element) {\n const tabIndex = getElementTabIndex(element);\n const isTabIndexNaN = Number.isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element);\n}\nfunction findTabbableDescendants(element) {\n return Array.from(element.querySelectorAll(FOCUS_SELECTOR)).filter(tabbable);\n}\n\nexport { FOCUS_SELECTOR, findTabbableDescendants, focusable, tabbable };\n//# sourceMappingURL=tabbable.mjs.map\n","'use client';\nimport { findTabbableDescendants } from './tabbable.mjs';\n\nfunction scopeTab(node, event) {\n const tabbable = findTabbableDescendants(node);\n if (!tabbable.length) {\n event.preventDefault();\n return;\n }\n const finalTabbable = tabbable[event.shiftKey ? 0 : tabbable.length - 1];\n const root = node.getRootNode();\n let leavingFinalTabbable = finalTabbable === root.activeElement || node === root.activeElement;\n const activeElement = root.activeElement;\n const activeElementIsRadio = activeElement.tagName === \"INPUT\" && activeElement.getAttribute(\"type\") === \"radio\";\n if (activeElementIsRadio) {\n const activeRadioGroup = tabbable.filter(\n (element) => element.getAttribute(\"type\") === \"radio\" && element.getAttribute(\"name\") === activeElement.getAttribute(\"name\")\n );\n leavingFinalTabbable = activeRadioGroup.includes(finalTabbable);\n }\n if (!leavingFinalTabbable) {\n return;\n }\n event.preventDefault();\n const target = tabbable[event.shiftKey ? tabbable.length - 1 : 0];\n if (target) {\n target.focus();\n }\n}\n\nexport { scopeTab };\n//# sourceMappingURL=scope-tab.mjs.map\n","'use client';\nfunction randomId() {\n return `mantine-${Math.random().toString(36).slice(2, 11)}`;\n}\n\nexport { randomId };\n//# sourceMappingURL=random-id.mjs.map\n","'use client';\nimport { randomId } from '../utils/random-id/random-id.mjs';\n\nfunction createAriaHider(containerNode, selector = \"body > :not(script)\") {\n const id = randomId();\n const rootNodes = Array.from(\n document.querySelectorAll(selector)\n ).map((node) => {\n var _a;\n if (((_a = node == null ? void 0 : node.shadowRoot) == null ? void 0 : _a.contains(containerNode)) || node.contains(containerNode)) {\n return void 0;\n }\n const ariaHidden = node.getAttribute(\"aria-hidden\");\n const prevAriaHidden = node.getAttribute(\"data-hidden\");\n const prevFocusId = node.getAttribute(\"data-focus-id\");\n node.setAttribute(\"data-focus-id\", id);\n if (ariaHidden === null || ariaHidden === \"false\") {\n node.setAttribute(\"aria-hidden\", \"true\");\n } else if (!prevAriaHidden && !prevFocusId) {\n node.setAttribute(\"data-hidden\", ariaHidden);\n }\n return {\n node,\n ariaHidden: prevAriaHidden || null\n };\n });\n return () => {\n rootNodes.forEach((item) => {\n if (!item || id !== item.node.getAttribute(\"data-focus-id\")) {\n return;\n }\n if (item.ariaHidden === null) {\n item.node.removeAttribute(\"aria-hidden\");\n } else {\n item.node.setAttribute(\"aria-hidden\", item.ariaHidden);\n }\n item.node.removeAttribute(\"data-focus-id\");\n item.node.removeAttribute(\"data-hidden\");\n });\n };\n}\n\nexport { createAriaHider };\n//# sourceMappingURL=create-aria-hider.mjs.map\n","'use client';\nimport { useRef, useCallback, useEffect } from 'react';\nimport { FOCUS_SELECTOR, tabbable, focusable } from './tabbable.mjs';\nimport { scopeTab } from './scope-tab.mjs';\nimport { createAriaHider } from './create-aria-hider.mjs';\n\nfunction useFocusTrap(active = true) {\n const ref = useRef();\n const restoreAria = useRef(null);\n const focusNode = (node) => {\n let focusElement = node.querySelector(\"[data-autofocus]\");\n if (!focusElement) {\n const children = Array.from(node.querySelectorAll(FOCUS_SELECTOR));\n focusElement = children.find(tabbable) || children.find(focusable) || null;\n if (!focusElement && focusable(node))\n focusElement = node;\n }\n if (focusElement) {\n focusElement.focus({ preventScroll: true });\n } else if (process.env.NODE_ENV === \"development\") {\n console.warn(\n \"[@mantine/hooks/use-focus-trap] Failed to find focusable element within provided node\",\n node\n );\n }\n };\n const setRef = useCallback(\n (node) => {\n if (!active) {\n return;\n }\n if (node === null) {\n if (restoreAria.current) {\n restoreAria.current();\n restoreAria.current = null;\n }\n return;\n }\n restoreAria.current = createAriaHider(node);\n if (ref.current === node) {\n return;\n }\n if (node) {\n setTimeout(() => {\n if (node.getRootNode()) {\n focusNode(node);\n } else if (process.env.NODE_ENV === \"development\") {\n console.warn(\"[@mantine/hooks/use-focus-trap] Ref node is not part of the dom\", node);\n }\n });\n ref.current = node;\n } else {\n ref.current = null;\n }\n },\n [active]\n );\n useEffect(() => {\n if (!active) {\n return void 0;\n }\n ref.current && setTimeout(() => focusNode(ref.current));\n const handleKeyDown = (event) => {\n if (event.key === \"Tab\" && ref.current) {\n scopeTab(ref.current, event);\n }\n };\n document.addEventListener(\"keydown\", handleKeyDown);\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n if (restoreAria.current) {\n restoreAria.current();\n }\n };\n }, [active]);\n return setRef;\n}\n\nexport { useFocusTrap };\n//# sourceMappingURL=use-focus-trap.mjs.map\n","'use client';\nimport { useReducer } from 'react';\n\nconst reducer = (value) => (value + 1) % 1e6;\nfunction useForceUpdate() {\n const [, update] = useReducer(reducer, 0);\n return update;\n}\n\nexport { useForceUpdate };\n//# sourceMappingURL=use-force-update.mjs.map\n","'use client';\nimport React from 'react';\n\nconst __useId = React[\"useId\".toString()] || (() => void 0);\nfunction useReactId() {\n const id = __useId();\n return id ? `mantine-${id.replace(/:/g, \"\")}` : \"\";\n}\n\nexport { useReactId };\n//# sourceMappingURL=use-react-id.mjs.map\n","'use client';\nimport { useState } from 'react';\nimport { useIsomorphicEffect } from '../use-isomorphic-effect/use-isomorphic-effect.mjs';\nimport { useReactId } from './use-react-id.mjs';\nimport { randomId } from '../utils/random-id/random-id.mjs';\n\nfunction useId(staticId) {\n const reactId = useReactId();\n const [uuid, setUuid] = useState(reactId);\n useIsomorphicEffect(() => {\n setUuid(randomId());\n }, []);\n if (typeof staticId === \"string\") {\n return staticId;\n }\n if (typeof window === \"undefined\") {\n return reactId;\n }\n return uuid;\n}\n\nexport { useId };\n//# sourceMappingURL=use-id.mjs.map\n","'use client';\nimport { useState } from 'react';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nfunction useListState(initialValue = []) {\n const [state, setState] = useState(initialValue);\n const append = (...items) => setState((current) => [...current, ...items]);\n const prepend = (...items) => setState((current) => [...items, ...current]);\n const insert = (index, ...items) => setState((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);\n const apply = (fn) => setState((current) => current.map((item, index) => fn(item, index)));\n const remove = (...indices) => setState((current) => current.filter((_, index) => !indices.includes(index)));\n const pop = () => setState((current) => {\n const cloned = [...current];\n cloned.pop();\n return cloned;\n });\n const shift = () => setState((current) => {\n const cloned = [...current];\n cloned.shift();\n return cloned;\n });\n const reorder = ({ from, to }) => setState((current) => {\n const cloned = [...current];\n const item = current[from];\n cloned.splice(from, 1);\n cloned.splice(to, 0, item);\n return cloned;\n });\n const setItem = (index, item) => setState((current) => {\n const cloned = [...current];\n cloned[index] = item;\n return cloned;\n });\n const setItemProp = (index, prop, value) => setState((current) => {\n const cloned = [...current];\n cloned[index] = __spreadProps(__spreadValues({}, cloned[index]), { [prop]: value });\n return cloned;\n });\n const applyWhere = (condition, fn) => setState(\n (current) => current.map((item, index) => condition(item, index) ? fn(item, index) : item)\n );\n const filter = (fn) => {\n setState((current) => current.filter(fn));\n };\n return [\n state,\n {\n setState,\n append,\n prepend,\n insert,\n pop,\n shift,\n apply,\n applyWhere,\n remove,\n reorder,\n setItem,\n setItemProp,\n filter\n }\n ];\n}\n\nexport { useListState };\n//# sourceMappingURL=use-list-state.mjs.map\n","'use client';\nimport { useEffect } from 'react';\n\nfunction useWindowEvent(type, listener, options) {\n useEffect(() => {\n window.addEventListener(type, listener, options);\n return () => window.removeEventListener(type, listener, options);\n }, [type, listener]);\n}\n\nexport { useWindowEvent };\n//# sourceMappingURL=use-window-event.mjs.map\n","'use client';\nimport { useCallback } from 'react';\n\nfunction assignRef(ref, value) {\n if (typeof ref === \"function\") {\n ref(value);\n } else if (typeof ref === \"object\" && ref !== null && \"current\" in ref) {\n ref.current = value;\n }\n}\nfunction mergeRefs(...refs) {\n return (node) => {\n refs.forEach((ref) => assignRef(ref, node));\n };\n}\nfunction useMergedRef(...refs) {\n return useCallback(mergeRefs(...refs), refs);\n}\n\nexport { assignRef, mergeRefs, useMergedRef };\n//# sourceMappingURL=use-merged-ref.mjs.map\n","'use client';\nimport { useRef, useState, useEffect } from 'react';\nimport { clamp } from '../utils/clamp/clamp.mjs';\n\nconst clampUseMovePosition = (position) => ({\n x: clamp(position.x, 0, 1),\n y: clamp(position.y, 0, 1)\n});\nfunction useMove(onChange, handlers, dir = \"ltr\") {\n const ref = useRef(null);\n const mounted = useRef(false);\n const isSliding = useRef(false);\n const frame = useRef(0);\n const [active, setActive] = useState(false);\n useEffect(() => {\n mounted.current = true;\n }, []);\n useEffect(() => {\n var _a, _b;\n const onScrub = ({ x, y }) => {\n cancelAnimationFrame(frame.current);\n frame.current = requestAnimationFrame(() => {\n if (mounted.current && ref.current) {\n ref.current.style.userSelect = \"none\";\n const rect = ref.current.getBoundingClientRect();\n if (rect.width && rect.height) {\n const _x = clamp((x - rect.left) / rect.width, 0, 1);\n onChange({\n x: dir === \"ltr\" ? _x : 1 - _x,\n y: clamp((y - rect.top) / rect.height, 0, 1)\n });\n }\n }\n });\n };\n const bindEvents = () => {\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", stopScrubbing);\n document.addEventListener(\"touchmove\", onTouchMove);\n document.addEventListener(\"touchend\", stopScrubbing);\n };\n const unbindEvents = () => {\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", stopScrubbing);\n document.removeEventListener(\"touchmove\", onTouchMove);\n document.removeEventListener(\"touchend\", stopScrubbing);\n };\n const startScrubbing = () => {\n if (!isSliding.current && mounted.current) {\n isSliding.current = true;\n typeof (handlers == null ? void 0 : handlers.onScrubStart) === \"function\" && handlers.onScrubStart();\n setActive(true);\n bindEvents();\n }\n };\n const stopScrubbing = () => {\n if (isSliding.current && mounted.current) {\n isSliding.current = false;\n setActive(false);\n unbindEvents();\n setTimeout(() => {\n typeof (handlers == null ? void 0 : handlers.onScrubEnd) === \"function\" && handlers.onScrubEnd();\n }, 0);\n }\n };\n const onMouseDown = (event) => {\n startScrubbing();\n event.preventDefault();\n onMouseMove(event);\n };\n const onMouseMove = (event) => onScrub({ x: event.clientX, y: event.clientY });\n const onTouchStart = (event) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n startScrubbing();\n onTouchMove(event);\n };\n const onTouchMove = (event) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n onScrub({ x: event.changedTouches[0].clientX, y: event.changedTouches[0].clientY });\n };\n (_a = ref.current) == null ? void 0 : _a.addEventListener(\"mousedown\", onMouseDown);\n (_b = ref.current) == null ? void 0 : _b.addEventListener(\"touchstart\", onTouchStart, { passive: false });\n return () => {\n if (ref.current) {\n ref.current.removeEventListener(\"mousedown\", onMouseDown);\n ref.current.removeEventListener(\"touchstart\", onTouchStart);\n }\n };\n }, [dir, onChange]);\n return { ref, active };\n}\n\nexport { clampUseMovePosition, useMove };\n//# sourceMappingURL=use-move.mjs.map\n","'use client';\nimport { useState } from 'react';\n\nfunction useUncontrolled({\n value,\n defaultValue,\n finalValue,\n onChange = () => {\n }\n}) {\n const [uncontrolledValue, setUncontrolledValue] = useState(\n defaultValue !== void 0 ? defaultValue : finalValue\n );\n const handleUncontrolledChange = (val) => {\n setUncontrolledValue(val);\n onChange == null ? void 0 : onChange(val);\n };\n if (value !== void 0) {\n return [value, onChange, true];\n }\n return [uncontrolledValue, handleUncontrolledChange, false];\n}\n\nexport { useUncontrolled };\n//# sourceMappingURL=use-uncontrolled.mjs.map\n","'use client';\nfunction range(start, end) {\n const length = end - start + 1;\n return Array.from({ length }, (_, index) => index + start);\n}\n\nexport { range };\n//# sourceMappingURL=range.mjs.map\n","'use client';\nimport { useMemo } from 'react';\nimport { useUncontrolled } from '../use-uncontrolled/use-uncontrolled.mjs';\nimport { range } from '../utils/range/range.mjs';\n\nconst DOTS = \"dots\";\nfunction usePagination({\n total,\n siblings = 1,\n boundaries = 1,\n page,\n initialPage = 1,\n onChange\n}) {\n const _total = Math.max(Math.trunc(total), 0);\n const [activePage, setActivePage] = useUncontrolled({\n value: page,\n onChange,\n defaultValue: initialPage,\n finalValue: initialPage\n });\n const setPage = (pageNumber) => {\n if (pageNumber <= 0) {\n setActivePage(1);\n } else if (pageNumber > _total) {\n setActivePage(_total);\n } else {\n setActivePage(pageNumber);\n }\n };\n const next = () => setPage(activePage + 1);\n const previous = () => setPage(activePage - 1);\n const first = () => setPage(1);\n const last = () => setPage(_total);\n const paginationRange = useMemo(() => {\n const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;\n if (totalPageNumbers >= _total) {\n return range(1, _total);\n }\n const leftSiblingIndex = Math.max(activePage - siblings, boundaries);\n const rightSiblingIndex = Math.min(activePage + siblings, _total - boundaries);\n const shouldShowLeftDots = leftSiblingIndex > boundaries + 2;\n const shouldShowRightDots = rightSiblingIndex < _total - (boundaries + 1);\n if (!shouldShowLeftDots && shouldShowRightDots) {\n const leftItemCount = siblings * 2 + boundaries + 2;\n return [...range(1, leftItemCount), DOTS, ...range(_total - (boundaries - 1), _total)];\n }\n if (shouldShowLeftDots && !shouldShowRightDots) {\n const rightItemCount = boundaries + 1 + 2 * siblings;\n return [...range(1, boundaries), DOTS, ...range(_total - rightItemCount, _total)];\n }\n return [\n ...range(1, boundaries),\n DOTS,\n ...range(leftSiblingIndex, rightSiblingIndex),\n DOTS,\n ...range(_total - boundaries + 1, _total)\n ];\n }, [_total, siblings, activePage]);\n return {\n range: paginationRange,\n active: activePage,\n setPage,\n next,\n previous,\n first,\n last\n };\n}\n\nexport { DOTS, usePagination };\n//# sourceMappingURL=use-pagination.mjs.map\n","'use client';\nimport { useMediaQuery } from '../use-media-query/use-media-query.mjs';\n\nfunction useReducedMotion(initialValue, options) {\n return useMediaQuery(\"(prefers-reduced-motion: reduce)\", initialValue, options);\n}\n\nexport { useReducedMotion };\n//# sourceMappingURL=use-reduced-motion.mjs.map\n","'use client';\nimport { useRef, useState, useMemo, useEffect } from 'react';\n\nconst defaultState = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0\n};\nfunction useResizeObserver() {\n const frameID = useRef(0);\n const ref = useRef(null);\n const [rect, setRect] = useState(defaultState);\n const observer = useMemo(\n () => typeof window !== \"undefined\" ? new ResizeObserver((entries) => {\n const entry = entries[0];\n if (entry) {\n cancelAnimationFrame(frameID.current);\n frameID.current = requestAnimationFrame(() => {\n if (ref.current) {\n setRect(entry.contentRect);\n }\n });\n }\n }) : null,\n []\n );\n useEffect(() => {\n if (ref.current) {\n observer == null ? void 0 : observer.observe(ref.current);\n }\n return () => {\n observer == null ? void 0 : observer.disconnect();\n if (frameID.current) {\n cancelAnimationFrame(frameID.current);\n }\n };\n }, [ref.current]);\n return [ref, rect];\n}\nfunction useElementSize() {\n const [ref, { width, height }] = useResizeObserver();\n return { ref, width, height };\n}\n\nexport { useElementSize, useResizeObserver };\n//# sourceMappingURL=use-resize-observer.mjs.map\n","'use client';\nimport { useState, useCallback } from 'react';\n\nfunction useDisclosure(initialState = false, callbacks) {\n const { onOpen, onClose } = callbacks || {};\n const [opened, setOpened] = useState(initialState);\n const open = useCallback(() => {\n setOpened((isOpened) => {\n if (!isOpened) {\n onOpen == null ? void 0 : onOpen();\n return true;\n }\n return isOpened;\n });\n }, [onOpen]);\n const close = useCallback(() => {\n setOpened((isOpened) => {\n if (isOpened) {\n onClose == null ? void 0 : onClose();\n return false;\n }\n return isOpened;\n });\n }, [onClose]);\n const toggle = useCallback(() => {\n opened ? close() : open();\n }, [close, open, opened]);\n return [opened, { open, close, toggle }];\n}\n\nexport { useDisclosure };\n//# sourceMappingURL=use-disclosure.mjs.map\n","'use client';\nimport { useRef, useCallback, useEffect } from 'react';\n\nfunction useTimeout(callback, delay, options = { autoInvoke: false }) {\n const timeoutRef = useRef(null);\n const start = useCallback(\n (...callbackParams) => {\n if (!timeoutRef.current) {\n timeoutRef.current = window.setTimeout(() => {\n callback(callbackParams);\n timeoutRef.current = null;\n }, delay);\n }\n },\n [delay]\n );\n const clear = useCallback(() => {\n if (timeoutRef.current) {\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n }, []);\n useEffect(() => {\n if (options.autoInvoke) {\n start();\n }\n return clear;\n }, [clear, start]);\n return { start, clear };\n}\n\nexport { useTimeout };\n//# sourceMappingURL=use-timeout.mjs.map\n","'use client';\nimport { useState, useCallback } from 'react';\nimport { useIsomorphicEffect } from '../use-isomorphic-effect/use-isomorphic-effect.mjs';\n\nfunction useEyeDropper() {\n const [supported, setSupported] = useState(false);\n useIsomorphicEffect(() => {\n setSupported(typeof window !== \"undefined\" && \"EyeDropper\" in window);\n }, []);\n const open = useCallback(\n (options = {}) => {\n if (supported) {\n const eyeDropper = new window.EyeDropper();\n return eyeDropper.open(options);\n }\n return Promise.resolve(void 0);\n },\n [supported]\n );\n return { supported, open };\n}\n\nexport { useEyeDropper };\n//# sourceMappingURL=use-eye-dropper.mjs.map\n","'use client';\nfunction upperFirst(value) {\n return typeof value !== \"string\" ? \"\" : value.charAt(0).toUpperCase() + value.slice(1);\n}\n\nexport { upperFirst };\n//# sourceMappingURL=upper-first.mjs.map\n","'use client';\nimport { useRef, useState, useCallback, useEffect } from 'react';\nimport { useIsomorphicEffect } from '@mantine/hooks';\n\nfunction setColorSchemeAttribute(colorScheme, getRootElement) {\n var _a;\n const computedColorScheme = colorScheme !== \"auto\" ? colorScheme : window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"dark\" : \"light\";\n (_a = getRootElement()) == null ? void 0 : _a.setAttribute(\"data-mantine-color-scheme\", computedColorScheme);\n}\nfunction useProviderColorScheme({\n manager,\n defaultColorScheme,\n getRootElement,\n forceColorScheme\n}) {\n const media = useRef();\n const [value, setValue] = useState(() => manager.get(defaultColorScheme));\n const colorSchemeValue = forceColorScheme || value;\n const setColorScheme = useCallback(\n (colorScheme) => {\n if (!forceColorScheme) {\n setColorSchemeAttribute(colorScheme, getRootElement);\n setValue(colorScheme);\n manager.set(colorScheme);\n }\n },\n [manager.set, colorSchemeValue, forceColorScheme]\n );\n const clearColorScheme = useCallback(() => {\n setValue(defaultColorScheme);\n setColorSchemeAttribute(defaultColorScheme, getRootElement);\n manager.clear();\n }, [manager.clear, defaultColorScheme]);\n useEffect(() => {\n manager.subscribe(setColorScheme);\n return manager.unsubscribe;\n }, [manager.subscribe, manager.unsubscribe]);\n useIsomorphicEffect(() => {\n setColorSchemeAttribute(manager.get(defaultColorScheme), getRootElement);\n }, []);\n useEffect(() => {\n var _a;\n if (forceColorScheme) {\n setColorSchemeAttribute(forceColorScheme, getRootElement);\n return () => {\n };\n }\n media.current = window.matchMedia(\"(prefers-color-scheme: dark)\");\n const listener = (event) => {\n if (value === \"auto\") {\n setColorSchemeAttribute(event.matches ? \"dark\" : \"light\", getRootElement);\n }\n };\n (_a = media.current) == null ? void 0 : _a.addEventListener(\"change\", listener);\n return () => {\n var _a2;\n return (_a2 = media.current) == null ? void 0 : _a2.removeEventListener(\"change\", listener);\n };\n }, [value, forceColorScheme]);\n return { colorScheme: colorSchemeValue, setColorScheme, clearColorScheme };\n}\n\nexport { useProviderColorScheme };\n//# sourceMappingURL=use-provider-color-scheme.mjs.map\n","'use client';\nimport { useIsomorphicEffect } from '@mantine/hooks';\n\nfunction useRespectReduceMotion({\n respectReducedMotion,\n getRootElement\n}) {\n useIsomorphicEffect(() => {\n var _a;\n if (respectReducedMotion) {\n (_a = getRootElement()) == null ? void 0 : _a.setAttribute(\"data-respect-reduced-motion\", \"true\");\n }\n }, [respectReducedMotion]);\n}\n\nexport { useRespectReduceMotion };\n//# sourceMappingURL=use-respect-reduce-motion.mjs.map\n","'use client';\nfunction cssVariablesObjectToString(variables) {\n return Object.entries(variables).map(([name, value]) => `${name}: ${value};`).join(\"\");\n}\n\nexport { cssVariablesObjectToString };\n//# sourceMappingURL=css-variables-object-to-string.mjs.map\n","'use client';\nfunction wrapWithSelector(selectors, code) {\n const _selectors = Array.isArray(selectors) ? selectors : [selectors];\n return _selectors.reduce((acc, selector) => `${selector}{${acc}}`, code);\n}\n\nexport { wrapWithSelector };\n//# sourceMappingURL=wrap-with-selector.mjs.map\n","'use client';\nimport { cssVariablesObjectToString } from './css-variables-object-to-string.mjs';\nimport { wrapWithSelector } from './wrap-with-selector.mjs';\n\nfunction convertCssVariables(input, selector) {\n const sharedVariables = cssVariablesObjectToString(input.variables);\n const shared = sharedVariables ? wrapWithSelector(selector, sharedVariables) : \"\";\n const dark = cssVariablesObjectToString(input.dark);\n const darkForced = dark ? wrapWithSelector(`${selector}[data-mantine-color-scheme=\"dark\"]`, dark) : \"\";\n const light = cssVariablesObjectToString(input.light);\n const lightForced = light ? wrapWithSelector(`${selector}[data-mantine-color-scheme=\"light\"]`, light) : \"\";\n return `${shared}${darkForced}${lightForced}`;\n}\n\nexport { convertCssVariables };\n//# sourceMappingURL=convert-css-variables.mjs.map\n","'use client';\nimport { getPrimaryShade } from '../color-functions/get-primary-shade/get-primary-shade.mjs';\nimport { rem } from '../../utils/units-converters/rem.mjs';\nimport { keys } from '../../utils/keys/keys.mjs';\nimport { rgba } from '../color-functions/rgba/rgba.mjs';\n\nfunction assignSizeVariables(variables, sizes, name) {\n keys(sizes).forEach(\n (size) => Object.assign(variables, { [`--mantine-${name}-${size}`]: sizes[size] })\n );\n}\nconst defaultCssVariablesResolver = (theme) => {\n const darkPrimaryShade = getPrimaryShade(theme, \"dark\");\n const lightPrimaryShade = getPrimaryShade(theme, \"light\");\n const defaultRadius = theme.defaultRadius in theme.radius ? theme.radius[theme.defaultRadius] : rem(theme.defaultRadius);\n const result = {\n variables: {\n \"--mantine-scale\": theme.scale.toString(),\n \"--mantine-cursor-type\": theme.cursorType,\n \"--mantine-webkit-font-smoothing\": theme.fontSmoothing ? \"antialiased\" : \"unset\",\n \"--mantine-color-scheme\": \"light dark\",\n \"--mantine-moz-font-smoothing\": theme.fontSmoothing ? \"grayscale\" : \"unset\",\n \"--mantine-color-white\": theme.white,\n \"--mantine-color-black\": theme.black,\n \"--mantine-line-height\": theme.lineHeights.md,\n \"--mantine-font-family\": theme.fontFamily,\n \"--mantine-font-family-monospace\": theme.fontFamilyMonospace,\n \"--mantine-font-family-headings\": theme.headings.fontFamily,\n \"--mantine-heading-font-weight\": theme.headings.fontWeight,\n \"--mantine-radius-default\": defaultRadius,\n // Primary colors\n \"--mantine-primary-color-filled\": `var(--mantine-color-${theme.primaryColor}-filled)`,\n \"--mantine-primary-color-filled-hover\": `var(--mantine-color-${theme.primaryColor}-filled-hover)`,\n \"--mantine-primary-color-light\": `var(--mantine-color-${theme.primaryColor}-light)`,\n \"--mantine-primary-color-light-hover\": `var(--mantine-color-${theme.primaryColor}-light-hover)`,\n \"--mantine-primary-color-light-color\": `var(--mantine-color-${theme.primaryColor}-light-color)`\n },\n light: {\n \"--mantine-color-bright\": \"var(--mantine-color-black)\",\n \"--mantine-color-text\": theme.black,\n \"--mantine-color-body\": theme.white,\n \"--mantine-color-error\": theme.colors.red[6],\n \"--mantine-color-placeholder\": theme.colors.gray[5],\n \"--mantine-color-anchor\": theme.colors[theme.primaryColor][lightPrimaryShade],\n \"--mantine-color-default\": theme.white,\n \"--mantine-color-default-hover\": theme.colors.gray[0],\n \"--mantine-color-default-color\": theme.black,\n \"--mantine-color-default-border\": theme.colors.gray[4]\n },\n dark: {\n \"--mantine-color-bright\": \"var(--mantine-color-white)\",\n \"--mantine-color-text\": \"var(--mantine-color-dark-0)\",\n \"--mantine-color-body\": theme.colors.dark[7],\n \"--mantine-color-error\": theme.colors.red[9],\n \"--mantine-color-placeholder\": theme.colors.dark[3],\n \"--mantine-color-anchor\": theme.colors[theme.primaryColor][4],\n \"--mantine-color-default\": theme.colors.dark[6],\n \"--mantine-color-default-hover\": theme.colors.dark[5],\n \"--mantine-color-default-color\": theme.white,\n \"--mantine-color-default-border\": theme.colors.dark[4]\n }\n };\n assignSizeVariables(result.variables, theme.breakpoints, \"breakpoint\");\n assignSizeVariables(result.variables, theme.spacing, \"spacing\");\n assignSizeVariables(result.variables, theme.fontSizes, \"font-size\");\n assignSizeVariables(result.variables, theme.lineHeights, \"line-height\");\n assignSizeVariables(result.variables, theme.shadows, \"shadow\");\n assignSizeVariables(result.variables, theme.radius, \"radius\");\n keys(theme.colors).forEach((color) => {\n theme.colors[color].forEach((shade, index) => {\n result.variables[`--mantine-color-${color}-${index}`] = shade;\n });\n const lightFilledHover = lightPrimaryShade === 9 ? theme.colors[color][8] : theme.colors[color][lightPrimaryShade + 1];\n const darkFilledHover = darkPrimaryShade === 9 ? theme.colors[color][8] : theme.colors[color][darkPrimaryShade + 1];\n result.light[\"--mantine-color-dimmed\"] = \"var(--mantine-color-gray-6)\";\n result.light[`--mantine-color-${color}-filled`] = theme.colors[color][lightPrimaryShade];\n result.light[`--mantine-color-${color}-filled-hover`] = lightFilledHover;\n result.light[`--mantine-color-${color}-light`] = rgba(\n theme.colors[color][lightPrimaryShade],\n 0.1\n );\n result.light[`--mantine-color-${color}-light-hover`] = rgba(\n theme.colors[color][lightPrimaryShade],\n 0.12\n );\n result.light[`--mantine-color-${color}-light-color`] = theme.colors[color][lightPrimaryShade];\n result.light[`--mantine-color-${color}-outline`] = theme.colors[color][lightPrimaryShade];\n result.light[`--mantine-color-${color}-outline-hover`] = rgba(\n theme.colors[color][lightPrimaryShade],\n 0.05\n );\n result.dark[\"--mantine-color-dimmed\"] = \"var(--mantine-color-dark-2)\";\n result.dark[`--mantine-color-${color}-filled`] = theme.colors[color][darkPrimaryShade];\n result.dark[`--mantine-color-${color}-filled-hover`] = darkFilledHover;\n result.dark[`--mantine-color-${color}-light`] = rgba(\n theme.colors[color][Math.max(0, darkPrimaryShade - 2)],\n 0.15\n );\n result.dark[`--mantine-color-${color}-light-hover`] = rgba(\n theme.colors[color][Math.max(0, darkPrimaryShade - 2)],\n 0.2\n );\n result.dark[`--mantine-color-${color}-light-color`] = theme.colors[color][Math.max(darkPrimaryShade - 5, 0)];\n result.dark[`--mantine-color-${color}-outline`] = theme.colors[color][Math.max(darkPrimaryShade - 4, 0)];\n result.dark[`--mantine-color-${color}-outline-hover`] = rgba(\n theme.colors[color][Math.max(darkPrimaryShade - 4, 0)],\n 0.05\n );\n });\n const headings = theme.headings.sizes;\n keys(headings).forEach((heading) => {\n result.variables[`--mantine-${heading}-font-size`] = headings[heading].fontSize;\n result.variables[`--mantine-${heading}-line-height`] = headings[heading].lineHeight;\n result.variables[`--mantine-${heading}-font-weight`] = headings[heading].fontWeight || theme.headings.fontWeight;\n });\n return result;\n};\n\nexport { defaultCssVariablesResolver };\n//# sourceMappingURL=default-css-variables-resolver.mjs.map\n","'use client';\nimport { defaultCssVariablesResolver } from './default-css-variables-resolver.mjs';\nimport { deepMerge } from '../../utils/deep-merge/deep-merge.mjs';\n\nfunction getMergedVariables({ theme, generator }) {\n const defaultResolver = defaultCssVariablesResolver(theme);\n const providerGenerator = generator == null ? void 0 : generator(theme);\n return providerGenerator ? deepMerge(defaultResolver, providerGenerator) : defaultResolver;\n}\n\nexport { getMergedVariables };\n//# sourceMappingURL=get-merged-variables.mjs.map\n","'use client';\nimport { defaultCssVariablesResolver } from './default-css-variables-resolver.mjs';\nimport { DEFAULT_THEME } from '../default-theme.mjs';\nimport { keys } from '../../utils/keys/keys.mjs';\n\nconst defaultCssVariables = defaultCssVariablesResolver(DEFAULT_THEME);\nfunction removeDefaultVariables(input) {\n const cleaned = {\n variables: {},\n light: {},\n dark: {}\n };\n keys(input.variables).forEach((key) => {\n if (defaultCssVariables.variables[key] !== input.variables[key]) {\n cleaned.variables[key] = input.variables[key];\n }\n });\n keys(input.light).forEach((key) => {\n if (defaultCssVariables.light[key] !== input.light[key]) {\n cleaned.light[key] = input.light[key];\n }\n });\n keys(input.dark).forEach((key) => {\n if (defaultCssVariables.dark[key] !== input.dark[key]) {\n cleaned.dark[key] = input.dark[key];\n }\n });\n return cleaned;\n}\n\nexport { removeDefaultVariables };\n//# sourceMappingURL=remove-default-variables.mjs.map\n","'use client';\nimport React from 'react';\nimport { useMantineStyleNonce, useMantineCssVariablesResolver } from '../Mantine.context.mjs';\nimport { convertCssVariables } from '../convert-css-variables/convert-css-variables.mjs';\nimport { getMergedVariables } from './get-merged-variables.mjs';\nimport { removeDefaultVariables } from './remove-default-variables.mjs';\nimport { useMantineTheme } from '../MantineThemeProvider/MantineThemeProvider.mjs';\n\nfunction getColorSchemeCssVariables(selector) {\n return `\n ${selector}[data-mantine-color-scheme=\"dark\"] { --mantine-color-scheme: dark; }\n ${selector}[data-mantine-color-scheme=\"light\"] { --mantine-color-scheme: light; }\n`;\n}\nfunction MantineCssVariables({ cssVariablesSelector }) {\n const theme = useMantineTheme();\n const nonce = useMantineStyleNonce();\n const generator = useMantineCssVariablesResolver();\n const mergedVariables = getMergedVariables({ theme, generator });\n const shouldCleanVariables = cssVariablesSelector === \":root\";\n const cleanedVariables = shouldCleanVariables ? removeDefaultVariables(mergedVariables) : mergedVariables;\n const css = convertCssVariables(cleanedVariables, cssVariablesSelector);\n if (css) {\n return /* @__PURE__ */ React.createElement(\n \"style\",\n {\n \"data-mantine-styles\": true,\n nonce: nonce == null ? void 0 : nonce(),\n dangerouslySetInnerHTML: {\n __html: `${css}${shouldCleanVariables ? \"\" : getColorSchemeCssVariables(cssVariablesSelector)}`\n }\n }\n );\n }\n return null;\n}\nMantineCssVariables.displayName = \"@mantine/CssVariables\";\n\nexport { MantineCssVariables };\n//# sourceMappingURL=MantineCssVariables.mjs.map\n","'use client';\nimport React from 'react';\nimport { useMantineStyleNonce } from '../Mantine.context.mjs';\nimport { useMantineTheme } from '../MantineThemeProvider/MantineThemeProvider.mjs';\nimport { keys } from '../../utils/keys/keys.mjs';\nimport { px } from '../../utils/units-converters/px.mjs';\nimport { em } from '../../utils/units-converters/rem.mjs';\n\nfunction MantineClasses() {\n const theme = useMantineTheme();\n const nonce = useMantineStyleNonce();\n const classes = keys(theme.breakpoints).reduce((acc, breakpoint) => {\n const pxValue = px(theme.breakpoints[breakpoint]);\n return `${acc}@media (max-width: ${em(\n pxValue - 0.1\n )}) {.mantine-visible-from-${breakpoint} {display: none !important;}}@media (min-width: ${em(\n pxValue\n )}) {.mantine-hidden-from-${breakpoint} {display: none !important;}}`;\n }, \"\");\n return /* @__PURE__ */ React.createElement(\n \"style\",\n {\n \"data-mantine-styles\": \"classes\",\n nonce: nonce == null ? void 0 : nonce(),\n dangerouslySetInnerHTML: { __html: classes }\n }\n );\n}\n\nexport { MantineClasses };\n//# sourceMappingURL=MantineClasses.mjs.map\n","'use client';\nimport React from 'react';\nimport { suppressNextjsWarning } from './suppress-nextjs-warning.mjs';\nimport { MantineContext } from './Mantine.context.mjs';\nimport { localStorageColorSchemeManager } from './color-scheme-managers/local-storage-manager.mjs';\nimport { useProviderColorScheme } from './use-mantine-color-scheme/use-provider-color-scheme.mjs';\nimport { useRespectReduceMotion } from './use-respect-reduce-motion/use-respect-reduce-motion.mjs';\nimport { MantineThemeProvider } from './MantineThemeProvider/MantineThemeProvider.mjs';\nimport { MantineCssVariables } from './MantineCssVariables/MantineCssVariables.mjs';\nimport { MantineClasses } from './MantineClasses/MantineClasses.mjs';\n\nsuppressNextjsWarning();\nfunction MantineProvider({\n theme,\n children,\n getStyleNonce,\n withCssVariables = true,\n cssVariablesSelector = \":root\",\n classNamesPrefix = \"mantine\",\n colorSchemeManager = localStorageColorSchemeManager(),\n defaultColorScheme = \"light\",\n getRootElement = () => document.documentElement,\n cssVariablesResolver,\n forceColorScheme\n}) {\n const { colorScheme, setColorScheme, clearColorScheme } = useProviderColorScheme({\n defaultColorScheme,\n forceColorScheme,\n manager: colorSchemeManager,\n getRootElement\n });\n useRespectReduceMotion({\n respectReducedMotion: (theme == null ? void 0 : theme.respectReducedMotion) || false,\n getRootElement\n });\n return /* @__PURE__ */ React.createElement(\n MantineContext.Provider,\n {\n value: {\n colorSchemeManager,\n colorScheme,\n setColorScheme,\n clearColorScheme,\n getRootElement,\n classNamesPrefix,\n getStyleNonce,\n cssVariablesResolver,\n cssVariablesSelector\n }\n },\n /* @__PURE__ */ React.createElement(MantineThemeProvider, { theme }, withCssVariables && /* @__PURE__ */ React.createElement(MantineCssVariables, { cssVariablesSelector }), /* @__PURE__ */ React.createElement(MantineClasses, null), children)\n );\n}\nMantineProvider.displayName = \"@mantine/core/MantineProvider\";\n\nexport { MantineProvider };\n//# sourceMappingURL=MantineProvider.mjs.map\n","'use client';\nimport { useMantineTheme } from '../MantineThemeProvider/MantineThemeProvider.mjs';\nimport { filterProps } from '../../utils/filter-props/filter-props.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction useProps(component, defaultProps, props) {\n var _a;\n const theme = useMantineTheme();\n const contextPropsPayload = (_a = theme.components[component]) == null ? void 0 : _a.defaultProps;\n const contextProps = typeof contextPropsPayload === \"function\" ? contextPropsPayload(theme) : contextPropsPayload;\n return __spreadValues(__spreadValues(__spreadValues({}, defaultProps), contextProps), filterProps(props));\n}\n\nexport { useProps };\n//# sourceMappingURL=use-props.mjs.map\n","'use client';\nimport { keys } from '../../utils/keys/keys.mjs';\nimport { camelToKebabCase } from '../../utils/camel-to-kebab-case/camel-to-kebab-case.mjs';\n\nfunction cssObjectToString(css) {\n return keys(css).reduce(\n (acc, rule) => css[rule] !== void 0 ? `${acc}${camelToKebabCase(rule)}:${css[rule]};` : acc,\n \"\"\n ).trim();\n}\n\nexport { cssObjectToString };\n//# sourceMappingURL=css-object-to-string.mjs.map\n","'use client';\nimport { cssObjectToString } from '../css-object-to-string/css-object-to-string.mjs';\n\nfunction stylesToString({ selector, styles, media }) {\n const baseStyles = styles ? cssObjectToString(styles) : \"\";\n const mediaQueryStyles = !Array.isArray(media) ? [] : media.map((item) => `@media${item.query}{${selector}{${cssObjectToString(item.styles)}}}`);\n return `${baseStyles ? `${selector}{${baseStyles}}` : \"\"}${mediaQueryStyles.join(\"\")}`.trim();\n}\n\nexport { stylesToString };\n//# sourceMappingURL=styles-to-string.mjs.map\n","'use client';\nimport React from 'react';\nimport { stylesToString } from './styles-to-string/styles-to-string.mjs';\nimport { useMantineStyleNonce } from '../MantineProvider/Mantine.context.mjs';\n\nfunction InlineStyles({ selector, styles, media }) {\n const nonce = useMantineStyleNonce();\n return /* @__PURE__ */ React.createElement(\n \"style\",\n {\n \"data-mantine-styles\": \"inline\",\n nonce: nonce == null ? void 0 : nonce(),\n dangerouslySetInnerHTML: { __html: stylesToString({ selector, styles, media }) }\n }\n );\n}\n\nexport { InlineStyles };\n//# sourceMappingURL=InlineStyles.mjs.map\n","'use client';\nimport { useId } from 'react';\n\nfunction useRandomClassName() {\n const id = useId().replace(/:/g, \"\");\n return `__m__-${id}`;\n}\n\nexport { useRandomClassName };\n//# sourceMappingURL=use-random-classname.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction getStyleObject(style, theme) {\n if (Array.isArray(style)) {\n return [...style].reduce(\n (acc, item) => __spreadValues(__spreadValues({}, acc), getStyleObject(item, theme)),\n {}\n );\n }\n if (typeof style === \"function\") {\n return style(theme);\n }\n if (style == null) {\n return {};\n }\n return style;\n}\n\nexport { getStyleObject };\n//# sourceMappingURL=get-style-object.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction mergeStyles(styles, theme) {\n if (Array.isArray(styles)) {\n return [...styles].reduce(\n (acc, item) => __spreadValues(__spreadValues({}, acc), mergeStyles(item, theme)),\n {}\n );\n }\n if (typeof styles === \"function\") {\n return styles(theme);\n }\n if (styles == null) {\n return {};\n }\n return styles;\n}\nfunction getBoxStyle({\n theme,\n style,\n vars,\n styleProps\n}) {\n const _style = mergeStyles(style, theme);\n const _vars = mergeStyles(vars, theme);\n return __spreadValues(__spreadValues(__spreadValues({}, _style), _vars), styleProps);\n}\n\nexport { getBoxStyle };\n//# sourceMappingURL=get-box-style.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nfunction transformModKey(key) {\n return key.startsWith(\"data-\") ? key : `data-${key}`;\n}\nfunction getMod(props) {\n return Object.keys(props).reduce((acc, key) => {\n const value = props[key];\n if (value === void 0 || value === \"\" || value === false || value === null) {\n return acc;\n }\n acc[transformModKey(key)] = props[key];\n return acc;\n }, {});\n}\nfunction getBoxMod(mod) {\n if (!mod) {\n return null;\n }\n if (typeof mod === \"string\") {\n return { [transformModKey(mod)]: true };\n }\n if (Array.isArray(mod)) {\n return [...mod].reduce(\n (acc, value) => __spreadValues(__spreadValues({}, acc), getBoxMod(value)),\n {}\n );\n }\n return getMod(mod);\n}\n\nexport { getBoxMod, getMod };\n//# sourceMappingURL=get-box-mod.mjs.map\n","'use client';\nimport { filterProps } from '../../../utils/filter-props/filter-props.mjs';\n\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nfunction extractStyleProps(others) {\n const _a = others, {\n m,\n mx,\n my,\n mt,\n mb,\n ml,\n mr,\n p,\n px,\n py,\n pt,\n pb,\n pl,\n pr,\n bg,\n c,\n opacity,\n ff,\n fz,\n fw,\n lts,\n ta,\n lh,\n fs,\n tt,\n td,\n w,\n miw,\n maw,\n h,\n mih,\n mah,\n bgsz,\n bgp,\n bgr,\n bga,\n pos,\n top,\n left,\n bottom,\n right,\n inset,\n display,\n hiddenFrom,\n visibleFrom,\n lightHidden,\n darkHidden\n } = _a, rest = __objRest(_a, [\n \"m\",\n \"mx\",\n \"my\",\n \"mt\",\n \"mb\",\n \"ml\",\n \"mr\",\n \"p\",\n \"px\",\n \"py\",\n \"pt\",\n \"pb\",\n \"pl\",\n \"pr\",\n \"bg\",\n \"c\",\n \"opacity\",\n \"ff\",\n \"fz\",\n \"fw\",\n \"lts\",\n \"ta\",\n \"lh\",\n \"fs\",\n \"tt\",\n \"td\",\n \"w\",\n \"miw\",\n \"maw\",\n \"h\",\n \"mih\",\n \"mah\",\n \"bgsz\",\n \"bgp\",\n \"bgr\",\n \"bga\",\n \"pos\",\n \"top\",\n \"left\",\n \"bottom\",\n \"right\",\n \"inset\",\n \"display\",\n \"hiddenFrom\",\n \"visibleFrom\",\n \"lightHidden\",\n \"darkHidden\"\n ]);\n const styleProps = filterProps({\n m,\n mx,\n my,\n mt,\n mb,\n ml,\n mr,\n p,\n px,\n py,\n pt,\n pb,\n pl,\n pr,\n bg,\n c,\n opacity,\n ff,\n fz,\n fw,\n lts,\n ta,\n lh,\n fs,\n tt,\n td,\n w,\n miw,\n maw,\n h,\n mih,\n mah,\n bgsz,\n bgp,\n bgr,\n bga,\n pos,\n top,\n left,\n bottom,\n right,\n inset,\n display,\n hiddenFrom,\n visibleFrom,\n lightHidden,\n darkHidden\n });\n return { styleProps, rest };\n}\n\nexport { extractStyleProps };\n//# sourceMappingURL=extract-style-props.mjs.map\n","'use client';\nimport { parseThemeColor } from '../../../../MantineProvider/color-functions/parse-theme-color/parse-theme-color.mjs';\n\nfunction colorResolver(color, theme) {\n const parsedColor = parseThemeColor({ color, theme });\n if (parsedColor.color === \"dimmed\") {\n return \"var(--mantine-color-dimmed)\";\n }\n if (parsedColor.color === \"bright\") {\n return \"var(--mantine-color-bright)\";\n }\n return parsedColor.variable ? `var(${parsedColor.variable})` : parsedColor.color;\n}\n\nexport { colorResolver };\n//# sourceMappingURL=color-resolver.mjs.map\n","'use client';\nimport { rem } from '../../../../utils/units-converters/rem.mjs';\n\nfunction fontSizeResolver(value, theme) {\n if (typeof value === \"string\" && value in theme.fontSizes) {\n return `var(--mantine-font-size-${value})`;\n }\n if (typeof value === \"number\") {\n return rem(value);\n }\n if (typeof value === \"string\") {\n return rem(value);\n }\n return value;\n}\n\nexport { fontSizeResolver };\n//# sourceMappingURL=font-size-resolver.mjs.map\n","'use client';\nimport { rem } from '../../../../utils/units-converters/rem.mjs';\n\nfunction spacingResolver(value, theme) {\n if (typeof value === \"number\") {\n return rem(value);\n }\n if (typeof value === \"string\") {\n const mod = value.replace(\"-\", \"\");\n if (!(mod in theme.spacing)) {\n return rem(value);\n }\n const variable = `--mantine-spacing-${mod}`;\n return value.startsWith(\"-\") ? `calc(var(${variable}) * -1)` : `var(${variable})`;\n }\n return value;\n}\n\nexport { spacingResolver };\n//# sourceMappingURL=spacing-resolver.mjs.map\n","'use client';\nfunction identityResolver(value) {\n return value;\n}\n\nexport { identityResolver };\n//# sourceMappingURL=identity-resolver.mjs.map\n","'use client';\nimport { rem } from '../../../../utils/units-converters/rem.mjs';\n\nfunction sizeResolver(value) {\n if (typeof value === \"number\") {\n return rem(value);\n }\n return value;\n}\n\nexport { sizeResolver };\n//# sourceMappingURL=size-resolver.mjs.map\n","'use client';\nfunction lineHeightResolver(value, theme) {\n if (typeof value === \"string\" && value in theme.fontSizes) {\n return `var(--mantine-line-height-${value})`;\n }\n return value;\n}\n\nexport { lineHeightResolver };\n//# sourceMappingURL=line-height-resolver.mjs.map\n","'use client';\nimport { colorResolver } from './color-resolver/color-resolver.mjs';\nimport { fontSizeResolver } from './font-size-resolver/font-size-resolver.mjs';\nimport { spacingResolver } from './spacing-resolver/spacing-resolver.mjs';\nimport { identityResolver } from './identity-resolver/identity-resolver.mjs';\nimport { sizeResolver } from './size-resolver/size-resolver.mjs';\nimport { lineHeightResolver } from './line-height-resolver/line-height-resolver.mjs';\n\nconst resolvers = {\n color: colorResolver,\n fontSize: fontSizeResolver,\n spacing: spacingResolver,\n identity: identityResolver,\n size: sizeResolver,\n lineHeight: lineHeightResolver\n};\n\nexport { resolvers };\n//# sourceMappingURL=index.mjs.map\n","'use client';\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nfunction replaceMediaQuery(query) {\n return query.replace(\"(min-width: \", \"\").replace(\"em)\", \"\");\n}\nfunction sortMediaQueries(_a) {\n var _b = _a, {\n media\n } = _b, props = __objRest(_b, [\n \"media\"\n ]);\n const breakpoints = Object.keys(media);\n const sortedMedia = breakpoints.sort((a, b) => Number(replaceMediaQuery(a)) - Number(replaceMediaQuery(b))).map((query) => ({ query, styles: media[query] }));\n return __spreadProps(__spreadValues({}, props), { media: sortedMedia });\n}\n\nexport { sortMediaQueries };\n//# sourceMappingURL=sort-media-queries.mjs.map\n","'use client';\nimport { resolvers } from '../resolvers/index.mjs';\nimport { sortMediaQueries } from './sort-media-queries.mjs';\nimport { keys } from '../../../utils/keys/keys.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nfunction hasResponsiveStyles(styleProp) {\n if (typeof styleProp !== \"object\" || styleProp === null) {\n return false;\n }\n const breakpoints = Object.keys(styleProp);\n if (breakpoints.length === 1 && breakpoints[0] === \"base\") {\n return false;\n }\n return true;\n}\nfunction getBaseValue(value) {\n if (typeof value === \"object\" && value !== null) {\n if (\"base\" in value) {\n return value.base;\n }\n return void 0;\n }\n return value;\n}\nfunction getBreakpointKeys(value) {\n if (typeof value === \"object\" && value !== null) {\n return keys(value).filter((key) => key !== \"base\");\n }\n return [];\n}\nfunction getBreakpointValue(value, breakpoint) {\n if (typeof value === \"object\" && value !== null && breakpoint in value) {\n return value[breakpoint];\n }\n return value;\n}\nfunction parseStyleProps({\n styleProps,\n data,\n theme\n}) {\n return sortMediaQueries(\n keys(styleProps).reduce(\n (acc, styleProp) => {\n if (styleProp === \"hiddenFrom\" || styleProp === \"visibleFrom\") {\n return acc;\n }\n const propertyData = data[styleProp];\n const properties = Array.isArray(propertyData.property) ? propertyData.property : [propertyData.property];\n const baseValue = getBaseValue(styleProps[styleProp]);\n if (!hasResponsiveStyles(styleProps[styleProp])) {\n properties.forEach((property) => {\n acc.inlineStyles[property] = resolvers[propertyData.type](baseValue, theme);\n });\n return acc;\n }\n acc.hasResponsiveStyles = true;\n const breakpoints = getBreakpointKeys(styleProps[styleProp]);\n properties.forEach((property) => {\n if (baseValue) {\n acc.styles[property] = resolvers[propertyData.type](baseValue, theme);\n }\n breakpoints.forEach((breakpoint) => {\n const bp = `(min-width: ${theme.breakpoints[breakpoint]})`;\n acc.media[bp] = __spreadProps(__spreadValues({}, acc.media[bp]), {\n [property]: resolvers[propertyData.type](\n getBreakpointValue(styleProps[styleProp], breakpoint),\n theme\n )\n });\n });\n });\n return acc;\n },\n {\n hasResponsiveStyles: false,\n styles: {},\n inlineStyles: {},\n media: {}\n }\n )\n );\n}\n\nexport { parseStyleProps };\n//# sourceMappingURL=parse-style-props.mjs.map\n","'use client';\nconst STYlE_PROPS_DATA = {\n m: { type: \"spacing\", property: \"margin\" },\n mt: { type: \"spacing\", property: \"marginTop\" },\n mb: { type: \"spacing\", property: \"marginBottom\" },\n ml: { type: \"spacing\", property: \"marginLeft\" },\n mr: { type: \"spacing\", property: \"marginRight\" },\n mx: { type: \"spacing\", property: [\"marginRight\", \"marginLeft\"] },\n my: { type: \"spacing\", property: [\"marginTop\", \"marginBottom\"] },\n p: { type: \"spacing\", property: \"padding\" },\n pt: { type: \"spacing\", property: \"paddingTop\" },\n pb: { type: \"spacing\", property: \"paddingBottom\" },\n pl: { type: \"spacing\", property: \"paddingLeft\" },\n pr: { type: \"spacing\", property: \"paddingRight\" },\n px: { type: \"spacing\", property: [\"paddingRight\", \"paddingLeft\"] },\n py: { type: \"spacing\", property: [\"paddingTop\", \"paddingBottom\"] },\n bg: { type: \"color\", property: \"background\" },\n c: { type: \"color\", property: \"color\" },\n opacity: { type: \"identity\", property: \"opacity\" },\n ff: { type: \"identity\", property: \"fontFamily\" },\n fz: { type: \"fontSize\", property: \"fontSize\" },\n fw: { type: \"identity\", property: \"fontWeight\" },\n lts: { type: \"size\", property: \"letterSpacing\" },\n ta: { type: \"identity\", property: \"textAlign\" },\n lh: { type: \"lineHeight\", property: \"lineHeight\" },\n fs: { type: \"identity\", property: \"fontStyle\" },\n tt: { type: \"identity\", property: \"textTransform\" },\n td: { type: \"identity\", property: \"textDecoration\" },\n w: { type: \"spacing\", property: \"width\" },\n miw: { type: \"spacing\", property: \"minWidth\" },\n maw: { type: \"spacing\", property: \"maxWidth\" },\n h: { type: \"spacing\", property: \"height\" },\n mih: { type: \"spacing\", property: \"minHeight\" },\n mah: { type: \"spacing\", property: \"maxHeight\" },\n bgsz: { type: \"size\", property: \"backgroundSize\" },\n bgp: { type: \"identity\", property: \"backgroundPosition\" },\n bgr: { type: \"identity\", property: \"backgroundRepeat\" },\n bga: { type: \"identity\", property: \"backgroundAttachment\" },\n pos: { type: \"identity\", property: \"position\" },\n top: { type: \"identity\", property: \"top\" },\n left: { type: \"size\", property: \"left\" },\n bottom: { type: \"size\", property: \"bottom\" },\n right: { type: \"size\", property: \"right\" },\n inset: { type: \"size\", property: \"inset\" },\n display: { type: \"identity\", property: \"display\" }\n};\n\nexport { STYlE_PROPS_DATA };\n//# sourceMappingURL=style-props-data.mjs.map\n","'use client';\nfunction createPolymorphicComponent(component) {\n return component;\n}\n\nexport { createPolymorphicComponent };\n//# sourceMappingURL=create-polymorphic-component.mjs.map\n","'use client';\nimport React, { forwardRef } from 'react';\nimport cx from 'clsx';\nimport { getBoxStyle } from './get-box-style/get-box-style.mjs';\nimport { useRandomClassName } from './use-random-classname/use-random-classname.mjs';\nimport { getBoxMod } from './get-box-mod/get-box-mod.mjs';\nimport { useMantineTheme } from '../MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport { extractStyleProps } from './style-props/extract-style-props/extract-style-props.mjs';\nimport { parseStyleProps } from './style-props/parse-style-props/parse-style-props.mjs';\nimport { STYlE_PROPS_DATA } from './style-props/style-props-data.mjs';\nimport { isNumberLike } from '../utils/is-number-like/is-number-like.mjs';\nimport { InlineStyles } from '../InlineStyles/InlineStyles.mjs';\nimport { createPolymorphicComponent } from '../factory/create-polymorphic-component.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst _Box = forwardRef(\n (_a, ref) => {\n var _b = _a, {\n component,\n style,\n __vars,\n className,\n variant,\n mod,\n size,\n hiddenFrom,\n visibleFrom,\n lightHidden,\n darkHidden,\n renderRoot\n } = _b, others = __objRest(_b, [\n \"component\",\n \"style\",\n \"__vars\",\n \"className\",\n \"variant\",\n \"mod\",\n \"size\",\n \"hiddenFrom\",\n \"visibleFrom\",\n \"lightHidden\",\n \"darkHidden\",\n \"renderRoot\"\n ]);\n const theme = useMantineTheme();\n const Element = component || \"div\";\n const { styleProps, rest } = extractStyleProps(others);\n const responsiveClassName = useRandomClassName();\n const parsedStyleProps = parseStyleProps({\n styleProps,\n theme,\n data: STYlE_PROPS_DATA\n });\n const props = __spreadValues(__spreadValues({\n ref,\n style: getBoxStyle({\n theme,\n style,\n vars: __vars,\n styleProps: parsedStyleProps.inlineStyles\n }),\n className: cx(className, {\n [responsiveClassName]: parsedStyleProps.hasResponsiveStyles,\n \"mantine-light-hidden\": lightHidden,\n \"mantine-dark-hidden\": darkHidden,\n [`mantine-hidden-from-${hiddenFrom}`]: hiddenFrom,\n [`mantine-visible-from-${visibleFrom}`]: visibleFrom\n }),\n \"data-variant\": variant,\n \"data-size\": isNumberLike(size) ? void 0 : size || void 0\n }, getBoxMod(mod)), rest);\n return /* @__PURE__ */ React.createElement(React.Fragment, null, parsedStyleProps.hasResponsiveStyles && /* @__PURE__ */ React.createElement(\n InlineStyles,\n {\n selector: `.${responsiveClassName}`,\n styles: parsedStyleProps.styles,\n media: parsedStyleProps.media\n }\n ), typeof renderRoot === \"function\" ? renderRoot(props) : /* @__PURE__ */ React.createElement(Element, __spreadValues({}, props)));\n }\n);\n_Box.displayName = \"@mantine/core/Box\";\nconst Box = createPolymorphicComponent(_Box);\n\nexport { Box };\n//# sourceMappingURL=Box.mjs.map\n","'use client';\nimport { forwardRef } from 'react';\n\nfunction identity(value) {\n return value;\n}\nfunction factory(ui) {\n const Component = forwardRef(ui);\n Component.extend = identity;\n return Component;\n}\n\nexport { factory, identity };\n//# sourceMappingURL=factory.mjs.map\n","'use client';\nimport { forwardRef } from 'react';\nimport { identity } from './factory.mjs';\n\nfunction polymorphicFactory(ui) {\n const Component = forwardRef(ui);\n Component.extend = identity;\n return Component;\n}\n\nexport { polymorphicFactory };\n//# sourceMappingURL=polymorphic-factory.mjs.map\n","'use client';\nimport React, { createContext, useContext, useState } from 'react';\nimport { useIsomorphicEffect } from '@mantine/hooks';\n\nconst DirectionContext = createContext({\n dir: \"ltr\",\n toggleDirection: () => {\n },\n setDirection: () => {\n }\n});\nfunction useDirection() {\n return useContext(DirectionContext);\n}\nfunction DirectionProvider({\n children,\n initialDirection = \"ltr\",\n detectDirection = true\n}) {\n const [dir, setDir] = useState(initialDirection);\n const setDirection = (direction) => {\n setDir(direction);\n document.documentElement.setAttribute(\"dir\", direction);\n };\n const toggleDirection = () => setDirection(dir === \"ltr\" ? \"rtl\" : \"ltr\");\n useIsomorphicEffect(() => {\n if (detectDirection) {\n const direction = document.documentElement.getAttribute(\"dir\");\n if (direction === \"rtl\" || direction === \"ltr\") {\n setDirection(direction);\n }\n }\n }, []);\n return /* @__PURE__ */ React.createElement(DirectionContext.Provider, { value: { dir, toggleDirection, setDirection } }, children);\n}\n\nexport { DirectionContext, DirectionProvider, useDirection };\n//# sourceMappingURL=DirectionProvider.mjs.map\n","'use client';\nimport { useRef, useState } from 'react';\nimport { flushSync } from 'react-dom';\nimport { mergeRefs, useDidUpdate } from '@mantine/hooks';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nfunction getAutoHeightDuration(height) {\n if (!height || typeof height === \"string\") {\n return 0;\n }\n const constant = height / 36;\n return Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10);\n}\nfunction getElementHeight(el) {\n return (el == null ? void 0 : el.current) ? el.current.scrollHeight : \"auto\";\n}\nconst raf = typeof window !== \"undefined\" && window.requestAnimationFrame;\nfunction useCollapse({\n transitionDuration,\n transitionTimingFunction = \"ease\",\n onTransitionEnd = () => {\n },\n opened\n}) {\n const el = useRef(null);\n const collapsedHeight = 0;\n const collapsedStyles = {\n display: \"none\",\n height: 0,\n overflow: \"hidden\"\n };\n const [styles, setStylesRaw] = useState(opened ? {} : collapsedStyles);\n const setStyles = (newStyles) => {\n flushSync(() => setStylesRaw(newStyles));\n };\n const mergeStyles = (newStyles) => {\n setStyles((oldStyles) => __spreadValues(__spreadValues({}, oldStyles), newStyles));\n };\n function getTransitionStyles(height) {\n const _duration = transitionDuration || getAutoHeightDuration(height);\n return {\n transition: `height ${_duration}ms ${transitionTimingFunction}`\n };\n }\n useDidUpdate(() => {\n if (typeof raf === \"function\") {\n if (opened) {\n raf(() => {\n mergeStyles({ willChange: \"height\", display: \"block\", overflow: \"hidden\" });\n raf(() => {\n const height = getElementHeight(el);\n mergeStyles(__spreadProps(__spreadValues({}, getTransitionStyles(height)), { height }));\n });\n });\n } else {\n raf(() => {\n const height = getElementHeight(el);\n mergeStyles(__spreadProps(__spreadValues({}, getTransitionStyles(height)), { willChange: \"height\", height }));\n raf(() => mergeStyles({ height: collapsedHeight, overflow: \"hidden\" }));\n });\n }\n }\n }, [opened]);\n const handleTransitionEnd = (e) => {\n if (e.target !== el.current || e.propertyName !== \"height\") {\n return;\n }\n if (opened) {\n const height = getElementHeight(el);\n if (height === styles.height) {\n setStyles({});\n } else {\n mergeStyles({ height });\n }\n onTransitionEnd();\n } else if (styles.height === collapsedHeight) {\n setStyles(collapsedStyles);\n onTransitionEnd();\n }\n };\n function getCollapseProps(_a = {}) {\n var _b = _a, { style = {}, refKey = \"ref\" } = _b, rest = __objRest(_b, [\"style\", \"refKey\"]);\n const theirRef = rest[refKey];\n return __spreadProps(__spreadValues({\n \"aria-hidden\": !opened\n }, rest), {\n [refKey]: mergeRefs(el, theirRef),\n onTransitionEnd: handleTransitionEnd,\n style: __spreadValues(__spreadValues({ boxSizing: \"border-box\" }, style), styles)\n });\n }\n return getCollapseProps;\n}\n\nexport { getElementHeight, useCollapse };\n//# sourceMappingURL=use-collapse.mjs.map\n","'use client';\nimport React, { forwardRef } from 'react';\nimport { useReducedMotion } from '@mantine/hooks';\nimport { useCollapse } from './use-collapse.mjs';\nimport { useProps } from '../../core/MantineProvider/use-props/use-props.mjs';\nimport { useMantineTheme } from '../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport { Box } from '../../core/Box/Box.mjs';\nimport { getStyleObject } from '../../core/Box/get-style-object/get-style-object.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst defaultProps = {\n transitionDuration: 200,\n transitionTimingFunction: \"ease\",\n animateOpacity: true\n};\nconst Collapse = forwardRef((props, ref) => {\n const _a = useProps(\"Collapse\", defaultProps, props), {\n children,\n in: opened,\n transitionDuration,\n transitionTimingFunction,\n style,\n onTransitionEnd,\n animateOpacity\n } = _a, others = __objRest(_a, [\n \"children\",\n \"in\",\n \"transitionDuration\",\n \"transitionTimingFunction\",\n \"style\",\n \"onTransitionEnd\",\n \"animateOpacity\"\n ]);\n const theme = useMantineTheme();\n const shouldReduceMotion = useReducedMotion();\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n const duration = reduceMotion ? 0 : transitionDuration;\n const getCollapseProps = useCollapse({\n opened,\n transitionDuration: duration,\n transitionTimingFunction,\n onTransitionEnd\n });\n if (duration === 0) {\n return opened ? /* @__PURE__ */ React.createElement(Box, __spreadValues({}, others), children) : null;\n }\n return /* @__PURE__ */ React.createElement(Box, __spreadValues({}, getCollapseProps(__spreadValues({ style: getStyleObject(style, theme), ref }, others))), /* @__PURE__ */ React.createElement(\n \"div\",\n {\n style: {\n opacity: opened || !animateOpacity ? 1 : 0,\n transition: animateOpacity ? `opacity ${duration}ms ${transitionTimingFunction}` : \"none\"\n }\n },\n children\n ));\n});\nCollapse.displayName = \"@mantine/core/Collapse\";\n\nexport { Collapse };\n//# sourceMappingURL=Collapse.mjs.map\n","'use client';\nimport { createSafeContext } from '../../core/utils/create-safe-context/create-safe-context.mjs';\n\nconst [ScrollAreaProvider, useScrollAreaContext] = createSafeContext(\n \"ScrollArea.Root component was not found in tree\"\n);\n\nexport { ScrollAreaProvider, useScrollAreaContext };\n//# sourceMappingURL=ScrollArea.context.mjs.map\n","'use client';\nimport { useCallbackRef, useIsomorphicEffect } from '@mantine/hooks';\n\nfunction useResizeObserver(element, onResize) {\n const handleResize = useCallbackRef(onResize);\n useIsomorphicEffect(() => {\n let rAF = 0;\n if (element) {\n const resizeObserver = new ResizeObserver(() => {\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return () => {\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n return void 0;\n }, [element, handleResize]);\n}\n\nexport { useResizeObserver };\n//# sourceMappingURL=use-resize-observer.mjs.map\n","'use client';\nimport { createSafeContext } from '../../../core/utils/create-safe-context/create-safe-context.mjs';\n\nconst [ScrollbarProvider, useScrollbarContext] = createSafeContext(\n \"ScrollAreaScrollbar was not found in tree\"\n);\n\nexport { ScrollbarProvider, useScrollbarContext };\n//# sourceMappingURL=Scrollbar.context.mjs.map\n","'use client';\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return (event) => {\n originalEventHandler == null ? void 0 : originalEventHandler(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n ourEventHandler == null ? void 0 : ourEventHandler(event);\n }\n };\n}\n\nexport { composeEventHandlers };\n//# sourceMappingURL=compose-event-handlers.mjs.map\n","'use client';\nimport React, { forwardRef, useEffect } from 'react';\nimport { useMergedRef, useCallbackRef, useDebounceCallback } from '@mantine/hooks';\nimport { useResizeObserver } from '../use-resize-observer.mjs';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollbarProvider } from './Scrollbar.context.mjs';\nimport { composeEventHandlers } from '../utils/compose-event-handlers.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst Scrollbar = forwardRef((props, forwardedRef) => {\n const _a = props, {\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize\n } = _a, scrollbarProps = __objRest(_a, [\n \"sizes\",\n \"hasThumb\",\n \"onThumbChange\",\n \"onThumbPointerUp\",\n \"onThumbPointerDown\",\n \"onThumbPositionChange\",\n \"onDragScroll\",\n \"onWheelScroll\",\n \"onResize\"\n ]);\n const context = useScrollAreaContext();\n const [scrollbar, setScrollbar] = React.useState(null);\n const composeRefs = useMergedRef(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React.useRef(null);\n const prevWebkitUserSelectRef = React.useRef(\"\");\n const { viewport } = context;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n const handleDragScroll = (event) => {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n };\n useEffect(() => {\n const handleWheel = (event) => {\n const element = event.target;\n const isScrollbarWheel = scrollbar == null ? void 0 : scrollbar.contains(element);\n if (isScrollbarWheel)\n handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => document.removeEventListener(\"wheel\", handleWheel, { passive: false });\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ React.createElement(\n ScrollbarProvider,\n {\n value: {\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown)\n }\n },\n /* @__PURE__ */ React.createElement(\n \"div\",\n __spreadProps(__spreadValues({}, scrollbarProps), {\n ref: composeRefs,\n style: __spreadValues({ position: \"absolute\" }, scrollbarProps.style),\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, handleDragScroll),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n rectRef.current = null;\n })\n })\n )\n );\n});\n\nexport { Scrollbar };\n//# sourceMappingURL=Scrollbar.mjs.map\n","'use client';\nfunction getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return Number.isNaN(ratio) ? 0 : ratio;\n}\n\nexport { getThumbRatio };\n//# sourceMappingURL=get-thumb-ratio.mjs.map\n","'use client';\nimport { getThumbRatio } from './get-thumb-ratio.mjs';\n\nfunction getThumbSize(sizes) {\n const ratio = getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio;\n return Math.max(thumbSize, 18);\n}\n\nexport { getThumbSize };\n//# sourceMappingURL=get-thumb-size.mjs.map\n","'use client';\nfunction isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n}\n\nexport { isScrollingWithinScrollbarBounds };\n//# sourceMappingURL=is-scrolling-within-scrollbar-bounds.mjs.map\n","'use client';\nfunction toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\n\nexport { toInt };\n//# sourceMappingURL=to-int.mjs.map\n","'use client';\nimport React, { forwardRef, useState, useRef, useEffect } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { Scrollbar } from './Scrollbar.mjs';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { getThumbSize } from '../utils/get-thumb-size.mjs';\nimport { isScrollingWithinScrollbarBounds } from '../utils/is-scrolling-within-scrollbar-bounds.mjs';\nimport { toInt } from '../utils/to-int.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarX = forwardRef(\n (props, forwardedRef) => {\n const _a = props, { sizes, onSizesChange, style } = _a, others = __objRest(_a, [\"sizes\", \"onSizesChange\", \"style\"]);\n const ctx = useScrollAreaContext();\n const [computedStyle, setComputedStyle] = useState();\n const ref = useRef(null);\n const composeRefs = useMergedRef(forwardedRef, ref, ctx.onScrollbarXChange);\n useEffect(() => {\n if (ref.current)\n setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ React.createElement(\n Scrollbar,\n __spreadProps(__spreadValues({\n \"data-orientation\": \"horizontal\"\n }, others), {\n ref: composeRefs,\n sizes,\n style: __spreadProps(__spreadValues({}, style), {\n [\"--sa-thumb-width\"]: `${getThumbSize(sizes)}px`\n }),\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos) => {\n if (ctx.viewport) {\n const scrollPos = ctx.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && ctx.viewport && computedStyle) {\n onSizesChange({\n content: ctx.viewport.scrollWidth,\n viewport: ctx.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: toInt(computedStyle.paddingLeft),\n paddingEnd: toInt(computedStyle.paddingRight)\n }\n });\n }\n }\n })\n );\n }\n);\n\nexport { ScrollAreaScrollbarX };\n//# sourceMappingURL=ScrollbarX.mjs.map\n","'use client';\nimport React, { forwardRef, useRef, useEffect } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { Scrollbar } from './Scrollbar.mjs';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { getThumbSize } from '../utils/get-thumb-size.mjs';\nimport { isScrollingWithinScrollbarBounds } from '../utils/is-scrolling-within-scrollbar-bounds.mjs';\nimport { toInt } from '../utils/to-int.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarY = forwardRef(\n (props, forwardedRef) => {\n const _a = props, { sizes, onSizesChange, style } = _a, others = __objRest(_a, [\"sizes\", \"onSizesChange\", \"style\"]);\n const context = useScrollAreaContext();\n const [computedStyle, setComputedStyle] = React.useState();\n const ref = useRef(null);\n const composeRefs = useMergedRef(forwardedRef, ref, context.onScrollbarYChange);\n useEffect(() => {\n if (ref.current)\n setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ React.createElement(\n Scrollbar,\n __spreadProps(__spreadValues({}, others), {\n \"data-orientation\": \"vertical\",\n ref: composeRefs,\n sizes,\n style: __spreadValues({\n [\"--sa-thumb-height\"]: `${getThumbSize(sizes)}px`\n }, style),\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: toInt(computedStyle.paddingTop),\n paddingEnd: toInt(computedStyle.paddingBottom)\n }\n });\n }\n }\n })\n );\n }\n);\n\nexport { ScrollAreaScrollbarY };\n//# sourceMappingURL=ScrollbarY.mjs.map\n","'use client';\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1])\n return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\n\nexport { linearScale };\n//# sourceMappingURL=linear-scale.mjs.map\n","'use client';\nimport { getThumbSize } from './get-thumb-size.mjs';\nimport { linearScale } from './linear-scale.mjs';\n\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nfunction getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const scrollWithoutMomentum = clamp(scrollPos, scrollClampRange);\n const interpolate = linearScale([0, maxScrollPos], [0, maxThumbPos]);\n return interpolate(scrollWithoutMomentum);\n}\n\nexport { getThumbOffsetFromScroll };\n//# sourceMappingURL=get-thumb-offset-from-scroll.mjs.map\n","'use client';\nimport { getThumbSize } from './get-thumb-size.mjs';\nimport { linearScale } from './linear-scale.mjs';\n\nfunction getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const interpolate = linearScale([minPointerPos, maxPointerPos], scrollRange);\n return interpolate(pointerPos);\n}\n\nexport { getScrollPositionFromPointer };\n//# sourceMappingURL=get-scroll-position-from-pointer.mjs.map\n","'use client';\nimport React, { forwardRef, useRef, useState } from 'react';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollAreaScrollbarX } from './ScrollbarX.mjs';\nimport { ScrollAreaScrollbarY } from './ScrollbarY.mjs';\nimport { useDirection } from '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { getThumbRatio } from '../utils/get-thumb-ratio.mjs';\nimport { getThumbOffsetFromScroll } from '../utils/get-thumb-offset-from-scroll.mjs';\nimport { getScrollPositionFromPointer } from '../utils/get-scroll-position-from-pointer.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarVisible = forwardRef((props, forwardedRef) => {\n const _a = props, { orientation = \"vertical\" } = _a, scrollbarProps = __objRest(_a, [\"orientation\"]);\n const { dir } = useDirection();\n const context = useScrollAreaContext();\n const thumbRef = useRef(null);\n const pointerOffsetRef = useRef(0);\n const [sizes, setSizes] = useState({\n content: 0,\n viewport: 0,\n scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }\n });\n const thumbRatio = getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = __spreadProps(__spreadValues({}, scrollbarProps), {\n sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb) => {\n thumbRef.current = thumb;\n },\n onThumbPointerUp: () => {\n pointerOffsetRef.current = 0;\n },\n onThumbPointerDown: (pointerPos) => {\n pointerOffsetRef.current = pointerPos;\n }\n });\n const getScrollPosition = (pointerPos, direction) => getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, direction);\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbarX,\n __spreadProps(__spreadValues({}, commonProps), {\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes, dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport)\n context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) {\n context.viewport.scrollLeft = getScrollPosition(pointerPos, dir);\n }\n }\n })\n );\n }\n if (orientation === \"vertical\") {\n return /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbarY,\n __spreadProps(__spreadValues({}, commonProps), {\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport)\n context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport)\n context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n })\n );\n }\n return null;\n});\n\nexport { ScrollAreaScrollbarVisible };\n//# sourceMappingURL=ScrollAreaScrollbarVisible.mjs.map\n","'use client';\nimport React, { forwardRef, useState } from 'react';\nimport { useDebounceCallback } from '@mantine/hooks';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollAreaScrollbarVisible } from './ScrollAreaScrollbarVisible.mjs';\nimport { useResizeObserver } from '../use-resize-observer.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarAuto = forwardRef(\n (props, ref) => {\n const context = useScrollAreaContext();\n const _a = props, { forceMount } = _a, scrollbarProps = __objRest(_a, [\"forceMount\"]);\n const [visible, setVisible] = useState(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = useDebounceCallback(() => {\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n useResizeObserver(context.viewport, handleResize);\n useResizeObserver(context.content, handleResize);\n if (forceMount || visible) {\n return /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbarVisible,\n __spreadProps(__spreadValues({\n \"data-state\": visible ? \"visible\" : \"hidden\"\n }, scrollbarProps), {\n ref\n })\n );\n }\n return null;\n }\n);\n\nexport { ScrollAreaScrollbarAuto };\n//# sourceMappingURL=ScrollAreaScrollbarAuto.mjs.map\n","'use client';\nimport React, { forwardRef, useState, useEffect } from 'react';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollAreaScrollbarAuto } from './ScrollAreaScrollbarAuto.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarHover = forwardRef(\n (props, ref) => {\n const _a = props, { forceMount } = _a, scrollbarProps = __objRest(_a, [\"forceMount\"]);\n const context = useScrollAreaContext();\n const [visible, setVisible] = useState(false);\n useEffect(() => {\n const { scrollArea } = context;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = () => {\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = () => {\n hideTimer = window.setTimeout(() => setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return () => {\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n return void 0;\n }, [context.scrollArea, context.scrollHideDelay]);\n if (forceMount || visible) {\n return /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbarAuto,\n __spreadProps(__spreadValues({\n \"data-state\": visible ? \"visible\" : \"hidden\"\n }, scrollbarProps), {\n ref\n })\n );\n }\n return null;\n }\n);\n\nexport { ScrollAreaScrollbarHover };\n//# sourceMappingURL=ScrollAreaScrollbarHover.mjs.map\n","'use client';\nimport React, { forwardRef, useState, useEffect } from 'react';\nimport { useDebounceCallback } from '@mantine/hooks';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollAreaScrollbarVisible } from './ScrollAreaScrollbarVisible.mjs';\nimport { composeEventHandlers } from '../utils/compose-event-handlers.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbarScroll = forwardRef(\n (props, red) => {\n const _a = props, { forceMount } = _a, scrollbarProps = __objRest(_a, [\"forceMount\"]);\n const context = useScrollAreaContext();\n const isHorizontal = props.orientation === \"horizontal\";\n const [state, setState] = useState(\"hidden\");\n const debounceScrollEnd = useDebounceCallback(() => setState(\"idle\"), 100);\n useEffect(() => {\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(() => setState(\"hidden\"), context.scrollHideDelay);\n return () => window.clearTimeout(hideTimer);\n }\n return void 0;\n }, [state, context.scrollHideDelay]);\n useEffect(() => {\n const { viewport } = context;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = () => {\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n setState(\"scrolling\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n return void 0;\n }, [context.viewport, isHorizontal, debounceScrollEnd]);\n if (forceMount || state !== \"hidden\") {\n return /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbarVisible,\n __spreadProps(__spreadValues({\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\"\n }, scrollbarProps), {\n ref: red,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, () => setState(\"interacting\")),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => setState(\"idle\"))\n })\n );\n }\n return null;\n }\n);\n\nexport { ScrollAreaScrollbarScroll };\n//# sourceMappingURL=ScrollAreaScrollbarScroll.mjs.map\n","'use client';\nimport React from 'react';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { ScrollAreaScrollbarVisible } from './ScrollAreaScrollbarVisible.mjs';\nimport { ScrollAreaScrollbarHover } from './ScrollAreaScrollbarHover.mjs';\nimport { ScrollAreaScrollbarScroll } from './ScrollAreaScrollbarScroll.mjs';\nimport { ScrollAreaScrollbarAuto } from './ScrollAreaScrollbarAuto.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaScrollbar = React.forwardRef(\n (props, forwardedRef) => {\n const _a = props, { forceMount } = _a, scrollbarProps = __objRest(_a, [\"forceMount\"]);\n const context = useScrollAreaContext();\n const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n React.useEffect(() => {\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return () => {\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n return context.type === \"hover\" ? /* @__PURE__ */ React.createElement(ScrollAreaScrollbarHover, __spreadProps(__spreadValues({}, scrollbarProps), { ref: forwardedRef, forceMount })) : context.type === \"scroll\" ? /* @__PURE__ */ React.createElement(ScrollAreaScrollbarScroll, __spreadProps(__spreadValues({}, scrollbarProps), { ref: forwardedRef, forceMount })) : context.type === \"auto\" ? /* @__PURE__ */ React.createElement(ScrollAreaScrollbarAuto, __spreadProps(__spreadValues({}, scrollbarProps), { ref: forwardedRef, forceMount })) : context.type === \"always\" ? /* @__PURE__ */ React.createElement(ScrollAreaScrollbarVisible, __spreadProps(__spreadValues({}, scrollbarProps), { ref: forwardedRef })) : null;\n }\n);\n\nexport { ScrollAreaScrollbar };\n//# sourceMappingURL=ScrollAreaScrollbar.mjs.map\n","'use client';\nimport React from 'react';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { useResizeObserver } from '../use-resize-observer.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst Corner = React.forwardRef((props, ref) => {\n const _a = props, { style } = _a, others = __objRest(_a, [\"style\"]);\n const ctx = useScrollAreaContext();\n const [width, setWidth] = React.useState(0);\n const [height, setHeight] = React.useState(0);\n const hasSize = Boolean(width && height);\n useResizeObserver(ctx.scrollbarX, () => {\n var _a2;\n const h = ((_a2 = ctx.scrollbarX) == null ? void 0 : _a2.offsetHeight) || 0;\n ctx.onCornerHeightChange(h);\n setHeight(h);\n });\n useResizeObserver(ctx.scrollbarY, () => {\n var _a2;\n const w = ((_a2 = ctx.scrollbarY) == null ? void 0 : _a2.offsetWidth) || 0;\n ctx.onCornerWidthChange(w);\n setWidth(w);\n });\n return hasSize ? /* @__PURE__ */ React.createElement(\"div\", __spreadProps(__spreadValues({}, others), { ref, style: __spreadProps(__spreadValues({}, style), { width, height }) })) : null;\n});\nconst ScrollAreaCorner = React.forwardRef(\n (props, ref) => {\n const ctx = useScrollAreaContext();\n const hasBothScrollbarsVisible = Boolean(ctx.scrollbarX && ctx.scrollbarY);\n const hasCorner = ctx.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /* @__PURE__ */ React.createElement(Corner, __spreadProps(__spreadValues({}, props), { ref })) : null;\n }\n);\n\nexport { Corner, ScrollAreaCorner };\n//# sourceMappingURL=ScrollAreaCorner.mjs.map\n","'use client';\nimport React, { forwardRef, useState } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { ScrollAreaProvider } from '../ScrollArea.context.mjs';\nimport { useProps } from '../../../core/MantineProvider/use-props/use-props.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst defaultProps = {\n scrollHideDelay: 1e3,\n type: \"hover\"\n};\nconst ScrollAreaRoot = forwardRef((_props, ref) => {\n const props = useProps(\"ScrollAreaRoot\", defaultProps, _props);\n const _a = props, { type, scrollHideDelay } = _a, others = __objRest(_a, [\"type\", \"scrollHideDelay\"]);\n const [scrollArea, setScrollArea] = useState(null);\n const [viewport, setViewport] = useState(null);\n const [content, setContent] = useState(null);\n const [scrollbarX, setScrollbarX] = useState(null);\n const [scrollbarY, setScrollbarY] = useState(null);\n const [cornerWidth, setCornerWidth] = useState(0);\n const [cornerHeight, setCornerHeight] = useState(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = useState(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = useState(false);\n const rootRef = useMergedRef(ref, (node) => setScrollArea(node));\n return /* @__PURE__ */ React.createElement(\n ScrollAreaProvider,\n {\n value: {\n type,\n scrollHideDelay,\n scrollArea,\n viewport,\n onViewportChange: setViewport,\n content,\n onContentChange: setContent,\n scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight\n }\n },\n /* @__PURE__ */ React.createElement(\n Box,\n __spreadProps(__spreadValues({}, others), {\n ref: rootRef,\n __vars: {\n \"--sa-corner-width\": `${cornerWidth}px`,\n \"--sa-corner-height\": `${cornerHeight}px`\n }\n })\n )\n );\n});\nScrollAreaRoot.displayName = \"@mantine/core/ScrollAreaRoot\";\n\nexport { ScrollAreaRoot };\n//# sourceMappingURL=ScrollAreaRoot.mjs.map\n","'use client';\nimport React, { forwardRef } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst ScrollAreaViewport = forwardRef(\n (_a, ref) => {\n var _b = _a, { children, style } = _b, others = __objRest(_b, [\"children\", \"style\"]);\n const ctx = useScrollAreaContext();\n const rootRef = useMergedRef(ref, ctx.onViewportChange);\n return /* @__PURE__ */ React.createElement(\n Box,\n __spreadProps(__spreadValues({}, others), {\n ref: rootRef,\n style: __spreadValues({\n overflowX: ctx.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: ctx.scrollbarYEnabled ? \"scroll\" : \"hidden\"\n }, style)\n }),\n /* @__PURE__ */ React.createElement(\"div\", { style: { minWidth: \"100%\", display: \"table\" }, ref: ctx.onContentChange }, children)\n );\n }\n);\nScrollAreaViewport.displayName = \"@mantine/core/ScrollAreaViewport\";\n\nexport { ScrollAreaViewport };\n//# sourceMappingURL=ScrollAreaViewport.mjs.map\n","'use client';\nvar classes = {\"root\":\"m-d57069b5\",\"viewport\":\"m-c0783ff9\",\"viewportInner\":\"m-f8f631dd\",\"scrollbar\":\"m-c44ba933\",\"thumb\":\"m-d8b5e363\",\"corner\":\"m-21657268\"};\n\nexport default classes;\n//# sourceMappingURL=ScrollArea.module.mjs.map\n","'use client';\nfunction addUnlinkedScrollListener(node, handler = () => {\n}) {\n let prevPosition = { left: node.scrollLeft, top: node.scrollTop };\n let rAF = 0;\n (function loop() {\n const position = { left: node.scrollLeft, top: node.scrollTop };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll)\n handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return () => window.cancelAnimationFrame(rAF);\n}\n\nexport { addUnlinkedScrollListener };\n//# sourceMappingURL=add-unlinked-scroll-listener.mjs.map\n","'use client';\nimport React, { forwardRef, useRef, useEffect } from 'react';\nimport { useMergedRef, useDebounceCallback } from '@mantine/hooks';\nimport { useScrollbarContext } from '../ScrollAreaScrollbar/Scrollbar.context.mjs';\nimport { useScrollAreaContext } from '../ScrollArea.context.mjs';\nimport { composeEventHandlers } from '../utils/compose-event-handlers.mjs';\nimport { addUnlinkedScrollListener } from '../utils/add-unlinked-scroll-listener.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst Thumb = forwardRef((props, forwardedRef) => {\n const _a = props, { style } = _a, others = __objRest(_a, [\"style\"]);\n const scrollAreaContext = useScrollAreaContext();\n const scrollbarContext = useScrollbarContext();\n const { onThumbPositionChange } = scrollbarContext;\n const composedRef = useMergedRef(forwardedRef, (node) => scrollbarContext.onThumbChange(node));\n const removeUnlinkedScrollListenerRef = useRef();\n const debounceScrollEnd = useDebounceCallback(() => {\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = void 0;\n }\n }, 100);\n useEffect(() => {\n const { viewport } = scrollAreaContext;\n if (viewport) {\n const handleScroll = () => {\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n return void 0;\n }, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);\n return /* @__PURE__ */ React.createElement(\n \"div\",\n __spreadProps(__spreadValues({\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\"\n }, others), {\n ref: composedRef,\n style: __spreadValues({\n width: \"var(--sa-thumb-width)\",\n height: \"var(--sa-thumb-height)\"\n }, style),\n onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, (event) => {\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({ x, y });\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n })\n );\n});\nconst ScrollAreaThumb = React.forwardRef(\n (props, forwardedRef) => {\n const _a = props, { forceMount } = _a, thumbProps = __objRest(_a, [\"forceMount\"]);\n const scrollbarContext = useScrollbarContext();\n if (forceMount || scrollbarContext.hasThumb) {\n return /* @__PURE__ */ React.createElement(Thumb, __spreadValues({ ref: forwardedRef }, thumbProps));\n }\n return null;\n }\n);\n\nexport { ScrollAreaThumb, Thumb };\n//# sourceMappingURL=ScrollAreaThumb.mjs.map\n","'use client';\nimport React, { useState } from 'react';\nimport { ScrollAreaScrollbar } from './ScrollAreaScrollbar/ScrollAreaScrollbar.mjs';\nimport { ScrollAreaCorner } from './ScrollAreaCorner/ScrollAreaCorner.mjs';\nimport { ScrollAreaRoot } from './ScrollAreaRoot/ScrollAreaRoot.mjs';\nimport { ScrollAreaViewport } from './ScrollAreaViewport/ScrollAreaViewport.mjs';\nimport classes from './ScrollArea.module.mjs';\nimport { ScrollAreaThumb } from './ScrollAreaThumb/ScrollAreaThumb.mjs';\nimport { factory } from '../../core/factory/factory.mjs';\nimport { useStyles } from '../../core/styles-api/use-styles/use-styles.mjs';\nimport { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs';\nimport { rem } from '../../core/utils/units-converters/rem.mjs';\nimport { useProps } from '../../core/MantineProvider/use-props/use-props.mjs';\nimport { Box } from '../../core/Box/Box.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst defaultProps = {\n scrollHideDelay: 1e3,\n type: \"hover\"\n};\nconst varsResolver = createVarsResolver((_, { scrollbarSize }) => ({\n root: {\n \"--scrollarea-scrollbar-size\": rem(scrollbarSize)\n }\n}));\nconst ScrollArea = factory((_props, ref) => {\n const props = useProps(\"ScrollArea\", defaultProps, _props);\n const _a = props, {\n classNames,\n className,\n style,\n styles,\n unstyled,\n scrollbarSize,\n vars,\n type,\n scrollHideDelay,\n viewportProps,\n viewportRef,\n onScrollPositionChange,\n children,\n offsetScrollbars\n } = _a, others = __objRest(_a, [\n \"classNames\",\n \"className\",\n \"style\",\n \"styles\",\n \"unstyled\",\n \"scrollbarSize\",\n \"vars\",\n \"type\",\n \"scrollHideDelay\",\n \"viewportProps\",\n \"viewportRef\",\n \"onScrollPositionChange\",\n \"children\",\n \"offsetScrollbars\"\n ]);\n const [scrollbarHovered, setScrollbarHovered] = useState(false);\n const getStyles = useStyles({\n name: \"ScrollArea\",\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver\n });\n return /* @__PURE__ */ React.createElement(\n ScrollAreaRoot,\n __spreadValues(__spreadValues({\n type: type === \"never\" ? \"always\" : type,\n scrollHideDelay,\n ref\n }, getStyles(\"root\")), others),\n /* @__PURE__ */ React.createElement(\n ScrollAreaViewport,\n __spreadProps(__spreadValues(__spreadValues({}, viewportProps), getStyles(\"viewport\")), {\n ref: viewportRef,\n \"data-offset-scrollbars\": offsetScrollbars === true ? \"xy\" : offsetScrollbars || void 0,\n onScroll: typeof onScrollPositionChange === \"function\" ? ({ currentTarget }) => onScrollPositionChange({\n x: currentTarget.scrollLeft,\n y: currentTarget.scrollTop\n }) : void 0\n }),\n children\n ),\n /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbar,\n __spreadProps(__spreadValues({}, getStyles(\"scrollbar\")), {\n orientation: \"horizontal\",\n \"data-hidden\": type === \"never\" || void 0,\n forceMount: true,\n onMouseEnter: () => setScrollbarHovered(true),\n onMouseLeave: () => setScrollbarHovered(false)\n }),\n /* @__PURE__ */ React.createElement(ScrollAreaThumb, __spreadValues({}, getStyles(\"thumb\")))\n ),\n /* @__PURE__ */ React.createElement(\n ScrollAreaScrollbar,\n __spreadProps(__spreadValues({}, getStyles(\"scrollbar\")), {\n orientation: \"vertical\",\n \"data-hidden\": type === \"never\" || void 0,\n forceMount: true,\n onMouseEnter: () => setScrollbarHovered(true),\n onMouseLeave: () => setScrollbarHovered(false)\n }),\n /* @__PURE__ */ React.createElement(ScrollAreaThumb, __spreadValues({}, getStyles(\"thumb\")))\n ),\n /* @__PURE__ */ React.createElement(\n ScrollAreaCorner,\n __spreadProps(__spreadValues({}, getStyles(\"corner\")), {\n \"data-hovered\": scrollbarHovered || void 0,\n \"data-hidden\": type === \"never\" || void 0\n })\n )\n );\n});\nScrollArea.displayName = \"@mantine/core/ScrollArea\";\nconst ScrollAreaAutosize = factory((props, ref) => {\n const _a = useProps(\"ScrollAreaAutosize\", defaultProps, props), {\n children,\n classNames,\n styles,\n scrollbarSize,\n scrollHideDelay,\n type,\n dir,\n offsetScrollbars,\n viewportRef,\n onScrollPositionChange,\n unstyled,\n variant,\n viewportProps,\n style,\n vars\n } = _a, others = __objRest(_a, [\n \"children\",\n \"classNames\",\n \"styles\",\n \"scrollbarSize\",\n \"scrollHideDelay\",\n \"type\",\n \"dir\",\n \"offsetScrollbars\",\n \"viewportRef\",\n \"onScrollPositionChange\",\n \"unstyled\",\n \"variant\",\n \"viewportProps\",\n \"style\",\n \"vars\"\n ]);\n return /* @__PURE__ */ React.createElement(Box, __spreadProps(__spreadValues({}, others), { ref, style: [{ display: \"flex\" }, style] }), /* @__PURE__ */ React.createElement(Box, { style: { display: \"flex\", flexDirection: \"column\", flex: 1 } }, /* @__PURE__ */ React.createElement(\n ScrollArea,\n {\n classNames,\n styles,\n scrollHideDelay,\n scrollbarSize,\n type,\n dir,\n offsetScrollbars,\n viewportRef,\n onScrollPositionChange,\n unstyled,\n variant,\n viewportProps,\n vars\n },\n children\n )));\n});\nScrollArea.classes = classes;\nScrollAreaAutosize.displayName = \"@mantine/core/ScrollAreaAutosize\";\nScrollAreaAutosize.classes = classes;\nScrollArea.Autosize = ScrollAreaAutosize;\n\nexport { ScrollArea, ScrollAreaAutosize };\n//# sourceMappingURL=ScrollArea.mjs.map\n","'use client';\nvar classes = {\"root\":\"m-87cf2631\"};\n\nexport default classes;\n//# sourceMappingURL=UnstyledButton.module.mjs.map\n","'use client';\nimport React from 'react';\nimport classes from './UnstyledButton.module.mjs';\nimport { polymorphicFactory } from '../../core/factory/polymorphic-factory.mjs';\nimport { useProps } from '../../core/MantineProvider/use-props/use-props.mjs';\nimport { useStyles } from '../../core/styles-api/use-styles/use-styles.mjs';\nimport { Box } from '../../core/Box/Box.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst defaultProps = {\n __staticSelector: \"UnstyledButton\"\n};\nconst UnstyledButton = polymorphicFactory(\n (_props, ref) => {\n const props = useProps(\"UnstyledButton\", defaultProps, _props);\n const _a = props, {\n className,\n component = \"button\",\n __staticSelector,\n unstyled,\n classNames,\n styles,\n style\n } = _a, others = __objRest(_a, [\n \"className\",\n \"component\",\n \"__staticSelector\",\n \"unstyled\",\n \"classNames\",\n \"styles\",\n \"style\"\n ]);\n const getStyles = useStyles({\n name: __staticSelector,\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled\n });\n return /* @__PURE__ */ React.createElement(\n Box,\n __spreadValues(__spreadProps(__spreadValues({}, getStyles(\"root\", { focusable: true })), {\n component,\n ref,\n type: component === \"button\" ? \"button\" : void 0\n }), others)\n );\n }\n);\nUnstyledButton.classes = classes;\nUnstyledButton.displayName = \"@mantine/core/UnstyledButton\";\n\nexport { UnstyledButton };\n//# sourceMappingURL=UnstyledButton.mjs.map\n","'use client';\nvar classes = {\"root\":\"m-1b7284a3\"};\n\nexport default classes;\n//# sourceMappingURL=Paper.module.mjs.map\n","'use client';\nimport React from 'react';\nimport classes from './Paper.module.mjs';\nimport { getRadius, getShadow } from '../../core/utils/get-size/get-size.mjs';\nimport { polymorphicFactory } from '../../core/factory/polymorphic-factory.mjs';\nimport { useProps } from '../../core/MantineProvider/use-props/use-props.mjs';\nimport { useStyles } from '../../core/styles-api/use-styles/use-styles.mjs';\nimport { Box } from '../../core/Box/Box.mjs';\nimport { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs';\n\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nconst defaultProps = {};\nconst varsResolver = createVarsResolver((_, { radius, shadow }) => ({\n root: {\n \"--paper-radius\": radius === void 0 ? void 0 : getRadius(radius),\n \"--paper-shadow\": getShadow(shadow)\n }\n}));\nconst Paper = polymorphicFactory((_props, ref) => {\n const props = useProps(\"Paper\", defaultProps, _props);\n const _a = props, {\n classNames,\n className,\n style,\n styles,\n unstyled,\n withBorder,\n vars,\n radius,\n shadow,\n variant\n } = _a, others = __objRest(_a, [\n \"classNames\",\n \"className\",\n \"style\",\n \"styles\",\n \"unstyled\",\n \"withBorder\",\n \"vars\",\n \"radius\",\n \"shadow\",\n \"variant\"\n ]);\n const getStyles = useStyles({\n name: \"Paper\",\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver\n });\n return /* @__PURE__ */ React.createElement(\n Box,\n __spreadValues(__spreadProps(__spreadValues({\n ref,\n mod: { \"data-with-border\": withBorder }\n }, getStyles(\"root\")), {\n variant\n }), others)\n );\n});\nPaper.classes = classes;\nPaper.displayName = \"@mantine/core/Paper\";\n\nexport { Paper };\n//# sourceMappingURL=Paper.mjs.map\n","const 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","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\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 = 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 = 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\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\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\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\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 = 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 * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\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\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\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 ? 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(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, computePosition as computePosition$1 } from '@floating-ui/core';\nexport { arrow, autoPlacement, detectOverflow, flip, hide, inline, limitShift, offset, shift, size } 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 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(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