@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":"LayerManager-
|
|
1
|
+
{"version":3,"file":"LayerManager-00983765.js","sources":["../../src/UNSAFE_Layer/LayerManager.tsx"],"sourcesContent":["/**\n * The LayerManager wraps your application and creates two adjacent divs for\n * rendering your application and housing Layers.\n */\nimport { ComponentChildren } from 'preact';\nimport { useCallback, useState } from 'preact/compat';\nimport { LayerContext, LayerContextProps } from './LayerContext';\nimport LayerHost from './LayerHost';\n\ntype LayerManagerProps = {\n children?: ComponentChildren;\n};\n\nexport function LayerManager({ children }: LayerManagerProps) {\n const [defaultHost, setDefaultHost] = useState<Element>();\n //const context = useContext(LayerContext);\n const defaultHostRef = useCallback((el: Element | null) => {\n // ref callbacks fire after the component has been unnmounted so we do not\n // want to set state in this use-case\n if (el !== null) {\n setDefaultHost(el);\n }\n }, []);\n\n return (\n <LayerContext.Consumer>\n {(value: LayerContextProps) => {\n let defaultHostContext = {};\n if (defaultHost) {\n defaultHostContext = {\n getRootLayerHost: () => {\n return defaultHost;\n },\n getLayerHost: () => {\n return defaultHost;\n }\n };\n }\n const layerContext = value.getLayerHost ? value : defaultHostContext;\n return (\n <LayerContext.Provider value={layerContext}>\n {children}\n {!value.getLayerHost && <LayerHost ref={defaultHostRef} />}\n </LayerContext.Provider>\n );\n }}\n </LayerContext.Consumer>\n );\n}\n"],"names":["children","defaultHost","setDefaultHost","useState","defaultHostRef","useCallback","el","_jsx","LayerContext","Consumer","value","defaultHostContext","getRootLayerHost","getLayerHost","layerContext","_jsxs","Provider","jsx","LayerHost","ref"],"mappings":"8HAagB,UAAaA,SAAEA,IAC7B,MAAOC,EAAaC,GAAkBC,EAAQA,WAExCC,EAAiBC,eAAaC,IAGvB,OAAPA,GACFJ,EAAeI,EAChB,GACA,IAEH,OACEC,EAAAA,IAACC,EAAAA,aAAaC,SACX,CAAAT,SAACU,IACA,IAAIC,EAAqB,CAAA,EACrBV,IACFU,EAAqB,CACnBC,iBAAkB,IACTX,EAETY,aAAc,IACLZ,IAIb,MAAMa,EAAeJ,EAAMG,aAAeH,EAAQC,EAClD,OACEI,EAAAA,KAACP,EAAAA,aAAaQ,SAAS,CAAAN,MAAOI,EAC3Bd,SAAA,CAAAA,GACCU,EAAMG,cAAgBN,EAAAU,IAACC,YAAS,CAACC,IAAKf,MAE1C,GAIV"}
|
package/amd/Legend-42f8653b.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', 'preact/hooks', './useLegendContextMenu-5b1ca75b', './useVisEvents-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', 'preact/hooks', './useLegendContextMenu-5b1ca75b', './useVisEvents-ac97d087', './mergeProps-bcfa6a92', './useItemFocus-75d6510d', './UNSAFE_Legend/themes/LegendStyles.css', './useCssVars-7efb591d', './classNames-08d99695', './useTestId-f3b8b319', './useVisTouchResponse-36416652', './stringUtils-0ae982c2'], (function(e,t,n,o,s,i,d,r,a,I,m,u,l){"use strict";function c(e,t){const{itemIdx:n}=e;return-1==n?t[t.length-1]:t[n]}function f(e,t){let n=e.itemIdx;return-1==n&&(n=t.length-1),n=Math.min(t.length-1,n+1),"off"!==t[n].actionable?{sectionIdx:0,itemIdx:n}:n===t.length-1?(n-=1,{sectionIdx:0,itemIdx:n}):f({sectionIdx:0,itemIdx:n},t)}function g(e,t){let n=e.itemIdx;return-1==n&&(n=t.length-1),n=Math.max(0,n-1),"off"!==t[n].actionable?{sectionIdx:0,itemIdx:n}:g({sectionIdx:0,itemIdx:n},t)}function x(e){return{getItem:t=>c(t,e),getDetailFromInfo:t=>{if(!t)return{itemId:void 0,data:void 0};const n=c(t,e);return{itemId:n.id,data:n}},getPrevItemInfo:t=>g(t,e),getNextItemInfo:t=>f(t,e)}}e.Legend=function({orientation:e="horizontal",items:c,isReadOnly:f=!0,onItemAction:g,onItemHover:h,onItemFocus:p,testId:v,contextMenuConfig:y,hideAndShowBehavior:b="off",hoverBehavior:R="none",...S}){const C=m.useTestId(v),F=n.useRef(null),L=n.useRef(),{getItem:P,getDetailFromInfo:M,getPrevItemInfo:V,getNextItemInfo:D}=x(c),{resolvedVars:W,cssContent:A}=a.useCssVars(o.legendVars),N=o.getLegendTextStyle({fontStyle:S.textFontStyle,fontSize:S.textFontSize?.toString(),fontWeight:S.textFontWeight?.toString(),fontFamily:S.textFontFamily},W),T=o.getIsLegendItemActionable(c,f),{textMeasureContent:B,layoutInfo:j}=o.useLegendLayout({resolvedVars:W,items:c,rootRef:F,rootDimsRef:L,orientation:e,legendFontStylesObj:N,symbolWidth:S.symbolWidth}),{touchResponse:w,touchResponseStyle:E}=u.useVisTouchResponse({type:"touchStart"}),{focusedItemInfo:O,hoveredItemInfo:z,onContextMenuDismissed:U,activeId:H,eventsProps:k}=s.useVisEvent(w,!f,T,((e,t,n)=>o.getKeyUpHandler(e,t,n,null!=S.hiddenIds)),M,V,D,g,h,p,o.isEqualItem,o.getItemInfo,{itemIdx:0,sectionIdx:0},null!=S.hiddenIds),{focusedItemRef:q}=d.useItemFocus(O),G=o.getDatatipText(c,P,O,z),{datatipContent:K,datatipProps:{"aria-describedby":_,...J}}=o.useLegendDatatip({text:G,rootDimsRef:L,focusedItemInfo:O,focusedItemRef:q,touchResponse:w}),Q=o.getAriaProps(f,S["aria-label"],S.hiddenIds,l.merge([S["aria-describedby"],_]),S["aria-labelledby"]),{contextMenuContent:X,contextMenuProps:Y}=o.useLegendContextMenu({rootRef:F,contextMenuConfig:y,focusedItemInfo:O,items:c,isReadOnly:f,onContextMenuDismissed:U}),Z=i.mergeProps(k,J,Y),{itemsPerCol:$,itemsPerRow:ee}=o.getGridNums(c.length,j),{legendStyle:te,renderedLegendStyle:ne,preRenderedLegendStyle:oe}=r.styles,se="vertical"===e||!!j;return t.jsxs("div",{ref:F,tabIndex:f?void 0:0,role:"application",class:I.classNames([te,se?ne:oe]),style:E,...C,...Q,...Z,"aria-activedescendant":H,children:[se?t.jsx(o.BaseLegend,{...S,focusedItemRef:q,items:c,isReadOnly:f,orientation:e,sectionIdx:0,itemsPerRow:ee,itemsPerCol:$,itemWidth:j?.isWrapped?j?.maxItemWidth:void 0,focusedItemInfo:O,hoveredItemInfo:z,activeId:H,hideAndShowBehavior:b,hoverBehavior:R}):null,K,B,A,X]})}}));
|
|
2
2
|
//# sourceMappingURL=Legend-42f8653b.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', './layoutUtils-09c68ca9', './dataStyleUtils-8c4452c2', './Common/themes/themeContract.css', './Marker-8ff23a04', 'css!./SvgShapesStyles.styles.css', './useTranslationBundle-
|
|
2
|
-
//# sourceMappingURL=LineAreaChart-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', './layoutUtils-09c68ca9', './dataStyleUtils-8c4452c2', './Common/themes/themeContract.css', './Marker-8ff23a04', 'css!./SvgShapesStyles.styles.css', './useTranslationBundle-20bfc0f3', './accUtils-1557920a', './useUser-9b166ca3', './colorUtils-31010e27', './utils-61ef4ad6', './PRIVATE_Chart/themes/ChartStyles.css', './Chart-4796be31'], (function(e,t,i,r,s,n,o,a,l,d,c,g,h,m){"use strict";function I({yScale:e,lineType:i="straight",color:n,isHorizontal:o,isLog:a,areaColorOpacity:l,lineSegmentCoords:d,bottomCoords:c,isHighlighted:g,isBottomSegmentCurved:h,seriesIndex:m}){const I={fill:n,opacity:g?l:`calc(${s.dvtVars.dimmedOpacity} * ${l})`};return t.jsx(t.Fragment,{children:d.map((s=>{let n;if(c)n=c;else{const t=e.transform(a?e.domain()[0]:0);n=o?[[t,s[0][1]],[t,s[s.length-1][1]]]:[[s[0][0],t],[s[s.length-1][0],t]]}const l=r.getCmdsForArea(s,n,i,o,h);return t.jsx("path",{d:l,style:I,"data-oj-series-index":m,"data-oj-object":"area"})}))})}const u=10;function x({yScale:e,xScale:s,color:o,seriesIndex:d,startIndex:c,endIndex:g,hiddenIds:h,selectedIds:m,orientation:I,isLog:x,data:p,markerType:y,getDataItem:f,focusedItemIndex:S,hoveredItemIndex:C,isDrillEnabled:v,activeId:j,isSelectionEnabled:k,timeAxisType:b,isPointInsideMarquee:A,series:T,groups:D}){const M="horizontal"===I,L=[],F=a.useTranslationBundle("@oracle/oraclejet-preact");for(let a=c;a<g+1;a++){const c=f(d,a),g=p[a];if(!c||null==g||h?.has(c.id)||x&&g<=0)continue;const I=M?e.transform(g):i.getGroupCenterCoord(D[a],a,s,c,b),w=M?i.getGroupCenterCoord(D[a],a,s,c,b):e.transform(g),E=S===a,R=C===a,H=!(!m?.has(c.id)&&!A?.(c.id,{x:I,y:w})),P="on"===c.drilling||"off"!=c.drilling&&v,{fill:U,stroke:W,outerStroke:z}=r.getMarkerFillAndStroke(!!c.isMarkerDisplayed,k,R,E,H,o,c.markerColor),N=c.isMarkerDisplayed&&c.markerType||y,B=E||R,V=l.supportsMobileScreenReader||B?r.getItemAriaLabel(F,T.name||T.id.toString(),D[a].name||D[a].id,c.value,k,H,P,c.accessibleLabel):void 0,q={"data-oj-series-index":d,"data-oj-group-index":a,"data-oj-object":"item",id:B?j:void 0,role:V?"img":void 0,"aria-label":V},G=(c.markerSize||u)+2*n.MARKER_PADDING;L.push(t.jsx(n.Marker,{type:N,tx:I,ty:w,isInteractive:P||k,scale:1,fill:U,stroke:W,outerStroke:z,width:G,height:G,dataInfo:q,preserveRectAspectRatio:!0}))}return t.jsx(t.Fragment,{children:L})}function p({color:e,isHorizontal:i,lineType:n="straight",lineColor:o,lineStyle:a,lineWidth:l=3,isHighlighted:d,lineSegmentCoords:c,seriesIndex:m}){const I={stroke:o||e,strokeDasharray:"dotted"===a?3:"dashed"===a?6:void 0,strokeWidth:l,fill:g.rgba(s.colorSchemeVars.palette.neutral[0],0)};return t.jsx(t.Fragment,{children:c.map((e=>{const s=r.getCmdsForLine(e,n,i);return"straight"===n?t.jsx("polyline",{points:s,style:I,className:d?void 0:h.styles.dimmed,"data-oj-series-index":m,"data-oj-object":"line"}):t.jsx("path",{d:s,style:I,className:d?void 0:h.styles.dimmed,"data-oj-series-index":m,"data-oj-object":"line"})}))})}e.LineAreaChart=function({width:e,height:n,selectedIds:o=[],hiddenIds:a=[],highlightedIds:l,hideAndShowBehavior:g="none",orientation:h="vertical",yAxis:u,series:y,groups:f,isStacked:S=!1,getDataItem:C,selectionMode:v="none",drilling:j="off",type:k="line",...b}){const{direction:A}=d.useUser(),T="rtl"===A,D="log"===u?.scale,M=b.xAxis?.timeAxisType,L=new Set(a),F=new Set(o),w=new Set(l),E="horizontal"===h,R=c.getColorRamp(),H=S?r.getCumulativeSeries(y.length,f.length,C,L,D):r.getSeriesData(y?.length,f?.length,C,L,D),P=(e,t)=>S?{...C(e,t),value:H[e][t]}:C(e,t),U=r.getMarkers(),W="lineWithArea"===k?.5:1,z="area"===k||"lineWithArea"===k,N="area"===k,B=[];return t.jsx(m.Chart,{width:e,height:n,selectedIds:F,hiddenIds:a,hideAndShowBehavior:g,orientation:h,yAxis:u,series:y,groups:f,selectionMode:v,drilling:j,isStacked:S,getDataItem:C,findNearest:(e,t)=>i.findNearestDataPoint(y,f,e,t,P,S,(()=>({offset:0,dataWidth:0})),((e,t)=>t.transform(e)),D,0,L,M),getDataItemPos:(e,t)=>(i,r)=>{const s=H[i][r];let n=r;if(M){const e="mixedFrequency"===M?C(i,r)?.x:f[r].id;n=new Date(e).getTime()}return{x:E?t.transform(s):e.transform(n),y:E?e.transform(n):t.transform(s),height:0,width:0}},getMarkerInfo:(e,t)=>({color:r.getItemColor(e,t,y,C),type:r.getMarkerType(e,t,"lineWithArea",C)}),renderGridLinesInFront:z,getNavUtil:(e,t)=>r.getLineAreaChartNavUtil(C,y.length,e,t,S,T,E),getGapRatio:()=>1,offset:.2,isRtl:T,...b,children:({xStartIndex:e,xEndIndex:i,xScale:n,yScale:o,activeId:a,focusedItemInfo:d,hoveredItemInfo:c,isPointInsideMarquee:g})=>t.jsxs(t.Fragment,{children:[H.map(((m,u)=>{if(0===m.length)return;const k=y[u],A=r.getLineAreaSegments(o,n,m,e,i,E,D,f,u,P,M);B[u]=A[0];const T="curved"===k.lineType&&S&&H.length>1&&u>0,L=void 0===l||w.has(k.id);return t.jsxs(t.Fragment,{children:[z&&t.jsx(I,{yScale:o,lineType:k.lineType,color:k.areaColor||R[u%R.length],isHorizontal:E,areaColorOpacity:W,isBottomSegmentCurved:T,bottomCoords:S&&0!=u?B[u-1]:void 0,lineSegmentCoords:A,isLog:D,isHighlighted:L,seriesIndex:u}),t.jsx(p,{lineType:k.lineType,lineColor:N?s.colorSchemeVars.dvt.contrastLine:k.lineColor,lineWidth:N?S?2.5:1.25:k.lineWidth,lineStyle:k.lineStyle,color:k.lineColor||R[u%R.length],lineSegmentCoords:A,isHorizontal:E,isHighlighted:L,seriesIndex:u}),!S&&t.jsx(x,{yScale:o,xScale:n,groups:f,series:k,timeAxisType:M,data:m,color:k.lineColor||k.areaColor||R[u%R.length],seriesIndex:u,startIndex:e,endIndex:i,markerType:U[u%U.length],orientation:h,isLog:D,activeId:a,getDataItem:C,isPointInsideMarquee:g,selectedIds:F,focusedItemIndex:d.seriesIndex!==u||!d.isFocusVisible||b.isDataCursorEnabled&&b.dataCursorStyle?.isMarkerDisplayed?void 0:d.groupIndex,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===u?c.groupIndex:void 0,isSelectionEnabled:"single"===v||"multiple"===v,isDrillEnabled:"on"===j})]})})),S&&H.map(((r,s)=>{if(0===r.length)return;const l=y[s];return t.jsx(x,{yScale:o,series:y[s],xScale:n,groups:f,timeAxisType:M,data:r,color:l.lineColor||l.areaColor||R[s%R.length],seriesIndex:s,isPointInsideMarquee:g,startIndex:e,endIndex:i,markerType:U[s%U.length],orientation:h,isLog:D,activeId:a,getDataItem:C,selectedIds:F,focusedItemIndex:d.seriesIndex===s&&d.isFocusVisible?d.groupIndex:void 0,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===s?c.groupIndex:void 0,isSelectionEnabled:"single"===v||"multiple"===v,isDrillEnabled:"on"===j})}))]})})}}));
|
|
2
|
+
//# sourceMappingURL=LineAreaChart-b68c4620.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineAreaChart-337cac30.js","sources":["../../src/UNSAFE_LineAreaChart/AreaSeries.tsx","../../src/PRIVATE_Chart/Markers.tsx","../../src/UNSAFE_LineAreaChart/LineSeries.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForArea } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { Scale } from '../utils/UNSAFE_visTypes/chart';\nimport { dvtVars } from '../Common/themes/themeContract.css';\n\ntype AreaSeriesProps = {\n yScale: Scale;\n color: ColorProps['color'];\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n isLog: boolean;\n areaColorOpacity: number;\n lineSegmentCoords: Point[][];\n bottomCoords?: Point[];\n isHighlighted: boolean;\n isBottomSegmentCurved: boolean;\n seriesIndex: number;\n};\n\nexport function AreaSeries({\n yScale,\n lineType = 'straight',\n color,\n isHorizontal,\n isLog,\n areaColorOpacity,\n lineSegmentCoords,\n bottomCoords,\n isHighlighted,\n isBottomSegmentCurved,\n seriesIndex\n}: AreaSeriesProps) {\n const style = {\n fill: color,\n opacity: isHighlighted\n ? areaColorOpacity\n : `calc(${dvtVars.dimmedOpacity} * ${areaColorOpacity})`\n };\n\n return (\n <>\n {lineSegmentCoords.map((lineSegmentCoords: Point[]) => {\n let baseCoords;\n if (bottomCoords) {\n // custom bottom coords. eg: top of last series in stacked area\n baseCoords = bottomCoords;\n } else {\n // TODO: make this more generic when we support apps setting baseline\n // for log assume domain min is the baseline, otherwise use 0 baseline\n const baselineCoord = yScale.transform(isLog ? yScale.domain()[0] : 0);\n baseCoords = isHorizontal\n ? ([\n [baselineCoord, lineSegmentCoords[0][1]],\n [baselineCoord, lineSegmentCoords[lineSegmentCoords.length - 1][1]]\n ] as Point[])\n : ([\n [lineSegmentCoords[0][0], baselineCoord],\n [lineSegmentCoords[lineSegmentCoords.length - 1][0], baselineCoord]\n ] as Point[]);\n }\n const cmds = getCmdsForArea(\n lineSegmentCoords,\n baseCoords,\n lineType,\n isHorizontal,\n isBottomSegmentCurved\n );\n return (\n <path d={cmds} style={style} data-oj-series-index={seriesIndex} data-oj-object={'area'} />\n );\n })}\n </>\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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { LineAreaItem } from '../UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { Marker, MARKER_PADDING } from '../PRIVATE_SvgShapes';\nimport { MarkerShapes } from '../utils/UNSAFE_visTypes/common';\nimport { getGroupCenterCoord } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { ChartSeriesData, Scale, Group } from '../utils/UNSAFE_visTypes/chart';\nimport { getMarkerFillAndStroke } from '../utils/PRIVATE_chartUtils/utils';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { getItemAriaLabel } from '../utils/PRIVATE_chartUtils/accUtils';\nimport { supportsMobileScreenReader } from '../utils/UNSAFE_visUtils';\n\nconst MARKER_DEFAULT_SIZE = 10;\ntype MarkersProps<K, D> = {\n yScale: Scale;\n xScale: Scale;\n startIndex: number;\n endIndex: number;\n seriesIndex: number;\n series: ChartSeriesData<K, D>;\n markerType: MarkerShapes;\n data: number[];\n color: ColorProps['color'];\n groups: Group[];\n focusedItemIndex?: number;\n isSelectionEnabled: boolean;\n hoveredItemIndex?: number;\n selectedIds?: Set<string | number>;\n hiddenIds?: Set<string | number>;\n activeId?: string;\n orientation: 'horizontal' | 'vertical';\n isDrillEnabled: boolean;\n isLog: boolean;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getDataItem: (seriesIndex: number, groupIndex: number) => D | undefined;\n timeAxisType?: 'enabled' | 'skipGaps' | 'mixedFrequency';\n};\n\nexport function Markers<K extends string | number, D extends LineAreaItem<K>>({\n yScale,\n xScale,\n color,\n seriesIndex,\n startIndex,\n endIndex,\n hiddenIds,\n selectedIds,\n orientation,\n isLog,\n data,\n markerType,\n getDataItem,\n focusedItemIndex,\n hoveredItemIndex,\n isDrillEnabled,\n activeId,\n isSelectionEnabled,\n timeAxisType,\n isPointInsideMarquee,\n series,\n groups\n}: MarkersProps<K, D>) {\n const isHoriz = orientation === 'horizontal';\n const items = [];\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n for (let groupIndex = startIndex; groupIndex < endIndex + 1; groupIndex++) {\n const item = getDataItem(seriesIndex, groupIndex);\n const value = data[groupIndex];\n if (!item || value == null || hiddenIds?.has(item.id) || (isLog && value <= 0)) {\n continue;\n }\n const x = isHoriz\n ? yScale.transform(value)\n : getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType);\n const y = isHoriz\n ? getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType)\n : yScale.transform(value);\n const isFocused = focusedItemIndex === groupIndex;\n const isHovered = hoveredItemIndex === groupIndex;\n const isSelected = !!(selectedIds?.has(item.id!) || isPointInsideMarquee?.(item.id, { x, y }));\n const isDrillable = item.drilling === 'on' || (item.drilling != 'off' && isDrillEnabled);\n const { fill, stroke, outerStroke } = getMarkerFillAndStroke(\n !!item.isMarkerDisplayed,\n isSelectionEnabled,\n isHovered,\n isFocused,\n isSelected,\n color,\n item.markerColor\n );\n const itemMarkerType = item.isMarkerDisplayed ? item.markerType || markerType : markerType;\n const isActive = isFocused || isHovered;\n const ariaLabel =\n supportsMobileScreenReader || isActive\n ? getItemAriaLabel(\n translations,\n series.name || series.id.toString(),\n groups[groupIndex].name || groups[groupIndex].id,\n item.value,\n isSelectionEnabled,\n isSelected,\n isDrillable,\n item.accessibleLabel\n )\n : undefined;\n\n const dataInfo = {\n 'data-oj-series-index': seriesIndex,\n 'data-oj-group-index': groupIndex,\n 'data-oj-object': 'item',\n id: isActive ? activeId : undefined,\n role: ariaLabel ? 'img' : undefined,\n 'aria-label': ariaLabel\n };\n\n const markerSize = (item.markerSize || MARKER_DEFAULT_SIZE) + 2 * MARKER_PADDING;\n items.push(\n <Marker\n type={itemMarkerType}\n tx={x}\n ty={y}\n isInteractive={isDrillable || isSelectionEnabled}\n scale={1}\n fill={fill}\n stroke={stroke}\n outerStroke={outerStroke}\n width={markerSize}\n height={markerSize}\n dataInfo={dataInfo}\n preserveRectAspectRatio\n />\n );\n }\n return <>{items}</>;\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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForLine } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { rgba } from '../UNSAFE_Theme';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { styles } from '../PRIVATE_Chart/themes/ChartStyles.css';\nimport { Property } from 'csstype';\n\ntype LineSeriesProps = {\n color: ColorProps['color'];\n lineStyle?: 'dotted' | 'dashed' | 'solid';\n lineColor?: Property.Color;\n lineWidth?: number;\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n lineSegmentCoords: Point[][];\n isHighlighted: boolean;\n seriesIndex: number;\n};\n\nexport function LineSeries({\n color,\n isHorizontal,\n lineType = 'straight',\n lineColor,\n lineStyle,\n lineWidth = 3,\n isHighlighted,\n lineSegmentCoords,\n seriesIndex\n}: LineSeriesProps) {\n const style = {\n stroke: lineColor || color,\n strokeDasharray: lineStyle === 'dotted' ? 3 : lineStyle === 'dashed' ? 6 : undefined,\n strokeWidth: lineWidth,\n fill: rgba(colorSchemeVars.palette.neutral[0], 0)\n };\n\n return (\n <>\n {lineSegmentCoords.map((value: Point[]) => {\n const cmds = getCmdsForLine(value, lineType, isHorizontal);\n return lineType === 'straight' ? (\n <polyline\n points={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n ) : (\n <path\n d={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n );\n })}\n </>\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 { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from './AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '../utils/PRIVATE_chartUtils/utils';\nimport { Markers } from '../PRIVATE_Chart/Markers';\nimport { getLineAreaChartNavUtil } from '../utils/PRIVATE_chartUtils/navUtils';\nimport { Chart } from '../PRIVATE_Chart';\nimport { Scale, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { getColorRamp } from '../utils/UNSAFE_visUtils';\nimport { LineSeries } from './LineSeries';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { getLineAreaSegments } from '../utils/PRIVATE_chartUtils/utils';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { getItemColor, getMarkerType } from '../utils/PRIVATE_chartUtils/dataStyleUtils';\n\nconst AXIS_OFFSET = 0.2;\n\n/**\n * The LineAreaChart displays information graphically using lines and filled areas, making relationships among the data easier to understand.\n */\nexport function LineAreaChart<K extends string | number, D extends LineAreaItem<K>>({\n width,\n height,\n selectedIds = [],\n hiddenIds = [],\n highlightedIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n yAxis,\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n type = 'line',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n const isLog = yAxis?.scale === 'log';\n const timeAxisType = (props.xAxis as TimeAxisProps)?.timeAxisType;\n const hiddenSet = new Set(hiddenIds);\n const selectedSet = new Set(selectedIds);\n const highlightedSet = new Set(highlightedIds);\n const isHoriz = orientation === 'horizontal';\n const colors = getColorRamp();\n const renderedSeries = isStacked\n ? getCumulativeSeries(series.length, groups.length, getDataItem, hiddenSet, isLog)\n : getSeriesData<K, D>(series?.length, groups?.length, getDataItem, hiddenSet, isLog);\n\n const renderedGetDataItem = (seriesIndex: number, groupIndex: number): D | undefined => {\n if (!isStacked) return getDataItem(seriesIndex, groupIndex);\n return {\n ...getDataItem(seriesIndex, groupIndex),\n value: renderedSeries[seriesIndex][groupIndex]\n } as D;\n };\n\n const getGapRatio = () => {\n return 1;\n };\n\n const getNextChartItemFunc = (startIndex: number, endIndex: number) => {\n return getLineAreaChartNavUtil<K, D>(\n getDataItem,\n series.length,\n startIndex,\n endIndex,\n isStacked,\n isRtl,\n isHoriz\n );\n };\n\n const getDataItemPos = (xScale: Scale, yScale: Scale) => {\n return (seriesIndex: number, groupIndex: number) => {\n const value = renderedSeries[seriesIndex][groupIndex];\n let xVal = groupIndex;\n if (timeAxisType) {\n const val =\n timeAxisType === 'mixedFrequency'\n ? getDataItem(seriesIndex, groupIndex)?.x\n : groups[groupIndex].id;\n xVal = new Date(val!).getTime();\n }\n const x = isHoriz ? yScale.transform(value) : xScale.transform(xVal);\n const y = isHoriz ? xScale.transform(xVal) : yScale.transform(value);\n return { x, y, height: 0, width: 0 };\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor<K, D>(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType<K>(seriesIndex, groupIndex, 'lineWithArea', getDataItem)\n };\n };\n\n const findNearest = (xScale: Scale, yScale: Scale) => {\n const getSeriesDataInfo = () => {\n return {\n offset: 0,\n dataWidth: 0\n };\n };\n\n const getYCoord = (value: number, yScale: Scale) => {\n return yScale.transform(value);\n };\n\n return findNearestDataPoint<K, D>(\n series,\n groups,\n xScale,\n yScale,\n renderedGetDataItem,\n isStacked,\n getSeriesDataInfo,\n getYCoord,\n isLog,\n 0,\n hiddenSet,\n timeAxisType\n );\n };\n const markers = getMarkers();\n const areaOpacity = type === 'lineWithArea' ? 0.5 : 1;\n const isAreaRendered = type === 'area' || type === 'lineWithArea';\n const isContrastLineNeeded = type === 'area';\n const allLineSegmentCoords: Point[][] = [];\n return (\n <Chart\n width={width}\n height={height}\n selectedIds={selectedSet}\n hiddenIds={hiddenIds}\n hideAndShowBehavior={hideAndShowBehavior}\n orientation={orientation}\n yAxis={yAxis}\n series={series}\n groups={groups}\n selectionMode={selectionMode}\n drilling={drilling}\n isStacked={isStacked}\n getDataItem={getDataItem}\n findNearest={findNearest}\n getDataItemPos={getDataItemPos}\n getMarkerInfo={getMarkerColorAndType}\n renderGridLinesInFront={isAreaRendered}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee\n }) => {\n return (\n <>\n {renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden. */\n return;\n }\n const seriesItem = series[index];\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n lineAreaSeries,\n xStartIndex,\n xEndIndex,\n isHoriz,\n isLog,\n groups,\n index,\n renderedGetDataItem,\n timeAxisType\n );\n allLineSegmentCoords[index] = lineSegmentCoords[0];\n const isBottomSegmentCurved =\n seriesItem.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0;\n\n const isHighlighted =\n highlightedIds === undefined || highlightedSet.has(seriesItem.id);\n return (\n <>\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={seriesItem.lineType}\n color={seriesItem.areaColor || colors[index % colors.length]}\n isHorizontal={isHoriz}\n areaColorOpacity={areaOpacity}\n isBottomSegmentCurved={isBottomSegmentCurved}\n bottomCoords={\n isStacked && index != 0 ? allLineSegmentCoords[index - 1] : undefined\n }\n lineSegmentCoords={lineSegmentCoords}\n isLog={isLog}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n )}\n <LineSeries\n lineType={seriesItem.lineType}\n /* TODO: confirm with UX if this is contrastLine (changes depending on dark/light mode) or always white. \n It's always white in legacy.*/\n lineColor={\n isContrastLineNeeded ? colorSchemeVars.dvt.contrastLine : seriesItem.lineColor\n }\n /* The area generated in legacy are bit apart and not touching when stacked. Preact areas are a bit closer than legacy when curved. \n Increased the contrast linewidth (to 2.5 from legacy 1.25) to give legacy visual treatment.\n TODO: investivage why legacy areas are not touching. maybe we want to do the same in preact svg utils that\n generates this curve.\n */\n lineWidth={\n isContrastLineNeeded ? (isStacked ? 2.5 : 1.25) : seriesItem.lineWidth\n }\n lineStyle={seriesItem.lineStyle}\n color={seriesItem.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n {\n /*for non stacked charts, markers should render in the order of series.\n some markers might get hidden behind area but this preserves the legacy behavior. */\n !isStacked && (\n <Markers\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor ||\n seriesItem.areaColor ||\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n />\n )\n }\n </>\n );\n })}\n {isStacked &&\n renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden.*/\n return;\n }\n const seriesItem = series[index];\n return (\n <Markers\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor || seriesItem.areaColor || colors[index % colors.length]\n }\n seriesIndex={index}\n isPointInsideMarquee={isPointInsideMarquee}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index && focusedItemInfo.isFocusVisible\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={selectionMode === 'single' || selectionMode === 'multiple'}\n isDrillEnabled={drilling === 'on'}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["AreaSeries","yScale","lineType","color","isHorizontal","isLog","areaColorOpacity","lineSegmentCoords","bottomCoords","isHighlighted","isBottomSegmentCurved","seriesIndex","style","fill","opacity","dvtVars","dimmedOpacity","_jsx","map","baseCoords","baselineCoord","transform","domain","length","cmds","getCmdsForArea","d","MARKER_DEFAULT_SIZE","Markers","xScale","startIndex","endIndex","hiddenIds","selectedIds","orientation","data","markerType","getDataItem","focusedItemIndex","hoveredItemIndex","isDrillEnabled","activeId","isSelectionEnabled","timeAxisType","isPointInsideMarquee","series","groups","isHoriz","items","translations","useTranslationBundle","groupIndex","item","value","has","id","x","getGroupCenterCoord","y","isFocused","isHovered","isSelected","isDrillable","drilling","stroke","outerStroke","getMarkerFillAndStroke","isMarkerDisplayed","markerColor","itemMarkerType","isActive","ariaLabel","supportsMobileScreenReader","getItemAriaLabel","name","toString","accessibleLabel","undefined","dataInfo","role","markerSize","MARKER_PADDING","push","jsx","Marker","type","tx","ty","isInteractive","scale","width","height","preserveRectAspectRatio","_Fragment","Fragment","children","LineSeries","lineColor","lineStyle","lineWidth","strokeDasharray","strokeWidth","rgba","colorSchemeVars","palette","neutral","getCmdsForLine","points","className","styles","dimmed","highlightedIds","hideAndShowBehavior","yAxis","isStacked","selectionMode","props","direction","useUser","isRtl","xAxis","hiddenSet","Set","selectedSet","highlightedSet","colors","getColorRamp","renderedSeries","getCumulativeSeries","getSeriesData","renderedGetDataItem","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","findNearestDataPoint","offset","dataWidth","getDataItemPos","xVal","val","Date","getTime","getMarkerInfo","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","getLineAreaChartNavUtil","getGapRatio","xStartIndex","xEndIndex","focusedItemInfo","hoveredItemInfo","_jsxs","jsxs","lineAreaSeries","index","seriesItem","getLineAreaSegments","areaColor","dvt","contrastLine","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isCurrent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LineAreaChart-b68c4620.js","sources":["../../src/UNSAFE_LineAreaChart/AreaSeries.tsx","../../src/PRIVATE_Chart/Markers.tsx","../../src/UNSAFE_LineAreaChart/LineSeries.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForArea } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { Scale } from '../utils/UNSAFE_visTypes/chart';\nimport { dvtVars } from '../Common/themes/themeContract.css';\n\ntype AreaSeriesProps = {\n yScale: Scale;\n color: ColorProps['color'];\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n isLog: boolean;\n areaColorOpacity: number;\n lineSegmentCoords: Point[][];\n bottomCoords?: Point[];\n isHighlighted: boolean;\n isBottomSegmentCurved: boolean;\n seriesIndex: number;\n};\n\nexport function AreaSeries({\n yScale,\n lineType = 'straight',\n color,\n isHorizontal,\n isLog,\n areaColorOpacity,\n lineSegmentCoords,\n bottomCoords,\n isHighlighted,\n isBottomSegmentCurved,\n seriesIndex\n}: AreaSeriesProps) {\n const style = {\n fill: color,\n opacity: isHighlighted\n ? areaColorOpacity\n : `calc(${dvtVars.dimmedOpacity} * ${areaColorOpacity})`\n };\n\n return (\n <>\n {lineSegmentCoords.map((lineSegmentCoords: Point[]) => {\n let baseCoords;\n if (bottomCoords) {\n // custom bottom coords. eg: top of last series in stacked area\n baseCoords = bottomCoords;\n } else {\n // TODO: make this more generic when we support apps setting baseline\n // for log assume domain min is the baseline, otherwise use 0 baseline\n const baselineCoord = yScale.transform(isLog ? yScale.domain()[0] : 0);\n baseCoords = isHorizontal\n ? ([\n [baselineCoord, lineSegmentCoords[0][1]],\n [baselineCoord, lineSegmentCoords[lineSegmentCoords.length - 1][1]]\n ] as Point[])\n : ([\n [lineSegmentCoords[0][0], baselineCoord],\n [lineSegmentCoords[lineSegmentCoords.length - 1][0], baselineCoord]\n ] as Point[]);\n }\n const cmds = getCmdsForArea(\n lineSegmentCoords,\n baseCoords,\n lineType,\n isHorizontal,\n isBottomSegmentCurved\n );\n return (\n <path d={cmds} style={style} data-oj-series-index={seriesIndex} data-oj-object={'area'} />\n );\n })}\n </>\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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { LineAreaItem } from '../UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { Marker, MARKER_PADDING } from '../PRIVATE_SvgShapes';\nimport { MarkerShapes } from '../utils/UNSAFE_visTypes/common';\nimport { getGroupCenterCoord } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { ChartSeriesData, Scale, Group } from '../utils/UNSAFE_visTypes/chart';\nimport { getMarkerFillAndStroke } from '../utils/PRIVATE_chartUtils/utils';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { getItemAriaLabel } from '../utils/PRIVATE_chartUtils/accUtils';\nimport { supportsMobileScreenReader } from '../utils/UNSAFE_visUtils';\n\nconst MARKER_DEFAULT_SIZE = 10;\ntype MarkersProps<K, D> = {\n yScale: Scale;\n xScale: Scale;\n startIndex: number;\n endIndex: number;\n seriesIndex: number;\n series: ChartSeriesData<K, D>;\n markerType: MarkerShapes;\n data: number[];\n color: ColorProps['color'];\n groups: Group[];\n focusedItemIndex?: number;\n isSelectionEnabled: boolean;\n hoveredItemIndex?: number;\n selectedIds?: Set<string | number>;\n hiddenIds?: Set<string | number>;\n activeId?: string;\n orientation: 'horizontal' | 'vertical';\n isDrillEnabled: boolean;\n isLog: boolean;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getDataItem: (seriesIndex: number, groupIndex: number) => D | undefined;\n timeAxisType?: 'enabled' | 'skipGaps' | 'mixedFrequency';\n};\n\nexport function Markers<K extends string | number, D extends LineAreaItem<K>>({\n yScale,\n xScale,\n color,\n seriesIndex,\n startIndex,\n endIndex,\n hiddenIds,\n selectedIds,\n orientation,\n isLog,\n data,\n markerType,\n getDataItem,\n focusedItemIndex,\n hoveredItemIndex,\n isDrillEnabled,\n activeId,\n isSelectionEnabled,\n timeAxisType,\n isPointInsideMarquee,\n series,\n groups\n}: MarkersProps<K, D>) {\n const isHoriz = orientation === 'horizontal';\n const items = [];\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n for (let groupIndex = startIndex; groupIndex < endIndex + 1; groupIndex++) {\n const item = getDataItem(seriesIndex, groupIndex);\n const value = data[groupIndex];\n if (!item || value == null || hiddenIds?.has(item.id) || (isLog && value <= 0)) {\n continue;\n }\n const x = isHoriz\n ? yScale.transform(value)\n : getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType);\n const y = isHoriz\n ? getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType)\n : yScale.transform(value);\n const isFocused = focusedItemIndex === groupIndex;\n const isHovered = hoveredItemIndex === groupIndex;\n const isSelected = !!(selectedIds?.has(item.id!) || isPointInsideMarquee?.(item.id, { x, y }));\n const isDrillable = item.drilling === 'on' || (item.drilling != 'off' && isDrillEnabled);\n const { fill, stroke, outerStroke } = getMarkerFillAndStroke(\n !!item.isMarkerDisplayed,\n isSelectionEnabled,\n isHovered,\n isFocused,\n isSelected,\n color,\n item.markerColor\n );\n const itemMarkerType = item.isMarkerDisplayed ? item.markerType || markerType : markerType;\n const isActive = isFocused || isHovered;\n const ariaLabel =\n supportsMobileScreenReader || isActive\n ? getItemAriaLabel(\n translations,\n series.name || series.id.toString(),\n groups[groupIndex].name || groups[groupIndex].id,\n item.value,\n isSelectionEnabled,\n isSelected,\n isDrillable,\n item.accessibleLabel\n )\n : undefined;\n\n const dataInfo = {\n 'data-oj-series-index': seriesIndex,\n 'data-oj-group-index': groupIndex,\n 'data-oj-object': 'item',\n id: isActive ? activeId : undefined,\n role: ariaLabel ? 'img' : undefined,\n 'aria-label': ariaLabel\n };\n\n const markerSize = (item.markerSize || MARKER_DEFAULT_SIZE) + 2 * MARKER_PADDING;\n items.push(\n <Marker\n type={itemMarkerType}\n tx={x}\n ty={y}\n isInteractive={isDrillable || isSelectionEnabled}\n scale={1}\n fill={fill}\n stroke={stroke}\n outerStroke={outerStroke}\n width={markerSize}\n height={markerSize}\n dataInfo={dataInfo}\n preserveRectAspectRatio\n />\n );\n }\n return <>{items}</>;\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 { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForLine } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { rgba } from '../UNSAFE_Theme';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { styles } from '../PRIVATE_Chart/themes/ChartStyles.css';\nimport { Property } from 'csstype';\n\ntype LineSeriesProps = {\n color: ColorProps['color'];\n lineStyle?: 'dotted' | 'dashed' | 'solid';\n lineColor?: Property.Color;\n lineWidth?: number;\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n lineSegmentCoords: Point[][];\n isHighlighted: boolean;\n seriesIndex: number;\n};\n\nexport function LineSeries({\n color,\n isHorizontal,\n lineType = 'straight',\n lineColor,\n lineStyle,\n lineWidth = 3,\n isHighlighted,\n lineSegmentCoords,\n seriesIndex\n}: LineSeriesProps) {\n const style = {\n stroke: lineColor || color,\n strokeDasharray: lineStyle === 'dotted' ? 3 : lineStyle === 'dashed' ? 6 : undefined,\n strokeWidth: lineWidth,\n fill: rgba(colorSchemeVars.palette.neutral[0], 0)\n };\n\n return (\n <>\n {lineSegmentCoords.map((value: Point[]) => {\n const cmds = getCmdsForLine(value, lineType, isHorizontal);\n return lineType === 'straight' ? (\n <polyline\n points={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n ) : (\n <path\n d={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n );\n })}\n </>\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 { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from './AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '../utils/PRIVATE_chartUtils/utils';\nimport { Markers } from '../PRIVATE_Chart/Markers';\nimport { getLineAreaChartNavUtil } from '../utils/PRIVATE_chartUtils/navUtils';\nimport { Chart } from '../PRIVATE_Chart';\nimport { Scale, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { getColorRamp } from '../utils/UNSAFE_visUtils';\nimport { LineSeries } from './LineSeries';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { getLineAreaSegments } from '../utils/PRIVATE_chartUtils/utils';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { getItemColor, getMarkerType } from '../utils/PRIVATE_chartUtils/dataStyleUtils';\n\nconst AXIS_OFFSET = 0.2;\n\n/**\n * The LineAreaChart displays information graphically using lines and filled areas, making relationships among the data easier to understand.\n */\nexport function LineAreaChart<K extends string | number, D extends LineAreaItem<K>>({\n width,\n height,\n selectedIds = [],\n hiddenIds = [],\n highlightedIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n yAxis,\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n type = 'line',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n const isLog = yAxis?.scale === 'log';\n const timeAxisType = (props.xAxis as TimeAxisProps)?.timeAxisType;\n const hiddenSet = new Set(hiddenIds);\n const selectedSet = new Set(selectedIds);\n const highlightedSet = new Set(highlightedIds);\n const isHoriz = orientation === 'horizontal';\n const colors = getColorRamp();\n const renderedSeries = isStacked\n ? getCumulativeSeries(series.length, groups.length, getDataItem, hiddenSet, isLog)\n : getSeriesData<K, D>(series?.length, groups?.length, getDataItem, hiddenSet, isLog);\n\n const renderedGetDataItem = (seriesIndex: number, groupIndex: number): D | undefined => {\n if (!isStacked) return getDataItem(seriesIndex, groupIndex);\n return {\n ...getDataItem(seriesIndex, groupIndex),\n value: renderedSeries[seriesIndex][groupIndex]\n } as D;\n };\n\n const getGapRatio = () => {\n return 1;\n };\n\n const getNextChartItemFunc = (startIndex: number, endIndex: number) => {\n return getLineAreaChartNavUtil<K, D>(\n getDataItem,\n series.length,\n startIndex,\n endIndex,\n isStacked,\n isRtl,\n isHoriz\n );\n };\n\n const getDataItemPos = (xScale: Scale, yScale: Scale) => {\n return (seriesIndex: number, groupIndex: number) => {\n const value = renderedSeries[seriesIndex][groupIndex];\n let xVal = groupIndex;\n if (timeAxisType) {\n const val =\n timeAxisType === 'mixedFrequency'\n ? getDataItem(seriesIndex, groupIndex)?.x\n : groups[groupIndex].id;\n xVal = new Date(val!).getTime();\n }\n const x = isHoriz ? yScale.transform(value) : xScale.transform(xVal);\n const y = isHoriz ? xScale.transform(xVal) : yScale.transform(value);\n return { x, y, height: 0, width: 0 };\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor<K, D>(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType<K>(seriesIndex, groupIndex, 'lineWithArea', getDataItem)\n };\n };\n\n const findNearest = (xScale: Scale, yScale: Scale) => {\n const getSeriesDataInfo = () => {\n return {\n offset: 0,\n dataWidth: 0\n };\n };\n\n const getYCoord = (value: number, yScale: Scale) => {\n return yScale.transform(value);\n };\n\n return findNearestDataPoint<K, D>(\n series,\n groups,\n xScale,\n yScale,\n renderedGetDataItem,\n isStacked,\n getSeriesDataInfo,\n getYCoord,\n isLog,\n 0,\n hiddenSet,\n timeAxisType\n );\n };\n const markers = getMarkers();\n const areaOpacity = type === 'lineWithArea' ? 0.5 : 1;\n const isAreaRendered = type === 'area' || type === 'lineWithArea';\n const isContrastLineNeeded = type === 'area';\n const allLineSegmentCoords: Point[][] = [];\n return (\n <Chart\n width={width}\n height={height}\n selectedIds={selectedSet}\n hiddenIds={hiddenIds}\n hideAndShowBehavior={hideAndShowBehavior}\n orientation={orientation}\n yAxis={yAxis}\n series={series}\n groups={groups}\n selectionMode={selectionMode}\n drilling={drilling}\n isStacked={isStacked}\n getDataItem={getDataItem}\n findNearest={findNearest}\n getDataItemPos={getDataItemPos}\n getMarkerInfo={getMarkerColorAndType}\n renderGridLinesInFront={isAreaRendered}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee\n }) => {\n return (\n <>\n {renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden. */\n return;\n }\n const seriesItem = series[index];\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n lineAreaSeries,\n xStartIndex,\n xEndIndex,\n isHoriz,\n isLog,\n groups,\n index,\n renderedGetDataItem,\n timeAxisType\n );\n allLineSegmentCoords[index] = lineSegmentCoords[0];\n const isBottomSegmentCurved =\n seriesItem.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0;\n\n const isHighlighted =\n highlightedIds === undefined || highlightedSet.has(seriesItem.id);\n return (\n <>\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={seriesItem.lineType}\n color={seriesItem.areaColor || colors[index % colors.length]}\n isHorizontal={isHoriz}\n areaColorOpacity={areaOpacity}\n isBottomSegmentCurved={isBottomSegmentCurved}\n bottomCoords={\n isStacked && index != 0 ? allLineSegmentCoords[index - 1] : undefined\n }\n lineSegmentCoords={lineSegmentCoords}\n isLog={isLog}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n )}\n <LineSeries\n lineType={seriesItem.lineType}\n /* TODO: confirm with UX if this is contrastLine (changes depending on dark/light mode) or always white. \n It's always white in legacy.*/\n lineColor={\n isContrastLineNeeded ? colorSchemeVars.dvt.contrastLine : seriesItem.lineColor\n }\n /* The area generated in legacy are bit apart and not touching when stacked. Preact areas are a bit closer than legacy when curved. \n Increased the contrast linewidth (to 2.5 from legacy 1.25) to give legacy visual treatment.\n TODO: investivage why legacy areas are not touching. maybe we want to do the same in preact svg utils that\n generates this curve.\n */\n lineWidth={\n isContrastLineNeeded ? (isStacked ? 2.5 : 1.25) : seriesItem.lineWidth\n }\n lineStyle={seriesItem.lineStyle}\n color={seriesItem.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n {\n /*for non stacked charts, markers should render in the order of series.\n some markers might get hidden behind area but this preserves the legacy behavior. */\n !isStacked && (\n <Markers\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor ||\n seriesItem.areaColor ||\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n />\n )\n }\n </>\n );\n })}\n {isStacked &&\n renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden.*/\n return;\n }\n const seriesItem = series[index];\n return (\n <Markers\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor || seriesItem.areaColor || colors[index % colors.length]\n }\n seriesIndex={index}\n isPointInsideMarquee={isPointInsideMarquee}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index && focusedItemInfo.isFocusVisible\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={selectionMode === 'single' || selectionMode === 'multiple'}\n isDrillEnabled={drilling === 'on'}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["AreaSeries","yScale","lineType","color","isHorizontal","isLog","areaColorOpacity","lineSegmentCoords","bottomCoords","isHighlighted","isBottomSegmentCurved","seriesIndex","style","fill","opacity","dvtVars","dimmedOpacity","_jsx","map","baseCoords","baselineCoord","transform","domain","length","cmds","getCmdsForArea","d","MARKER_DEFAULT_SIZE","Markers","xScale","startIndex","endIndex","hiddenIds","selectedIds","orientation","data","markerType","getDataItem","focusedItemIndex","hoveredItemIndex","isDrillEnabled","activeId","isSelectionEnabled","timeAxisType","isPointInsideMarquee","series","groups","isHoriz","items","translations","useTranslationBundle","groupIndex","item","value","has","id","x","getGroupCenterCoord","y","isFocused","isHovered","isSelected","isDrillable","drilling","stroke","outerStroke","getMarkerFillAndStroke","isMarkerDisplayed","markerColor","itemMarkerType","isActive","ariaLabel","supportsMobileScreenReader","getItemAriaLabel","name","toString","accessibleLabel","undefined","dataInfo","role","markerSize","MARKER_PADDING","push","jsx","Marker","type","tx","ty","isInteractive","scale","width","height","preserveRectAspectRatio","_Fragment","Fragment","children","LineSeries","lineColor","lineStyle","lineWidth","strokeDasharray","strokeWidth","rgba","colorSchemeVars","palette","neutral","getCmdsForLine","points","className","styles","dimmed","highlightedIds","hideAndShowBehavior","yAxis","isStacked","selectionMode","props","direction","useUser","isRtl","xAxis","hiddenSet","Set","selectedSet","highlightedSet","colors","getColorRamp","renderedSeries","getCumulativeSeries","getSeriesData","renderedGetDataItem","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","findNearestDataPoint","offset","dataWidth","getDataItemPos","xVal","val","Date","getTime","getMarkerInfo","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","getLineAreaChartNavUtil","getGapRatio","xStartIndex","xEndIndex","focusedItemInfo","hoveredItemInfo","_jsxs","jsxs","lineAreaSeries","index","seriesItem","getLineAreaSegments","areaColor","dvt","contrastLine","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isCurrent"],"mappings":"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"}
|
package/amd/Link-6f583879.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', './classNames-08d99695', './usePress-a9ed1488', './useComponentTheme-5aa41a8f', './useInteractionStyle-360d25a5', './UNSAFE_Link/themes/redwood/LinkTheme', './TabbableModeContext-a9c97640', './useTabbableMode-dc440317', './useTestId-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', './classNames-08d99695', './usePress-a9ed1488', './useComponentTheme-5aa41a8f', './useInteractionStyle-360d25a5', './UNSAFE_Link/themes/redwood/LinkTheme', './TabbableModeContext-a9c97640', './useTabbableMode-dc440317', './useTestId-f3b8b319'], (function(e,s,a,t,n,o,r,d,i,l){"use strict";const b=()=>{};e.Link=function({href:e,variant:d,placement:c="standalone",target:u,testId:p,"aria-describedby":v,"aria-label":m,"aria-labelledby":y,children:T,onClick:h,isDisabled:H}){const{interactionProps:f,applyPseudoHoverStyle:P,applyHoverStyle:I}=o.useInteractionStyle(),{classes:k}=n.useComponentTheme(r.LinkRedwoodTheme,{needsEventsHover:I?"isNeedsEventsHover":"notNeedsEventsHover",pseudoHover:P?"isPseudoHover":"notPseudoHover",variant:d,placement:c,disabled:H?"isDisabled":"notDisabled"}),{isTabbable:x}=i.useTabbableMode(),N=a.classNames([k]),{pressProps:S}=t.usePress(h??b),C=l.useTestId(p);return s.jsx("a",{tabIndex:x&&!H?0:-1,href:H?void 0:e,"aria-describedby":v,"aria-label":m,"aria-labelledby":y,target:u,...!H&&S,...f,...C,class:N,children:T})}}));
|
|
2
2
|
//# sourceMappingURL=Link-6f583879.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', 'preact/hooks', './classNames-08d99695', './mergeProps-bcfa6a92', './keys-cc1cb01d', './LoadMoreCollection-83413a59', './VirtualizedCollection-897516a5', 'preact/compat', './TabbableModeContext-a9c97640', './useId-c9578d26', './FocusTrap-eb3989cb', './useInteractionStyle-360d25a5', './mergeInterpolations-9ede4cf7', './flexitem-5db48325', './PRIVATE_List/themes/ListStyles.css', './collectionUtils-6740111c', './Skeleton-325116ff', './Flex-db3ddadb', './Selector-ad2af152', './ImageVars.css-17386400', './useTheme-45e3b0b3', './useTestId-f3b8b319', 'preact', './useSelection-2c9ff75a', './useCurrentKey-26170e5e', './useCollectionFocusRing-64636529', './useCollectionGestureContext-b082d378', './useItemAction-66d976c4', './useTabbableModeSet-b4c18d1a', './Inset-d7d99801', 'module'], (function(e,t,i,s,n,r,l,o,a,c,d,u,g,b,f,m,y,p,v,h,x,S,k,C,I,T,w,V,j,A,P,R){"use strict";const E=e=>{switch(e){case"listbox":return{list:"listbox",item:"presentation",cell:"option"};case"treegrid":return{list:"treegrid",item:"row",cell:"gridcell"};default:return{list:"grid",item:"row",cell:"gridcell"}}},F="[data-oj-key]";function K({children:e,context:n,itemDepth:r,isFocused:l,isFocusRingVisible:o,isActive:a,isGridlineVisible:y,isSelected:p,isTopGridlineVisible:v=!1,isTabbable:h=!1,role:x,selectionMode:S,suggestion:k,currentItemVariant:C}){const I=i.useRef(null),T=i.useMemo((()=>E(x)),[x]),w=n.metadata.key,V=n.index,j="option"===T.cell?{role:T.cell,"aria-posinset":V+1,"aria-setsize":-1}:{role:T.cell},{interactionProps:A,applyActiveStyle:P,applyHoverStyle:R,applyPseudoHoverStyle:F}=g.useInteractionStyle(),K=m.listItemMultiVariantStyles({selectable:M(S,p)?"isSelectable":"notSelectable",selected:p?"isSelected":"notSelected",selectedSingle:p&&"single"===S?"isSelectedSingle":"notSelectedSingle",needsEventsHover:R?"isNeedsEventsHover":"notNeedsEventsHover",pseudoHover:F?"isPseudoHover":"notPseudoHover",active:P||a?"isActive":"notActive",focusHighlight:"highlight"===C&&l?"isFocusHighlight":"notFocusHighlight",focusRingVisible:o&&l?"isFocusRingVisible":"notFocusRingVisible",gridlineTop:v?"visible":"hidden",gridlineBottom:!y&&("end"!==k||y||p&&"single"===S)?"hidden":"visible"}),L=s.classNames([K]),H=b.mergeInterpolations([...Object.values(f.flexitemInterpolations)]),{class:z,...D}=H({flex:"1 1 auto",alignSelf:"center"}),N=s.classNames([z,"multiple"===S&&m.listItemStyles.checkboxContainer]);return t.jsx("div",{"aria-rowindex":"grid"===x?V+1:void 0,"aria-level":r,"data-oj-key":w,class:L,ref:I,role:T.item,...k&&{"data-oj-suggestion":!0},..."number"==typeof w&&{"data-oj-key-type":"number"},...A,children:t.jsx("div",{id:d.useId(),style:D,class:N,"aria-posinset":"grid"===x?void 0:V+1,"aria-setsize":"grid"===x?void 0:-1,onKeyDown:e=>{!h||"ArrowDown"!==e.key&&"ArrowUp"!==e.key||e.stopPropagation()},"aria-colindex":"grid"===x?1:void 0,"aria-selected":"none"!==S?p:void 0,...j,children:t.jsx(c.TabbableModeContext.Provider,{value:{isTabbable:h},children:t.jsx(u.FocusTrap,{isDisabled:!h,restoreFocusRef:!1,children:e(n)})})})})}const M=(e,t)=>"none"!==e&&("multiple"===e||!t),L=a.memo(K,((e,t)=>!(!e||!t)&&(e.children===t.children&&e.isFocused===t.isFocused&&e.isFocusRingVisible===t.isFocusRingVisible&&e.isSelected===t.isSelected&&e.isTabbable===t.isTabbable&&e.isActive===t.isActive&&e.suggestion===t.suggestion&&e.isGridlineVisible===t.isGridlineVisible&&e.isTopGridlineVisible===t.isTopGridlineVisible&&y.compareListItemContext(e.context,t.context))));function H({children:e,minimumCount:n=1}){const[r,l]=i.useState(!1);i.useEffect((()=>{setTimeout((()=>{l(!0)}),50)}),[]);const o=s.classNames([m.skeletonStyles.container]);return r&&e?t.jsx("div",{class:o,role:"presentation",children:[...Array(n)].map(((t,i)=>e(i)))}):null}const z="oj-collection-sparkle";function D({sparkleHeight:e}){const{name:i}=S.useTheme();if(e<=0)return null;const n=e+"px",r=s.classNames([m.sparkleStyles.base]),l=s.classNames([m.sparkleStyles.container,z,"redwood"===i&&x.globalImages]);return t.jsx("div",{class:l,children:t.jsx("div",{class:r,style:{height:n}})},"sparkle")}const N=(e,t)=>{if(0===t)return null;return e.slice(0,t).reduce(((e,i,s)=>{const n=i.metadata.key;return s===t-1?e.set(n,"end"):e.set(n,!0),e}),new Map)},G=(e,t,i)=>{if(e&&t&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded():e.scrollIntoView({block:"nearest"}),i>0)){const s=t.getBoundingClientRect(),n=e.getBoundingClientRect(),r=s.top+i-n.top;r>0&&(t.scrollTop=t.scrollTop-r)}},B=(e,t)=>{const i=t.data.map((e=>e.metadata.key)),s=i.indexOf(e.value.start),n=i.indexOf(e.value.end),r=Math.min(s,n),l=Math.max(s,n);return-1===r?{offset:0,count:t.totalSize}:i.slice(r,l+1)},O=e=>!(!e.parentElement||!e.parentElement.classList.contains("oj-listview-expander"));const _=(e,t)=>t??{scroller:()=>e.current},U={all:!1,keys:new Set},q=t.jsx(H,{minimumCount:25,children:()=>t.jsx(P.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})}),Y=t.jsx("div",{class:l.LOADMORE_STYLE_CLASS,children:t.jsx(H,{minimumCount:3,children:()=>t.jsx(P.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})})}),$=(e,t)=>{if(t){const i=Math.min(t.offset,e.offset+e.totalSize),s=i-e.offset;s>0&&(e={offset:i,data:e.data.slice(s,s+t.count),totalSize:e.totalSize,sizePrecision:e.sizePrecision})}return e};e.List=function({"aria-label":e,"aria-labelledby":a,allowTabbableMode:c=!0,children:d,currentKey:u,data:g,gridlines:b,loadingIndicator:f=q,onCurrentKeyChange:p,onLoadRange:v,onSelectionChange:x,onItemAction:S,rangeExtractor:C,role:P="grid",selectedKeys:R=U,selectionMode:M="none",viewportConfig:H,currentItemVariant:z="none",promotedSection:J,isVirtualized:Q=!1,customItemRenderer:W,scrollToVisibleOffset:X,testId:Z,scrollerRef:ee,reorderProps:te,contextMenuTriggerProps:ie,...se}){const ne=i.useRef(null),re=i.useRef(),[le,oe]=i.useState(!1),ae="none"===M?void 0:"multiple"===M,ce=null===g?void 0:"exact"===g.sizePrecision?g.totalSize:-1,de=s.classNames([m.listStyles.base]),ue=i.useCallback(((e,t)=>{g&&(re.current={detail:e,range:{offset:g.offset,count:g.data.length}},v(t))}),[g,v]),{eventProps:ge,showFocusRing:be,handleSelectionChange:fe}=((e,t,s="none",r,l,o,a,c,d="grid",u,g,b)=>{const f=i.useMemo((()=>E(d)),[d]),m=i.useRef(),{currentKeyProps:p}=T.useCurrentKey((e=>y.keyExtractor(e,F)),"multiple"!==s,y.getPrevNextKey(g.current,e,!0,F),y.getPrevNextKey(g.current,e,!1,F),void 0,void 0,e,r),[v,h]=w.useCollectionFocusRing(g,["ArrowUp","ArrowDown"]);i.useEffect((()=>{if(null!=e&&g.current){const t=y.findElementByKey(g.current,e,F);if(t){const e=g.current.getAttribute("aria-activedescendant"),i=t.querySelector(`[role=${f.cell}]`);if(i&&e!==i.id){g.current.setAttribute("aria-activedescendant",i.id);const e=c?.scroller(),s=u?u(g.current):0;G(t,null!=e?e:g.current,s)}}}}),[e,a,f.cell,c,u,g]);const x=i.useCallback((e=>{l&&(!1===e.value.all&&e.value.keys.size>0&&(m.current=Array.from(e.value.keys.values()).pop()),l(e))}),[m,l]),S=i.useCallback((e=>{if(a&&l){const t=B(e,a);Array.isArray(t)?("shiftSpace"===e.eventType?m.current=e.value.start:m.current=e.value.end,l({value:{all:!1,keys:new Set(t)},target:null})):b(e,t)}}),[a,l,b]),k=V.useCollectionGestureContext(),{selectionProps:C}=I.useSelection((t=>t===g.current?void 0===e?null:e:y.keyExtractor(t,F)),t,s,!1,"replace","embedded"===k,x,m.current,e,((e,t)=>y.getPrevNextKey(g.current,e,t,F)),void 0,(e=>{if(g.current){const t=y.findElementByKey(g.current,e,F);if(t){const e=c?.scroller(),i=u?u(g.current):0;G(t,null!=e?e:g.current,i)}}}),S),A=j.useItemAction(e,a,o,F,"embedded"===k);return{eventProps:n.mergeProps(p,h,C,A),showFocusRing:v,handleSelectionChange:x}})(u,R,M,p,x,S,g,H,P,X,ne,ue),{eventProps:me,isCurrentTabbableKey:ye}=((e,t,s,l,o,a)=>{const c=i.useRef(),[d,u]=A.useTabbableModeSet(l,(e=>O(e)?null:y.keyExtractor(e,F)),e,t),g=i.useCallback((()=>{if(l.current&&t&&(!s||d(void 0))){const e=c.current||y.getFirstVisibleKey(l.current,F);r.isKeyDefined(e)&&t({value:e})}}),[l,t,s,d]),b=i.useCallback((i=>{if(O(i.target)){l.current?.focus();const e=y.keyExtractor(i.target,F);t&&r.isKeyDefined(e)&&t({value:e})}else if(r.isKeyDefined(e)){if(l.current){const t=y.findElementByKey(l.current,e,F);if(t){const e=o?.scroller(),i=a?a(l.current):0;G(t,null!=e?e:l.current,i)}}}else t&&g()}),[e,g,t,l]),f=i.useCallback((e=>{const t=y.keyExtractor(e.target,F);r.isKeyDefined(t)&&(c.current=t)}),[]);return{eventProps:n.mergeProps(s?u:{},{onFocus:b,onPointerDown:f}),isCurrentTabbableKey:d}})(u,p,c,ne,H,X);if(g&&void 0!==re.current&&x){const e=B(re.current.detail,g);Array.isArray(e)&&x({value:{all:!1,keys:new Set(e)},target:null});const t=re.current?re.current.range:{offset:g.offset,count:g.data.length};g=$(g,t),re.current=void 0,v(t)}const{sparkleHeight:pe,suggestions:ve}=((e,t,s)=>{const[n,r]=i.useState(0),l=i.useMemo((()=>e&&t&&N(e.data,t.count)),[e,t]);return i.useEffect((()=>{if(l){const e=s.current?.querySelector("."+o.PLACEHOLDER_STYLE_CLASS);let t=e?.offsetHeight||0;const i=s.current?.querySelectorAll("[data-oj-suggestion]");i?.forEach((e=>t+=e.offsetHeight)),r(t)}}),[s,l]),{sparkleHeight:n,suggestions:l}})(g,J,ne),he=t.jsx(D,{sparkleHeight:pe}),xe=i.useCallback((e=>{const i=e.data,s="multiple"===M?()=>t.jsx(h.Selector,{onChange:fe,rowKey:i.metadata.key,selectedKeys:R}):void 0;return{index:e.index,data:i.data,metadata:i.metadata,selector:s}}),[M,R,fe]),Se=Q?K:L,ke=e=>{const i=xe(e),s=ve?.get(i.metadata.key),n=c&&ye(i.metadata.key),l=u===i.metadata.key&&!n,o=l&&le,a=r.containsKey(R,i.metadata.key),f=l&&be,m=(e,n)=>{return t.jsx(Se,{context:e,isFocused:l,isFocusRingVisible:f,isActive:o,isGridlineVisible:(r=i.index,"visible"===b?.item&&(r+1!==g?.totalSize||"visible"===b?.bottom)),isSelected:a,isTabbable:c&&ye(i.metadata.key),role:P,selectionMode:M,currentItemVariant:z,...s&&{suggestion:s},...0===i.index&&{isTopGridlineVisible:"visible"===b?.item&&"visible"===b?.top},...n,children:d},i.metadata.key);var r};if(W){return W({listItemContext:i,isFocused:l,isFocusRingVisible:f,isSelected:a,isTabbable:n,isActive:o,defaultListItem:m})}return m(i)};H=_(ne,H);const Ce=i.useCallback((e=>{" "===e.key&&r.isKeyDefined(u)&&"none"!==M&&oe(!0)}),[u,M,oe]),Ie=i.useCallback((()=>{oe(!1)}),[oe]);i.useImperativeHandle(ee,(()=>ne.current));const Te=k.useTestId(Z);return t.jsx("div",{...n.mergeProps(ge,me,ie||{},te||{},{onKeyDown:Ce,onKeyUp:Ie},se),...Te,role:P,"aria-rowcount":"grid"===P?ce:void 0,"aria-colcount":"grid"===P?1:void 0,ref:ne,class:de,tabIndex:0,"aria-label":e,"aria-labelledby":a,"aria-multiselectable":ae,children:null==g?f:Q?t.jsx(o.VirtualizedCollection,{data:g,itemSelector:F,loadMoreIndicator:Y,onLoadRange:v,rangeExtractor:C,suggestions:he,viewportConfig:H,children:ke}):t.jsx(l.LoadMoreCollection,{data:g.data,loadMoreIndicator:Y,hasMore:"atLeast"===g.sizePrecision&&g.data.length<=g.totalSize,onLoadMore:()=>{g&&v({offset:0,count:g.data.length+25})},suggestions:he,viewportConfig:H,children:ke})})},e.SkeletonContainer=H,e.excludeGroup=(e,t)=>{if(!t.all){const i=e.data.filter((e=>!e.metadata.isLeaf)).map((e=>e.metadata.key)),s=Array.from(t.keys.values()).filter((e=>!i.includes(e)));return{...t,keys:new Set(s)}}return t},e.scrollToVisible=G}));
|
|
2
|
+
//# sourceMappingURL=List-5958c802.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"List-88a7bee6.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/Sparkle.tsx","../../src/PRIVATE_List/usePromotedSection.ts","../../src/PRIVATE_List/ListUtils.ts","../../src/PRIVATE_List/useSelectionAndNavigation.ts","../../src/PRIVATE_List/useFocusTabbableMode.ts","../../src/PRIVATE_List/List.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 */\n\nimport { Roles } from '../UNSAFE_ListView';\nimport { HTMLAttributesSignalExcluded } from '../utils/UNSAFE_attributeUtils';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (\n ariaRole: Roles\n): {\n list: HTMLAttributesSignalExcluded['role'];\n item: HTMLAttributesSignalExcluded['role'];\n cell: HTMLAttributesSignalExcluded['role'];\n} => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 */\nimport { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { memo } from 'preact/compat';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\nimport { useInteractionStyle } from '../hooks/UNSAFE_useInteractionStyle';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { listItemStyles, listItemMultiVariantStyles } from './themes/ListStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n itemDepth?: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isActive: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number, D>({\n children,\n context,\n itemDepth,\n isFocused,\n isFocusRingVisible,\n isActive,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const roles = useMemo(() => getListViewRoles(role), [role]);\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const { interactionProps, applyActiveStyle, applyHoverStyle, applyPseudoHoverStyle } =\n useInteractionStyle();\n\n const variantClasses = listItemMultiVariantStyles({\n selectable: isSelectable(selectionMode, isSelected) ? 'isSelectable' : 'notSelectable',\n selected: isSelected ? 'isSelected' : 'notSelected',\n selectedSingle:\n isSelected && selectionMode === 'single' ? 'isSelectedSingle' : 'notSelectedSingle',\n needsEventsHover: applyHoverStyle ? 'isNeedsEventsHover' : 'notNeedsEventsHover',\n pseudoHover: applyPseudoHoverStyle ? 'isPseudoHover' : 'notPseudoHover',\n active: applyActiveStyle || isActive ? 'isActive' : 'notActive',\n focusHighlight:\n currentItemVariant === 'highlight' && isFocused ? 'isFocusHighlight' : 'notFocusHighlight',\n focusRingVisible:\n isFocusRingVisible && isFocused ? 'isFocusRingVisible' : 'notFocusRingVisible',\n gridlineTop: isTopGridlineVisible ? 'visible' : 'hidden',\n gridlineBottom:\n isGridlineVisible ||\n (suggestion === 'end' && !isGridlineVisible && (!isSelected || selectionMode !== 'single'))\n ? 'visible'\n : 'hidden'\n });\n const classes = classNames([variantClasses]);\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const { class: cls, ...cellStyles } = styleInterpolations({\n flex: '1 1 auto',\n alignSelf: 'center'\n });\n const cellClasses = classNames([\n cls,\n selectionMode === 'multiple' && listItemStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={role === 'grid' ? itemIndex + 1 : undefined}\n aria-level={itemDepth}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...interactionProps}>\n <div\n id={useId()}\n style={cellStyles}\n class={cellClasses}\n aria-posinset={role === 'grid' ? undefined : itemIndex + 1}\n aria-setsize={role === 'grid' ? undefined : -1}\n onKeyDown={handleKeyDown}\n aria-colindex={role === 'grid' ? 1 : undefined}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children(context)}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\n};\n\nexport const MemoizeListViewItem = memo(ListViewItem, (prev: any, next: any) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.isTabbable === next.isTabbable &&\n prev.isActive === next.isActive &&\n prev.suggestion === next.suggestion &&\n prev.isGridlineVisible === next.isGridlineVisible &&\n prev.isTopGridlineVisible === next.isTopGridlineVisible &&\n compareListItemContext(prev.context, next.context)\n );\n }\n return false;\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 */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { skeletonStyles } from './themes/ListStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\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 */\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { sparkleStyles } from './themes/ListStyles.css';\nimport { useTheme } from '#/hooks/UNSAFE_useTheme';\n\nconst SPARKLE_STYLE_CLASS = 'oj-collection-sparkle';\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n const { name } = useTheme();\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([\n sparkleStyles.container,\n SPARKLE_STYLE_CLASS,\n // TODO: this component should create separate theme definitions to only show the image in redwood\n name === 'redwood' && globalImages\n ]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n","import { RefObject } from 'preact';\nimport { useState, useEffect, useMemo } from 'preact/hooks';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { Metadata } from '../UNSAFE_Collection';\n\nexport const usePromotedSection = <K extends string | number, D>(\n data: ListViewProps<K, D>['data'],\n promotedSection: ListViewProps<K, D>['promotedSection'],\n rootRef: RefObject<HTMLDivElement>\n) => {\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const suggestions = useMemo(\n () => data && promotedSection && findSuggestions(data.data, promotedSection.count),\n [data, promotedSection]\n );\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [rootRef, suggestions]);\n\n return { sparkleHeight, suggestions };\n};\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(data: { data: D; metadata: Metadata<K> }[], count: number) => {\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\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 */\nimport { FlattenedDataState } from '../UNSAFE_Collection';\nimport { Keys } from '../utils/UNSAFE_keys';\n\n/**\n * Helper function to only include keys of leaf items.\n */\nexport const excludeGroup = <K, D>(data: FlattenedDataState<K, D>, keys: Keys<K>) => {\n if (!keys.all) {\n const groups = data.data\n .filter((dataMetadata) => {\n return !dataMetadata.metadata.isLeaf;\n })\n .map((dataMetadata) => {\n return dataMetadata.metadata.key;\n });\n const leafOnly = Array.from(keys.keys.values()).filter((key: K) => {\n return !groups.includes(key);\n });\n return { ...keys, keys: new Set(leafOnly) };\n }\n return keys;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nexport const scrollToVisible = (elem: Element, scroller: Element, offset: number) => {\n if (elem && scroller) {\n if ((elem as any).scrollIntoViewIfNeeded) {\n // for Safari, we'll need the non-standard scrollIntoViewIfNeeded\n (elem as any).scrollIntoViewIfNeeded();\n } else {\n elem.scrollIntoView({ block: 'nearest' });\n }\n if (offset > 0) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n const diff = scrollerBounds.top + offset - elemBounds.top;\n if (diff > 0) {\n scroller.scrollTop = scroller.scrollTop - diff;\n }\n }\n }\n};\n","import { RefObject } from 'preact';\nimport { useEffect, useCallback, useRef, useMemo } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { DataState, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { getListViewRoles } from './ListRoles';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getPrevNextKey, findElementByKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useSelectionAndNavigation = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n selectedKeys: Keys<K>,\n selectionMode: ListViewProps<K, D>['selectionMode'] = 'none',\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n onSelectionChange: ListViewProps<K, D>['onSelectionChange'],\n onItemAction: ListViewProps<K, D>['onItemAction'],\n data: ListViewProps<K, D>['data'],\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n role: ListViewProps<K, D>['role'] = 'grid',\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset'],\n rootRef: RefObject<HTMLDivElement>,\n pendingSelectionCallback: (detail: SelectionRangeDetail<K>, value: Range) => void\n) => {\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n if (cell && activeDescendant !== cell.id) {\n // update aria-activedescendant for screenreader\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig, scrollToVisibleOffset, rootRef]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelectionCallback(detail, value);\n }\n }\n },\n [data, onSelectionChange, pendingSelectionCallback]\n );\n\n const value = useCollectionGestureContext();\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n value === 'embedded',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n const itemActionProps = useItemAction(\n currentKey,\n data,\n onItemAction,\n ITEM_SELECTOR,\n value === 'embedded'\n );\n\n return {\n eventProps: mergeProps(currentKeyProps, focusRingProps, selectionProps, itemActionProps),\n showFocusRing,\n handleSelectionChange\n };\n};\n\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n","import { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getFirstVisibleKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '../utils/UNSAFE_keys';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { findElementByKey } from '../utils/PRIVATE_collectionUtils';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useFocusTabbableMode = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n allowTabbableMode: ListViewProps<K, D>['allowTabbableMode'],\n rootRef: RefObject<HTMLDivElement>,\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset']\n) => {\n const pendingCurrentKey = useRef<K>();\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n // we don't want List to go into Tabbable mode when user clicks on expander\n return isExpander(element) ? null : (keyExtractor(element, ITEM_SELECTOR) as K);\n },\n currentKey,\n onCurrentKeyChange\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [rootRef, onCurrentKeyChange, allowTabbableMode, isCurrentTabbableKey]);\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n if (isExpander(event.target as HTMLElement)) {\n rootRef.current?.focus();\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (onCurrentKeyChange && isKeyDefined(key)) {\n onCurrentKeyChange({ value: key as K });\n }\n return;\n }\n if (!isKeyDefined(currentKey)) {\n onCurrentKeyChange && handleInitialFocus();\n } else if (rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when listview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n [currentKey, handleInitialFocus, onCurrentKeyChange, rootRef]\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) {\n pendingCurrentKey.current = key as K;\n }\n }, []);\n\n return {\n eventProps: mergeProps(allowTabbableMode ? tabbableModeProps : {}, {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown\n }),\n isCurrentTabbableKey\n };\n};\n\nconst isExpander = (elem: HTMLElement) => {\n if (elem.parentElement && elem.parentElement.classList.contains('oj-listview-expander')) {\n return true;\n }\n return false;\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 */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useState, useImperativeHandle } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, ListItemRendererContext, Range } from '../UNSAFE_Collection';\nimport { LoadMoreCollection, LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { VirtualizedCollection } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR, MemoizeListViewItem } from './ListItem';\n\nimport { SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { Sparkle } from './Sparkle';\nimport { listStyles } from './themes/ListStyles.css';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { usePromotedSection } from './usePromotedSection';\nimport { useSelectionAndNavigation, handleSelectionRange } from './useSelectionAndNavigation';\nimport { useFocusTabbableMode } from './useFocusTabbableMode';\nimport { Inset } from '../UNSAFE_Inset';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/ListBaseTheme.css';\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n promotedSection,\n isVirtualized = false,\n customItemRenderer,\n scrollToVisibleOffset,\n testId,\n scrollerRef,\n reorderProps,\n contextMenuTriggerProps,\n ...props\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n // tracking pending selection key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n\n const [active, setActive] = useState<boolean>(false);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([listStyles.base]);\n\n const pendingSelectionCallback = useCallback(\n (detail: SelectionRangeDetail<K>, value: Range) => {\n if (data) {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n },\n [data, onLoadRange]\n );\n const { eventProps, showFocusRing, handleSelectionChange } = useSelectionAndNavigation(\n currentKey,\n selectedKeys,\n selectionMode,\n onCurrentKeyChange,\n onSelectionChange,\n onItemAction,\n data,\n viewportConfig,\n role,\n scrollToVisibleOffset,\n rootRef,\n pendingSelectionCallback\n );\n\n const { eventProps: focusTabbableProps, isCurrentTabbableKey } = useFocusTabbableMode(\n currentKey,\n onCurrentKeyChange,\n allowTabbableMode,\n rootRef,\n viewportConfig,\n scrollToVisibleOffset\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const { sparkleHeight, suggestions } = usePromotedSection(data, promotedSection, rootRef);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n // Collection generic is of this type\n type DataStateData = DataState<K, D>['data'][number];\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n // note the type for ItemContext, this is the context coming from Collection\n const getItemContext = useCallback(\n (context: ItemContext<DataStateData>) => {\n const dataStateData = context.data;\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={dataStateData.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: dataStateData.data,\n metadata: dataStateData.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const ItemComponent = isVirtualized ? ListViewItem : MemoizeListViewItem;\n\n const childrenComponent = (context: ItemContext<DataStateData>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isActive = isFocused && active;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n const isFocusRingVisible = isFocused && showFocusRing;\n const listItemFunc = (ctx: ListItemRendererContext<K, D>, otherProps?: any) => (\n <ItemComponent\n key={listItemContext.metadata.key}\n context={ctx}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isActive={isActive}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}\n {...otherProps}>\n {children}\n </ItemComponent>\n );\n\n // if customItemRenderer is specified (ExpandableList and GroupedList)\n // create a custom context with additional info including a function\n // that helps create the default item component\n if (customItemRenderer) {\n const customRendererContext = {\n listItemContext,\n isFocused,\n isFocusRingVisible,\n isSelected,\n isTabbable,\n isActive,\n defaultListItem: listItemFunc\n };\n return customItemRenderer(customRendererContext);\n }\n return listItemFunc(listItemContext);\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === ' ' && isKeyDefined(currentKey) && selectionMode !== 'none') {\n setActive(true);\n }\n },\n [currentKey, selectionMode, setActive]\n );\n\n const handleKeyUp = useCallback(() => {\n setActive(false);\n }, [setActive]);\n\n useImperativeHandle(scrollerRef!, () => rootRef.current);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n const testIdProps = useTestId(testId);\n return (\n <div\n {...mergeProps(\n eventProps,\n focusTabbableProps,\n contextMenuTriggerProps || {},\n reorderProps || {},\n {\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp\n },\n props\n )}\n {...testIdProps}\n role={role}\n aria-rowcount={role === 'grid' ? ariaRowCount : undefined}\n aria-colcount={role === 'grid' ? 1 : undefined}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? (\n loadingIndicator\n ) : isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data.data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n hasMore={data.sizePrecision === 'atLeast' && data.data.length <= data.totalSize}\n onLoadMore={() => {\n data && onLoadRange({ offset: 0, count: data.data.length + 25 });\n }}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n )}\n </div>\n );\n}\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n </div>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["getListViewRoles","ariaRole","list","item","cell","ITEM_SELECTOR","ListViewItem","children","context","itemDepth","isFocused","isFocusRingVisible","isActive","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","itemKey","metadata","key","itemIndex","index","cellRoleAttributes","interactionProps","applyActiveStyle","applyHoverStyle","applyPseudoHoverStyle","useInteractionStyle","variantClasses","listItemMultiVariantStyles","selectable","isSelectable","selected","selectedSingle","needsEventsHover","pseudoHover","active","focusHighlight","focusRingVisible","gridlineTop","gridlineBottom","classes","classNames","styleInterpolations","mergeInterpolations","Object","values","flexitemInterpolations","class","cls","cellStyles","flex","alignSelf","cellClasses","listItemStyles","checkboxContainer","_jsx","jsx","undefined","ref","id","useId","style","onKeyDown","event","stopPropagation","TabbableModeContext","Provider","value","FocusTrap","isDisabled","restoreFocusRef","isItemSelected","MemoizeListViewItem","memo","prev","next","compareListItemContext","SkeletonContainer","minimumCount","isVisible","setIsVisible","useState","useEffect","setTimeout","containerClasses","skeletonStyles","container","Array","map","_element","SPARKLE_STYLE_CLASS","Sparkle","sparkleHeight","name","useTheme","height","sparkleClasses","sparkleStyles","base","globalImages","findSuggestions","data","count","slice","reduce","suggestions","set","Map","scrollToVisible","elem","scroller","offset","scrollIntoViewIfNeeded","scrollIntoView","block","scrollerBounds","getBoundingClientRect","elemBounds","diff","top","scrollTop","handleSelectionRange","detail","dataState","keys","startIndex","indexOf","start","endIndex","end","minIndex","Math","min","maxIndex","max","totalSize","isExpander","parentElement","classList","contains","getViewportConfig","config","current","emptyKeys","all","Set","defaultLoadingIndicator","Inset","variant","Flex","align","Skeleton","defaultLoadMoreIndicator","LOADMORE_STYLE_CLASS","adjustDataState","range","safeRangeOffset","sizePrecision","ariaLabel","ariaLabelledBy","allowTabbableMode","currentKey","gridlines","loadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","viewportConfig","promotedSection","isVirtualized","customItemRenderer","scrollToVisibleOffset","testId","scrollerRef","reorderProps","contextMenuTriggerProps","props","pendingSelection","setActive","ariaMultiSelectable","ariaRowCount","listStyles","pendingSelectionCallback","useCallback","length","eventProps","showFocusRing","handleSelectionChange","listRoles","anchorKey","currentKeyProps","useCurrentKey","element","keyExtractor","getPrevNextKey","focusRingProps","useCollectionFocusRing","findElementByKey","activeDescendant","getAttribute","querySelector","setAttribute","size","from","pop","handleSelectionRangeChange","isArray","eventType","target","useCollectionGestureContext","selectionProps","useSelection","isPrev","itemActionProps","useItemAction","mergeProps","useSelectionAndNavigation","focusTabbableProps","isCurrentTabbableKey","pendingCurrentKey","tabbableModeProps","useTabbableModeSet","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleFocus","focus","handlePointerDown","onFocus","onPointerDown","useFocusTabbableMode","setSparkleHeight","placeholder","PLACEHOLDER_STYLE_CLASS","offsetHeight","suggestionItems","querySelectorAll","forEach","usePromotedSection","sparkleIndicator","getItemContext","dataStateData","selectorRenderer","Selector","onChange","rowKey","selector","ItemComponent","childrenComponent","listItemContext","get","containsKey","listItemFunc","ctx","otherProps","bottom","defaultListItem","handleKeyDown","handleKeyUp","useImperativeHandle","testIdProps","useTestId","onKeyUp","tabIndex","VirtualizedCollection","itemSelector","loadMoreIndicator","LoadMoreCollection","hasMore","onLoadMore","groups","filter","dataMetadata","isLeaf","leafOnly","includes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"List-5958c802.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/Sparkle.tsx","../../src/PRIVATE_List/usePromotedSection.ts","../../src/PRIVATE_List/ListUtils.ts","../../src/PRIVATE_List/useSelectionAndNavigation.ts","../../src/PRIVATE_List/useFocusTabbableMode.ts","../../src/PRIVATE_List/List.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 */\n\nimport { Roles } from '../UNSAFE_ListView';\nimport { HTMLAttributesSignalExcluded } from '../utils/UNSAFE_attributeUtils';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (\n ariaRole: Roles\n): {\n list: HTMLAttributesSignalExcluded['role'];\n item: HTMLAttributesSignalExcluded['role'];\n cell: HTMLAttributesSignalExcluded['role'];\n} => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 */\nimport { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { memo } from 'preact/compat';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\nimport { useInteractionStyle } from '../hooks/UNSAFE_useInteractionStyle';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { listItemStyles, listItemMultiVariantStyles } from './themes/ListStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n itemDepth?: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isActive: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number, D>({\n children,\n context,\n itemDepth,\n isFocused,\n isFocusRingVisible,\n isActive,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const roles = useMemo(() => getListViewRoles(role), [role]);\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const { interactionProps, applyActiveStyle, applyHoverStyle, applyPseudoHoverStyle } =\n useInteractionStyle();\n\n const variantClasses = listItemMultiVariantStyles({\n selectable: isSelectable(selectionMode, isSelected) ? 'isSelectable' : 'notSelectable',\n selected: isSelected ? 'isSelected' : 'notSelected',\n selectedSingle:\n isSelected && selectionMode === 'single' ? 'isSelectedSingle' : 'notSelectedSingle',\n needsEventsHover: applyHoverStyle ? 'isNeedsEventsHover' : 'notNeedsEventsHover',\n pseudoHover: applyPseudoHoverStyle ? 'isPseudoHover' : 'notPseudoHover',\n active: applyActiveStyle || isActive ? 'isActive' : 'notActive',\n focusHighlight:\n currentItemVariant === 'highlight' && isFocused ? 'isFocusHighlight' : 'notFocusHighlight',\n focusRingVisible:\n isFocusRingVisible && isFocused ? 'isFocusRingVisible' : 'notFocusRingVisible',\n gridlineTop: isTopGridlineVisible ? 'visible' : 'hidden',\n gridlineBottom:\n isGridlineVisible ||\n (suggestion === 'end' && !isGridlineVisible && (!isSelected || selectionMode !== 'single'))\n ? 'visible'\n : 'hidden'\n });\n const classes = classNames([variantClasses]);\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const { class: cls, ...cellStyles } = styleInterpolations({\n flex: '1 1 auto',\n alignSelf: 'center'\n });\n const cellClasses = classNames([\n cls,\n selectionMode === 'multiple' && listItemStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={role === 'grid' ? itemIndex + 1 : undefined}\n aria-level={itemDepth}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...interactionProps}>\n <div\n id={useId()}\n style={cellStyles}\n class={cellClasses}\n aria-posinset={role === 'grid' ? undefined : itemIndex + 1}\n aria-setsize={role === 'grid' ? undefined : -1}\n onKeyDown={handleKeyDown}\n aria-colindex={role === 'grid' ? 1 : undefined}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children(context)}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\n};\n\nexport const MemoizeListViewItem = memo(ListViewItem, (prev: any, next: any) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.isTabbable === next.isTabbable &&\n prev.isActive === next.isActive &&\n prev.suggestion === next.suggestion &&\n prev.isGridlineVisible === next.isGridlineVisible &&\n prev.isTopGridlineVisible === next.isTopGridlineVisible &&\n compareListItemContext(prev.context, next.context)\n );\n }\n return false;\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 */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { skeletonStyles } from './themes/ListStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\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 */\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { sparkleStyles } from './themes/ListStyles.css';\nimport { useTheme } from '#/hooks/UNSAFE_useTheme';\n\nconst SPARKLE_STYLE_CLASS = 'oj-collection-sparkle';\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n const { name } = useTheme();\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([\n sparkleStyles.container,\n SPARKLE_STYLE_CLASS,\n // TODO: this component should create separate theme definitions to only show the image in redwood\n name === 'redwood' && globalImages\n ]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n","import { RefObject } from 'preact';\nimport { useState, useEffect, useMemo } from 'preact/hooks';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { Metadata } from '../UNSAFE_Collection';\n\nexport const usePromotedSection = <K extends string | number, D>(\n data: ListViewProps<K, D>['data'],\n promotedSection: ListViewProps<K, D>['promotedSection'],\n rootRef: RefObject<HTMLDivElement>\n) => {\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const suggestions = useMemo(\n () => data && promotedSection && findSuggestions(data.data, promotedSection.count),\n [data, promotedSection]\n );\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [rootRef, suggestions]);\n\n return { sparkleHeight, suggestions };\n};\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(data: { data: D; metadata: Metadata<K> }[], count: number) => {\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\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 */\nimport { FlattenedDataState } from '../UNSAFE_Collection';\nimport { Keys } from '../utils/UNSAFE_keys';\n\n/**\n * Helper function to only include keys of leaf items.\n */\nexport const excludeGroup = <K, D>(data: FlattenedDataState<K, D>, keys: Keys<K>) => {\n if (!keys.all) {\n const groups = data.data\n .filter((dataMetadata) => {\n return !dataMetadata.metadata.isLeaf;\n })\n .map((dataMetadata) => {\n return dataMetadata.metadata.key;\n });\n const leafOnly = Array.from(keys.keys.values()).filter((key: K) => {\n return !groups.includes(key);\n });\n return { ...keys, keys: new Set(leafOnly) };\n }\n return keys;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nexport const scrollToVisible = (elem: Element, scroller: Element, offset: number) => {\n if (elem && scroller) {\n if ((elem as any).scrollIntoViewIfNeeded) {\n // for Safari, we'll need the non-standard scrollIntoViewIfNeeded\n (elem as any).scrollIntoViewIfNeeded();\n } else {\n elem.scrollIntoView({ block: 'nearest' });\n }\n if (offset > 0) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n const diff = scrollerBounds.top + offset - elemBounds.top;\n if (diff > 0) {\n scroller.scrollTop = scroller.scrollTop - diff;\n }\n }\n }\n};\n","import { RefObject } from 'preact';\nimport { useEffect, useCallback, useRef, useMemo } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { DataState, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { getListViewRoles } from './ListRoles';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getPrevNextKey, findElementByKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useSelectionAndNavigation = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n selectedKeys: Keys<K>,\n selectionMode: ListViewProps<K, D>['selectionMode'] = 'none',\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n onSelectionChange: ListViewProps<K, D>['onSelectionChange'],\n onItemAction: ListViewProps<K, D>['onItemAction'],\n data: ListViewProps<K, D>['data'],\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n role: ListViewProps<K, D>['role'] = 'grid',\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset'],\n rootRef: RefObject<HTMLDivElement>,\n pendingSelectionCallback: (detail: SelectionRangeDetail<K>, value: Range) => void\n) => {\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n if (cell && activeDescendant !== cell.id) {\n // update aria-activedescendant for screenreader\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig, scrollToVisibleOffset, rootRef]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelectionCallback(detail, value);\n }\n }\n },\n [data, onSelectionChange, pendingSelectionCallback]\n );\n\n const value = useCollectionGestureContext();\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n value === 'embedded',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n const itemActionProps = useItemAction(\n currentKey,\n data,\n onItemAction,\n ITEM_SELECTOR,\n value === 'embedded'\n );\n\n return {\n eventProps: mergeProps(currentKeyProps, focusRingProps, selectionProps, itemActionProps),\n showFocusRing,\n handleSelectionChange\n };\n};\n\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n","import { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getFirstVisibleKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '../utils/UNSAFE_keys';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { findElementByKey } from '../utils/PRIVATE_collectionUtils';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useFocusTabbableMode = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n allowTabbableMode: ListViewProps<K, D>['allowTabbableMode'],\n rootRef: RefObject<HTMLDivElement>,\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset']\n) => {\n const pendingCurrentKey = useRef<K>();\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n // we don't want List to go into Tabbable mode when user clicks on expander\n return isExpander(element) ? null : (keyExtractor(element, ITEM_SELECTOR) as K);\n },\n currentKey,\n onCurrentKeyChange\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [rootRef, onCurrentKeyChange, allowTabbableMode, isCurrentTabbableKey]);\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n if (isExpander(event.target as HTMLElement)) {\n rootRef.current?.focus();\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (onCurrentKeyChange && isKeyDefined(key)) {\n onCurrentKeyChange({ value: key as K });\n }\n return;\n }\n if (!isKeyDefined(currentKey)) {\n onCurrentKeyChange && handleInitialFocus();\n } else if (rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when listview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n [currentKey, handleInitialFocus, onCurrentKeyChange, rootRef]\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) {\n pendingCurrentKey.current = key as K;\n }\n }, []);\n\n return {\n eventProps: mergeProps(allowTabbableMode ? tabbableModeProps : {}, {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown\n }),\n isCurrentTabbableKey\n };\n};\n\nconst isExpander = (elem: HTMLElement) => {\n if (elem.parentElement && elem.parentElement.classList.contains('oj-listview-expander')) {\n return true;\n }\n return false;\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 */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useState, useImperativeHandle } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, ListItemRendererContext, Range } from '../UNSAFE_Collection';\nimport { LoadMoreCollection, LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { VirtualizedCollection } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR, MemoizeListViewItem } from './ListItem';\n\nimport { SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { Sparkle } from './Sparkle';\nimport { listStyles } from './themes/ListStyles.css';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { usePromotedSection } from './usePromotedSection';\nimport { useSelectionAndNavigation, handleSelectionRange } from './useSelectionAndNavigation';\nimport { useFocusTabbableMode } from './useFocusTabbableMode';\nimport { Inset } from '../UNSAFE_Inset';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/ListBaseTheme.css';\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n promotedSection,\n isVirtualized = false,\n customItemRenderer,\n scrollToVisibleOffset,\n testId,\n scrollerRef,\n reorderProps,\n contextMenuTriggerProps,\n ...props\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n // tracking pending selection key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n\n const [active, setActive] = useState<boolean>(false);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([listStyles.base]);\n\n const pendingSelectionCallback = useCallback(\n (detail: SelectionRangeDetail<K>, value: Range) => {\n if (data) {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n },\n [data, onLoadRange]\n );\n const { eventProps, showFocusRing, handleSelectionChange } = useSelectionAndNavigation(\n currentKey,\n selectedKeys,\n selectionMode,\n onCurrentKeyChange,\n onSelectionChange,\n onItemAction,\n data,\n viewportConfig,\n role,\n scrollToVisibleOffset,\n rootRef,\n pendingSelectionCallback\n );\n\n const { eventProps: focusTabbableProps, isCurrentTabbableKey } = useFocusTabbableMode(\n currentKey,\n onCurrentKeyChange,\n allowTabbableMode,\n rootRef,\n viewportConfig,\n scrollToVisibleOffset\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const { sparkleHeight, suggestions } = usePromotedSection(data, promotedSection, rootRef);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n // Collection generic is of this type\n type DataStateData = DataState<K, D>['data'][number];\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n // note the type for ItemContext, this is the context coming from Collection\n const getItemContext = useCallback(\n (context: ItemContext<DataStateData>) => {\n const dataStateData = context.data;\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={dataStateData.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: dataStateData.data,\n metadata: dataStateData.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const ItemComponent = isVirtualized ? ListViewItem : MemoizeListViewItem;\n\n const childrenComponent = (context: ItemContext<DataStateData>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isActive = isFocused && active;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n const isFocusRingVisible = isFocused && showFocusRing;\n const listItemFunc = (ctx: ListItemRendererContext<K, D>, otherProps?: any) => (\n <ItemComponent\n key={listItemContext.metadata.key}\n context={ctx}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isActive={isActive}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}\n {...otherProps}>\n {children}\n </ItemComponent>\n );\n\n // if customItemRenderer is specified (ExpandableList and GroupedList)\n // create a custom context with additional info including a function\n // that helps create the default item component\n if (customItemRenderer) {\n const customRendererContext = {\n listItemContext,\n isFocused,\n isFocusRingVisible,\n isSelected,\n isTabbable,\n isActive,\n defaultListItem: listItemFunc\n };\n return customItemRenderer(customRendererContext);\n }\n return listItemFunc(listItemContext);\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === ' ' && isKeyDefined(currentKey) && selectionMode !== 'none') {\n setActive(true);\n }\n },\n [currentKey, selectionMode, setActive]\n );\n\n const handleKeyUp = useCallback(() => {\n setActive(false);\n }, [setActive]);\n\n useImperativeHandle(scrollerRef!, () => rootRef.current);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n const testIdProps = useTestId(testId);\n return (\n <div\n {...mergeProps(\n eventProps,\n focusTabbableProps,\n contextMenuTriggerProps || {},\n reorderProps || {},\n {\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp\n },\n props\n )}\n {...testIdProps}\n role={role}\n aria-rowcount={role === 'grid' ? ariaRowCount : undefined}\n aria-colcount={role === 'grid' ? 1 : undefined}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? (\n loadingIndicator\n ) : isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data.data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n hasMore={data.sizePrecision === 'atLeast' && data.data.length <= data.totalSize}\n onLoadMore={() => {\n data && onLoadRange({ offset: 0, count: data.data.length + 25 });\n }}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n )}\n </div>\n );\n}\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n </div>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["getListViewRoles","ariaRole","list","item","cell","ITEM_SELECTOR","ListViewItem","children","context","itemDepth","isFocused","isFocusRingVisible","isActive","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","itemKey","metadata","key","itemIndex","index","cellRoleAttributes","interactionProps","applyActiveStyle","applyHoverStyle","applyPseudoHoverStyle","useInteractionStyle","variantClasses","listItemMultiVariantStyles","selectable","isSelectable","selected","selectedSingle","needsEventsHover","pseudoHover","active","focusHighlight","focusRingVisible","gridlineTop","gridlineBottom","classes","classNames","styleInterpolations","mergeInterpolations","Object","values","flexitemInterpolations","class","cls","cellStyles","flex","alignSelf","cellClasses","listItemStyles","checkboxContainer","_jsx","jsx","undefined","ref","id","useId","style","onKeyDown","event","stopPropagation","TabbableModeContext","Provider","value","FocusTrap","isDisabled","restoreFocusRef","isItemSelected","MemoizeListViewItem","memo","prev","next","compareListItemContext","SkeletonContainer","minimumCount","isVisible","setIsVisible","useState","useEffect","setTimeout","containerClasses","skeletonStyles","container","Array","map","_element","SPARKLE_STYLE_CLASS","Sparkle","sparkleHeight","name","useTheme","height","sparkleClasses","sparkleStyles","base","globalImages","findSuggestions","data","count","slice","reduce","suggestions","set","Map","scrollToVisible","elem","scroller","offset","scrollIntoViewIfNeeded","scrollIntoView","block","scrollerBounds","getBoundingClientRect","elemBounds","diff","top","scrollTop","handleSelectionRange","detail","dataState","keys","startIndex","indexOf","start","endIndex","end","minIndex","Math","min","maxIndex","max","totalSize","isExpander","parentElement","classList","contains","getViewportConfig","config","current","emptyKeys","all","Set","defaultLoadingIndicator","Inset","variant","Flex","align","Skeleton","defaultLoadMoreIndicator","LOADMORE_STYLE_CLASS","adjustDataState","range","safeRangeOffset","sizePrecision","ariaLabel","ariaLabelledBy","allowTabbableMode","currentKey","gridlines","loadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","viewportConfig","promotedSection","isVirtualized","customItemRenderer","scrollToVisibleOffset","testId","scrollerRef","reorderProps","contextMenuTriggerProps","props","pendingSelection","setActive","ariaMultiSelectable","ariaRowCount","listStyles","pendingSelectionCallback","useCallback","length","eventProps","showFocusRing","handleSelectionChange","listRoles","anchorKey","currentKeyProps","useCurrentKey","element","keyExtractor","getPrevNextKey","focusRingProps","useCollectionFocusRing","findElementByKey","activeDescendant","getAttribute","querySelector","setAttribute","size","from","pop","handleSelectionRangeChange","isArray","eventType","target","useCollectionGestureContext","selectionProps","useSelection","isPrev","itemActionProps","useItemAction","mergeProps","useSelectionAndNavigation","focusTabbableProps","isCurrentTabbableKey","pendingCurrentKey","tabbableModeProps","useTabbableModeSet","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleFocus","focus","handlePointerDown","onFocus","onPointerDown","useFocusTabbableMode","setSparkleHeight","placeholder","PLACEHOLDER_STYLE_CLASS","offsetHeight","suggestionItems","querySelectorAll","forEach","usePromotedSection","sparkleIndicator","getItemContext","dataStateData","selectorRenderer","Selector","onChange","rowKey","selector","ItemComponent","childrenComponent","listItemContext","get","containsKey","listItemFunc","ctx","otherProps","bottom","defaultListItem","handleKeyDown","handleKeyUp","useImperativeHandle","testIdProps","useTestId","onKeyUp","tabIndex","VirtualizedCollection","itemSelector","loadMoreIndicator","LoadMoreCollection","hasMore","onLoadMore","groups","filter","dataMetadata","isLeaf","leafOnly","includes"],"mappings":"m6BAkBA,MAAMA,EACJC,IAMA,OAAQA,GACN,IAAK,UACH,MAAO,CAAEC,KAAM,UAAWC,KAAM,eAAgBC,KAAM,UACxD,IAAK,WACH,MAAO,CAAEF,KAAM,WAAYC,KAAM,MAAOC,KAAM,YAChD,QACE,MAAO,CAAEF,KAAM,OAAQC,KAAM,MAAOC,KAAM,YAC7C,ECRUC,EAAgB,gBAyBb,SAAAC,GAA2CC,SACzDA,EAAQC,QACRA,EAAOC,UACPA,EAASC,UACTA,EAASC,mBACTA,EAAkBC,SAClBA,EAAQC,kBACRA,EAAiBC,WACjBA,EAAUC,qBACVA,GAAuB,EAAKC,WAC5BA,GAAa,EAAKC,KAClBA,EAAIC,cACJA,EAAaC,WACbA,EAAUC,mBACVA,IAEA,MAAMC,EAAUC,SAAuB,MACjCC,EAAQC,EAAAA,SAAQ,IAAMxB,EAAiBiB,IAAO,CAACA,IAC/CQ,EAAUjB,EAAQkB,SAASC,IAC3BC,EAAYpB,EAAQqB,MAGpBC,EACW,WAAfP,EAAMnB,KACF,CACEa,KAAMM,EAAMnB,KACZ,gBAAiBwB,EAAY,EAC7B,gBAAiB,GAEnB,CACEX,KAAMM,EAAMnB,OAWd2B,iBAAEA,EAAgBC,iBAAEA,EAAgBC,gBAAEA,EAAeC,sBAAEA,GAC3DC,EAAAA,sBAEIC,EAAiBC,EAAAA,2BAA2B,CAChDC,WAAYC,EAAarB,EAAeJ,GAAc,eAAiB,gBACvE0B,SAAU1B,EAAa,aAAe,cACtC2B,eACE3B,GAAgC,WAAlBI,EAA6B,mBAAqB,oBAClEwB,iBAAkBT,EAAkB,qBAAuB,sBAC3DU,YAAaT,EAAwB,gBAAkB,iBACvDU,OAAQZ,GAAoBpB,EAAW,WAAa,YACpDiC,eACyB,cAAvBzB,GAAsCV,EAAY,mBAAqB,oBACzEoC,iBACEnC,GAAsBD,EAAY,qBAAuB,sBAC3DqC,YAAahC,EAAuB,UAAY,SAChDiC,gBACEnC,IACgB,QAAfM,GAAyBN,GAAuBC,GAAgC,WAAlBI,GAE3D,SADA,YAGF+B,EAAUC,EAAAA,WAAW,CAACd,IACtBe,EAAsBC,EAAAA,oBAAmC,IAC1DC,OAAOC,OAAOC,6BAEXC,MAAOC,KAAQC,GAAeP,EAAoB,CACxDQ,KAAM,WACNC,UAAW,WAEPC,EAAcX,EAAAA,WAAW,CAC7BO,EACkB,aAAlBvC,GAAgC4C,EAAAA,eAAeC,oBAMjD,OACEC,EACiBC,IAAA,MAAA,CAAA,gBAAS,SAAThD,EAAkBW,EAAY,OAAIsC,eACrCzD,EAAS,cACRgB,EACb+B,MAAOP,EACPkB,IAAK9C,EACLJ,KAAMM,EAAMpB,QACPgB,GAAc,CAAE,sBAAsB,MACnB,iBAAZM,GAAwB,CAAE,mBAAoB,aACtDM,EACJxB,SAAAyD,EAAAA,IAAA,MAAA,CACEI,GAAIC,UACJC,MAAOZ,EACPF,MAAOK,kBACiB,SAAT5C,OAAkBiD,EAAYtC,EAAY,EAC3C,eAAS,SAATX,OAAkBiD,GAAa,EAC7CK,UA7DiBC,KACjBxD,GAA6B,cAAdwD,EAAM7C,KAAqC,YAAd6C,EAAM7C,KACpD6C,EAAMC,iBACP,kBA2D2B,SAATxD,EAAkB,OAAIiD,EAAS,gBACb,SAAlBhD,EAA2BJ,OAAaoD,KACnDpC,WACJkC,MAACU,EAAAA,oBAAoBC,UAASC,MAAO,CAAE5D,uBACrCgD,MAACa,EAAAA,UAAU,CAAAC,YAAa9D,EAAY+D,iBAAiB,EAAKxE,SACvDA,EAASC,UAMtB,CAMA,MAAM+B,EAAe,CAACrB,EAA8B8D,IACzB,SAAlB9D,IAA+C,aAAlBA,IAAiC8D,GAG1DC,EAAsBC,EAAAA,KAAK5E,GAAc,CAAC6E,EAAWC,OAC5DD,IAAQC,KAERD,EAAK5E,WAAa6E,EAAK7E,UACvB4E,EAAKzE,YAAc0E,EAAK1E,WACxByE,EAAKxE,qBAAuByE,EAAKzE,oBACjCwE,EAAKrE,aAAesE,EAAKtE,YACzBqE,EAAKnE,aAAeoE,EAAKpE,YACzBmE,EAAKvE,WAAawE,EAAKxE,UACvBuE,EAAKhE,aAAeiE,EAAKjE,YACzBgE,EAAKtE,oBAAsBuE,EAAKvE,mBAChCsE,EAAKpE,uBAAyBqE,EAAKrE,sBACnCsE,EAAAA,uBAAuBF,EAAK3E,QAAS4E,EAAK5E,YClJ1C,SAAU8E,GAAkB/E,SAAEA,EAAQgF,aAAEA,EAAe,IAC3D,MAAOC,EAAWC,GAAgBC,EAAQA,UAAC,GAE3CC,EAAAA,WAAU,KACRC,YAAW,KACTH,GAAa,EAAK,GAZL,GAaD,GACb,IAEH,MAAMI,EAAmB3C,EAAUA,WAAC,CAAC4C,EAAAA,eAAeC,YACpD,OAAOP,GAAajF,EAClByD,aAAKR,MAAOqC,EAAkB5E,KAAK,eAAcV,SAC9C,IAAIyF,MAAMT,IAAeU,KAAI,CAACC,EAAUrE,IAAUtB,EAASsB,OAE5D,IACN,CCpCA,MAAMsE,EAAsB,wBAMZ,SAAAC,GAAQC,cAAEA,IACxB,MAAMC,KAAEA,GAASC,EAAAA,WACjB,GAAIF,GAAiB,EACnB,OAAO,KAGT,MAAMG,EAASH,EAAgB,KACzBI,EAAiBvD,EAAUA,WAAC,CAACwD,EAAAA,cAAcC,OAC3Cd,EAAmB3C,EAAAA,WAAW,CAClCwD,EAAAA,cAAcX,UACdI,EAES,YAATG,GAAsBM,EAAYA,eAGpC,OACE5C,EAAAA,WAAmBR,MAAOqC,EACxBtF,SAAAyD,EAAAA,IAAA,MAAA,CAAKR,MAAOiD,EAAgBnC,MAAO,CAAEkC,aAD9B,UAIb,CChCO,MAmCDK,EAAkB,CAAOC,EAA4CC,KACzE,GAAc,IAAVA,EACF,OAAO,KAIT,OADwBD,EAAKE,MAAM,EAAGD,GACfE,QAAO,CAACC,EAAatC,EAAO/C,KACjD,MAAMF,EAAMiD,EAAMlD,SAASC,IAQ3B,OANIE,IAAUkF,EAAQ,EACpBG,EAAYC,IAAIxF,EAAK,OAErBuF,EAAYC,IAAIxF,GAAK,GAGhBuF,CAAW,GACjB,IAAIE,IAAuB,ECxBnBC,EAAkB,CAACC,EAAeC,EAAmBC,KAChE,GAAIF,GAAQC,IACLD,EAAaG,uBAEfH,EAAaG,yBAEdH,EAAKI,eAAe,CAAEC,MAAO,YAE3BH,EAAS,GAAG,CACd,MAAMI,EAAiBL,EAASM,wBAC1BC,EAAaR,EAAKO,wBAClBE,EAAOH,EAAeI,IAAMR,EAASM,EAAWE,IAClDD,EAAO,IACTR,EAASU,UAAYV,EAASU,UAAYF,EAE7C,CACF,ECuGUG,EAAuB,CAClCC,EACAC,KAEA,MAAMC,EAAOD,EAAUtB,KAAKb,KAAKrB,GACxBA,EAAMlD,SAASC,MAElB2G,EAAaD,EAAKE,QAAQJ,EAAOvD,MAAM4D,OACvCC,EAAWJ,EAAKE,QAAQJ,EAAOvD,MAAM8D,KACrCC,EAAWC,KAAKC,IAAIP,EAAYG,GAChCK,EAAWF,KAAKG,IAAIT,EAAYG,GACtC,OAAkB,IAAdE,EAEK,CAAEnB,OAAQ,EAAGT,MAAOqB,EAAUY,WAG9BX,EAAKrB,MAAM2B,EAAUG,EAAW,EACxC,EChFGG,EAAc3B,MACdA,EAAK4B,gBAAiB5B,EAAK4B,cAAcC,UAAUC,SAAS,yBC8MlE,MAAMC,EAAoB,CAAChI,EAAiCiI,IAExDA,GAAU,CACR/B,SAAU,IACDlG,EAAQkI,SAMjBC,EAAY,CAAEC,KAAK,EAAOpB,KAAM,IAAIqB,KAEpCC,EACJ3F,EAACC,IAAAqB,EAAkB,CAAAC,aAAc,GAC9BhF,SAAA,IAEGyD,EAAAC,IAAC2F,QAAK,CAACC,QAAQ,WAAUtJ,SACvByD,EAACC,IAAA6F,OAAK,CAAAtD,OAAO,KAAKuD,MAAM,SACtBxJ,SAAAyD,EAAAA,IAACgG,EAAQA,SAAA,CAACxD,OAAO,aAQvByD,EACJjG,EAAAA,IAAK,MAAA,CAAAR,MAAO0G,EAAAA,qBAAoB3J,SAC9ByD,EAACC,IAAAqB,GAAkBC,aAAc,EAAChF,SAC/B,IAEGyD,EAAAC,IAAC2F,QAAK,CAACC,QAAQ,WAAUtJ,SACvByD,EAACC,IAAA6F,OAAK,CAAAtD,OAAO,KAAKuD,MAAM,SACtBxJ,SAAAyD,EAAAA,IAACgG,EAAQA,SAAA,CAACxD,OAAO,eAYzB2D,EAAkB,CAAO/B,EAA4BgC,KACzD,GAAIA,EAAO,CAET,MAAMC,EAAkBzB,KAAKC,IAAIuB,EAAM5C,OAAQY,EAAUZ,OAASY,EAAUY,WACtEjB,EAAOsC,EAAkBjC,EAAUZ,OACrCO,EAAO,IACTK,EAAY,CACVZ,OAAQ6C,EACRvD,KAAMsB,EAAUtB,KAAKE,MAAMe,EAAMA,EAAOqC,EAAMrD,OAC9CiC,UAAWZ,EAAUY,UACrBsB,cAAelC,EAAUkC,eAG9B,CACD,OAAOlC,CAAS,mBA5ThB,aAAcmC,EACd,kBAAmBC,EAAcC,kBACjCA,GAAoB,EAAIlK,SACxBA,EAAQmK,WACRA,EAAU5D,KACVA,EAAI6D,UACJA,EAASC,iBACTA,EAAmBjB,EAAuBkB,mBAC1CA,EAAkBC,YAClBA,EAAWC,kBACXA,EAAiBC,aACjBA,EAAYC,eACZA,EAAchK,KACdA,EAAO,OAAMiK,aACbA,EAAe1B,EAAoBtI,cACnCA,EAAgB,OAAMiK,eACtBA,EAAc/J,mBACdA,EAAqB,OAAMgK,gBAC3BA,EAAeC,cACfA,GAAgB,EAAKC,mBACrBA,EAAkBC,sBAClBA,EAAqBC,OACrBA,EAAMC,YACNA,GAAWC,aACXA,GAAYC,wBACZA,MACGC,KAEH,MAAMvK,GAAUC,SAAuB,MAGjCuK,GAAmBvK,EAAAA,UAElBsB,GAAQkJ,IAAapG,EAAQA,UAAU,GAexCqG,GAAwC,SAAlB7K,OAA2BgD,EAA8B,aAAlBhD,EAC7D8K,GACK,OAATlF,OAAgB5C,EAAmC,UAAvB4C,EAAKwD,cAA4BxD,EAAKkC,WAAa,EAE3E/F,GAAUC,EAAUA,WAAC,CAAC+I,EAAAA,WAAWtF,OAEjCuF,GAA2BC,EAAAA,aAC/B,CAAChE,EAAiCvD,KAC5BkC,IACF+E,GAAiBtC,QAAU,CACzBpB,OAAQA,EACRiC,MAAO,CAAE5C,OAAQV,EAAKU,OAAQT,MAAOD,EAAKA,KAAKsF,SAEjDtB,EAAYlG,GACb,GAEH,CAACkC,EAAMgE,KAEHuB,WAAEA,GAAUC,cAAEA,GAAaC,sBAAEA,IFzFI,EACvC7B,EACAQ,EACAhK,EAAsD,OACtD2J,EACAE,EACAC,EACAlE,EACAqE,EACAlK,EAAoC,OACpCsK,EACAlK,EACA6K,KAEA,MAAMM,EAAYhL,EAAAA,SAAQ,IAAMxB,EAAiBiB,IAAO,CAACA,IAGnDwL,EAAYnL,EAAAA,UAEZoL,gBAAEA,GAAoBC,iBACzBC,GAAYC,EAAYA,aAACD,EAASvM,IACjB,aAAlBa,EACA4L,EAAcA,eAACzL,EAAQkI,QAASmB,GAAY,EAAMrK,GAClDyM,EAAcA,eAACzL,EAAQkI,QAASmB,GAAY,EAAOrK,QACnD6D,OACAA,EACAwG,EACAG,IAGKyB,EAAeS,GAAkBC,EAAAA,uBAAuB3L,EAAS,CAAC,UAAW,cAEpFsE,EAAAA,WAAU,KACR,GAAkB,MAAd+E,GAAsBrJ,EAAQkI,QAAS,CACzC,MAAMjC,EAAO2F,EAAAA,iBAAiB5L,EAAQkI,QAASmB,EAAYrK,GAC3D,GAAIiH,EAAM,CACR,MAAM4F,EAAmB7L,EAAQkI,QAAQ4D,aAAa,yBAChD/M,EAAOkH,EAAK8F,cAAc,SAASZ,EAAUpM,SACnD,GAAIA,GAAQ8M,IAAqB9M,EAAKgE,GAAI,CAExC/C,EAAQkI,QAAQ8D,aAAa,wBAAyBjN,EAAKgE,IAE3D,MAAMmD,EAAW4D,GAAgB5D,WAC3BC,EAAS+D,EAAwBA,EAAsBlK,EAAQkI,SAAW,EAEhFlC,EAAgBC,EAAkB,MAAZC,EAAmBA,EAAWlG,EAAQkI,QAAS/B,EACtE,CACF,CACF,IAIA,CAACkD,EAAY5D,EAAM0F,EAAUpM,KAAM+K,EAAgBI,EAAuBlK,IAE7E,MAAMkL,EAAwBJ,eAC3BhE,IACK4C,KACuB,IAArB5C,EAAOvD,MAAM6E,KAAiBtB,EAAOvD,MAAMyD,KAAKiF,KAAO,IAEzDb,EAAUlD,QAAUvD,MAAMuH,KAAKpF,EAAOvD,MAAMyD,KAAK/E,UAAUkK,OAE7DzC,EAAkB5C,GACnB,GAEH,CAACsE,EAAW1B,IAGR0C,EAA6BtB,eAChChE,IACC,GAAIrB,GAAQiE,EAAmB,CAC7B,MAAMnG,EAAQsD,EAAqBC,EAAQrB,GACvCd,MAAM0H,QAAQ9I,IACS,eAArBuD,EAAOwF,UAETlB,EAAUlD,QAAUpB,EAAOvD,MAAM4D,MAGjCiE,EAAUlD,QAAUpB,EAAOvD,MAAM8D,IAEnCqC,EAAkB,CAAEnG,MAAO,CAAE6E,KAAK,EAAOpB,KAAM,IAAIqB,IAAI9E,IAAUgJ,OAAQ,QAEzE1B,EAAyB/D,EAAQvD,EAEpC,IAEH,CAACkC,EAAMiE,EAAmBmB,IAGtBtH,EAAQiJ,EAAAA,+BAERC,eAAEA,GAAmBC,EAAYA,cACpCnB,GACKA,IAAYvL,EAAQkI,aACArF,IAAfwG,EAA2B,KAAOA,EAEpCmC,EAAYA,aAACD,EAASvM,IAE/B6K,EACAhK,GACA,EACA,UACU,aAAV0D,EACA2H,EACAE,EAAUlD,QACVmB,GACA,CAACA,EAA2BsD,IAC1BlB,EAAAA,eAAezL,EAAQkI,QAASmB,EAAYsD,EAAQ3N,SACtD6D,GACCvC,IACC,GAAIN,EAAQkI,QAAS,CACnB,MAAMjC,EAAO2F,EAAAA,iBAAiB5L,EAAQkI,QAAS5H,EAAKtB,GACpD,GAAIiH,EAAM,CACR,MAAMC,EAAW4D,GAAgB5D,WAC3BC,EAAS+D,EAAwBA,EAAsBlK,EAAQkI,SAAW,EAChFlC,EAAgBC,EAAkB,MAAZC,EAAmBA,EAAWlG,EAAQkI,QAAS/B,EACtE,CACF,IAEHiG,GAGIQ,EAAkBC,EAAaA,cACnCxD,EACA5D,EACAkE,EACA3K,EACU,aAAVuE,GAGF,MAAO,CACLyH,WAAY8B,EAAAA,WAAWzB,EAAiBK,EAAgBe,EAAgBG,GACxE3B,gBACAC,wBACD,EE5C4D6B,CAC3D1D,EACAQ,EACAhK,EACA2J,EACAE,EACAC,EACAlE,EACAqE,EACAlK,EACAsK,EACAlK,GACA6K,KAGMG,WAAYgC,GAAkBC,qBAAEA,ID7GN,EAClC5D,EACAG,EACAJ,EACApJ,EACA8J,EACAI,KAEA,MAAMgD,EAAoBjN,EAAAA,UAEnBgN,EAAsBE,GAAqBC,EAAAA,mBAChDpN,GACCuL,GAEQ3D,EAAW2D,GAAW,KAAQC,EAAAA,aAAaD,EAASvM,IAE7DqK,EACAG,GAGI6D,EAAqBvC,EAAAA,aAAY,KACrC,GACE9K,EAAQkI,SACRsB,KACEJ,GAAqB6D,OAAqBpK,IAC5C,CACA,MAAMyK,EACJJ,EAAkBhF,SAAYqF,EAAkBA,mBAACvN,EAAQkI,QAASlJ,GAChEwO,EAAAA,aAAaF,IACf9D,EAAmB,CAAEjG,MAAO+J,GAE/B,IACA,CAACtN,EAASwJ,EAAoBJ,EAAmB6D,IAE9CQ,EAAc3C,eACjB3H,IACC,GAAIyE,EAAWzE,EAAMoJ,QAArB,CACEvM,EAAQkI,SAASwF,QACjB,MAAMpN,EAAMkL,EAAYA,aAACrI,EAAMoJ,OAAuBvN,GAClDwK,GAAsBgE,eAAalN,IACrCkJ,EAAmB,CAAEjG,MAAOjD,GAG/B,MACD,GAAKkN,EAAAA,aAAanE,IAEX,GAAIrJ,EAAQkI,QAAS,CAE1B,MAAMjC,EAAO2F,EAAAA,iBAAiB5L,EAAQkI,QAASmB,EAAiBrK,GAChE,GAAIiH,EAAM,CACR,MAAMC,EAAW4D,GAAgB5D,WAC3BC,EAAS+D,EAAwBA,EAAsBlK,EAAQkI,SAAW,EAChFlC,EAAgBC,EAAkB,MAAZC,EAAmBA,EAAWlG,EAAQkI,QAAS/B,EACtE,CACF,OATCqD,GAAsB6D,GASvB,GAEH,CAAChE,EAAYgE,EAAoB7D,EAAoBxJ,IAMjD2N,EAAoB7C,eAAa3H,IACrC,MAAM7C,EAAMkL,EAAYA,aAACrI,EAAMoJ,OAAuBvN,GAClDwO,EAAAA,aAAalN,KACf4M,EAAkBhF,QAAU5H,EAC7B,GACA,IAEH,MAAO,CACL0K,WAAY8B,EAAUA,WAAC1D,EAAoB+D,EAAoB,CAAA,EAAI,CACjES,QAASH,EACTI,cAAeF,IAEjBV,uBACD,ECkCgEa,CAC/DzE,EACAG,EACAJ,EACApJ,GACA8J,EACAI,GAGF,GAAIzE,QAAqC5C,IAA7B2H,GAAiBtC,SAAyBwB,EAAmB,CACvE,MAAM1C,EAAOH,EAAqB2D,GAAiBtC,QAAQpB,OAAQrB,GAC/Dd,MAAM0H,QAAQrF,IAChB0C,EAAkB,CAAEnG,MAAO,CAAE6E,KAAK,EAAOpB,KAAM,IAAIqB,IAAIrB,IAASuF,OAAQ,OAE1E,MAAMxD,EAAQyB,GAAiBtC,QAC3BsC,GAAiBtC,QAAQa,MACzB,CAAE5C,OAAQV,EAAKU,OAAQT,MAAOD,EAAKA,KAAKsF,QAC5CtF,EAAOqD,EAAgBrD,EAAMsD,GAC7ByB,GAAiBtC,aAAUrF,EAC3B4G,EAAYV,EACb,CAED,MAAM/D,cAAEA,GAAaa,YAAEA,IJxIS,EAChCJ,EACAsE,EACA/J,KAGA,MAAOgF,EAAe+I,GAAoB1J,EAAQA,SAAS,GAErDwB,EAAc1F,EAAOA,SACzB,IAAMsF,GAAQsE,GAAmBvE,EAAgBC,EAAKA,KAAMsE,EAAgBrE,QAC5E,CAACD,EAAMsE,IAiBT,OAdAzF,EAAAA,WAAU,KAGR,GAAIuB,EAAa,CACf,MAAMmI,EAAchO,EAAQkI,SAAS6D,cACnC,IAAMkC,EAAAA,yBAER,IAAI9I,EAAS6I,GAAaE,cAAgB,EAC1C,MAAMC,EAAkBnO,EAAQkI,SAASkG,iBAAiB,wBAC1DD,GAAiBE,SAASvP,GAAUqG,GAAWrG,EAAqBoP,eACpEH,EAAiB5I,EAClB,IACA,CAACnF,EAAS6F,IAEN,CAAEb,gBAAea,cAAa,EI6GEyI,CAAmB7I,EAAMsE,EAAiB/J,IAG3EuO,GAAmB5L,EAAAA,IAACoC,GAAQC,cAAeA,KAO3CwJ,GAAiB1D,eACpB3L,IACC,MAAMsP,EAAgBtP,EAAQsG,KACxBiJ,EACc,aAAlB7O,EACI,IACE8C,MAACgM,EAAAA,SAAQ,CACPC,SAAU1D,GACV2D,OAAQJ,EAAcpO,SAASC,IAC/BuJ,aAAcA,SAElBhH,EAEN,MAAO,CACLrC,MAAOrB,EAAQqB,MACfiF,KAAMgJ,EAAchJ,KACpBpF,SAAUoO,EAAcpO,SACxByO,SAAUJ,EACX,GAEH,CAAC7O,EAAegK,EAAcqB,KAG1B6D,GAAgB/E,EAAgB/K,EAAe2E,EAE/CoL,GAAqB7P,IACzB,MAAM8P,EAAkBT,GAAerP,GACjCW,EAAa+F,IAAaqJ,IAAID,EAAgB5O,SAASC,KACvDX,EAAayJ,GAAqB6D,GAAqBgC,EAAgB5O,SAASC,KAChFjB,EAAYgK,IAAe4F,EAAgB5O,SAASC,MAAQX,EAC5DJ,EAAWF,GAAakC,GACxB9B,EAAa0P,EAAAA,YAAYtF,EAAcoF,EAAgB5O,SAASC,KAChEhB,EAAqBD,GAAa4L,GAClCmE,EAAe,CAACC,EAAoCC,KACxD3M,OAAAA,EAAAA,IAACoM,GAEC,CAAA5P,QAASkQ,EACThQ,UAAWA,EACXC,mBAAoBA,EACpBC,SAAUA,EACVC,mBAtHgBgB,EAsHgByO,EAAgBzO,MAnH9B,YAApB8I,GAAWxK,OACV0B,EAAQ,IAAMiF,GAAMkC,WAAmC,YAAtB2B,GAAWiG,SAmH3C9P,WAAYA,EACZE,WAAYyJ,GAAqB6D,GAAqBgC,EAAgB5O,SAASC,KAC/EV,KAAMA,EACNC,cAAeA,EACfE,mBAAoBA,KACfD,GAAc,CAAEA,iBACU,IAA1BmP,EAAgBzO,OAAe,CAAEd,qBAnHf,YAApB4J,GAAWxK,MAAyC,YAAnBwK,GAAW3C,QAoH3C2I,EAAUpQ,SACbA,GAdI+P,EAAgB5O,SAASC,KAjHf,IAACE,CAiInB,EAKD,GAAIyJ,EAAoB,CAUtB,OAAOA,EATuB,CAC5BgF,kBACA5P,YACAC,qBACAG,aACAE,aACAJ,WACAiQ,gBAAiBJ,GAGpB,CACD,OAAOA,EAAaH,EAAgB,EAGtCnF,EAAiB9B,EAAkBhI,GAAS8J,GAE5C,MAAM2F,GAAgB3E,eACnB3H,IACmB,MAAdA,EAAM7C,KAAekN,EAAYA,aAACnE,IAAiC,SAAlBxJ,GACnD4K,IAAU,EACX,GAEH,CAACpB,EAAYxJ,EAAe4K,KAGxBiF,GAAc5E,EAAAA,aAAY,KAC9BL,IAAU,EAAM,GACf,CAACA,KAEJkF,EAAAA,oBAAoBvF,IAAc,IAAMpK,GAAQkI,UAIhD,MAAM0H,GAAcC,YAAU1F,GAC9B,OACExH,MAAA,MAAA,IACMmK,aACF9B,GACAgC,GACA1C,IAA2B,CAAA,EAC3BD,IAAgB,GAChB,CACEnH,UAAWuM,GACXK,QAASJ,IAEXnF,OAEEqF,GACJhQ,KAAMA,EAAI,gBACc,SAATA,EAAkB+K,QAAe9H,EACjC,gBAAS,SAATjD,EAAkB,OAAIiD,EACrCC,IAAK9C,GACLmC,MAAOP,GACPmO,SAAU,EAAC,aACC7G,EAAS,kBACJC,EAAc,uBACTuB,GACrBxL,SAAQ,MAARuG,EACC,EACEuE,EACFrH,EAAAA,IAACqN,EAAqBA,sBACpB,CAAAvK,KAAMA,EACNwK,aAAcjR,EACdkR,kBAAmBtH,EACnBa,YAAaA,EACbG,eAAgBA,EAChB/D,YAAa0I,GACbzE,eAAgBA,EAAc5K,SAC7B8P,KAGHrM,EAAAA,IAACwN,EAAAA,mBACC,CAAA1K,KAAMA,EAAKA,KACXyK,kBAAmBtH,EACnBwH,QAAgC,YAAvB3K,EAAKwD,eAA+BxD,EAAKA,KAAKsF,QAAUtF,EAAKkC,UACtE0I,WAAY,KACV5K,GAAQgE,EAAY,CAAEtD,OAAQ,EAAGT,MAAOD,EAAKA,KAAKsF,OAAS,IAAK,EAElElF,YAAa0I,GACbzE,eAAgBA,EAAc5K,SAC7B8P,MAKX,uCHzR4B,CAAOvJ,EAAgCuB,KACjE,IAAKA,EAAKoB,IAAK,CACb,MAAMkI,EAAS7K,EAAKA,KACjB8K,QAAQC,IACCA,EAAanQ,SAASoQ,SAE/B7L,KAAK4L,GACGA,EAAanQ,SAASC,MAE3BoQ,EAAW/L,MAAMuH,KAAKlF,EAAKA,KAAK/E,UAAUsO,QAAQjQ,IAC9CgQ,EAAOK,SAASrQ,KAE1B,MAAO,IAAK0G,EAAMA,KAAM,IAAIqB,IAAIqI,GACjC,CACD,OAAO1J,CAAI"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', './Grid-209ab070', './classNames-08d99695', './UNSAFE_ListItemLayout/themes/ListItemLayoutStyles.css'], (function(s,e,l,t,a){"use strict";s.ListItemLayout=function({children:s,selector:i,leading:n,primary:c,secondary:r,tertiary:d,overline:y,metadata:o,trailing:m,action:h,quaternary:u,navigation:x}){const{columnsTemplate:j,firstCell:S,secondCell:v,lastCell:N,hasSecondRow:p}=function(s,l,i,n,c,r,d){const y=[];let o=null;s&&(y.push("auto"),o=e.jsx("div",{className:a.styles.selectorStyles,children:s}));let m=null;l&&(y.push("auto"),m=e.jsx("div",{className:a.styles.centerVerticalStyles,children:l}));y.push("1fr");let h=null;(i||n||c||d)&&(y.push("auto"),h=e.jsxs("div",{className:a.styles.flexRowStyles,children:[e.jsx("div",{className:t.classNames([a.styles.centerVerticalStyles,i?a.styles.leftPaddingStyles:""]),children:i}),e.jsx("div",{className:t.classNames([a.styles.centerVerticalStyles,n?a.styles.leftPaddingStyles:""]),children:n}),e.jsx("div",{className:t.classNames([a.styles.centerVerticalStyles,c?a.styles.actionStyles:""]),children:c})]}));const u=y.join(" "),x=!(!r&&!d);return{columnsTemplate:u,firstCell:o,secondCell:m,lastCell:h,hasSecondRow:x}}(i,n,o,m,h,u,x),f=s?e.jsx("div",{className:a.styles.childrenStyles,children:s}):e.jsxs("div",{className:a.styles.flexColumnStyles,children:[e.jsx("div",{children:y}),e.jsx("div",{children:c}),e.jsx("div",{children:r}),e.jsx("div",{children:d})]}),g=p?[S&&e.jsx("span",{children:" "}),v&&e.jsx("span",{children:" "}),e.jsx("div",{className:a.styles.rowAlignStyles,children:u}),N&&e.jsx("div",{className:a.styles.endJustifyStyles,children:x})]:null;return e.jsxs(l.Grid,{gap:"4x",gridTemplateColumns:j,children:[S,v,e.jsx("div",{className:a.styles.centerVerticalStyles,children:f}),N,g]})}}));
|
|
2
|
+
//# sourceMappingURL=ListItemLayout-12aee4bd.js.map
|