@protonradio/proton-ui 0.11.4 → 0.11.5-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/index.cjs.js +2 -0
- package/dist/_virtual/index.cjs.js.map +1 -0
- package/dist/_virtual/index.es.js +5 -0
- package/dist/_virtual/index.es.js.map +1 -0
- package/dist/_virtual/jsx-runtime.cjs.js +2 -0
- package/dist/_virtual/jsx-runtime.cjs.js.map +1 -0
- package/dist/_virtual/jsx-runtime.es.js +5 -0
- package/dist/_virtual/jsx-runtime.es.js.map +1 -0
- package/dist/_virtual/react-jsx-runtime.development.cjs.js +2 -0
- package/dist/_virtual/react-jsx-runtime.development.cjs.js.map +1 -0
- package/dist/_virtual/react-jsx-runtime.development.es.js +5 -0
- package/dist/_virtual/react-jsx-runtime.development.es.js.map +1 -0
- package/dist/_virtual/react-jsx-runtime.production.min.cjs.js +2 -0
- package/dist/_virtual/react-jsx-runtime.production.min.cjs.js.map +1 -0
- package/dist/_virtual/react-jsx-runtime.production.min.es.js +5 -0
- package/dist/_virtual/react-jsx-runtime.production.min.es.js.map +1 -0
- package/dist/_virtual/use-sync-external-store-shim.development.cjs.js +2 -0
- package/dist/_virtual/use-sync-external-store-shim.development.cjs.js.map +1 -0
- package/dist/_virtual/use-sync-external-store-shim.development.es.js +5 -0
- package/dist/_virtual/use-sync-external-store-shim.development.es.js.map +1 -0
- package/dist/_virtual/use-sync-external-store-shim.production.cjs.js +2 -0
- package/dist/_virtual/use-sync-external-store-shim.production.cjs.js.map +1 -0
- package/dist/_virtual/use-sync-external-store-shim.production.es.js +5 -0
- package/dist/_virtual/use-sync-external-store-shim.production.es.js.map +1 -0
- package/dist/assets/svg/icons.svg.cjs.js +2 -0
- package/dist/assets/svg/icons.svg.cjs.js.map +1 -0
- package/dist/assets/svg/icons.svg.es.js +5 -0
- package/dist/assets/svg/icons.svg.es.js.map +1 -0
- package/dist/components/ActionMenu/ActionMenu.cjs.js +2 -0
- package/dist/components/ActionMenu/ActionMenu.cjs.js.map +1 -0
- package/dist/components/ActionMenu/ActionMenu.es.js +210 -0
- package/dist/components/ActionMenu/ActionMenu.es.js.map +1 -0
- package/dist/components/Badge/Badge.cjs.js +2 -0
- package/dist/components/Badge/Badge.cjs.js.map +1 -0
- package/dist/components/Badge/Badge.es.js +25 -0
- package/dist/components/Badge/Badge.es.js.map +1 -0
- package/dist/components/Banner/Banner.cjs.js +2 -0
- package/dist/components/Banner/Banner.cjs.js.map +1 -0
- package/dist/components/Banner/Banner.es.js +131 -0
- package/dist/components/Banner/Banner.es.js.map +1 -0
- package/dist/components/Button/Button.cjs.js +2 -0
- package/dist/components/Button/Button.cjs.js.map +1 -0
- package/dist/components/Button/Button.es.js +99 -0
- package/dist/components/Button/Button.es.js.map +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.cjs.js +2 -0
- package/dist/components/ButtonGroup/ButtonGroup.cjs.js.map +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.es.js +51 -0
- package/dist/components/ButtonGroup/ButtonGroup.es.js.map +1 -0
- package/dist/components/ButtonWithSelect/ButtonWithSelect.cjs.js +2 -0
- package/dist/components/ButtonWithSelect/ButtonWithSelect.cjs.js.map +1 -0
- package/dist/components/ButtonWithSelect/ButtonWithSelect.es.js +81 -0
- package/dist/components/ButtonWithSelect/ButtonWithSelect.es.js.map +1 -0
- package/dist/components/DataTable/DataTable.cjs.js +2 -0
- package/dist/components/DataTable/DataTable.cjs.js.map +1 -0
- package/dist/components/DataTable/DataTable.es.js +137 -0
- package/dist/components/DataTable/DataTable.es.js.map +1 -0
- package/dist/components/Dialog/Dialog.cjs.js +2 -0
- package/dist/components/Dialog/Dialog.cjs.js.map +1 -0
- package/dist/components/Dialog/Dialog.es.js +15 -0
- package/dist/components/Dialog/Dialog.es.js.map +1 -0
- package/dist/components/Elevation/Elevation.cjs.js +2 -0
- package/dist/components/Elevation/Elevation.cjs.js.map +1 -0
- package/dist/components/Elevation/Elevation.es.js +33 -0
- package/dist/components/Elevation/Elevation.es.js.map +1 -0
- package/dist/components/Icon/Icon.cjs.js +2 -0
- package/dist/components/Icon/Icon.cjs.js.map +1 -0
- package/dist/components/Icon/Icon.es.js +42 -0
- package/dist/components/Icon/Icon.es.js.map +1 -0
- package/dist/components/ImageBackground/ImageBackground.cjs.js +2 -0
- package/dist/components/ImageBackground/ImageBackground.cjs.js.map +1 -0
- package/dist/components/ImageBackground/ImageBackground.es.js +55 -0
- package/dist/components/ImageBackground/ImageBackground.es.js.map +1 -0
- package/dist/components/Input/BaseInput/Input.cjs.js +2 -0
- package/dist/components/Input/BaseInput/Input.cjs.js.map +1 -0
- package/dist/components/Input/BaseInput/Input.es.js +182 -0
- package/dist/components/Input/BaseInput/Input.es.js.map +1 -0
- package/dist/components/Input/CopyInput/CopyInput.cjs.js +2 -0
- package/dist/components/Input/CopyInput/CopyInput.cjs.js.map +1 -0
- package/dist/components/Input/CopyInput/CopyInput.es.js +83 -0
- package/dist/components/Input/CopyInput/CopyInput.es.js.map +1 -0
- package/dist/components/Input/SearchInput/SearchInput.cjs.js +2 -0
- package/dist/components/Input/SearchInput/SearchInput.cjs.js.map +1 -0
- package/dist/components/Input/SearchInput/SearchInput.es.js +118 -0
- package/dist/components/Input/SearchInput/SearchInput.es.js.map +1 -0
- package/dist/components/ListBox/ListBox.cjs.js +2 -0
- package/dist/components/ListBox/ListBox.cjs.js.map +1 -0
- package/dist/components/ListBox/ListBox.es.js +25 -0
- package/dist/components/ListBox/ListBox.es.js.map +1 -0
- package/dist/components/Menu/MenuTrigger.cjs.js +2 -0
- package/dist/components/Menu/MenuTrigger.cjs.js.map +1 -0
- package/dist/components/Menu/MenuTrigger.es.js +97 -0
- package/dist/components/Menu/MenuTrigger.es.js.map +1 -0
- package/dist/components/Menu/PopoverMenu.cjs.js +2 -0
- package/dist/components/Menu/PopoverMenu.cjs.js.map +1 -0
- package/dist/components/Menu/PopoverMenu.es.js +116 -0
- package/dist/components/Menu/PopoverMenu.es.js.map +1 -0
- package/dist/components/Modal/Modal.cjs.js +2 -0
- package/dist/components/Modal/Modal.cjs.js.map +1 -0
- package/dist/components/Modal/Modal.es.js +122 -0
- package/dist/components/Modal/Modal.es.js.map +1 -0
- package/dist/components/Popover/Popover.cjs.js +2 -0
- package/dist/components/Popover/Popover.cjs.js.map +1 -0
- package/dist/components/Popover/Popover.es.js +74 -0
- package/dist/components/Popover/Popover.es.js.map +1 -0
- package/dist/components/ScreenOverlay/ScreenOverlay.cjs.js +2 -0
- package/dist/components/ScreenOverlay/ScreenOverlay.cjs.js.map +1 -0
- package/dist/components/ScreenOverlay/ScreenOverlay.es.js +44 -0
- package/dist/components/ScreenOverlay/ScreenOverlay.es.js.map +1 -0
- package/dist/components/Select/Select.cjs.js +2 -0
- package/dist/components/Select/Select.cjs.js.map +1 -0
- package/dist/components/Select/Select.es.js +173 -0
- package/dist/components/Select/Select.es.js.map +1 -0
- package/dist/components/Switch/Switch.cjs.js +2 -0
- package/dist/components/Switch/Switch.cjs.js.map +1 -0
- package/dist/components/Switch/Switch.es.js +40 -0
- package/dist/components/Switch/Switch.es.js.map +1 -0
- package/dist/components/Table/Collection/CompoundComponents.cjs.js +2 -0
- package/dist/components/Table/Collection/CompoundComponents.cjs.js.map +1 -0
- package/dist/components/Table/Collection/CompoundComponents.es.js +9 -0
- package/dist/components/Table/Collection/CompoundComponents.es.js.map +1 -0
- package/dist/components/Table/Collection/collectionParser.cjs.js +2 -0
- package/dist/components/Table/Collection/collectionParser.cjs.js.map +1 -0
- package/dist/components/Table/Collection/collectionParser.es.js +54 -0
- package/dist/components/Table/Collection/collectionParser.es.js.map +1 -0
- package/dist/components/Table/Collection/useTableCollection.cjs.js +2 -0
- package/dist/components/Table/Collection/useTableCollection.cjs.js.map +1 -0
- package/dist/components/Table/Collection/useTableCollection.es.js +59 -0
- package/dist/components/Table/Collection/useTableCollection.es.js.map +1 -0
- package/dist/components/Table/Table.cjs.js +2 -0
- package/dist/components/Table/Table.cjs.js.map +1 -0
- package/dist/components/Table/Table.es.js +89 -0
- package/dist/components/Table/Table.es.js.map +1 -0
- package/dist/components/Text/TextEllipsis/TextEllipsis.cjs.js +2 -0
- package/dist/components/Text/TextEllipsis/TextEllipsis.cjs.js.map +1 -0
- package/dist/components/Text/TextEllipsis/TextEllipsis.es.js +30 -0
- package/dist/components/Text/TextEllipsis/TextEllipsis.es.js.map +1 -0
- package/dist/components/Text/TextEmphasis/TextEmphasis.cjs.js +2 -0
- package/dist/components/Text/TextEmphasis/TextEmphasis.cjs.js.map +1 -0
- package/dist/components/Text/TextEmphasis/TextEmphasis.es.js +54 -0
- package/dist/components/Text/TextEmphasis/TextEmphasis.es.js.map +1 -0
- package/dist/components/ThemeProvider.cjs.js +2 -0
- package/dist/components/ThemeProvider.cjs.js.map +1 -0
- package/dist/components/ThemeProvider.es.js +42 -0
- package/dist/components/ThemeProvider.es.js.map +1 -0
- package/dist/components/Tombstone/Tombstone.cjs.js +2 -0
- package/dist/components/Tombstone/Tombstone.cjs.js.map +1 -0
- package/dist/components/Tombstone/Tombstone.es.js +35 -0
- package/dist/components/Tombstone/Tombstone.es.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.cjs.js +2 -0
- package/dist/components/Tooltip/Tooltip.cjs.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.es.js +78 -0
- package/dist/components/Tooltip/Tooltip.es.js.map +1 -0
- package/dist/components/Waveform/Waveform.cjs.js +2 -0
- package/dist/components/Waveform/Waveform.cjs.js.map +1 -0
- package/dist/components/Waveform/Waveform.es.js +163 -0
- package/dist/components/Waveform/Waveform.es.js.map +1 -0
- package/dist/components/Waveform/WaveformBar.cjs.js +2 -0
- package/dist/components/Waveform/WaveformBar.cjs.js.map +1 -0
- package/dist/components/Waveform/WaveformBar.es.js +74 -0
- package/dist/components/Waveform/WaveformBar.es.js.map +1 -0
- package/dist/constants/breakpoint.cjs.js +2 -0
- package/dist/constants/breakpoint.cjs.js.map +1 -0
- package/dist/{breakpoint-9y1_8U_b.mjs → constants/breakpoint.es.js} +2 -2
- package/dist/constants/breakpoint.es.js.map +1 -0
- package/dist/constants/placement.cjs.js +2 -0
- package/dist/constants/placement.cjs.js.map +1 -0
- package/dist/constants/placement.es.js +28 -0
- package/dist/constants/placement.es.js.map +1 -0
- package/dist/constants.cjs.js +1 -1
- package/dist/constants.cjs.js.map +1 -1
- package/dist/constants.es.js +3 -26
- package/dist/constants.es.js.map +1 -1
- package/dist/design/colors.cjs.js +2 -0
- package/dist/design/colors.cjs.js.map +1 -0
- package/dist/{colors-CWaj9dFz.mjs → design/colors.es.js} +7 -7
- package/dist/design/colors.es.js.map +1 -0
- package/dist/design/darkTheme/colors.cjs.js +2 -0
- package/dist/{colors-Ceyo4oCJ.mjs.map → design/darkTheme/colors.cjs.js.map} +1 -1
- package/dist/{colors-Ceyo4oCJ.mjs → design/darkTheme/colors.es.js} +13 -13
- package/dist/{colors-CebzFjpe.js.map → design/darkTheme/colors.es.js.map} +1 -1
- package/dist/design/darkTheme/stylesheet.cjs.js +2 -0
- package/dist/design/darkTheme/stylesheet.cjs.js.map +1 -0
- package/dist/design/darkTheme/stylesheet.es.js +52 -0
- package/dist/design/darkTheme/stylesheet.es.js.map +1 -0
- package/dist/design/generateStylesheet.cjs.js +2 -0
- package/dist/design/generateStylesheet.cjs.js.map +1 -0
- package/dist/design/generateStylesheet.es.js +26 -0
- package/dist/design/generateStylesheet.es.js.map +1 -0
- package/dist/design/lightTheme/colors.cjs.js +2 -0
- package/dist/{colors-DMkDnu4U.mjs.map → design/lightTheme/colors.cjs.js.map} +1 -1
- package/dist/{colors-DMkDnu4U.mjs → design/lightTheme/colors.es.js} +11 -11
- package/dist/{colors-DL1dYffC.js.map → design/lightTheme/colors.es.js.map} +1 -1
- package/dist/design/lightTheme/stylesheet.cjs.js +2 -0
- package/dist/design/lightTheme/stylesheet.cjs.js.map +1 -0
- package/dist/design/lightTheme/stylesheet.es.js +52 -0
- package/dist/design/lightTheme/stylesheet.es.js.map +1 -0
- package/dist/design/theme.cjs.js +2 -0
- package/dist/design/theme.cjs.js.map +1 -0
- package/dist/design/theme.es.js +12 -0
- package/dist/design/theme.es.js.map +1 -0
- package/dist/hooks/useBreakpoint.cjs.js +2 -0
- package/dist/hooks/useBreakpoint.cjs.js.map +1 -0
- package/dist/hooks/useBreakpoint.es.js +17 -0
- package/dist/hooks/useBreakpoint.es.js.map +1 -0
- package/dist/hooks/useIsClosing.cjs.js +2 -0
- package/dist/hooks/useIsClosing.cjs.js.map +1 -0
- package/dist/hooks/useIsClosing.es.js +30 -0
- package/dist/hooks/useIsClosing.es.js.map +1 -0
- package/dist/hooks/useLockBodyScroll.cjs.js +2 -0
- package/dist/hooks/useLockBodyScroll.cjs.js.map +1 -0
- package/dist/hooks/useLockBodyScroll.es.js +14 -0
- package/dist/hooks/useLockBodyScroll.es.js.map +1 -0
- package/dist/hooks/usePalette.cjs.js +2 -0
- package/dist/hooks/usePalette.cjs.js.map +1 -0
- package/dist/hooks/usePalette.es.js +37 -0
- package/dist/hooks/usePalette.es.js.map +1 -0
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.cjs.js.map +1 -1
- package/dist/hooks.es.js +8 -37
- package/dist/hooks.es.js.map +1 -1
- package/dist/index.cjs.js +1 -17
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +5 -27
- package/dist/index.es.js +61 -8798
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringDictionary.cjs.js +2 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringDictionary.cjs.js.map +1 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringDictionary.es.js +48 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringDictionary.es.js.map +1 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringFormatter.cjs.js +2 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringFormatter.cjs.js.map +1 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringFormatter.es.js +33 -0
- package/dist/node_modules/@internationalized/string/dist/LocalizedStringFormatter.es.js.map +1 -0
- package/dist/node_modules/@react-aria/button/dist/useButton.cjs.js +2 -0
- package/dist/node_modules/@react-aria/button/dist/useButton.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/button/dist/useButton.es.js +47 -0
- package/dist/node_modules/@react-aria/button/dist/useButton.es.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/BaseCollection.cjs.js +2 -0
- package/dist/node_modules/@react-aria/collections/dist/BaseCollection.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/BaseCollection.es.js +134 -0
- package/dist/node_modules/@react-aria/collections/dist/BaseCollection.es.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/CollectionBuilder.cjs.js +2 -0
- package/dist/node_modules/@react-aria/collections/dist/CollectionBuilder.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/CollectionBuilder.es.js +145 -0
- package/dist/node_modules/@react-aria/collections/dist/CollectionBuilder.es.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/Document.cjs.js +2 -0
- package/dist/node_modules/@react-aria/collections/dist/Document.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/Document.es.js +220 -0
- package/dist/node_modules/@react-aria/collections/dist/Document.es.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/Hidden.cjs.js +2 -0
- package/dist/node_modules/@react-aria/collections/dist/Hidden.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/Hidden.es.js +36 -0
- package/dist/node_modules/@react-aria/collections/dist/Hidden.es.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/useCachedChildren.cjs.js +2 -0
- package/dist/node_modules/@react-aria/collections/dist/useCachedChildren.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/collections/dist/useCachedChildren.es.js +37 -0
- package/dist/node_modules/@react-aria/collections/dist/useCachedChildren.es.js.map +1 -0
- package/dist/node_modules/@react-aria/dialog/dist/useDialog.cjs.js +2 -0
- package/dist/node_modules/@react-aria/dialog/dist/useDialog.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/dialog/dist/useDialog.es.js +44 -0
- package/dist/node_modules/@react-aria/dialog/dist/useDialog.es.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/FocusScope.cjs.js +2 -0
- package/dist/node_modules/@react-aria/focus/dist/FocusScope.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/FocusScope.es.js +423 -0
- package/dist/node_modules/@react-aria/focus/dist/FocusScope.es.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/isElementVisible.cjs.js +2 -0
- package/dist/node_modules/@react-aria/focus/dist/isElementVisible.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/isElementVisible.es.js +23 -0
- package/dist/node_modules/@react-aria/focus/dist/isElementVisible.es.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/virtualFocus.cjs.js +2 -0
- package/dist/node_modules/@react-aria/focus/dist/virtualFocus.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/focus/dist/virtualFocus.es.js +32 -0
- package/dist/node_modules/@react-aria/focus/dist/virtualFocus.es.js.map +1 -0
- package/dist/node_modules/@react-aria/form/dist/useFormValidation.cjs.js +2 -0
- package/dist/node_modules/@react-aria/form/dist/useFormValidation.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/form/dist/useFormValidation.es.js +76 -0
- package/dist/node_modules/@react-aria/form/dist/useFormValidation.es.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/context.cjs.js +2 -0
- package/dist/node_modules/@react-aria/i18n/dist/context.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/context.es.js +11 -0
- package/dist/node_modules/@react-aria/i18n/dist/context.es.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useCollator.cjs.js +2 -0
- package/dist/node_modules/@react-aria/i18n/dist/useCollator.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useCollator.es.js +12 -0
- package/dist/node_modules/@react-aria/i18n/dist/useCollator.es.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useDefaultLocale.cjs.js +2 -0
- package/dist/node_modules/@react-aria/i18n/dist/useDefaultLocale.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useDefaultLocale.es.js +30 -0
- package/dist/node_modules/@react-aria/i18n/dist/useDefaultLocale.es.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.cjs.js +2 -0
- package/dist/node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.es.js +24 -0
- package/dist/node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.es.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/i18n/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/i18n/dist/utils.es.js +45 -0
- package/dist/node_modules/@react-aria/i18n/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/PressResponder.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/PressResponder.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/PressResponder.es.js +15 -0
- package/dist/node_modules/@react-aria/interactions/dist/PressResponder.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/context.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/context.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/context.es.js +10 -0
- package/dist/node_modules/@react-aria/interactions/dist/context.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/createEventHandler.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/createEventHandler.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/createEventHandler.es.js +29 -0
- package/dist/node_modules/@react-aria/interactions/dist/createEventHandler.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/focusSafely.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/focusSafely.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/focusSafely.es.js +15 -0
- package/dist/node_modules/@react-aria/interactions/dist/focusSafely.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/textSelection.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/textSelection.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/textSelection.es.js +35 -0
- package/dist/node_modules/@react-aria/interactions/dist/textSelection.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocus.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocus.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocus.es.js +30 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocus.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.es.js +67 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.es.js +56 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusable.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusable.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusable.es.js +42 -0
- package/dist/node_modules/@react-aria/interactions/dist/useFocusable.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useHover.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useHover.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useHover.es.js +85 -0
- package/dist/node_modules/@react-aria/interactions/dist/useHover.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useInteractOutside.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useInteractOutside.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useInteractOutside.es.js +51 -0
- package/dist/node_modules/@react-aria/interactions/dist/useInteractOutside.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useKeyboard.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useKeyboard.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useKeyboard.es.js +13 -0
- package/dist/node_modules/@react-aria/interactions/dist/useKeyboard.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useLongPress.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/useLongPress.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/useLongPress.es.js +50 -0
- package/dist/node_modules/@react-aria/interactions/dist/useLongPress.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/usePress.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/usePress.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/usePress.es.js +375 -0
- package/dist/node_modules/@react-aria/interactions/dist/usePress.es.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/interactions/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/interactions/dist/utils.es.js +92 -0
- package/dist/node_modules/@react-aria/interactions/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/label/dist/useField.cjs.js +2 -0
- package/dist/node_modules/@react-aria/label/dist/useField.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/label/dist/useField.es.js +36 -0
- package/dist/node_modules/@react-aria/label/dist/useField.es.js.map +1 -0
- package/dist/node_modules/@react-aria/label/dist/useLabel.cjs.js +2 -0
- package/dist/node_modules/@react-aria/label/dist/useLabel.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/label/dist/useLabel.es.js +23 -0
- package/dist/node_modules/@react-aria/label/dist/useLabel.es.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/useListBox.cjs.js +2 -0
- package/dist/node_modules/@react-aria/listbox/dist/useListBox.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/useListBox.es.js +52 -0
- package/dist/node_modules/@react-aria/listbox/dist/useListBox.es.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/useOption.cjs.js +2 -0
- package/dist/node_modules/@react-aria/listbox/dist/useOption.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/useOption.es.js +79 -0
- package/dist/node_modules/@react-aria/listbox/dist/useOption.es.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/listbox/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/listbox/dist/utils.es.js +14 -0
- package/dist/node_modules/@react-aria/listbox/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.cjs.js +2 -0
- package/dist/node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.es.js +48 -0
- package/dist/node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ar-AE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/ar-AE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ar-AE.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/ar-AE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/bg-BG.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/bg-BG.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/bg-BG.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/bg-BG.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/cs-CZ.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/cs-CZ.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/cs-CZ.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/cs-CZ.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/da-DK.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/da-DK.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/da-DK.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/da-DK.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/de-DE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/de-DE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/de-DE.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/de-DE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/el-GR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/el-GR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/el-GR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/el-GR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/en-US.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/en-US.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/en-US.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/en-US.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/es-ES.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/es-ES.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/es-ES.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/es-ES.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/et-EE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/et-EE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/et-EE.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/et-EE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/fi-FI.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/fi-FI.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/fi-FI.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/fi-FI.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/fr-FR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/fr-FR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/fr-FR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/fr-FR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/he-IL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/he-IL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/he-IL.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/he-IL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/hr-HR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/hr-HR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/hr-HR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/hr-HR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/hu-HU.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/hu-HU.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/hu-HU.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/hu-HU.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/intlStrings.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/intlStrings.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/intlStrings.es.js +75 -0
- package/dist/node_modules/@react-aria/menu/dist/intlStrings.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/it-IT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/it-IT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/it-IT.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/it-IT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ja-JP.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/ja-JP.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ja-JP.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/ja-JP.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ko-KR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/ko-KR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ko-KR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/ko-KR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/lt-LT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/lt-LT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/lt-LT.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/lt-LT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/lv-LV.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/lv-LV.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/lv-LV.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/lv-LV.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/nb-NO.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/nb-NO.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/nb-NO.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/nb-NO.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/nl-NL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/nl-NL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/nl-NL.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/nl-NL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pl-PL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/pl-PL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pl-PL.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/pl-PL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-BR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-BR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-BR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-BR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-PT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-PT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-PT.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/pt-PT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ro-RO.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/ro-RO.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ro-RO.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/ro-RO.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ru-RU.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/ru-RU.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/ru-RU.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/ru-RU.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sk-SK.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/sk-SK.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sk-SK.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/sk-SK.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sl-SI.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/sl-SI.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sl-SI.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/sl-SI.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sr-SP.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/sr-SP.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sr-SP.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/sr-SP.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sv-SE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/sv-SE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/sv-SE.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/sv-SE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/tr-TR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/tr-TR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/tr-TR.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/tr-TR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/uk-UA.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/uk-UA.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/uk-UA.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/uk-UA.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenu.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenu.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenu.es.js +39 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenu.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuItem.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuItem.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuItem.es.js +144 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuItem.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuTrigger.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuTrigger.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuTrigger.es.js +64 -0
- package/dist/node_modules/@react-aria/menu/dist/useMenuTrigger.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/utils.es.js +5 -0
- package/dist/node_modules/@react-aria/menu/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-CN.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-CN.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-CN.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-CN.es.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-TW.cjs.js +2 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-TW.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-TW.es.js +8 -0
- package/dist/node_modules/@react-aria/menu/dist/zh-TW.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/DismissButton.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/DismissButton.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/DismissButton.es.js +26 -0
- package/dist/node_modules/@react-aria/overlays/dist/DismissButton.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/Overlay.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/Overlay.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/Overlay.es.js +39 -0
- package/dist/node_modules/@react-aria/overlays/dist/Overlay.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/PortalProvider.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/PortalProvider.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/PortalProvider.es.js +11 -0
- package/dist/node_modules/@react-aria/overlays/dist/PortalProvider.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ar-AE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ar-AE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ar-AE.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/ar-AE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ariaHideOutside.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ariaHideOutside.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ariaHideOutside.es.js +72 -0
- package/dist/node_modules/@react-aria/overlays/dist/ariaHideOutside.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/bg-BG.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/bg-BG.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/bg-BG.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/bg-BG.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/calculatePosition.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/calculatePosition.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/calculatePosition.es.js +200 -0
- package/dist/node_modules/@react-aria/overlays/dist/calculatePosition.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/cs-CZ.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/cs-CZ.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/cs-CZ.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/cs-CZ.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/da-DK.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/da-DK.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/da-DK.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/da-DK.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/de-DE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/de-DE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/de-DE.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/de-DE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/el-GR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/el-GR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/el-GR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/el-GR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/en-US.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/en-US.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/en-US.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/en-US.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/es-ES.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/es-ES.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/es-ES.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/es-ES.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/et-EE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/et-EE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/et-EE.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/et-EE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/fi-FI.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/fi-FI.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/fi-FI.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/fi-FI.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/fr-FR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/fr-FR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/fr-FR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/fr-FR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/he-IL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/he-IL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/he-IL.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/he-IL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/hr-HR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/hr-HR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/hr-HR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/hr-HR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/hu-HU.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/hu-HU.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/hu-HU.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/hu-HU.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/intlStrings.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/intlStrings.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/intlStrings.es.js +75 -0
- package/dist/node_modules/@react-aria/overlays/dist/intlStrings.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/it-IT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/it-IT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/it-IT.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/it-IT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ja-JP.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ja-JP.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ja-JP.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/ja-JP.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ko-KR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ko-KR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ko-KR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/ko-KR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/lt-LT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/lt-LT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/lt-LT.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/lt-LT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/lv-LV.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/lv-LV.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/lv-LV.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/lv-LV.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/nb-NO.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/nb-NO.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/nb-NO.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/nb-NO.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/nl-NL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/nl-NL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/nl-NL.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/nl-NL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pl-PL.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/pl-PL.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pl-PL.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/pl-PL.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-BR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-BR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-BR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-BR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-PT.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-PT.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-PT.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/pt-PT.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ro-RO.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ro-RO.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ro-RO.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/ro-RO.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ru-RU.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/ru-RU.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/ru-RU.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/ru-RU.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sk-SK.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/sk-SK.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sk-SK.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/sk-SK.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sl-SI.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/sl-SI.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sl-SI.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/sl-SI.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sr-SP.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/sr-SP.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sr-SP.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/sr-SP.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sv-SE.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/sv-SE.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/sv-SE.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/sv-SE.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/tr-TR.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/tr-TR.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/tr-TR.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/tr-TR.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/uk-UA.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/uk-UA.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/uk-UA.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/uk-UA.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useCloseOnScroll.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/useCloseOnScroll.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useCloseOnScroll.es.js +26 -0
- package/dist/node_modules/@react-aria/overlays/dist/useCloseOnScroll.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useModalOverlay.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/useModalOverlay.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useModalOverlay.es.js +30 -0
- package/dist/node_modules/@react-aria/overlays/dist/useModalOverlay.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlay.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlay.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlay.es.js +53 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlay.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayPosition.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayPosition.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayPosition.es.js +143 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayPosition.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayTrigger.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayTrigger.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayTrigger.es.js +27 -0
- package/dist/node_modules/@react-aria/overlays/dist/useOverlayTrigger.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePopover.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePopover.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePopover.es.js +45 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePopover.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePreventScroll.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePreventScroll.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePreventScroll.es.js +98 -0
- package/dist/node_modules/@react-aria/overlays/dist/usePreventScroll.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-CN.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-CN.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-CN.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-CN.es.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-TW.cjs.js +2 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-TW.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-TW.es.js +8 -0
- package/dist/node_modules/@react-aria/overlays/dist/zh-TW.es.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadio.cjs.js +2 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadio.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadio.es.js +58 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadio.es.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadioGroup.cjs.js +2 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadioGroup.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadioGroup.es.js +78 -0
- package/dist/node_modules/@react-aria/radio/dist/useRadioGroup.es.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/radio/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/radio/dist/utils.es.js +5 -0
- package/dist/node_modules/@react-aria/radio/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/select/dist/HiddenSelect.cjs.js +2 -0
- package/dist/node_modules/@react-aria/select/dist/HiddenSelect.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/select/dist/HiddenSelect.es.js +73 -0
- package/dist/node_modules/@react-aria/select/dist/HiddenSelect.es.js.map +1 -0
- package/dist/node_modules/@react-aria/select/dist/useSelect.cjs.js +2 -0
- package/dist/node_modules/@react-aria/select/dist/useSelect.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/select/dist/useSelect.es.js +117 -0
- package/dist/node_modules/@react-aria/select/dist/useSelect.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/DOMLayoutDelegate.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/DOMLayoutDelegate.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/DOMLayoutDelegate.es.js +41 -0
- package/dist/node_modules/@react-aria/selection/dist/DOMLayoutDelegate.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/ListKeyboardDelegate.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/ListKeyboardDelegate.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/ListKeyboardDelegate.es.js +122 -0
- package/dist/node_modules/@react-aria/selection/dist/ListKeyboardDelegate.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableCollection.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableCollection.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableCollection.es.js +227 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableCollection.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableItem.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableItem.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableItem.es.js +122 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableItem.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableList.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableList.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableList.es.js +37 -0
- package/dist/node_modules/@react-aria/selection/dist/useSelectableList.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useTypeSelect.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/useTypeSelect.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/useTypeSelect.es.js +33 -0
- package/dist/node_modules/@react-aria/selection/dist/useTypeSelect.es.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/utils.cjs.js +2 -0
- package/dist/node_modules/@react-aria/selection/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/selection/dist/utils.es.js +24 -0
- package/dist/node_modules/@react-aria/selection/dist/utils.es.js.map +1 -0
- package/dist/node_modules/@react-aria/ssr/dist/SSRProvider.cjs.js +2 -0
- package/dist/node_modules/@react-aria/ssr/dist/SSRProvider.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/ssr/dist/SSRProvider.es.js +19 -0
- package/dist/node_modules/@react-aria/ssr/dist/SSRProvider.es.js.map +1 -0
- package/dist/node_modules/@react-aria/switch/dist/useSwitch.cjs.js +2 -0
- package/dist/node_modules/@react-aria/switch/dist/useSwitch.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/switch/dist/useSwitch.es.js +20 -0
- package/dist/node_modules/@react-aria/switch/dist/useSwitch.es.js.map +1 -0
- package/dist/node_modules/@react-aria/toggle/dist/useToggle.cjs.js +2 -0
- package/dist/node_modules/@react-aria/toggle/dist/useToggle.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/toggle/dist/useToggle.es.js +48 -0
- package/dist/node_modules/@react-aria/toggle/dist/useToggle.es.js.map +1 -0
- package/dist/node_modules/@react-aria/visually-hidden/dist/VisuallyHidden.cjs.js +2 -0
- package/dist/node_modules/@react-aria/visually-hidden/dist/VisuallyHidden.cjs.js.map +1 -0
- package/dist/node_modules/@react-aria/visually-hidden/dist/VisuallyHidden.es.js +41 -0
- package/dist/node_modules/@react-aria/visually-hidden/dist/VisuallyHidden.es.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/CollectionBuilder.cjs.js +2 -0
- package/dist/node_modules/@react-stately/collections/dist/CollectionBuilder.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/CollectionBuilder.es.js +171 -0
- package/dist/node_modules/@react-stately/collections/dist/CollectionBuilder.es.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/Item.cjs.js +2 -0
- package/dist/node_modules/@react-stately/collections/dist/Item.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/Item.es.js +38 -0
- package/dist/node_modules/@react-stately/collections/dist/Item.es.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/getChildNodes.cjs.js +2 -0
- package/dist/node_modules/@react-stately/collections/dist/getChildNodes.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/getChildNodes.es.js +34 -0
- package/dist/node_modules/@react-stately/collections/dist/getChildNodes.es.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/getItemCount.cjs.js +2 -0
- package/dist/node_modules/@react-stately/collections/dist/getItemCount.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/getItemCount.es.js +14 -0
- package/dist/node_modules/@react-stately/collections/dist/getItemCount.es.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/useCollection.cjs.js +2 -0
- package/dist/node_modules/@react-stately/collections/dist/useCollection.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/collections/dist/useCollection.es.js +24 -0
- package/dist/node_modules/@react-stately/collections/dist/useCollection.es.js.map +1 -0
- package/dist/node_modules/@react-stately/form/dist/useFormValidationState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/form/dist/useFormValidationState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/form/dist/useFormValidationState.es.js +110 -0
- package/dist/node_modules/@react-stately/form/dist/useFormValidationState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/ListCollection.cjs.js +2 -0
- package/dist/node_modules/@react-stately/list/dist/ListCollection.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/ListCollection.es.js +57 -0
- package/dist/node_modules/@react-stately/list/dist/ListCollection.es.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/useListState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/list/dist/useListState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/useListState.es.js +70 -0
- package/dist/node_modules/@react-stately/list/dist/useListState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/useSingleSelectListState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/list/dist/useSingleSelectListState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/list/dist/useSingleSelectListState.es.js +35 -0
- package/dist/node_modules/@react-stately/list/dist/useSingleSelectListState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/menu/dist/useMenuTriggerState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/menu/dist/useMenuTriggerState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/menu/dist/useMenuTriggerState.es.js +34 -0
- package/dist/node_modules/@react-stately/menu/dist/useMenuTriggerState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/overlays/dist/useOverlayTriggerState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/overlays/dist/useOverlayTriggerState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/overlays/dist/useOverlayTriggerState.es.js +30 -0
- package/dist/node_modules/@react-stately/overlays/dist/useOverlayTriggerState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/radio/dist/useRadioGroupState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/radio/dist/useRadioGroupState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/radio/dist/useRadioGroupState.es.js +33 -0
- package/dist/node_modules/@react-stately/radio/dist/useRadioGroupState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/select/dist/useSelectState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/select/dist/useSelectState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/select/dist/useSelectState.es.js +33 -0
- package/dist/node_modules/@react-stately/select/dist/useSelectState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/Selection.cjs.js +2 -0
- package/dist/node_modules/@react-stately/selection/dist/Selection.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/Selection.es.js +9 -0
- package/dist/node_modules/@react-stately/selection/dist/Selection.es.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/SelectionManager.cjs.js +2 -0
- package/dist/node_modules/@react-stately/selection/dist/SelectionManager.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/SelectionManager.es.js +285 -0
- package/dist/node_modules/@react-stately/selection/dist/SelectionManager.es.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/useMultipleSelectionState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/selection/dist/useMultipleSelectionState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/selection/dist/useMultipleSelectionState.es.js +58 -0
- package/dist/node_modules/@react-stately/selection/dist/useMultipleSelectionState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/toggle/dist/useToggleState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/toggle/dist/useToggleState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/toggle/dist/useToggleState.es.js +19 -0
- package/dist/node_modules/@react-stately/toggle/dist/useToggleState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/tree/dist/TreeCollection.cjs.js +2 -0
- package/dist/node_modules/@react-stately/tree/dist/TreeCollection.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/tree/dist/TreeCollection.es.js +53 -0
- package/dist/node_modules/@react-stately/tree/dist/TreeCollection.es.js.map +1 -0
- package/dist/node_modules/@react-stately/tree/dist/useTreeState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/tree/dist/useTreeState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/tree/dist/useTreeState.es.js +38 -0
- package/dist/node_modules/@react-stately/tree/dist/useTreeState.es.js.map +1 -0
- package/dist/node_modules/@react-stately/utils/dist/useControlledState.cjs.js +2 -0
- package/dist/node_modules/@react-stately/utils/dist/useControlledState.cjs.js.map +1 -0
- package/dist/node_modules/@react-stately/utils/dist/useControlledState.es.js +31 -0
- package/dist/node_modules/@react-stately/utils/dist/useControlledState.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_check_private_redeclaration.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_check_private_redeclaration.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_check_private_redeclaration.es.js +9 -0
- package/dist/node_modules/@swc/helpers/esm/_check_private_redeclaration.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.es.js +8 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.es.js +13 -0
- package/dist/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.es.js +9 -0
- package/dist/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_get.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_get.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_get.es.js +11 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_get.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_init.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_init.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_init.es.js +9 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_init.es.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_set.cjs.js +2 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_set.cjs.js.map +1 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_set.es.js +11 -0
- package/dist/node_modules/@swc/helpers/esm/_class_private_field_set.es.js.map +1 -0
- package/dist/node_modules/color2k/dist/index.exports.import.es.cjs.js +2 -0
- package/dist/node_modules/color2k/dist/index.exports.import.es.cjs.js.map +1 -0
- package/dist/node_modules/color2k/dist/index.exports.import.es.es.js +171 -0
- package/dist/node_modules/color2k/dist/index.exports.import.es.es.js.map +1 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs.js +23 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs.js.map +1 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.es.js +609 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.es.js.map +1 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.min.cjs.js +10 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.min.cjs.js.map +1 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.min.es.js +29 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.min.es.js.map +1 -0
- package/dist/node_modules/react/jsx-runtime.cjs.js +2 -0
- package/dist/node_modules/react/jsx-runtime.cjs.js.map +1 -0
- package/dist/node_modules/react/jsx-runtime.es.js +9 -0
- package/dist/node_modules/react/jsx-runtime.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Autocomplete.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Autocomplete.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Autocomplete.es.js +6 -0
- package/dist/node_modules/react-aria-components/dist/Autocomplete.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Button.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Button.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Button.es.js +77 -0
- package/dist/node_modules/react-aria-components/dist/Button.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Collection.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Collection.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Collection.es.js +48 -0
- package/dist/node_modules/react-aria-components/dist/Collection.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Dialog.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Dialog.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Dialog.es.js +6 -0
- package/dist/node_modules/react-aria-components/dist/Dialog.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Header.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Header.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Header.es.js +15 -0
- package/dist/node_modules/react-aria-components/dist/Header.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Keyboard.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Keyboard.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Keyboard.es.js +6 -0
- package/dist/node_modules/react-aria-components/dist/Keyboard.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Menu.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Menu.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Menu.es.js +283 -0
- package/dist/node_modules/react-aria-components/dist/Menu.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/OverlayArrow.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/OverlayArrow.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/OverlayArrow.es.js +37 -0
- package/dist/node_modules/react-aria-components/dist/OverlayArrow.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Popover.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Popover.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Popover.es.js +130 -0
- package/dist/node_modules/react-aria-components/dist/Popover.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/ProgressBar.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/ProgressBar.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/ProgressBar.es.js +6 -0
- package/dist/node_modules/react-aria-components/dist/ProgressBar.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Separator.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Separator.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Separator.es.js +6 -0
- package/dist/node_modules/react-aria-components/dist/Separator.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Text.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Text.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Text.es.js +16 -0
- package/dist/node_modules/react-aria-components/dist/Text.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Tooltip.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/Tooltip.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/Tooltip.es.js +97 -0
- package/dist/node_modules/react-aria-components/dist/Tooltip.es.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/utils.cjs.js +2 -0
- package/dist/node_modules/react-aria-components/dist/utils.cjs.js.map +1 -0
- package/dist/node_modules/react-aria-components/dist/utils.es.js +101 -0
- package/dist/node_modules/react-aria-components/dist/utils.es.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.cjs.js +10 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.cjs.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.es.js +68 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.es.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.cjs.js +10 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.cjs.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.es.js +56 -0
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.es.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/shim/index.cjs.js +2 -0
- package/dist/node_modules/use-sync-external-store/shim/index.cjs.js.map +1 -0
- package/dist/node_modules/use-sync-external-store/shim/index.es.js +9 -0
- package/dist/node_modules/use-sync-external-store/shim/index.es.js.map +1 -0
- package/dist/theme/dark.cjs.js +1 -1
- package/dist/theme/dark.cjs.js.map +1 -1
- package/dist/theme/dark.es.js +8 -55
- package/dist/theme/dark.es.js.map +1 -1
- package/dist/theme/light.cjs.js +1 -1
- package/dist/theme/light.cjs.js.map +1 -1
- package/dist/theme/light.es.js +8 -55
- package/dist/theme/light.es.js.map +1 -1
- package/dist/theme.cjs.js +1 -1
- package/dist/theme.cjs.js.map +1 -1
- package/dist/theme.es.js +9 -15
- package/dist/theme.es.js.map +1 -1
- package/dist/utils/color2k.cjs.js +2 -0
- package/dist/utils/color2k.cjs.js.map +1 -0
- package/dist/utils/color2k.es.js +14 -0
- package/dist/utils/color2k.es.js.map +1 -0
- package/dist/utils/copy.cjs.js +2 -0
- package/dist/utils/copy.cjs.js.map +1 -0
- package/dist/{copy-qSgElu2b.mjs → utils/copy.es.js} +2 -2
- package/dist/utils/copy.es.js.map +1 -0
- package/dist/utils/image.cjs.js +2 -0
- package/dist/utils/image.cjs.js.map +1 -0
- package/dist/utils/image.es.js +28 -0
- package/dist/utils/image.es.js.map +1 -0
- package/dist/utils/navigation.cjs.js +2 -0
- package/dist/utils/navigation.cjs.js.map +1 -0
- package/dist/utils/navigation.es.js +12 -0
- package/dist/utils/navigation.es.js.map +1 -0
- package/dist/utils/palette.cjs.js +2 -0
- package/dist/utils/palette.cjs.js.map +1 -0
- package/dist/utils/palette.es.js +183 -0
- package/dist/utils/palette.es.js.map +1 -0
- package/dist/utils/string.cjs.js +2 -0
- package/dist/utils/string.cjs.js.map +1 -0
- package/dist/utils/string.es.js +8 -0
- package/dist/utils/string.es.js.map +1 -0
- package/dist/utils.cjs.js +1 -1
- package/dist/utils.es.js +19 -16
- package/dist/utils.es.js.map +1 -1
- package/package.json +7 -9
- package/dist/Button-D5vY_uZz.js +0 -31
- package/dist/Button-D5vY_uZz.js.map +0 -1
- package/dist/Button-R07nvJbw.mjs +0 -727
- package/dist/Button-R07nvJbw.mjs.map +0 -1
- package/dist/Button.cjs.js +0 -2
- package/dist/Button.cjs.js.map +0 -1
- package/dist/Button.d.ts +0 -53
- package/dist/Button.es.js +0 -9
- package/dist/Button.es.js.map +0 -1
- package/dist/breakpoint-9y1_8U_b.mjs.map +0 -1
- package/dist/breakpoint-DtqbboOa.js +0 -2
- package/dist/breakpoint-DtqbboOa.js.map +0 -1
- package/dist/color2k-CpDB_dpw.mjs +0 -168
- package/dist/color2k-CpDB_dpw.mjs.map +0 -1
- package/dist/color2k-DCgwXUem.js +0 -2
- package/dist/color2k-DCgwXUem.js.map +0 -1
- package/dist/colors-CWaj9dFz.mjs.map +0 -1
- package/dist/colors-CebzFjpe.js +0 -2
- package/dist/colors-CmSJBHaf.js +0 -2
- package/dist/colors-CmSJBHaf.js.map +0 -1
- package/dist/colors-DL1dYffC.js +0 -2
- package/dist/copy-DxIZCnfT.js +0 -2
- package/dist/copy-DxIZCnfT.js.map +0 -1
- package/dist/copy-qSgElu2b.mjs.map +0 -1
- package/dist/image-CUSfY1_T.js +0 -2
- package/dist/image-CUSfY1_T.js.map +0 -1
- package/dist/image-DFyN0Kd9.mjs +0 -207
- package/dist/image-DFyN0Kd9.mjs.map +0 -1
- package/dist/navigation-DdxS0JoV.js +0 -2
- package/dist/navigation-DdxS0JoV.js.map +0 -1
- package/dist/navigation-DsfDNfej.mjs +0 -16
- package/dist/navigation-DsfDNfej.mjs.map +0 -1
- package/dist/useBreakpoint-CA9tMMV8.js +0 -2
- package/dist/useBreakpoint-CA9tMMV8.js.map +0 -1
- package/dist/useBreakpoint-CjRyGKN-.mjs +0 -53
- package/dist/useBreakpoint-CjRyGKN-.mjs.map +0 -1
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../node_modules/@react-aria/menu/dist/ar-AE.mjs","../node_modules/@react-aria/menu/dist/bg-BG.mjs","../node_modules/@react-aria/menu/dist/cs-CZ.mjs","../node_modules/@react-aria/menu/dist/da-DK.mjs","../node_modules/@react-aria/menu/dist/de-DE.mjs","../node_modules/@react-aria/menu/dist/el-GR.mjs","../node_modules/@react-aria/menu/dist/en-US.mjs","../node_modules/@react-aria/menu/dist/es-ES.mjs","../node_modules/@react-aria/menu/dist/et-EE.mjs","../node_modules/@react-aria/menu/dist/fi-FI.mjs","../node_modules/@react-aria/menu/dist/fr-FR.mjs","../node_modules/@react-aria/menu/dist/he-IL.mjs","../node_modules/@react-aria/menu/dist/hr-HR.mjs","../node_modules/@react-aria/menu/dist/hu-HU.mjs","../node_modules/@react-aria/menu/dist/it-IT.mjs","../node_modules/@react-aria/menu/dist/ja-JP.mjs","../node_modules/@react-aria/menu/dist/ko-KR.mjs","../node_modules/@react-aria/menu/dist/lt-LT.mjs","../node_modules/@react-aria/menu/dist/lv-LV.mjs","../node_modules/@react-aria/menu/dist/nb-NO.mjs","../node_modules/@react-aria/menu/dist/nl-NL.mjs","../node_modules/@react-aria/menu/dist/pl-PL.mjs","../node_modules/@react-aria/menu/dist/pt-BR.mjs","../node_modules/@react-aria/menu/dist/pt-PT.mjs","../node_modules/@react-aria/menu/dist/ro-RO.mjs","../node_modules/@react-aria/menu/dist/ru-RU.mjs","../node_modules/@react-aria/menu/dist/sk-SK.mjs","../node_modules/@react-aria/menu/dist/sl-SI.mjs","../node_modules/@react-aria/menu/dist/sr-SP.mjs","../node_modules/@react-aria/menu/dist/sv-SE.mjs","../node_modules/@react-aria/menu/dist/tr-TR.mjs","../node_modules/@react-aria/menu/dist/uk-UA.mjs","../node_modules/@react-aria/menu/dist/zh-CN.mjs","../node_modules/@react-aria/menu/dist/zh-TW.mjs","../node_modules/@react-aria/menu/dist/intlStrings.mjs","../node_modules/@react-aria/interactions/dist/utils.mjs","../node_modules/@react-aria/interactions/dist/textSelection.mjs","../node_modules/@react-aria/interactions/dist/context.mjs","../node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js","../node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js","../node_modules/@swc/helpers/esm/_class_private_field_get.js","../node_modules/@swc/helpers/esm/_check_private_redeclaration.js","../node_modules/@swc/helpers/esm/_class_private_field_init.js","../node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js","../node_modules/@swc/helpers/esm/_class_private_field_set.js","../node_modules/@react-aria/interactions/dist/usePress.mjs","../node_modules/@react-aria/ssr/dist/SSRProvider.mjs","../node_modules/@react-aria/interactions/dist/useFocusVisible.mjs","../node_modules/@react-aria/interactions/dist/focusSafely.mjs","../node_modules/@react-aria/interactions/dist/useFocus.mjs","../node_modules/@react-aria/interactions/dist/createEventHandler.mjs","../node_modules/@react-aria/interactions/dist/useKeyboard.mjs","../node_modules/@react-aria/interactions/dist/useFocusable.mjs","../node_modules/@react-aria/interactions/dist/PressResponder.mjs","../node_modules/@react-aria/interactions/dist/useFocusWithin.mjs","../node_modules/@react-aria/interactions/dist/useHover.mjs","../node_modules/@react-aria/interactions/dist/useInteractOutside.mjs","../node_modules/@react-aria/interactions/dist/useLongPress.mjs","../node_modules/@react-aria/i18n/dist/utils.mjs","../node_modules/@react-aria/i18n/dist/useDefaultLocale.mjs","../node_modules/@react-aria/i18n/dist/context.mjs","../node_modules/@internationalized/string/dist/LocalizedStringDictionary.mjs","../node_modules/@internationalized/string/dist/LocalizedStringFormatter.mjs","../node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.mjs","../node_modules/@react-aria/i18n/dist/useCollator.mjs","../node_modules/@react-aria/overlays/dist/calculatePosition.mjs","../node_modules/@react-aria/overlays/dist/useCloseOnScroll.mjs","../node_modules/@react-aria/overlays/dist/useOverlayPosition.mjs","../node_modules/@react-aria/focus/dist/isElementVisible.mjs","../node_modules/@react-aria/focus/dist/FocusScope.mjs","../node_modules/@react-aria/focus/dist/virtualFocus.mjs","../node_modules/@react-aria/overlays/dist/useOverlay.mjs","../node_modules/@react-aria/overlays/dist/useOverlayTrigger.mjs","../node_modules/@react-aria/overlays/dist/usePreventScroll.mjs","../node_modules/@react-aria/overlays/dist/PortalProvider.mjs","../node_modules/@react-aria/overlays/dist/ar-AE.mjs","../node_modules/@react-aria/overlays/dist/bg-BG.mjs","../node_modules/@react-aria/overlays/dist/cs-CZ.mjs","../node_modules/@react-aria/overlays/dist/da-DK.mjs","../node_modules/@react-aria/overlays/dist/de-DE.mjs","../node_modules/@react-aria/overlays/dist/el-GR.mjs","../node_modules/@react-aria/overlays/dist/en-US.mjs","../node_modules/@react-aria/overlays/dist/es-ES.mjs","../node_modules/@react-aria/overlays/dist/et-EE.mjs","../node_modules/@react-aria/overlays/dist/fi-FI.mjs","../node_modules/@react-aria/overlays/dist/fr-FR.mjs","../node_modules/@react-aria/overlays/dist/he-IL.mjs","../node_modules/@react-aria/overlays/dist/hr-HR.mjs","../node_modules/@react-aria/overlays/dist/hu-HU.mjs","../node_modules/@react-aria/overlays/dist/it-IT.mjs","../node_modules/@react-aria/overlays/dist/ja-JP.mjs","../node_modules/@react-aria/overlays/dist/ko-KR.mjs","../node_modules/@react-aria/overlays/dist/lt-LT.mjs","../node_modules/@react-aria/overlays/dist/lv-LV.mjs","../node_modules/@react-aria/overlays/dist/nb-NO.mjs","../node_modules/@react-aria/overlays/dist/nl-NL.mjs","../node_modules/@react-aria/overlays/dist/pl-PL.mjs","../node_modules/@react-aria/overlays/dist/pt-BR.mjs","../node_modules/@react-aria/overlays/dist/pt-PT.mjs","../node_modules/@react-aria/overlays/dist/ro-RO.mjs","../node_modules/@react-aria/overlays/dist/ru-RU.mjs","../node_modules/@react-aria/overlays/dist/sk-SK.mjs","../node_modules/@react-aria/overlays/dist/sl-SI.mjs","../node_modules/@react-aria/overlays/dist/sr-SP.mjs","../node_modules/@react-aria/overlays/dist/sv-SE.mjs","../node_modules/@react-aria/overlays/dist/tr-TR.mjs","../node_modules/@react-aria/overlays/dist/uk-UA.mjs","../node_modules/@react-aria/overlays/dist/zh-CN.mjs","../node_modules/@react-aria/overlays/dist/zh-TW.mjs","../node_modules/@react-aria/overlays/dist/intlStrings.mjs","../node_modules/@react-aria/visually-hidden/dist/VisuallyHidden.mjs","../node_modules/@react-aria/overlays/dist/DismissButton.mjs","../node_modules/@react-aria/overlays/dist/ariaHideOutside.mjs","../node_modules/@react-aria/overlays/dist/usePopover.mjs","../node_modules/@react-aria/overlays/dist/Overlay.mjs","../node_modules/@react-aria/overlays/dist/useModalOverlay.mjs","../node_modules/@react-aria/menu/dist/useMenuTrigger.mjs","../node_modules/@react-aria/menu/dist/utils.mjs","../node_modules/@react-aria/selection/dist/utils.mjs","../node_modules/@react-aria/selection/dist/useTypeSelect.mjs","../node_modules/@react-aria/selection/dist/useSelectableCollection.mjs","../node_modules/@react-aria/selection/dist/useSelectableItem.mjs","../node_modules/@react-aria/selection/dist/DOMLayoutDelegate.mjs","../node_modules/@react-aria/selection/dist/ListKeyboardDelegate.mjs","../node_modules/@react-aria/selection/dist/useSelectableList.mjs","../node_modules/@react-aria/menu/dist/useMenu.mjs","../node_modules/@react-stately/collections/dist/Item.mjs","../node_modules/@react-stately/collections/dist/CollectionBuilder.mjs","../node_modules/@react-stately/collections/dist/useCollection.mjs","../node_modules/@react-stately/collections/dist/getChildNodes.mjs","../node_modules/@react-stately/collections/dist/getItemCount.mjs","../node_modules/@react-aria/menu/dist/useMenuItem.mjs","../node_modules/@react-stately/tree/dist/TreeCollection.mjs","../node_modules/@react-stately/selection/dist/Selection.mjs","../node_modules/@react-stately/utils/dist/useControlledState.mjs","../node_modules/@react-stately/selection/dist/useMultipleSelectionState.mjs","../node_modules/@react-stately/selection/dist/SelectionManager.mjs","../node_modules/@react-stately/tree/dist/useTreeState.mjs","../node_modules/@radix-ui/react-compose-refs/dist/index.mjs","../node_modules/@radix-ui/react-slot/dist/index.mjs","../node_modules/@radix-ui/react-primitive/dist/index.mjs","../node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs","../node_modules/@radix-ui/react-portal/dist/index.mjs","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../node_modules/use-sync-external-store/shim/index.js","../src/design/generateStylesheet.ts","../src/components/ThemeProvider.tsx","../src/components/ScreenOverlay/ScreenOverlay.tsx","../assets/svg/icons.svg","../src/components/Icon/Icon.tsx","../src/components/ActionMenu/ActionMenu.tsx","../src/components/Badge/Badge.tsx","../src/components/Banner/Banner.tsx","../node_modules/@react-aria/radio/dist/utils.mjs","../node_modules/@react-aria/form/dist/useFormValidation.mjs","../node_modules/@react-aria/radio/dist/useRadio.mjs","../node_modules/@react-aria/label/dist/useLabel.mjs","../node_modules/@react-aria/label/dist/useField.mjs","../node_modules/@react-aria/radio/dist/useRadioGroup.mjs","../node_modules/@react-stately/form/dist/useFormValidationState.mjs","../node_modules/@react-stately/radio/dist/useRadioGroupState.mjs","../src/components/ButtonGroup/ButtonGroup.tsx","../node_modules/react-aria-components/dist/utils.mjs","../node_modules/@react-aria/collections/dist/BaseCollection.mjs","../node_modules/@react-aria/collections/dist/Document.mjs","../node_modules/@react-aria/collections/dist/useCachedChildren.mjs","../node_modules/@react-aria/collections/dist/Hidden.mjs","../node_modules/@react-aria/collections/dist/CollectionBuilder.mjs","../node_modules/react-aria-components/dist/ProgressBar.mjs","../node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.mjs","../node_modules/react-aria-components/dist/Button.mjs","../node_modules/react-aria-components/dist/Text.mjs","../node_modules/@react-aria/listbox/dist/utils.mjs","../node_modules/@react-aria/listbox/dist/useListBox.mjs","../node_modules/@react-aria/listbox/dist/useOption.mjs","../node_modules/react-aria-components/dist/Autocomplete.mjs","../node_modules/react-aria-components/dist/Collection.mjs","../node_modules/react-aria-components/dist/Header.mjs","../node_modules/react-aria-components/dist/Separator.mjs","../node_modules/react-aria-components/dist/OverlayArrow.mjs","../node_modules/react-aria-components/dist/Popover.mjs","../node_modules/react-aria-components/dist/Keyboard.mjs","../node_modules/react-aria-components/dist/Menu.mjs","../node_modules/react-aria-components/dist/Dialog.mjs","../node_modules/react-aria-components/dist/Tooltip.mjs","../node_modules/@react-stately/overlays/dist/useOverlayTriggerState.mjs","../node_modules/@react-stately/menu/dist/useMenuTriggerState.mjs","../src/components/Menu/PopoverMenu.tsx","../src/components/Menu/MenuTrigger.tsx","../src/components/ButtonWithSelect/ButtonWithSelect.tsx","../src/components/Table/Collection/CompoundComponents.tsx","../src/components/Table/Collection/collectionParser.ts","../src/components/Table/Collection/useTableCollection.tsx","../src/components/Table/Table.tsx","../src/components/Elevation/Elevation.tsx","../src/components/Tombstone/Tombstone.tsx","../src/components/DataTable/DataTable.tsx","../node_modules/@react-aria/dialog/dist/useDialog.mjs","../src/components/Dialog/Dialog.tsx","../src/components/ImageBackground/ImageBackground.tsx","../src/components/Input/BaseInput/Input.tsx","../src/components/Input/CopyInput/CopyInput.tsx","../src/components/Input/SearchInput/SearchInput.tsx","../node_modules/@react-aria/button/dist/useButton.mjs","../src/components/Modal/Modal.tsx","../src/components/Popover/Popover.tsx","../node_modules/@react-aria/select/dist/useSelect.mjs","../node_modules/@react-aria/select/dist/HiddenSelect.mjs","../node_modules/@react-stately/list/dist/ListCollection.mjs","../node_modules/@react-stately/list/dist/useListState.mjs","../node_modules/@react-stately/list/dist/useSingleSelectListState.mjs","../node_modules/@react-stately/select/dist/useSelectState.mjs","../src/components/ListBox/ListBox.tsx","../src/components/Select/Select.tsx","../node_modules/@react-aria/toggle/dist/useToggle.mjs","../node_modules/@react-aria/switch/dist/useSwitch.mjs","../node_modules/@react-stately/toggle/dist/useToggleState.mjs","../src/components/Switch/Switch.tsx","../src/components/Text/TextEllipsis/TextEllipsis.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/Text/TextEmphasis/TextEmphasis.tsx","../src/components/Waveform/WaveformBar.tsx","../src/components/Waveform/Waveform.tsx"],"sourcesContent":["var $c0398ad35c3639b7$exports = {};\n$c0398ad35c3639b7$exports = {\n \"longPressMessage\": `\\u{627}\\u{636}\\u{63A}\\u{637} \\u{645}\\u{637}\\u{648}\\u{644}\\u{627}\\u{64B} \\u{623}\\u{648} \\u{627}\\u{636}\\u{63A}\\u{637} \\u{639}\\u{644}\\u{649} Alt + \\u{627}\\u{644}\\u{633}\\u{647}\\u{645} \\u{644}\\u{623}\\u{633}\\u{641}\\u{644} \\u{644}\\u{641}\\u{62A}\\u{62D} \\u{627}\\u{644}\\u{642}\\u{627}\\u{626}\\u{645}\\u{629}`\n};\n\n\nexport {$c0398ad35c3639b7$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $7af657c4165927c3$exports = {};\n$7af657c4165927c3$exports = {\n \"longPressMessage\": `\\u{41D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{435}\\u{442}\\u{435} \\u{43F}\\u{440}\\u{43E}\\u{434}\\u{44A}\\u{43B}\\u{436}\\u{438}\\u{442}\\u{435}\\u{43B}\\u{43D}\\u{43E} \\u{438}\\u{43B}\\u{438} \\u{43D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{435}\\u{442}\\u{435} Alt+ \\u{441}\\u{442}\\u{440}\\u{435}\\u{43B}\\u{43A}\\u{430} \\u{43D}\\u{430}\\u{434}\\u{43E}\\u{43B}\\u{443}, \\u{437}\\u{430} \\u{434}\\u{430} \\u{43E}\\u{442}\\u{432}\\u{43E}\\u{440}\\u{438}\\u{442}\\u{435} \\u{43C}\\u{435}\\u{43D}\\u{44E}\\u{442}\\u{43E}`\n};\n\n\nexport {$7af657c4165927c3$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $d95d4da6d531ab81$exports = {};\n$d95d4da6d531ab81$exports = {\n \"longPressMessage\": `Dlouh\\xfdm stiskem nebo stisknut\\xedm kl\\xe1ves Alt + \\u{161}ipka dol\\u{16F} otev\\u{159}ete nab\\xeddku`\n};\n\n\nexport {$d95d4da6d531ab81$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $24ebda9c775dca17$exports = {};\n$24ebda9c775dca17$exports = {\n \"longPressMessage\": `Langt tryk eller tryk p\\xe5 Alt + pil ned for at \\xe5bne menuen`\n};\n\n\nexport {$24ebda9c775dca17$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $743e0dfca6cab1e9$exports = {};\n$743e0dfca6cab1e9$exports = {\n \"longPressMessage\": `Dr\\xfccken Sie lange oder dr\\xfccken Sie Alt + Nach-unten, um das Men\\xfc zu \\xf6ffnen`\n};\n\n\nexport {$743e0dfca6cab1e9$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $a2f41026e05f1c84$exports = {};\n$a2f41026e05f1c84$exports = {\n \"longPressMessage\": `\\u{3A0}\\u{3B9}\\u{3AD}\\u{3C3}\\u{3C4}\\u{3B5} \\u{3C0}\\u{3B1}\\u{3C1}\\u{3B1}\\u{3C4}\\u{3B5}\\u{3C4}\\u{3B1}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3B1} \\u{3AE} \\u{3C0}\\u{3B1}\\u{3C4}\\u{3AE}\\u{3C3}\\u{3C4}\\u{3B5} Alt + \\u{3BA}\\u{3AC}\\u{3C4}\\u{3C9} \\u{3B2}\\u{3AD}\\u{3BB}\\u{3BF}\\u{3C2} \\u{3B3}\\u{3B9}\\u{3B1} \\u{3BD}\\u{3B1} \\u{3B1}\\u{3BD}\\u{3BF}\\u{3AF}\\u{3BE}\\u{3B5}\\u{3C4}\\u{3B5} \\u{3C4}\\u{3BF} \\u{3BC}\\u{3B5}\\u{3BD}\\u{3BF}\\u{3CD}`\n};\n\n\nexport {$a2f41026e05f1c84$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $43b800e97c901737$exports = {};\n$43b800e97c901737$exports = {\n \"longPressMessage\": `Long press or press Alt + ArrowDown to open menu`\n};\n\n\nexport {$43b800e97c901737$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $442f5f6ac211e29f$exports = {};\n$442f5f6ac211e29f$exports = {\n \"longPressMessage\": `Mantenga pulsado o pulse Alt + flecha abajo para abrir el men\\xfa`\n};\n\n\nexport {$442f5f6ac211e29f$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $dff280acfeb2d8ac$exports = {};\n$dff280acfeb2d8ac$exports = {\n \"longPressMessage\": `Men\\xfc\\xfc avamiseks vajutage pikalt v\\xf5i vajutage klahve Alt + allanool`\n};\n\n\nexport {$dff280acfeb2d8ac$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $51608325613944d7$exports = {};\n$51608325613944d7$exports = {\n \"longPressMessage\": `Avaa valikko painamalla pohjassa tai n\\xe4pp\\xe4inyhdistelm\\xe4ll\\xe4 Alt + Alanuoli`\n};\n\n\nexport {$51608325613944d7$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $c4a1b1eabeaa87be$exports = {};\n$c4a1b1eabeaa87be$exports = {\n \"longPressMessage\": `Appuyez de mani\\xe8re prolong\\xe9e ou appuyez sur Alt\\xa0+\\xa0Fl\\xe8che vers le bas pour ouvrir le menu.`\n};\n\n\nexport {$c4a1b1eabeaa87be$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $8c74815cdee18d1b$exports = {};\n$8c74815cdee18d1b$exports = {\n \"longPressMessage\": `\\u{5DC}\\u{5D7}\\u{5E5} \\u{5DC}\\u{5D7}\\u{5D9}\\u{5E6}\\u{5D4} \\u{5D0}\\u{5E8}\\u{5D5}\\u{5DB}\\u{5D4} \\u{5D0}\\u{5D5} \\u{5D4}\\u{5E7}\\u{5E9} Alt + ArrowDown \\u{5DB}\\u{5D3}\\u{5D9} \\u{5DC}\\u{5E4}\\u{5EA}\\u{5D5}\\u{5D7} \\u{5D0}\\u{5EA} \\u{5D4}\\u{5EA}\\u{5E4}\\u{5E8}\\u{5D9}\\u{5D8}`\n};\n\n\nexport {$8c74815cdee18d1b$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $fd0e9ef6a7fe0ec9$exports = {};\n$fd0e9ef6a7fe0ec9$exports = {\n \"longPressMessage\": `Dugo pritisnite ili pritisnite Alt + strelicu prema dolje za otvaranje izbornika`\n};\n\n\nexport {$fd0e9ef6a7fe0ec9$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $a89a74a39eba465a$exports = {};\n$a89a74a39eba465a$exports = {\n \"longPressMessage\": `Nyomja meg hosszan, vagy nyomja meg az Alt + lefele ny\\xedl gombot a men\\xfc megnyit\\xe1s\\xe1hoz`\n};\n\n\nexport {$a89a74a39eba465a$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $edc7c66594a0ae8a$exports = {};\n$edc7c66594a0ae8a$exports = {\n \"longPressMessage\": `Premere a lungo o premere Alt + Freccia gi\\xf9 per aprire il menu`\n};\n\n\nexport {$edc7c66594a0ae8a$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $f1ab51510712db52$exports = {};\n$f1ab51510712db52$exports = {\n \"longPressMessage\": `\\u{9577}\\u{62BC}\\u{3057}\\u{307E}\\u{305F}\\u{306F} Alt+\\u{4E0B}\\u{77E2}\\u{5370}\\u{30AD}\\u{30FC}\\u{3067}\\u{30E1}\\u{30CB}\\u{30E5}\\u{30FC}\\u{3092}\\u{958B}\\u{304F}`\n};\n\n\nexport {$f1ab51510712db52$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $f9b672d9b82fa3d6$exports = {};\n$f9b672d9b82fa3d6$exports = {\n \"longPressMessage\": `\\u{AE38}\\u{AC8C} \\u{B204}\\u{B974}\\u{AC70}\\u{B098} Alt + \\u{C544}\\u{B798}\\u{CABD} \\u{D654}\\u{C0B4}\\u{D45C}\\u{B97C} \\u{B20C}\\u{B7EC} \\u{BA54}\\u{B274} \\u{C5F4}\\u{AE30}`\n};\n\n\nexport {$f9b672d9b82fa3d6$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $a385f3910feda499$exports = {};\n$a385f3910feda499$exports = {\n \"longPressMessage\": `Nor\\u{117}dami atidaryti meniu, nuspaud\\u{119} palaikykite arba paspauskite \\u{201E}Alt + ArrowDown\\u{201C}.`\n};\n\n\nexport {$a385f3910feda499$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $4f1bde932c441789$exports = {};\n$4f1bde932c441789$exports = {\n \"longPressMessage\": `Lai atv\\u{113}rtu izv\\u{113}lni, turiet nospiestu vai nospiediet tausti\\u{146}u kombin\\u{101}ciju Alt + lejupv\\u{113}rst\\u{101} bulti\\u{146}a`\n};\n\n\nexport {$4f1bde932c441789$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $914a51a8a594d5be$exports = {};\n$914a51a8a594d5be$exports = {\n \"longPressMessage\": `Langt trykk eller trykk Alt + PilNed for \\xe5 \\xe5pne menyen`\n};\n\n\nexport {$914a51a8a594d5be$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $89aaf803103bb500$exports = {};\n$89aaf803103bb500$exports = {\n \"longPressMessage\": `Druk lang op Alt + pijl-omlaag of druk op Alt om het menu te openen`\n};\n\n\nexport {$89aaf803103bb500$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $c685891476dbaaca$exports = {};\n$c685891476dbaaca$exports = {\n \"longPressMessage\": `Naci\\u{15B}nij i przytrzymaj lub naci\\u{15B}nij klawisze Alt + Strza\\u{142}ka w d\\xf3\\u{142}, aby otworzy\\u{107} menu`\n};\n\n\nexport {$c685891476dbaaca$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $885879b9b10c2959$exports = {};\n$885879b9b10c2959$exports = {\n \"longPressMessage\": `Pressione e segure ou pressione Alt + Seta para baixo para abrir o menu`\n};\n\n\nexport {$885879b9b10c2959$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $6b39616688a51692$exports = {};\n$6b39616688a51692$exports = {\n \"longPressMessage\": `Prima continuamente ou prima Alt + Seta Para Baixo para abrir o menu`\n};\n\n\nexport {$6b39616688a51692$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $f26362aed63f47e2$exports = {};\n$f26362aed63f47e2$exports = {\n \"longPressMessage\": `Ap\\u{103}sa\\u{21B}i lung sau ap\\u{103}sa\\u{21B}i pe Alt + s\\u{103}geat\\u{103} \\xeen jos pentru a deschide meniul`\n};\n\n\nexport {$f26362aed63f47e2$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $06cbade644558bf0$exports = {};\n$06cbade644558bf0$exports = {\n \"longPressMessage\": `\\u{41D}\\u{430}\\u{436}\\u{43C}\\u{438}\\u{442}\\u{435} \\u{438} \\u{443}\\u{434}\\u{435}\\u{440}\\u{436}\\u{438}\\u{432}\\u{430}\\u{439}\\u{442}\\u{435} \\u{438}\\u{43B}\\u{438} \\u{43D}\\u{430}\\u{436}\\u{43C}\\u{438}\\u{442}\\u{435} Alt + \\u{421}\\u{442}\\u{440}\\u{435}\\u{43B}\\u{43A}\\u{430} \\u{432}\\u{43D}\\u{438}\\u{437}, \\u{447}\\u{442}\\u{43E}\\u{431}\\u{44B} \\u{43E}\\u{442}\\u{43A}\\u{440}\\u{44B}\\u{442}\\u{44C} \\u{43C}\\u{435}\\u{43D}\\u{44E}`\n};\n\n\nexport {$06cbade644558bf0$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $0a391ff68f9d59b1$exports = {};\n$0a391ff68f9d59b1$exports = {\n \"longPressMessage\": `Ponuku otvor\\xedte dlh\\xfdm stla\\u{10D}en\\xedm alebo stla\\u{10D}en\\xedm kl\\xe1vesu Alt + kl\\xe1vesu so \\u{161}\\xedpkou nadol`\n};\n\n\nexport {$0a391ff68f9d59b1$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $8193cf0e649c7928$exports = {};\n$8193cf0e649c7928$exports = {\n \"longPressMessage\": `Za odprtje menija pritisnite in dr\\u{17E}ite gumb ali pritisnite Alt+pu\\u{161}\\u{10D}ica navzdol`\n};\n\n\nexport {$8193cf0e649c7928$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $f398debcce5a5c55$exports = {};\n$f398debcce5a5c55$exports = {\n \"longPressMessage\": `Dugo pritisnite ili pritisnite Alt + strelicu prema dole da otvorite meni`\n};\n\n\nexport {$f398debcce5a5c55$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $9e9fef000aa4c013$exports = {};\n$9e9fef000aa4c013$exports = {\n \"longPressMessage\": `H\\xe5ll nedtryckt eller tryck p\\xe5 Alt + pil ned\\xe5t f\\xf6r att \\xf6ppna menyn`\n};\n\n\nexport {$9e9fef000aa4c013$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $c016c8183bbe3d68$exports = {};\n$c016c8183bbe3d68$exports = {\n \"longPressMessage\": `Men\\xfcy\\xfc a\\xe7mak i\\xe7in uzun bas\\u{131}n veya Alt + A\\u{15F}a\\u{11F}\\u{131} Ok tu\\u{15F}una bas\\u{131}n`\n};\n\n\nexport {$c016c8183bbe3d68$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $ca4f6c8462244e62$exports = {};\n$ca4f6c8462244e62$exports = {\n \"longPressMessage\": `\\u{414}\\u{43E}\\u{432}\\u{433}\\u{43E} \\u{430}\\u{431}\\u{43E} \\u{437}\\u{432}\\u{438}\\u{447}\\u{430}\\u{439}\\u{43D}\\u{43E} \\u{43D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{456}\\u{442}\\u{44C} \\u{43A}\\u{43E}\\u{43C}\\u{431}\\u{456}\\u{43D}\\u{430}\\u{446}\\u{456}\\u{44E} \\u{43A}\\u{43B}\\u{430}\\u{432}\\u{456}\\u{448} Alt \\u{456} \\u{441}\\u{442}\\u{440}\\u{456}\\u{43B}\\u{43A}\\u{430} \\u{432}\\u{43D}\\u{438}\\u{437}, \\u{449}\\u{43E}\\u{431} \\u{432}\\u{456}\\u{434}\\u{43A}\\u{440}\\u{438}\\u{442}\\u{438} \\u{43C}\\u{435}\\u{43D}\\u{44E}`\n};\n\n\nexport {$ca4f6c8462244e62$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $2d9960c02ccac927$exports = {};\n$2d9960c02ccac927$exports = {\n \"longPressMessage\": `\\u{957F}\\u{6309}\\u{6216}\\u{6309} Alt + \\u{5411}\\u{4E0B}\\u{65B9}\\u{5411}\\u{952E}\\u{4EE5}\\u{6253}\\u{5F00}\\u{83DC}\\u{5355}`\n};\n\n\nexport {$2d9960c02ccac927$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $f1b682a4c8c5631c$exports = {};\n$f1b682a4c8c5631c$exports = {\n \"longPressMessage\": `\\u{9577}\\u{6309}\\u{6216}\\u{6309} Alt+\\u{5411}\\u{4E0B}\\u{9375}\\u{4EE5}\\u{958B}\\u{555F}\\u{529F}\\u{80FD}\\u{8868}`\n};\n\n\nexport {$f1b682a4c8c5631c$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $5FSX7$arAEmodulejs from \"./ar-AE.mjs\";\nimport $5FSX7$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $5FSX7$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $5FSX7$daDKmodulejs from \"./da-DK.mjs\";\nimport $5FSX7$deDEmodulejs from \"./de-DE.mjs\";\nimport $5FSX7$elGRmodulejs from \"./el-GR.mjs\";\nimport $5FSX7$enUSmodulejs from \"./en-US.mjs\";\nimport $5FSX7$esESmodulejs from \"./es-ES.mjs\";\nimport $5FSX7$etEEmodulejs from \"./et-EE.mjs\";\nimport $5FSX7$fiFImodulejs from \"./fi-FI.mjs\";\nimport $5FSX7$frFRmodulejs from \"./fr-FR.mjs\";\nimport $5FSX7$heILmodulejs from \"./he-IL.mjs\";\nimport $5FSX7$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $5FSX7$huHUmodulejs from \"./hu-HU.mjs\";\nimport $5FSX7$itITmodulejs from \"./it-IT.mjs\";\nimport $5FSX7$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $5FSX7$koKRmodulejs from \"./ko-KR.mjs\";\nimport $5FSX7$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $5FSX7$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $5FSX7$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $5FSX7$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $5FSX7$plPLmodulejs from \"./pl-PL.mjs\";\nimport $5FSX7$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $5FSX7$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $5FSX7$roROmodulejs from \"./ro-RO.mjs\";\nimport $5FSX7$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $5FSX7$skSKmodulejs from \"./sk-SK.mjs\";\nimport $5FSX7$slSImodulejs from \"./sl-SI.mjs\";\nimport $5FSX7$srSPmodulejs from \"./sr-SP.mjs\";\nimport $5FSX7$svSEmodulejs from \"./sv-SE.mjs\";\nimport $5FSX7$trTRmodulejs from \"./tr-TR.mjs\";\nimport $5FSX7$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $5FSX7$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $5FSX7$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $2cbb7ca666678a14$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$2cbb7ca666678a14$exports = {\n \"ar-AE\": $5FSX7$arAEmodulejs,\n \"bg-BG\": $5FSX7$bgBGmodulejs,\n \"cs-CZ\": $5FSX7$csCZmodulejs,\n \"da-DK\": $5FSX7$daDKmodulejs,\n \"de-DE\": $5FSX7$deDEmodulejs,\n \"el-GR\": $5FSX7$elGRmodulejs,\n \"en-US\": $5FSX7$enUSmodulejs,\n \"es-ES\": $5FSX7$esESmodulejs,\n \"et-EE\": $5FSX7$etEEmodulejs,\n \"fi-FI\": $5FSX7$fiFImodulejs,\n \"fr-FR\": $5FSX7$frFRmodulejs,\n \"he-IL\": $5FSX7$heILmodulejs,\n \"hr-HR\": $5FSX7$hrHRmodulejs,\n \"hu-HU\": $5FSX7$huHUmodulejs,\n \"it-IT\": $5FSX7$itITmodulejs,\n \"ja-JP\": $5FSX7$jaJPmodulejs,\n \"ko-KR\": $5FSX7$koKRmodulejs,\n \"lt-LT\": $5FSX7$ltLTmodulejs,\n \"lv-LV\": $5FSX7$lvLVmodulejs,\n \"nb-NO\": $5FSX7$nbNOmodulejs,\n \"nl-NL\": $5FSX7$nlNLmodulejs,\n \"pl-PL\": $5FSX7$plPLmodulejs,\n \"pt-BR\": $5FSX7$ptBRmodulejs,\n \"pt-PT\": $5FSX7$ptPTmodulejs,\n \"ro-RO\": $5FSX7$roROmodulejs,\n \"ru-RU\": $5FSX7$ruRUmodulejs,\n \"sk-SK\": $5FSX7$skSKmodulejs,\n \"sl-SI\": $5FSX7$slSImodulejs,\n \"sr-SP\": $5FSX7$srSPmodulejs,\n \"sv-SE\": $5FSX7$svSEmodulejs,\n \"tr-TR\": $5FSX7$trTRmodulejs,\n \"uk-UA\": $5FSX7$ukUAmodulejs,\n \"zh-CN\": $5FSX7$zhCNmodulejs,\n \"zh-TW\": $5FSX7$zhTWmodulejs\n};\n\n\nexport {$2cbb7ca666678a14$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","import {useLayoutEffect as $6dfIe$useLayoutEffect, useEffectEvent as $6dfIe$useEffectEvent, isFocusable as $6dfIe$isFocusable, getOwnerWindow as $6dfIe$getOwnerWindow, focusWithoutScrolling as $6dfIe$focusWithoutScrolling} from \"@react-aria/utils\";\nimport {useRef as $6dfIe$useRef, useCallback as $6dfIe$useCallback} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $8a9cb279dc87e130$export$525bc4921d56d4a(nativeEvent) {\n let event = nativeEvent;\n event.nativeEvent = nativeEvent;\n event.isDefaultPrevented = ()=>event.defaultPrevented;\n // cancelBubble is technically deprecated in the spec, but still supported in all browsers.\n event.isPropagationStopped = ()=>event.cancelBubble;\n event.persist = ()=>{};\n return event;\n}\nfunction $8a9cb279dc87e130$export$c2b7abe5d61ec696(event, target) {\n Object.defineProperty(event, 'target', {\n value: target\n });\n Object.defineProperty(event, 'currentTarget', {\n value: target\n });\n}\nfunction $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {\n let stateRef = (0, $6dfIe$useRef)({\n isFocused: false,\n observer: null\n });\n // Clean up MutationObserver on unmount. See below.\n (0, $6dfIe$useLayoutEffect)(()=>{\n const state = stateRef.current;\n return ()=>{\n if (state.observer) {\n state.observer.disconnect();\n state.observer = null;\n }\n };\n }, []);\n let dispatchBlur = (0, $6dfIe$useEffectEvent)((e)=>{\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n });\n // This function is called during a React onFocus event.\n return (0, $6dfIe$useCallback)((e)=>{\n // React does not fire onBlur when an element is disabled. https://github.com/facebook/react/issues/9142\n // Most browsers fire a native focusout event in this case, except for Firefox. In that case, we use a\n // MutationObserver to watch for the disabled attribute, and dispatch these events ourselves.\n // For browsers that do, focusout fires before the MutationObserver, so onBlur should not fire twice.\n if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {\n stateRef.current.isFocused = true;\n let target = e.target;\n let onBlurHandler = (e)=>{\n stateRef.current.isFocused = false;\n if (target.disabled) {\n // For backward compatibility, dispatch a (fake) React synthetic event.\n let event = $8a9cb279dc87e130$export$525bc4921d56d4a(e);\n dispatchBlur(event);\n }\n // We no longer need the MutationObserver once the target is blurred.\n if (stateRef.current.observer) {\n stateRef.current.observer.disconnect();\n stateRef.current.observer = null;\n }\n };\n target.addEventListener('focusout', onBlurHandler, {\n once: true\n });\n stateRef.current.observer = new MutationObserver(()=>{\n if (stateRef.current.isFocused && target.disabled) {\n var _stateRef_current_observer;\n (_stateRef_current_observer = stateRef.current.observer) === null || _stateRef_current_observer === void 0 ? void 0 : _stateRef_current_observer.disconnect();\n let relatedTargetEl = target === document.activeElement ? null : document.activeElement;\n target.dispatchEvent(new FocusEvent('blur', {\n relatedTarget: relatedTargetEl\n }));\n target.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true,\n relatedTarget: relatedTargetEl\n }));\n }\n });\n stateRef.current.observer.observe(target, {\n attributes: true,\n attributeFilter: [\n 'disabled'\n ]\n });\n }\n }, [\n dispatchBlur\n ]);\n}\nlet $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;\nfunction $8a9cb279dc87e130$export$cabe61c495ee3649(target) {\n // The browser will focus the nearest focusable ancestor of our target.\n while(target && !(0, $6dfIe$isFocusable)(target))target = target.parentElement;\n let window = (0, $6dfIe$getOwnerWindow)(target);\n let activeElement = window.document.activeElement;\n if (!activeElement || activeElement === target) return;\n $8a9cb279dc87e130$export$fda7da73ab5d4c48 = true;\n let isRefocusing = false;\n let onBlur = (e)=>{\n if (e.target === activeElement || isRefocusing) e.stopImmediatePropagation();\n };\n let onFocusOut = (e)=>{\n if (e.target === activeElement || isRefocusing) {\n e.stopImmediatePropagation();\n // If there was no focusable ancestor, we don't expect a focus event.\n // Re-focus the original active element here.\n if (!target && !isRefocusing) {\n isRefocusing = true;\n (0, $6dfIe$focusWithoutScrolling)(activeElement);\n cleanup();\n }\n }\n };\n let onFocus = (e)=>{\n if (e.target === target || isRefocusing) e.stopImmediatePropagation();\n };\n let onFocusIn = (e)=>{\n if (e.target === target || isRefocusing) {\n e.stopImmediatePropagation();\n if (!isRefocusing) {\n isRefocusing = true;\n (0, $6dfIe$focusWithoutScrolling)(activeElement);\n cleanup();\n }\n }\n };\n window.addEventListener('blur', onBlur, true);\n window.addEventListener('focusout', onFocusOut, true);\n window.addEventListener('focusin', onFocusIn, true);\n window.addEventListener('focus', onFocus, true);\n let cleanup = ()=>{\n cancelAnimationFrame(raf);\n window.removeEventListener('blur', onBlur, true);\n window.removeEventListener('focusout', onFocusOut, true);\n window.removeEventListener('focusin', onFocusIn, true);\n window.removeEventListener('focus', onFocus, true);\n $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;\n isRefocusing = false;\n };\n let raf = requestAnimationFrame(cleanup);\n return cleanup;\n}\n\n\nexport {$8a9cb279dc87e130$export$525bc4921d56d4a as createSyntheticEvent, $8a9cb279dc87e130$export$c2b7abe5d61ec696 as setEventTarget, $8a9cb279dc87e130$export$715c682d09d639cc as useSyntheticBlurEvent, $8a9cb279dc87e130$export$fda7da73ab5d4c48 as ignoreFocusEvent, $8a9cb279dc87e130$export$cabe61c495ee3649 as preventFocus};\n//# sourceMappingURL=utils.module.js.map\n","import {isIOS as $7R18e$isIOS, getOwnerDocument as $7R18e$getOwnerDocument, runAfterTransition as $7R18e$runAfterTransition} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n// Note that state only matters here for iOS. Non-iOS gets user-select: none applied to the target element\n// rather than at the document level so we just need to apply/remove user-select: none for each pressed element individually\nlet $14c0b72509d70225$var$state = 'default';\nlet $14c0b72509d70225$var$savedUserSelect = '';\nlet $14c0b72509d70225$var$modifiedElementMap = new WeakMap();\nfunction $14c0b72509d70225$export$16a4697467175487(target) {\n if ((0, $7R18e$isIOS)()) {\n if ($14c0b72509d70225$var$state === 'default') {\n const documentObject = (0, $7R18e$getOwnerDocument)(target);\n $14c0b72509d70225$var$savedUserSelect = documentObject.documentElement.style.webkitUserSelect;\n documentObject.documentElement.style.webkitUserSelect = 'none';\n }\n $14c0b72509d70225$var$state = 'disabled';\n } else if (target instanceof HTMLElement || target instanceof SVGElement) {\n // If not iOS, store the target's original user-select and change to user-select: none\n // Ignore state since it doesn't apply for non iOS\n let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n $14c0b72509d70225$var$modifiedElementMap.set(target, target.style[property]);\n target.style[property] = 'none';\n }\n}\nfunction $14c0b72509d70225$export$b0d6fa1ab32e3295(target) {\n if ((0, $7R18e$isIOS)()) {\n // If the state is already default, there's nothing to do.\n // If it is restoring, then there's no need to queue a second restore.\n if ($14c0b72509d70225$var$state !== 'disabled') return;\n $14c0b72509d70225$var$state = 'restoring';\n // There appears to be a delay on iOS where selection still might occur\n // after pointer up, so wait a bit before removing user-select.\n setTimeout(()=>{\n // Wait for any CSS transitions to complete so we don't recompute style\n // for the whole page in the middle of the animation and cause jank.\n (0, $7R18e$runAfterTransition)(()=>{\n // Avoid race conditions\n if ($14c0b72509d70225$var$state === 'restoring') {\n const documentObject = (0, $7R18e$getOwnerDocument)(target);\n if (documentObject.documentElement.style.webkitUserSelect === 'none') documentObject.documentElement.style.webkitUserSelect = $14c0b72509d70225$var$savedUserSelect || '';\n $14c0b72509d70225$var$savedUserSelect = '';\n $14c0b72509d70225$var$state = 'default';\n }\n });\n }, 300);\n } else if (target instanceof HTMLElement || target instanceof SVGElement) // If not iOS, restore the target's original user-select if any\n // Ignore state since it doesn't apply for non iOS\n {\n if (target && $14c0b72509d70225$var$modifiedElementMap.has(target)) {\n let targetOldUserSelect = $14c0b72509d70225$var$modifiedElementMap.get(target);\n let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n if (target.style[property] === 'none') target.style[property] = targetOldUserSelect;\n if (target.getAttribute('style') === '') target.removeAttribute('style');\n $14c0b72509d70225$var$modifiedElementMap.delete(target);\n }\n }\n}\n\n\nexport {$14c0b72509d70225$export$16a4697467175487 as disableTextSelection, $14c0b72509d70225$export$b0d6fa1ab32e3295 as restoreTextSelection};\n//# sourceMappingURL=textSelection.module.js.map\n","import $3aeG1$react from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $ae1eeba8b9eafd08$export$5165eccb35aaadb5 = (0, $3aeG1$react).createContext({\n register: ()=>{}\n});\n$ae1eeba8b9eafd08$export$5165eccb35aaadb5.displayName = 'PressResponderContext';\n\n\nexport {$ae1eeba8b9eafd08$export$5165eccb35aaadb5 as PressResponderContext};\n//# sourceMappingURL=context.module.js.map\n","export function _class_apply_descriptor_get(receiver, descriptor) {\n if (descriptor.get) return descriptor.get.call(receiver);\n\n return descriptor.value;\n}\nexport { _class_apply_descriptor_get as _ };\n","export function _class_extract_field_descriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) throw new TypeError(\"attempted to \" + action + \" private field on non-instance\");\n\n return privateMap.get(receiver);\n}\nexport { _class_extract_field_descriptor as _ };\n","import { _class_apply_descriptor_get } from \"./_class_apply_descriptor_get.js\";\nimport { _class_extract_field_descriptor } from \"./_class_extract_field_descriptor.js\";\n\nexport function _class_private_field_get(receiver, privateMap) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, \"get\");\n return _class_apply_descriptor_get(receiver, descriptor);\n}\nexport { _class_private_field_get as _ };\n","export function _check_private_redeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}\nexport { _check_private_redeclaration as _ };\n","import { _check_private_redeclaration } from \"./_check_private_redeclaration.js\";\n\nexport function _class_private_field_init(obj, privateMap, value) {\n _check_private_redeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}\nexport { _class_private_field_init as _ };\n","export function _class_apply_descriptor_set(receiver, descriptor, value) {\n if (descriptor.set) descriptor.set.call(receiver, value);\n else {\n if (!descriptor.writable) {\n // This should only throw in strict mode, but class bodies are\n // always strict and private fields can only be used inside\n // class bodies.\n throw new TypeError(\"attempted to set read only private field\");\n }\n descriptor.value = value;\n }\n}\nexport { _class_apply_descriptor_set as _ };\n","import { _class_apply_descriptor_set } from \"./_class_apply_descriptor_set.js\";\nimport { _class_extract_field_descriptor } from \"./_class_extract_field_descriptor.js\";\n\nexport function _class_private_field_set(receiver, privateMap, value) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, \"set\");\n _class_apply_descriptor_set(receiver, descriptor, value);\n return value;\n}\nexport { _class_private_field_set as _ };\n","import {createSyntheticEvent as $8a9cb279dc87e130$export$525bc4921d56d4a, preventFocus as $8a9cb279dc87e130$export$cabe61c495ee3649, setEventTarget as $8a9cb279dc87e130$export$c2b7abe5d61ec696} from \"./utils.mjs\";\nimport {disableTextSelection as $14c0b72509d70225$export$16a4697467175487, restoreTextSelection as $14c0b72509d70225$export$b0d6fa1ab32e3295} from \"./textSelection.mjs\";\nimport {PressResponderContext as $ae1eeba8b9eafd08$export$5165eccb35aaadb5} from \"./context.mjs\";\nimport {_ as $7mdmh$_} from \"@swc/helpers/_/_class_private_field_get\";\nimport {_ as $7mdmh$_1} from \"@swc/helpers/_/_class_private_field_init\";\nimport {_ as $7mdmh$_2} from \"@swc/helpers/_/_class_private_field_set\";\nimport {mergeProps as $7mdmh$mergeProps, useSyncRef as $7mdmh$useSyncRef, useGlobalListeners as $7mdmh$useGlobalListeners, useEffectEvent as $7mdmh$useEffectEvent, nodeContains as $7mdmh$nodeContains, getEventTarget as $7mdmh$getEventTarget, getOwnerDocument as $7mdmh$getOwnerDocument, chain as $7mdmh$chain, isMac as $7mdmh$isMac, openLink as $7mdmh$openLink, isVirtualClick as $7mdmh$isVirtualClick, isVirtualPointerEvent as $7mdmh$isVirtualPointerEvent, focusWithoutScrolling as $7mdmh$focusWithoutScrolling, getOwnerWindow as $7mdmh$getOwnerWindow} from \"@react-aria/utils\";\nimport {flushSync as $7mdmh$flushSync} from \"react-dom\";\nimport {useContext as $7mdmh$useContext, useState as $7mdmh$useState, useRef as $7mdmh$useRef, useMemo as $7mdmh$useMemo, useEffect as $7mdmh$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\n\n\n\n\n\nfunction $f6c31cce2adf654f$var$usePressResponderContext(props) {\n // Consume context from <PressResponder> and merge with props.\n let context = (0, $7mdmh$useContext)((0, $ae1eeba8b9eafd08$export$5165eccb35aaadb5));\n if (context) {\n let { register: register, ...contextProps } = context;\n props = (0, $7mdmh$mergeProps)(contextProps, props);\n register();\n }\n (0, $7mdmh$useSyncRef)(context, props.ref);\n return props;\n}\nvar $f6c31cce2adf654f$var$_shouldStopPropagation = /*#__PURE__*/ new WeakMap();\nclass $f6c31cce2adf654f$var$PressEvent {\n continuePropagation() {\n (0, $7mdmh$_2)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, false);\n }\n get shouldStopPropagation() {\n return (0, $7mdmh$_)(this, $f6c31cce2adf654f$var$_shouldStopPropagation);\n }\n constructor(type, pointerType, originalEvent, state){\n (0, $7mdmh$_1)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, {\n writable: true,\n value: void 0\n });\n (0, $7mdmh$_2)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, true);\n var _state_target;\n let currentTarget = (_state_target = state === null || state === void 0 ? void 0 : state.target) !== null && _state_target !== void 0 ? _state_target : originalEvent.currentTarget;\n const rect = currentTarget === null || currentTarget === void 0 ? void 0 : currentTarget.getBoundingClientRect();\n let x, y = 0;\n let clientX, clientY = null;\n if (originalEvent.clientX != null && originalEvent.clientY != null) {\n clientX = originalEvent.clientX;\n clientY = originalEvent.clientY;\n }\n if (rect) {\n if (clientX != null && clientY != null) {\n x = clientX - rect.left;\n y = clientY - rect.top;\n } else {\n x = rect.width / 2;\n y = rect.height / 2;\n }\n }\n this.type = type;\n this.pointerType = pointerType;\n this.target = originalEvent.currentTarget;\n this.shiftKey = originalEvent.shiftKey;\n this.metaKey = originalEvent.metaKey;\n this.ctrlKey = originalEvent.ctrlKey;\n this.altKey = originalEvent.altKey;\n this.x = x;\n this.y = y;\n }\n}\nconst $f6c31cce2adf654f$var$LINK_CLICKED = Symbol('linkClicked');\nfunction $f6c31cce2adf654f$export$45712eceda6fad21(props) {\n let { onPress: onPress, onPressChange: onPressChange, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onClick: onClick, isDisabled: isDisabled, isPressed: isPressedProp, preventFocusOnPress: preventFocusOnPress, shouldCancelOnPointerExit: shouldCancelOnPointerExit, allowTextSelectionOnPress: allowTextSelectionOnPress, ref: domRef, ...domProps } = $f6c31cce2adf654f$var$usePressResponderContext(props);\n let [isPressed, setPressed] = (0, $7mdmh$useState)(false);\n let ref = (0, $7mdmh$useRef)({\n isPressed: false,\n ignoreEmulatedMouseEvents: false,\n didFirePressStart: false,\n isTriggeringEvent: false,\n activePointerId: null,\n target: null,\n isOverTarget: false,\n pointerType: null,\n disposables: []\n });\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $7mdmh$useGlobalListeners)();\n let triggerPressStart = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType)=>{\n let state = ref.current;\n if (isDisabled || state.didFirePressStart) return false;\n let shouldStopPropagation = true;\n state.isTriggeringEvent = true;\n if (onPressStart) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressstart', pointerType, originalEvent);\n onPressStart(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(true);\n state.isTriggeringEvent = false;\n state.didFirePressStart = true;\n setPressed(true);\n return shouldStopPropagation;\n });\n let triggerPressEnd = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType, wasPressed = true)=>{\n let state = ref.current;\n if (!state.didFirePressStart) return false;\n state.didFirePressStart = false;\n state.isTriggeringEvent = true;\n let shouldStopPropagation = true;\n if (onPressEnd) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressend', pointerType, originalEvent);\n onPressEnd(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(false);\n setPressed(false);\n if (onPress && wasPressed && !isDisabled) {\n let event = new $f6c31cce2adf654f$var$PressEvent('press', pointerType, originalEvent);\n onPress(event);\n shouldStopPropagation && (shouldStopPropagation = event.shouldStopPropagation);\n }\n state.isTriggeringEvent = false;\n return shouldStopPropagation;\n });\n let triggerPressUp = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType)=>{\n let state = ref.current;\n if (isDisabled) return false;\n if (onPressUp) {\n state.isTriggeringEvent = true;\n let event = new $f6c31cce2adf654f$var$PressEvent('pressup', pointerType, originalEvent);\n onPressUp(event);\n state.isTriggeringEvent = false;\n return event.shouldStopPropagation;\n }\n return true;\n });\n let cancel = (0, $7mdmh$useEffectEvent)((e)=>{\n let state = ref.current;\n if (state.isPressed && state.target) {\n if (state.didFirePressStart && state.pointerType != null) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)(state.target);\n for (let dispose of state.disposables)dispose();\n state.disposables = [];\n }\n });\n let cancelOnPointerExit = (0, $7mdmh$useEffectEvent)((e)=>{\n if (shouldCancelOnPointerExit) cancel(e);\n });\n let triggerClick = (0, $7mdmh$useEffectEvent)((e)=>{\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n });\n let triggerSyntheticClick = (0, $7mdmh$useEffectEvent)((e, target)=>{\n // Some third-party libraries pass in onClick instead of onPress.\n // Create a fake mouse event and trigger onClick as well.\n // This matches the browser's native activation behavior for certain elements (e.g. button).\n // https://html.spec.whatwg.org/#activation\n // https://html.spec.whatwg.org/#fire-a-synthetic-pointer-event\n if (onClick) {\n let event = new MouseEvent('click', e);\n (0, $8a9cb279dc87e130$export$c2b7abe5d61ec696)(event, target);\n onClick((0, $8a9cb279dc87e130$export$525bc4921d56d4a)(event));\n }\n });\n let pressProps = (0, $7mdmh$useMemo)(()=>{\n let state = ref.current;\n let pressProps = {\n onKeyDown (e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && (0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) {\n var _state_metaKeyEvents;\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard((0, $7mdmh$getEventTarget)(e.nativeEvent), e.key)) e.preventDefault();\n // If the event is repeating, it may have started on a different element\n // after which focus moved to the current element. Ignore these events and\n // only handle the first key down event.\n let shouldStopPropagation = true;\n if (!state.isPressed && !e.repeat) {\n state.target = e.currentTarget;\n state.isPressed = true;\n state.pointerType = 'keyboard';\n shouldStopPropagation = triggerPressStart(e, 'keyboard');\n // Focus may move before the key up event, so register the event on the document\n // instead of the same element where the key down event occurred. Make it capturing so that it will trigger\n // before stopPropagation from useKeyboard on a child element may happen and thus we can still call triggerPress for the parent element.\n let originalTarget = e.currentTarget;\n let pressUp = (e)=>{\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e, originalTarget) && !e.repeat && (0, $7mdmh$nodeContains)(originalTarget, (0, $7mdmh$getEventTarget)(e)) && state.target) triggerPressUp($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard');\n };\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'keyup', (0, $7mdmh$chain)(pressUp, onKeyUp), true);\n }\n if (shouldStopPropagation) e.stopPropagation();\n // Keep track of the keydown events that occur while the Meta (e.g. Command) key is held.\n // macOS has a bug where keyup events are not fired while the Meta key is down.\n // When the Meta key itself is released we will get an event for that, and we'll act as if\n // all of these other keys were released as well.\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1393524\n // https://bugs.webkit.org/show_bug.cgi?id=55291\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1299553\n if (e.metaKey && (0, $7mdmh$isMac)()) (_state_metaKeyEvents = state.metaKeyEvents) === null || _state_metaKeyEvents === void 0 ? void 0 : _state_metaKeyEvents.set(e.key, e.nativeEvent);\n } else if (e.key === 'Meta') state.metaKeyEvents = new Map();\n },\n onClick (e) {\n if (e && !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (e && e.button === 0 && !state.isTriggeringEvent && !(0, $7mdmh$openLink).isOpening) {\n let shouldStopPropagation = true;\n if (isDisabled) e.preventDefault();\n // If triggered from a screen reader or by using element.click(),\n // trigger as if it were a keyboard click.\n if (!state.ignoreEmulatedMouseEvents && !state.isPressed && (state.pointerType === 'virtual' || (0, $7mdmh$isVirtualClick)(e.nativeEvent))) {\n let stopPressStart = triggerPressStart(e, 'virtual');\n let stopPressUp = triggerPressUp(e, 'virtual');\n let stopPressEnd = triggerPressEnd(e, 'virtual');\n triggerClick(e);\n shouldStopPropagation = stopPressStart && stopPressUp && stopPressEnd;\n } else if (state.isPressed && state.pointerType !== 'keyboard') {\n let pointerType = state.pointerType || e.nativeEvent.pointerType || 'virtual';\n shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createEvent(e.currentTarget, e), pointerType, true);\n state.isOverTarget = false;\n triggerClick(e);\n cancel(e);\n }\n state.ignoreEmulatedMouseEvents = false;\n if (shouldStopPropagation) e.stopPropagation();\n }\n }\n };\n let onKeyUp = (e)=>{\n var _state_metaKeyEvents;\n if (state.isPressed && state.target && $f6c31cce2adf654f$var$isValidKeyboardEvent(e, state.target)) {\n var _state_metaKeyEvents1;\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard((0, $7mdmh$getEventTarget)(e), e.key)) e.preventDefault();\n let target = (0, $7mdmh$getEventTarget)(e);\n let wasPressed = (0, $7mdmh$nodeContains)(state.target, (0, $7mdmh$getEventTarget)(e));\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard', wasPressed);\n if (wasPressed) triggerSyntheticClick(e, state.target);\n removeAllGlobalListeners();\n // If a link was triggered with a key other than Enter, open the URL ourselves.\n // This means the link has a role override, and the default browser behavior\n // only applies when using the Enter key.\n if (e.key !== 'Enter' && $f6c31cce2adf654f$var$isHTMLAnchorLink(state.target) && (0, $7mdmh$nodeContains)(state.target, target) && !e[$f6c31cce2adf654f$var$LINK_CLICKED]) {\n // Store a hidden property on the event so we only trigger link click once,\n // even if there are multiple usePress instances attached to the element.\n e[$f6c31cce2adf654f$var$LINK_CLICKED] = true;\n (0, $7mdmh$openLink)(state.target, e, false);\n }\n state.isPressed = false;\n (_state_metaKeyEvents1 = state.metaKeyEvents) === null || _state_metaKeyEvents1 === void 0 ? void 0 : _state_metaKeyEvents1.delete(e.key);\n } else if (e.key === 'Meta' && ((_state_metaKeyEvents = state.metaKeyEvents) === null || _state_metaKeyEvents === void 0 ? void 0 : _state_metaKeyEvents.size)) {\n var _state_target;\n // If we recorded keydown events that occurred while the Meta key was pressed,\n // and those haven't received keyup events already, fire keyup events ourselves.\n // See comment above for more info about the macOS bug causing this.\n let events = state.metaKeyEvents;\n state.metaKeyEvents = undefined;\n for (let event of events.values())(_state_target = state.target) === null || _state_target === void 0 ? void 0 : _state_target.dispatchEvent(new KeyboardEvent('keyup', event));\n }\n };\n if (typeof PointerEvent !== 'undefined') {\n pressProps.onPointerDown = (e)=>{\n // Only handle left clicks, and ignore events that bubbled through portals.\n if (e.button !== 0 || !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n // iOS safari fires pointer events from VoiceOver with incorrect coordinates/target.\n // Ignore and let the onClick handler take care of it instead.\n // https://bugs.webkit.org/show_bug.cgi?id=222627\n // https://bugs.webkit.org/show_bug.cgi?id=223202\n if ((0, $7mdmh$isVirtualPointerEvent)(e.nativeEvent)) {\n state.pointerType = 'virtual';\n return;\n }\n state.pointerType = e.pointerType;\n let shouldStopPropagation = true;\n if (!state.isPressed) {\n state.isPressed = true;\n state.isOverTarget = true;\n state.activePointerId = e.pointerId;\n state.target = e.currentTarget;\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$16a4697467175487)(state.target);\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n // Release pointer capture so that touch interactions can leave the original target.\n // This enables onPointerLeave and onPointerEnter to fire.\n let target = (0, $7mdmh$getEventTarget)(e.nativeEvent);\n if ('releasePointerCapture' in target) target.releasePointerCapture(e.pointerId);\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'pointerup', onPointerUp, false);\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'pointercancel', onPointerCancel, false);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseDown = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (e.button === 0) {\n if (preventFocusOnPress) {\n let dispose = (0, $8a9cb279dc87e130$export$cabe61c495ee3649)(e.target);\n if (dispose) state.disposables.push(dispose);\n }\n e.stopPropagation();\n }\n };\n pressProps.onPointerUp = (e)=>{\n // iOS fires pointerup with zero width and height, so check the pointerType recorded during pointerdown.\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent)) || state.pointerType === 'virtual') return;\n // Only handle left clicks\n if (e.button === 0) triggerPressUp(e, state.pointerType || e.pointerType);\n };\n pressProps.onPointerEnter = (e)=>{\n if (e.pointerId === state.activePointerId && state.target && !state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = true;\n triggerPressStart($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n }\n };\n pressProps.onPointerLeave = (e)=>{\n if (e.pointerId === state.activePointerId && state.target && state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = false;\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n cancelOnPointerExit(e);\n }\n };\n let onPointerUp = (e)=>{\n if (e.pointerId === state.activePointerId && state.isPressed && e.button === 0 && state.target) {\n if ((0, $7mdmh$nodeContains)(state.target, (0, $7mdmh$getEventTarget)(e)) && state.pointerType != null) {\n // Wait for onClick to fire onPress. This avoids browser issues when the DOM\n // is mutated between onPointerUp and onClick, and is more compatible with third party libraries.\n // https://github.com/adobe/react-spectrum/issues/1513\n // https://issues.chromium.org/issues/40732224\n // However, iOS and Android do not focus or fire onClick after a long press.\n // We work around this by triggering a click ourselves after a timeout.\n // This timeout is canceled during the click event in case the real one fires first.\n // The timeout must be at least 32ms, because Safari on iOS delays the click event on\n // non-form elements without certain ARIA roles (for hover emulation).\n // https://github.com/WebKit/WebKit/blob/dccfae42bb29bd4bdef052e469f604a9387241c0/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm#L875-L892\n let clicked = false;\n let timeout = setTimeout(()=>{\n if (state.isPressed && state.target instanceof HTMLElement) {\n if (clicked) cancel(e);\n else {\n (0, $7mdmh$focusWithoutScrolling)(state.target);\n state.target.click();\n }\n }\n }, 80);\n // Use a capturing listener to track if a click occurred.\n // If stopPropagation is called it may never reach our handler.\n addGlobalListener(e.currentTarget, 'click', ()=>clicked = true, true);\n state.disposables.push(()=>clearTimeout(timeout));\n } else cancel(e);\n // Ignore subsequent onPointerLeave event before onClick on touch devices.\n state.isOverTarget = false;\n }\n };\n let onPointerCancel = (e)=>{\n cancel(e);\n };\n pressProps.onDragStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n // Safari does not call onPointerCancel when a drag starts, whereas Chrome and Firefox do.\n cancel(e);\n };\n } else if (process.env.NODE_ENV === 'test') {\n // NOTE: this fallback branch is entirely used by unit tests.\n // All browsers now support pointer events, but JSDOM still does not.\n pressProps.onMouseDown = (e)=>{\n // Only handle left clicks\n if (e.button !== 0 || !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (state.ignoreEmulatedMouseEvents) {\n e.stopPropagation();\n return;\n }\n state.isPressed = true;\n state.isOverTarget = true;\n state.target = e.currentTarget;\n state.pointerType = (0, $7mdmh$isVirtualClick)(e.nativeEvent) ? 'virtual' : 'mouse';\n // Flush sync so that focus moved during react re-renders occurs before we yield back to the browser.\n let shouldStopPropagation = (0, $7mdmh$flushSync)(()=>triggerPressStart(e, state.pointerType));\n if (shouldStopPropagation) e.stopPropagation();\n if (preventFocusOnPress) {\n let dispose = (0, $8a9cb279dc87e130$export$cabe61c495ee3649)(e.target);\n if (dispose) state.disposables.push(dispose);\n }\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'mouseup', onMouseUp, false);\n };\n pressProps.onMouseEnter = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseLeave = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd(e, state.pointerType, false);\n cancelOnPointerExit(e);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseUp = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.ignoreEmulatedMouseEvents && e.button === 0) triggerPressUp(e, state.pointerType || 'mouse');\n };\n let onMouseUp = (e)=>{\n // Only handle left clicks\n if (e.button !== 0) return;\n if (state.ignoreEmulatedMouseEvents) {\n state.ignoreEmulatedMouseEvents = false;\n return;\n }\n if (state.target && state.target.contains(e.target) && state.pointerType != null) ;\n else cancel(e);\n state.isOverTarget = false;\n };\n pressProps.onTouchStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let touch = $f6c31cce2adf654f$var$getTouchFromEvent(e.nativeEvent);\n if (!touch) return;\n state.activePointerId = touch.identifier;\n state.ignoreEmulatedMouseEvents = true;\n state.isOverTarget = true;\n state.isPressed = true;\n state.target = e.currentTarget;\n state.pointerType = 'touch';\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$16a4697467175487)(state.target);\n let shouldStopPropagation = triggerPressStart($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n if (shouldStopPropagation) e.stopPropagation();\n addGlobalListener((0, $7mdmh$getOwnerWindow)(e.currentTarget), 'scroll', onScroll, true);\n };\n pressProps.onTouchMove = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n if (!state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n }\n } else if (state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType, false);\n cancelOnPointerExit($f6c31cce2adf654f$var$createTouchEvent(state.target, e));\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onTouchEnd = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget) && state.pointerType != null) {\n triggerPressUp($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n triggerSyntheticClick(e.nativeEvent, state.target);\n } else if (state.isOverTarget && state.pointerType != null) shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType, false);\n if (shouldStopPropagation) e.stopPropagation();\n state.isPressed = false;\n state.activePointerId = null;\n state.isOverTarget = false;\n state.ignoreEmulatedMouseEvents = true;\n if (state.target && !allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)(state.target);\n removeAllGlobalListeners();\n };\n pressProps.onTouchCancel = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n e.stopPropagation();\n if (state.isPressed) cancel($f6c31cce2adf654f$var$createTouchEvent(state.target, e));\n };\n let onScroll = (e)=>{\n if (state.isPressed && (0, $7mdmh$nodeContains)((0, $7mdmh$getEventTarget)(e), state.target)) cancel({\n currentTarget: state.target,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false,\n altKey: false\n });\n };\n pressProps.onDragStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n cancel(e);\n };\n }\n return pressProps;\n }, [\n addGlobalListener,\n isDisabled,\n preventFocusOnPress,\n removeAllGlobalListeners,\n allowTextSelectionOnPress,\n cancel,\n cancelOnPointerExit,\n triggerPressEnd,\n triggerPressStart,\n triggerPressUp,\n triggerClick,\n triggerSyntheticClick\n ]);\n // Avoid onClick delay for double tap to zoom by default.\n (0, $7mdmh$useEffect)(()=>{\n let element = domRef === null || domRef === void 0 ? void 0 : domRef.current;\n if (element && element instanceof (0, $7mdmh$getOwnerWindow)(element).Element) {\n // Only apply touch-action if not already set by another CSS rule.\n let style = (0, $7mdmh$getOwnerWindow)(element).getComputedStyle(element);\n if (style.touchAction === 'auto') // touchAction: 'manipulation' is supposed to be equivalent, but in \n // Safari it causes onPointerCancel not to fire on scroll.\n // https://bugs.webkit.org/show_bug.cgi?id=240917\n element.style.touchAction = 'pan-x pan-y pinch-zoom';\n }\n }, [\n domRef\n ]);\n // Remove user-select: none in case component unmounts immediately after pressStart\n (0, $7mdmh$useEffect)(()=>{\n let state = ref.current;\n return ()=>{\n var _state_target;\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)((_state_target = state.target) !== null && _state_target !== void 0 ? _state_target : undefined);\n for (let dispose of state.disposables)dispose();\n state.disposables = [];\n };\n }, [\n allowTextSelectionOnPress\n ]);\n return {\n isPressed: isPressedProp || isPressed,\n pressProps: (0, $7mdmh$mergeProps)(domProps, pressProps)\n };\n}\nfunction $f6c31cce2adf654f$var$isHTMLAnchorLink(target) {\n return target.tagName === 'A' && target.hasAttribute('href');\n}\nfunction $f6c31cce2adf654f$var$isValidKeyboardEvent(event, currentTarget) {\n const { key: key, code: code } = event;\n const element = currentTarget;\n const role = element.getAttribute('role');\n // Accessibility for keyboards. Space and Enter only.\n // \"Spacebar\" is for IE 11\n return (key === 'Enter' || key === ' ' || key === 'Spacebar' || code === 'Space') && !(element instanceof (0, $7mdmh$getOwnerWindow)(element).HTMLInputElement && !$f6c31cce2adf654f$var$isValidInputKey(element, key) || element instanceof (0, $7mdmh$getOwnerWindow)(element).HTMLTextAreaElement || element.isContentEditable) && // Links should only trigger with Enter key\n !((role === 'link' || !role && $f6c31cce2adf654f$var$isHTMLAnchorLink(element)) && key !== 'Enter');\n}\nfunction $f6c31cce2adf654f$var$getTouchFromEvent(event) {\n const { targetTouches: targetTouches } = event;\n if (targetTouches.length > 0) return targetTouches[0];\n return null;\n}\nfunction $f6c31cce2adf654f$var$getTouchById(event, pointerId) {\n const changedTouches = event.changedTouches;\n for(let i = 0; i < changedTouches.length; i++){\n const touch = changedTouches[i];\n if (touch.identifier === pointerId) return touch;\n }\n return null;\n}\nfunction $f6c31cce2adf654f$var$createTouchEvent(target, e) {\n let clientX = 0;\n let clientY = 0;\n if (e.targetTouches && e.targetTouches.length === 1) {\n clientX = e.targetTouches[0].clientX;\n clientY = e.targetTouches[0].clientY;\n }\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n clientX: clientX,\n clientY: clientY\n };\n}\nfunction $f6c31cce2adf654f$var$createEvent(target, e) {\n let clientX = e.clientX;\n let clientY = e.clientY;\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n clientX: clientX,\n clientY: clientY\n };\n}\nfunction $f6c31cce2adf654f$var$getPointClientRect(point) {\n let offsetX = 0;\n let offsetY = 0;\n if (point.width !== undefined) offsetX = point.width / 2;\n else if (point.radiusX !== undefined) offsetX = point.radiusX;\n if (point.height !== undefined) offsetY = point.height / 2;\n else if (point.radiusY !== undefined) offsetY = point.radiusY;\n return {\n top: point.clientY - offsetY,\n right: point.clientX + offsetX,\n bottom: point.clientY + offsetY,\n left: point.clientX - offsetX\n };\n}\nfunction $f6c31cce2adf654f$var$areRectanglesOverlapping(a, b) {\n // check if they cannot overlap on x axis\n if (a.left > b.right || b.left > a.right) return false;\n // check if they cannot overlap on y axis\n if (a.top > b.bottom || b.top > a.bottom) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$isOverTarget(point, target) {\n let rect = target.getBoundingClientRect();\n let pointRect = $f6c31cce2adf654f$var$getPointClientRect(point);\n return $f6c31cce2adf654f$var$areRectanglesOverlapping(rect, pointRect);\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultUp(target) {\n if (target instanceof HTMLInputElement) return false;\n if (target instanceof HTMLButtonElement) return target.type !== 'submit' && target.type !== 'reset';\n if ($f6c31cce2adf654f$var$isHTMLAnchorLink(target)) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(target, key) {\n if (target instanceof HTMLInputElement) return !$f6c31cce2adf654f$var$isValidInputKey(target, key);\n return $f6c31cce2adf654f$var$shouldPreventDefaultUp(target);\n}\nconst $f6c31cce2adf654f$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\nfunction $f6c31cce2adf654f$var$isValidInputKey(target, key) {\n // Only space should toggle checkboxes and radios, not enter.\n return target.type === 'checkbox' || target.type === 'radio' ? key === ' ' : $f6c31cce2adf654f$var$nonTextInputTypes.has(target.type);\n}\n\n\nexport {$f6c31cce2adf654f$export$45712eceda6fad21 as usePress};\n//# sourceMappingURL=usePress.module.js.map\n","import $670gB$react, {useContext as $670gB$useContext, useState as $670gB$useState, useMemo as $670gB$useMemo, useLayoutEffect as $670gB$useLayoutEffect, useRef as $670gB$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $b5e257d569688ac6$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $b5e257d569688ac6$var$SSRContext = /*#__PURE__*/ (0, $670gB$react).createContext($b5e257d569688ac6$var$defaultContext);\nconst $b5e257d569688ac6$var$IsSSRContext = /*#__PURE__*/ (0, $670gB$react).createContext(false);\n// This is only used in React < 18.\nfunction $b5e257d569688ac6$var$LegacySSRProvider(props) {\n let cur = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n let counter = $b5e257d569688ac6$var$useCounter(cur === $b5e257d569688ac6$var$defaultContext);\n let [isSSR, setIsSSR] = (0, $670gB$useState)(true);\n let value = (0, $670gB$useMemo)(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $b5e257d569688ac6$var$defaultContext ? '' : `${cur.prefix}-${counter}`,\n current: 0\n }), [\n cur,\n counter\n ]);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof document !== 'undefined') // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, $670gB$useLayoutEffect)(()=>{\n setIsSSR(false);\n }, []);\n return /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$SSRContext.Provider, {\n value: value\n }, /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$IsSSRContext.Provider, {\n value: isSSR\n }, props.children));\n}\nlet $b5e257d569688ac6$var$warnedAboutSSRProvider = false;\nfunction $b5e257d569688ac6$export$9f8ac96af4b1b2ae(props) {\n if (typeof (0, $670gB$react)['useId'] === 'function') {\n if (process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'production' && !$b5e257d569688ac6$var$warnedAboutSSRProvider) {\n console.warn('In React 18, SSRProvider is not necessary and is a noop. You can remove it from your app.');\n $b5e257d569688ac6$var$warnedAboutSSRProvider = true;\n }\n return /*#__PURE__*/ (0, $670gB$react).createElement((0, $670gB$react).Fragment, null, props.children);\n }\n return /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$LegacySSRProvider, props);\n}\nlet $b5e257d569688ac6$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nlet $b5e257d569688ac6$var$componentIds = new WeakMap();\nfunction $b5e257d569688ac6$var$useCounter(isDisabled = false) {\n let ctx = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n let ref = (0, $670gB$useRef)(null);\n // eslint-disable-next-line rulesdir/pure-render\n if (ref.current === null && !isDisabled) {\n var _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner, _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n // In strict mode, React renders components twice, and the ref will be reset to null on the second render.\n // This means our id counter will be incremented twice instead of once. This is a problem because on the\n // server, components are only rendered once and so ids generated on the server won't match the client.\n // In React 18, useId was introduced to solve this, but it is not available in older versions. So to solve this\n // we need to use some React internals to access the underlying Fiber instance, which is stable between renders.\n // This is exposed as ReactCurrentOwner in development, which is all we need since StrictMode only runs in development.\n // To ensure that we only increment the global counter once, we store the starting id for this component in\n // a weak map associated with the Fiber. On the second render, we reset the global counter to this value.\n // Since React runs the second render immediately after the first, this is safe.\n // @ts-ignore\n let currentOwner = (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = (0, $670gB$react).__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED === void 0 ? void 0 : (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner = _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner === void 0 ? void 0 : _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner.current;\n if (currentOwner) {\n let prevComponentValue = $b5e257d569688ac6$var$componentIds.get(currentOwner);\n if (prevComponentValue == null) // On the first render, and first call to useId, store the id and state in our weak map.\n $b5e257d569688ac6$var$componentIds.set(currentOwner, {\n id: ctx.current,\n state: currentOwner.memoizedState\n });\n else if (currentOwner.memoizedState !== prevComponentValue.state) {\n // On the second render, the memoizedState gets reset by React.\n // Reset the counter, and remove from the weak map so we don't\n // do this for subsequent useId calls.\n ctx.current = prevComponentValue.id;\n $b5e257d569688ac6$var$componentIds.delete(currentOwner);\n }\n }\n // eslint-disable-next-line rulesdir/pure-render\n ref.current = ++ctx.current;\n }\n // eslint-disable-next-line rulesdir/pure-render\n return ref.current;\n}\nfunction $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {\n let ctx = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $b5e257d569688ac6$var$defaultContext && !$b5e257d569688ac6$var$canUseDOM && process.env.NODE_ENV !== 'production') console.warn('When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.');\n let counter = $b5e257d569688ac6$var$useCounter(!!defaultId);\n let prefix = ctx === $b5e257d569688ac6$var$defaultContext && process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${ctx.prefix}`;\n return defaultId || `${prefix}-${counter}`;\n}\nfunction $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {\n let id = (0, $670gB$react).useId();\n let [didSSR] = (0, $670gB$useState)($b5e257d569688ac6$export$535bd6ca7f90a273());\n let prefix = didSSR || process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;\n return defaultId || `${prefix}-${id}`;\n}\nconst $b5e257d569688ac6$export$619500959fc48b26 = typeof (0, $670gB$react)['useId'] === 'function' ? $b5e257d569688ac6$var$useModernSSRSafeId : $b5e257d569688ac6$var$useLegacySSRSafeId;\nfunction $b5e257d569688ac6$var$getSnapshot() {\n return false;\n}\nfunction $b5e257d569688ac6$var$getServerSnapshot() {\n return true;\n}\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction $b5e257d569688ac6$var$subscribe(onStoreChange) {\n // noop\n return ()=>{};\n}\nfunction $b5e257d569688ac6$export$535bd6ca7f90a273() {\n // In React 18, we can use useSyncExternalStore to detect if we're server rendering or hydrating.\n if (typeof (0, $670gB$react)['useSyncExternalStore'] === 'function') return (0, $670gB$react)['useSyncExternalStore']($b5e257d569688ac6$var$subscribe, $b5e257d569688ac6$var$getSnapshot, $b5e257d569688ac6$var$getServerSnapshot);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return (0, $670gB$useContext)($b5e257d569688ac6$var$IsSSRContext);\n}\n\n\nexport {$b5e257d569688ac6$export$9f8ac96af4b1b2ae as SSRProvider, $b5e257d569688ac6$export$535bd6ca7f90a273 as useIsSSR, $b5e257d569688ac6$export$619500959fc48b26 as useSSRSafeId};\n//# sourceMappingURL=SSRProvider.module.js.map\n","import {ignoreFocusEvent as $8a9cb279dc87e130$export$fda7da73ab5d4c48} from \"./utils.mjs\";\nimport {isMac as $28AnR$isMac, isVirtualClick as $28AnR$isVirtualClick, getOwnerWindow as $28AnR$getOwnerWindow, getOwnerDocument as $28AnR$getOwnerDocument} from \"@react-aria/utils\";\nimport {useState as $28AnR$useState, useEffect as $28AnR$useEffect} from \"react\";\nimport {useIsSSR as $28AnR$useIsSSR} from \"@react-aria/ssr\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\nlet $507fabe10e71c6fb$var$currentModality = null;\nlet $507fabe10e71c6fb$var$changeHandlers = new Set();\nlet $507fabe10e71c6fb$export$d90243b58daecda7 = new Map(); // We use a map here to support setting event listeners across multiple document objects.\nlet $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\nlet $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n// Only Tab or Esc keys will make focus visible on text input elements\nconst $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = {\n Tab: true,\n Escape: true\n};\nfunction $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {\n for (let handler of $507fabe10e71c6fb$var$changeHandlers)handler(modality, e);\n}\n/**\n * Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.\n */ function $507fabe10e71c6fb$var$isValidKey(e) {\n // Control and Shift keys trigger when navigating back to the tab with keyboard.\n return !(e.metaKey || !(0, $28AnR$isMac)() && e.altKey || e.ctrlKey || e.key === 'Control' || e.key === 'Shift' || e.key === 'Meta');\n}\nfunction $507fabe10e71c6fb$var$handleKeyboardEvent(e) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n if ($507fabe10e71c6fb$var$isValidKey(e)) {\n $507fabe10e71c6fb$var$currentModality = 'keyboard';\n $507fabe10e71c6fb$var$triggerChangeHandlers('keyboard', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handlePointerEvent(e) {\n $507fabe10e71c6fb$var$currentModality = 'pointer';\n if (e.type === 'mousedown' || e.type === 'pointerdown') {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$triggerChangeHandlers('pointer', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handleClickEvent(e) {\n if ((0, $28AnR$isVirtualClick)(e)) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n }\n}\nfunction $507fabe10e71c6fb$var$handleFocusEvent(e) {\n // Firefox fires two extra focus events when the user first clicks into an iframe:\n // first on the window, then on the document. We ignore these events so they don't\n // cause keyboard focus rings to appear.\n if (e.target === window || e.target === document || (0, $8a9cb279dc87e130$export$fda7da73ab5d4c48) || !e.isTrusted) return;\n // If a focus event occurs without a preceding keyboard or pointer event, switch to virtual modality.\n // This occurs, for example, when navigating a form with the next/previous buttons on iOS.\n if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n $507fabe10e71c6fb$var$triggerChangeHandlers('virtual', e);\n }\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n}\nfunction $507fabe10e71c6fb$var$handleWindowBlur() {\n if (0, $8a9cb279dc87e130$export$fda7da73ab5d4c48) return;\n // When the window is blurred, reset state. This is necessary when tabbing out of the window,\n // for example, since a subsequent focus event won't be fired.\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;\n}\n/**\n * Setup global event listeners to control when keyboard focus style should be visible.\n */ function $507fabe10e71c6fb$var$setupGlobalFocusEvents(element) {\n if (typeof window === 'undefined' || $507fabe10e71c6fb$export$d90243b58daecda7.get((0, $28AnR$getOwnerWindow)(element))) return;\n const windowObject = (0, $28AnR$getOwnerWindow)(element);\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n // Programmatic focus() calls shouldn't affect the current input modality.\n // However, we need to detect other cases when a focus event occurs without\n // a preceding user event (e.g. screen reader focus). Overriding the focus\n // method on HTMLElement.prototype is a bit hacky, but works.\n let focus = windowObject.HTMLElement.prototype.focus;\n windowObject.HTMLElement.prototype.focus = function() {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n focus.apply(this, arguments);\n };\n documentObject.addEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n // Register focus events on the window so they are sure to happen\n // before React's event listeners (registered on the document).\n windowObject.addEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.addEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.addEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else if (process.env.NODE_ENV === 'test') {\n documentObject.addEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n // Add unmount handler\n windowObject.addEventListener('beforeunload', ()=>{\n $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element);\n }, {\n once: true\n });\n $507fabe10e71c6fb$export$d90243b58daecda7.set(windowObject, {\n focus: focus\n });\n}\nconst $507fabe10e71c6fb$var$tearDownWindowFocusTracking = (element, loadListener)=>{\n const windowObject = (0, $28AnR$getOwnerWindow)(element);\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n if (loadListener) documentObject.removeEventListener('DOMContentLoaded', loadListener);\n if (!$507fabe10e71c6fb$export$d90243b58daecda7.has(windowObject)) return;\n windowObject.HTMLElement.prototype.focus = $507fabe10e71c6fb$export$d90243b58daecda7.get(windowObject).focus;\n documentObject.removeEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n windowObject.removeEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.removeEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.removeEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else if (process.env.NODE_ENV === 'test') {\n documentObject.removeEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n $507fabe10e71c6fb$export$d90243b58daecda7.delete(windowObject);\n};\nfunction $507fabe10e71c6fb$export$2f1888112f558a7d(element) {\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n let loadListener;\n if (documentObject.readyState !== 'loading') $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n else {\n loadListener = ()=>{\n $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n };\n documentObject.addEventListener('DOMContentLoaded', loadListener);\n }\n return ()=>$507fabe10e71c6fb$var$tearDownWindowFocusTracking(element, loadListener);\n}\n// Server-side rendering does not have the document object defined\n// eslint-disable-next-line no-restricted-globals\nif (typeof document !== 'undefined') $507fabe10e71c6fb$export$2f1888112f558a7d();\nfunction $507fabe10e71c6fb$export$b9b3dfddab17db27() {\n return $507fabe10e71c6fb$var$currentModality !== 'pointer';\n}\nfunction $507fabe10e71c6fb$export$630ff653c5ada6a9() {\n return $507fabe10e71c6fb$var$currentModality;\n}\nfunction $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {\n $507fabe10e71c6fb$var$currentModality = modality;\n $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);\n}\nfunction $507fabe10e71c6fb$export$98e20ec92f614cfe() {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n let [modality, setModality] = (0, $28AnR$useState)($507fabe10e71c6fb$var$currentModality);\n (0, $28AnR$useEffect)(()=>{\n let handler = ()=>{\n setModality($507fabe10e71c6fb$var$currentModality);\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, []);\n return (0, $28AnR$useIsSSR)() ? null : modality;\n}\nconst $507fabe10e71c6fb$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\n/**\n * If this is attached to text input component, return if the event is a focus event (Tab/Escape keys pressed) so that\n * focus visible style can be properly set.\n */ function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {\n let document1 = (0, $28AnR$getOwnerDocument)(e === null || e === void 0 ? void 0 : e.target);\n const IHTMLInputElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLInputElement : HTMLInputElement;\n const IHTMLTextAreaElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLTextAreaElement : HTMLTextAreaElement;\n const IHTMLElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLElement : HTMLElement;\n const IKeyboardEvent = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).KeyboardEvent : KeyboardEvent;\n // For keyboard events that occur on a non-input element that will move focus into input element (aka ArrowLeft going from Datepicker button to the main input group)\n // we need to rely on the user passing isTextInput into here. This way we can skip toggling focus visiblity for said input element\n isTextInput = isTextInput || document1.activeElement instanceof IHTMLInputElement && !$507fabe10e71c6fb$var$nonTextInputTypes.has(document1.activeElement.type) || document1.activeElement instanceof IHTMLTextAreaElement || document1.activeElement instanceof IHTMLElement && document1.activeElement.isContentEditable;\n return !(isTextInput && modality === 'keyboard' && e instanceof IKeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);\n}\nfunction $507fabe10e71c6fb$export$ffd9e5021c1fb2d6(props = {}) {\n let { isTextInput: isTextInput, autoFocus: autoFocus } = props;\n let [isFocusVisibleState, setFocusVisible] = (0, $28AnR$useState)(autoFocus || $507fabe10e71c6fb$export$b9b3dfddab17db27());\n $507fabe10e71c6fb$export$ec71b4b83ac08ec3((isFocusVisible)=>{\n setFocusVisible(isFocusVisible);\n }, [\n isTextInput\n ], {\n isTextInput: isTextInput\n });\n return {\n isFocusVisible: isFocusVisibleState\n };\n}\nfunction $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n (0, $28AnR$useEffect)(()=>{\n let handler = (modality, e)=>{\n // We want to early return for any keyboard events that occur inside text inputs EXCEPT for Tab and Escape\n if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(!!(opts === null || opts === void 0 ? void 0 : opts.isTextInput), modality, e)) return;\n fn($507fabe10e71c6fb$export$b9b3dfddab17db27());\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n}\n\n\nexport {$507fabe10e71c6fb$export$d90243b58daecda7 as hasSetupGlobalListeners, $507fabe10e71c6fb$export$2f1888112f558a7d as addWindowFocusTracking, $507fabe10e71c6fb$export$b9b3dfddab17db27 as isFocusVisible, $507fabe10e71c6fb$export$630ff653c5ada6a9 as getInteractionModality, $507fabe10e71c6fb$export$8397ddfc504fdb9a as setInteractionModality, $507fabe10e71c6fb$export$98e20ec92f614cfe as useInteractionModality, $507fabe10e71c6fb$export$ffd9e5021c1fb2d6 as useFocusVisible, $507fabe10e71c6fb$export$ec71b4b83ac08ec3 as useFocusVisibleListener};\n//# sourceMappingURL=useFocusVisible.module.js.map\n","import {getInteractionModality as $507fabe10e71c6fb$export$630ff653c5ada6a9} from \"./useFocusVisible.mjs\";\nimport {getOwnerDocument as $k50bp$getOwnerDocument, getActiveElement as $k50bp$getActiveElement, runAfterTransition as $k50bp$runAfterTransition, focusWithoutScrolling as $k50bp$focusWithoutScrolling} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the 'License');\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $3ad3f6e1647bc98d$export$80f3e147d781571c(element) {\n // If the user is interacting with a virtual cursor, e.g. screen reader, then\n // wait until after any animated transitions that are currently occurring on\n // the page before shifting focus. This avoids issues with VoiceOver on iOS\n // causing the page to scroll when moving focus if the element is transitioning\n // from off the screen.\n const ownerDocument = (0, $k50bp$getOwnerDocument)(element);\n const activeElement = (0, $k50bp$getActiveElement)(ownerDocument);\n if ((0, $507fabe10e71c6fb$export$630ff653c5ada6a9)() === 'virtual') {\n let lastFocusedElement = activeElement;\n (0, $k50bp$runAfterTransition)(()=>{\n // If focus did not move and the element is still in the document, focus it.\n if ((0, $k50bp$getActiveElement)(ownerDocument) === lastFocusedElement && element.isConnected) (0, $k50bp$focusWithoutScrolling)(element);\n });\n } else (0, $k50bp$focusWithoutScrolling)(element);\n}\n\n\nexport {$3ad3f6e1647bc98d$export$80f3e147d781571c as focusSafely};\n//# sourceMappingURL=focusSafely.module.js.map\n","import {useSyntheticBlurEvent as $8a9cb279dc87e130$export$715c682d09d639cc} from \"./utils.mjs\";\nimport {useCallback as $hf0lj$useCallback} from \"react\";\nimport {getOwnerDocument as $hf0lj$getOwnerDocument, getActiveElement as $hf0lj$getActiveElement, getEventTarget as $hf0lj$getEventTarget} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nfunction $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {\n let { isDisabled: isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange: onFocusChange } = props;\n const onBlur = (0, $hf0lj$useCallback)((e)=>{\n if (e.target === e.currentTarget) {\n if (onBlurProp) onBlurProp(e);\n if (onFocusChange) onFocusChange(false);\n return true;\n }\n }, [\n onBlurProp,\n onFocusChange\n ]);\n const onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur);\n const onFocus = (0, $hf0lj$useCallback)((e)=>{\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n const ownerDocument = (0, $hf0lj$getOwnerDocument)(e.target);\n const activeElement = ownerDocument ? (0, $hf0lj$getActiveElement)(ownerDocument) : (0, $hf0lj$getActiveElement)();\n if (e.target === e.currentTarget && activeElement === (0, $hf0lj$getEventTarget)(e.nativeEvent)) {\n if (onFocusProp) onFocusProp(e);\n if (onFocusChange) onFocusChange(true);\n onSyntheticFocus(e);\n }\n }, [\n onFocusChange,\n onFocusProp,\n onSyntheticFocus\n ]);\n return {\n focusProps: {\n onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : undefined,\n onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : undefined\n }\n };\n}\n\n\nexport {$a1ea59d68270f0dd$export$f8168d8dd8fd66e6 as useFocus};\n//# sourceMappingURL=useFocus.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $93925083ecbb358c$export$48d1ea6320830260(handler) {\n if (!handler) return undefined;\n let shouldStopPropagation = true;\n return (e)=>{\n let event = {\n ...e,\n preventDefault () {\n e.preventDefault();\n },\n isDefaultPrevented () {\n return e.isDefaultPrevented();\n },\n stopPropagation () {\n if (shouldStopPropagation && process.env.NODE_ENV !== 'production') console.error('stopPropagation is now the default behavior for events in React Spectrum. You can use continuePropagation() to revert this behavior.');\n else shouldStopPropagation = true;\n },\n continuePropagation () {\n shouldStopPropagation = false;\n },\n isPropagationStopped () {\n return shouldStopPropagation;\n }\n };\n handler(event);\n if (shouldStopPropagation) e.stopPropagation();\n };\n}\n\n\nexport {$93925083ecbb358c$export$48d1ea6320830260 as createEventHandler};\n//# sourceMappingURL=createEventHandler.module.js.map\n","import {createEventHandler as $93925083ecbb358c$export$48d1ea6320830260} from \"./createEventHandler.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $46d819fcbaf35654$export$8f71654801c2f7cd(props) {\n return {\n keyboardProps: props.isDisabled ? {} : {\n onKeyDown: (0, $93925083ecbb358c$export$48d1ea6320830260)(props.onKeyDown),\n onKeyUp: (0, $93925083ecbb358c$export$48d1ea6320830260)(props.onKeyUp)\n }\n };\n}\n\n\nexport {$46d819fcbaf35654$export$8f71654801c2f7cd as useKeyboard};\n//# sourceMappingURL=useKeyboard.module.js.map\n","import {focusSafely as $3ad3f6e1647bc98d$export$80f3e147d781571c} from \"./focusSafely.mjs\";\nimport {useFocus as $a1ea59d68270f0dd$export$f8168d8dd8fd66e6} from \"./useFocus.mjs\";\nimport {useKeyboard as $46d819fcbaf35654$export$8f71654801c2f7cd} from \"./useKeyboard.mjs\";\nimport {useSyncRef as $fcPuG$useSyncRef, useObjectRef as $fcPuG$useObjectRef, mergeProps as $fcPuG$mergeProps, getOwnerWindow as $fcPuG$getOwnerWindow, isFocusable as $fcPuG$isFocusable, mergeRefs as $fcPuG$mergeRefs} from \"@react-aria/utils\";\nimport $fcPuG$react, {useContext as $fcPuG$useContext, useRef as $fcPuG$useRef, useEffect as $fcPuG$useEffect, forwardRef as $fcPuG$forwardRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nlet $f645667febf57a63$export$f9762fab77588ecb = /*#__PURE__*/ (0, $fcPuG$react).createContext(null);\nfunction $f645667febf57a63$var$useFocusableContext(ref) {\n let context = (0, $fcPuG$useContext)($f645667febf57a63$export$f9762fab77588ecb) || {};\n (0, $fcPuG$useSyncRef)(context, ref);\n // eslint-disable-next-line\n let { ref: _, ...otherProps } = context;\n return otherProps;\n}\nconst $f645667febf57a63$export$13f3202a3e5ddd5 = /*#__PURE__*/ (0, $fcPuG$react).forwardRef(function FocusableProvider(props, ref) {\n let { children: children, ...otherProps } = props;\n let objRef = (0, $fcPuG$useObjectRef)(ref);\n let context = {\n ...otherProps,\n ref: objRef\n };\n return /*#__PURE__*/ (0, $fcPuG$react).createElement($f645667febf57a63$export$f9762fab77588ecb.Provider, {\n value: context\n }, children);\n});\nfunction $f645667febf57a63$export$4c014de7c8940b4c(props, domRef) {\n let { focusProps: focusProps } = (0, $a1ea59d68270f0dd$export$f8168d8dd8fd66e6)(props);\n let { keyboardProps: keyboardProps } = (0, $46d819fcbaf35654$export$8f71654801c2f7cd)(props);\n let interactions = (0, $fcPuG$mergeProps)(focusProps, keyboardProps);\n let domProps = $f645667febf57a63$var$useFocusableContext(domRef);\n let interactionProps = props.isDisabled ? {} : domProps;\n let autoFocusRef = (0, $fcPuG$useRef)(props.autoFocus);\n (0, $fcPuG$useEffect)(()=>{\n if (autoFocusRef.current && domRef.current) (0, $3ad3f6e1647bc98d$export$80f3e147d781571c)(domRef.current);\n autoFocusRef.current = false;\n }, [\n domRef\n ]);\n // Always set a tabIndex so that Safari allows focusing native buttons and inputs.\n let tabIndex = props.excludeFromTabOrder ? -1 : 0;\n if (props.isDisabled) tabIndex = undefined;\n return {\n focusableProps: (0, $fcPuG$mergeProps)({\n ...interactions,\n tabIndex: tabIndex\n }, interactionProps)\n };\n}\nconst $f645667febf57a63$export$35a3bebf7ef2d934 = /*#__PURE__*/ (0, $fcPuG$forwardRef)(({ children: children, ...props }, ref)=>{\n ref = (0, $fcPuG$useObjectRef)(ref);\n let { focusableProps: focusableProps } = $f645667febf57a63$export$4c014de7c8940b4c(props, ref);\n let child = (0, $fcPuG$react).Children.only(children);\n (0, $fcPuG$useEffect)(()=>{\n if (process.env.NODE_ENV === 'production') return;\n let el = ref.current;\n if (!el || !(el instanceof (0, $fcPuG$getOwnerWindow)(el).Element)) {\n console.error('<Focusable> child must forward its ref to a DOM element.');\n return;\n }\n if (!props.isDisabled && !(0, $fcPuG$isFocusable)(el)) {\n console.warn('<Focusable> child must be focusable. Please ensure the tabIndex prop is passed through.');\n return;\n }\n if (el.localName !== 'button' && el.localName !== 'input' && el.localName !== 'select' && el.localName !== 'textarea' && el.localName !== 'a' && el.localName !== 'area' && el.localName !== 'summary' && el.localName !== 'img' && el.localName !== 'svg') {\n let role = el.getAttribute('role');\n if (!role) console.warn('<Focusable> child must have an interactive ARIA role.');\n else if (// https://w3c.github.io/aria/#widget_roles\n role !== 'application' && role !== 'button' && role !== 'checkbox' && role !== 'combobox' && role !== 'gridcell' && role !== 'link' && role !== 'menuitem' && role !== 'menuitemcheckbox' && role !== 'menuitemradio' && role !== 'option' && role !== 'radio' && role !== 'searchbox' && role !== 'separator' && role !== 'slider' && role !== 'spinbutton' && role !== 'switch' && role !== 'tab' && role !== 'tabpanel' && role !== 'textbox' && role !== 'treeitem' && // aria-describedby is also announced on these roles\n role !== 'img' && role !== 'meter' && role !== 'progressbar') console.warn(`<Focusable> child must have an interactive ARIA role. Got \"${role}\".`);\n }\n }, [\n ref,\n props.isDisabled\n ]);\n // @ts-ignore\n let childRef = parseInt((0, $fcPuG$react).version, 10) < 19 ? child.ref : child.props.ref;\n return /*#__PURE__*/ (0, $fcPuG$react).cloneElement(child, {\n ...(0, $fcPuG$mergeProps)(focusableProps, child.props),\n // @ts-ignore\n ref: (0, $fcPuG$mergeRefs)(childRef, ref)\n });\n});\n\n\nexport {$f645667febf57a63$export$f9762fab77588ecb as FocusableContext, $f645667febf57a63$export$13f3202a3e5ddd5 as FocusableProvider, $f645667febf57a63$export$4c014de7c8940b4c as useFocusable, $f645667febf57a63$export$35a3bebf7ef2d934 as Focusable};\n//# sourceMappingURL=useFocusable.module.js.map\n","import {PressResponderContext as $ae1eeba8b9eafd08$export$5165eccb35aaadb5} from \"./context.mjs\";\nimport {useObjectRef as $87RPk$useObjectRef, mergeProps as $87RPk$mergeProps, useSyncRef as $87RPk$useSyncRef} from \"@react-aria/utils\";\nimport $87RPk$react, {useRef as $87RPk$useRef, useContext as $87RPk$useContext, useEffect as $87RPk$useEffect, useMemo as $87RPk$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $f1ab8c75478c6f73$export$3351871ee4b288b8 = /*#__PURE__*/ (0, $87RPk$react).forwardRef(({ children: children, ...props }, ref)=>{\n let isRegistered = (0, $87RPk$useRef)(false);\n let prevContext = (0, $87RPk$useContext)((0, $ae1eeba8b9eafd08$export$5165eccb35aaadb5));\n ref = (0, $87RPk$useObjectRef)(ref || (prevContext === null || prevContext === void 0 ? void 0 : prevContext.ref));\n let context = (0, $87RPk$mergeProps)(prevContext || {}, {\n ...props,\n ref: ref,\n register () {\n isRegistered.current = true;\n if (prevContext) prevContext.register();\n }\n });\n (0, $87RPk$useSyncRef)(prevContext, ref);\n (0, $87RPk$useEffect)(()=>{\n if (!isRegistered.current) {\n if (process.env.NODE_ENV !== 'production') console.warn(\"A PressResponder was rendered without a pressable child. Either call the usePress hook, or wrap your DOM node with <Pressable> component.\");\n isRegistered.current = true; // only warn once in strict mode.\n }\n }, []);\n return /*#__PURE__*/ (0, $87RPk$react).createElement((0, $ae1eeba8b9eafd08$export$5165eccb35aaadb5).Provider, {\n value: context\n }, children);\n});\nfunction $f1ab8c75478c6f73$export$cf75428e0b9ed1ea({ children: children }) {\n let context = (0, $87RPk$useMemo)(()=>({\n register: ()=>{}\n }), []);\n return /*#__PURE__*/ (0, $87RPk$react).createElement((0, $ae1eeba8b9eafd08$export$5165eccb35aaadb5).Provider, {\n value: context\n }, children);\n}\n\n\nexport {$f1ab8c75478c6f73$export$3351871ee4b288b8 as PressResponder, $f1ab8c75478c6f73$export$cf75428e0b9ed1ea as ClearPressResponder};\n//# sourceMappingURL=PressResponder.module.js.map\n","import {createSyntheticEvent as $8a9cb279dc87e130$export$525bc4921d56d4a, setEventTarget as $8a9cb279dc87e130$export$c2b7abe5d61ec696, useSyntheticBlurEvent as $8a9cb279dc87e130$export$715c682d09d639cc} from \"./utils.mjs\";\nimport {useRef as $3b9Q0$useRef, useCallback as $3b9Q0$useCallback} from \"react\";\nimport {useGlobalListeners as $3b9Q0$useGlobalListeners, getOwnerDocument as $3b9Q0$getOwnerDocument, getActiveElement as $3b9Q0$getActiveElement, getEventTarget as $3b9Q0$getEventTarget, nodeContains as $3b9Q0$nodeContains} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nfunction $9ab94262bd0047c7$export$420e68273165f4ec(props) {\n let { isDisabled: isDisabled, onBlurWithin: onBlurWithin, onFocusWithin: onFocusWithin, onFocusWithinChange: onFocusWithinChange } = props;\n let state = (0, $3b9Q0$useRef)({\n isFocusWithin: false\n });\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $3b9Q0$useGlobalListeners)();\n let onBlur = (0, $3b9Q0$useCallback)((e)=>{\n // Ignore events bubbling through portals.\n if (!e.currentTarget.contains(e.target)) return;\n // We don't want to trigger onBlurWithin and then immediately onFocusWithin again\n // when moving focus inside the element. Only trigger if the currentTarget doesn't\n // include the relatedTarget (where focus is moving).\n if (state.current.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {\n state.current.isFocusWithin = false;\n removeAllGlobalListeners();\n if (onBlurWithin) onBlurWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(false);\n }\n }, [\n onBlurWithin,\n onFocusWithinChange,\n state,\n removeAllGlobalListeners\n ]);\n let onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur);\n let onFocus = (0, $3b9Q0$useCallback)((e)=>{\n // Ignore events bubbling through portals.\n if (!e.currentTarget.contains(e.target)) return;\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n const ownerDocument = (0, $3b9Q0$getOwnerDocument)(e.target);\n const activeElement = (0, $3b9Q0$getActiveElement)(ownerDocument);\n if (!state.current.isFocusWithin && activeElement === (0, $3b9Q0$getEventTarget)(e.nativeEvent)) {\n if (onFocusWithin) onFocusWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(true);\n state.current.isFocusWithin = true;\n onSyntheticFocus(e);\n // Browsers don't fire blur events when elements are removed from the DOM.\n // However, if a focus event occurs outside the element we're tracking, we\n // can manually fire onBlur.\n let currentTarget = e.currentTarget;\n addGlobalListener(ownerDocument, 'focus', (e)=>{\n if (state.current.isFocusWithin && !(0, $3b9Q0$nodeContains)(currentTarget, e.target)) {\n let nativeEvent = new ownerDocument.defaultView.FocusEvent('blur', {\n relatedTarget: e.target\n });\n (0, $8a9cb279dc87e130$export$c2b7abe5d61ec696)(nativeEvent, currentTarget);\n let event = (0, $8a9cb279dc87e130$export$525bc4921d56d4a)(nativeEvent);\n onBlur(event);\n }\n }, {\n capture: true\n });\n }\n }, [\n onFocusWithin,\n onFocusWithinChange,\n onSyntheticFocus,\n addGlobalListener,\n onBlur\n ]);\n if (isDisabled) return {\n focusWithinProps: {\n // These cannot be null, that would conflict in mergeProps\n onFocus: undefined,\n onBlur: undefined\n }\n };\n return {\n focusWithinProps: {\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n\nexport {$9ab94262bd0047c7$export$420e68273165f4ec as useFocusWithin};\n//# sourceMappingURL=useFocusWithin.module.js.map\n","import {useGlobalListeners as $AWxnT$useGlobalListeners, getOwnerDocument as $AWxnT$getOwnerDocument, nodeContains as $AWxnT$nodeContains} from \"@react-aria/utils\";\nimport {useState as $AWxnT$useState, useRef as $AWxnT$useRef, useEffect as $AWxnT$useEffect, useMemo as $AWxnT$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n// iOS fires onPointerEnter twice: once with pointerType=\"touch\" and again with pointerType=\"mouse\".\n// We want to ignore these emulated events so they do not trigger hover behavior.\n// See https://bugs.webkit.org/show_bug.cgi?id=214609.\nlet $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\nlet $6179b936705e76d3$var$hoverCount = 0;\nfunction $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;\n // Clear globalIgnoreEmulatedMouseEvents after a short timeout. iOS fires onPointerEnter\n // with pointerType=\"mouse\" immediately after onPointerUp and before onFocus. On other\n // devices that don't have this quirk, we don't want to ignore a mouse hover sometime in\n // the distant future because a user previously touched the element.\n setTimeout(()=>{\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\n }, 50);\n}\nfunction $6179b936705e76d3$var$handleGlobalPointerEvent(e) {\n if (e.pointerType === 'touch') $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();\n}\nfunction $6179b936705e76d3$var$setupGlobalTouchEvents() {\n if (typeof document === 'undefined') return;\n if (typeof PointerEvent !== 'undefined') document.addEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else if (process.env.NODE_ENV === 'test') document.addEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n $6179b936705e76d3$var$hoverCount++;\n return ()=>{\n $6179b936705e76d3$var$hoverCount--;\n if ($6179b936705e76d3$var$hoverCount > 0) return;\n if (typeof PointerEvent !== 'undefined') document.removeEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else if (process.env.NODE_ENV === 'test') document.removeEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n };\n}\nfunction $6179b936705e76d3$export$ae780daf29e6d456(props) {\n let { onHoverStart: onHoverStart, onHoverChange: onHoverChange, onHoverEnd: onHoverEnd, isDisabled: isDisabled } = props;\n let [isHovered, setHovered] = (0, $AWxnT$useState)(false);\n let state = (0, $AWxnT$useRef)({\n isHovered: false,\n ignoreEmulatedMouseEvents: false,\n pointerType: '',\n target: null\n }).current;\n (0, $AWxnT$useEffect)($6179b936705e76d3$var$setupGlobalTouchEvents, []);\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $AWxnT$useGlobalListeners)();\n let { hoverProps: hoverProps, triggerHoverEnd: triggerHoverEnd } = (0, $AWxnT$useMemo)(()=>{\n let triggerHoverStart = (event, pointerType)=>{\n state.pointerType = pointerType;\n if (isDisabled || pointerType === 'touch' || state.isHovered || !event.currentTarget.contains(event.target)) return;\n state.isHovered = true;\n let target = event.currentTarget;\n state.target = target;\n // When an element that is hovered over is removed, no pointerleave event is fired by the browser,\n // even though the originally hovered target may have shrunk in size so it is no longer hovered.\n // However, a pointerover event will be fired on the new target the mouse is over.\n // In Chrome this happens immediately. In Safari and Firefox, it happens upon moving the mouse one pixel.\n addGlobalListener((0, $AWxnT$getOwnerDocument)(event.target), 'pointerover', (e)=>{\n if (state.isHovered && state.target && !(0, $AWxnT$nodeContains)(state.target, e.target)) triggerHoverEnd(e, e.pointerType);\n }, {\n capture: true\n });\n if (onHoverStart) onHoverStart({\n type: 'hoverstart',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(true);\n setHovered(true);\n };\n let triggerHoverEnd = (event, pointerType)=>{\n let target = state.target;\n state.pointerType = '';\n state.target = null;\n if (pointerType === 'touch' || !state.isHovered || !target) return;\n state.isHovered = false;\n removeAllGlobalListeners();\n if (onHoverEnd) onHoverEnd({\n type: 'hoverend',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(false);\n setHovered(false);\n };\n let hoverProps = {};\n if (typeof PointerEvent !== 'undefined') {\n hoverProps.onPointerEnter = (e)=>{\n if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === 'mouse') return;\n triggerHoverStart(e, e.pointerType);\n };\n hoverProps.onPointerLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, e.pointerType);\n };\n } else if (process.env.NODE_ENV === 'test') {\n hoverProps.onTouchStart = ()=>{\n state.ignoreEmulatedMouseEvents = true;\n };\n hoverProps.onMouseEnter = (e)=>{\n if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, 'mouse');\n state.ignoreEmulatedMouseEvents = false;\n };\n hoverProps.onMouseLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, 'mouse');\n };\n }\n return {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n };\n }, [\n onHoverStart,\n onHoverChange,\n onHoverEnd,\n isDisabled,\n state,\n addGlobalListener,\n removeAllGlobalListeners\n ]);\n (0, $AWxnT$useEffect)(()=>{\n // Call the triggerHoverEnd as soon as isDisabled changes to true\n // Safe to call triggerHoverEnd, it will early return if we aren't currently hovering\n if (isDisabled) triggerHoverEnd({\n currentTarget: state.target\n }, state.pointerType);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isDisabled\n ]);\n return {\n hoverProps: hoverProps,\n isHovered: isHovered\n };\n}\n\n\nexport {$6179b936705e76d3$export$ae780daf29e6d456 as useHover};\n//# sourceMappingURL=useHover.module.js.map\n","import {useEffectEvent as $ispOf$useEffectEvent, getOwnerDocument as $ispOf$getOwnerDocument} from \"@react-aria/utils\";\nimport {useRef as $ispOf$useRef, useEffect as $ispOf$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\nfunction $e0b6e0b68ec7f50f$export$872b660ac5a1ff98(props) {\n let { ref: ref, onInteractOutside: onInteractOutside, isDisabled: isDisabled, onInteractOutsideStart: onInteractOutsideStart } = props;\n let stateRef = (0, $ispOf$useRef)({\n isPointerDown: false,\n ignoreEmulatedMouseEvents: false\n });\n let onPointerDown = (0, $ispOf$useEffectEvent)((e)=>{\n if (onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) {\n if (onInteractOutsideStart) onInteractOutsideStart(e);\n stateRef.current.isPointerDown = true;\n }\n });\n let triggerInteractOutside = (0, $ispOf$useEffectEvent)((e)=>{\n if (onInteractOutside) onInteractOutside(e);\n });\n (0, $ispOf$useEffect)(()=>{\n let state = stateRef.current;\n if (isDisabled) return;\n const element = ref.current;\n const documentObject = (0, $ispOf$getOwnerDocument)(element);\n // Use pointer events if available. Otherwise, fall back to mouse and touch events.\n if (typeof PointerEvent !== 'undefined') {\n let onPointerUp = (e)=>{\n if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) triggerInteractOutside(e);\n state.isPointerDown = false;\n };\n // changing these to capture phase fixed combobox\n documentObject.addEventListener('pointerdown', onPointerDown, true);\n documentObject.addEventListener('pointerup', onPointerUp, true);\n return ()=>{\n documentObject.removeEventListener('pointerdown', onPointerDown, true);\n documentObject.removeEventListener('pointerup', onPointerUp, true);\n };\n } else if (process.env.NODE_ENV === 'test') {\n let onMouseUp = (e)=>{\n if (state.ignoreEmulatedMouseEvents) state.ignoreEmulatedMouseEvents = false;\n else if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) triggerInteractOutside(e);\n state.isPointerDown = false;\n };\n let onTouchEnd = (e)=>{\n state.ignoreEmulatedMouseEvents = true;\n if (state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) triggerInteractOutside(e);\n state.isPointerDown = false;\n };\n documentObject.addEventListener('mousedown', onPointerDown, true);\n documentObject.addEventListener('mouseup', onMouseUp, true);\n documentObject.addEventListener('touchstart', onPointerDown, true);\n documentObject.addEventListener('touchend', onTouchEnd, true);\n return ()=>{\n documentObject.removeEventListener('mousedown', onPointerDown, true);\n documentObject.removeEventListener('mouseup', onMouseUp, true);\n documentObject.removeEventListener('touchstart', onPointerDown, true);\n documentObject.removeEventListener('touchend', onTouchEnd, true);\n };\n }\n }, [\n ref,\n isDisabled,\n onPointerDown,\n triggerInteractOutside\n ]);\n}\nfunction $e0b6e0b68ec7f50f$var$isValidEvent(event, ref) {\n if (event.button > 0) return false;\n if (event.target) {\n // if the event target is no longer in the document, ignore\n const ownerDocument = event.target.ownerDocument;\n if (!ownerDocument || !ownerDocument.documentElement.contains(event.target)) return false;\n // If the target is within a top layer element (e.g. toasts), ignore.\n if (event.target.closest('[data-react-aria-top-layer]')) return false;\n }\n if (!ref.current) return false;\n // When the event source is inside a Shadow DOM, event.target is just the shadow root.\n // Using event.composedPath instead means we can get the actual element inside the shadow root.\n // This only works if the shadow root is open, there is no way to detect if it is closed.\n // If the event composed path contains the ref, interaction is inside.\n return !event.composedPath().includes(ref.current);\n}\n\n\nexport {$e0b6e0b68ec7f50f$export$872b660ac5a1ff98 as useInteractOutside};\n//# sourceMappingURL=useInteractOutside.module.js.map\n","import {usePress as $f6c31cce2adf654f$export$45712eceda6fad21} from \"./usePress.mjs\";\nimport {useGlobalListeners as $4k2kv$useGlobalListeners, getOwnerDocument as $4k2kv$getOwnerDocument, focusWithoutScrolling as $4k2kv$focusWithoutScrolling, useDescription as $4k2kv$useDescription, mergeProps as $4k2kv$mergeProps} from \"@react-aria/utils\";\nimport {useRef as $4k2kv$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $8a26561d2877236e$var$DEFAULT_THRESHOLD = 500;\nfunction $8a26561d2877236e$export$c24ed0104d07eab9(props) {\n let { isDisabled: isDisabled, onLongPressStart: onLongPressStart, onLongPressEnd: onLongPressEnd, onLongPress: onLongPress, threshold: threshold = $8a26561d2877236e$var$DEFAULT_THRESHOLD, accessibilityDescription: accessibilityDescription } = props;\n const timeRef = (0, $4k2kv$useRef)(undefined);\n let { addGlobalListener: addGlobalListener, removeGlobalListener: removeGlobalListener } = (0, $4k2kv$useGlobalListeners)();\n let { pressProps: pressProps } = (0, $f6c31cce2adf654f$export$45712eceda6fad21)({\n isDisabled: isDisabled,\n onPressStart (e) {\n e.continuePropagation();\n if (e.pointerType === 'mouse' || e.pointerType === 'touch') {\n if (onLongPressStart) onLongPressStart({\n ...e,\n type: 'longpressstart'\n });\n timeRef.current = setTimeout(()=>{\n // Prevent other usePress handlers from also handling this event.\n e.target.dispatchEvent(new PointerEvent('pointercancel', {\n bubbles: true\n }));\n // Ensure target is focused. On touch devices, browsers typically focus on pointer up.\n if ((0, $4k2kv$getOwnerDocument)(e.target).activeElement !== e.target) (0, $4k2kv$focusWithoutScrolling)(e.target);\n if (onLongPress) onLongPress({\n ...e,\n type: 'longpress'\n });\n timeRef.current = undefined;\n }, threshold);\n // Prevent context menu, which may be opened on long press on touch devices\n if (e.pointerType === 'touch') {\n let onContextMenu = (e)=>{\n e.preventDefault();\n };\n addGlobalListener(e.target, 'contextmenu', onContextMenu, {\n once: true\n });\n addGlobalListener(window, 'pointerup', ()=>{\n // If no contextmenu event is fired quickly after pointerup, remove the handler\n // so future context menu events outside a long press are not prevented.\n setTimeout(()=>{\n removeGlobalListener(e.target, 'contextmenu', onContextMenu);\n }, 30);\n }, {\n once: true\n });\n }\n }\n },\n onPressEnd (e) {\n if (timeRef.current) clearTimeout(timeRef.current);\n if (onLongPressEnd && (e.pointerType === 'mouse' || e.pointerType === 'touch')) onLongPressEnd({\n ...e,\n type: 'longpressend'\n });\n }\n });\n let descriptionProps = (0, $4k2kv$useDescription)(onLongPress && !isDisabled ? accessibilityDescription : undefined);\n return {\n longPressProps: (0, $4k2kv$mergeProps)(pressProps, descriptionProps)\n };\n}\n\n\nexport {$8a26561d2877236e$export$c24ed0104d07eab9 as useLongPress};\n//# sourceMappingURL=useLongPress.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // https://en.wikipedia.org/wiki/Right-to-left\nconst $148a7a147e38ea7f$var$RTL_SCRIPTS = new Set([\n 'Arab',\n 'Syrc',\n 'Samr',\n 'Mand',\n 'Thaa',\n 'Mend',\n 'Nkoo',\n 'Adlm',\n 'Rohg',\n 'Hebr'\n]);\nconst $148a7a147e38ea7f$var$RTL_LANGS = new Set([\n 'ae',\n 'ar',\n 'arc',\n 'bcc',\n 'bqi',\n 'ckb',\n 'dv',\n 'fa',\n 'glk',\n 'he',\n 'ku',\n 'mzn',\n 'nqo',\n 'pnb',\n 'ps',\n 'sd',\n 'ug',\n 'ur',\n 'yi'\n]);\nfunction $148a7a147e38ea7f$export$702d680b21cbd764(localeString) {\n // If the Intl.Locale API is available, use it to get the locale's text direction.\n if (Intl.Locale) {\n let locale = new Intl.Locale(localeString).maximize();\n // Use the text info object to get the direction if possible.\n // @ts-ignore - this was implemented as a property by some browsers before it was standardized as a function.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getTextInfo\n let textInfo = typeof locale.getTextInfo === 'function' ? locale.getTextInfo() : locale.textInfo;\n if (textInfo) return textInfo.direction === 'rtl';\n // Fallback: guess using the script.\n // This is more accurate than guessing by language, since languages can be written in multiple scripts.\n if (locale.script) return $148a7a147e38ea7f$var$RTL_SCRIPTS.has(locale.script);\n }\n // If not, just guess by the language (first part of the locale)\n let lang = localeString.split('-')[0];\n return $148a7a147e38ea7f$var$RTL_LANGS.has(lang);\n}\n\n\nexport {$148a7a147e38ea7f$export$702d680b21cbd764 as isRTL};\n//# sourceMappingURL=utils.module.js.map\n","import {isRTL as $148a7a147e38ea7f$export$702d680b21cbd764} from \"./utils.mjs\";\nimport {useState as $ffhGL$useState, useEffect as $ffhGL$useEffect} from \"react\";\nimport {useIsSSR as $ffhGL$useIsSSR} from \"@react-aria/ssr\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n// Locale passed from server by PackageLocalizationProvider.\nconst $1e5a04cdaf7d1af8$var$localeSymbol = Symbol.for('react-aria.i18n.locale');\nfunction $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {\n let locale = typeof window !== 'undefined' && window[$1e5a04cdaf7d1af8$var$localeSymbol] || typeof navigator !== 'undefined' && (navigator.language || navigator.userLanguage) || 'en-US';\n try {\n Intl.DateTimeFormat.supportedLocalesOf([\n locale\n ]);\n } catch {\n locale = 'en-US';\n }\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? 'rtl' : 'ltr'\n };\n}\nlet $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\nlet $1e5a04cdaf7d1af8$var$listeners = new Set();\nfunction $1e5a04cdaf7d1af8$var$updateLocale() {\n $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\n for (let listener of $1e5a04cdaf7d1af8$var$listeners)listener($1e5a04cdaf7d1af8$var$currentLocale);\n}\nfunction $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a() {\n let isSSR = (0, $ffhGL$useIsSSR)();\n let [defaultLocale, setDefaultLocale] = (0, $ffhGL$useState)($1e5a04cdaf7d1af8$var$currentLocale);\n (0, $ffhGL$useEffect)(()=>{\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.addEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n $1e5a04cdaf7d1af8$var$listeners.add(setDefaultLocale);\n return ()=>{\n $1e5a04cdaf7d1af8$var$listeners.delete(setDefaultLocale);\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.removeEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n };\n }, []);\n // We cannot determine the browser's language on the server, so default to\n // en-US. This will be updated after hydration on the client to the correct value.\n if (isSSR) return {\n locale: 'en-US',\n direction: 'ltr'\n };\n return defaultLocale;\n}\n\n\nexport {$1e5a04cdaf7d1af8$export$f09106e7c6677ec5 as getDefaultLocale, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a as useDefaultLocale};\n//# sourceMappingURL=useDefaultLocale.module.js.map\n","import {isRTL as $148a7a147e38ea7f$export$702d680b21cbd764} from \"./utils.mjs\";\nimport {useDefaultLocale as $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a} from \"./useDefaultLocale.mjs\";\nimport $h9FiU$react, {useContext as $h9FiU$useContext} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $18f2051aff69b9bf$var$I18nContext = /*#__PURE__*/ (0, $h9FiU$react).createContext(null);\nfunction $18f2051aff69b9bf$export$a54013f0d02a8f82(props) {\n let { locale: locale, children: children } = props;\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let value = (0, $h9FiU$react).useMemo(()=>{\n if (!locale) return defaultLocale;\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? 'rtl' : 'ltr'\n };\n }, [\n defaultLocale,\n locale\n ]);\n return /*#__PURE__*/ (0, $h9FiU$react).createElement($18f2051aff69b9bf$var$I18nContext.Provider, {\n value: value\n }, children);\n}\nfunction $18f2051aff69b9bf$export$43bb16f9c6d9e3f7() {\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let context = (0, $h9FiU$useContext)($18f2051aff69b9bf$var$I18nContext);\n return context || defaultLocale;\n}\n\n\nexport {$18f2051aff69b9bf$export$a54013f0d02a8f82 as I18nProvider, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 as useLocale};\n//# sourceMappingURL=context.module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $5b160d28a433310d$var$localeSymbol = Symbol.for('react-aria.i18n.locale');\nconst $5b160d28a433310d$var$stringsSymbol = Symbol.for('react-aria.i18n.strings');\nlet $5b160d28a433310d$var$cachedGlobalStrings = undefined;\nclass $5b160d28a433310d$export$c17fa47878dc55b6 {\n /** Returns a localized string for the given key and locale. */ getStringForLocale(key, locale) {\n let strings = this.getStringsForLocale(locale);\n let string = strings[key];\n if (!string) throw new Error(`Could not find intl message ${key} in ${locale} locale`);\n return string;\n }\n /** Returns all localized strings for the given locale. */ getStringsForLocale(locale) {\n let strings = this.strings[locale];\n if (!strings) {\n strings = $5b160d28a433310d$var$getStringsForLocale(locale, this.strings, this.defaultLocale);\n this.strings[locale] = strings;\n }\n return strings;\n }\n static getGlobalDictionaryForPackage(packageName) {\n if (typeof window === 'undefined') return null;\n let locale = window[$5b160d28a433310d$var$localeSymbol];\n if ($5b160d28a433310d$var$cachedGlobalStrings === undefined) {\n let globalStrings = window[$5b160d28a433310d$var$stringsSymbol];\n if (!globalStrings) return null;\n $5b160d28a433310d$var$cachedGlobalStrings = {};\n for(let pkg in globalStrings)$5b160d28a433310d$var$cachedGlobalStrings[pkg] = new $5b160d28a433310d$export$c17fa47878dc55b6({\n [locale]: globalStrings[pkg]\n }, locale);\n }\n let dictionary = $5b160d28a433310d$var$cachedGlobalStrings === null || $5b160d28a433310d$var$cachedGlobalStrings === void 0 ? void 0 : $5b160d28a433310d$var$cachedGlobalStrings[packageName];\n if (!dictionary) throw new Error(`Strings for package \"${packageName}\" were not included by LocalizedStringProvider. Please add it to the list passed to createLocalizedStringDictionary.`);\n return dictionary;\n }\n constructor(messages, defaultLocale = 'en-US'){\n // Clone messages so we don't modify the original object.\n // Filter out entries with falsy values which may have been caused by applying optimize-locales-plugin.\n this.strings = Object.fromEntries(Object.entries(messages).filter(([, v])=>v));\n this.defaultLocale = defaultLocale;\n }\n}\nfunction $5b160d28a433310d$var$getStringsForLocale(locale, strings, defaultLocale = 'en-US') {\n // If there is an exact match, use it.\n if (strings[locale]) return strings[locale];\n // Attempt to find the closest match by language.\n // For example, if the locale is fr-CA (French Canadian), but there is only\n // an fr-FR (France) set of strings, use that.\n // This could be replaced with Intl.LocaleMatcher once it is supported.\n // https://github.com/tc39/proposal-intl-localematcher\n let language = $5b160d28a433310d$var$getLanguage(locale);\n if (strings[language]) return strings[language];\n for(let key in strings){\n if (key.startsWith(language + '-')) return strings[key];\n }\n // Nothing close, use english.\n return strings[defaultLocale];\n}\nfunction $5b160d28a433310d$var$getLanguage(locale) {\n // @ts-ignore\n if (Intl.Locale) // @ts-ignore\n return new Intl.Locale(locale).language;\n return locale.split('-')[0];\n}\n\n\nexport {$5b160d28a433310d$export$c17fa47878dc55b6 as LocalizedStringDictionary};\n//# sourceMappingURL=LocalizedStringDictionary.module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $6db58dc88e78b024$var$pluralRulesCache = new Map();\nconst $6db58dc88e78b024$var$numberFormatCache = new Map();\nclass $6db58dc88e78b024$export$2f817fcdc4b89ae0 {\n /** Formats a localized string for the given key with the provided variables. */ format(key, variables) {\n let message = this.strings.getStringForLocale(key, this.locale);\n return typeof message === 'function' ? message(variables, this) : message;\n }\n plural(count, options, type = 'cardinal') {\n let opt = options['=' + count];\n if (opt) return typeof opt === 'function' ? opt() : opt;\n let key = this.locale + ':' + type;\n let pluralRules = $6db58dc88e78b024$var$pluralRulesCache.get(key);\n if (!pluralRules) {\n pluralRules = new Intl.PluralRules(this.locale, {\n type: type\n });\n $6db58dc88e78b024$var$pluralRulesCache.set(key, pluralRules);\n }\n let selected = pluralRules.select(count);\n opt = options[selected] || options.other;\n return typeof opt === 'function' ? opt() : opt;\n }\n number(value) {\n let numberFormat = $6db58dc88e78b024$var$numberFormatCache.get(this.locale);\n if (!numberFormat) {\n numberFormat = new Intl.NumberFormat(this.locale);\n $6db58dc88e78b024$var$numberFormatCache.set(this.locale, numberFormat);\n }\n return numberFormat.format(value);\n }\n select(options, value) {\n let opt = options[value] || options.other;\n return typeof opt === 'function' ? opt() : opt;\n }\n constructor(locale, strings){\n this.locale = locale;\n this.strings = strings;\n }\n}\n\n\nexport {$6db58dc88e78b024$export$2f817fcdc4b89ae0 as LocalizedStringFormatter};\n//# sourceMappingURL=LocalizedStringFormatter.module.js.map\n","import {useLocale as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7} from \"./context.mjs\";\nimport {LocalizedStringDictionary as $6ksNp$LocalizedStringDictionary, LocalizedStringFormatter as $6ksNp$LocalizedStringFormatter} from \"@internationalized/string\";\nimport {useMemo as $6ksNp$useMemo} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $fca6afa0e843324b$var$cache = new WeakMap();\nfunction $fca6afa0e843324b$var$getCachedDictionary(strings) {\n let dictionary = $fca6afa0e843324b$var$cache.get(strings);\n if (!dictionary) {\n dictionary = new (0, $6ksNp$LocalizedStringDictionary)(strings);\n $fca6afa0e843324b$var$cache.set(strings, dictionary);\n }\n return dictionary;\n}\nfunction $fca6afa0e843324b$export$87b761675e8eaa10(strings, packageName) {\n return packageName && (0, $6ksNp$LocalizedStringDictionary).getGlobalDictionaryForPackage(packageName) || $fca6afa0e843324b$var$getCachedDictionary(strings);\n}\nfunction $fca6afa0e843324b$export$f12b703ca79dfbb1(strings, packageName) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let dictionary = $fca6afa0e843324b$export$87b761675e8eaa10(strings, packageName);\n return (0, $6ksNp$useMemo)(()=>new (0, $6ksNp$LocalizedStringFormatter)(locale, dictionary), [\n locale,\n dictionary\n ]);\n}\n\n\nexport {$fca6afa0e843324b$export$87b761675e8eaa10 as useLocalizedStringDictionary, $fca6afa0e843324b$export$f12b703ca79dfbb1 as useLocalizedStringFormatter};\n//# sourceMappingURL=useLocalizedStringFormatter.module.js.map\n","import {useLocale as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7} from \"./context.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nlet $325a3faab7a68acd$var$cache = new Map();\nfunction $325a3faab7a68acd$export$a16aca283550c30d(options) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : '');\n if ($325a3faab7a68acd$var$cache.has(cacheKey)) return $325a3faab7a68acd$var$cache.get(cacheKey);\n let formatter = new Intl.Collator(locale, options);\n $325a3faab7a68acd$var$cache.set(cacheKey, formatter);\n return formatter;\n}\n\n\nexport {$325a3faab7a68acd$export$a16aca283550c30d as useCollator};\n//# sourceMappingURL=useCollator.module.js.map\n","import {isWebKit as $fZVmS$isWebKit, clamp as $fZVmS$clamp} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $edcf132a9284368a$var$AXIS = {\n top: 'top',\n bottom: 'top',\n left: 'left',\n right: 'left'\n};\nconst $edcf132a9284368a$var$FLIPPED_DIRECTION = {\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left'\n};\nconst $edcf132a9284368a$var$CROSS_AXIS = {\n top: 'left',\n left: 'top'\n};\nconst $edcf132a9284368a$var$AXIS_SIZE = {\n top: 'height',\n left: 'width'\n};\nconst $edcf132a9284368a$var$TOTAL_SIZE = {\n width: 'totalWidth',\n height: 'totalHeight'\n};\nconst $edcf132a9284368a$var$PARSED_PLACEMENT_CACHE = {};\nlet $edcf132a9284368a$var$visualViewport = typeof document !== 'undefined' ? window.visualViewport : null;\nfunction $edcf132a9284368a$var$getContainerDimensions(containerNode) {\n let width = 0, height = 0, totalWidth = 0, totalHeight = 0, top = 0, left = 0;\n let scroll = {};\n var _visualViewport_scale;\n let isPinchZoomedIn = ((_visualViewport_scale = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.scale) !== null && _visualViewport_scale !== void 0 ? _visualViewport_scale : 1) > 1;\n if (containerNode.tagName === 'BODY') {\n let documentElement = document.documentElement;\n totalWidth = documentElement.clientWidth;\n totalHeight = documentElement.clientHeight;\n var _visualViewport_width;\n width = (_visualViewport_width = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.width) !== null && _visualViewport_width !== void 0 ? _visualViewport_width : totalWidth;\n var _visualViewport_height;\n height = (_visualViewport_height = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.height) !== null && _visualViewport_height !== void 0 ? _visualViewport_height : totalHeight;\n scroll.top = documentElement.scrollTop || containerNode.scrollTop;\n scroll.left = documentElement.scrollLeft || containerNode.scrollLeft;\n // The goal of the below is to get a top/left value that represents the top/left of the visual viewport with\n // respect to the layout viewport origin. This combined with the scrollTop/scrollLeft will allow us to calculate\n // coordinates/values with respect to the visual viewport or with respect to the layout viewport.\n if ($edcf132a9284368a$var$visualViewport) {\n top = $edcf132a9284368a$var$visualViewport.offsetTop;\n left = $edcf132a9284368a$var$visualViewport.offsetLeft;\n }\n } else {\n ({ width: width, height: height, top: top, left: left } = $edcf132a9284368a$var$getOffset(containerNode));\n scroll.top = containerNode.scrollTop;\n scroll.left = containerNode.scrollLeft;\n totalWidth = width;\n totalHeight = height;\n }\n if ((0, $fZVmS$isWebKit)() && (containerNode.tagName === 'BODY' || containerNode.tagName === 'HTML') && isPinchZoomedIn) {\n // Safari will report a non-zero scrollTop/Left for the non-scrolling body/HTML element when pinch zoomed in unlike other browsers.\n // Set to zero for parity calculations so we get consistent positioning of overlays across all browsers.\n // Also switch to visualViewport.pageTop/pageLeft so that we still accomodate for scroll positioning for body/HTML elements that are actually scrollable\n // before pinch zoom happens\n scroll.top = 0;\n scroll.left = 0;\n var _visualViewport_pageTop;\n top = (_visualViewport_pageTop = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.pageTop) !== null && _visualViewport_pageTop !== void 0 ? _visualViewport_pageTop : 0;\n var _visualViewport_pageLeft;\n left = (_visualViewport_pageLeft = $edcf132a9284368a$var$visualViewport === null || $edcf132a9284368a$var$visualViewport === void 0 ? void 0 : $edcf132a9284368a$var$visualViewport.pageLeft) !== null && _visualViewport_pageLeft !== void 0 ? _visualViewport_pageLeft : 0;\n }\n return {\n width: width,\n height: height,\n totalWidth: totalWidth,\n totalHeight: totalHeight,\n scroll: scroll,\n top: top,\n left: left\n };\n}\nfunction $edcf132a9284368a$var$getScroll(node) {\n return {\n top: node.scrollTop,\n left: node.scrollLeft,\n width: node.scrollWidth,\n height: node.scrollHeight\n };\n}\n// Determines the amount of space required when moving the overlay to ensure it remains in the boundary\nfunction $edcf132a9284368a$var$getDelta(axis, offset, size, // The dimensions of the boundary element that the popover is\n// positioned within (most of the time this is the <body>).\nboundaryDimensions, // The dimensions of the containing block element that the popover is\n// positioned relative to (e.g. parent with position: relative).\n// Usually this is the same as the boundary element, but if the popover\n// is portaled somewhere other than the body and has an ancestor with\n// position: relative/absolute, it will be different.\ncontainerDimensions, padding, containerOffsetWithBoundary) {\n var _containerDimensions_scroll_axis;\n let containerScroll = (_containerDimensions_scroll_axis = containerDimensions.scroll[axis]) !== null && _containerDimensions_scroll_axis !== void 0 ? _containerDimensions_scroll_axis : 0;\n // The height/width of the boundary. Matches the axis along which we are adjusting the overlay position\n let boundarySize = boundaryDimensions[$edcf132a9284368a$var$AXIS_SIZE[axis]];\n // Calculate the edges of the boundary (accomodating for the boundary padding) and the edges of the overlay.\n // Note that these values are with respect to the visual viewport (aka 0,0 is the top left of the viewport)\n let boundaryStartEdge = boundaryDimensions.scroll[$edcf132a9284368a$var$AXIS[axis]] + padding;\n let boundaryEndEdge = boundarySize + boundaryDimensions.scroll[$edcf132a9284368a$var$AXIS[axis]] - padding;\n let startEdgeOffset = offset - containerScroll + containerOffsetWithBoundary[axis] - boundaryDimensions[$edcf132a9284368a$var$AXIS[axis]];\n let endEdgeOffset = offset - containerScroll + size + containerOffsetWithBoundary[axis] - boundaryDimensions[$edcf132a9284368a$var$AXIS[axis]];\n // If any of the overlay edges falls outside of the boundary, shift the overlay the required amount to align one of the overlay's\n // edges with the closest boundary edge.\n if (startEdgeOffset < boundaryStartEdge) return boundaryStartEdge - startEdgeOffset;\n else if (endEdgeOffset > boundaryEndEdge) return Math.max(boundaryEndEdge - endEdgeOffset, boundaryStartEdge - startEdgeOffset);\n else return 0;\n}\nfunction $edcf132a9284368a$var$getMargins(node) {\n let style = window.getComputedStyle(node);\n return {\n top: parseInt(style.marginTop, 10) || 0,\n bottom: parseInt(style.marginBottom, 10) || 0,\n left: parseInt(style.marginLeft, 10) || 0,\n right: parseInt(style.marginRight, 10) || 0\n };\n}\nfunction $edcf132a9284368a$var$parsePlacement(input) {\n if ($edcf132a9284368a$var$PARSED_PLACEMENT_CACHE[input]) return $edcf132a9284368a$var$PARSED_PLACEMENT_CACHE[input];\n let [placement, crossPlacement] = input.split(' ');\n let axis = $edcf132a9284368a$var$AXIS[placement] || 'right';\n let crossAxis = $edcf132a9284368a$var$CROSS_AXIS[axis];\n if (!$edcf132a9284368a$var$AXIS[crossPlacement]) crossPlacement = 'center';\n let size = $edcf132a9284368a$var$AXIS_SIZE[axis];\n let crossSize = $edcf132a9284368a$var$AXIS_SIZE[crossAxis];\n $edcf132a9284368a$var$PARSED_PLACEMENT_CACHE[input] = {\n placement: placement,\n crossPlacement: crossPlacement,\n axis: axis,\n crossAxis: crossAxis,\n size: size,\n crossSize: crossSize\n };\n return $edcf132a9284368a$var$PARSED_PLACEMENT_CACHE[input];\n}\nfunction $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned, arrowSize, arrowBoundaryOffset) {\n let { placement: placement, crossPlacement: crossPlacement, axis: axis, crossAxis: crossAxis, size: size, crossSize: crossSize } = placementInfo;\n let position = {};\n var _childOffset_crossAxis;\n // button position\n position[crossAxis] = (_childOffset_crossAxis = childOffset[crossAxis]) !== null && _childOffset_crossAxis !== void 0 ? _childOffset_crossAxis : 0;\n var _childOffset_crossSize, _overlaySize_crossSize, _childOffset_crossSize1, _overlaySize_crossSize1;\n if (crossPlacement === 'center') // + (button size / 2) - (overlay size / 2)\n // at this point the overlay center should match the button center\n position[crossAxis] += (((_childOffset_crossSize = childOffset[crossSize]) !== null && _childOffset_crossSize !== void 0 ? _childOffset_crossSize : 0) - ((_overlaySize_crossSize = overlaySize[crossSize]) !== null && _overlaySize_crossSize !== void 0 ? _overlaySize_crossSize : 0)) / 2;\n else if (crossPlacement !== crossAxis) // + (button size) - (overlay size)\n // at this point the overlay bottom should match the button bottom\n position[crossAxis] += ((_childOffset_crossSize1 = childOffset[crossSize]) !== null && _childOffset_crossSize1 !== void 0 ? _childOffset_crossSize1 : 0) - ((_overlaySize_crossSize1 = overlaySize[crossSize]) !== null && _overlaySize_crossSize1 !== void 0 ? _overlaySize_crossSize1 : 0);\n /* else {\n the overlay top should match the button top\n } */ \n position[crossAxis] += crossOffset;\n // overlay top overlapping arrow with button bottom\n const minPosition = childOffset[crossAxis] - overlaySize[crossSize] + arrowSize + arrowBoundaryOffset;\n // overlay bottom overlapping arrow with button top\n const maxPosition = childOffset[crossAxis] + childOffset[crossSize] - arrowSize - arrowBoundaryOffset;\n position[crossAxis] = (0, $fZVmS$clamp)(position[crossAxis], minPosition, maxPosition);\n // Floor these so the position isn't placed on a partial pixel, only whole pixels. Shouldn't matter if it was floored or ceiled, so chose one.\n if (placement === axis) {\n // If the container is positioned (non-static), then we use the container's actual\n // height, as `bottom` will be relative to this height. But if the container is static,\n // then it can only be the `document.body`, and `bottom` will be relative to _its_\n // container, which should be as large as boundaryDimensions.\n const containerHeight = isContainerPositioned ? containerOffsetWithBoundary[size] : boundaryDimensions[$edcf132a9284368a$var$TOTAL_SIZE[size]];\n position[$edcf132a9284368a$var$FLIPPED_DIRECTION[axis]] = Math.floor(containerHeight - childOffset[axis] + offset);\n } else position[axis] = Math.floor(childOffset[axis] + childOffset[size] + offset);\n return position;\n}\nfunction $edcf132a9284368a$var$getMaxHeight(position, boundaryDimensions, containerOffsetWithBoundary, isContainerPositioned, margins, padding, overlayHeight, heightGrowthDirection) {\n const containerHeight = isContainerPositioned ? containerOffsetWithBoundary.height : boundaryDimensions[$edcf132a9284368a$var$TOTAL_SIZE.height];\n var _position_bottom;\n // For cases where position is set via \"bottom\" instead of \"top\", we need to calculate the true overlay top with respect to the boundary. Reverse calculate this with the same method\n // used in computePosition.\n let overlayTop = position.top != null ? containerOffsetWithBoundary.top + position.top : containerOffsetWithBoundary.top + (containerHeight - ((_position_bottom = position.bottom) !== null && _position_bottom !== void 0 ? _position_bottom : 0) - overlayHeight);\n var _boundaryDimensions_scroll_top, _margins_top, _margins_bottom, _boundaryDimensions_scroll_top1, _margins_top1, _margins_bottom1;\n let maxHeight = heightGrowthDirection !== 'top' ? // We want the distance between the top of the overlay to the bottom of the boundary\n Math.max(0, boundaryDimensions.height + boundaryDimensions.top + ((_boundaryDimensions_scroll_top = boundaryDimensions.scroll.top) !== null && _boundaryDimensions_scroll_top !== void 0 ? _boundaryDimensions_scroll_top : 0) - overlayTop // this is the top of the overlay\n - (((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0) + padding // save additional space for margin and padding\n )) : Math.max(0, overlayTop + overlayHeight // this is the bottom of the overlay\n - (boundaryDimensions.top + ((_boundaryDimensions_scroll_top1 = boundaryDimensions.scroll.top) !== null && _boundaryDimensions_scroll_top1 !== void 0 ? _boundaryDimensions_scroll_top1 : 0) // this is the top of the boundary\n ) - (((_margins_top1 = margins.top) !== null && _margins_top1 !== void 0 ? _margins_top1 : 0) + ((_margins_bottom1 = margins.bottom) !== null && _margins_bottom1 !== void 0 ? _margins_bottom1 : 0) + padding // save additional space for margin and padding\n ));\n return Math.min(boundaryDimensions.height - padding * 2, maxHeight);\n}\nfunction $edcf132a9284368a$var$getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding, placementInfo) {\n let { placement: placement, axis: axis, size: size } = placementInfo;\n var _boundaryDimensions_scroll_axis, _margins_axis;\n if (placement === axis) return Math.max(0, childOffset[axis] - boundaryDimensions[axis] - ((_boundaryDimensions_scroll_axis = boundaryDimensions.scroll[axis]) !== null && _boundaryDimensions_scroll_axis !== void 0 ? _boundaryDimensions_scroll_axis : 0) + containerOffsetWithBoundary[axis] - ((_margins_axis = margins[axis]) !== null && _margins_axis !== void 0 ? _margins_axis : 0) - margins[$edcf132a9284368a$var$FLIPPED_DIRECTION[axis]] - padding);\n var _margins_axis1;\n return Math.max(0, boundaryDimensions[size] + boundaryDimensions[axis] + boundaryDimensions.scroll[axis] - containerOffsetWithBoundary[axis] - childOffset[axis] - childOffset[size] - ((_margins_axis1 = margins[axis]) !== null && _margins_axis1 !== void 0 ? _margins_axis1 : 0) - margins[$edcf132a9284368a$var$FLIPPED_DIRECTION[axis]] - padding);\n}\nfunction $edcf132a9284368a$export$6839422d1f33cee9(placementInput, childOffset, overlaySize, scrollSize, margins, padding, flip, boundaryDimensions, containerDimensions, containerOffsetWithBoundary, offset, crossOffset, isContainerPositioned, userSetMaxHeight, arrowSize, arrowBoundaryOffset) {\n let placementInfo = $edcf132a9284368a$var$parsePlacement(placementInput);\n let { size: size, crossAxis: crossAxis, crossSize: crossSize, placement: placement, crossPlacement: crossPlacement } = placementInfo;\n let position = $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned, arrowSize, arrowBoundaryOffset);\n let normalizedOffset = offset;\n let space = $edcf132a9284368a$var$getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, placementInfo);\n // Check if the scroll size of the overlay is greater than the available space to determine if we need to flip\n if (flip && scrollSize[size] > space) {\n let flippedPlacementInfo = $edcf132a9284368a$var$parsePlacement(`${$edcf132a9284368a$var$FLIPPED_DIRECTION[placement]} ${crossPlacement}`);\n let flippedPosition = $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions, overlaySize, flippedPlacementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned, arrowSize, arrowBoundaryOffset);\n let flippedSpace = $edcf132a9284368a$var$getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, flippedPlacementInfo);\n // If the available space for the flipped position is greater than the original available space, flip.\n if (flippedSpace > space) {\n placementInfo = flippedPlacementInfo;\n position = flippedPosition;\n normalizedOffset = offset;\n }\n }\n // Determine the direction the height of the overlay can grow so that we can choose how to calculate the max height\n let heightGrowthDirection = 'bottom';\n if (placementInfo.axis === 'top') {\n if (placementInfo.placement === 'top') heightGrowthDirection = 'top';\n else if (placementInfo.placement === 'bottom') heightGrowthDirection = 'bottom';\n } else if (placementInfo.crossAxis === 'top') {\n if (placementInfo.crossPlacement === 'top') heightGrowthDirection = 'bottom';\n else if (placementInfo.crossPlacement === 'bottom') heightGrowthDirection = 'top';\n }\n let delta = $edcf132a9284368a$var$getDelta(crossAxis, position[crossAxis], overlaySize[crossSize], boundaryDimensions, containerDimensions, padding, containerOffsetWithBoundary);\n position[crossAxis] += delta;\n let maxHeight = $edcf132a9284368a$var$getMaxHeight(position, boundaryDimensions, containerOffsetWithBoundary, isContainerPositioned, margins, padding, overlaySize.height, heightGrowthDirection);\n if (userSetMaxHeight && userSetMaxHeight < maxHeight) maxHeight = userSetMaxHeight;\n overlaySize.height = Math.min(overlaySize.height, maxHeight);\n position = $edcf132a9284368a$var$computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, normalizedOffset, crossOffset, containerOffsetWithBoundary, isContainerPositioned, arrowSize, arrowBoundaryOffset);\n delta = $edcf132a9284368a$var$getDelta(crossAxis, position[crossAxis], overlaySize[crossSize], boundaryDimensions, containerDimensions, padding, containerOffsetWithBoundary);\n position[crossAxis] += delta;\n let arrowPosition = {};\n // All values are transformed so that 0 is at the top/left of the overlay depending on the orientation\n // Prefer the arrow being in the center of the trigger/overlay anchor element\n // childOffset[crossAxis] + .5 * childOffset[crossSize] = absolute position with respect to the trigger's coordinate system that would place the arrow in the center of the trigger\n // position[crossAxis] - margins[AXIS[crossAxis]] = value use to transform the position to a value with respect to the overlay's coordinate system. A child element's (aka arrow) position absolute's \"0\"\n // is positioned after the margin of its parent (aka overlay) so we need to subtract it to get the proper coordinate transform\n let preferredArrowPosition = childOffset[crossAxis] + .5 * childOffset[crossSize] - position[crossAxis] - margins[$edcf132a9284368a$var$AXIS[crossAxis]];\n // Min/Max position limits for the arrow with respect to the overlay\n const arrowMinPosition = arrowSize / 2 + arrowBoundaryOffset;\n var _margins_left, _margins_right, _margins_top, _margins_bottom;\n // overlaySize[crossSize] - margins = true size of the overlay\n const overlayMargin = $edcf132a9284368a$var$AXIS[crossAxis] === 'left' ? ((_margins_left = margins.left) !== null && _margins_left !== void 0 ? _margins_left : 0) + ((_margins_right = margins.right) !== null && _margins_right !== void 0 ? _margins_right : 0) : ((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0);\n const arrowMaxPosition = overlaySize[crossSize] - overlayMargin - arrowSize / 2 - arrowBoundaryOffset;\n // Min/Max position limits for the arrow with respect to the trigger/overlay anchor element\n // Same margin accomodation done here as well as for the preferredArrowPosition\n const arrowOverlappingChildMinEdge = childOffset[crossAxis] + arrowSize / 2 - (position[crossAxis] + margins[$edcf132a9284368a$var$AXIS[crossAxis]]);\n const arrowOverlappingChildMaxEdge = childOffset[crossAxis] + childOffset[crossSize] - arrowSize / 2 - (position[crossAxis] + margins[$edcf132a9284368a$var$AXIS[crossAxis]]);\n // Clamp the arrow positioning so that it always is within the bounds of the anchor and the overlay\n const arrowPositionOverlappingChild = (0, $fZVmS$clamp)(preferredArrowPosition, arrowOverlappingChildMinEdge, arrowOverlappingChildMaxEdge);\n arrowPosition[crossAxis] = (0, $fZVmS$clamp)(arrowPositionOverlappingChild, arrowMinPosition, arrowMaxPosition);\n return {\n position: position,\n maxHeight: maxHeight,\n arrowOffsetLeft: arrowPosition.left,\n arrowOffsetTop: arrowPosition.top,\n placement: placementInfo.placement\n };\n}\nfunction $edcf132a9284368a$export$b3ceb0cbf1056d98(opts) {\n let { placement: placement, targetNode: targetNode, overlayNode: overlayNode, scrollNode: scrollNode, padding: padding, shouldFlip: shouldFlip, boundaryElement: boundaryElement, offset: offset, crossOffset: crossOffset, maxHeight: maxHeight, arrowSize: arrowSize = 0, arrowBoundaryOffset: arrowBoundaryOffset = 0 } = opts;\n let container = overlayNode instanceof HTMLElement ? $edcf132a9284368a$var$getContainingBlock(overlayNode) : document.documentElement;\n let isViewportContainer = container === document.documentElement;\n const containerPositionStyle = window.getComputedStyle(container).position;\n let isContainerPositioned = !!containerPositionStyle && containerPositionStyle !== 'static';\n let childOffset = isViewportContainer ? $edcf132a9284368a$var$getOffset(targetNode) : $edcf132a9284368a$var$getPosition(targetNode, container);\n if (!isViewportContainer) {\n let { marginTop: marginTop, marginLeft: marginLeft } = window.getComputedStyle(targetNode);\n childOffset.top += parseInt(marginTop, 10) || 0;\n childOffset.left += parseInt(marginLeft, 10) || 0;\n }\n let overlaySize = $edcf132a9284368a$var$getOffset(overlayNode);\n let margins = $edcf132a9284368a$var$getMargins(overlayNode);\n var _margins_left, _margins_right;\n overlaySize.width += ((_margins_left = margins.left) !== null && _margins_left !== void 0 ? _margins_left : 0) + ((_margins_right = margins.right) !== null && _margins_right !== void 0 ? _margins_right : 0);\n var _margins_top, _margins_bottom;\n overlaySize.height += ((_margins_top = margins.top) !== null && _margins_top !== void 0 ? _margins_top : 0) + ((_margins_bottom = margins.bottom) !== null && _margins_bottom !== void 0 ? _margins_bottom : 0);\n let scrollSize = $edcf132a9284368a$var$getScroll(scrollNode);\n let boundaryDimensions = $edcf132a9284368a$var$getContainerDimensions(boundaryElement);\n let containerDimensions = $edcf132a9284368a$var$getContainerDimensions(container);\n // If the container is the HTML element wrapping the body element, the retrieved scrollTop/scrollLeft will be equal to the\n // body element's scroll. Set the container's scroll values to 0 since the overlay's edge position value in getDelta don't then need to be further offset\n // by the container scroll since they are essentially the same containing element and thus in the same coordinate system\n let containerOffsetWithBoundary = boundaryElement.tagName === 'BODY' ? $edcf132a9284368a$var$getOffset(container) : $edcf132a9284368a$var$getPosition(container, boundaryElement);\n if (container.tagName === 'HTML' && boundaryElement.tagName === 'BODY') {\n containerDimensions.scroll.top = 0;\n containerDimensions.scroll.left = 0;\n }\n return $edcf132a9284368a$export$6839422d1f33cee9(placement, childOffset, overlaySize, scrollSize, margins, padding, shouldFlip, boundaryDimensions, containerDimensions, containerOffsetWithBoundary, offset, crossOffset, isContainerPositioned, maxHeight, arrowSize, arrowBoundaryOffset);\n}\nfunction $edcf132a9284368a$var$getOffset(node) {\n let { top: top, left: left, width: width, height: height } = node.getBoundingClientRect();\n let { scrollTop: scrollTop, scrollLeft: scrollLeft, clientTop: clientTop, clientLeft: clientLeft } = document.documentElement;\n return {\n top: top + scrollTop - clientTop,\n left: left + scrollLeft - clientLeft,\n width: width,\n height: height\n };\n}\nfunction $edcf132a9284368a$var$getPosition(node, parent) {\n let style = window.getComputedStyle(node);\n let offset;\n if (style.position === 'fixed') {\n let { top: top, left: left, width: width, height: height } = node.getBoundingClientRect();\n offset = {\n top: top,\n left: left,\n width: width,\n height: height\n };\n } else {\n offset = $edcf132a9284368a$var$getOffset(node);\n let parentOffset = $edcf132a9284368a$var$getOffset(parent);\n let parentStyle = window.getComputedStyle(parent);\n parentOffset.top += (parseInt(parentStyle.borderTopWidth, 10) || 0) - parent.scrollTop;\n parentOffset.left += (parseInt(parentStyle.borderLeftWidth, 10) || 0) - parent.scrollLeft;\n offset.top -= parentOffset.top;\n offset.left -= parentOffset.left;\n }\n offset.top -= parseInt(style.marginTop, 10) || 0;\n offset.left -= parseInt(style.marginLeft, 10) || 0;\n return offset;\n}\n// Returns the containing block of an element, which is the element that\n// this element will be positioned relative to.\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block\nfunction $edcf132a9284368a$var$getContainingBlock(node) {\n // The offsetParent of an element in most cases equals the containing block.\n // https://w3c.github.io/csswg-drafts/cssom-view/#dom-htmlelement-offsetparent\n let offsetParent = node.offsetParent;\n // The offsetParent algorithm terminates at the document body,\n // even if the body is not a containing block. Double check that\n // and use the documentElement if so.\n if (offsetParent && offsetParent === document.body && window.getComputedStyle(offsetParent).position === 'static' && !$edcf132a9284368a$var$isContainingBlock(offsetParent)) offsetParent = document.documentElement;\n // TODO(later): handle table elements?\n // The offsetParent can be null if the element has position: fixed, or a few other cases.\n // We have to walk up the tree manually in this case because fixed positioned elements\n // are still positioned relative to their containing block, which is not always the viewport.\n if (offsetParent == null) {\n offsetParent = node.parentElement;\n while(offsetParent && !$edcf132a9284368a$var$isContainingBlock(offsetParent))offsetParent = offsetParent.parentElement;\n }\n // Fall back to the viewport.\n return offsetParent || document.documentElement;\n}\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\nfunction $edcf132a9284368a$var$isContainingBlock(node) {\n let style = window.getComputedStyle(node);\n return style.transform !== 'none' || /transform|perspective/.test(style.willChange) || style.filter !== 'none' || style.contain === 'paint' || 'backdropFilter' in style && style.backdropFilter !== 'none' || 'WebkitBackdropFilter' in style && style.WebkitBackdropFilter !== 'none';\n}\n\n\nexport {$edcf132a9284368a$export$6839422d1f33cee9 as calculatePositionInternal, $edcf132a9284368a$export$b3ceb0cbf1056d98 as calculatePosition};\n//# sourceMappingURL=calculatePosition.module.js.map\n","import {useEffect as $dRVb8$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $dd149f63282afbbf$export$f6211563215e3b37 = new WeakMap();\nfunction $dd149f63282afbbf$export$18fc8428861184da(opts) {\n let { triggerRef: triggerRef, isOpen: isOpen, onClose: onClose } = opts;\n (0, $dRVb8$useEffect)(()=>{\n if (!isOpen || onClose === null) return;\n let onScroll = (e)=>{\n // Ignore if scrolling an scrollable region outside the trigger's tree.\n let target = e.target;\n // window is not a Node and doesn't have contain, but window contains everything\n if (!triggerRef.current || target instanceof Node && !target.contains(triggerRef.current)) return;\n // Ignore scroll events on any input or textarea as the cursor position can cause it to scroll\n // such as in a combobox. Clicking the dropdown button places focus on the input, and if the\n // text inside the input extends beyond the 'end', then it will scroll so the cursor is visible at the end.\n if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement) return;\n let onCloseHandler = onClose || $dd149f63282afbbf$export$f6211563215e3b37.get(triggerRef.current);\n if (onCloseHandler) onCloseHandler();\n };\n window.addEventListener('scroll', onScroll, true);\n return ()=>{\n window.removeEventListener('scroll', onScroll, true);\n };\n }, [\n isOpen,\n onClose,\n triggerRef\n ]);\n}\n\n\nexport {$dd149f63282afbbf$export$f6211563215e3b37 as onCloseMap, $dd149f63282afbbf$export$18fc8428861184da as useCloseOnScroll};\n//# sourceMappingURL=useCloseOnScroll.module.js.map\n","import {calculatePosition as $edcf132a9284368a$export$b3ceb0cbf1056d98} from \"./calculatePosition.mjs\";\nimport {useCloseOnScroll as $dd149f63282afbbf$export$18fc8428861184da} from \"./useCloseOnScroll.mjs\";\nimport {useState as $39EOa$useState, useRef as $39EOa$useRef, useEffect as $39EOa$useEffect, useCallback as $39EOa$useCallback} from \"react\";\nimport {useLayoutEffect as $39EOa$useLayoutEffect, useResizeObserver as $39EOa$useResizeObserver} from \"@react-aria/utils\";\nimport {useLocale as $39EOa$useLocale} from \"@react-aria/i18n\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nlet $2a41e45df1593e64$var$visualViewport = typeof document !== 'undefined' ? window.visualViewport : null;\nfunction $2a41e45df1593e64$export$d39e1813b3bdd0e1(props) {\n let { direction: direction } = (0, $39EOa$useLocale)();\n let { arrowSize: arrowSize = 0, targetRef: targetRef, overlayRef: overlayRef, scrollRef: scrollRef = overlayRef, placement: placement = 'bottom', containerPadding: containerPadding = 12, shouldFlip: shouldFlip = true, boundaryElement: boundaryElement = typeof document !== 'undefined' ? document.body : null, offset: offset = 0, crossOffset: crossOffset = 0, shouldUpdatePosition: shouldUpdatePosition = true, isOpen: isOpen = true, onClose: onClose, maxHeight: maxHeight, arrowBoundaryOffset: arrowBoundaryOffset = 0 } = props;\n let [position, setPosition] = (0, $39EOa$useState)(null);\n let deps = [\n shouldUpdatePosition,\n placement,\n overlayRef.current,\n targetRef.current,\n scrollRef.current,\n containerPadding,\n shouldFlip,\n boundaryElement,\n offset,\n crossOffset,\n isOpen,\n direction,\n maxHeight,\n arrowBoundaryOffset,\n arrowSize\n ];\n // Note, the position freezing breaks if body sizes itself dynamicly with the visual viewport but that might\n // just be a non-realistic use case\n // Upon opening a overlay, record the current visual viewport scale so we can freeze the overlay styles\n let lastScale = (0, $39EOa$useRef)($2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.scale);\n (0, $39EOa$useEffect)(()=>{\n if (isOpen) lastScale.current = $2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.scale;\n }, [\n isOpen\n ]);\n let updatePosition = (0, $39EOa$useCallback)(()=>{\n if (shouldUpdatePosition === false || !isOpen || !overlayRef.current || !targetRef.current || !boundaryElement) return;\n if (($2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.scale) !== lastScale.current) return;\n // Determine a scroll anchor based on the focused element.\n // This stores the offset of the anchor element from the scroll container\n // so it can be restored after repositioning. This way if the overlay height\n // changes, the focused element appears to stay in the same position.\n let anchor = null;\n if (scrollRef.current && scrollRef.current.contains(document.activeElement)) {\n var _document_activeElement;\n let anchorRect = (_document_activeElement = document.activeElement) === null || _document_activeElement === void 0 ? void 0 : _document_activeElement.getBoundingClientRect();\n let scrollRect = scrollRef.current.getBoundingClientRect();\n var _anchorRect_top;\n // Anchor from the top if the offset is in the top half of the scrollable element,\n // otherwise anchor from the bottom.\n anchor = {\n type: 'top',\n offset: ((_anchorRect_top = anchorRect === null || anchorRect === void 0 ? void 0 : anchorRect.top) !== null && _anchorRect_top !== void 0 ? _anchorRect_top : 0) - scrollRect.top\n };\n if (anchor.offset > scrollRect.height / 2) {\n anchor.type = 'bottom';\n var _anchorRect_bottom;\n anchor.offset = ((_anchorRect_bottom = anchorRect === null || anchorRect === void 0 ? void 0 : anchorRect.bottom) !== null && _anchorRect_bottom !== void 0 ? _anchorRect_bottom : 0) - scrollRect.bottom;\n }\n }\n // Always reset the overlay's previous max height if not defined by the user so that we can compensate for\n // RAC collections populating after a second render and properly set a correct max height + positioning when it populates.\n let overlay = overlayRef.current;\n if (!maxHeight && overlayRef.current) {\n var _window_visualViewport;\n overlay.style.top = '0px';\n overlay.style.bottom = '';\n var _window_visualViewport_height;\n overlay.style.maxHeight = ((_window_visualViewport_height = (_window_visualViewport = window.visualViewport) === null || _window_visualViewport === void 0 ? void 0 : _window_visualViewport.height) !== null && _window_visualViewport_height !== void 0 ? _window_visualViewport_height : window.innerHeight) + 'px';\n }\n let position = (0, $edcf132a9284368a$export$b3ceb0cbf1056d98)({\n placement: $2a41e45df1593e64$var$translateRTL(placement, direction),\n overlayNode: overlayRef.current,\n targetNode: targetRef.current,\n scrollNode: scrollRef.current || overlayRef.current,\n padding: containerPadding,\n shouldFlip: shouldFlip,\n boundaryElement: boundaryElement,\n offset: offset,\n crossOffset: crossOffset,\n maxHeight: maxHeight,\n arrowSize: arrowSize,\n arrowBoundaryOffset: arrowBoundaryOffset\n });\n if (!position.position) return;\n // Modify overlay styles directly so positioning happens immediately without the need of a second render\n // This is so we don't have to delay autoFocus scrolling or delay applying preventScroll for popovers\n overlay.style.top = '';\n overlay.style.bottom = '';\n overlay.style.left = '';\n overlay.style.right = '';\n Object.keys(position.position).forEach((key)=>overlay.style[key] = position.position[key] + 'px');\n overlay.style.maxHeight = position.maxHeight != null ? position.maxHeight + 'px' : '';\n // Restore scroll position relative to anchor element.\n if (anchor && document.activeElement && scrollRef.current) {\n let anchorRect = document.activeElement.getBoundingClientRect();\n let scrollRect = scrollRef.current.getBoundingClientRect();\n let newOffset = anchorRect[anchor.type] - scrollRect[anchor.type];\n scrollRef.current.scrollTop += newOffset - anchor.offset;\n }\n // Trigger a set state for a second render anyway for arrow positioning\n setPosition(position);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n // Update position when anything changes\n // eslint-disable-next-line react-hooks/exhaustive-deps\n (0, $39EOa$useLayoutEffect)(updatePosition, deps);\n // Update position on window resize\n $2a41e45df1593e64$var$useResize(updatePosition);\n // Update position when the overlay changes size (might need to flip).\n (0, $39EOa$useResizeObserver)({\n ref: overlayRef,\n onResize: updatePosition\n });\n // Update position when the target changes size (might need to flip).\n (0, $39EOa$useResizeObserver)({\n ref: targetRef,\n onResize: updatePosition\n });\n // Reposition the overlay and do not close on scroll while the visual viewport is resizing.\n // This will ensure that overlays adjust their positioning when the iOS virtual keyboard appears.\n let isResizing = (0, $39EOa$useRef)(false);\n (0, $39EOa$useLayoutEffect)(()=>{\n let timeout;\n let onResize = ()=>{\n isResizing.current = true;\n clearTimeout(timeout);\n timeout = setTimeout(()=>{\n isResizing.current = false;\n }, 500);\n updatePosition();\n };\n // Only reposition the overlay if a scroll event happens immediately as a result of resize (aka the virtual keyboard has appears)\n // We don't want to reposition the overlay if the user has pinch zoomed in and is scrolling the viewport around.\n let onScroll = ()=>{\n if (isResizing.current) onResize();\n };\n $2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.addEventListener('resize', onResize);\n $2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.addEventListener('scroll', onScroll);\n return ()=>{\n $2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.removeEventListener('resize', onResize);\n $2a41e45df1593e64$var$visualViewport === null || $2a41e45df1593e64$var$visualViewport === void 0 ? void 0 : $2a41e45df1593e64$var$visualViewport.removeEventListener('scroll', onScroll);\n };\n }, [\n updatePosition\n ]);\n let close = (0, $39EOa$useCallback)(()=>{\n if (!isResizing.current) onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [\n onClose,\n isResizing\n ]);\n // When scrolling a parent scrollable region of the trigger (other than the body),\n // we hide the popover. Otherwise, its position would be incorrect.\n (0, $dd149f63282afbbf$export$18fc8428861184da)({\n triggerRef: targetRef,\n isOpen: isOpen,\n onClose: onClose && close\n });\n var _position_maxHeight, _position_placement;\n return {\n overlayProps: {\n style: {\n position: 'absolute',\n zIndex: 100000,\n ...position === null || position === void 0 ? void 0 : position.position,\n maxHeight: (_position_maxHeight = position === null || position === void 0 ? void 0 : position.maxHeight) !== null && _position_maxHeight !== void 0 ? _position_maxHeight : '100vh'\n }\n },\n placement: (_position_placement = position === null || position === void 0 ? void 0 : position.placement) !== null && _position_placement !== void 0 ? _position_placement : null,\n arrowProps: {\n 'aria-hidden': 'true',\n role: 'presentation',\n style: {\n left: position === null || position === void 0 ? void 0 : position.arrowOffsetLeft,\n top: position === null || position === void 0 ? void 0 : position.arrowOffsetTop\n }\n },\n updatePosition: updatePosition\n };\n}\nfunction $2a41e45df1593e64$var$useResize(onResize) {\n (0, $39EOa$useLayoutEffect)(()=>{\n window.addEventListener('resize', onResize, false);\n return ()=>{\n window.removeEventListener('resize', onResize, false);\n };\n }, [\n onResize\n ]);\n}\nfunction $2a41e45df1593e64$var$translateRTL(position, direction) {\n if (direction === 'rtl') return position.replace('start', 'right').replace('end', 'left');\n return position.replace('start', 'left').replace('end', 'right');\n}\n\n\nexport {$2a41e45df1593e64$export$d39e1813b3bdd0e1 as useOverlayPosition};\n//# sourceMappingURL=useOverlayPosition.module.js.map\n","import {getOwnerWindow as $djhjW$getOwnerWindow} from \"@react-aria/utils\";\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $645f2e67b85a24c9$var$isStyleVisible(element) {\n const windowObject = (0, $djhjW$getOwnerWindow)(element);\n if (!(element instanceof windowObject.HTMLElement) && !(element instanceof windowObject.SVGElement)) return false;\n let { display: display, visibility: visibility } = element.style;\n let isVisible = display !== 'none' && visibility !== 'hidden' && visibility !== 'collapse';\n if (isVisible) {\n const { getComputedStyle: getComputedStyle } = element.ownerDocument.defaultView;\n let { display: computedDisplay, visibility: computedVisibility } = getComputedStyle(element);\n isVisible = computedDisplay !== 'none' && computedVisibility !== 'hidden' && computedVisibility !== 'collapse';\n }\n return isVisible;\n}\nfunction $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) {\n return !element.hasAttribute('hidden') && // Ignore HiddenSelect when tree walking.\n !element.hasAttribute('data-react-aria-prevent-focus') && (element.nodeName === 'DETAILS' && childElement && childElement.nodeName !== 'SUMMARY' ? element.hasAttribute('open') : true);\n}\nfunction $645f2e67b85a24c9$export$e989c0fffaa6b27a(element, childElement) {\n return element.nodeName !== '#comment' && $645f2e67b85a24c9$var$isStyleVisible(element) && $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) && (!element.parentElement || $645f2e67b85a24c9$export$e989c0fffaa6b27a(element.parentElement, element));\n}\n\n\nexport {$645f2e67b85a24c9$export$e989c0fffaa6b27a as isElementVisible};\n//# sourceMappingURL=isElementVisible.module.js.map\n","import {isElementVisible as $645f2e67b85a24c9$export$e989c0fffaa6b27a} from \"./isElementVisible.mjs\";\nimport {useLayoutEffect as $cgawC$useLayoutEffect, getActiveElement as $cgawC$getActiveElement, getOwnerDocument as $cgawC$getOwnerDocument, getEventTarget as $cgawC$getEventTarget, isAndroid as $cgawC$isAndroid, isChrome as $cgawC$isChrome, isTabbable as $cgawC$isTabbable, isFocusable as $cgawC$isFocusable, createShadowTreeWalker as $cgawC$createShadowTreeWalker} from \"@react-aria/utils\";\nimport {getInteractionModality as $cgawC$getInteractionModality, focusSafely as $cgawC$focusSafely} from \"@react-aria/interactions\";\nimport $cgawC$react, {useRef as $cgawC$useRef, useContext as $cgawC$useContext, useMemo as $cgawC$useMemo, useEffect as $cgawC$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nconst $9bf71ea28793e738$var$FocusContext = /*#__PURE__*/ (0, $cgawC$react).createContext(null);\nconst $9bf71ea28793e738$var$RESTORE_FOCUS_EVENT = 'react-aria-focus-scope-restore';\nlet $9bf71ea28793e738$var$activeScope = null;\nfunction $9bf71ea28793e738$export$20e40289641fbbb6(props) {\n let { children: children, contain: contain, restoreFocus: restoreFocus, autoFocus: autoFocus } = props;\n let startRef = (0, $cgawC$useRef)(null);\n let endRef = (0, $cgawC$useRef)(null);\n let scopeRef = (0, $cgawC$useRef)([]);\n let { parentNode: parentNode } = (0, $cgawC$useContext)($9bf71ea28793e738$var$FocusContext) || {};\n // Create a tree node here so we can add children to it even before it is added to the tree.\n let node = (0, $cgawC$useMemo)(()=>new $9bf71ea28793e738$var$TreeNode({\n scopeRef: scopeRef\n }), [\n scopeRef\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n // If a new scope mounts outside the active scope, (e.g. DialogContainer launched from a menu),\n // use the active scope as the parent instead of the parent from context. Layout effects run bottom\n // up, so if the parent is not yet added to the tree, don't do this. Only the outer-most FocusScope\n // that is being added should get the activeScope as its parent.\n let parent = parentNode || $9bf71ea28793e738$export$d06fae2ee68b101e.root;\n if ($9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(parent.scopeRef) && $9bf71ea28793e738$var$activeScope && !$9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, parent.scopeRef)) {\n let activeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n if (activeNode) parent = activeNode;\n }\n // Add the node to the parent, and to the tree.\n parent.addChild(node);\n $9bf71ea28793e738$export$d06fae2ee68b101e.addNode(node);\n }, [\n node,\n parentNode\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n let node = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (node) node.contain = !!contain;\n }, [\n contain\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n var _startRef_current;\n // Find all rendered nodes between the sentinels and add them to the scope.\n let node = (_startRef_current = startRef.current) === null || _startRef_current === void 0 ? void 0 : _startRef_current.nextSibling;\n let nodes = [];\n let stopPropagation = (e)=>e.stopPropagation();\n while(node && node !== endRef.current){\n nodes.push(node);\n // Stop custom restore focus event from propagating to parent focus scopes.\n node.addEventListener($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, stopPropagation);\n node = node.nextSibling;\n }\n scopeRef.current = nodes;\n return ()=>{\n for (let node of nodes)node.removeEventListener($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, stopPropagation);\n };\n }, [\n children\n ]);\n $9bf71ea28793e738$var$useActiveScopeTracker(scopeRef, restoreFocus, contain);\n $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain);\n $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain);\n $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus);\n // This needs to be an effect so that activeScope is updated after the FocusScope tree is complete.\n // It cannot be a useLayoutEffect because the parent of this node hasn't been attached in the tree yet.\n (0, $cgawC$useEffect)(()=>{\n const activeElement = (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined));\n let scope = null;\n if ($9bf71ea28793e738$var$isElementInScope(activeElement, scopeRef.current)) {\n // We need to traverse the focusScope tree and find the bottom most scope that\n // contains the active element and set that as the activeScope.\n for (let node of $9bf71ea28793e738$export$d06fae2ee68b101e.traverse())if (node.scopeRef && $9bf71ea28793e738$var$isElementInScope(activeElement, node.scopeRef.current)) scope = node;\n if (scope === $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef)) $9bf71ea28793e738$var$activeScope = scope.scopeRef;\n }\n }, [\n scopeRef\n ]);\n // This layout effect cleanup is so that the tree node is removed synchronously with react before the RAF\n // in useRestoreFocus cleanup runs.\n (0, $cgawC$useLayoutEffect)(()=>{\n return ()=>{\n var _focusScopeTree_getTreeNode_parent, _focusScopeTree_getTreeNode;\n var _focusScopeTree_getTreeNode_parent_scopeRef;\n // Scope may have been re-parented.\n let parentScope = (_focusScopeTree_getTreeNode_parent_scopeRef = (_focusScopeTree_getTreeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef)) === null || _focusScopeTree_getTreeNode === void 0 ? void 0 : (_focusScopeTree_getTreeNode_parent = _focusScopeTree_getTreeNode.parent) === null || _focusScopeTree_getTreeNode_parent === void 0 ? void 0 : _focusScopeTree_getTreeNode_parent.scopeRef) !== null && _focusScopeTree_getTreeNode_parent_scopeRef !== void 0 ? _focusScopeTree_getTreeNode_parent_scopeRef : null;\n if ((scopeRef === $9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope(scopeRef, $9bf71ea28793e738$var$activeScope)) && (!parentScope || $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(parentScope))) $9bf71ea28793e738$var$activeScope = parentScope;\n $9bf71ea28793e738$export$d06fae2ee68b101e.removeTreeNode(scopeRef);\n };\n }, [\n scopeRef\n ]);\n let focusManager = (0, $cgawC$useMemo)(()=>$9bf71ea28793e738$var$createFocusManagerForScope(scopeRef), []);\n let value = (0, $cgawC$useMemo)(()=>({\n focusManager: focusManager,\n parentNode: node\n }), [\n node,\n focusManager\n ]);\n return /*#__PURE__*/ (0, $cgawC$react).createElement($9bf71ea28793e738$var$FocusContext.Provider, {\n value: value\n }, /*#__PURE__*/ (0, $cgawC$react).createElement(\"span\", {\n \"data-focus-scope-start\": true,\n hidden: true,\n ref: startRef\n }), children, /*#__PURE__*/ (0, $cgawC$react).createElement(\"span\", {\n \"data-focus-scope-end\": true,\n hidden: true,\n ref: endRef\n }));\n}\nfunction $9bf71ea28793e738$export$10c5169755ce7bd7() {\n var _useContext;\n return (_useContext = (0, $cgawC$useContext)($9bf71ea28793e738$var$FocusContext)) === null || _useContext === void 0 ? void 0 : _useContext.focusManager;\n}\nfunction $9bf71ea28793e738$var$createFocusManagerForScope(scopeRef) {\n return {\n focusNext (opts = {}) {\n let scope = scopeRef.current;\n let { from: from, tabbable: tabbable, wrap: wrap, accept: accept } = opts;\n var _scope_;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)((_scope_ = scope[0]) !== null && _scope_ !== void 0 ? _scope_ : undefined));\n let sentinel = scope[0].previousElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = sentinel;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = {}) {\n let scope = scopeRef.current;\n let { from: from, tabbable: tabbable, wrap: wrap, accept: accept } = opts;\n var _scope_;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)((_scope_ = scope[0]) !== null && _scope_ !== void 0 ? _scope_ : undefined));\n let sentinel = scope[scope.length - 1].nextElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = sentinel;\n previousNode = walker.previousNode();\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n },\n focusFirst (opts = {}) {\n let scope = scopeRef.current;\n let { tabbable: tabbable, accept: accept } = opts;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = scope[0].previousElementSibling;\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = {}) {\n let scope = scopeRef.current;\n let { tabbable: tabbable, accept: accept } = opts;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = scope[scope.length - 1].nextElementSibling;\n let previousNode = walker.previousNode();\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n }\n };\n}\nfunction $9bf71ea28793e738$var$getScopeRoot(scope) {\n return scope[0].parentElement;\n}\nfunction $9bf71ea28793e738$var$shouldContainFocus(scopeRef) {\n let scope = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n while(scope && scope.scopeRef !== scopeRef){\n if (scope.contain) return false;\n scope = scope.parent;\n }\n return true;\n}\nfunction $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain) {\n let focusedNode = (0, $cgawC$useRef)(undefined);\n let raf = (0, $cgawC$useRef)(undefined);\n (0, $cgawC$useLayoutEffect)(()=>{\n let scope = scopeRef.current;\n if (!contain) {\n // if contain was changed, then we should cancel any ongoing waits to pull focus back into containment\n if (raf.current) {\n cancelAnimationFrame(raf.current);\n raf.current = undefined;\n }\n return;\n }\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n // Handle the Tab key to contain focus within the scope\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || !$9bf71ea28793e738$var$shouldContainFocus(scopeRef) || e.isComposing) return;\n let focusedElement = (0, $cgawC$getActiveElement)(ownerDocument);\n let scope = scopeRef.current;\n if (!scope || !$9bf71ea28793e738$var$isElementInScope(focusedElement, scope)) return;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: true\n }, scope);\n if (!focusedElement) return;\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!nextElement) {\n walker.currentNode = e.shiftKey ? scope[scope.length - 1].nextElementSibling : scope[0].previousElementSibling;\n nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n }\n e.preventDefault();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n };\n let onFocus = (e)=>{\n // If focusing an element in a child scope of the currently active scope, the child becomes active.\n // Moving out of the active scope to an ancestor is not allowed.\n if ((!$9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, scopeRef)) && $9bf71ea28793e738$var$isElementInScope((0, $cgawC$getEventTarget)(e), scopeRef.current)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n focusedNode.current = (0, $cgawC$getEventTarget)(e);\n } else if ($9bf71ea28793e738$var$shouldContainFocus(scopeRef) && !$9bf71ea28793e738$var$isElementInChildScope((0, $cgawC$getEventTarget)(e), scopeRef)) {\n // If a focus event occurs outside the active scope (e.g. user tabs from browser location bar),\n // restore focus to the previously focused node or the first tabbable element in the active scope.\n if (focusedNode.current) focusedNode.current.focus();\n else if ($9bf71ea28793e738$var$activeScope && $9bf71ea28793e738$var$activeScope.current) $9bf71ea28793e738$var$focusFirstInScope($9bf71ea28793e738$var$activeScope.current);\n } else if ($9bf71ea28793e738$var$shouldContainFocus(scopeRef)) focusedNode.current = (0, $cgawC$getEventTarget)(e);\n };\n let onBlur = (e)=>{\n // Firefox doesn't shift focus back to the Dialog properly without this\n if (raf.current) cancelAnimationFrame(raf.current);\n raf.current = requestAnimationFrame(()=>{\n // Patches infinite focus coersion loop for Android Talkback where the user isn't able to move the virtual cursor\n // if within a containing focus scope. Bug filed against Chrome: https://issuetracker.google.com/issues/384844019.\n // Note that this means focus can leave focus containing modals due to this, but it is isolated to Chrome Talkback.\n let modality = (0, $cgawC$getInteractionModality)();\n let shouldSkipFocusRestore = (modality === 'virtual' || modality === null) && (0, $cgawC$isAndroid)() && (0, $cgawC$isChrome)();\n // Use document.activeElement instead of e.relatedTarget so we can tell if user clicked into iframe\n let activeElement = (0, $cgawC$getActiveElement)(ownerDocument);\n if (!shouldSkipFocusRestore && activeElement && $9bf71ea28793e738$var$shouldContainFocus(scopeRef) && !$9bf71ea28793e738$var$isElementInChildScope(activeElement, scopeRef)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n let target = (0, $cgawC$getEventTarget)(e);\n if (target && target.isConnected) {\n var _focusedNode_current;\n focusedNode.current = target;\n (_focusedNode_current = focusedNode.current) === null || _focusedNode_current === void 0 ? void 0 : _focusedNode_current.focus();\n } else if ($9bf71ea28793e738$var$activeScope.current) $9bf71ea28793e738$var$focusFirstInScope($9bf71ea28793e738$var$activeScope.current);\n }\n });\n };\n ownerDocument.addEventListener('keydown', onKeyDown, false);\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusout', onBlur, false));\n return ()=>{\n ownerDocument.removeEventListener('keydown', onKeyDown, false);\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusout', onBlur, false));\n };\n }, [\n scopeRef,\n contain\n ]);\n // This is a useLayoutEffect so it is guaranteed to run before our async synthetic blur\n (0, $cgawC$useLayoutEffect)(()=>{\n return ()=>{\n if (raf.current) cancelAnimationFrame(raf.current);\n };\n }, [\n raf\n ]);\n}\nfunction $9bf71ea28793e738$var$isElementInAnyScope(element) {\n return $9bf71ea28793e738$var$isElementInChildScope(element);\n}\nfunction $9bf71ea28793e738$var$isElementInScope(element, scope) {\n if (!element) return false;\n if (!scope) return false;\n return scope.some((node)=>node.contains(element));\n}\nfunction $9bf71ea28793e738$var$isElementInChildScope(element, scope = null) {\n // If the element is within a top layer element (e.g. toasts), always allow moving focus there.\n if (element instanceof Element && element.closest('[data-react-aria-top-layer]')) return true;\n // node.contains in isElementInScope covers child scopes that are also DOM children,\n // but does not cover child scopes in portals.\n for (let { scopeRef: s } of $9bf71ea28793e738$export$d06fae2ee68b101e.traverse($9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scope))){\n if (s && $9bf71ea28793e738$var$isElementInScope(element, s.current)) return true;\n }\n return false;\n}\nfunction $9bf71ea28793e738$export$1258395f99bf9cbf(element) {\n return $9bf71ea28793e738$var$isElementInChildScope(element, $9bf71ea28793e738$var$activeScope);\n}\nfunction $9bf71ea28793e738$var$isAncestorScope(ancestor, scope) {\n var _focusScopeTree_getTreeNode;\n let parent = (_focusScopeTree_getTreeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scope)) === null || _focusScopeTree_getTreeNode === void 0 ? void 0 : _focusScopeTree_getTreeNode.parent;\n while(parent){\n if (parent.scopeRef === ancestor) return true;\n parent = parent.parent;\n }\n return false;\n}\nfunction $9bf71ea28793e738$var$focusElement(element, scroll = false) {\n if (element != null && !scroll) try {\n (0, $cgawC$focusSafely)(element);\n } catch {\n // ignore\n }\n else if (element != null) try {\n element.focus();\n } catch {\n // ignore\n }\n}\nfunction $9bf71ea28793e738$var$getFirstInScope(scope, tabbable = true) {\n let sentinel = scope[0].previousElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable\n }, scope);\n walker.currentNode = sentinel;\n let nextNode = walker.nextNode();\n // If the scope does not contain a tabbable element, use the first focusable element.\n if (tabbable && !nextNode) {\n scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: false\n }, scope);\n walker.currentNode = sentinel;\n nextNode = walker.nextNode();\n }\n return nextNode;\n}\nfunction $9bf71ea28793e738$var$focusFirstInScope(scope, tabbable = true) {\n $9bf71ea28793e738$var$focusElement($9bf71ea28793e738$var$getFirstInScope(scope, tabbable));\n}\nfunction $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus) {\n const autoFocusRef = (0, $cgawC$react).useRef(autoFocus);\n (0, $cgawC$useEffect)(()=>{\n if (autoFocusRef.current) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!$9bf71ea28793e738$var$isElementInScope((0, $cgawC$getActiveElement)(ownerDocument), $9bf71ea28793e738$var$activeScope.current) && scopeRef.current) $9bf71ea28793e738$var$focusFirstInScope(scopeRef.current);\n }\n autoFocusRef.current = false;\n }, [\n scopeRef\n ]);\n}\nfunction $9bf71ea28793e738$var$useActiveScopeTracker(scopeRef, restore, contain) {\n // tracks the active scope, in case restore and contain are both false.\n // if either are true, this is tracked in useRestoreFocus or useFocusContainment.\n (0, $cgawC$useLayoutEffect)(()=>{\n if (restore || contain) return;\n let scope = scopeRef.current;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n let onFocus = (e)=>{\n let target = (0, $cgawC$getEventTarget)(e);\n if ($9bf71ea28793e738$var$isElementInScope(target, scopeRef.current)) $9bf71ea28793e738$var$activeScope = scopeRef;\n else if (!$9bf71ea28793e738$var$isElementInAnyScope(target)) $9bf71ea28793e738$var$activeScope = null;\n };\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n return ()=>{\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n };\n }, [\n scopeRef,\n restore,\n contain\n ]);\n}\nfunction $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef) {\n let scope = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n while(scope && scope.scopeRef !== scopeRef){\n if (scope.nodeToRestore) return false;\n scope = scope.parent;\n }\n return (scope === null || scope === void 0 ? void 0 : scope.scopeRef) === scopeRef;\n}\nfunction $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain) {\n // create a ref during render instead of useLayoutEffect so the active element is saved before a child with autoFocus=true mounts.\n // eslint-disable-next-line no-restricted-globals\n const nodeToRestoreRef = (0, $cgawC$useRef)(typeof document !== 'undefined' ? (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined)) : null);\n // restoring scopes should all track if they are active regardless of contain, but contain already tracks it plus logic to contain the focus\n // restoring-non-containing scopes should only care if they become active so they can perform the restore\n (0, $cgawC$useLayoutEffect)(()=>{\n let scope = scopeRef.current;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n if (!restoreFocus || contain) return;\n let onFocus = ()=>{\n // If focusing an element in a child scope of the currently active scope, the child becomes active.\n // Moving out of the active scope to an ancestor is not allowed.\n if ((!$9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, scopeRef)) && $9bf71ea28793e738$var$isElementInScope((0, $cgawC$getActiveElement)(ownerDocument), scopeRef.current)) $9bf71ea28793e738$var$activeScope = scopeRef;\n };\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n return ()=>{\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n scopeRef,\n contain\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!restoreFocus) return;\n // Handle the Tab key so that tabbing out of the scope goes to the next element\n // after the node that had focus when the scope mounted. This is important when\n // using portals for overlays, so that focus goes to the expected element when\n // tabbing out of the overlay.\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || !$9bf71ea28793e738$var$shouldContainFocus(scopeRef) || e.isComposing) return;\n let focusedElement = ownerDocument.activeElement;\n if (!$9bf71ea28793e738$var$isElementInChildScope(focusedElement, scopeRef) || !$9bf71ea28793e738$var$shouldRestoreFocus(scopeRef)) return;\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n let nodeToRestore = treeNode.nodeToRestore;\n // Create a DOM tree walker that matches all tabbable elements\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(ownerDocument.body, {\n tabbable: true\n });\n // Find the next tabbable element after the currently focused element\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!nodeToRestore || !nodeToRestore.isConnected || nodeToRestore === ownerDocument.body) {\n nodeToRestore = undefined;\n treeNode.nodeToRestore = undefined;\n }\n // If there is no next element, or it is outside the current scope, move focus to the\n // next element after the node to restore to instead.\n if ((!nextElement || !$9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef)) && nodeToRestore) {\n walker.currentNode = nodeToRestore;\n // Skip over elements within the scope, in case the scope immediately follows the node to restore.\n do nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n while ($9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef));\n e.preventDefault();\n e.stopPropagation();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n else // If there is no next element and the nodeToRestore isn't within a FocusScope (i.e. we are leaving the top level focus scope)\n // then move focus to the body.\n // Otherwise restore focus to the nodeToRestore (e.g menu within a popover -> tabbing to close the menu should move focus to menu trigger)\n if (!$9bf71ea28793e738$var$isElementInAnyScope(nodeToRestore)) focusedElement.blur();\n else $9bf71ea28793e738$var$focusElement(nodeToRestore, true);\n }\n };\n if (!contain) ownerDocument.addEventListener('keydown', onKeyDown, true);\n return ()=>{\n if (!contain) ownerDocument.removeEventListener('keydown', onKeyDown, true);\n };\n }, [\n scopeRef,\n restoreFocus,\n contain\n ]);\n // useLayoutEffect instead of useEffect so the active element is saved synchronously instead of asynchronously.\n (0, $cgawC$useLayoutEffect)(()=>{\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!restoreFocus) return;\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n var _nodeToRestoreRef_current;\n treeNode.nodeToRestore = (_nodeToRestoreRef_current = nodeToRestoreRef.current) !== null && _nodeToRestoreRef_current !== void 0 ? _nodeToRestoreRef_current : undefined;\n return ()=>{\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n let nodeToRestore = treeNode.nodeToRestore;\n // if we already lost focus to the body and this was the active scope, then we should attempt to restore\n let activeElement = (0, $cgawC$getActiveElement)(ownerDocument);\n if (restoreFocus && nodeToRestore && (activeElement && $9bf71ea28793e738$var$isElementInChildScope(activeElement, scopeRef) || activeElement === ownerDocument.body && $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef))) {\n // freeze the focusScopeTree so it persists after the raf, otherwise during unmount nodes are removed from it\n let clonedTree = $9bf71ea28793e738$export$d06fae2ee68b101e.clone();\n requestAnimationFrame(()=>{\n // Only restore focus if we've lost focus to the body, the alternative is that focus has been purposefully moved elsewhere\n if (ownerDocument.activeElement === ownerDocument.body) {\n // look up the tree starting with our scope to find a nodeToRestore still in the DOM\n let treeNode = clonedTree.getTreeNode(scopeRef);\n while(treeNode){\n if (treeNode.nodeToRestore && treeNode.nodeToRestore.isConnected) {\n $9bf71ea28793e738$var$restoreFocusToElement(treeNode.nodeToRestore);\n return;\n }\n treeNode = treeNode.parent;\n }\n // If no nodeToRestore was found, focus the first element in the nearest\n // ancestor scope that is still in the tree.\n treeNode = clonedTree.getTreeNode(scopeRef);\n while(treeNode){\n if (treeNode.scopeRef && treeNode.scopeRef.current && $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(treeNode.scopeRef)) {\n let node = $9bf71ea28793e738$var$getFirstInScope(treeNode.scopeRef.current, true);\n $9bf71ea28793e738$var$restoreFocusToElement(node);\n return;\n }\n treeNode = treeNode.parent;\n }\n }\n });\n }\n };\n }, [\n scopeRef,\n restoreFocus\n ]);\n}\nfunction $9bf71ea28793e738$var$restoreFocusToElement(node) {\n // Dispatch a custom event that parent elements can intercept to customize focus restoration.\n // For example, virtualized collection components reuse DOM elements, so the original element\n // might still exist in the DOM but representing a different item.\n if (node.dispatchEvent(new CustomEvent($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, {\n bubbles: true,\n cancelable: true\n }))) $9bf71ea28793e738$var$focusElement(node);\n}\nfunction $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, opts, scope) {\n let filter = (opts === null || opts === void 0 ? void 0 : opts.tabbable) ? (0, $cgawC$isTabbable) : (0, $cgawC$isFocusable);\n // Ensure that root is an Element or fall back appropriately\n let rootElement = (root === null || root === void 0 ? void 0 : root.nodeType) === Node.ELEMENT_NODE ? root : null;\n // Determine the document to use\n let doc = (0, $cgawC$getOwnerDocument)(rootElement);\n // Create a TreeWalker, ensuring the root is an Element or Document\n let walker = (0, $cgawC$createShadowTreeWalker)(doc, root || doc, NodeFilter.SHOW_ELEMENT, {\n acceptNode (node) {\n var _opts_from;\n // Skip nodes inside the starting node.\n if (opts === null || opts === void 0 ? void 0 : (_opts_from = opts.from) === null || _opts_from === void 0 ? void 0 : _opts_from.contains(node)) return NodeFilter.FILTER_REJECT;\n if (filter(node) && (0, $645f2e67b85a24c9$export$e989c0fffaa6b27a)(node) && (!scope || $9bf71ea28793e738$var$isElementInScope(node, scope)) && (!(opts === null || opts === void 0 ? void 0 : opts.accept) || opts.accept(node))) return NodeFilter.FILTER_ACCEPT;\n return NodeFilter.FILTER_SKIP;\n }\n });\n if (opts === null || opts === void 0 ? void 0 : opts.from) walker.currentNode = opts.from;\n return walker;\n}\nfunction $9bf71ea28793e738$export$c5251b9e124bf29(ref, defaultOptions = {}) {\n return {\n focusNext (opts = {}) {\n let root = ref.current;\n if (!root) return null;\n let { from: from, tabbable: tabbable = defaultOptions.tabbable, wrap: wrap = defaultOptions.wrap, accept: accept = defaultOptions.accept } = opts;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(root));\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = root;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { from: from, tabbable: tabbable = defaultOptions.tabbable, wrap: wrap = defaultOptions.wrap, accept: accept = defaultOptions.accept } = opts;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(root));\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n else {\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next !== null && next !== void 0 ? next : null;\n }\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = root;\n let lastNode = $9bf71ea28793e738$var$last(walker);\n if (!lastNode) // couldn't wrap\n return null;\n previousNode = lastNode;\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode !== null && previousNode !== void 0 ? previousNode : null;\n },\n focusFirst (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { tabbable: tabbable = defaultOptions.tabbable, accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { tabbable: tabbable = defaultOptions.tabbable, accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next !== null && next !== void 0 ? next : null;\n }\n };\n}\nfunction $9bf71ea28793e738$var$last(walker) {\n let next = undefined;\n let last;\n do {\n last = walker.lastChild();\n if (last) next = last;\n }while (last);\n return next;\n}\nclass $9bf71ea28793e738$var$Tree {\n get size() {\n return this.fastMap.size;\n }\n getTreeNode(data) {\n return this.fastMap.get(data);\n }\n addTreeNode(scopeRef, parent, nodeToRestore) {\n let parentNode = this.fastMap.get(parent !== null && parent !== void 0 ? parent : null);\n if (!parentNode) return;\n let node = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: scopeRef\n });\n parentNode.addChild(node);\n node.parent = parentNode;\n this.fastMap.set(scopeRef, node);\n if (nodeToRestore) node.nodeToRestore = nodeToRestore;\n }\n addNode(node) {\n this.fastMap.set(node.scopeRef, node);\n }\n removeTreeNode(scopeRef) {\n // never remove the root\n if (scopeRef === null) return;\n let node = this.fastMap.get(scopeRef);\n if (!node) return;\n let parentNode = node.parent;\n // when we remove a scope, check if any sibling scopes are trying to restore focus to something inside the scope we're removing\n // if we are, then replace the siblings restore with the restore from the scope we're removing\n for (let current of this.traverse())if (current !== node && node.nodeToRestore && current.nodeToRestore && node.scopeRef && node.scopeRef.current && $9bf71ea28793e738$var$isElementInScope(current.nodeToRestore, node.scopeRef.current)) current.nodeToRestore = node.nodeToRestore;\n let children = node.children;\n if (parentNode) {\n parentNode.removeChild(node);\n if (children.size > 0) children.forEach((child)=>parentNode && parentNode.addChild(child));\n }\n this.fastMap.delete(node.scopeRef);\n }\n // Pre Order Depth First\n *traverse(node = this.root) {\n if (node.scopeRef != null) yield node;\n if (node.children.size > 0) for (let child of node.children)yield* this.traverse(child);\n }\n clone() {\n var _node_parent;\n let newTree = new $9bf71ea28793e738$var$Tree();\n var _node_parent_scopeRef;\n for (let node of this.traverse())newTree.addTreeNode(node.scopeRef, (_node_parent_scopeRef = (_node_parent = node.parent) === null || _node_parent === void 0 ? void 0 : _node_parent.scopeRef) !== null && _node_parent_scopeRef !== void 0 ? _node_parent_scopeRef : null, node.nodeToRestore);\n return newTree;\n }\n constructor(){\n this.fastMap = new Map();\n this.root = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: null\n });\n this.fastMap.set(null, this.root);\n }\n}\nclass $9bf71ea28793e738$var$TreeNode {\n addChild(node) {\n this.children.add(node);\n node.parent = this;\n }\n removeChild(node) {\n this.children.delete(node);\n node.parent = undefined;\n }\n constructor(props){\n this.children = new Set();\n this.contain = false;\n this.scopeRef = props.scopeRef;\n }\n}\nlet $9bf71ea28793e738$export$d06fae2ee68b101e = new $9bf71ea28793e738$var$Tree();\n\n\nexport {$9bf71ea28793e738$export$20e40289641fbbb6 as FocusScope, $9bf71ea28793e738$export$d06fae2ee68b101e as focusScopeTree, $9bf71ea28793e738$export$10c5169755ce7bd7 as useFocusManager, $9bf71ea28793e738$export$2d6ec8fc375ceafa as getFocusableTreeWalker, $9bf71ea28793e738$export$1258395f99bf9cbf as isElementInChildOfActiveScope, $9bf71ea28793e738$export$c5251b9e124bf29 as createFocusManager};\n//# sourceMappingURL=FocusScope.module.js.map\n","import {getOwnerDocument as $hpDQO$getOwnerDocument, getActiveElement as $hpDQO$getActiveElement} from \"@react-aria/utils\";\n\n\nfunction $55f9b1ae81f22853$export$76e4e37e5339496d(to) {\n let from = $55f9b1ae81f22853$export$759df0d867455a91((0, $hpDQO$getOwnerDocument)(to));\n if (from !== to) {\n if (from) $55f9b1ae81f22853$export$6c5dc7e81d2cc29a(from, to);\n if (to) $55f9b1ae81f22853$export$2b35b76d2e30e129(to, from);\n }\n}\nfunction $55f9b1ae81f22853$export$6c5dc7e81d2cc29a(from, to) {\n from.dispatchEvent(new FocusEvent('blur', {\n relatedTarget: to\n }));\n from.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true,\n relatedTarget: to\n }));\n}\nfunction $55f9b1ae81f22853$export$2b35b76d2e30e129(to, from) {\n to.dispatchEvent(new FocusEvent('focus', {\n relatedTarget: from\n }));\n to.dispatchEvent(new FocusEvent('focusin', {\n bubbles: true,\n relatedTarget: from\n }));\n}\nfunction $55f9b1ae81f22853$export$759df0d867455a91(document) {\n let activeElement = (0, $hpDQO$getActiveElement)(document);\n let activeDescendant = activeElement === null || activeElement === void 0 ? void 0 : activeElement.getAttribute('aria-activedescendant');\n if (activeDescendant) return document.getElementById(activeDescendant) || activeElement;\n return activeElement;\n}\n\n\nexport {$55f9b1ae81f22853$export$76e4e37e5339496d as moveVirtualFocus, $55f9b1ae81f22853$export$759df0d867455a91 as getVirtuallyFocusedElement, $55f9b1ae81f22853$export$6c5dc7e81d2cc29a as dispatchVirtualBlur, $55f9b1ae81f22853$export$2b35b76d2e30e129 as dispatchVirtualFocus};\n//# sourceMappingURL=virtualFocus.module.js.map\n","import {isElementInChildOfActiveScope as $jtpZv$isElementInChildOfActiveScope} from \"@react-aria/focus\";\nimport {useEffect as $jtpZv$useEffect} from \"react\";\nimport {useInteractOutside as $jtpZv$useInteractOutside, useFocusWithin as $jtpZv$useFocusWithin} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $a11501f3d1d39e6c$var$visibleOverlays = [];\nfunction $a11501f3d1d39e6c$export$ea8f71083e90600f(props, ref) {\n let { onClose: onClose, shouldCloseOnBlur: shouldCloseOnBlur, isOpen: isOpen, isDismissable: isDismissable = false, isKeyboardDismissDisabled: isKeyboardDismissDisabled = false, shouldCloseOnInteractOutside: shouldCloseOnInteractOutside } = props;\n // Add the overlay ref to the stack of visible overlays on mount, and remove on unmount.\n (0, $jtpZv$useEffect)(()=>{\n if (isOpen && !$a11501f3d1d39e6c$var$visibleOverlays.includes(ref)) {\n $a11501f3d1d39e6c$var$visibleOverlays.push(ref);\n return ()=>{\n let index = $a11501f3d1d39e6c$var$visibleOverlays.indexOf(ref);\n if (index >= 0) $a11501f3d1d39e6c$var$visibleOverlays.splice(index, 1);\n };\n }\n }, [\n isOpen,\n ref\n ]);\n // Only hide the overlay when it is the topmost visible overlay in the stack\n let onHide = ()=>{\n if ($a11501f3d1d39e6c$var$visibleOverlays[$a11501f3d1d39e6c$var$visibleOverlays.length - 1] === ref && onClose) onClose();\n };\n let onInteractOutsideStart = (e)=>{\n if (!shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(e.target)) {\n if ($a11501f3d1d39e6c$var$visibleOverlays[$a11501f3d1d39e6c$var$visibleOverlays.length - 1] === ref) {\n e.stopPropagation();\n e.preventDefault();\n }\n }\n };\n let onInteractOutside = (e)=>{\n if (!shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(e.target)) {\n if ($a11501f3d1d39e6c$var$visibleOverlays[$a11501f3d1d39e6c$var$visibleOverlays.length - 1] === ref) {\n e.stopPropagation();\n e.preventDefault();\n }\n onHide();\n }\n };\n // Handle the escape key\n let onKeyDown = (e)=>{\n if (e.key === 'Escape' && !isKeyboardDismissDisabled && !e.nativeEvent.isComposing) {\n e.stopPropagation();\n e.preventDefault();\n onHide();\n }\n };\n // Handle clicking outside the overlay to close it\n (0, $jtpZv$useInteractOutside)({\n ref: ref,\n onInteractOutside: isDismissable && isOpen ? onInteractOutside : undefined,\n onInteractOutsideStart: onInteractOutsideStart\n });\n let { focusWithinProps: focusWithinProps } = (0, $jtpZv$useFocusWithin)({\n isDisabled: !shouldCloseOnBlur,\n onBlurWithin: (e)=>{\n // Do not close if relatedTarget is null, which means focus is lost to the body.\n // That can happen when switching tabs, or due to a VoiceOver/Chrome bug with Control+Option+Arrow navigation.\n // Clicking on the body to close the overlay should already be handled by useInteractOutside.\n // https://github.com/adobe/react-spectrum/issues/4130\n // https://github.com/adobe/react-spectrum/issues/4922\n //\n // If focus is moving into a child focus scope (e.g. menu inside a dialog),\n // do not close the outer overlay. At this point, the active scope should\n // still be the outer overlay, since blur events run before focus.\n if (!e.relatedTarget || (0, $jtpZv$isElementInChildOfActiveScope)(e.relatedTarget)) return;\n if (!shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(e.relatedTarget)) onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n });\n let onPointerDownUnderlay = (e)=>{\n // fixes a firefox issue that starts text selection https://bugzilla.mozilla.org/show_bug.cgi?id=1675846\n if (e.target === e.currentTarget) e.preventDefault();\n };\n return {\n overlayProps: {\n onKeyDown: onKeyDown,\n ...focusWithinProps\n },\n underlayProps: {\n onPointerDown: onPointerDownUnderlay\n }\n };\n}\n\n\nexport {$a11501f3d1d39e6c$export$ea8f71083e90600f as useOverlay};\n//# sourceMappingURL=useOverlay.module.js.map\n","import {onCloseMap as $dd149f63282afbbf$export$f6211563215e3b37} from \"./useCloseOnScroll.mjs\";\nimport {useEffect as $gMvIk$useEffect} from \"react\";\nimport {useId as $gMvIk$useId} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $628037886ba31236$export$f9d5c8beee7d008d(props, state, ref) {\n let { type: type } = props;\n let { isOpen: isOpen } = state;\n // Backward compatibility. Share state close function with useOverlayPosition so it can close on scroll\n // without forcing users to pass onClose.\n (0, $gMvIk$useEffect)(()=>{\n if (ref && ref.current) (0, $dd149f63282afbbf$export$f6211563215e3b37).set(ref.current, state.close);\n });\n // Aria 1.1 supports multiple values for aria-haspopup other than just menus.\n // https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup\n // However, we only add it for menus for now because screen readers often\n // announce it as a menu even for other values.\n let ariaHasPopup = undefined;\n if (type === 'menu') ariaHasPopup = true;\n else if (type === 'listbox') ariaHasPopup = 'listbox';\n let overlayId = (0, $gMvIk$useId)();\n return {\n triggerProps: {\n 'aria-haspopup': ariaHasPopup,\n 'aria-expanded': isOpen,\n 'aria-controls': isOpen ? overlayId : undefined,\n onPress: state.toggle\n },\n overlayProps: {\n id: overlayId\n }\n };\n}\n\n\nexport {$628037886ba31236$export$f9d5c8beee7d008d as useOverlayTrigger};\n//# sourceMappingURL=useOverlayTrigger.module.js.map\n","import {useLayoutEffect as $7mMvr$useLayoutEffect, isIOS as $7mMvr$isIOS, chain as $7mMvr$chain, getScrollParent as $7mMvr$getScrollParent} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $49c51c25361d4cd2$var$visualViewport = typeof document !== 'undefined' && window.visualViewport;\n// HTML input types that do not cause the software keyboard to appear.\nconst $49c51c25361d4cd2$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\n// The number of active usePreventScroll calls. Used to determine whether to revert back to the original page style/scroll position\nlet $49c51c25361d4cd2$var$preventScrollCount = 0;\nlet $49c51c25361d4cd2$var$restore;\nfunction $49c51c25361d4cd2$export$ee0f7cc6afcd1c18(options = {}) {\n let { isDisabled: isDisabled } = options;\n (0, $7mMvr$useLayoutEffect)(()=>{\n if (isDisabled) return;\n $49c51c25361d4cd2$var$preventScrollCount++;\n if ($49c51c25361d4cd2$var$preventScrollCount === 1) {\n if ((0, $7mMvr$isIOS)()) $49c51c25361d4cd2$var$restore = $49c51c25361d4cd2$var$preventScrollMobileSafari();\n else $49c51c25361d4cd2$var$restore = $49c51c25361d4cd2$var$preventScrollStandard();\n }\n return ()=>{\n $49c51c25361d4cd2$var$preventScrollCount--;\n if ($49c51c25361d4cd2$var$preventScrollCount === 0) $49c51c25361d4cd2$var$restore();\n };\n }, [\n isDisabled\n ]);\n}\n// For most browsers, all we need to do is set `overflow: hidden` on the root element, and\n// add some padding to prevent the page from shifting when the scrollbar is hidden.\nfunction $49c51c25361d4cd2$var$preventScrollStandard() {\n return (0, $7mMvr$chain)($49c51c25361d4cd2$var$setStyle(document.documentElement, 'paddingRight', `${window.innerWidth - document.documentElement.clientWidth}px`), $49c51c25361d4cd2$var$setStyle(document.documentElement, 'overflow', 'hidden'));\n}\n// Mobile Safari is a whole different beast. Even with overflow: hidden,\n// it still scrolls the page in many situations:\n//\n// 1. When the bottom toolbar and address bar are collapsed, page scrolling is always allowed.\n// 2. When the keyboard is visible, the viewport does not resize. Instead, the keyboard covers part of\n// it, so it becomes scrollable.\n// 3. When tapping on an input, the page always scrolls so that the input is centered in the visual viewport.\n// This may cause even fixed position elements to scroll off the screen.\n// 4. When using the next/previous buttons in the keyboard to navigate between inputs, the whole page always\n// scrolls, even if the input is inside a nested scrollable element that could be scrolled instead.\n//\n// In order to work around these cases, and prevent scrolling without jankiness, we do a few things:\n//\n// 1. Prevent default on `touchmove` events that are not in a scrollable element. This prevents touch scrolling\n// on the window.\n// 2. Set `overscroll-behavior: contain` on nested scrollable regions so they do not scroll the page when at\n// the top or bottom. Work around a bug where this does not work when the element does not actually overflow\n// by preventing default in a `touchmove` event.\n// 3. Prevent default on `touchend` events on input elements and handle focusing the element ourselves.\n// 4. When focusing an input, apply a transform to trick Safari into thinking the input is at the top\n// of the page, which prevents it from scrolling the page. After the input is focused, scroll the element\n// into view ourselves, without scrolling the whole page.\n// 5. Offset the body by the scroll position using a negative margin and scroll to the top. This should appear the\n// same visually, but makes the actual scroll position always zero. This is required to make all of the\n// above work or Safari will still try to scroll the page when focusing an input.\n// 6. As a last resort, handle window scroll events, and scroll back to the top. This can happen when attempting\n// to navigate to an input with the next/previous buttons that's outside a modal.\nfunction $49c51c25361d4cd2$var$preventScrollMobileSafari() {\n let scrollable;\n let restoreScrollableStyles;\n let onTouchStart = (e)=>{\n // Store the nearest scrollable parent element from the element that the user touched.\n scrollable = (0, $7mMvr$getScrollParent)(e.target, true);\n if (scrollable === document.documentElement && scrollable === document.body) return;\n // Prevent scrolling up when at the top and scrolling down when at the bottom\n // of a nested scrollable area, otherwise mobile Safari will start scrolling\n // the window instead.\n if (scrollable instanceof HTMLElement && window.getComputedStyle(scrollable).overscrollBehavior === 'auto') restoreScrollableStyles = $49c51c25361d4cd2$var$setStyle(scrollable, 'overscrollBehavior', 'contain');\n };\n let onTouchMove = (e)=>{\n // Prevent scrolling the window.\n if (!scrollable || scrollable === document.documentElement || scrollable === document.body) {\n e.preventDefault();\n return;\n }\n // overscroll-behavior should prevent scroll chaining, but currently does not\n // if the element doesn't actually overflow. https://bugs.webkit.org/show_bug.cgi?id=243452\n // This checks that both the width and height do not overflow, otherwise we might\n // block horizontal scrolling too. In that case, adding `touch-action: pan-x` to\n // the element will prevent vertical page scrolling. We can't add that automatically\n // because it must be set before the touchstart event.\n if (scrollable.scrollHeight === scrollable.clientHeight && scrollable.scrollWidth === scrollable.clientWidth) e.preventDefault();\n };\n let onTouchEnd = ()=>{\n if (restoreScrollableStyles) restoreScrollableStyles();\n };\n let onFocus = (e)=>{\n let target = e.target;\n if ($49c51c25361d4cd2$var$willOpenKeyboard(target)) {\n setupStyles();\n // Apply a transform to trick Safari into thinking the input is at the top of the page\n // so it doesn't try to scroll it into view.\n target.style.transform = 'translateY(-2000px)';\n requestAnimationFrame(()=>{\n target.style.transform = '';\n // This will have prevented the browser from scrolling the focused element into view,\n // so we need to do this ourselves in a way that doesn't cause the whole page to scroll.\n if ($49c51c25361d4cd2$var$visualViewport) {\n if ($49c51c25361d4cd2$var$visualViewport.height < window.innerHeight) // If the keyboard is already visible, do this after one additional frame\n // to wait for the transform to be removed.\n requestAnimationFrame(()=>{\n $49c51c25361d4cd2$var$scrollIntoView(target);\n });\n else // Otherwise, wait for the visual viewport to resize before scrolling so we can\n // measure the correct position to scroll to.\n $49c51c25361d4cd2$var$visualViewport.addEventListener('resize', ()=>$49c51c25361d4cd2$var$scrollIntoView(target), {\n once: true\n });\n }\n });\n }\n };\n let restoreStyles = null;\n let setupStyles = ()=>{\n if (restoreStyles) return;\n let onWindowScroll = ()=>{\n // Last resort. If the window scrolled, scroll it back to the top.\n // It should always be at the top because the body will have a negative margin (see below).\n window.scrollTo(0, 0);\n };\n // Record the original scroll position so we can restore it.\n // Then apply a negative margin to the body to offset it by the scroll position. This will\n // enable us to scroll the window to the top, which is required for the rest of this to work.\n let scrollX = window.pageXOffset;\n let scrollY = window.pageYOffset;\n restoreStyles = (0, $7mMvr$chain)($49c51c25361d4cd2$var$addEvent(window, 'scroll', onWindowScroll), $49c51c25361d4cd2$var$setStyle(document.documentElement, 'paddingRight', `${window.innerWidth - document.documentElement.clientWidth}px`), $49c51c25361d4cd2$var$setStyle(document.documentElement, 'overflow', 'hidden'), $49c51c25361d4cd2$var$setStyle(document.body, 'marginTop', `-${scrollY}px`), ()=>{\n window.scrollTo(scrollX, scrollY);\n });\n // Scroll to the top. The negative margin on the body will make this appear the same.\n window.scrollTo(0, 0);\n };\n let removeEvents = (0, $7mMvr$chain)($49c51c25361d4cd2$var$addEvent(document, 'touchstart', onTouchStart, {\n passive: false,\n capture: true\n }), $49c51c25361d4cd2$var$addEvent(document, 'touchmove', onTouchMove, {\n passive: false,\n capture: true\n }), $49c51c25361d4cd2$var$addEvent(document, 'touchend', onTouchEnd, {\n passive: false,\n capture: true\n }), $49c51c25361d4cd2$var$addEvent(document, 'focus', onFocus, true));\n return ()=>{\n // Restore styles and scroll the page back to where it was.\n restoreScrollableStyles === null || restoreScrollableStyles === void 0 ? void 0 : restoreScrollableStyles();\n restoreStyles === null || restoreStyles === void 0 ? void 0 : restoreStyles();\n removeEvents();\n };\n}\n// Sets a CSS property on an element, and returns a function to revert it to the previous value.\nfunction $49c51c25361d4cd2$var$setStyle(element, style, value) {\n let cur = element.style[style];\n element.style[style] = value;\n return ()=>{\n element.style[style] = cur;\n };\n}\n// Adds an event listener to an element, and returns a function to remove it.\nfunction $49c51c25361d4cd2$var$addEvent(target, event, handler, options) {\n // internal function, so it's ok to ignore the difficult to fix type error\n // @ts-ignore\n target.addEventListener(event, handler, options);\n return ()=>{\n // @ts-ignore\n target.removeEventListener(event, handler, options);\n };\n}\nfunction $49c51c25361d4cd2$var$scrollIntoView(target) {\n let root = document.scrollingElement || document.documentElement;\n let nextTarget = target;\n while(nextTarget && nextTarget !== root){\n // Find the parent scrollable element and adjust the scroll position if the target is not already in view.\n let scrollable = (0, $7mMvr$getScrollParent)(nextTarget);\n if (scrollable !== document.documentElement && scrollable !== document.body && scrollable !== nextTarget) {\n let scrollableTop = scrollable.getBoundingClientRect().top;\n let targetTop = nextTarget.getBoundingClientRect().top;\n if (targetTop > scrollableTop + nextTarget.clientHeight) scrollable.scrollTop += targetTop - scrollableTop;\n }\n nextTarget = scrollable.parentElement;\n }\n}\nfunction $49c51c25361d4cd2$var$willOpenKeyboard(target) {\n return target instanceof HTMLInputElement && !$49c51c25361d4cd2$var$nonTextInputTypes.has(target.type) || target instanceof HTMLTextAreaElement || target instanceof HTMLElement && target.isContentEditable;\n}\n\n\nexport {$49c51c25361d4cd2$export$ee0f7cc6afcd1c18 as usePreventScroll};\n//# sourceMappingURL=usePreventScroll.module.js.map\n","import $7yuSY$react, {createContext as $7yuSY$createContext, useContext as $7yuSY$useContext} from \"react\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $96b38030c423d352$export$60d741e20e0aa309 = /*#__PURE__*/ (0, $7yuSY$createContext)({});\nfunction $96b38030c423d352$export$78efe591171d7d45(props) {\n let { getContainer: getContainer } = props;\n let { getContainer: ctxGetContainer } = $96b38030c423d352$export$9fc1347d4195ccb3();\n return /*#__PURE__*/ (0, $7yuSY$react).createElement($96b38030c423d352$export$60d741e20e0aa309.Provider, {\n value: {\n getContainer: getContainer === null ? undefined : getContainer !== null && getContainer !== void 0 ? getContainer : ctxGetContainer\n }\n }, props.children);\n}\nfunction $96b38030c423d352$export$9fc1347d4195ccb3() {\n var _useContext;\n return (_useContext = (0, $7yuSY$useContext)($96b38030c423d352$export$60d741e20e0aa309)) !== null && _useContext !== void 0 ? _useContext : {};\n}\n\n\nexport {$96b38030c423d352$export$60d741e20e0aa309 as PortalContext, $96b38030c423d352$export$78efe591171d7d45 as UNSAFE_PortalProvider, $96b38030c423d352$export$9fc1347d4195ccb3 as useUNSAFE_PortalContext};\n//# sourceMappingURL=PortalProvider.module.js.map\n","var $773d5888b972f1cf$exports = {};\n$773d5888b972f1cf$exports = {\n \"dismiss\": `\\u{62A}\\u{62C}\\u{627}\\u{647}\\u{644}`\n};\n\n\nexport {$773d5888b972f1cf$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $d11f19852b941573$exports = {};\n$d11f19852b941573$exports = {\n \"dismiss\": `\\u{41E}\\u{442}\\u{445}\\u{432}\\u{44A}\\u{440}\\u{43B}\\u{44F}\\u{43D}\\u{435}`\n};\n\n\nexport {$d11f19852b941573$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $b983974c2ee1efb3$exports = {};\n$b983974c2ee1efb3$exports = {\n \"dismiss\": `Odstranit`\n};\n\n\nexport {$b983974c2ee1efb3$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $5809cc9d4e92de73$exports = {};\n$5809cc9d4e92de73$exports = {\n \"dismiss\": `Luk`\n};\n\n\nexport {$5809cc9d4e92de73$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $c68c2e4fc74398d1$exports = {};\n$c68c2e4fc74398d1$exports = {\n \"dismiss\": `Schlie\\xdfen`\n};\n\n\nexport {$c68c2e4fc74398d1$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $0898b4c153db2b77$exports = {};\n$0898b4c153db2b77$exports = {\n \"dismiss\": `\\u{391}\\u{3C0}\\u{3CC}\\u{3C1}\\u{3C1}\\u{3B9}\\u{3C8}\\u{3B7}`\n};\n\n\nexport {$0898b4c153db2b77$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $6d74810286a15183$exports = {};\n$6d74810286a15183$exports = {\n \"dismiss\": `Dismiss`\n};\n\n\nexport {$6d74810286a15183$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $309d73dc65f78055$exports = {};\n$309d73dc65f78055$exports = {\n \"dismiss\": `Descartar`\n};\n\n\nexport {$309d73dc65f78055$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $44ad94f7205cf593$exports = {};\n$44ad94f7205cf593$exports = {\n \"dismiss\": `L\\xf5peta`\n};\n\n\nexport {$44ad94f7205cf593$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $7c28f5687f0779a9$exports = {};\n$7c28f5687f0779a9$exports = {\n \"dismiss\": `Hylk\\xe4\\xe4`\n};\n\n\nexport {$7c28f5687f0779a9$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $e6d75df4b68bd73a$exports = {};\n$e6d75df4b68bd73a$exports = {\n \"dismiss\": `Rejeter`\n};\n\n\nexport {$e6d75df4b68bd73a$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $87505c9dab186d0f$exports = {};\n$87505c9dab186d0f$exports = {\n \"dismiss\": `\\u{5D4}\\u{5EA}\\u{5E2}\\u{5DC}\\u{5DD}`\n};\n\n\nexport {$87505c9dab186d0f$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $553439c3ffb3e492$exports = {};\n$553439c3ffb3e492$exports = {\n \"dismiss\": `Odbaci`\n};\n\n\nexport {$553439c3ffb3e492$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $74cf411061b983a2$exports = {};\n$74cf411061b983a2$exports = {\n \"dismiss\": `Elutas\\xedt\\xe1s`\n};\n\n\nexport {$74cf411061b983a2$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $e933f298574dc435$exports = {};\n$e933f298574dc435$exports = {\n \"dismiss\": `Ignora`\n};\n\n\nexport {$e933f298574dc435$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $ac91fc9fe02f71f6$exports = {};\n$ac91fc9fe02f71f6$exports = {\n \"dismiss\": `\\u{9589}\\u{3058}\\u{308B}`\n};\n\n\nexport {$ac91fc9fe02f71f6$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $52b96f86422025af$exports = {};\n$52b96f86422025af$exports = {\n \"dismiss\": `\\u{BB34}\\u{C2DC}`\n};\n\n\nexport {$52b96f86422025af$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $c0d724c3e51dafa6$exports = {};\n$c0d724c3e51dafa6$exports = {\n \"dismiss\": `Atmesti`\n};\n\n\nexport {$c0d724c3e51dafa6$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $c92899672a3fe72e$exports = {};\n$c92899672a3fe72e$exports = {\n \"dismiss\": `Ner\\u{101}d\\u{12B}t`\n};\n\n\nexport {$c92899672a3fe72e$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $9f576b39d8e7a9d6$exports = {};\n$9f576b39d8e7a9d6$exports = {\n \"dismiss\": `Lukk`\n};\n\n\nexport {$9f576b39d8e7a9d6$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $9d025808aeec81a7$exports = {};\n$9d025808aeec81a7$exports = {\n \"dismiss\": `Negeren`\n};\n\n\nexport {$9d025808aeec81a7$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $fce709921e2c0fa6$exports = {};\n$fce709921e2c0fa6$exports = {\n \"dismiss\": `Zignoruj`\n};\n\n\nexport {$fce709921e2c0fa6$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $2599cf0c4ab37f59$exports = {};\n$2599cf0c4ab37f59$exports = {\n \"dismiss\": `Descartar`\n};\n\n\nexport {$2599cf0c4ab37f59$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $3c220ae7ef8a35fd$exports = {};\n$3c220ae7ef8a35fd$exports = {\n \"dismiss\": `Dispensar`\n};\n\n\nexport {$3c220ae7ef8a35fd$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $93562b5094072f54$exports = {};\n$93562b5094072f54$exports = {\n \"dismiss\": `Revocare`\n};\n\n\nexport {$93562b5094072f54$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $cd9e2abd0d06c7b4$exports = {};\n$cd9e2abd0d06c7b4$exports = {\n \"dismiss\": `\\u{41F}\\u{440}\\u{43E}\\u{43F}\\u{443}\\u{441}\\u{442}\\u{438}\\u{442}\\u{44C}`\n};\n\n\nexport {$cd9e2abd0d06c7b4$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $45375701f409adf1$exports = {};\n$45375701f409adf1$exports = {\n \"dismiss\": `Zru\\u{161}i\\u{165}`\n};\n\n\nexport {$45375701f409adf1$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $27fab53a576de9dd$exports = {};\n$27fab53a576de9dd$exports = {\n \"dismiss\": `Opusti`\n};\n\n\nexport {$27fab53a576de9dd$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $4438748d9952e7c7$exports = {};\n$4438748d9952e7c7$exports = {\n \"dismiss\": `Odbaci`\n};\n\n\nexport {$4438748d9952e7c7$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $0936d7347ef4da4c$exports = {};\n$0936d7347ef4da4c$exports = {\n \"dismiss\": `Avvisa`\n};\n\n\nexport {$0936d7347ef4da4c$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $29700c92185d38f8$exports = {};\n$29700c92185d38f8$exports = {\n \"dismiss\": `Kapat`\n};\n\n\nexport {$29700c92185d38f8$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $662ccaf2be4c25b3$exports = {};\n$662ccaf2be4c25b3$exports = {\n \"dismiss\": `\\u{421}\\u{43A}\\u{430}\\u{441}\\u{443}\\u{432}\\u{430}\\u{442}\\u{438}`\n};\n\n\nexport {$662ccaf2be4c25b3$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $d80a27deda7cdb3c$exports = {};\n$d80a27deda7cdb3c$exports = {\n \"dismiss\": `\\u{53D6}\\u{6D88}`\n};\n\n\nexport {$d80a27deda7cdb3c$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $2b2734393847c884$exports = {};\n$2b2734393847c884$exports = {\n \"dismiss\": `\\u{95DC}\\u{9589}`\n};\n\n\nexport {$2b2734393847c884$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $k51So$arAEmodulejs from \"./ar-AE.mjs\";\nimport $k51So$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $k51So$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $k51So$daDKmodulejs from \"./da-DK.mjs\";\nimport $k51So$deDEmodulejs from \"./de-DE.mjs\";\nimport $k51So$elGRmodulejs from \"./el-GR.mjs\";\nimport $k51So$enUSmodulejs from \"./en-US.mjs\";\nimport $k51So$esESmodulejs from \"./es-ES.mjs\";\nimport $k51So$etEEmodulejs from \"./et-EE.mjs\";\nimport $k51So$fiFImodulejs from \"./fi-FI.mjs\";\nimport $k51So$frFRmodulejs from \"./fr-FR.mjs\";\nimport $k51So$heILmodulejs from \"./he-IL.mjs\";\nimport $k51So$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $k51So$huHUmodulejs from \"./hu-HU.mjs\";\nimport $k51So$itITmodulejs from \"./it-IT.mjs\";\nimport $k51So$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $k51So$koKRmodulejs from \"./ko-KR.mjs\";\nimport $k51So$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $k51So$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $k51So$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $k51So$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $k51So$plPLmodulejs from \"./pl-PL.mjs\";\nimport $k51So$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $k51So$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $k51So$roROmodulejs from \"./ro-RO.mjs\";\nimport $k51So$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $k51So$skSKmodulejs from \"./sk-SK.mjs\";\nimport $k51So$slSImodulejs from \"./sl-SI.mjs\";\nimport $k51So$srSPmodulejs from \"./sr-SP.mjs\";\nimport $k51So$svSEmodulejs from \"./sv-SE.mjs\";\nimport $k51So$trTRmodulejs from \"./tr-TR.mjs\";\nimport $k51So$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $k51So$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $k51So$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $a2f21f5f14f60553$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$a2f21f5f14f60553$exports = {\n \"ar-AE\": $k51So$arAEmodulejs,\n \"bg-BG\": $k51So$bgBGmodulejs,\n \"cs-CZ\": $k51So$csCZmodulejs,\n \"da-DK\": $k51So$daDKmodulejs,\n \"de-DE\": $k51So$deDEmodulejs,\n \"el-GR\": $k51So$elGRmodulejs,\n \"en-US\": $k51So$enUSmodulejs,\n \"es-ES\": $k51So$esESmodulejs,\n \"et-EE\": $k51So$etEEmodulejs,\n \"fi-FI\": $k51So$fiFImodulejs,\n \"fr-FR\": $k51So$frFRmodulejs,\n \"he-IL\": $k51So$heILmodulejs,\n \"hr-HR\": $k51So$hrHRmodulejs,\n \"hu-HU\": $k51So$huHUmodulejs,\n \"it-IT\": $k51So$itITmodulejs,\n \"ja-JP\": $k51So$jaJPmodulejs,\n \"ko-KR\": $k51So$koKRmodulejs,\n \"lt-LT\": $k51So$ltLTmodulejs,\n \"lv-LV\": $k51So$lvLVmodulejs,\n \"nb-NO\": $k51So$nbNOmodulejs,\n \"nl-NL\": $k51So$nlNLmodulejs,\n \"pl-PL\": $k51So$plPLmodulejs,\n \"pt-BR\": $k51So$ptBRmodulejs,\n \"pt-PT\": $k51So$ptPTmodulejs,\n \"ro-RO\": $k51So$roROmodulejs,\n \"ru-RU\": $k51So$ruRUmodulejs,\n \"sk-SK\": $k51So$skSKmodulejs,\n \"sl-SI\": $k51So$slSImodulejs,\n \"sr-SP\": $k51So$srSPmodulejs,\n \"sv-SE\": $k51So$svSEmodulejs,\n \"tr-TR\": $k51So$trTRmodulejs,\n \"uk-UA\": $k51So$ukUAmodulejs,\n \"zh-CN\": $k51So$zhCNmodulejs,\n \"zh-TW\": $k51So$zhTWmodulejs\n};\n\n\nexport {$a2f21f5f14f60553$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","import {mergeProps as $7JYt2$mergeProps} from \"@react-aria/utils\";\nimport $7JYt2$react, {useState as $7JYt2$useState, useMemo as $7JYt2$useMemo} from \"react\";\nimport {useFocusWithin as $7JYt2$useFocusWithin} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $5c3e21d68f1c4674$var$styles = {\n border: 0,\n clip: 'rect(0 0 0 0)',\n clipPath: 'inset(50%)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n width: '1px',\n whiteSpace: 'nowrap'\n};\nfunction $5c3e21d68f1c4674$export$a966af930f325cab(props = {}) {\n let { style: style, isFocusable: isFocusable } = props;\n let [isFocused, setFocused] = (0, $7JYt2$useState)(false);\n let { focusWithinProps: focusWithinProps } = (0, $7JYt2$useFocusWithin)({\n isDisabled: !isFocusable,\n onFocusWithinChange: (val)=>setFocused(val)\n });\n // If focused, don't hide the element.\n let combinedStyles = (0, $7JYt2$useMemo)(()=>{\n if (isFocused) return style;\n else if (style) return {\n ...$5c3e21d68f1c4674$var$styles,\n ...style\n };\n else return $5c3e21d68f1c4674$var$styles;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isFocused\n ]);\n return {\n visuallyHiddenProps: {\n ...focusWithinProps,\n style: combinedStyles\n }\n };\n}\nfunction $5c3e21d68f1c4674$export$439d29a4e110a164(props) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n let { children: children, elementType: Element = 'div', isFocusable: isFocusable, style: style, ...otherProps } = props;\n let { visuallyHiddenProps: visuallyHiddenProps } = $5c3e21d68f1c4674$export$a966af930f325cab(props);\n return /*#__PURE__*/ (0, $7JYt2$react).createElement(Element, (0, $7JYt2$mergeProps)(otherProps, visuallyHiddenProps), children);\n}\n\n\nexport {$5c3e21d68f1c4674$export$a966af930f325cab as useVisuallyHidden, $5c3e21d68f1c4674$export$439d29a4e110a164 as VisuallyHidden};\n//# sourceMappingURL=VisuallyHidden.module.js.map\n","import $iYaQO$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport $iYaQO$react from \"react\";\nimport {useLabels as $iYaQO$useLabels} from \"@react-aria/utils\";\nimport {useLocalizedStringFormatter as $iYaQO$useLocalizedStringFormatter} from \"@react-aria/i18n\";\nimport {VisuallyHidden as $iYaQO$VisuallyHidden} from \"@react-aria/visually-hidden\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $86ea4cb521eb2e37$export$2317d149ed6f78c4(props) {\n let { onDismiss: onDismiss, ...otherProps } = props;\n let stringFormatter = (0, $iYaQO$useLocalizedStringFormatter)((0, ($parcel$interopDefault($iYaQO$intlStringsmodulejs))), '@react-aria/overlays');\n let labels = (0, $iYaQO$useLabels)(otherProps, stringFormatter.format('dismiss'));\n let onClick = ()=>{\n if (onDismiss) onDismiss();\n };\n return /*#__PURE__*/ (0, $iYaQO$react).createElement((0, $iYaQO$VisuallyHidden), null, /*#__PURE__*/ (0, $iYaQO$react).createElement(\"button\", {\n ...labels,\n tabIndex: -1,\n onClick: onClick,\n style: {\n width: 1,\n height: 1\n }\n }));\n}\n\n\nexport {$86ea4cb521eb2e37$export$2317d149ed6f78c4 as DismissButton};\n//# sourceMappingURL=DismissButton.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Keeps a ref count of all hidden elements. Added to when hiding an element, and\n// subtracted from when showing it again. When it reaches zero, aria-hidden is removed.\nlet $5e3802645cc19319$var$refCountMap = new WeakMap();\nlet $5e3802645cc19319$var$observerStack = [];\nfunction $5e3802645cc19319$export$1c3ebcada18427bf(targets, root = document.body) {\n let visibleNodes = new Set(targets);\n let hiddenNodes = new Set();\n let walk = (root)=>{\n // Keep live announcer and top layer elements (e.g. toasts) visible.\n for (let element of root.querySelectorAll('[data-live-announcer], [data-react-aria-top-layer]'))visibleNodes.add(element);\n let acceptNode = (node)=>{\n // Skip this node and its children if it is one of the target nodes, or a live announcer.\n // Also skip children of already hidden nodes, as aria-hidden is recursive. An exception is\n // made for elements with role=\"row\" since VoiceOver on iOS has issues hiding elements with role=\"row\".\n // For that case we want to hide the cells inside as well (https://bugs.webkit.org/show_bug.cgi?id=222623).\n if (visibleNodes.has(node) || node.parentElement && hiddenNodes.has(node.parentElement) && node.parentElement.getAttribute('role') !== 'row') return NodeFilter.FILTER_REJECT;\n // Skip this node but continue to children if one of the targets is inside the node.\n for (let target of visibleNodes){\n if (node.contains(target)) return NodeFilter.FILTER_SKIP;\n }\n return NodeFilter.FILTER_ACCEPT;\n };\n let walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, {\n acceptNode: acceptNode\n });\n // TreeWalker does not include the root.\n let acceptRoot = acceptNode(root);\n if (acceptRoot === NodeFilter.FILTER_ACCEPT) hide(root);\n if (acceptRoot !== NodeFilter.FILTER_REJECT) {\n let node = walker.nextNode();\n while(node != null){\n hide(node);\n node = walker.nextNode();\n }\n }\n };\n let hide = (node)=>{\n var _refCountMap_get;\n let refCount = (_refCountMap_get = $5e3802645cc19319$var$refCountMap.get(node)) !== null && _refCountMap_get !== void 0 ? _refCountMap_get : 0;\n // If already aria-hidden, and the ref count is zero, then this element\n // was already hidden and there's nothing for us to do.\n if (node.getAttribute('aria-hidden') === 'true' && refCount === 0) return;\n if (refCount === 0) node.setAttribute('aria-hidden', 'true');\n hiddenNodes.add(node);\n $5e3802645cc19319$var$refCountMap.set(node, refCount + 1);\n };\n // If there is already a MutationObserver listening from a previous call,\n // disconnect it so the new on takes over.\n if ($5e3802645cc19319$var$observerStack.length) $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1].disconnect();\n walk(root);\n let observer = new MutationObserver((changes)=>{\n for (let change of changes){\n if (change.type !== 'childList' || change.addedNodes.length === 0) continue;\n // If the parent element of the added nodes is not within one of the targets,\n // and not already inside a hidden node, hide all of the new children.\n if (![\n ...visibleNodes,\n ...hiddenNodes\n ].some((node)=>node.contains(change.target))) {\n for (let node of change.removedNodes)if (node instanceof Element) {\n visibleNodes.delete(node);\n hiddenNodes.delete(node);\n }\n for (let node of change.addedNodes){\n if ((node instanceof HTMLElement || node instanceof SVGElement) && (node.dataset.liveAnnouncer === 'true' || node.dataset.reactAriaTopLayer === 'true')) visibleNodes.add(node);\n else if (node instanceof Element) walk(node);\n }\n }\n }\n });\n observer.observe(root, {\n childList: true,\n subtree: true\n });\n let observerWrapper = {\n visibleNodes: visibleNodes,\n hiddenNodes: hiddenNodes,\n observe () {\n observer.observe(root, {\n childList: true,\n subtree: true\n });\n },\n disconnect () {\n observer.disconnect();\n }\n };\n $5e3802645cc19319$var$observerStack.push(observerWrapper);\n return ()=>{\n observer.disconnect();\n for (let node of hiddenNodes){\n let count = $5e3802645cc19319$var$refCountMap.get(node);\n if (count == null) continue;\n if (count === 1) {\n node.removeAttribute('aria-hidden');\n $5e3802645cc19319$var$refCountMap.delete(node);\n } else $5e3802645cc19319$var$refCountMap.set(node, count - 1);\n }\n // Remove this observer from the stack, and start the previous one.\n if (observerWrapper === $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1]) {\n $5e3802645cc19319$var$observerStack.pop();\n if ($5e3802645cc19319$var$observerStack.length) $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1].observe();\n } else $5e3802645cc19319$var$observerStack.splice($5e3802645cc19319$var$observerStack.indexOf(observerWrapper), 1);\n };\n}\nfunction $5e3802645cc19319$export$1020fa7f77e17884(element) {\n let observer = $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1];\n if (observer && !observer.visibleNodes.has(element)) {\n observer.visibleNodes.add(element);\n return ()=>{\n observer.visibleNodes.delete(element);\n };\n }\n}\n\n\nexport {$5e3802645cc19319$export$1c3ebcada18427bf as ariaHideOutside, $5e3802645cc19319$export$1020fa7f77e17884 as keepVisible};\n//# sourceMappingURL=ariaHideOutside.module.js.map\n","import {ariaHideOutside as $5e3802645cc19319$export$1c3ebcada18427bf, keepVisible as $5e3802645cc19319$export$1020fa7f77e17884} from \"./ariaHideOutside.mjs\";\nimport {useOverlayPosition as $2a41e45df1593e64$export$d39e1813b3bdd0e1} from \"./useOverlayPosition.mjs\";\nimport {useOverlay as $a11501f3d1d39e6c$export$ea8f71083e90600f} from \"./useOverlay.mjs\";\nimport {usePreventScroll as $49c51c25361d4cd2$export$ee0f7cc6afcd1c18} from \"./usePreventScroll.mjs\";\nimport {useLayoutEffect as $m0yab$useLayoutEffect, mergeProps as $m0yab$mergeProps} from \"@react-aria/utils\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $f2f8a6077418541e$export$542a6fd13ac93354(props, state) {\n let { triggerRef: triggerRef, popoverRef: popoverRef, groupRef: groupRef, isNonModal: isNonModal, isKeyboardDismissDisabled: isKeyboardDismissDisabled, shouldCloseOnInteractOutside: shouldCloseOnInteractOutside, ...otherProps } = props;\n let isSubmenu = otherProps['trigger'] === 'SubmenuTrigger';\n let { overlayProps: overlayProps, underlayProps: underlayProps } = (0, $a11501f3d1d39e6c$export$ea8f71083e90600f)({\n isOpen: state.isOpen,\n onClose: state.close,\n shouldCloseOnBlur: true,\n isDismissable: !isNonModal || isSubmenu,\n isKeyboardDismissDisabled: isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside: shouldCloseOnInteractOutside\n }, groupRef !== null && groupRef !== void 0 ? groupRef : popoverRef);\n let { overlayProps: positionProps, arrowProps: arrowProps, placement: placement } = (0, $2a41e45df1593e64$export$d39e1813b3bdd0e1)({\n ...otherProps,\n targetRef: triggerRef,\n overlayRef: popoverRef,\n isOpen: state.isOpen,\n onClose: isNonModal && !isSubmenu ? state.close : null\n });\n (0, $49c51c25361d4cd2$export$ee0f7cc6afcd1c18)({\n isDisabled: isNonModal || !state.isOpen\n });\n (0, $m0yab$useLayoutEffect)(()=>{\n if (state.isOpen && popoverRef.current) {\n var _groupRef_current, _groupRef_current1;\n if (isNonModal) return (0, $5e3802645cc19319$export$1020fa7f77e17884)((_groupRef_current = groupRef === null || groupRef === void 0 ? void 0 : groupRef.current) !== null && _groupRef_current !== void 0 ? _groupRef_current : popoverRef.current);\n else return (0, $5e3802645cc19319$export$1c3ebcada18427bf)([\n (_groupRef_current1 = groupRef === null || groupRef === void 0 ? void 0 : groupRef.current) !== null && _groupRef_current1 !== void 0 ? _groupRef_current1 : popoverRef.current\n ]);\n }\n }, [\n isNonModal,\n state.isOpen,\n popoverRef,\n groupRef\n ]);\n return {\n popoverProps: (0, $m0yab$mergeProps)(overlayProps, positionProps),\n arrowProps: arrowProps,\n underlayProps: underlayProps,\n placement: placement\n };\n}\n\n\nexport {$f2f8a6077418541e$export$542a6fd13ac93354 as usePopover};\n//# sourceMappingURL=usePopover.module.js.map\n","import {useUNSAFE_PortalContext as $96b38030c423d352$export$9fc1347d4195ccb3} from \"./PortalProvider.mjs\";\nimport {ClearPressResponder as $1CM7W$ClearPressResponder} from \"@react-aria/interactions\";\nimport {FocusScope as $1CM7W$FocusScope} from \"@react-aria/focus\";\nimport $1CM7W$react, {useState as $1CM7W$useState, useMemo as $1CM7W$useMemo, useContext as $1CM7W$useContext} from \"react\";\nimport $1CM7W$reactdom from \"react-dom\";\nimport {useIsSSR as $1CM7W$useIsSSR} from \"@react-aria/ssr\";\nimport {useLayoutEffect as $1CM7W$useLayoutEffect} from \"@react-aria/utils\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\nconst $337b884510726a0d$export$a2200b96afd16271 = /*#__PURE__*/ (0, $1CM7W$react).createContext(null);\nfunction $337b884510726a0d$export$c6fdb837b070b4ff(props) {\n let isSSR = (0, $1CM7W$useIsSSR)();\n let { portalContainer: portalContainer = isSSR ? null : document.body, isExiting: isExiting } = props;\n let [contain, setContain] = (0, $1CM7W$useState)(false);\n let contextValue = (0, $1CM7W$useMemo)(()=>({\n contain: contain,\n setContain: setContain\n }), [\n contain,\n setContain\n ]);\n let { getContainer: getContainer } = (0, $96b38030c423d352$export$9fc1347d4195ccb3)();\n if (!props.portalContainer && getContainer) portalContainer = getContainer();\n if (!portalContainer) return null;\n let contents = props.children;\n if (!props.disableFocusManagement) contents = /*#__PURE__*/ (0, $1CM7W$react).createElement((0, $1CM7W$FocusScope), {\n restoreFocus: true,\n contain: (props.shouldContainFocus || contain) && !isExiting\n }, contents);\n contents = /*#__PURE__*/ (0, $1CM7W$react).createElement($337b884510726a0d$export$a2200b96afd16271.Provider, {\n value: contextValue\n }, /*#__PURE__*/ (0, $1CM7W$react).createElement((0, $1CM7W$ClearPressResponder), null, contents));\n return /*#__PURE__*/ (0, $1CM7W$reactdom).createPortal(contents, portalContainer);\n}\nfunction $337b884510726a0d$export$14c98a7594375490() {\n let ctx = (0, $1CM7W$useContext)($337b884510726a0d$export$a2200b96afd16271);\n let setContain = ctx === null || ctx === void 0 ? void 0 : ctx.setContain;\n (0, $1CM7W$useLayoutEffect)(()=>{\n setContain === null || setContain === void 0 ? void 0 : setContain(true);\n }, [\n setContain\n ]);\n}\n\n\nexport {$337b884510726a0d$export$a2200b96afd16271 as OverlayContext, $337b884510726a0d$export$c6fdb837b070b4ff as Overlay, $337b884510726a0d$export$14c98a7594375490 as useOverlayFocusContain};\n//# sourceMappingURL=Overlay.module.js.map\n","import {ariaHideOutside as $5e3802645cc19319$export$1c3ebcada18427bf} from \"./ariaHideOutside.mjs\";\nimport {useOverlay as $a11501f3d1d39e6c$export$ea8f71083e90600f} from \"./useOverlay.mjs\";\nimport {useOverlayFocusContain as $337b884510726a0d$export$14c98a7594375490} from \"./Overlay.mjs\";\nimport {usePreventScroll as $49c51c25361d4cd2$export$ee0f7cc6afcd1c18} from \"./usePreventScroll.mjs\";\nimport {mergeProps as $7Dhkr$mergeProps} from \"@react-aria/utils\";\nimport {useEffect as $7Dhkr$useEffect} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nfunction $8ac8429251c45e4b$export$dbc0f175b25fb0fb(props, state, ref) {\n let { overlayProps: overlayProps, underlayProps: underlayProps } = (0, $a11501f3d1d39e6c$export$ea8f71083e90600f)({\n ...props,\n isOpen: state.isOpen,\n onClose: state.close\n }, ref);\n (0, $49c51c25361d4cd2$export$ee0f7cc6afcd1c18)({\n isDisabled: !state.isOpen\n });\n (0, $337b884510726a0d$export$14c98a7594375490)();\n (0, $7Dhkr$useEffect)(()=>{\n if (state.isOpen && ref.current) return (0, $5e3802645cc19319$export$1c3ebcada18427bf)([\n ref.current\n ]);\n }, [\n state.isOpen,\n ref\n ]);\n return {\n modalProps: (0, $7Dhkr$mergeProps)(overlayProps),\n underlayProps: underlayProps\n };\n}\n\n\nexport {$8ac8429251c45e4b$export$dbc0f175b25fb0fb as useModalOverlay};\n//# sourceMappingURL=useModalOverlay.module.js.map\n","import $czs6v$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {useId as $czs6v$useId, focusWithoutScrolling as $czs6v$focusWithoutScrolling} from \"@react-aria/utils\";\nimport {useLongPress as $czs6v$useLongPress} from \"@react-aria/interactions\";\nimport {useLocalizedStringFormatter as $czs6v$useLocalizedStringFormatter} from \"@react-aria/i18n\";\nimport {useOverlayTrigger as $czs6v$useOverlayTrigger} from \"@react-aria/overlays\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $168583247155ddda$export$dc9c12ed27dd1b49(props, state, ref) {\n let { type: type = 'menu', isDisabled: isDisabled, trigger: trigger = 'press' } = props;\n let menuTriggerId = (0, $czs6v$useId)();\n let { triggerProps: triggerProps, overlayProps: overlayProps } = (0, $czs6v$useOverlayTrigger)({\n type: type\n }, state, ref);\n let onKeyDown = (e)=>{\n if (isDisabled) return;\n if (trigger === 'longPress' && !e.altKey) return;\n if (ref && ref.current) switch(e.key){\n case 'Enter':\n case ' ':\n if (trigger === 'longPress') return;\n // fallthrough\n case 'ArrowDown':\n // Stop propagation, unless it would already be handled by useKeyboard.\n if (!('continuePropagation' in e)) e.stopPropagation();\n e.preventDefault();\n state.toggle('first');\n break;\n case 'ArrowUp':\n if (!('continuePropagation' in e)) e.stopPropagation();\n e.preventDefault();\n state.toggle('last');\n break;\n default:\n // Allow other keys.\n if ('continuePropagation' in e) e.continuePropagation();\n }\n };\n let stringFormatter = (0, $czs6v$useLocalizedStringFormatter)((0, ($parcel$interopDefault($czs6v$intlStringsmodulejs))), '@react-aria/menu');\n let { longPressProps: longPressProps } = (0, $czs6v$useLongPress)({\n isDisabled: isDisabled || trigger !== 'longPress',\n accessibilityDescription: stringFormatter.format('longPressMessage'),\n onLongPressStart () {\n state.close();\n },\n onLongPress () {\n state.open('first');\n }\n });\n let pressProps = {\n preventFocusOnPress: true,\n onPressStart (e) {\n // For consistency with native, open the menu on mouse/key down, but touch up.\n if (e.pointerType !== 'touch' && e.pointerType !== 'keyboard' && !isDisabled) {\n // Ensure trigger has focus before opening the menu so it can be restored by FocusScope on close.\n (0, $czs6v$focusWithoutScrolling)(e.target);\n // If opened with a screen reader, auto focus the first item.\n // Otherwise, the menu itself will be focused.\n state.open(e.pointerType === 'virtual' ? 'first' : null);\n }\n },\n onPress (e) {\n if (e.pointerType === 'touch' && !isDisabled) {\n // Ensure trigger has focus before opening the menu so it can be restored by FocusScope on close.\n (0, $czs6v$focusWithoutScrolling)(e.target);\n state.toggle();\n }\n }\n };\n // omit onPress from triggerProps since we override it above.\n delete triggerProps.onPress;\n return {\n // @ts-ignore - TODO we pass out both DOMAttributes AND AriaButtonProps, but useButton will discard the longPress event handlers, it's only through PressResponder magic that this works for RSP and RAC. it does not work in aria examples\n menuTriggerProps: {\n ...triggerProps,\n ...trigger === 'press' ? pressProps : longPressProps,\n id: menuTriggerId,\n onKeyDown: onKeyDown\n },\n menuProps: {\n ...overlayProps,\n 'aria-labelledby': menuTriggerId,\n autoFocus: state.focusStrategy || true,\n onClose: state.close\n }\n };\n}\n\n\nexport {$168583247155ddda$export$dc9c12ed27dd1b49 as useMenuTrigger};\n//# sourceMappingURL=useMenuTrigger.module.js.map\n","/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $fc79756100351201$export$6f49b4016bfc8d56 = new WeakMap();\n\n\nexport {$fc79756100351201$export$6f49b4016bfc8d56 as menuData};\n//# sourceMappingURL=utils.module.js.map\n","import {isAppleDevice as $jUnAJ$isAppleDevice, useId as $jUnAJ$useId} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $feb5ffebff200149$export$d3e3bd3e26688c04(e) {\n // Ctrl + Arrow Up/Arrow Down has a system wide meaning on macOS, so use Alt instead.\n // On Windows and Ubuntu, Alt + Space has a system wide meaning.\n return (0, $jUnAJ$isAppleDevice)() ? e.altKey : e.ctrlKey;\n}\nfunction $feb5ffebff200149$export$c3d8340acf92597f(collectionRef, key) {\n var _collectionRef_current, _collectionRef_current1;\n let selector = `[data-key=\"${CSS.escape(String(key))}\"]`;\n let collection = (_collectionRef_current = collectionRef.current) === null || _collectionRef_current === void 0 ? void 0 : _collectionRef_current.dataset.collection;\n if (collection) selector = `[data-collection=\"${CSS.escape(collection)}\"]${selector}`;\n return (_collectionRef_current1 = collectionRef.current) === null || _collectionRef_current1 === void 0 ? void 0 : _collectionRef_current1.querySelector(selector);\n}\nconst $feb5ffebff200149$var$collectionMap = new WeakMap();\nfunction $feb5ffebff200149$export$881eb0d9f3605d9d(collection) {\n let id = (0, $jUnAJ$useId)();\n $feb5ffebff200149$var$collectionMap.set(collection, id);\n return id;\n}\nfunction $feb5ffebff200149$export$6aeb1680a0ae8741(collection) {\n return $feb5ffebff200149$var$collectionMap.get(collection);\n}\n\n\nexport {$feb5ffebff200149$export$d3e3bd3e26688c04 as isNonContiguousSelectionModifier, $feb5ffebff200149$export$c3d8340acf92597f as getItemElement, $feb5ffebff200149$export$881eb0d9f3605d9d as useCollectionId, $feb5ffebff200149$export$6aeb1680a0ae8741 as getCollectionId};\n//# sourceMappingURL=utils.module.js.map\n","import {useRef as $dAE4Y$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n/**\n * Controls how long to wait before clearing the typeahead buffer.\n */ const $fb3050f43d946246$var$TYPEAHEAD_DEBOUNCE_WAIT_MS = 1000; // 1 second\nfunction $fb3050f43d946246$export$e32c88dfddc6e1d8(options) {\n let { keyboardDelegate: keyboardDelegate, selectionManager: selectionManager, onTypeSelect: onTypeSelect } = options;\n let state = (0, $dAE4Y$useRef)({\n search: '',\n timeout: undefined\n }).current;\n let onKeyDown = (e)=>{\n let character = $fb3050f43d946246$var$getStringForKey(e.key);\n if (!character || e.ctrlKey || e.metaKey || !e.currentTarget.contains(e.target)) return;\n // Do not propagate the Spacebar event if it's meant to be part of the search.\n // When we time out, the search term becomes empty, hence the check on length.\n // Trimming is to account for the case of pressing the Spacebar more than once,\n // which should cycle through the selection/deselection of the focused item.\n if (character === ' ' && state.search.trim().length > 0) {\n e.preventDefault();\n if (!('continuePropagation' in e)) e.stopPropagation();\n }\n state.search += character;\n if (keyboardDelegate.getKeyForSearch != null) {\n // Use the delegate to find a key to focus.\n // Prioritize items after the currently focused item, falling back to searching the whole list.\n let key = keyboardDelegate.getKeyForSearch(state.search, selectionManager.focusedKey);\n // If no key found, search from the top.\n if (key == null) key = keyboardDelegate.getKeyForSearch(state.search);\n if (key != null) {\n selectionManager.setFocusedKey(key);\n if (onTypeSelect) onTypeSelect(key);\n }\n }\n clearTimeout(state.timeout);\n state.timeout = setTimeout(()=>{\n state.search = '';\n }, $fb3050f43d946246$var$TYPEAHEAD_DEBOUNCE_WAIT_MS);\n };\n return {\n typeSelectProps: {\n // Using a capturing listener to catch the keydown event before\n // other hooks in order to handle the Spacebar event.\n onKeyDownCapture: keyboardDelegate.getKeyForSearch ? onKeyDown : undefined\n }\n };\n}\nfunction $fb3050f43d946246$var$getStringForKey(key) {\n // If the key is of length 1, it is an ASCII value.\n // Otherwise, if there are no ASCII characters in the key name,\n // it is a Unicode character.\n // See https://www.w3.org/TR/uievents-key/\n if (key.length === 1 || !/^[A-Z]/i.test(key)) return key;\n return '';\n}\n\n\nexport {$fb3050f43d946246$export$e32c88dfddc6e1d8 as useTypeSelect};\n//# sourceMappingURL=useTypeSelect.module.js.map\n","import {getItemElement as $feb5ffebff200149$export$c3d8340acf92597f, isNonContiguousSelectionModifier as $feb5ffebff200149$export$d3e3bd3e26688c04, useCollectionId as $feb5ffebff200149$export$881eb0d9f3605d9d} from \"./utils.mjs\";\nimport {useTypeSelect as $fb3050f43d946246$export$e32c88dfddc6e1d8} from \"./useTypeSelect.mjs\";\nimport {useRouter as $3H3GQ$useRouter, isCtrlKeyPressed as $3H3GQ$isCtrlKeyPressed, focusWithoutScrolling as $3H3GQ$focusWithoutScrolling, useEvent as $3H3GQ$useEvent, scrollIntoViewport as $3H3GQ$scrollIntoViewport, FOCUS_EVENT as $3H3GQ$FOCUS_EVENT, useEffectEvent as $3H3GQ$useEffectEvent, useUpdateLayoutEffect as $3H3GQ$useUpdateLayoutEffect, CLEAR_FOCUS_EVENT as $3H3GQ$CLEAR_FOCUS_EVENT, scrollIntoView as $3H3GQ$scrollIntoView, mergeProps as $3H3GQ$mergeProps} from \"@react-aria/utils\";\nimport {flushSync as $3H3GQ$flushSync} from \"react-dom\";\nimport {useRef as $3H3GQ$useRef, useEffect as $3H3GQ$useEffect} from \"react\";\nimport {getInteractionModality as $3H3GQ$getInteractionModality, focusSafely as $3H3GQ$focusSafely} from \"@react-aria/interactions\";\nimport {getFocusableTreeWalker as $3H3GQ$getFocusableTreeWalker, moveVirtualFocus as $3H3GQ$moveVirtualFocus} from \"@react-aria/focus\";\nimport {useLocale as $3H3GQ$useLocale} from \"@react-aria/i18n\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\nfunction $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {\n let { selectionManager: manager, keyboardDelegate: delegate, ref: ref, autoFocus: autoFocus = false, shouldFocusWrap: shouldFocusWrap = false, disallowEmptySelection: disallowEmptySelection = false, disallowSelectAll: disallowSelectAll = false, escapeKeyBehavior: escapeKeyBehavior = 'clearSelection', selectOnFocus: selectOnFocus = manager.selectionBehavior === 'replace', disallowTypeAhead: disallowTypeAhead = false, shouldUseVirtualFocus: shouldUseVirtualFocus, allowsTabNavigation: allowsTabNavigation = false, isVirtualized: isVirtualized, scrollRef: // If no scrollRef is provided, assume the collection ref is the scrollable region\n scrollRef = ref, linkBehavior: linkBehavior = 'action' } = options;\n let { direction: direction } = (0, $3H3GQ$useLocale)();\n let router = (0, $3H3GQ$useRouter)();\n let onKeyDown = (e)=>{\n var _ref_current;\n // Prevent option + tab from doing anything since it doesn't move focus to the cells, only buttons/checkboxes\n if (e.altKey && e.key === 'Tab') e.preventDefault();\n // Keyboard events bubble through portals. Don't handle keyboard events\n // for elements outside the collection (e.g. menus).\n if (!((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(e.target))) return;\n const navigateToKey = (key, childFocus)=>{\n if (key != null) {\n if (manager.isLink(key) && linkBehavior === 'selection' && selectOnFocus && !(0, $feb5ffebff200149$export$d3e3bd3e26688c04)(e)) {\n // Set focused key and re-render synchronously to bring item into view if needed.\n (0, $3H3GQ$flushSync)(()=>{\n manager.setFocusedKey(key, childFocus);\n });\n let item = (0, $feb5ffebff200149$export$c3d8340acf92597f)(ref, key);\n let itemProps = manager.getItemProps(key);\n if (item) router.open(item, e, itemProps.href, itemProps.routerOptions);\n return;\n }\n manager.setFocusedKey(key, childFocus);\n if (manager.isLink(key) && linkBehavior === 'override') return;\n if (e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(key);\n else if (selectOnFocus && !(0, $feb5ffebff200149$export$d3e3bd3e26688c04)(e)) manager.replaceSelection(key);\n }\n };\n switch(e.key){\n case 'ArrowDown':\n if (delegate.getKeyBelow) {\n var _delegate_getKeyBelow, _delegate_getFirstKey, _delegate_getFirstKey1;\n let nextKey = manager.focusedKey != null ? (_delegate_getKeyBelow = delegate.getKeyBelow) === null || _delegate_getKeyBelow === void 0 ? void 0 : _delegate_getKeyBelow.call(delegate, manager.focusedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);\n if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getFirstKey1 = delegate.getFirstKey) === null || _delegate_getFirstKey1 === void 0 ? void 0 : _delegate_getFirstKey1.call(delegate, manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey);\n }\n }\n break;\n case 'ArrowUp':\n if (delegate.getKeyAbove) {\n var _delegate_getKeyAbove, _delegate_getLastKey, _delegate_getLastKey1;\n let nextKey = manager.focusedKey != null ? (_delegate_getKeyAbove = delegate.getKeyAbove) === null || _delegate_getKeyAbove === void 0 ? void 0 : _delegate_getKeyAbove.call(delegate, manager.focusedKey) : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate);\n if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getLastKey1 = delegate.getLastKey) === null || _delegate_getLastKey1 === void 0 ? void 0 : _delegate_getLastKey1.call(delegate, manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey);\n }\n }\n break;\n case 'ArrowLeft':\n if (delegate.getKeyLeftOf) {\n var _delegate_getKeyLeftOf, _delegate_getFirstKey2, _delegate_getLastKey2;\n let nextKey = manager.focusedKey != null ? (_delegate_getKeyLeftOf = delegate.getKeyLeftOf) === null || _delegate_getKeyLeftOf === void 0 ? void 0 : _delegate_getKeyLeftOf.call(delegate, manager.focusedKey) : null;\n if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getFirstKey2 = delegate.getFirstKey) === null || _delegate_getFirstKey2 === void 0 ? void 0 : _delegate_getFirstKey2.call(delegate, manager.focusedKey) : (_delegate_getLastKey2 = delegate.getLastKey) === null || _delegate_getLastKey2 === void 0 ? void 0 : _delegate_getLastKey2.call(delegate, manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey, direction === 'rtl' ? 'first' : 'last');\n }\n }\n break;\n case 'ArrowRight':\n if (delegate.getKeyRightOf) {\n var _delegate_getKeyRightOf, _delegate_getLastKey3, _delegate_getFirstKey3;\n let nextKey = manager.focusedKey != null ? (_delegate_getKeyRightOf = delegate.getKeyRightOf) === null || _delegate_getKeyRightOf === void 0 ? void 0 : _delegate_getKeyRightOf.call(delegate, manager.focusedKey) : null;\n if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getLastKey3 = delegate.getLastKey) === null || _delegate_getLastKey3 === void 0 ? void 0 : _delegate_getLastKey3.call(delegate, manager.focusedKey) : (_delegate_getFirstKey3 = delegate.getFirstKey) === null || _delegate_getFirstKey3 === void 0 ? void 0 : _delegate_getFirstKey3.call(delegate, manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey, direction === 'rtl' ? 'last' : 'first');\n }\n }\n break;\n case 'Home':\n if (delegate.getFirstKey) {\n if (manager.focusedKey === null && e.shiftKey) return;\n e.preventDefault();\n let firstKey = delegate.getFirstKey(manager.focusedKey, (0, $3H3GQ$isCtrlKeyPressed)(e));\n manager.setFocusedKey(firstKey);\n if (firstKey != null) {\n if ((0, $3H3GQ$isCtrlKeyPressed)(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(firstKey);\n else if (selectOnFocus) manager.replaceSelection(firstKey);\n }\n }\n break;\n case 'End':\n if (delegate.getLastKey) {\n if (manager.focusedKey === null && e.shiftKey) return;\n e.preventDefault();\n let lastKey = delegate.getLastKey(manager.focusedKey, (0, $3H3GQ$isCtrlKeyPressed)(e));\n manager.setFocusedKey(lastKey);\n if (lastKey != null) {\n if ((0, $3H3GQ$isCtrlKeyPressed)(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(lastKey);\n else if (selectOnFocus) manager.replaceSelection(lastKey);\n }\n }\n break;\n case 'PageDown':\n if (delegate.getKeyPageBelow && manager.focusedKey != null) {\n let nextKey = delegate.getKeyPageBelow(manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey);\n }\n }\n break;\n case 'PageUp':\n if (delegate.getKeyPageAbove && manager.focusedKey != null) {\n let nextKey = delegate.getKeyPageAbove(manager.focusedKey);\n if (nextKey != null) {\n e.preventDefault();\n navigateToKey(nextKey);\n }\n }\n break;\n case 'a':\n if ((0, $3H3GQ$isCtrlKeyPressed)(e) && manager.selectionMode === 'multiple' && disallowSelectAll !== true) {\n e.preventDefault();\n manager.selectAll();\n }\n break;\n case 'Escape':\n if (escapeKeyBehavior === 'clearSelection' && !disallowEmptySelection && manager.selectedKeys.size !== 0) {\n e.stopPropagation();\n e.preventDefault();\n manager.clearSelection();\n }\n break;\n case 'Tab':\n if (!allowsTabNavigation) {\n // There may be elements that are \"tabbable\" inside a collection (e.g. in a grid cell).\n // However, collections should be treated as a single tab stop, with arrow key navigation internally.\n // We don't control the rendering of these, so we can't override the tabIndex to prevent tabbing.\n // Instead, we handle the Tab key, and move focus manually to the first/last tabbable element\n // in the collection, so that the browser default behavior will apply starting from that element\n // rather than the currently focused one.\n if (e.shiftKey) ref.current.focus();\n else {\n let walker = (0, $3H3GQ$getFocusableTreeWalker)(ref.current, {\n tabbable: true\n });\n let next = undefined;\n let last;\n do {\n last = walker.lastChild();\n if (last) next = last;\n }while (last);\n if (next && !next.contains(document.activeElement)) (0, $3H3GQ$focusWithoutScrolling)(next);\n }\n break;\n }\n }\n };\n // Store the scroll position so we can restore it later.\n /// TODO: should this happen all the time??\n let scrollPos = (0, $3H3GQ$useRef)({\n top: 0,\n left: 0\n });\n (0, $3H3GQ$useEvent)(scrollRef, 'scroll', isVirtualized ? undefined : ()=>{\n var _scrollRef_current, _scrollRef_current1;\n var _scrollRef_current_scrollTop, _scrollRef_current_scrollLeft;\n scrollPos.current = {\n top: (_scrollRef_current_scrollTop = (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 ? void 0 : _scrollRef_current.scrollTop) !== null && _scrollRef_current_scrollTop !== void 0 ? _scrollRef_current_scrollTop : 0,\n left: (_scrollRef_current_scrollLeft = (_scrollRef_current1 = scrollRef.current) === null || _scrollRef_current1 === void 0 ? void 0 : _scrollRef_current1.scrollLeft) !== null && _scrollRef_current_scrollLeft !== void 0 ? _scrollRef_current_scrollLeft : 0\n };\n });\n let onFocus = (e)=>{\n if (manager.isFocused) {\n // If a focus event bubbled through a portal, reset focus state.\n if (!e.currentTarget.contains(e.target)) manager.setFocused(false);\n return;\n }\n // Focus events can bubble through portals. Ignore these events.\n if (!e.currentTarget.contains(e.target)) return;\n manager.setFocused(true);\n if (manager.focusedKey == null) {\n var _delegate_getLastKey, _delegate_getFirstKey;\n let navigateToKey = (key)=>{\n if (key != null) {\n manager.setFocusedKey(key);\n if (selectOnFocus && !manager.isSelected(key)) manager.replaceSelection(key);\n }\n };\n // If the user hasn't yet interacted with the collection, there will be no focusedKey set.\n // Attempt to detect whether the user is tabbing forward or backward into the collection\n // and either focus the first or last item accordingly.\n let relatedTarget = e.relatedTarget;\n var _manager_lastSelectedKey, _manager_firstSelectedKey;\n if (relatedTarget && e.currentTarget.compareDocumentPosition(relatedTarget) & Node.DOCUMENT_POSITION_FOLLOWING) navigateToKey((_manager_lastSelectedKey = manager.lastSelectedKey) !== null && _manager_lastSelectedKey !== void 0 ? _manager_lastSelectedKey : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate));\n else navigateToKey((_manager_firstSelectedKey = manager.firstSelectedKey) !== null && _manager_firstSelectedKey !== void 0 ? _manager_firstSelectedKey : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate));\n } else if (!isVirtualized && scrollRef.current) {\n // Restore the scroll position to what it was before.\n scrollRef.current.scrollTop = scrollPos.current.top;\n scrollRef.current.scrollLeft = scrollPos.current.left;\n }\n if (manager.focusedKey != null && scrollRef.current) {\n // Refocus and scroll the focused item into view if it exists within the scrollable region.\n let element = (0, $feb5ffebff200149$export$c3d8340acf92597f)(ref, manager.focusedKey);\n if (element instanceof HTMLElement) {\n // This prevents a flash of focus on the first/last element in the collection, or the collection itself.\n if (!element.contains(document.activeElement) && !shouldUseVirtualFocus) (0, $3H3GQ$focusWithoutScrolling)(element);\n let modality = (0, $3H3GQ$getInteractionModality)();\n if (modality === 'keyboard') (0, $3H3GQ$scrollIntoViewport)(element, {\n containingElement: ref.current\n });\n }\n }\n };\n let onBlur = (e)=>{\n // Don't set blurred and then focused again if moving focus within the collection.\n if (!e.currentTarget.contains(e.relatedTarget)) manager.setFocused(false);\n };\n // Ref to track whether the first item in the collection should be automatically focused. Specifically used for autocomplete when user types\n // to focus the first key AFTER the collection updates.\n // TODO: potentially expand the usage of this\n let shouldVirtualFocusFirst = (0, $3H3GQ$useRef)(false);\n // Add event listeners for custom virtual events. These handle updating the focused key in response to various keyboard events\n // at the autocomplete level\n // TODO: fix type later\n (0, $3H3GQ$useEvent)(ref, (0, $3H3GQ$FOCUS_EVENT), !shouldUseVirtualFocus ? undefined : (e)=>{\n let { detail: detail } = e;\n e.stopPropagation();\n manager.setFocused(true);\n // If the user is typing forwards, autofocus the first option in the list.\n if ((detail === null || detail === void 0 ? void 0 : detail.focusStrategy) === 'first') shouldVirtualFocusFirst.current = true;\n });\n let updateActiveDescendant = (0, $3H3GQ$useEffectEvent)(()=>{\n var _delegate_getFirstKey;\n var _delegate_getFirstKey1;\n let keyToFocus = (_delegate_getFirstKey1 = (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate)) !== null && _delegate_getFirstKey1 !== void 0 ? _delegate_getFirstKey1 : null;\n // If no focusable items exist in the list, make sure to clear any activedescendant that may still exist\n if (keyToFocus == null) {\n (0, $3H3GQ$moveVirtualFocus)(ref.current);\n // If there wasn't a focusable key but the collection had items, then that means we aren't in an intermediate load state and all keys are disabled.\n // Reset shouldVirtualFocusFirst so that we don't erronously autofocus an item when the collection is filtered again.\n if (manager.collection.size > 0) shouldVirtualFocusFirst.current = false;\n } else {\n manager.setFocusedKey(keyToFocus);\n // Only set shouldVirtualFocusFirst to false if we've successfully set the first key as the focused key\n // If there wasn't a key to focus, we might be in a temporary loading state so we'll want to still focus the first key\n // after the collection updates after load\n shouldVirtualFocusFirst.current = false;\n }\n });\n (0, $3H3GQ$useUpdateLayoutEffect)(()=>{\n if (shouldVirtualFocusFirst.current) updateActiveDescendant();\n }, [\n manager.collection,\n updateActiveDescendant\n ]);\n let resetFocusFirstFlag = (0, $3H3GQ$useEffectEvent)(()=>{\n // If user causes the focused key to change in any other way, clear shouldVirtualFocusFirst so we don't\n // accidentally move focus from under them. Skip this if the collection was empty because we might be in a load\n // state and will still want to focus the first item after load\n if (manager.collection.size > 0) shouldVirtualFocusFirst.current = false;\n });\n (0, $3H3GQ$useUpdateLayoutEffect)(()=>{\n resetFocusFirstFlag();\n }, [\n manager.focusedKey,\n resetFocusFirstFlag\n ]);\n (0, $3H3GQ$useEvent)(ref, (0, $3H3GQ$CLEAR_FOCUS_EVENT), !shouldUseVirtualFocus ? undefined : (e)=>{\n var _e_detail;\n e.stopPropagation();\n manager.setFocused(false);\n if ((_e_detail = e.detail) === null || _e_detail === void 0 ? void 0 : _e_detail.clearFocusKey) manager.setFocusedKey(null);\n });\n const autoFocusRef = (0, $3H3GQ$useRef)(autoFocus);\n const didAutoFocusRef = (0, $3H3GQ$useRef)(false);\n (0, $3H3GQ$useEffect)(()=>{\n if (autoFocusRef.current) {\n var _delegate_getFirstKey, _delegate_getLastKey;\n let focusedKey = null;\n var _delegate_getFirstKey1;\n // Check focus strategy to determine which item to focus\n if (autoFocus === 'first') focusedKey = (_delegate_getFirstKey1 = (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate)) !== null && _delegate_getFirstKey1 !== void 0 ? _delegate_getFirstKey1 : null;\n var _delegate_getLastKey1;\n if (autoFocus === 'last') focusedKey = (_delegate_getLastKey1 = (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate)) !== null && _delegate_getLastKey1 !== void 0 ? _delegate_getLastKey1 : null;\n // If there are any selected keys, make the first one the new focus target\n let selectedKeys = manager.selectedKeys;\n if (selectedKeys.size) {\n for (let key of selectedKeys)if (manager.canSelectItem(key)) {\n focusedKey = key;\n break;\n }\n }\n manager.setFocused(true);\n manager.setFocusedKey(focusedKey);\n // If no default focus key is selected, focus the collection itself.\n if (focusedKey == null && !shouldUseVirtualFocus && ref.current) (0, $3H3GQ$focusSafely)(ref.current);\n // Wait until the collection has items to autofocus.\n if (manager.collection.size > 0) {\n autoFocusRef.current = false;\n didAutoFocusRef.current = true;\n }\n }\n });\n // Scroll the focused element into view when the focusedKey changes.\n let lastFocusedKey = (0, $3H3GQ$useRef)(manager.focusedKey);\n (0, $3H3GQ$useEffect)(()=>{\n if (manager.isFocused && manager.focusedKey != null && (manager.focusedKey !== lastFocusedKey.current || didAutoFocusRef.current) && scrollRef.current && ref.current) {\n let modality = (0, $3H3GQ$getInteractionModality)();\n let element = (0, $feb5ffebff200149$export$c3d8340acf92597f)(ref, manager.focusedKey);\n if (!(element instanceof HTMLElement)) // If item element wasn't found, return early (don't update autoFocusRef and lastFocusedKey).\n // The collection may initially be empty (e.g. virtualizer), so wait until the element exists.\n return;\n if (modality === 'keyboard' || didAutoFocusRef.current) {\n (0, $3H3GQ$scrollIntoView)(scrollRef.current, element);\n // Avoid scroll in iOS VO, since it may cause overlay to close (i.e. RAC submenu)\n if (modality !== 'virtual') (0, $3H3GQ$scrollIntoViewport)(element, {\n containingElement: ref.current\n });\n }\n }\n // If the focused key becomes null (e.g. the last item is deleted), focus the whole collection.\n if (!shouldUseVirtualFocus && manager.isFocused && manager.focusedKey == null && lastFocusedKey.current != null && ref.current) (0, $3H3GQ$focusSafely)(ref.current);\n lastFocusedKey.current = manager.focusedKey;\n didAutoFocusRef.current = false;\n });\n // Intercept FocusScope restoration since virtualized collections can reuse DOM nodes.\n (0, $3H3GQ$useEvent)(ref, 'react-aria-focus-scope-restore', (e)=>{\n e.preventDefault();\n manager.setFocused(true);\n });\n let handlers = {\n onKeyDown: onKeyDown,\n onFocus: onFocus,\n onBlur: onBlur,\n onMouseDown (e) {\n // Ignore events that bubbled through portals.\n if (scrollRef.current === e.target) // Prevent focus going to the collection when clicking on the scrollbar.\n e.preventDefault();\n }\n };\n let { typeSelectProps: typeSelectProps } = (0, $fb3050f43d946246$export$e32c88dfddc6e1d8)({\n keyboardDelegate: delegate,\n selectionManager: manager\n });\n if (!disallowTypeAhead) handlers = (0, $3H3GQ$mergeProps)(typeSelectProps, handlers);\n // If nothing is focused within the collection, make the collection itself tabbable.\n // This will be marshalled to either the first or last item depending on where focus came from.\n let tabIndex = undefined;\n if (!shouldUseVirtualFocus) tabIndex = manager.focusedKey == null ? 0 : -1;\n let collectionId = (0, $feb5ffebff200149$export$881eb0d9f3605d9d)(manager.collection);\n return {\n collectionProps: (0, $3H3GQ$mergeProps)(handlers, {\n tabIndex: tabIndex,\n 'data-collection': collectionId\n })\n };\n}\n\n\nexport {$ae20dd8cbca75726$export$d6daf82dcd84e87c as useSelectableCollection};\n//# sourceMappingURL=useSelectableCollection.module.js.map\n","import {getCollectionId as $feb5ffebff200149$export$6aeb1680a0ae8741, isNonContiguousSelectionModifier as $feb5ffebff200149$export$d3e3bd3e26688c04} from \"./utils.mjs\";\nimport {focusSafely as $581M0$focusSafely, usePress as $581M0$usePress, useLongPress as $581M0$useLongPress} from \"@react-aria/interactions\";\nimport {useRouter as $581M0$useRouter, useId as $581M0$useId, isCtrlKeyPressed as $581M0$isCtrlKeyPressed, mergeProps as $581M0$mergeProps, openLink as $581M0$openLink} from \"@react-aria/utils\";\nimport {moveVirtualFocus as $581M0$moveVirtualFocus} from \"@react-aria/focus\";\nimport {useEffect as $581M0$useEffect, useRef as $581M0$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $880e95eb8b93ba9a$export$ecf600387e221c37(options) {\n let { id: id, selectionManager: manager, key: key, ref: ref, shouldSelectOnPressUp: shouldSelectOnPressUp, shouldUseVirtualFocus: shouldUseVirtualFocus, focus: focus, isDisabled: isDisabled, onAction: onAction, allowsDifferentPressOrigin: allowsDifferentPressOrigin, linkBehavior: linkBehavior = 'action' } = options;\n let router = (0, $581M0$useRouter)();\n id = (0, $581M0$useId)(id);\n let onSelect = (e)=>{\n if (e.pointerType === 'keyboard' && (0, $feb5ffebff200149$export$d3e3bd3e26688c04)(e)) manager.toggleSelection(key);\n else {\n if (manager.selectionMode === 'none') return;\n if (manager.isLink(key)) {\n if (linkBehavior === 'selection' && ref.current) {\n let itemProps = manager.getItemProps(key);\n router.open(ref.current, e, itemProps.href, itemProps.routerOptions);\n // Always set selected keys back to what they were so that select and combobox close.\n manager.setSelectedKeys(manager.selectedKeys);\n return;\n } else if (linkBehavior === 'override' || linkBehavior === 'none') return;\n }\n if (manager.selectionMode === 'single') {\n if (manager.isSelected(key) && !manager.disallowEmptySelection) manager.toggleSelection(key);\n else manager.replaceSelection(key);\n } else if (e && e.shiftKey) manager.extendSelection(key);\n else if (manager.selectionBehavior === 'toggle' || e && ((0, $581M0$isCtrlKeyPressed)(e) || e.pointerType === 'touch' || e.pointerType === 'virtual')) // if touch or virtual (VO) then we just want to toggle, otherwise it's impossible to multi select because they don't have modifier keys\n manager.toggleSelection(key);\n else manager.replaceSelection(key);\n }\n };\n // Focus the associated DOM node when this item becomes the focusedKey\n // TODO: can't make this useLayoutEffect bacause it breaks menus inside dialogs\n // However, if this is a useEffect, it runs twice and dispatches two blur events and immediately sets\n // aria-activeDescendant in useAutocomplete... I've worked around this for now\n (0, $581M0$useEffect)(()=>{\n let isFocused = key === manager.focusedKey;\n if (isFocused && manager.isFocused) {\n if (!shouldUseVirtualFocus) {\n if (focus) focus();\n else if (document.activeElement !== ref.current && ref.current) (0, $581M0$focusSafely)(ref.current);\n } else (0, $581M0$moveVirtualFocus)(ref.current);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n ref,\n key,\n manager.focusedKey,\n manager.childFocusStrategy,\n manager.isFocused,\n shouldUseVirtualFocus\n ]);\n isDisabled = isDisabled || manager.isDisabled(key);\n // Set tabIndex to 0 if the element is focused, or -1 otherwise so that only the last focused\n // item is tabbable. If using virtual focus, don't set a tabIndex at all so that VoiceOver\n // on iOS 14 doesn't try to move real DOM focus to the item anyway.\n let itemProps = {};\n if (!shouldUseVirtualFocus && !isDisabled) itemProps = {\n tabIndex: key === manager.focusedKey ? 0 : -1,\n onFocus (e) {\n if (e.target === ref.current) manager.setFocusedKey(key);\n }\n };\n else if (isDisabled) itemProps.onMouseDown = (e)=>{\n // Prevent focus going to the body when clicking on a disabled item.\n e.preventDefault();\n };\n // With checkbox selection, onAction (i.e. navigation) becomes primary, and occurs on a single click of the row.\n // Clicking the checkbox enters selection mode, after which clicking anywhere on any row toggles selection for that row.\n // With highlight selection, onAction is secondary, and occurs on double click. Single click selects the row.\n // With touch, onAction occurs on single tap, and long press enters selection mode.\n let isLinkOverride = manager.isLink(key) && linkBehavior === 'override';\n let hasLinkAction = manager.isLink(key) && linkBehavior !== 'selection' && linkBehavior !== 'none';\n let allowsSelection = !isDisabled && manager.canSelectItem(key) && !isLinkOverride;\n let allowsActions = (onAction || hasLinkAction) && !isDisabled;\n let hasPrimaryAction = allowsActions && (manager.selectionBehavior === 'replace' ? !allowsSelection : !allowsSelection || manager.isEmpty);\n let hasSecondaryAction = allowsActions && allowsSelection && manager.selectionBehavior === 'replace';\n let hasAction = hasPrimaryAction || hasSecondaryAction;\n let modality = (0, $581M0$useRef)(null);\n let longPressEnabled = hasAction && allowsSelection;\n let longPressEnabledOnPressStart = (0, $581M0$useRef)(false);\n let hadPrimaryActionOnPressStart = (0, $581M0$useRef)(false);\n let performAction = (e)=>{\n if (onAction) onAction();\n if (hasLinkAction && ref.current) {\n let itemProps = manager.getItemProps(key);\n router.open(ref.current, e, itemProps.href, itemProps.routerOptions);\n }\n };\n // By default, selection occurs on pointer down. This can be strange if selecting an\n // item causes the UI to disappear immediately (e.g. menus).\n // If shouldSelectOnPressUp is true, we use onPressUp instead of onPressStart.\n // onPress requires a pointer down event on the same element as pointer up. For menus,\n // we want to be able to have the pointer down on the trigger that opens the menu and\n // the pointer up on the menu item rather than requiring a separate press.\n // For keyboard events, selection still occurs on key down.\n let itemPressProps = {\n ref: ref\n };\n if (shouldSelectOnPressUp) {\n itemPressProps.onPressStart = (e)=>{\n modality.current = e.pointerType;\n longPressEnabledOnPressStart.current = longPressEnabled;\n if (e.pointerType === 'keyboard' && (!hasAction || $880e95eb8b93ba9a$var$isSelectionKey())) onSelect(e);\n };\n // If allowsDifferentPressOrigin and interacting with mouse, make selection happen on pressUp (e.g. open menu on press down, selection on menu item happens on press up.)\n // Otherwise, have selection happen onPress (prevents listview row selection when clicking on interactable elements in the row)\n if (!allowsDifferentPressOrigin) itemPressProps.onPress = (e)=>{\n if (hasPrimaryAction || hasSecondaryAction && e.pointerType !== 'mouse') {\n if (e.pointerType === 'keyboard' && !$880e95eb8b93ba9a$var$isActionKey()) return;\n performAction(e);\n } else if (e.pointerType !== 'keyboard' && allowsSelection) onSelect(e);\n };\n else {\n itemPressProps.onPressUp = hasPrimaryAction ? undefined : (e)=>{\n if (e.pointerType === 'mouse' && allowsSelection) onSelect(e);\n };\n itemPressProps.onPress = hasPrimaryAction ? performAction : (e)=>{\n if (e.pointerType !== 'keyboard' && e.pointerType !== 'mouse' && allowsSelection) onSelect(e);\n };\n }\n } else {\n itemPressProps.onPressStart = (e)=>{\n modality.current = e.pointerType;\n longPressEnabledOnPressStart.current = longPressEnabled;\n hadPrimaryActionOnPressStart.current = hasPrimaryAction;\n // Select on mouse down unless there is a primary action which will occur on mouse up.\n // For keyboard, select on key down. If there is an action, the Space key selects on key down,\n // and the Enter key performs onAction on key up.\n if (allowsSelection && (e.pointerType === 'mouse' && !hasPrimaryAction || e.pointerType === 'keyboard' && (!allowsActions || $880e95eb8b93ba9a$var$isSelectionKey()))) onSelect(e);\n };\n itemPressProps.onPress = (e)=>{\n // Selection occurs on touch up. Primary actions always occur on pointer up.\n // Both primary and secondary actions occur on Enter key up. The only exception\n // is secondary actions, which occur on double click with a mouse.\n if (e.pointerType === 'touch' || e.pointerType === 'pen' || e.pointerType === 'virtual' || e.pointerType === 'keyboard' && hasAction && $880e95eb8b93ba9a$var$isActionKey() || e.pointerType === 'mouse' && hadPrimaryActionOnPressStart.current) {\n if (hasAction) performAction(e);\n else if (allowsSelection) onSelect(e);\n }\n };\n }\n itemProps['data-collection'] = (0, $feb5ffebff200149$export$6aeb1680a0ae8741)(manager.collection);\n itemProps['data-key'] = key;\n itemPressProps.preventFocusOnPress = shouldUseVirtualFocus;\n // When using virtual focus, make sure the focused key gets updated on press.\n if (shouldUseVirtualFocus) itemPressProps = (0, $581M0$mergeProps)(itemPressProps, {\n onPressStart (e) {\n if (e.pointerType !== 'touch') {\n manager.setFocused(true);\n manager.setFocusedKey(key);\n }\n },\n onPress (e) {\n if (e.pointerType === 'touch') {\n manager.setFocused(true);\n manager.setFocusedKey(key);\n }\n }\n });\n let { pressProps: pressProps, isPressed: isPressed } = (0, $581M0$usePress)(itemPressProps);\n // Double clicking with a mouse with selectionBehavior = 'replace' performs an action.\n let onDoubleClick = hasSecondaryAction ? (e)=>{\n if (modality.current === 'mouse') {\n e.stopPropagation();\n e.preventDefault();\n performAction(e);\n }\n } : undefined;\n // Long pressing an item with touch when selectionBehavior = 'replace' switches the selection behavior\n // to 'toggle'. This changes the single tap behavior from performing an action (i.e. navigating) to\n // selecting, and may toggle the appearance of a UI affordance like checkboxes on each item.\n let { longPressProps: longPressProps } = (0, $581M0$useLongPress)({\n isDisabled: !longPressEnabled,\n onLongPress (e) {\n if (e.pointerType === 'touch') {\n onSelect(e);\n manager.setSelectionBehavior('toggle');\n }\n }\n });\n // Prevent native drag and drop on long press if we also select on long press.\n // Once the user is in selection mode, they can long press again to drag.\n // Use a capturing listener to ensure this runs before useDrag, regardless of\n // the order the props get merged.\n let onDragStartCapture = (e)=>{\n if (modality.current === 'touch' && longPressEnabledOnPressStart.current) e.preventDefault();\n };\n // Prevent default on link clicks so that we control exactly\n // when they open (to match selection behavior).\n let onClick = manager.isLink(key) ? (e)=>{\n if (!(0, $581M0$openLink).isOpening) e.preventDefault();\n } : undefined;\n return {\n itemProps: (0, $581M0$mergeProps)(itemProps, allowsSelection || hasPrimaryAction || shouldUseVirtualFocus ? pressProps : {}, longPressEnabled ? longPressProps : {}, {\n onDoubleClick: onDoubleClick,\n onDragStartCapture: onDragStartCapture,\n onClick: onClick,\n id: id\n }, // Prevent DOM focus from moving on mouse down when using virtual focus\n shouldUseVirtualFocus ? {\n onMouseDown: (e)=>e.preventDefault()\n } : undefined),\n isPressed: isPressed,\n isSelected: manager.isSelected(key),\n isFocused: manager.isFocused && manager.focusedKey === key,\n isDisabled: isDisabled,\n allowsSelection: allowsSelection,\n hasAction: hasAction\n };\n}\nfunction $880e95eb8b93ba9a$var$isActionKey() {\n let event = window.event;\n return (event === null || event === void 0 ? void 0 : event.key) === 'Enter';\n}\nfunction $880e95eb8b93ba9a$var$isSelectionKey() {\n let event = window.event;\n return (event === null || event === void 0 ? void 0 : event.key) === ' ' || (event === null || event === void 0 ? void 0 : event.code) === 'Space';\n}\n\n\nexport {$880e95eb8b93ba9a$export$ecf600387e221c37 as useSelectableItem};\n//# sourceMappingURL=useSelectableItem.module.js.map\n","import {getItemElement as $feb5ffebff200149$export$c3d8340acf92597f} from \"./utils.mjs\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nclass $657e4dc4a6e88df0$export$8f5ed9ff9f511381 {\n getItemRect(key) {\n let container = this.ref.current;\n if (!container) return null;\n let item = key != null ? (0, $feb5ffebff200149$export$c3d8340acf92597f)(this.ref, key) : null;\n if (!item) return null;\n let containerRect = container.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n return {\n x: itemRect.left - containerRect.left + container.scrollLeft,\n y: itemRect.top - containerRect.top + container.scrollTop,\n width: itemRect.width,\n height: itemRect.height\n };\n }\n getContentSize() {\n let container = this.ref.current;\n var _container_scrollWidth, _container_scrollHeight;\n return {\n width: (_container_scrollWidth = container === null || container === void 0 ? void 0 : container.scrollWidth) !== null && _container_scrollWidth !== void 0 ? _container_scrollWidth : 0,\n height: (_container_scrollHeight = container === null || container === void 0 ? void 0 : container.scrollHeight) !== null && _container_scrollHeight !== void 0 ? _container_scrollHeight : 0\n };\n }\n getVisibleRect() {\n let container = this.ref.current;\n var _container_scrollLeft, _container_scrollTop, _container_offsetWidth, _container_offsetHeight;\n return {\n x: (_container_scrollLeft = container === null || container === void 0 ? void 0 : container.scrollLeft) !== null && _container_scrollLeft !== void 0 ? _container_scrollLeft : 0,\n y: (_container_scrollTop = container === null || container === void 0 ? void 0 : container.scrollTop) !== null && _container_scrollTop !== void 0 ? _container_scrollTop : 0,\n width: (_container_offsetWidth = container === null || container === void 0 ? void 0 : container.offsetWidth) !== null && _container_offsetWidth !== void 0 ? _container_offsetWidth : 0,\n height: (_container_offsetHeight = container === null || container === void 0 ? void 0 : container.offsetHeight) !== null && _container_offsetHeight !== void 0 ? _container_offsetHeight : 0\n };\n }\n constructor(ref){\n this.ref = ref;\n }\n}\n\n\nexport {$657e4dc4a6e88df0$export$8f5ed9ff9f511381 as DOMLayoutDelegate};\n//# sourceMappingURL=DOMLayoutDelegate.module.js.map\n","import {DOMLayoutDelegate as $657e4dc4a6e88df0$export$8f5ed9ff9f511381} from \"./DOMLayoutDelegate.mjs\";\nimport {isScrollable as $eak97$isScrollable} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nclass $2a25aae57d74318e$export$a05409b8bb224a5a {\n isDisabled(item) {\n var _item_props;\n return this.disabledBehavior === 'all' && (((_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.isDisabled) || this.disabledKeys.has(item.key));\n }\n findNextNonDisabled(key, getNext) {\n let nextKey = key;\n while(nextKey != null){\n let item = this.collection.getItem(nextKey);\n if ((item === null || item === void 0 ? void 0 : item.type) === 'item' && !this.isDisabled(item)) return nextKey;\n nextKey = getNext(nextKey);\n }\n return null;\n }\n getNextKey(key) {\n let nextKey = key;\n nextKey = this.collection.getKeyAfter(nextKey);\n return this.findNextNonDisabled(nextKey, (key)=>this.collection.getKeyAfter(key));\n }\n getPreviousKey(key) {\n let nextKey = key;\n nextKey = this.collection.getKeyBefore(nextKey);\n return this.findNextNonDisabled(nextKey, (key)=>this.collection.getKeyBefore(key));\n }\n findKey(key, nextKey, shouldSkip) {\n let tempKey = key;\n let itemRect = this.layoutDelegate.getItemRect(tempKey);\n if (!itemRect || tempKey == null) return null;\n // Find the item above or below in the same column.\n let prevRect = itemRect;\n do {\n tempKey = nextKey(tempKey);\n if (tempKey == null) break;\n itemRect = this.layoutDelegate.getItemRect(tempKey);\n }while (itemRect && shouldSkip(prevRect, itemRect) && tempKey != null);\n return tempKey;\n }\n isSameRow(prevRect, itemRect) {\n return prevRect.y === itemRect.y || prevRect.x !== itemRect.x;\n }\n isSameColumn(prevRect, itemRect) {\n return prevRect.x === itemRect.x || prevRect.y !== itemRect.y;\n }\n getKeyBelow(key) {\n if (this.layout === 'grid' && this.orientation === 'vertical') return this.findKey(key, (key)=>this.getNextKey(key), this.isSameRow);\n else return this.getNextKey(key);\n }\n getKeyAbove(key) {\n if (this.layout === 'grid' && this.orientation === 'vertical') return this.findKey(key, (key)=>this.getPreviousKey(key), this.isSameRow);\n else return this.getPreviousKey(key);\n }\n getNextColumn(key, right) {\n return right ? this.getPreviousKey(key) : this.getNextKey(key);\n }\n getKeyRightOf(key) {\n // This is a temporary solution for CardView until we refactor useSelectableCollection.\n // https://github.com/orgs/adobe/projects/19/views/32?pane=issue&itemId=77825042\n let layoutDelegateMethod = this.direction === 'ltr' ? 'getKeyRightOf' : 'getKeyLeftOf';\n if (this.layoutDelegate[layoutDelegateMethod]) {\n key = this.layoutDelegate[layoutDelegateMethod](key);\n return this.findNextNonDisabled(key, (key)=>this.layoutDelegate[layoutDelegateMethod](key));\n }\n if (this.layout === 'grid') {\n if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'rtl');\n else return this.findKey(key, (key)=>this.getNextColumn(key, this.direction === 'rtl'), this.isSameColumn);\n } else if (this.orientation === 'horizontal') return this.getNextColumn(key, this.direction === 'rtl');\n return null;\n }\n getKeyLeftOf(key) {\n let layoutDelegateMethod = this.direction === 'ltr' ? 'getKeyLeftOf' : 'getKeyRightOf';\n if (this.layoutDelegate[layoutDelegateMethod]) {\n key = this.layoutDelegate[layoutDelegateMethod](key);\n return this.findNextNonDisabled(key, (key)=>this.layoutDelegate[layoutDelegateMethod](key));\n }\n if (this.layout === 'grid') {\n if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'ltr');\n else return this.findKey(key, (key)=>this.getNextColumn(key, this.direction === 'ltr'), this.isSameColumn);\n } else if (this.orientation === 'horizontal') return this.getNextColumn(key, this.direction === 'ltr');\n return null;\n }\n getFirstKey() {\n let key = this.collection.getFirstKey();\n return this.findNextNonDisabled(key, (key)=>this.collection.getKeyAfter(key));\n }\n getLastKey() {\n let key = this.collection.getLastKey();\n return this.findNextNonDisabled(key, (key)=>this.collection.getKeyBefore(key));\n }\n getKeyPageAbove(key) {\n let menu = this.ref.current;\n let itemRect = this.layoutDelegate.getItemRect(key);\n if (!itemRect) return null;\n if (menu && !(0, $eak97$isScrollable)(menu)) return this.getFirstKey();\n let nextKey = key;\n if (this.orientation === 'horizontal') {\n let pageX = Math.max(0, itemRect.x + itemRect.width - this.layoutDelegate.getVisibleRect().width);\n while(itemRect && itemRect.x > pageX && nextKey != null){\n nextKey = this.getKeyAbove(nextKey);\n itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);\n }\n } else {\n let pageY = Math.max(0, itemRect.y + itemRect.height - this.layoutDelegate.getVisibleRect().height);\n while(itemRect && itemRect.y > pageY && nextKey != null){\n nextKey = this.getKeyAbove(nextKey);\n itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);\n }\n }\n return nextKey !== null && nextKey !== void 0 ? nextKey : this.getFirstKey();\n }\n getKeyPageBelow(key) {\n let menu = this.ref.current;\n let itemRect = this.layoutDelegate.getItemRect(key);\n if (!itemRect) return null;\n if (menu && !(0, $eak97$isScrollable)(menu)) return this.getLastKey();\n let nextKey = key;\n if (this.orientation === 'horizontal') {\n let pageX = Math.min(this.layoutDelegate.getContentSize().width, itemRect.y - itemRect.width + this.layoutDelegate.getVisibleRect().width);\n while(itemRect && itemRect.x < pageX && nextKey != null){\n nextKey = this.getKeyBelow(nextKey);\n itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);\n }\n } else {\n let pageY = Math.min(this.layoutDelegate.getContentSize().height, itemRect.y - itemRect.height + this.layoutDelegate.getVisibleRect().height);\n while(itemRect && itemRect.y < pageY && nextKey != null){\n nextKey = this.getKeyBelow(nextKey);\n itemRect = nextKey == null ? null : this.layoutDelegate.getItemRect(nextKey);\n }\n }\n return nextKey !== null && nextKey !== void 0 ? nextKey : this.getLastKey();\n }\n getKeyForSearch(search, fromKey) {\n if (!this.collator) return null;\n let collection = this.collection;\n let key = fromKey || this.getFirstKey();\n while(key != null){\n let item = collection.getItem(key);\n if (!item) return null;\n let substring = item.textValue.slice(0, search.length);\n if (item.textValue && this.collator.compare(substring, search) === 0) return key;\n key = this.getNextKey(key);\n }\n return null;\n }\n constructor(...args){\n if (args.length === 1) {\n let opts = args[0];\n this.collection = opts.collection;\n this.ref = opts.ref;\n this.collator = opts.collator;\n this.disabledKeys = opts.disabledKeys || new Set();\n this.disabledBehavior = opts.disabledBehavior || 'all';\n this.orientation = opts.orientation || 'vertical';\n this.direction = opts.direction;\n this.layout = opts.layout || 'stack';\n this.layoutDelegate = opts.layoutDelegate || new (0, $657e4dc4a6e88df0$export$8f5ed9ff9f511381)(opts.ref);\n } else {\n this.collection = args[0];\n this.disabledKeys = args[1];\n this.ref = args[2];\n this.collator = args[3];\n this.layout = 'stack';\n this.orientation = 'vertical';\n this.disabledBehavior = 'all';\n this.layoutDelegate = new (0, $657e4dc4a6e88df0$export$8f5ed9ff9f511381)(this.ref);\n }\n // If this is a vertical stack, remove the left/right methods completely\n // so they aren't called by useDroppableCollection.\n if (this.layout === 'stack' && this.orientation === 'vertical') {\n this.getKeyLeftOf = undefined;\n this.getKeyRightOf = undefined;\n }\n }\n}\n\n\nexport {$2a25aae57d74318e$export$a05409b8bb224a5a as ListKeyboardDelegate};\n//# sourceMappingURL=ListKeyboardDelegate.module.js.map\n","import {useSelectableCollection as $ae20dd8cbca75726$export$d6daf82dcd84e87c} from \"./useSelectableCollection.mjs\";\nimport {ListKeyboardDelegate as $2a25aae57d74318e$export$a05409b8bb224a5a} from \"./ListKeyboardDelegate.mjs\";\nimport {useCollator as $1aJk5$useCollator} from \"@react-aria/i18n\";\nimport {useMemo as $1aJk5$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $982254629710d113$export$b95089534ab7c1fd(props) {\n let { selectionManager: selectionManager, collection: collection, disabledKeys: disabledKeys, ref: ref, keyboardDelegate: keyboardDelegate, layoutDelegate: layoutDelegate } = props;\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = (0, $1aJk5$useCollator)({\n usage: 'search',\n sensitivity: 'base'\n });\n let disabledBehavior = selectionManager.disabledBehavior;\n let delegate = (0, $1aJk5$useMemo)(()=>keyboardDelegate || new (0, $2a25aae57d74318e$export$a05409b8bb224a5a)({\n collection: collection,\n disabledKeys: disabledKeys,\n disabledBehavior: disabledBehavior,\n ref: ref,\n collator: collator,\n layoutDelegate: layoutDelegate\n }), [\n keyboardDelegate,\n layoutDelegate,\n collection,\n disabledKeys,\n ref,\n collator,\n disabledBehavior\n ]);\n let { collectionProps: collectionProps } = (0, $ae20dd8cbca75726$export$d6daf82dcd84e87c)({\n ...props,\n ref: ref,\n selectionManager: selectionManager,\n keyboardDelegate: delegate\n });\n return {\n listProps: collectionProps\n };\n}\n\n\nexport {$982254629710d113$export$b95089534ab7c1fd as useSelectableList};\n//# sourceMappingURL=useSelectableList.module.js.map\n","import {menuData as $fc79756100351201$export$6f49b4016bfc8d56} from \"./utils.mjs\";\nimport {filterDOMProps as $ieN2F$filterDOMProps, mergeProps as $ieN2F$mergeProps} from \"@react-aria/utils\";\nimport {useSelectableList as $ieN2F$useSelectableList} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $d5336fe17ce95402$export$38eaa17faae8f579(props, state, ref) {\n let { shouldFocusWrap: shouldFocusWrap = true, onKeyDown: onKeyDown, onKeyUp: onKeyUp, ...otherProps } = props;\n if (!props['aria-label'] && !props['aria-labelledby'] && process.env.NODE_ENV !== 'production') console.warn('An aria-label or aria-labelledby prop is required for accessibility.');\n let domProps = (0, $ieN2F$filterDOMProps)(props, {\n labelable: true\n });\n let { listProps: listProps } = (0, $ieN2F$useSelectableList)({\n ...otherProps,\n ref: ref,\n selectionManager: state.selectionManager,\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n shouldFocusWrap: shouldFocusWrap,\n linkBehavior: 'override'\n });\n (0, $fc79756100351201$export$6f49b4016bfc8d56).set(state, {\n onClose: props.onClose,\n onAction: props.onAction,\n shouldUseVirtualFocus: props.shouldUseVirtualFocus\n });\n return {\n menuProps: (0, $ieN2F$mergeProps)(domProps, {\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp\n }, {\n role: 'menu',\n ...listProps,\n onKeyDown: (e)=>{\n var _listProps_onKeyDown;\n // don't clear the menu selected keys if the user is presses escape since escape closes the menu\n if (e.key !== 'Escape' || props.shouldUseVirtualFocus) (_listProps_onKeyDown = listProps.onKeyDown) === null || _listProps_onKeyDown === void 0 ? void 0 : _listProps_onKeyDown.call(listProps, e);\n }\n })\n };\n}\n\n\nexport {$d5336fe17ce95402$export$38eaa17faae8f579 as useMenu};\n//# sourceMappingURL=useMenu.module.js.map\n","import $6Fm0V$react from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $c1d7fb2ec91bae71$var$Item(props) {\n return null;\n}\n$c1d7fb2ec91bae71$var$Item.getCollectionNode = function* getCollectionNode(props, context) {\n let { childItems: childItems, title: title, children: children } = props;\n let rendered = props.title || props.children;\n let textValue = props.textValue || (typeof rendered === 'string' ? rendered : '') || props['aria-label'] || '';\n // suppressTextValueWarning is used in components like Tabs, which don't have type to select support.\n if (!textValue && !(context === null || context === void 0 ? void 0 : context.suppressTextValueWarning) && process.env.NODE_ENV !== 'production') console.warn('<Item> with non-plain text contents is unsupported by type to select for accessibility. Please add a `textValue` prop.');\n yield {\n type: 'item',\n props: props,\n rendered: rendered,\n textValue: textValue,\n 'aria-label': props['aria-label'],\n hasChildNodes: $c1d7fb2ec91bae71$var$hasChildItems(props),\n *childNodes () {\n if (childItems) for (let child of childItems)yield {\n type: 'item',\n value: child\n };\n else if (title) {\n let items = [];\n (0, $6Fm0V$react).Children.forEach(children, (child)=>{\n items.push({\n type: 'item',\n element: child\n });\n });\n yield* items;\n }\n }\n };\n};\nfunction $c1d7fb2ec91bae71$var$hasChildItems(props) {\n if (props.hasChildItems != null) return props.hasChildItems;\n if (props.childItems) return true;\n if (props.title && (0, $6Fm0V$react).Children.count(props.children) > 0) return true;\n return false;\n}\n// We don't want getCollectionNode to show up in the type definition\nlet $c1d7fb2ec91bae71$export$6d08773d2e66f8f2 = $c1d7fb2ec91bae71$var$Item;\n\n\nexport {$c1d7fb2ec91bae71$export$6d08773d2e66f8f2 as Item};\n//# sourceMappingURL=Item.module.js.map\n","import $fzaAv$react from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nclass $eb2240fc39a57fa5$export$bf788dd355e3a401 {\n build(props, context) {\n this.context = context;\n return $eb2240fc39a57fa5$var$iterable(()=>this.iterateCollection(props));\n }\n *iterateCollection(props) {\n let { children: children, items: items } = props;\n if ((0, $fzaAv$react).isValidElement(children) && children.type === (0, $fzaAv$react).Fragment) yield* this.iterateCollection({\n children: children.props.children,\n items: items\n });\n else if (typeof children === 'function') {\n if (!items) throw new Error('props.children was a function but props.items is missing');\n let index = 0;\n for (let item of items){\n yield* this.getFullNode({\n value: item,\n index: index\n }, {\n renderer: children\n });\n index++;\n }\n } else {\n let items = [];\n (0, $fzaAv$react).Children.forEach(children, (child)=>{\n if (child) items.push(child);\n });\n let index = 0;\n for (let item of items){\n let nodes = this.getFullNode({\n element: item,\n index: index\n }, {});\n for (let node of nodes){\n index++;\n yield node;\n }\n }\n }\n }\n getKey(item, partialNode, state, parentKey) {\n if (item.key != null) return item.key;\n if (partialNode.type === 'cell' && partialNode.key != null) return `${parentKey}${partialNode.key}`;\n let v = partialNode.value;\n if (v != null) {\n var _v_key;\n let key = (_v_key = v.key) !== null && _v_key !== void 0 ? _v_key : v.id;\n if (key == null) throw new Error('No key found for item');\n return key;\n }\n return parentKey ? `${parentKey}.${partialNode.index}` : `$.${partialNode.index}`;\n }\n getChildState(state, partialNode) {\n return {\n renderer: partialNode.renderer || state.renderer\n };\n }\n *getFullNode(partialNode, state, parentKey, parentNode) {\n if ((0, $fzaAv$react).isValidElement(partialNode.element) && partialNode.element.type === (0, $fzaAv$react).Fragment) {\n let children = [];\n (0, $fzaAv$react).Children.forEach(partialNode.element.props.children, (child)=>{\n children.push(child);\n });\n var _partialNode_index;\n let index = (_partialNode_index = partialNode.index) !== null && _partialNode_index !== void 0 ? _partialNode_index : 0;\n for (const child of children)yield* this.getFullNode({\n element: child,\n index: index++\n }, state, parentKey, parentNode);\n return;\n }\n // If there's a value instead of an element on the node, and a parent renderer function is available,\n // use it to render an element for the value.\n let element = partialNode.element;\n if (!element && partialNode.value && state && state.renderer) {\n let cached = this.cache.get(partialNode.value);\n if (cached && (!cached.shouldInvalidate || !cached.shouldInvalidate(this.context))) {\n cached.index = partialNode.index;\n cached.parentKey = parentNode ? parentNode.key : null;\n yield cached;\n return;\n }\n element = state.renderer(partialNode.value);\n }\n // If there's an element with a getCollectionNode function on its type, then it's a supported component.\n // Call this function to get a partial node, and recursively build a full node from there.\n if ((0, $fzaAv$react).isValidElement(element)) {\n let type = element.type;\n if (typeof type !== 'function' && typeof type.getCollectionNode !== 'function') {\n let name = element.type;\n throw new Error(`Unknown element <${name}> in collection.`);\n }\n let childNodes = type.getCollectionNode(element.props, this.context);\n var _partialNode_index1;\n let index = (_partialNode_index1 = partialNode.index) !== null && _partialNode_index1 !== void 0 ? _partialNode_index1 : 0;\n let result = childNodes.next();\n while(!result.done && result.value){\n let childNode = result.value;\n partialNode.index = index;\n var _childNode_key;\n let nodeKey = (_childNode_key = childNode.key) !== null && _childNode_key !== void 0 ? _childNode_key : null;\n if (nodeKey == null) nodeKey = childNode.element ? null : this.getKey(element, partialNode, state, parentKey);\n let nodes = this.getFullNode({\n ...childNode,\n key: nodeKey,\n index: index,\n wrapper: $eb2240fc39a57fa5$var$compose(partialNode.wrapper, childNode.wrapper)\n }, this.getChildState(state, childNode), parentKey ? `${parentKey}${element.key}` : element.key, parentNode);\n let children = [\n ...nodes\n ];\n for (let node of children){\n var _childNode_value, _ref;\n // Cache the node based on its value\n node.value = (_ref = (_childNode_value = childNode.value) !== null && _childNode_value !== void 0 ? _childNode_value : partialNode.value) !== null && _ref !== void 0 ? _ref : null;\n if (node.value) this.cache.set(node.value, node);\n var _parentNode_type;\n // The partial node may have specified a type for the child in order to specify a constraint.\n // Verify that the full node that was built recursively matches this type.\n if (partialNode.type && node.type !== partialNode.type) throw new Error(`Unsupported type <${$eb2240fc39a57fa5$var$capitalize(node.type)}> in <${$eb2240fc39a57fa5$var$capitalize((_parentNode_type = parentNode === null || parentNode === void 0 ? void 0 : parentNode.type) !== null && _parentNode_type !== void 0 ? _parentNode_type : 'unknown parent type')}>. Only <${$eb2240fc39a57fa5$var$capitalize(partialNode.type)}> is supported.`);\n index++;\n yield node;\n }\n result = childNodes.next(children);\n }\n return;\n }\n // Ignore invalid elements\n if (partialNode.key == null || partialNode.type == null) return;\n // Create full node\n let builder = this;\n var _partialNode_value, _partialNode_textValue;\n let node = {\n type: partialNode.type,\n props: partialNode.props,\n key: partialNode.key,\n parentKey: parentNode ? parentNode.key : null,\n value: (_partialNode_value = partialNode.value) !== null && _partialNode_value !== void 0 ? _partialNode_value : null,\n level: parentNode ? parentNode.level + 1 : 0,\n index: partialNode.index,\n rendered: partialNode.rendered,\n textValue: (_partialNode_textValue = partialNode.textValue) !== null && _partialNode_textValue !== void 0 ? _partialNode_textValue : '',\n 'aria-label': partialNode['aria-label'],\n wrapper: partialNode.wrapper,\n shouldInvalidate: partialNode.shouldInvalidate,\n hasChildNodes: partialNode.hasChildNodes || false,\n childNodes: $eb2240fc39a57fa5$var$iterable(function*() {\n if (!partialNode.hasChildNodes || !partialNode.childNodes) return;\n let index = 0;\n for (let child of partialNode.childNodes()){\n // Ensure child keys are globally unique by prepending the parent node's key\n if (child.key != null) // TODO: Remove this line entirely and enforce that users always provide unique keys.\n // Currently this line will have issues when a parent has a key `a` and a child with key `bc`\n // but another parent has key `ab` and its child has a key `c`. The combined keys would result in both\n // children having a key of `abc`.\n child.key = `${node.key}${child.key}`;\n let nodes = builder.getFullNode({\n ...child,\n index: index\n }, builder.getChildState(state, child), node.key, node);\n for (let node of nodes){\n index++;\n yield node;\n }\n }\n })\n };\n yield node;\n }\n constructor(){\n this.cache = new WeakMap();\n }\n}\n// Wraps an iterator function as an iterable object, and caches the results.\nfunction $eb2240fc39a57fa5$var$iterable(iterator) {\n let cache = [];\n let iterable = null;\n return {\n *[Symbol.iterator] () {\n for (let item of cache)yield item;\n if (!iterable) iterable = iterator();\n for (let item of iterable){\n cache.push(item);\n yield item;\n }\n }\n };\n}\nfunction $eb2240fc39a57fa5$var$compose(outer, inner) {\n if (outer && inner) return (element)=>outer(inner(element));\n if (outer) return outer;\n if (inner) return inner;\n}\nfunction $eb2240fc39a57fa5$var$capitalize(str) {\n return str[0].toUpperCase() + str.slice(1);\n}\n\n\nexport {$eb2240fc39a57fa5$export$bf788dd355e3a401 as CollectionBuilder};\n//# sourceMappingURL=CollectionBuilder.module.js.map\n","import {CollectionBuilder as $eb2240fc39a57fa5$export$bf788dd355e3a401} from \"./CollectionBuilder.mjs\";\nimport {useMemo as $lbNth$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $7613b1592d41b092$export$6cd28814d92fa9c9(props, factory, context) {\n let builder = (0, $lbNth$useMemo)(()=>new (0, $eb2240fc39a57fa5$export$bf788dd355e3a401)(), []);\n let { children: children, items: items, collection: collection } = props;\n let result = (0, $lbNth$useMemo)(()=>{\n if (collection) return collection;\n let nodes = builder.build({\n children: children,\n items: items\n }, context);\n return factory(nodes);\n }, [\n builder,\n children,\n items,\n collection,\n context,\n factory\n ]);\n return result;\n}\n\n\nexport {$7613b1592d41b092$export$6cd28814d92fa9c9 as useCollection};\n//# sourceMappingURL=useCollection.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $c5a24bc478652b5f$export$1005530eda016c13(node, collection) {\n // New API: call collection.getChildren with the node key.\n if (typeof collection.getChildren === 'function') return collection.getChildren(node.key);\n // Old API: access childNodes directly.\n return node.childNodes;\n}\nfunction $c5a24bc478652b5f$export$fbdeaa6a76694f71(iterable) {\n return $c5a24bc478652b5f$export$5f3398f8733f90e2(iterable, 0);\n}\nfunction $c5a24bc478652b5f$export$5f3398f8733f90e2(iterable, index) {\n if (index < 0) return undefined;\n let i = 0;\n for (let item of iterable){\n if (i === index) return item;\n i++;\n }\n}\nfunction $c5a24bc478652b5f$export$7475b2c64539e4cf(iterable) {\n let lastItem = undefined;\n for (let value of iterable)lastItem = value;\n return lastItem;\n}\nfunction $c5a24bc478652b5f$export$8c434b3a7a4dad6(collection, a, b) {\n // If the two nodes have the same parent, compare their indices.\n if (a.parentKey === b.parentKey) return a.index - b.index;\n // Otherwise, collect all of the ancestors from each node, and find the first one that doesn't match starting from the root.\n // Include the base nodes in case we are comparing nodes of different levels so that we can compare the higher node to the lower level node's\n // ancestor of the same level\n let aAncestors = [\n ...$c5a24bc478652b5f$var$getAncestors(collection, a),\n a\n ];\n let bAncestors = [\n ...$c5a24bc478652b5f$var$getAncestors(collection, b),\n b\n ];\n let firstNonMatchingAncestor = aAncestors.slice(0, bAncestors.length).findIndex((a, i)=>a !== bAncestors[i]);\n if (firstNonMatchingAncestor !== -1) {\n // Compare the indices of two children within the common ancestor.\n a = aAncestors[firstNonMatchingAncestor];\n b = bAncestors[firstNonMatchingAncestor];\n return a.index - b.index;\n }\n // If there isn't a non matching ancestor, we might be in a case where one of the nodes is the ancestor of the other.\n if (aAncestors.findIndex((node)=>node === b) >= 0) return 1;\n else if (bAncestors.findIndex((node)=>node === a) >= 0) return -1;\n // 🤷\n return -1;\n}\nfunction $c5a24bc478652b5f$var$getAncestors(collection, node) {\n let parents = [];\n let currNode = node;\n while((currNode === null || currNode === void 0 ? void 0 : currNode.parentKey) != null){\n currNode = collection.getItem(currNode.parentKey);\n if (currNode) parents.unshift(currNode);\n }\n return parents;\n}\n\n\nexport {$c5a24bc478652b5f$export$1005530eda016c13 as getChildNodes, $c5a24bc478652b5f$export$fbdeaa6a76694f71 as getFirstItem, $c5a24bc478652b5f$export$5f3398f8733f90e2 as getNthItem, $c5a24bc478652b5f$export$7475b2c64539e4cf as getLastItem, $c5a24bc478652b5f$export$8c434b3a7a4dad6 as compareNodeOrder};\n//# sourceMappingURL=getChildNodes.module.js.map\n","import {getChildNodes as $c5a24bc478652b5f$export$1005530eda016c13} from \"./getChildNodes.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $453cc9f0df89c0a5$var$cache = new WeakMap();\nfunction $453cc9f0df89c0a5$export$77d5aafae4e095b2(collection) {\n let count = $453cc9f0df89c0a5$var$cache.get(collection);\n if (count != null) return count;\n // TS isn't smart enough to know we've ensured count is a number, so use a new variable\n let counter = 0;\n let countItems = (items)=>{\n for (let item of items)if (item.type === 'section') countItems((0, $c5a24bc478652b5f$export$1005530eda016c13)(item, collection));\n else counter++;\n };\n countItems(collection);\n $453cc9f0df89c0a5$var$cache.set(collection, counter);\n return counter;\n}\n\n\nexport {$453cc9f0df89c0a5$export$77d5aafae4e095b2 as getItemCount};\n//# sourceMappingURL=getItemCount.module.js.map\n","import {menuData as $fc79756100351201$export$6f49b4016bfc8d56} from \"./utils.mjs\";\nimport {useRouter as $7Kjv5$useRouter, useSlotId as $7Kjv5$useSlotId, filterDOMProps as $7Kjv5$filterDOMProps, useLinkProps as $7Kjv5$useLinkProps, mergeProps as $7Kjv5$mergeProps} from \"@react-aria/utils\";\nimport {getItemCount as $7Kjv5$getItemCount} from \"@react-stately/collections\";\nimport {usePress as $7Kjv5$usePress, useHover as $7Kjv5$useHover, isFocusVisible as $7Kjv5$isFocusVisible, useKeyboard as $7Kjv5$useKeyboard, useFocus as $7Kjv5$useFocus} from \"@react-aria/interactions\";\nimport {useSelectableItem as $7Kjv5$useSelectableItem} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $a2e5df62f93c7633$export$9d32628fc2aea7da(props, state, ref) {\n let { id: id, key: key, closeOnSelect: closeOnSelect, isVirtualized: isVirtualized, 'aria-haspopup': hasPopup, onPressStart: pressStartProp, onPressUp: pressUpProp, onPress: pressProp, onPressChange: onPressChange, onPressEnd: onPressEnd, onHoverStart: hoverStartProp, onHoverChange: onHoverChange, onHoverEnd: onHoverEnd, onKeyDown: onKeyDown, onKeyUp: onKeyUp, onFocus: onFocus, onFocusChange: onFocusChange, onBlur: onBlur, selectionManager: selectionManager = state.selectionManager } = props;\n let isTrigger = !!hasPopup;\n let isTriggerExpanded = isTrigger && props['aria-expanded'] === 'true';\n var _props_isDisabled;\n let isDisabled = (_props_isDisabled = props.isDisabled) !== null && _props_isDisabled !== void 0 ? _props_isDisabled : selectionManager.isDisabled(key);\n var _props_isSelected;\n let isSelected = (_props_isSelected = props.isSelected) !== null && _props_isSelected !== void 0 ? _props_isSelected : selectionManager.isSelected(key);\n let data = (0, $fc79756100351201$export$6f49b4016bfc8d56).get(state);\n let item = state.collection.getItem(key);\n let onClose = props.onClose || data.onClose;\n let router = (0, $7Kjv5$useRouter)();\n let performAction = (e)=>{\n var _item_props;\n if (isTrigger) return;\n if (item === null || item === void 0 ? void 0 : (_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.onAction) item.props.onAction();\n else if (props.onAction) props.onAction(key);\n if (data.onAction) {\n // Must reassign to variable otherwise `this` binding gets messed up. Something to do with WeakMap.\n let onAction = data.onAction;\n onAction(key);\n }\n if (e.target instanceof HTMLAnchorElement && item) router.open(e.target, e, item.props.href, item.props.routerOptions);\n };\n let role = 'menuitem';\n if (!isTrigger) {\n if (selectionManager.selectionMode === 'single') role = 'menuitemradio';\n else if (selectionManager.selectionMode === 'multiple') role = 'menuitemcheckbox';\n }\n let labelId = (0, $7Kjv5$useSlotId)();\n let descriptionId = (0, $7Kjv5$useSlotId)();\n let keyboardId = (0, $7Kjv5$useSlotId)();\n let ariaProps = {\n id: id,\n 'aria-disabled': isDisabled || undefined,\n role: role,\n 'aria-label': props['aria-label'],\n 'aria-labelledby': labelId,\n 'aria-describedby': [\n descriptionId,\n keyboardId\n ].filter(Boolean).join(' ') || undefined,\n 'aria-controls': props['aria-controls'],\n 'aria-haspopup': hasPopup,\n 'aria-expanded': props['aria-expanded']\n };\n if (selectionManager.selectionMode !== 'none' && !isTrigger) ariaProps['aria-checked'] = isSelected;\n if (isVirtualized) {\n ariaProps['aria-posinset'] = item === null || item === void 0 ? void 0 : item.index;\n ariaProps['aria-setsize'] = (0, $7Kjv5$getItemCount)(state.collection);\n }\n let onPressStart = (e)=>{\n if (e.pointerType === 'keyboard') performAction(e);\n pressStartProp === null || pressStartProp === void 0 ? void 0 : pressStartProp(e);\n };\n let maybeClose = ()=>{\n // Pressing a menu item should close by default in single selection mode but not multiple\n // selection mode, except if overridden by the closeOnSelect prop.\n if (!isTrigger && onClose && (closeOnSelect !== null && closeOnSelect !== void 0 ? closeOnSelect : selectionManager.selectionMode !== 'multiple' || selectionManager.isLink(key))) onClose();\n };\n let onPressUp = (e)=>{\n // If interacting with mouse, allow the user to mouse down on the trigger button,\n // drag, and release over an item (matching native behavior).\n if (e.pointerType === 'mouse') {\n performAction(e);\n maybeClose();\n }\n pressUpProp === null || pressUpProp === void 0 ? void 0 : pressUpProp(e);\n };\n let onPress = (e)=>{\n if (e.pointerType !== 'keyboard' && e.pointerType !== 'mouse') {\n performAction(e);\n maybeClose();\n }\n pressProp === null || pressProp === void 0 ? void 0 : pressProp(e);\n };\n let { itemProps: itemProps, isFocused: isFocused } = (0, $7Kjv5$useSelectableItem)({\n id: id,\n selectionManager: selectionManager,\n key: key,\n ref: ref,\n shouldSelectOnPressUp: true,\n allowsDifferentPressOrigin: true,\n // Disable all handling of links in useSelectable item\n // because we handle it ourselves. The behavior of menus\n // is slightly different from other collections because\n // actions are performed on key down rather than key up.\n linkBehavior: 'none',\n shouldUseVirtualFocus: data.shouldUseVirtualFocus\n });\n let { pressProps: pressProps, isPressed: isPressed } = (0, $7Kjv5$usePress)({\n onPressStart: onPressStart,\n onPress: onPress,\n onPressUp: onPressUp,\n onPressChange: onPressChange,\n onPressEnd: onPressEnd,\n isDisabled: isDisabled\n });\n let { hoverProps: hoverProps } = (0, $7Kjv5$useHover)({\n isDisabled: isDisabled,\n onHoverStart (e) {\n // Hovering over an already expanded sub dialog trigger should keep focus in the dialog.\n if (!(0, $7Kjv5$isFocusVisible)() && !(isTriggerExpanded && hasPopup)) {\n selectionManager.setFocused(true);\n selectionManager.setFocusedKey(key);\n }\n hoverStartProp === null || hoverStartProp === void 0 ? void 0 : hoverStartProp(e);\n },\n onHoverChange: onHoverChange,\n onHoverEnd: onHoverEnd\n });\n let { keyboardProps: keyboardProps } = (0, $7Kjv5$useKeyboard)({\n onKeyDown: (e)=>{\n // Ignore repeating events, which may have started on the menu trigger before moving\n // focus to the menu item. We want to wait for a second complete key press sequence.\n if (e.repeat) {\n e.continuePropagation();\n return;\n }\n switch(e.key){\n case ' ':\n if (!isDisabled && selectionManager.selectionMode === 'none' && !isTrigger && closeOnSelect !== false && onClose) onClose();\n break;\n case 'Enter':\n // The Enter key should always close on select, except if overridden.\n if (!isDisabled && closeOnSelect !== false && !isTrigger && onClose) onClose();\n break;\n default:\n if (!isTrigger) e.continuePropagation();\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n break;\n }\n },\n onKeyUp: onKeyUp\n });\n let { focusProps: focusProps } = (0, $7Kjv5$useFocus)({\n onBlur: onBlur,\n onFocus: onFocus,\n onFocusChange: onFocusChange\n });\n let domProps = (0, $7Kjv5$filterDOMProps)(item === null || item === void 0 ? void 0 : item.props);\n delete domProps.id;\n let linkProps = (0, $7Kjv5$useLinkProps)(item === null || item === void 0 ? void 0 : item.props);\n return {\n menuItemProps: {\n ...ariaProps,\n ...(0, $7Kjv5$mergeProps)(domProps, linkProps, isTrigger ? {\n onFocus: itemProps.onFocus,\n 'data-collection': itemProps['data-collection'],\n 'data-key': itemProps['data-key']\n } : itemProps, pressProps, hoverProps, keyboardProps, focusProps, // Prevent DOM focus from moving on mouse down when using virtual focus or this is a submenu/subdialog trigger.\n data.shouldUseVirtualFocus || isTrigger ? {\n onMouseDown: (e)=>e.preventDefault()\n } : undefined),\n // If a submenu is expanded, set the tabIndex to -1 so that shift tabbing goes out of the menu instead of the parent menu item.\n tabIndex: itemProps.tabIndex != null && isTriggerExpanded && !data.shouldUseVirtualFocus ? -1 : itemProps.tabIndex\n },\n labelProps: {\n id: labelId\n },\n descriptionProps: {\n id: descriptionId\n },\n keyboardShortcutProps: {\n id: keyboardId\n },\n isFocused: isFocused,\n isFocusVisible: isFocused && selectionManager.isFocused && (0, $7Kjv5$isFocusVisible)() && !isTriggerExpanded,\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled\n };\n}\n\n\nexport {$a2e5df62f93c7633$export$9d32628fc2aea7da as useMenuItem};\n//# sourceMappingURL=useMenuItem.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $05ca4cd7c4a5a999$export$863faf230ee2118a {\n *[Symbol.iterator]() {\n yield* this.iterable;\n }\n get size() {\n return this.keyMap.size;\n }\n getKeys() {\n return this.keyMap.keys();\n }\n getKeyBefore(key) {\n let node = this.keyMap.get(key);\n var _node_prevKey;\n return node ? (_node_prevKey = node.prevKey) !== null && _node_prevKey !== void 0 ? _node_prevKey : null : null;\n }\n getKeyAfter(key) {\n let node = this.keyMap.get(key);\n var _node_nextKey;\n return node ? (_node_nextKey = node.nextKey) !== null && _node_nextKey !== void 0 ? _node_nextKey : null : null;\n }\n getFirstKey() {\n return this.firstKey;\n }\n getLastKey() {\n return this.lastKey;\n }\n getItem(key) {\n var _this_keyMap_get;\n return (_this_keyMap_get = this.keyMap.get(key)) !== null && _this_keyMap_get !== void 0 ? _this_keyMap_get : null;\n }\n at(idx) {\n const keys = [\n ...this.getKeys()\n ];\n return this.getItem(keys[idx]);\n }\n constructor(nodes, { expandedKeys: expandedKeys } = {}){\n this.keyMap = new Map();\n this.firstKey = null;\n this.lastKey = null;\n this.iterable = nodes;\n expandedKeys = expandedKeys || new Set();\n let visit = (node)=>{\n this.keyMap.set(node.key, node);\n if (node.childNodes && (node.type === 'section' || expandedKeys.has(node.key))) for (let child of node.childNodes)visit(child);\n };\n for (let node of nodes)visit(node);\n let last = null;\n let index = 0;\n for (let [key, node] of this.keyMap){\n if (last) {\n last.nextKey = key;\n node.prevKey = last.key;\n } else {\n this.firstKey = key;\n node.prevKey = undefined;\n }\n if (node.type === 'item') node.index = index++;\n last = node;\n // Set nextKey as undefined since this might be the last node\n // If it isn't the last node, last.nextKey will properly set at start of new loop\n last.nextKey = undefined;\n }\n var _last_key;\n this.lastKey = (_last_key = last === null || last === void 0 ? void 0 : last.key) !== null && _last_key !== void 0 ? _last_key : null;\n }\n}\n\n\nexport {$05ca4cd7c4a5a999$export$863faf230ee2118a as TreeCollection};\n//# sourceMappingURL=TreeCollection.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $e40ea825a81a3709$export$52baac22726c72bf extends Set {\n constructor(keys, anchorKey, currentKey){\n super(keys);\n if (keys instanceof $e40ea825a81a3709$export$52baac22726c72bf) {\n this.anchorKey = anchorKey !== null && anchorKey !== void 0 ? anchorKey : keys.anchorKey;\n this.currentKey = currentKey !== null && currentKey !== void 0 ? currentKey : keys.currentKey;\n } else {\n this.anchorKey = anchorKey !== null && anchorKey !== void 0 ? anchorKey : null;\n this.currentKey = currentKey !== null && currentKey !== void 0 ? currentKey : null;\n }\n }\n}\n\n\nexport {$e40ea825a81a3709$export$52baac22726c72bf as Selection};\n//# sourceMappingURL=Selection.module.js.map\n","import {useState as $3whtM$useState, useRef as $3whtM$useRef, useEffect as $3whtM$useEffect, useCallback as $3whtM$useCallback} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange) {\n let [stateValue, setStateValue] = (0, $3whtM$useState)(value || defaultValue);\n let isControlledRef = (0, $3whtM$useRef)(value !== undefined);\n let isControlled = value !== undefined;\n (0, $3whtM$useEffect)(()=>{\n let wasControlled = isControlledRef.current;\n if (wasControlled !== isControlled && process.env.NODE_ENV !== 'production') console.warn(`WARN: A component changed from ${wasControlled ? 'controlled' : 'uncontrolled'} to ${isControlled ? 'controlled' : 'uncontrolled'}.`);\n isControlledRef.current = isControlled;\n }, [\n isControlled\n ]);\n let currentValue = isControlled ? value : stateValue;\n let setValue = (0, $3whtM$useCallback)((value, ...args)=>{\n let onChangeCaller = (value, ...onChangeArgs)=>{\n if (onChange) {\n if (!Object.is(currentValue, value)) onChange(value, ...onChangeArgs);\n }\n if (!isControlled) // If uncontrolled, mutate the currentValue local variable so that\n // calling setState multiple times with the same value only emits onChange once.\n // We do not use a ref for this because we specifically _do_ want the value to\n // reset every render, and assigning to a ref in render breaks aborted suspended renders.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n currentValue = value;\n };\n if (typeof value === 'function') {\n if (process.env.NODE_ENV !== 'production') console.warn('We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320');\n // this supports functional updates https://reactjs.org/docs/hooks-reference.html#functional-updates\n // when someone using useControlledState calls setControlledState(myFunc)\n // this will call our useState setState with a function as well which invokes myFunc and calls onChange with the value from myFunc\n // if we're in an uncontrolled state, then we also return the value of myFunc which to setState looks as though it was just called with myFunc from the beginning\n // otherwise we just return the controlled value, which won't cause a rerender because React knows to bail out when the value is the same\n let updateFunction = (oldValue, ...functionArgs)=>{\n let interceptedValue = value(isControlled ? currentValue : oldValue, ...functionArgs);\n onChangeCaller(interceptedValue, ...args);\n if (!isControlled) return interceptedValue;\n return oldValue;\n };\n setStateValue(updateFunction);\n } else {\n if (!isControlled) setStateValue(value);\n onChangeCaller(value, ...args);\n }\n }, [\n isControlled,\n currentValue,\n onChange\n ]);\n return [\n currentValue,\n setValue\n ];\n}\n\n\nexport {$458b0a5536c1a7cf$export$40bfa8c7b0832715 as useControlledState};\n//# sourceMappingURL=useControlledState.module.js.map\n","import {Selection as $e40ea825a81a3709$export$52baac22726c72bf} from \"./Selection.mjs\";\nimport {useControlledState as $6tM1y$useControlledState} from \"@react-stately/utils\";\nimport {useRef as $6tM1y$useRef, useState as $6tM1y$useState, useMemo as $6tM1y$useMemo, useEffect as $6tM1y$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $7af3f5b51489e0b5$var$equalSets(setA, setB) {\n if (setA.size !== setB.size) return false;\n for (let item of setA){\n if (!setB.has(item)) return false;\n }\n return true;\n}\nfunction $7af3f5b51489e0b5$export$253fe78d46329472(props) {\n let { selectionMode: selectionMode = 'none', disallowEmptySelection: disallowEmptySelection = false, allowDuplicateSelectionEvents: allowDuplicateSelectionEvents, selectionBehavior: selectionBehaviorProp = 'toggle', disabledBehavior: disabledBehavior = 'all' } = props;\n // We want synchronous updates to `isFocused` and `focusedKey` after their setters are called.\n // But we also need to trigger a react re-render. So, we have both a ref (sync) and state (async).\n let isFocusedRef = (0, $6tM1y$useRef)(false);\n let [, setFocused] = (0, $6tM1y$useState)(false);\n let focusedKeyRef = (0, $6tM1y$useRef)(null);\n let childFocusStrategyRef = (0, $6tM1y$useRef)(null);\n let [, setFocusedKey] = (0, $6tM1y$useState)(null);\n let selectedKeysProp = (0, $6tM1y$useMemo)(()=>$7af3f5b51489e0b5$var$convertSelection(props.selectedKeys), [\n props.selectedKeys\n ]);\n let defaultSelectedKeys = (0, $6tM1y$useMemo)(()=>$7af3f5b51489e0b5$var$convertSelection(props.defaultSelectedKeys, new (0, $e40ea825a81a3709$export$52baac22726c72bf)()), [\n props.defaultSelectedKeys\n ]);\n let [selectedKeys, setSelectedKeys] = (0, $6tM1y$useControlledState)(selectedKeysProp, defaultSelectedKeys, props.onSelectionChange);\n let disabledKeysProp = (0, $6tM1y$useMemo)(()=>props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [\n props.disabledKeys\n ]);\n let [selectionBehavior, setSelectionBehavior] = (0, $6tM1y$useState)(selectionBehaviorProp);\n // If the selectionBehavior prop is set to replace, but the current state is toggle (e.g. due to long press\n // to enter selection mode on touch), and the selection becomes empty, reset the selection behavior.\n if (selectionBehaviorProp === 'replace' && selectionBehavior === 'toggle' && typeof selectedKeys === 'object' && selectedKeys.size === 0) setSelectionBehavior('replace');\n // If the selectionBehavior prop changes, update the state as well.\n let lastSelectionBehavior = (0, $6tM1y$useRef)(selectionBehaviorProp);\n (0, $6tM1y$useEffect)(()=>{\n if (selectionBehaviorProp !== lastSelectionBehavior.current) {\n setSelectionBehavior(selectionBehaviorProp);\n lastSelectionBehavior.current = selectionBehaviorProp;\n }\n }, [\n selectionBehaviorProp\n ]);\n return {\n selectionMode: selectionMode,\n disallowEmptySelection: disallowEmptySelection,\n selectionBehavior: selectionBehavior,\n setSelectionBehavior: setSelectionBehavior,\n get isFocused () {\n return isFocusedRef.current;\n },\n setFocused (f) {\n isFocusedRef.current = f;\n setFocused(f);\n },\n get focusedKey () {\n return focusedKeyRef.current;\n },\n get childFocusStrategy () {\n return childFocusStrategyRef.current;\n },\n setFocusedKey (k, childFocusStrategy = 'first') {\n focusedKeyRef.current = k;\n childFocusStrategyRef.current = childFocusStrategy;\n setFocusedKey(k);\n },\n selectedKeys: selectedKeys,\n setSelectedKeys (keys) {\n if (allowDuplicateSelectionEvents || !$7af3f5b51489e0b5$var$equalSets(keys, selectedKeys)) setSelectedKeys(keys);\n },\n disabledKeys: disabledKeysProp,\n disabledBehavior: disabledBehavior\n };\n}\nfunction $7af3f5b51489e0b5$var$convertSelection(selection, defaultValue) {\n if (!selection) return defaultValue;\n return selection === 'all' ? 'all' : new (0, $e40ea825a81a3709$export$52baac22726c72bf)(selection);\n}\n\n\nexport {$7af3f5b51489e0b5$export$253fe78d46329472 as useMultipleSelectionState};\n//# sourceMappingURL=useMultipleSelectionState.module.js.map\n","import {Selection as $e40ea825a81a3709$export$52baac22726c72bf} from \"./Selection.mjs\";\nimport {compareNodeOrder as $jkhUT$compareNodeOrder, getFirstItem as $jkhUT$getFirstItem, getChildNodes as $jkhUT$getChildNodes} from \"@react-stately/collections\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nclass $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {\n /**\n * The type of selection that is allowed in the collection.\n */ get selectionMode() {\n return this.state.selectionMode;\n }\n /**\n * Whether the collection allows empty selection.\n */ get disallowEmptySelection() {\n return this.state.disallowEmptySelection;\n }\n /**\n * The selection behavior for the collection.\n */ get selectionBehavior() {\n return this.state.selectionBehavior;\n }\n /**\n * Sets the selection behavior for the collection.\n */ setSelectionBehavior(selectionBehavior) {\n this.state.setSelectionBehavior(selectionBehavior);\n }\n /**\n * Whether the collection is currently focused.\n */ get isFocused() {\n return this.state.isFocused;\n }\n /**\n * Sets whether the collection is focused.\n */ setFocused(isFocused) {\n this.state.setFocused(isFocused);\n }\n /**\n * The current focused key in the collection.\n */ get focusedKey() {\n return this.state.focusedKey;\n }\n /** Whether the first or last child of the focused key should receive focus. */ get childFocusStrategy() {\n return this.state.childFocusStrategy;\n }\n /**\n * Sets the focused key.\n */ setFocusedKey(key, childFocusStrategy) {\n if (key == null || this.collection.getItem(key)) this.state.setFocusedKey(key, childFocusStrategy);\n }\n /**\n * The currently selected keys in the collection.\n */ get selectedKeys() {\n return this.state.selectedKeys === 'all' ? new Set(this.getSelectAllKeys()) : this.state.selectedKeys;\n }\n /**\n * The raw selection value for the collection.\n * Either 'all' for select all, or a set of keys.\n */ get rawSelection() {\n return this.state.selectedKeys;\n }\n /**\n * Returns whether a key is selected.\n */ isSelected(key) {\n if (this.state.selectionMode === 'none') return false;\n let mappedKey = this.getKey(key);\n if (mappedKey == null) return false;\n return this.state.selectedKeys === 'all' ? this.canSelectItem(mappedKey) : this.state.selectedKeys.has(mappedKey);\n }\n /**\n * Whether the selection is empty.\n */ get isEmpty() {\n return this.state.selectedKeys !== 'all' && this.state.selectedKeys.size === 0;\n }\n /**\n * Whether all items in the collection are selected.\n */ get isSelectAll() {\n if (this.isEmpty) return false;\n if (this.state.selectedKeys === 'all') return true;\n if (this._isSelectAll != null) return this._isSelectAll;\n let allKeys = this.getSelectAllKeys();\n let selectedKeys = this.state.selectedKeys;\n this._isSelectAll = allKeys.every((k)=>selectedKeys.has(k));\n return this._isSelectAll;\n }\n get firstSelectedKey() {\n let first = null;\n for (let key of this.state.selectedKeys){\n let item = this.collection.getItem(key);\n if (!first || item && (0, $jkhUT$compareNodeOrder)(this.collection, item, first) < 0) first = item;\n }\n var _first_key;\n return (_first_key = first === null || first === void 0 ? void 0 : first.key) !== null && _first_key !== void 0 ? _first_key : null;\n }\n get lastSelectedKey() {\n let last = null;\n for (let key of this.state.selectedKeys){\n let item = this.collection.getItem(key);\n if (!last || item && (0, $jkhUT$compareNodeOrder)(this.collection, item, last) > 0) last = item;\n }\n var _last_key;\n return (_last_key = last === null || last === void 0 ? void 0 : last.key) !== null && _last_key !== void 0 ? _last_key : null;\n }\n get disabledKeys() {\n return this.state.disabledKeys;\n }\n get disabledBehavior() {\n return this.state.disabledBehavior;\n }\n /**\n * Extends the selection to the given key.\n */ extendSelection(toKey) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single') {\n this.replaceSelection(toKey);\n return;\n }\n let mappedToKey = this.getKey(toKey);\n if (mappedToKey == null) return;\n let selection;\n // Only select the one key if coming from a select all.\n if (this.state.selectedKeys === 'all') selection = new (0, $e40ea825a81a3709$export$52baac22726c72bf)([\n mappedToKey\n ], mappedToKey, mappedToKey);\n else {\n let selectedKeys = this.state.selectedKeys;\n var _selectedKeys_anchorKey;\n let anchorKey = (_selectedKeys_anchorKey = selectedKeys.anchorKey) !== null && _selectedKeys_anchorKey !== void 0 ? _selectedKeys_anchorKey : mappedToKey;\n selection = new (0, $e40ea825a81a3709$export$52baac22726c72bf)(selectedKeys, anchorKey, mappedToKey);\n var _selectedKeys_currentKey;\n for (let key of this.getKeyRange(anchorKey, (_selectedKeys_currentKey = selectedKeys.currentKey) !== null && _selectedKeys_currentKey !== void 0 ? _selectedKeys_currentKey : mappedToKey))selection.delete(key);\n for (let key of this.getKeyRange(mappedToKey, anchorKey))if (this.canSelectItem(key)) selection.add(key);\n }\n this.state.setSelectedKeys(selection);\n }\n getKeyRange(from, to) {\n let fromItem = this.collection.getItem(from);\n let toItem = this.collection.getItem(to);\n if (fromItem && toItem) {\n if ((0, $jkhUT$compareNodeOrder)(this.collection, fromItem, toItem) <= 0) return this.getKeyRangeInternal(from, to);\n return this.getKeyRangeInternal(to, from);\n }\n return [];\n }\n getKeyRangeInternal(from, to) {\n var _this_layoutDelegate;\n if ((_this_layoutDelegate = this.layoutDelegate) === null || _this_layoutDelegate === void 0 ? void 0 : _this_layoutDelegate.getKeyRange) return this.layoutDelegate.getKeyRange(from, to);\n let keys = [];\n let key = from;\n while(key != null){\n let item = this.collection.getItem(key);\n if (item && (item.type === 'item' || item.type === 'cell' && this.allowsCellSelection)) keys.push(key);\n if (key === to) return keys;\n key = this.collection.getKeyAfter(key);\n }\n return [];\n }\n getKey(key) {\n let item = this.collection.getItem(key);\n if (!item) // ¯\\_(ツ)_/¯\n return key;\n // If cell selection is allowed, just return the key.\n if (item.type === 'cell' && this.allowsCellSelection) return key;\n // Find a parent item to select\n while(item && item.type !== 'item' && item.parentKey != null)item = this.collection.getItem(item.parentKey);\n if (!item || item.type !== 'item') return null;\n return item.key;\n }\n /**\n * Toggles whether the given key is selected.\n */ toggleSelection(key) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single' && !this.isSelected(key)) {\n this.replaceSelection(key);\n return;\n }\n let mappedKey = this.getKey(key);\n if (mappedKey == null) return;\n let keys = new (0, $e40ea825a81a3709$export$52baac22726c72bf)(this.state.selectedKeys === 'all' ? this.getSelectAllKeys() : this.state.selectedKeys);\n if (keys.has(mappedKey)) keys.delete(mappedKey);\n else if (this.canSelectItem(mappedKey)) {\n keys.add(mappedKey);\n keys.anchorKey = mappedKey;\n keys.currentKey = mappedKey;\n }\n if (this.disallowEmptySelection && keys.size === 0) return;\n this.state.setSelectedKeys(keys);\n }\n /**\n * Replaces the selection with only the given key.\n */ replaceSelection(key) {\n if (this.selectionMode === 'none') return;\n let mappedKey = this.getKey(key);\n if (mappedKey == null) return;\n let selection = this.canSelectItem(mappedKey) ? new (0, $e40ea825a81a3709$export$52baac22726c72bf)([\n mappedKey\n ], mappedKey, mappedKey) : new (0, $e40ea825a81a3709$export$52baac22726c72bf)();\n this.state.setSelectedKeys(selection);\n }\n /**\n * Replaces the selection with the given keys.\n */ setSelectedKeys(keys) {\n if (this.selectionMode === 'none') return;\n let selection = new (0, $e40ea825a81a3709$export$52baac22726c72bf)();\n for (let key of keys){\n let mappedKey = this.getKey(key);\n if (mappedKey != null) {\n selection.add(mappedKey);\n if (this.selectionMode === 'single') break;\n }\n }\n this.state.setSelectedKeys(selection);\n }\n getSelectAllKeys() {\n let keys = [];\n let addKeys = (key)=>{\n while(key != null){\n if (this.canSelectItem(key)) {\n var _getFirstItem;\n let item = this.collection.getItem(key);\n if ((item === null || item === void 0 ? void 0 : item.type) === 'item') keys.push(key);\n var _getFirstItem_key;\n // Add child keys. If cell selection is allowed, then include item children too.\n if ((item === null || item === void 0 ? void 0 : item.hasChildNodes) && (this.allowsCellSelection || item.type !== 'item')) addKeys((_getFirstItem_key = (_getFirstItem = (0, $jkhUT$getFirstItem)((0, $jkhUT$getChildNodes)(item, this.collection))) === null || _getFirstItem === void 0 ? void 0 : _getFirstItem.key) !== null && _getFirstItem_key !== void 0 ? _getFirstItem_key : null);\n }\n key = this.collection.getKeyAfter(key);\n }\n };\n addKeys(this.collection.getFirstKey());\n return keys;\n }\n /**\n * Selects all items in the collection.\n */ selectAll() {\n if (!this.isSelectAll && this.selectionMode === 'multiple') this.state.setSelectedKeys('all');\n }\n /**\n * Removes all keys from the selection.\n */ clearSelection() {\n if (!this.disallowEmptySelection && (this.state.selectedKeys === 'all' || this.state.selectedKeys.size > 0)) this.state.setSelectedKeys(new (0, $e40ea825a81a3709$export$52baac22726c72bf)());\n }\n /**\n * Toggles between select all and an empty selection.\n */ toggleSelectAll() {\n if (this.isSelectAll) this.clearSelection();\n else this.selectAll();\n }\n select(key, e) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single') {\n if (this.isSelected(key) && !this.disallowEmptySelection) this.toggleSelection(key);\n else this.replaceSelection(key);\n } else if (this.selectionBehavior === 'toggle' || e && (e.pointerType === 'touch' || e.pointerType === 'virtual')) // if touch or virtual (VO) then we just want to toggle, otherwise it's impossible to multi select because they don't have modifier keys\n this.toggleSelection(key);\n else this.replaceSelection(key);\n }\n /**\n * Returns whether the current selection is equal to the given selection.\n */ isSelectionEqual(selection) {\n if (selection === this.state.selectedKeys) return true;\n // Check if the set of keys match.\n let selectedKeys = this.selectedKeys;\n if (selection.size !== selectedKeys.size) return false;\n for (let key of selection){\n if (!selectedKeys.has(key)) return false;\n }\n for (let key of selectedKeys){\n if (!selection.has(key)) return false;\n }\n return true;\n }\n canSelectItem(key) {\n var _item_props;\n if (this.state.selectionMode === 'none' || this.state.disabledKeys.has(key)) return false;\n let item = this.collection.getItem(key);\n if (!item || (item === null || item === void 0 ? void 0 : (_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.isDisabled) || item.type === 'cell' && !this.allowsCellSelection) return false;\n return true;\n }\n isDisabled(key) {\n var _this_collection_getItem_props, _this_collection_getItem;\n return this.state.disabledBehavior === 'all' && (this.state.disabledKeys.has(key) || !!((_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : (_this_collection_getItem_props = _this_collection_getItem.props) === null || _this_collection_getItem_props === void 0 ? void 0 : _this_collection_getItem_props.isDisabled));\n }\n isLink(key) {\n var _this_collection_getItem_props, _this_collection_getItem;\n return !!((_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : (_this_collection_getItem_props = _this_collection_getItem.props) === null || _this_collection_getItem_props === void 0 ? void 0 : _this_collection_getItem_props.href);\n }\n getItemProps(key) {\n var _this_collection_getItem;\n return (_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : _this_collection_getItem.props;\n }\n withCollection(collection) {\n return new $d496c0a20b6e58ec$export$6c8a5aaad13c9852(collection, this.state, {\n allowsCellSelection: this.allowsCellSelection,\n layoutDelegate: this.layoutDelegate || undefined\n });\n }\n constructor(collection, state, options){\n this.collection = collection;\n this.state = state;\n var _options_allowsCellSelection;\n this.allowsCellSelection = (_options_allowsCellSelection = options === null || options === void 0 ? void 0 : options.allowsCellSelection) !== null && _options_allowsCellSelection !== void 0 ? _options_allowsCellSelection : false;\n this._isSelectAll = null;\n this.layoutDelegate = (options === null || options === void 0 ? void 0 : options.layoutDelegate) || null;\n }\n}\n\n\nexport {$d496c0a20b6e58ec$export$6c8a5aaad13c9852 as SelectionManager};\n//# sourceMappingURL=SelectionManager.module.js.map\n","import {TreeCollection as $05ca4cd7c4a5a999$export$863faf230ee2118a} from \"./TreeCollection.mjs\";\nimport {useMultipleSelectionState as $75HV2$useMultipleSelectionState, SelectionManager as $75HV2$SelectionManager} from \"@react-stately/selection\";\nimport {useMemo as $75HV2$useMemo, useCallback as $75HV2$useCallback, useEffect as $75HV2$useEffect} from \"react\";\nimport {useCollection as $75HV2$useCollection} from \"@react-stately/collections\";\nimport {useControlledState as $75HV2$useControlledState} from \"@react-stately/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $875d6693e12af071$export$728d6ba534403756(props) {\n let { onExpandedChange: onExpandedChange } = props;\n let [expandedKeys, setExpandedKeys] = (0, $75HV2$useControlledState)(props.expandedKeys ? new Set(props.expandedKeys) : undefined, props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), onExpandedChange);\n let selectionState = (0, $75HV2$useMultipleSelectionState)(props);\n let disabledKeys = (0, $75HV2$useMemo)(()=>props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [\n props.disabledKeys\n ]);\n let tree = (0, $75HV2$useCollection)(props, (0, $75HV2$useCallback)((nodes)=>new (0, $05ca4cd7c4a5a999$export$863faf230ee2118a)(nodes, {\n expandedKeys: expandedKeys\n }), [\n expandedKeys\n ]), null);\n // Reset focused key if that item is deleted from the collection.\n (0, $75HV2$useEffect)(()=>{\n if (selectionState.focusedKey != null && !tree.getItem(selectionState.focusedKey)) selectionState.setFocusedKey(null);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n tree,\n selectionState.focusedKey\n ]);\n let onToggle = (key)=>{\n setExpandedKeys($875d6693e12af071$var$toggleKey(expandedKeys, key));\n };\n return {\n collection: tree,\n expandedKeys: expandedKeys,\n disabledKeys: disabledKeys,\n toggleKey: onToggle,\n setExpandedKeys: setExpandedKeys,\n selectionManager: new (0, $75HV2$SelectionManager)(tree, selectionState)\n };\n}\nfunction $875d6693e12af071$var$toggleKey(set, key) {\n let res = new Set(set);\n if (res.has(key)) res.delete(key);\n else res.add(key);\n return res;\n}\n\n\nexport {$875d6693e12af071$export$728d6ba534403756 as useTreeState};\n//# sourceMappingURL=useTreeState.module.js.map\n","// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n const result = childPropValue(...args);\n slotPropValue(...args);\n return result;\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n","// src/primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"select\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Slot = createSlot(`Primitive.${node}`);\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-layout-effect/src/use-layout-effect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = globalThis?.document ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/portal.tsx\nimport * as React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { jsx } from \"react/jsx-runtime\";\nvar PORTAL_NAME = \"Portal\";\nvar Portal = React.forwardRef((props, forwardedRef) => {\n const { container: containerProp, ...portalProps } = props;\n const [mounted, setMounted] = React.useState(false);\n useLayoutEffect(() => setMounted(true), []);\n const container = containerProp || mounted && globalThis?.document?.body;\n return container ? ReactDOM.createPortal(/* @__PURE__ */ jsx(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;\n});\nPortal.displayName = PORTAL_NAME;\nvar Root = Portal;\nexport {\n Portal,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n }\n function useSyncExternalStore$2(subscribe, getSnapshot) {\n didWarnOld18Alpha ||\n void 0 === React.startTransition ||\n ((didWarnOld18Alpha = !0),\n console.error(\n \"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.\"\n ));\n var value = getSnapshot();\n if (!didWarnUncachedGetSnapshot) {\n var cachedValue = getSnapshot();\n objectIs(value, cachedValue) ||\n (console.error(\n \"The result of getSnapshot should be cached to avoid an infinite loop\"\n ),\n (didWarnUncachedGetSnapshot = !0));\n }\n cachedValue = useState({\n inst: { value: value, getSnapshot: getSnapshot }\n });\n var inst = cachedValue[0].inst,\n forceUpdate = cachedValue[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n }\n function checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n }\n function useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var React = require(\"react\"),\n objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue,\n didWarnOld18Alpha = !1,\n didWarnUncachedGetSnapshot = !1,\n shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\n exports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","import { THEMES } from \"./theme\";\r\nimport { ProtonPalette } from \"./types\";\r\nimport { LIGHT_STYLESHEET } from \"./lightTheme/stylesheet\";\r\nimport { DARK_STYLESHEET } from \"./darkTheme/stylesheet\";\r\nimport { ProtonStyleSheet } from \"./types\";\r\n\r\nexport const generateStylesheet = (\r\n palette: ProtonPalette,\r\n theme: string\r\n): ProtonStyleSheet => {\r\n const themeVariables =\r\n theme === THEMES.DARK ? DARK_STYLESHEET : LIGHT_STYLESHEET;\r\n\r\n if (palette) {\r\n const customVars = generateCustomStylesheet(palette);\r\n return {\r\n ...themeVariables,\r\n ...customVars,\r\n };\r\n }\r\n\r\n return themeVariables;\r\n};\r\n\r\n//overrride theme colors in stylesheet\r\nconst generateCustomStylesheet = (\r\n palette: ProtonPalette\r\n): Partial<ProtonStyleSheet> => {\r\n return {\r\n \"--proton-color__primary\": palette.BRAND.PRIMARY,\r\n \"--proton-color__primary-light\": palette.BRAND.PRIMARY_LIGHT,\r\n \"--proton-color__primary-super-light\": palette.BRAND.PRIMARY_SUPER_LIGHT,\r\n \"--proton-color__secondary\": palette.BRAND.SECONDARY,\r\n \"--proton-color__secondary-light\": palette.BRAND.SECONDARY_LIGHT,\r\n \"--proton-color__secondary-super-light\":\r\n palette.BRAND.SECONDARY_SUPER_LIGHT,\r\n\r\n //TODO: add newly generated grayscale color scale\r\n };\r\n};\r\n","\"use client\";\r\n\r\nimport React, {\r\n createContext,\r\n ReactNode,\r\n useContext,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n} from \"react\";\r\n\r\nimport { THEME_CLASSES } from \"../design\";\r\nimport { LIGHT_PALETTE } from \"../design/lightTheme/colors\";\r\nimport { ProtonPalette, ProtonStyleSheet, ProtonTheme } from \"../design/types\";\r\nimport { generateStylesheet } from \"../design/generateStylesheet\";\r\n\r\ninterface ThemeContextType {\r\n theme: ProtonTheme;\r\n className: string;\r\n style: ProtonStyleSheet;\r\n palette: ProtonPalette;\r\n hasPalette?: boolean;\r\n}\r\n\r\nconst ThemeContext = createContext<ThemeContextType | undefined>(undefined);\r\n\r\nexport const useTheme = () => {\r\n const context = useContext(ThemeContext);\r\n if (context === undefined) {\r\n throw new Error(\"useTheme must be used within a ThemeProvider\");\r\n }\r\n return context;\r\n};\r\n\r\ninterface ThemeProviderProps {\r\n theme: ProtonTheme;\r\n children: ReactNode;\r\n palette?: ProtonPalette;\r\n}\r\n\r\nexport const ThemeProvider: React.FC<ThemeProviderProps> = ({\r\n theme,\r\n children,\r\n palette = LIGHT_PALETTE,\r\n}) => {\r\n const containerRef = useRef<HTMLDivElement>(null);\r\n const themeClass = THEME_CLASSES[theme];\r\n const themeVariables = useMemo(\r\n () => generateStylesheet(palette, theme),\r\n [palette, theme]\r\n );\r\n\r\n useEffect(() => {\r\n // Apply the theme class and css variables to the container div so that it is only scoped\r\n // to the ThemeProvider children.\r\n if (containerRef.current) {\r\n containerRef.current.className = themeClass;\r\n\r\n Object.entries(themeVariables).forEach(([key, value]) => {\r\n containerRef.current!.style.setProperty(key, value as string);\r\n });\r\n }\r\n }, [theme, themeClass, palette, themeVariables]);\r\n\r\n return (\r\n <ThemeContext.Provider\r\n value={{\r\n theme,\r\n style: themeVariables,\r\n palette,\r\n className: themeClass,\r\n hasPalette: Boolean(palette),\r\n }}\r\n >\r\n <div ref={containerRef}>{children}</div>\r\n </ThemeContext.Provider>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { forwardRef, useEffect } from \"react\";\r\nimport \"./ScreenOverlay.css\";\r\nimport { csx } from \"../../utils\";\r\nimport { Portal } from \"radix-ui\";\r\nimport { useTheme, ThemeProvider } from \"../ThemeProvider\";\r\n\r\ninterface ScreenOverlayProps {\r\n /**\r\n * Children to render inside the overlay.\r\n */\r\n children?: React.ReactNode;\r\n\r\n /**\r\n * Whether to fade in the overlay.\r\n */\r\n fadeIn?: boolean;\r\n\r\n /**\r\n * Callback function to handle events (click or ESC key).\r\n */\r\n onClose?: () => void;\r\n\r\n /**\r\n * Ref to the overlay element.\r\n */\r\n ref?: React.RefObject<HTMLDivElement>;\r\n}\r\n\r\n/**\r\n * Base Overlay component for creating modal-like backgrounds.\r\n *\r\n * API:\r\n * - {@link ScreenOverlayProps}\r\n */\r\nexport const ScreenOverlay = forwardRef<HTMLDivElement, ScreenOverlayProps>(\r\n ({ fadeIn = false, onClose, children }, ref) => {\r\n const { theme, palette } = useTheme();\r\n\r\n useEffect(() => {\r\n if (!onClose) return;\r\n\r\n const handleEscKey = (event: KeyboardEvent) => {\r\n if (event.key === \"Escape\") onClose();\r\n };\r\n\r\n document.addEventListener(\"keydown\", handleEscKey);\r\n return () => {\r\n document.removeEventListener(\"keydown\", handleEscKey);\r\n };\r\n }, [onClose]);\r\n\r\n return (\r\n <Portal.Root>\r\n <ThemeProvider theme={theme} palette={palette}>\r\n <div\r\n ref={ref}\r\n id=\"background\"\r\n aria-label=\"Background overlay\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n data-testid=\"screen-overlay\"\r\n className={csx(\r\n \"proton-ScreenOverlay__background\",\r\n \"proton-ScreenOverlay__z-index\",\r\n fadeIn && \"proton-ScreenOverlay__fade-in\"\r\n )}\r\n onClick={(event: React.MouseEvent) => {\r\n if (!onClose) return;\r\n\r\n // Only trigger onClose if the click was directly on the background element\r\n if (event.target === event.currentTarget) {\r\n onClose();\r\n }\r\n }}\r\n >\r\n {children}\r\n </div>\r\n </ThemeProvider>\r\n </Portal.Root>\r\n );\r\n }\r\n);\r\n\r\nScreenOverlay.displayName = \"ProtonUIScreenOverlay\";\r\n","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cdefs%3e%3csymbol%20id='external-link'%20viewBox='0%200%20512%20512'%3e%3cpath%20d='M384%20224v184a40%2040%200%2001-40%2040H104a40%2040%200%2001-40-40V168a40%2040%200%200140-40h167.48M336%2064h112v112M224%20288L440%2072'%20fill='none'%20stroke='currentColor'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='32'/%3e%3c/symbol%3e%3csymbol%20id='caret-down'%20viewBox='0%200%20512%20512'%3e%3cpath%20fill='currentColor'%20d='M233.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L256%20338.7L86.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/symbol%3e%3csymbol%20id='caret-right'%20viewBox='0%200%20512%20512'%3e%3cpath%20fill='currentColor'%20d='M216.5%20374.8c-11.3%2011.3-30%2011.3-41.3%200L74.8%20256c-11.3-11.3-11.3-30%200-41.3l128.5-128.5c11.3-11.3%2030-11.3%2041.3%200s11.3%2030%200%2041.3L145.7%20256l119.8%20119.8c11.3%2011.3%2011.3%2030%200%2041.3z'/%3e%3c/symbol%3e%3csymbol%20id='chevron-right'%20viewBox='0%200%2016%2016'%3e%3cpath%20fill='currentColor'%20d='M5.74%203.2a.75.75%200%200%200-.04%201.06L9.227%208L5.7%2011.74a.75.75%200%201%200%201.1%201.02l4-4.25a.75.75%200%200%200%200-1.02l-4-4.25a.75.75%200%200%200-1.06-.04'/%3e%3c/symbol%3e%3csymbol%20id='chevron-left'%20viewBox='0%200%2016%2016'%3e%3cpath%20fill='currentColor'%20d='M10.26%203.2a.75.75%200%200%201%20.04%201.06L6.773%208l3.527%203.74a.75.75%200%201%201-1.1%201.02l-4-4.25a.75.75%200%200%201%200-1.02l4-4.25a.75.75%200%200%201%201.06-.04'/%3e%3c/symbol%3e%3csymbol%20id='chevron-down'%20viewBox='0%200%2016%2016'%3e%3cpath%20fill='currentColor'%20d='M3.2%205.74a.75.75%200%200%201%201.06-.04L8%209.227L11.74%205.7a.75.75%200%201%201%201.02%201.1l-4.25%204a.75.75%200%200%201-1.02%200l-4.25-4a.75.75%200%200%201-.04-1.06'/%3e%3c/symbol%3e%3c/defs%3e%3c/svg%3e\"","import { SVGProps } from \"react\";\r\nimport iconURL from \"../../../assets/svg/icons.svg\";\r\n\r\ntype IconID =\r\n | \"external-link\"\r\n | \"caret-down\"\r\n | \"caret-right\"\r\n | \"chevron-right\"\r\n | \"chevron-left\"\r\n | \"chevron-up\"\r\n | \"chevron-down\";\r\n\r\n/*\r\n *\r\n * 🚧 UNDER CONSTRUCTION 🚧\r\n *\r\n */\r\n\r\nexport interface IconProps {\r\n /**\r\n * The spritesheet ID defined in the Icons spritesheet.\r\n */\r\n id: IconID;\r\n\r\n /**\r\n * The desired width/height of the icon. Accepts any valid CSS unit.\r\n */\r\n size?: number | string;\r\n\r\n /**\r\n * The stroke color of the icon.\r\n */\r\n color?: string;\r\n}\r\n\r\n/**\r\n * An icon component that displays SVG icons from a sprite sheet or inline.\r\n *\r\n * API:\r\n * - {@link IconProps}\r\n */\r\nexport function Icon(props: IconProps) {\r\n let iconStyle = {\r\n height: props.size || undefined,\r\n width: props.size || undefined,\r\n color: props.color || undefined,\r\n };\r\n\r\n if (props.id === \"chevron-right\") {\r\n return <Chevron direction=\"right\" {...iconStyle} />;\r\n }\r\n\r\n if (props.id === \"chevron-left\") {\r\n return <Chevron direction=\"left\" {...iconStyle} />;\r\n }\r\n\r\n if (props.id === \"chevron-up\") {\r\n return <Chevron direction=\"up\" {...iconStyle} />;\r\n }\r\n\r\n if (props.id === \"chevron-down\") {\r\n return <Chevron direction=\"down\" {...iconStyle} />;\r\n }\r\n\r\n console.warn(\r\n `⚠️ Sprite sheet does not work properly when loading in other apps!!`\r\n );\r\n\r\n return (\r\n <svg style={iconStyle} {...props}>\r\n <use href={`${iconURL}#${props.id}`} />\r\n </svg>\r\n );\r\n}\r\n\r\nfunction Chevron({\r\n direction,\r\n ...props\r\n}: {\r\n direction: \"right\" | \"left\" | \"up\" | \"down\";\r\n} & SVGProps<SVGSVGElement>) {\r\n const rotateMap = {\r\n right: 0,\r\n down: 90,\r\n left: 180,\r\n up: 270,\r\n };\r\n\r\n return (\r\n <svg\r\n viewBox=\"0 0 16 16\"\r\n style={{\r\n transform: `rotate(${rotateMap[direction]}deg)`,\r\n }}\r\n {...props}\r\n >\r\n {/* NOTE: this is the path for the \"right\" direction */}\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M5.74 3.2a.75.75 0 0 0-.04 1.06L9.227 8L5.7 11.74a.75.75 0 1 0 1.1 1.02l4-4.25a.75.75 0 0 0 0-1.02l-4-4.25a.75.75 0 0 0-1.06-.04\"\r\n />\r\n </svg>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport { ReactNode, useEffect, useRef, useState } from \"react\";\r\nimport { useMenu, useMenuItem } from \"@react-aria/menu\";\r\nimport { TreeState, useTreeState } from \"@react-stately/tree\";\r\nimport { Item } from \"@react-stately/collections\";\r\nimport type { Node, Selection } from \"@react-types/shared\";\r\n\r\nimport { useIsClosing } from \"../../hooks/useIsClosing\";\r\nimport { useLockBodyScroll } from \"../../hooks/useLockBodyScroll\";\r\nimport { csx, handleInternalNavigation, isUrlExternal } from \"../../utils\";\r\nimport { Button } from \"../Button/Button\";\r\nimport { ScreenOverlay } from \"../ScreenOverlay/ScreenOverlay\";\r\n\r\nimport \"./ActionMenu.css\";\r\nimport { Icon } from \"../Icon/Icon\";\r\n\r\nexport interface ActionMenuAction {\r\n key: string;\r\n label?: ReactNode;\r\n description?: ReactNode;\r\n to?: string;\r\n onAction?: (key: string) => void;\r\n children?: ActionMenuAction[];\r\n}\r\n\r\nexport interface ActionMenuProps {\r\n /** The actions of the menu\r\n * - type {@link ActionMenuAction}[]\r\n */\r\n actions?: ActionMenuAction[];\r\n\r\n /** The text of the cancel button */\r\n cancelButtonText?: string;\r\n\r\n /** The children of the menu */\r\n children?: ReactNode | ((props: { close: () => void }) => ReactNode);\r\n\r\n /** The test id of the menu */\r\n \"data-testid\"?: string;\r\n\r\n /** The keys of the default selected items */\r\n defaultSelectedKeys?: string[];\r\n\r\n /** The keys of the disabled items */\r\n disabledKeys?: string[];\r\n\r\n /** Whether the menu is open\r\n * @default false\r\n */\r\n isOpen: boolean;\r\n\r\n /** The callback function to close the menu */\r\n onClose?: () => void;\r\n\r\n /** The callback function to change the selection\r\n * - type {@link Selection}\r\n */\r\n onSelectionChange?: (keys: Selection) => void;\r\n\r\n /** The selection mode of the menu\r\n * @default \"single\"\r\n */\r\n selectionMode?: \"single\" | \"multiple\" | \"none\";\r\n\r\n /** The keys of the selected items */\r\n selectedKeys?: string[];\r\n\r\n /** Whether to show the cancel button */\r\n showCancel?: boolean;\r\n\r\n /** The title of the menu */\r\n title?: string;\r\n}\r\n\r\ntype ActionStack = {\r\n title: ReactNode | null;\r\n actions: ActionMenuAction[];\r\n key: string | null;\r\n previousKey: string | null;\r\n};\r\n\r\n/**\r\n * ActionMenu to display a menu of actions.\r\n * Renders a list of actions as a focusable menu, or non-focusable children.\r\n *\r\n * API:\r\n * - {@link ActionMenuProps}\r\n */\r\nexport const ActionMenu = ({\r\n isOpen,\r\n selectionMode = \"single\",\r\n selectedKeys,\r\n defaultSelectedKeys,\r\n disabledKeys,\r\n children,\r\n showCancel = true,\r\n cancelButtonText = \"Cancel\",\r\n actions,\r\n title,\r\n onSelectionChange,\r\n onClose,\r\n \"data-testid\": testId,\r\n}: ActionMenuProps) => {\r\n useLockBodyScroll(isOpen);\r\n const [contentHeight, setContentHeight] = useState<number>(0);\r\n const [stackHistory, setStackHistory] = useState<ActionStack[]>([]);\r\n const [currentActionStack, setCurrentActionStack] = useState<ActionStack>({\r\n title,\r\n actions,\r\n key: null,\r\n previousKey: null,\r\n });\r\n const currentActions = currentActionStack.actions || [];\r\n\r\n const contentRef = useRef<HTMLDivElement>(null);\r\n const menuRef = useRef<HTMLDivElement>(null);\r\n const overlayRef = useRef<HTMLDivElement>(null);\r\n const justNavigatedToSubmenuRef = useRef(false);\r\n const { isClosing, handleClose } = useIsClosing({\r\n onClose,\r\n overlayRef,\r\n });\r\n\r\n const hasActions = currentActions && currentActions.length > 0;\r\n\r\n const handleOverlayClose = () => {\r\n setContentHeight(0);\r\n handleClose();\r\n };\r\n\r\n const state = useTreeState({\r\n items: currentActions,\r\n children: currentActions.map((action) => (\r\n <Item {...action} key={action.key} textValue={action.key}>\r\n {action.label}\r\n </Item>\r\n )),\r\n defaultSelectedKeys: defaultSelectedKeys\r\n ? new Set(defaultSelectedKeys)\r\n : undefined,\r\n selectedKeys: selectedKeys ? new Set(selectedKeys) : undefined,\r\n onSelectionChange,\r\n selectionMode,\r\n disabledKeys,\r\n });\r\n\r\n const { menuProps } = useMenu(\r\n {\r\n autoFocus: true,\r\n shouldFocusWrap: true,\r\n onAction: (key) => {\r\n const action = currentActions.find((action) => action.key === key);\r\n if (!action) {\r\n console.error(`Action with key ${key} not found`);\r\n return;\r\n }\r\n\r\n // the action's onAction is called in ActionMenuItem, so we don't need to call it again\r\n\r\n if (action?.children?.length) {\r\n handleSubmenuOpen(key as string);\r\n }\r\n },\r\n onClose: () => {\r\n if (justNavigatedToSubmenuRef.current) {\r\n justNavigatedToSubmenuRef.current = false;\r\n return;\r\n }\r\n onClose?.();\r\n },\r\n disabledKeys,\r\n onSelectionChange,\r\n selectionMode,\r\n selectedKeys,\r\n defaultSelectedKeys,\r\n \"aria-label\": \"Action Menu\",\r\n },\r\n state,\r\n menuRef\r\n );\r\n\r\n function handleSubmenuOpen(key: string) {\r\n const action = currentActions.find((action) => action.key === key);\r\n if (!action) {\r\n console.error(`Action with key ${key} not found`);\r\n return;\r\n }\r\n\r\n setStackHistory((prevStackHistory) => [\r\n ...prevStackHistory,\r\n currentActionStack,\r\n ]);\r\n setCurrentActionStack((prevStack) => ({\r\n title: action.label,\r\n actions: action.children,\r\n key: action.key,\r\n previousKey: prevStack.key,\r\n }));\r\n justNavigatedToSubmenuRef.current = true;\r\n }\r\n\r\n function handleBack() {\r\n if (stackHistory.length > 0) {\r\n const previousStack = stackHistory[stackHistory.length - 1];\r\n setCurrentActionStack(previousStack);\r\n setStackHistory(stackHistory.slice(0, -1));\r\n }\r\n }\r\n\r\n const hasContent = children || hasActions || showCancel;\r\n\r\n // We need to re-measure the open menu's content height when stack history changes\r\n useEffect(() => {\r\n if (!isOpen) return;\r\n\r\n requestAnimationFrame(() => {\r\n if (contentRef.current) {\r\n setContentHeight(contentRef.current.scrollHeight);\r\n }\r\n });\r\n }, [isOpen, contentRef.current, stackHistory, hasContent]);\r\n\r\n if (!isOpen) return null;\r\n\r\n return (\r\n <ScreenOverlay fadeIn ref={overlayRef} onClose={handleOverlayClose}>\r\n <div\r\n className=\"proton-ActionMenu__background-wrapper\"\r\n style={{\r\n opacity: isClosing ? 0 : 1,\r\n }}\r\n >\r\n <div\r\n data-testid={testId || \"ActionMenu-wrapper\"}\r\n className=\"proton-ActionMenu__wrapper\"\r\n >\r\n <div\r\n className=\"proton-ActionMenu__card\"\r\n data-testid=\"ActionMenu-content\"\r\n style={{ height: `${contentHeight}px` }}\r\n >\r\n <div ref={menuRef}>\r\n <div {...menuProps} ref={contentRef}>\r\n {currentActionStack.title && (\r\n <div className=\"proton-ActionMenu__title\">\r\n {stackHistory.length > 0 && (\r\n <div style={{ position: \"absolute\", left: 0 }}>\r\n <button onClick={handleBack}>\r\n <Icon id=\"chevron-left\" size={16} />\r\n </button>\r\n </div>\r\n )}\r\n {currentActionStack.title}\r\n </div>\r\n )}\r\n {hasContent ? (\r\n <>\r\n {children && (\r\n <div className=\"proton-ActionMenu__content\">\r\n {typeof children === \"function\"\r\n ? children({ close: handleOverlayClose })\r\n : children}\r\n </div>\r\n )}\r\n\r\n {hasActions && (\r\n <div\r\n className={csx(\r\n \"proton-ActionMenu__list\",\r\n selectionMode === \"none\" &&\r\n \"proton-ActionMenu__list--disabled\"\r\n )}\r\n >\r\n {Array.from(state.collection).map((item, i) => {\r\n const itemProps = currentActionStack.actions[i];\r\n\r\n return (\r\n <ActionMenuItem\r\n key={item.key}\r\n item={item}\r\n state={state}\r\n isSubmenu={!!itemProps.children?.length}\r\n />\r\n );\r\n })}\r\n </div>\r\n )}\r\n\r\n {showCancel && (\r\n <div\r\n className=\"proton-ActionMenu__cancel-button\"\r\n tabIndex={-1}\r\n >\r\n <Button\r\n data-testid=\"ActionMenuItem-cancel\"\r\n onPress={onClose}\r\n fullWidth\r\n variant=\"secondary\"\r\n >\r\n {cancelButtonText}\r\n </Button>\r\n </div>\r\n )}\r\n </>\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ScreenOverlay>\r\n );\r\n};\r\n\r\ninterface ActionMenuItemProps {\r\n to?: string;\r\n state: TreeState<ActionMenuAction>;\r\n item: Node<ActionMenuAction>;\r\n isSubmenu?: boolean;\r\n}\r\n\r\nconst ActionMenuItem = ({ state, item, isSubmenu }: ActionMenuItemProps) => {\r\n const ref = useRef(null);\r\n const { props } = item;\r\n const { menuItemProps } = useMenuItem({ key: item.key }, state, ref);\r\n const Component = props.to ? \"a\" : \"div\";\r\n const isExternal = props.to && isUrlExternal(props.to);\r\n\r\n const anchorProps = props.to\r\n ? {\r\n href: props.to,\r\n target: isExternal ? \"_blank\" : undefined,\r\n rel: isExternal ? \"noopener noreferrer\" : undefined,\r\n onClick: (e: React.MouseEvent<HTMLAnchorElement | HTMLDivElement>) => {\r\n if (isExternal || !props.to) {\r\n return;\r\n }\r\n\r\n handleInternalNavigation(\r\n e as React.MouseEvent<HTMLAnchorElement>,\r\n props.to\r\n );\r\n },\r\n }\r\n : {};\r\n\r\n return (\r\n <Component\r\n {...menuItemProps}\r\n {...anchorProps}\r\n key={item.key}\r\n className=\"proton-ActionMenu__item\"\r\n aria-label={`ActionMenu-Item-${item.key}`}\r\n ref={ref}\r\n >\r\n <div className=\"proton-ActionMenu__item-content\">\r\n <div className=\"proton-ActionMenu__item-label\">{item.rendered}</div>\r\n {props.description && (\r\n <div className=\"proton-ActionMenu__description\">\r\n {props.description}\r\n </div>\r\n )}\r\n </div>\r\n {isSubmenu && <Icon id=\"chevron-right\" size={16} />}\r\n </Component>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { ReactNode } from \"react\";\r\nimport { csx } from \"../../utils\";\r\n\r\nimport \"./Badge.css\";\r\n\r\nexport type BadgeVariant =\r\n | \"primary\"\r\n | \"secondary\"\r\n | \"transparent\"\r\n | \"success\"\r\n | \"warning\"\r\n | \"danger\";\r\n\r\nexport const BadgeVariants: Record<BadgeVariant, BadgeVariant> = {\r\n primary: \"primary\",\r\n secondary: \"secondary\",\r\n transparent: \"transparent\",\r\n success: \"success\",\r\n warning: \"warning\",\r\n danger: \"danger\",\r\n};\r\n\r\nexport interface BadgeProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * The content to display within the badge.\r\n */\r\n children: ReactNode;\r\n /**\r\n * The badge's visual aesthetic.\r\n * - type {@link BadgeVariant}\r\n */\r\n variant?: BadgeVariant;\r\n}\r\n\r\n/**\r\n * A badge component for displaying status, categories, or counts with various visual styles.\r\n *\r\n * API:\r\n * - {@link BadgeProps}\r\n * - extends {@link React.HTMLAttributes}\r\n */\r\nexport const Badge = ({ variant, children, ...props }: BadgeProps) => {\r\n return (\r\n <div\r\n role=\"status\"\r\n aria-live=\"polite\"\r\n data-testid={props[\"data-testid\"]}\r\n className={csx(\"proton-Badge\", variant && `proton-Badge--${variant}`)}\r\n >\r\n {children}\r\n </div>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { ReactNode, createContext, isValidElement, useContext } from \"react\";\r\nimport { csx } from \"../../utils\";\r\nimport { Button, type ButtonProps } from \"../Button/Button\";\r\n\r\nimport \"./Banner.css\";\r\n\r\n//TODO: move svgs to lib and use Icon component\r\nexport const BANNER_ICONS = {\r\n success: (\r\n <svg viewBox=\"0 0 20 20\" height=\"18\" width=\"18\">\r\n <path\r\n fillRule=\"evenodd\"\r\n d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z\"\r\n ></path>\r\n </svg>\r\n ),\r\n warning: (\r\n <svg viewBox=\"0 0 56 56\" height=\"17\" width=\"17\">\r\n <path d=\"M9.59 50.207h36.82c3.516 0 5.719-2.531 5.719-5.719a5.56 5.56 0 0 0-.75-2.812l-18.445-33c-1.055-1.899-2.977-2.883-4.922-2.883c-1.922 0-3.89.984-4.946 2.883L4.645 41.699c-.516.89-.774 1.828-.774 2.79c0 3.187 2.227 5.718 5.719 5.718m18.422-16.055c-1.242 0-1.922-.703-1.969-1.968l-.328-11.578c-.047-1.266.937-2.204 2.273-2.204c1.313 0 2.344.961 2.297 2.227l-.351 11.555c-.047 1.289-.727 1.968-1.922 1.968m0 8.649c-1.36 0-2.625-1.078-2.625-2.532s1.242-2.53 2.625-2.53s2.625 1.054 2.625 2.53c0 1.477-1.266 2.532-2.625 2.532\" />\r\n </svg>\r\n ),\r\n danger: (\r\n <svg viewBox=\"0 0 20 20\" height=\"18\" width=\"18\">\r\n <path\r\n fillRule=\"evenodd\"\r\n d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.28 7.22a.75.75 0 00-1.06 1.06L8.94 10l-1.72 1.72a.75.75 0 101.06 1.06L10 11.06l1.72 1.72a.75.75 0 101.06-1.06L11.06 10l1.72-1.72a.75.75 0 00-1.06-1.06L10 8.94 8.28 7.22z\"\r\n ></path>\r\n </svg>\r\n ),\r\n};\r\n\r\nexport const BANNER_VARIANTS = {\r\n default: \"default\",\r\n success: \"success\",\r\n warning: \"warning\",\r\n danger: \"danger\",\r\n} as const;\r\nexport type BannerVariant = \"default\" | \"success\" | \"warning\" | \"danger\";\r\n\r\nconst BannerContext = createContext<BannerVariant | undefined>(undefined);\r\n\r\ninterface BannerIconProps {\r\n /**\r\n * Optional custom icon or children for the icon area.\r\n */\r\n children?: ReactNode;\r\n /**\r\n * The icon to display in the banner.\r\n * Can be a boolean to conditionally show or hide, or a ReactNode to provide a custom icon.\r\n */\r\n icon?: boolean | ReactNode;\r\n /**\r\n * The data-testid to display within the banner.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\ninterface BannerProps extends BannerIconProps {\r\n /**\r\n * Compact padding around the content of the banner.\r\n * @default true\r\n */\r\n compact?: boolean;\r\n /**\r\n * The content to display within the banner.\r\n */\r\n children: ReactNode;\r\n /**\r\n * The data-testid to display within the banner.\r\n */\r\n \"data-testid\"?: string;\r\n /**\r\n * Round the corners of the banner.\r\n * @default true\r\n */\r\n rounded?: boolean;\r\n /**\r\n * The banner's visual aesthetic.\r\n * - type {@link BannerVariant}\r\n */\r\n variant?: BannerVariant;\r\n}\r\n\r\n/**\r\n * A banner used to display a success, warning, or error message.\r\n *\r\n * API:\r\n * - {@link BannerProps}\r\n * - extends {@link BannerIconProps}\r\n */\r\nconst Banner = ({\r\n variant = \"default\",\r\n rounded = true,\r\n icon = false,\r\n compact = true,\r\n children,\r\n \"data-testid\": dataTestId,\r\n}: BannerProps) => {\r\n return (\r\n <BannerContext.Provider value={variant}>\r\n <div\r\n role=\"status\"\r\n aria-live=\"polite\"\r\n className={csx(\r\n \"proton-Banner\",\r\n `proton-Banner--${variant}`,\r\n rounded && \"proton-Banner--rounded\"\r\n )}\r\n data-testid={dataTestId}\r\n >\r\n <div\r\n className={csx(\r\n \"proton-Banner__wrapper\",\r\n compact && \"proton-Banner__wrapper--compact\"\r\n )}\r\n >\r\n <Banner.Icon icon={icon} />\r\n <div className=\"proton-Banner__content-wrapper\">\r\n <div className=\"proton-Banner__container\">{children}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </BannerContext.Provider>\r\n );\r\n};\r\n\r\nBanner.displayName = \"Banner\";\r\n\r\nconst BannerTitle = ({\r\n children,\r\n \"data-testid\": dataTestId,\r\n}: {\r\n children: ReactNode;\r\n \"data-testid\"?: string;\r\n}) => {\r\n const variant = useContext(BannerContext);\r\n if (!variant) throw new Error(\"BannerTitle must be used within a Banner\");\r\n\r\n return (\r\n <h3\r\n className={csx(\r\n \"proton-Banner__title\",\r\n `proton-Banner--${variant}__title`\r\n )}\r\n data-testid={dataTestId}\r\n >\r\n {children}\r\n </h3>\r\n );\r\n};\r\n\r\nBannerTitle.displayName = \"Banner.Title\";\r\n\r\nconst BannerContent = ({\r\n children,\r\n \"data-testid\": dataTestId,\r\n}: {\r\n children: ReactNode;\r\n \"data-testid\"?: string;\r\n}) => {\r\n const variant = useContext(BannerContext);\r\n if (!variant) throw new Error(\"BannerContent must be used within a Banner\");\r\n\r\n return (\r\n <p\r\n className={csx(\r\n \"proton-Banner__content\",\r\n `proton-Banner--${variant}__content`\r\n )}\r\n data-testid={dataTestId}\r\n >\r\n {children}\r\n </p>\r\n );\r\n};\r\n\r\nBannerContent.displayName = \"Banner.Content\";\r\n\r\nfunction getIconContent(icon: ReactNode, variant: BannerVariant) {\r\n if (isValidElement(icon)) return icon;\r\n if (icon) return BANNER_ICONS[variant];\r\n return null;\r\n}\r\n\r\nconst BannerIcon = ({ icon, \"data-testid\": dataTestId }: BannerIconProps) => {\r\n const variant = useContext(BannerContext);\r\n if (!variant) throw new Error(\"BannerIcon must be used within a Banner\");\r\n\r\n const iconContent = getIconContent(icon, variant);\r\n if (!iconContent) return null;\r\n\r\n return (\r\n <div\r\n aria-hidden=\"true\"\r\n data-testid={dataTestId}\r\n className={csx(\"proton-Banner__icon\", `proton-Banner--${variant}__icon`)}\r\n >\r\n {iconContent}\r\n </div>\r\n );\r\n};\r\n\r\nBannerIcon.displayName = \"Banner.Icon\";\r\n\r\nconst BannerAction = ({ children, ...buttonProps }: ButtonProps) => {\r\n return <Button {...buttonProps}>{children}</Button>;\r\n};\r\n\r\nBannerAction.displayName = \"Banner.Action\";\r\n\r\nconst BannerActions = ({ children }: { children: ReactNode }) => {\r\n return <div className=\"proton-Banner__actions\">{children}</div>;\r\n};\r\n\r\nBannerActions.displayName = \"Banner.Actions\";\r\n\r\n/**\r\n * Renders an h3 styled banner.\r\n */\r\nBanner.Title = BannerTitle;\r\n\r\n/**\r\n * Renders a p styled banner.\r\n */\r\nBanner.Content = BannerContent;\r\n\r\n/**\r\n * Renders an icon inline with the banner title.\r\n *\r\n * API:\r\n * - {@link BannerIconProps}\r\n */\r\nBanner.Icon = BannerIcon;\r\n\r\n/**\r\n * Renders a Proton Button.\r\n * - @prop buttonProps {@link ButtonProps}\r\n */\r\nBanner.Action = BannerAction;\r\n\r\n/**\r\n * Renders Proton Buttons in a responsive actions grid.\r\n */\r\nBanner.Actions = BannerActions;\r\n\r\nexport { Banner };\r\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $884aeceb3d67f00f$export$37b65e5b5444d35c = new WeakMap();\n\n\nexport {$884aeceb3d67f00f$export$37b65e5b5444d35c as radioGroupData};\n//# sourceMappingURL=utils.module.js.map\n","import {setInteractionModality as $9Gacy$setInteractionModality} from \"@react-aria/interactions\";\nimport {useEffect as $9Gacy$useEffect} from \"react\";\nimport {useLayoutEffect as $9Gacy$useLayoutEffect, useEffectEvent as $9Gacy$useEffectEvent} from \"@react-aria/utils\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $e93e671b31057976$export$b8473d3665f3a75a(props, state, ref) {\n let { validationBehavior: validationBehavior, focus: focus } = props;\n // This is a useLayoutEffect so that it runs before the useEffect in useFormValidationState, which commits the validation change.\n (0, $9Gacy$useLayoutEffect)(()=>{\n if (validationBehavior === 'native' && (ref === null || ref === void 0 ? void 0 : ref.current) && !ref.current.disabled) {\n let errorMessage = state.realtimeValidation.isInvalid ? state.realtimeValidation.validationErrors.join(' ') || 'Invalid value.' : '';\n ref.current.setCustomValidity(errorMessage);\n // Prevent default tooltip for validation message.\n // https://bugzilla.mozilla.org/show_bug.cgi?id=605277\n if (!ref.current.hasAttribute('title')) ref.current.title = '';\n if (!state.realtimeValidation.isInvalid) state.updateValidation($e93e671b31057976$var$getNativeValidity(ref.current));\n }\n });\n let onReset = (0, $9Gacy$useEffectEvent)(()=>{\n state.resetValidation();\n });\n let onInvalid = (0, $9Gacy$useEffectEvent)((e)=>{\n var _ref_current;\n // Only commit validation if we are not already displaying one.\n // This avoids clearing server errors that the user didn't actually fix.\n if (!state.displayValidation.isInvalid) state.commitValidation();\n // Auto focus the first invalid input in a form, unless the error already had its default prevented.\n let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;\n if (!e.defaultPrevented && ref && form && $e93e671b31057976$var$getFirstInvalidInput(form) === ref.current) {\n var _ref_current1;\n if (focus) focus();\n else (_ref_current1 = ref.current) === null || _ref_current1 === void 0 ? void 0 : _ref_current1.focus();\n // Always show focus ring.\n (0, $9Gacy$setInteractionModality)('keyboard');\n }\n // Prevent default browser error UI from appearing.\n e.preventDefault();\n });\n let onChange = (0, $9Gacy$useEffectEvent)(()=>{\n state.commitValidation();\n });\n (0, $9Gacy$useEffect)(()=>{\n let input = ref === null || ref === void 0 ? void 0 : ref.current;\n if (!input) return;\n let form = input.form;\n input.addEventListener('invalid', onInvalid);\n input.addEventListener('change', onChange);\n form === null || form === void 0 ? void 0 : form.addEventListener('reset', onReset);\n return ()=>{\n input.removeEventListener('invalid', onInvalid);\n input.removeEventListener('change', onChange);\n form === null || form === void 0 ? void 0 : form.removeEventListener('reset', onReset);\n };\n }, [\n ref,\n onInvalid,\n onChange,\n onReset,\n validationBehavior\n ]);\n}\nfunction $e93e671b31057976$var$getValidity(input) {\n // The native ValidityState object is live, meaning each property is a getter that returns the current state.\n // We need to create a snapshot of the validity state at the time this function is called to avoid unpredictable React renders.\n let validity = input.validity;\n return {\n badInput: validity.badInput,\n customError: validity.customError,\n patternMismatch: validity.patternMismatch,\n rangeOverflow: validity.rangeOverflow,\n rangeUnderflow: validity.rangeUnderflow,\n stepMismatch: validity.stepMismatch,\n tooLong: validity.tooLong,\n tooShort: validity.tooShort,\n typeMismatch: validity.typeMismatch,\n valueMissing: validity.valueMissing,\n valid: validity.valid\n };\n}\nfunction $e93e671b31057976$var$getNativeValidity(input) {\n return {\n isInvalid: !input.validity.valid,\n validationDetails: $e93e671b31057976$var$getValidity(input),\n validationErrors: input.validationMessage ? [\n input.validationMessage\n ] : []\n };\n}\nfunction $e93e671b31057976$var$getFirstInvalidInput(form) {\n for(let i = 0; i < form.elements.length; i++){\n let element = form.elements[i];\n if (!element.validity.valid) return element;\n }\n return null;\n}\n\n\nexport {$e93e671b31057976$export$b8473d3665f3a75a as useFormValidation};\n//# sourceMappingURL=useFormValidation.module.js.map\n","import {radioGroupData as $884aeceb3d67f00f$export$37b65e5b5444d35c} from \"./utils.mjs\";\nimport {mergeProps as $5jJ3f$mergeProps, filterDOMProps as $5jJ3f$filterDOMProps, useFormReset as $5jJ3f$useFormReset} from \"@react-aria/utils\";\nimport {usePress as $5jJ3f$usePress, useFocusable as $5jJ3f$useFocusable} from \"@react-aria/interactions\";\nimport {useFormValidation as $5jJ3f$useFormValidation} from \"@react-aria/form\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $0d5c49892c1215da$export$37b0961d2f4751e2(props, state, ref) {\n let { value: value, children: children, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby } = props;\n const isDisabled = props.isDisabled || state.isDisabled;\n let hasChildren = children != null;\n let hasAriaLabel = ariaLabel != null || ariaLabelledby != null;\n if (!hasChildren && !hasAriaLabel && process.env.NODE_ENV !== 'production') console.warn('If you do not provide children, you must specify an aria-label for accessibility');\n let checked = state.selectedValue === value;\n let onChange = (e)=>{\n e.stopPropagation();\n state.setSelectedValue(value);\n };\n // Handle press state for keyboard interactions and cases where labelProps is not used.\n let { pressProps: pressProps, isPressed: isPressed } = (0, $5jJ3f$usePress)({\n isDisabled: isDisabled\n });\n // Handle press state on the label.\n let { pressProps: labelProps, isPressed: isLabelPressed } = (0, $5jJ3f$usePress)({\n isDisabled: isDisabled,\n onPress () {\n var _ref_current;\n state.setSelectedValue(value);\n (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.focus();\n }\n });\n let { focusableProps: focusableProps } = (0, $5jJ3f$useFocusable)((0, $5jJ3f$mergeProps)(props, {\n onFocus: ()=>state.setLastFocusedValue(value)\n }), ref);\n let interactions = (0, $5jJ3f$mergeProps)(pressProps, focusableProps);\n let domProps = (0, $5jJ3f$filterDOMProps)(props, {\n labelable: true\n });\n let tabIndex = -1;\n if (state.selectedValue != null) {\n if (state.selectedValue === value) tabIndex = 0;\n } else if (state.lastFocusedValue === value || state.lastFocusedValue == null) tabIndex = 0;\n if (isDisabled) tabIndex = undefined;\n let { name: name, descriptionId: descriptionId, errorMessageId: errorMessageId, validationBehavior: validationBehavior } = (0, $884aeceb3d67f00f$export$37b65e5b5444d35c).get(state);\n (0, $5jJ3f$useFormReset)(ref, state.selectedValue, state.setSelectedValue);\n (0, $5jJ3f$useFormValidation)({\n validationBehavior: validationBehavior\n }, state, ref);\n return {\n labelProps: (0, $5jJ3f$mergeProps)(labelProps, {\n onClick: (e)=>e.preventDefault()\n }),\n inputProps: (0, $5jJ3f$mergeProps)(domProps, {\n ...interactions,\n type: 'radio',\n name: name,\n tabIndex: tabIndex,\n disabled: isDisabled,\n required: state.isRequired && validationBehavior === 'native',\n checked: checked,\n value: value,\n onChange: onChange,\n 'aria-describedby': [\n props['aria-describedby'],\n state.isInvalid ? errorMessageId : null,\n descriptionId\n ].filter(Boolean).join(' ') || undefined\n }),\n isDisabled: isDisabled,\n isSelected: checked,\n isPressed: isPressed || isLabelPressed\n };\n}\n\n\nexport {$0d5c49892c1215da$export$37b0961d2f4751e2 as useRadio};\n//# sourceMappingURL=useRadio.module.js.map\n","import {useId as $83Elw$useId, useLabels as $83Elw$useLabels} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $d191a55c9702f145$export$8467354a121f1b9f(props) {\n let { id: id, label: label, 'aria-labelledby': ariaLabelledby, 'aria-label': ariaLabel, labelElementType: labelElementType = 'label' } = props;\n id = (0, $83Elw$useId)(id);\n let labelId = (0, $83Elw$useId)();\n let labelProps = {};\n if (label) {\n ariaLabelledby = ariaLabelledby ? `${labelId} ${ariaLabelledby}` : labelId;\n labelProps = {\n id: labelId,\n htmlFor: labelElementType === 'label' ? id : undefined\n };\n } else if (!ariaLabelledby && !ariaLabel && process.env.NODE_ENV !== 'production') console.warn('If you do not provide a visible label, you must specify an aria-label or aria-labelledby attribute for accessibility');\n let fieldProps = (0, $83Elw$useLabels)({\n id: id,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps\n };\n}\n\n\nexport {$d191a55c9702f145$export$8467354a121f1b9f as useLabel};\n//# sourceMappingURL=useLabel.module.js.map\n","import {useLabel as $d191a55c9702f145$export$8467354a121f1b9f} from \"./useLabel.mjs\";\nimport {useSlotId as $2kC82$useSlotId, mergeProps as $2kC82$mergeProps} from \"@react-aria/utils\";\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $2baaea4c71418dea$export$294aa081a6c6f55d(props) {\n let { description: description, errorMessage: errorMessage, isInvalid: isInvalid, validationState: validationState } = props;\n let { labelProps: labelProps, fieldProps: fieldProps } = (0, $d191a55c9702f145$export$8467354a121f1b9f)(props);\n let descriptionId = (0, $2kC82$useSlotId)([\n Boolean(description),\n Boolean(errorMessage),\n isInvalid,\n validationState\n ]);\n let errorMessageId = (0, $2kC82$useSlotId)([\n Boolean(description),\n Boolean(errorMessage),\n isInvalid,\n validationState\n ]);\n fieldProps = (0, $2kC82$mergeProps)(fieldProps, {\n 'aria-describedby': [\n descriptionId,\n // Use aria-describedby for error message because aria-errormessage is unsupported using VoiceOver or NVDA. See https://github.com/adobe/react-spectrum/issues/1346#issuecomment-740136268\n errorMessageId,\n props['aria-describedby']\n ].filter(Boolean).join(' ') || undefined\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps,\n descriptionProps: {\n id: descriptionId\n },\n errorMessageProps: {\n id: errorMessageId\n }\n };\n}\n\n\nexport {$2baaea4c71418dea$export$294aa081a6c6f55d as useField};\n//# sourceMappingURL=useField.module.js.map\n","import {radioGroupData as $884aeceb3d67f00f$export$37b65e5b5444d35c} from \"./utils.mjs\";\nimport {filterDOMProps as $czmJy$filterDOMProps, useId as $czmJy$useId, mergeProps as $czmJy$mergeProps} from \"@react-aria/utils\";\nimport {getFocusableTreeWalker as $czmJy$getFocusableTreeWalker} from \"@react-aria/focus\";\nimport {useField as $czmJy$useField} from \"@react-aria/label\";\nimport {useFocusWithin as $czmJy$useFocusWithin} from \"@react-aria/interactions\";\nimport {useLocale as $czmJy$useLocale} from \"@react-aria/i18n\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nfunction $430f30ed08ec25fa$export$62b9571f283ff5c2(props, state) {\n let { name: name, isReadOnly: isReadOnly, isRequired: isRequired, isDisabled: isDisabled, orientation: orientation = 'vertical', validationBehavior: validationBehavior = 'aria' } = props;\n let { direction: direction } = (0, $czmJy$useLocale)();\n let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = state.displayValidation;\n let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = (0, $czmJy$useField)({\n ...props,\n // Radio group is not an HTML input element so it\n // shouldn't be labeled by a <label> element.\n labelElementType: 'span',\n isInvalid: state.isInvalid,\n errorMessage: props.errorMessage || validationErrors\n });\n let domProps = (0, $czmJy$filterDOMProps)(props, {\n labelable: true\n });\n // When the radio group loses focus, reset the focusable radio to null if\n // there is no selection. This allows tabbing into the group from either\n // direction to go to the first or last radio.\n let { focusWithinProps: focusWithinProps } = (0, $czmJy$useFocusWithin)({\n onBlurWithin (e) {\n var _props_onBlur;\n (_props_onBlur = props.onBlur) === null || _props_onBlur === void 0 ? void 0 : _props_onBlur.call(props, e);\n if (!state.selectedValue) state.setLastFocusedValue(null);\n },\n onFocusWithin: props.onFocus,\n onFocusWithinChange: props.onFocusChange\n });\n let onKeyDown = (e)=>{\n let nextDir;\n switch(e.key){\n case 'ArrowRight':\n if (direction === 'rtl' && orientation !== 'vertical') nextDir = 'prev';\n else nextDir = 'next';\n break;\n case 'ArrowLeft':\n if (direction === 'rtl' && orientation !== 'vertical') nextDir = 'next';\n else nextDir = 'prev';\n break;\n case 'ArrowDown':\n nextDir = 'next';\n break;\n case 'ArrowUp':\n nextDir = 'prev';\n break;\n default:\n return;\n }\n e.preventDefault();\n let walker = (0, $czmJy$getFocusableTreeWalker)(e.currentTarget, {\n from: e.target\n });\n let nextElem;\n if (nextDir === 'next') {\n nextElem = walker.nextNode();\n if (!nextElem) {\n walker.currentNode = e.currentTarget;\n nextElem = walker.firstChild();\n }\n } else {\n nextElem = walker.previousNode();\n if (!nextElem) {\n walker.currentNode = e.currentTarget;\n nextElem = walker.lastChild();\n }\n }\n if (nextElem) {\n // Call focus on nextElem so that keyboard navigation scrolls the radio into view\n nextElem.focus();\n state.setSelectedValue(nextElem.value);\n }\n };\n let groupName = (0, $czmJy$useId)(name);\n (0, $884aeceb3d67f00f$export$37b65e5b5444d35c).set(state, {\n name: groupName,\n descriptionId: descriptionProps.id,\n errorMessageId: errorMessageProps.id,\n validationBehavior: validationBehavior\n });\n return {\n radioGroupProps: (0, $czmJy$mergeProps)(domProps, {\n // https://www.w3.org/TR/wai-aria-1.2/#radiogroup\n role: 'radiogroup',\n onKeyDown: onKeyDown,\n 'aria-invalid': state.isInvalid || undefined,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-readonly': isReadOnly || undefined,\n 'aria-required': isRequired || undefined,\n 'aria-disabled': isDisabled || undefined,\n 'aria-orientation': orientation,\n ...fieldProps,\n ...focusWithinProps\n }),\n labelProps: labelProps,\n descriptionProps: descriptionProps,\n errorMessageProps: errorMessageProps,\n isInvalid: isInvalid,\n validationErrors: validationErrors,\n validationDetails: validationDetails\n };\n}\n\n\nexport {$430f30ed08ec25fa$export$62b9571f283ff5c2 as useRadioGroup};\n//# sourceMappingURL=useRadioGroup.module.js.map\n","import {createContext as $69F46$createContext, useMemo as $69F46$useMemo, useContext as $69F46$useContext, useState as $69F46$useState, useRef as $69F46$useRef, useEffect as $69F46$useEffect} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $e5be200c675c3b3a$export$aca958c65c314e6c = {\n badInput: false,\n customError: false,\n patternMismatch: false,\n rangeOverflow: false,\n rangeUnderflow: false,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n valueMissing: false,\n valid: true\n};\nconst $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE = {\n ...$e5be200c675c3b3a$export$aca958c65c314e6c,\n customError: true,\n valid: false\n};\nconst $e5be200c675c3b3a$export$dad6ae84456c676a = {\n isInvalid: false,\n validationDetails: $e5be200c675c3b3a$export$aca958c65c314e6c,\n validationErrors: []\n};\nconst $e5be200c675c3b3a$export$571b5131b7e65c11 = (0, $69F46$createContext)({});\nconst $e5be200c675c3b3a$export$a763b9476acd3eb = '__formValidationState' + Date.now();\nfunction $e5be200c675c3b3a$export$fc1a364ae1f3ff10(props) {\n // Private prop for parent components to pass state to children.\n if (props[$e5be200c675c3b3a$export$a763b9476acd3eb]) {\n let { realtimeValidation: realtimeValidation, displayValidation: displayValidation, updateValidation: updateValidation, resetValidation: resetValidation, commitValidation: commitValidation } = props[$e5be200c675c3b3a$export$a763b9476acd3eb];\n return {\n realtimeValidation: realtimeValidation,\n displayValidation: displayValidation,\n updateValidation: updateValidation,\n resetValidation: resetValidation,\n commitValidation: commitValidation\n };\n }\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return $e5be200c675c3b3a$var$useFormValidationStateImpl(props);\n}\nfunction $e5be200c675c3b3a$var$useFormValidationStateImpl(props) {\n let { isInvalid: isInvalid, validationState: validationState, name: name, value: value, builtinValidation: builtinValidation, validate: validate, validationBehavior: validationBehavior = 'aria' } = props;\n // backward compatibility.\n if (validationState) isInvalid || (isInvalid = validationState === 'invalid');\n // If the isInvalid prop is controlled, update validation result in realtime.\n let controlledError = isInvalid !== undefined ? {\n isInvalid: isInvalid,\n validationErrors: [],\n validationDetails: $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE\n } : null;\n // Perform custom client side validation.\n let clientError = (0, $69F46$useMemo)(()=>{\n if (!validate || value == null) return null;\n let validateErrors = $e5be200c675c3b3a$var$runValidate(validate, value);\n return $e5be200c675c3b3a$var$getValidationResult(validateErrors);\n }, [\n validate,\n value\n ]);\n if (builtinValidation === null || builtinValidation === void 0 ? void 0 : builtinValidation.validationDetails.valid) builtinValidation = undefined;\n // Get relevant server errors from the form.\n let serverErrors = (0, $69F46$useContext)($e5be200c675c3b3a$export$571b5131b7e65c11);\n let serverErrorMessages = (0, $69F46$useMemo)(()=>{\n if (name) return Array.isArray(name) ? name.flatMap((name)=>$e5be200c675c3b3a$var$asArray(serverErrors[name])) : $e5be200c675c3b3a$var$asArray(serverErrors[name]);\n return [];\n }, [\n serverErrors,\n name\n ]);\n // Show server errors when the form gets a new value, and clear when the user changes the value.\n let [lastServerErrors, setLastServerErrors] = (0, $69F46$useState)(serverErrors);\n let [isServerErrorCleared, setServerErrorCleared] = (0, $69F46$useState)(false);\n if (serverErrors !== lastServerErrors) {\n setLastServerErrors(serverErrors);\n setServerErrorCleared(false);\n }\n let serverError = (0, $69F46$useMemo)(()=>$e5be200c675c3b3a$var$getValidationResult(isServerErrorCleared ? [] : serverErrorMessages), [\n isServerErrorCleared,\n serverErrorMessages\n ]);\n // Track the next validation state in a ref until commitValidation is called.\n let nextValidation = (0, $69F46$useRef)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let [currentValidity, setCurrentValidity] = (0, $69F46$useState)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let lastError = (0, $69F46$useRef)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let commitValidation = ()=>{\n if (!commitQueued) return;\n setCommitQueued(false);\n let error = clientError || builtinValidation || nextValidation.current;\n if (!$e5be200c675c3b3a$var$isEqualValidation(error, lastError.current)) {\n lastError.current = error;\n setCurrentValidity(error);\n }\n };\n let [commitQueued, setCommitQueued] = (0, $69F46$useState)(false);\n (0, $69F46$useEffect)(commitValidation);\n // realtimeValidation is used to update the native input element's state based on custom validation logic.\n // displayValidation is the currently displayed validation state that the user sees (e.g. on input change/form submit).\n // With validationBehavior=\"aria\", all errors are displayed in realtime rather than on submit.\n let realtimeValidation = controlledError || serverError || clientError || builtinValidation || $e5be200c675c3b3a$export$dad6ae84456c676a;\n let displayValidation = validationBehavior === 'native' ? controlledError || serverError || currentValidity : controlledError || serverError || clientError || builtinValidation || currentValidity;\n return {\n realtimeValidation: realtimeValidation,\n displayValidation: displayValidation,\n updateValidation (value) {\n // If validationBehavior is 'aria', update in realtime. Otherwise, store in a ref until commit.\n if (validationBehavior === 'aria' && !$e5be200c675c3b3a$var$isEqualValidation(currentValidity, value)) setCurrentValidity(value);\n else nextValidation.current = value;\n },\n resetValidation () {\n // Update the currently displayed validation state to valid on form reset,\n // even if the native validity says it isn't. It'll show again on the next form submit.\n let error = $e5be200c675c3b3a$export$dad6ae84456c676a;\n if (!$e5be200c675c3b3a$var$isEqualValidation(error, lastError.current)) {\n lastError.current = error;\n setCurrentValidity(error);\n }\n // Do not commit validation after the next render. This avoids a condition where\n // useSelect calls commitValidation inside an onReset handler.\n if (validationBehavior === 'native') setCommitQueued(false);\n setServerErrorCleared(true);\n },\n commitValidation () {\n // Commit validation state so the user sees it on blur/change/submit. Also clear any server errors.\n // Wait until after the next render to commit so that the latest value has been validated.\n if (validationBehavior === 'native') setCommitQueued(true);\n setServerErrorCleared(true);\n }\n };\n}\nfunction $e5be200c675c3b3a$var$asArray(v) {\n if (!v) return [];\n return Array.isArray(v) ? v : [\n v\n ];\n}\nfunction $e5be200c675c3b3a$var$runValidate(validate, value) {\n if (typeof validate === 'function') {\n let e = validate(value);\n if (e && typeof e !== 'boolean') return $e5be200c675c3b3a$var$asArray(e);\n }\n return [];\n}\nfunction $e5be200c675c3b3a$var$getValidationResult(errors) {\n return errors.length ? {\n isInvalid: true,\n validationErrors: errors,\n validationDetails: $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE\n } : null;\n}\nfunction $e5be200c675c3b3a$var$isEqualValidation(a, b) {\n if (a === b) return true;\n return !!a && !!b && a.isInvalid === b.isInvalid && a.validationErrors.length === b.validationErrors.length && a.validationErrors.every((a, i)=>a === b.validationErrors[i]) && Object.entries(a.validationDetails).every(([k, v])=>b.validationDetails[k] === v);\n}\nfunction $e5be200c675c3b3a$export$75ee7c75d68f5b0e(...results) {\n let errors = new Set();\n let isInvalid = false;\n let validationDetails = {\n ...$e5be200c675c3b3a$export$aca958c65c314e6c\n };\n for (let v of results){\n var _validationDetails, _key;\n for (let e of v.validationErrors)errors.add(e);\n // Only these properties apply for checkboxes.\n isInvalid || (isInvalid = v.isInvalid);\n for(let key in validationDetails)(_validationDetails = validationDetails)[_key = key] || (_validationDetails[_key] = v.validationDetails[key]);\n }\n validationDetails.valid = !isInvalid;\n return {\n isInvalid: isInvalid,\n validationErrors: [\n ...errors\n ],\n validationDetails: validationDetails\n };\n}\n\n\nexport {$e5be200c675c3b3a$export$aca958c65c314e6c as VALID_VALIDITY_STATE, $e5be200c675c3b3a$export$dad6ae84456c676a as DEFAULT_VALIDATION_RESULT, $e5be200c675c3b3a$export$571b5131b7e65c11 as FormValidationContext, $e5be200c675c3b3a$export$a763b9476acd3eb as privateValidationStateProp, $e5be200c675c3b3a$export$fc1a364ae1f3ff10 as useFormValidationState, $e5be200c675c3b3a$export$75ee7c75d68f5b0e as mergeValidation};\n//# sourceMappingURL=useFormValidationState.module.js.map\n","import {useFormValidationState as $l55kx$useFormValidationState} from \"@react-stately/form\";\nimport {useControlledState as $l55kx$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $l55kx$useMemo, useState as $l55kx$useState} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nlet $a54cdc5c1942b639$var$instance = Math.round(Math.random() * 10000000000);\nlet $a54cdc5c1942b639$var$i = 0;\nfunction $a54cdc5c1942b639$export$bca9d026f8e704eb(props) {\n // Preserved here for backward compatibility. React Aria now generates the name instead of stately.\n let name = (0, $l55kx$useMemo)(()=>props.name || `radio-group-${$a54cdc5c1942b639$var$instance}-${++$a54cdc5c1942b639$var$i}`, [\n props.name\n ]);\n var _props_defaultValue;\n let [selectedValue, setSelected] = (0, $l55kx$useControlledState)(props.value, (_props_defaultValue = props.defaultValue) !== null && _props_defaultValue !== void 0 ? _props_defaultValue : null, props.onChange);\n let [lastFocusedValue, setLastFocusedValue] = (0, $l55kx$useState)(null);\n let validation = (0, $l55kx$useFormValidationState)({\n ...props,\n value: selectedValue\n });\n let setSelectedValue = (value)=>{\n if (!props.isReadOnly && !props.isDisabled) {\n setSelected(value);\n validation.commitValidation();\n }\n };\n let isInvalid = validation.displayValidation.isInvalid;\n return {\n ...validation,\n name: name,\n selectedValue: selectedValue,\n setSelectedValue: setSelectedValue,\n lastFocusedValue: lastFocusedValue,\n setLastFocusedValue: setLastFocusedValue,\n isDisabled: props.isDisabled || false,\n isReadOnly: props.isReadOnly || false,\n isRequired: props.isRequired || false,\n validationState: props.validationState || (isInvalid ? 'invalid' : null),\n isInvalid: isInvalid\n };\n}\n\n\nexport {$a54cdc5c1942b639$export$bca9d026f8e704eb as useRadioGroupState};\n//# sourceMappingURL=useRadioGroupState.module.js.map\n","\"use client\";\r\n\r\nimport { createContext, useContext, useRef } from \"react\";\r\nimport { useRadio, useRadioGroup } from \"@react-aria/radio\";\r\nimport { VisuallyHidden } from \"@react-aria/visually-hidden\";\r\nimport { useRadioGroupState } from \"@react-stately/radio\";\r\nimport { csx } from \"../../utils\";\r\n\r\nimport \"./ButtonGroup.css\";\r\n\r\nexport interface ButtonGroupProps {\r\n /**\r\n * The value of the currently selected option in the ButtonGroup. Providing\r\n * this prop causes the component to become controlled.\r\n */\r\n value?: string;\r\n\r\n /**\r\n * The initially selected value of the ButtonGroup.\r\n */\r\n defaultValue?: string;\r\n\r\n /**\r\n * Called when the ButtonGroup's selected value changes.\r\n */\r\n onChange?: (value: string) => void;\r\n\r\n /**\r\n * The ButtonGroup.Option elements to be rendered as the selectable values.\r\n */\r\n children?: React.ReactNode;\r\n}\r\n\r\nlet ButtonGroupContext = createContext(null);\r\n\r\n/**\r\n * A radio button group component that allows selection of a single option from multiple choices.\r\n *\r\n * API:\r\n * - {@link ButtonGroupProps}\r\n */\r\nexport function ButtonGroup(props: ButtonGroupProps) {\r\n let sanitizedProps = {\r\n ...props,\r\n \"data-testid\": undefined,\r\n };\r\n\r\n let state = useRadioGroupState(sanitizedProps);\r\n let { radioGroupProps } = useRadioGroup(sanitizedProps, state);\r\n\r\n return (\r\n <div\r\n {...radioGroupProps}\r\n className=\"proton-ButtonGroup\"\r\n data-value={state.selectedValue}\r\n data-testid={props[\"data-testid\"] || undefined}\r\n >\r\n <ButtonGroupContext.Provider value={state}>\r\n {props.children}\r\n </ButtonGroupContext.Provider>\r\n </div>\r\n );\r\n}\r\n\r\nButtonGroup.displayName = \"ProtonUIButtonGroup\";\r\n\r\nexport interface ButtonGroupOptionProps {\r\n /**\r\n * The value of this option. When this option is selected, this value will\r\n * become the ButtonGroup's new `selectedValue`.\r\n */\r\n value: string;\r\n\r\n /**\r\n * The text or component to be rendered as this option's content.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\nButtonGroup.Option = function ButtonGroupOption(props: ButtonGroupOptionProps) {\r\n let sanitizedProps = {\r\n ...props,\r\n \"data-testid\": undefined,\r\n };\r\n\r\n let state = useContext(ButtonGroupContext);\r\n let ref = useRef(null);\r\n let { inputProps, isSelected } = useRadio(sanitizedProps, state, ref);\r\n\r\n return (\r\n <label\r\n className={csx(\r\n \"proton-ButtonGroup__option\",\r\n isSelected && \"proton-ButtonGroup__option--selected\"\r\n )}\r\n data-selected={isSelected || undefined}\r\n data-testid={props[\"data-testid\"] || undefined}\r\n >\r\n <VisuallyHidden>\r\n <input {...inputProps} ref={ref} />\r\n </VisuallyHidden>\r\n {props.children}\r\n </label>\r\n );\r\n};\r\n","import {useObjectRef as $iETbY$useObjectRef, mergeRefs as $iETbY$mergeRefs, mergeProps as $iETbY$mergeProps, useLayoutEffect as $iETbY$useLayoutEffect} from \"@react-aria/utils\";\nimport $iETbY$react, {useMemo as $iETbY$useMemo, useContext as $iETbY$useContext, useState as $iETbY$useState, useRef as $iETbY$useRef, useCallback as $iETbY$useCallback} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nconst $64fa3d84918910a7$export$c62b8e45d58ddad9 = Symbol('default');\nfunction $64fa3d84918910a7$export$2881499e37b75b9a({ values: values, children: children }) {\n for (let [Context, value] of values)// @ts-ignore\n children = /*#__PURE__*/ (0, $iETbY$react).createElement(Context.Provider, {\n value: value\n }, children);\n return children;\n}\nfunction $64fa3d84918910a7$export$4d86445c2cf5e3(props) {\n let { className: className, style: style, children: children, defaultClassName: defaultClassName, defaultChildren: defaultChildren, defaultStyle: defaultStyle, values: values } = props;\n return (0, $iETbY$useMemo)(()=>{\n let computedClassName;\n let computedStyle;\n let computedChildren;\n if (typeof className === 'function') computedClassName = className({\n ...values,\n defaultClassName: defaultClassName\n });\n else computedClassName = className;\n if (typeof style === 'function') computedStyle = style({\n ...values,\n defaultStyle: defaultStyle || {}\n });\n else computedStyle = style;\n if (typeof children === 'function') computedChildren = children({\n ...values,\n defaultChildren: defaultChildren\n });\n else if (children == null) computedChildren = defaultChildren;\n else computedChildren = children;\n return {\n className: computedClassName !== null && computedClassName !== void 0 ? computedClassName : defaultClassName,\n style: computedStyle || defaultStyle ? {\n ...defaultStyle,\n ...computedStyle\n } : undefined,\n children: computedChildren !== null && computedChildren !== void 0 ? computedChildren : defaultChildren,\n 'data-rac': ''\n };\n }, [\n className,\n style,\n children,\n defaultClassName,\n defaultChildren,\n defaultStyle,\n values\n ]);\n}\nfunction $64fa3d84918910a7$export$c245e6201fed2f75(// https://stackoverflow.com/questions/60898079/typescript-type-t-or-function-t-usage\nvalue, wrap) {\n return (renderProps)=>wrap(typeof value === 'function' ? value(renderProps) : value, renderProps);\n}\nfunction $64fa3d84918910a7$export$fabf2dc03a41866e(context, slot) {\n let ctx = (0, $iETbY$useContext)(context);\n if (slot === null) // An explicit `null` slot means don't use context.\n return null;\n if (ctx && typeof ctx === 'object' && 'slots' in ctx && ctx.slots) {\n let slotKey = slot || $64fa3d84918910a7$export$c62b8e45d58ddad9;\n if (!ctx.slots[slotKey]) {\n let availableSlots = new Intl.ListFormat().format(Object.keys(ctx.slots).map((p)=>`\"${p}\"`));\n let errorMessage = slot ? `Invalid slot \"${slot}\".` : 'A slot prop is required.';\n throw new Error(`${errorMessage} Valid slot names are ${availableSlots}.`);\n }\n return ctx.slots[slotKey];\n }\n // @ts-ignore\n return ctx;\n}\nfunction $64fa3d84918910a7$export$29f1550f4b0d4415(props, ref, context) {\n let ctx = $64fa3d84918910a7$export$fabf2dc03a41866e(context, props.slot) || {};\n // @ts-ignore - TS says \"Type 'unique symbol' cannot be used as an index type.\" but not sure why.\n let { ref: contextRef, ...contextProps } = ctx;\n let mergedRef = (0, $iETbY$useObjectRef)((0, $iETbY$useMemo)(()=>(0, $iETbY$mergeRefs)(ref, contextRef), [\n ref,\n contextRef\n ]));\n let mergedProps = (0, $iETbY$mergeProps)(contextProps, props);\n // mergeProps does not merge `style`. Adding this there might be a breaking change.\n if ('style' in contextProps && contextProps.style && 'style' in props && props.style) {\n if (typeof contextProps.style === 'function' || typeof props.style === 'function') // @ts-ignore\n mergedProps.style = (renderProps)=>{\n let contextStyle = typeof contextProps.style === 'function' ? contextProps.style(renderProps) : contextProps.style;\n let defaultStyle = {\n ...renderProps.defaultStyle,\n ...contextStyle\n };\n let style = typeof props.style === 'function' ? props.style({\n ...renderProps,\n defaultStyle: defaultStyle\n }) : props.style;\n return {\n ...defaultStyle,\n ...style\n };\n };\n else // @ts-ignore\n mergedProps.style = {\n ...contextProps.style,\n ...props.style\n };\n }\n return [\n mergedProps,\n mergedRef\n ];\n}\nfunction $64fa3d84918910a7$export$9d4c57ee4c6ffdd8(initialState = true) {\n // Initial state is typically based on the parent having an aria-label or aria-labelledby.\n // If it does, this value should be false so that we don't update the state and cause a rerender when we go through the layoutEffect\n let [hasSlot, setHasSlot] = (0, $iETbY$useState)(initialState);\n let hasRun = (0, $iETbY$useRef)(false);\n // A callback ref which will run when the slotted element mounts.\n // This should happen before the useLayoutEffect below.\n let ref = (0, $iETbY$useCallback)((el)=>{\n hasRun.current = true;\n setHasSlot(!!el);\n }, []);\n // If the callback hasn't been called, then reset to false.\n (0, $iETbY$useLayoutEffect)(()=>{\n if (!hasRun.current) setHasSlot(false);\n }, []);\n return [\n ref,\n hasSlot\n ];\n}\nfunction $64fa3d84918910a7$export$ef03459518577ad4(props) {\n const prefix = /^(data-.*)$/;\n let filteredProps = {};\n for(const prop in props)if (!prefix.test(prop)) filteredProps[prop] = props[prop];\n return filteredProps;\n}\n\n\nexport {$64fa3d84918910a7$export$c62b8e45d58ddad9 as DEFAULT_SLOT, $64fa3d84918910a7$export$2881499e37b75b9a as Provider, $64fa3d84918910a7$export$4d86445c2cf5e3 as useRenderProps, $64fa3d84918910a7$export$c245e6201fed2f75 as composeRenderProps, $64fa3d84918910a7$export$fabf2dc03a41866e as useSlottedContext, $64fa3d84918910a7$export$29f1550f4b0d4415 as useContextProps, $64fa3d84918910a7$export$9d4c57ee4c6ffdd8 as useSlot, $64fa3d84918910a7$export$ef03459518577ad4 as removeDataAttributes};\n//# sourceMappingURL=utils.module.js.map\n","/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $23b9f4fcf0fe224b$export$d68d59712b04d9d1 {\n get childNodes() {\n throw new Error('childNodes is not supported');\n }\n clone() {\n let node = new $23b9f4fcf0fe224b$export$d68d59712b04d9d1(this.type, this.key);\n node.value = this.value;\n node.level = this.level;\n node.hasChildNodes = this.hasChildNodes;\n node.rendered = this.rendered;\n node.textValue = this.textValue;\n node['aria-label'] = this['aria-label'];\n node.index = this.index;\n node.parentKey = this.parentKey;\n node.prevKey = this.prevKey;\n node.nextKey = this.nextKey;\n node.firstChildKey = this.firstChildKey;\n node.lastChildKey = this.lastChildKey;\n node.props = this.props;\n node.render = this.render;\n node.colSpan = this.colSpan;\n node.colIndex = this.colIndex;\n return node;\n }\n constructor(type, key){\n this.value = null;\n this.level = 0;\n this.hasChildNodes = false;\n this.rendered = null;\n this.textValue = '';\n this['aria-label'] = undefined;\n this.index = 0;\n this.parentKey = null;\n this.prevKey = null;\n this.nextKey = null;\n this.firstChildKey = null;\n this.lastChildKey = null;\n this.props = {};\n this.colSpan = null;\n this.colIndex = null;\n this.type = type;\n this.key = key;\n }\n}\nclass $23b9f4fcf0fe224b$export$408d25a4e12db025 {\n get size() {\n return this.keyMap.size;\n }\n getKeys() {\n return this.keyMap.keys();\n }\n *[Symbol.iterator]() {\n let node = this.firstKey != null ? this.keyMap.get(this.firstKey) : undefined;\n while(node){\n yield node;\n node = node.nextKey != null ? this.keyMap.get(node.nextKey) : undefined;\n }\n }\n getChildren(key) {\n let keyMap = this.keyMap;\n return {\n *[Symbol.iterator] () {\n let parent = keyMap.get(key);\n let node = (parent === null || parent === void 0 ? void 0 : parent.firstChildKey) != null ? keyMap.get(parent.firstChildKey) : null;\n while(node){\n yield node;\n node = node.nextKey != null ? keyMap.get(node.nextKey) : undefined;\n }\n }\n };\n }\n getKeyBefore(key) {\n let node = this.keyMap.get(key);\n if (!node) return null;\n if (node.prevKey != null) {\n node = this.keyMap.get(node.prevKey);\n while(node && node.type !== 'item' && node.lastChildKey != null)node = this.keyMap.get(node.lastChildKey);\n var _node_key;\n return (_node_key = node === null || node === void 0 ? void 0 : node.key) !== null && _node_key !== void 0 ? _node_key : null;\n }\n return node.parentKey;\n }\n getKeyAfter(key) {\n let node = this.keyMap.get(key);\n if (!node) return null;\n if (node.type !== 'item' && node.firstChildKey != null) return node.firstChildKey;\n while(node){\n if (node.nextKey != null) return node.nextKey;\n if (node.parentKey != null) node = this.keyMap.get(node.parentKey);\n else return null;\n }\n return null;\n }\n getFirstKey() {\n return this.firstKey;\n }\n getLastKey() {\n let node = this.lastKey != null ? this.keyMap.get(this.lastKey) : null;\n while((node === null || node === void 0 ? void 0 : node.lastChildKey) != null)node = this.keyMap.get(node.lastChildKey);\n var _node_key;\n return (_node_key = node === null || node === void 0 ? void 0 : node.key) !== null && _node_key !== void 0 ? _node_key : null;\n }\n getItem(key) {\n var _this_keyMap_get;\n return (_this_keyMap_get = this.keyMap.get(key)) !== null && _this_keyMap_get !== void 0 ? _this_keyMap_get : null;\n }\n at() {\n throw new Error('Not implemented');\n }\n clone() {\n // We need to clone using this.constructor so that subclasses have the right prototype.\n // TypeScript isn't happy about this yet.\n // https://github.com/microsoft/TypeScript/issues/3841\n let Constructor = this.constructor;\n let collection = new Constructor();\n collection.keyMap = new Map(this.keyMap);\n collection.firstKey = this.firstKey;\n collection.lastKey = this.lastKey;\n return collection;\n }\n addNode(node) {\n if (this.frozen) throw new Error('Cannot add a node to a frozen collection');\n this.keyMap.set(node.key, node);\n }\n removeNode(key) {\n if (this.frozen) throw new Error('Cannot remove a node to a frozen collection');\n this.keyMap.delete(key);\n }\n commit(firstKey, lastKey, isSSR = false) {\n if (this.frozen) throw new Error('Cannot commit a frozen collection');\n this.firstKey = firstKey;\n this.lastKey = lastKey;\n this.frozen = !isSSR;\n }\n // TODO: this is pretty specific to menu, will need to check if it is generic enough\n // Will need to handle varying levels I assume but will revisit after I get searchable menu working for base menu\n // TODO: an alternative is to simply walk the collection and add all item nodes that match the filter and any sections/separators we encounter\n // to an array, then walk that new array and fix all the next/Prev keys while adding them to the new collection\n UNSTABLE_filter(filterFn) {\n let newCollection = new $23b9f4fcf0fe224b$export$408d25a4e12db025();\n // This tracks the absolute last node we've visited in the collection when filtering, used for setting up the filteredCollection's lastKey and\n // for updating the next/prevKey for every non-filtered node.\n let lastNode = null;\n for (let node of this){\n if (node.type === 'section' && node.hasChildNodes) {\n let clonedSection = node.clone();\n let lastChildInSection = null;\n for (let child of this.getChildren(node.key))if ($23b9f4fcf0fe224b$var$shouldKeepNode(child, filterFn, this, newCollection)) {\n let clonedChild = child.clone();\n // eslint-disable-next-line max-depth\n if (lastChildInSection == null) clonedSection.firstChildKey = clonedChild.key;\n // eslint-disable-next-line max-depth\n if (newCollection.firstKey == null) newCollection.firstKey = clonedSection.key;\n // eslint-disable-next-line max-depth\n if (lastChildInSection && lastChildInSection.parentKey === clonedChild.parentKey) {\n lastChildInSection.nextKey = clonedChild.key;\n clonedChild.prevKey = lastChildInSection.key;\n } else clonedChild.prevKey = null;\n clonedChild.nextKey = null;\n newCollection.addNode(clonedChild);\n lastChildInSection = clonedChild;\n }\n // Add newly filtered section to collection if it has any valid child nodes, otherwise remove it and its header if any\n if (lastChildInSection) {\n if (lastChildInSection.type !== 'header') {\n clonedSection.lastChildKey = lastChildInSection.key;\n // If the old prev section was filtered out, will need to attach to whatever came before\n // eslint-disable-next-line max-depth\n if (lastNode == null) clonedSection.prevKey = null;\n else if (lastNode.type === 'section' || lastNode.type === 'separator') {\n lastNode.nextKey = clonedSection.key;\n clonedSection.prevKey = lastNode.key;\n }\n clonedSection.nextKey = null;\n lastNode = clonedSection;\n newCollection.addNode(clonedSection);\n } else {\n if (newCollection.firstKey === clonedSection.key) newCollection.firstKey = null;\n newCollection.removeNode(lastChildInSection.key);\n }\n }\n } else if (node.type === 'separator') {\n // will need to check if previous section key exists, if it does then we add the separator to the collection.\n // After the full collection is created we'll need to remove it it is the last node in the section (aka no following section after the separator)\n let clonedSeparator = node.clone();\n clonedSeparator.nextKey = null;\n if ((lastNode === null || lastNode === void 0 ? void 0 : lastNode.type) === 'section') {\n lastNode.nextKey = clonedSeparator.key;\n clonedSeparator.prevKey = lastNode.key;\n lastNode = clonedSeparator;\n newCollection.addNode(clonedSeparator);\n }\n } else {\n // At this point, the node is either a subdialogtrigger node or a standard row/item\n let clonedNode = node.clone();\n if ($23b9f4fcf0fe224b$var$shouldKeepNode(clonedNode, filterFn, this, newCollection)) {\n if (newCollection.firstKey == null) newCollection.firstKey = clonedNode.key;\n if (lastNode != null && lastNode.type !== 'section' && lastNode.type !== 'separator' && lastNode.parentKey === clonedNode.parentKey) {\n lastNode.nextKey = clonedNode.key;\n clonedNode.prevKey = lastNode.key;\n } else clonedNode.prevKey = null;\n clonedNode.nextKey = null;\n newCollection.addNode(clonedNode);\n lastNode = clonedNode;\n }\n }\n }\n if ((lastNode === null || lastNode === void 0 ? void 0 : lastNode.type) === 'separator' && lastNode.nextKey === null) {\n let lastSection;\n if (lastNode.prevKey != null) {\n lastSection = newCollection.getItem(lastNode.prevKey);\n lastSection.nextKey = null;\n }\n newCollection.removeNode(lastNode.key);\n lastNode = lastSection;\n }\n newCollection.lastKey = (lastNode === null || lastNode === void 0 ? void 0 : lastNode.key) || null;\n return newCollection;\n }\n constructor(){\n this.keyMap = new Map();\n this.firstKey = null;\n this.lastKey = null;\n this.frozen = false;\n }\n}\nfunction $23b9f4fcf0fe224b$var$shouldKeepNode(node, filterFn, oldCollection, newCollection) {\n if (node.type === 'subdialogtrigger' || node.type === 'submenutrigger') {\n // Subdialog wrapper should only have one child, if it passes the filter add it to the new collection since we don't need to\n // do any extra handling for its first/next key\n let triggerChild = [\n ...oldCollection.getChildren(node.key)\n ][0];\n if (triggerChild && filterFn(triggerChild.textValue)) {\n let clonedChild = triggerChild.clone();\n newCollection.addNode(clonedChild);\n return true;\n } else return false;\n } else if (node.type === 'header') return true;\n else return filterFn(node.textValue);\n}\n\n\nexport {$23b9f4fcf0fe224b$export$d68d59712b04d9d1 as CollectionNode, $23b9f4fcf0fe224b$export$408d25a4e12db025 as BaseCollection};\n//# sourceMappingURL=BaseCollection.module.js.map\n","import {CollectionNode as $23b9f4fcf0fe224b$export$d68d59712b04d9d1} from \"./BaseCollection.mjs\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nclass $681cc3c98f569e39$export$410b0c854570d131 {\n *[Symbol.iterator]() {\n let node = this.firstChild;\n while(node){\n yield node;\n node = node.nextSibling;\n }\n }\n get firstChild() {\n return this._firstChild;\n }\n set firstChild(firstChild) {\n this._firstChild = firstChild;\n this.ownerDocument.markDirty(this);\n }\n get lastChild() {\n return this._lastChild;\n }\n set lastChild(lastChild) {\n this._lastChild = lastChild;\n this.ownerDocument.markDirty(this);\n }\n get previousSibling() {\n return this._previousSibling;\n }\n set previousSibling(previousSibling) {\n this._previousSibling = previousSibling;\n this.ownerDocument.markDirty(this);\n }\n get nextSibling() {\n return this._nextSibling;\n }\n set nextSibling(nextSibling) {\n this._nextSibling = nextSibling;\n this.ownerDocument.markDirty(this);\n }\n get parentNode() {\n return this._parentNode;\n }\n set parentNode(parentNode) {\n this._parentNode = parentNode;\n this.ownerDocument.markDirty(this);\n }\n get isConnected() {\n var _this_parentNode;\n return ((_this_parentNode = this.parentNode) === null || _this_parentNode === void 0 ? void 0 : _this_parentNode.isConnected) || false;\n }\n invalidateChildIndices(child) {\n if (this._minInvalidChildIndex == null || child.index < this._minInvalidChildIndex.index) this._minInvalidChildIndex = child;\n }\n updateChildIndices() {\n let node = this._minInvalidChildIndex;\n while(node){\n node.index = node.previousSibling ? node.previousSibling.index + 1 : 0;\n node = node.nextSibling;\n }\n this._minInvalidChildIndex = null;\n }\n appendChild(child) {\n if (child.parentNode) child.parentNode.removeChild(child);\n if (this.firstChild == null) this.firstChild = child;\n if (this.lastChild) {\n this.lastChild.nextSibling = child;\n child.index = this.lastChild.index + 1;\n child.previousSibling = this.lastChild;\n } else {\n child.previousSibling = null;\n child.index = 0;\n }\n child.parentNode = this;\n child.nextSibling = null;\n this.lastChild = child;\n this.ownerDocument.markDirty(this);\n this.ownerDocument.queueUpdate();\n }\n insertBefore(newNode, referenceNode) {\n if (referenceNode == null) return this.appendChild(newNode);\n if (newNode.parentNode) newNode.parentNode.removeChild(newNode);\n newNode.nextSibling = referenceNode;\n newNode.previousSibling = referenceNode.previousSibling;\n newNode.index = referenceNode.index;\n if (this.firstChild === referenceNode) this.firstChild = newNode;\n else if (referenceNode.previousSibling) referenceNode.previousSibling.nextSibling = newNode;\n referenceNode.previousSibling = newNode;\n newNode.parentNode = referenceNode.parentNode;\n this.invalidateChildIndices(referenceNode);\n this.ownerDocument.queueUpdate();\n }\n removeChild(child) {\n if (child.parentNode !== this || !this.ownerDocument.isMounted) return;\n if (child.nextSibling) {\n this.invalidateChildIndices(child.nextSibling);\n child.nextSibling.previousSibling = child.previousSibling;\n }\n if (child.previousSibling) child.previousSibling.nextSibling = child.nextSibling;\n if (this.firstChild === child) this.firstChild = child.nextSibling;\n if (this.lastChild === child) this.lastChild = child.previousSibling;\n child.parentNode = null;\n child.nextSibling = null;\n child.previousSibling = null;\n child.index = 0;\n this.ownerDocument.markDirty(child);\n this.ownerDocument.queueUpdate();\n }\n addEventListener() {}\n removeEventListener() {}\n get previousVisibleSibling() {\n let node = this.previousSibling;\n while(node && node.isHidden)node = node.previousSibling;\n return node;\n }\n get nextVisibleSibling() {\n let node = this.nextSibling;\n while(node && node.isHidden)node = node.nextSibling;\n return node;\n }\n get firstVisibleChild() {\n let node = this.firstChild;\n while(node && node.isHidden)node = node.nextSibling;\n return node;\n }\n get lastVisibleChild() {\n let node = this.lastChild;\n while(node && node.isHidden)node = node.previousSibling;\n return node;\n }\n constructor(ownerDocument){\n this._firstChild = null;\n this._lastChild = null;\n this._previousSibling = null;\n this._nextSibling = null;\n this._parentNode = null;\n this._minInvalidChildIndex = null;\n this.ownerDocument = ownerDocument;\n }\n}\nclass $681cc3c98f569e39$export$dc064fe9e59310fd extends $681cc3c98f569e39$export$410b0c854570d131 {\n get index() {\n return this._index;\n }\n set index(index) {\n this._index = index;\n this.ownerDocument.markDirty(this);\n }\n get level() {\n if (this.parentNode instanceof $681cc3c98f569e39$export$dc064fe9e59310fd) return this.parentNode.level + (this.node.type === 'item' ? 1 : 0);\n return 0;\n }\n /**\n * Lazily gets a mutable instance of a Node. If the node has already\n * been cloned during this update cycle, it just returns the existing one.\n */ getMutableNode() {\n if (!this.isMutated) {\n this.node = this.node.clone();\n this.isMutated = true;\n }\n this.ownerDocument.markDirty(this);\n return this.node;\n }\n updateNode() {\n var _this_previousVisibleSibling, _this_firstVisibleChild, _this_lastVisibleChild;\n let nextSibling = this.nextVisibleSibling;\n let node = this.getMutableNode();\n node.index = this.index;\n node.level = this.level;\n node.parentKey = this.parentNode instanceof $681cc3c98f569e39$export$dc064fe9e59310fd ? this.parentNode.node.key : null;\n var _this_previousVisibleSibling_node_key;\n node.prevKey = (_this_previousVisibleSibling_node_key = (_this_previousVisibleSibling = this.previousVisibleSibling) === null || _this_previousVisibleSibling === void 0 ? void 0 : _this_previousVisibleSibling.node.key) !== null && _this_previousVisibleSibling_node_key !== void 0 ? _this_previousVisibleSibling_node_key : null;\n var _nextSibling_node_key;\n node.nextKey = (_nextSibling_node_key = nextSibling === null || nextSibling === void 0 ? void 0 : nextSibling.node.key) !== null && _nextSibling_node_key !== void 0 ? _nextSibling_node_key : null;\n node.hasChildNodes = !!this.firstChild;\n var _this_firstVisibleChild_node_key;\n node.firstChildKey = (_this_firstVisibleChild_node_key = (_this_firstVisibleChild = this.firstVisibleChild) === null || _this_firstVisibleChild === void 0 ? void 0 : _this_firstVisibleChild.node.key) !== null && _this_firstVisibleChild_node_key !== void 0 ? _this_firstVisibleChild_node_key : null;\n var _this_lastVisibleChild_node_key;\n node.lastChildKey = (_this_lastVisibleChild_node_key = (_this_lastVisibleChild = this.lastVisibleChild) === null || _this_lastVisibleChild === void 0 ? void 0 : _this_lastVisibleChild.node.key) !== null && _this_lastVisibleChild_node_key !== void 0 ? _this_lastVisibleChild_node_key : null;\n // Update the colIndex of sibling nodes if this node has a colSpan.\n if ((node.colSpan != null || node.colIndex != null) && nextSibling) {\n var _node_colIndex, _node_colSpan;\n // This queues the next sibling for update, which means this happens recursively.\n let nextColIndex = ((_node_colIndex = node.colIndex) !== null && _node_colIndex !== void 0 ? _node_colIndex : node.index) + ((_node_colSpan = node.colSpan) !== null && _node_colSpan !== void 0 ? _node_colSpan : 1);\n if (nextColIndex !== nextSibling.node.colIndex) {\n let siblingNode = nextSibling.getMutableNode();\n siblingNode.colIndex = nextColIndex;\n }\n }\n }\n setProps(obj, ref, rendered, render) {\n let node = this.getMutableNode();\n let { value: value1, textValue: textValue, id: id, ...props } = obj;\n props.ref = ref;\n node.props = props;\n node.rendered = rendered;\n node.render = render;\n node.value = value1;\n node.textValue = textValue || (typeof props.children === 'string' ? props.children : '') || obj['aria-label'] || '';\n if (id != null && id !== node.key) {\n if (this.hasSetProps) throw new Error('Cannot change the id of an item');\n node.key = id;\n }\n if (props.colSpan != null) node.colSpan = props.colSpan;\n this.hasSetProps = true;\n this.ownerDocument.queueUpdate();\n }\n get style() {\n // React sets display: none to hide elements during Suspense.\n // We'll handle this by setting the element to hidden and invalidating\n // its siblings/parent. Hidden elements remain in the Document, but\n // are removed from the Collection.\n let element = this;\n return {\n get display () {\n return element.isHidden ? 'none' : '';\n },\n set display (value){\n let isHidden = value === 'none';\n if (element.isHidden !== isHidden) {\n var _element_parentNode, _element_parentNode1;\n // Mark parent node dirty if this element is currently the first or last visible child.\n if (((_element_parentNode = element.parentNode) === null || _element_parentNode === void 0 ? void 0 : _element_parentNode.firstVisibleChild) === element || ((_element_parentNode1 = element.parentNode) === null || _element_parentNode1 === void 0 ? void 0 : _element_parentNode1.lastVisibleChild) === element) element.ownerDocument.markDirty(element.parentNode);\n // Mark sibling visible elements dirty.\n let prev = element.previousVisibleSibling;\n let next = element.nextVisibleSibling;\n if (prev) element.ownerDocument.markDirty(prev);\n if (next) element.ownerDocument.markDirty(next);\n // Mark self dirty.\n element.isHidden = isHidden;\n element.ownerDocument.markDirty(element);\n }\n }\n };\n }\n hasAttribute() {}\n setAttribute() {}\n setAttributeNS() {}\n removeAttribute() {}\n constructor(type, ownerDocument){\n super(ownerDocument), this.nodeType = 8 // COMMENT_NODE (we'd use ELEMENT_NODE but React DevTools will fail to get its dimensions)\n , this.isMutated = true, this._index = 0, this.hasSetProps = false, this.isHidden = false;\n this.node = new (0, $23b9f4fcf0fe224b$export$d68d59712b04d9d1)(type, `react-aria-${++ownerDocument.nodeId}`);\n }\n}\nclass $681cc3c98f569e39$export$b34a105447964f9f extends $681cc3c98f569e39$export$410b0c854570d131 {\n get isConnected() {\n return this.isMounted;\n }\n createElement(type) {\n return new $681cc3c98f569e39$export$dc064fe9e59310fd(type, this);\n }\n getMutableCollection() {\n if (!this.nextCollection) this.nextCollection = this.collection.clone();\n return this.nextCollection;\n }\n markDirty(node) {\n this.dirtyNodes.add(node);\n }\n addNode(element) {\n if (element.isHidden) return;\n let collection = this.getMutableCollection();\n if (!collection.getItem(element.node.key)) for (let child of element)this.addNode(child);\n collection.addNode(element.node);\n }\n removeNode(node) {\n for (let child of node)this.removeNode(child);\n let collection = this.getMutableCollection();\n collection.removeNode(node.node.key);\n }\n /** Finalizes the collection update, updating all nodes and freezing the collection. */ getCollection() {\n // If in a subscription update, return a clone of the existing collection.\n // This ensures React will queue a render. React will call getCollection again\n // during render, at which point all the updates will be complete and we can return\n // the new collection.\n if (this.inSubscription) return this.collection.clone();\n // Reset queuedRender to false when getCollection is called during render.\n this.queuedRender = false;\n this.updateCollection();\n return this.collection;\n }\n updateCollection() {\n // First, remove disconnected nodes and update the indices of dirty element children.\n for (let element of this.dirtyNodes)if (element instanceof $681cc3c98f569e39$export$dc064fe9e59310fd && (!element.isConnected || element.isHidden)) this.removeNode(element);\n else element.updateChildIndices();\n // Next, update dirty collection nodes.\n for (let element of this.dirtyNodes)if (element instanceof $681cc3c98f569e39$export$dc064fe9e59310fd) {\n if (element.isConnected && !element.isHidden) {\n element.updateNode();\n this.addNode(element);\n }\n element.isMutated = false;\n }\n this.dirtyNodes.clear();\n // Finally, update the collection.\n if (this.nextCollection) {\n var _this_firstVisibleChild, _this_lastVisibleChild;\n var _this_firstVisibleChild_node_key, _this_lastVisibleChild_node_key;\n this.nextCollection.commit((_this_firstVisibleChild_node_key = (_this_firstVisibleChild = this.firstVisibleChild) === null || _this_firstVisibleChild === void 0 ? void 0 : _this_firstVisibleChild.node.key) !== null && _this_firstVisibleChild_node_key !== void 0 ? _this_firstVisibleChild_node_key : null, (_this_lastVisibleChild_node_key = (_this_lastVisibleChild = this.lastVisibleChild) === null || _this_lastVisibleChild === void 0 ? void 0 : _this_lastVisibleChild.node.key) !== null && _this_lastVisibleChild_node_key !== void 0 ? _this_lastVisibleChild_node_key : null, this.isSSR);\n if (!this.isSSR) {\n this.collection = this.nextCollection;\n this.nextCollection = null;\n }\n }\n }\n queueUpdate() {\n if (this.dirtyNodes.size === 0 || this.queuedRender) return;\n // Only trigger subscriptions once during an update, when the first item changes.\n // React's useSyncExternalStore will call getCollection immediately, to check whether the snapshot changed.\n // If so, React will queue a render to happen after the current commit to our fake DOM finishes.\n // We track whether getCollection is called in a subscription, and once it is called during render,\n // we reset queuedRender back to false.\n this.queuedRender = true;\n this.inSubscription = true;\n for (let fn of this.subscriptions)fn();\n this.inSubscription = false;\n }\n subscribe(fn) {\n this.subscriptions.add(fn);\n return ()=>this.subscriptions.delete(fn);\n }\n resetAfterSSR() {\n if (this.isSSR) {\n this.isSSR = false;\n this.firstChild = null;\n this.lastChild = null;\n this.nodeId = 0;\n }\n }\n constructor(collection){\n // @ts-ignore\n super(null), this.nodeType = 11 // DOCUMENT_FRAGMENT_NODE\n , this.ownerDocument = this, this.dirtyNodes = new Set(), this.isSSR = false, this.nodeId = 0, this.nodesByProps = new WeakMap(), this.isMounted = true, this.nextCollection = null, this.subscriptions = new Set(), this.queuedRender = false, this.inSubscription = false;\n this.collection = collection;\n this.nextCollection = collection;\n }\n}\n\n\nexport {$681cc3c98f569e39$export$410b0c854570d131 as BaseNode, $681cc3c98f569e39$export$dc064fe9e59310fd as ElementNode, $681cc3c98f569e39$export$b34a105447964f9f as Document};\n//# sourceMappingURL=Document.module.js.map\n","import {useMemo as $luMFQ$useMemo, cloneElement as $luMFQ$cloneElement} from \"react\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $e948873055cbafe4$export$727c8fc270210f13(props) {\n let { children: children, items: items, idScope: idScope, addIdAndValue: addIdAndValue, dependencies: dependencies = [] } = props;\n // Invalidate the cache whenever the parent value changes.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n let cache = (0, $luMFQ$useMemo)(()=>new WeakMap(), dependencies);\n return (0, $luMFQ$useMemo)(()=>{\n if (items && typeof children === 'function') {\n let res = [];\n for (let item of items){\n let rendered = cache.get(item);\n if (!rendered) {\n rendered = children(item);\n var _rendered_props_id, _ref;\n // @ts-ignore\n let key = (_ref = (_rendered_props_id = rendered.props.id) !== null && _rendered_props_id !== void 0 ? _rendered_props_id : item.key) !== null && _ref !== void 0 ? _ref : item.id;\n if (key == null) throw new Error('Could not determine key for item');\n if (idScope) key = idScope + ':' + key;\n // Note: only works if wrapped Item passes through id...\n rendered = (0, $luMFQ$cloneElement)(rendered, addIdAndValue ? {\n key: key,\n id: key,\n value: item\n } : {\n key: key\n });\n cache.set(item, rendered);\n }\n res.push(rendered);\n }\n return res;\n } else if (typeof children !== 'function') return children;\n }, [\n children,\n items,\n cache,\n idScope,\n addIdAndValue\n ]);\n}\n\n\nexport {$e948873055cbafe4$export$727c8fc270210f13 as useCachedChildren};\n//# sourceMappingURL=useCachedChildren.module.js.map\n","import $8SdCi$react, {createContext as $8SdCi$createContext, useContext as $8SdCi$useContext, forwardRef as $8SdCi$forwardRef} from \"react\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n// React doesn't understand the <template> element, which doesn't have children like a normal element.\n// It will throw an error during hydration when it expects the firstChild to contain content rendered\n// on the server, when in reality, the browser will have placed this inside the `content` document fragment.\n// This monkey patches the firstChild property for our special hidden template elements to work around this error.\n// See https://github.com/facebook/react/issues/19932\nif (typeof HTMLTemplateElement !== 'undefined') {\n const getFirstChild = Object.getOwnPropertyDescriptor(Node.prototype, 'firstChild').get;\n Object.defineProperty(HTMLTemplateElement.prototype, 'firstChild', {\n configurable: true,\n enumerable: true,\n get: function() {\n if (this.dataset.reactAriaHidden) return this.content.firstChild;\n else return getFirstChild.call(this);\n }\n });\n}\nconst $f39a9eba43920ace$export$94b6d0abf7d33e8c = /*#__PURE__*/ (0, $8SdCi$createContext)(false);\nfunction $f39a9eba43920ace$export$8dc98ba7eadeaa56(props) {\n let isHidden = (0, $8SdCi$useContext)($f39a9eba43920ace$export$94b6d0abf7d33e8c);\n if (isHidden) // Don't hide again if we are already hidden.\n return /*#__PURE__*/ (0, $8SdCi$react).createElement((0, $8SdCi$react).Fragment, null, props.children);\n let children = /*#__PURE__*/ (0, $8SdCi$react).createElement($f39a9eba43920ace$export$94b6d0abf7d33e8c.Provider, {\n value: true\n }, props.children);\n // In SSR, portals are not supported by React. Instead, always render into a <template>\n // element, which the browser will never display to the user. In addition, the\n // content is not part of the accessible DOM tree, so it won't affect ids or other accessibility attributes.\n return /*#__PURE__*/ (0, $8SdCi$react).createElement(\"template\", {\n \"data-react-aria-hidden\": true\n }, children);\n}\nfunction $f39a9eba43920ace$export$86427a43e3e48ebb(fn) {\n let Wrapper = (props, ref)=>{\n let isHidden = (0, $8SdCi$useContext)($f39a9eba43920ace$export$94b6d0abf7d33e8c);\n if (isHidden) return null;\n return fn(props, ref);\n };\n // @ts-ignore - for react dev tools\n Wrapper.displayName = fn.displayName || fn.name;\n return (0, $8SdCi$forwardRef)(Wrapper);\n}\nfunction $f39a9eba43920ace$export$b5d7cc18bb8d2b59() {\n return (0, $8SdCi$useContext)($f39a9eba43920ace$export$94b6d0abf7d33e8c);\n}\n\n\nexport {$f39a9eba43920ace$export$94b6d0abf7d33e8c as HiddenContext, $f39a9eba43920ace$export$8dc98ba7eadeaa56 as Hidden, $f39a9eba43920ace$export$86427a43e3e48ebb as createHideableComponent, $f39a9eba43920ace$export$b5d7cc18bb8d2b59 as useIsHidden};\n//# sourceMappingURL=Hidden.module.js.map\n","import {BaseCollection as $23b9f4fcf0fe224b$export$408d25a4e12db025} from \"./BaseCollection.mjs\";\nimport {Document as $681cc3c98f569e39$export$b34a105447964f9f} from \"./Document.mjs\";\nimport {useCachedChildren as $e948873055cbafe4$export$727c8fc270210f13} from \"./useCachedChildren.mjs\";\nimport {Hidden as $f39a9eba43920ace$export$8dc98ba7eadeaa56} from \"./Hidden.mjs\";\nimport {createPortal as $95feo$createPortal} from \"react-dom\";\nimport {FocusableContext as $95feo$FocusableContext} from \"@react-aria/interactions\";\nimport $95feo$react, {createContext as $95feo$createContext, useContext as $95feo$useContext, useRef as $95feo$useRef, useCallback as $95feo$useCallback, useState as $95feo$useState, forwardRef as $95feo$forwardRef, useMemo as $95feo$useMemo} from \"react\";\nimport {useIsSSR as $95feo$useIsSSR} from \"@react-aria/ssr\";\nimport {useLayoutEffect as $95feo$useLayoutEffect} from \"@react-aria/utils\";\nimport {useSyncExternalStore as $95feo$useSyncExternalStore} from \"use-sync-external-store/shim/index.js\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\nconst $e1995378a142960e$var$ShallowRenderContext = /*#__PURE__*/ (0, $95feo$createContext)(false);\nconst $e1995378a142960e$var$CollectionDocumentContext = /*#__PURE__*/ (0, $95feo$createContext)(null);\nfunction $e1995378a142960e$export$bf788dd355e3a401(props) {\n // If a document was provided above us, we're already in a hidden tree. Just render the content.\n let doc = (0, $95feo$useContext)($e1995378a142960e$var$CollectionDocumentContext);\n if (doc) // The React types prior to 18 did not allow returning ReactNode from components\n // even though the actual implementation since React 16 did.\n // We must return ReactElement so that TS does not complain that <CollectionBuilder>\n // is not a valid JSX element with React 16 and 17 types.\n // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/20544\n return props.content;\n // Otherwise, render a hidden copy of the children so that we can build the collection before constructing the state.\n // This should always come before the real DOM content so we have built the collection by the time it renders during SSR.\n // This is fine. CollectionDocumentContext never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n let { collection: collection, document: document } = $e1995378a142960e$var$useCollectionDocument(props.createCollection);\n return /*#__PURE__*/ (0, $95feo$react).createElement((0, $95feo$react).Fragment, null, /*#__PURE__*/ (0, $95feo$react).createElement((0, $f39a9eba43920ace$export$8dc98ba7eadeaa56), null, /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$CollectionDocumentContext.Provider, {\n value: document\n }, props.content)), /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$CollectionInner, {\n render: props.children,\n collection: collection\n }));\n}\nfunction $e1995378a142960e$var$CollectionInner({ collection: collection, render: render }) {\n return render(collection);\n}\n// React 16 and 17 don't support useSyncExternalStore natively, and the shim provided by React does not support getServerSnapshot.\n// This wrapper uses the shim, but additionally calls getServerSnapshot during SSR (according to SSRProvider).\nfunction $e1995378a142960e$var$useSyncExternalStoreFallback(subscribe, getSnapshot, getServerSnapshot) {\n let isSSR = (0, $95feo$useIsSSR)();\n let isSSRRef = (0, $95feo$useRef)(isSSR);\n // This is read immediately inside the wrapper, which also runs during render.\n // We just need a ref to avoid invalidating the callback itself, which\n // would cause React to re-run the callback more than necessary.\n // eslint-disable-next-line rulesdir/pure-render\n isSSRRef.current = isSSR;\n let getSnapshotWrapper = (0, $95feo$useCallback)(()=>{\n return isSSRRef.current ? getServerSnapshot() : getSnapshot();\n }, [\n getSnapshot,\n getServerSnapshot\n ]);\n return (0, $95feo$useSyncExternalStore)(subscribe, getSnapshotWrapper);\n}\nconst $e1995378a142960e$var$useSyncExternalStore = typeof (0, $95feo$react)['useSyncExternalStore'] === 'function' ? (0, $95feo$react)['useSyncExternalStore'] : $e1995378a142960e$var$useSyncExternalStoreFallback;\nfunction $e1995378a142960e$var$useCollectionDocument(createCollection) {\n // The document instance is mutable, and should never change between renders.\n // useSyncExternalStore is used to subscribe to updates, which vends immutable Collection objects.\n let [document] = (0, $95feo$useState)(()=>new (0, $681cc3c98f569e39$export$b34a105447964f9f)((createCollection === null || createCollection === void 0 ? void 0 : createCollection()) || new (0, $23b9f4fcf0fe224b$export$408d25a4e12db025)()));\n let subscribe = (0, $95feo$useCallback)((fn)=>document.subscribe(fn), [\n document\n ]);\n let getSnapshot = (0, $95feo$useCallback)(()=>{\n let collection = document.getCollection();\n if (document.isSSR) // After SSR is complete, reset the document to empty so it is ready for React to render the portal into.\n // We do this _after_ getting the collection above so that the collection still has content in it from SSR\n // during the current render, before React has finished the client render.\n document.resetAfterSSR();\n return collection;\n }, [\n document\n ]);\n let getServerSnapshot = (0, $95feo$useCallback)(()=>{\n document.isSSR = true;\n return document.getCollection();\n }, [\n document\n ]);\n let collection = $e1995378a142960e$var$useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n (0, $95feo$useLayoutEffect)(()=>{\n document.isMounted = true;\n return ()=>{\n // Mark unmounted so we can skip all of the collection updates caused by\n // React calling removeChild on every item in the collection.\n document.isMounted = false;\n };\n }, [\n document\n ]);\n return {\n collection: collection,\n document: document\n };\n}\nconst $e1995378a142960e$var$SSRContext = /*#__PURE__*/ (0, $95feo$createContext)(null);\nfunction $e1995378a142960e$var$useSSRCollectionNode(Type, props, ref, rendered, children, render) {\n // During SSR, portals are not supported, so the collection children will be wrapped in an SSRContext.\n // Since SSR occurs only once, we assume that the elements are rendered in order and never re-render.\n // Therefore we can create elements in our collection document during render so that they are in the\n // collection by the time we need to use the collection to render to the real DOM.\n // After hydration, we switch to client rendering using the portal.\n let itemRef = (0, $95feo$useCallback)((element)=>{\n element === null || element === void 0 ? void 0 : element.setProps(props, ref, rendered, render);\n }, [\n props,\n ref,\n rendered,\n render\n ]);\n let parentNode = (0, $95feo$useContext)($e1995378a142960e$var$SSRContext);\n if (parentNode) {\n // Guard against double rendering in strict mode.\n let element = parentNode.ownerDocument.nodesByProps.get(props);\n if (!element) {\n element = parentNode.ownerDocument.createElement(Type);\n element.setProps(props, ref, rendered, render);\n parentNode.appendChild(element);\n parentNode.ownerDocument.updateCollection();\n parentNode.ownerDocument.nodesByProps.set(props, element);\n }\n return children ? /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$SSRContext.Provider, {\n value: element\n }, children) : null;\n }\n // @ts-ignore\n return /*#__PURE__*/ (0, $95feo$react).createElement(Type, {\n ref: itemRef\n }, children);\n}\nfunction $e1995378a142960e$export$18af5c7a9e9b3664(type, render) {\n let Component = ({ node: node })=>render(node.props, node.props.ref, node);\n let Result = (0, $95feo$forwardRef)((props, ref)=>{\n let focusableProps = (0, $95feo$useContext)((0, $95feo$FocusableContext));\n let isShallow = (0, $95feo$useContext)($e1995378a142960e$var$ShallowRenderContext);\n if (!isShallow) {\n if (render.length >= 3) throw new Error(render.name + ' cannot be rendered outside a collection.');\n return render(props, ref);\n }\n return $e1995378a142960e$var$useSSRCollectionNode(type, props, ref, 'children' in props ? props.children : null, null, (node)=>// Forward FocusableContext to real DOM tree so tooltips work.\n /*#__PURE__*/ (0, $95feo$react).createElement((0, $95feo$FocusableContext).Provider, {\n value: focusableProps\n }, /*#__PURE__*/ (0, $95feo$react).createElement(Component, {\n node: node\n })));\n });\n // @ts-ignore\n Result.displayName = render.name;\n return Result;\n}\nfunction $e1995378a142960e$export$e953bb1cd0f19726(type, render, useChildren = $e1995378a142960e$var$useCollectionChildren) {\n let Component = ({ node: node })=>render(node.props, node.props.ref, node);\n let Result = (0, $95feo$forwardRef)((props, ref)=>{\n let children = useChildren(props);\n var _useSSRCollectionNode;\n return (_useSSRCollectionNode = $e1995378a142960e$var$useSSRCollectionNode(type, props, ref, null, children, (node)=>/*#__PURE__*/ (0, $95feo$react).createElement(Component, {\n node: node\n }))) !== null && _useSSRCollectionNode !== void 0 ? _useSSRCollectionNode : /*#__PURE__*/ (0, $95feo$react).createElement((0, $95feo$react).Fragment, null);\n });\n // @ts-ignore\n Result.displayName = render.name;\n return Result;\n}\nfunction $e1995378a142960e$var$useCollectionChildren(options) {\n return (0, $e948873055cbafe4$export$727c8fc270210f13)({\n ...options,\n addIdAndValue: true\n });\n}\nconst $e1995378a142960e$var$CollectionContext = /*#__PURE__*/ (0, $95feo$createContext)(null);\nfunction $e1995378a142960e$export$fb8073518f34e6ec(props) {\n let ctx = (0, $95feo$useContext)($e1995378a142960e$var$CollectionContext);\n let dependencies = ((ctx === null || ctx === void 0 ? void 0 : ctx.dependencies) || []).concat(props.dependencies);\n let idScope = props.idScope || (ctx === null || ctx === void 0 ? void 0 : ctx.idScope);\n let children = $e1995378a142960e$var$useCollectionChildren({\n ...props,\n idScope: idScope,\n dependencies: dependencies\n });\n let doc = (0, $95feo$useContext)($e1995378a142960e$var$CollectionDocumentContext);\n if (doc) children = /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$CollectionRoot, null, children);\n // Propagate dependencies and idScope to child collections.\n ctx = (0, $95feo$useMemo)(()=>({\n dependencies: dependencies,\n idScope: idScope\n }), [\n idScope,\n ...dependencies\n ]);\n return /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$CollectionContext.Provider, {\n value: ctx\n }, children);\n}\nfunction $e1995378a142960e$var$CollectionRoot({ children: children }) {\n let doc = (0, $95feo$useContext)($e1995378a142960e$var$CollectionDocumentContext);\n let wrappedChildren = (0, $95feo$useMemo)(()=>/*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$CollectionDocumentContext.Provider, {\n value: null\n }, /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$ShallowRenderContext.Provider, {\n value: true\n }, children)), [\n children\n ]);\n // During SSR, we render the content directly, and append nodes to the document during render.\n // The collection children return null so that nothing is actually rendered into the HTML.\n return (0, $95feo$useIsSSR)() ? /*#__PURE__*/ (0, $95feo$react).createElement($e1995378a142960e$var$SSRContext.Provider, {\n value: doc\n }, wrappedChildren) : /*#__PURE__*/ (0, $95feo$createPortal)(wrappedChildren, doc);\n}\n\n\nexport {$e1995378a142960e$export$bf788dd355e3a401 as CollectionBuilder, $e1995378a142960e$export$18af5c7a9e9b3664 as createLeafComponent, $e1995378a142960e$export$e953bb1cd0f19726 as createBranchComponent, $e1995378a142960e$export$fb8073518f34e6ec as Collection};\n//# sourceMappingURL=CollectionBuilder.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3, useSlot as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8} from \"./utils.mjs\";\nimport {LabelContext as $01b77f81d0f07f68$export$75b6ee27786ba447} from \"./Label.mjs\";\nimport {useProgressBar as $hU2kz$useProgressBar} from \"react-aria\";\nimport {clamp as $hU2kz$clamp} from \"@react-stately/utils\";\nimport $hU2kz$react, {createContext as $hU2kz$createContext, forwardRef as $hU2kz$forwardRef} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $0393f8ab869a0f1a$export$e9f3bf65a26ce129 = /*#__PURE__*/ (0, $hU2kz$createContext)(null);\nconst $0393f8ab869a0f1a$export$c17561cb55d4db30 = /*#__PURE__*/ (0, $hU2kz$forwardRef)(function ProgressBar(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $0393f8ab869a0f1a$export$e9f3bf65a26ce129);\n let { value: value = 0, minValue: minValue = 0, maxValue: maxValue = 100, isIndeterminate: isIndeterminate = false } = props;\n value = (0, $hU2kz$clamp)(value, minValue, maxValue);\n let [labelRef, label] = (0, $64fa3d84918910a7$export$9d4c57ee4c6ffdd8)(!props['aria-label'] && !props['aria-labelledby']);\n let { progressBarProps: progressBarProps, labelProps: labelProps } = (0, $hU2kz$useProgressBar)({\n ...props,\n label: label\n });\n // Calculate the width of the progress bar as a percentage\n let percentage = isIndeterminate ? undefined : (value - minValue) / (maxValue - minValue) * 100;\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-ProgressBar',\n values: {\n percentage: percentage,\n valueText: progressBarProps['aria-valuetext'],\n isIndeterminate: isIndeterminate\n }\n });\n return /*#__PURE__*/ (0, $hU2kz$react).createElement(\"div\", {\n ...progressBarProps,\n ...renderProps,\n ref: ref,\n slot: props.slot || undefined\n }, /*#__PURE__*/ (0, $hU2kz$react).createElement((0, $01b77f81d0f07f68$export$75b6ee27786ba447).Provider, {\n value: {\n ...labelProps,\n ref: labelRef,\n elementType: 'span'\n }\n }, renderProps.children));\n});\n\n\nexport {$0393f8ab869a0f1a$export$e9f3bf65a26ce129 as ProgressBarContext, $0393f8ab869a0f1a$export$c17561cb55d4db30 as ProgressBar};\n//# sourceMappingURL=ProgressBar.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /* Inspired by https://github.com/AlmeroSteyn/react-aria-live */ const $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY = 7000;\nlet $319e236875307eab$var$liveAnnouncer = null;\nfunction $319e236875307eab$export$a9b970dcc4ae71a9(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {\n if (!$319e236875307eab$var$liveAnnouncer) {\n $319e236875307eab$var$liveAnnouncer = new $319e236875307eab$var$LiveAnnouncer();\n // wait for the live announcer regions to be added to the dom, then announce\n // otherwise Safari won't announce the message if it's added too quickly\n // found most times less than 100ms were not consistent when announcing with Safari\n // IS_REACT_ACT_ENVIRONMENT is used by React 18. Previous versions checked for the `jest` global.\n // https://github.com/reactwg/react-18/discussions/102\n // if we're in a test environment, announce without waiting\n // @ts-ignore\n if (!(typeof IS_REACT_ACT_ENVIRONMENT === 'boolean' ? IS_REACT_ACT_ENVIRONMENT : typeof jest !== 'undefined')) setTimeout(()=>{\n if ($319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.isAttached()) $319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n }, 100);\n else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n } else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n}\nfunction $319e236875307eab$export$d10ae4f68404609a(assertiveness) {\n if ($319e236875307eab$var$liveAnnouncer) $319e236875307eab$var$liveAnnouncer.clear(assertiveness);\n}\nfunction $319e236875307eab$export$d8686216b8b81b2f() {\n if ($319e236875307eab$var$liveAnnouncer) {\n $319e236875307eab$var$liveAnnouncer.destroy();\n $319e236875307eab$var$liveAnnouncer = null;\n }\n}\n// LiveAnnouncer is implemented using vanilla DOM, not React. That's because as of React 18\n// ReactDOM.render is deprecated, and the replacement, ReactDOM.createRoot is moved into a\n// subpath import `react-dom/client`. That makes it hard for us to support multiple React versions.\n// As a global API, we can't use portals without introducing a breaking API change. LiveAnnouncer\n// is simple enough to implement without React, so that's what we do here.\n// See this discussion for more details: https://github.com/reactwg/react-18/discussions/125#discussioncomment-2382638\nclass $319e236875307eab$var$LiveAnnouncer {\n isAttached() {\n var _this_node;\n return (_this_node = this.node) === null || _this_node === void 0 ? void 0 : _this_node.isConnected;\n }\n createLog(ariaLive) {\n let node = document.createElement('div');\n node.setAttribute('role', 'log');\n node.setAttribute('aria-live', ariaLive);\n node.setAttribute('aria-relevant', 'additions');\n return node;\n }\n destroy() {\n if (!this.node) return;\n document.body.removeChild(this.node);\n this.node = null;\n }\n announce(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {\n var _this_assertiveLog, _this_politeLog;\n if (!this.node) return;\n let node = document.createElement('div');\n if (typeof message === 'object') {\n // To read an aria-labelledby, the element must have an appropriate role, such as img.\n node.setAttribute('role', 'img');\n node.setAttribute('aria-labelledby', message['aria-labelledby']);\n } else node.textContent = message;\n if (assertiveness === 'assertive') (_this_assertiveLog = this.assertiveLog) === null || _this_assertiveLog === void 0 ? void 0 : _this_assertiveLog.appendChild(node);\n else (_this_politeLog = this.politeLog) === null || _this_politeLog === void 0 ? void 0 : _this_politeLog.appendChild(node);\n if (message !== '') setTimeout(()=>{\n node.remove();\n }, timeout);\n }\n clear(assertiveness) {\n if (!this.node) return;\n if ((!assertiveness || assertiveness === 'assertive') && this.assertiveLog) this.assertiveLog.innerHTML = '';\n if ((!assertiveness || assertiveness === 'polite') && this.politeLog) this.politeLog.innerHTML = '';\n }\n constructor(){\n this.node = null;\n this.assertiveLog = null;\n this.politeLog = null;\n if (typeof document !== 'undefined') {\n this.node = document.createElement('div');\n this.node.dataset.liveAnnouncer = 'true';\n // copied from VisuallyHidden\n Object.assign(this.node.style, {\n border: 0,\n clip: 'rect(0 0 0 0)',\n clipPath: 'inset(50%)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n width: '1px',\n whiteSpace: 'nowrap'\n });\n this.assertiveLog = this.createLog('assertive');\n this.node.appendChild(this.assertiveLog);\n this.politeLog = this.createLog('polite');\n this.node.appendChild(this.politeLog);\n document.body.prepend(this.node);\n }\n }\n}\n\n\nexport {$319e236875307eab$export$a9b970dcc4ae71a9 as announce, $319e236875307eab$export$d10ae4f68404609a as clearAnnouncer, $319e236875307eab$export$d8686216b8b81b2f as destroyAnnouncer};\n//# sourceMappingURL=LiveAnnouncer.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {ProgressBarContext as $0393f8ab869a0f1a$export$e9f3bf65a26ce129} from \"./ProgressBar.mjs\";\nimport {announce as $fM325$announce} from \"@react-aria/live-announcer\";\nimport {useButton as $fM325$useButton, useFocusRing as $fM325$useFocusRing, useHover as $fM325$useHover, useId as $fM325$useId, mergeProps as $fM325$mergeProps} from \"react-aria\";\nimport {createHideableComponent as $fM325$createHideableComponent} from \"@react-aria/collections\";\nimport {filterDOMProps as $fM325$filterDOMProps} from \"@react-aria/utils\";\nimport $fM325$react, {createContext as $fM325$createContext, useRef as $fM325$useRef, useEffect as $fM325$useEffect} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\nconst $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes = new Set([\n 'form',\n 'formAction',\n 'formEncType',\n 'formMethod',\n 'formNoValidate',\n 'formTarget',\n 'name',\n 'value'\n]);\nconst $d2b4bc8c273e7be6$export$24d547caef80ccd1 = /*#__PURE__*/ (0, $fM325$createContext)({});\nconst $d2b4bc8c273e7be6$export$353f5b6fc5456de1 = /*#__PURE__*/ (0, $fM325$createHideableComponent)(function Button(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $d2b4bc8c273e7be6$export$24d547caef80ccd1);\n props = $d2b4bc8c273e7be6$var$disablePendingProps(props);\n let ctx = props;\n let { isPending: isPending } = ctx;\n let { buttonProps: buttonProps, isPressed: isPressed } = (0, $fM325$useButton)(props, ref);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $fM325$useFocusRing)(props);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $fM325$useHover)({\n ...props,\n isDisabled: props.isDisabled || isPending\n });\n let renderValues = {\n isHovered: isHovered,\n isPressed: (ctx.isPressed || isPressed) && !isPending,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isDisabled: props.isDisabled || false,\n isPending: isPending !== null && isPending !== void 0 ? isPending : false\n };\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n values: renderValues,\n defaultClassName: 'react-aria-Button'\n });\n let buttonId = (0, $fM325$useId)(buttonProps.id);\n let progressId = (0, $fM325$useId)();\n let ariaLabelledby = buttonProps['aria-labelledby'];\n if (isPending) {\n // aria-labelledby wins over aria-label\n // https://www.w3.org/TR/accname-1.2/#computation-steps\n if (ariaLabelledby) ariaLabelledby = `${ariaLabelledby} ${progressId}`;\n else if (buttonProps['aria-label']) ariaLabelledby = `${buttonId} ${progressId}`;\n }\n let wasPending = (0, $fM325$useRef)(isPending);\n (0, $fM325$useEffect)(()=>{\n let message = {\n 'aria-labelledby': ariaLabelledby || buttonId\n };\n if (!wasPending.current && isFocused && isPending) (0, $fM325$announce)(message, 'assertive');\n else if (wasPending.current && isFocused && !isPending) (0, $fM325$announce)(message, 'assertive');\n wasPending.current = isPending;\n }, [\n isPending,\n isFocused,\n ariaLabelledby,\n buttonId\n ]);\n // When the button is in a pending state, we want to stop implicit form submission (ie. when the user presses enter on a text input).\n // We do this by changing the button's type to button.\n return /*#__PURE__*/ (0, $fM325$react).createElement(\"button\", {\n ...(0, $fM325$filterDOMProps)(props, {\n propNames: $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes\n }),\n ...(0, $fM325$mergeProps)(buttonProps, focusProps, hoverProps),\n ...renderProps,\n type: buttonProps.type === 'submit' && isPending ? 'button' : buttonProps.type,\n id: buttonId,\n ref: ref,\n \"aria-labelledby\": ariaLabelledby,\n slot: props.slot || undefined,\n \"aria-disabled\": isPending ? 'true' : buttonProps['aria-disabled'],\n \"data-disabled\": props.isDisabled || undefined,\n \"data-pressed\": renderValues.isPressed || undefined,\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-pending\": isPending || undefined,\n \"data-focus-visible\": isFocusVisible || undefined\n }, /*#__PURE__*/ (0, $fM325$react).createElement((0, $0393f8ab869a0f1a$export$e9f3bf65a26ce129).Provider, {\n value: {\n id: progressId\n }\n }, renderProps.children));\n});\nfunction $d2b4bc8c273e7be6$var$disablePendingProps(props) {\n // Don't allow interaction while isPending is true\n if (props.isPending) {\n props.onPress = undefined;\n props.onPressStart = undefined;\n props.onPressEnd = undefined;\n props.onPressChange = undefined;\n props.onPressUp = undefined;\n props.onKeyDown = undefined;\n props.onKeyUp = undefined;\n props.onClick = undefined;\n props.href = undefined;\n }\n return props;\n}\n\n\nexport {$d2b4bc8c273e7be6$export$24d547caef80ccd1 as ButtonContext, $d2b4bc8c273e7be6$export$353f5b6fc5456de1 as Button};\n//# sourceMappingURL=Button.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415} from \"./utils.mjs\";\nimport $1B3Dx$react, {createContext as $1B3Dx$createContext, forwardRef as $1B3Dx$forwardRef} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nconst $514c0188e459b4c0$export$9afb8bc826b033ea = /*#__PURE__*/ (0, $1B3Dx$createContext)({});\nconst $514c0188e459b4c0$export$5f1af8db9871e1d6 = /*#__PURE__*/ (0, $1B3Dx$forwardRef)(function Text(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $514c0188e459b4c0$export$9afb8bc826b033ea);\n let { elementType: ElementType = 'span', ...domProps } = props;\n // @ts-ignore\n return /*#__PURE__*/ (0, $1B3Dx$react).createElement(ElementType, {\n className: \"react-aria-Text\",\n ...domProps,\n ref: ref\n });\n});\n\n\nexport {$514c0188e459b4c0$export$9afb8bc826b033ea as TextContext, $514c0188e459b4c0$export$5f1af8db9871e1d6 as Text};\n//# sourceMappingURL=Text.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $b1f0cad8af73213b$export$3585ede4d035bf14 = new WeakMap();\nfunction $b1f0cad8af73213b$var$normalizeKey(key) {\n if (typeof key === 'string') return key.replace(/\\s*/g, '');\n return '' + key;\n}\nfunction $b1f0cad8af73213b$export$9145995848b05025(state, itemKey) {\n let data = $b1f0cad8af73213b$export$3585ede4d035bf14.get(state);\n if (!data) throw new Error('Unknown list');\n return `${data.id}-option-${$b1f0cad8af73213b$var$normalizeKey(itemKey)}`;\n}\n\n\nexport {$b1f0cad8af73213b$export$3585ede4d035bf14 as listData, $b1f0cad8af73213b$export$9145995848b05025 as getItemId};\n//# sourceMappingURL=utils.module.js.map\n","import {listData as $b1f0cad8af73213b$export$3585ede4d035bf14} from \"./utils.mjs\";\nimport {filterDOMProps as $by1yQ$filterDOMProps, useId as $by1yQ$useId, mergeProps as $by1yQ$mergeProps} from \"@react-aria/utils\";\nimport {useFocusWithin as $by1yQ$useFocusWithin} from \"@react-aria/interactions\";\nimport {useLabel as $by1yQ$useLabel} from \"@react-aria/label\";\nimport {useSelectableList as $by1yQ$useSelectableList} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $c132121280ec012d$export$50eacbbf140a3141(props, state, ref) {\n let domProps = (0, $by1yQ$filterDOMProps)(props, {\n labelable: true\n });\n // Use props instead of state here. We don't want this to change due to long press.\n let selectionBehavior = props.selectionBehavior || 'toggle';\n let linkBehavior = props.linkBehavior || (selectionBehavior === 'replace' ? 'action' : 'override');\n if (selectionBehavior === 'toggle' && linkBehavior === 'action') // linkBehavior=\"action\" does not work with selectionBehavior=\"toggle\" because there is no way\n // to initiate selection (checkboxes are not allowed inside a listbox). Link items will not be\n // selectable in this configuration.\n linkBehavior = 'override';\n let { listProps: listProps } = (0, $by1yQ$useSelectableList)({\n ...props,\n ref: ref,\n selectionManager: state.selectionManager,\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n linkBehavior: linkBehavior\n });\n let { focusWithinProps: focusWithinProps } = (0, $by1yQ$useFocusWithin)({\n onFocusWithin: props.onFocus,\n onBlurWithin: props.onBlur,\n onFocusWithinChange: props.onFocusChange\n });\n // Share list id and some props with child options.\n let id = (0, $by1yQ$useId)(props.id);\n (0, $b1f0cad8af73213b$export$3585ede4d035bf14).set(state, {\n id: id,\n shouldUseVirtualFocus: props.shouldUseVirtualFocus,\n shouldSelectOnPressUp: props.shouldSelectOnPressUp,\n shouldFocusOnHover: props.shouldFocusOnHover,\n isVirtualized: props.isVirtualized,\n onAction: props.onAction,\n linkBehavior: linkBehavior\n });\n let { labelProps: labelProps, fieldProps: fieldProps } = (0, $by1yQ$useLabel)({\n ...props,\n id: id,\n // listbox is not an HTML input element so it\n // shouldn't be labeled by a <label> element.\n labelElementType: 'span'\n });\n return {\n labelProps: labelProps,\n listBoxProps: (0, $by1yQ$mergeProps)(domProps, focusWithinProps, state.selectionManager.selectionMode === 'multiple' ? {\n 'aria-multiselectable': 'true'\n } : {}, {\n role: 'listbox',\n ...(0, $by1yQ$mergeProps)(fieldProps, listProps)\n })\n };\n}\n\n\nexport {$c132121280ec012d$export$50eacbbf140a3141 as useListBox};\n//# sourceMappingURL=useListBox.module.js.map\n","import {getItemId as $b1f0cad8af73213b$export$9145995848b05025, listData as $b1f0cad8af73213b$export$3585ede4d035bf14} from \"./utils.mjs\";\nimport {useSlotId as $fcwmx$useSlotId, isMac as $fcwmx$isMac, isWebKit as $fcwmx$isWebKit, chain as $fcwmx$chain, filterDOMProps as $fcwmx$filterDOMProps, useLinkProps as $fcwmx$useLinkProps, mergeProps as $fcwmx$mergeProps} from \"@react-aria/utils\";\nimport {getItemCount as $fcwmx$getItemCount} from \"@react-stately/collections\";\nimport {useHover as $fcwmx$useHover, isFocusVisible as $fcwmx$isFocusVisible} from \"@react-aria/interactions\";\nimport {useSelectableItem as $fcwmx$useSelectableItem} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $293f70390ea03370$export$497855f14858aa34(props, state, ref) {\n var _item_props, _item_props1;\n let { key: key } = props;\n let data = (0, $b1f0cad8af73213b$export$3585ede4d035bf14).get(state);\n var _props_isDisabled;\n let isDisabled = (_props_isDisabled = props.isDisabled) !== null && _props_isDisabled !== void 0 ? _props_isDisabled : state.selectionManager.isDisabled(key);\n var _props_isSelected;\n let isSelected = (_props_isSelected = props.isSelected) !== null && _props_isSelected !== void 0 ? _props_isSelected : state.selectionManager.isSelected(key);\n var _props_shouldSelectOnPressUp;\n let shouldSelectOnPressUp = (_props_shouldSelectOnPressUp = props.shouldSelectOnPressUp) !== null && _props_shouldSelectOnPressUp !== void 0 ? _props_shouldSelectOnPressUp : data === null || data === void 0 ? void 0 : data.shouldSelectOnPressUp;\n var _props_shouldFocusOnHover;\n let shouldFocusOnHover = (_props_shouldFocusOnHover = props.shouldFocusOnHover) !== null && _props_shouldFocusOnHover !== void 0 ? _props_shouldFocusOnHover : data === null || data === void 0 ? void 0 : data.shouldFocusOnHover;\n var _props_shouldUseVirtualFocus;\n let shouldUseVirtualFocus = (_props_shouldUseVirtualFocus = props.shouldUseVirtualFocus) !== null && _props_shouldUseVirtualFocus !== void 0 ? _props_shouldUseVirtualFocus : data === null || data === void 0 ? void 0 : data.shouldUseVirtualFocus;\n var _props_isVirtualized;\n let isVirtualized = (_props_isVirtualized = props.isVirtualized) !== null && _props_isVirtualized !== void 0 ? _props_isVirtualized : data === null || data === void 0 ? void 0 : data.isVirtualized;\n let labelId = (0, $fcwmx$useSlotId)();\n let descriptionId = (0, $fcwmx$useSlotId)();\n let optionProps = {\n role: 'option',\n 'aria-disabled': isDisabled || undefined,\n 'aria-selected': state.selectionManager.selectionMode !== 'none' ? isSelected : undefined\n };\n // Safari with VoiceOver on macOS misreads options with aria-labelledby or aria-label as simply \"text\".\n // We should not map slots to the label and description on Safari and instead just have VoiceOver read the textContent.\n // https://bugs.webkit.org/show_bug.cgi?id=209279\n if (!((0, $fcwmx$isMac)() && (0, $fcwmx$isWebKit)())) {\n optionProps['aria-label'] = props['aria-label'];\n optionProps['aria-labelledby'] = labelId;\n optionProps['aria-describedby'] = descriptionId;\n }\n let item = state.collection.getItem(key);\n if (isVirtualized) {\n let index = Number(item === null || item === void 0 ? void 0 : item.index);\n optionProps['aria-posinset'] = Number.isNaN(index) ? undefined : index + 1;\n optionProps['aria-setsize'] = (0, $fcwmx$getItemCount)(state.collection);\n }\n let onAction = (data === null || data === void 0 ? void 0 : data.onAction) ? ()=>{\n var _data_onAction;\n return data === null || data === void 0 ? void 0 : (_data_onAction = data.onAction) === null || _data_onAction === void 0 ? void 0 : _data_onAction.call(data, key);\n } : undefined;\n let id = (0, $b1f0cad8af73213b$export$9145995848b05025)(state, key);\n let { itemProps: itemProps, isPressed: isPressed, isFocused: isFocused, hasAction: hasAction, allowsSelection: allowsSelection } = (0, $fcwmx$useSelectableItem)({\n selectionManager: state.selectionManager,\n key: key,\n ref: ref,\n shouldSelectOnPressUp: shouldSelectOnPressUp,\n allowsDifferentPressOrigin: shouldSelectOnPressUp && shouldFocusOnHover,\n isVirtualized: isVirtualized,\n shouldUseVirtualFocus: shouldUseVirtualFocus,\n isDisabled: isDisabled,\n onAction: onAction || (item === null || item === void 0 ? void 0 : (_item_props = item.props) === null || _item_props === void 0 ? void 0 : _item_props.onAction) ? (0, $fcwmx$chain)(item === null || item === void 0 ? void 0 : (_item_props1 = item.props) === null || _item_props1 === void 0 ? void 0 : _item_props1.onAction, onAction) : undefined,\n linkBehavior: data === null || data === void 0 ? void 0 : data.linkBehavior,\n id: id\n });\n let { hoverProps: hoverProps } = (0, $fcwmx$useHover)({\n isDisabled: isDisabled || !shouldFocusOnHover,\n onHoverStart () {\n if (!(0, $fcwmx$isFocusVisible)()) {\n state.selectionManager.setFocused(true);\n state.selectionManager.setFocusedKey(key);\n }\n }\n });\n let domProps = (0, $fcwmx$filterDOMProps)(item === null || item === void 0 ? void 0 : item.props);\n delete domProps.id;\n let linkProps = (0, $fcwmx$useLinkProps)(item === null || item === void 0 ? void 0 : item.props);\n return {\n optionProps: {\n ...optionProps,\n ...(0, $fcwmx$mergeProps)(domProps, itemProps, hoverProps, linkProps),\n id: id\n },\n labelProps: {\n id: labelId\n },\n descriptionProps: {\n id: descriptionId\n },\n isFocused: isFocused,\n isFocusVisible: isFocused && state.selectionManager.isFocused && (0, $fcwmx$isFocusVisible)(),\n isSelected: isSelected,\n isDisabled: isDisabled,\n isPressed: isPressed,\n allowsSelection: allowsSelection,\n hasAction: hasAction\n };\n}\n\n\nexport {$293f70390ea03370$export$497855f14858aa34 as useOption};\n//# sourceMappingURL=useOption.module.js.map\n","import {InputContext as $3985021b0ad6602f$export$37fb8590cf2c088c} from \"./Input.mjs\";\nimport {Provider as $64fa3d84918910a7$export$2881499e37b75b9a, removeDataAttributes as $64fa3d84918910a7$export$ef03459518577ad4, useSlottedContext as $64fa3d84918910a7$export$fabf2dc03a41866e} from \"./utils.mjs\";\nimport {SearchFieldContext as $440f4836bcb56932$export$d1c4e4c63cb03a11} from \"./SearchField.mjs\";\nimport {TextFieldContext as $bcdf0525bf22703d$export$2129e27b3ef0d483} from \"./TextField.mjs\";\nimport {useAutocomplete as $llkzs$useAutocomplete} from \"@react-aria/autocomplete\";\nimport {useAutocompleteState as $llkzs$useAutocompleteState} from \"@react-stately/autocomplete\";\nimport {mergeProps as $llkzs$mergeProps} from \"@react-aria/utils\";\nimport $llkzs$react, {createContext as $llkzs$createContext, useRef as $llkzs$useRef} from \"react\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\nconst $d2f53cda644affe3$export$36e687af51cd0967 = /*#__PURE__*/ (0, $llkzs$createContext)(null);\nconst $d2f53cda644affe3$export$68ee3368b6d68148 = /*#__PURE__*/ (0, $llkzs$createContext)(null);\nconst $d2f53cda644affe3$export$65d2a03b8800d6e3 = /*#__PURE__*/ (0, $llkzs$createContext)(null);\nfunction $d2f53cda644affe3$export$2f2b9559550c7bbc(props) {\n let ctx = (0, $64fa3d84918910a7$export$fabf2dc03a41866e)($d2f53cda644affe3$export$36e687af51cd0967, props.slot);\n props = (0, $llkzs$mergeProps)(ctx, props);\n let { filter: filter, disableAutoFocusFirst: disableAutoFocusFirst } = props;\n let state = (0, $llkzs$useAutocompleteState)(props);\n let inputRef = (0, $llkzs$useRef)(null);\n let collectionRef = (0, $llkzs$useRef)(null);\n let { textFieldProps: textFieldProps, collectionProps: collectionProps, collectionRef: mergedCollectionRef, filter: filterFn } = (0, $llkzs$useAutocomplete)({\n ...(0, $64fa3d84918910a7$export$ef03459518577ad4)(props),\n filter: filter,\n disableAutoFocusFirst: disableAutoFocusFirst,\n inputRef: inputRef,\n collectionRef: collectionRef\n }, state);\n return /*#__PURE__*/ (0, $llkzs$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $d2f53cda644affe3$export$68ee3368b6d68148,\n state\n ],\n [\n (0, $440f4836bcb56932$export$d1c4e4c63cb03a11),\n textFieldProps\n ],\n [\n (0, $bcdf0525bf22703d$export$2129e27b3ef0d483),\n textFieldProps\n ],\n [\n (0, $3985021b0ad6602f$export$37fb8590cf2c088c),\n {\n ref: inputRef\n }\n ],\n [\n $d2f53cda644affe3$export$65d2a03b8800d6e3,\n {\n filter: filterFn,\n collectionProps: collectionProps,\n collectionRef: mergedCollectionRef\n }\n ]\n ]\n }, props.children);\n}\n\n\nexport {$d2f53cda644affe3$export$36e687af51cd0967 as AutocompleteContext, $d2f53cda644affe3$export$68ee3368b6d68148 as AutocompleteStateContext, $d2f53cda644affe3$export$65d2a03b8800d6e3 as UNSTABLE_InternalAutocompleteContext, $d2f53cda644affe3$export$2f2b9559550c7bbc as Autocomplete};\n//# sourceMappingURL=Autocomplete.module.js.map\n","import {createBranchComponent as $18I52$createBranchComponent, useCachedChildren as $18I52$useCachedChildren} from \"@react-aria/collections\";\nimport $18I52$react, {createContext as $18I52$createContext, useContext as $18I52$useContext, useMemo as $18I52$useMemo} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nconst $7135fc7d473fd974$export$d40e14dec8b060a8 = /*#__PURE__*/ (0, $18I52$createContext)(null);\nconst $7135fc7d473fd974$export$6e2c8f0811a474ce = /*#__PURE__*/ (0, $18I52$createBranchComponent)('section', (props, ref, section)=>{\n let { name: name, render: render } = (0, $18I52$useContext)($7135fc7d473fd974$export$d40e14dec8b060a8);\n if (process.env.NODE_ENV !== 'production') console.warn(`<Section> is deprecated. Please use <${name}> instead.`);\n return render(props, ref, section, 'react-aria-Section');\n});\nconst $7135fc7d473fd974$export$a164736487e3f0ae = {\n CollectionRoot ({ collection: collection, renderDropIndicator: renderDropIndicator }) {\n return $7135fc7d473fd974$var$useCollectionRender(collection, null, renderDropIndicator);\n },\n CollectionBranch ({ collection: collection, parent: parent, renderDropIndicator: renderDropIndicator }) {\n return $7135fc7d473fd974$var$useCollectionRender(collection, parent, renderDropIndicator);\n }\n};\nfunction $7135fc7d473fd974$var$useCollectionRender(collection, parent, renderDropIndicator) {\n return (0, $18I52$useCachedChildren)({\n items: parent ? collection.getChildren(parent.key) : collection,\n dependencies: [\n renderDropIndicator\n ],\n children (node) {\n var _collection_getItem;\n let rendered = node.render(node);\n if (!renderDropIndicator || node.type !== 'item') return rendered;\n let key = node.key;\n let keyAfter = collection.getKeyAfter(key);\n return /*#__PURE__*/ (0, $18I52$react).createElement((0, $18I52$react).Fragment, null, renderDropIndicator({\n type: 'item',\n key: key,\n dropPosition: 'before'\n }), rendered, (keyAfter == null || ((_collection_getItem = collection.getItem(keyAfter)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.type) !== 'item') && renderDropIndicator({\n type: 'item',\n key: key,\n dropPosition: 'after'\n }));\n }\n });\n}\nconst $7135fc7d473fd974$export$4feb769f8ddf26c5 = /*#__PURE__*/ (0, $18I52$createContext)($7135fc7d473fd974$export$a164736487e3f0ae);\nfunction $7135fc7d473fd974$export$90e00781bc59d8f9(focusedKey) {\n return (0, $18I52$useMemo)(()=>focusedKey != null ? new Set([\n focusedKey\n ]) : null, [\n focusedKey\n ]);\n}\n\n\nexport {$7135fc7d473fd974$export$d40e14dec8b060a8 as SectionContext, $7135fc7d473fd974$export$6e2c8f0811a474ce as Section, $7135fc7d473fd974$export$a164736487e3f0ae as DefaultCollectionRenderer, $7135fc7d473fd974$export$4feb769f8ddf26c5 as CollectionRendererContext, $7135fc7d473fd974$export$90e00781bc59d8f9 as usePersistedKeys};\n//# sourceMappingURL=Collection.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415} from \"./utils.mjs\";\nimport {createLeafComponent as $i47tY$createLeafComponent} from \"@react-aria/collections\";\nimport $i47tY$react, {createContext as $i47tY$createContext} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $72a5793c14baf454$export$e0e4026c12a8bdbb = /*#__PURE__*/ (0, $i47tY$createContext)({});\nconst $72a5793c14baf454$export$8b251419efc915eb = /*#__PURE__*/ (0, $i47tY$createLeafComponent)('header', function Header(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $72a5793c14baf454$export$e0e4026c12a8bdbb);\n return /*#__PURE__*/ (0, $i47tY$react).createElement(\"header\", {\n className: \"react-aria-Header\",\n ...props,\n ref: ref\n }, props.children);\n});\n\n\nexport {$72a5793c14baf454$export$e0e4026c12a8bdbb as HeaderContext, $72a5793c14baf454$export$8b251419efc915eb as Header};\n//# sourceMappingURL=Header.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415} from \"./utils.mjs\";\nimport {useSeparator as $i9JCE$useSeparator} from \"react-aria\";\nimport {createLeafComponent as $i9JCE$createLeafComponent} from \"@react-aria/collections\";\nimport {filterDOMProps as $i9JCE$filterDOMProps} from \"@react-aria/utils\";\nimport $i9JCE$react, {createContext as $i9JCE$createContext} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $431f98aba6844401$export$6615d83f6de245ce = /*#__PURE__*/ (0, $i9JCE$createContext)({});\nconst $431f98aba6844401$export$1ff3c3f08ae963c0 = /*#__PURE__*/ (0, $i9JCE$createLeafComponent)('separator', function Separator(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $431f98aba6844401$export$6615d83f6de245ce);\n let { elementType: elementType, orientation: orientation, style: style, className: className, slot: slot, ...otherProps } = props;\n let Element = elementType || 'hr';\n if (Element === 'hr' && orientation === 'vertical') Element = 'div';\n let { separatorProps: separatorProps } = (0, $i9JCE$useSeparator)({\n ...otherProps,\n elementType: elementType,\n orientation: orientation\n });\n return /*#__PURE__*/ (0, $i9JCE$react).createElement(Element, {\n ...(0, $i9JCE$filterDOMProps)(props),\n ...separatorProps,\n style: style,\n className: className !== null && className !== void 0 ? className : 'react-aria-Separator',\n ref: ref,\n slot: slot || undefined\n });\n});\n\n\nexport {$431f98aba6844401$export$6615d83f6de245ce as SeparatorContext, $431f98aba6844401$export$1ff3c3f08ae963c0 as Separator};\n//# sourceMappingURL=Separator.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {filterDOMProps as $8wt2Z$filterDOMProps} from \"@react-aria/utils\";\nimport $8wt2Z$react, {createContext as $8wt2Z$createContext, forwardRef as $8wt2Z$forwardRef} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $44f671af83e7d9e0$export$2de4954e8ae13b9f = /*#__PURE__*/ (0, $8wt2Z$createContext)({\n placement: 'bottom'\n});\nconst $44f671af83e7d9e0$export$746d02f47f4d381 = /*#__PURE__*/ (0, $8wt2Z$forwardRef)(function OverlayArrow(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $44f671af83e7d9e0$export$2de4954e8ae13b9f);\n let placement = props.placement;\n let style = {\n position: 'absolute',\n transform: placement === 'top' || placement === 'bottom' ? 'translateX(-50%)' : 'translateY(-50%)'\n };\n if (placement != null) style[placement] = '100%';\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-OverlayArrow',\n values: {\n placement: placement\n }\n });\n // remove undefined values from renderProps.style object so that it can be\n // spread merged with the other style object\n if (renderProps.style) Object.keys(renderProps.style).forEach((key)=>renderProps.style[key] === undefined && delete renderProps.style[key]);\n let DOMProps = (0, $8wt2Z$filterDOMProps)(props);\n return /*#__PURE__*/ (0, $8wt2Z$react).createElement(\"div\", {\n ...DOMProps,\n ...renderProps,\n style: {\n ...style,\n ...renderProps.style\n },\n ref: ref,\n \"data-placement\": placement\n });\n});\n\n\nexport {$44f671af83e7d9e0$export$2de4954e8ae13b9f as OverlayArrowContext, $44f671af83e7d9e0$export$746d02f47f4d381 as OverlayArrow};\n//# sourceMappingURL=OverlayArrow.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {OverlayArrowContext as $44f671af83e7d9e0$export$2de4954e8ae13b9f} from \"./OverlayArrow.mjs\";\nimport {OverlayTriggerStateContext as $de32f1b87079253c$export$d2f961adcb0afbe} from \"./Dialog.mjs\";\nimport {useLocale as $ehFet$useLocale, usePopover as $ehFet$usePopover, DismissButton as $ehFet$DismissButton, Overlay as $ehFet$Overlay} from \"react-aria\";\nimport {useExitAnimation as $ehFet$useExitAnimation, useLayoutEffect as $ehFet$useLayoutEffect, useEnterAnimation as $ehFet$useEnterAnimation, mergeProps as $ehFet$mergeProps, filterDOMProps as $ehFet$filterDOMProps} from \"@react-aria/utils\";\nimport {focusSafely as $ehFet$focusSafely} from \"@react-aria/interactions\";\nimport {useOverlayTriggerState as $ehFet$useOverlayTriggerState} from \"react-stately\";\nimport $ehFet$react, {createContext as $ehFet$createContext, forwardRef as $ehFet$forwardRef, useContext as $ehFet$useContext, useRef as $ehFet$useRef, useState as $ehFet$useState, useEffect as $ehFet$useEffect} from \"react\";\nimport {useIsHidden as $ehFet$useIsHidden} from \"@react-aria/collections\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\nconst $07b14b47974efb58$export$9b9a0cd73afb7ca4 = /*#__PURE__*/ (0, $ehFet$createContext)(null);\n// Stores a ref for the portal container for a group of popovers (e.g. submenus).\nconst $07b14b47974efb58$var$PopoverGroupContext = /*#__PURE__*/ (0, $ehFet$createContext)(null);\nconst $07b14b47974efb58$export$5b6b19405a83ff9d = /*#__PURE__*/ (0, $ehFet$forwardRef)(function Popover(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $07b14b47974efb58$export$9b9a0cd73afb7ca4);\n let contextState = (0, $ehFet$useContext)((0, $de32f1b87079253c$export$d2f961adcb0afbe));\n let localState = (0, $ehFet$useOverlayTriggerState)(props);\n let state = props.isOpen != null || props.defaultOpen != null || !contextState ? localState : contextState;\n let isExiting = (0, $ehFet$useExitAnimation)(ref, state.isOpen) || props.isExiting || false;\n let isHidden = (0, $ehFet$useIsHidden)();\n let { direction: direction } = (0, $ehFet$useLocale)();\n // If we are in a hidden tree, we still need to preserve our children.\n if (isHidden) {\n let children = props.children;\n if (typeof children === 'function') children = children({\n trigger: props.trigger || null,\n placement: 'bottom',\n isEntering: false,\n isExiting: false,\n defaultChildren: null\n });\n return /*#__PURE__*/ (0, $ehFet$react).createElement((0, $ehFet$react).Fragment, null, children);\n }\n if (state && !state.isOpen && !isExiting) return null;\n return /*#__PURE__*/ (0, $ehFet$react).createElement($07b14b47974efb58$var$PopoverInner, {\n ...props,\n triggerRef: props.triggerRef,\n state: state,\n popoverRef: ref,\n isExiting: isExiting,\n dir: direction\n });\n});\nfunction $07b14b47974efb58$var$PopoverInner({ state: state, isExiting: isExiting, UNSTABLE_portalContainer: UNSTABLE_portalContainer, ...props }) {\n // Calculate the arrow size internally (and remove props.arrowSize from PopoverProps)\n // Referenced from: packages/@react-spectrum/tooltip/src/TooltipTrigger.tsx\n let arrowRef = (0, $ehFet$useRef)(null);\n let [arrowWidth, setArrowWidth] = (0, $ehFet$useState)(0);\n let containerRef = (0, $ehFet$useRef)(null);\n let groupCtx = (0, $ehFet$useContext)($07b14b47974efb58$var$PopoverGroupContext);\n let isSubPopover = groupCtx && props.trigger === 'SubmenuTrigger';\n (0, $ehFet$useLayoutEffect)(()=>{\n if (arrowRef.current && state.isOpen) setArrowWidth(arrowRef.current.getBoundingClientRect().width);\n }, [\n state.isOpen,\n arrowRef\n ]);\n var _props_offset;\n let { popoverProps: popoverProps, underlayProps: underlayProps, arrowProps: arrowProps, placement: placement } = (0, $ehFet$usePopover)({\n ...props,\n offset: (_props_offset = props.offset) !== null && _props_offset !== void 0 ? _props_offset : 8,\n arrowSize: arrowWidth,\n // If this is a submenu/subdialog, use the root popover's container\n // to detect outside interaction and add aria-hidden.\n groupRef: isSubPopover ? groupCtx : containerRef\n }, state);\n let ref = props.popoverRef;\n let isEntering = (0, $ehFet$useEnterAnimation)(ref, !!placement) || props.isEntering || false;\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-Popover',\n values: {\n trigger: props.trigger || null,\n placement: placement,\n isEntering: isEntering,\n isExiting: isExiting\n }\n });\n // Automatically render Popover with role=dialog except when isNonModal is true,\n // or a dialog is already nested inside the popover.\n let shouldBeDialog = !props.isNonModal || props.trigger === 'SubmenuTrigger';\n let [isDialog, setDialog] = (0, $ehFet$useState)(false);\n (0, $ehFet$useLayoutEffect)(()=>{\n if (ref.current) setDialog(shouldBeDialog && !ref.current.querySelector('[role=dialog]'));\n }, [\n ref,\n shouldBeDialog\n ]);\n // Focus the popover itself on mount, unless a child element is already focused.\n (0, $ehFet$useEffect)(()=>{\n if (isDialog && ref.current && !ref.current.contains(document.activeElement)) (0, $ehFet$focusSafely)(ref.current);\n }, [\n isDialog,\n ref\n ]);\n let style = {\n ...popoverProps.style,\n ...renderProps.style\n };\n let overlay = /*#__PURE__*/ (0, $ehFet$react).createElement(\"div\", {\n ...(0, $ehFet$mergeProps)((0, $ehFet$filterDOMProps)(props), popoverProps),\n ...renderProps,\n role: isDialog ? 'dialog' : undefined,\n tabIndex: isDialog ? -1 : undefined,\n \"aria-label\": props['aria-label'],\n \"aria-labelledby\": props['aria-labelledby'],\n ref: ref,\n slot: props.slot || undefined,\n style: style,\n dir: props.dir,\n \"data-trigger\": props.trigger,\n \"data-placement\": placement,\n \"data-entering\": isEntering || undefined,\n \"data-exiting\": isExiting || undefined\n }, !props.isNonModal && /*#__PURE__*/ (0, $ehFet$react).createElement((0, $ehFet$DismissButton), {\n onDismiss: state.close\n }), /*#__PURE__*/ (0, $ehFet$react).createElement((0, $44f671af83e7d9e0$export$2de4954e8ae13b9f).Provider, {\n value: {\n ...arrowProps,\n placement: placement,\n ref: arrowRef\n }\n }, renderProps.children), /*#__PURE__*/ (0, $ehFet$react).createElement((0, $ehFet$DismissButton), {\n onDismiss: state.close\n }));\n // If this is a root popover, render an extra div to act as the portal container for submenus/subdialogs.\n if (!isSubPopover) return /*#__PURE__*/ (0, $ehFet$react).createElement((0, $ehFet$Overlay), {\n ...props,\n shouldContainFocus: isDialog,\n isExiting: isExiting,\n portalContainer: UNSTABLE_portalContainer\n }, !props.isNonModal && state.isOpen && /*#__PURE__*/ (0, $ehFet$react).createElement(\"div\", {\n \"data-testid\": \"underlay\",\n ...underlayProps,\n style: {\n position: 'fixed',\n inset: 0\n }\n }), /*#__PURE__*/ (0, $ehFet$react).createElement(\"div\", {\n ref: containerRef,\n style: {\n display: 'contents'\n }\n }, /*#__PURE__*/ (0, $ehFet$react).createElement($07b14b47974efb58$var$PopoverGroupContext.Provider, {\n value: containerRef\n }, overlay)));\n var _ref;\n // Submenus/subdialogs are mounted into the root popover's container.\n return /*#__PURE__*/ (0, $ehFet$react).createElement((0, $ehFet$Overlay), {\n ...props,\n shouldContainFocus: isDialog,\n isExiting: isExiting,\n portalContainer: (_ref = UNSTABLE_portalContainer !== null && UNSTABLE_portalContainer !== void 0 ? UNSTABLE_portalContainer : groupCtx === null || groupCtx === void 0 ? void 0 : groupCtx.current) !== null && _ref !== void 0 ? _ref : undefined\n }, overlay);\n}\n\n\nexport {$07b14b47974efb58$export$9b9a0cd73afb7ca4 as PopoverContext, $07b14b47974efb58$export$5b6b19405a83ff9d as Popover};\n//# sourceMappingURL=Popover.module.js.map\n","import {useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415} from \"./utils.mjs\";\nimport $3zqIJ$react, {createContext as $3zqIJ$createContext, forwardRef as $3zqIJ$forwardRef} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nconst $63df2425e2108aa8$export$744d98a3b8a94e1c = /*#__PURE__*/ (0, $3zqIJ$createContext)({});\nconst $63df2425e2108aa8$export$16e4d70cc375e707 = /*#__PURE__*/ (0, $3zqIJ$forwardRef)(function Keyboard(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $63df2425e2108aa8$export$744d98a3b8a94e1c);\n return /*#__PURE__*/ (0, $3zqIJ$react).createElement(\"kbd\", {\n dir: \"ltr\",\n ...props,\n ref: ref\n });\n});\n\n\nexport {$63df2425e2108aa8$export$744d98a3b8a94e1c as KeyboardContext, $63df2425e2108aa8$export$16e4d70cc375e707 as Keyboard};\n//# sourceMappingURL=Keyboard.module.js.map\n","import {CollectionRendererContext as $7135fc7d473fd974$export$4feb769f8ddf26c5, SectionContext as $7135fc7d473fd974$export$d40e14dec8b060a8, usePersistedKeys as $7135fc7d473fd974$export$90e00781bc59d8f9} from \"./Collection.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3, useSlot as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8, useSlottedContext as $64fa3d84918910a7$export$fabf2dc03a41866e} from \"./utils.mjs\";\nimport {HeaderContext as $72a5793c14baf454$export$e0e4026c12a8bdbb} from \"./Header.mjs\";\nimport {KeyboardContext as $63df2425e2108aa8$export$744d98a3b8a94e1c} from \"./Keyboard.mjs\";\nimport {OverlayTriggerStateContext as $de32f1b87079253c$export$d2f961adcb0afbe} from \"./Dialog.mjs\";\nimport {PopoverContext as $07b14b47974efb58$export$9b9a0cd73afb7ca4} from \"./Popover.mjs\";\nimport {SeparatorContext as $431f98aba6844401$export$6615d83f6de245ce} from \"./Separator.mjs\";\nimport {TextContext as $514c0188e459b4c0$export$9afb8bc826b033ea} from \"./Text.mjs\";\nimport {UNSTABLE_InternalAutocompleteContext as $d2f53cda644affe3$export$65d2a03b8800d6e3} from \"./Autocomplete.mjs\";\nimport {useMenuTrigger as $kM2ZM$useMenuTrigger, useSubmenuTrigger as $kM2ZM$useSubmenuTrigger, useMenu as $kM2ZM$useMenu, FocusScope as $kM2ZM$FocusScope, useMenuSection as $kM2ZM$useMenuSection, useMenuItem as $kM2ZM$useMenuItem, useHover as $kM2ZM$useHover, mergeProps as $kM2ZM$mergeProps} from \"react-aria\";\nimport {createBranchComponent as $kM2ZM$createBranchComponent, CollectionBuilder as $kM2ZM$CollectionBuilder, Collection as $kM2ZM$Collection, createLeafComponent as $kM2ZM$createLeafComponent} from \"@react-aria/collections\";\nimport {useMenuTriggerState as $kM2ZM$useMenuTriggerState, useSubmenuTriggerState as $kM2ZM$useSubmenuTriggerState, useTreeState as $kM2ZM$useTreeState} from \"react-stately\";\nimport {useResizeObserver as $kM2ZM$useResizeObserver, useObjectRef as $kM2ZM$useObjectRef, mergeRefs as $kM2ZM$mergeRefs, filterDOMProps as $kM2ZM$filterDOMProps} from \"@react-aria/utils\";\nimport {SelectionManager as $kM2ZM$SelectionManager, useMultipleSelectionState as $kM2ZM$useMultipleSelectionState} from \"@react-stately/selection\";\nimport {PressResponder as $kM2ZM$PressResponder} from \"@react-aria/interactions\";\nimport $kM2ZM$react, {createContext as $kM2ZM$createContext, useRef as $kM2ZM$useRef, useState as $kM2ZM$useState, useCallback as $kM2ZM$useCallback, useContext as $kM2ZM$useContext, forwardRef as $kM2ZM$forwardRef, useMemo as $kM2ZM$useMemo} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $3674c52c6b3c5bce$export$c7e742effb1c51e2 = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nconst $3674c52c6b3c5bce$export$24aad8519b95b41b = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nconst $3674c52c6b3c5bce$export$795aec4671cbae19 = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nconst $3674c52c6b3c5bce$var$SelectionManagerContext = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nfunction $3674c52c6b3c5bce$export$27d2ad3c5815583e(props) {\n let state = (0, $kM2ZM$useMenuTriggerState)(props);\n let ref = (0, $kM2ZM$useRef)(null);\n let { menuTriggerProps: menuTriggerProps, menuProps: menuProps } = (0, $kM2ZM$useMenuTrigger)({\n ...props,\n type: 'menu'\n }, state, ref);\n // Allows menu width to match button\n let [buttonWidth, setButtonWidth] = (0, $kM2ZM$useState)(null);\n let onResize = (0, $kM2ZM$useCallback)(()=>{\n if (ref.current) setButtonWidth(ref.current.offsetWidth + 'px');\n }, [\n ref\n ]);\n (0, $kM2ZM$useResizeObserver)({\n ref: ref,\n onResize: onResize\n });\n let scrollRef = (0, $kM2ZM$useRef)(null);\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $3674c52c6b3c5bce$export$c7e742effb1c51e2,\n {\n ...menuProps,\n ref: scrollRef\n }\n ],\n [\n (0, $de32f1b87079253c$export$d2f961adcb0afbe),\n state\n ],\n [\n $3674c52c6b3c5bce$export$795aec4671cbae19,\n state\n ],\n [\n (0, $07b14b47974efb58$export$9b9a0cd73afb7ca4),\n {\n trigger: 'MenuTrigger',\n triggerRef: ref,\n scrollRef: scrollRef,\n placement: 'bottom start',\n style: {\n '--trigger-width': buttonWidth\n },\n 'aria-labelledby': menuProps['aria-labelledby']\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $kM2ZM$PressResponder), {\n ...menuTriggerProps,\n ref: ref,\n isPressed: state.isOpen\n }, props.children));\n}\nconst $3674c52c6b3c5bce$var$SubmenuTriggerContext = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nconst $3674c52c6b3c5bce$export$ecabc99eeffab7ca = /*#__PURE__*/ (0, $kM2ZM$createBranchComponent)('submenutrigger', (props, ref, item)=>{\n let { CollectionBranch: CollectionBranch } = (0, $kM2ZM$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));\n let state = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$export$24aad8519b95b41b);\n let rootMenuTriggerState = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$export$795aec4671cbae19);\n let submenuTriggerState = (0, $kM2ZM$useSubmenuTriggerState)({\n triggerKey: item.key\n }, rootMenuTriggerState);\n let submenuRef = (0, $kM2ZM$useRef)(null);\n let itemRef = (0, $kM2ZM$useObjectRef)(ref);\n let { parentMenuRef: parentMenuRef, shouldUseVirtualFocus: shouldUseVirtualFocus } = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$var$SubmenuTriggerContext);\n let { submenuTriggerProps: submenuTriggerProps, submenuProps: submenuProps, popoverProps: popoverProps } = (0, $kM2ZM$useSubmenuTrigger)({\n parentMenuRef: parentMenuRef,\n submenuRef: submenuRef,\n delay: props.delay,\n shouldUseVirtualFocus: shouldUseVirtualFocus\n }, submenuTriggerState, itemRef);\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $3674c52c6b3c5bce$var$MenuItemContext,\n {\n ...submenuTriggerProps,\n onAction: undefined,\n ref: itemRef\n }\n ],\n [\n $3674c52c6b3c5bce$export$c7e742effb1c51e2,\n submenuProps\n ],\n [\n (0, $de32f1b87079253c$export$d2f961adcb0afbe),\n submenuTriggerState\n ],\n [\n (0, $07b14b47974efb58$export$9b9a0cd73afb7ca4),\n {\n ref: submenuRef,\n trigger: 'SubmenuTrigger',\n triggerRef: itemRef,\n placement: 'end top',\n 'aria-labelledby': submenuProps['aria-labelledby'],\n ...popoverProps\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement(CollectionBranch, {\n collection: state.collection,\n parent: item\n }), props.children[1]);\n}, (props)=>props.children[0]);\nconst $3674c52c6b3c5bce$export$d9b273488cd8ce6f = /*#__PURE__*/ (0, $kM2ZM$forwardRef)(function Menu(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $3674c52c6b3c5bce$export$c7e742effb1c51e2);\n // Delay rendering the actual menu until we have the collection so that auto focus works properly.\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $kM2ZM$CollectionBuilder), {\n content: /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $kM2ZM$Collection), props)\n }, (collection)=>/*#__PURE__*/ (0, $kM2ZM$react).createElement($3674c52c6b3c5bce$var$MenuInner, {\n props: props,\n collection: collection,\n menuRef: ref\n }));\n});\nfunction $3674c52c6b3c5bce$var$MenuInner({ props: props, collection: collection, menuRef: ref }) {\n let { filter: filter, collectionProps: autocompleteMenuProps, collectionRef: collectionRef } = (0, $kM2ZM$useContext)((0, $d2f53cda644affe3$export$65d2a03b8800d6e3)) || {};\n // Memoed so that useAutocomplete callback ref is properly only called once on mount and not everytime a rerender happens\n ref = (0, $kM2ZM$useObjectRef)((0, $kM2ZM$useMemo)(()=>(0, $kM2ZM$mergeRefs)(ref, collectionRef !== undefined ? collectionRef : null), [\n collectionRef,\n ref\n ]));\n let filteredCollection = (0, $kM2ZM$useMemo)(()=>filter ? collection.UNSTABLE_filter(filter) : collection, [\n collection,\n filter\n ]);\n let state = (0, $kM2ZM$useTreeState)({\n ...props,\n collection: filteredCollection,\n children: undefined\n });\n let triggerState = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$export$795aec4671cbae19);\n let { isVirtualized: isVirtualized, CollectionRoot: CollectionRoot } = (0, $kM2ZM$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));\n let { menuProps: menuProps } = (0, $kM2ZM$useMenu)({\n ...props,\n ...autocompleteMenuProps,\n isVirtualized: isVirtualized,\n onClose: props.onClose || (triggerState === null || triggerState === void 0 ? void 0 : triggerState.close)\n }, state, ref);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n defaultClassName: 'react-aria-Menu',\n className: props.className,\n style: props.style,\n values: {\n isEmpty: state.collection.size === 0\n }\n });\n let emptyState = null;\n if (state.collection.size === 0 && props.renderEmptyState) emptyState = /*#__PURE__*/ (0, $kM2ZM$react).createElement(\"div\", {\n role: \"menuitem\",\n style: {\n display: 'contents'\n }\n }, props.renderEmptyState());\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $kM2ZM$FocusScope), null, /*#__PURE__*/ (0, $kM2ZM$react).createElement(\"div\", {\n ...(0, $kM2ZM$filterDOMProps)(props),\n ...menuProps,\n ...renderProps,\n ref: ref,\n slot: props.slot || undefined,\n \"data-empty\": state.collection.size === 0 || undefined,\n onScroll: props.onScroll\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $3674c52c6b3c5bce$export$24aad8519b95b41b,\n state\n ],\n [\n (0, $431f98aba6844401$export$6615d83f6de245ce),\n {\n elementType: 'div'\n }\n ],\n [\n (0, $7135fc7d473fd974$export$d40e14dec8b060a8),\n {\n name: 'MenuSection',\n render: $3674c52c6b3c5bce$var$MenuSectionInner\n }\n ],\n [\n $3674c52c6b3c5bce$var$SubmenuTriggerContext,\n {\n parentMenuRef: ref,\n shouldUseVirtualFocus: autocompleteMenuProps === null || autocompleteMenuProps === void 0 ? void 0 : autocompleteMenuProps.shouldUseVirtualFocus\n }\n ],\n [\n $3674c52c6b3c5bce$var$MenuItemContext,\n null\n ],\n [\n (0, $d2f53cda644affe3$export$65d2a03b8800d6e3),\n null\n ],\n [\n $3674c52c6b3c5bce$var$SelectionManagerContext,\n state.selectionManager\n ],\n /* Ensure root MenuTriggerState is defined, in case Menu is rendered outside a MenuTrigger. */ /* We assume the context can never change between defined and undefined. */ /* eslint-disable-next-line react-hooks/rules-of-hooks */ [\n $3674c52c6b3c5bce$export$795aec4671cbae19,\n triggerState !== null && triggerState !== void 0 ? triggerState : (0, $kM2ZM$useMenuTriggerState)({})\n ]\n ]\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement(CollectionRoot, {\n collection: state.collection,\n persistedKeys: (0, $7135fc7d473fd974$export$90e00781bc59d8f9)(state.selectionManager.focusedKey),\n scrollRef: ref\n })), emptyState));\n}\n// A subclass of SelectionManager that forwards focus-related properties to the parent,\n// but has its own local selection state.\nclass $3674c52c6b3c5bce$var$GroupSelectionManager extends (0, $kM2ZM$SelectionManager) {\n get focusedKey() {\n return this.parent.focusedKey;\n }\n get isFocused() {\n return this.parent.isFocused;\n }\n setFocusedKey(key, childFocusStrategy) {\n return this.parent.setFocusedKey(key, childFocusStrategy);\n }\n setFocused(isFocused) {\n this.parent.setFocused(isFocused);\n }\n get childFocusStrategy() {\n return this.parent.childFocusStrategy;\n }\n constructor(parent, state){\n super(parent.collection, state);\n this.parent = parent;\n }\n}\nfunction $3674c52c6b3c5bce$var$MenuSectionInner(props, ref, section, className = 'react-aria-MenuSection') {\n var _section_props, _section_props1;\n let state = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$export$24aad8519b95b41b);\n let { CollectionBranch: CollectionBranch } = (0, $kM2ZM$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));\n let [headingRef, heading] = (0, $64fa3d84918910a7$export$9d4c57ee4c6ffdd8)();\n var _section_props_arialabel;\n let { headingProps: headingProps, groupProps: groupProps } = (0, $kM2ZM$useMenuSection)({\n heading: heading,\n 'aria-label': (_section_props_arialabel = section.props['aria-label']) !== null && _section_props_arialabel !== void 0 ? _section_props_arialabel : undefined\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n defaultClassName: className,\n className: (_section_props = section.props) === null || _section_props === void 0 ? void 0 : _section_props.className,\n style: (_section_props1 = section.props) === null || _section_props1 === void 0 ? void 0 : _section_props1.style,\n values: {}\n });\n let parent = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$var$SelectionManagerContext);\n let selectionState = (0, $kM2ZM$useMultipleSelectionState)(props);\n let manager = props.selectionMode != null ? new $3674c52c6b3c5bce$var$GroupSelectionManager(parent, selectionState) : parent;\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement(\"section\", {\n ...(0, $kM2ZM$filterDOMProps)(props),\n ...groupProps,\n ...renderProps,\n ref: ref\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $72a5793c14baf454$export$e0e4026c12a8bdbb),\n {\n ...headingProps,\n ref: headingRef\n }\n ],\n [\n $3674c52c6b3c5bce$var$SelectionManagerContext,\n manager\n ]\n ]\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement(CollectionBranch, {\n collection: state.collection,\n parent: section\n })));\n}\nconst $3674c52c6b3c5bce$export$4b1545b4f2016d26 = /*#__PURE__*/ (0, $kM2ZM$createBranchComponent)('section', $3674c52c6b3c5bce$var$MenuSectionInner);\nconst $3674c52c6b3c5bce$var$MenuItemContext = /*#__PURE__*/ (0, $kM2ZM$createContext)(null);\nconst $3674c52c6b3c5bce$export$2ce376c2cc3355c8 = /*#__PURE__*/ (0, $kM2ZM$createLeafComponent)('item', function MenuItem(props, forwardedRef, item) {\n var _useSlottedContext;\n [props, forwardedRef] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, forwardedRef, $3674c52c6b3c5bce$var$MenuItemContext);\n let id = (_useSlottedContext = (0, $64fa3d84918910a7$export$fabf2dc03a41866e)($3674c52c6b3c5bce$var$MenuItemContext)) === null || _useSlottedContext === void 0 ? void 0 : _useSlottedContext.id;\n let state = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$export$24aad8519b95b41b);\n let ref = (0, $kM2ZM$useObjectRef)(forwardedRef);\n let selectionManager = (0, $kM2ZM$useContext)($3674c52c6b3c5bce$var$SelectionManagerContext);\n let { menuItemProps: menuItemProps, labelProps: labelProps, descriptionProps: descriptionProps, keyboardShortcutProps: keyboardShortcutProps, ...states } = (0, $kM2ZM$useMenuItem)({\n ...props,\n id: id,\n key: item.key,\n selectionManager: selectionManager\n }, state, ref);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $kM2ZM$useHover)({\n isDisabled: states.isDisabled\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n children: item.rendered,\n defaultClassName: 'react-aria-MenuItem',\n values: {\n ...states,\n isHovered: isHovered,\n isFocusVisible: states.isFocusVisible,\n selectionMode: selectionManager.selectionMode,\n selectionBehavior: selectionManager.selectionBehavior,\n hasSubmenu: !!props['aria-haspopup'],\n isOpen: props['aria-expanded'] === 'true'\n }\n });\n let ElementType = props.href ? 'a' : 'div';\n return /*#__PURE__*/ (0, $kM2ZM$react).createElement(ElementType, {\n ...(0, $kM2ZM$mergeProps)(menuItemProps, hoverProps),\n ...renderProps,\n ref: ref,\n \"data-disabled\": states.isDisabled || undefined,\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": states.isFocused || undefined,\n \"data-focus-visible\": states.isFocusVisible || undefined,\n \"data-pressed\": states.isPressed || undefined,\n \"data-selected\": states.isSelected || undefined,\n \"data-selection-mode\": selectionManager.selectionMode === 'none' ? undefined : selectionManager.selectionMode,\n \"data-has-submenu\": !!props['aria-haspopup'] || undefined,\n \"data-open\": props['aria-expanded'] === 'true' || undefined\n }, /*#__PURE__*/ (0, $kM2ZM$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $514c0188e459b4c0$export$9afb8bc826b033ea),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: labelProps,\n label: labelProps,\n description: descriptionProps\n }\n }\n ],\n [\n (0, $63df2425e2108aa8$export$744d98a3b8a94e1c),\n keyboardShortcutProps\n ]\n ]\n }, renderProps.children));\n});\n\n\nexport {$3674c52c6b3c5bce$export$c7e742effb1c51e2 as MenuContext, $3674c52c6b3c5bce$export$24aad8519b95b41b as MenuStateContext, $3674c52c6b3c5bce$export$795aec4671cbae19 as RootMenuTriggerStateContext, $3674c52c6b3c5bce$export$27d2ad3c5815583e as MenuTrigger, $3674c52c6b3c5bce$export$ecabc99eeffab7ca as SubmenuTrigger, $3674c52c6b3c5bce$export$d9b273488cd8ce6f as Menu, $3674c52c6b3c5bce$export$4b1545b4f2016d26 as MenuSection, $3674c52c6b3c5bce$export$2ce376c2cc3355c8 as MenuItem};\n//# sourceMappingURL=Menu.module.js.map\n","import {ButtonContext as $d2b4bc8c273e7be6$export$24d547caef80ccd1} from \"./Button.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {HeadingContext as $4e85f108e88277b8$export$d688439359537581} from \"./RSPContexts.mjs\";\nimport {PopoverContext as $07b14b47974efb58$export$9b9a0cd73afb7ca4} from \"./Popover.mjs\";\nimport {RootMenuTriggerStateContext as $3674c52c6b3c5bce$export$795aec4671cbae19} from \"./Menu.mjs\";\nimport {useOverlayTrigger as $6IYYA$useOverlayTrigger, useId as $6IYYA$useId, useDialog as $6IYYA$useDialog} from \"react-aria\";\nimport {filterDOMProps as $6IYYA$filterDOMProps} from \"@react-aria/utils\";\nimport {useMenuTriggerState as $6IYYA$useMenuTriggerState} from \"react-stately\";\nimport {PressResponder as $6IYYA$PressResponder} from \"@react-aria/interactions\";\nimport $6IYYA$react, {createContext as $6IYYA$createContext, useRef as $6IYYA$useRef, forwardRef as $6IYYA$forwardRef, useContext as $6IYYA$useContext} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\nconst $de32f1b87079253c$export$8b93a07348a7730c = /*#__PURE__*/ (0, $6IYYA$createContext)(null);\nconst $de32f1b87079253c$export$d2f961adcb0afbe = /*#__PURE__*/ (0, $6IYYA$createContext)(null);\nfunction $de32f1b87079253c$export$2e1e1122cf0cba88(props) {\n // Use useMenuTriggerState instead of useOverlayTriggerState in case a menu is embedded in the dialog.\n // This is needed to handle submenus.\n let state = (0, $6IYYA$useMenuTriggerState)(props);\n let buttonRef = (0, $6IYYA$useRef)(null);\n let { triggerProps: triggerProps, overlayProps: overlayProps } = (0, $6IYYA$useOverlayTrigger)({\n type: 'dialog'\n }, state, buttonRef);\n // Label dialog by the trigger as a fallback if there is no title slot.\n // This is done in RAC instead of hooks because otherwise we cannot distinguish\n // between context and props. Normally aria-labelledby overrides the title\n // but when sent by context we want the title to win.\n triggerProps.id = (0, $6IYYA$useId)();\n overlayProps['aria-labelledby'] = triggerProps.id;\n return /*#__PURE__*/ (0, $6IYYA$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $de32f1b87079253c$export$d2f961adcb0afbe,\n state\n ],\n [\n (0, $3674c52c6b3c5bce$export$795aec4671cbae19),\n state\n ],\n [\n $de32f1b87079253c$export$8b93a07348a7730c,\n overlayProps\n ],\n [\n (0, $07b14b47974efb58$export$9b9a0cd73afb7ca4),\n {\n trigger: 'DialogTrigger',\n triggerRef: buttonRef,\n 'aria-labelledby': overlayProps['aria-labelledby']\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $6IYYA$react).createElement((0, $6IYYA$PressResponder), {\n ...triggerProps,\n ref: buttonRef,\n isPressed: state.isOpen\n }, props.children));\n}\nconst $de32f1b87079253c$export$3ddf2d174ce01153 = /*#__PURE__*/ (0, $6IYYA$forwardRef)(function Dialog(props, ref) {\n let originalAriaLabelledby = props['aria-labelledby'];\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $de32f1b87079253c$export$8b93a07348a7730c);\n let { dialogProps: dialogProps, titleProps: titleProps } = (0, $6IYYA$useDialog)({\n ...props,\n // Only pass aria-labelledby from props, not context.\n // Context is used as a fallback below.\n 'aria-labelledby': originalAriaLabelledby\n }, ref);\n let state = (0, $6IYYA$useContext)($de32f1b87079253c$export$d2f961adcb0afbe);\n if (!dialogProps['aria-label'] && !dialogProps['aria-labelledby']) {\n // If aria-labelledby exists on props, we know it came from context.\n // Use that as a fallback in case there is no title slot.\n if (props['aria-labelledby']) dialogProps['aria-labelledby'] = props['aria-labelledby'];\n else if (process.env.NODE_ENV !== 'production') console.warn('If a Dialog does not contain a <Heading slot=\"title\">, it must have an aria-label or aria-labelledby attribute for accessibility.');\n }\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n defaultClassName: 'react-aria-Dialog',\n className: props.className,\n style: props.style,\n children: props.children,\n values: {\n close: (state === null || state === void 0 ? void 0 : state.close) || (()=>{})\n }\n });\n return /*#__PURE__*/ (0, $6IYYA$react).createElement(\"section\", {\n ...(0, $6IYYA$filterDOMProps)(props),\n ...dialogProps,\n ...renderProps,\n ref: ref,\n slot: props.slot || undefined\n }, /*#__PURE__*/ (0, $6IYYA$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $4e85f108e88277b8$export$d688439359537581),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n title: {\n ...titleProps,\n level: 2\n }\n }\n }\n ],\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n close: {\n onPress: ()=>state === null || state === void 0 ? void 0 : state.close()\n }\n }\n }\n ]\n ]\n }, renderProps.children));\n});\n\n\nexport {$de32f1b87079253c$export$8b93a07348a7730c as DialogContext, $de32f1b87079253c$export$d2f961adcb0afbe as OverlayTriggerStateContext, $de32f1b87079253c$export$2e1e1122cf0cba88 as DialogTrigger, $de32f1b87079253c$export$3ddf2d174ce01153 as Dialog};\n//# sourceMappingURL=Dialog.module.js.map\n","import {Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {OverlayArrowContext as $44f671af83e7d9e0$export$2de4954e8ae13b9f} from \"./OverlayArrow.mjs\";\nimport {useTooltipTrigger as $cCslV$useTooltipTrigger, OverlayContainer as $cCslV$OverlayContainer, useOverlayPosition as $cCslV$useOverlayPosition, mergeProps as $cCslV$mergeProps, useTooltip as $cCslV$useTooltip} from \"react-aria\";\nimport {FocusableProvider as $cCslV$FocusableProvider} from \"@react-aria/focus\";\nimport {useTooltipTriggerState as $cCslV$useTooltipTriggerState} from \"react-stately\";\nimport $cCslV$react, {createContext as $cCslV$createContext, useRef as $cCslV$useRef, forwardRef as $cCslV$forwardRef, useContext as $cCslV$useContext, useState as $cCslV$useState} from \"react\";\nimport {useExitAnimation as $cCslV$useExitAnimation, useLayoutEffect as $cCslV$useLayoutEffect, useEnterAnimation as $cCslV$useEnterAnimation} from \"@react-aria/utils\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\nconst $4e3b923658d69c60$export$7a7623236eec67fa = /*#__PURE__*/ (0, $cCslV$createContext)(null);\nconst $4e3b923658d69c60$export$39ae08fa83328b12 = /*#__PURE__*/ (0, $cCslV$createContext)(null);\nfunction $4e3b923658d69c60$export$8c610744efcf8a1d(props) {\n let state = (0, $cCslV$useTooltipTriggerState)(props);\n let ref = (0, $cCslV$useRef)(null);\n let { triggerProps: triggerProps, tooltipProps: tooltipProps } = (0, $cCslV$useTooltipTrigger)(props, state, ref);\n return /*#__PURE__*/ (0, $cCslV$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $4e3b923658d69c60$export$7a7623236eec67fa,\n state\n ],\n [\n $4e3b923658d69c60$export$39ae08fa83328b12,\n {\n ...tooltipProps,\n triggerRef: ref\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $cCslV$react).createElement((0, $cCslV$FocusableProvider), {\n ...triggerProps,\n ref: ref\n }, props.children));\n}\nconst $4e3b923658d69c60$export$28c660c63b792dea = /*#__PURE__*/ (0, $cCslV$forwardRef)(function Tooltip({ UNSTABLE_portalContainer: UNSTABLE_portalContainer, ...props }, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $4e3b923658d69c60$export$39ae08fa83328b12);\n let contextState = (0, $cCslV$useContext)($4e3b923658d69c60$export$7a7623236eec67fa);\n let localState = (0, $cCslV$useTooltipTriggerState)(props);\n let state = props.isOpen != null || props.defaultOpen != null || !contextState ? localState : contextState;\n let isExiting = (0, $cCslV$useExitAnimation)(ref, state.isOpen) || props.isExiting || false;\n if (!state.isOpen && !isExiting) return null;\n return /*#__PURE__*/ (0, $cCslV$react).createElement((0, $cCslV$OverlayContainer), {\n portalContainer: UNSTABLE_portalContainer\n }, /*#__PURE__*/ (0, $cCslV$react).createElement($4e3b923658d69c60$var$TooltipInner, {\n ...props,\n tooltipRef: ref,\n isExiting: isExiting\n }));\n});\nfunction $4e3b923658d69c60$var$TooltipInner(props) {\n let state = (0, $cCslV$useContext)($4e3b923658d69c60$export$7a7623236eec67fa);\n // Calculate the arrow size internally\n // Referenced from: packages/@react-spectrum/tooltip/src/TooltipTrigger.tsx\n let arrowRef = (0, $cCslV$useRef)(null);\n let [arrowWidth, setArrowWidth] = (0, $cCslV$useState)(0);\n (0, $cCslV$useLayoutEffect)(()=>{\n if (arrowRef.current && state.isOpen) setArrowWidth(arrowRef.current.getBoundingClientRect().width);\n }, [\n state.isOpen,\n arrowRef\n ]);\n let { overlayProps: overlayProps, arrowProps: arrowProps, placement: placement } = (0, $cCslV$useOverlayPosition)({\n placement: props.placement || 'top',\n targetRef: props.triggerRef,\n overlayRef: props.tooltipRef,\n offset: props.offset,\n crossOffset: props.crossOffset,\n isOpen: state.isOpen,\n arrowSize: arrowWidth,\n arrowBoundaryOffset: props.arrowBoundaryOffset,\n shouldFlip: props.shouldFlip,\n onClose: ()=>state.close(true)\n });\n let isEntering = (0, $cCslV$useEnterAnimation)(props.tooltipRef, !!placement) || props.isEntering || false;\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-Tooltip',\n values: {\n placement: placement,\n isEntering: isEntering,\n isExiting: props.isExiting,\n state: state\n }\n });\n props = (0, $cCslV$mergeProps)(props, overlayProps);\n let { tooltipProps: tooltipProps } = (0, $cCslV$useTooltip)(props, state);\n return /*#__PURE__*/ (0, $cCslV$react).createElement(\"div\", {\n ...tooltipProps,\n ref: props.tooltipRef,\n ...renderProps,\n style: {\n ...overlayProps.style,\n ...renderProps.style\n },\n \"data-placement\": placement !== null && placement !== void 0 ? placement : undefined,\n \"data-entering\": isEntering || undefined,\n \"data-exiting\": props.isExiting || undefined\n }, /*#__PURE__*/ (0, $cCslV$react).createElement((0, $44f671af83e7d9e0$export$2de4954e8ae13b9f).Provider, {\n value: {\n ...arrowProps,\n placement: placement,\n ref: arrowRef\n }\n }, renderProps.children));\n}\n\n\nexport {$4e3b923658d69c60$export$7a7623236eec67fa as TooltipTriggerStateContext, $4e3b923658d69c60$export$39ae08fa83328b12 as TooltipContext, $4e3b923658d69c60$export$8c610744efcf8a1d as TooltipTrigger, $4e3b923658d69c60$export$28c660c63b792dea as Tooltip};\n//# sourceMappingURL=Tooltip.module.js.map\n","import {useCallback as $hnMvi$useCallback} from \"react\";\nimport {useControlledState as $hnMvi$useControlledState} from \"@react-stately/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $fc909762b330b746$export$61c6a8c84e605fb6(props) {\n let [isOpen, setOpen] = (0, $hnMvi$useControlledState)(props.isOpen, props.defaultOpen || false, props.onOpenChange);\n const open = (0, $hnMvi$useCallback)(()=>{\n setOpen(true);\n }, [\n setOpen\n ]);\n const close = (0, $hnMvi$useCallback)(()=>{\n setOpen(false);\n }, [\n setOpen\n ]);\n const toggle = (0, $hnMvi$useCallback)(()=>{\n setOpen(!isOpen);\n }, [\n setOpen,\n isOpen\n ]);\n return {\n isOpen: isOpen,\n setOpen: setOpen,\n open: open,\n close: close,\n toggle: toggle\n };\n}\n\n\nexport {$fc909762b330b746$export$61c6a8c84e605fb6 as useOverlayTriggerState};\n//# sourceMappingURL=useOverlayTriggerState.module.js.map\n","import {useOverlayTriggerState as $8bn9m$useOverlayTriggerState} from \"@react-stately/overlays\";\nimport {useState as $8bn9m$useState} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $a28c903ee9ad8dc5$export$79fefeb1c2091ac3(props) {\n let overlayTriggerState = (0, $8bn9m$useOverlayTriggerState)(props);\n let [focusStrategy, setFocusStrategy] = (0, $8bn9m$useState)(null);\n let [expandedKeysStack, setExpandedKeysStack] = (0, $8bn9m$useState)([]);\n let closeAll = ()=>{\n setExpandedKeysStack([]);\n overlayTriggerState.close();\n };\n let openSubmenu = (triggerKey, level)=>{\n setExpandedKeysStack((oldStack)=>{\n if (level > oldStack.length) return oldStack;\n return [\n ...oldStack.slice(0, level),\n triggerKey\n ];\n });\n };\n let closeSubmenu = (triggerKey, level)=>{\n setExpandedKeysStack((oldStack)=>{\n let key = oldStack[level];\n if (key === triggerKey) return oldStack.slice(0, level);\n else return oldStack;\n });\n };\n return {\n focusStrategy: focusStrategy,\n ...overlayTriggerState,\n open (focusStrategy = null) {\n setFocusStrategy(focusStrategy);\n overlayTriggerState.open();\n },\n toggle (focusStrategy = null) {\n setFocusStrategy(focusStrategy);\n overlayTriggerState.toggle();\n },\n close () {\n closeAll();\n },\n expandedKeysStack: expandedKeysStack,\n openSubmenu: openSubmenu,\n closeSubmenu: closeSubmenu\n };\n}\n\n\nexport {$a28c903ee9ad8dc5$export$79fefeb1c2091ac3 as useMenuTriggerState};\n//# sourceMappingURL=useMenuTriggerState.module.js.map\n","import {\r\n Menu as AriaMenu,\r\n Header as AriaMenuHeader,\r\n MenuItem as AriaMenuItem,\r\n MenuItemProps as AriaMenuItemProps,\r\n Popover as AriaPopover,\r\n SubmenuTrigger as AriaSubmenuTrigger,\r\n MenuSection,\r\n Selection,\r\n Text,\r\n} from \"react-aria-components\";\r\n\r\nimport { csx } from \"../../utils\";\r\nimport { ActionMenuAction } from \"../ActionMenu/ActionMenu\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\n\r\ninterface PopoverMenuProps {\r\n /** The keys of the disabled items */\r\n disabledKeys?: string[];\r\n\r\n /** Whether the menu is open */\r\n isOpen: boolean;\r\n\r\n /** Array of menu actions/items to display\r\n * - type {@link ActionMenuAction}[]\r\n */\r\n items: ActionMenuAction[];\r\n\r\n /** Callback when a menu item is selected\r\n * - @prop keys {@link Selection}\r\n */\r\n onSelectionChange?: (keys: Selection) => void;\r\n\r\n /** Callback when the menu is opened or closed */\r\n setIsOpen: (isOpen: boolean) => void;\r\n\r\n /** The key of the selected item */\r\n selectedKey?: string;\r\n\r\n /** Title of the parent menu */\r\n title?: string;\r\n\r\n /** Reference to the trigger button */\r\n triggerRef: React.RefObject<HTMLButtonElement>;\r\n}\r\n\r\n/**\r\n * A popover menu component that displays a list of items.\r\n *\r\n * API:\r\n * - {@link PopoverMenuProps}\r\n */\r\nexport function PopoverMenu({\r\n items,\r\n isOpen,\r\n setIsOpen,\r\n onSelectionChange,\r\n selectedKey,\r\n disabledKeys,\r\n title,\r\n triggerRef,\r\n}: PopoverMenuProps) {\r\n const { className: themeClass, style: themeStyle } = useTheme();\r\n\r\n return (\r\n <AriaPopover\r\n className={csx(\"proton-Popover\", themeClass)}\r\n style={themeStyle as React.CSSProperties}\r\n triggerRef={triggerRef}\r\n isOpen={isOpen}\r\n onOpenChange={setIsOpen}\r\n >\r\n <AriaMenu\r\n items={items}\r\n className={csx(\"proton-ListBox\", \"proton-MenuTrigger__menu\")}\r\n selectionMode=\"single\"\r\n onSelectionChange={onSelectionChange}\r\n selectedKeys={new Set([selectedKey])}\r\n disabledKeys={disabledKeys}\r\n onClose={() => setIsOpen(false)}\r\n autoFocus\r\n >\r\n <MenuSection>\r\n {title && (\r\n <AriaMenuHeader className=\"proton-MenuTrigger__menu-header\">\r\n {title}\r\n </AriaMenuHeader>\r\n )}\r\n\r\n {items.map((item) => {\r\n return renderSubmenu({\r\n item,\r\n className: themeClass,\r\n style: themeStyle as React.CSSProperties,\r\n disabledKeys,\r\n onClose: () => setIsOpen(false),\r\n });\r\n })}\r\n </MenuSection>\r\n </AriaMenu>\r\n </AriaPopover>\r\n );\r\n}\r\n\r\nfunction renderSubmenu(props: {\r\n item: ActionMenuAction;\r\n className: string;\r\n style: React.CSSProperties;\r\n disabledKeys?: string[];\r\n onClose?: () => void;\r\n}) {\r\n const { item, className, style, disabledKeys, onClose } = props;\r\n let textValue = item.label?.toString() || \"\";\r\n if (item.children) {\r\n return (\r\n <AriaSubmenuTrigger key={item.key}>\r\n <MenuItem textValue={textValue}>{item.label}</MenuItem>\r\n <AriaPopover className={csx(\"proton-Popover\", className)} style={style}>\r\n <AriaMenu\r\n items={item.children}\r\n className=\"proton-ListBox proton-MenuTrigger__menu\"\r\n disabledKeys={disabledKeys}\r\n onClose={onClose}\r\n >\r\n {(child) =>\r\n renderSubmenu({\r\n ...props,\r\n item: child as ActionMenuAction,\r\n })\r\n }\r\n </AriaMenu>\r\n </AriaPopover>\r\n </AriaSubmenuTrigger>\r\n );\r\n } else {\r\n return (\r\n <MenuItem\r\n textValue={textValue}\r\n onAction={() => {\r\n item.onAction?.(item.key);\r\n onClose?.();\r\n }}\r\n key={item.key}\r\n isDisabled={disabledKeys?.includes(item.key)}\r\n id={item.key}\r\n >\r\n <Text slot=\"label\">{item.label}</Text>\r\n <Text slot=\"description\">{item.description}</Text>\r\n </MenuItem>\r\n );\r\n }\r\n}\r\n\r\nfunction MenuItem(props: AriaMenuItemProps) {\r\n return (\r\n <AriaMenuItem\r\n {...props}\r\n className={({ isFocused, isOpen }) =>\r\n csx(\r\n \"proton-ListBox__item proton-MenuTrigger__menu-item\",\r\n isFocused && \"focused\",\r\n isOpen && \"open\"\r\n )\r\n }\r\n >\r\n {({ hasSubmenu }) => (\r\n <>\r\n {props.children}\r\n {hasSubmenu && (\r\n <svg className=\"proton-MenuTrigger__chevron\" viewBox=\"0 0 256 256\">\r\n <path\r\n fill=\"currentColor\"\r\n d=\"m184.49 136.49l-80 80a12 12 0 0 1-17-17L159 128L87.51 56.49a12 12 0 1 1 17-17l80 80a12 12 0 0 1-.02 17\"\r\n />\r\n </svg>\r\n )}\r\n </>\r\n )}\r\n </AriaMenuItem>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport { ReactNode, useEffect, useMemo, useRef } from \"react\";\r\n\r\nimport { Button as AriaButton, Selection } from \"react-aria-components\";\r\nimport { BREAKPOINTS } from \"../../constants\";\r\nimport { useBreakpoint } from \"../../hooks/useBreakpoint\";\r\nimport { ActionMenu, ActionMenuAction } from \"../ActionMenu/ActionMenu\";\r\n\r\nimport { csx } from \"../../utils\";\r\n\r\nimport \"./MenuTrigger.css\";\r\n\r\nimport { useMenuTrigger } from \"@react-aria/menu\";\r\nimport { useMenuTriggerState } from \"@react-stately/menu\";\r\nimport { PopoverMenu } from \"./PopoverMenu\";\r\n\r\ninterface TriggerProps {\r\n disabled?: boolean;\r\n isOpen?: boolean;\r\n setIsOpen?: (isOpen: boolean) => void;\r\n triggerRef: React.RefObject<HTMLButtonElement>;\r\n}\r\n\r\nexport interface MenuProps {\r\n /** Custom trigger component. If not provided, defaults to ellipsis icon.\r\n * - @prop triggerProps {@link TriggerProps}\r\n */\r\n renderTrigger?: (triggerProps: TriggerProps) => ReactNode;\r\n\r\n /** Size of the trigger icon\r\n * @default 24\r\n */\r\n size?: number;\r\n\r\n /** Title of the parent menu */\r\n title?: string;\r\n\r\n /** Array of menu actions/items to display\r\n * - type {@link ActionMenuAction}[]\r\n */\r\n items: ActionMenuAction[];\r\n\r\n /** Whether the menu is disabled\r\n * @default false\r\n */\r\n disabled?: boolean;\r\n\r\n /** Callback when menu closes */\r\n onClose?: () => void;\r\n\r\n /** Test ID for the trigger component */\r\n triggerTestId?: string;\r\n\r\n /** Test ID for the menu */\r\n menuTestId?: string;\r\n\r\n /** Callback when a menu item is selected */\r\n onSelectionChange?: (key: string) => void;\r\n\r\n /** The key of the selected item */\r\n selectedKey?: string;\r\n\r\n /** The keys of the disabled items */\r\n disabledKeys?: string[];\r\n}\r\n\r\n/**\r\n * A component that displays either a popover menu or an action menu\r\n * depending on the screen size when the menu trigger is pressed.\r\n *\r\n * API:\r\n * - {@link MenuProps}\r\n */\r\nexport function MenuTrigger({\r\n renderTrigger,\r\n size = 24,\r\n title,\r\n items,\r\n disabled,\r\n onClose,\r\n triggerTestId = \"MenuTrigger-Trigger\",\r\n menuTestId,\r\n onSelectionChange,\r\n selectedKey,\r\n disabledKeys,\r\n}: MenuProps) {\r\n const menuItems = useMemo(\r\n () => items.map((item) => ({ ...item, id: item.key })),\r\n [items]\r\n );\r\n const isMobile = useBreakpoint(BREAKPOINTS.SMALL);\r\n\r\n const menuState = useMenuTriggerState({});\r\n const { isOpen, setOpen: setIsOpen } = menuState;\r\n const triggerRef = useRef(null);\r\n const { menuTriggerProps, menuProps } = useMenuTrigger<ActionMenuAction>(\r\n {},\r\n menuState,\r\n triggerRef\r\n );\r\n\r\n function handleSingleSelectionChange(key: Selection) {\r\n const nextKey = Array.from(key)[0];\r\n if (nextKey) {\r\n onSelectionChange?.(nextKey as string);\r\n }\r\n }\r\n\r\n const defaultTrigger = (\r\n <AriaButton\r\n {...menuTriggerProps}\r\n data-testid={triggerTestId}\r\n isDisabled={disabled}\r\n className={csx(\"proton-MenuTrigger__button\")}\r\n ref={triggerRef}\r\n >\r\n <EllipsisIcon size={size} />\r\n </AriaButton>\r\n );\r\n\r\n const TriggerComponent = renderTrigger\r\n ? renderTrigger({\r\n isOpen,\r\n setIsOpen,\r\n disabled,\r\n triggerRef,\r\n })\r\n : defaultTrigger;\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (isOpen) {\r\n onClose?.();\r\n }\r\n };\r\n }, [isOpen, onClose]);\r\n\r\n return (\r\n <>\r\n {TriggerComponent}\r\n\r\n {isOpen && isMobile && (\r\n <ActionMenu\r\n actions={menuItems}\r\n title={title}\r\n isOpen={isOpen}\r\n onClose={() => setIsOpen(false)}\r\n showCancel\r\n data-testid={menuTestId}\r\n selectionMode=\"single\"\r\n onSelectionChange={handleSingleSelectionChange}\r\n selectedKeys={selectedKey ? [selectedKey] : undefined}\r\n disabledKeys={disabledKeys}\r\n />\r\n )}\r\n\r\n {isOpen && !isMobile && (\r\n <PopoverMenu\r\n isOpen={isOpen}\r\n setIsOpen={setIsOpen}\r\n items={menuItems}\r\n selectedKey={selectedKey}\r\n disabledKeys={disabledKeys}\r\n title={title}\r\n onSelectionChange={handleSingleSelectionChange}\r\n triggerRef={triggerRef}\r\n />\r\n )}\r\n </>\r\n );\r\n}\r\n\r\nconst EllipsisIcon = ({ size }: { size: number }) => (\r\n <svg viewBox=\"0 0 24 24\" width={size} height={size}>\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M4 14c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm8 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm8 0c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z\"\r\n />\r\n </svg>\r\n);\r\n","import React from \"react\";\r\nimport { Button, type ButtonProps } from \"../Button/Button\";\r\nimport { Icon } from \"../Icon/Icon\";\r\nimport { MenuTrigger } from \"../Menu/MenuTrigger\";\r\nimport type { ActionMenuAction } from \"../ActionMenu/ActionMenu\";\r\n\r\nimport \"./ButtonWithSelect.css\";\r\n\r\nconst FIXED_TRIGGER_WIDTH = 44;\r\n\r\ninterface ButtonWithSelectProps extends ButtonProps {\r\n /**\r\n * The default value of the select menu.\r\n */\r\n defaultValue?: string;\r\n /**\r\n * The keys of the disabled items.\r\n */\r\n disabledKeys?: string[];\r\n /**\r\n * The items to display in the select menu.\r\n * - type {@link ActionMenuAction}\r\n */\r\n items: ActionMenuAction[];\r\n /**\r\n * The callback function to call when the selection changes.\r\n */\r\n onSelectionChange?: (key: string) => void;\r\n /**\r\n * The key of the selected item.\r\n */\r\n selectedKey?: string;\r\n}\r\n\r\n/**\r\n * A button with a select menu.\r\n *\r\n * API:\r\n * - {@link ButtonWithSelectProps}\r\n * - extends {@link ButtonProps}\r\n */\r\nexport function ButtonWithSelect({\r\n items,\r\n defaultValue,\r\n children,\r\n onSelectionChange,\r\n disabledKeys,\r\n selectedKey,\r\n icon,\r\n variant,\r\n fullWidth,\r\n onPress,\r\n ...buttonProps\r\n}: ButtonWithSelectProps) {\r\n const textShift = fullWidth ? FIXED_TRIGGER_WIDTH / 2 : 0;\r\n\r\n return (\r\n <div className=\"proton-ButtonWithSelect\">\r\n <div\r\n className=\"proton-ButtonWithSelect__button\"\r\n style={\r\n {\r\n \"--proton-button-text-shift\": `${textShift}px`,\r\n \"--flex\": fullWidth ? 1 : 0,\r\n } as React.CSSProperties\r\n }\r\n >\r\n <Button\r\n {...buttonProps}\r\n onPress={onPress}\r\n icon={icon}\r\n fullWidth={fullWidth}\r\n variant={variant}\r\n data-testid=\"ButtonWithSelect-Button\"\r\n >\r\n {children}\r\n </Button>\r\n </div>\r\n\r\n <MenuTrigger\r\n items={items}\r\n disabled={buttonProps.isDisabled}\r\n disabledKeys={disabledKeys}\r\n onSelectionChange={onSelectionChange}\r\n selectedKey={selectedKey}\r\n renderTrigger={({ triggerRef, isOpen, setIsOpen }) => {\r\n return (\r\n <TriggerButton\r\n {...buttonProps}\r\n variant={variant}\r\n ref={triggerRef}\r\n onPress={() => setIsOpen(!isOpen)}\r\n />\r\n );\r\n }}\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nButtonWithSelect.displayName = \"ProtonUIButtonWithSelect\";\r\n\r\nconst TriggerButton = React.forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n ButtonProps\r\n>((props, ref) => {\r\n return (\r\n <div\r\n className=\"proton-ButtonWithSelect__trigger\"\r\n style={\r\n {\r\n \"--trigger-width\": `${FIXED_TRIGGER_WIDTH}px`,\r\n } as React.CSSProperties\r\n }\r\n >\r\n <Button {...props} data-testid=\"ButtonWithSelect-Trigger\" ref={ref}>\r\n <div className=\"proton-ButtonWithSelect__trigger-content\">\r\n <Icon id=\"chevron-down\" size={16} />\r\n </div>\r\n </Button>\r\n </div>\r\n );\r\n});\r\n\r\nTriggerButton.displayName = \"ProtonUIButtonWithSelectTrigger\";\r\n","import { AriaAttributes, ReactElement, ReactNode } from \"react\";\r\n\r\n/*\r\n Compound reference components used to build the table collection.\r\n They are not rendered, but used to parse the table structure.\r\n*/\r\n\r\ntype TableColumnElement = ReactElement<TableColumnProps, typeof TableColumn>;\r\ntype TableRowElement = ReactElement<TableRowProps, typeof TableRow>;\r\ntype TableCellElement = ReactElement<TableCellProps, typeof TableCell>;\r\n\r\nexport interface TableHeaderProps {\r\n children: TableColumnElement | TableColumnElement[];\r\n isHidden?: boolean;\r\n}\r\n\r\nexport interface TableColumnProps {\r\n id: string;\r\n children: ReactNode;\r\n \"aria-sort\"?: AriaAttributes[\"aria-sort\"];\r\n}\r\n\r\nexport interface TableBodyProps {\r\n children: TableRowElement | TableRowElement[];\r\n}\r\n\r\nexport interface TableRowProps {\r\n key?: string | number;\r\n children: TableCellElement | TableCellElement[];\r\n onClick?: () => void;\r\n}\r\n\r\nexport interface TableCellProps {\r\n columnKey?: string;\r\n children?: ReactNode;\r\n colSpan?: number;\r\n}\r\n\r\n// Type-safe component definitions that enforce proper children\r\nexport const TableHeader = ({ ...props }: TableHeaderProps) => {\r\n return null; // This is just a marker component for parsing\r\n};\r\n\r\nexport const TableColumn = ({ ...props }: TableColumnProps) => {\r\n return null; // This is just a marker component for parsing\r\n};\r\n\r\nexport const TableBody = ({ ...props }: TableBodyProps) => {\r\n return null; // This is just a marker component for parsing\r\n};\r\n\r\nexport const TableRow = ({ ...props }: TableRowProps) => {\r\n return null; // This is just a marker component for parsing\r\n};\r\n\r\nexport const TableCell = ({ ...props }: TableCellProps) => {\r\n return null; // This is just a marker component for parsing\r\n};\r\n","import {\r\n Children,\r\n isValidElement,\r\n ReactElement,\r\n ReactNode,\r\n ComponentType,\r\n} from \"react\";\r\n\r\nimport {\r\n TableHeader,\r\n TableColumn as TableColumnComp,\r\n TableBody,\r\n TableRow as TableRowComp,\r\n TableCell as TableCellComp,\r\n type TableHeaderProps,\r\n type TableColumnProps,\r\n type TableBodyProps,\r\n type TableRowProps,\r\n type TableCellProps,\r\n} from \"./CompoundComponents\";\r\nimport type {\r\n TableColumnData,\r\n TableData,\r\n TableRowData,\r\n TableCellData,\r\n} from \"../Table\";\r\n\r\nfunction isComponentType(\r\n element: ReactElement,\r\n componentType: ComponentType<any>\r\n): boolean {\r\n return element.type === componentType;\r\n}\r\n\r\n/**\r\n * Parses JSX table structure into collection data format\r\n */\r\nexport function parseTableChildren(children: ReactNode): TableData {\r\n const columns: TableColumnData[] = [];\r\n const rows: TableRowData[] = [];\r\n\r\n Children.forEach(children, (child) => {\r\n if (!isValidElement(child)) return;\r\n\r\n // Parse columns from header\r\n if (isComponentType(child, TableHeader)) {\r\n const headerProps = child.props as TableHeaderProps;\r\n\r\n Children.forEach(headerProps.children, (columnChild) => {\r\n if (\r\n isValidElement(columnChild) &&\r\n isComponentType(columnChild, TableColumnComp)\r\n ) {\r\n const columnProps = columnChild.props as TableColumnProps;\r\n columns.push({\r\n key: columnProps.id,\r\n header: columnProps.children,\r\n isHidden: headerProps.isHidden || false,\r\n ariaSort: columnProps[\"aria-sort\"],\r\n });\r\n }\r\n });\r\n }\r\n\r\n // Parse rows from body\r\n if (isComponentType(child, TableBody)) {\r\n const bodyProps = child.props as TableBodyProps;\r\n Children.forEach(bodyProps.children, (rowChild) => {\r\n if (\r\n isValidElement(rowChild) &&\r\n isComponentType(rowChild, TableRowComp)\r\n ) {\r\n const rowProps = rowChild.props as TableRowProps;\r\n const cells: TableCellData[] = [];\r\n\r\n let cellIndex = 0;\r\n Children.forEach(rowProps.children, (cellChild) => {\r\n if (\r\n isValidElement(cellChild) &&\r\n isComponentType(cellChild, TableCellComp)\r\n ) {\r\n const cellProps = cellChild.props as TableCellProps;\r\n\r\n // Map cell to column by index if no explicit columnKey\r\n const columnKey = cellProps.columnKey || columns[cellIndex]?.key;\r\n\r\n if (columnKey) {\r\n cells.push({\r\n columnKey,\r\n value: cellProps.children,\r\n colSpan: cellProps.colSpan,\r\n });\r\n }\r\n cellIndex++;\r\n }\r\n });\r\n\r\n rows.push({\r\n key:\r\n (rowChild.key as string) || rowProps.key || String(rows.length),\r\n cells,\r\n onClick: rowProps.onClick,\r\n });\r\n }\r\n });\r\n }\r\n });\r\n\r\n return { columns, rows };\r\n}\r\n","import { useMemo } from \"react\";\r\nimport type { TableData, TableRowData } from \"../Table\";\r\n\r\n/**\r\n * Hook for managing table data structure and providing navigation methods\r\n */\r\nexport function useTableCollection(data: TableData) {\r\n const keyToIndexMap = useMemo(() => {\r\n const map = new Map<string | number, number>();\r\n data.rows.forEach((row, index) => {\r\n map.set(row.key, index);\r\n });\r\n return map;\r\n }, [data.rows]);\r\n\r\n const getItemByKey = useMemo(\r\n () =>\r\n (key: string | number): TableRowData | null => {\r\n const index = keyToIndexMap.get(key);\r\n if (index === undefined) return null;\r\n return data.rows[index];\r\n },\r\n [data.rows, keyToIndexMap]\r\n );\r\n\r\n const getItemAfter = useMemo(\r\n () =>\r\n (key: string | number): TableRowData | null => {\r\n const index = keyToIndexMap.get(key);\r\n if (index === undefined || index >= data.rows.length - 1) return null;\r\n return data.rows[index + 1];\r\n },\r\n [data.rows, keyToIndexMap]\r\n );\r\n\r\n const getItemBefore = useMemo(\r\n () =>\r\n (key: string | number): TableRowData | null => {\r\n const index = keyToIndexMap.get(key);\r\n if (index === undefined || index <= 0) return null;\r\n return data.rows[index - 1];\r\n },\r\n [data.rows, keyToIndexMap]\r\n );\r\n\r\n const getItemIndex = useMemo(\r\n () =>\r\n (key: string | number): number => {\r\n return keyToIndexMap.get(key) ?? -1;\r\n },\r\n [keyToIndexMap]\r\n );\r\n\r\n // Computed values\r\n const firstItem = useMemo(() => data.rows[0] || null, [data.rows]);\r\n const lastItem = useMemo(\r\n () => data.rows[data.rows.length - 1] || null,\r\n [data.rows]\r\n );\r\n const size = data.rows.length;\r\n\r\n // ARIA helpers\r\n const isHeaderHidden = data.columns[0]?.isHidden || false;\r\n const hasVisibleHeader = !isHeaderHidden;\r\n\r\n const getTotalRowCount = useMemo(() => {\r\n return size + (hasVisibleHeader ? 1 : 0);\r\n }, [size, hasVisibleHeader]);\r\n\r\n const getRowAriaIndex = useMemo(\r\n () => (rowIndex: number) => {\r\n return rowIndex + (hasVisibleHeader ? 2 : 1); // +2 if header exists and visible, +1 if not\r\n },\r\n [hasVisibleHeader]\r\n );\r\n\r\n return {\r\n // Data\r\n columns: data.columns,\r\n rows: data.rows,\r\n size,\r\n firstItem,\r\n lastItem,\r\n\r\n // ARIA helpers\r\n isHeaderHidden,\r\n hasVisibleHeader,\r\n getTotalRowCount,\r\n getRowAriaIndex,\r\n\r\n // Navigation functions\r\n getItemByKey,\r\n getItemAfter,\r\n getItemBefore,\r\n getItemIndex,\r\n };\r\n}\r\n\r\nexport type TableCollection = ReturnType<typeof useTableCollection>;\r\n","import { AriaAttributes, ReactElement, ReactNode, useMemo } from \"react\";\r\nimport { parseTableChildren } from \"./Collection/collectionParser\";\r\nimport {\r\n TableHeader,\r\n TableColumn,\r\n TableBody,\r\n TableRow,\r\n TableCell,\r\n TableHeaderProps,\r\n TableColumnProps,\r\n TableBodyProps,\r\n TableRowProps,\r\n TableCellProps,\r\n} from \"./Collection/CompoundComponents\";\r\nimport { useTableCollection } from \"./Collection/useTableCollection\";\r\nimport \"./Table.css\";\r\n\r\nexport type TableColumnData = {\r\n key: string | number;\r\n header: ReactNode;\r\n isHidden?: boolean;\r\n ariaSort?: AriaAttributes[\"aria-sort\"];\r\n};\r\n\r\nexport type TableCellData = {\r\n columnKey: string | number;\r\n value: ReactNode;\r\n colSpan?: number;\r\n};\r\n\r\nexport type TableRowData = {\r\n key: string | number;\r\n cells: TableCellData[];\r\n onClick?: () => void;\r\n};\r\n\r\nexport type TableData = {\r\n columns: TableColumnData[];\r\n rows: TableRowData[];\r\n};\r\n\r\nexport interface TableProps {\r\n children: [ReactElement<TableHeaderProps>, ReactElement<TableBodyProps>];\r\n /** Table name/caption for accessibility. Provides essential context for screen readers about table content. */\r\n name: string;\r\n}\r\n\r\nconst TableComponent = ({ children, name }: TableProps) => {\r\n const tableData: TableData = useMemo(\r\n () => parseTableChildren(children),\r\n [children]\r\n );\r\n const collection = useTableCollection(tableData);\r\n\r\n return (\r\n <table\r\n className=\"proton-Table\"\r\n role=\"table\"\r\n aria-rowcount={collection.getTotalRowCount}\r\n aria-colcount={collection.columns.length}\r\n aria-label={name}\r\n >\r\n <caption className=\"proton-Table__caption\">{name}</caption>\r\n\r\n {/* Header */}\r\n <thead\r\n className=\"proton-Table__rowGroup--header\"\r\n role=\"rowgroup\"\r\n style={collection.isHeaderHidden ? { display: \"none\" } : undefined}\r\n >\r\n <tr className=\"proton-Table__header-row\" role=\"row\" aria-rowindex={1}>\r\n {collection.columns.map((column, index) => (\r\n <th\r\n key={column.key}\r\n className=\"proton-Table__header\"\r\n role=\"columnheader\"\r\n scope=\"col\"\r\n aria-colindex={index + 1}\r\n aria-sort={column.ariaSort}\r\n >\r\n {column.header}\r\n </th>\r\n ))}\r\n </tr>\r\n </thead>\r\n\r\n {/* Body */}\r\n <tbody className=\"proton-Table__body\" role=\"rowgroup\">\r\n {collection.rows.map((row, rowIndex) => (\r\n <tr\r\n key={row.key}\r\n className=\"proton-Table__row\"\r\n role=\"row\"\r\n aria-rowindex={collection.getRowAriaIndex(rowIndex)}\r\n onClick={row?.onClick}\r\n tabIndex={row?.onClick ? 0 : undefined}\r\n onKeyDown={\r\n row?.onClick\r\n ? (e) => {\r\n if (e.key === \"Enter\" || e.key === \" \") {\r\n // Enable keyboard navigation\r\n e.preventDefault();\r\n row.onClick?.();\r\n }\r\n }\r\n : undefined\r\n }\r\n >\r\n {collection.columns.map((column, colIndex) => {\r\n const cell = row.cells.find((c) => c.columnKey === column.key);\r\n return (\r\n <td\r\n key={column.key}\r\n className=\"proton-Table__cell\"\r\n role=\"cell\"\r\n aria-colindex={colIndex + 1}\r\n colSpan={cell?.colSpan}\r\n >\r\n {cell?.value || \"\"}\r\n </td>\r\n );\r\n })}\r\n </tr>\r\n ))}\r\n </tbody>\r\n </table>\r\n );\r\n};\r\n\r\n/**\r\n * Base Table component that renders data in rows and columns using collections.\r\n *\r\n * - Built-in keyboard navigation for interactive rows.\r\n * - Full ARIA table semantics with proper roles, labels, and indices.\r\n *\r\n * API:\r\n * - {@link TableProps}\r\n *\r\n * @example\r\n * ```tsx\r\n * <Table caption=\"Employee Directory\">\r\n * <Table.Header>\r\n * <Table.Column id=\"name\">Name</Table.Column>\r\n * </Table.Header>\r\n * <Table.Body>\r\n * <Table.Row key=\"1\">\r\n * <Table.Cell>Joe</Table.Cell>\r\n * </Table.Row>\r\n * </Table.Body>\r\n * </Table>\r\n * ```\r\n */\r\nconst Table = Object.assign(TableComponent, {\r\n /** Table header: {@link TableHeaderProps} */\r\n Header: TableHeader,\r\n /** Table column: {@link TableColumnProps} */\r\n Column: TableColumn,\r\n /** Table body: {@link TableBodyProps} */\r\n Body: TableBody,\r\n /** Table row: {@link TableRowProps} */\r\n Row: TableRow,\r\n /** Table cell: {@link TableCellProps} */\r\n Cell: TableCell,\r\n});\r\n\r\nexport { Table };\r\nexport type {\r\n TableHeaderProps,\r\n TableColumnProps,\r\n TableBodyProps,\r\n TableRowProps,\r\n TableCellProps,\r\n};\r\n","\"use client\";\r\n\r\nimport { ReactNode } from \"react\";\r\nimport { transparentize, mix } from \"color2k\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\nimport \"./Elevation.css\";\r\n\r\nexport interface ElevationProps {\r\n /**\r\n * The content to be displayed within the elevation.\r\n */\r\n children?: ReactNode;\r\n /**\r\n * The data-testid attribute for testing purposes.\r\n */\r\n \"data-testid\"?: string;\r\n /**\r\n * Whether the elevation should have a background gradient.\r\n * @important only works in custom dark mode\r\n * @default false\r\n */\r\n hasPrimaryGradient?: boolean;\r\n}\r\n\r\n/**\r\n * Elevation component creates a visual elevation effect using the theme-aware background color.\r\n *\r\n * This component is designed to be used as a visual layer that sits on top of other content\r\n * to create a sense of depth or hierarchy in the UI. It uses the `--proton-control__background-color-light`\r\n * CSS variable which is theme-aware and will adapt to light, dark themes.\r\n *\r\n * API:\r\n * - {@link ElevationProps}\r\n */\r\nexport const Elevation = ({\r\n children,\r\n hasPrimaryGradient = false,\r\n \"data-testid\": dataTestId,\r\n}: ElevationProps) => {\r\n const { hasPalette, palette, style } = useTheme();\r\n\r\n const defaultBg = style[\"--proton-control__background-color-light\"];\r\n let primaryDark = defaultBg;\r\n let secondaryDark = transparentize(defaultBg, 0.01);\r\n\r\n if (hasPalette) {\r\n primaryDark = transparentize(defaultBg, 0.1);\r\n secondaryDark = transparentize(defaultBg, 0.12);\r\n if (hasPrimaryGradient) {\r\n const basePrimary = transparentize(palette.PRIMARY.MEDIUM_LIGHT, 0.88);\r\n const baseSecondary = transparentize(palette.PRIMARY.LIGHT, 0.84);\r\n primaryDark = mix(primaryDark, basePrimary, 0.15);\r\n secondaryDark = mix(secondaryDark, baseSecondary, 0.15);\r\n }\r\n }\r\n\r\n return (\r\n <div\r\n className=\"proton-Elevation\"\r\n data-testid={dataTestId}\r\n role=\"presentation\"\r\n aria-label=\"Elevated content area\"\r\n style={{\r\n background: `linear-gradient(to top left, ${primaryDark}, ${secondaryDark})`,\r\n }}\r\n >\r\n {children}\r\n </div>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport \"./Tombstone.css\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\nimport { csx, transparentize } from \"../../utils\";\r\n\r\nexport interface TombstoneProps {\r\n /**\r\n * The border radius of the tombstone.\r\n * @default \"4px\"\r\n */\r\n borderRadius?: string;\r\n /**\r\n * The height of the tombstone.\r\n * @default \"1.5rem\"\r\n */\r\n height?: string;\r\n /**\r\n * The width of the tombstone.\r\n * @default \"100%\"\r\n */\r\n width?: string;\r\n}\r\n\r\n/**\r\n * A component that displays a loading tombstone. For use as a placeholder while loading content.\r\n *\r\n * API:\r\n * - {@link TombstoneProps}\r\n */\r\nexport const Tombstone = ({\r\n width = \"100%\",\r\n height = \"1.5rem\",\r\n borderRadius = \"4px\",\r\n}: TombstoneProps) => {\r\n const { hasPalette, palette } = useTheme();\r\n\r\n const style = {\r\n \"--tombstone-custom-background\": palette.PRIMARY.MEDIUM,\r\n \"--tombstone-custom-primary\": transparentize(palette.PRIMARY.DARK, 0.9),\r\n \"--tombstone-custom-secondary\": transparentize(palette.SECONDARY.DARK, 0.7),\r\n } as React.CSSProperties;\r\n\r\n return (\r\n <div\r\n className={csx(\r\n \"proton-Tombstone\",\r\n hasPalette && \"proton-Tombstone--custom\"\r\n )}\r\n style={{\r\n ...style,\r\n width,\r\n height,\r\n borderRadius,\r\n }}\r\n />\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { AriaAttributes, ReactNode, useMemo } from \"react\";\r\nimport { Table } from \"../Table/Table\";\r\nimport { Elevation } from \"../Elevation/Elevation\";\r\nimport { Tombstone } from \"../Tombstone/Tombstone\";\r\nimport { Icon } from \"../Icon/Icon\";\r\nimport \"./DataTable.css\";\r\n\r\nexport type SortDirection = \"ASC\" | \"DESC\";\r\n\r\ntype SortingConfig<T> =\r\n | {\r\n /** When sorting is enabled, all these props must be provided together. */\r\n sortableColumns: string[];\r\n sortedBy: string;\r\n sortDirection: SortDirection;\r\n onSort: (columnId: string, direction: SortDirection) => void;\r\n }\r\n | {\r\n /** When no sorting is needed, none of these props should be provided */\r\n sortableColumns?: never;\r\n sortedBy?: never;\r\n sortDirection?: never;\r\n onSort?: never;\r\n };\r\n\r\nexport interface DataTableColumn<T> {\r\n /** id for the column */\r\n id: string;\r\n /** Header text or component */\r\n header: ReactNode;\r\n /** Function to render cell content from row data */\r\n cell: (row: T) => ReactNode;\r\n /** Whether this column should be hidden */\r\n hidden?: boolean;\r\n}\r\n\r\ninterface BaseDataTableProps<T = any> {\r\n /** Array of column definitions\r\n * - {@link DataTableColumn}\r\n */\r\n columns: DataTableColumn<T>[];\r\n /** Array of data objects to display. Can be empty array for loading/empty states */\r\n data?: T[] | null;\r\n /** Loading state */\r\n loading?: boolean;\r\n /** Tombstone component to use when loading */\r\n tombstoneComponent?: ReactNode;\r\n /** Error state */\r\n error?: boolean | string;\r\n /** Table name/caption for accessibility. This provides essential context for screen readers. */\r\n name: string;\r\n /** Callback when a row is clicked */\r\n onRowClick?: (row: T) => void;\r\n /** Custom empty state message */\r\n emptyMessage?: string;\r\n /** Custom error message */\r\n errorMessage?: string;\r\n /** Number of skeleton rows to show in loading state */\r\n loadingRows?: number;\r\n /** Test ID for testing purposes */\r\n \"data-testid\"?: string;\r\n}\r\n\r\nexport type DataTableProps<T = any> = BaseDataTableProps<T> & SortingConfig<T>;\r\n\r\n/**\r\n * DataTable is a declarative wrapper around the base Table component that provides:\r\n *\r\n * API:\r\n * - {@link DataTableProps}\r\n * - {@link SortingConfig}\r\n */\r\nexport function DataTable<T = any>(props: DataTableProps<T>) {\r\n const {\r\n columns,\r\n data = [],\r\n loading = false,\r\n tombstoneComponent,\r\n error = false,\r\n name,\r\n onRowClick,\r\n emptyMessage = \"Data Unavailable\",\r\n errorMessage,\r\n loadingRows = 5,\r\n \"data-testid\": testId,\r\n } = props;\r\n\r\n const sortableColumns =\r\n \"sortableColumns\" in props ? props.sortableColumns : [];\r\n const sortedBy = \"sortedBy\" in props ? props.sortedBy : undefined;\r\n const sortDirection =\r\n \"sortDirection\" in props ? props.sortDirection : undefined;\r\n const onSort = \"onSort\" in props ? props.onSort : undefined;\r\n\r\n const visibleColumns = useMemo(\r\n () => columns.filter((col) => !col.hidden),\r\n [columns]\r\n );\r\n\r\n const handleSortClick = (column: DataTableColumn<T>) => {\r\n if (!onSort) return;\r\n\r\n const isCurrentlySorted = sortedBy === column.id;\r\n const newDirection =\r\n isCurrentlySorted && sortDirection === \"ASC\" ? \"DESC\" : \"ASC\";\r\n\r\n onSort(column.id, newDirection);\r\n };\r\n\r\n const getSortState = (columnId: string): AriaAttributes[\"aria-sort\"] => {\r\n if (sortedBy !== columnId) return \"none\";\r\n return sortDirection === \"ASC\" ? \"ascending\" : \"descending\";\r\n };\r\n\r\n if (error) {\r\n const message =\r\n typeof error === \"string\" ? error : errorMessage || \"An error occurred\";\r\n return (\r\n <EmptyState\r\n columns={visibleColumns}\r\n message={message}\r\n name={name}\r\n testId={testId}\r\n isError\r\n />\r\n );\r\n }\r\n\r\n if (loading) {\r\n return (\r\n <div\r\n className=\"proton-DataTable\"\r\n data-testid={testId}\r\n aria-busy=\"true\"\r\n aria-label={`Loading ${name}...`}\r\n >\r\n <Table name={name}>\r\n <Table.Header>\r\n {visibleColumns.map((column) => (\r\n <Table.Column key={column.id} id={column.id}>\r\n {column.header}\r\n </Table.Column>\r\n ))}\r\n </Table.Header>\r\n <Table.Body>\r\n {Array.from({ length: loadingRows }).map((_, index) => (\r\n <Table.Row key={`loading-${index}`}>\r\n {visibleColumns.map((column) => (\r\n <Table.Cell key={column.id}>\r\n {tombstoneComponent || (\r\n <Tombstone\r\n height=\"1rem\"\r\n width={\r\n // cascading tombstone widths\r\n index % 3 === 0\r\n ? \"80%\"\r\n : index % 3 === 1\r\n ? \"60%\"\r\n : \"90%\"\r\n }\r\n />\r\n )}\r\n </Table.Cell>\r\n ))}\r\n </Table.Row>\r\n ))}\r\n </Table.Body>\r\n </Table>\r\n </div>\r\n );\r\n }\r\n\r\n if (!data || data.length === 0) {\r\n return (\r\n <EmptyState\r\n columns={visibleColumns}\r\n message={emptyMessage}\r\n name={name}\r\n testId={testId}\r\n />\r\n );\r\n }\r\n\r\n return (\r\n <div className=\"proton-DataTable\" data-testid={testId}>\r\n <Table name={name}>\r\n <Table.Header>\r\n {visibleColumns.map((column) => {\r\n const isSortable = sortableColumns.includes(column.id);\r\n const sortState = getSortState(column.id);\r\n\r\n return (\r\n <Table.Column\r\n key={column.id}\r\n id={column.id}\r\n {...(isSortable && { \"aria-sort\": sortState })}\r\n >\r\n <span className=\"proton-DataTable__header-content\">\r\n {column.header}\r\n {isSortable && (\r\n <button\r\n className=\"proton-DataTable__sort-button\"\r\n onClick={() => handleSortClick(column)}\r\n aria-label={`Sort by ${column.header}: ${sortState}`}\r\n type=\"button\"\r\n >\r\n <Icon\r\n id={\"chevron-up\"}\r\n size={12}\r\n color={\r\n sortState === \"ascending\"\r\n ? \"var(--proton-color__primary)\"\r\n : \"currentColor\"\r\n }\r\n />\r\n </button>\r\n )}\r\n </span>\r\n </Table.Column>\r\n );\r\n })}\r\n </Table.Header>\r\n <Table.Body>\r\n {data.map((row, index) => {\r\n // Generate a key from the row data or use index as fallback\r\n const rowKey = ((row as any)?.id || (row as any)?.key) ?? index;\r\n\r\n return (\r\n <Table.Row\r\n key={rowKey}\r\n onClick={onRowClick ? () => onRowClick(row) : undefined}\r\n >\r\n {visibleColumns.map((column) => (\r\n <Table.Cell key={column.id}>{column.cell(row)}</Table.Cell>\r\n ))}\r\n </Table.Row>\r\n );\r\n })}\r\n </Table.Body>\r\n </Table>\r\n </div>\r\n );\r\n}\r\n\r\nconst EmptyState = ({\r\n columns,\r\n message,\r\n name,\r\n testId,\r\n isError = false,\r\n}: Partial<DataTableProps> & {\r\n testId?: string;\r\n message: string;\r\n isError?: boolean;\r\n}) => {\r\n return (\r\n <div className=\"proton-DataTable\" data-testid={testId}>\r\n <Table name={name}>\r\n <Table.Header>\r\n {columns?.map((column) => (\r\n <Table.Column key={column.id} id={column.id}>\r\n {column.header}\r\n </Table.Column>\r\n ))}\r\n </Table.Header>\r\n <Table.Body>\r\n <Table.Row>\r\n <Table.Cell colSpan={columns?.length || 1}>\r\n <div\r\n className=\"proton-DataTable__message-cell\"\r\n role={isError ? \"alert\" : \"status\"}\r\n aria-live=\"polite\"\r\n >\r\n <Elevation>\r\n <div className=\"proton-DataTable__empty-cell\">{message}</div>\r\n </Elevation>\r\n </div>\r\n </Table.Cell>\r\n </Table.Row>\r\n </Table.Body>\r\n </Table>\r\n </div>\r\n );\r\n};\r\n","import {useSlotId as $i6df2$useSlotId, filterDOMProps as $i6df2$filterDOMProps} from \"@react-aria/utils\";\nimport {focusSafely as $i6df2$focusSafely} from \"@react-aria/interactions\";\nimport {useRef as $i6df2$useRef, useEffect as $i6df2$useEffect} from \"react\";\nimport {useOverlayFocusContain as $i6df2$useOverlayFocusContain} from \"@react-aria/overlays\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $40df3f8667284809$export$d55e7ee900f34e93(props, ref) {\n let { role: role = 'dialog' } = props;\n let titleId = (0, $i6df2$useSlotId)();\n titleId = props['aria-label'] ? undefined : titleId;\n let isRefocusing = (0, $i6df2$useRef)(false);\n // Focus the dialog itself on mount, unless a child element is already focused.\n (0, $i6df2$useEffect)(()=>{\n if (ref.current && !ref.current.contains(document.activeElement)) {\n (0, $i6df2$focusSafely)(ref.current);\n // Safari on iOS does not move the VoiceOver cursor to the dialog\n // or announce that it has opened until it has rendered. A workaround\n // is to wait for half a second, then blur and re-focus the dialog.\n let timeout = setTimeout(()=>{\n if (document.activeElement === ref.current) {\n isRefocusing.current = true;\n if (ref.current) {\n ref.current.blur();\n (0, $i6df2$focusSafely)(ref.current);\n }\n isRefocusing.current = false;\n }\n }, 500);\n return ()=>{\n clearTimeout(timeout);\n };\n }\n }, [\n ref\n ]);\n (0, $i6df2$useOverlayFocusContain)();\n // We do not use aria-modal due to a Safari bug which forces the first focusable element to be focused\n // on mount when inside an iframe, no matter which element we programmatically focus.\n // See https://bugs.webkit.org/show_bug.cgi?id=211934.\n // useModal sets aria-hidden on all elements outside the dialog, so the dialog will behave as a modal\n // even without aria-modal on the dialog itself.\n return {\n dialogProps: {\n ...(0, $i6df2$filterDOMProps)(props, {\n labelable: true\n }),\n role: role,\n tabIndex: -1,\n 'aria-labelledby': props['aria-labelledby'] || titleId,\n // Prevent blur events from reaching useOverlay, which may cause\n // popovers to close. Since focus is contained within the dialog,\n // we don't want this to occur due to the above useEffect.\n onBlur: (e)=>{\n if (isRefocusing.current) e.stopPropagation();\n }\n },\n titleProps: {\n id: titleId\n }\n };\n}\n\n\nexport {$40df3f8667284809$export$d55e7ee900f34e93 as useDialog};\n//# sourceMappingURL=useDialog.module.js.map\n","\"use client\";\r\n\r\nimport { useRef } from \"react\";\r\nimport { type AriaDialogProps, useDialog } from \"@react-aria/dialog\";\r\n\r\nimport \"./Dialog.css\";\r\n\r\ninterface DialogProps extends AriaDialogProps {\r\n title?: React.ReactNode;\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Intended use in overlay containers such as modals or popovers.\r\n *\r\n * API:\r\n * - {@link DialogProps}\r\n * - extends {@link AriaDialogProps}\r\n */\r\nexport function Dialog({ title, children, ...props }: DialogProps) {\r\n let ref = useRef(null);\r\n let { dialogProps, titleProps } = useDialog(props, ref);\r\n\r\n return (\r\n <div {...dialogProps} ref={ref} className=\"proton-Dialog\">\r\n {title && (\r\n <h3 {...titleProps} className=\"proton-Dialog__header\">\r\n {title}\r\n </h3>\r\n )}\r\n {children}\r\n </div>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport \"../ScreenOverlay/ScreenOverlay.css\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\nimport { parseToRgba } from \"color2k\";\r\n\r\ninterface ImageBackgroundProps {\r\n /**\r\n * Manually display a background image. Useful for server-side rendering.\r\n * @important When using this prop, you must style your own image component appropriately.\r\n * The component will be placed directly in the background without additional styling.\r\n */\r\n image?: React.ReactNode;\r\n /**\r\n * The URL of the image to display in the background.\r\n * @important Client-side only. Cannot be used in Server Components.\r\n * When using this prop, the image will be automatically styled with the background effect.\r\n */\r\n imageUrl?: string;\r\n /**\r\n * Callback function to handle the image load event.\r\n * @important Client-side only. Cannot be used in Server Components.\r\n */\r\n onLoad?: (image: HTMLImageElement) => void;\r\n}\r\n\r\n/**\r\n * Calculates a background color with appropriate opacity based on the brightness of the base color.\r\n * For dark colors (sum of RGB values < 65), returns a white overlay with variable opacity.\r\n * For brighter colors, returns an empty string (no overlay needed).\r\n */\r\nconst getBgWhiteOverlayColor = (color: [number, number, number, number]) => {\r\n const [r, g, b] = color;\r\n const brightness = r + g + b;\r\n\r\n // Only apply white overlay for dark backgrounds\r\n if (brightness < 65) {\r\n // Calculate opacity inversely proportional to brightness\r\n // Brighter colors get less opacity, with a minimum of 0.1\r\n const brightnessPercentage = brightness / 100;\r\n const opacity = Math.max(0.14, 0.36 - brightnessPercentage);\r\n\r\n return `rgba(255, 255, 255, ${opacity})`;\r\n }\r\n\r\n return \"\";\r\n};\r\n\r\n/**\r\n * ImageOverlay component for displaying an image with a blur effect.\r\n *\r\n * API:\r\n * - {@link ImageBackgroundProps}\r\n */\r\nexport function ImageBackground({\r\n image,\r\n imageUrl = \"\",\r\n onLoad,\r\n}: ImageBackgroundProps) {\r\n const { palette } = useTheme();\r\n const baseColor = parseToRgba(palette.BASE_COLOR);\r\n const backgroundColor = getBgWhiteOverlayColor(baseColor);\r\n\r\n return (\r\n <div\r\n id=\"image-background\"\r\n aria-label=\"Background overlay\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n className=\"proton-ScreenOverlay__background\"\r\n >\r\n {image ? (\r\n <div aria-hidden=\"true\">{image}</div>\r\n ) : (\r\n <img\r\n alt=\"\" // Decorative image\r\n src={imageUrl}\r\n className=\"proton-ScreenOverlay__image\"\r\n onLoad={(event) => onLoad?.(event.currentTarget)}\r\n aria-hidden=\"true\"\r\n />\r\n )}\r\n <div\r\n className=\"proton-ScreenOverlay__blur\"\r\n aria-hidden=\"true\"\r\n style={{\r\n background: backgroundColor,\r\n }}\r\n />\r\n </div>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport React, { forwardRef, useEffect, useRef } from \"react\";\r\n\r\nimport { useTheme } from \"../../ThemeProvider\";\r\nimport { csx } from \"../../../utils\";\r\nimport \"./Input.css\";\r\nimport { copyTextToClipboard } from \"../../../utils/copy\";\r\n\r\nexport interface BaseInputProps {\r\n /**\r\n * onChange handler for the input\r\n */\r\n onChange?: (value: string) => void;\r\n\r\n /** Whether the input is disabled. */\r\n isDisabled?: boolean;\r\n\r\n /** Description text shown above the input. */\r\n description?: React.ReactNode | string;\r\n\r\n /**\r\n * The position of the description text.\r\n * @default \"top\"\r\n */\r\n descriptionPosition?: \"top\" | \"bottom\";\r\n\r\n /** Error state that changes the input's visual style and displays an error message. */\r\n error?: React.ReactNode | string;\r\n\r\n /**\r\n * Label for the input element.\r\n * @note When a label is provided, the input will have extra padding, and the label will float above the text input when focused or filled.\r\n */\r\n label?: string;\r\n\r\n /** Test ID for the component. */\r\n \"data-testid\"?: string;\r\n\r\n /** Content to display before the input. Typically used for icons. */\r\n prefix?: React.ReactNode;\r\n\r\n /** Content to display after the input. Typically used for icons. */\r\n suffix?: React.ReactNode;\r\n\r\n /**\r\n * Should the browser's autocomplete be enabled?\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\r\n */\r\n autoComplete?: boolean;\r\n\r\n /**\r\n * Should the input be autofocused?\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autofocus\r\n */\r\n autoFocus?: boolean;\r\n\r\n /**\r\n * The name attribute of the input element.\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/name\r\n */\r\n name: string;\r\n\r\n /**\r\n * The placeholder text to display when the input is empty.\r\n * @note label takes precedence over placeholder, if both are provided.\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/placeholder\r\n */\r\n placeholder?: string;\r\n\r\n /**\r\n * The type attribute of the input element.\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/type\r\n * @default \"text\"\r\n */\r\n type?: string;\r\n\r\n /**\r\n * The value of the input.\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#value\r\n */\r\n value?: string;\r\n\r\n /**\r\n * Whether the input is required.\r\n * @default false\r\n */\r\n isRequired?: boolean;\r\n\r\n /**\r\n * Whether the input is read-only.\r\n * @default false\r\n */\r\n isReadOnly?: boolean;\r\n\r\n /**\r\n * Called when the input is submitted (e.g. by pressing Enter).\r\n */\r\n onSubmit?: React.FormEventHandler<HTMLInputElement>;\r\n\r\n /**\r\n * Called when the input is cleared (e.g. by pressing Escape).\r\n */\r\n onClear?: () => void;\r\n}\r\n\r\n/**\r\n * A controlled and customizable input component with support for labels, prefixes, suffixes, and error states.\r\n *\r\n * API:\r\n * - {@link BaseInputProps}\r\n */\r\nexport const Input = forwardRef<HTMLInputElement, BaseInputProps>(\r\n (\r\n {\r\n prefix,\r\n suffix,\r\n description,\r\n descriptionPosition = \"top\",\r\n isDisabled,\r\n error,\r\n onChange,\r\n label,\r\n name,\r\n placeholder,\r\n type = \"text\",\r\n value,\r\n autoFocus,\r\n autoComplete,\r\n isRequired = false,\r\n isReadOnly = false,\r\n onSubmit,\r\n onClear,\r\n \"data-testid\": testId,\r\n },\r\n forwardedRef: React.RefObject<HTMLInputElement>\r\n ) => {\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n const prefixRef = useRef<HTMLDivElement>(null);\r\n const suffixRef = useRef<HTMLDivElement>(null);\r\n const containerRef = useRef<HTMLDivElement>(null);\r\n const { className } = useTheme();\r\n const ref = forwardedRef || inputRef;\r\n\r\n // Control dynamic prefix and suffix widths using ResizeObserver\r\n useEffect(() => {\r\n if (!containerRef.current) return;\r\n\r\n const updateSizes = () => {\r\n if (containerRef.current) {\r\n const containerWidth = containerRef.current.offsetWidth || 200;\r\n containerRef.current.style.setProperty(\r\n \"--container-width\",\r\n `${containerWidth}px`\r\n );\r\n }\r\n\r\n if (prefixRef.current) {\r\n const prefixWidth = prefixRef.current.offsetWidth || 32;\r\n containerRef.current?.style.setProperty(\r\n \"--prefix-width\",\r\n `${prefixWidth}px`\r\n );\r\n }\r\n\r\n if (suffixRef.current) {\r\n const suffixWidth = suffixRef.current.offsetWidth || 32;\r\n containerRef.current?.style.setProperty(\r\n \"--suffix-width\",\r\n `${suffixWidth}px`\r\n );\r\n }\r\n };\r\n\r\n updateSizes();\r\n\r\n const resizeObserver = new ResizeObserver(updateSizes);\r\n\r\n if (containerRef.current) {\r\n resizeObserver.observe(containerRef.current);\r\n }\r\n if (prefixRef.current) {\r\n resizeObserver.observe(prefixRef.current);\r\n }\r\n if (suffixRef.current) {\r\n resizeObserver.observe(suffixRef.current);\r\n }\r\n\r\n return () => {\r\n resizeObserver.disconnect();\r\n };\r\n }, [prefix, suffix]);\r\n\r\n const inputId = `${name}-input`;\r\n const errorId = `${name}-error`;\r\n const descriptionId = `${name}-description`;\r\n\r\n return (\r\n <div className=\"proton-Input__container\" ref={containerRef}>\r\n {description && descriptionPosition === \"top\" && (\r\n <div\r\n id={descriptionId}\r\n className=\"proton-Input__text\"\r\n aria-live=\"polite\"\r\n >\r\n {description}\r\n </div>\r\n )}\r\n <div className=\"proton-Input__container-inner\">\r\n {prefix && (\r\n <div\r\n ref={prefixRef}\r\n className={csx(\r\n \"proton-Input__descriptor\",\r\n \"proton-Input__prefix\"\r\n )}\r\n >\r\n {prefix}\r\n </div>\r\n )}\r\n\r\n <input\r\n id={inputId}\r\n name={name}\r\n type={type}\r\n value={value}\r\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => {\r\n onChange?.(e.target.value);\r\n }}\r\n onKeyDown={(e: React.KeyboardEvent<HTMLInputElement>) => {\r\n switch (e.key) {\r\n case \"Enter\":\r\n if (onSubmit) {\r\n e.preventDefault();\r\n onSubmit(e);\r\n }\r\n break;\r\n case \"Escape\":\r\n if (onClear) {\r\n e.preventDefault();\r\n onClear();\r\n }\r\n break;\r\n }\r\n }}\r\n onCopy={async () =>\r\n await copyTextToClipboard(inputRef.current?.value)\r\n }\r\n disabled={isDisabled}\r\n readOnly={isReadOnly}\r\n required={isRequired}\r\n autoFocus={autoFocus}\r\n autoComplete={autoComplete ? \"on\" : \"off\"}\r\n placeholder={label ? undefined : placeholder}\r\n aria-label={label || name}\r\n aria-invalid={Boolean(error)}\r\n aria-errormessage={typeof error === \"string\" ? error : errorId}\r\n aria-required={isRequired}\r\n aria-readonly={isReadOnly}\r\n aria-describedby={\r\n error ? errorId : description ? descriptionId : undefined\r\n }\r\n aria-disabled={isDisabled}\r\n data-testid={testId}\r\n ref={ref}\r\n className={csx(\r\n \"proton-Input\",\r\n error && \"proton-Input--error\",\r\n label && \"proton-Input__label-top\",\r\n className\r\n )}\r\n />\r\n\r\n <label\r\n htmlFor={inputId}\r\n className={csx(\r\n \"proton-Input__label\",\r\n value && \"proton-Input__label--filled\"\r\n )}\r\n >\r\n {label}\r\n {isRequired && <span aria-hidden=\"true\"> *</span>}\r\n </label>\r\n\r\n {suffix && (\r\n <div\r\n ref={suffixRef}\r\n className={csx(\r\n \"proton-Input__descriptor\",\r\n \"proton-Input__suffix\"\r\n )}\r\n >\r\n {suffix}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {error ? (\r\n <div\r\n role=\"alert\"\r\n className={csx(\"proton-Input__error\", \"proton-Input__text\")}\r\n id={errorId}\r\n >\r\n {error}\r\n </div>\r\n ) : description && descriptionPosition === \"bottom\" ? (\r\n <div\r\n id={descriptionId}\r\n className=\"proton-Input__text\"\r\n aria-live=\"polite\"\r\n >\r\n {description}\r\n </div>\r\n ) : null}\r\n </div>\r\n );\r\n }\r\n);\r\n\r\nInput.displayName = \"ProtonUIInput\";\r\n","import { useState } from \"react\";\r\nimport { csx } from \"../../../utils\";\r\nimport { copyTextToClipboard } from \"../../../utils/copy\";\r\nimport {Input} from \"../BaseInput/Input\";\r\nimport \"./CopyInput.css\";\r\n\r\nexport interface CopyInputProps {\r\n /** The name of the input field */\r\n name: string;\r\n\r\n /** The value to display in the input and copy to clipboard */\r\n value: string;\r\n\r\n /** Whether the input is disabled */\r\n isDisabled?: boolean;\r\n\r\n /** Optional callback when copy fails, receives the error object */\r\n onError?: (error: Error) => void;\r\n\r\n /** Optional callback when copy succeeds */\r\n onSuccess?: () => void;\r\n}\r\n\r\n/**\r\n * Input with a button to copy value to the clipboard.\r\n *\r\n * API:\r\n * - {@link CopyInputProps}\r\n */\r\nexport function CopyInput({\r\n name,\r\n value,\r\n isDisabled,\r\n onError,\r\n onSuccess,\r\n}: CopyInputProps) {\r\n const [isCopied, setCopied] = useState(false);\r\n\r\n return (\r\n <Input\r\n name={name}\r\n value={value}\r\n isDisabled={isDisabled}\r\n suffix={\r\n <CopyButton\r\n isCopied={isCopied}\r\n onClick={async () => {\r\n const copySuccess = await copyTextToClipboard(value, onError);\r\n if (!copySuccess) return;\r\n\r\n setCopied(true);\r\n onSuccess?.();\r\n setTimeout(() => setCopied(false), 5000);\r\n }}\r\n />\r\n }\r\n />\r\n );\r\n}\r\n\r\nconst CopyButton = ({ isCopied, onClick }) => {\r\n return (\r\n <div className=\"proton-CopyInput-button-container\" onClick={onClick}>\r\n <button\r\n data-testid=\"COPY_BUTTON\"\r\n className={csx(\r\n \"proton-CopyInput-button\",\r\n isCopied && \"proton-CopyInput-button--copied\"\r\n )}\r\n >\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"12\"\r\n height=\"12\"\r\n viewBox=\"0 0 512 512\"\r\n >\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M408 480H184a72 72 0 0 1-72-72V184a72 72 0 0 1 72-72h224a72 72 0 0 1 72 72v224a72 72 0 0 1-72 72\"\r\n />\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M160 80h235.88A72.12 72.12 0 0 0 328 32H104a72 72 0 0 0-72 72v224a72.12 72.12 0 0 0 48 67.88V160a80 80 0 0 1 80-80\"\r\n />\r\n </svg>\r\n <span\r\n className={csx(\r\n \"proton-CopyInput-button-text\",\r\n isCopied && \"proton-CopyInput-button-text--copied\"\r\n )}\r\n >\r\n {isCopied ? \"Copied!\" : \"Copy\"}\r\n </span>\r\n </button>\r\n </div>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { useEffect, useRef, useState } from \"react\";\r\nimport \"./SearchInput.css\";\r\nimport { csx } from \"../../../utils\";\r\nimport { Input, type BaseInputProps } from \"../BaseInput/Input\";\r\n\r\nexport interface SearchInputProps\r\n extends Omit<\r\n BaseInputProps,\r\n | \"prefix\"\r\n | \"suffix\"\r\n | \"value\"\r\n | \"onChange\"\r\n | \"description\"\r\n | \"descriptionPosition\"\r\n | \"label\"\r\n > {\r\n /** The initial value of the input. */\r\n defaultValue?: string;\r\n\r\n /** Should the clear button be shown when there is text? */\r\n isClearable?: boolean;\r\n\r\n /** Called when the input value changes. */\r\n onChange?: (value: string) => void;\r\n\r\n /** Called when the clear button is clicked. */\r\n onClear?: () => void;\r\n\r\n /** The current value of the input (for controlled usage) */\r\n value?: string;\r\n}\r\n\r\n/**\r\n * A search input component with optional clear functionality and URL parameter sync.\r\n *\r\n * API:\r\n * - {@link SearchInputProps}\r\n * - extends {@link BaseInputProps}\r\n */\r\nexport const SearchInput = ({\r\n name = \"search\",\r\n placeholder = \"Search...\",\r\n autoComplete,\r\n isClearable = true,\r\n isDisabled = false,\r\n error,\r\n defaultValue,\r\n value: controlledValue,\r\n \"data-testid\": testId = \"proton-SearchInput\",\r\n onChange,\r\n onClear,\r\n}: SearchInputProps) => {\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n const [value, setValue] = useState(controlledValue ?? defaultValue ?? \"\");\r\n\r\n // Sync with controlled value if provided\r\n useEffect(() => {\r\n if (controlledValue !== undefined) {\r\n setValue(controlledValue);\r\n }\r\n }, [controlledValue]);\r\n\r\n const handleChange = (newValue: string) => {\r\n setValue(newValue);\r\n onChange?.(newValue);\r\n };\r\n\r\n const handleClear = () => {\r\n setValue(\"\");\r\n onChange?.(\"\");\r\n onClear?.();\r\n inputRef.current?.focus();\r\n };\r\n\r\n return (\r\n <div\r\n className=\"proton-SearchInput__wrapper\"\r\n data-testid={testId}\r\n role=\"search\"\r\n >\r\n <Input\r\n type=\"search\"\r\n onChange={handleChange}\r\n value={value}\r\n name={name}\r\n placeholder={placeholder}\r\n autoComplete={autoComplete}\r\n error={error}\r\n ref={inputRef}\r\n isDisabled={isDisabled}\r\n prefix={\r\n <svg\r\n aria-hidden=\"true\"\r\n width=\"2.8em\"\r\n height=\"1.6em\"\r\n viewBox=\"0 0 24 24\"\r\n onClick={() => inputRef.current?.focus()}\r\n >\r\n <title>Magnifying Glass</title>\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M10.5 18.5a8 8 0 1 1 0-16 8 8 0 0 1 0 16Zm0-1a7 7 0 1 0 0-14 7 7 0 0 0 0 14Zm5.25-.75 4.5 4.5-1.25 1.25-4.5-4.5 1.25-1.25Z\"\r\n />\r\n </svg>\r\n }\r\n suffix={\r\n isClearable && value.length > 0 ? (\r\n <button\r\n type=\"button\"\r\n className={csx(\r\n \"proton-SearchInput__button\",\r\n \"proton-Input__descriptor\",\r\n \"proton-Input__suffix\"\r\n )}\r\n data-testid={`${testId}-clear`}\r\n onClick={handleClear}\r\n aria-label=\"Clear search\"\r\n >\r\n <svg\r\n aria-hidden=\"true\"\r\n viewBox=\"0 0 50 50\"\r\n width=\"3.2em\"\r\n height=\"1.2em\"\r\n >\r\n <title>Clear</title>\r\n <path\r\n fill=\"currentColor\"\r\n d=\"m37.304 11.282l1.414 1.414l-26.022 26.02l-1.414-1.413z\"\r\n />\r\n <path\r\n fill=\"currentColor\"\r\n d=\"m12.696 11.282l26.022 26.02l-1.414 1.415l-26.022-26.02z\"\r\n />\r\n </svg>\r\n </button>\r\n ) : null\r\n }\r\n />\r\n </div>\r\n );\r\n};\r\n","import {mergeProps as $bwqiF$mergeProps, filterDOMProps as $bwqiF$filterDOMProps} from \"@react-aria/utils\";\nimport {usePress as $bwqiF$usePress, useFocusable as $bwqiF$useFocusable} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {\n let { elementType: elementType = 'button', isDisabled: isDisabled, onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onPressChange: onPressChange, preventFocusOnPress: preventFocusOnPress, allowFocusWhenDisabled: // @ts-ignore - undocumented\n allowFocusWhenDisabled, onClick: onClick, href: href, target: target, rel: rel, type: type = 'button' } = props;\n let additionalProps;\n if (elementType === 'button') additionalProps = {\n type: type,\n disabled: isDisabled\n };\n else additionalProps = {\n role: 'button',\n href: elementType === 'a' && !isDisabled ? href : undefined,\n target: elementType === 'a' ? target : undefined,\n type: elementType === 'input' ? type : undefined,\n disabled: elementType === 'input' ? isDisabled : undefined,\n 'aria-disabled': !isDisabled || elementType === 'input' ? undefined : isDisabled,\n rel: elementType === 'a' ? rel : undefined\n };\n let { pressProps: pressProps, isPressed: isPressed } = (0, $bwqiF$usePress)({\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n onPressChange: onPressChange,\n onPress: onPress,\n onPressUp: onPressUp,\n onClick: onClick,\n isDisabled: isDisabled,\n preventFocusOnPress: preventFocusOnPress,\n ref: ref\n });\n let { focusableProps: focusableProps } = (0, $bwqiF$useFocusable)(props, ref);\n if (allowFocusWhenDisabled) focusableProps.tabIndex = isDisabled ? -1 : focusableProps.tabIndex;\n let buttonProps = (0, $bwqiF$mergeProps)(focusableProps, pressProps, (0, $bwqiF$filterDOMProps)(props, {\n labelable: true\n }));\n return {\n isPressed: isPressed,\n buttonProps: (0, $bwqiF$mergeProps)(additionalProps, buttonProps, {\n 'aria-haspopup': props['aria-haspopup'],\n 'aria-expanded': props['aria-expanded'],\n 'aria-controls': props['aria-controls'],\n 'aria-pressed': props['aria-pressed'],\n 'aria-current': props['aria-current']\n })\n };\n}\n\n\nexport {$701a24aa0da5b062$export$ea18c227d4417cc3 as useButton};\n//# sourceMappingURL=useButton.module.js.map\n","\"use client\";\r\n\r\nimport { useButton } from \"@react-aria/button\";\r\nimport { useDialog } from \"@react-aria/dialog\";\r\nimport { FocusScope } from \"@react-aria/focus\";\r\nimport { useModalOverlay, usePreventScroll } from \"@react-aria/overlays\";\r\nimport { mergeProps } from \"@react-aria/utils\";\r\nimport { useRef } from \"react\";\r\nimport { useOverlayTriggerState } from \"@react-stately/overlays\";\r\nimport { BREAKPOINTS } from \"../../constants\";\r\nimport { useBreakpoint } from \"../../hooks\";\r\nimport { useIsClosing } from \"../../hooks/useIsClosing\";\r\nimport { csx } from \"../../utils\";\r\nimport { Button, ButtonProps } from \"../Button/Button\";\r\nimport \"./Modal.css\";\r\nimport { ScreenOverlay } from \"../ScreenOverlay/ScreenOverlay\";\r\n\r\nconst ModalTitle = ({ children }: { children: React.ReactNode }) => {\r\n return <h2 className=\"proton-Modal__title\">{children}</h2>;\r\n};\r\n\r\nconst ModalSubtitle = ({ children }: { children: React.ReactNode }) => {\r\n return <h3 className=\"proton-Modal__subtitle\">{children}</h3>;\r\n};\r\n\r\nconst ModalBody = ({ children }: { children: React.ReactNode }) => {\r\n return <div className=\"proton-Modal__body\">{children}</div>;\r\n};\r\n\r\nconst ModalAction = (buttonProps: ButtonProps) => {\r\n return (\r\n <div className=\"proton-Modal__action\">\r\n <Button {...buttonProps} />\r\n </div>\r\n );\r\n};\r\n\r\nconst ModalActions = ({ children }: { children: React.ReactNode }) => {\r\n return (\r\n <FocusScope autoFocus>\r\n <div className=\"proton-Modal__actions\">{children}</div>\r\n </FocusScope>\r\n );\r\n};\r\n\r\nconst ModalContent = ({\r\n title,\r\n subtitle,\r\n body,\r\n onClose,\r\n children,\r\n isClosing,\r\n \"data-testid\": dataTestId,\r\n}: ModalProps & {\r\n isClosing: boolean;\r\n}) => {\r\n const ref = useRef<HTMLDivElement>(null);\r\n const state = useOverlayTriggerState({ isOpen: true, onOpenChange: onClose });\r\n const { modalProps } = useModalOverlay(\r\n {\r\n isDismissable: false, //handle dismiss behavior in useIsClosing\r\n },\r\n state,\r\n ref\r\n );\r\n\r\n const { dialogProps } = useDialog({ role: \"dialog\" }, ref);\r\n usePreventScroll();\r\n\r\n const closeButtonRef = useRef<HTMLButtonElement>(null);\r\n const { buttonProps: closeButtonProps } = useButton(\r\n {\r\n onPress: onClose,\r\n \"aria-label\": \"Close\",\r\n },\r\n closeButtonRef\r\n );\r\n\r\n return (\r\n <FocusScope contain restoreFocus autoFocus>\r\n <div\r\n data-testid={dataTestId}\r\n className={csx(\"proton-Modal\", isClosing && \"proton-Modal--closing\")}\r\n {...mergeProps(modalProps, dialogProps)}\r\n ref={ref}\r\n >\r\n <button\r\n name=\"Close\"\r\n className=\"proton-Modal__close-button\"\r\n {...closeButtonProps}\r\n ref={closeButtonRef}\r\n >\r\n ×\r\n </button>\r\n {title && <ModalTitle>{title}</ModalTitle>}\r\n {subtitle && <ModalSubtitle>{subtitle}</ModalSubtitle>}\r\n {body && <ModalBody>{body}</ModalBody>}\r\n <div className=\"proton-Modal__content\">{children}</div>\r\n </div>\r\n </FocusScope>\r\n );\r\n};\r\n\r\nexport interface ModalProps {\r\n /**\r\n * Optional body text content for the modal\r\n * */\r\n body?: string;\r\n /**\r\n * Content to render inside the modal\r\n * */\r\n children: React.ReactNode;\r\n /**\r\n * data-testid for the modal\r\n * */\r\n \"data-testid\"?: string;\r\n /**\r\n * Controls the visibility of the modal\r\n * */\r\n isOpen: boolean;\r\n /**\r\n * Whether to show the modal with an overlay background.\r\n * @default true\r\n * */\r\n isOverlay?: boolean;\r\n /**\r\n * Callback function when modal is closed\r\n * */\r\n onClose?: () => void;\r\n /**\r\n * Optional subtitle text below the modal title\r\n * */\r\n subtitle?: string;\r\n /**\r\n * Optional title text for the modal header\r\n * */\r\n title?: string;\r\n}\r\n\r\n/**\r\n * Modal component with overlay support and responsive behavior.\r\n *\r\n * API:\r\n * - {@link ModalProps}\r\n */\r\nconst ModalWrapper = ({\r\n isOpen,\r\n onClose,\r\n title,\r\n subtitle,\r\n body,\r\n children,\r\n isOverlay = true,\r\n \"data-testid\": dataTestId,\r\n}: ModalProps) => {\r\n const overlayRef = useRef<HTMLDivElement>(null);\r\n const { isClosing, handleClose } = useIsClosing({\r\n onClose,\r\n overlayRef,\r\n });\r\n const isMobile = useBreakpoint(BREAKPOINTS.MEDIUM);\r\n\r\n if (!isOpen) return null;\r\n\r\n const modalContent = (\r\n <ModalContent\r\n isOpen={isOpen}\r\n title={title}\r\n subtitle={subtitle}\r\n body={body}\r\n onClose={handleClose}\r\n isClosing={isClosing}\r\n data-testid={dataTestId}\r\n >\r\n {children}\r\n </ModalContent>\r\n );\r\n\r\n return isOverlay || isMobile ? (\r\n <ScreenOverlay fadeIn ref={overlayRef} onClose={handleClose}>\r\n {modalContent}\r\n </ScreenOverlay>\r\n ) : (\r\n modalContent\r\n );\r\n};\r\n\r\nexport const Modal = Object.assign(ModalWrapper, {\r\n /**\r\n * Renders a h2 styled title\r\n * */\r\n Title: ModalTitle,\r\n /**\r\n * Renders a h3 styled subtitle\r\n * */\r\n Subtitle: ModalSubtitle,\r\n /**\r\n * Renders a div styled body\r\n * */\r\n Body: ModalBody,\r\n /**\r\n * Renders a Proton Button action\r\n * - @prop buttonProps {@link ButtonProps}\r\n * */\r\n Action: ModalAction,\r\n /**\r\n * Renders a group of Proton Buttons\r\n * */\r\n Actions: ModalActions,\r\n});\r\n","\"use client\";\r\n\r\nimport React, { useRef } from \"react\";\r\nimport type { AriaPopoverProps } from \"@react-aria/overlays\";\r\nimport { DismissButton, Overlay, usePopover } from \"@react-aria/overlays\";\r\nimport { useButton } from \"@react-aria/button\";\r\nimport { useOverlayTrigger } from \"@react-aria/overlays\";\r\nimport {\r\n OverlayTriggerProps,\r\n useOverlayTriggerState,\r\n type OverlayTriggerState,\r\n} from \"@react-stately/overlays\";\r\nimport { csx } from \"../../utils\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\n\r\nimport \"./Popover.css\";\r\n\r\n/**\r\n * Hook for creating a popover trigger. This hook manages the state and events for the popover\r\n * and popover trigger. For examples see Popover.stories.tsx.\r\n *\r\n * API:\r\n * - {@link OverlayTriggerProps}\r\n *\r\n * @example\r\n * ```tsx\r\n * let { buttonProps, overlayProps, buttonRef, state } = usePopoverTrigger();\r\n *\r\n * return (\r\n * <div>\r\n * <button {...buttonProps} ref={buttonRef}>\r\n * Trigger\r\n * </button>\r\n *\r\n * {state.isOpen && (\r\n * <Popover\r\n * state={state}\r\n * triggerRef={buttonRef}\r\n * arrow={props.arrow}\r\n * offset={props.offset}\r\n * placement={props.placement}\r\n * >\r\n * <Dialog {...overlayProps} title=\"Popover\">\r\n * Here is some popover content\r\n * </Dialog>\r\n * </Popover>\r\n * )}\r\n * </div>\r\n * );\r\n * ```\r\n */\r\nexport function usePopoverTrigger(props?: OverlayTriggerProps) {\r\n const triggerRef = useRef<HTMLButtonElement>(null);\r\n\r\n const state = useOverlayTriggerState(props || {});\r\n const { triggerProps, overlayProps } = useOverlayTrigger(\r\n { type: \"dialog\" },\r\n state,\r\n triggerRef\r\n );\r\n const { buttonProps } = useButton(triggerProps, triggerRef);\r\n\r\n return { buttonProps, overlayProps, buttonRef: triggerRef, state };\r\n}\r\n\r\ninterface PopoverProps extends Omit<AriaPopoverProps, \"popoverRef\"> {\r\n /**\r\n * Whether to show an arrow on the popover.\r\n */\r\n arrow?: boolean;\r\n /**\r\n * Content to display within the popover.\r\n */\r\n children: React.ReactNode;\r\n /**\r\n * Can optionally forward the ref to the popover.\r\n */\r\n popoverRef?: React.RefObject<HTMLDivElement>;\r\n /**\r\n * The `isOpen` state of the popover and the methods to toggle it.\r\n * - type {@link OverlayTriggerState}\r\n */\r\n state: OverlayTriggerState;\r\n}\r\n\r\n/**\r\n * Popover is an unstyled popover component that handles positioning. It should be used\r\n * with the Dialog component to provide a styled popover.\r\n *\r\n * A popover displays interactive content in context with a trigger element.\r\n * A tooltip displays a description of an element on hover or focus.\r\n *\r\n * @see {@link usePopoverTrigger} for a complete usage example\r\n *\r\n * API:\r\n * - {@link PopoverProps}\r\n * - extends {@link AriaPopoverProps}\r\n */\r\nexport function Popover({\r\n children,\r\n state,\r\n arrow = false,\r\n offset,\r\n ...props\r\n}: PopoverProps) {\r\n const ref = useRef<HTMLDivElement>(null);\r\n const { popoverRef = ref } = props;\r\n const { className, style } = useTheme();\r\n\r\n let { popoverProps, underlayProps, arrowProps, placement } = usePopover(\r\n {\r\n ...props,\r\n offset,\r\n popoverRef,\r\n },\r\n state\r\n );\r\n\r\n return (\r\n <Overlay>\r\n <div {...underlayProps} style={{ position: \"fixed\", inset: 0 }} />\r\n <div\r\n {...popoverProps}\r\n ref={popoverRef}\r\n className={csx(\"proton-Popover\", className)}\r\n style={{ ...popoverProps.style, ...style }}\r\n data-testid={props[\"data-testid\"] || undefined}\r\n data-placement={placement}\r\n data-entering={true}\r\n >\r\n <DismissButton onDismiss={state.close} />\r\n {arrow && (\r\n <svg\r\n {...arrowProps}\r\n className=\"arrow\"\r\n data-placement={placement}\r\n viewBox=\"0 0 12 12\"\r\n >\r\n <title>arrow</title>\r\n <path d=\"M0 0 L6 6 L12 0\" />\r\n </svg>\r\n )}\r\n {children}\r\n </div>\r\n </Overlay>\r\n );\r\n}\r\n\r\nexport default Popover;\r\n","import {filterDOMProps as $aUnai$filterDOMProps, mergeProps as $aUnai$mergeProps, useId as $aUnai$useId, chain as $aUnai$chain} from \"@react-aria/utils\";\nimport {useMemo as $aUnai$useMemo} from \"react\";\nimport {ListKeyboardDelegate as $aUnai$ListKeyboardDelegate, useTypeSelect as $aUnai$useTypeSelect} from \"@react-aria/selection\";\nimport {setInteractionModality as $aUnai$setInteractionModality} from \"@react-aria/interactions\";\nimport {useCollator as $aUnai$useCollator} from \"@react-aria/i18n\";\nimport {useField as $aUnai$useField} from \"@react-aria/label\";\nimport {useMenuTrigger as $aUnai$useMenuTrigger} from \"@react-aria/menu\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\nconst $58aed456727eb0f3$export$703601b7e90536f8 = new WeakMap();\nfunction $58aed456727eb0f3$export$e64b2f635402ca43(props, state, ref) {\n let { keyboardDelegate: keyboardDelegate, isDisabled: isDisabled, isRequired: isRequired, name: name, validationBehavior: validationBehavior = 'aria' } = props;\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = (0, $aUnai$useCollator)({\n usage: 'search',\n sensitivity: 'base'\n });\n let delegate = (0, $aUnai$useMemo)(()=>keyboardDelegate || new (0, $aUnai$ListKeyboardDelegate)(state.collection, state.disabledKeys, ref, collator), [\n keyboardDelegate,\n state.collection,\n state.disabledKeys,\n collator,\n ref\n ]);\n let { menuTriggerProps: menuTriggerProps, menuProps: menuProps } = (0, $aUnai$useMenuTrigger)({\n isDisabled: isDisabled,\n type: 'listbox'\n }, state, ref);\n let onKeyDown = (e)=>{\n switch(e.key){\n case 'ArrowLeft':\n {\n var _delegate_getKeyAbove, _delegate_getFirstKey;\n // prevent scrolling containers\n e.preventDefault();\n let key = state.selectedKey != null ? (_delegate_getKeyAbove = delegate.getKeyAbove) === null || _delegate_getKeyAbove === void 0 ? void 0 : _delegate_getKeyAbove.call(delegate, state.selectedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);\n if (key) state.setSelectedKey(key);\n break;\n }\n case 'ArrowRight':\n {\n var _delegate_getKeyBelow, _delegate_getFirstKey1;\n // prevent scrolling containers\n e.preventDefault();\n let key = state.selectedKey != null ? (_delegate_getKeyBelow = delegate.getKeyBelow) === null || _delegate_getKeyBelow === void 0 ? void 0 : _delegate_getKeyBelow.call(delegate, state.selectedKey) : (_delegate_getFirstKey1 = delegate.getFirstKey) === null || _delegate_getFirstKey1 === void 0 ? void 0 : _delegate_getFirstKey1.call(delegate);\n if (key) state.setSelectedKey(key);\n break;\n }\n }\n };\n let { typeSelectProps: typeSelectProps } = (0, $aUnai$useTypeSelect)({\n keyboardDelegate: delegate,\n selectionManager: state.selectionManager,\n onTypeSelect (key) {\n state.setSelectedKey(key);\n }\n });\n let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = state.displayValidation;\n let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = (0, $aUnai$useField)({\n ...props,\n labelElementType: 'span',\n isInvalid: isInvalid,\n errorMessage: props.errorMessage || validationErrors\n });\n typeSelectProps.onKeyDown = typeSelectProps.onKeyDownCapture;\n delete typeSelectProps.onKeyDownCapture;\n let domProps = (0, $aUnai$filterDOMProps)(props, {\n labelable: true\n });\n let triggerProps = (0, $aUnai$mergeProps)(typeSelectProps, menuTriggerProps, fieldProps);\n let valueId = (0, $aUnai$useId)();\n $58aed456727eb0f3$export$703601b7e90536f8.set(state, {\n isDisabled: isDisabled,\n isRequired: isRequired,\n name: name,\n validationBehavior: validationBehavior\n });\n return {\n labelProps: {\n ...labelProps,\n onClick: ()=>{\n if (!props.isDisabled) {\n var _ref_current;\n (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.focus();\n // Show the focus ring so the user knows where focus went\n (0, $aUnai$setInteractionModality)('keyboard');\n }\n }\n },\n triggerProps: (0, $aUnai$mergeProps)(domProps, {\n ...triggerProps,\n isDisabled: isDisabled,\n onKeyDown: (0, $aUnai$chain)(triggerProps.onKeyDown, onKeyDown, props.onKeyDown),\n onKeyUp: props.onKeyUp,\n 'aria-labelledby': [\n valueId,\n triggerProps['aria-labelledby'],\n triggerProps['aria-label'] && !triggerProps['aria-labelledby'] ? triggerProps.id : null\n ].filter(Boolean).join(' '),\n onFocus (e) {\n if (state.isFocused) return;\n if (props.onFocus) props.onFocus(e);\n if (props.onFocusChange) props.onFocusChange(true);\n state.setFocused(true);\n },\n onBlur (e) {\n if (state.isOpen) return;\n if (props.onBlur) props.onBlur(e);\n if (props.onFocusChange) props.onFocusChange(false);\n state.setFocused(false);\n }\n }),\n valueProps: {\n id: valueId\n },\n menuProps: {\n ...menuProps,\n autoFocus: state.focusStrategy || true,\n shouldSelectOnPressUp: true,\n shouldFocusOnHover: true,\n disallowEmptySelection: true,\n linkBehavior: 'selection',\n onBlur: (e)=>{\n if (e.currentTarget.contains(e.relatedTarget)) return;\n if (props.onBlur) props.onBlur(e);\n if (props.onFocusChange) props.onFocusChange(false);\n state.setFocused(false);\n },\n 'aria-labelledby': [\n fieldProps['aria-labelledby'],\n triggerProps['aria-label'] && !fieldProps['aria-labelledby'] ? triggerProps.id : null\n ].filter(Boolean).join(' ')\n },\n descriptionProps: descriptionProps,\n errorMessageProps: errorMessageProps,\n isInvalid: isInvalid,\n validationErrors: validationErrors,\n validationDetails: validationDetails\n };\n}\n\n\nexport {$58aed456727eb0f3$export$703601b7e90536f8 as selectData, $58aed456727eb0f3$export$e64b2f635402ca43 as useSelect};\n//# sourceMappingURL=useSelect.module.js.map\n","import {selectData as $58aed456727eb0f3$export$703601b7e90536f8} from \"./useSelect.mjs\";\nimport $8BE50$react, {useRef as $8BE50$useRef} from \"react\";\nimport {useFormReset as $8BE50$useFormReset} from \"@react-aria/utils\";\nimport {useFormValidation as $8BE50$useFormValidation} from \"@react-aria/form\";\nimport {useVisuallyHidden as $8BE50$useVisuallyHidden} from \"@react-aria/visually-hidden\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $bdd25dc72710631f$export$f809e80f58e251d1(props, state, triggerRef) {\n let data = (0, $58aed456727eb0f3$export$703601b7e90536f8).get(state) || {};\n let { autoComplete: autoComplete, name: name = data.name, isDisabled: isDisabled = data.isDisabled } = props;\n let { validationBehavior: validationBehavior, isRequired: isRequired } = data;\n let { visuallyHiddenProps: visuallyHiddenProps } = (0, $8BE50$useVisuallyHidden)();\n (0, $8BE50$useFormReset)(props.selectRef, state.selectedKey, state.setSelectedKey);\n (0, $8BE50$useFormValidation)({\n validationBehavior: validationBehavior,\n focus: ()=>{\n var _triggerRef_current;\n return (_triggerRef_current = triggerRef.current) === null || _triggerRef_current === void 0 ? void 0 : _triggerRef_current.focus();\n }\n }, state, props.selectRef);\n var _state_selectedKey;\n // In Safari, the <select> cannot have `display: none` or `hidden` for autofill to work.\n // In Firefox, there must be a <label> to identify the <select> whereas other browsers\n // seem to identify it just by surrounding text.\n // The solution is to use <VisuallyHidden> to hide the elements, which clips the elements to a\n // 1px rectangle. In addition, we hide from screen readers with aria-hidden, and make the <select>\n // non tabbable with tabIndex={-1}.\n return {\n containerProps: {\n ...visuallyHiddenProps,\n 'aria-hidden': true,\n // @ts-ignore\n ['data-react-aria-prevent-focus']: true,\n // @ts-ignore\n ['data-a11y-ignore']: 'aria-hidden-focus'\n },\n inputProps: {\n style: {\n display: 'none'\n }\n },\n selectProps: {\n tabIndex: -1,\n autoComplete: autoComplete,\n disabled: isDisabled,\n required: validationBehavior === 'native' && isRequired,\n name: name,\n value: (_state_selectedKey = state.selectedKey) !== null && _state_selectedKey !== void 0 ? _state_selectedKey : undefined,\n onChange: (e)=>state.setSelectedKey(e.target.value)\n }\n };\n}\nfunction $bdd25dc72710631f$export$cbd84cdb2e668835(props) {\n let { state: state, triggerRef: triggerRef, label: label, name: name, isDisabled: isDisabled } = props;\n let selectRef = (0, $8BE50$useRef)(null);\n let { containerProps: containerProps, selectProps: selectProps } = $bdd25dc72710631f$export$f809e80f58e251d1({\n ...props,\n selectRef: selectRef\n }, state, triggerRef);\n var _state_selectedKey;\n // If used in a <form>, use a hidden input so the value can be submitted to a server.\n // If the collection isn't too big, use a hidden <select> element for this so that browser\n // autofill will work. Otherwise, use an <input type=\"hidden\">.\n if (state.collection.size <= 300) return /*#__PURE__*/ (0, $8BE50$react).createElement(\"div\", {\n ...containerProps,\n \"data-testid\": \"hidden-select-container\"\n }, /*#__PURE__*/ (0, $8BE50$react).createElement(\"label\", null, label, /*#__PURE__*/ (0, $8BE50$react).createElement(\"select\", {\n ...selectProps,\n ref: selectRef\n }, /*#__PURE__*/ (0, $8BE50$react).createElement(\"option\", null), [\n ...state.collection.getKeys()\n ].map((key)=>{\n let item = state.collection.getItem(key);\n if (item && item.type === 'item') return /*#__PURE__*/ (0, $8BE50$react).createElement(\"option\", {\n key: item.key,\n value: item.key\n }, item.textValue);\n }))));\n else if (name) return /*#__PURE__*/ (0, $8BE50$react).createElement(\"input\", {\n type: \"hidden\",\n autoComplete: selectProps.autoComplete,\n name: name,\n disabled: isDisabled,\n value: (_state_selectedKey = state.selectedKey) !== null && _state_selectedKey !== void 0 ? _state_selectedKey : ''\n });\n return null;\n}\n\n\nexport {$bdd25dc72710631f$export$f809e80f58e251d1 as useHiddenSelect, $bdd25dc72710631f$export$cbd84cdb2e668835 as HiddenSelect};\n//# sourceMappingURL=HiddenSelect.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $a02d57049d202695$export$d085fb9e920b5ca7 {\n *[Symbol.iterator]() {\n yield* this.iterable;\n }\n get size() {\n return this.keyMap.size;\n }\n getKeys() {\n return this.keyMap.keys();\n }\n getKeyBefore(key) {\n let node = this.keyMap.get(key);\n var _node_prevKey;\n return node ? (_node_prevKey = node.prevKey) !== null && _node_prevKey !== void 0 ? _node_prevKey : null : null;\n }\n getKeyAfter(key) {\n let node = this.keyMap.get(key);\n var _node_nextKey;\n return node ? (_node_nextKey = node.nextKey) !== null && _node_nextKey !== void 0 ? _node_nextKey : null : null;\n }\n getFirstKey() {\n return this.firstKey;\n }\n getLastKey() {\n return this.lastKey;\n }\n getItem(key) {\n var _this_keyMap_get;\n return (_this_keyMap_get = this.keyMap.get(key)) !== null && _this_keyMap_get !== void 0 ? _this_keyMap_get : null;\n }\n at(idx) {\n const keys = [\n ...this.getKeys()\n ];\n return this.getItem(keys[idx]);\n }\n getChildren(key) {\n let node = this.keyMap.get(key);\n return (node === null || node === void 0 ? void 0 : node.childNodes) || [];\n }\n constructor(nodes){\n this.keyMap = new Map();\n this.firstKey = null;\n this.lastKey = null;\n this.iterable = nodes;\n let visit = (node)=>{\n this.keyMap.set(node.key, node);\n if (node.childNodes && node.type === 'section') for (let child of node.childNodes)visit(child);\n };\n for (let node of nodes)visit(node);\n let last = null;\n let index = 0;\n for (let [key, node] of this.keyMap){\n if (last) {\n last.nextKey = key;\n node.prevKey = last.key;\n } else {\n this.firstKey = key;\n node.prevKey = undefined;\n }\n if (node.type === 'item') node.index = index++;\n last = node;\n // Set nextKey as undefined since this might be the last node\n // If it isn't the last node, last.nextKey will properly set at start of new loop\n last.nextKey = undefined;\n }\n var _last_key;\n this.lastKey = (_last_key = last === null || last === void 0 ? void 0 : last.key) !== null && _last_key !== void 0 ? _last_key : null;\n }\n}\n\n\nexport {$a02d57049d202695$export$d085fb9e920b5ca7 as ListCollection};\n//# sourceMappingURL=ListCollection.module.js.map\n","import {ListCollection as $a02d57049d202695$export$d085fb9e920b5ca7} from \"./ListCollection.mjs\";\nimport {useMultipleSelectionState as $d5vlZ$useMultipleSelectionState, SelectionManager as $d5vlZ$SelectionManager} from \"@react-stately/selection\";\nimport {useMemo as $d5vlZ$useMemo, useCallback as $d5vlZ$useCallback, useRef as $d5vlZ$useRef, useEffect as $d5vlZ$useEffect} from \"react\";\nimport {useCollection as $d5vlZ$useCollection} from \"@react-stately/collections\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $e72dd72e1c76a225$export$2f645645f7bca764(props) {\n let { filter: filter, layoutDelegate: layoutDelegate } = props;\n let selectionState = (0, $d5vlZ$useMultipleSelectionState)(props);\n let disabledKeys = (0, $d5vlZ$useMemo)(()=>props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [\n props.disabledKeys\n ]);\n let factory = (0, $d5vlZ$useCallback)((nodes)=>filter ? new (0, $a02d57049d202695$export$d085fb9e920b5ca7)(filter(nodes)) : new (0, $a02d57049d202695$export$d085fb9e920b5ca7)(nodes), [\n filter\n ]);\n let context = (0, $d5vlZ$useMemo)(()=>({\n suppressTextValueWarning: props.suppressTextValueWarning\n }), [\n props.suppressTextValueWarning\n ]);\n let collection = (0, $d5vlZ$useCollection)(props, factory, context);\n let selectionManager = (0, $d5vlZ$useMemo)(()=>new (0, $d5vlZ$SelectionManager)(collection, selectionState, {\n layoutDelegate: layoutDelegate\n }), [\n collection,\n selectionState,\n layoutDelegate\n ]);\n $e72dd72e1c76a225$var$useFocusedKeyReset(collection, selectionManager);\n return {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager\n };\n}\nfunction $e72dd72e1c76a225$export$ba9d38c0f1bf2b36(state, filter) {\n let collection = (0, $d5vlZ$useMemo)(()=>filter ? state.collection.UNSTABLE_filter(filter) : state.collection, [\n state.collection,\n filter\n ]);\n let selectionManager = state.selectionManager.withCollection(collection);\n $e72dd72e1c76a225$var$useFocusedKeyReset(collection, selectionManager);\n return {\n collection: collection,\n selectionManager: selectionManager,\n disabledKeys: state.disabledKeys\n };\n}\nfunction $e72dd72e1c76a225$var$useFocusedKeyReset(collection, selectionManager) {\n // Reset focused key if that item is deleted from the collection.\n const cachedCollection = (0, $d5vlZ$useRef)(null);\n (0, $d5vlZ$useEffect)(()=>{\n if (selectionManager.focusedKey != null && !collection.getItem(selectionManager.focusedKey) && cachedCollection.current) {\n const startItem = cachedCollection.current.getItem(selectionManager.focusedKey);\n const cachedItemNodes = [\n ...cachedCollection.current.getKeys()\n ].map((key)=>{\n const itemNode = cachedCollection.current.getItem(key);\n return (itemNode === null || itemNode === void 0 ? void 0 : itemNode.type) === 'item' ? itemNode : null;\n }).filter((node)=>node !== null);\n const itemNodes = [\n ...collection.getKeys()\n ].map((key)=>{\n const itemNode = collection.getItem(key);\n return (itemNode === null || itemNode === void 0 ? void 0 : itemNode.type) === 'item' ? itemNode : null;\n }).filter((node)=>node !== null);\n var _cachedItemNodes_length, _itemNodes_length;\n const diff = ((_cachedItemNodes_length = cachedItemNodes === null || cachedItemNodes === void 0 ? void 0 : cachedItemNodes.length) !== null && _cachedItemNodes_length !== void 0 ? _cachedItemNodes_length : 0) - ((_itemNodes_length = itemNodes === null || itemNodes === void 0 ? void 0 : itemNodes.length) !== null && _itemNodes_length !== void 0 ? _itemNodes_length : 0);\n var _startItem_index, _startItem_index1, _itemNodes_length1;\n let index = Math.min(diff > 1 ? Math.max(((_startItem_index = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index !== void 0 ? _startItem_index : 0) - diff + 1, 0) : (_startItem_index1 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index1 !== void 0 ? _startItem_index1 : 0, ((_itemNodes_length1 = itemNodes === null || itemNodes === void 0 ? void 0 : itemNodes.length) !== null && _itemNodes_length1 !== void 0 ? _itemNodes_length1 : 0) - 1);\n let newNode = null;\n let isReverseSearching = false;\n while(index >= 0){\n if (!selectionManager.isDisabled(itemNodes[index].key)) {\n newNode = itemNodes[index];\n break;\n }\n // Find next, not disabled item.\n if (index < itemNodes.length - 1 && !isReverseSearching) index++;\n else {\n isReverseSearching = true;\n var _startItem_index2, _startItem_index3;\n if (index > ((_startItem_index2 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index2 !== void 0 ? _startItem_index2 : 0)) index = (_startItem_index3 = startItem === null || startItem === void 0 ? void 0 : startItem.index) !== null && _startItem_index3 !== void 0 ? _startItem_index3 : 0;\n index--;\n }\n }\n selectionManager.setFocusedKey(newNode ? newNode.key : null);\n }\n cachedCollection.current = collection;\n }, [\n collection,\n selectionManager\n ]);\n}\n\n\nexport {$e72dd72e1c76a225$export$2f645645f7bca764 as useListState, $e72dd72e1c76a225$export$ba9d38c0f1bf2b36 as UNSTABLE_useFilteredListState};\n//# sourceMappingURL=useListState.module.js.map\n","import {useListState as $e72dd72e1c76a225$export$2f645645f7bca764} from \"./useListState.mjs\";\nimport {useControlledState as $eBozH$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $eBozH$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $a0d645289fe9b86b$export$e7f05e985daf4b5f(props) {\n var _props_defaultSelectedKey;\n let [selectedKey, setSelectedKey] = (0, $eBozH$useControlledState)(props.selectedKey, (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : null, props.onSelectionChange);\n let selectedKeys = (0, $eBozH$useMemo)(()=>selectedKey != null ? [\n selectedKey\n ] : [], [\n selectedKey\n ]);\n let { collection: collection, disabledKeys: disabledKeys, selectionManager: selectionManager } = (0, $e72dd72e1c76a225$export$2f645645f7bca764)({\n ...props,\n selectionMode: 'single',\n disallowEmptySelection: true,\n allowDuplicateSelectionEvents: true,\n selectedKeys: selectedKeys,\n onSelectionChange: (keys)=>{\n // impossible, but TS doesn't know that\n if (keys === 'all') return;\n var _keys_values_next_value;\n let key = (_keys_values_next_value = keys.values().next().value) !== null && _keys_values_next_value !== void 0 ? _keys_values_next_value : null;\n // Always fire onSelectionChange, even if the key is the same\n // as the current key (useControlledState does not).\n if (key === selectedKey && props.onSelectionChange) props.onSelectionChange(key);\n setSelectedKey(key);\n }\n });\n let selectedItem = selectedKey != null ? collection.getItem(selectedKey) : null;\n return {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager,\n selectedKey: selectedKey,\n setSelectedKey: setSelectedKey,\n selectedItem: selectedItem\n };\n}\n\n\nexport {$a0d645289fe9b86b$export$e7f05e985daf4b5f as useSingleSelectListState};\n//# sourceMappingURL=useSingleSelectListState.module.js.map\n","import {useFormValidationState as $6FfNf$useFormValidationState} from \"@react-stately/form\";\nimport {useOverlayTriggerState as $6FfNf$useOverlayTriggerState} from \"@react-stately/overlays\";\nimport {useSingleSelectListState as $6FfNf$useSingleSelectListState} from \"@react-stately/list\";\nimport {useState as $6FfNf$useState} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $2bc3a590c5373a4e$export$5159ec8b34d4ec12(props) {\n let triggerState = (0, $6FfNf$useOverlayTriggerState)(props);\n let [focusStrategy, setFocusStrategy] = (0, $6FfNf$useState)(null);\n let listState = (0, $6FfNf$useSingleSelectListState)({\n ...props,\n onSelectionChange: (key)=>{\n if (props.onSelectionChange != null) props.onSelectionChange(key);\n triggerState.close();\n validationState.commitValidation();\n }\n });\n let validationState = (0, $6FfNf$useFormValidationState)({\n ...props,\n value: listState.selectedKey\n });\n let [isFocused, setFocused] = (0, $6FfNf$useState)(false);\n return {\n ...validationState,\n ...listState,\n ...triggerState,\n focusStrategy: focusStrategy,\n open (focusStrategy = null) {\n // Don't open if the collection is empty.\n if (listState.collection.size !== 0) {\n setFocusStrategy(focusStrategy);\n triggerState.open();\n }\n },\n toggle (focusStrategy = null) {\n if (listState.collection.size !== 0) {\n setFocusStrategy(focusStrategy);\n triggerState.toggle();\n }\n },\n isFocused: isFocused,\n setFocused: setFocused\n };\n}\n\n\nexport {$2bc3a590c5373a4e$export$5159ec8b34d4ec12 as useSelectState};\n//# sourceMappingURL=useSelectState.module.js.map\n","\"use client\";\r\n\r\nimport { useRef } from \"react\";\r\nimport { AriaListBoxOptions, useListBox, useOption } from \"@react-aria/listbox\";\r\nimport { type SelectState, useSelectState } from \"@react-stately/select\";\r\n\r\nimport \"./ListBox.css\";\r\n\r\ninterface ListBoxProps extends AriaListBoxOptions<unknown> {\r\n /**\r\n * State management object from react-stately.\r\n * - type {@link SelectState}\r\n */\r\n state: ReturnType<typeof useSelectState>;\r\n}\r\n\r\n/**\r\n * A list box component that renders a list of options\r\n *\r\n * API:\r\n * - {@link ListBoxProps}\r\n * - extends {@link AriaListBoxOptions}\r\n */\r\nexport const ListBox = (props: ListBoxProps) => {\r\n let localRef = useRef<HTMLUListElement>(null);\r\n let { state } = props;\r\n let { listBoxProps } = useListBox(props, state, localRef);\r\n\r\n return (\r\n <ul\r\n {...listBoxProps}\r\n ref={localRef}\r\n data-testid=\"listbox\"\r\n className=\"proton-ListBox\"\r\n >\r\n {[...state.collection].map((item) => {\r\n return <ListBoxItem key={item.key} item={item} state={state} />;\r\n })}\r\n </ul>\r\n );\r\n};\r\n\r\nconst ListBoxItem = ({ item, state }) => {\r\n let ref = useRef<HTMLLIElement>(null);\r\n let { optionProps } = useOption({ key: item.key }, state, ref);\r\n\r\n return (\r\n <li {...optionProps} className=\"proton-ListBox__item\" ref={ref}>\r\n {item.rendered}\r\n </li>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport { forwardRef, ReactNode, RefObject, useEffect, useRef } from \"react\";\r\nimport { HiddenSelect, useSelect } from \"@react-aria/select\";\r\nimport { useButton } from \"@react-aria/button\";\r\nimport { useSelectState } from \"@react-stately/select\";\r\nimport { Item } from \"@react-stately/collections\";\r\n\r\nimport { BREAKPOINTS } from \"../../constants\";\r\nimport { useBreakpoint } from \"../../hooks/useBreakpoint\";\r\nimport { csx } from \"../../utils\";\r\nimport { ActionMenu, ActionMenuAction } from \"../ActionMenu/ActionMenu\";\r\nimport { ListBox } from \"../ListBox/ListBox\";\r\nimport { Popover } from \"../Popover/Popover\";\r\n\r\nimport \"./Select.css\";\r\n\r\ninterface SelectButtonProps {\r\n disabled?: boolean;\r\n isOpen?: boolean;\r\n children?: ReactNode;\r\n}\r\n\r\nconst SelectButton = forwardRef<HTMLButtonElement, SelectButtonProps>(\r\n (props, ref: RefObject<HTMLButtonElement>) => {\r\n let { buttonProps } = useButton(\r\n {\r\n ...props,\r\n isDisabled: props.disabled,\r\n },\r\n ref\r\n );\r\n\r\n return (\r\n <button\r\n {...buttonProps}\r\n ref={ref}\r\n className={csx(\r\n \"proton-Select__trigger\",\r\n props.disabled && \"proton-Select__trigger--disabled\",\r\n !props.isOpen && \"proton-Select__trigger--closed\",\r\n props.isOpen && \"proton-Select__trigger--opened\"\r\n )}\r\n >\r\n {props.children}\r\n </button>\r\n );\r\n }\r\n);\r\nSelectButton.displayName = \"ProtonUISelectButton\";\r\n\r\ninterface SelectItem {\r\n label: string;\r\n key: string;\r\n to?: string;\r\n}\r\n\r\nexport interface SelectProps {\r\n /** Array of keys that should be disabled\r\n * @example [\"Thing 1\", \"Thing 2\"]\r\n */\r\n disabledKeys?: string[];\r\n\r\n /** The key of the default selected item */\r\n defaultSelectedKey?: string;\r\n\r\n /** Test ID for the select */\r\n \"data-testid\"?: string;\r\n\r\n /** Whether the select is disabled */\r\n isDisabled?: boolean;\r\n\r\n /** Array of items to display\r\n * @example [{ key: \"thing-1\", label: \"Thing 1\" }, { key: \"thing-2\", label: \"Thing 2\" }]\r\n */\r\n items: SelectItem[];\r\n\r\n /** Label to display above the select\r\n * @external https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label#text\r\n */\r\n label?: string;\r\n\r\n /** The name of the select field */\r\n name: string;\r\n\r\n /** Callback fired when the menu closes */\r\n onClose?: () => void;\r\n\r\n /** Callback fired when the menu opens */\r\n onOpen?: () => void;\r\n\r\n /** Callback fired when selection changes */\r\n onSelectionChange?: (key: string) => void;\r\n\r\n /** Currently selected key */\r\n selectedKey?: string;\r\n}\r\n\r\n/**\r\n * A dropdown select menu that opens a popover on desktop and an action menu on mobile.\r\n * Supports controlled and uncontrolled modes.\r\n *\r\n * API:\r\n * - {@link SelectProps}\r\n */\r\nexport function Select({\r\n label,\r\n name,\r\n isDisabled,\r\n disabledKeys,\r\n selectedKey,\r\n onSelectionChange,\r\n defaultSelectedKey,\r\n onOpen,\r\n onClose,\r\n items,\r\n \"data-testid\": testId,\r\n}: SelectProps) {\r\n const selectProps = {\r\n label,\r\n isDisabled,\r\n disabledKeys,\r\n selectedKey,\r\n defaultSelectedKey,\r\n onSelectionChange,\r\n onOpenChange: (isOpen: boolean) => {\r\n if (isOpen) {\r\n onOpen?.();\r\n } else {\r\n onClose?.();\r\n }\r\n },\r\n \"data-testid\": testId,\r\n children: items.map((item) => (\r\n <Item key={item.key} textValue={item.label}>\r\n {item.label}\r\n </Item>\r\n )),\r\n };\r\n\r\n const state = useSelectState(selectProps);\r\n const isMobile = useBreakpoint(BREAKPOINTS.MEDIUM);\r\n const triggerRef = useRef<HTMLButtonElement>(null);\r\n const popoverRef = useRef<HTMLDivElement>(null);\r\n const { labelProps, triggerProps, valueProps, menuProps } = useSelect(\r\n { ...selectProps, label: label || name },\r\n state,\r\n triggerRef\r\n );\r\n\r\n useEffect(() => {\r\n if (\r\n state.isOpen &&\r\n popoverRef.current &&\r\n triggerRef.current &&\r\n !popoverRef.current.style.minWidth\r\n ) {\r\n // Adjust the popover width to be at least the width of the trigger\r\n popoverRef.current.style.minWidth = `${triggerRef.current.offsetWidth}px`;\r\n }\r\n }, [state.isOpen]);\r\n\r\n const actionItems: ActionMenuAction[] = items.map((item) => ({\r\n key: item.key,\r\n label: item.label,\r\n to: item.to,\r\n onAction: () => {\r\n state.setSelectedKey(item.key);\r\n state.close();\r\n },\r\n }));\r\n\r\n return (\r\n <div\r\n className=\"proton-Select\"\r\n aria-label={label || name}\r\n aria-disabled={isDisabled}\r\n >\r\n {label ? (\r\n <div\r\n {...labelProps}\r\n className=\"proton-Select__label\"\r\n data-testid=\"select-label\"\r\n >\r\n {label}\r\n </div>\r\n ) : (\r\n // If no label is provided, render an invisible label for a11y\r\n <div {...labelProps} />\r\n )}\r\n\r\n <HiddenSelect\r\n isDisabled={isDisabled}\r\n state={state}\r\n triggerRef={triggerRef}\r\n label={label || name}\r\n name={name}\r\n data-testid=\"hidden-select-container\"\r\n />\r\n\r\n <SelectButton\r\n {...triggerProps}\r\n isOpen={state.isOpen}\r\n ref={triggerRef}\r\n disabled={isDisabled}\r\n data-testid={testId}\r\n >\r\n <div {...valueProps} className=\"proton-Select__value\">\r\n {state.selectedItem\r\n ? state.selectedItem.rendered\r\n : \"Select an option\"}\r\n </div>\r\n <div\r\n className={csx(\r\n \"proton-Select__trigger_icon\",\r\n state.isOpen && \"proton-Select__trigger_icon--flipped\"\r\n )}\r\n aria-hidden=\"true\"\r\n >\r\n <svg id=\"caret-down\" viewBox=\"0 0 512 512\">\r\n <title>{state.isOpen ? \"caret down\" : \"caret up\"}</title>\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7L86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z\"\r\n />\r\n </svg>\r\n </div>\r\n </SelectButton>\r\n\r\n {state.isOpen && (\r\n <>\r\n {!isMobile ? (\r\n <div className=\"proton-Select__popover\">\r\n <Popover\r\n state={state}\r\n triggerRef={triggerRef}\r\n popoverRef={popoverRef}\r\n placement=\"bottom start\"\r\n data-testid=\"select-popover\"\r\n >\r\n <ListBox {...menuProps} state={state} />\r\n </Popover>\r\n </div>\r\n ) : (\r\n <ActionMenu\r\n isOpen={state.isOpen}\r\n onClose={() => state.close()}\r\n actions={actionItems}\r\n selectedKeys={[state.selectedKey.toString()]}\r\n disabledKeys={disabledKeys}\r\n />\r\n )}\r\n </>\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nSelect.displayName = \"ProtonUISelect\";\r\n","import {mergeProps as $bvdLj$mergeProps, filterDOMProps as $bvdLj$filterDOMProps, useFormReset as $bvdLj$useFormReset} from \"@react-aria/utils\";\nimport {usePress as $bvdLj$usePress, useFocusable as $bvdLj$useFocusable} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $d2c8e2b0480f3f34$export$cbe85ee05b554577(props, state, ref) {\n let { isDisabled: isDisabled = false, isReadOnly: isReadOnly = false, value: value, name: name, children: children, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby, validationState: validationState = 'valid', isInvalid: isInvalid } = props;\n let onChange = (e)=>{\n // since we spread props on label, onChange will end up there as well as in here.\n // so we have to stop propagation at the lowest level that we care about\n e.stopPropagation();\n state.setSelected(e.target.checked);\n };\n let hasChildren = children != null;\n let hasAriaLabel = ariaLabel != null || ariaLabelledby != null;\n if (!hasChildren && !hasAriaLabel && process.env.NODE_ENV !== 'production') console.warn('If you do not provide children, you must specify an aria-label for accessibility');\n // Handle press state for keyboard interactions and cases where labelProps is not used.\n let { pressProps: pressProps, isPressed: isPressed } = (0, $bvdLj$usePress)({\n isDisabled: isDisabled\n });\n // Handle press state on the label.\n let { pressProps: labelProps, isPressed: isLabelPressed } = (0, $bvdLj$usePress)({\n onPress () {\n var _ref_current;\n state.toggle();\n (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.focus();\n },\n isDisabled: isDisabled || isReadOnly\n });\n let { focusableProps: focusableProps } = (0, $bvdLj$useFocusable)(props, ref);\n let interactions = (0, $bvdLj$mergeProps)(pressProps, focusableProps);\n let domProps = (0, $bvdLj$filterDOMProps)(props, {\n labelable: true\n });\n (0, $bvdLj$useFormReset)(ref, state.isSelected, state.setSelected);\n return {\n labelProps: (0, $bvdLj$mergeProps)(labelProps, {\n onClick: (e)=>e.preventDefault()\n }),\n inputProps: (0, $bvdLj$mergeProps)(domProps, {\n 'aria-invalid': isInvalid || validationState === 'invalid' || undefined,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-controls': props['aria-controls'],\n 'aria-readonly': isReadOnly || undefined,\n onChange: onChange,\n disabled: isDisabled,\n ...value == null ? {} : {\n value: value\n },\n name: name,\n type: 'checkbox',\n ...interactions\n }),\n isSelected: state.isSelected,\n isPressed: isPressed || isLabelPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly,\n isInvalid: isInvalid || validationState === 'invalid'\n };\n}\n\n\nexport {$d2c8e2b0480f3f34$export$cbe85ee05b554577 as useToggle};\n//# sourceMappingURL=useToggle.module.js.map\n","import {useToggle as $ifSyJ$useToggle} from \"@react-aria/toggle\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {\n let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isPressed: isPressed, isDisabled: isDisabled, isReadOnly: isReadOnly } = (0, $ifSyJ$useToggle)(props, state, ref);\n return {\n labelProps: labelProps,\n inputProps: {\n ...inputProps,\n role: 'switch',\n checked: isSelected\n },\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly\n };\n}\n\n\nexport {$b418ec0c85c52f27$export$d853f7095ae95f88 as useSwitch};\n//# sourceMappingURL=useSwitch.module.js.map\n","import {useControlledState as $d8rik$useControlledState} from \"@react-stately/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $3017fa7ffdddec74$export$8042c6c013fd5226(props = {}) {\n let { isReadOnly: isReadOnly } = props;\n // have to provide an empty function so useControlledState doesn't throw a fit\n // can't use useControlledState's prop calling because we need the event object from the change\n let [isSelected, setSelected] = (0, $d8rik$useControlledState)(props.isSelected, props.defaultSelected || false, props.onChange);\n function updateSelected(value) {\n if (!isReadOnly) setSelected(value);\n }\n function toggleState() {\n if (!isReadOnly) setSelected(!isSelected);\n }\n return {\n isSelected: isSelected,\n setSelected: updateSelected,\n toggle: toggleState\n };\n}\n\n\nexport {$3017fa7ffdddec74$export$8042c6c013fd5226 as useToggleState};\n//# sourceMappingURL=useToggleState.module.js.map\n","\"use client\";\r\n\r\nimport { useRef } from \"react\";\r\nimport { useSwitch } from \"@react-aria/switch\";\r\nimport { VisuallyHidden } from \"@react-aria/visually-hidden\";\r\nimport { useToggleState } from \"@react-stately/toggle\";\r\n\r\nimport { csx } from \"../../utils\";\r\n\r\nimport \"./Switch.css\";\r\n\r\nexport interface SwitchProps {\r\n /**\r\n * Whether the Switch is in the 'on' state (uncontrolled).\r\n */\r\n defaultOn?: boolean;\r\n\r\n /**\r\n * Whether the Switch is in the 'on' state. Providing this prop causes the\r\n * component to become controlled.\r\n */\r\n isOn?: boolean;\r\n\r\n /**\r\n * Should the input be non-interactive?\r\n */\r\n isDisabled?: boolean;\r\n\r\n /**\r\n * Called when the Switch's on state changes.\r\n */\r\n onChange?: (isOn: boolean) => void;\r\n\r\n /**\r\n * The string used for the input label. Forwarded to `aria-label`.\r\n */\r\n label?: string;\r\n\r\n /**\r\n * The text or component to be rendered as the Switch's description.\r\n */\r\n children?: React.ReactNode;\r\n}\r\n\r\n/**\r\n * A toggle switch component for boolean state control with support for controlled and uncontrolled modes.\r\n *\r\n * API:\r\n * - {@link SwitchProps}\r\n */\r\nexport function Switch(props: SwitchProps) {\r\n let sanitizedProps = {\r\n ...props,\r\n isSelected: props.isOn,\r\n \"data-testid\": undefined,\r\n };\r\n\r\n let ref = useRef(null);\r\n\r\n let state = useToggleState(sanitizedProps);\r\n let { inputProps } = useSwitch(sanitizedProps, state, ref);\r\n\r\n return (\r\n <label\r\n className={csx(\r\n \"proton-Switch\",\r\n props.isDisabled && \"proton-Switch--disabled\",\r\n state.isSelected && \"proton-Switch--on\"\r\n )}\r\n data-on={state.isSelected || undefined}\r\n data-disabled={props.isDisabled || undefined}\r\n data-testid={props[\"data-testid\"] || undefined}\r\n aria-label={props.label || undefined}\r\n >\r\n <VisuallyHidden>\r\n <input {...inputProps} ref={ref} />\r\n </VisuallyHidden>\r\n {props.label && <div className=\"proton-Switch__label\">{props.label}</div>}\r\n <div className=\"proton-Switch__wrapper\">\r\n <div className=\"proton-Switch__toggle\">\r\n <div className=\"proton-Switch__slider\"></div>\r\n </div>\r\n {props.children && (\r\n <div className=\"proton-Switch__description\">{props.children}</div>\r\n )}\r\n </div>\r\n </label>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport { ReactNode } from \"react\";\r\nimport { csx } from \"../../../utils\";\r\nimport \"./TextEllipsis.css\";\r\n\r\ninterface TextEllipsisProps {\r\n /**\r\n * The content to display within the text ellipsis.\r\n */\r\n children: ReactNode;\r\n\r\n /**\r\n * The maximum width of the text container in any valid CSS unit (px, rem, em, %, etc.).\r\n * When the container width is less than this value, text will be truncated with an ellipsis.\r\n */\r\n maxWidth?: string | number;\r\n\r\n /**\r\n * Whether to truncate the text to a single line. Default is true.\r\n * If false, the text will wrap to multiple lines.\r\n */\r\n singleLine?: boolean;\r\n\r\n /**\r\n * The number of lines to show before truncating with an ellipsis.\r\n * Only applies when singleLine is false.\r\n */\r\n lines?: number;\r\n\r\n /**\r\n * The title attribute to show on hover. If not provided and singleLine is true,\r\n * the children will be used as the title (if children is a string).\r\n */\r\n title?: string;\r\n\r\n /**\r\n * A test ID.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * A component that displays text with an ellipsis when it overflows its container.\r\n *\r\n * API:\r\n * - {@link TextEllipsisProps}\r\n */\r\nexport const TextEllipsis = ({\r\n children,\r\n maxWidth,\r\n singleLine = true,\r\n lines = 1,\r\n title,\r\n \"data-testid\": testId,\r\n}: TextEllipsisProps) => {\r\n return (\r\n <div\r\n className={csx(\r\n \"proton-TextEllipsis\",\r\n singleLine || lines === 1\r\n ? \"proton-TextEllipsis--single-line\"\r\n : lines > 1\r\n ? \"proton-TextEllipsis--multi-line\"\r\n : \"\"\r\n )}\r\n style={{\r\n maxWidth: maxWidth,\r\n WebkitLineClamp: lines,\r\n }}\r\n title={title}\r\n data-testid={testId}\r\n >\r\n {children}\r\n </div>\r\n );\r\n};\r\n","\"use client\";\r\n\r\nimport {\r\n Tooltip as AriaTooltip,\r\n TooltipProps as AriaTooltipProps,\r\n TooltipTrigger as AriaTooltipTrigger,\r\n Focusable,\r\n OverlayArrow,\r\n TooltipTriggerComponentProps,\r\n} from \"react-aria-components\";\r\n\r\nimport { useRef, useState } from \"react\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\n\r\nimport { csx } from \"../../utils\";\r\nimport \"../Dialog/Dialog.css\";\r\nimport \"./Tooltip.css\";\r\n\r\nexport interface TooltipProps extends Omit<AriaTooltipProps, \"children\"> {\r\n children: React.ReactNode;\r\n arrow?: boolean;\r\n}\r\n\r\nfunction Tooltip({ children, arrow, ...props }: TooltipProps) {\r\n const { style, className } = useTheme();\r\n\r\n return (\r\n <AriaTooltip\r\n {...props}\r\n className={csx(\"proton__Tooltip\", \"proton-Dialog\", className)}\r\n style={style as React.CSSProperties}\r\n >\r\n {arrow && (\r\n <OverlayArrow className={csx(\"proton__TooltipArrow\", className)}>\r\n <svg width={8} height={8} viewBox=\"0 0 8 8\">\r\n <path d=\"M0 0 L4 4 L8 0\" />\r\n </svg>\r\n </OverlayArrow>\r\n )}\r\n\r\n {children}\r\n </AriaTooltip>\r\n );\r\n}\r\n\r\nexport interface TooltipTriggerProps\r\n extends TooltipProps,\r\n TooltipTriggerComponentProps {\r\n children: React.ReactNode;\r\n /**\r\n * The content to display in the tooltip. Zero-length titles string are never displayed.\r\n */\r\n content: string | React.ReactNode;\r\n /**\r\n * Whether to disable the trigger click feature.\r\n */\r\n disableTriggerClick?: boolean;\r\n}\r\n\r\n/**\r\n * Proton's TooltipTrigger component deviates from the Aria TooltipTrigger in that on mobile,\r\n * the trigger also opens the tooltip on click as well as hover & focus. This is to improve\r\n * accessibility and usability on mobile.\r\n *\r\n * If you wish to disable the trigger click feature, you can set the `disableTriggerClick` prop.\r\n * This is useful when using an info only Tooltip that might wrap a clickable element.\r\n *\r\n * API:\r\n * - {@link TooltipTriggerProps}\r\n * - extends {@link TooltipProps}\r\n * - extends {@link TooltipTriggerComponentProps}\r\n *\r\n * @example\r\n * ```tsx\r\n <TooltipTrigger content={...} placement=\"top\" arrow isDisabled={disabled}>\r\n {children}\r\n </TooltipTrigger>\r\n * ```\r\n */\r\nexport function TooltipTrigger({\r\n children,\r\n // trigger props\r\n delay = 500,\r\n closeDelay = 500,\r\n isDisabled,\r\n defaultOpen,\r\n onOpenChange,\r\n disableTriggerClick,\r\n // tooltip props\r\n content,\r\n ...tooltipProps\r\n}: TooltipTriggerProps) {\r\n const [isOpen, setIsOpen] = useState(false);\r\n const triggerClickRef = useRef<boolean>(false);\r\n const hasHovered = useRef<boolean>(false);\r\n\r\n if (content === \"\") return null;\r\n\r\n return (\r\n <AriaTooltipTrigger\r\n delay={delay}\r\n closeDelay={closeDelay}\r\n isDisabled={isDisabled}\r\n isOpen={isOpen}\r\n defaultOpen={defaultOpen}\r\n onOpenChange={(openState) => {\r\n // When opened via hover, we want to disable the trigger click feature as it causes\r\n // the tooltip state to get out of sync with the trigger state.\r\n if (openState && !triggerClickRef.current) hasHovered.current = true;\r\n\r\n if (onOpenChange) onOpenChange(openState);\r\n\r\n // If the tooltip is clicked, it manually calls setIsOpen, so we don't want to call\r\n // it again here.\r\n if (!triggerClickRef.current) setIsOpen(openState);\r\n triggerClickRef.current = false;\r\n }}\r\n >\r\n {disableTriggerClick ? (\r\n <span className=\"proton__TooltipTrigger\" aria-label=\"Show tooltip\">\r\n {children}\r\n </span>\r\n ) : (\r\n <Focusable>\r\n <div\r\n role=\"button\"\r\n aria-label=\"Show tooltip\"\r\n className=\"proton__TooltipTrigger\"\r\n data-hovered={isOpen}\r\n onMouseEnter={() => {\r\n if (!isDisabled) {\r\n setIsOpen(true);\r\n }\r\n }}\r\n onMouseLeave={() => {\r\n if (!isDisabled) {\r\n setIsOpen(false);\r\n }\r\n }}\r\n onClick={() => {\r\n if (disableTriggerClick || isDisabled) return;\r\n\r\n // Once hovered it's safe to assume the user isn't trying to use via a touch device,\r\n // so we can safely disable the trigger click feature.\r\n if (hasHovered.current) return;\r\n\r\n triggerClickRef.current = true;\r\n setIsOpen(!isOpen);\r\n }}\r\n >\r\n {children}\r\n </div>\r\n </Focusable>\r\n )}\r\n <Tooltip {...tooltipProps}>{content}</Tooltip>\r\n </AriaTooltipTrigger>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport { ReactNode } from \"react\";\r\nimport \"./TextEmphasis.css\";\r\n\r\nimport { csx } from \"../../../utils\";\r\nimport { useTheme } from \"../../ThemeProvider\";\r\nimport { TooltipTrigger, TooltipTriggerProps } from \"../../Tooltip/Tooltip\";\r\nimport {\r\n handleInternalNavigation,\r\n isUrlExternal,\r\n} from \"../../../utils/navigation\";\r\n\r\ninterface TextEmphasisProps extends React.HTMLAttributes<HTMLSpanElement> {\r\n /**\r\n * The URL that the text emphasis should link to. Turns the element into an `a` tag.\r\n */\r\n to?: string;\r\n /**\r\n * The content to display within the text emphasis.\r\n */\r\n children: ReactNode;\r\n /**\r\n * Props to pass to the tooltip trigger. When provided, the text emphasis will be wrapped in a tooltip trigger.\r\n */\r\n tooltipProps?: Omit<TooltipTriggerProps, \"children\">;\r\n /**\r\n * A test ID.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * A component that displays text with emphasis. Provide tooltipProps to wrap the text in a tooltip trigger.\r\n *\r\n * API:\r\n * - {@link TextEmphasisProps}\r\n * - extends {@link React.HTMLAttributes}\r\n */\r\nexport const TextEmphasis = ({\r\n to,\r\n children,\r\n tooltipProps,\r\n \"data-testid\": testId,\r\n}: TextEmphasisProps) => {\r\n const { className: themeClassName } = useTheme();\r\n\r\n const content = tooltipProps ? (\r\n <TooltipTrigger delay={50} closeDelay={75} {...tooltipProps}>\r\n {children}\r\n </TooltipTrigger>\r\n ) : (\r\n children\r\n );\r\n\r\n if (to) {\r\n const isExternal = isUrlExternal(to);\r\n return (\r\n <span\r\n className={csx(\r\n \"proton-TextEmphasis\",\r\n tooltipProps && \"proton-TextEmphasis--tooltip\",\r\n themeClassName\r\n )}\r\n >\r\n <a\r\n data-testid={testId}\r\n href={to}\r\n target={isExternal ? \"_blank\" : undefined}\r\n rel={isExternal ? \"noopener noreferrer\" : undefined}\r\n onClick={\r\n !isExternal ? (e) => handleInternalNavigation(e, to) : undefined\r\n }\r\n >\r\n {content}\r\n </a>\r\n </span>\r\n );\r\n }\r\n\r\n return (\r\n <span\r\n className={csx(\r\n \"proton-TextEmphasis\",\r\n tooltipProps && \"proton-TextEmphasis--tooltip\",\r\n themeClassName\r\n )}\r\n data-testid={testId}\r\n >\r\n {content}\r\n </span>\r\n );\r\n};\r\n","import { csx } from \"../../utils\";\r\n\r\ninterface WaveformBarProps {\r\n amplitude: number;\r\n isDisabled: boolean;\r\n isPlayed: boolean;\r\n isHovered: boolean;\r\n isVisible: boolean;\r\n hasAnimated: boolean;\r\n resolution: number;\r\n spacing: number;\r\n index: number;\r\n}\r\n\r\nexport function WaveformBar({\r\n amplitude,\r\n isDisabled,\r\n isPlayed,\r\n isHovered,\r\n isVisible,\r\n hasAnimated,\r\n resolution,\r\n spacing,\r\n index,\r\n}: WaveformBarProps) {\r\n const barHeight = isVisible ? `${Math.max(amplitude * 100, 4)}%` : \"0%\";\r\n\r\n return (\r\n <div\r\n className={csx(\"proton-Waveform__bar-wrapper\")}\r\n style={{\r\n width: `${resolution}px`,\r\n marginRight: `${spacing}px`,\r\n }}\r\n >\r\n <div\r\n className={csx(\r\n \"proton-Waveform__bar\",\r\n \"proton-Waveform__bar--upper\",\r\n isDisabled && \"proton-Waveform__bar--disabled\",\r\n isPlayed && \"proton-Waveform__bar--played\",\r\n isVisible && \"proton-Waveform__bar--visible\",\r\n hasAnimated && \"proton-Waveform__bar--animated\"\r\n )}\r\n style={\r\n {\r\n \"--target-height\": `calc(${barHeight} / 2)`,\r\n \"--index\": index,\r\n } as React.CSSProperties\r\n }\r\n />\r\n <div\r\n className={csx(\r\n \"proton-Waveform__bar\",\r\n \"proton-Waveform__bar--lower\",\r\n isDisabled && \"proton-Waveform__bar--disabled\",\r\n isPlayed && \"proton-Waveform__bar--played\",\r\n isVisible && \"proton-Waveform__bar--visible\",\r\n hasAnimated && \"proton-Waveform__bar--animated\"\r\n )}\r\n style={\r\n {\r\n \"--target-height\": `calc(${barHeight} / 2)`,\r\n \"--index\": index,\r\n } as React.CSSProperties\r\n }\r\n />\r\n {isHovered && !isDisabled && !isPlayed && (\r\n <div\r\n className=\"proton-Waveform__bar--hover\"\r\n style={\r\n {\r\n \"--hover-height\": barHeight,\r\n } as React.CSSProperties\r\n }\r\n />\r\n )}\r\n </div>\r\n );\r\n}\r\n","\"use client\";\r\n\r\nimport { useEffect, useMemo, useRef, useState } from \"react\";\r\nimport { csx } from \"../../utils\";\r\nimport { useTheme } from \"../ThemeProvider\";\r\nimport \"./Waveform.css\";\r\nimport { WaveformBar } from \"./WaveformBar\";\r\n\r\nexport interface WaveformProps {\r\n /**\r\n * Array of normalized amplitude values (0-1) representing the waveform.\r\n * If not provided, uses a sample sine wave.\r\n */\r\n data?: number[];\r\n\r\n /**\r\n * Current playback position in seconds.\r\n */\r\n currentTime?: number;\r\n\r\n /**\r\n * Test ID for testing purposes.\r\n */\r\n \"data-testid\"?: string;\r\n\r\n /**\r\n * Whether the entire waveform is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Reason for the waveform being disabled.\r\n */\r\n disabledMessage?: string;\r\n\r\n /**\r\n * End time to display until in seconds.\r\n */\r\n endDuration?: number;\r\n\r\n /**\r\n * Click handler that receives the clicked position (0-1) and event.\r\n */\r\n onClick?: (position: number, e: React.MouseEvent<HTMLDivElement>) => void;\r\n\r\n /**\r\n * Width in pixels of each waveform bar.\r\n */\r\n resolution?: number;\r\n\r\n /**\r\n * Whether to show timestamp markers.\r\n */\r\n showTimestamps?: boolean;\r\n\r\n /**\r\n * Start time to display from in seconds.\r\n */\r\n startDuration?: number;\r\n\r\n /**\r\n * Total duration of the audio in seconds.\r\n */\r\n totalDuration: number;\r\n}\r\n\r\nconst sampleWaveform = generateSampleWaveformData(100);\r\n\r\n/**\r\n * A waveform visualization component that displays audio data with interactive features.\r\n *\r\n * API:\r\n * - {@link WaveformProps}\r\n */\r\nexport function Waveform({\r\n data: waveformData,\r\n resolution = 2,\r\n startDuration,\r\n endDuration,\r\n currentTime = 0,\r\n showTimestamps = false,\r\n totalDuration,\r\n disabled,\r\n disabledMessage,\r\n onClick,\r\n \"data-testid\": testId,\r\n}: WaveformProps) {\r\n const { className } = useTheme();\r\n const containerRef = useRef<HTMLDivElement>(null);\r\n const [processedWaveform, setProcessedWaveform] = useState<number[]>([]);\r\n const [hoverPosition, setHoverPosition] = useState<number | null>(null);\r\n const [isVisible, setIsVisible] = useState(false);\r\n const [hasAnimated, setHasAnimated] = useState(false);\r\n\r\n const waveform = waveformData || sampleWaveform;\r\n\r\n const spacing = resolution;\r\n\r\n useEffect(() => {\r\n if (!containerRef.current) return;\r\n\r\n const processWaveform = (width: number) => {\r\n const numBars = Math.floor(width / (resolution + spacing));\r\n const processed = resampleData(waveform, numBars);\r\n setProcessedWaveform(processed);\r\n };\r\n\r\n const initialWidth = containerRef.current.clientWidth;\r\n processWaveform(initialWidth);\r\n\r\n const resizeObserver = new ResizeObserver((entries) => {\r\n if (entries && entries[0]) {\r\n processWaveform(entries[0].contentRect.width);\r\n }\r\n });\r\n\r\n resizeObserver.observe(containerRef.current);\r\n\r\n return () => resizeObserver.disconnect();\r\n }, [waveform, resolution, spacing]);\r\n\r\n useEffect(() => {\r\n const visibilityTimer = setTimeout(() => setIsVisible(true), 50);\r\n const animationTimer = setTimeout(() => setHasAnimated(true), 500);\r\n\r\n return () => {\r\n clearTimeout(visibilityTimer);\r\n clearTimeout(animationTimer);\r\n };\r\n }, []);\r\n\r\n const handleMouseMove = (e: React.MouseEvent<HTMLDivElement>) => {\r\n if (!containerRef.current) return;\r\n const rect = containerRef.current.getBoundingClientRect();\r\n const x = e.clientX - rect.left;\r\n const position = (x / rect.width) * totalDuration;\r\n setHoverPosition(position);\r\n };\r\n\r\n const handleMouseLeave = () => {\r\n setHoverPosition(null);\r\n };\r\n\r\n // Calculate the width of a single bar including spacing\r\n const barTotalWidth = resolution + spacing;\r\n\r\n // Find the nearest bar boundaries for start and end durations\r\n const getBarPosition = (time: number, direction: \"start\" | \"end\") => {\r\n const position = (time / totalDuration) * 100;\r\n const barIndex =\r\n direction === \"start\"\r\n ? Math.floor((position / 100) * processedWaveform.length)\r\n : Math.ceil((position / 100) * processedWaveform.length);\r\n\r\n return (\r\n ((barIndex * barTotalWidth) / containerRef.current?.clientWidth!) * 100\r\n );\r\n };\r\n\r\n const containerWidth = containerRef.current?.clientWidth;\r\n const waveformMessage = useMemo(() => {\r\n if (disabled && disabledMessage) return disabledMessage;\r\n if (!waveformData) return \"Waveform Unavailable\";\r\n\r\n return null;\r\n }, [disabled, disabledMessage, waveformData]);\r\n\r\n return (\r\n <div className={csx(\"proton-Waveform\", className)} data-testid={testId}>\r\n {showTimestamps && (\r\n <TimestampBlock direction=\"left\" seconds={currentTime} />\r\n )}\r\n <div\r\n ref={containerRef}\r\n className=\"proton-Waveform__container\"\r\n onMouseMove={handleMouseMove}\r\n onMouseLeave={handleMouseLeave}\r\n onClick={(e) => {\r\n if (!containerRef.current || disabled) return;\r\n const rect = containerRef.current.getBoundingClientRect();\r\n const x = e.clientX - rect.left;\r\n const position = (x / rect.width) * totalDuration;\r\n onClick?.(position, e);\r\n }}\r\n data-disabled={disabled}\r\n data-testid=\"waveform-container\"\r\n >\r\n {startDuration !== undefined && endDuration !== undefined && (\r\n <div\r\n className=\"proton-Waveform__active-region\"\r\n style={{\r\n left: containerRef.current\r\n ? `calc(${getBarPosition(startDuration, \"start\")}%`\r\n : \"0%\",\r\n right: containerRef.current\r\n ? `calc(${100 - getBarPosition(endDuration, \"end\")}% - 2px)`\r\n : \"0%\",\r\n }}\r\n />\r\n )}\r\n {hoverPosition !== null && (\r\n <div\r\n className=\"proton-Waveform__hover-line\"\r\n style={{\r\n left: `${(hoverPosition / totalDuration) * 100}%`,\r\n }}\r\n />\r\n )}\r\n {processedWaveform.map((amplitude, index) => {\r\n const position = (index / processedWaveform.length) * totalDuration;\r\n const isBarOutsideActiveRegion =\r\n startDuration !== undefined &&\r\n endDuration !== undefined &&\r\n (position < startDuration || position > endDuration);\r\n const isPlayed = currentTime === 0 ? false : position <= currentTime;\r\n const isHovered = hoverPosition !== null && position <= hoverPosition;\r\n\r\n return (\r\n <WaveformBar\r\n key={index}\r\n amplitude={amplitude}\r\n isDisabled={disabled || isBarOutsideActiveRegion}\r\n isPlayed={isPlayed}\r\n isHovered={isHovered}\r\n isVisible={isVisible}\r\n hasAnimated={hasAnimated}\r\n resolution={resolution}\r\n spacing={spacing}\r\n index={index}\r\n />\r\n );\r\n })}\r\n </div>\r\n\r\n {waveformMessage && (\r\n <div\r\n className=\"proton-Waveform__bar-unavailable\"\r\n style={{\r\n fontSize: containerWidth < 325 ? \"0.85rem\" : \"1rem\",\r\n }}\r\n >\r\n {waveformMessage}\r\n </div>\r\n )}\r\n\r\n {showTimestamps && (\r\n <TimestampBlock direction=\"right\" seconds={totalDuration} />\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nfunction TimestampBlock({\r\n direction,\r\n seconds,\r\n}: {\r\n direction: \"left\" | \"right\";\r\n seconds: number;\r\n}) {\r\n return (\r\n <div\r\n className={csx(\r\n \"proton-Waveform__timestamp\",\r\n `proton-Waveform__timestamp--${direction}`\r\n )}\r\n >\r\n {formatTimestamp(seconds)}\r\n </div>\r\n );\r\n}\r\n\r\n/** Formats seconds into MM:SS timestamp string\r\n * @param {number} seconds - Number of seconds to format\r\n * @returns {string} Formatted timestamp string in MM:SS format\r\n */\r\n\r\nfunction formatTimestamp(seconds: number) {\r\n const minutes = Math.floor(seconds / 60);\r\n const remainingSeconds = Math.floor(seconds % 60);\r\n return `${minutes}:${\r\n remainingSeconds < 10 ? \"0\" : \"\"\r\n }${remainingSeconds.toFixed(0)}`;\r\n}\r\n\r\n/** Takes an array of waveform data and rescales it to any length\r\n * @param {array} initialData - original waveform data\r\n * @param {number} finalArrayLength - How long do you want the returned array?\r\n * @param {number} height - Height of the waveform container\r\n */\r\n\r\nfunction resampleData(initialData: number[], finalArrayLength: number) {\r\n const initialArrayLength = initialData.length;\r\n // How many samples from the original data do we skip per new sample?\r\n const step = initialArrayLength / finalArrayLength;\r\n\r\n // Create new array with desired length\r\n const resampledData = new Array(finalArrayLength)\r\n .fill(0)\r\n .map((_, newIndex) => {\r\n // Calculate position in original array\r\n const position = newIndex * step;\r\n const leftIndex = Math.floor(position);\r\n const rightIndex = Math.min(leftIndex + 1, initialArrayLength - 1);\r\n\r\n // Calculate weights for interpolation\r\n const fraction = position - leftIndex;\r\n\r\n // Linear interpolation between adjacent samples\r\n const newVal =\r\n initialData[leftIndex] * (1 - fraction) +\r\n initialData[rightIndex] * fraction;\r\n\r\n return newVal;\r\n });\r\n\r\n return scaleData(resampledData);\r\n}\r\n\r\n/** Takes an array of waveform data and scales it based on the desired pixel height\r\n * @param {array} data – Array of waveform data\r\n * @param {number} height - Height of the waveform container\r\n */\r\nfunction scaleData(data: number[]) {\r\n const min = Math.min(...data);\r\n const max = Math.max(...data);\r\n\r\n return data.map((item) => {\r\n // Normalize to 0-1 range first\r\n const normalized = (item - min) / (max - min);\r\n // Then scale to desired height (using 0.1 as minimum to ensure visibility)\r\n return Math.max(normalized * 0.8 + 0.1, 0.1);\r\n });\r\n}\r\n\r\n/** Generates a sample sine wave waveform data array\r\n * @param {number} length - Length of the waveform data array\r\n * @returns {number[]} Array of normalized amplitude values (0-1) representing the waveform\r\n */\r\n\r\nfunction generateSampleWaveformData(length: number) {\r\n return Array.from({ length }, (_, i) => {\r\n const cycles = 6;\r\n // Create 3 complete cycles (6π total) starting at -π/2 (trough)\r\n const phase = (i / (length - 1)) * cycles * 2 * Math.PI - Math.PI / 2;\r\n return Math.sin(phase) * 0.5 + 0.5;\r\n });\r\n}\r\n"],"names":["$c0398ad35c3639b7$exports","$7af657c4165927c3$exports","$d95d4da6d531ab81$exports","$24ebda9c775dca17$exports","$743e0dfca6cab1e9$exports","$a2f41026e05f1c84$exports","$43b800e97c901737$exports","$442f5f6ac211e29f$exports","$dff280acfeb2d8ac$exports","$51608325613944d7$exports","$c4a1b1eabeaa87be$exports","$8c74815cdee18d1b$exports","$fd0e9ef6a7fe0ec9$exports","$a89a74a39eba465a$exports","$edc7c66594a0ae8a$exports","$f1ab51510712db52$exports","$f9b672d9b82fa3d6$exports","$a385f3910feda499$exports","$4f1bde932c441789$exports","$914a51a8a594d5be$exports","$89aaf803103bb500$exports","$c685891476dbaaca$exports","$885879b9b10c2959$exports","$6b39616688a51692$exports","$f26362aed63f47e2$exports","$06cbade644558bf0$exports","$0a391ff68f9d59b1$exports","$8193cf0e649c7928$exports","$f398debcce5a5c55$exports","$9e9fef000aa4c013$exports","$c016c8183bbe3d68$exports","$ca4f6c8462244e62$exports","$2d9960c02ccac927$exports","$f1b682a4c8c5631c$exports","$2cbb7ca666678a14$exports","$5FSX7$arAEmodulejs","$5FSX7$bgBGmodulejs","$5FSX7$csCZmodulejs","$5FSX7$daDKmodulejs","$5FSX7$deDEmodulejs","$5FSX7$elGRmodulejs","$5FSX7$enUSmodulejs","$5FSX7$esESmodulejs","$5FSX7$etEEmodulejs","$5FSX7$fiFImodulejs","$5FSX7$frFRmodulejs","$5FSX7$heILmodulejs","$5FSX7$hrHRmodulejs","$5FSX7$huHUmodulejs","$5FSX7$itITmodulejs","$5FSX7$jaJPmodulejs","$5FSX7$koKRmodulejs","$5FSX7$ltLTmodulejs","$5FSX7$lvLVmodulejs","$5FSX7$nbNOmodulejs","$5FSX7$nlNLmodulejs","$5FSX7$plPLmodulejs","$5FSX7$ptBRmodulejs","$5FSX7$ptPTmodulejs","$5FSX7$roROmodulejs","$5FSX7$ruRUmodulejs","$5FSX7$skSKmodulejs","$5FSX7$slSImodulejs","$5FSX7$srSPmodulejs","$5FSX7$svSEmodulejs","$5FSX7$trTRmodulejs","$5FSX7$ukUAmodulejs","$5FSX7$zhCNmodulejs","$5FSX7$zhTWmodulejs","$8a9cb279dc87e130$export$525bc4921d56d4a","nativeEvent","event","$8a9cb279dc87e130$export$c2b7abe5d61ec696","target","$8a9cb279dc87e130$export$715c682d09d639cc","onBlur","stateRef","$6dfIe$useRef","$6dfIe$useLayoutEffect","state","dispatchBlur","$6dfIe$useEffectEvent","e","$6dfIe$useCallback","onBlurHandler","_stateRef_current_observer","relatedTargetEl","$8a9cb279dc87e130$export$fda7da73ab5d4c48","$8a9cb279dc87e130$export$cabe61c495ee3649","$6dfIe$isFocusable","window","$6dfIe$getOwnerWindow","activeElement","isRefocusing","onFocusOut","$6dfIe$focusWithoutScrolling","cleanup","onFocus","onFocusIn","raf","$14c0b72509d70225$var$state","$14c0b72509d70225$var$savedUserSelect","$14c0b72509d70225$var$modifiedElementMap","$14c0b72509d70225$export$16a4697467175487","$7R18e$isIOS","documentObject","$7R18e$getOwnerDocument","property","$14c0b72509d70225$export$b0d6fa1ab32e3295","$7R18e$runAfterTransition","targetOldUserSelect","$ae1eeba8b9eafd08$export$5165eccb35aaadb5","$3aeG1$react","_class_apply_descriptor_get","receiver","descriptor","_class_extract_field_descriptor","privateMap","action","_class_private_field_get","_check_private_redeclaration","obj","privateCollection","_class_private_field_init","value","_class_apply_descriptor_set","_class_private_field_set","$f6c31cce2adf654f$var$usePressResponderContext","props","context","$7mdmh$useContext","register","contextProps","$7mdmh$mergeProps","$7mdmh$useSyncRef","$f6c31cce2adf654f$var$_shouldStopPropagation","$f6c31cce2adf654f$var$PressEvent","$7mdmh$_2","$7mdmh$_","type","pointerType","originalEvent","$7mdmh$_1","_state_target","currentTarget","rect","x","y","clientX","clientY","$f6c31cce2adf654f$var$LINK_CLICKED","$f6c31cce2adf654f$export$45712eceda6fad21","onPress","onPressChange","onPressStart","onPressEnd","onPressUp","onClick","isDisabled","isPressedProp","preventFocusOnPress","shouldCancelOnPointerExit","allowTextSelectionOnPress","domRef","domProps","isPressed","setPressed","$7mdmh$useState","ref","$7mdmh$useRef","addGlobalListener","removeAllGlobalListeners","$7mdmh$useGlobalListeners","triggerPressStart","$7mdmh$useEffectEvent","shouldStopPropagation","triggerPressEnd","wasPressed","triggerPressUp","cancel","$f6c31cce2adf654f$var$createEvent","dispose","cancelOnPointerExit","triggerClick","triggerSyntheticClick","pressProps","$7mdmh$useMemo","$f6c31cce2adf654f$var$isValidKeyboardEvent","$7mdmh$nodeContains","$7mdmh$getEventTarget","_state_metaKeyEvents","$f6c31cce2adf654f$var$shouldPreventDefaultKeyboard","originalTarget","pressUp","$7mdmh$getOwnerDocument","$7mdmh$chain","onKeyUp","$7mdmh$isMac","$7mdmh$openLink","$7mdmh$isVirtualClick","stopPressStart","stopPressUp","stopPressEnd","_state_metaKeyEvents1","$f6c31cce2adf654f$var$isHTMLAnchorLink","events","$7mdmh$isVirtualPointerEvent","onPointerUp","onPointerCancel","clicked","timeout","$7mdmh$focusWithoutScrolling","$7mdmh$flushSync","onMouseUp","touch","$f6c31cce2adf654f$var$getTouchFromEvent","$f6c31cce2adf654f$var$createTouchEvent","$7mdmh$getOwnerWindow","onScroll","$f6c31cce2adf654f$var$getTouchById","$f6c31cce2adf654f$var$isOverTarget","$7mdmh$useEffect","element","key","code","role","$f6c31cce2adf654f$var$isValidInputKey","targetTouches","pointerId","changedTouches","i","$f6c31cce2adf654f$var$getPointClientRect","point","offsetX","offsetY","$f6c31cce2adf654f$var$areRectanglesOverlapping","a","b","pointRect","$f6c31cce2adf654f$var$shouldPreventDefaultUp","$f6c31cce2adf654f$var$nonTextInputTypes","$b5e257d569688ac6$var$IsSSRContext","$670gB$react","$b5e257d569688ac6$var$getSnapshot","$b5e257d569688ac6$var$getServerSnapshot","$b5e257d569688ac6$var$subscribe","onStoreChange","$b5e257d569688ac6$export$535bd6ca7f90a273","$670gB$useContext","$507fabe10e71c6fb$var$currentModality","$507fabe10e71c6fb$var$changeHandlers","$507fabe10e71c6fb$export$d90243b58daecda7","$507fabe10e71c6fb$var$hasEventBeforeFocus","$507fabe10e71c6fb$var$hasBlurredWindowRecently","$507fabe10e71c6fb$var$triggerChangeHandlers","modality","handler","$507fabe10e71c6fb$var$isValidKey","$28AnR$isMac","$507fabe10e71c6fb$var$handleKeyboardEvent","$507fabe10e71c6fb$var$handlePointerEvent","$507fabe10e71c6fb$var$handleClickEvent","$28AnR$isVirtualClick","$507fabe10e71c6fb$var$handleFocusEvent","$507fabe10e71c6fb$var$handleWindowBlur","$507fabe10e71c6fb$var$setupGlobalFocusEvents","$28AnR$getOwnerWindow","windowObject","$28AnR$getOwnerDocument","focus","$507fabe10e71c6fb$var$tearDownWindowFocusTracking","loadListener","$507fabe10e71c6fb$export$2f1888112f558a7d","$507fabe10e71c6fb$export$b9b3dfddab17db27","$507fabe10e71c6fb$export$630ff653c5ada6a9","$507fabe10e71c6fb$export$8397ddfc504fdb9a","$3ad3f6e1647bc98d$export$80f3e147d781571c","ownerDocument","$k50bp$getOwnerDocument","$k50bp$getActiveElement","lastFocusedElement","$k50bp$runAfterTransition","$k50bp$focusWithoutScrolling","$a1ea59d68270f0dd$export$f8168d8dd8fd66e6","onFocusProp","onBlurProp","onFocusChange","$hf0lj$useCallback","onSyntheticFocus","$hf0lj$getOwnerDocument","$hf0lj$getActiveElement","$hf0lj$getEventTarget","$93925083ecbb358c$export$48d1ea6320830260","$46d819fcbaf35654$export$8f71654801c2f7cd","$f645667febf57a63$export$f9762fab77588ecb","$fcPuG$react","$f645667febf57a63$var$useFocusableContext","$fcPuG$useContext","$fcPuG$useSyncRef","_","otherProps","$f645667febf57a63$export$13f3202a3e5ddd5","children","objRef","$fcPuG$useObjectRef","$f645667febf57a63$export$4c014de7c8940b4c","focusProps","keyboardProps","interactions","$fcPuG$mergeProps","interactionProps","autoFocusRef","$fcPuG$useRef","$fcPuG$useEffect","tabIndex","$f1ab8c75478c6f73$export$cf75428e0b9ed1ea","$87RPk$useMemo","$87RPk$react","$9ab94262bd0047c7$export$420e68273165f4ec","onBlurWithin","onFocusWithin","onFocusWithinChange","$3b9Q0$useRef","$3b9Q0$useGlobalListeners","$3b9Q0$useCallback","$3b9Q0$getOwnerDocument","$3b9Q0$getActiveElement","$3b9Q0$getEventTarget","$3b9Q0$nodeContains","$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents","$6179b936705e76d3$var$hoverCount","$6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents","$6179b936705e76d3$var$handleGlobalPointerEvent","$6179b936705e76d3$var$setupGlobalTouchEvents","$6179b936705e76d3$export$ae780daf29e6d456","onHoverStart","onHoverChange","onHoverEnd","isHovered","setHovered","$AWxnT$useState","$AWxnT$useRef","$AWxnT$useEffect","$AWxnT$useGlobalListeners","hoverProps","triggerHoverEnd","$AWxnT$useMemo","triggerHoverStart","$AWxnT$getOwnerDocument","$AWxnT$nodeContains","$e0b6e0b68ec7f50f$export$872b660ac5a1ff98","onInteractOutside","onInteractOutsideStart","$ispOf$useRef","onPointerDown","$ispOf$useEffectEvent","$e0b6e0b68ec7f50f$var$isValidEvent","triggerInteractOutside","$ispOf$useEffect","$ispOf$getOwnerDocument","onTouchEnd","$8a26561d2877236e$var$DEFAULT_THRESHOLD","$8a26561d2877236e$export$c24ed0104d07eab9","onLongPressStart","onLongPressEnd","onLongPress","threshold","accessibilityDescription","timeRef","$4k2kv$useRef","removeGlobalListener","$4k2kv$useGlobalListeners","$4k2kv$getOwnerDocument","$4k2kv$focusWithoutScrolling","onContextMenu","descriptionProps","$4k2kv$useDescription","$4k2kv$mergeProps","$148a7a147e38ea7f$var$RTL_SCRIPTS","$148a7a147e38ea7f$var$RTL_LANGS","$148a7a147e38ea7f$export$702d680b21cbd764","localeString","locale","textInfo","lang","$1e5a04cdaf7d1af8$var$localeSymbol","$1e5a04cdaf7d1af8$export$f09106e7c6677ec5","$1e5a04cdaf7d1af8$var$currentLocale","$1e5a04cdaf7d1af8$var$listeners","$1e5a04cdaf7d1af8$var$updateLocale","listener","$1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a","isSSR","$ffhGL$useIsSSR","defaultLocale","setDefaultLocale","$ffhGL$useState","$ffhGL$useEffect","$18f2051aff69b9bf$var$I18nContext","$h9FiU$react","$18f2051aff69b9bf$export$43bb16f9c6d9e3f7","$h9FiU$useContext","$5b160d28a433310d$var$localeSymbol","$5b160d28a433310d$var$stringsSymbol","$5b160d28a433310d$var$cachedGlobalStrings","$5b160d28a433310d$export$c17fa47878dc55b6","string","strings","$5b160d28a433310d$var$getStringsForLocale","packageName","globalStrings","pkg","dictionary","messages","v","language","$5b160d28a433310d$var$getLanguage","$6db58dc88e78b024$var$pluralRulesCache","$6db58dc88e78b024$var$numberFormatCache","$6db58dc88e78b024$export$2f817fcdc4b89ae0","variables","message","count","options","opt","pluralRules","selected","numberFormat","$fca6afa0e843324b$var$cache","$fca6afa0e843324b$var$getCachedDictionary","$6ksNp$LocalizedStringDictionary","$fca6afa0e843324b$export$87b761675e8eaa10","$fca6afa0e843324b$export$f12b703ca79dfbb1","$6ksNp$useMemo","$6ksNp$LocalizedStringFormatter","$325a3faab7a68acd$var$cache","$325a3faab7a68acd$export$a16aca283550c30d","cacheKey","formatter","$edcf132a9284368a$var$AXIS","$edcf132a9284368a$var$FLIPPED_DIRECTION","$edcf132a9284368a$var$CROSS_AXIS","$edcf132a9284368a$var$AXIS_SIZE","$edcf132a9284368a$var$TOTAL_SIZE","$edcf132a9284368a$var$PARSED_PLACEMENT_CACHE","$edcf132a9284368a$var$visualViewport","$edcf132a9284368a$var$getContainerDimensions","containerNode","width","height","totalWidth","totalHeight","top","left","scroll","_visualViewport_scale","isPinchZoomedIn","documentElement","_visualViewport_width","_visualViewport_height","$edcf132a9284368a$var$getOffset","$fZVmS$isWebKit","_visualViewport_pageTop","_visualViewport_pageLeft","$edcf132a9284368a$var$getScroll","node","$edcf132a9284368a$var$getDelta","axis","offset","size","boundaryDimensions","containerDimensions","padding","containerOffsetWithBoundary","_containerDimensions_scroll_axis","containerScroll","boundarySize","boundaryStartEdge","boundaryEndEdge","startEdgeOffset","endEdgeOffset","$edcf132a9284368a$var$getMargins","style","$edcf132a9284368a$var$parsePlacement","input","placement","crossPlacement","crossAxis","crossSize","$edcf132a9284368a$var$computePosition","childOffset","overlaySize","placementInfo","crossOffset","isContainerPositioned","arrowSize","arrowBoundaryOffset","position","_childOffset_crossAxis","_childOffset_crossSize","_overlaySize_crossSize","_childOffset_crossSize1","_overlaySize_crossSize1","minPosition","maxPosition","$fZVmS$clamp","containerHeight","$edcf132a9284368a$var$getMaxHeight","margins","overlayHeight","heightGrowthDirection","_position_bottom","overlayTop","_boundaryDimensions_scroll_top","_margins_top","_margins_bottom","_boundaryDimensions_scroll_top1","_margins_top1","_margins_bottom1","maxHeight","$edcf132a9284368a$var$getAvailableSpace","_boundaryDimensions_scroll_axis","_margins_axis","_margins_axis1","$edcf132a9284368a$export$6839422d1f33cee9","placementInput","scrollSize","flip","userSetMaxHeight","normalizedOffset","space","flippedPlacementInfo","flippedPosition","delta","arrowPosition","preferredArrowPosition","arrowMinPosition","_margins_left","_margins_right","overlayMargin","arrowMaxPosition","arrowOverlappingChildMinEdge","arrowOverlappingChildMaxEdge","arrowPositionOverlappingChild","$edcf132a9284368a$export$b3ceb0cbf1056d98","opts","targetNode","overlayNode","scrollNode","shouldFlip","boundaryElement","container","$edcf132a9284368a$var$getContainingBlock","isViewportContainer","containerPositionStyle","$edcf132a9284368a$var$getPosition","marginTop","marginLeft","scrollTop","scrollLeft","clientTop","clientLeft","parent","parentOffset","parentStyle","offsetParent","$edcf132a9284368a$var$isContainingBlock","$dd149f63282afbbf$export$f6211563215e3b37","$dd149f63282afbbf$export$18fc8428861184da","triggerRef","isOpen","onClose","$dRVb8$useEffect","onCloseHandler","$2a41e45df1593e64$var$visualViewport","$2a41e45df1593e64$export$d39e1813b3bdd0e1","direction","$39EOa$useLocale","targetRef","overlayRef","scrollRef","containerPadding","shouldUpdatePosition","setPosition","$39EOa$useState","deps","lastScale","$39EOa$useRef","$39EOa$useEffect","updatePosition","$39EOa$useCallback","anchor","_document_activeElement","anchorRect","scrollRect","_anchorRect_top","_anchorRect_bottom","overlay","_window_visualViewport","_window_visualViewport_height","$2a41e45df1593e64$var$translateRTL","newOffset","$39EOa$useLayoutEffect","$2a41e45df1593e64$var$useResize","$39EOa$useResizeObserver","isResizing","onResize","close","_position_maxHeight","_position_placement","$645f2e67b85a24c9$var$isStyleVisible","$djhjW$getOwnerWindow","display","visibility","isVisible","getComputedStyle","computedDisplay","computedVisibility","$645f2e67b85a24c9$var$isAttributeVisible","childElement","$645f2e67b85a24c9$export$e989c0fffaa6b27a","$9bf71ea28793e738$var$FocusContext","$cgawC$react","$9bf71ea28793e738$var$RESTORE_FOCUS_EVENT","$9bf71ea28793e738$var$activeScope","$9bf71ea28793e738$export$20e40289641fbbb6","contain","restoreFocus","autoFocus","startRef","$cgawC$useRef","endRef","scopeRef","parentNode","$cgawC$useContext","$cgawC$useMemo","$9bf71ea28793e738$var$TreeNode","$cgawC$useLayoutEffect","$9bf71ea28793e738$export$d06fae2ee68b101e","$9bf71ea28793e738$var$isAncestorScope","activeNode","_startRef_current","nodes","stopPropagation","$9bf71ea28793e738$var$useActiveScopeTracker","$9bf71ea28793e738$var$useFocusContainment","$9bf71ea28793e738$var$useRestoreFocus","$9bf71ea28793e738$var$useAutoFocus","$cgawC$useEffect","$cgawC$getActiveElement","$cgawC$getOwnerDocument","scope","$9bf71ea28793e738$var$isElementInScope","_focusScopeTree_getTreeNode_parent","_focusScopeTree_getTreeNode","_focusScopeTree_getTreeNode_parent_scopeRef","parentScope","focusManager","$9bf71ea28793e738$var$createFocusManagerForScope","from","tabbable","wrap","accept","_scope_","sentinel","scopeRoot","$9bf71ea28793e738$var$getScopeRoot","walker","$9bf71ea28793e738$export$2d6ec8fc375ceafa","nextNode","$9bf71ea28793e738$var$focusElement","previousNode","$9bf71ea28793e738$var$shouldContainFocus","focusedNode","onKeyDown","focusedElement","nextElement","$cgawC$getEventTarget","$9bf71ea28793e738$var$isElementInChildScope","$9bf71ea28793e738$var$focusFirstInScope","$cgawC$getInteractionModality","shouldSkipFocusRestore","$cgawC$isAndroid","$cgawC$isChrome","_focusedNode_current","$9bf71ea28793e738$var$isElementInAnyScope","s","$9bf71ea28793e738$export$1258395f99bf9cbf","ancestor","$cgawC$focusSafely","$9bf71ea28793e738$var$getFirstInScope","restore","$9bf71ea28793e738$var$shouldRestoreFocus","nodeToRestoreRef","treeNode","nodeToRestore","_nodeToRestoreRef_current","clonedTree","$9bf71ea28793e738$var$restoreFocusToElement","root","filter","$cgawC$isTabbable","$cgawC$isFocusable","rootElement","doc","$cgawC$createShadowTreeWalker","_opts_from","$9bf71ea28793e738$var$Tree","data","current","child","_node_parent","newTree","_node_parent_scopeRef","$55f9b1ae81f22853$export$76e4e37e5339496d","to","$55f9b1ae81f22853$export$759df0d867455a91","$hpDQO$getOwnerDocument","$55f9b1ae81f22853$export$6c5dc7e81d2cc29a","$55f9b1ae81f22853$export$2b35b76d2e30e129","document","$hpDQO$getActiveElement","activeDescendant","$a11501f3d1d39e6c$var$visibleOverlays","$a11501f3d1d39e6c$export$ea8f71083e90600f","shouldCloseOnBlur","isDismissable","isKeyboardDismissDisabled","shouldCloseOnInteractOutside","$jtpZv$useEffect","index","onHide","$jtpZv$useInteractOutside","focusWithinProps","$jtpZv$useFocusWithin","$jtpZv$isElementInChildOfActiveScope","onPointerDownUnderlay","$628037886ba31236$export$f9d5c8beee7d008d","$gMvIk$useEffect","ariaHasPopup","overlayId","$gMvIk$useId","$49c51c25361d4cd2$var$visualViewport","$49c51c25361d4cd2$var$nonTextInputTypes","$49c51c25361d4cd2$var$preventScrollCount","$49c51c25361d4cd2$var$restore","$49c51c25361d4cd2$export$ee0f7cc6afcd1c18","$7mMvr$useLayoutEffect","$7mMvr$isIOS","$49c51c25361d4cd2$var$preventScrollMobileSafari","$49c51c25361d4cd2$var$preventScrollStandard","$7mMvr$chain","$49c51c25361d4cd2$var$setStyle","scrollable","restoreScrollableStyles","onTouchStart","$7mMvr$getScrollParent","onTouchMove","$49c51c25361d4cd2$var$willOpenKeyboard","setupStyles","$49c51c25361d4cd2$var$scrollIntoView","restoreStyles","onWindowScroll","scrollX","scrollY","$49c51c25361d4cd2$var$addEvent","removeEvents","cur","nextTarget","scrollableTop","targetTop","$96b38030c423d352$export$60d741e20e0aa309","$7yuSY$createContext","$96b38030c423d352$export$9fc1347d4195ccb3","_useContext","$7yuSY$useContext","$773d5888b972f1cf$exports","$d11f19852b941573$exports","$b983974c2ee1efb3$exports","$5809cc9d4e92de73$exports","$c68c2e4fc74398d1$exports","$0898b4c153db2b77$exports","$6d74810286a15183$exports","$309d73dc65f78055$exports","$44ad94f7205cf593$exports","$7c28f5687f0779a9$exports","$e6d75df4b68bd73a$exports","$87505c9dab186d0f$exports","$553439c3ffb3e492$exports","$74cf411061b983a2$exports","$e933f298574dc435$exports","$ac91fc9fe02f71f6$exports","$52b96f86422025af$exports","$c0d724c3e51dafa6$exports","$c92899672a3fe72e$exports","$9f576b39d8e7a9d6$exports","$9d025808aeec81a7$exports","$fce709921e2c0fa6$exports","$2599cf0c4ab37f59$exports","$3c220ae7ef8a35fd$exports","$93562b5094072f54$exports","$cd9e2abd0d06c7b4$exports","$45375701f409adf1$exports","$27fab53a576de9dd$exports","$4438748d9952e7c7$exports","$0936d7347ef4da4c$exports","$29700c92185d38f8$exports","$662ccaf2be4c25b3$exports","$d80a27deda7cdb3c$exports","$2b2734393847c884$exports","$a2f21f5f14f60553$exports","$k51So$arAEmodulejs","$k51So$bgBGmodulejs","$k51So$csCZmodulejs","$k51So$daDKmodulejs","$k51So$deDEmodulejs","$k51So$elGRmodulejs","$k51So$enUSmodulejs","$k51So$esESmodulejs","$k51So$etEEmodulejs","$k51So$fiFImodulejs","$k51So$frFRmodulejs","$k51So$heILmodulejs","$k51So$hrHRmodulejs","$k51So$huHUmodulejs","$k51So$itITmodulejs","$k51So$jaJPmodulejs","$k51So$koKRmodulejs","$k51So$ltLTmodulejs","$k51So$lvLVmodulejs","$k51So$nbNOmodulejs","$k51So$nlNLmodulejs","$k51So$plPLmodulejs","$k51So$ptBRmodulejs","$k51So$ptPTmodulejs","$k51So$roROmodulejs","$k51So$ruRUmodulejs","$k51So$skSKmodulejs","$k51So$slSImodulejs","$k51So$srSPmodulejs","$k51So$svSEmodulejs","$k51So$trTRmodulejs","$k51So$ukUAmodulejs","$k51So$zhCNmodulejs","$k51So$zhTWmodulejs","$5c3e21d68f1c4674$var$styles","$5c3e21d68f1c4674$export$a966af930f325cab","isFocusable","isFocused","setFocused","$7JYt2$useState","$7JYt2$useFocusWithin","val","combinedStyles","$7JYt2$useMemo","$5c3e21d68f1c4674$export$439d29a4e110a164","Element","visuallyHiddenProps","$7JYt2$react","$7JYt2$mergeProps","$parcel$interopDefault","$86ea4cb521eb2e37$export$2317d149ed6f78c4","onDismiss","stringFormatter","$iYaQO$useLocalizedStringFormatter","$iYaQO$intlStringsmodulejs","labels","$iYaQO$useLabels","$iYaQO$react","$iYaQO$VisuallyHidden","$5e3802645cc19319$var$refCountMap","$5e3802645cc19319$var$observerStack","$5e3802645cc19319$export$1c3ebcada18427bf","targets","visibleNodes","hiddenNodes","walk","acceptNode","acceptRoot","hide","_refCountMap_get","refCount","observer","changes","change","observerWrapper","$5e3802645cc19319$export$1020fa7f77e17884","$f2f8a6077418541e$export$542a6fd13ac93354","popoverRef","groupRef","isNonModal","isSubmenu","overlayProps","underlayProps","positionProps","arrowProps","$m0yab$useLayoutEffect","_groupRef_current","_groupRef_current1","$m0yab$mergeProps","$337b884510726a0d$export$a2200b96afd16271","$1CM7W$react","$337b884510726a0d$export$c6fdb837b070b4ff","$1CM7W$useIsSSR","portalContainer","isExiting","setContain","$1CM7W$useState","contextValue","$1CM7W$useMemo","getContainer","contents","$1CM7W$FocusScope","$1CM7W$ClearPressResponder","$1CM7W$reactdom","$337b884510726a0d$export$14c98a7594375490","ctx","$1CM7W$useContext","$1CM7W$useLayoutEffect","$8ac8429251c45e4b$export$dbc0f175b25fb0fb","$7Dhkr$useEffect","$7Dhkr$mergeProps","$168583247155ddda$export$dc9c12ed27dd1b49","trigger","menuTriggerId","$czs6v$useId","triggerProps","$czs6v$useOverlayTrigger","$czs6v$useLocalizedStringFormatter","$czs6v$intlStringsmodulejs","longPressProps","$czs6v$useLongPress","$czs6v$focusWithoutScrolling","$fc79756100351201$export$6f49b4016bfc8d56","$feb5ffebff200149$export$d3e3bd3e26688c04","$jUnAJ$isAppleDevice","$feb5ffebff200149$export$c3d8340acf92597f","collectionRef","_collectionRef_current","_collectionRef_current1","selector","collection","$feb5ffebff200149$var$collectionMap","$feb5ffebff200149$export$881eb0d9f3605d9d","id","$jUnAJ$useId","$feb5ffebff200149$export$6aeb1680a0ae8741","$fb3050f43d946246$var$TYPEAHEAD_DEBOUNCE_WAIT_MS","$fb3050f43d946246$export$e32c88dfddc6e1d8","keyboardDelegate","selectionManager","onTypeSelect","$dAE4Y$useRef","character","$fb3050f43d946246$var$getStringForKey","$ae20dd8cbca75726$export$d6daf82dcd84e87c","manager","delegate","shouldFocusWrap","disallowEmptySelection","disallowSelectAll","escapeKeyBehavior","selectOnFocus","disallowTypeAhead","shouldUseVirtualFocus","allowsTabNavigation","isVirtualized","linkBehavior","$3H3GQ$useLocale","router","$3H3GQ$useRouter","_ref_current","navigateToKey","childFocus","$3H3GQ$flushSync","item","itemProps","_delegate_getKeyBelow","_delegate_getFirstKey","_delegate_getFirstKey1","nextKey","_delegate_getKeyAbove","_delegate_getLastKey","_delegate_getLastKey1","_delegate_getKeyLeftOf","_delegate_getFirstKey2","_delegate_getLastKey2","_delegate_getKeyRightOf","_delegate_getLastKey3","_delegate_getFirstKey3","firstKey","$3H3GQ$isCtrlKeyPressed","lastKey","$3H3GQ$getFocusableTreeWalker","next","last","$3H3GQ$focusWithoutScrolling","scrollPos","$3H3GQ$useRef","$3H3GQ$useEvent","_scrollRef_current","_scrollRef_current1","_scrollRef_current_scrollTop","_scrollRef_current_scrollLeft","relatedTarget","_manager_lastSelectedKey","_manager_firstSelectedKey","$3H3GQ$getInteractionModality","$3H3GQ$scrollIntoViewport","shouldVirtualFocusFirst","$3H3GQ$FOCUS_EVENT","detail","updateActiveDescendant","$3H3GQ$useEffectEvent","keyToFocus","$3H3GQ$moveVirtualFocus","$3H3GQ$useUpdateLayoutEffect","resetFocusFirstFlag","$3H3GQ$CLEAR_FOCUS_EVENT","_e_detail","didAutoFocusRef","$3H3GQ$useEffect","focusedKey","selectedKeys","$3H3GQ$focusSafely","lastFocusedKey","$3H3GQ$scrollIntoView","handlers","typeSelectProps","$3H3GQ$mergeProps","collectionId","$880e95eb8b93ba9a$export$ecf600387e221c37","shouldSelectOnPressUp","onAction","allowsDifferentPressOrigin","$581M0$useRouter","$581M0$useId","onSelect","$581M0$isCtrlKeyPressed","$581M0$useEffect","$581M0$moveVirtualFocus","$581M0$focusSafely","isLinkOverride","hasLinkAction","allowsSelection","allowsActions","hasPrimaryAction","hasSecondaryAction","hasAction","$581M0$useRef","longPressEnabled","longPressEnabledOnPressStart","hadPrimaryActionOnPressStart","performAction","itemPressProps","$880e95eb8b93ba9a$var$isSelectionKey","$880e95eb8b93ba9a$var$isActionKey","$581M0$mergeProps","$581M0$usePress","onDoubleClick","$581M0$useLongPress","onDragStartCapture","$581M0$openLink","$657e4dc4a6e88df0$export$8f5ed9ff9f511381","containerRect","itemRect","_container_scrollWidth","_container_scrollHeight","_container_scrollLeft","_container_scrollTop","_container_offsetWidth","_container_offsetHeight","$2a25aae57d74318e$export$a05409b8bb224a5a","_item_props","getNext","shouldSkip","tempKey","prevRect","right","layoutDelegateMethod","menu","$eak97$isScrollable","pageX","pageY","search","fromKey","substring","args","$982254629710d113$export$b95089534ab7c1fd","disabledKeys","layoutDelegate","collator","$1aJk5$useCollator","disabledBehavior","$1aJk5$useMemo","collectionProps","$d5336fe17ce95402$export$38eaa17faae8f579","$ieN2F$filterDOMProps","listProps","$ieN2F$useSelectableList","$ieN2F$mergeProps","_listProps_onKeyDown","$c1d7fb2ec91bae71$var$Item","childItems","title","rendered","textValue","$c1d7fb2ec91bae71$var$hasChildItems","items","$6Fm0V$react","$c1d7fb2ec91bae71$export$6d08773d2e66f8f2","$eb2240fc39a57fa5$export$bf788dd355e3a401","$eb2240fc39a57fa5$var$iterable","$fzaAv$react","partialNode","parentKey","_v_key","_partialNode_index","cached","name","childNodes","_partialNode_index1","result","childNode","_childNode_key","nodeKey","$eb2240fc39a57fa5$var$compose","_childNode_value","_ref","_parentNode_type","$eb2240fc39a57fa5$var$capitalize","builder","_partialNode_value","_partialNode_textValue","iterator","cache","iterable","outer","inner","str","$7613b1592d41b092$export$6cd28814d92fa9c9","factory","$lbNth$useMemo","$c5a24bc478652b5f$export$1005530eda016c13","$c5a24bc478652b5f$export$fbdeaa6a76694f71","$c5a24bc478652b5f$export$5f3398f8733f90e2","$c5a24bc478652b5f$export$8c434b3a7a4dad6","aAncestors","$c5a24bc478652b5f$var$getAncestors","bAncestors","firstNonMatchingAncestor","parents","currNode","$453cc9f0df89c0a5$var$cache","$453cc9f0df89c0a5$export$77d5aafae4e095b2","counter","countItems","$a2e5df62f93c7633$export$9d32628fc2aea7da","closeOnSelect","hasPopup","pressStartProp","pressUpProp","pressProp","hoverStartProp","isTrigger","isTriggerExpanded","_props_isDisabled","_props_isSelected","isSelected","$7Kjv5$useRouter","labelId","$7Kjv5$useSlotId","descriptionId","keyboardId","ariaProps","$7Kjv5$getItemCount","maybeClose","$7Kjv5$useSelectableItem","$7Kjv5$usePress","$7Kjv5$useHover","$7Kjv5$isFocusVisible","$7Kjv5$useKeyboard","$7Kjv5$useFocus","$7Kjv5$filterDOMProps","linkProps","$7Kjv5$useLinkProps","$7Kjv5$mergeProps","$05ca4cd7c4a5a999$export$863faf230ee2118a","_node_prevKey","_node_nextKey","_this_keyMap_get","idx","keys","expandedKeys","visit","_last_key","$e40ea825a81a3709$export$52baac22726c72bf","anchorKey","currentKey","$458b0a5536c1a7cf$export$40bfa8c7b0832715","defaultValue","onChange","stateValue","setStateValue","$3whtM$useState","isControlledRef","$3whtM$useRef","isControlled","$3whtM$useEffect","wasControlled","currentValue","setValue","$3whtM$useCallback","onChangeCaller","onChangeArgs","oldValue","functionArgs","interceptedValue","$7af3f5b51489e0b5$var$equalSets","setA","setB","$7af3f5b51489e0b5$export$253fe78d46329472","selectionMode","allowDuplicateSelectionEvents","selectionBehaviorProp","isFocusedRef","$6tM1y$useRef","$6tM1y$useState","focusedKeyRef","childFocusStrategyRef","setFocusedKey","selectedKeysProp","$6tM1y$useMemo","$7af3f5b51489e0b5$var$convertSelection","defaultSelectedKeys","setSelectedKeys","$6tM1y$useControlledState","disabledKeysProp","selectionBehavior","setSelectionBehavior","lastSelectionBehavior","$6tM1y$useEffect","f","k","childFocusStrategy","selection","$d496c0a20b6e58ec$export$6c8a5aaad13c9852","mappedKey","allKeys","first","$jkhUT$compareNodeOrder","_first_key","toKey","mappedToKey","_selectedKeys_anchorKey","_selectedKeys_currentKey","fromItem","toItem","_this_layoutDelegate","addKeys","_getFirstItem","_getFirstItem_key","$jkhUT$getFirstItem","$jkhUT$getChildNodes","_this_collection_getItem_props","_this_collection_getItem","_options_allowsCellSelection","$875d6693e12af071$export$728d6ba534403756","onExpandedChange","setExpandedKeys","$75HV2$useControlledState","selectionState","$75HV2$useMultipleSelectionState","$75HV2$useMemo","tree","$75HV2$useCollection","$75HV2$useCallback","$75HV2$useEffect","$875d6693e12af071$var$toggleKey","$75HV2$SelectionManager","set","res","setRef","composeRefs","refs","hasCleanup","cleanups","createSlot","ownerName","SlotClone","createSlotClone","Slot2","React","forwardedRef","slotProps","childrenArray","slottable","isSlottable","newElement","newChildren","jsx","childrenRef","getElementRef","props2","mergeProps","SLOTTABLE_IDENTIFIER","childProps","overrideProps","propName","slotPropValue","childPropValue","getter","_a","mayWarn","_b","NODES","Primitive","primitive","Slot","Node","asChild","primitiveProps","Comp","useLayoutEffect2","PORTAL_NAME","Portal","containerProp","portalProps","mounted","setMounted","useLayoutEffect","ReactDOM","Root","require$$0","is","objectIs","useState","useEffect","useDebugValue","useSyncExternalStore$2","subscribe","getSnapshot","_useState","inst","forceUpdate","checkIfSnapshotChanged","latestGetSnapshot","nextValue","useSyncExternalStore$1","shim","useSyncExternalStoreShim_production","didWarnOld18Alpha","didWarnUncachedGetSnapshot","cachedValue","useSyncExternalStoreShim_development","shimModule","require$$1","generateStylesheet","palette","theme","themeVariables","THEMES","DARK_STYLESHEET","LIGHT_STYLESHEET","customVars","generateCustomStylesheet","ThemeContext","createContext","useTheme","useContext","ThemeProvider","LIGHT_PALETTE","containerRef","useRef","themeClass","THEME_CLASSES","useMemo","ScreenOverlay","forwardRef","fadeIn","handleEscKey","Portal.Root","csx","iconURL","Icon","iconStyle","Chevron","rotateMap","ActionMenu","showCancel","cancelButtonText","actions","onSelectionChange","testId","useLockBodyScroll","contentHeight","setContentHeight","stackHistory","setStackHistory","currentActionStack","setCurrentActionStack","currentActions","contentRef","menuRef","justNavigatedToSubmenuRef","isClosing","handleClose","useIsClosing","hasActions","handleOverlayClose","useTreeState","Item","menuProps","useMenu","handleSubmenuOpen","prevStackHistory","prevStack","handleBack","previousStack","hasContent","jsxs","Fragment","ActionMenuItem","Button","menuItemProps","useMenuItem","Component","isExternal","isUrlExternal","anchorProps","handleInternalNavigation","createElement","BadgeVariants","Badge","variant","BANNER_ICONS","BANNER_VARIANTS","BannerContext","Banner","rounded","icon","compact","dataTestId","BannerTitle","BannerContent","getIconContent","isValidElement","BannerIcon","iconContent","BannerAction","buttonProps","BannerActions","$884aeceb3d67f00f$export$37b65e5b5444d35c","$e93e671b31057976$export$b8473d3665f3a75a","validationBehavior","$9Gacy$useLayoutEffect","errorMessage","$e93e671b31057976$var$getNativeValidity","onReset","$9Gacy$useEffectEvent","onInvalid","form","$e93e671b31057976$var$getFirstInvalidInput","_ref_current1","$9Gacy$setInteractionModality","$9Gacy$useEffect","$e93e671b31057976$var$getValidity","validity","$0d5c49892c1215da$export$37b0961d2f4751e2","ariaLabel","ariaLabelledby","hasChildren","hasAriaLabel","checked","$5jJ3f$usePress","labelProps","isLabelPressed","focusableProps","$5jJ3f$useFocusable","$5jJ3f$mergeProps","$5jJ3f$filterDOMProps","errorMessageId","$5jJ3f$useFormReset","$5jJ3f$useFormValidation","$d191a55c9702f145$export$8467354a121f1b9f","label","labelElementType","$83Elw$useId","fieldProps","$83Elw$useLabels","$2baaea4c71418dea$export$294aa081a6c6f55d","description","isInvalid","validationState","$2kC82$useSlotId","$2kC82$mergeProps","$430f30ed08ec25fa$export$62b9571f283ff5c2","isReadOnly","isRequired","orientation","$czmJy$useLocale","validationErrors","validationDetails","errorMessageProps","$czmJy$useField","$czmJy$filterDOMProps","$czmJy$useFocusWithin","_props_onBlur","nextDir","$czmJy$getFocusableTreeWalker","nextElem","groupName","$czmJy$useId","$czmJy$mergeProps","$e5be200c675c3b3a$export$aca958c65c314e6c","$e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE","$e5be200c675c3b3a$export$dad6ae84456c676a","$e5be200c675c3b3a$export$571b5131b7e65c11","$69F46$createContext","$e5be200c675c3b3a$export$a763b9476acd3eb","$e5be200c675c3b3a$export$fc1a364ae1f3ff10","realtimeValidation","displayValidation","updateValidation","resetValidation","commitValidation","$e5be200c675c3b3a$var$useFormValidationStateImpl","builtinValidation","validate","controlledError","clientError","$69F46$useMemo","validateErrors","$e5be200c675c3b3a$var$runValidate","$e5be200c675c3b3a$var$getValidationResult","serverErrors","$69F46$useContext","serverErrorMessages","$e5be200c675c3b3a$var$asArray","lastServerErrors","setLastServerErrors","$69F46$useState","isServerErrorCleared","setServerErrorCleared","serverError","nextValidation","$69F46$useRef","currentValidity","setCurrentValidity","lastError","commitQueued","setCommitQueued","error","$e5be200c675c3b3a$var$isEqualValidation","$69F46$useEffect","errors","$a54cdc5c1942b639$var$instance","$a54cdc5c1942b639$var$i","$a54cdc5c1942b639$export$bca9d026f8e704eb","$l55kx$useMemo","_props_defaultValue","selectedValue","setSelected","$l55kx$useControlledState","lastFocusedValue","setLastFocusedValue","$l55kx$useState","validation","$l55kx$useFormValidationState","setSelectedValue","ButtonGroupContext","ButtonGroup","sanitizedProps","useRadioGroupState","radioGroupProps","useRadioGroup","inputProps","useRadio","VisuallyHidden","$64fa3d84918910a7$export$c62b8e45d58ddad9","$64fa3d84918910a7$export$2881499e37b75b9a","values","Context","$iETbY$react","$64fa3d84918910a7$export$4d86445c2cf5e3","className","defaultClassName","defaultChildren","defaultStyle","$iETbY$useMemo","computedClassName","computedStyle","computedChildren","$64fa3d84918910a7$export$fabf2dc03a41866e","slot","$iETbY$useContext","slotKey","availableSlots","p","$64fa3d84918910a7$export$29f1550f4b0d4415","contextRef","mergedRef","$iETbY$useObjectRef","$iETbY$mergeRefs","mergedProps","$iETbY$mergeProps","renderProps","contextStyle","$64fa3d84918910a7$export$9d4c57ee4c6ffdd8","initialState","hasSlot","setHasSlot","$iETbY$useState","hasRun","$iETbY$useRef","$iETbY$useCallback","el","$iETbY$useLayoutEffect","$23b9f4fcf0fe224b$export$d68d59712b04d9d1","$23b9f4fcf0fe224b$export$408d25a4e12db025","keyMap","_node_key","Constructor","filterFn","newCollection","lastNode","clonedSection","lastChildInSection","$23b9f4fcf0fe224b$var$shouldKeepNode","clonedChild","clonedSeparator","clonedNode","lastSection","oldCollection","triggerChild","$681cc3c98f569e39$export$410b0c854570d131","firstChild","lastChild","previousSibling","nextSibling","_this_parentNode","newNode","referenceNode","$681cc3c98f569e39$export$dc064fe9e59310fd","_this_previousVisibleSibling","_this_firstVisibleChild","_this_lastVisibleChild","_this_previousVisibleSibling_node_key","_nextSibling_node_key","_this_firstVisibleChild_node_key","_this_lastVisibleChild_node_key","_node_colIndex","_node_colSpan","nextColIndex","siblingNode","render","value1","isHidden","_element_parentNode","_element_parentNode1","prev","$681cc3c98f569e39$export$b34a105447964f9f","fn","$e948873055cbafe4$export$727c8fc270210f13","idScope","addIdAndValue","dependencies","$luMFQ$useMemo","_rendered_props_id","$luMFQ$cloneElement","getFirstChild","$f39a9eba43920ace$export$94b6d0abf7d33e8c","$8SdCi$createContext","$f39a9eba43920ace$export$8dc98ba7eadeaa56","$8SdCi$useContext","$8SdCi$react","$f39a9eba43920ace$export$86427a43e3e48ebb","Wrapper","$8SdCi$forwardRef","$f39a9eba43920ace$export$b5d7cc18bb8d2b59","$e1995378a142960e$var$ShallowRenderContext","$95feo$createContext","$e1995378a142960e$var$CollectionDocumentContext","$e1995378a142960e$export$bf788dd355e3a401","$95feo$useContext","$e1995378a142960e$var$useCollectionDocument","$95feo$react","$e1995378a142960e$var$CollectionInner","$e1995378a142960e$var$useSyncExternalStoreFallback","getServerSnapshot","$95feo$useIsSSR","isSSRRef","$95feo$useRef","getSnapshotWrapper","$95feo$useCallback","$95feo$useSyncExternalStore","$e1995378a142960e$var$useSyncExternalStore","createCollection","$95feo$useState","$95feo$useLayoutEffect","$e1995378a142960e$var$SSRContext","$e1995378a142960e$var$useSSRCollectionNode","Type","itemRef","$e1995378a142960e$export$18af5c7a9e9b3664","Result","$95feo$forwardRef","$95feo$FocusableContext","$e1995378a142960e$export$e953bb1cd0f19726","useChildren","$e1995378a142960e$var$useCollectionChildren","_useSSRCollectionNode","$e1995378a142960e$var$CollectionContext","$e1995378a142960e$export$fb8073518f34e6ec","$e1995378a142960e$var$CollectionRoot","$95feo$useMemo","wrappedChildren","$95feo$createPortal","$0393f8ab869a0f1a$export$e9f3bf65a26ce129","$hU2kz$createContext","$319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY","$319e236875307eab$var$liveAnnouncer","$319e236875307eab$export$a9b970dcc4ae71a9","assertiveness","$319e236875307eab$var$LiveAnnouncer","_this_node","ariaLive","_this_assertiveLog","_this_politeLog","$d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes","$d2b4bc8c273e7be6$export$24d547caef80ccd1","$fM325$createContext","$d2b4bc8c273e7be6$export$353f5b6fc5456de1","$fM325$createHideableComponent","$d2b4bc8c273e7be6$var$disablePendingProps","isPending","$fM325$useButton","isFocusVisible","$fM325$useFocusRing","$fM325$useHover","renderValues","buttonId","$fM325$useId","progressId","wasPending","$fM325$useRef","$fM325$useEffect","$fM325$announce","$fM325$react","$fM325$filterDOMProps","$fM325$mergeProps","$514c0188e459b4c0$export$9afb8bc826b033ea","$1B3Dx$createContext","$514c0188e459b4c0$export$5f1af8db9871e1d6","$1B3Dx$forwardRef","ElementType","$1B3Dx$react","$b1f0cad8af73213b$export$3585ede4d035bf14","$b1f0cad8af73213b$var$normalizeKey","$b1f0cad8af73213b$export$9145995848b05025","itemKey","$c132121280ec012d$export$50eacbbf140a3141","$by1yQ$filterDOMProps","$by1yQ$useSelectableList","$by1yQ$useFocusWithin","$by1yQ$useId","$by1yQ$useLabel","$by1yQ$mergeProps","$293f70390ea03370$export$497855f14858aa34","_item_props1","_props_shouldSelectOnPressUp","_props_shouldFocusOnHover","shouldFocusOnHover","_props_shouldUseVirtualFocus","_props_isVirtualized","$fcwmx$useSlotId","optionProps","$fcwmx$isMac","$fcwmx$isWebKit","$fcwmx$getItemCount","_data_onAction","$fcwmx$useSelectableItem","$fcwmx$chain","$fcwmx$useHover","$fcwmx$isFocusVisible","$fcwmx$filterDOMProps","$fcwmx$useLinkProps","$fcwmx$mergeProps","$d2f53cda644affe3$export$65d2a03b8800d6e3","$llkzs$createContext","$7135fc7d473fd974$export$d40e14dec8b060a8","$18I52$createContext","$7135fc7d473fd974$export$a164736487e3f0ae","renderDropIndicator","$7135fc7d473fd974$var$useCollectionRender","$18I52$useCachedChildren","_collection_getItem","keyAfter","$18I52$react","$7135fc7d473fd974$export$4feb769f8ddf26c5","$7135fc7d473fd974$export$90e00781bc59d8f9","$18I52$useMemo","$72a5793c14baf454$export$e0e4026c12a8bdbb","$i47tY$createContext","$72a5793c14baf454$export$8b251419efc915eb","$i47tY$createLeafComponent","$i47tY$react","$431f98aba6844401$export$6615d83f6de245ce","$i9JCE$createContext","$44f671af83e7d9e0$export$2de4954e8ae13b9f","$8wt2Z$createContext","$44f671af83e7d9e0$export$746d02f47f4d381","$8wt2Z$forwardRef","DOMProps","$8wt2Z$filterDOMProps","$8wt2Z$react","$07b14b47974efb58$export$9b9a0cd73afb7ca4","$ehFet$createContext","$07b14b47974efb58$var$PopoverGroupContext","$07b14b47974efb58$export$5b6b19405a83ff9d","$ehFet$forwardRef","contextState","$ehFet$useContext","$de32f1b87079253c$export$d2f961adcb0afbe","localState","$ehFet$useOverlayTriggerState","$ehFet$useExitAnimation","$ehFet$useIsHidden","$ehFet$useLocale","$ehFet$react","$07b14b47974efb58$var$PopoverInner","UNSTABLE_portalContainer","arrowRef","$ehFet$useRef","arrowWidth","setArrowWidth","$ehFet$useState","groupCtx","isSubPopover","$ehFet$useLayoutEffect","_props_offset","popoverProps","$ehFet$usePopover","isEntering","$ehFet$useEnterAnimation","shouldBeDialog","isDialog","setDialog","$ehFet$useEffect","$ehFet$focusSafely","$ehFet$mergeProps","$ehFet$filterDOMProps","$ehFet$DismissButton","$ehFet$Overlay","$63df2425e2108aa8$export$744d98a3b8a94e1c","$3zqIJ$createContext","$3674c52c6b3c5bce$export$c7e742effb1c51e2","$kM2ZM$createContext","$3674c52c6b3c5bce$export$24aad8519b95b41b","$3674c52c6b3c5bce$export$795aec4671cbae19","$3674c52c6b3c5bce$var$SelectionManagerContext","$3674c52c6b3c5bce$var$SubmenuTriggerContext","$3674c52c6b3c5bce$export$ecabc99eeffab7ca","$kM2ZM$createBranchComponent","CollectionBranch","$kM2ZM$useContext","rootMenuTriggerState","submenuTriggerState","$kM2ZM$useSubmenuTriggerState","submenuRef","$kM2ZM$useRef","$kM2ZM$useObjectRef","parentMenuRef","submenuTriggerProps","submenuProps","$kM2ZM$useSubmenuTrigger","$kM2ZM$react","$3674c52c6b3c5bce$var$MenuItemContext","$3674c52c6b3c5bce$export$d9b273488cd8ce6f","$kM2ZM$forwardRef","$kM2ZM$CollectionBuilder","$kM2ZM$Collection","$3674c52c6b3c5bce$var$MenuInner","autocompleteMenuProps","$kM2ZM$useMemo","$kM2ZM$mergeRefs","filteredCollection","$kM2ZM$useTreeState","triggerState","CollectionRoot","$kM2ZM$useMenu","emptyState","$kM2ZM$FocusScope","$kM2ZM$filterDOMProps","$3674c52c6b3c5bce$var$MenuSectionInner","$kM2ZM$useMenuTriggerState","$3674c52c6b3c5bce$var$GroupSelectionManager","$kM2ZM$SelectionManager","section","_section_props","_section_props1","headingRef","heading","_section_props_arialabel","headingProps","groupProps","$kM2ZM$useMenuSection","$kM2ZM$useMultipleSelectionState","$3674c52c6b3c5bce$export$4b1545b4f2016d26","$3674c52c6b3c5bce$export$2ce376c2cc3355c8","$kM2ZM$createLeafComponent","_useSlottedContext","keyboardShortcutProps","states","$kM2ZM$useMenuItem","$kM2ZM$useHover","$kM2ZM$mergeProps","$6IYYA$createContext","$4e3b923658d69c60$export$7a7623236eec67fa","$cCslV$createContext","$4e3b923658d69c60$export$39ae08fa83328b12","$4e3b923658d69c60$export$8c610744efcf8a1d","$cCslV$useTooltipTriggerState","$cCslV$useRef","tooltipProps","$cCslV$useTooltipTrigger","$cCslV$react","$cCslV$FocusableProvider","$4e3b923658d69c60$export$28c660c63b792dea","$cCslV$forwardRef","$cCslV$useContext","$cCslV$useExitAnimation","$cCslV$OverlayContainer","$4e3b923658d69c60$var$TooltipInner","$cCslV$useState","$cCslV$useLayoutEffect","$cCslV$useOverlayPosition","$cCslV$useEnterAnimation","$cCslV$mergeProps","$cCslV$useTooltip","$fc909762b330b746$export$61c6a8c84e605fb6","setOpen","$hnMvi$useControlledState","open","$hnMvi$useCallback","toggle","$a28c903ee9ad8dc5$export$79fefeb1c2091ac3","overlayTriggerState","$8bn9m$useOverlayTriggerState","focusStrategy","setFocusStrategy","$8bn9m$useState","expandedKeysStack","setExpandedKeysStack","closeAll","triggerKey","level","oldStack","PopoverMenu","setIsOpen","selectedKey","themeStyle","AriaPopover","AriaMenu","MenuSection","AriaMenuHeader","renderSubmenu","AriaSubmenuTrigger","MenuItem","Text","AriaMenuItem","hasSubmenu","MenuTrigger","renderTrigger","disabled","triggerTestId","menuTestId","menuItems","isMobile","useBreakpoint","BREAKPOINTS","menuState","useMenuTriggerState","menuTriggerProps","useMenuTrigger","handleSingleSelectionChange","defaultTrigger","AriaButton","EllipsisIcon","TriggerComponent","FIXED_TRIGGER_WIDTH","ButtonWithSelect","fullWidth","textShift","TriggerButton","TableHeader","TableColumn","TableBody","TableRow","TableCell","isComponentType","componentType","parseTableChildren","columns","rows","Children","headerProps","columnChild","TableColumnComp","columnProps","bodyProps","rowChild","TableRowComp","rowProps","cells","cellIndex","cellChild","TableCellComp","cellProps","columnKey","useTableCollection","keyToIndexMap","map","row","getItemByKey","getItemAfter","getItemBefore","getItemIndex","firstItem","lastItem","isHeaderHidden","hasVisibleHeader","getTotalRowCount","getRowAriaIndex","rowIndex","TableComponent","tableData","column","colIndex","cell","c","Table","Elevation","hasPrimaryGradient","hasPalette","defaultBg","primaryDark","secondaryDark","transparentize","basePrimary","baseSecondary","mix","Tombstone","borderRadius","DataTable","loading","tombstoneComponent","onRowClick","emptyMessage","loadingRows","sortableColumns","sortedBy","sortDirection","onSort","visibleColumns","col","handleSortClick","newDirection","getSortState","columnId","EmptyState","isSortable","sortState","rowKey","isError","$40df3f8667284809$export$d55e7ee900f34e93","titleId","$i6df2$useSlotId","$i6df2$useRef","$i6df2$useEffect","$i6df2$focusSafely","$i6df2$useOverlayFocusContain","$i6df2$filterDOMProps","Dialog","dialogProps","titleProps","useDialog","getBgWhiteOverlayColor","color","r","g","brightness","brightnessPercentage","ImageBackground","image","imageUrl","onLoad","baseColor","parseToRgba","backgroundColor","Input","prefix","suffix","descriptionPosition","placeholder","autoComplete","onSubmit","onClear","inputRef","prefixRef","suffixRef","updateSizes","containerWidth","prefixWidth","suffixWidth","resizeObserver","inputId","errorId","copyTextToClipboard","CopyInput","onError","onSuccess","isCopied","setCopied","CopyButton","SearchInput","isClearable","controlledValue","handleChange","newValue","handleClear","$701a24aa0da5b062$export$ea18c227d4417cc3","elementType","allowFocusWhenDisabled","href","rel","additionalProps","$bwqiF$usePress","$bwqiF$useFocusable","$bwqiF$mergeProps","$bwqiF$filterDOMProps","ModalTitle","ModalSubtitle","ModalBody","ModalAction","ModalActions","FocusScope","ModalContent","subtitle","body","useOverlayTriggerState","modalProps","useModalOverlay","usePreventScroll","closeButtonRef","closeButtonProps","useButton","ModalWrapper","isOverlay","modalContent","Modal","usePopoverTrigger","useOverlayTrigger","Popover","arrow","usePopover","Overlay","DismissButton","$58aed456727eb0f3$export$703601b7e90536f8","$58aed456727eb0f3$export$e64b2f635402ca43","$aUnai$useCollator","$aUnai$useMemo","$aUnai$ListKeyboardDelegate","$aUnai$useMenuTrigger","$aUnai$useTypeSelect","$aUnai$useField","$aUnai$filterDOMProps","$aUnai$mergeProps","valueId","$aUnai$useId","$aUnai$setInteractionModality","$aUnai$chain","$bdd25dc72710631f$export$f809e80f58e251d1","$8BE50$useVisuallyHidden","$8BE50$useFormReset","$8BE50$useFormValidation","_triggerRef_current","_state_selectedKey","$bdd25dc72710631f$export$cbd84cdb2e668835","selectRef","$8BE50$useRef","containerProps","selectProps","$8BE50$react","$a02d57049d202695$export$d085fb9e920b5ca7","$e72dd72e1c76a225$export$2f645645f7bca764","$d5vlZ$useMultipleSelectionState","$d5vlZ$useMemo","$d5vlZ$useCallback","$d5vlZ$useCollection","$d5vlZ$SelectionManager","$e72dd72e1c76a225$var$useFocusedKeyReset","cachedCollection","$d5vlZ$useRef","$d5vlZ$useEffect","startItem","cachedItemNodes","itemNode","itemNodes","_cachedItemNodes_length","_itemNodes_length","diff","_startItem_index","_startItem_index1","_itemNodes_length1","isReverseSearching","_startItem_index2","_startItem_index3","$a0d645289fe9b86b$export$e7f05e985daf4b5f","_props_defaultSelectedKey","setSelectedKey","$eBozH$useControlledState","$eBozH$useMemo","_keys_values_next_value","selectedItem","$2bc3a590c5373a4e$export$5159ec8b34d4ec12","$6FfNf$useOverlayTriggerState","$6FfNf$useState","listState","$6FfNf$useSingleSelectListState","$6FfNf$useFormValidationState","ListBox","localRef","listBoxProps","useListBox","ListBoxItem","useOption","SelectButton","Select","defaultSelectedKey","onOpen","useSelectState","valueProps","useSelect","actionItems","HiddenSelect","$d2c8e2b0480f3f34$export$cbe85ee05b554577","$bvdLj$usePress","$bvdLj$useFocusable","$bvdLj$mergeProps","$bvdLj$filterDOMProps","$bvdLj$useFormReset","$b418ec0c85c52f27$export$d853f7095ae95f88","$ifSyJ$useToggle","$3017fa7ffdddec74$export$8042c6c013fd5226","$d8rik$useControlledState","updateSelected","toggleState","Switch","useToggleState","useSwitch","TextEllipsis","maxWidth","singleLine","lines","Tooltip","AriaTooltip","OverlayArrow","TooltipTrigger","delay","closeDelay","defaultOpen","onOpenChange","disableTriggerClick","content","triggerClickRef","hasHovered","AriaTooltipTrigger","openState","Focusable","TextEmphasis","themeClassName","WaveformBar","amplitude","isPlayed","hasAnimated","resolution","spacing","barHeight","sampleWaveform","generateSampleWaveformData","Waveform","waveformData","startDuration","endDuration","currentTime","showTimestamps","totalDuration","disabledMessage","processedWaveform","setProcessedWaveform","hoverPosition","setHoverPosition","setIsVisible","setHasAnimated","waveform","processWaveform","numBars","processed","resampleData","initialWidth","entries","visibilityTimer","animationTimer","handleMouseMove","handleMouseLeave","barTotalWidth","getBarPosition","time","waveformMessage","TimestampBlock","isBarOutsideActiveRegion","seconds","formatTimestamp","minutes","remainingSeconds","initialData","finalArrayLength","initialArrayLength","step","resampledData","newIndex","leftIndex","rightIndex","fraction","scaleData","min","max","normalized","length","phase"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAIA,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,kBAAoB;AACxB;ACH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;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;ACHA,IAAIC,KAA4B,CAAA;AAChCA,KAA4B;AAAA,EACxB,SAAW;AACf;AC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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,154,155,156,157,158,159,160,161,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,198,204,207,208,209,210,211,212,215,216,217]}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|