@oracle/oraclejet-preact 17.0.1 → 17.0.3
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/amd/ActionCard-c8070525.js +1 -1
- package/amd/{BarChart-6c921af0.js → BarChart-be1d51d4.js} +2 -2
- package/amd/{BarChart-6c921af0.js.map → BarChart-be1d51d4.js.map} +1 -1
- package/amd/BaseButton-83ce1d00.js +1 -1
- package/amd/{BaseCardView-3c1e5b4c.js → BaseCardView-1aa0d986.js} +2 -2
- package/amd/{BaseCardView-3c1e5b4c.js.map → BaseCardView-1aa0d986.js.map} +1 -1
- package/amd/{BaseCardViewSelectionTest-28e25f08.js → BaseCardViewSelectionTest-09799a11.js} +2 -2
- package/amd/{BaseCardViewSelectionTest-28e25f08.js.map → BaseCardViewSelectionTest-09799a11.js.map} +1 -1
- package/amd/BaseNavigationListItem-4a940426.js +1 -1
- package/amd/ButtonSet-d8cd5447.js +1 -1
- package/amd/ButtonSetIconButton-08612ca6.js +1 -1
- package/amd/CardFlexView-a647550f.js +2 -0
- package/amd/{CardFlexView-3e4bd681.js.map → CardFlexView-a647550f.js.map} +1 -1
- package/amd/CardGridView-06fb67cb.js +2 -0
- package/amd/{CardGridView-8fb55ad7.js.map → CardGridView-06fb67cb.js.map} +1 -1
- package/amd/Center-ce88b58a.js +2 -0
- package/amd/{Center-5f845605.js.map → Center-ce88b58a.js.map} +1 -1
- package/amd/{Chart-0f54dae3.js → Chart-4796be31.js} +2 -2
- package/amd/{Chart-0f54dae3.js.map → Chart-4796be31.js.map} +1 -1
- package/amd/CheckboxControl-7d539ab3.js +1 -1
- package/amd/CheckboxRadioField-da88bd6f.js +1 -1
- package/amd/Chip-26339152.js +1 -1
- package/amd/ClearIcon-a29e57fb.js +1 -1
- package/amd/CollapseIcon-c433fd3e.js +1 -1
- package/amd/Collapsible-8f15bec2.js +1 -1
- package/amd/CompactHelpSource-7de24d56.js +1 -1
- package/amd/CompactLabelAssistance-9b6b3be2.js +2 -0
- package/amd/{CompactLabelAssistance-91aeaa2e.js.map → CompactLabelAssistance-9b6b3be2.js.map} +1 -1
- package/amd/CompactUserAssistance-b2cbdbad.js +1 -1
- package/amd/ComponentMessageContainer-dc4b7c7f.js +1 -1
- package/amd/ConveyorBeltItem-d398eaa6.js +1 -1
- package/amd/{DatePicker-3996fc76.js → DatePicker-70b1aba4.js} +2 -2
- package/amd/{DatePicker-3996fc76.js.map → DatePicker-70b1aba4.js.map} +1 -1
- package/amd/DatePickerHeader-52c085e6.js +1 -1
- package/amd/{Diagram-737e9921.js → Diagram-9627b062.js} +2 -2
- package/amd/{Diagram-737e9921.js.map → Diagram-9627b062.js.map} +1 -1
- package/amd/DirectionalCollapseArrowIcon-09a24655.js +1 -1
- package/amd/DirectionalExpandArrowIcon-c8f2e596.js +1 -1
- package/amd/DragHandle-351a20be.js +1 -1
- package/amd/{Dropdown-de472a1d.js → Dropdown-c62373dd.js} +2 -2
- package/amd/{Dropdown-de472a1d.js.map → Dropdown-c62373dd.js.map} +1 -1
- package/amd/{EnvironmentProvider-46d0a245.js → EnvironmentProvider-9e71b5c2.js} +2 -2
- package/amd/{EnvironmentProvider-46d0a245.js.map → EnvironmentProvider-9e71b5c2.js.map} +1 -1
- package/amd/FilePicker-9b2fb661.js +1 -1
- package/amd/{Flex-1f27b601.js → Flex-db3ddadb.js} +2 -2
- package/amd/{Flex-1f27b601.js.map → Flex-db3ddadb.js.map} +1 -1
- package/amd/{Floating-85851b1a.js → Floating-8f519f4d.js} +2 -2
- package/amd/{Floating-85851b1a.js.map → Floating-8f519f4d.js.map} +1 -1
- package/amd/FormLayout-80b89e74.js +1 -1
- package/amd/Gantt-6fe34398.js +1 -1
- package/amd/{Grid-85171367.js → Grid-209ab070.js} +2 -2
- package/amd/{Grid-85171367.js.map → Grid-209ab070.js.map} +1 -1
- package/amd/{Gridlines-11a94c28.js → Gridlines-8ca4f9ee.js} +2 -2
- package/amd/{Gridlines-11a94c28.js.map → Gridlines-8ca4f9ee.js.map} +1 -1
- package/amd/GroupLoadingIndicator-e66ed431.js +1 -1
- package/amd/HighlightText-415dc14f.js +2 -0
- package/amd/{HighlightText-ad9bc1f8.js.map → HighlightText-415dc14f.js.map} +1 -1
- package/amd/Icon-599f55f3.js +1 -1
- package/amd/IconButton-1b328b69.js +1 -1
- package/amd/IconMenuButton-c275cfbb.js +1 -1
- package/amd/IconSwitchButton-0e888503.js +1 -1
- package/amd/IconToggleButton-563a5127.js +1 -1
- package/amd/{IconUserAssistance-5bdaa6bf.js → IconUserAssistance-f8928f19.js} +2 -2
- package/amd/{IconUserAssistance-5bdaa6bf.js.map → IconUserAssistance-f8928f19.js.map} +1 -1
- package/amd/{Indexer-51d51cda.js → Indexer-204a6d88.js} +2 -2
- package/amd/{Indexer-51d51cda.js.map → Indexer-204a6d88.js.map} +1 -1
- package/amd/InlineHelpSource-359fd9df.js +1 -1
- package/amd/InlineUserAssistance-f4d1fa1b.js +1 -1
- package/amd/InputDateMask-b7a27faa.js +1 -1
- package/amd/InputDatePicker-da5d8728.js +1 -1
- package/amd/InputPassword-03f24e78.js +1 -1
- package/amd/InputText-da0a5c0f.js +1 -1
- package/amd/Label-3f8fc274.js +1 -1
- package/amd/LabelValueLayout-89e9f1be.js +1 -1
- package/amd/Layer-8d7bbd69.js +2 -0
- package/amd/{Layer-3cc44164.js.map → Layer-8d7bbd69.js.map} +1 -1
- package/amd/{LayerHost-eab40731.js → LayerHost-0a244de8.js} +2 -2
- package/amd/{LayerHost-eab40731.js.map → LayerHost-0a244de8.js.map} +1 -1
- package/amd/{LayerManager-d0836029.js → LayerManager-00983765.js} +2 -2
- package/amd/{LayerManager-d0836029.js.map → LayerManager-00983765.js.map} +1 -1
- package/amd/Legend-42f8653b.js +1 -1
- package/amd/{LineAreaChart-337cac30.js → LineAreaChart-b68c4620.js} +2 -2
- package/amd/{LineAreaChart-337cac30.js.map → LineAreaChart-b68c4620.js.map} +1 -1
- package/amd/Link-6f583879.js +1 -1
- package/amd/List-5958c802.js +2 -0
- package/amd/{List-88a7bee6.js.map → List-5958c802.js.map} +1 -1
- package/amd/ListItemLayout-12aee4bd.js +2 -0
- package/amd/{ListItemLayout-dba9e24b.js.map → ListItemLayout-12aee4bd.js.map} +1 -1
- package/amd/{ListView-6739207e.js → ListView-27d10b67.js} +2 -2
- package/amd/{ListView-6739207e.js.map → ListView-27d10b67.js.map} +1 -1
- package/amd/LiveRegion-09197914.js +2 -0
- package/amd/{LiveRegion-be6f36d7.js.map → LiveRegion-09197914.js.map} +1 -1
- package/amd/LoadMoreCollection-83413a59.js +2 -0
- package/amd/{LoadMoreCollection-a6adbc3f.js.map → LoadMoreCollection-83413a59.js.map} +1 -1
- package/amd/MaxLengthCounter-caafceef.js +2 -0
- package/{es/MaxLengthCounter-cead2dac.js.map → amd/MaxLengthCounter-caafceef.js.map} +1 -1
- package/amd/MaxLengthLiveRegion-e3856a98.js +2 -0
- package/amd/{MaxLengthLiveRegion-23d7e335.js.map → MaxLengthLiveRegion-e3856a98.js.map} +1 -1
- package/amd/{Menu-51409b28.js → Menu-6a5d7fce.js} +2 -2
- package/amd/{Menu-51409b28.js.map → Menu-6a5d7fce.js.map} +1 -1
- package/amd/MenuButton-c8fb534d.js +1 -1
- package/amd/MenuItem-644f8619.js +1 -1
- package/amd/Message-51d787d0.js +1 -1
- package/amd/MessageLayer-cf2fbea9.js +2 -0
- package/amd/{MessageLayer-d2c49999.js.map → MessageLayer-cf2fbea9.js.map} +1 -1
- package/amd/MessageToast-e0e07765.js +1 -1
- package/amd/MessagesManager-78a10f78.js +1 -1
- package/amd/MeterBar-38666619.js +1 -1
- package/amd/MeterCircle-f1561632.js +1 -1
- package/amd/{Modal-8c095bea.js → Modal-8f19889c.js} +2 -2
- package/amd/{Modal-8c095bea.js.map → Modal-8f19889c.js.map} +1 -1
- package/amd/{MonthView-b5d1d69d.js → MonthView-297fceb8.js} +2 -2
- package/amd/{MonthView-b5d1d69d.js.map → MonthView-297fceb8.js.map} +1 -1
- package/amd/NavigationListItem-0a4f8a9c.js +2 -0
- package/amd/{NavigationListItem-c96ac144.js.map → NavigationListItem-0a4f8a9c.js.map} +1 -1
- package/amd/NumberInputText-0d8284f8.js +1 -1
- package/amd/{OverflowTabBarItem-f781e527.js → OverflowTabBarItem-aae4eb2f.js} +2 -2
- package/amd/{OverflowTabBarItem-f781e527.js.map → OverflowTabBarItem-aae4eb2f.js.map} +1 -1
- package/amd/PRIVATE_BaseCardView.js +1 -1
- package/amd/PRIVATE_Chart.js +1 -1
- package/amd/PRIVATE_CheckboxControl.js +1 -1
- package/amd/PRIVATE_CheckboxRadioField.js +1 -1
- package/amd/PRIVATE_ClearIcon.js +1 -1
- package/amd/PRIVATE_DatePickerHeader.js +1 -1
- package/amd/PRIVATE_DatePickerLayout.js +1 -1
- package/amd/PRIVATE_EmbeddedIconButton.js +1 -1
- package/amd/PRIVATE_FormControls.js +1 -1
- package/amd/PRIVATE_IconSwitchButton.js +1 -1
- package/amd/PRIVATE_Icons/CheckboxMixed.js +1 -1
- package/amd/PRIVATE_Icons/CheckboxOff.js +1 -1
- package/amd/PRIVATE_Icons/CheckboxOn.js +1 -1
- package/amd/PRIVATE_Icons/RadiobuttonOff.js +1 -1
- package/amd/PRIVATE_Icons/RadiobuttonOn.js +1 -1
- package/amd/PRIVATE_Icons/WarningS.js +1 -1
- package/amd/PRIVATE_List.js +1 -1
- package/amd/PRIVATE_LoadMoreCollection.js +1 -1
- package/amd/PRIVATE_Message.js +1 -1
- package/amd/PRIVATE_MessageLayer.js +1 -1
- package/amd/PRIVATE_MonthView.js +1 -1
- package/amd/PRIVATE_MonthYearGridView.js +1 -1
- package/amd/PRIVATE_PlotArea.js +1 -1
- package/amd/PRIVATE_RevealToggleIcon.js +1 -1
- package/amd/PRIVATE_SelectCommon.js +1 -1
- package/amd/PRIVATE_StyledCheckbox.js +1 -1
- package/amd/PRIVATE_Table.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CalendarIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ChartPanIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ChartZoomIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CheckIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CheckboxOffIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CheckboxOnIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CloseIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CollapseIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/CollapseUpIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/DecrementIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/DeleteIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/DropdownArrowIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ExpandIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/HelpIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/IncrementIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MessageErrorIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MessageInfoIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MessageWarningIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/MinusIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/NavDownIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/PlusIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/RadioOffIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/RadioOnIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/SortAscendingIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/SortDefaultIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/SortDescendingIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ViewHideIcon.js +1 -1
- package/amd/PRIVATE_ThemedIcons/ViewIcon.js +1 -1
- package/amd/PRIVATE_TimeComponent.js +1 -1
- package/amd/PRIVATE_VirtualizedCollection.js +1 -1
- package/amd/PRIVATE_VisTabularDatatip.js +1 -1
- package/amd/PictoChart-4d70af90.js +1 -1
- package/amd/{PieChart-ab4c95f7.js → PieChart-295e2dbf.js} +2 -2
- package/amd/{PieChart-ab4c95f7.js.map → PieChart-295e2dbf.js.map} +1 -1
- package/amd/{Popup-249d77c3.js → Popup-b5495d55.js} +2 -2
- package/amd/{Popup-249d77c3.js.map → Popup-b5495d55.js.map} +1 -1
- package/amd/{ProgressBar-f82d6b43.js → ProgressBar-e9b37565.js} +2 -2
- package/amd/{ProgressBar-f82d6b43.js.map → ProgressBar-e9b37565.js.map} +1 -1
- package/amd/{ProgressCircle-fc85cd7c.js → ProgressCircle-3b0d70d1.js} +2 -2
- package/amd/{ProgressCircle-fc85cd7c.js.map → ProgressCircle-3b0d70d1.js.map} +1 -1
- package/amd/RadioItem-27c120ba.js +1 -1
- package/amd/RatingGauge-dfe9f698.js +1 -1
- package/amd/ReadonlyTextFieldInput-a5e85e5d.js +1 -1
- package/amd/RemovableNavigationListItem-87ecbae7.js +1 -1
- package/amd/RemovableTabBarItem-89287a9b.js +1 -1
- package/amd/ReorderableTabBar-05821909.js +1 -1
- package/amd/RevealToggleIcon-c2b91037.js +2 -0
- package/amd/{RevealToggleIcon-ef89d654.js.map → RevealToggleIcon-c2b91037.js.map} +1 -1
- package/amd/SectionalLegend-798dbecb.js +1 -1
- package/amd/SectionedContent-d896b84f.js +2 -0
- package/amd/{SectionedContent-655a773a.js.map → SectionedContent-d896b84f.js.map} +1 -1
- package/amd/{SelectMultiple-06da3db0.js → SelectMultiple-fabd883c.js} +2 -2
- package/amd/{SelectMultiple-06da3db0.js.map → SelectMultiple-fabd883c.js.map} +1 -1
- package/amd/{SelectSingle-2266e5c4.js → SelectSingle-34d636a8.js} +2 -2
- package/amd/{SelectSingle-2266e5c4.js.map → SelectSingle-34d636a8.js.map} +1 -1
- package/amd/SelectionCard-ec3ee20d.js +2 -0
- package/amd/{SelectionCard-0ecc7773.js.map → SelectionCard-ec3ee20d.js.map} +1 -1
- package/amd/Selector-ad2af152.js +1 -1
- package/amd/SelectorAll-879d186e.js +1 -1
- package/amd/{Sheet-6447f399.js → Sheet-a398d015.js} +2 -2
- package/amd/{Sheet-6447f399.js.map → Sheet-a398d015.js.map} +1 -1
- package/amd/SplitMenuButton-deb0fc04.js +1 -1
- package/amd/StyledTextField-8ac3bbb4.js +1 -1
- package/amd/Submenu-b20a55aa.js +1 -1
- package/amd/TabBar-10096a0c.js +1 -1
- package/amd/TabBarItem-7f4a5e0b.js +1 -1
- package/amd/TabBarLayout-f8e0fcad.js +1 -1
- package/amd/TabBarMixed-5adc54c4.js +1 -1
- package/amd/TabBarMixedSeparator-234c9a75.js +2 -0
- package/amd/{TabBarMixedSeparator-10a52b13.js.map → TabBarMixedSeparator-234c9a75.js.map} +1 -1
- package/amd/{Table-8e271f0f.js → Table-fda0ad21.js} +2 -2
- package/amd/{Table-8e271f0f.js.map → Table-fda0ad21.js.map} +1 -1
- package/amd/{TableView-cc05c32f.js → TableView-e4216655.js} +2 -2
- package/amd/{TableView-cc05c32f.js.map → TableView-e4216655.js.map} +1 -1
- package/amd/TagCloud-a37fcea5.js +1 -1
- package/amd/TextArea-44c90bc4.js +2 -0
- package/{es/TextArea-d97aac1f.js.map → amd/TextArea-44c90bc4.js.map} +1 -1
- package/amd/TextAreaAutosize-0a023972.js +2 -0
- package/amd/{TextAreaAutosize-9dc5bffe.js.map → TextAreaAutosize-0a023972.js.map} +1 -1
- package/amd/TextField-0fc70892.js +1 -1
- package/amd/TextFieldInput-dfd9529f.js +1 -1
- package/amd/Theme-redwood/theme.css +267 -267
- package/amd/Theme-stable/theme.css +300 -300
- package/amd/TimeComponentCanvas2D-d4a5891c.js +1 -1
- package/amd/Toolbar-98c1d888.js +1 -1
- package/amd/TruncatingBadge-67192c05.js +1 -1
- package/amd/TruncatingText-27ffd8e4.js +1 -1
- package/amd/UNSAFE_ActionCard.js +1 -1
- package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
- package/amd/UNSAFE_BarChart.js +1 -1
- package/amd/UNSAFE_BaseButton.js +1 -1
- package/amd/UNSAFE_Button.js +1 -1
- package/amd/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +1 -1
- package/amd/UNSAFE_ButtonSet.js +1 -1
- package/amd/UNSAFE_ButtonSetButton.js +1 -1
- package/amd/UNSAFE_ButtonSetIconButton.js +1 -1
- package/amd/UNSAFE_ButtonSetItem.js +1 -1
- package/amd/UNSAFE_ButtonSetMultiple.js +1 -1
- package/amd/UNSAFE_ButtonSetSingle.js +1 -1
- package/amd/UNSAFE_CardFlexView.js +1 -1
- package/amd/UNSAFE_CardGridView.js +1 -1
- package/amd/UNSAFE_Center.js +1 -1
- package/amd/UNSAFE_ChartWithLegend.js +1 -1
- package/amd/UNSAFE_Checkbox.js +1 -1
- package/amd/UNSAFE_CheckboxItem.js +1 -1
- package/amd/UNSAFE_CheckboxSet.js +1 -1
- package/amd/UNSAFE_Chip.js +1 -1
- package/amd/UNSAFE_Collapsible.js +1 -1
- package/amd/UNSAFE_ComponentMessage.js +1 -1
- package/amd/UNSAFE_ConveyorBelt.js +1 -1
- package/amd/UNSAFE_DatePicker.js +1 -1
- package/amd/UNSAFE_Diagram.js +1 -1
- package/amd/UNSAFE_Dialog.js +1 -1
- package/amd/UNSAFE_DragHandle.js +1 -1
- package/amd/UNSAFE_DrawerLayout.js +1 -1
- package/amd/UNSAFE_DrawerPopup.js +1 -1
- package/amd/UNSAFE_Dropdown.js +1 -1
- package/amd/UNSAFE_Environment.js +1 -1
- package/amd/UNSAFE_ExpandableList.js +1 -1
- package/amd/UNSAFE_FilePicker.js +1 -1
- package/amd/UNSAFE_Flex.js +1 -1
- package/amd/UNSAFE_Floating.js +1 -1
- package/amd/UNSAFE_FormLayout.js +1 -1
- package/amd/UNSAFE_Gantt.js +1 -1
- package/amd/UNSAFE_Grid.js +1 -1
- package/amd/UNSAFE_HighlightText.js +1 -1
- package/amd/UNSAFE_Icon.js +1 -1
- package/amd/UNSAFE_IconButton.js +1 -1
- package/amd/UNSAFE_IconMenuButton.js +1 -1
- package/amd/UNSAFE_IconToggleButton.js +1 -1
- package/amd/UNSAFE_Indexer.js +1 -1
- package/amd/UNSAFE_InputDateMask.js +1 -1
- package/amd/UNSAFE_InputDatePicker.js +1 -1
- package/amd/UNSAFE_InputPassword.js +1 -1
- package/amd/UNSAFE_InputSensitiveText.js +1 -1
- package/amd/UNSAFE_InputText.js +1 -1
- package/amd/UNSAFE_Label.js +1 -1
- package/amd/UNSAFE_LabelValueLayout.js +1 -1
- package/amd/UNSAFE_LabelledLink.js +1 -1
- package/amd/UNSAFE_Layer.js +1 -1
- package/amd/UNSAFE_Legend.js +1 -1
- package/amd/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +1 -1
- package/amd/UNSAFE_LineAreaChart.js +1 -1
- package/amd/UNSAFE_Link.js +1 -1
- package/amd/UNSAFE_ListItemLayout.js +1 -1
- package/amd/UNSAFE_ListView.js +1 -1
- package/amd/UNSAFE_LiveRegion.js +1 -1
- package/amd/UNSAFE_Menu.js +1 -1
- package/amd/UNSAFE_MenuButton.js +1 -1
- package/amd/UNSAFE_MessageBanner.js +1 -1
- package/amd/UNSAFE_MessageToast.js +1 -1
- package/amd/UNSAFE_MeterBar.js +1 -1
- package/amd/UNSAFE_MeterCircle.js +1 -1
- package/amd/UNSAFE_Modal.js +1 -1
- package/amd/UNSAFE_NavigationList.js +1 -1
- package/amd/UNSAFE_NavigationListCommon.js +1 -1
- package/amd/UNSAFE_NumberInputText.js +1 -1
- package/amd/UNSAFE_OverflowTabBar.js +1 -1
- package/amd/UNSAFE_PictoChart.js +1 -1
- package/amd/UNSAFE_PieChart/__test__/PieChart.spec.js +1 -1
- package/amd/UNSAFE_PieChart.js +1 -1
- package/amd/UNSAFE_Popup.js +1 -1
- package/amd/UNSAFE_ProgressBar.js +1 -1
- package/amd/UNSAFE_ProgressCircle.js +1 -1
- package/amd/UNSAFE_RadioItem.js +1 -1
- package/amd/UNSAFE_RadioSet.js +1 -1
- package/amd/UNSAFE_RatingGauge.js +1 -1
- package/amd/UNSAFE_ReorderableTabBar.js +1 -1
- package/amd/UNSAFE_SectionalLegend.js +1 -1
- package/amd/UNSAFE_SelectMultiple.js +1 -1
- package/amd/UNSAFE_SelectSingle.js +1 -1
- package/amd/UNSAFE_SelectionCard.js +1 -1
- package/amd/UNSAFE_Selector.js +1 -1
- package/amd/UNSAFE_SelectorAll.js +1 -1
- package/amd/UNSAFE_Sheet/__test__/Sheet.spec.js +1 -1
- package/amd/UNSAFE_Sheet.js +1 -1
- package/amd/UNSAFE_SplitMenuButton.js +1 -1
- package/amd/UNSAFE_TabBar.js +1 -1
- package/amd/UNSAFE_TabBarCommon.js +1 -1
- package/amd/UNSAFE_TabBarMixed.js +1 -1
- package/amd/UNSAFE_TableView.js +1 -1
- package/amd/UNSAFE_TagCloud.js +1 -1
- package/amd/UNSAFE_TextArea.js +1 -1
- package/amd/UNSAFE_TextAreaAutosize.js +1 -1
- package/amd/UNSAFE_TextField.js +1 -1
- package/amd/UNSAFE_ToggleButton.js +1 -1
- package/amd/UNSAFE_Toolbar/tests/Toolbar.spec.js +1 -1
- package/amd/UNSAFE_Toolbar.js +1 -1
- package/amd/UNSAFE_Train.js +1 -1
- package/amd/UNSAFE_TruncatingBadge.js +1 -1
- package/amd/UNSAFE_TruncatingText.js +1 -1
- package/amd/UNSAFE_UserAssistance.js +1 -1
- package/amd/UNSAFE_View.js +1 -1
- package/amd/UNSAFE_VirtualizedListView.js +1 -1
- package/amd/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +1 -1
- package/amd/UNSAFE_VisProgressiveLoader.js +1 -1
- package/amd/UNSAFE_VisStatusMessage.js +1 -1
- package/amd/UNSAFE_WindowOverlay.js +1 -1
- package/amd/{View-8701dec6.js → View-10a5769c.js} +2 -2
- package/amd/{View-8701dec6.js.map → View-10a5769c.js.map} +1 -1
- package/amd/{VirtualizedCollection-63223f5e.js → VirtualizedCollection-897516a5.js} +2 -2
- package/amd/{VirtualizedCollection-63223f5e.js.map → VirtualizedCollection-897516a5.js.map} +1 -1
- package/amd/VirtualizedListView-ead601c7.js +2 -0
- package/amd/{VirtualizedListView-0924cf91.js.map → VirtualizedListView-ead601c7.js.map} +1 -1
- package/amd/VisNoData-95d951c2.js +2 -0
- package/amd/{VisNoData-bfb5065e.js.map → VisNoData-95d951c2.js.map} +1 -1
- package/amd/{VisProgressiveLoader-ef9de93a.js → VisProgressiveLoader-39f1b4ef.js} +2 -2
- package/amd/{VisProgressiveLoader-ef9de93a.js.map → VisProgressiveLoader-39f1b4ef.js.map} +1 -1
- package/amd/{VisTabularDatatip-5e43455b.js → VisTabularDatatip-e945d6f6.js} +2 -2
- package/amd/{VisTabularDatatip-5e43455b.js.map → VisTabularDatatip-e945d6f6.js.map} +1 -1
- package/amd/{WindowOverlay-c09fece2.js → WindowOverlay-ad61cfea.js} +2 -2
- package/amd/{WindowOverlay-c09fece2.js.map → WindowOverlay-ad61cfea.js.map} +1 -1
- package/amd/{YearsGridView-91e4744d.js → YearsGridView-c76bb4da.js} +2 -2
- package/amd/{YearsGridView-91e4744d.js.map → YearsGridView-c76bb4da.js.map} +1 -1
- package/amd/hoc/PRIVATE_withDirectionIcon.js +1 -1
- package/amd/hoc/PRIVATE_withThemeIcon.js +1 -1
- package/amd/hoc/UNSAFE_withThemeProps.js +1 -1
- package/amd/hooks/PRIVATE_useChartContextMenu.js +1 -1
- package/amd/hooks/PRIVATE_useChartDatatip.js +1 -1
- package/amd/hooks/PRIVATE_useChartEvents.js +1 -1
- package/amd/hooks/PRIVATE_useChartMarquee.js +1 -1
- package/amd/hooks/PRIVATE_useCssVars.js +1 -1
- package/amd/hooks/PRIVATE_useCurrentKey.js +1 -1
- package/amd/hooks/PRIVATE_useDatatip.js +1 -1
- package/amd/hooks/PRIVATE_useFloating.js +1 -1
- package/amd/hooks/PRIVATE_useReorderable.js +1 -1
- package/amd/hooks/PRIVATE_useRovingTabIndexContainer.js +1 -1
- package/amd/hooks/PRIVATE_useSelection.js +1 -1
- package/amd/hooks/PRIVATE_useTabBar.js +1 -1
- package/amd/hooks/PRIVATE_useVisContextMenu.js +1 -1
- package/amd/hooks/PRIVATE_useVisEvents.js +1 -1
- package/amd/hooks/PRIVATE_useVisMeterEvents.js +1 -1
- package/amd/hooks/PRIVATE_useVisSelection.js +1 -1
- package/amd/hooks/UNSAFE_useColorScheme.js +1 -1
- package/amd/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
- package/amd/hooks/UNSAFE_useCurrentBgColor.js +1 -1
- package/amd/hooks/UNSAFE_useDensity.js +1 -1
- package/amd/hooks/UNSAFE_useOutsideClick.js +1 -1
- package/amd/hooks/UNSAFE_usePrefixSuffix.js +1 -1
- package/amd/hooks/UNSAFE_useScale.js +1 -1
- package/amd/hooks/UNSAFE_useTestId.js +1 -1
- package/amd/hooks/UNSAFE_useTheme.js +1 -1
- package/amd/hooks/UNSAFE_useThemeInterpolations.js +1 -1
- package/amd/hooks/UNSAFE_useTooltip.js +1 -1
- package/amd/hooks/UNSAFE_useTranslationBundle.js +1 -1
- package/amd/hooks/UNSAFE_useUser.js +1 -1
- package/amd/{index-17fdb080.js → index-8d4da04e.js} +2 -2
- package/amd/index-8d4da04e.js.map +1 -0
- package/amd/listViewSelectionTests-a0132dcc.js +1 -1
- package/amd/{render-9b32a558.js → render-6de552e4.js} +2 -2
- package/amd/{render-9b32a558.js.map → render-6de552e4.js.map} +1 -1
- package/amd/{tabbableUtils-5b5b70da.js → tabbableUtils-78cc49fd.js} +2 -2
- package/amd/{tabbableUtils-5b5b70da.js.map → tabbableUtils-78cc49fd.js.map} +1 -1
- package/amd/{testData-8e20304d.js → testData-6d873339.js} +2 -2
- package/amd/{testData-8e20304d.js.map → testData-6d873339.js.map} +1 -1
- package/amd/useCellNavigation-37e0539a.js +1 -1
- package/amd/useChartContextMenu-c50617f2.js +1 -1
- package/amd/{useChartDatatip-672232af.js → useChartDatatip-34e2636c.js} +2 -2
- package/amd/{useChartDatatip-672232af.js.map → useChartDatatip-34e2636c.js.map} +1 -1
- package/amd/useChartMarquee-0e818e77.js +1 -1
- package/amd/{useColorScheme-711c1e4b.js → useColorScheme-3ffd80c4.js} +2 -2
- package/amd/{useColorScheme-711c1e4b.js.map → useColorScheme-3ffd80c4.js.map} +1 -1
- package/amd/useContextMenu-e6b10380.js +1 -1
- package/amd/useCssVars-7efb591d.js +2 -0
- package/amd/{useCssVars-948d1e7c.js.map → useCssVars-7efb591d.js.map} +1 -1
- package/amd/{useCurrentBgColor-40103ccc.js → useCurrentBgColor-44e3f377.js} +2 -2
- package/amd/{useCurrentBgColor-40103ccc.js.map → useCurrentBgColor-44e3f377.js.map} +1 -1
- package/amd/useCurrentKey-26170e5e.js +2 -0
- package/amd/{useCurrentKey-00f81f0b.js.map → useCurrentKey-26170e5e.js.map} +1 -1
- package/amd/{useDatatip-d00735e9.js → useDatatip-34fb67d2.js} +2 -2
- package/amd/{useDatatip-d00735e9.js.map → useDatatip-34fb67d2.js.map} +1 -1
- package/amd/{useDensity-435224bb.js → useDensity-be2ff874.js} +2 -2
- package/amd/{useDensity-435224bb.js.map → useDensity-be2ff874.js.map} +1 -1
- package/amd/{useFloating-bbd3396b.js → useFloating-30975c41.js} +2 -2
- package/amd/{useFloating-bbd3396b.js.map → useFloating-30975c41.js.map} +1 -1
- package/amd/useKeyboardEvents-57008a1d.js +2 -0
- package/amd/{useKeyboardEvents-e9a2b72b.js.map → useKeyboardEvents-57008a1d.js.map} +1 -1
- package/amd/useLegendContextMenu-5b1ca75b.js +1 -1
- package/amd/{useMeterDatatip-60af9281.js → useMeterDatatip-1a3890aa.js} +2 -2
- package/amd/{useMeterDatatip-60af9281.js.map → useMeterDatatip-1a3890aa.js.map} +1 -1
- package/amd/{useOutsideClick-4519a64e.js → useOutsideClick-90052c27.js} +2 -2
- package/amd/{useOutsideClick-4519a64e.js.map → useOutsideClick-90052c27.js.map} +1 -1
- package/amd/{usePopupAnimation-273054a0.js → usePopupAnimation-a0193874.js} +2 -2
- package/amd/{usePopupAnimation-273054a0.js.map → usePopupAnimation-a0193874.js.map} +1 -1
- package/amd/usePrefixSuffix-da47e340.js +2 -0
- package/amd/{usePrefixSuffix-6ad5569e.js.map → usePrefixSuffix-da47e340.js.map} +1 -1
- package/amd/useReorderableItem-d977f935.js +1 -1
- package/amd/{useRovingTabIndexContainer-12784fca.js → useRovingTabIndexContainer-079ed64f.js} +2 -2
- package/amd/{useRovingTabIndexContainer-12784fca.js.map → useRovingTabIndexContainer-079ed64f.js.map} +1 -1
- package/amd/{useScale-e6b83382.js → useScale-fe3420c6.js} +2 -2
- package/amd/{useScale-e6b83382.js.map → useScale-fe3420c6.js.map} +1 -1
- package/amd/{useSelectCommon-cbb310df.js → useSelectCommon-8657b927.js} +2 -2
- package/amd/{useSelectCommon-cbb310df.js.map → useSelectCommon-8657b927.js.map} +1 -1
- package/amd/{useSelectDrill-f2ae347c.js → useSelectDrill-f69d15aa.js} +2 -2
- package/amd/{useSelectDrill-f2ae347c.js.map → useSelectDrill-f69d15aa.js.map} +1 -1
- package/amd/useSelection-2c9ff75a.js +2 -0
- package/amd/{useSelection-f1d96ce9.js.map → useSelection-2c9ff75a.js.map} +1 -1
- package/amd/useSelection-91c04393.js +2 -0
- package/amd/{useSelection-0440840d.js.map → useSelection-91c04393.js.map} +1 -1
- package/amd/{useTabBar-451e6953.js → useTabBar-254fbf75.js} +2 -2
- package/amd/{useTabBar-451e6953.js.map → useTabBar-254fbf75.js.map} +1 -1
- package/amd/{useTestId-82cf22a4.js → useTestId-f3b8b319.js} +2 -2
- package/amd/{useTestId-82cf22a4.js.map → useTestId-f3b8b319.js.map} +1 -1
- package/amd/{useTheme-1941efb7.js → useTheme-45e3b0b3.js} +2 -2
- package/amd/{useTheme-1941efb7.js.map → useTheme-45e3b0b3.js.map} +1 -1
- package/amd/useThemeInterpolations-1f5fd8f3.js +2 -0
- package/amd/{useThemeInterpolations-41cbd433.js.map → useThemeInterpolations-1f5fd8f3.js.map} +1 -1
- package/amd/useTooltip-e965a559.js +2 -0
- package/amd/{useTooltip-d28e9b0f.js.map → useTooltip-e965a559.js.map} +1 -1
- package/amd/{useTooltipControlled-abf886f2.js → useTooltipControlled-18271c7a.js} +2 -2
- package/amd/{useTooltipControlled-abf886f2.js.map → useTooltipControlled-18271c7a.js.map} +1 -1
- package/amd/{useTranslationBundle-6ef0dab6.js → useTranslationBundle-20bfc0f3.js} +2 -2
- package/amd/{useTranslationBundle-6ef0dab6.js.map → useTranslationBundle-20bfc0f3.js.map} +1 -1
- package/amd/{useUser-6dd85af9.js → useUser-9b166ca3.js} +2 -2
- package/amd/{useUser-6dd85af9.js.map → useUser-9b166ca3.js.map} +1 -1
- package/amd/{useVisEvents-75dbf576.js → useVisEvents-ac97d087.js} +2 -2
- package/amd/{useVisEvents-75dbf576.js.map → useVisEvents-ac97d087.js.map} +1 -1
- package/amd/utils/PRIVATE_visTestUtils.js +1 -1
- package/amd/{withDirectionIcon-c0ee0f7e.js → withDirectionIcon-9e4dae53.js} +2 -2
- package/amd/{withDirectionIcon-c0ee0f7e.js.map → withDirectionIcon-9e4dae53.js.map} +1 -1
- package/cjs/{BarChart-11c56b6a.js → BarChart-acda079d.js} +2 -2
- package/cjs/{BarChart-11c56b6a.js.map → BarChart-acda079d.js.map} +1 -1
- package/cjs/{Chart-6684fa6d.js → Chart-c55ecfa4.js} +2 -2
- package/cjs/{Chart-6684fa6d.js.map → Chart-c55ecfa4.js.map} +1 -1
- package/cjs/CheckboxSetContext-c62db26d.js +12 -0
- package/cjs/CheckboxSetContext-c62db26d.js.map +1 -0
- package/cjs/{InputDatePicker-91be7790.js → InputDatePicker-71754f1c.js} +4 -3
- package/cjs/{InputDatePicker-91be7790.js.map → InputDatePicker-71754f1c.js.map} +1 -1
- package/cjs/{LineAreaChart-e8165e93.js → LineAreaChart-5353ed1f.js} +2 -2
- package/cjs/{LineAreaChart-e8165e93.js.map → LineAreaChart-5353ed1f.js.map} +1 -1
- package/cjs/MaxLengthCounter-a5370f66.js +27 -0
- package/cjs/MaxLengthCounter-a5370f66.js.map +1 -0
- package/cjs/{OverflowTabBarItem-c0a592fd.js → OverflowTabBarItem-1fe49f16.js} +2 -2
- package/cjs/{OverflowTabBarItem-c0a592fd.js.map → OverflowTabBarItem-1fe49f16.js.map} +1 -1
- package/cjs/PRIVATE_Chart.js +4 -4
- package/cjs/{ReorderableTabBar-5743c66a.js → ReorderableTabBar-30351716.js} +2 -2
- package/cjs/{ReorderableTabBar-5743c66a.js.map → ReorderableTabBar-30351716.js.map} +1 -1
- package/cjs/{TabBar-73bb6c97.js → TabBar-87b790cc.js} +1 -6
- package/cjs/{TabBar-73bb6c97.js.map → TabBar-87b790cc.js.map} +1 -1
- package/cjs/{TabBarMixed-426fcaf1.js → TabBarMixed-32681e39.js} +1 -6
- package/cjs/{TabBarMixed-426fcaf1.js.map → TabBarMixed-32681e39.js.map} +1 -1
- package/cjs/{TextArea-aff8b46e.js → TextArea-b2646d51.js} +4 -22
- package/cjs/TextArea-b2646d51.js.map +1 -0
- package/cjs/{TextAreaAutosize-c12ae7e7.js → TextAreaAutosize-d8cad6ce.js} +3 -3
- package/cjs/{TextAreaAutosize-c12ae7e7.js.map → TextAreaAutosize-d8cad6ce.js.map} +1 -1
- package/cjs/Theme-redwood/theme.css +249 -249
- package/cjs/Theme-stable/theme.css +345 -345
- package/cjs/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
- package/cjs/UNSAFE_BarChart.js +5 -5
- package/cjs/UNSAFE_CheckboxItem.js +30 -80
- package/cjs/UNSAFE_CheckboxItem.js.map +1 -1
- package/cjs/UNSAFE_CheckboxSet.js +44 -15
- package/cjs/UNSAFE_CheckboxSet.js.map +1 -1
- package/cjs/UNSAFE_InputDatePicker.js +87 -86
- package/cjs/UNSAFE_InputDatePicker.js.map +1 -1
- package/cjs/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +5 -5
- package/cjs/UNSAFE_LineAreaChart.js +5 -5
- package/cjs/UNSAFE_OverflowTabBar.js +15 -15
- package/cjs/UNSAFE_ReorderableTabBar.js +8 -10
- package/cjs/UNSAFE_ReorderableTabBar.js.map +1 -1
- package/cjs/UNSAFE_TabBar.js +15 -15
- package/cjs/UNSAFE_TabBarCommon.js +15 -15
- package/cjs/UNSAFE_TabBarMixed.js +15 -15
- package/cjs/UNSAFE_TextArea.js +4 -3
- package/cjs/UNSAFE_TextArea.js.map +1 -1
- package/cjs/UNSAFE_TextAreaAutosize.js +2 -2
- package/cjs/dropdownStyles.styles.css +90 -5
- package/cjs/dropdownStyles.styles2.css +5 -90
- package/cjs/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
- package/es/ActionCard-623c6191.js +1 -1
- package/es/{BarChart-72948598.js → BarChart-c8f78f4b.js} +4 -4
- package/es/{BarChart-72948598.js.map → BarChart-c8f78f4b.js.map} +1 -1
- package/es/BaseButton-5b2791b1.js +2 -2
- package/es/{BaseCardView-59efba85.js → BaseCardView-57f41dae.js} +8 -8
- package/es/{BaseCardView-59efba85.js.map → BaseCardView-57f41dae.js.map} +1 -1
- package/es/{BaseCardViewSelectionTest-ab83a0b0.js → BaseCardViewSelectionTest-6796b2b4.js} +6 -6
- package/es/{BaseCardViewSelectionTest-ab83a0b0.js.map → BaseCardViewSelectionTest-6796b2b4.js.map} +1 -1
- package/es/BaseNavigationListItem-3a377d46.js +1 -1
- package/es/ButtonSet-fa7e8acd.js +2 -2
- package/es/ButtonSetIconButton-c5860cc1.js +2 -2
- package/es/{CardFlexView-71c79a88.js → CardFlexView-dcae4508.js} +2 -2
- package/es/{CardFlexView-71c79a88.js.map → CardFlexView-dcae4508.js.map} +1 -1
- package/es/{CardGridView-490c849a.js → CardGridView-8026b398.js} +2 -2
- package/es/{CardGridView-490c849a.js.map → CardGridView-8026b398.js.map} +1 -1
- package/es/{Center-58d4b406.js → Center-2ffc1dcc.js} +2 -2
- package/es/{Center-58d4b406.js.map → Center-2ffc1dcc.js.map} +1 -1
- package/es/{Chart-304043b3.js → Chart-793bd008.js} +11 -11
- package/es/{Chart-304043b3.js.map → Chart-793bd008.js.map} +1 -1
- package/es/CheckboxControl-7174e0b2.js +6 -6
- package/es/CheckboxRadioField-c7c4643e.js +5 -5
- package/es/Chip-2c86a76f.js +1 -1
- package/es/ClearIcon-f1f796b4.js +1 -1
- package/es/CollapseIcon-b6d7cfd6.js +1 -1
- package/es/Collapsible-4cdc17e3.js +2 -2
- package/es/CompactHelpSource-548938ff.js +2 -2
- package/es/{CompactLabelAssistance-933d1d68.js → CompactLabelAssistance-fc9478aa.js} +4 -4
- package/es/{CompactLabelAssistance-933d1d68.js.map → CompactLabelAssistance-fc9478aa.js.map} +1 -1
- package/es/CompactUserAssistance-41c32c6f.js +4 -4
- package/es/ComponentMessageContainer-7d9228a3.js +4 -4
- package/es/ConveyorBeltItem-3d1d7f3c.js +2 -2
- package/es/{DatePicker-e517dad2.js → DatePicker-4356274b.js} +6 -6
- package/es/{DatePicker-e517dad2.js.map → DatePicker-4356274b.js.map} +1 -1
- package/es/DatePickerHeader-7078d6e8.js +3 -3
- package/es/{Diagram-15e246b6.js → Diagram-214e374c.js} +5 -5
- package/es/{Diagram-15e246b6.js.map → Diagram-214e374c.js.map} +1 -1
- package/es/DirectionalCollapseArrowIcon-0298f5ef.js +1 -1
- package/es/DirectionalExpandArrowIcon-cf8fd7a8.js +1 -1
- package/es/DragHandle-9514fcdc.js +1 -1
- package/es/{Dropdown-2a328b40.js → Dropdown-717319bb.js} +5 -5
- package/es/{Dropdown-2a328b40.js.map → Dropdown-717319bb.js.map} +1 -1
- package/es/{EnvironmentProvider-6846a7ff.js → EnvironmentProvider-f543a463.js} +3 -3
- package/es/{EnvironmentProvider-6846a7ff.js.map → EnvironmentProvider-f543a463.js.map} +1 -1
- package/es/FilePicker-d8a0ad3a.js +2 -2
- package/es/{Flex-5ff5aa5e.js → Flex-24628925.js} +2 -2
- package/es/{Flex-5ff5aa5e.js.map → Flex-24628925.js.map} +1 -1
- package/es/{Floating-5b269acc.js → Floating-9703160e.js} +4 -4
- package/es/{Floating-5b269acc.js.map → Floating-9703160e.js.map} +1 -1
- package/es/FormLayout-ecd0259b.js +1 -1
- package/es/Gantt-b21af627.js +9 -9
- package/es/{Grid-5d8f712b.js → Grid-cfeac922.js} +2 -2
- package/es/{Grid-5d8f712b.js.map → Grid-cfeac922.js.map} +1 -1
- package/es/{Gridlines-4b7301e7.js → Gridlines-428bf909.js} +2 -2
- package/es/{Gridlines-4b7301e7.js.map → Gridlines-428bf909.js.map} +1 -1
- package/es/GroupLoadingIndicator-9c995e99.js +2 -2
- package/es/{HighlightText-39781e79.js → HighlightText-180e29f6.js} +2 -2
- package/es/{HighlightText-39781e79.js.map → HighlightText-180e29f6.js.map} +1 -1
- package/es/Icon-90c3a630.js +2 -2
- package/es/IconButton-37310d21.js +2 -2
- package/es/IconMenuButton-9fe6cbf9.js +4 -4
- package/es/IconSwitchButton-61cabbfe.js +2 -2
- package/es/IconToggleButton-f57e5484.js +2 -2
- package/es/{IconUserAssistance-744d71a4.js → IconUserAssistance-c226cb4f.js} +3 -3
- package/es/{IconUserAssistance-744d71a4.js.map → IconUserAssistance-c226cb4f.js.map} +1 -1
- package/es/{Indexer-a671092c.js → Indexer-656bc3fe.js} +6 -6
- package/es/{Indexer-a671092c.js.map → Indexer-656bc3fe.js.map} +1 -1
- package/es/InlineHelpSource-b43def76.js +1 -1
- package/es/InlineUserAssistance-bb690d93.js +5 -5
- package/es/InputDateMask-7386adfe.js +7 -7
- package/es/InputDatePicker-7f9852d0.js +8 -8
- package/es/InputPassword-1f1f80b3.js +4 -4
- package/es/InputText-5fb896e7.js +6 -6
- package/es/Label-6674b3f2.js +5 -5
- package/es/LabelValueLayout-23b74176.js +1 -1
- package/es/{Layer-5d259d3a.js → Layer-9b06412e.js} +3 -3
- package/es/{Layer-5d259d3a.js.map → Layer-9b06412e.js.map} +1 -1
- package/es/{LayerHost-aaed41a1.js → LayerHost-45f545d7.js} +2 -2
- package/es/{LayerHost-aaed41a1.js.map → LayerHost-45f545d7.js.map} +1 -1
- package/es/{LayerManager-87beee1e.js → LayerManager-625d2503.js} +2 -2
- package/es/{LayerManager-87beee1e.js.map → LayerManager-625d2503.js.map} +1 -1
- package/es/Legend-98a79c12.js +3 -3
- package/es/{LineAreaChart-09df0269.js → LineAreaChart-413e0043.js} +4 -4
- package/es/{LineAreaChart-09df0269.js.map → LineAreaChart-413e0043.js.map} +1 -1
- package/es/Link-bfa35319.js +1 -1
- package/es/{List-9026206d.js → List-4ee3c951.js} +8 -9
- package/es/{List-9026206d.js.map → List-4ee3c951.js.map} +1 -1
- package/es/{ListItemLayout-961c8443.js → ListItemLayout-695ec1a5.js} +2 -2
- package/es/{ListItemLayout-961c8443.js.map → ListItemLayout-695ec1a5.js.map} +1 -1
- package/es/{ListView-c508c3a4.js → ListView-3343354b.js} +5 -5
- package/es/{ListView-c508c3a4.js.map → ListView-3343354b.js.map} +1 -1
- package/es/{LiveRegion-4646cd7d.js → LiveRegion-81216fe6.js} +2 -2
- package/es/{LiveRegion-4646cd7d.js.map → LiveRegion-81216fe6.js.map} +1 -1
- package/es/{LoadMoreCollection-95a49d2a.js → LoadMoreCollection-7df1be36.js} +2 -2
- package/es/{LoadMoreCollection-95a49d2a.js.map → LoadMoreCollection-7df1be36.js.map} +1 -1
- package/es/{MaxLengthLiveRegion-1278e638.js → MaxLengthLiveRegion-cd15b075.js} +3 -3
- package/es/{MaxLengthLiveRegion-1278e638.js.map → MaxLengthLiveRegion-cd15b075.js.map} +1 -1
- package/es/{Menu-b0c28cfd.js → Menu-c7ab8412.js} +8 -8
- package/es/{Menu-b0c28cfd.js.map → Menu-c7ab8412.js.map} +1 -1
- package/es/MenuButton-39563941.js +3 -3
- package/es/MenuItem-a8f9c954.js +1 -1
- package/es/Message-be36b84a.js +2 -2
- package/es/{MessageLayer-322485df.js → MessageLayer-0946d6b7.js} +6 -6
- package/es/{MessageLayer-322485df.js.map → MessageLayer-0946d6b7.js.map} +1 -1
- package/es/MessageToast-2fa3c9d4.js +8 -8
- package/es/MessagesManager-0d60fea1.js +3 -3
- package/es/MeterBar-bdd7f9da.js +4 -4
- package/es/MeterCircle-fd10f18b.js +4 -4
- package/es/{Modal-986872f3.js → Modal-6b11d8cb.js} +3 -3
- package/es/{Modal-986872f3.js.map → Modal-6b11d8cb.js.map} +1 -1
- package/es/{MonthView-99cc26ac.js → MonthView-cc017afe.js} +4 -4
- package/es/{MonthView-99cc26ac.js.map → MonthView-cc017afe.js.map} +1 -1
- package/es/NavigationListItem-ea899fab.js +5 -5
- package/es/NumberInputText-21ded33a.js +6 -6
- package/es/OverflowTabBarItem-8f35961d.js +3 -3
- package/es/PRIVATE_BaseCardView.js +22 -22
- package/es/PRIVATE_Chart.js +33 -33
- package/es/PRIVATE_CheckboxControl.js +21 -21
- package/es/PRIVATE_CheckboxRadioField.js +22 -22
- package/es/PRIVATE_ClearIcon.js +16 -16
- package/es/PRIVATE_DatePickerHeader.js +18 -18
- package/es/PRIVATE_DatePickerLayout.js +4 -4
- package/es/PRIVATE_EmbeddedIconButton.js +3 -3
- package/es/PRIVATE_FormControls.js +19 -19
- package/es/PRIVATE_IconSwitchButton.js +14 -14
- package/es/PRIVATE_Icons/CheckboxMixed.js +14 -14
- package/es/PRIVATE_Icons/CheckboxOff.js +14 -14
- package/es/PRIVATE_Icons/CheckboxOn.js +14 -14
- package/es/PRIVATE_Icons/RadiobuttonOff.js +14 -14
- package/es/PRIVATE_Icons/RadiobuttonOn.js +14 -14
- package/es/PRIVATE_Icons/WarningS.js +14 -14
- package/es/PRIVATE_List.js +22 -22
- package/es/PRIVATE_LoadMoreCollection.js +2 -2
- package/es/PRIVATE_Message.js +17 -17
- package/es/PRIVATE_MessageLayer.js +11 -11
- package/es/PRIVATE_MonthView.js +7 -7
- package/es/PRIVATE_MonthYearGridView.js +7 -7
- package/es/PRIVATE_PlotArea.js +4 -4
- package/es/PRIVATE_RevealToggleIcon.js +15 -15
- package/es/PRIVATE_SelectCommon.js +31 -31
- package/es/PRIVATE_StyledCheckbox.js +14 -14
- package/es/PRIVATE_Table.js +19 -19
- package/es/PRIVATE_ThemedIcons/CalendarIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ChartPanIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ChartZoomIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CheckIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CheckboxOffIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CheckboxOnIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CloseIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/CollapseIcon.js +15 -15
- package/es/PRIVATE_ThemedIcons/CollapseUpIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/DecrementIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/DeleteIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +15 -15
- package/es/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +15 -15
- package/es/PRIVATE_ThemedIcons/DropdownArrowIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ExpandIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/HelpIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/IncrementIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MessageErrorIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MessageInfoIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MessageWarningIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/MinusIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/NavDownIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/PlusIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/RadioOffIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/RadioOnIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/SortAscendingIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/SortDefaultIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/SortDescendingIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ViewHideIcon.js +14 -14
- package/es/PRIVATE_ThemedIcons/ViewIcon.js +14 -14
- package/es/PRIVATE_TimeComponent.js +17 -17
- package/es/PRIVATE_VirtualizedCollection.js +2 -2
- package/es/PRIVATE_VisTabularDatatip.js +4 -4
- package/es/PictoChart-20c9a0c2.js +6 -6
- package/es/{PieChart-e41e3463.js → PieChart-f349498b.js} +5 -5
- package/es/{PieChart-e41e3463.js.map → PieChart-f349498b.js.map} +1 -1
- package/es/{Popup-6288438d.js → Popup-8889a781.js} +9 -9
- package/es/{Popup-6288438d.js.map → Popup-8889a781.js.map} +1 -1
- package/es/{ProgressBar-ed0c5ba0.js → ProgressBar-afafe39a.js} +3 -3
- package/es/{ProgressBar-ed0c5ba0.js.map → ProgressBar-afafe39a.js.map} +1 -1
- package/es/{ProgressCircle-95a70910.js → ProgressCircle-fa5866a3.js} +2 -2
- package/es/{ProgressCircle-95a70910.js.map → ProgressCircle-fa5866a3.js.map} +1 -1
- package/es/RadioItem-e5b1f50b.js +6 -6
- package/es/RatingGauge-4d8a68df.js +7 -7
- package/es/ReadonlyTextFieldInput-4392c7aa.js +1 -1
- package/es/ReadonlyTextFieldVariants.styles.css +14 -14
- package/es/ReadonlyTextFieldVariants.styles2.css +14 -14
- package/es/RemovableNavigationListItem-4c86bec8.js +1 -1
- package/es/RemovableTabBarItem-217d4a0b.js +2 -2
- package/es/ReorderableTabBar-84640a66.js +2 -2
- package/es/RevealToggleIcon-9236963e.js +1 -1
- package/es/SectionalLegend-6ffb4255.js +4 -4
- package/es/{SectionedContent-13d72f4b.js → SectionedContent-815e377a.js} +5 -5
- package/es/{SectionedContent-13d72f4b.js.map → SectionedContent-815e377a.js.map} +1 -1
- package/es/{SelectMultiple-fd3ea6f8.js → SelectMultiple-c5513e08.js} +10 -10
- package/es/{SelectMultiple-fd3ea6f8.js.map → SelectMultiple-c5513e08.js.map} +1 -1
- package/es/{SelectSingle-8a8d1f5e.js → SelectSingle-003f824f.js} +9 -9
- package/es/{SelectSingle-8a8d1f5e.js.map → SelectSingle-003f824f.js.map} +1 -1
- package/es/{SelectionCard-8496e467.js → SelectionCard-79044c5f.js} +2 -2
- package/es/{SelectionCard-8496e467.js.map → SelectionCard-79044c5f.js.map} +1 -1
- package/es/Selector-e56a73a8.js +1 -1
- package/es/SelectorAll-6f080f88.js +5 -5
- package/es/{Sheet-8914df23.js → Sheet-e4121f4a.js} +3 -3
- package/es/{Sheet-8914df23.js.map → Sheet-e4121f4a.js.map} +1 -1
- package/es/SplitMenuButton-79bdfe96.js +3 -3
- package/es/StyledTextField-c79f5438.js +3 -3
- package/es/Submenu-8b3fa593.js +1 -1
- package/es/TabBar-e39e8dbd.js +6 -6
- package/es/TabBarItem-c681fa07.js +3 -3
- package/es/TabBarLayout-a0d89ec4.js +1 -1
- package/es/TabBarMixed-3658d3d2.js +6 -6
- package/es/{TabBarMixedSeparator-da2254c9.js → TabBarMixedSeparator-8ab78880.js} +2 -2
- package/es/{TabBarMixedSeparator-da2254c9.js.map → TabBarMixedSeparator-8ab78880.js.map} +1 -1
- package/es/{Table-e3ef68ad.js → Table-5f50b12d.js} +5 -5
- package/es/{Table-e3ef68ad.js.map → Table-5f50b12d.js.map} +1 -1
- package/es/{TableView-321b1fdf.js → TableView-8df2f099.js} +2 -2
- package/es/{TableView-321b1fdf.js.map → TableView-8df2f099.js.map} +1 -1
- package/es/TagCloud-78991c29.js +9 -9
- package/es/{TextArea-d97aac1f.js → TextArea-979496a0.js} +30 -13
- package/{amd/TextArea-2c7af40c.js.map → es/TextArea-979496a0.js.map} +1 -1
- package/es/{TextAreaAutosize-68a4786d.js → TextAreaAutosize-b73aaa2f.js} +7 -7
- package/es/{TextAreaAutosize-68a4786d.js.map → TextAreaAutosize-b73aaa2f.js.map} +1 -1
- package/es/TextField-323fe0e9.js +3 -3
- package/es/TextFieldInput-3c39cb7b.js +1 -1
- package/es/Theme-redwood/theme.css +481 -481
- package/es/Theme-stable/theme.css +499 -499
- package/es/TimeComponentCanvas2D-c2ab38ba.js +4 -4
- package/es/Toolbar-f0e57a9d.js +1 -1
- package/es/TruncatingBadge-084c6682.js +2 -2
- package/es/TruncatingText-780cbb19.js +2 -2
- package/es/UNSAFE_ActionCard.js +2 -2
- package/es/UNSAFE_BarChart/__test__/BarChart.spec.js +34 -34
- package/es/UNSAFE_BarChart.js +34 -34
- package/es/UNSAFE_BaseButton.js +3 -3
- package/es/UNSAFE_Button.js +3 -3
- package/es/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +18 -18
- package/es/UNSAFE_ButtonSet.js +4 -4
- package/es/UNSAFE_ButtonSetButton.js +3 -3
- package/es/UNSAFE_ButtonSetIconButton.js +14 -14
- package/es/UNSAFE_ButtonSetItem.js +14 -14
- package/es/UNSAFE_ButtonSetMultiple.js +4 -4
- package/es/UNSAFE_ButtonSetSingle.js +4 -4
- package/es/UNSAFE_CardFlexView.js +23 -23
- package/es/UNSAFE_CardGridView.js +23 -23
- package/es/UNSAFE_Center.js +5 -5
- package/es/UNSAFE_ChartWithLegend.js +4 -4
- package/es/UNSAFE_Checkbox.js +21 -21
- package/es/UNSAFE_CheckboxItem.js +22 -22
- package/es/UNSAFE_CheckboxSet.js +21 -21
- package/es/UNSAFE_Chip.js +2 -2
- package/es/UNSAFE_Collapsible.js +16 -16
- package/es/UNSAFE_ComponentMessage.js +17 -17
- package/es/UNSAFE_ConveyorBelt.js +14 -14
- package/es/UNSAFE_DatePicker.js +23 -23
- package/es/UNSAFE_Diagram.js +15 -15
- package/es/UNSAFE_Dialog.js +9 -9
- package/es/UNSAFE_DragHandle.js +15 -15
- package/es/UNSAFE_DrawerLayout.js +11 -11
- package/es/UNSAFE_DrawerPopup.js +10 -10
- package/es/UNSAFE_Dropdown.js +12 -12
- package/es/UNSAFE_Environment.js +4 -4
- package/es/UNSAFE_ExpandableList.js +24 -24
- package/es/UNSAFE_FilePicker.js +4 -4
- package/es/UNSAFE_Flex.js +4 -4
- package/es/UNSAFE_Floating.js +10 -10
- package/es/UNSAFE_FormLayout.js +2 -2
- package/es/UNSAFE_Gantt.js +21 -21
- package/es/UNSAFE_Grid.js +4 -4
- package/es/UNSAFE_HighlightText.js +4 -4
- package/es/UNSAFE_Icon.js +14 -14
- package/es/UNSAFE_IconButton.js +14 -14
- package/es/UNSAFE_IconMenuButton.js +18 -18
- package/es/UNSAFE_IconToggleButton.js +14 -14
- package/es/UNSAFE_Indexer.js +8 -8
- package/es/UNSAFE_InputDateMask.js +23 -23
- package/es/UNSAFE_InputDatePicker.js +32 -32
- package/es/UNSAFE_InputPassword.js +22 -22
- package/es/UNSAFE_InputSensitiveText.js +24 -24
- package/es/UNSAFE_InputText.js +25 -25
- package/es/UNSAFE_Label.js +21 -21
- package/es/UNSAFE_LabelValueLayout.js +4 -4
- package/es/UNSAFE_LabelledLink.js +24 -24
- package/es/UNSAFE_Layer.js +7 -7
- package/es/UNSAFE_Legend.js +22 -22
- package/es/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +33 -33
- package/es/UNSAFE_LineAreaChart.js +34 -34
- package/es/UNSAFE_Link.js +2 -2
- package/es/UNSAFE_ListItemLayout.js +5 -5
- package/es/UNSAFE_ListView.js +29 -29
- package/es/UNSAFE_LiveRegion.js +4 -4
- package/es/UNSAFE_Menu.js +20 -20
- package/es/UNSAFE_MenuButton.js +18 -18
- package/es/UNSAFE_MessageBanner.js +17 -17
- package/es/UNSAFE_MessageToast.js +20 -20
- package/es/UNSAFE_MeterBar.js +14 -14
- package/es/UNSAFE_MeterCircle.js +14 -14
- package/es/UNSAFE_Modal.js +7 -7
- package/es/UNSAFE_NavigationList.js +18 -18
- package/es/UNSAFE_NavigationListCommon.js +16 -16
- package/es/UNSAFE_NumberInputText.js +24 -24
- package/es/UNSAFE_OverflowTabBar.js +23 -23
- package/es/UNSAFE_PictoChart.js +13 -13
- package/es/UNSAFE_PieChart/__test__/PieChart.spec.js +14 -14
- package/es/UNSAFE_PieChart.js +14 -14
- package/es/UNSAFE_Popup.js +15 -15
- package/es/UNSAFE_ProgressBar.js +5 -5
- package/es/UNSAFE_ProgressCircle.js +4 -4
- package/es/UNSAFE_RadioItem.js +21 -21
- package/es/UNSAFE_RadioSet.js +21 -21
- package/es/UNSAFE_RatingGauge.js +15 -15
- package/es/UNSAFE_ReorderableTabBar.js +21 -21
- package/es/UNSAFE_SectionalLegend.js +23 -23
- package/es/UNSAFE_SelectMultiple.js +36 -36
- package/es/UNSAFE_SelectSingle.js +36 -36
- package/es/UNSAFE_SelectionCard.js +4 -4
- package/es/UNSAFE_Selector.js +14 -14
- package/es/UNSAFE_SelectorAll.js +17 -17
- package/es/UNSAFE_Sheet/__test__/Sheet.spec.js +13 -13
- package/es/UNSAFE_Sheet.js +10 -10
- package/es/UNSAFE_SplitMenuButton.js +18 -18
- package/es/UNSAFE_TabBar.js +24 -24
- package/es/UNSAFE_TabBarCommon.js +23 -23
- package/es/UNSAFE_TabBarMixed.js +27 -27
- package/es/UNSAFE_TableView.js +20 -20
- package/es/UNSAFE_TagCloud.js +22 -22
- package/es/UNSAFE_TextArea.js +26 -27
- package/es/UNSAFE_TextArea.js.map +1 -1
- package/es/UNSAFE_TextAreaAutosize.js +26 -26
- package/es/UNSAFE_TextField/themes/redwood/ReadonlyTextFieldTheme.js +1 -1
- package/es/UNSAFE_TextField/themes/redwood/ReadonlyTextFieldVariants.css.js +1 -1
- package/es/UNSAFE_TextField/themes/stable/ReadonlyTextFieldTheme.js +1 -1
- package/es/UNSAFE_TextField/themes/stable/ReadonlyTextFieldVariants.css.js +1 -1
- package/es/UNSAFE_TextField.js +8 -8
- package/es/UNSAFE_ToggleButton.js +3 -3
- package/es/UNSAFE_Toolbar/tests/Toolbar.spec.js +20 -20
- package/es/UNSAFE_Toolbar.js +4 -4
- package/es/UNSAFE_Train.js +15 -15
- package/es/UNSAFE_TruncatingBadge.js +15 -15
- package/es/UNSAFE_TruncatingText.js +15 -15
- package/es/UNSAFE_UserAssistance.js +22 -22
- package/es/UNSAFE_View.js +7 -7
- package/es/UNSAFE_VirtualizedListView.js +23 -23
- package/es/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +8 -8
- package/es/UNSAFE_VisProgressiveLoader.js +6 -6
- package/es/UNSAFE_VisStatusMessage.js +6 -6
- package/es/UNSAFE_WindowOverlay.js +4 -4
- package/es/{View-4dc6ce42.js → View-6013acac.js} +5 -5
- package/es/{View-4dc6ce42.js.map → View-6013acac.js.map} +1 -1
- package/es/{VirtualizedCollection-e73890a1.js → VirtualizedCollection-f048fbb8.js} +2 -2
- package/es/{VirtualizedCollection-e73890a1.js.map → VirtualizedCollection-f048fbb8.js.map} +1 -1
- package/es/{VirtualizedListView-1900c71e.js → VirtualizedListView-fe4bc84a.js} +2 -2
- package/es/{VirtualizedListView-1900c71e.js.map → VirtualizedListView-fe4bc84a.js.map} +1 -1
- package/es/{VisNoData-c69e8f5e.js → VisNoData-8593beaa.js} +3 -3
- package/es/{VisNoData-c69e8f5e.js.map → VisNoData-8593beaa.js.map} +1 -1
- package/es/{VisProgressiveLoader-cc1ab7cc.js → VisProgressiveLoader-0d9a0dd0.js} +3 -3
- package/es/{VisProgressiveLoader-cc1ab7cc.js.map → VisProgressiveLoader-0d9a0dd0.js.map} +1 -1
- package/es/{VisTabularDatatip-418525b0.js → VisTabularDatatip-1f16ca1f.js} +2 -2
- package/es/{VisTabularDatatip-418525b0.js.map → VisTabularDatatip-1f16ca1f.js.map} +1 -1
- package/es/{WindowOverlay-88b63ede.js → WindowOverlay-e14f8324.js} +2 -2
- package/es/{WindowOverlay-88b63ede.js.map → WindowOverlay-e14f8324.js.map} +1 -1
- package/es/{YearsGridView-76892288.js → YearsGridView-165e5eec.js} +4 -4
- package/es/{YearsGridView-76892288.js.map → YearsGridView-165e5eec.js.map} +1 -1
- package/es/hoc/PRIVATE_withDirectionIcon.js +4 -4
- package/es/hoc/PRIVATE_withThemeIcon.js +3 -3
- package/es/hoc/UNSAFE_withThemeProps.js +3 -3
- package/es/hooks/PRIVATE_useChartContextMenu.js +18 -18
- package/es/hooks/PRIVATE_useChartDatatip.js +13 -13
- package/es/hooks/PRIVATE_useChartEvents.js +17 -17
- package/es/hooks/PRIVATE_useChartMarquee.js +16 -16
- package/es/hooks/PRIVATE_useCssVars.js +7 -7
- package/es/hooks/PRIVATE_useCurrentKey.js +4 -4
- package/es/hooks/PRIVATE_useDatatip.js +11 -11
- package/es/hooks/PRIVATE_useFloating.js +4 -4
- package/es/hooks/PRIVATE_useReorderable.js +4 -4
- package/es/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
- package/es/hooks/PRIVATE_useSelection.js +4 -4
- package/es/hooks/PRIVATE_useTabBar.js +5 -5
- package/es/hooks/PRIVATE_useVisContextMenu.js +18 -18
- package/es/hooks/PRIVATE_useVisEvents.js +4 -4
- package/es/hooks/PRIVATE_useVisMeterEvents.js +13 -13
- package/es/hooks/PRIVATE_useVisSelection.js +12 -12
- package/es/hooks/UNSAFE_useColorScheme.js +3 -3
- package/es/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
- package/es/hooks/UNSAFE_useCurrentBgColor.js +3 -3
- package/es/hooks/UNSAFE_useDensity.js +3 -3
- package/es/hooks/UNSAFE_useOutsideClick.js +7 -7
- package/es/hooks/UNSAFE_usePrefixSuffix.js +4 -4
- package/es/hooks/UNSAFE_useScale.js +3 -3
- package/es/hooks/UNSAFE_useTestId.js +3 -3
- package/es/hooks/UNSAFE_useTheme.js +3 -3
- package/es/hooks/UNSAFE_useThemeInterpolations.js +5 -5
- package/es/hooks/UNSAFE_useTooltip.js +15 -15
- package/es/hooks/UNSAFE_useTranslationBundle.js +3 -3
- package/es/hooks/UNSAFE_useUser.js +3 -3
- package/es/{index-75f23286.js → index-5f0f1501.js} +2 -2
- package/es/index-5f0f1501.js.map +1 -0
- package/es/listViewSelectionTests-ebf987d2.js +4 -4
- package/es/{render-8e2a09d1.js → render-c90e85c7.js} +3 -3
- package/es/{render-8e2a09d1.js.map → render-c90e85c7.js.map} +1 -1
- package/es/{tabbableUtils-73a9ba14.js → tabbableUtils-e6193af2.js} +3 -3
- package/es/{tabbableUtils-73a9ba14.js.map → tabbableUtils-e6193af2.js.map} +1 -1
- package/es/{testData-0aee4d83.js → testData-2998863b.js} +3 -3
- package/es/{testData-0aee4d83.js.map → testData-2998863b.js.map} +1 -1
- package/es/useCellNavigation-006fbce0.js +1 -1
- package/es/useChartContextMenu-0014fc73.js +3 -3
- package/es/{useChartDatatip-f7bacd9b.js → useChartDatatip-b6b2b00a.js} +4 -4
- package/es/{useChartDatatip-f7bacd9b.js.map → useChartDatatip-b6b2b00a.js.map} +1 -1
- package/es/useChartMarquee-38dbb5f9.js +1 -1
- package/es/{useColorScheme-bf110202.js → useColorScheme-e1b17324.js} +2 -2
- package/es/{useColorScheme-bf110202.js.map → useColorScheme-e1b17324.js.map} +1 -1
- package/es/useContextMenu-81db2534.js +3 -3
- package/es/{useCssVars-b3bf30fb.js → useCssVars-64d9b696.js} +5 -5
- package/es/{useCssVars-b3bf30fb.js.map → useCssVars-64d9b696.js.map} +1 -1
- package/es/{useCurrentBgColor-b3ebd7be.js → useCurrentBgColor-d89afadb.js} +2 -2
- package/es/{useCurrentBgColor-b3ebd7be.js.map → useCurrentBgColor-d89afadb.js.map} +1 -1
- package/es/{useCurrentKey-1f99b0f6.js → useCurrentKey-db7d3bb9.js} +2 -2
- package/es/{useCurrentKey-1f99b0f6.js.map → useCurrentKey-db7d3bb9.js.map} +1 -1
- package/es/{useDatatip-f9bcaab9.js → useDatatip-7c661980.js} +4 -4
- package/es/{useDatatip-f9bcaab9.js.map → useDatatip-7c661980.js.map} +1 -1
- package/es/{useDensity-9f6c6bf0.js → useDensity-60cfa748.js} +2 -2
- package/es/{useDensity-9f6c6bf0.js.map → useDensity-60cfa748.js.map} +1 -1
- package/es/{useFloating-1cca9e4f.js → useFloating-c99976f8.js} +2 -2
- package/es/{useFloating-1cca9e4f.js.map → useFloating-c99976f8.js.map} +1 -1
- package/es/{useKeyboardEvents-11b26017.js → useKeyboardEvents-102b4feb.js} +2 -2
- package/es/{useKeyboardEvents-11b26017.js.map → useKeyboardEvents-102b4feb.js.map} +1 -1
- package/es/useLegendContextMenu-d88be99d.js +5 -5
- package/es/{useMeterDatatip-7366880d.js → useMeterDatatip-262c0e39.js} +3 -3
- package/es/{useMeterDatatip-7366880d.js.map → useMeterDatatip-262c0e39.js.map} +1 -1
- package/es/{useOutsideClick-ab98bfa3.js → useOutsideClick-eb8324f6.js} +2 -2
- package/es/{useOutsideClick-ab98bfa3.js.map → useOutsideClick-eb8324f6.js.map} +1 -1
- package/es/{usePopupAnimation-4969107b.js → usePopupAnimation-4be04290.js} +2 -2
- package/es/{usePopupAnimation-4969107b.js.map → usePopupAnimation-4be04290.js.map} +1 -1
- package/es/{usePrefixSuffix-a14dacb0.js → usePrefixSuffix-71a410f4.js} +2 -2
- package/es/{usePrefixSuffix-a14dacb0.js.map → usePrefixSuffix-71a410f4.js.map} +1 -1
- package/es/useReorderableItem-25aa1c34.js +2 -2
- package/es/{useRovingTabIndexContainer-91fd85f3.js → useRovingTabIndexContainer-e7926bd6.js} +2 -2
- package/es/{useRovingTabIndexContainer-91fd85f3.js.map → useRovingTabIndexContainer-e7926bd6.js.map} +1 -1
- package/es/{useScale-42018695.js → useScale-d64a1a28.js} +2 -2
- package/es/{useScale-42018695.js.map → useScale-d64a1a28.js.map} +1 -1
- package/es/{useSelectCommon-b6d67057.js → useSelectCommon-5f61b9ee.js} +13 -13
- package/es/{useSelectCommon-b6d67057.js.map → useSelectCommon-5f61b9ee.js.map} +1 -1
- package/es/{useSelectDrill-333650bd.js → useSelectDrill-9ce5bccf.js} +3 -3
- package/es/{useSelectDrill-333650bd.js.map → useSelectDrill-9ce5bccf.js.map} +1 -1
- package/es/{useSelection-48f572e5.js → useSelection-c12f7802.js} +5 -5
- package/es/{useSelection-48f572e5.js.map → useSelection-c12f7802.js.map} +1 -1
- package/es/{useSelection-a098b3af.js → useSelection-ce0f9a43.js} +2 -2
- package/es/{useSelection-a098b3af.js.map → useSelection-ce0f9a43.js.map} +1 -1
- package/es/{useTabBar-4b318196.js → useTabBar-8af19c50.js} +2 -2
- package/es/{useTabBar-4b318196.js.map → useTabBar-8af19c50.js.map} +1 -1
- package/es/{useTestId-f5aed66c.js → useTestId-adde554c.js} +2 -2
- package/es/{useTestId-f5aed66c.js.map → useTestId-adde554c.js.map} +1 -1
- package/es/{useTheme-e7ea1253.js → useTheme-1f6035d2.js} +2 -2
- package/es/{useTheme-e7ea1253.js.map → useTheme-1f6035d2.js.map} +1 -1
- package/es/{useThemeInterpolations-66ce2e56.js → useThemeInterpolations-9bddc683.js} +4 -4
- package/es/{useThemeInterpolations-66ce2e56.js.map → useThemeInterpolations-9bddc683.js.map} +1 -1
- package/es/{useTooltip-30a4a4fc.js → useTooltip-9dec25b3.js} +2 -2
- package/es/{useTooltip-30a4a4fc.js.map → useTooltip-9dec25b3.js.map} +1 -1
- package/es/{useTooltipControlled-eafec36e.js → useTooltipControlled-2044f639.js} +8 -8
- package/es/{useTooltipControlled-eafec36e.js.map → useTooltipControlled-2044f639.js.map} +1 -1
- package/es/{useTranslationBundle-e8a8c4f3.js → useTranslationBundle-cd815e10.js} +2 -2
- package/es/{useTranslationBundle-e8a8c4f3.js.map → useTranslationBundle-cd815e10.js.map} +1 -1
- package/es/{useUser-fb09e212.js → useUser-99920e02.js} +2 -2
- package/es/{useUser-fb09e212.js.map → useUser-99920e02.js.map} +1 -1
- package/es/{useVisEvents-e31dcd17.js → useVisEvents-4cfe354c.js} +2 -2
- package/es/{useVisEvents-e31dcd17.js.map → useVisEvents-4cfe354c.js.map} +1 -1
- package/es/utils/PRIVATE_visTestUtils.js +6 -6
- package/es/{withDirectionIcon-6eefb71a.js → withDirectionIcon-f8ff778c.js} +2 -2
- package/es/{withDirectionIcon-6eefb71a.js.map → withDirectionIcon-f8ff778c.js.map} +1 -1
- package/package.json +2 -2
- package/amd/CardFlexView-3e4bd681.js +0 -2
- package/amd/CardGridView-8fb55ad7.js +0 -2
- package/amd/Center-5f845605.js +0 -2
- package/amd/CompactLabelAssistance-91aeaa2e.js +0 -2
- package/amd/HighlightText-ad9bc1f8.js +0 -2
- package/amd/Layer-3cc44164.js +0 -2
- package/amd/List-88a7bee6.js +0 -2
- package/amd/ListItemLayout-dba9e24b.js +0 -2
- package/amd/LiveRegion-be6f36d7.js +0 -2
- package/amd/LoadMoreCollection-a6adbc3f.js +0 -2
- package/amd/MaxLengthLiveRegion-23d7e335.js +0 -2
- package/amd/MessageLayer-d2c49999.js +0 -2
- package/amd/NavigationListItem-c96ac144.js +0 -2
- package/amd/RevealToggleIcon-ef89d654.js +0 -2
- package/amd/SectionedContent-655a773a.js +0 -2
- package/amd/SelectionCard-0ecc7773.js +0 -2
- package/amd/TabBarMixedSeparator-10a52b13.js +0 -2
- package/amd/TextArea-2c7af40c.js +0 -2
- package/amd/TextAreaAutosize-9dc5bffe.js +0 -2
- package/amd/VirtualizedListView-0924cf91.js +0 -2
- package/amd/VisNoData-bfb5065e.js +0 -2
- package/amd/index-17fdb080.js.map +0 -1
- package/amd/useCssVars-948d1e7c.js +0 -2
- package/amd/useCurrentKey-00f81f0b.js +0 -2
- package/amd/useKeyboardEvents-e9a2b72b.js +0 -2
- package/amd/usePrefixSuffix-6ad5569e.js +0 -2
- package/amd/useSelection-0440840d.js +0 -2
- package/amd/useSelection-f1d96ce9.js +0 -2
- package/amd/useThemeInterpolations-41cbd433.js +0 -2
- package/amd/useTooltip-d28e9b0f.js +0 -2
- package/cjs/CheckboxSet-13a5c10c.js +0 -53
- package/cjs/CheckboxSet-13a5c10c.js.map +0 -1
- package/cjs/TextArea-aff8b46e.js.map +0 -1
- package/es/MaxLengthCounter-cead2dac.js +0 -25
- package/es/index-75f23286.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelectCommon-b6d67057.js","sources":["../../src/PRIVATE_SelectCommon/itemTextUtils.ts","../../src/PRIVATE_SelectCommon/DefaultList.tsx","../../src/PRIVATE_SelectCommon/eventUtils.ts","../../src/PRIVATE_SelectCommon/Dropdown.tsx","../../src/PRIVATE_SelectCommon/DropdownArrow.tsx","../../src/PRIVATE_SelectCommon/DropdownList.tsx","../../src/PRIVATE_SelectCommon/DropdownUserAssistance.tsx","../../src/PRIVATE_SelectCommon/EmptyResults.tsx","../../src/PRIVATE_SelectCommon/LinkItem.tsx","../../src/PRIVATE_SelectCommon/MobileDropdown.tsx","../../src/PRIVATE_SelectCommon/SelectMobileDropdown.tsx","../../src/PRIVATE_SelectCommon/SelectMobileFieldInput.tsx","../../src/PRIVATE_SelectCommon/selectUtils.ts","../../src/PRIVATE_SelectCommon/useSelectCommon.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { error } from '../utils/UNSAFE_logger';\nimport { ItemTextFunctionType, ItemTextType } from '../utils/UNSAFE_selectUtils';\n\nexport function renderItemText<K, D>(item: Item<K, D>, itemText: ItemTextType<K, D>) {\n // if item-text is a string and the data has the specified field, return it;\n // otherwise log an error\n if (typeof itemText === 'string') {\n if ((item.data as any)?.hasOwnProperty(itemText)) {\n const retData = item.data[itemText];\n return String(retData);\n }\n error('SelectMultiple: itemText specifies field that does not exist: ' + itemText);\n // return undefined if the field doesn't exist\n return undefined;\n }\n // if item-text is a function, call it to create a display label\n return (itemText as ItemTextFunctionType<K, D>)(item);\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { useCallback, useMemo } from 'preact/hooks';\nimport {\n CurrentKeyDetail,\n DataState,\n ItemActionDetail,\n ListItemRendererContext,\n Metadata,\n SelectionDetail\n} from '../UNSAFE_Collection';\nimport { HighlightText } from '../UNSAFE_HighlightText';\nimport { List, SkeletonContainer } from '../PRIVATE_List';\nimport { Flex } from '../UNSAFE_Flex';\nimport { ListItemText } from '#UNSAFE_ListItemLayout';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from './itemTextUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype PickedPropsFromList = Pick<\n ComponentProps<typeof List>,\n 'aria-label' | 'currentItemVariant' | 'selectionMode'\n>;\n\n// pick the props from the ListItemContext instead of extending it directly so that we\n// don't automatically expose any new props that may be added to it\ntype PickedPropsFromListItemContext<K, D> = Pick<\n ListItemRendererContext<K, D>,\n 'data' | 'index' | 'selector'\n>;\ntype ItemRendererSelectionDetail<K> = {\n value: Set<K>;\n target: EventTarget | null;\n};\ntype ItemRendererMetadata<K> = Pick<Metadata<K>, 'key' | 'suggestion'>;\ntype ItemRendererProps<K, D> = PickedPropsFromListItemContext<K, D> & {\n metadata: ItemRendererMetadata<K>;\n searchText?: string;\n selectedKeys?: Set<K>;\n onSelectionChange: (detail: ItemRendererSelectionDetail<K>) => void;\n};\n\ntype Props<K extends string | number, D extends Record<string, any>> = PickedPropsFromList & {\n itemRenderer?: (itemRendererProps: ItemRendererProps<K, D>) => ComponentChildren;\n itemText: ItemTextType<K, D>;\n // props from List that we constrain or unconstrain\n currentKey?: K;\n data?: DataState<K, D> | null;\n onCurrentKeyChange?: (detail: CurrentKeyDetail<K>) => void;\n onItemAction?: (detail: ItemActionDetail<K, D>) => void;\n onLoadRange?: ComponentProps<typeof List>['onLoadRange'];\n onSelectionChange?: (detail: SelectionDetail<K>) => void;\n searchText?: string;\n selectedKeys?: Set<K>;\n};\n\nconst noOp = () => {};\n\nexport function DefaultList<K extends string | number, D extends Record<string, any>>({\n 'aria-label': ariaLabel,\n currentItemVariant,\n currentKey,\n data,\n itemRenderer,\n itemText,\n onCurrentKeyChange,\n onItemAction,\n onLoadRange = noOp,\n onSelectionChange,\n searchText,\n selectedKeys,\n selectionMode\n}: Props<K, D>) {\n const listItemRenderer = useCallback(\n (listItemContext: ListItemRendererContext<K, D>) => {\n // specify the listItemContext props that we want to expose individually instead of\n // spreading the whole object so that we don't automatically include any new props that\n // may be added to it\n const itemRendererProps: ItemRendererProps<K, D> = {\n data: listItemContext.data,\n index: listItemContext.index,\n metadata: listItemContext.metadata,\n selector: listItemContext.selector,\n searchText,\n selectedKeys,\n onSelectionChange: ({ target, value }) => {\n onSelectionChange?.({\n target,\n value: { all: false, keys: value }\n });\n }\n };\n const itemContext = {\n data: listItemContext.data,\n key: listItemContext.metadata.key,\n metadata: listItemContext.metadata\n };\n return itemRenderer ? (\n itemRenderer(itemRendererProps)\n ) : (\n <Flex align=\"center\">\n {listItemContext.selector && (\n <div class={dropdownStyles.selectorWrapper}>{listItemContext.selector()}</div>\n )}\n <div\n class={\n selectionMode === 'single'\n ? dropdownStyles.singleSelectItem\n : dropdownStyles.multiSelectItem\n }>\n <ListItemText variant=\"primary\">\n <HighlightText matchText={searchText}>\n {renderItemText(itemContext, itemText) as string}\n </HighlightText>\n </ListItemText>\n </div>\n </Flex>\n );\n },\n [itemRenderer, itemText, onSelectionChange, searchText, selectedKeys, selectionMode]\n );\n\n const keys = useMemo(() => {\n return { all: false, keys: selectedKeys ?? new Set<K>() };\n }, [selectedKeys]) as Keys<K>;\n\n return (\n <List<K, D>\n aria-label={ariaLabel}\n allowTabbableMode={false}\n currentItemVariant={currentItemVariant}\n currentKey={currentKey}\n data={data ?? null}\n loadingIndicator={loadingIndicator}\n onCurrentKeyChange={onCurrentKeyChange}\n onItemAction={onItemAction}\n onLoadRange={onLoadRange}\n onSelectionChange={onSelectionChange}\n role=\"listbox\"\n selectedKeys={keys}\n selectionMode={selectionMode}>\n {(context: ListItemRendererContext<K, D>) => listItemRenderer(context)}\n </List>\n );\n}\n\n/**\n * Custom 3 Skeleton loader for select multiple\n * TODO: to remove this once is solved\n */\nconst loadingIndicator = (\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n","export const isSimpleClick = (event: MouseEvent) => {\n return event.button === 0 && !event.ctrlKey;\n};\n\nexport const preventDefault = (event: Event) => {\n event.preventDefault();\n};\n\nexport const preventDefaultForCurrentTarget = (event: MouseEvent) => {\n if (event.currentTarget === event.target) {\n event.preventDefault();\n }\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useState } from 'preact/hooks';\nimport { Floating, PositionData } from '../UNSAFE_Floating';\nimport { Layer } from '../UNSAFE_Layer';\nimport { isControlOrFunctionKey, KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n//Once Dropdown is consumed this will be removed\nimport { useOutsideMousedown } from '../hooks/PRIVATE_useOutsideMousedown';\n\ntype FloatingProps = ComponentProps<typeof Floating>;\n\ntype Props = {\n anchorRef: MutableRef<HTMLElement | null>;\n children?: ComponentChildren;\n dropdownRef: MutableRef<HTMLElement | null>;\n id?: string;\n isOpen?: boolean;\n onAutoDismiss?: (event?: Event) => void;\n onPosition?: FloatingProps['onPosition'];\n};\n\nconst DEFAULT_PLACEMENT = 'bottom-start';\n\n//TODO: Start consuming PRIVATE_Dropdown. JET-62565\nexport function Dropdown({\n anchorRef,\n children,\n dropdownRef,\n id,\n isOpen,\n onAutoDismiss,\n onPosition\n}: Props) {\n const [placement, setPlacement] = useState<FloatingProps['placement']>(DEFAULT_PLACEMENT);\n\n const [prevIsOpen, setPrevIsOpen] = useState(isOpen);\n\n if (prevIsOpen !== isOpen) {\n // reset the placement to the default when the dropdown closes, not opens, so that it doesn't\n // initially open in the previous position and then move to the default position on the\n // rerender after the state is updated\n if (!isOpen) {\n setPlacement(DEFAULT_PLACEMENT);\n }\n }\n\n const handlePosition = useCallback(\n (positionData: PositionData) => {\n // update the placement so that the dropdown stays where it is until there is a collision,\n // i.e. it no longer fits, instead of letting it try to move back to the default position\n // on every render\n setPlacement(positionData.placement);\n\n // call the callback that was passed in through props\n onPosition?.(positionData);\n },\n [onPosition, setPlacement]\n );\n\n const handleAutoDismiss = useCallback(\n (event: Event) => {\n onAutoDismiss?.(event);\n },\n [onAutoDismiss]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.defaultPrevented || isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.ESC:\n case KEYS.TAB:\n handleAutoDismiss(event);\n break;\n }\n },\n [handleAutoDismiss]\n );\n\n // use the mousedown event to be consistent with legacy JET and so that we're hiding the dropdown\n // on the same event where focus will transfer\n useOutsideMousedown({\n isDisabled: !isOpen,\n ref: [anchorRef, dropdownRef],\n handler: handleAutoDismiss\n });\n\n // TODO: get dropdown y (mainAxis) offset from --oj-c-PRIVATE-DO-NOT-USE-private-core-global-dropdown-offset\n const offsetValue = { mainAxis: 4, crossAxis: 0 };\n\n const inlineStyle = isOpen\n ? {\n minWidth: `${anchorRef.current?.offsetWidth}px`\n }\n : {};\n\n if (prevIsOpen !== isOpen) {\n setPrevIsOpen(isOpen);\n }\n\n return !isOpen ? null : (\n <Layer logicalParentRef={anchorRef}>\n <Floating\n anchorRef={anchorRef}\n sizeOptions={{\n isMaxHeightAdjusted: true,\n maxHeightCeiling: 400\n }}\n ref={dropdownRef}\n placement={placement}\n offsetValue={offsetValue}\n onPosition={handlePosition}>\n <div\n class={dropdownStyles.base}\n id={id}\n style={inlineStyle}\n onKeyDown={handleKeyDown}\n onMouseDown={preventDefaultForCurrentTarget}>\n {children}\n </div>\n </Floating>\n </Layer>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback } from 'preact/hooks';\nimport { usePress } from '../hooks/UNSAFE_usePress';\nimport { DropdownArrowIcon } from '../PRIVATE_ThemedIcons/DropdownArrowIcon';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\nimport { useComponentTheme } from '#hooks/UNSAFE_useComponentTheme';\nimport { ButtonLabelLayoutRedwoodTheme } from '#UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutTheme';\nimport type { ButtonLabelLayoutVariantOptions } from '#UNSAFE_ButtonLabelLayout/themes/ButtonLabelLayoutStyles.css';\nimport { TestIdProps, useTestId } from '#hooks/UNSAFE_useTestId';\nimport { BaseButtonRedwoodTheme } from '#UNSAFE_BaseButton/themes/redwood/BaseButtonTheme';\n\ntype Props = TestIdProps & {\n isDisabled?: boolean;\n onClick?: () => void;\n};\n\nconst noop = () => {};\n\nexport function DropdownArrow({ isDisabled = false, onClick, testId }: Props) {\n const { classes } = useComponentTheme<ButtonLabelLayoutVariantOptions>(\n ButtonLabelLayoutRedwoodTheme,\n { size: 'sm' }\n );\n const { baseTheme } = useComponentTheme(BaseButtonRedwoodTheme);\n\n const preventDefault = useCallback((event: Event) => {\n event.preventDefault();\n }, []);\n const { pressProps } = usePress(onClick ?? noop, { isDisabled });\n\n // TODO: JET-67410 replace this with a icon button\n const styleClasses = classNames([\n classes,\n baseTheme,\n dropdownStyles.arrow.base,\n isDisabled ? dropdownStyles.arrow.disabled : dropdownStyles.arrow.enabled\n ]);\n\n const testIdProps = useTestId(testId);\n\n return (\n <span\n aria-hidden=\"true\"\n class={styleClasses}\n tabIndex={-1}\n onMouseDown={preventDefault}\n {...testIdProps}\n {...pressProps}>\n <DropdownArrowIcon />\n </span>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren } from 'preact';\nimport { CollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype Props = {\n children?: ComponentChildren;\n hasTopGap?: boolean;\n hasBottomGap?: boolean;\n isLoading?: boolean;\n};\n\nexport function DropdownList({\n children,\n hasTopGap = true,\n hasBottomGap = true,\n isLoading = false\n}: Props) {\n const styleClasses = classNames([\n dropdownStyles.list.base,\n hasTopGap && dropdownStyles.list.topGap,\n hasBottomGap && dropdownStyles.list.bottomGap,\n isLoading && dropdownStyles.list.loading\n ]);\n return (\n <CollectionGestureContext.Provider value={'embedded'}>\n <div class={styleClasses} onMouseDown={preventDefaultForCurrentTarget}>\n {children}\n </div>\n </CollectionGestureContext.Provider>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype InlineUserAssistanceProps = Pick<\n ComponentProps<typeof InlineUserAssistance>,\n | 'assistiveText'\n | 'fieldLabel'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'id'\n | 'userAssistanceDensity'\n>;\n\nexport function DropdownUserAssistance(props: InlineUserAssistanceProps) {\n // Prevent the focus from transferring when the user clicks on an empty/non-clickable area\n // of the user assistance\n const handleMouseDown = useCallback((event: MouseEvent) => {\n // Don't call preventDefault when the user clicks on the help source link, so that the\n // focus is allowed to transfer in that case.\n if ((event.target as Element)?.tagName !== 'A') {\n event.preventDefault();\n }\n }, []);\n\n return (\n <FormFieldContext.Provider value={{ isFocused: true }}>\n <div class={dropdownStyles.userAssistance} onMouseDown={handleMouseDown}>\n <InlineUserAssistance {...props} />\n </div>\n </FormFieldContext.Provider>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\nexport function EmptyResults() {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n // call preventDefault for mousedown on this div so that focus does not transfer from\n // the input\n return (\n <div class={dropdownStyles.results.extraItem} onMouseDown={preventDefaultForCurrentTarget}>\n {translations.select_noMatchesFound()}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback } from 'preact/hooks';\nimport { Link } from '#UNSAFE_Link';\nimport { useFocusWithin } from '#hooks/UNSAFE_useFocusWithin';\nimport { useHover } from '#hooks/UNSAFE_useHover';\nimport { classNames } from '#utils/UNSAFE_classNames';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype Props = {\n /**\n * Child content of the item.\n */\n children: string;\n /**\n * Specifies whether to highlight the item.\n */\n isHighlighted?: boolean;\n /**\n * Callback invoked when the user triggers the link, for example by clicking or pressing Enter.\n */\n onAction?: () => void;\n};\n\n/**\n * This component renders a link that looks like a list item in a Select* component dropdown.\n * It fires an action when the user triggers it, and is intended to be used for launching\n * external application UI from within the dropdown, for example to provide advanced search or\n * add to list functionality.\n * The LinkItem would typically be shown in a fixed position above or below the list itself.\n */\nconst LinkItem = ({ children, isHighlighted, onAction }: Props) => {\n const { isHover, hoverProps } = useHover();\n const { isFocused, focusProps } = useFocusWithin();\n\n const handleClick = useCallback(\n (e: Event) => {\n // prevent the link from actually navigating by preventing default and returning false\n e.preventDefault();\n onAction?.();\n return false;\n },\n [onAction]\n );\n\n const rootClasses = classNames([isFocused ? dropdownStyles.results.linkItemFocus : undefined]);\n\n const linkClasses = classNames([\n dropdownStyles.results.extraItem,\n isHover || isFocused || isHighlighted ? dropdownStyles.results.linkItemHighlight : undefined\n ]);\n\n return (\n <div class={rootClasses} {...focusProps}>\n <Link href=\"#\" onClick={handleClick}>\n <div class={linkClasses} {...hoverProps}>\n {children}\n </div>\n </Link>\n </div>\n );\n};\n\nexport { LinkItem };\n","import { ComponentChildren } from 'preact';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Layer } from '../UNSAFE_Layer';\nimport { WindowOverlay } from '../UNSAFE_WindowOverlay';\nimport { mobileDropdownStyles } from './themes/mobileDropdownStyles.css';\n\ntype Props = {\n /**\n * The dropdown content\n */\n children?: ComponentChildren;\n\n /**\n * The id for the top level element\n */\n id?: string;\n\n /**\n * Specifies whether the dropdown is being shown\n */\n isOpen?: boolean;\n};\n\nexport function MobileDropdown({ children, id, isOpen }: Props) {\n return !isOpen ? null : (\n <Layer>\n <WindowOverlay>\n <div id={id} class={mobileDropdownStyles.base} role=\"dialog\" aria-modal=\"true\">\n <Flex width=\"100%\" height=\"100%\" maxHeight=\"100%\" direction=\"column\">\n {children}\n </Flex>\n </div>\n </WindowOverlay>\n </Layer>\n );\n}\n","import { ComponentChildren, ComponentProps } from 'preact';\nimport { Separator } from '../UNSAFE_Separator';\nimport { MobileDropdown } from './MobileDropdown';\nimport { selectMobileDropdownStyles } from './themes/selectMobileDropdownStyles.css';\n\ntype MobileDropdownProps = ComponentProps<typeof MobileDropdown>;\ntype PassThroughMobileDropdownProps = Pick<MobileDropdownProps, 'id' | 'isOpen'>;\n\ntype Props = PassThroughMobileDropdownProps & {\n /**\n * The main dropdown content\n */\n children?: ComponentChildren;\n\n /**\n * The components to be placed in the end of the dropdown\n */\n footer?: ComponentChildren;\n\n /**\n * The components to be placed in the beginning of the dropdown\n */\n header?: ComponentChildren;\n\n /**\n * Specifies whether to have a separator between header and content\n */\n hasHeaderSeparator?: boolean;\n};\n\nexport function SelectMobileDropdown({\n children,\n footer,\n hasHeaderSeparator = true,\n header,\n id,\n isOpen\n}: Props) {\n return (\n <MobileDropdown id={id} isOpen={isOpen}>\n {header}\n {hasHeaderSeparator && <Separator />}\n {/* TODO: Add overflow support to View and use it here */}\n {/* */}\n <div class={selectMobileDropdownStyles.content}>{children}</div>\n <Separator />\n {footer}\n </MobileDropdown>\n );\n}\n","import { Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport {\n AriaAttributesSignalExcluded,\n HTMLAttributesSignalExcluded\n} from '../utils/UNSAFE_attributeUtils';\nimport { TextProps, textInterpolations } from '../utils/UNSAFE_interpolations/text';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { TextFieldInputVariantOptions } from '../UNSAFE_TextField/themes/TextFieldInputStyles.css';\nimport { useFormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { selectMobileFieldInputStyles } from './themes/SelectMobileFieldInputStyles.css';\nimport { isInputPlaceholderShown } from '../UNSAFE_TextField/TextFieldUtils';\nimport { useTabbableMode } from '../hooks/UNSAFE_useTabbableMode';\nimport { Text } from '../UNSAFE_Text';\nimport { useAccessibleContext } from '../hooks/UNSAFE_useAccessibleContext';\nimport { merge } from '../utils/UNSAFE_stringUtils';\nimport { TextFieldInputRedwoodTheme } from '../UNSAFE_TextField/themes/redwood/TextFieldInputTheme';\n\ntype AriaProps = Pick<\n AriaAttributesSignalExcluded,\n | 'aria-controls'\n | 'aria-describedby'\n | 'aria-expanded'\n | 'aria-invalid'\n | 'aria-label'\n | 'aria-labelledby'\n>;\n\ntype EventProps = Pick<HTMLAttributesSignalExcluded<HTMLDivElement>, 'onBlur' | 'onFocus'>;\n\ntype Props = AriaProps &\n EventProps &\n TextProps & {\n displayValue?: string;\n hasEmptyLabel?: boolean;\n hasInsideLabel?: boolean;\n isRequired?: boolean;\n placeholder?: string;\n variant?: 'default' | 'embedded';\n };\n\nconst interpolations = [...Object.values(textInterpolations)];\nconst styleInterpolations = mergeInterpolations<Props>(interpolations);\n\n/**\n * This component is used for rendering the main field in mobile phones. This is a bit different from the\n * normal main field (TextFieldInput) that we use for desktop & tablet devices in the way that\n * a user will not be able to edit the value of this field. But, one can still have other functionalities\n * of having a placeholder, tab in & out of it, and other such functionalities of an enabled field.\n *\n * This also differs from ReadonlyTextFieldInput in the following ways:\n * 1. This will be rendered as div as well, but has a role of combobox set on it\n * 2. This will not be read as readonly input by the screen readers\n * 3. This has the stylings much similar to the TextFieldInput component\n * 4. This supports the use of placeholder and shows it when there is no value present\n * 5. This supports having the variant property and styles accordingly\n *\n * As such, this is very similar to the TextFieldInput except that this does not allow user input.\n * Note: we cannot use TextFieldInput with readonly set on it; even though it might provide us the\n * behavior we need, it will make the field as readonly and screen readers read the same about this\n * field. This will be an incorrect representation contextually as one can still edit the value by opening\n * the dropdown and changing the selection.\n */\nexport const SelectMobileFieldInput = forwardRef(\n (\n {\n 'aria-controls': ariaControls,\n 'aria-describedby': ariaDescribedBy,\n 'aria-expanded': ariaExpanded,\n 'aria-invalid': ariaInvalid,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n displayValue,\n hasEmptyLabel,\n hasInsideLabel = false,\n isRequired,\n onBlur,\n onFocus,\n placeholder,\n textAlign,\n variant = 'default'\n }: Props,\n ref?: Ref<HTMLDivElement>\n ) => {\n // consume required contexts\n const { isDisabled, isFocused, hasValue = false } = useFormFieldContext();\n const { isTabbable, tabbableModeProps } = useTabbableMode();\n\n // setup properties\n const myPlaceholder = isInputPlaceholderShown(hasInsideLabel, hasValue, isFocused)\n ? placeholder\n : undefined;\n\n // Add unsafe API for specifying an external label which is added to ariaLabelledBy on the input,\n // only when labelEdge is 'none' and label is ''. Since ariaLabelledBy takes precedence over all other\n // kinds of labels, this helps to ensure we don't override a meaningful label.\n const { UNSAFE_ariaLabelledBy } = useAccessibleContext();\n const mergedAriaLabelledBy = hasEmptyLabel\n ? merge([ariaLabelledBy, UNSAFE_ariaLabelledBy])\n : ariaLabelledBy;\n\n // setup style classes\n const { class: styleInterpolationClasses } = styleInterpolations({ textAlign });\n const { classes: themeClasses } = useComponentTheme<TextFieldInputVariantOptions>(\n TextFieldInputRedwoodTheme,\n {\n type: 'notPassword',\n styleVariant: variant,\n textarea: 'notTextArea',\n input: 'isInput',\n prefix: 'noPrefix',\n suffix: 'noSuffix',\n startContent: 'noStartContent',\n endContent: 'hasEndContent',\n insideLabel: hasInsideLabel ? 'hasInsideLabel' : 'noInsideLabel',\n value: hasValue ? 'hasValue' : 'noValue',\n focused: isFocused ? 'isFocused' : 'notFocused',\n disabled: isDisabled ? 'isDisabled' : 'notDisabled'\n }\n );\n const rootDivStyleClasses = classNames([\n selectMobileFieldInputStyles.base,\n styleInterpolationClasses,\n themeClasses\n ]);\n\n return (\n <div\n aria-autocomplete=\"list\"\n aria-controls={ariaControls}\n aria-describedby={ariaDescribedBy}\n aria-expanded={ariaExpanded}\n aria-invalid={ariaInvalid}\n aria-label={ariaLabel}\n aria-labelledby={mergedAriaLabelledBy}\n aria-required={isRequired ? 'true' : undefined}\n class={rootDivStyleClasses}\n onBlur={onBlur}\n onFocus={onFocus}\n ref={ref}\n role=\"combobox\"\n {...(isTabbable && tabbableModeProps)}>\n <div class={selectMobileFieldInputStyles.content}>\n <Text variant={displayValue ? 'inherit' : 'secondary'}>\n {displayValue || myPlaceholder}\n </Text>\n </div>\n </div>\n );\n }\n);\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { DataState } from '../UNSAFE_Collection';\n\n/**\n * Helper function to determine whether the current device is a mobile device\n * @returns true if running on a mobile device, false otherwise\n */\nexport function isMobile() {\n const deviceType = getClientHints().deviceType;\n return deviceType === 'phone' || deviceType === 'tablet';\n}\n\n/**\n * Helper function to determine whether the current device is a phone\n * @returns true if running on a phone, false otherwise\n */\nexport function isPhone() {\n return getClientHints().deviceType === 'phone';\n}\n\n/**\n * Helper function to determine whether the current device is a tablet\n * @returns true if running on a tablet, false otherwise\n */\nexport function isTablet() {\n return getClientHints().deviceType === 'tablet';\n}\n\nexport function isBeforeDataFetch<K, D>(data: DataState<K, D>) {\n return data.sizePrecision === 'atLeast' && data.totalSize === 0;\n}\n\nexport function isSearchTextEmptyOrUndefined(searchText?: string) {\n return searchText === undefined || searchText.length === 0;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Ref, useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport { CurrentKeyDetail, DataState } from '../UNSAFE_Collection';\nimport { PositionData } from '../UNSAFE_Floating';\nimport { allTabbableElements } from '../utils/PRIVATE_tabbableUtils';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { isSimpleClick } from './eventUtils';\n\ntype UseSelectCommonProps<K, D> = {\n data?: DataState<K, D> | null;\n inputRef: Ref<HTMLElement>;\n isFocused?: boolean;\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n};\n\n/**\n * Hook that manages state and behavior for a Select* component. This hook creates state\n * variables and event listeners, returning properties to apply to components internally\n * rendered by a Select* component, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isFocused Specifies whether the component has focus.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n *\n * @returns Component state and event listeners.\n */\nexport function useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused,\n onFilter\n}: UseSelectCommonProps<K, D>) {\n const mainFieldRef = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [isDropdownOpen, setDropdownOpen] = useState(false);\n const [isDropdownAbove, setDropdownAbove] = useState(false);\n const [currentRow, setCurrentRow] = useState<{ rowKey?: K }>({\n rowKey: undefined\n });\n const [isUserFiltering, setUserFiltering] = useState(false);\n const [userInput, setUserInput] = useState<string>();\n const [searchText, setSearchText] = useState<string>();\n\n const [prevIsDropdownOpen, setPrevIsDropdownOpen] = useState(isDropdownOpen);\n const [prevIsFocused, setPrevIsFocused] = useState(isFocused);\n const [prevIsUserFiltering, setPrevIsUserFiltering] = useState(isUserFiltering);\n\n const onMouseDown = useCallback(\n (event: MouseEvent) => {\n // const target = event.target as HTMLElement;\n if (event.defaultPrevented || !isSimpleClick(event)) {\n return;\n }\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n // this is needed to focus the input when clicking on the inside label when there is no\n // value; otherwise the component looks focused but doesn't actually have physical focus\n setTimeout(function () {\n inputRef.current?.focus();\n }, 0);\n },\n [inputRef, isDropdownOpen]\n );\n\n const handleDropdownArrowClick = useCallback(() => {\n setDropdownOpen(!isDropdownOpen);\n\n // focus the input so that if the user Tabs afterwards, it loses focus and the dropdown closes\n inputRef.current?.focus();\n }, [inputRef, isDropdownOpen]);\n\n const handleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n switch (event?.type) {\n case 'keydown':\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.ESC:\n // focus the input when the user cancels out of the dropdown\n inputRef.current?.focus();\n break;\n default:\n break;\n }\n break;\n case 'mousedown':\n // if focus is in the dropdown, focus the input before the dropdown is hidden so that\n // focus will transfer correctly when the target is not focusable;\n // otherwise the text cursor appears in the input again\n if (dropdownRef.current?.contains(document.activeElement)) {\n inputRef.current?.focus();\n }\n break;\n default:\n break;\n }\n }\n },\n [inputRef, isDropdownOpen]\n );\n\n const handleDropdownPosition = useCallback((data: PositionData) => {\n setDropdownAbove(data.placement.startsWith('top'));\n }, []);\n\n const getDropdownTabbableElems = useCallback(() => {\n return isDropdownOpen && dropdownRef.current\n ? allTabbableElements(dropdownRef.current)\n : undefined;\n }, [isDropdownOpen]);\n\n const handleUpDownArrowKeys = useCallback(\n (event: KeyboardEvent) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n } else {\n // JET-64909 - focus / 'current' dropped when arrow keying during loading\n // Transfer physical focus into the dropdown only if the data is present and the dropdown\n // has rendered the data. Otherwise, keep the focus in the field.\n if (data != null) {\n const tabbableElems = getDropdownTabbableElems();\n tabbableElems?.[0]?.focus();\n\n // if there is no current item set, make the first item current\n if (currentRow.rowKey === undefined) {\n setCurrentRow({ rowKey: data.data[0]?.metadata?.key });\n }\n }\n }\n\n // prevent the page from scrolling\n event.preventDefault();\n },\n [currentRow, data, getDropdownTabbableElems, isDropdownOpen]\n );\n\n const handleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // const target = event.target as HTMLElement;\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.PAGE_UP:\n case KEYS.PAGE_DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n\n return;\n\n case KEYS.UP:\n case KEYS.DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n break;\n\n case KEYS.ESC:\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n event.preventDefault();\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to stop editing the row when we close\n // the dropdown\n event.stopPropagation();\n }\n break;\n\n default:\n break;\n }\n },\n [isDropdownOpen]\n );\n\n const handleMainFieldKeyUp = useCallback(\n (event: KeyboardEvent) => {\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.UP:\n case KEYS.DOWN:\n handleUpDownArrowKeys(event);\n break;\n\n default:\n break;\n }\n },\n [handleUpDownArrowKeys]\n );\n\n const handleInput = useCallback(\n (detail: ValueUpdateDetail<string>) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n setUserFiltering(true);\n setUserInput(detail.value);\n const str = detail.value;\n setSearchText(str);\n onFilter?.({ searchText: str });\n },\n [isDropdownOpen, onFilter]\n );\n\n const onCurrentKeyChange = useCallback((detail: CurrentKeyDetail<K>) => {\n setCurrentRow({ rowKey: detail.value });\n }, []);\n\n const stopFiltering = useCallback(() => {\n setUserFiltering(false);\n setUserInput('');\n setSearchText('');\n }, []);\n\n // the user is not actively filtering if the dropdown is closed and the component doesn't\n // have focus\n if (\n prevIsDropdownOpen !== isDropdownOpen ||\n prevIsFocused !== isFocused ||\n prevIsUserFiltering !== isUserFiltering\n ) {\n if (!isDropdownOpen && !isFocused && isUserFiltering) {\n stopFiltering();\n }\n }\n\n // need to call onFilter with undefined searchText when the dropdown opens and the\n // user is NOT filtering\n useEffect(() => {\n if (isDropdownOpen && !isUserFiltering) {\n onFilter?.({ searchText: undefined });\n }\n }, [isDropdownOpen, isUserFiltering, onFilter]);\n\n // when the dropdown closes, reset the isDropdownAbove flag\n if (prevIsDropdownOpen !== isDropdownOpen) {\n if (!isDropdownOpen) {\n setDropdownAbove(false);\n }\n setPrevIsDropdownOpen(isDropdownOpen);\n }\n\n if (prevIsFocused !== isFocused) {\n setPrevIsFocused(isFocused);\n }\n if (prevIsUserFiltering !== isUserFiltering) {\n setPrevIsUserFiltering(isUserFiltering);\n }\n\n return {\n currentRow,\n dropdownRef,\n getDropdownTabbableElems,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss,\n handleDropdownPosition,\n handleInput,\n handleMainFieldKeyDown,\n handleMainFieldKeyUp,\n handleUpDownArrowKeys,\n isDropdownAbove,\n isDropdownOpen,\n // the field should remain to look focused while the dropdown is open,\n // in case physical focus is in the dropdown\n isFocused: isFocused || isDropdownOpen,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n setCurrentRow,\n setDropdownOpen,\n setUserInput,\n stopFiltering,\n userInput\n };\n}\n"],"names":["_jsxs","_jsx","DropdownArrowIcon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAMG;AAMa,SAAA,cAAc,CAAO,IAAgB,EAAE,QAA4B,EAAA;;;AAGjF,IAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,IAAK,IAAI,CAAC,IAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpC,YAAA,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;SACxB;AACD,QAAA,KAAK,CAAC,gEAAgE,GAAG,QAAQ,CAAC,CAAC;;AAEnF,QAAA,OAAO,SAAS,CAAC;KAClB;;AAED,IAAA,OAAQ,QAAuC,CAAC,IAAI,CAAC,CAAC;AACxD;;ACuCA,MAAM,IAAI,GAAG,MAAK,GAAG,CAAC;AAEN,SAAA,WAAW,CAA2D,EACpF,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAClB,UAAU,EACV,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,WAAW,GAAG,IAAI,EAClB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,aAAa,EACD,EAAA;AACZ,IAAA,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,eAA8C,KAAI;;;;AAIjD,QAAA,MAAM,iBAAiB,GAA4B;YACjD,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,QAAQ,EAAE,eAAe,CAAC,QAAQ;YAClC,QAAQ,EAAE,eAAe,CAAC,QAAQ;YAClC,UAAU;YACV,YAAY;YACZ,iBAAiB,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAI;AACvC,gBAAA,iBAAiB,GAAG;oBAClB,MAAM;oBACN,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;AACnC,iBAAA,CAAC,CAAC;aACJ;SACF,CAAC;AACF,QAAA,MAAM,WAAW,GAAG;YAClB,IAAI,EAAE,eAAe,CAAC,IAAI;AAC1B,YAAA,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC,GAAG;YACjC,QAAQ,EAAE,eAAe,CAAC,QAAQ;SACnC,CAAC;QACF,OAAO,YAAY,IACjB,YAAY,CAAC,iBAAiB,CAAC,KAE/BA,IAAC,CAAA,IAAI,IAAC,KAAK,EAAC,QAAQ,EACjB,QAAA,EAAA,CAAA,eAAe,CAAC,QAAQ,KACvBC,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,cAAc,CAAC,eAAe,EAAG,QAAA,EAAA,eAAe,CAAC,QAAQ,EAAE,GAAO,CAC/E,EACDA,aACE,KAAK,EACH,aAAa,KAAK,QAAQ;0BACtB,cAAc,CAAC,gBAAgB;AACjC,0BAAE,cAAc,CAAC,eAAe,EAEpC,QAAA,EAAAA,GAAA,CAAC,YAAY,EAAA,EAAC,OAAO,EAAC,SAAS,EAAA,QAAA,EAC7BA,IAAC,aAAa,EAAA,EAAC,SAAS,EAAE,UAAU,EAAA,QAAA,EACjC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAW,EAClC,CAAA,EAAA,CACH,EACX,CAAA,CAAA,EAAA,CACD,CACR,CAAC;AACJ,KAAC,EACD,CAAC,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,CAAC,CACrF,CAAC;AAEF,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAK;AACxB,QAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,IAAI,IAAI,GAAG,EAAK,EAAE,CAAC;AAC5D,KAAC,EAAE,CAAC,YAAY,CAAC,CAAY,CAAC;AAE9B,IAAA,QACEA,GAAA,CAAC,IAAI,EAAA,EAAA,YAAA,EACS,SAAS,EACrB,iBAAiB,EAAE,KAAK,EACxB,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,IAAI,IAAI,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,IAAI,EAAC,SAAS,EACd,YAAY,EAAE,IAAI,EAClB,aAAa,EAAE,aAAa,EAC3B,QAAA,EAAA,CAAC,OAAsC,KAAK,gBAAgB,CAAC,OAAO,CAAC,EAAA,CACjE,EACP;AACJ,CAAC;AAED;;;AAGG;AACH,MAAM,gBAAgB,IACpBA,GAAC,CAAA,iBAAiB,EAAC,EAAA,YAAY,EAAE,CAAC,EAC/B,QAAA,EAAA,MAAK;QACJ,QACEA,IAAC,IAAI,EAAA,EAAC,MAAM,EAAC,KAAK,EAAC,KAAK,EAAC,QAAQ,EAC/B,QAAA,EAAAA,GAAA,CAAC,QAAQ,EAAC,EAAA,MAAM,EAAC,IAAI,EAAA,CAAG,EACnB,CAAA,EACP;KACH,EAAA,CACiB,CACrB;;ACzKY,MAAA,aAAa,GAAG,CAAC,KAAiB,KAAI;IACjD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AAC9C,EAAE;AAEW,MAAA,cAAc,GAAG,CAAC,KAAY,KAAI;IAC7C,KAAK,CAAC,cAAc,EAAE,CAAC;AACzB,EAAE;AAEW,MAAA,8BAA8B,GAAG,CAAC,KAAiB,KAAI;IAClE,IAAI,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,MAAM,EAAE;QACxC,KAAK,CAAC,cAAc,EAAE,CAAC;KACxB;AACH;;ACkBA,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAEzC;SACgB,QAAQ,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,WAAW,EACX,EAAE,EACF,MAAM,EACN,aAAa,EACb,UAAU,EACJ,EAAA;IACN,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAA6B,iBAAiB,CAAC,CAAC;IAE1F,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAErD,IAAA,IAAI,UAAU,KAAK,MAAM,EAAE;;;;QAIzB,IAAI,CAAC,MAAM,EAAE;YACX,YAAY,CAAC,iBAAiB,CAAC,CAAC;SACjC;KACF;AAED,IAAA,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,YAA0B,KAAI;;;;AAI7B,QAAA,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;;AAGrC,QAAA,UAAU,GAAG,YAAY,CAAC,CAAC;AAC7B,KAAC,EACD,CAAC,UAAU,EAAE,YAAY,CAAC,CAC3B,CAAC;AAEF,IAAA,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAY,KAAI;AACf,QAAA,aAAa,GAAG,KAAK,CAAC,CAAC;AACzB,KAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;AAEF,IAAA,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,KAAoB,KAAI;QACvB,IAAI,KAAK,CAAC,gBAAgB,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE;YAC3D,OAAO;SACR;AAED,QAAA,QAAQ,KAAK,CAAC,IAAI;YAChB,KAAK,IAAI,CAAC,GAAG,CAAC;YACd,KAAK,IAAI,CAAC,GAAG;gBACX,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzB,MAAM;SACT;AACH,KAAC,EACD,CAAC,iBAAiB,CAAC,CACpB,CAAC;;;AAIF,IAAA,mBAAmB,CAAC;QAClB,UAAU,EAAE,CAAC,MAAM;AACnB,QAAA,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;AAC7B,QAAA,OAAO,EAAE,iBAAiB;AAC3B,KAAA,CAAC,CAAC;;IAGH,MAAM,WAAW,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IAElD,MAAM,WAAW,GAAG,MAAM;AACxB,UAAE;AACE,YAAA,QAAQ,EAAE,CAAG,EAAA,SAAS,CAAC,OAAO,EAAE,WAAW,CAAI,EAAA,CAAA;AAChD,SAAA;UACD,EAAE,CAAC;AAEP,IAAA,IAAI,UAAU,KAAK,MAAM,EAAE;QACzB,aAAa,CAAC,MAAM,CAAC,CAAC;KACvB;IAED,OAAO,CAAC,MAAM,GAAG,IAAI,IACnBA,GAAC,CAAA,KAAK,IAAC,gBAAgB,EAAE,SAAS,EAAA,QAAA,EAChCA,GAAC,CAAA,QAAQ,EACP,EAAA,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE;AACX,gBAAA,mBAAmB,EAAE,IAAI;AACzB,gBAAA,gBAAgB,EAAE,GAAG;aACtB,EACD,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,cAAc,EAAA,QAAA,EAC1BA,aACE,KAAK,EAAE,cAAc,CAAC,IAAI,EAC1B,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,aAAa,EACxB,WAAW,EAAE,8BAA8B,EAC1C,QAAA,EAAA,QAAQ,GACL,EACG,CAAA,EAAA,CACL,CACT,CAAC;AACJ;;AC/GA,MAAM,IAAI,GAAG,MAAK,GAAG,CAAC;AAEhB,SAAU,aAAa,CAAC,EAAE,UAAU,GAAG,KAAK,EAAE,OAAO,EAAE,MAAM,EAAS,EAAA;AAC1E,IAAA,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CACnC,6BAA6B,EAC7B,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;AAEhE,IAAA,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,KAAY,KAAI;QAClD,KAAK,CAAC,cAAc,EAAE,CAAC;KACxB,EAAE,EAAE,CAAC,CAAC;AACP,IAAA,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC,OAAO,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;;IAGjE,MAAM,YAAY,GAAG,UAAU,CAAC;QAC9B,OAAO;QACP,SAAS;QACT,cAAc,CAAC,KAAK,CAAC,IAAI;AACzB,QAAA,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO;AAC1E,KAAA,CAAC,CAAC;AAEH,IAAA,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEtC,QACEA,GACc,CAAA,MAAA,EAAA,EAAA,aAAA,EAAA,MAAM,EAClB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,CAAC,EACZ,WAAW,EAAE,cAAc,EACvB,GAAA,WAAW,EACX,GAAA,UAAU,EACd,QAAA,EAAAA,GAAA,CAACC,YAAiB,EAAA,EAAA,CAAG,EAChB,CAAA,EACP;AACJ;;SCtCgB,YAAY,CAAC,EAC3B,QAAQ,EACR,SAAS,GAAG,IAAI,EAChB,YAAY,GAAG,IAAI,EACnB,SAAS,GAAG,KAAK,EACX,EAAA;IACN,MAAM,YAAY,GAAG,UAAU,CAAC;QAC9B,cAAc,CAAC,IAAI,CAAC,IAAI;AACxB,QAAA,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM;AACvC,QAAA,YAAY,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS;AAC7C,QAAA,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO;AACzC,KAAA,CAAC,CAAC;IACH,QACED,IAAC,wBAAwB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,UAAU,EAClD,QAAA,EAAAA,GAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,8BAA8B,YAClE,QAAQ,EAAA,CACL,EAC4B,CAAA,EACpC;AACJ;;AChBM,SAAU,sBAAsB,CAAC,KAAgC,EAAA;;;AAGrE,IAAA,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,KAAiB,KAAI;;;QAGxD,IAAK,KAAK,CAAC,MAAkB,EAAE,OAAO,KAAK,GAAG,EAAE;YAC9C,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;KACF,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,QACEA,GAAA,CAAC,gBAAgB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YACnDA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,cAAc,CAAC,cAAc,EAAE,WAAW,EAAE,eAAe,EAAA,QAAA,EACrEA,GAAC,CAAA,oBAAoB,OAAK,KAAK,EAAA,CAAI,EAC/B,CAAA,EAAA,CACoB,EAC5B;AACJ;;SC7BgB,YAAY,GAAA;AAC1B,IAAA,MAAM,YAAY,GAAG,oBAAoB,CAAa,0BAA0B,CAAC,CAAC;;;IAIlF,QACEA,aAAK,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,8BAA8B,YACtF,YAAY,CAAC,qBAAqB,EAAE,EAAA,CACjC,EACN;AACJ;;ACOA;;;;;;AAMG;AACG,MAAA,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAS,KAAI;IAChE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC3C,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE,CAAC;AAEnD,IAAA,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,CAAQ,KAAI;;QAEX,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,QAAQ,IAAI,CAAC;AACb,QAAA,OAAO,KAAK,CAAC;AACf,KAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC;IAE/F,MAAM,WAAW,GAAG,UAAU,CAAC;QAC7B,cAAc,CAAC,OAAO,CAAC,SAAS;AAChC,QAAA,OAAO,IAAI,SAAS,IAAI,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,iBAAiB,GAAG,SAAS;AAC7F,KAAA,CAAC,CAAC;AAEH,IAAA,QACEA,GAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,WAAW,EAAA,GAAM,UAAU,EAAA,QAAA,EACrCA,GAAC,CAAA,IAAI,EAAC,EAAA,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,WAAW,EAAA,QAAA,EACjCA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,WAAW,EAAA,GAAM,UAAU,EAAA,QAAA,EACpC,QAAQ,EAAA,CACL,EACD,CAAA,EAAA,CACH,EACN;AACJ;;AC5CM,SAAU,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAS,EAAA;IAC5D,OAAO,CAAC,MAAM,GAAG,IAAI,IACnBA,GAAA,CAAC,KAAK,EAAA,EAAA,QAAA,EACJA,GAAC,CAAA,aAAa,EACZ,EAAA,QAAA,EAAAA,GAAA,CAAA,KAAA,EAAA,EAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAC,QAAQ,EAAY,YAAA,EAAA,MAAM,EAC5E,QAAA,EAAAA,GAAA,CAAC,IAAI,EAAA,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAA,QAAA,EACjE,QAAQ,EAAA,CACJ,EACH,CAAA,EAAA,CACQ,EACV,CAAA,CACT,CAAC;AACJ;;SCLgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,MAAM,EACN,kBAAkB,GAAG,IAAI,EACzB,MAAM,EACN,EAAE,EACF,MAAM,EACA,EAAA;AACN,IAAA,QACED,IAAC,CAAA,cAAc,EAAC,EAAA,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EACnC,QAAA,EAAA,CAAA,MAAM,EACN,kBAAkB,IAAIC,GAAC,CAAA,SAAS,EAAG,EAAA,CAAA,EAGpCA,aAAK,KAAK,EAAE,0BAA0B,CAAC,OAAO,EAAG,QAAA,EAAA,QAAQ,EAAO,CAAA,EAChEA,IAAC,SAAS,EAAA,EAAA,CAAG,EACZ,MAAM,CAAA,EAAA,CACQ,EACjB;AACJ;;ACNA,MAAM,cAAc,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC9D,MAAM,mBAAmB,GAAG,mBAAmB,CAAQ,cAAc,CAAC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;AAkBG;AACU,MAAA,sBAAsB,GAAG,UAAU,CAC9C,CACE,EACE,eAAe,EAAE,YAAY,EAC7B,kBAAkB,EAAE,eAAe,EACnC,eAAe,EAAE,YAAY,EAC7B,cAAc,EAAE,WAAW,EAC3B,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,YAAY,EACZ,aAAa,EACb,cAAc,GAAG,KAAK,EACtB,UAAU,EACV,MAAM,EACN,OAAO,EACP,WAAW,EACX,SAAS,EACT,OAAO,GAAG,SAAS,EACb,EACR,GAAyB,KACvB;;AAEF,IAAA,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAC1E,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,eAAe,EAAE,CAAC;;IAG5D,MAAM,aAAa,GAAG,uBAAuB,CAAC,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC;AAChF,UAAE,WAAW;UACX,SAAS,CAAC;;;;AAKd,IAAA,MAAM,EAAE,qBAAqB,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACzD,MAAM,oBAAoB,GAAG,aAAa;UACtC,KAAK,CAAC,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;UAC9C,cAAc,CAAC;;AAGnB,IAAA,MAAM,EAAE,KAAK,EAAE,yBAAyB,EAAE,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAChF,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,iBAAiB,CACjD,0BAA0B,EAC1B;AACE,QAAA,IAAI,EAAE,aAAa;AACnB,QAAA,YAAY,EAAE,OAAO;AACrB,QAAA,QAAQ,EAAE,aAAa;AACvB,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,YAAY,EAAE,gBAAgB;AAC9B,QAAA,UAAU,EAAE,eAAe;QAC3B,WAAW,EAAE,cAAc,GAAG,gBAAgB,GAAG,eAAe;QAChE,KAAK,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS;QACxC,OAAO,EAAE,SAAS,GAAG,WAAW,GAAG,YAAY;QAC/C,QAAQ,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa;AACpD,KAAA,CACF,CAAC;IACF,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACrC,QAAA,4BAA4B,CAAC,IAAI;QACjC,yBAAyB;QACzB,YAAY;AACb,KAAA,CAAC,CAAC;AAEH,IAAA,QACEA,GACoB,CAAA,KAAA,EAAA,EAAA,mBAAA,EAAA,MAAM,EACT,eAAA,EAAA,YAAY,sBACT,eAAe,EAAA,eAAA,EAClB,YAAY,EAAA,cAAA,EACb,WAAW,EACb,YAAA,EAAA,SAAS,qBACJ,oBAAoB,EAAA,eAAA,EACtB,UAAU,GAAG,MAAM,GAAG,SAAS,EAC9C,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,UAAU,EACX,IAAC,UAAU,IAAI,iBAAiB,CAAC,EAAA,QAAA,EACrCA,aAAK,KAAK,EAAE,4BAA4B,CAAC,OAAO,YAC9CA,GAAC,CAAA,IAAI,EAAC,EAAA,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,WAAW,EAAA,QAAA,EAClD,YAAY,IAAI,aAAa,GACzB,EACH,CAAA,EAAA,CACF,EACN;AACJ,CAAC;;ACvJH;;;;;;AAMG;AAKH;;;AAGG;SACa,QAAQ,GAAA;AACtB,IAAA,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC,UAAU,CAAC;AAC/C,IAAA,OAAO,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,QAAQ,CAAC;AAC3D,CAAC;AAED;;;AAGG;SACa,OAAO,GAAA;AACrB,IAAA,OAAO,cAAc,EAAE,CAAC,UAAU,KAAK,OAAO,CAAC;AACjD,CAAC;AAED;;;AAGG;SACa,QAAQ,GAAA;AACtB,IAAA,OAAO,cAAc,EAAE,CAAC,UAAU,KAAK,QAAQ,CAAC;AAClD,CAAC;AAEK,SAAU,iBAAiB,CAAO,IAAqB,EAAA;IAC3D,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;AAClE,CAAC;AAEK,SAAU,4BAA4B,CAAC,UAAmB,EAAA;IAC9D,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;AAC7D;;AC1CA;;;;;;AAMG;AAiBH;;;;;;;;;;;;AAYG;AACG,SAAU,eAAe,CAAO,EACpC,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,QAAQ,EACmB,EAAA;AAC3B,IAAA,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;AAClD,IAAA,MAAM,WAAW,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC5D,IAAA,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAiB;AAC3D,QAAA,MAAM,EAAE,SAAS;AAClB,KAAA,CAAC,CAAC;IACH,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,EAAU,CAAC;IACrD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAU,CAAC;IAEvD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC7E,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAEhF,IAAA,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAiB,KAAI;;QAEpB,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACnD,OAAO;SACR;QACD,IAAI,CAAC,cAAc,EAAE;YACnB,eAAe,CAAC,IAAI,CAAC,CAAC;SACvB;;;AAGD,QAAA,UAAU,CAAC,YAAA;AACT,YAAA,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B,EAAE,CAAC,CAAC,CAAC;AACR,KAAC,EACD,CAAC,QAAQ,EAAE,cAAc,CAAC,CAC3B,CAAC;AAEF,IAAA,MAAM,wBAAwB,GAAG,WAAW,CAAC,MAAK;AAChD,QAAA,eAAe,CAAC,CAAC,cAAc,CAAC,CAAC;;AAGjC,QAAA,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;AAC5B,KAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;AAE/B,IAAA,MAAM,yBAAyB,GAAG,WAAW,CAC3C,CAAC,KAAa,KAAI;QAChB,IAAI,cAAc,EAAE;YAClB,eAAe,CAAC,KAAK,CAAC,CAAC;AAEvB,YAAA,QAAQ,KAAK,EAAE,IAAI;AACjB,gBAAA,KAAK,SAAS;oBACZ,MAAM,aAAa,GAAG,KAAsB,CAAC;AAC7C,oBAAA,QAAQ,aAAa,CAAC,IAAI;wBACxB,KAAK,IAAI,CAAC,GAAG;;AAEX,4BAAA,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;4BAC1B,MAAM;qBAGT;oBACD,MAAM;AACR,gBAAA,KAAK,WAAW;;;;oBAId,IAAI,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;AACzD,wBAAA,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;qBAC3B;oBACD,MAAM;aAGT;SACF;AACH,KAAC,EACD,CAAC,QAAQ,EAAE,cAAc,CAAC,CAC3B,CAAC;AAEF,IAAA,MAAM,sBAAsB,GAAG,WAAW,CAAC,CAAC,IAAkB,KAAI;QAChE,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;KACpD,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,MAAM,wBAAwB,GAAG,WAAW,CAAC,MAAK;AAChD,QAAA,OAAO,cAAc,IAAI,WAAW,CAAC,OAAO;AAC1C,cAAE,mBAAmB,CAAC,WAAW,CAAC,OAAO,CAAC;cACxC,SAAS,CAAC;AAChB,KAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;AAErB,IAAA,MAAM,qBAAqB,GAAG,WAAW,CACvC,CAAC,KAAoB,KAAI;QACvB,IAAI,CAAC,cAAc,EAAE;YACnB,eAAe,CAAC,IAAI,CAAC,CAAC;SACvB;aAAM;;;;AAIL,YAAA,IAAI,IAAI,IAAI,IAAI,EAAE;AAChB,gBAAA,MAAM,aAAa,GAAG,wBAAwB,EAAE,CAAC;AACjD,gBAAA,aAAa,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;;AAG5B,gBAAA,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE;AACnC,oBAAA,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;iBACxD;aACF;SACF;;QAGD,KAAK,CAAC,cAAc,EAAE,CAAC;KACxB,EACD,CAAC,UAAU,EAAE,IAAI,EAAE,wBAAwB,EAAE,cAAc,CAAC,CAC7D,CAAC;AAEF,IAAA,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,KAAoB,KAAI;;;AAGvB,QAAA,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO;SACR;AAED,QAAA,QAAQ,KAAK,CAAC,IAAI;YAChB,KAAK,IAAI,CAAC,OAAO,CAAC;YAClB,KAAK,IAAI,CAAC,SAAS;;gBAEjB,KAAK,CAAC,cAAc,EAAE,CAAC;gBAEvB,OAAO;YAET,KAAK,IAAI,CAAC,EAAE,CAAC;YACb,KAAK,IAAI,CAAC,IAAI;;gBAEZ,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,MAAM;YAER,KAAK,IAAI,CAAC,GAAG;gBACX,IAAI,cAAc,EAAE;oBAClB,eAAe,CAAC,KAAK,CAAC,CAAC;oBAEvB,KAAK,CAAC,cAAc,EAAE,CAAC;;;;oBAKvB,KAAK,CAAC,eAAe,EAAE,CAAC;iBACzB;gBACD,MAAM;SAIT;AACH,KAAC,EACD,CAAC,cAAc,CAAC,CACjB,CAAC;AAEF,IAAA,MAAM,oBAAoB,GAAG,WAAW,CACtC,CAAC,KAAoB,KAAI;;AAEvB,QAAA,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO;SACR;AAED,QAAA,QAAQ,KAAK,CAAC,IAAI;YAChB,KAAK,IAAI,CAAC,EAAE,CAAC;YACb,KAAK,IAAI,CAAC,IAAI;gBACZ,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBAC7B,MAAM;SAIT;AACH,KAAC,EACD,CAAC,qBAAqB,CAAC,CACxB,CAAC;AAEF,IAAA,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,MAAiC,KAAI;QACpC,IAAI,CAAC,cAAc,EAAE;YACnB,eAAe,CAAC,IAAI,CAAC,CAAC;SACvB;QACD,gBAAgB,CAAC,IAAI,CAAC,CAAC;AACvB,QAAA,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3B,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC;QACzB,aAAa,CAAC,GAAG,CAAC,CAAC;QACnB,QAAQ,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;AAClC,KAAC,EACD,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC3B,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,MAA2B,KAAI;QACrE,aAAa,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;KACzC,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,MAAM,aAAa,GAAG,WAAW,CAAC,MAAK;QACrC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,aAAa,CAAC,EAAE,CAAC,CAAC;KACnB,EAAE,EAAE,CAAC,CAAC;;;IAIP,IACE,kBAAkB,KAAK,cAAc;AACrC,QAAA,aAAa,KAAK,SAAS;QAC3B,mBAAmB,KAAK,eAAe,EACvC;QACA,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE;AACpD,YAAA,aAAa,EAAE,CAAC;SACjB;KACF;;;IAID,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,cAAc,IAAI,CAAC,eAAe,EAAE;YACtC,QAAQ,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;SACvC;KACF,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC;;AAGhD,IAAA,IAAI,kBAAkB,KAAK,cAAc,EAAE;QACzC,IAAI,CAAC,cAAc,EAAE;YACnB,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;QACD,qBAAqB,CAAC,cAAc,CAAC,CAAC;KACvC;AAED,IAAA,IAAI,aAAa,KAAK,SAAS,EAAE;QAC/B,gBAAgB,CAAC,SAAS,CAAC,CAAC;KAC7B;AACD,IAAA,IAAI,mBAAmB,KAAK,eAAe,EAAE;QAC3C,sBAAsB,CAAC,eAAe,CAAC,CAAC;KACzC;IAED,OAAO;QACL,UAAU;QACV,WAAW;QACX,wBAAwB;QACxB,wBAAwB;QACxB,yBAAyB;QACzB,sBAAsB;QACtB,WAAW;QACX,sBAAsB;QACtB,oBAAoB;QACpB,qBAAqB;QACrB,eAAe;QACf,cAAc;;;QAGd,SAAS,EAAE,SAAS,IAAI,cAAc;QACtC,eAAe;QACf,YAAY;QACZ,kBAAkB;QAClB,WAAW;QACX,UAAU;QACV,aAAa;QACb,eAAe;QACf,YAAY;QACZ,aAAa;QACb,SAAS;KACV,CAAC;AACJ;;;;"}
|
|
1
|
+
{"version":3,"file":"useSelectCommon-5f61b9ee.js","sources":["../../src/PRIVATE_SelectCommon/itemTextUtils.ts","../../src/PRIVATE_SelectCommon/DefaultList.tsx","../../src/PRIVATE_SelectCommon/eventUtils.ts","../../src/PRIVATE_SelectCommon/Dropdown.tsx","../../src/PRIVATE_SelectCommon/DropdownArrow.tsx","../../src/PRIVATE_SelectCommon/DropdownList.tsx","../../src/PRIVATE_SelectCommon/DropdownUserAssistance.tsx","../../src/PRIVATE_SelectCommon/EmptyResults.tsx","../../src/PRIVATE_SelectCommon/LinkItem.tsx","../../src/PRIVATE_SelectCommon/MobileDropdown.tsx","../../src/PRIVATE_SelectCommon/SelectMobileDropdown.tsx","../../src/PRIVATE_SelectCommon/SelectMobileFieldInput.tsx","../../src/PRIVATE_SelectCommon/selectUtils.ts","../../src/PRIVATE_SelectCommon/useSelectCommon.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { error } from '../utils/UNSAFE_logger';\nimport { ItemTextFunctionType, ItemTextType } from '../utils/UNSAFE_selectUtils';\n\nexport function renderItemText<K, D>(item: Item<K, D>, itemText: ItemTextType<K, D>) {\n // if item-text is a string and the data has the specified field, return it;\n // otherwise log an error\n if (typeof itemText === 'string') {\n if ((item.data as any)?.hasOwnProperty(itemText)) {\n const retData = item.data[itemText];\n return String(retData);\n }\n error('SelectMultiple: itemText specifies field that does not exist: ' + itemText);\n // return undefined if the field doesn't exist\n return undefined;\n }\n // if item-text is a function, call it to create a display label\n return (itemText as ItemTextFunctionType<K, D>)(item);\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { useCallback, useMemo } from 'preact/hooks';\nimport {\n CurrentKeyDetail,\n DataState,\n ItemActionDetail,\n ListItemRendererContext,\n Metadata,\n SelectionDetail\n} from '../UNSAFE_Collection';\nimport { HighlightText } from '../UNSAFE_HighlightText';\nimport { List, SkeletonContainer } from '../PRIVATE_List';\nimport { Flex } from '../UNSAFE_Flex';\nimport { ListItemText } from '#UNSAFE_ListItemLayout';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from './itemTextUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype PickedPropsFromList = Pick<\n ComponentProps<typeof List>,\n 'aria-label' | 'currentItemVariant' | 'selectionMode'\n>;\n\n// pick the props from the ListItemContext instead of extending it directly so that we\n// don't automatically expose any new props that may be added to it\ntype PickedPropsFromListItemContext<K, D> = Pick<\n ListItemRendererContext<K, D>,\n 'data' | 'index' | 'selector'\n>;\ntype ItemRendererSelectionDetail<K> = {\n value: Set<K>;\n target: EventTarget | null;\n};\ntype ItemRendererMetadata<K> = Pick<Metadata<K>, 'key' | 'suggestion'>;\ntype ItemRendererProps<K, D> = PickedPropsFromListItemContext<K, D> & {\n metadata: ItemRendererMetadata<K>;\n searchText?: string;\n selectedKeys?: Set<K>;\n onSelectionChange: (detail: ItemRendererSelectionDetail<K>) => void;\n};\n\ntype Props<K extends string | number, D extends Record<string, any>> = PickedPropsFromList & {\n itemRenderer?: (itemRendererProps: ItemRendererProps<K, D>) => ComponentChildren;\n itemText: ItemTextType<K, D>;\n // props from List that we constrain or unconstrain\n currentKey?: K;\n data?: DataState<K, D> | null;\n onCurrentKeyChange?: (detail: CurrentKeyDetail<K>) => void;\n onItemAction?: (detail: ItemActionDetail<K, D>) => void;\n onLoadRange?: ComponentProps<typeof List>['onLoadRange'];\n onSelectionChange?: (detail: SelectionDetail<K>) => void;\n searchText?: string;\n selectedKeys?: Set<K>;\n};\n\nconst noOp = () => {};\n\nexport function DefaultList<K extends string | number, D extends Record<string, any>>({\n 'aria-label': ariaLabel,\n currentItemVariant,\n currentKey,\n data,\n itemRenderer,\n itemText,\n onCurrentKeyChange,\n onItemAction,\n onLoadRange = noOp,\n onSelectionChange,\n searchText,\n selectedKeys,\n selectionMode\n}: Props<K, D>) {\n const listItemRenderer = useCallback(\n (listItemContext: ListItemRendererContext<K, D>) => {\n // specify the listItemContext props that we want to expose individually instead of\n // spreading the whole object so that we don't automatically include any new props that\n // may be added to it\n const itemRendererProps: ItemRendererProps<K, D> = {\n data: listItemContext.data,\n index: listItemContext.index,\n metadata: listItemContext.metadata,\n selector: listItemContext.selector,\n searchText,\n selectedKeys,\n onSelectionChange: ({ target, value }) => {\n onSelectionChange?.({\n target,\n value: { all: false, keys: value }\n });\n }\n };\n const itemContext = {\n data: listItemContext.data,\n key: listItemContext.metadata.key,\n metadata: listItemContext.metadata\n };\n return itemRenderer ? (\n itemRenderer(itemRendererProps)\n ) : (\n <Flex align=\"center\">\n {listItemContext.selector && (\n <div class={dropdownStyles.selectorWrapper}>{listItemContext.selector()}</div>\n )}\n <div\n class={\n selectionMode === 'single'\n ? dropdownStyles.singleSelectItem\n : dropdownStyles.multiSelectItem\n }>\n <ListItemText variant=\"primary\">\n <HighlightText matchText={searchText}>\n {renderItemText(itemContext, itemText) as string}\n </HighlightText>\n </ListItemText>\n </div>\n </Flex>\n );\n },\n [itemRenderer, itemText, onSelectionChange, searchText, selectedKeys, selectionMode]\n );\n\n const keys = useMemo(() => {\n return { all: false, keys: selectedKeys ?? new Set<K>() };\n }, [selectedKeys]) as Keys<K>;\n\n return (\n <List<K, D>\n aria-label={ariaLabel}\n allowTabbableMode={false}\n currentItemVariant={currentItemVariant}\n currentKey={currentKey}\n data={data ?? null}\n loadingIndicator={loadingIndicator}\n onCurrentKeyChange={onCurrentKeyChange}\n onItemAction={onItemAction}\n onLoadRange={onLoadRange}\n onSelectionChange={onSelectionChange}\n role=\"listbox\"\n selectedKeys={keys}\n selectionMode={selectionMode}>\n {(context: ListItemRendererContext<K, D>) => listItemRenderer(context)}\n </List>\n );\n}\n\n/**\n * Custom 3 Skeleton loader for select multiple\n * TODO: to remove this once is solved\n */\nconst loadingIndicator = (\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n","export const isSimpleClick = (event: MouseEvent) => {\n return event.button === 0 && !event.ctrlKey;\n};\n\nexport const preventDefault = (event: Event) => {\n event.preventDefault();\n};\n\nexport const preventDefaultForCurrentTarget = (event: MouseEvent) => {\n if (event.currentTarget === event.target) {\n event.preventDefault();\n }\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useState } from 'preact/hooks';\nimport { Floating, PositionData } from '../UNSAFE_Floating';\nimport { Layer } from '../UNSAFE_Layer';\nimport { isControlOrFunctionKey, KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n//Once Dropdown is consumed this will be removed\nimport { useOutsideMousedown } from '../hooks/PRIVATE_useOutsideMousedown';\n\ntype FloatingProps = ComponentProps<typeof Floating>;\n\ntype Props = {\n anchorRef: MutableRef<HTMLElement | null>;\n children?: ComponentChildren;\n dropdownRef: MutableRef<HTMLElement | null>;\n id?: string;\n isOpen?: boolean;\n onAutoDismiss?: (event?: Event) => void;\n onPosition?: FloatingProps['onPosition'];\n};\n\nconst DEFAULT_PLACEMENT = 'bottom-start';\n\n//TODO: Start consuming PRIVATE_Dropdown. JET-62565\nexport function Dropdown({\n anchorRef,\n children,\n dropdownRef,\n id,\n isOpen,\n onAutoDismiss,\n onPosition\n}: Props) {\n const [placement, setPlacement] = useState<FloatingProps['placement']>(DEFAULT_PLACEMENT);\n\n const [prevIsOpen, setPrevIsOpen] = useState(isOpen);\n\n if (prevIsOpen !== isOpen) {\n // reset the placement to the default when the dropdown closes, not opens, so that it doesn't\n // initially open in the previous position and then move to the default position on the\n // rerender after the state is updated\n if (!isOpen) {\n setPlacement(DEFAULT_PLACEMENT);\n }\n }\n\n const handlePosition = useCallback(\n (positionData: PositionData) => {\n // update the placement so that the dropdown stays where it is until there is a collision,\n // i.e. it no longer fits, instead of letting it try to move back to the default position\n // on every render\n setPlacement(positionData.placement);\n\n // call the callback that was passed in through props\n onPosition?.(positionData);\n },\n [onPosition, setPlacement]\n );\n\n const handleAutoDismiss = useCallback(\n (event: Event) => {\n onAutoDismiss?.(event);\n },\n [onAutoDismiss]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.defaultPrevented || isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.ESC:\n case KEYS.TAB:\n handleAutoDismiss(event);\n break;\n }\n },\n [handleAutoDismiss]\n );\n\n // use the mousedown event to be consistent with legacy JET and so that we're hiding the dropdown\n // on the same event where focus will transfer\n useOutsideMousedown({\n isDisabled: !isOpen,\n ref: [anchorRef, dropdownRef],\n handler: handleAutoDismiss\n });\n\n // TODO: get dropdown y (mainAxis) offset from --oj-c-PRIVATE-DO-NOT-USE-private-core-global-dropdown-offset\n const offsetValue = { mainAxis: 4, crossAxis: 0 };\n\n const inlineStyle = isOpen\n ? {\n minWidth: `${anchorRef.current?.offsetWidth}px`\n }\n : {};\n\n if (prevIsOpen !== isOpen) {\n setPrevIsOpen(isOpen);\n }\n\n return !isOpen ? null : (\n <Layer logicalParentRef={anchorRef}>\n <Floating\n anchorRef={anchorRef}\n sizeOptions={{\n isMaxHeightAdjusted: true,\n maxHeightCeiling: 400\n }}\n ref={dropdownRef}\n placement={placement}\n offsetValue={offsetValue}\n onPosition={handlePosition}>\n <div\n class={dropdownStyles.base}\n id={id}\n style={inlineStyle}\n onKeyDown={handleKeyDown}\n onMouseDown={preventDefaultForCurrentTarget}>\n {children}\n </div>\n </Floating>\n </Layer>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback } from 'preact/hooks';\nimport { usePress } from '../hooks/UNSAFE_usePress';\nimport { DropdownArrowIcon } from '../PRIVATE_ThemedIcons/DropdownArrowIcon';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\nimport { useComponentTheme } from '#hooks/UNSAFE_useComponentTheme';\nimport { ButtonLabelLayoutRedwoodTheme } from '#UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutTheme';\nimport type { ButtonLabelLayoutVariantOptions } from '#UNSAFE_ButtonLabelLayout/themes/ButtonLabelLayoutStyles.css';\nimport { TestIdProps, useTestId } from '#hooks/UNSAFE_useTestId';\nimport { BaseButtonRedwoodTheme } from '#UNSAFE_BaseButton/themes/redwood/BaseButtonTheme';\n\ntype Props = TestIdProps & {\n isDisabled?: boolean;\n onClick?: () => void;\n};\n\nconst noop = () => {};\n\nexport function DropdownArrow({ isDisabled = false, onClick, testId }: Props) {\n const { classes } = useComponentTheme<ButtonLabelLayoutVariantOptions>(\n ButtonLabelLayoutRedwoodTheme,\n { size: 'sm' }\n );\n const { baseTheme } = useComponentTheme(BaseButtonRedwoodTheme);\n\n const preventDefault = useCallback((event: Event) => {\n event.preventDefault();\n }, []);\n const { pressProps } = usePress(onClick ?? noop, { isDisabled });\n\n // TODO: JET-67410 replace this with a icon button\n const styleClasses = classNames([\n classes,\n baseTheme,\n dropdownStyles.arrow.base,\n isDisabled ? dropdownStyles.arrow.disabled : dropdownStyles.arrow.enabled\n ]);\n\n const testIdProps = useTestId(testId);\n\n return (\n <span\n aria-hidden=\"true\"\n class={styleClasses}\n tabIndex={-1}\n onMouseDown={preventDefault}\n {...testIdProps}\n {...pressProps}>\n <DropdownArrowIcon />\n </span>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren } from 'preact';\nimport { CollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype Props = {\n children?: ComponentChildren;\n hasTopGap?: boolean;\n hasBottomGap?: boolean;\n isLoading?: boolean;\n};\n\nexport function DropdownList({\n children,\n hasTopGap = true,\n hasBottomGap = true,\n isLoading = false\n}: Props) {\n const styleClasses = classNames([\n dropdownStyles.list.base,\n hasTopGap && dropdownStyles.list.topGap,\n hasBottomGap && dropdownStyles.list.bottomGap,\n isLoading && dropdownStyles.list.loading\n ]);\n return (\n <CollectionGestureContext.Provider value={'embedded'}>\n <div class={styleClasses} onMouseDown={preventDefaultForCurrentTarget}>\n {children}\n </div>\n </CollectionGestureContext.Provider>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype InlineUserAssistanceProps = Pick<\n ComponentProps<typeof InlineUserAssistance>,\n | 'assistiveText'\n | 'fieldLabel'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'id'\n | 'userAssistanceDensity'\n>;\n\nexport function DropdownUserAssistance(props: InlineUserAssistanceProps) {\n // Prevent the focus from transferring when the user clicks on an empty/non-clickable area\n // of the user assistance\n const handleMouseDown = useCallback((event: MouseEvent) => {\n // Don't call preventDefault when the user clicks on the help source link, so that the\n // focus is allowed to transfer in that case.\n if ((event.target as Element)?.tagName !== 'A') {\n event.preventDefault();\n }\n }, []);\n\n return (\n <FormFieldContext.Provider value={{ isFocused: true }}>\n <div class={dropdownStyles.userAssistance} onMouseDown={handleMouseDown}>\n <InlineUserAssistance {...props} />\n </div>\n </FormFieldContext.Provider>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport { preventDefaultForCurrentTarget } from './eventUtils';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\nexport function EmptyResults() {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n // call preventDefault for mousedown on this div so that focus does not transfer from\n // the input\n return (\n <div class={dropdownStyles.results.extraItem} onMouseDown={preventDefaultForCurrentTarget}>\n {translations.select_noMatchesFound()}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback } from 'preact/hooks';\nimport { Link } from '#UNSAFE_Link';\nimport { useFocusWithin } from '#hooks/UNSAFE_useFocusWithin';\nimport { useHover } from '#hooks/UNSAFE_useHover';\nimport { classNames } from '#utils/UNSAFE_classNames';\nimport { dropdownStyles } from './themes/dropdownStyles.css';\n\ntype Props = {\n /**\n * Child content of the item.\n */\n children: string;\n /**\n * Specifies whether to highlight the item.\n */\n isHighlighted?: boolean;\n /**\n * Callback invoked when the user triggers the link, for example by clicking or pressing Enter.\n */\n onAction?: () => void;\n};\n\n/**\n * This component renders a link that looks like a list item in a Select* component dropdown.\n * It fires an action when the user triggers it, and is intended to be used for launching\n * external application UI from within the dropdown, for example to provide advanced search or\n * add to list functionality.\n * The LinkItem would typically be shown in a fixed position above or below the list itself.\n */\nconst LinkItem = ({ children, isHighlighted, onAction }: Props) => {\n const { isHover, hoverProps } = useHover();\n const { isFocused, focusProps } = useFocusWithin();\n\n const handleClick = useCallback(\n (e: Event) => {\n // prevent the link from actually navigating by preventing default and returning false\n e.preventDefault();\n onAction?.();\n return false;\n },\n [onAction]\n );\n\n const rootClasses = classNames([isFocused ? dropdownStyles.results.linkItemFocus : undefined]);\n\n const linkClasses = classNames([\n dropdownStyles.results.extraItem,\n isHover || isFocused || isHighlighted ? dropdownStyles.results.linkItemHighlight : undefined\n ]);\n\n return (\n <div class={rootClasses} {...focusProps}>\n <Link href=\"#\" onClick={handleClick}>\n <div class={linkClasses} {...hoverProps}>\n {children}\n </div>\n </Link>\n </div>\n );\n};\n\nexport { LinkItem };\n","import { ComponentChildren } from 'preact';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Layer } from '../UNSAFE_Layer';\nimport { WindowOverlay } from '../UNSAFE_WindowOverlay';\nimport { mobileDropdownStyles } from './themes/mobileDropdownStyles.css';\n\ntype Props = {\n /**\n * The dropdown content\n */\n children?: ComponentChildren;\n\n /**\n * The id for the top level element\n */\n id?: string;\n\n /**\n * Specifies whether the dropdown is being shown\n */\n isOpen?: boolean;\n};\n\nexport function MobileDropdown({ children, id, isOpen }: Props) {\n return !isOpen ? null : (\n <Layer>\n <WindowOverlay>\n <div id={id} class={mobileDropdownStyles.base} role=\"dialog\" aria-modal=\"true\">\n <Flex width=\"100%\" height=\"100%\" maxHeight=\"100%\" direction=\"column\">\n {children}\n </Flex>\n </div>\n </WindowOverlay>\n </Layer>\n );\n}\n","import { ComponentChildren, ComponentProps } from 'preact';\nimport { Separator } from '../UNSAFE_Separator';\nimport { MobileDropdown } from './MobileDropdown';\nimport { selectMobileDropdownStyles } from './themes/selectMobileDropdownStyles.css';\n\ntype MobileDropdownProps = ComponentProps<typeof MobileDropdown>;\ntype PassThroughMobileDropdownProps = Pick<MobileDropdownProps, 'id' | 'isOpen'>;\n\ntype Props = PassThroughMobileDropdownProps & {\n /**\n * The main dropdown content\n */\n children?: ComponentChildren;\n\n /**\n * The components to be placed in the end of the dropdown\n */\n footer?: ComponentChildren;\n\n /**\n * The components to be placed in the beginning of the dropdown\n */\n header?: ComponentChildren;\n\n /**\n * Specifies whether to have a separator between header and content\n */\n hasHeaderSeparator?: boolean;\n};\n\nexport function SelectMobileDropdown({\n children,\n footer,\n hasHeaderSeparator = true,\n header,\n id,\n isOpen\n}: Props) {\n return (\n <MobileDropdown id={id} isOpen={isOpen}>\n {header}\n {hasHeaderSeparator && <Separator />}\n {/* TODO: Add overflow support to View and use it here */}\n {/* */}\n <div class={selectMobileDropdownStyles.content}>{children}</div>\n <Separator />\n {footer}\n </MobileDropdown>\n );\n}\n","import { Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport {\n AriaAttributesSignalExcluded,\n HTMLAttributesSignalExcluded\n} from '../utils/UNSAFE_attributeUtils';\nimport { TextProps, textInterpolations } from '../utils/UNSAFE_interpolations/text';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { TextFieldInputVariantOptions } from '../UNSAFE_TextField/themes/TextFieldInputStyles.css';\nimport { useFormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { selectMobileFieldInputStyles } from './themes/SelectMobileFieldInputStyles.css';\nimport { isInputPlaceholderShown } from '../UNSAFE_TextField/TextFieldUtils';\nimport { useTabbableMode } from '../hooks/UNSAFE_useTabbableMode';\nimport { Text } from '../UNSAFE_Text';\nimport { useAccessibleContext } from '../hooks/UNSAFE_useAccessibleContext';\nimport { merge } from '../utils/UNSAFE_stringUtils';\nimport { TextFieldInputRedwoodTheme } from '../UNSAFE_TextField/themes/redwood/TextFieldInputTheme';\n\ntype AriaProps = Pick<\n AriaAttributesSignalExcluded,\n | 'aria-controls'\n | 'aria-describedby'\n | 'aria-expanded'\n | 'aria-invalid'\n | 'aria-label'\n | 'aria-labelledby'\n>;\n\ntype EventProps = Pick<HTMLAttributesSignalExcluded<HTMLDivElement>, 'onBlur' | 'onFocus'>;\n\ntype Props = AriaProps &\n EventProps &\n TextProps & {\n displayValue?: string;\n hasEmptyLabel?: boolean;\n hasInsideLabel?: boolean;\n isRequired?: boolean;\n placeholder?: string;\n variant?: 'default' | 'embedded';\n };\n\nconst interpolations = [...Object.values(textInterpolations)];\nconst styleInterpolations = mergeInterpolations<Props>(interpolations);\n\n/**\n * This component is used for rendering the main field in mobile phones. This is a bit different from the\n * normal main field (TextFieldInput) that we use for desktop & tablet devices in the way that\n * a user will not be able to edit the value of this field. But, one can still have other functionalities\n * of having a placeholder, tab in & out of it, and other such functionalities of an enabled field.\n *\n * This also differs from ReadonlyTextFieldInput in the following ways:\n * 1. This will be rendered as div as well, but has a role of combobox set on it\n * 2. This will not be read as readonly input by the screen readers\n * 3. This has the stylings much similar to the TextFieldInput component\n * 4. This supports the use of placeholder and shows it when there is no value present\n * 5. This supports having the variant property and styles accordingly\n *\n * As such, this is very similar to the TextFieldInput except that this does not allow user input.\n * Note: we cannot use TextFieldInput with readonly set on it; even though it might provide us the\n * behavior we need, it will make the field as readonly and screen readers read the same about this\n * field. This will be an incorrect representation contextually as one can still edit the value by opening\n * the dropdown and changing the selection.\n */\nexport const SelectMobileFieldInput = forwardRef(\n (\n {\n 'aria-controls': ariaControls,\n 'aria-describedby': ariaDescribedBy,\n 'aria-expanded': ariaExpanded,\n 'aria-invalid': ariaInvalid,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n displayValue,\n hasEmptyLabel,\n hasInsideLabel = false,\n isRequired,\n onBlur,\n onFocus,\n placeholder,\n textAlign,\n variant = 'default'\n }: Props,\n ref?: Ref<HTMLDivElement>\n ) => {\n // consume required contexts\n const { isDisabled, isFocused, hasValue = false } = useFormFieldContext();\n const { isTabbable, tabbableModeProps } = useTabbableMode();\n\n // setup properties\n const myPlaceholder = isInputPlaceholderShown(hasInsideLabel, hasValue, isFocused)\n ? placeholder\n : undefined;\n\n // Add unsafe API for specifying an external label which is added to ariaLabelledBy on the input,\n // only when labelEdge is 'none' and label is ''. Since ariaLabelledBy takes precedence over all other\n // kinds of labels, this helps to ensure we don't override a meaningful label.\n const { UNSAFE_ariaLabelledBy } = useAccessibleContext();\n const mergedAriaLabelledBy = hasEmptyLabel\n ? merge([ariaLabelledBy, UNSAFE_ariaLabelledBy])\n : ariaLabelledBy;\n\n // setup style classes\n const { class: styleInterpolationClasses } = styleInterpolations({ textAlign });\n const { classes: themeClasses } = useComponentTheme<TextFieldInputVariantOptions>(\n TextFieldInputRedwoodTheme,\n {\n type: 'notPassword',\n styleVariant: variant,\n textarea: 'notTextArea',\n input: 'isInput',\n prefix: 'noPrefix',\n suffix: 'noSuffix',\n startContent: 'noStartContent',\n endContent: 'hasEndContent',\n insideLabel: hasInsideLabel ? 'hasInsideLabel' : 'noInsideLabel',\n value: hasValue ? 'hasValue' : 'noValue',\n focused: isFocused ? 'isFocused' : 'notFocused',\n disabled: isDisabled ? 'isDisabled' : 'notDisabled'\n }\n );\n const rootDivStyleClasses = classNames([\n selectMobileFieldInputStyles.base,\n styleInterpolationClasses,\n themeClasses\n ]);\n\n return (\n <div\n aria-autocomplete=\"list\"\n aria-controls={ariaControls}\n aria-describedby={ariaDescribedBy}\n aria-expanded={ariaExpanded}\n aria-invalid={ariaInvalid}\n aria-label={ariaLabel}\n aria-labelledby={mergedAriaLabelledBy}\n aria-required={isRequired ? 'true' : undefined}\n class={rootDivStyleClasses}\n onBlur={onBlur}\n onFocus={onFocus}\n ref={ref}\n role=\"combobox\"\n {...(isTabbable && tabbableModeProps)}>\n <div class={selectMobileFieldInputStyles.content}>\n <Text variant={displayValue ? 'inherit' : 'secondary'}>\n {displayValue || myPlaceholder}\n </Text>\n </div>\n </div>\n );\n }\n);\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { DataState } from '../UNSAFE_Collection';\n\n/**\n * Helper function to determine whether the current device is a mobile device\n * @returns true if running on a mobile device, false otherwise\n */\nexport function isMobile() {\n const deviceType = getClientHints().deviceType;\n return deviceType === 'phone' || deviceType === 'tablet';\n}\n\n/**\n * Helper function to determine whether the current device is a phone\n * @returns true if running on a phone, false otherwise\n */\nexport function isPhone() {\n return getClientHints().deviceType === 'phone';\n}\n\n/**\n * Helper function to determine whether the current device is a tablet\n * @returns true if running on a tablet, false otherwise\n */\nexport function isTablet() {\n return getClientHints().deviceType === 'tablet';\n}\n\nexport function isBeforeDataFetch<K, D>(data: DataState<K, D>) {\n return data.sizePrecision === 'atLeast' && data.totalSize === 0;\n}\n\nexport function isSearchTextEmptyOrUndefined(searchText?: string) {\n return searchText === undefined || searchText.length === 0;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Ref, useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport { CurrentKeyDetail, DataState } from '../UNSAFE_Collection';\nimport { PositionData } from '../UNSAFE_Floating';\nimport { allTabbableElements } from '../utils/PRIVATE_tabbableUtils';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { isSimpleClick } from './eventUtils';\n\ntype UseSelectCommonProps<K, D> = {\n data?: DataState<K, D> | null;\n inputRef: Ref<HTMLElement>;\n isFocused?: boolean;\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n};\n\n/**\n * Hook that manages state and behavior for a Select* component. This hook creates state\n * variables and event listeners, returning properties to apply to components internally\n * rendered by a Select* component, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isFocused Specifies whether the component has focus.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n *\n * @returns Component state and event listeners.\n */\nexport function useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused,\n onFilter\n}: UseSelectCommonProps<K, D>) {\n const mainFieldRef = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [isDropdownOpen, setDropdownOpen] = useState(false);\n const [isDropdownAbove, setDropdownAbove] = useState(false);\n const [currentRow, setCurrentRow] = useState<{ rowKey?: K }>({\n rowKey: undefined\n });\n const [isUserFiltering, setUserFiltering] = useState(false);\n const [userInput, setUserInput] = useState<string>();\n const [searchText, setSearchText] = useState<string>();\n\n const [prevIsDropdownOpen, setPrevIsDropdownOpen] = useState(isDropdownOpen);\n const [prevIsFocused, setPrevIsFocused] = useState(isFocused);\n const [prevIsUserFiltering, setPrevIsUserFiltering] = useState(isUserFiltering);\n\n const onMouseDown = useCallback(\n (event: MouseEvent) => {\n // const target = event.target as HTMLElement;\n if (event.defaultPrevented || !isSimpleClick(event)) {\n return;\n }\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n // this is needed to focus the input when clicking on the inside label when there is no\n // value; otherwise the component looks focused but doesn't actually have physical focus\n setTimeout(function () {\n inputRef.current?.focus();\n }, 0);\n },\n [inputRef, isDropdownOpen]\n );\n\n const handleDropdownArrowClick = useCallback(() => {\n setDropdownOpen(!isDropdownOpen);\n\n // focus the input so that if the user Tabs afterwards, it loses focus and the dropdown closes\n inputRef.current?.focus();\n }, [inputRef, isDropdownOpen]);\n\n const handleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n switch (event?.type) {\n case 'keydown':\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.ESC:\n // focus the input when the user cancels out of the dropdown\n inputRef.current?.focus();\n break;\n default:\n break;\n }\n break;\n case 'mousedown':\n // if focus is in the dropdown, focus the input before the dropdown is hidden so that\n // focus will transfer correctly when the target is not focusable;\n // otherwise the text cursor appears in the input again\n if (dropdownRef.current?.contains(document.activeElement)) {\n inputRef.current?.focus();\n }\n break;\n default:\n break;\n }\n }\n },\n [inputRef, isDropdownOpen]\n );\n\n const handleDropdownPosition = useCallback((data: PositionData) => {\n setDropdownAbove(data.placement.startsWith('top'));\n }, []);\n\n const getDropdownTabbableElems = useCallback(() => {\n return isDropdownOpen && dropdownRef.current\n ? allTabbableElements(dropdownRef.current)\n : undefined;\n }, [isDropdownOpen]);\n\n const handleUpDownArrowKeys = useCallback(\n (event: KeyboardEvent) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n } else {\n // JET-64909 - focus / 'current' dropped when arrow keying during loading\n // Transfer physical focus into the dropdown only if the data is present and the dropdown\n // has rendered the data. Otherwise, keep the focus in the field.\n if (data != null) {\n const tabbableElems = getDropdownTabbableElems();\n tabbableElems?.[0]?.focus();\n\n // if there is no current item set, make the first item current\n if (currentRow.rowKey === undefined) {\n setCurrentRow({ rowKey: data.data[0]?.metadata?.key });\n }\n }\n }\n\n // prevent the page from scrolling\n event.preventDefault();\n },\n [currentRow, data, getDropdownTabbableElems, isDropdownOpen]\n );\n\n const handleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // const target = event.target as HTMLElement;\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.PAGE_UP:\n case KEYS.PAGE_DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n\n return;\n\n case KEYS.UP:\n case KEYS.DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n break;\n\n case KEYS.ESC:\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n event.preventDefault();\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to stop editing the row when we close\n // the dropdown\n event.stopPropagation();\n }\n break;\n\n default:\n break;\n }\n },\n [isDropdownOpen]\n );\n\n const handleMainFieldKeyUp = useCallback(\n (event: KeyboardEvent) => {\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.UP:\n case KEYS.DOWN:\n handleUpDownArrowKeys(event);\n break;\n\n default:\n break;\n }\n },\n [handleUpDownArrowKeys]\n );\n\n const handleInput = useCallback(\n (detail: ValueUpdateDetail<string>) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n setUserFiltering(true);\n setUserInput(detail.value);\n const str = detail.value;\n setSearchText(str);\n onFilter?.({ searchText: str });\n },\n [isDropdownOpen, onFilter]\n );\n\n const onCurrentKeyChange = useCallback((detail: CurrentKeyDetail<K>) => {\n setCurrentRow({ rowKey: detail.value });\n }, []);\n\n const stopFiltering = useCallback(() => {\n setUserFiltering(false);\n setUserInput('');\n setSearchText('');\n }, []);\n\n // the user is not actively filtering if the dropdown is closed and the component doesn't\n // have focus\n if (\n prevIsDropdownOpen !== isDropdownOpen ||\n prevIsFocused !== isFocused ||\n prevIsUserFiltering !== isUserFiltering\n ) {\n if (!isDropdownOpen && !isFocused && isUserFiltering) {\n stopFiltering();\n }\n }\n\n // need to call onFilter with undefined searchText when the dropdown opens and the\n // user is NOT filtering\n useEffect(() => {\n if (isDropdownOpen && !isUserFiltering) {\n onFilter?.({ searchText: undefined });\n }\n }, [isDropdownOpen, isUserFiltering, onFilter]);\n\n // when the dropdown closes, reset the isDropdownAbove flag\n if (prevIsDropdownOpen !== isDropdownOpen) {\n if (!isDropdownOpen) {\n setDropdownAbove(false);\n }\n setPrevIsDropdownOpen(isDropdownOpen);\n }\n\n if (prevIsFocused !== isFocused) {\n setPrevIsFocused(isFocused);\n }\n if (prevIsUserFiltering !== isUserFiltering) {\n setPrevIsUserFiltering(isUserFiltering);\n }\n\n return {\n currentRow,\n dropdownRef,\n getDropdownTabbableElems,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss,\n handleDropdownPosition,\n handleInput,\n handleMainFieldKeyDown,\n handleMainFieldKeyUp,\n handleUpDownArrowKeys,\n isDropdownAbove,\n isDropdownOpen,\n // the field should remain to look focused while the dropdown is open,\n // in case physical focus is in the dropdown\n isFocused: isFocused || isDropdownOpen,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n setCurrentRow,\n setDropdownOpen,\n setUserInput,\n stopFiltering,\n userInput\n };\n}\n"],"names":["_jsxs","_jsx","DropdownArrowIcon"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/* @oracle/oraclejet-preact: undefined */
|
|
2
2
|
import { m as mergeProps } from './mergeProps-88ea8306.js';
|
|
3
3
|
import { u as useChartDataCursor } from './useChartDataCursor-8e78a79f.js';
|
|
4
|
-
import { u as useChartDatatip } from './useChartDatatip-
|
|
4
|
+
import { u as useChartDatatip } from './useChartDatatip-b6b2b00a.js';
|
|
5
5
|
import { g as getInfo } from './eventsUtils-d544e874.js';
|
|
6
6
|
import './accUtils-dc32d20b.js';
|
|
7
7
|
import { u as useChartDrill } from './useChartDrill-e20d7ae5.js';
|
|
8
|
-
import { u as useSelection } from './useSelection-
|
|
8
|
+
import { u as useSelection } from './useSelection-c12f7802.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* @license
|
|
@@ -97,4 +97,4 @@ function useSelectDrill({ selectionMode, selection, onChange, rootRef, drilling,
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
export { useSelectDrill as a, useChartDatatipAndCursor as u };
|
|
100
|
-
//# sourceMappingURL=useSelectDrill-
|
|
100
|
+
//# sourceMappingURL=useSelectDrill-9ce5bccf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelectDrill-
|
|
1
|
+
{"version":3,"file":"useSelectDrill-9ce5bccf.js","sources":["../../src/hooks/PRIVATE_useChartEvents/useDatatipAndCursor.ts","../../src/hooks/PRIVATE_useChartEvents/useSelectDrill.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { mergeProps } from '../../utils/UNSAFE_mergeProps';\nimport { useChartDataCursor } from '../PRIVATE_useChartDataCursor';\nimport { useChartDatatip } from '../PRIVATE_useChartDatatip';\nimport { ChartItemData } from '../../utils/UNSAFE_visTypes/chart';\n\ntype DataCursorProps = Parameters<typeof useChartDataCursor>[0];\ntype DatatipProps<K extends string | number, D extends ChartItemData<K>> = Parameters<\n typeof useChartDatatip<K, D>\n>[0];\n\nexport function useChartDatatipAndCursor<K extends string | number, D extends ChartItemData<K>>({\n series,\n groups,\n width,\n height,\n findNearest,\n getMarkerInfo,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorPosition,\n dataCursorStyle,\n hoveredItemInfo,\n focusedItemInfo,\n getDataItem,\n getDataItemPos,\n datatip,\n valueFormats,\n isHoriz,\n xScale,\n yScale,\n plotAreaSpace,\n timeAxisType,\n touchResponse,\n isDisabled\n}: DataCursorProps & DatatipProps<K, D>) {\n const { datatipContent, datatipProps } = useChartDatatip<K, D>({\n series,\n groups,\n width,\n height,\n isDataCursorEnabled,\n dataCursorPosition,\n hoveredItemInfo,\n getDataItem,\n getDataItemPos,\n focusedItemInfo,\n datatip,\n valueFormats,\n isHoriz,\n xScale,\n findNearest,\n timeAxisType,\n touchResponse,\n isDisabled\n });\n\n const { dataCursorContent, dataCursorProps } = useChartDataCursor({\n touchResponse,\n findNearest,\n dataCursorPosition,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorStyle,\n isHoriz,\n getMarkerInfo,\n focusedItemInfo,\n plotAreaSpace,\n yScale,\n xScale,\n getDataItemPos\n });\n\n return {\n datatipContent,\n dataCursorContent,\n datatipProps: mergeProps(dataCursorProps, datatipProps)\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { getInfo } from '../../utils/UNSAFE_visUtils';\nimport { useChartDrill } from '../PRIVATE_useChartDrill';\nimport { useSelection } from '../PRIVATE_useVisSelection/useSelection';\nimport { mergeProps } from '../../utils/UNSAFE_mergeProps';\nimport { ChartItemData } from '../../utils/UNSAFE_visTypes/chart';\n\ntype DrillProps<K, D extends ChartItemData<K>> = Parameters<typeof useChartDrill<K, D>>[0];\n\ntype SelectionProps<K, D> = {\n selection: K[];\n onChange?: (detail: { ids: K[]; data: (D | undefined)[] }) => void;\n getDataById: (id: K) => D | undefined;\n};\n\nexport function useSelectDrill<K, D extends ChartItemData<K>>({\n selectionMode,\n selection,\n onChange,\n rootRef,\n drilling,\n onItemDrill,\n onGroupDrill,\n focusedGroupInfo,\n focusedItemInfo,\n groups,\n getDataItem,\n getDataById\n}: DrillProps<K, D> & SelectionProps<K, D>) {\n const idExtracter = (event: Event): K | undefined => {\n const isItemFocused = focusedItemInfo.isCurrent;\n const info =\n isItemFocused && event.type === 'keyup'\n ? focusedItemInfo\n : getInfo(rootRef, event.target as HTMLElement);\n return info && info.seriesIndex != null && info.groupIndex != null\n ? getDataItem(info.seriesIndex, info.groupIndex)?.id\n : undefined;\n };\n\n const { selectionProps, selectionContent } = useSelection<K, D>({\n idExtracter,\n isDrillEnabled: drilling === 'on',\n selection,\n selectionMode,\n onChange,\n getDataById\n });\n\n const drillProps = useChartDrill<K, D>({\n rootRef,\n selectionMode,\n drilling,\n focusedItemInfo,\n focusedGroupInfo,\n groups,\n getDataItem,\n onItemDrill,\n onGroupDrill\n });\n\n return { selectDrillProps: mergeProps(selectionProps, drillProps), selectionContent };\n}\n"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;AAMG;AAYG,SAAU,wBAAwB,CAAwD,EAC9F,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,eAAe,EACf,WAAW,EACX,cAAc,EACd,OAAO,EACP,YAAY,EACZ,OAAO,EACP,MAAM,EACN,MAAM,EACN,aAAa,EACb,YAAY,EACZ,aAAa,EACb,UAAU,EAC2B,EAAA;AACrC,IAAA,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,eAAe,CAAO;QAC7D,MAAM;QACN,MAAM;QACN,KAAK;QACL,MAAM;QACN,mBAAmB;QACnB,kBAAkB;QAClB,eAAe;QACf,WAAW;QACX,cAAc;QACd,eAAe;QACf,OAAO;QACP,YAAY;QACZ,OAAO;QACP,MAAM;QACN,WAAW;QACX,YAAY;QACZ,aAAa;QACb,UAAU;AACX,KAAA,CAAC,CAAC;AAEH,IAAA,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAC;QAChE,aAAa;QACb,WAAW;QACX,kBAAkB;QAClB,0BAA0B;QAC1B,mBAAmB;QACnB,eAAe;QACf,OAAO;QACP,aAAa;QACb,eAAe;QACf,aAAa;QACb,MAAM;QACN,MAAM;QACN,cAAc;AACf,KAAA,CAAC,CAAC;IAEH,OAAO;QACL,cAAc;QACd,iBAAiB;AACjB,QAAA,YAAY,EAAE,UAAU,CAAC,eAAe,EAAE,YAAY,CAAC;KACxD,CAAC;AACJ;;ACrFA;;;;;;AAMG;AAgBG,SAAU,cAAc,CAAgC,EAC5D,aAAa,EACb,SAAS,EACT,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,MAAM,EACN,WAAW,EACX,WAAW,EAC6B,EAAA;AACxC,IAAA,MAAM,WAAW,GAAG,CAAC,KAAY,KAAmB;AAClD,QAAA,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC;QAChD,MAAM,IAAI,GACR,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;AACrC,cAAE,eAAe;cACf,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,MAAqB,CAAC,CAAC;AACpD,QAAA,OAAO,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI;AAChE,cAAE,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;cAClD,SAAS,CAAC;AAChB,KAAC,CAAC;AAEF,IAAA,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,YAAY,CAAO;QAC9D,WAAW;QACX,cAAc,EAAE,QAAQ,KAAK,IAAI;QACjC,SAAS;QACT,aAAa;QACb,QAAQ;QACR,WAAW;AACZ,KAAA,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,aAAa,CAAO;QACrC,OAAO;QACP,aAAa;QACb,QAAQ;QACR,eAAe;QACf,gBAAgB;QAChB,MAAM;QACN,WAAW;QACX,WAAW;QACX,YAAY;AACb,KAAA,CAAC,CAAC;AAEH,IAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;AACxF;;;;"}
|
|
@@ -4,12 +4,12 @@ import { i as isEqual } from './eventsUtils-d544e874.js';
|
|
|
4
4
|
import { jsx } from 'preact/jsx-runtime';
|
|
5
5
|
import { B as BaseButton } from './BaseButton-5b2791b1.js';
|
|
6
6
|
import { T as Text } from './Text-da8588ce.js';
|
|
7
|
-
import { u as useTranslationBundle } from './useTranslationBundle-
|
|
7
|
+
import { u as useTranslationBundle } from './useTranslationBundle-cd815e10.js';
|
|
8
8
|
import { clearButtonStyles } from './hooks/PRIVATE_useVisSelection/themes/ClearSelection.css.js';
|
|
9
|
-
import { L as Layer } from './Layer-
|
|
9
|
+
import { L as Layer } from './Layer-9b06412e.js';
|
|
10
10
|
import 'preact/compat';
|
|
11
|
-
import './LayerHost-
|
|
12
|
-
import { F as Floating } from './Floating-
|
|
11
|
+
import './LayerHost-45f545d7.js';
|
|
12
|
+
import { F as Floating } from './Floating-9703160e.js';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Clear selection button component
|
|
@@ -178,4 +178,4 @@ function useSelection({ selection = [], selectionMode = 'none', idExtracter, onC
|
|
|
178
178
|
}
|
|
179
179
|
|
|
180
180
|
export { useSelection as u };
|
|
181
|
-
//# sourceMappingURL=useSelection-
|
|
181
|
+
//# sourceMappingURL=useSelection-c12f7802.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelection-48f572e5.js","sources":["../../src/hooks/PRIVATE_useVisSelection/ClearSelectionButton.tsx","../../src/hooks/PRIVATE_useVisSelection/useClearSelection.tsx","../../src/hooks/PRIVATE_useVisSelection/useSelection.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { BaseButton } from '../../UNSAFE_BaseButton';\nimport { Text } from '#UNSAFE_Text';\nimport { useTranslationBundle } from '../UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../../resources/nls/bundle';\nimport { clearButtonStyles } from './themes/ClearSelection.css';\n\ntype Props = {\n onAction: () => void;\n};\n\n/**\n * Clear selection button component\n */\nexport const ClearSelectionButton = ({ onAction }: Props) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const clearSelectionLabel = `${translations.vis_clearSelection()}`;\n return (\n <div class={clearButtonStyles.base}>\n <BaseButton\n styling={['default']}\n elementDetails={{ type: 'span', isFocusable: false, isLabel: true }}\n variant=\"outlined\"\n onAction={onAction}>\n <Text truncation={'ellipsis'} weight={'inherit'}>\n {clearSelectionLabel}\n </Text>\n </BaseButton>\n </div>\n );\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useRef, useState } from 'preact/hooks';\nimport { ClearSelectionButton } from './ClearSelectionButton';\nimport { Layer } from '../../UNSAFE_Layer';\nimport { Floating } from '../../UNSAFE_Floating';\n\n/**\n * The default offset for clear selection mainAxis.\n */\nconst DEFAULT_OFFSET = 18;\ntype Props = {\n clearSelection: () => void;\n};\ntype SelectionMode = 'none' | 'single' | 'multiple';\n\nexport function useClearSelection<K>({ clearSelection }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n const coordinates = useRef({ x: 0, y: 0 });\n\n const tryToggleClearButton = (\n event: PointerEvent,\n key: K | undefined,\n selectionMode: SelectionMode,\n selectedIds: Set<K>\n ) => {\n if (\n event.pointerType === 'touch' &&\n key === undefined &&\n selectionMode === 'multiple' &&\n selectedIds.size > 1\n ) {\n setIsVisible(!isVisible);\n coordinates.current = { x: event.clientX, y: event.clientY };\n return true;\n }\n return false;\n };\n\n const offsetValue = { mainAxis: 2 * DEFAULT_OFFSET };\n const anchorRef = { current: coordinates.current };\n\n const clearSelectionContent = isVisible ? (\n <Layer>\n <Floating\n anchorRef={anchorRef}\n offsetValue={offsetValue}\n placement=\"top\"\n flipOptions={{ crossAxis: false, mainAxis: false }}\n shiftOptions={{ crossAxis: true, mainAxis: true }}>\n <ClearSelectionButton\n onAction={() => {\n setIsVisible(false);\n clearSelection();\n }}\n />\n </Floating>\n </Layer>\n ) : null;\n\n return {\n clearSelectionContent,\n tryToggleClearButton\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback, useRef } from 'preact/hooks';\nimport { isEqual } from '../../utils/UNSAFE_visUtils/eventsUtils';\nimport { useClearSelection } from './useClearSelection';\n\nexport type SelectionMode = 'none' | 'single' | 'multiple';\nexport type SelectionDetail<K, D> = {\n ids: K[];\n data: (D | undefined)[];\n};\ntype SelectionBehavior = 'toggle' | 'replace';\n\nconst NAVKEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/**\n * The constant that defines time to wait to change selection after pointer up is fired.\n * If double click didn't happen\n */\nconst DBLCLICK_THRESHOLD = 250;\n\n/**\n * Handles the selection.\n * @param itemId The id of the item.\n * @param selectedIds The set of selected item ids.\n * @param selectionMode The selection mode.\n * @param selectionBehavior The selection behavior. If 'toggle', unselected item will be selected and\n * vice versa. If 'replace', the item will replace the previous selection.\n * @param getDataById The callback to get item data from idDataMap.\n * @param onChange The callback to trigger when selection changes.\n */\nconst handleSelect = <K, D>(\n itemId: K | undefined,\n selectedIds: Set<K>,\n selectionMode: SelectionMode,\n selectionBehavior: SelectionBehavior,\n getDataById: (id: K) => D | undefined,\n onChange?: (detail: SelectionDetail<K, D>) => void\n) => {\n let ids = new Set<K>([]);\n if (itemId != null) {\n ids = new Set(selectedIds);\n const isSelected = selectedIds.has(itemId);\n\n if (selectionBehavior === 'toggle') {\n if (isSelected) {\n ids.delete(itemId);\n } else if (selectionMode === 'single') {\n ids = new Set([itemId]); // only selection\n } else {\n ids.add(itemId); // add to selection in \"multiple\" selectionMode\n }\n } else if (!isSelected) {\n // In \"multiple\" selection mode, only replace selection if unselected item is selected.\n // In \"single\" selection mode, only need to replace if unselected item is selected.\n ids = new Set([itemId]);\n }\n }\n\n if (!isEqual<K>(ids, selectedIds)) {\n onChange?.({ ids: [...ids], data: [...ids].map(getDataById) });\n }\n};\n\ntype Props<K, D> = {\n selection?: K[];\n selectionMode?: SelectionMode;\n idExtracter: (event: Event) => K | undefined;\n onChange?: (detail: SelectionDetail<K, D>) => void;\n isKeyboardSelection?: (event: KeyboardEvent) => boolean;\n isDrillEnabled?: boolean;\n getDataById: (id: K) => D | undefined;\n};\n\n/**\n * The hook to handle the selection behavior in vizualization components.\n */\nexport function useSelection<K, D>({\n selection = [],\n selectionMode = 'none',\n idExtracter,\n onChange,\n isDrillEnabled,\n isKeyboardSelection,\n getDataById\n}: Props<K, D>) {\n const setTimeOutRef = useRef<ReturnType<typeof setTimeout>>();\n\n const clearSelection = () => {\n handleSelect<K, D>(\n undefined,\n new Set(selection),\n selectionMode,\n 'replace',\n getDataById,\n onChange\n );\n };\n\n const { clearSelectionContent, tryToggleClearButton } = useClearSelection<K>({ clearSelection });\n\n const onPointerUp = useCallback(\n (event: PointerEvent) => {\n const selectedIds = new Set(selection);\n if (setTimeOutRef.current && isDrillEnabled) {\n clearTimeout(setTimeOutRef.current);\n setTimeOutRef.current = undefined;\n // doubleClick happened\n return;\n }\n\n const key = idExtracter(event);\n\n if (tryToggleClearButton(event, key, selectionMode, selectedIds)) {\n return;\n }\n\n const isMeta = event.metaKey;\n const isCtrl = event.ctrlKey;\n // If there was a previous pointerUp event that occurred that should prevent selection,\n // event.preventDefault was called\n if (event.defaultPrevented || (key == null && (isMeta || isCtrl))) {\n return;\n }\n\n // TODO: Encorporate more logic of dvt.EventManager.prototype._onClick\n // this is a simple version of EventManager.prototype._onClick. Currently we are not checking\n // for event.pageX, event.pageY to determine if they are exactly clicked on the same point.\n // for now, the assumption is that if the pointerups are within 250ms, they are for a same double click.\n if (isDrillEnabled) {\n setTimeOutRef.current = setTimeout(() => {\n // double pointer up didn't happen\n handleSelect<K, D>(\n key,\n selectedIds,\n selectionMode,\n isMeta || isCtrl || event.pointerType === 'touch' ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n setTimeOutRef.current = undefined;\n }, DBLCLICK_THRESHOLD);\n } else {\n handleSelect<K, D>(\n key,\n selectedIds,\n selectionMode,\n isMeta || isCtrl || event.pointerType === 'touch' ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n }\n },\n [\n selection,\n selectionMode,\n onChange,\n idExtracter,\n isDrillEnabled,\n getDataById,\n tryToggleClearButton\n ]\n );\n\n const onContextMenu = useCallback(\n (event: MouseEvent) => {\n const key = idExtracter(event);\n const isCtrl = event.ctrlKey;\n handleSelect<K, D>(\n key,\n new Set(selection),\n selectionMode,\n isCtrl ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n },\n [selection, selectionMode, onChange, idExtracter, getDataById]\n );\n\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n const isShift = event.shiftKey;\n const isSpaceCtrl = event.ctrlKey && event.key === ' ';\n const isArrowKey = NAVKEYS.indexOf(event.key) !== -1;\n const itemKey = idExtracter(event);\n\n if (isArrowKey || isSpaceCtrl || (isKeyboardSelection && isKeyboardSelection(event))) {\n const behavior = isShift || isSpaceCtrl ? 'toggle' : 'replace';\n handleSelect<K, D>(\n itemKey,\n new Set(selection),\n selectionMode,\n behavior,\n getDataById,\n onChange\n );\n }\n },\n [selection, selectionMode, onChange, idExtracter, isKeyboardSelection, getDataById]\n );\n\n return {\n selectionContent: clearSelectionContent,\n selectionProps:\n selectionMode === 'none' || onChange == null\n ? {}\n : {\n onKeyUp,\n onContextMenu,\n onPointerUp\n }\n };\n}\n"],"names":["_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useSelection-c12f7802.js","sources":["../../src/hooks/PRIVATE_useVisSelection/ClearSelectionButton.tsx","../../src/hooks/PRIVATE_useVisSelection/useClearSelection.tsx","../../src/hooks/PRIVATE_useVisSelection/useSelection.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { BaseButton } from '../../UNSAFE_BaseButton';\nimport { Text } from '#UNSAFE_Text';\nimport { useTranslationBundle } from '../UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../../resources/nls/bundle';\nimport { clearButtonStyles } from './themes/ClearSelection.css';\n\ntype Props = {\n onAction: () => void;\n};\n\n/**\n * Clear selection button component\n */\nexport const ClearSelectionButton = ({ onAction }: Props) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const clearSelectionLabel = `${translations.vis_clearSelection()}`;\n return (\n <div class={clearButtonStyles.base}>\n <BaseButton\n styling={['default']}\n elementDetails={{ type: 'span', isFocusable: false, isLabel: true }}\n variant=\"outlined\"\n onAction={onAction}>\n <Text truncation={'ellipsis'} weight={'inherit'}>\n {clearSelectionLabel}\n </Text>\n </BaseButton>\n </div>\n );\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useRef, useState } from 'preact/hooks';\nimport { ClearSelectionButton } from './ClearSelectionButton';\nimport { Layer } from '../../UNSAFE_Layer';\nimport { Floating } from '../../UNSAFE_Floating';\n\n/**\n * The default offset for clear selection mainAxis.\n */\nconst DEFAULT_OFFSET = 18;\ntype Props = {\n clearSelection: () => void;\n};\ntype SelectionMode = 'none' | 'single' | 'multiple';\n\nexport function useClearSelection<K>({ clearSelection }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n const coordinates = useRef({ x: 0, y: 0 });\n\n const tryToggleClearButton = (\n event: PointerEvent,\n key: K | undefined,\n selectionMode: SelectionMode,\n selectedIds: Set<K>\n ) => {\n if (\n event.pointerType === 'touch' &&\n key === undefined &&\n selectionMode === 'multiple' &&\n selectedIds.size > 1\n ) {\n setIsVisible(!isVisible);\n coordinates.current = { x: event.clientX, y: event.clientY };\n return true;\n }\n return false;\n };\n\n const offsetValue = { mainAxis: 2 * DEFAULT_OFFSET };\n const anchorRef = { current: coordinates.current };\n\n const clearSelectionContent = isVisible ? (\n <Layer>\n <Floating\n anchorRef={anchorRef}\n offsetValue={offsetValue}\n placement=\"top\"\n flipOptions={{ crossAxis: false, mainAxis: false }}\n shiftOptions={{ crossAxis: true, mainAxis: true }}>\n <ClearSelectionButton\n onAction={() => {\n setIsVisible(false);\n clearSelection();\n }}\n />\n </Floating>\n </Layer>\n ) : null;\n\n return {\n clearSelectionContent,\n tryToggleClearButton\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useCallback, useRef } from 'preact/hooks';\nimport { isEqual } from '../../utils/UNSAFE_visUtils/eventsUtils';\nimport { useClearSelection } from './useClearSelection';\n\nexport type SelectionMode = 'none' | 'single' | 'multiple';\nexport type SelectionDetail<K, D> = {\n ids: K[];\n data: (D | undefined)[];\n};\ntype SelectionBehavior = 'toggle' | 'replace';\n\nconst NAVKEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/**\n * The constant that defines time to wait to change selection after pointer up is fired.\n * If double click didn't happen\n */\nconst DBLCLICK_THRESHOLD = 250;\n\n/**\n * Handles the selection.\n * @param itemId The id of the item.\n * @param selectedIds The set of selected item ids.\n * @param selectionMode The selection mode.\n * @param selectionBehavior The selection behavior. If 'toggle', unselected item will be selected and\n * vice versa. If 'replace', the item will replace the previous selection.\n * @param getDataById The callback to get item data from idDataMap.\n * @param onChange The callback to trigger when selection changes.\n */\nconst handleSelect = <K, D>(\n itemId: K | undefined,\n selectedIds: Set<K>,\n selectionMode: SelectionMode,\n selectionBehavior: SelectionBehavior,\n getDataById: (id: K) => D | undefined,\n onChange?: (detail: SelectionDetail<K, D>) => void\n) => {\n let ids = new Set<K>([]);\n if (itemId != null) {\n ids = new Set(selectedIds);\n const isSelected = selectedIds.has(itemId);\n\n if (selectionBehavior === 'toggle') {\n if (isSelected) {\n ids.delete(itemId);\n } else if (selectionMode === 'single') {\n ids = new Set([itemId]); // only selection\n } else {\n ids.add(itemId); // add to selection in \"multiple\" selectionMode\n }\n } else if (!isSelected) {\n // In \"multiple\" selection mode, only replace selection if unselected item is selected.\n // In \"single\" selection mode, only need to replace if unselected item is selected.\n ids = new Set([itemId]);\n }\n }\n\n if (!isEqual<K>(ids, selectedIds)) {\n onChange?.({ ids: [...ids], data: [...ids].map(getDataById) });\n }\n};\n\ntype Props<K, D> = {\n selection?: K[];\n selectionMode?: SelectionMode;\n idExtracter: (event: Event) => K | undefined;\n onChange?: (detail: SelectionDetail<K, D>) => void;\n isKeyboardSelection?: (event: KeyboardEvent) => boolean;\n isDrillEnabled?: boolean;\n getDataById: (id: K) => D | undefined;\n};\n\n/**\n * The hook to handle the selection behavior in vizualization components.\n */\nexport function useSelection<K, D>({\n selection = [],\n selectionMode = 'none',\n idExtracter,\n onChange,\n isDrillEnabled,\n isKeyboardSelection,\n getDataById\n}: Props<K, D>) {\n const setTimeOutRef = useRef<ReturnType<typeof setTimeout>>();\n\n const clearSelection = () => {\n handleSelect<K, D>(\n undefined,\n new Set(selection),\n selectionMode,\n 'replace',\n getDataById,\n onChange\n );\n };\n\n const { clearSelectionContent, tryToggleClearButton } = useClearSelection<K>({ clearSelection });\n\n const onPointerUp = useCallback(\n (event: PointerEvent) => {\n const selectedIds = new Set(selection);\n if (setTimeOutRef.current && isDrillEnabled) {\n clearTimeout(setTimeOutRef.current);\n setTimeOutRef.current = undefined;\n // doubleClick happened\n return;\n }\n\n const key = idExtracter(event);\n\n if (tryToggleClearButton(event, key, selectionMode, selectedIds)) {\n return;\n }\n\n const isMeta = event.metaKey;\n const isCtrl = event.ctrlKey;\n // If there was a previous pointerUp event that occurred that should prevent selection,\n // event.preventDefault was called\n if (event.defaultPrevented || (key == null && (isMeta || isCtrl))) {\n return;\n }\n\n // TODO: Encorporate more logic of dvt.EventManager.prototype._onClick\n // this is a simple version of EventManager.prototype._onClick. Currently we are not checking\n // for event.pageX, event.pageY to determine if they are exactly clicked on the same point.\n // for now, the assumption is that if the pointerups are within 250ms, they are for a same double click.\n if (isDrillEnabled) {\n setTimeOutRef.current = setTimeout(() => {\n // double pointer up didn't happen\n handleSelect<K, D>(\n key,\n selectedIds,\n selectionMode,\n isMeta || isCtrl || event.pointerType === 'touch' ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n setTimeOutRef.current = undefined;\n }, DBLCLICK_THRESHOLD);\n } else {\n handleSelect<K, D>(\n key,\n selectedIds,\n selectionMode,\n isMeta || isCtrl || event.pointerType === 'touch' ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n }\n },\n [\n selection,\n selectionMode,\n onChange,\n idExtracter,\n isDrillEnabled,\n getDataById,\n tryToggleClearButton\n ]\n );\n\n const onContextMenu = useCallback(\n (event: MouseEvent) => {\n const key = idExtracter(event);\n const isCtrl = event.ctrlKey;\n handleSelect<K, D>(\n key,\n new Set(selection),\n selectionMode,\n isCtrl ? 'toggle' : 'replace',\n getDataById,\n onChange\n );\n },\n [selection, selectionMode, onChange, idExtracter, getDataById]\n );\n\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n const isShift = event.shiftKey;\n const isSpaceCtrl = event.ctrlKey && event.key === ' ';\n const isArrowKey = NAVKEYS.indexOf(event.key) !== -1;\n const itemKey = idExtracter(event);\n\n if (isArrowKey || isSpaceCtrl || (isKeyboardSelection && isKeyboardSelection(event))) {\n const behavior = isShift || isSpaceCtrl ? 'toggle' : 'replace';\n handleSelect<K, D>(\n itemKey,\n new Set(selection),\n selectionMode,\n behavior,\n getDataById,\n onChange\n );\n }\n },\n [selection, selectionMode, onChange, idExtracter, isKeyboardSelection, getDataById]\n );\n\n return {\n selectionContent: clearSelectionContent,\n selectionProps:\n selectionMode === 'none' || onChange == null\n ? {}\n : {\n onKeyUp,\n onContextMenu,\n onPointerUp\n }\n };\n}\n"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* @oracle/oraclejet-preact: undefined */
|
|
2
2
|
import { useRef, useCallback } from 'preact/hooks';
|
|
3
3
|
import { i as isKeyDefined, c as containsKey, a as addKey, r as removeKey } from './keys-df361af9.js';
|
|
4
|
-
import { u as useUser } from './useUser-
|
|
4
|
+
import { u as useUser } from './useUser-99920e02.js';
|
|
5
5
|
import { g as getIsSelectionPending } from './textSelectionUtils-a6554a42.js';
|
|
6
6
|
|
|
7
7
|
const arrowKeys = new Set(['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']);
|
|
@@ -238,4 +238,4 @@ function useSelection(keyExtractor, selectedKeys, selectionMode, isSelectionRequ
|
|
|
238
238
|
}
|
|
239
239
|
|
|
240
240
|
export { useSelection as u };
|
|
241
|
-
//# sourceMappingURL=useSelection-
|
|
241
|
+
//# sourceMappingURL=useSelection-ce0f9a43.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelection-a098b3af.js","sources":["../../src/hooks/PRIVATE_useSelection/useSelection.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { Keys, containsKey, isKeyDefined, addKey, removeKey } from '../../utils/UNSAFE_keys';\nimport { SelectionDetail, SelectionMode } from '../../UNSAFE_Collection';\nimport { useUser } from '../UNSAFE_useUser';\nimport { getIsSelectionPending } from '#utils/PRIVATE_textSelectionUtils';\n\n/**\n * Type for selection behavior. See useMultipleSelection hook for details.\n */\nexport const behaviors = ['toggle', 'replace'] as const;\nexport type SelectionBehavior = (typeof behaviors)[number];\n\n/**\n * Type for payload of selection range change event handler\n */\nexport type SelectionRangeDetail<K> = {\n value: { start: K; end: K };\n eventType?: 'shiftSpace' | 'shiftClick' | 'shiftArrowKeys';\n};\n\nconst arrowKeys = new Set(['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']);\n\n/**\n * To get the event type during range selection which is triggered by either of the following gestures\n * shift+space, shift+click, and shift+arrowKeys\n * @param event\n */\nconst getEventType = (event: MouseEvent | KeyboardEvent) => {\n if (event.type === 'click') {\n return 'shiftClick';\n } else if (event.type === 'keyup' && (event as KeyboardEvent).key === ' ') {\n return 'shiftSpace';\n } else if (event.type === 'keydown' && arrowKeys.has((event as KeyboardEvent).key)) {\n return 'shiftArrowKeys';\n }\n return undefined;\n};\n\nconst isShiftModeSupported = <K>(\n anchorKey: K,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n isClickEvent: boolean\n) => {\n return selectionMode === 'multiple' && (isClickEvent || containsKey(selectedKeys, anchorKey));\n};\n\nconst handleSelect = <K>(\n event: MouseEvent | KeyboardEvent,\n keyExtractor: (element: HTMLElement) => K | null,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n selectionBehavior: SelectionBehavior,\n isSelectionRequired: boolean,\n keyboardCursorRef: RefObject<K | undefined>,\n anchorKey?: K,\n onChange?: (detail: SelectionDetail<K>) => void,\n onRangeChange?: (detail: SelectionRangeDetail<K>) => void\n) => {\n const itemKey = keyExtractor(event.target as HTMLElement);\n if (itemKey == null) {\n return;\n }\n\n // handle shift key selection\n if (\n event.shiftKey &&\n anchorKey !== undefined &&\n onRangeChange &&\n isShiftModeSupported(anchorKey, selectedKeys, selectionMode, event.type === 'click')\n ) {\n const selected = containsKey(selectedKeys, itemKey);\n const eventType = getEventType(event);\n if (selected && eventType === 'shiftSpace') {\n // during shift+space, deselect the item if it's already selected\n const keySet = removeKey(selectedKeys, itemKey, isSelectionRequired);\n onChange?.({ value: keySet, target: event.target });\n } else {\n onRangeChange({ value: { start: anchorKey, end: itemKey }, eventType });\n }\n // set keyboard selection cursor in case user extends with SHIFT+ARROW\n if (keyboardCursorRef) {\n keyboardCursorRef.current = itemKey;\n }\n return;\n }\n\n const selected = containsKey(selectedKeys, itemKey);\n let keySet = selectedKeys;\n if (!selected) {\n if (\n selectionMode === 'single' ||\n (event as KeyboardEvent).key === 'Enter' ||\n (selectionBehavior === 'replace' && !(event.ctrlKey || event.metaKey))\n ) {\n // should only contains this item key\n keySet = { all: false, keys: new Set([itemKey]) };\n } else {\n // add to existing selected keys\n keySet = addKey(selectedKeys, itemKey);\n }\n } else if ((event as KeyboardEvent).key !== 'Enter') {\n // no de-select for enter key\n if (\n selectionBehavior === 'toggle' ||\n event.ctrlKey ||\n event.metaKey ||\n (event as KeyboardEvent).key === ' '\n ) {\n // de-select only when ctrl/meta key is pressed or selectionBehavior is\n // explicitly set to toggle\n keySet = removeKey(selectedKeys, itemKey, isSelectionRequired);\n } else if (selectionMode === 'multiple' && (selectedKeys.all || selectedKeys.keys.size > 1)) {\n // in this case everything should be de-selected except for this key\n keySet = { all: false, keys: new Set([itemKey]) };\n }\n }\n\n // only invoke callback if there is really a change\n // note onSelectionChange should never be null here\n if (selectedKeys != keySet && onChange) {\n onChange({ value: keySet, target: event.target });\n if (event.type === 'click') {\n event.stopPropagation();\n }\n }\n};\n\n/**\n * Hook for handling various selection mode. This can be reuse by all Collection components.\n * @param keyExtractor function to extract the key based on provided element\n * @param selectedKeys the currently selected keys\n * @param selectionMode the selection mode\n * @param isSelectionRequired true if empty selected key is not allowed, false otherwise\n * @param selectionBehavior the selection behavior. If the value is 'toggle', then the key is\n * added/removed from the current selected keys. If the value is 'replace',\n * then the current selected keys are cleared first before the key is added\n * unless the ctrl/shift/meta key is pressed.\n * @param allowEnterKey whether enter key can be use to change selection.\n * @param onChange callback function that is invoked when selection has changed.\n * @param anchorKey the anchor key. Usually this is the same as current key except when shift key is pressed.\n * @param currentKey the current key\n * @param getVerticalPrevNextKey function to get the previous/next key in the vertical direction based on the current key\n * @param getHorizontalPrevNextKey function to get the previous/next key in the horizontal direction based on the current key\n * @param scrollToKey function to scroll the item with the key to be visible\n * @param onRangeChange callback function that is invoked when the selection range has changed.\n * @returns an event map that the consumer can register as event listeners\n */\nexport function useSelection<K>(\n keyExtractor: (element: HTMLElement) => K | null,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n isSelectionRequired: boolean,\n selectionBehavior: SelectionBehavior,\n allowEnterKey: boolean,\n onChange?: (detail: SelectionDetail<K>) => void,\n anchorKey?: K,\n currentKey?: K | undefined,\n getVerticalPrevNextKey?: (currentKey: K | undefined, isPrev: boolean) => () => K | null,\n getHorizontalPrevNextKey?: (currentKey: K | undefined, isPrev: boolean) => () => K | null,\n scrollToKey?: (key: K) => void,\n onRangeChange?: (detail: SelectionRangeDetail<K>) => void\n) {\n // ref to track the cursor for the SHIFT+ARROW keyboard selection separately than the anchor of the selection.\n const keyboardSelectionCursor = useRef<K>();\n\n const isTouchPointerRef = useRef<boolean>(false);\n\n const onPointerDown = useCallback(\n (event: PointerEvent) => {\n isTouchPointerRef.current = event.pointerType === 'touch';\n if (event.shiftKey && selectionMode === 'multiple') {\n //Avoid text selection on pointer down\n event.preventDefault();\n }\n },\n [isTouchPointerRef]\n );\n\n const onClick = useCallback(\n (event: MouseEvent) => {\n if (!getIsSelectionPending()) {\n handleSelect<K>(\n event,\n keyExtractor,\n selectedKeys,\n selectionMode,\n isTouchPointerRef.current ? 'toggle' : selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n currentKey,\n onChange,\n onRangeChange\n );\n if (!event.shiftKey) {\n // reset keyboard cursor when using mouse to select\n keyboardSelectionCursor.current = undefined;\n }\n }\n },\n [\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n currentKey,\n onChange,\n onRangeChange\n ]\n );\n\n // general keyboard events listen to keyUp for a11y\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n // older browser that we don't support returns 'Spacebar' for space key\n if (event.key === ' ' || (event.key === 'Enter' && allowEnterKey)) {\n handleSelect<K>(\n event,\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n anchorKey,\n onChange,\n event.shiftKey && event.key === ' ' ? onRangeChange : undefined\n );\n }\n },\n [\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n anchorKey,\n onChange,\n onRangeChange,\n allowEnterKey\n ]\n );\n\n const { direction } = useUser();\n\n // arrowKey events listen to keyDown so they can support holding them down\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // prevent default (propagation) for keyDown to space bar causing container to scroll\n if (event.key === ' ') {\n event.preventDefault();\n return;\n }\n\n const key = keyboardSelectionCursor.current || currentKey;\n const isRtl = direction === 'rtl';\n\n const keyHandlers: Record<string, (() => K | null) | undefined> = {\n ArrowUp: getVerticalPrevNextKey?.(key, true),\n ArrowDown: getVerticalPrevNextKey?.(key, false),\n ArrowLeft: getHorizontalPrevNextKey?.(key, !isRtl),\n ArrowRight: getHorizontalPrevNextKey?.(key, isRtl)\n };\n const isBothDirections = getVerticalPrevNextKey && getHorizontalPrevNextKey;\n if (Object.keys(keyHandlers).includes(event.key)) {\n if (event.shiftKey && scrollToKey && selectionMode === 'multiple') {\n //Avoid increasing range of selection text selection with arrow keys\n event.preventDefault();\n let keySet = selectedKeys;\n // on first selection event, set keyboard cursor to start at currentKey\n if (!keyboardSelectionCursor.current && isKeyDefined(currentKey)) {\n keySet = { all: false, keys: new Set([currentKey as K]) };\n }\n const newAnchorKey = keyHandlers[event.key];\n const cursorKey = newAnchorKey?.();\n if (cursorKey != null) {\n // keep visible\n scrollToKey(cursorKey);\n\n // if in 2D, use range selection to extend or subtract\n if (isBothDirections) {\n if (onRangeChange && currentKey != null) {\n onRangeChange({\n value: { start: currentKey, end: cursorKey },\n eventType: getEventType(event)\n });\n }\n } else {\n // extend selection\n if (!containsKey(keySet, cursorKey)) {\n keySet = addKey(keySet, cursorKey);\n // subtract from selection\n } else if (\n keyboardSelectionCursor.current != null &&\n keyboardSelectionCursor.current !== cursorKey\n ) {\n keySet = removeKey(keySet, keyboardSelectionCursor.current, isSelectionRequired);\n }\n if (selectedKeys != keySet && onChange) {\n onChange({ value: keySet, target: event.target });\n }\n }\n // update selection cursor\n keyboardSelectionCursor.current = cursorKey;\n }\n } else {\n // reset keyBoard on non-shifted arrow use as this interrupts the extend mode (and would make for messy logic that doesn't align with current Jet behavior)\n keyboardSelectionCursor.current = undefined;\n }\n }\n },\n [\n selectedKeys,\n isSelectionRequired,\n onChange,\n currentKey,\n getVerticalPrevNextKey,\n getHorizontalPrevNextKey,\n scrollToKey,\n direction,\n onRangeChange,\n selectionMode\n ]\n );\n\n const selectionProps =\n selectionMode === 'none' || onChange == null\n ? {}\n : { onPointerDown, onClick, onKeyDown, onKeyUp };\n return { selectionProps };\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useSelection-ce0f9a43.js","sources":["../../src/hooks/PRIVATE_useSelection/useSelection.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { Keys, containsKey, isKeyDefined, addKey, removeKey } from '../../utils/UNSAFE_keys';\nimport { SelectionDetail, SelectionMode } from '../../UNSAFE_Collection';\nimport { useUser } from '../UNSAFE_useUser';\nimport { getIsSelectionPending } from '#utils/PRIVATE_textSelectionUtils';\n\n/**\n * Type for selection behavior. See useMultipleSelection hook for details.\n */\nexport const behaviors = ['toggle', 'replace'] as const;\nexport type SelectionBehavior = (typeof behaviors)[number];\n\n/**\n * Type for payload of selection range change event handler\n */\nexport type SelectionRangeDetail<K> = {\n value: { start: K; end: K };\n eventType?: 'shiftSpace' | 'shiftClick' | 'shiftArrowKeys';\n};\n\nconst arrowKeys = new Set(['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']);\n\n/**\n * To get the event type during range selection which is triggered by either of the following gestures\n * shift+space, shift+click, and shift+arrowKeys\n * @param event\n */\nconst getEventType = (event: MouseEvent | KeyboardEvent) => {\n if (event.type === 'click') {\n return 'shiftClick';\n } else if (event.type === 'keyup' && (event as KeyboardEvent).key === ' ') {\n return 'shiftSpace';\n } else if (event.type === 'keydown' && arrowKeys.has((event as KeyboardEvent).key)) {\n return 'shiftArrowKeys';\n }\n return undefined;\n};\n\nconst isShiftModeSupported = <K>(\n anchorKey: K,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n isClickEvent: boolean\n) => {\n return selectionMode === 'multiple' && (isClickEvent || containsKey(selectedKeys, anchorKey));\n};\n\nconst handleSelect = <K>(\n event: MouseEvent | KeyboardEvent,\n keyExtractor: (element: HTMLElement) => K | null,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n selectionBehavior: SelectionBehavior,\n isSelectionRequired: boolean,\n keyboardCursorRef: RefObject<K | undefined>,\n anchorKey?: K,\n onChange?: (detail: SelectionDetail<K>) => void,\n onRangeChange?: (detail: SelectionRangeDetail<K>) => void\n) => {\n const itemKey = keyExtractor(event.target as HTMLElement);\n if (itemKey == null) {\n return;\n }\n\n // handle shift key selection\n if (\n event.shiftKey &&\n anchorKey !== undefined &&\n onRangeChange &&\n isShiftModeSupported(anchorKey, selectedKeys, selectionMode, event.type === 'click')\n ) {\n const selected = containsKey(selectedKeys, itemKey);\n const eventType = getEventType(event);\n if (selected && eventType === 'shiftSpace') {\n // during shift+space, deselect the item if it's already selected\n const keySet = removeKey(selectedKeys, itemKey, isSelectionRequired);\n onChange?.({ value: keySet, target: event.target });\n } else {\n onRangeChange({ value: { start: anchorKey, end: itemKey }, eventType });\n }\n // set keyboard selection cursor in case user extends with SHIFT+ARROW\n if (keyboardCursorRef) {\n keyboardCursorRef.current = itemKey;\n }\n return;\n }\n\n const selected = containsKey(selectedKeys, itemKey);\n let keySet = selectedKeys;\n if (!selected) {\n if (\n selectionMode === 'single' ||\n (event as KeyboardEvent).key === 'Enter' ||\n (selectionBehavior === 'replace' && !(event.ctrlKey || event.metaKey))\n ) {\n // should only contains this item key\n keySet = { all: false, keys: new Set([itemKey]) };\n } else {\n // add to existing selected keys\n keySet = addKey(selectedKeys, itemKey);\n }\n } else if ((event as KeyboardEvent).key !== 'Enter') {\n // no de-select for enter key\n if (\n selectionBehavior === 'toggle' ||\n event.ctrlKey ||\n event.metaKey ||\n (event as KeyboardEvent).key === ' '\n ) {\n // de-select only when ctrl/meta key is pressed or selectionBehavior is\n // explicitly set to toggle\n keySet = removeKey(selectedKeys, itemKey, isSelectionRequired);\n } else if (selectionMode === 'multiple' && (selectedKeys.all || selectedKeys.keys.size > 1)) {\n // in this case everything should be de-selected except for this key\n keySet = { all: false, keys: new Set([itemKey]) };\n }\n }\n\n // only invoke callback if there is really a change\n // note onSelectionChange should never be null here\n if (selectedKeys != keySet && onChange) {\n onChange({ value: keySet, target: event.target });\n if (event.type === 'click') {\n event.stopPropagation();\n }\n }\n};\n\n/**\n * Hook for handling various selection mode. This can be reuse by all Collection components.\n * @param keyExtractor function to extract the key based on provided element\n * @param selectedKeys the currently selected keys\n * @param selectionMode the selection mode\n * @param isSelectionRequired true if empty selected key is not allowed, false otherwise\n * @param selectionBehavior the selection behavior. If the value is 'toggle', then the key is\n * added/removed from the current selected keys. If the value is 'replace',\n * then the current selected keys are cleared first before the key is added\n * unless the ctrl/shift/meta key is pressed.\n * @param allowEnterKey whether enter key can be use to change selection.\n * @param onChange callback function that is invoked when selection has changed.\n * @param anchorKey the anchor key. Usually this is the same as current key except when shift key is pressed.\n * @param currentKey the current key\n * @param getVerticalPrevNextKey function to get the previous/next key in the vertical direction based on the current key\n * @param getHorizontalPrevNextKey function to get the previous/next key in the horizontal direction based on the current key\n * @param scrollToKey function to scroll the item with the key to be visible\n * @param onRangeChange callback function that is invoked when the selection range has changed.\n * @returns an event map that the consumer can register as event listeners\n */\nexport function useSelection<K>(\n keyExtractor: (element: HTMLElement) => K | null,\n selectedKeys: Keys<K>,\n selectionMode: SelectionMode,\n isSelectionRequired: boolean,\n selectionBehavior: SelectionBehavior,\n allowEnterKey: boolean,\n onChange?: (detail: SelectionDetail<K>) => void,\n anchorKey?: K,\n currentKey?: K | undefined,\n getVerticalPrevNextKey?: (currentKey: K | undefined, isPrev: boolean) => () => K | null,\n getHorizontalPrevNextKey?: (currentKey: K | undefined, isPrev: boolean) => () => K | null,\n scrollToKey?: (key: K) => void,\n onRangeChange?: (detail: SelectionRangeDetail<K>) => void\n) {\n // ref to track the cursor for the SHIFT+ARROW keyboard selection separately than the anchor of the selection.\n const keyboardSelectionCursor = useRef<K>();\n\n const isTouchPointerRef = useRef<boolean>(false);\n\n const onPointerDown = useCallback(\n (event: PointerEvent) => {\n isTouchPointerRef.current = event.pointerType === 'touch';\n if (event.shiftKey && selectionMode === 'multiple') {\n //Avoid text selection on pointer down\n event.preventDefault();\n }\n },\n [isTouchPointerRef]\n );\n\n const onClick = useCallback(\n (event: MouseEvent) => {\n if (!getIsSelectionPending()) {\n handleSelect<K>(\n event,\n keyExtractor,\n selectedKeys,\n selectionMode,\n isTouchPointerRef.current ? 'toggle' : selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n currentKey,\n onChange,\n onRangeChange\n );\n if (!event.shiftKey) {\n // reset keyboard cursor when using mouse to select\n keyboardSelectionCursor.current = undefined;\n }\n }\n },\n [\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n currentKey,\n onChange,\n onRangeChange\n ]\n );\n\n // general keyboard events listen to keyUp for a11y\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n // older browser that we don't support returns 'Spacebar' for space key\n if (event.key === ' ' || (event.key === 'Enter' && allowEnterKey)) {\n handleSelect<K>(\n event,\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n keyboardSelectionCursor,\n anchorKey,\n onChange,\n event.shiftKey && event.key === ' ' ? onRangeChange : undefined\n );\n }\n },\n [\n keyExtractor,\n selectedKeys,\n selectionMode,\n selectionBehavior,\n isSelectionRequired,\n anchorKey,\n onChange,\n onRangeChange,\n allowEnterKey\n ]\n );\n\n const { direction } = useUser();\n\n // arrowKey events listen to keyDown so they can support holding them down\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // prevent default (propagation) for keyDown to space bar causing container to scroll\n if (event.key === ' ') {\n event.preventDefault();\n return;\n }\n\n const key = keyboardSelectionCursor.current || currentKey;\n const isRtl = direction === 'rtl';\n\n const keyHandlers: Record<string, (() => K | null) | undefined> = {\n ArrowUp: getVerticalPrevNextKey?.(key, true),\n ArrowDown: getVerticalPrevNextKey?.(key, false),\n ArrowLeft: getHorizontalPrevNextKey?.(key, !isRtl),\n ArrowRight: getHorizontalPrevNextKey?.(key, isRtl)\n };\n const isBothDirections = getVerticalPrevNextKey && getHorizontalPrevNextKey;\n if (Object.keys(keyHandlers).includes(event.key)) {\n if (event.shiftKey && scrollToKey && selectionMode === 'multiple') {\n //Avoid increasing range of selection text selection with arrow keys\n event.preventDefault();\n let keySet = selectedKeys;\n // on first selection event, set keyboard cursor to start at currentKey\n if (!keyboardSelectionCursor.current && isKeyDefined(currentKey)) {\n keySet = { all: false, keys: new Set([currentKey as K]) };\n }\n const newAnchorKey = keyHandlers[event.key];\n const cursorKey = newAnchorKey?.();\n if (cursorKey != null) {\n // keep visible\n scrollToKey(cursorKey);\n\n // if in 2D, use range selection to extend or subtract\n if (isBothDirections) {\n if (onRangeChange && currentKey != null) {\n onRangeChange({\n value: { start: currentKey, end: cursorKey },\n eventType: getEventType(event)\n });\n }\n } else {\n // extend selection\n if (!containsKey(keySet, cursorKey)) {\n keySet = addKey(keySet, cursorKey);\n // subtract from selection\n } else if (\n keyboardSelectionCursor.current != null &&\n keyboardSelectionCursor.current !== cursorKey\n ) {\n keySet = removeKey(keySet, keyboardSelectionCursor.current, isSelectionRequired);\n }\n if (selectedKeys != keySet && onChange) {\n onChange({ value: keySet, target: event.target });\n }\n }\n // update selection cursor\n keyboardSelectionCursor.current = cursorKey;\n }\n } else {\n // reset keyBoard on non-shifted arrow use as this interrupts the extend mode (and would make for messy logic that doesn't align with current Jet behavior)\n keyboardSelectionCursor.current = undefined;\n }\n }\n },\n [\n selectedKeys,\n isSelectionRequired,\n onChange,\n currentKey,\n getVerticalPrevNextKey,\n getHorizontalPrevNextKey,\n scrollToKey,\n direction,\n onRangeChange,\n selectionMode\n ]\n );\n\n const selectionProps =\n selectionMode === 'none' || onChange == null\n ? {}\n : { onPointerDown, onClick, onKeyDown, onKeyUp };\n return { selectionProps };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { useRef, useState, useEffect } from 'preact/hooks';
|
|
|
3
3
|
import { m as mergeProps } from './mergeProps-88ea8306.js';
|
|
4
4
|
import { b as getKey, c as getPrevNextKeyUsingRef, k as keyExtractor, f as findElementByKey, d as getFirstVisibleKey } from './collectionUtils-d72c7c40.js';
|
|
5
5
|
import { u as useCollectionFocusRing } from './useCollectionFocusRing-d0c80397.js';
|
|
6
|
-
import { u as useCurrentKey } from './useCurrentKey-
|
|
6
|
+
import { u as useCurrentKey } from './useCurrentKey-db7d3bb9.js';
|
|
7
7
|
import { u as useId } from './useId-03dbfdf0.js';
|
|
8
8
|
|
|
9
9
|
const ITEM_SELECTOR = '[role="tab"]';
|
|
@@ -149,4 +149,4 @@ const findNextValidKey = (currentKey, currTabs, prevTabs) => {
|
|
|
149
149
|
};
|
|
150
150
|
|
|
151
151
|
export { useTabBar as u };
|
|
152
|
-
//# sourceMappingURL=useTabBar-
|
|
152
|
+
//# sourceMappingURL=useTabBar-8af19c50.js.map
|