@oracle/oraclejet-preact 17.1.0 → 17.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/amd/ActionCard-01322111.js +1 -1
- package/amd/BarChart-aba4a793.js +1 -1
- package/amd/BaseButton-51e50f77.js +1 -1
- package/amd/{BaseCardView-c5624c8a.js → BaseCardView-a11e4dec.js} +2 -2
- package/amd/{BaseCardView-c5624c8a.js.map → BaseCardView-a11e4dec.js.map} +1 -1
- package/amd/{BaseCardViewSelectionTest-b80dd91b.js → BaseCardViewSelectionTest-9627e4ab.js} +2 -2
- package/amd/{BaseCardViewSelectionTest-b80dd91b.js.map → BaseCardViewSelectionTest-9627e4ab.js.map} +1 -1
- package/amd/BaseNavigationListItem-368284be.js +1 -1
- package/amd/ButtonSet-c389d5c7.js +1 -1
- package/amd/ButtonSetIconButton-141a8745.js +1 -1
- package/amd/CardFlexView-9688d264.js +2 -0
- package/amd/{CardFlexView-14fada63.js.map → CardFlexView-9688d264.js.map} +1 -1
- package/amd/{CardGridView-00ba53a9.js → CardGridView-b7f4f205.js} +2 -2
- package/amd/{CardGridView-00ba53a9.js.map → CardGridView-b7f4f205.js.map} +1 -1
- package/amd/{Center-9ec5524e.js → Center-b449a95c.js} +2 -2
- package/amd/{Center-9ec5524e.js.map → Center-b449a95c.js.map} +1 -1
- package/amd/Chart-1046ac5b.js +1 -1
- package/amd/CheckboxControl-74a7fead.js +1 -1
- package/amd/CheckboxRadioField-005a110c.js +1 -1
- package/amd/CheckboxSet-e523552e.js +2 -0
- package/amd/CheckboxSet-e523552e.js.map +1 -0
- package/amd/Chip-3062b3d3.js +1 -1
- package/amd/ClearIcon-c13664cd.js +1 -1
- package/amd/CollapseIcon-38899da0.js +1 -1
- package/amd/Collapsible-ba4eef8f.js +1 -1
- package/amd/CompactHelpSource-be790e15.js +1 -1
- package/amd/CompactLabelAssistance-7db2fde2.js +2 -0
- package/amd/{CompactLabelAssistance-bc14e060.js.map → CompactLabelAssistance-7db2fde2.js.map} +1 -1
- package/amd/CompactUserAssistance-a7b3ffc0.js +1 -1
- package/amd/ComponentMessageContainer-3b691959.js +1 -1
- package/amd/ConveyorBeltItem-bc128f62.js +1 -1
- package/amd/{DatePicker-dd358026.js → DatePicker-d7802b3e.js} +2 -2
- package/amd/{DatePicker-dd358026.js.map → DatePicker-d7802b3e.js.map} +1 -1
- package/amd/DatePickerHeader-c03ca6b4.js +1 -1
- package/amd/{Diagram-1b48168a.js → Diagram-14fd94c3.js} +2 -2
- package/amd/{Diagram-1b48168a.js.map → Diagram-14fd94c3.js.map} +1 -1
- package/amd/{Dialog-c34f9e89.js → Dialog-f6da299c.js} +2 -2
- package/amd/{Dialog-c34f9e89.js.map → Dialog-f6da299c.js.map} +1 -1
- package/amd/DirectionalCollapseArrowIcon-1c72e459.js +1 -1
- package/amd/DirectionalExpandArrowIcon-198cec2b.js +1 -1
- package/amd/DragHandle-e4959d2b.js +1 -1
- package/amd/DrawerLayoutStyles.styles.css +1 -0
- package/amd/{Dropdown-b36aa071.js → Dropdown-5f68516d.js} +2 -2
- package/amd/{Dropdown-b36aa071.js.map → Dropdown-5f68516d.js.map} +1 -1
- package/amd/{EnvironmentProvider-c0e1e39b.js → EnvironmentProvider-8f6fc388.js} +2 -2
- package/amd/{EnvironmentProvider-c0e1e39b.js.map → EnvironmentProvider-8f6fc388.js.map} +1 -1
- package/amd/FilePicker-e13f405f.js +1 -1
- package/amd/Flex-56ecdf4c.js +2 -0
- package/amd/{Flex-3421f0df.js.map → Flex-56ecdf4c.js.map} +1 -1
- package/amd/{Floating-25e0092b.js → Floating-a658b79c.js} +2 -2
- package/amd/{Floating-25e0092b.js.map → Floating-a658b79c.js.map} +1 -1
- package/amd/FormLayout-c6f1fdff.js +1 -1
- package/amd/Gantt-7be8d8bc.js +1 -1
- package/amd/{Grid-8911aa0f.js → Grid-160f4885.js} +2 -2
- package/amd/{Grid-8911aa0f.js.map → Grid-160f4885.js.map} +1 -1
- package/amd/{Gridlines-071ff524.js → Gridlines-b1d59999.js} +2 -2
- package/amd/{Gridlines-071ff524.js.map → Gridlines-b1d59999.js.map} +1 -1
- package/amd/GroupLoadingIndicator-cd9192c9.js +1 -1
- package/amd/HighlightText-bd4c0101.js +2 -0
- package/amd/{HighlightText-644bc74e.js.map → HighlightText-bd4c0101.js.map} +1 -1
- package/amd/Icon-2d805acb.js +1 -1
- package/amd/IconButton-81c8463f.js +1 -1
- package/amd/IconMenuButton-3e3db121.js +1 -1
- package/amd/IconProgressButton-04979469.js +1 -1
- package/amd/IconSwitchButton-bc007cbd.js +1 -1
- package/amd/IconToggleButton-28960894.js +1 -1
- package/amd/{IconUserAssistance-dda606e6.js → IconUserAssistance-2f809060.js} +2 -2
- package/amd/{IconUserAssistance-dda606e6.js.map → IconUserAssistance-2f809060.js.map} +1 -1
- package/amd/{Indexer-74c989ce.js → Indexer-6833ad40.js} +2 -2
- package/amd/{Indexer-74c989ce.js.map → Indexer-6833ad40.js.map} +1 -1
- package/amd/InlineHelpSource-85961e81.js +1 -1
- package/amd/InlineUserAssistance-2a480664.js +1 -1
- package/amd/InputDateMask-9aba967d.js +1 -1
- package/amd/InputDatePicker-6167ff45.js +2 -0
- package/amd/{InputDatePicker-97756bcd.js.map → InputDatePicker-6167ff45.js.map} +1 -1
- package/amd/InputPassword-bf533999.js +1 -1
- package/amd/InputText-a4234d1f.js +1 -1
- package/amd/Label-a4172af7.js +1 -1
- package/amd/LabelValueLayout-194e64d9.js +1 -1
- package/amd/{Layer-e835aed8.js → Layer-276d62e8.js} +2 -2
- package/amd/{Layer-e835aed8.js.map → Layer-276d62e8.js.map} +1 -1
- package/amd/{LayerHost-639b3284.js → LayerHost-e95c5f30.js} +2 -2
- package/amd/{LayerHost-639b3284.js.map → LayerHost-e95c5f30.js.map} +1 -1
- package/amd/{LayerManager-2972de92.js → LayerManager-76fcfb58.js} +2 -2
- package/amd/{LayerManager-2972de92.js.map → LayerManager-76fcfb58.js.map} +1 -1
- package/amd/Legend-cd2f78b2.js +1 -1
- package/amd/{LineAreaChart-5224fce6.js → LineAreaChart-07630832.js} +2 -2
- package/amd/{LineAreaChart-5224fce6.js.map → LineAreaChart-07630832.js.map} +1 -1
- package/amd/Link-cb232696.js +1 -1
- package/amd/List-3ebac3fc.js +2 -0
- package/amd/{List-61d64cd6.js.map → List-3ebac3fc.js.map} +1 -1
- package/amd/{ListItemLayout-1d8f166a.js → ListItemLayout-90873fb8.js} +2 -2
- package/amd/{ListItemLayout-1d8f166a.js.map → ListItemLayout-90873fb8.js.map} +1 -1
- package/amd/{ListView-a49e52c3.js → ListView-c8082c0c.js} +2 -2
- package/amd/{ListView-a49e52c3.js.map → ListView-c8082c0c.js.map} +1 -1
- package/amd/LiveRegion-8142ed0d.js +2 -0
- package/amd/{LiveRegion-9a362373.js.map → LiveRegion-8142ed0d.js.map} +1 -1
- package/amd/LoadMoreCollection-a6adbc3f.js +2 -0
- package/amd/{LoadMoreCollection-83413a59.js.map → LoadMoreCollection-a6adbc3f.js.map} +1 -1
- package/amd/MaxLengthLiveRegion-8954fc30.js +2 -0
- package/amd/{MaxLengthLiveRegion-bb956138.js.map → MaxLengthLiveRegion-8954fc30.js.map} +1 -1
- package/amd/{Menu-e682ccb9.js → Menu-8f3a1e8c.js} +2 -2
- package/amd/{Menu-e682ccb9.js.map → Menu-8f3a1e8c.js.map} +1 -1
- package/amd/MenuButton-e4d7ec34.js +1 -1
- package/amd/MenuItem-44b2547b.js +1 -1
- package/amd/Message-1b166e4f.js +1 -1
- package/amd/{MessageLayer-3742e608.js → MessageLayer-cf9265e0.js} +2 -2
- package/amd/{MessageLayer-3742e608.js.map → MessageLayer-cf9265e0.js.map} +1 -1
- package/amd/MessageToast-7aba4a66.js +1 -1
- package/amd/MessagesManager-d6d43884.js +1 -1
- package/amd/MeterBar-90569d10.js +1 -1
- package/amd/MeterCircle-b14ff590.js +1 -1
- package/amd/{Modal-2b6ce101.js → Modal-36acfc12.js} +2 -2
- package/amd/{Modal-2b6ce101.js.map → Modal-36acfc12.js.map} +1 -1
- package/amd/{MonthView-8a1fde80.js → MonthView-ac27389f.js} +2 -2
- package/amd/{MonthView-8a1fde80.js.map → MonthView-ac27389f.js.map} +1 -1
- package/amd/NavigationListItem-1742f912.js +1 -1
- package/amd/NumberInputText-83ba7a58.js +1 -1
- package/amd/OverflowTabBarItem-4c4b75e0.js +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-98b54953.js +1 -1
- package/amd/{PieChart-45cc3798.js → PieChart-cbe2806f.js} +2 -2
- package/amd/{PieChart-45cc3798.js.map → PieChart-cbe2806f.js.map} +1 -1
- package/amd/{Popup-059eb48a.js → Popup-956e6d7d.js} +2 -2
- package/amd/{Popup-059eb48a.js.map → Popup-956e6d7d.js.map} +1 -1
- package/amd/{ProgressBar-479b35e5.js → ProgressBar-d7cfdb63.js} +2 -2
- package/amd/{ProgressBar-479b35e5.js.map → ProgressBar-d7cfdb63.js.map} +1 -1
- package/amd/ProgressButton-c98e276b.js +1 -1
- package/amd/ProgressButtonLabelLayout-3a78ba61.js +1 -1
- package/amd/{ProgressCircle-365c4568.js → ProgressCircle-1e4cefde.js} +2 -2
- package/amd/{ProgressCircle-365c4568.js.map → ProgressCircle-1e4cefde.js.map} +1 -1
- package/amd/RadioItem-ce699d94.js +1 -1
- package/amd/RatingGauge-138a7d8b.js +1 -1
- package/amd/ReadonlyTextFieldInput-608bddc1.js +1 -1
- package/amd/RemovableNavigationListItem-dd14305f.js +1 -1
- package/amd/RemovableTabBarItem-6a25d890.js +1 -1
- package/amd/ReorderableTabBar-e40ffae9.js +1 -1
- package/amd/RevealToggleIcon-c5b17f49.js +1 -1
- package/amd/SectionalLegend-5d4afed4.js +1 -1
- package/amd/SectionedContent-6031f8f7.js +2 -0
- package/amd/{SectionedContent-2b89af7b.js.map → SectionedContent-6031f8f7.js.map} +1 -1
- package/amd/{SelectMultiple-1ff92cc3.js → SelectMultiple-3eb4a268.js} +2 -2
- package/amd/{SelectMultiple-1ff92cc3.js.map → SelectMultiple-3eb4a268.js.map} +1 -1
- package/amd/{SelectSingle-641a4cac.js → SelectSingle-9fcc38fc.js} +2 -2
- package/amd/{SelectSingle-641a4cac.js.map → SelectSingle-9fcc38fc.js.map} +1 -1
- package/amd/{SelectionCard-3973de1b.js → SelectionCard-062e1c6f.js} +2 -2
- package/amd/{SelectionCard-3973de1b.js.map → SelectionCard-062e1c6f.js.map} +1 -1
- package/amd/Selector-039f7481.js +1 -1
- package/amd/SelectorAll-53efae22.js +2 -0
- package/amd/{SelectorAll-7288e923.js.map → SelectorAll-53efae22.js.map} +1 -1
- package/amd/{Sheet-c6fc15b2.js → Sheet-e6308643.js} +2 -2
- package/amd/{Sheet-c6fc15b2.js.map → Sheet-e6308643.js.map} +1 -1
- package/amd/SplitMenuButton-09d7b66f.js +1 -1
- package/amd/StyledTextField-a51060bb.js +1 -1
- package/amd/Submenu-8cb31b61.js +1 -1
- package/amd/TabBar-1c002b5b.js +1 -1
- package/amd/TabBarItem-16383a92.js +1 -1
- package/amd/TabBarLayout-685ac295.js +1 -1
- package/amd/TabBarMixed-4e0326f5.js +1 -1
- package/amd/TabBarMixedSeparator-8c278254.js +2 -0
- package/amd/{TabBarMixedSeparator-ed764207.js.map → TabBarMixedSeparator-8c278254.js.map} +1 -1
- package/amd/{Table-986ae70c.js → Table-611e08d5.js} +2 -2
- package/amd/{Table-986ae70c.js.map → Table-611e08d5.js.map} +1 -1
- package/amd/{TableView-452fa547.js → TableView-cf113195.js} +2 -2
- package/amd/{TableView-452fa547.js.map → TableView-cf113195.js.map} +1 -1
- package/amd/TagCloud-58b4a81b.js +1 -1
- package/amd/TextArea-259d741c.js +1 -1
- package/amd/TextAreaAutosize-e8dc13b4.js +1 -1
- package/amd/TextField-51daf13e.js +1 -1
- package/amd/TextFieldInput-d6645f5b.js +1 -1
- package/amd/Theme-redwood/theme.css +80 -80
- package/amd/Theme-stable/theme.css +306 -306
- package/amd/TimeComponentCanvas2D-2f1cede4.js +1 -1
- package/amd/Toolbar-e84c90ac.js +1 -1
- package/amd/{TruncatingBadge-b6a271ea.js → TruncatingBadge-5b720ad3.js} +2 -2
- package/amd/{TruncatingBadge-b6a271ea.js.map → TruncatingBadge-5b720ad3.js.map} +1 -1
- package/amd/TruncatingText-17a6d4b6.js +2 -0
- package/amd/{TruncatingText-e1aceee7.js.map → TruncatingText-17a6d4b6.js.map} +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_CheckboxItem.js.map +1 -1
- package/amd/UNSAFE_CheckboxSet.js +1 -1
- package/amd/UNSAFE_CheckboxSet.js.map +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_DrawerLayout.js.map +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_IconProgressButton.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_ProgressButton.js +1 -1
- package/amd/UNSAFE_ProgressButtonLabelLayout.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-bd5c7fa7.js → View-ce970ed7.js} +2 -2
- package/amd/{View-bd5c7fa7.js.map → View-ce970ed7.js.map} +1 -1
- package/amd/{VirtualizedCollection-897516a5.js → VirtualizedCollection-63223f5e.js} +2 -2
- package/amd/{VirtualizedCollection-897516a5.js.map → VirtualizedCollection-63223f5e.js.map} +1 -1
- package/amd/VirtualizedListView-cf795207.js +2 -0
- package/amd/{VirtualizedListView-96ddfd98.js.map → VirtualizedListView-cf795207.js.map} +1 -1
- package/amd/{VisNoData-ed2bd5cf.js → VisNoData-7d5f77c3.js} +2 -2
- package/amd/{VisNoData-ed2bd5cf.js.map → VisNoData-7d5f77c3.js.map} +1 -1
- package/amd/{VisProgressiveLoader-06a60c8f.js → VisProgressiveLoader-68d8d8b3.js} +2 -2
- package/amd/{VisProgressiveLoader-06a60c8f.js.map → VisProgressiveLoader-68d8d8b3.js.map} +1 -1
- package/amd/{VisTabularDatatip-55bbd19f.js → VisTabularDatatip-1051eaca.js} +2 -2
- package/amd/{VisTabularDatatip-55bbd19f.js.map → VisTabularDatatip-1051eaca.js.map} +1 -1
- package/amd/{WindowOverlay-43c10424.js → WindowOverlay-a2d80d55.js} +2 -2
- package/amd/{WindowOverlay-43c10424.js.map → WindowOverlay-a2d80d55.js.map} +1 -1
- package/amd/{YearsGridView-ddc90c36.js → YearsGridView-e758c73a.js} +2 -2
- package/amd/{YearsGridView-ddc90c36.js.map → YearsGridView-e758c73a.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-a444ef75.js → index-735cad6d.js} +2 -2
- package/amd/index-735cad6d.js.map +1 -0
- package/amd/listViewSelectionTests-a8209843.js +1 -1
- package/amd/render-4250c759.js +2 -0
- package/amd/{render-a1ae323f.js.map → render-4250c759.js.map} +1 -1
- package/amd/{tabbableUtils-f5e521c8.js → tabbableUtils-9887f50b.js} +2 -2
- package/amd/{tabbableUtils-f5e521c8.js.map → tabbableUtils-9887f50b.js.map} +1 -1
- package/amd/{testData-b22c8f34.js → testData-71364772.js} +2 -2
- package/amd/{testData-b22c8f34.js.map → testData-71364772.js.map} +1 -1
- package/amd/tooltipUtils-3b34c2bc.js +2 -0
- package/amd/{tooltipUtils-79293e46.js.map → tooltipUtils-3b34c2bc.js.map} +1 -1
- package/amd/useCellNavigation-1feec094.js +1 -1
- package/amd/useChartContextMenu-673e3de0.js +1 -1
- package/amd/{useChartDatatip-04fa72c7.js → useChartDatatip-c702890c.js} +2 -2
- package/amd/{useChartDatatip-04fa72c7.js.map → useChartDatatip-c702890c.js.map} +1 -1
- package/amd/useChartMarquee-62e7676c.js +1 -1
- package/amd/{useColorScheme-443e7cc7.js → useColorScheme-10dc88de.js} +2 -2
- package/amd/{useColorScheme-443e7cc7.js.map → useColorScheme-10dc88de.js.map} +1 -1
- package/amd/useContextMenu-57f18e97.js +1 -1
- package/amd/{useCssVars-dc52806c.js → useCssVars-c043f8da.js} +2 -2
- package/amd/{useCssVars-dc52806c.js.map → useCssVars-c043f8da.js.map} +1 -1
- package/amd/{useCurrentBgColor-50142bd8.js → useCurrentBgColor-2426ee24.js} +2 -2
- package/amd/{useCurrentBgColor-50142bd8.js.map → useCurrentBgColor-2426ee24.js.map} +1 -1
- package/amd/useCurrentKey-1d869ff4.js +2 -0
- package/amd/{useCurrentKey-db6f418a.js.map → useCurrentKey-1d869ff4.js.map} +1 -1
- package/amd/{useDatatip-748e233f.js → useDatatip-87792500.js} +2 -2
- package/amd/{useDatatip-748e233f.js.map → useDatatip-87792500.js.map} +1 -1
- package/amd/{useDensity-f0f7ae9a.js → useDensity-c83df7b4.js} +2 -2
- package/amd/{useDensity-f0f7ae9a.js.map → useDensity-c83df7b4.js.map} +1 -1
- package/amd/{useFloating-a2399a51.js → useFloating-8726c4bb.js} +2 -2
- package/amd/{useFloating-a2399a51.js.map → useFloating-8726c4bb.js.map} +1 -1
- package/amd/useKeyboardEvents-d87e3587.js +2 -0
- package/amd/{useKeyboardEvents-8ada7a1f.js.map → useKeyboardEvents-d87e3587.js.map} +1 -1
- package/amd/useLegendContextMenu-09c7a5a9.js +1 -1
- package/amd/useMeterDatatip-3abdf66a.js +2 -0
- package/amd/{useMeterDatatip-3b5a5112.js.map → useMeterDatatip-3abdf66a.js.map} +1 -1
- package/amd/{useOutsideClick-476e0577.js → useOutsideClick-5c2a47be.js} +2 -2
- package/amd/{useOutsideClick-476e0577.js.map → useOutsideClick-5c2a47be.js.map} +1 -1
- package/amd/usePopupAnimation-916ff96d.js +2 -0
- package/amd/{usePopupAnimation-6445a247.js.map → usePopupAnimation-916ff96d.js.map} +1 -1
- package/amd/usePrefixSuffix-09bd5925.js +2 -0
- package/amd/{usePrefixSuffix-f7544e05.js.map → usePrefixSuffix-09bd5925.js.map} +1 -1
- package/amd/useReorderableItem-7fd4d629.js +1 -1
- package/amd/{useRovingTabIndexContainer-94cc3710.js → useRovingTabIndexContainer-05e87912.js} +2 -2
- package/amd/{useRovingTabIndexContainer-94cc3710.js.map → useRovingTabIndexContainer-05e87912.js.map} +1 -1
- package/amd/useScale-37d42c9d.js +2 -0
- package/amd/{useScale-e311d35f.js.map → useScale-37d42c9d.js.map} +1 -1
- package/amd/{useSelectCommon-4e256cf0.js → useSelectCommon-94d5e5bb.js} +2 -2
- package/amd/{useSelectCommon-4e256cf0.js.map → useSelectCommon-94d5e5bb.js.map} +1 -1
- package/amd/{useSelectDrill-65d98139.js → useSelectDrill-a7d833b6.js} +2 -2
- package/amd/{useSelectDrill-65d98139.js.map → useSelectDrill-a7d833b6.js.map} +1 -1
- package/amd/{useSelection-4d3a1ea8.js → useSelection-396ce75f.js} +2 -2
- package/amd/{useSelection-4d3a1ea8.js.map → useSelection-396ce75f.js.map} +1 -1
- package/amd/useSelection-e2791513.js +2 -0
- package/amd/{useSelection-a6fd13cf.js.map → useSelection-e2791513.js.map} +1 -1
- package/amd/{useTabBar-40842fb9.js → useTabBar-423a0c03.js} +2 -2
- package/amd/{useTabBar-40842fb9.js.map → useTabBar-423a0c03.js.map} +1 -1
- package/amd/{useTestId-b5cd4766.js → useTestId-3a316499.js} +2 -2
- package/amd/{useTestId-b5cd4766.js.map → useTestId-3a316499.js.map} +1 -1
- package/amd/{useTheme-a8334e06.js → useTheme-ac980f9a.js} +2 -2
- package/amd/{useTheme-a8334e06.js.map → useTheme-ac980f9a.js.map} +1 -1
- package/amd/useThemeInterpolations-b1d98ea4.js +2 -0
- package/amd/{useThemeInterpolations-e20f8cfa.js.map → useThemeInterpolations-b1d98ea4.js.map} +1 -1
- package/amd/useTooltip-6a5fedfa.js +2 -0
- package/amd/{useTooltip-e4089d1a.js.map → useTooltip-6a5fedfa.js.map} +1 -1
- package/amd/{useTooltipControlled-fafb2f01.js → useTooltipControlled-fb57eb02.js} +2 -2
- package/amd/{useTooltipControlled-fafb2f01.js.map → useTooltipControlled-fb57eb02.js.map} +1 -1
- package/amd/{useTranslationBundle-d07d4b20.js → useTranslationBundle-516b1b83.js} +2 -2
- package/amd/{useTranslationBundle-d07d4b20.js.map → useTranslationBundle-516b1b83.js.map} +1 -1
- package/amd/{useUser-3ef25571.js → useUser-85c781ea.js} +2 -2
- package/amd/{useUser-3ef25571.js.map → useUser-85c781ea.js.map} +1 -1
- package/amd/{useVisEvents-48144382.js → useVisEvents-954dcd88.js} +2 -2
- package/amd/{useVisEvents-48144382.js.map → useVisEvents-954dcd88.js.map} +1 -1
- package/amd/utils/PRIVATE_tooltipUtils.js +1 -1
- package/amd/utils/PRIVATE_visTestUtils.js +1 -1
- package/amd/{withDirectionIcon-74c39ee3.js → withDirectionIcon-ce0c7432.js} +2 -2
- package/amd/{withDirectionIcon-74c39ee3.js.map → withDirectionIcon-ce0c7432.js.map} +1 -1
- package/amd/withThemeProps-4c23997e.js +1 -1
- package/cjs/{BarChart-f132cd7c.js → BarChart-6b34be7b.js} +2 -2
- package/cjs/{BarChart-f132cd7c.js.map → BarChart-6b34be7b.js.map} +1 -1
- package/cjs/{BaseCardView-b5471a69.js → BaseCardView-55bc5e6f.js} +2 -2
- package/cjs/{BaseCardView-b5471a69.js.map → BaseCardView-55bc5e6f.js.map} +1 -1
- package/cjs/{CardFlexView-075d4013.js → CardFlexView-ae79f8f1.js} +2 -2
- package/cjs/{CardFlexView-075d4013.js.map → CardFlexView-ae79f8f1.js.map} +1 -1
- package/cjs/{CardGridView-3c07cf2a.js → CardGridView-4936ffd6.js} +2 -2
- package/cjs/{CardGridView-3c07cf2a.js.map → CardGridView-4936ffd6.js.map} +1 -1
- package/cjs/{Chart-42a979a7.js → Chart-4eee682b.js} +2 -2
- package/cjs/{Chart-42a979a7.js.map → Chart-4eee682b.js.map} +1 -1
- package/cjs/CheckboxSet-368b907b.js +53 -0
- package/cjs/CheckboxSet-368b907b.js.map +1 -0
- package/cjs/DrawerLayoutStyles.styles.css +1 -0
- package/cjs/GroupLoadingIndicator-397feb37.js +1 -1
- package/cjs/{Indexer-8ba89fa5.js → Indexer-1dfa7ec4.js} +2 -2
- package/cjs/{Indexer-8ba89fa5.js.map → Indexer-1dfa7ec4.js.map} +1 -1
- package/cjs/{InputDatePicker-fe21408c.js → InputDatePicker-c2ef8b45.js} +2 -2
- package/cjs/{InputDatePicker-fe21408c.js.map → InputDatePicker-c2ef8b45.js.map} +1 -1
- package/cjs/{LineAreaChart-4f443939.js → LineAreaChart-28268084.js} +2 -2
- package/cjs/{LineAreaChart-4f443939.js.map → LineAreaChart-28268084.js.map} +1 -1
- package/cjs/{List-5374e621.js → List-2baf37ae.js} +4 -3
- package/cjs/{List-5374e621.js.map → List-2baf37ae.js.map} +1 -1
- package/cjs/{ListView-a8278334.js → ListView-4db96cfd.js} +2 -2
- package/cjs/{ListView-a8278334.js.map → ListView-4db96cfd.js.map} +1 -1
- package/cjs/{LoadMoreCollection-69bc038c.js → LoadMoreCollection-73112ff0.js} +2 -2
- package/cjs/{LoadMoreCollection-69bc038c.js.map → LoadMoreCollection-73112ff0.js.map} +1 -1
- package/cjs/MaxLengthCounter-a5370f66.js +27 -0
- package/cjs/MaxLengthCounter-a5370f66.js.map +1 -0
- package/cjs/PRIVATE_BaseCardView.js +3 -3
- package/cjs/PRIVATE_Chart.js +4 -4
- package/cjs/PRIVATE_List.js +4 -4
- package/cjs/PRIVATE_LoadMoreCollection.js +2 -2
- package/cjs/PRIVATE_SelectCommon.js +5 -5
- package/cjs/PRIVATE_Table.js +3 -3
- package/cjs/PRIVATE_VirtualizedCollection.js +2 -2
- package/cjs/{SelectMultiple-79cebd04.js → SelectMultiple-2d4eba14.js} +2 -2
- package/cjs/{SelectMultiple-79cebd04.js.map → SelectMultiple-2d4eba14.js.map} +1 -1
- package/cjs/{SelectSingle-d8cf56db.js → SelectSingle-731c2ecd.js} +2 -2
- package/cjs/{SelectSingle-d8cf56db.js.map → SelectSingle-731c2ecd.js.map} +1 -1
- package/cjs/{Table-d70de040.js → Table-b137c360.js} +2 -2
- package/cjs/{Table-d70de040.js.map → Table-b137c360.js.map} +1 -1
- package/cjs/{TableView-d91ebb19.js → TableView-3a1f0c38.js} +2 -2
- package/cjs/{TableView-d91ebb19.js.map → TableView-3a1f0c38.js.map} +1 -1
- package/cjs/{TextArea-792069d7.js → TextArea-096f18ad.js} +4 -22
- package/cjs/TextArea-096f18ad.js.map +1 -0
- package/cjs/{TextAreaAutosize-1989de68.js → TextAreaAutosize-4d30faec.js} +3 -3
- package/cjs/{TextAreaAutosize-1989de68.js.map → TextAreaAutosize-4d30faec.js.map} +1 -1
- package/cjs/Theme-redwood/theme.css +171 -171
- package/cjs/Theme-stable/theme.css +281 -281
- package/cjs/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
- package/cjs/UNSAFE_BarChart.js +5 -5
- package/cjs/UNSAFE_CardFlexView.js +4 -4
- package/cjs/UNSAFE_CardGridView.js +4 -4
- package/cjs/UNSAFE_CheckboxItem.js +80 -30
- package/cjs/UNSAFE_CheckboxItem.js.map +1 -1
- package/cjs/UNSAFE_CheckboxSet.js +15 -44
- package/cjs/UNSAFE_CheckboxSet.js.map +1 -1
- package/cjs/UNSAFE_DrawerLayout.js +4 -2
- package/cjs/UNSAFE_DrawerLayout.js.map +1 -1
- package/cjs/UNSAFE_ExpandableList.js +3 -3
- package/cjs/UNSAFE_Indexer.js +2 -2
- package/cjs/UNSAFE_InputDatePicker.js +90 -90
- package/cjs/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +5 -5
- package/cjs/UNSAFE_LineAreaChart.js +5 -5
- package/cjs/UNSAFE_ListView.js +5 -5
- package/cjs/UNSAFE_SelectMultiple.js +6 -6
- package/cjs/UNSAFE_SelectSingle.js +6 -6
- package/cjs/UNSAFE_TableView.js +4 -4
- package/cjs/UNSAFE_TextArea.js +4 -3
- package/cjs/UNSAFE_TextArea.js.map +1 -1
- package/cjs/UNSAFE_TextAreaAutosize.js +3 -3
- package/cjs/UNSAFE_VirtualizedListView.js +5 -5
- package/cjs/{VirtualizedCollection-9e8c48b9.js → VirtualizedCollection-00aedb8b.js} +2 -2
- package/cjs/{VirtualizedCollection-9e8c48b9.js.map → VirtualizedCollection-00aedb8b.js.map} +1 -1
- package/cjs/{VirtualizedListView-16222e22.js → VirtualizedListView-75610c90.js} +2 -2
- package/cjs/{VirtualizedListView-16222e22.js.map → VirtualizedListView-75610c90.js.map} +1 -1
- package/cjs/{useSelectCommon-309c1746.js → useSelectCommon-12313cdd.js} +2 -2
- package/cjs/{useSelectCommon-309c1746.js.map → useSelectCommon-12313cdd.js.map} +1 -1
- package/es/{BarChart-c68a559c.js → BarChart-cbd9c2bf.js} +2 -2
- package/es/{BarChart-c68a559c.js.map → BarChart-cbd9c2bf.js.map} +1 -1
- package/es/ButtonLayoutVariants.styles.css +2 -2
- package/es/ButtonLayoutVariants.styles2.css +2 -2
- package/es/{Chart-f2438968.js → Chart-8922a0b3.js} +2 -2
- package/es/{Chart-f2438968.js.map → Chart-8922a0b3.js.map} +1 -1
- package/es/DrawerLayoutStyles.styles.css +1 -0
- package/es/{LineAreaChart-e2e762e8.js → LineAreaChart-85b37b1c.js} +2 -2
- package/es/{LineAreaChart-e2e762e8.js.map → LineAreaChart-85b37b1c.js.map} +1 -1
- package/es/NavigationListItemVariants.styles.css +5 -5
- package/es/NavigationListItemVariants.styles2.css +5 -5
- package/es/PRIVATE_Chart.js +4 -4
- package/es/Theme-redwood/theme.css +505 -505
- package/es/Theme-stable/theme.css +632 -632
- package/es/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
- package/es/UNSAFE_BarChart.js +5 -5
- package/es/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +1 -1
- package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutTheme.js +1 -1
- package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutVariants.css.js +1 -1
- package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutTheme.js +1 -1
- package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutVariants.css.js +1 -1
- package/es/UNSAFE_ButtonLayout.js +1 -1
- package/es/UNSAFE_DrawerLayout.js +4 -2
- package/es/UNSAFE_DrawerLayout.js.map +1 -1
- package/es/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +5 -5
- package/es/UNSAFE_LineAreaChart.js +5 -5
- package/es/UNSAFE_NavigationList/themes/redwood/NavigationListItemVariants.css.js +1 -1
- package/es/UNSAFE_NavigationList/themes/stable/NavigationListItemTheme.js +1 -1
- package/es/UNSAFE_NavigationList/themes/stable/NavigationListItemVariants.css.js +1 -1
- package/es/UNSAFE_NavigationList.js +1 -1
- package/es/UNSAFE_NavigationListCommon/themes/redwood/NavigationListItemTheme.js +1 -1
- package/es/UNSAFE_NavigationListCommon.js +1 -1
- package/es/UNSAFE_OverflowTabBar.js +1 -1
- package/es/UNSAFE_TabBar.js +1 -1
- package/es/UNSAFE_TabBarCommon.js +1 -1
- package/es/UNSAFE_TabBarMixed.js +1 -1
- package/es/UNSAFE_Toolbar/tests/Toolbar.spec.js +1 -1
- package/es/UNSAFE_Toolbar.js +1 -1
- package/es/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
- package/package.json +2 -2
- package/amd/CardFlexView-14fada63.js +0 -2
- package/amd/CheckboxSetContext-2e486ea8.js +0 -2
- package/amd/CheckboxSetContext-2e486ea8.js.map +0 -1
- package/amd/CompactLabelAssistance-bc14e060.js +0 -2
- package/amd/Flex-3421f0df.js +0 -2
- package/amd/HighlightText-644bc74e.js +0 -2
- package/amd/InputDatePicker-97756bcd.js +0 -2
- package/amd/List-61d64cd6.js +0 -2
- package/amd/LiveRegion-9a362373.js +0 -2
- package/amd/LoadMoreCollection-83413a59.js +0 -2
- package/amd/MaxLengthLiveRegion-bb956138.js +0 -2
- package/amd/SectionedContent-2b89af7b.js +0 -2
- package/amd/SelectorAll-7288e923.js +0 -2
- package/amd/TabBarMixedSeparator-ed764207.js +0 -2
- package/amd/TruncatingText-e1aceee7.js +0 -2
- package/amd/VirtualizedListView-96ddfd98.js +0 -2
- package/amd/index-a444ef75.js.map +0 -1
- package/amd/render-a1ae323f.js +0 -2
- package/amd/tooltipUtils-79293e46.js +0 -2
- package/amd/useCurrentKey-db6f418a.js +0 -2
- package/amd/useKeyboardEvents-8ada7a1f.js +0 -2
- package/amd/useMeterDatatip-3b5a5112.js +0 -2
- package/amd/usePopupAnimation-6445a247.js +0 -2
- package/amd/usePrefixSuffix-f7544e05.js +0 -2
- package/amd/useScale-e311d35f.js +0 -2
- package/amd/useSelection-a6fd13cf.js +0 -2
- package/amd/useThemeInterpolations-e20f8cfa.js +0 -2
- package/amd/useTooltip-e4089d1a.js +0 -2
- package/cjs/CheckboxSetContext-c62db26d.js +0 -12
- package/cjs/CheckboxSetContext-c62db26d.js.map +0 -1
- package/cjs/TextArea-792069d7.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseCardView-b5471a69.js","sources":["../../src/PRIVATE_BaseCardView/BaseCardViewReorderableItem.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewItem.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewLayout.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewSkeletonContainer.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewSkeleton.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewUtils.ts","../../src/PRIVATE_BaseCardView/useCardViewReorder.ts","../../src/PRIVATE_BaseCardView/BaseCardView.tsx"],"sourcesContent":["import { useRef, useCallback } from 'preact/hooks';\nimport { useReorderableItem } from '../hooks/PRIVATE_useReorderable';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { ITEM_SELECTOR } from '../utils/PRIVATE_collectionUtils';\nimport { ListItemRendererContext } from '../UNSAFE_Collection';\nimport { ReorderableItemProps } from '../UNSAFE_Collection/Reorderable.types';\nimport { multiVariantStyles, styles } from './themes/BaseCardViewStyles.css';\nimport { GutterSize } from './BaseCardViewUtils';\n\nexport type BaseCardViewReorderableItemProps<K> = ReorderableItemProps<K> & {\n currentKey: K | undefined;\n gutterSize: GutterSize;\n columns: number;\n};\n\n/**\n * The internal component used to render a reorderable item in CardView.\n */\nexport function BaseCardViewReorderableItem<K extends string | number, D>({\n currentKey,\n children,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n gutterSize,\n columns,\n context\n}: BaseCardViewReorderableItemProps<K> & { context: ListItemRendererContext<K, D> }) {\n const itemRef = useRef<HTMLDivElement | null>(null);\n const isOneColumn = columns === 1;\n const isFirstColumn = context.index % columns === 0;\n const isLastColumn = context.index % columns === columns - 1;\n const variantClasses = multiVariantStyles({\n itemOverlayFront: gutterSize\n });\n const variantClassesVertical = multiVariantStyles({\n itemOverlayFrontVertical: gutterSize\n });\n const itemStyles = {\n itemOverlayFront: isOneColumn ? variantClassesVertical : variantClasses,\n itemOverlayRear: isOneColumn ? styles.itemOverlayRearVertical : styles.itemOverlayRear,\n itemDragger: styles.itemDragger\n };\n const getItem = useCallback(() => itemRef?.current?.closest(ITEM_SELECTOR) as HTMLElement, []);\n const setTransferData = useCallback(\n (event: DragEvent) => {\n event.dataTransfer?.setData('text/cardview-items-key', JSON.stringify(context.metadata.key));\n },\n [context.metadata.key]\n );\n const { rootProps, isDragged, overlayZoneBeforeProps, overlayZoneAfterProps } =\n useReorderableItem({\n currentKey,\n isDisabled: onReorder ? false : true,\n draggable: onReorder ? true : false,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n ref: itemRef,\n getItem,\n setTransferData,\n itemStyles,\n itemSelector: ITEM_SELECTOR,\n isVertical: isOneColumn\n });\n\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n\n const overlayZoneBeforeClass = classNames([\n overlayZoneBeforeProps?.class,\n !isOneColumn && !isRtl && isFirstColumn && styles.itemOverlayFrontEdge,\n !isOneColumn && isRtl && isLastColumn && styles.itemOverlayFrontEdge\n ]);\n\n const overlayZoneAfterClass = classNames([\n overlayZoneAfterProps?.class,\n !isOneColumn && !isRtl && isLastColumn && styles.itemOverlayRearEdge,\n !isOneColumn && isRtl && isFirstColumn && styles.itemOverlayRearEdge\n ]);\n\n return (\n <div {...rootProps} draggable={false}>\n {children}\n {!isDragged && dragKey && (\n <>\n <div {...overlayZoneBeforeProps} class={overlayZoneBeforeClass}></div>\n <div {...overlayZoneAfterProps} class={overlayZoneAfterClass}></div>\n </>\n )}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { memo } from 'preact/compat';\nimport {\n useRef,\n useCallback,\n useLayoutEffect,\n useMemo,\n useEffect,\n StateUpdater,\n Dispatch,\n MutableRef\n} from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeRefs } from '../utils/PRIVATE_refUtils';\nimport { warn } from '../utils/UNSAFE_logger';\nimport { allTabbableElements } from '../utils/PRIVATE_tabbableUtils';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useAnimation, UseAnimationConfig } from '../hooks/UNSAFE_useAnimation';\nimport { useResizeObserver } from '../hooks/UNSAFE_useResizeObserver';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { SelectionMode, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { multiVariantStyles, styles } from './themes/BaseCardViewStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\nimport {\n BaseCardViewReorderableItem,\n BaseCardViewReorderableItemProps\n} from './BaseCardViewReorderableItem';\n\n/**\n * Props for the BaseCardViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n isTabbable: boolean;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isSelected: boolean;\n selectionMode: SelectionMode;\n focusBehavior: 'card' | 'content';\n setIsFocusBehaviorValid?: Dispatch<StateUpdater<boolean>>;\n initialAnimation?: 'slideUp' | 'slideDown';\n isGridLayout?: boolean;\n updateCardSize?: (width: number, height: number) => void;\n} & {\n reorderItemProps?: Omit<BaseCardViewReorderableItemProps<K>, 'children'>;\n};\n\n/**\n * The internal component used to render a single item in CardView.\n */\nexport function BaseCardViewItem<K extends string | number, D>({\n children,\n context,\n isTabbable,\n isFocused,\n isFocusRingVisible,\n isSelected,\n selectionMode,\n focusBehavior,\n setIsFocusBehaviorValid,\n initialAnimation,\n isGridLayout,\n updateCardSize,\n reorderItemProps\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const timeoutRef = useRef<ReturnType<typeof setTimeout>>();\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n const isItemFocused = isFocused && isFocusRingVisible;\n const variantClasses = multiVariantStyles({\n itemFocused: focusBehavior === 'card' && isItemFocused ? 'isItemFocused' : 'isNotItemFocused',\n itemInitialOpacity: initialAnimation ? 'isTransparent' : 'isNotTransparent',\n itemInGridLayout: isGridLayout ? 'isInGridLayout' : 'isNotInGridLayout'\n });\n const classes = classNames([styles.itemStyle, variantClasses]);\n\n /*********************************** Tabbable Mode ***********************************/\n\n // don't bubble Arrow Up/Down/Left/Right 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 (\n focusBehavior === 'card' &&\n isTabbable &&\n (event.key === 'ArrowDown' ||\n event.key === 'ArrowUp' ||\n event.key === 'ArrowLeft' ||\n event.key === 'ArrowRight')\n ) {\n event.stopPropagation();\n }\n };\n\n /************************************ Card Size ************************************/\n\n const handleResize = useCallback(\n (entry: ResizeObserverEntry) => {\n updateCardSize?.(entry.contentRect.width, entry.contentRect.height);\n },\n [updateCardSize]\n );\n\n const nullRef = useRef<HTMLDivElement>(null);\n useResizeObserver(updateCardSize ? rootRef : nullRef, handleResize);\n\n /********************************* Focus Behavior *********************************/\n\n useLayoutEffect(() => {\n if (focusBehavior === 'content' && isItemFocused) {\n // rootRef is cardview item, its first child is the focus trap div, so its first grand child\n // is the actual content\n const content = rootRef.current?.firstElementChild?.firstElementChild as HTMLElement;\n const focusable = allTabbableElements(content, true, true);\n if (focusable.length === 0 || focusable.length > 1) {\n warn(\n `${focusable.length} focusable elements are detected in the card. 'content' focusBehavior is intended only for use when the card has single focusable element. Please specify one focusable element in the card or switch the focusBehavior to 'card'.`\n );\n setIsFocusBehaviorValid?.(false);\n } else {\n focusable[0].focus();\n }\n }\n }, [focusBehavior, isItemFocused, setIsFocusBehaviorValid]);\n\n /******************************** Initial Animation ********************************/\n\n // animation for slide up/down\n const { nodeRef: nodeRefSlide, controller: controllerSlide } = useAnimation<\n 'slideUp' | 'slideDown' | 'none',\n HTMLDivElement\n >(initialAnimation || 'none', animationConfigSlide(itemIndex));\n\n // animation for opacity change\n const { nodeRef: nodeRefOpacity, controller: controllerOpacity } = useAnimation<\n 'opacity' | 'none',\n HTMLDivElement\n >((initialAnimation && 'opacity') || 'none', animationConfigOpacity(itemIndex, timeoutRef));\n\n // max cap for animation is 1s\n useEffect(() => {\n if (initialAnimation !== undefined) {\n timeoutRef.current = setTimeout(() => {\n controllerSlide.cancel();\n controllerOpacity.cancel();\n if (rootRef.current) {\n rootRef.current.style.opacity = '1';\n }\n }, 1000);\n }\n }, [controllerOpacity, controllerSlide, initialAnimation]);\n\n // TODO: issue track in JET-57681, we currently have two useAnimation() because the opacity and\n // slide up/down have different durations, and the current API couldn't handle this case, we will\n // update this once the API is updated\n\n /********************************** Child Component **********************************/\n\n const itemRefs = useMemo(() => {\n // NOTE: spot an issue when we click the cards during animation is processing, the cards would not finish\n // the current animations and stay as what it is, e.g. leave itself as half transparent.\n // need to remove nodeRefSlide and nodeRefOpacity to avoid this issue.\n if (initialAnimation === undefined) {\n return mergeRefs(rootRef);\n }\n return mergeRefs(rootRef, nodeRefSlide, nodeRefOpacity);\n }, [rootRef, nodeRefSlide, nodeRefOpacity, initialAnimation]);\n\n const childrenComponent = reorderItemProps ? (\n <BaseCardViewReorderableItem {...reorderItemProps} context={context}>\n {children(context)}\n </BaseCardViewReorderableItem>\n ) : (\n children(context)\n );\n\n return (\n <div\n id={useId()}\n ref={itemRefs}\n class={classes}\n role=\"gridcell\"\n data-oj-key={itemKey}\n onKeyDown={handleKeyDown}\n aria-selected={selectionMode === 'none' ? undefined : isSelected}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {childrenComponent}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n );\n}\n\nconst animationConfigSlide = (\n index: number\n): UseAnimationConfig<'slideUp' | 'slideDown' | 'none', HTMLDivElement> => {\n return {\n animationStates: {\n slideUp: {\n from: {\n translateY: '50px'\n },\n to: {\n translateY: '0px'\n },\n options: {\n duration: 300,\n delay: index * 50,\n easing: [0, 0, 0.2, 1]\n }\n },\n slideDown: {\n from: {\n translateY: '-50px'\n },\n to: {\n translateY: '0'\n },\n options: {\n duration: 300,\n delay: index * 50,\n easing: [0, 0, 0.2, 1]\n }\n }\n },\n isAnimatedOnMount: true\n };\n};\n\nconst animationConfigOpacity = (\n index: number,\n timeoutRef: MutableRef<ReturnType<typeof setTimeout> | undefined>\n): UseAnimationConfig<'opacity' | 'none', HTMLDivElement> => {\n return {\n animationStates: {\n opacity: {\n from: {\n opacity: 0\n },\n to: {\n opacity: 1\n },\n options: {\n duration: 150,\n delay: index * 50,\n easing: 'linear'\n }\n }\n },\n isAnimatedOnMount: true,\n onAnimationEnd: () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n }\n };\n};\n\n/**\n * Compare the equality between two reorderItemProps, especially useful for memoized items\n */\nconst compareReorderItemProps = <K, D>(\n props1: Props<K, D>['reorderItemProps'],\n props2: Props<K, D>['reorderItemProps']\n) => {\n return (\n props1?.['currentKey'] === props2?.['currentKey'] &&\n props1?.['dragKey'] === props2?.['dragKey'] &&\n props1?.['columns'] === props2?.['columns']\n );\n};\n\nexport const MemoizeBaseCardViewItem = memo(\n BaseCardViewItem,\n <K, D>(prev: Props<K, D>, next: Props<K, D>) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isTabbable === next.isTabbable &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.initialAnimation === next.initialAnimation &&\n prev.focusBehavior === next.focusBehavior &&\n compareListItemContext(prev.context, next.context) &&\n compareReorderItemProps(prev.reorderItemProps, next.reorderItemProps)\n );\n }\n return false;\n }\n);\n","import { ComponentChildren } from 'preact';\nimport { Grid } from '../UNSAFE_Grid';\nimport { Flex } from '../UNSAFE_Flex';\nimport { GutterSize } from './BaseCardViewUtils';\nimport { cardViewVars } from './themes/BaseCardViewContract.css';\n\ntype Props = {\n children: ComponentChildren;\n layout: 'grid' | 'flex';\n gutterSize: GutterSize;\n columns: number;\n};\n\nexport function BaseCardViewLayout({ children, layout, gutterSize, columns }: Props) {\n const gap = cardViewVars.gutterSize[gutterSize];\n if (layout === 'grid') {\n return columns < 1 ? null : (\n <Grid gridTemplateColumns={`repeat(${columns}, 1fr)`} gap={gap}>\n {children}\n </Grid>\n );\n } else {\n return (\n <Flex wrap=\"wrap\" gap={gap}>\n {children}\n </Flex>\n );\n }\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren, Fragment } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\n\ntype Props = {\n /**\n * Allows to pass skeletons\n **/\n children: ComponentChildren;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * BaseCardViewSkeletonContainer renders skeletons after 50ms threshold defined in the Redwood spec\n **/\nexport function BaseCardViewSkeletonContainer({ children }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n return isVisible ? <Fragment>{children}</Fragment> : <div class={LOADMORE_STYLE_CLASS}></div>;\n}\n","import { Size } from '../utils/UNSAFE_size';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { BaseCardViewSkeletonContainer } from './BaseCardViewSkeletonContainer';\n\n// these are arbitrary values by now, might update them with definite values in the future\nconst DEFAULT_SKELETON_NUMBER = 25;\nconst DEFAULT_SKELETON_WIDTH = '60x';\nconst DEFAULT_SKELETON_HEIGHT = '70x';\n\ntype SkeletonProps = {\n layout: 'flex' | 'grid';\n colCount: number;\n totalCount: number;\n cardWidth?: number;\n cardHeight?: number;\n};\n\n/**\n * A function that returns an array of skeletons based on count\n * @param count the number of skeletons\n */\nconst getSkeletonsByCount = (\n layout: 'flex' | 'grid',\n count = DEFAULT_SKELETON_NUMBER,\n width?: Size,\n height?: Size,\n isUnique = true\n) => {\n const sw = width || (layout === 'flex' ? DEFAULT_SKELETON_WIDTH : '100%');\n const sh = height || DEFAULT_SKELETON_HEIGHT;\n\n return [...Array(count)].map((_v, i) => (\n // create unique keys if needed, otherwise the animations won't start at the same time, because the old copy of skeletons\n // could be reused, even the key is specified by useId(), combine count with time to make the key unique.\n <Skeleton key={isUnique && `${i}${new Date().getTime()}`} width={sw} height={sh} />\n ));\n};\n\n/**\n * When there is no data (i.e. data is an empty array or null, and hasMore is false), we will show 25 card skeletons with default size\n */\nexport const InitialLoadSkeletons = (props: { layout: SkeletonProps['layout'] }) => (\n <BaseCardViewSkeletonContainer>{getSkeletonsByCount(props.layout)}</BaseCardViewSkeletonContainer>\n);\n\n/**\n * When we are fetching the initial data (i.e. data is an empty array, and hasMore is true), we will show 25 card skeletons with default size,\n * because we don't know the card dimension at this time. Since there is more data to load, we will specify LOADMORE_STYLE_CLASS on skeletons\n */\nexport const DefaultLoadMoreSkeletons = (props: { layout: SkeletonProps['layout'] }) => {\n const firstSkeleton = (\n <div class={LOADMORE_STYLE_CLASS}>{getSkeletonsByCount(props.layout, 1)}</div>\n );\n const otherSkeletons = getSkeletonsByCount(props.layout, DEFAULT_SKELETON_NUMBER - 1);\n const skeletons = [firstSkeleton, ...otherSkeletons];\n return <BaseCardViewSkeletonContainer>{skeletons}</BaseCardViewSkeletonContainer>;\n};\n\n/**\n * During the render that we measure and update card dimension, we will hide skeletons temporarily\n * to avoid showing incorrect skeletons\n */\nconst InvisibleSkeletons = () => {\n return <div class={LOADMORE_STYLE_CLASS}></div>;\n};\n\nexport const LoadMoreSkeletons = (props: SkeletonProps) => {\n if (props.colCount < 1 || props.cardWidth == null || props.cardHeight == null) {\n // if column count / card width / card height are invalid, we will show the invisible skeletons\n return <InvisibleSkeletons />;\n } else {\n // after initial renders, show skeletons with correct dimension and count\n const skeletons = [];\n\n const firstRowColCount = props.colCount - (props.totalCount % props.colCount);\n const isOnlyOneRow = firstRowColCount === props.colCount;\n\n const cardWidth = `calc(${props.cardWidth}px)` as Size;\n const cardHeight = props.cardHeight\n ? (`calc(${props.cardHeight}px)` as Size)\n : DEFAULT_SKELETON_HEIGHT;\n\n const width: Size = props.layout === 'flex' ? cardWidth : '100%';\n const height: Size = props.layout === 'flex' || isOnlyOneRow ? cardHeight : '100%';\n\n // first row\n const firstSkeleton = (\n <div class={LOADMORE_STYLE_CLASS}>{getSkeletonsByCount(props.layout, 1, width, height)}</div>\n );\n skeletons.push(firstSkeleton);\n skeletons.push(getSkeletonsByCount(props.layout, firstRowColCount - 1, width, height));\n\n // second row\n if (!isOnlyOneRow) {\n skeletons.push(getSkeletonsByCount(props.layout, props.colCount, width, cardHeight));\n }\n\n return <BaseCardViewSkeletonContainer>{skeletons}</BaseCardViewSkeletonContainer>;\n }\n};\n","import { Size } from '../utils/UNSAFE_size';\n\nexport const emptyKeys = { all: false, keys: new Set() };\nexport type GutterSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * A mapping of gutterSize to concrete size in pixels\n */\nexport const gutterSizeToPX: Record<string, number> = {\n xs: 12,\n sm: 16,\n md: 24,\n lg: 48,\n xl: 64\n};\n\nexport const getGapSize = (gutterSize?: GutterSize) => {\n const px = gutterSizeToPX[gutterSize || 'sm'];\n const gap = `${px / 4}x` as Size;\n return gap;\n};\n\nexport const getColCount = (gapWidth: number, cardWidth?: number, rootWidth?: number) => {\n if (!cardWidth || !rootWidth) return 0;\n\n // if we have n cards, we have n-1 gaps\n const colCount = Math.floor((rootWidth + gapWidth) / (gapWidth + cardWidth));\n return Math.max(1, colCount);\n};\n","import { RefObject } from 'preact';\nimport { useState } from 'preact/hooks';\nimport { ITEM_SELECTOR, dragToScroll } from '../utils/PRIVATE_collectionUtils';\nimport { useReorderable } from '../hooks/PRIVATE_useReorderable';\nimport { Props } from '../UNSAFE_CardFlexView';\nimport { GutterSize } from './BaseCardViewUtils';\n\ntype useCardViewReorderProps<K, D> = Pick<Props<K, D>, 'currentKey' | 'onReorder'> & {\n gutterSize: GutterSize;\n columns: number;\n rootRef: RefObject<HTMLDivElement>;\n scrollCurrItemIntoView: RefObject<boolean>;\n};\n\nexport const useCardViewReorder = <K extends string | number, D>({\n currentKey,\n onReorder,\n gutterSize,\n columns,\n rootRef,\n scrollCurrItemIntoView\n}: useCardViewReorderProps<K, D>) => {\n const isReorderEnabled = onReorder != undefined;\n\n const [dragKey, setDragKey] = useState<K | undefined>(undefined);\n const { reorderProps, reorderContext, reorderInstructionsId, reorderInstructions } =\n useReorderable({\n onReorder,\n rootRef,\n itemSelector: ITEM_SELECTOR,\n isDisabled: !isReorderEnabled,\n columns\n });\n\n if (!isReorderEnabled) {\n return {\n reorderProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } as const;\n }\n\n const handleDragOver = (event: DragEvent) => {\n dragToScroll(event, dragKey !== undefined, rootRef.current);\n // during mouse reordering, the drag item might not be the same as current item,\n // so we should disallow current item scroll into view\n scrollCurrItemIntoView.current = false;\n };\n\n const reorderEventProps = { ...reorderProps, onDragOver: handleDragOver };\n\n const reorderItemProps = {\n currentKey,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n gutterSize,\n columns\n };\n\n return {\n reorderProps: reorderEventProps,\n reorderItemProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } as const;\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 { Fragment } from 'preact';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\nimport { useRef, useCallback, useEffect, useState, useImperativeHandle } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport {\n getPrevNextKeyByCount,\n getFirstVisibleKey,\n getViewportConfig,\n findElementByKey,\n keyExtractor,\n handleSelectionRange,\n ITEM_SELECTOR\n} from '../utils/PRIVATE_collectionUtils';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { useSelection, SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { ReorderableContext } from '../hooks/PRIVATE_useReorderable';\nimport { ItemContext, ListItemRendererContext, SelectionDetail } from '../UNSAFE_Collection';\nimport { Selector } from '../UNSAFE_Selector';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { LoadMoreCollection } from '../PRIVATE_LoadMoreCollection';\nimport { styles } from './themes/BaseCardViewStyles.css';\nimport { Props } from '../UNSAFE_CardFlexView';\nimport { MemoizeBaseCardViewItem } from './BaseCardViewItem';\nimport { BaseCardViewLayout } from './BaseCardViewLayout';\nimport {\n DefaultLoadMoreSkeletons,\n LoadMoreSkeletons,\n InitialLoadSkeletons\n} from './BaseCardViewSkeleton';\nimport { gutterSizeToPX, emptyKeys } from './BaseCardViewUtils';\nimport { useCardViewReorder } from './useCardViewReorder';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/BaseCardViewBaseTheme.css';\n\n/**\n * Props specific for the GradGridBaseImpl Component\n */\ntype BaseCardViewImplProps<K, D> = Props<K, D> & {\n /**\n * Provide the number of columns to render;\n */\n columns: number;\n /**\n * The layout of the BaseCardView. When we use CardGridView as parent, we will use grid layout;\n * when we use CardFlexView as parent, we will use flex layout.\n */\n layout: 'grid' | 'flex';\n /**\n * Card dimension, including width and height\n */\n cardSize: { width?: number; height?: number };\n /**\n * A callback function to update card dimension, including width and height\n */\n updateCardSize: (width: number, height: number) => void;\n};\n\nconst BaseCardViewImpl = forwardRef(\n <K extends string | number, D>(\n {\n children,\n data,\n onLoadMore = () => {},\n hasMore = false,\n getRowKey,\n currentKey,\n onCurrentKeyChange,\n selectionMode = 'none',\n selectedKeys = emptyKeys as Keys<K>,\n onSelectionChange,\n onReorder,\n viewportConfig,\n focusBehavior = 'card',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n initialAnimation = 'slideUp',\n gutterSize = 'sm',\n columns,\n layout,\n cardSize,\n updateCardSize\n }: BaseCardViewImplProps<K, D>,\n ref?: ForwardedRef<HTMLDivElement>\n ) => {\n const rootRef = useRef<HTMLDivElement>(null);\n useImperativeHandle(ref!, () => rootRef.current!, [rootRef]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n // tracking pending current key in pointer down event\n const pendingCurrentKey = useRef<K>();\n\n const gutterSizePX = gutterSizeToPX[gutterSize];\n const layoutProps = { layout, columns, gutterSize };\n const isInitialAnimation = useRef(true);\n useEffect(() => {\n if (cardSize.height != undefined && cardSize.width != undefined) {\n isInitialAnimation.current = false;\n }\n }, [cardSize]);\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowcount = hasMore || !data || columns < 1 ? -1 : Math.ceil(data?.length / columns);\n const ariaColcount = columns < 1 ? -1 : columns;\n\n const [isFocusBehaviorValid, setIsFocusBehaviorValid] = useState(true);\n const validFocusBehavior = isFocusBehaviorValid ? focusBehavior : 'card';\n\n // ensure current item is scrolled into view when current item is updated\n // during reordering, enable that during keyboard reordering, disable that during mouse reordering\n const scrollCurrItemIntoView = useRef(false);\n const isReorderEnabled = onReorder != undefined;\n\n const isFetching = useRef(false);\n\n /*****************************************************************************************/\n /************************************* Tabbable Mode *************************************/\n /*****************************************************************************************/\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n currentKey,\n onCurrentKeyChange\n );\n\n /*****************************************************************************************/\n /********************************* Current Key and Focus *********************************/\n /*****************************************************************************************/\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n // init a function every time to make sure we pass in the latest columns,\n // otherwise the new key might be wrong after resize\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, -columns),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, columns),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, -1),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, 1),\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, [\n 'ArrowUp',\n 'ArrowDown',\n 'ArrowLeft',\n 'ArrowRight'\n ]);\n\n const handleFocus = () => {\n // handle initial focus\n if (\n !isKeyDefined(currentKey) &&\n onCurrentKeyChange &&\n isCurrentTabbableKey(undefined) &&\n rootRef.current\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n } else if (isKeyDefined(currentKey) && rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when cardview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n elem?.scrollIntoView({ block: 'nearest' });\n }\n };\n\n // need to track pointer down element to set currentItem when initial focus happens\n const handlePointerDown = (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 const handleKeyDown = (event: KeyboardEvent) => {\n // for content focusBehavior, when users tab out, we need to focus back to card grid, to ensure\n // the tabbing order works properly, otherwise the focus might get stuck at the current item\n if (validFocusBehavior === 'content' && event.key === 'Tab') {\n rootRef.current?.focus({ preventScroll: true });\n }\n // during keyboard reordering, the current item should be scrolled into view\n const keyHandlers = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'];\n if (\n isReorderEnabled &&\n (event.metaKey || event.ctrlKey) &&\n event.shiftKey &&\n keyHandlers.includes(event.key)\n ) {\n scrollCurrItemIntoView.current = true;\n }\n };\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n // only update aria-activedescendant for screen reader in default focusBehavior\n if (validFocusBehavior === 'card') {\n const cell = elem.closest(`[role=gridcell]`);\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n if (cell && activeDescendant !== cell.id) {\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n scrollCurrItemIntoView.current = true;\n }\n }\n // make sure current item is visible\n if (scrollCurrItemIntoView.current) {\n elem.scrollIntoView({ block: 'nearest' });\n scrollCurrItemIntoView.current = false;\n }\n }\n }\n // listen to data because the current item would re-render when data is updated, i.e. the id\n // of current item would be updated, so the currentKey itself couldn't guarantee the root has\n // the latest aria-activedescendant\n }, [currentKey, data, validFocusBehavior, isReorderEnabled]);\n\n /*****************************************************************************************/\n /*************************************** Selection ***************************************/\n /*****************************************************************************************/\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, getRowKey);\n // for non-virtualized CardView, value should always be an array\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 }\n }\n },\n [data, onSelectionChange, getRowKey]\n );\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 'toggle',\n false,\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) => () =>\n getPrevNextKeyByCount(data, getRowKey, currentKey, isPrev ? -columns : columns),\n (currentKey: K | undefined, isPrev: boolean) => () =>\n getPrevNextKeyByCount(data, getRowKey, currentKey, isPrev ? -1 : 1),\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n elem.scrollIntoView({ block: 'nearest' });\n }\n }\n },\n handleSelectionRangeChange\n );\n\n /*****************************************************************************************/\n /**************************************** Reorder ****************************************/\n /*****************************************************************************************/\n\n const {\n reorderProps,\n reorderItemProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } = useCardViewReorder({\n currentKey,\n onReorder,\n gutterSize,\n columns,\n rootRef,\n scrollCurrItemIntoView\n });\n\n const reorderAcc = isReorderEnabled && (\n <>\n <span id={reorderInstructionsId}>\n <HiddenAccessible>{reorderInstructions}</HiddenAccessible>\n </span>\n </>\n );\n\n /*****************************************************************************************/\n /************************************* Load More *****************************************/\n /*****************************************************************************************/\n\n const handleLoadMore = useCallback(() => {\n // check isFetching to avoid multiple load more at the same time (details in JET-61117)\n if (!isFetching.current) {\n isFetching.current = true;\n onLoadMore();\n }\n }, [isFetching, onLoadMore]);\n\n useEffect(() => {\n isFetching.current = false;\n // listen to data and hasMore because when one of them gets updated, the fetching is done\n }, [data, hasMore]);\n\n /*****************************************************************************************/\n /************************************ Child Component ************************************/\n /*****************************************************************************************/\n\n const getItemContext = useCallback(\n (context: ItemContext<D>) => {\n const key = getRowKey(context.data);\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={onSelectionChange}\n rowKey={key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: context.data,\n metadata: { key: key },\n selector: selectorRenderer,\n isSelected: containsKey(selectedKeys, key)\n };\n },\n [selectionMode, selectedKeys, onSelectionChange, getRowKey]\n );\n\n const childrenComponent = (context: ItemContext<D>) => {\n const cardItemContext = getItemContext(context);\n const isTabbable = isCurrentTabbableKey(cardItemContext.metadata.key);\n const isFocused = currentKey === cardItemContext.metadata.key && !isTabbable;\n const isFocusRingVisible = isFocused && showFocusRing;\n const isSelected = cardItemContext.isSelected;\n const itemRenderFunc = (context: ListItemRendererContext<K, D>) => (\n <MemoizeBaseCardViewItem\n key={cardItemContext.metadata.key}\n context={context}\n isTabbable={isTabbable}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isGridLayout={layout === 'grid'}\n isSelected={isSelected}\n selectionMode={selectionMode}\n focusBehavior={validFocusBehavior}\n {...(focusBehavior === 'content' && { setIsFocusBehaviorValid })}\n {...(isInitialAnimation.current && { initialAnimation })}\n {...(cardItemContext.index === 0 && !cardSize.width && { updateCardSize })}\n {...(isReorderEnabled && { reorderItemProps })}>\n {children}\n </MemoizeBaseCardViewItem>\n );\n return itemRenderFunc(cardItemContext);\n };\n\n // todo: issue track in JET-57952, need a way to show the skeletons in keyboard navigation\n const skeletons =\n data && !data.length && hasMore ? (\n <DefaultLoadMoreSkeletons layout={layout} />\n ) : (\n <LoadMoreSkeletons\n layout={layout}\n colCount={columns}\n totalCount={data?.length || 0}\n cardWidth={cardSize.width}\n cardHeight={cardSize.height}\n />\n );\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n const collectionComponent = (\n <div role=\"row\">\n <BaseCardViewLayout {...layoutProps}>\n <LoadMoreCollection\n data={data}\n hasMore={hasMore}\n onLoadMore={handleLoadMore}\n loadMoreIndicator={skeletons}\n loadMoreThreshold={gutterSizePX + 4} // gap size + padding\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n </BaseCardViewLayout>\n </div>\n );\n\n const initialLoadSkeletons = (\n <BaseCardViewLayout {...layoutProps}>\n <InitialLoadSkeletons layout={layout} />\n </BaseCardViewLayout>\n );\n\n return (\n <div\n {...mergeProps(\n currentKeyProps,\n focusRingProps,\n selectionProps,\n reorderProps,\n {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown,\n onKeyDown: handleKeyDown\n },\n // only enable tabbable mode in default focusBehavior\n { ...(validFocusBehavior === 'card' && tabbableModeProps) }\n )}\n ref={rootRef}\n role=\"grid\"\n class={styles.baseStyle}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}\n aria-rowcount={ariaRowcount}\n aria-colcount={ariaColcount}>\n <ReorderableContext.Provider value={reorderContext}>\n {!data ? (\n initialLoadSkeletons\n ) : data.length || hasMore ? (\n collectionComponent\n ) : (\n <Fragment />\n )}\n </ReorderableContext.Provider>\n {reorderAcc}\n </div>\n );\n }\n);\n\n/**\n * Props specific for the BaseCardView\n */\ntype BaseCardViewProps<K, D> = BaseCardViewImplProps<K, D> & {\n ref?: ForwardedRef<HTMLDivElement>;\n};\n\n/**\n * Cast BaseCardViewImpl to generic type, because BaseCardViewImpl would infer the generic type to specific type,\n * i.e infer <K extends string | number, D> to <string | number, unknown>, which will cause type issues in the parent component\n */\nexport const BaseCardView = BaseCardViewImpl as <K extends string | number, D>(\n props: BaseCardViewProps<K, D>\n) => JSX.Element;\n"],"names":["useRef","multiVariantStyles","styles","useCallback","ITEM_SELECTOR","useReorderableItem","useUser","classNames","_jsxs","_Fragment","_jsx","useResizeObserver","useLayoutEffect","allTabbableElements","warn","useAnimation","useEffect","useMemo","mergeRefs","useId","TabbableModeContext","FocusTrap","memo","compareListItemContext","cardViewVars","Grid","Flex","useState","Fragment","LOADMORE_STYLE_CLASS","Skeleton","useReorderable","dragToScroll","forwardRef","useImperativeHandle","useTabbableModeSet","keyExtractor","useCurrentKey","getPrevNextKeyByCount","useCollectionFocusRing","isKeyDefined","getFirstVisibleKey","findElementByKey","handleSelectionRange","useSelection","HiddenAccessible","Selector","containsKey","getViewportConfig","LoadMoreCollection","mergeProps","ReorderableContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseCardView-55bc5e6f.js","sources":["../../src/PRIVATE_BaseCardView/BaseCardViewReorderableItem.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewItem.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewLayout.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewSkeletonContainer.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewSkeleton.tsx","../../src/PRIVATE_BaseCardView/BaseCardViewUtils.ts","../../src/PRIVATE_BaseCardView/useCardViewReorder.ts","../../src/PRIVATE_BaseCardView/BaseCardView.tsx"],"sourcesContent":["import { useRef, useCallback } from 'preact/hooks';\nimport { useReorderableItem } from '../hooks/PRIVATE_useReorderable';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { ITEM_SELECTOR } from '../utils/PRIVATE_collectionUtils';\nimport { ListItemRendererContext } from '../UNSAFE_Collection';\nimport { ReorderableItemProps } from '../UNSAFE_Collection/Reorderable.types';\nimport { multiVariantStyles, styles } from './themes/BaseCardViewStyles.css';\nimport { GutterSize } from './BaseCardViewUtils';\n\nexport type BaseCardViewReorderableItemProps<K> = ReorderableItemProps<K> & {\n currentKey: K | undefined;\n gutterSize: GutterSize;\n columns: number;\n};\n\n/**\n * The internal component used to render a reorderable item in CardView.\n */\nexport function BaseCardViewReorderableItem<K extends string | number, D>({\n currentKey,\n children,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n gutterSize,\n columns,\n context\n}: BaseCardViewReorderableItemProps<K> & { context: ListItemRendererContext<K, D> }) {\n const itemRef = useRef<HTMLDivElement | null>(null);\n const isOneColumn = columns === 1;\n const isFirstColumn = context.index % columns === 0;\n const isLastColumn = context.index % columns === columns - 1;\n const variantClasses = multiVariantStyles({\n itemOverlayFront: gutterSize\n });\n const variantClassesVertical = multiVariantStyles({\n itemOverlayFrontVertical: gutterSize\n });\n const itemStyles = {\n itemOverlayFront: isOneColumn ? variantClassesVertical : variantClasses,\n itemOverlayRear: isOneColumn ? styles.itemOverlayRearVertical : styles.itemOverlayRear,\n itemDragger: styles.itemDragger\n };\n const getItem = useCallback(() => itemRef?.current?.closest(ITEM_SELECTOR) as HTMLElement, []);\n const setTransferData = useCallback(\n (event: DragEvent) => {\n event.dataTransfer?.setData('text/cardview-items-key', JSON.stringify(context.metadata.key));\n },\n [context.metadata.key]\n );\n const { rootProps, isDragged, overlayZoneBeforeProps, overlayZoneAfterProps } =\n useReorderableItem({\n currentKey,\n isDisabled: onReorder ? false : true,\n draggable: onReorder ? true : false,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n ref: itemRef,\n getItem,\n setTransferData,\n itemStyles,\n itemSelector: ITEM_SELECTOR,\n isVertical: isOneColumn\n });\n\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n\n const overlayZoneBeforeClass = classNames([\n overlayZoneBeforeProps?.class,\n !isOneColumn && !isRtl && isFirstColumn && styles.itemOverlayFrontEdge,\n !isOneColumn && isRtl && isLastColumn && styles.itemOverlayFrontEdge\n ]);\n\n const overlayZoneAfterClass = classNames([\n overlayZoneAfterProps?.class,\n !isOneColumn && !isRtl && isLastColumn && styles.itemOverlayRearEdge,\n !isOneColumn && isRtl && isFirstColumn && styles.itemOverlayRearEdge\n ]);\n\n return (\n <div {...rootProps} draggable={false}>\n {children}\n {!isDragged && dragKey && (\n <>\n <div {...overlayZoneBeforeProps} class={overlayZoneBeforeClass}></div>\n <div {...overlayZoneAfterProps} class={overlayZoneAfterClass}></div>\n </>\n )}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { memo } from 'preact/compat';\nimport {\n useRef,\n useCallback,\n useLayoutEffect,\n useMemo,\n useEffect,\n StateUpdater,\n Dispatch,\n MutableRef\n} from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeRefs } from '../utils/PRIVATE_refUtils';\nimport { warn } from '../utils/UNSAFE_logger';\nimport { allTabbableElements } from '../utils/PRIVATE_tabbableUtils';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useAnimation, UseAnimationConfig } from '../hooks/UNSAFE_useAnimation';\nimport { useResizeObserver } from '../hooks/UNSAFE_useResizeObserver';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { SelectionMode, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { multiVariantStyles, styles } from './themes/BaseCardViewStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\nimport {\n BaseCardViewReorderableItem,\n BaseCardViewReorderableItemProps\n} from './BaseCardViewReorderableItem';\n\n/**\n * Props for the BaseCardViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n isTabbable: boolean;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isSelected: boolean;\n selectionMode: SelectionMode;\n focusBehavior: 'card' | 'content';\n setIsFocusBehaviorValid?: Dispatch<StateUpdater<boolean>>;\n initialAnimation?: 'slideUp' | 'slideDown';\n isGridLayout?: boolean;\n updateCardSize?: (width: number, height: number) => void;\n} & {\n reorderItemProps?: Omit<BaseCardViewReorderableItemProps<K>, 'children'>;\n};\n\n/**\n * The internal component used to render a single item in CardView.\n */\nexport function BaseCardViewItem<K extends string | number, D>({\n children,\n context,\n isTabbable,\n isFocused,\n isFocusRingVisible,\n isSelected,\n selectionMode,\n focusBehavior,\n setIsFocusBehaviorValid,\n initialAnimation,\n isGridLayout,\n updateCardSize,\n reorderItemProps\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const timeoutRef = useRef<ReturnType<typeof setTimeout>>();\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n const isItemFocused = isFocused && isFocusRingVisible;\n const variantClasses = multiVariantStyles({\n itemFocused: focusBehavior === 'card' && isItemFocused ? 'isItemFocused' : 'isNotItemFocused',\n itemInitialOpacity: initialAnimation ? 'isTransparent' : 'isNotTransparent',\n itemInGridLayout: isGridLayout ? 'isInGridLayout' : 'isNotInGridLayout'\n });\n const classes = classNames([styles.itemStyle, variantClasses]);\n\n /*********************************** Tabbable Mode ***********************************/\n\n // don't bubble Arrow Up/Down/Left/Right 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 (\n focusBehavior === 'card' &&\n isTabbable &&\n (event.key === 'ArrowDown' ||\n event.key === 'ArrowUp' ||\n event.key === 'ArrowLeft' ||\n event.key === 'ArrowRight')\n ) {\n event.stopPropagation();\n }\n };\n\n /************************************ Card Size ************************************/\n\n const handleResize = useCallback(\n (entry: ResizeObserverEntry) => {\n updateCardSize?.(entry.contentRect.width, entry.contentRect.height);\n },\n [updateCardSize]\n );\n\n const nullRef = useRef<HTMLDivElement>(null);\n useResizeObserver(updateCardSize ? rootRef : nullRef, handleResize);\n\n /********************************* Focus Behavior *********************************/\n\n useLayoutEffect(() => {\n if (focusBehavior === 'content' && isItemFocused) {\n // rootRef is cardview item, its first child is the focus trap div, so its first grand child\n // is the actual content\n const content = rootRef.current?.firstElementChild?.firstElementChild as HTMLElement;\n const focusable = allTabbableElements(content, true, true);\n if (focusable.length === 0 || focusable.length > 1) {\n warn(\n `${focusable.length} focusable elements are detected in the card. 'content' focusBehavior is intended only for use when the card has single focusable element. Please specify one focusable element in the card or switch the focusBehavior to 'card'.`\n );\n setIsFocusBehaviorValid?.(false);\n } else {\n focusable[0].focus();\n }\n }\n }, [focusBehavior, isItemFocused, setIsFocusBehaviorValid]);\n\n /******************************** Initial Animation ********************************/\n\n // animation for slide up/down\n const { nodeRef: nodeRefSlide, controller: controllerSlide } = useAnimation<\n 'slideUp' | 'slideDown' | 'none',\n HTMLDivElement\n >(initialAnimation || 'none', animationConfigSlide(itemIndex));\n\n // animation for opacity change\n const { nodeRef: nodeRefOpacity, controller: controllerOpacity } = useAnimation<\n 'opacity' | 'none',\n HTMLDivElement\n >((initialAnimation && 'opacity') || 'none', animationConfigOpacity(itemIndex, timeoutRef));\n\n // max cap for animation is 1s\n useEffect(() => {\n if (initialAnimation !== undefined) {\n timeoutRef.current = setTimeout(() => {\n controllerSlide.cancel();\n controllerOpacity.cancel();\n if (rootRef.current) {\n rootRef.current.style.opacity = '1';\n }\n }, 1000);\n }\n }, [controllerOpacity, controllerSlide, initialAnimation]);\n\n // TODO: issue track in JET-57681, we currently have two useAnimation() because the opacity and\n // slide up/down have different durations, and the current API couldn't handle this case, we will\n // update this once the API is updated\n\n /********************************** Child Component **********************************/\n\n const itemRefs = useMemo(() => {\n // NOTE: spot an issue when we click the cards during animation is processing, the cards would not finish\n // the current animations and stay as what it is, e.g. leave itself as half transparent.\n // need to remove nodeRefSlide and nodeRefOpacity to avoid this issue.\n if (initialAnimation === undefined) {\n return mergeRefs(rootRef);\n }\n return mergeRefs(rootRef, nodeRefSlide, nodeRefOpacity);\n }, [rootRef, nodeRefSlide, nodeRefOpacity, initialAnimation]);\n\n const childrenComponent = reorderItemProps ? (\n <BaseCardViewReorderableItem {...reorderItemProps} context={context}>\n {children(context)}\n </BaseCardViewReorderableItem>\n ) : (\n children(context)\n );\n\n return (\n <div\n id={useId()}\n ref={itemRefs}\n class={classes}\n role=\"gridcell\"\n data-oj-key={itemKey}\n onKeyDown={handleKeyDown}\n aria-selected={selectionMode === 'none' ? undefined : isSelected}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {childrenComponent}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n );\n}\n\nconst animationConfigSlide = (\n index: number\n): UseAnimationConfig<'slideUp' | 'slideDown' | 'none', HTMLDivElement> => {\n return {\n animationStates: {\n slideUp: {\n from: {\n translateY: '50px'\n },\n to: {\n translateY: '0px'\n },\n options: {\n duration: 300,\n delay: index * 50,\n easing: [0, 0, 0.2, 1]\n }\n },\n slideDown: {\n from: {\n translateY: '-50px'\n },\n to: {\n translateY: '0'\n },\n options: {\n duration: 300,\n delay: index * 50,\n easing: [0, 0, 0.2, 1]\n }\n }\n },\n isAnimatedOnMount: true\n };\n};\n\nconst animationConfigOpacity = (\n index: number,\n timeoutRef: MutableRef<ReturnType<typeof setTimeout> | undefined>\n): UseAnimationConfig<'opacity' | 'none', HTMLDivElement> => {\n return {\n animationStates: {\n opacity: {\n from: {\n opacity: 0\n },\n to: {\n opacity: 1\n },\n options: {\n duration: 150,\n delay: index * 50,\n easing: 'linear'\n }\n }\n },\n isAnimatedOnMount: true,\n onAnimationEnd: () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n }\n };\n};\n\n/**\n * Compare the equality between two reorderItemProps, especially useful for memoized items\n */\nconst compareReorderItemProps = <K, D>(\n props1: Props<K, D>['reorderItemProps'],\n props2: Props<K, D>['reorderItemProps']\n) => {\n return (\n props1?.['currentKey'] === props2?.['currentKey'] &&\n props1?.['dragKey'] === props2?.['dragKey'] &&\n props1?.['columns'] === props2?.['columns']\n );\n};\n\nexport const MemoizeBaseCardViewItem = memo(\n BaseCardViewItem,\n <K, D>(prev: Props<K, D>, next: Props<K, D>) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isTabbable === next.isTabbable &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.initialAnimation === next.initialAnimation &&\n prev.focusBehavior === next.focusBehavior &&\n compareListItemContext(prev.context, next.context) &&\n compareReorderItemProps(prev.reorderItemProps, next.reorderItemProps)\n );\n }\n return false;\n }\n);\n","import { ComponentChildren } from 'preact';\nimport { Grid } from '../UNSAFE_Grid';\nimport { Flex } from '../UNSAFE_Flex';\nimport { GutterSize } from './BaseCardViewUtils';\nimport { cardViewVars } from './themes/BaseCardViewContract.css';\n\ntype Props = {\n children: ComponentChildren;\n layout: 'grid' | 'flex';\n gutterSize: GutterSize;\n columns: number;\n};\n\nexport function BaseCardViewLayout({ children, layout, gutterSize, columns }: Props) {\n const gap = cardViewVars.gutterSize[gutterSize];\n if (layout === 'grid') {\n return columns < 1 ? null : (\n <Grid gridTemplateColumns={`repeat(${columns}, 1fr)`} gap={gap}>\n {children}\n </Grid>\n );\n } else {\n return (\n <Flex wrap=\"wrap\" gap={gap}>\n {children}\n </Flex>\n );\n }\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren, Fragment } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\n\ntype Props = {\n /**\n * Allows to pass skeletons\n **/\n children: ComponentChildren;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * BaseCardViewSkeletonContainer renders skeletons after 50ms threshold defined in the Redwood spec\n **/\nexport function BaseCardViewSkeletonContainer({ children }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n return isVisible ? <Fragment>{children}</Fragment> : <div class={LOADMORE_STYLE_CLASS}></div>;\n}\n","import { Size } from '../utils/UNSAFE_size';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { BaseCardViewSkeletonContainer } from './BaseCardViewSkeletonContainer';\n\n// these are arbitrary values by now, might update them with definite values in the future\nconst DEFAULT_SKELETON_NUMBER = 25;\nconst DEFAULT_SKELETON_WIDTH = '60x';\nconst DEFAULT_SKELETON_HEIGHT = '70x';\n\ntype SkeletonProps = {\n layout: 'flex' | 'grid';\n colCount: number;\n totalCount: number;\n cardWidth?: number;\n cardHeight?: number;\n};\n\n/**\n * A function that returns an array of skeletons based on count\n * @param count the number of skeletons\n */\nconst getSkeletonsByCount = (\n layout: 'flex' | 'grid',\n count = DEFAULT_SKELETON_NUMBER,\n width?: Size,\n height?: Size,\n isUnique = true\n) => {\n const sw = width || (layout === 'flex' ? DEFAULT_SKELETON_WIDTH : '100%');\n const sh = height || DEFAULT_SKELETON_HEIGHT;\n\n return [...Array(count)].map((_v, i) => (\n // create unique keys if needed, otherwise the animations won't start at the same time, because the old copy of skeletons\n // could be reused, even the key is specified by useId(), combine count with time to make the key unique.\n <Skeleton key={isUnique && `${i}${new Date().getTime()}`} width={sw} height={sh} />\n ));\n};\n\n/**\n * When there is no data (i.e. data is an empty array or null, and hasMore is false), we will show 25 card skeletons with default size\n */\nexport const InitialLoadSkeletons = (props: { layout: SkeletonProps['layout'] }) => (\n <BaseCardViewSkeletonContainer>{getSkeletonsByCount(props.layout)}</BaseCardViewSkeletonContainer>\n);\n\n/**\n * When we are fetching the initial data (i.e. data is an empty array, and hasMore is true), we will show 25 card skeletons with default size,\n * because we don't know the card dimension at this time. Since there is more data to load, we will specify LOADMORE_STYLE_CLASS on skeletons\n */\nexport const DefaultLoadMoreSkeletons = (props: { layout: SkeletonProps['layout'] }) => {\n const firstSkeleton = (\n <div class={LOADMORE_STYLE_CLASS}>{getSkeletonsByCount(props.layout, 1)}</div>\n );\n const otherSkeletons = getSkeletonsByCount(props.layout, DEFAULT_SKELETON_NUMBER - 1);\n const skeletons = [firstSkeleton, ...otherSkeletons];\n return <BaseCardViewSkeletonContainer>{skeletons}</BaseCardViewSkeletonContainer>;\n};\n\n/**\n * During the render that we measure and update card dimension, we will hide skeletons temporarily\n * to avoid showing incorrect skeletons\n */\nconst InvisibleSkeletons = () => {\n return <div class={LOADMORE_STYLE_CLASS}></div>;\n};\n\nexport const LoadMoreSkeletons = (props: SkeletonProps) => {\n if (props.colCount < 1 || props.cardWidth == null || props.cardHeight == null) {\n // if column count / card width / card height are invalid, we will show the invisible skeletons\n return <InvisibleSkeletons />;\n } else {\n // after initial renders, show skeletons with correct dimension and count\n const skeletons = [];\n\n const firstRowColCount = props.colCount - (props.totalCount % props.colCount);\n const isOnlyOneRow = firstRowColCount === props.colCount;\n\n const cardWidth = `calc(${props.cardWidth}px)` as Size;\n const cardHeight = props.cardHeight\n ? (`calc(${props.cardHeight}px)` as Size)\n : DEFAULT_SKELETON_HEIGHT;\n\n const width: Size = props.layout === 'flex' ? cardWidth : '100%';\n const height: Size = props.layout === 'flex' || isOnlyOneRow ? cardHeight : '100%';\n\n // first row\n const firstSkeleton = (\n <div class={LOADMORE_STYLE_CLASS}>{getSkeletonsByCount(props.layout, 1, width, height)}</div>\n );\n skeletons.push(firstSkeleton);\n skeletons.push(getSkeletonsByCount(props.layout, firstRowColCount - 1, width, height));\n\n // second row\n if (!isOnlyOneRow) {\n skeletons.push(getSkeletonsByCount(props.layout, props.colCount, width, cardHeight));\n }\n\n return <BaseCardViewSkeletonContainer>{skeletons}</BaseCardViewSkeletonContainer>;\n }\n};\n","import { Size } from '../utils/UNSAFE_size';\n\nexport const emptyKeys = { all: false, keys: new Set() };\nexport type GutterSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * A mapping of gutterSize to concrete size in pixels\n */\nexport const gutterSizeToPX: Record<string, number> = {\n xs: 12,\n sm: 16,\n md: 24,\n lg: 48,\n xl: 64\n};\n\nexport const getGapSize = (gutterSize?: GutterSize) => {\n const px = gutterSizeToPX[gutterSize || 'sm'];\n const gap = `${px / 4}x` as Size;\n return gap;\n};\n\nexport const getColCount = (gapWidth: number, cardWidth?: number, rootWidth?: number) => {\n if (!cardWidth || !rootWidth) return 0;\n\n // if we have n cards, we have n-1 gaps\n const colCount = Math.floor((rootWidth + gapWidth) / (gapWidth + cardWidth));\n return Math.max(1, colCount);\n};\n","import { RefObject } from 'preact';\nimport { useState } from 'preact/hooks';\nimport { ITEM_SELECTOR, dragToScroll } from '../utils/PRIVATE_collectionUtils';\nimport { useReorderable } from '../hooks/PRIVATE_useReorderable';\nimport { Props } from '../UNSAFE_CardFlexView';\nimport { GutterSize } from './BaseCardViewUtils';\n\ntype useCardViewReorderProps<K, D> = Pick<Props<K, D>, 'currentKey' | 'onReorder'> & {\n gutterSize: GutterSize;\n columns: number;\n rootRef: RefObject<HTMLDivElement>;\n scrollCurrItemIntoView: RefObject<boolean>;\n};\n\nexport const useCardViewReorder = <K extends string | number, D>({\n currentKey,\n onReorder,\n gutterSize,\n columns,\n rootRef,\n scrollCurrItemIntoView\n}: useCardViewReorderProps<K, D>) => {\n const isReorderEnabled = onReorder != undefined;\n\n const [dragKey, setDragKey] = useState<K | undefined>(undefined);\n const { reorderProps, reorderContext, reorderInstructionsId, reorderInstructions } =\n useReorderable({\n onReorder,\n rootRef,\n itemSelector: ITEM_SELECTOR,\n isDisabled: !isReorderEnabled,\n columns\n });\n\n if (!isReorderEnabled) {\n return {\n reorderProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } as const;\n }\n\n const handleDragOver = (event: DragEvent) => {\n dragToScroll(event, dragKey !== undefined, rootRef.current);\n // during mouse reordering, the drag item might not be the same as current item,\n // so we should disallow current item scroll into view\n scrollCurrItemIntoView.current = false;\n };\n\n const reorderEventProps = { ...reorderProps, onDragOver: handleDragOver };\n\n const reorderItemProps = {\n currentKey,\n dragKey,\n setDragKey,\n onReorder,\n rootRef,\n gutterSize,\n columns\n };\n\n return {\n reorderProps: reorderEventProps,\n reorderItemProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } as const;\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 { Fragment } from 'preact';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\nimport { useRef, useCallback, useEffect, useState, useImperativeHandle } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport {\n getPrevNextKeyByCount,\n getFirstVisibleKey,\n getViewportConfig,\n findElementByKey,\n keyExtractor,\n handleSelectionRange,\n ITEM_SELECTOR\n} from '../utils/PRIVATE_collectionUtils';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { useSelection, SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { ReorderableContext } from '../hooks/PRIVATE_useReorderable';\nimport { ItemContext, ListItemRendererContext, SelectionDetail } from '../UNSAFE_Collection';\nimport { Selector } from '../UNSAFE_Selector';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { LoadMoreCollection } from '../PRIVATE_LoadMoreCollection';\nimport { styles } from './themes/BaseCardViewStyles.css';\nimport { Props } from '../UNSAFE_CardFlexView';\nimport { MemoizeBaseCardViewItem } from './BaseCardViewItem';\nimport { BaseCardViewLayout } from './BaseCardViewLayout';\nimport {\n DefaultLoadMoreSkeletons,\n LoadMoreSkeletons,\n InitialLoadSkeletons\n} from './BaseCardViewSkeleton';\nimport { gutterSizeToPX, emptyKeys } from './BaseCardViewUtils';\nimport { useCardViewReorder } from './useCardViewReorder';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/BaseCardViewBaseTheme.css';\n\n/**\n * Props specific for the GradGridBaseImpl Component\n */\ntype BaseCardViewImplProps<K, D> = Props<K, D> & {\n /**\n * Provide the number of columns to render;\n */\n columns: number;\n /**\n * The layout of the BaseCardView. When we use CardGridView as parent, we will use grid layout;\n * when we use CardFlexView as parent, we will use flex layout.\n */\n layout: 'grid' | 'flex';\n /**\n * Card dimension, including width and height\n */\n cardSize: { width?: number; height?: number };\n /**\n * A callback function to update card dimension, including width and height\n */\n updateCardSize: (width: number, height: number) => void;\n};\n\nconst BaseCardViewImpl = forwardRef(\n <K extends string | number, D>(\n {\n children,\n data,\n onLoadMore = () => {},\n hasMore = false,\n getRowKey,\n currentKey,\n onCurrentKeyChange,\n selectionMode = 'none',\n selectedKeys = emptyKeys as Keys<K>,\n onSelectionChange,\n onReorder,\n viewportConfig,\n focusBehavior = 'card',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n initialAnimation = 'slideUp',\n gutterSize = 'sm',\n columns,\n layout,\n cardSize,\n updateCardSize\n }: BaseCardViewImplProps<K, D>,\n ref?: ForwardedRef<HTMLDivElement>\n ) => {\n const rootRef = useRef<HTMLDivElement>(null);\n useImperativeHandle(ref!, () => rootRef.current!, [rootRef]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n // tracking pending current key in pointer down event\n const pendingCurrentKey = useRef<K>();\n\n const gutterSizePX = gutterSizeToPX[gutterSize];\n const layoutProps = { layout, columns, gutterSize };\n const isInitialAnimation = useRef(true);\n useEffect(() => {\n if (cardSize.height != undefined && cardSize.width != undefined) {\n isInitialAnimation.current = false;\n }\n }, [cardSize]);\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowcount = hasMore || !data || columns < 1 ? -1 : Math.ceil(data?.length / columns);\n const ariaColcount = columns < 1 ? -1 : columns;\n\n const [isFocusBehaviorValid, setIsFocusBehaviorValid] = useState(true);\n const validFocusBehavior = isFocusBehaviorValid ? focusBehavior : 'card';\n\n // ensure current item is scrolled into view when current item is updated\n // during reordering, enable that during keyboard reordering, disable that during mouse reordering\n const scrollCurrItemIntoView = useRef(false);\n const isReorderEnabled = onReorder != undefined;\n\n const isFetching = useRef(false);\n\n /*****************************************************************************************/\n /************************************* Tabbable Mode *************************************/\n /*****************************************************************************************/\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n currentKey,\n onCurrentKeyChange\n );\n\n /*****************************************************************************************/\n /********************************* Current Key and Focus *********************************/\n /*****************************************************************************************/\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n // init a function every time to make sure we pass in the latest columns,\n // otherwise the new key might be wrong after resize\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, -columns),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, columns),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, -1),\n () => getPrevNextKeyByCount(data, getRowKey, currentKey, 1),\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, [\n 'ArrowUp',\n 'ArrowDown',\n 'ArrowLeft',\n 'ArrowRight'\n ]);\n\n const handleFocus = () => {\n // handle initial focus\n if (\n !isKeyDefined(currentKey) &&\n onCurrentKeyChange &&\n isCurrentTabbableKey(undefined) &&\n rootRef.current\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n } else if (isKeyDefined(currentKey) && rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when cardview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n elem?.scrollIntoView({ block: 'nearest' });\n }\n };\n\n // need to track pointer down element to set currentItem when initial focus happens\n const handlePointerDown = (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 const handleKeyDown = (event: KeyboardEvent) => {\n // for content focusBehavior, when users tab out, we need to focus back to card grid, to ensure\n // the tabbing order works properly, otherwise the focus might get stuck at the current item\n if (validFocusBehavior === 'content' && event.key === 'Tab') {\n rootRef.current?.focus({ preventScroll: true });\n }\n // during keyboard reordering, the current item should be scrolled into view\n const keyHandlers = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'];\n if (\n isReorderEnabled &&\n (event.metaKey || event.ctrlKey) &&\n event.shiftKey &&\n keyHandlers.includes(event.key)\n ) {\n scrollCurrItemIntoView.current = true;\n }\n };\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n // only update aria-activedescendant for screen reader in default focusBehavior\n if (validFocusBehavior === 'card') {\n const cell = elem.closest(`[role=gridcell]`);\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n if (cell && activeDescendant !== cell.id) {\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n scrollCurrItemIntoView.current = true;\n }\n }\n // make sure current item is visible\n if (scrollCurrItemIntoView.current) {\n elem.scrollIntoView({ block: 'nearest' });\n scrollCurrItemIntoView.current = false;\n }\n }\n }\n // listen to data because the current item would re-render when data is updated, i.e. the id\n // of current item would be updated, so the currentKey itself couldn't guarantee the root has\n // the latest aria-activedescendant\n }, [currentKey, data, validFocusBehavior, isReorderEnabled]);\n\n /*****************************************************************************************/\n /*************************************** Selection ***************************************/\n /*****************************************************************************************/\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, getRowKey);\n // for non-virtualized CardView, value should always be an array\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 }\n }\n },\n [data, onSelectionChange, getRowKey]\n );\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 'toggle',\n false,\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) => () =>\n getPrevNextKeyByCount(data, getRowKey, currentKey, isPrev ? -columns : columns),\n (currentKey: K | undefined, isPrev: boolean) => () =>\n getPrevNextKeyByCount(data, getRowKey, currentKey, isPrev ? -1 : 1),\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n elem.scrollIntoView({ block: 'nearest' });\n }\n }\n },\n handleSelectionRangeChange\n );\n\n /*****************************************************************************************/\n /**************************************** Reorder ****************************************/\n /*****************************************************************************************/\n\n const {\n reorderProps,\n reorderItemProps,\n reorderContext,\n reorderInstructionsId,\n reorderInstructions\n } = useCardViewReorder({\n currentKey,\n onReorder,\n gutterSize,\n columns,\n rootRef,\n scrollCurrItemIntoView\n });\n\n const reorderAcc = isReorderEnabled && (\n <>\n <span id={reorderInstructionsId}>\n <HiddenAccessible>{reorderInstructions}</HiddenAccessible>\n </span>\n </>\n );\n\n /*****************************************************************************************/\n /************************************* Load More *****************************************/\n /*****************************************************************************************/\n\n const handleLoadMore = useCallback(() => {\n // check isFetching to avoid multiple load more at the same time (details in JET-61117)\n if (!isFetching.current) {\n isFetching.current = true;\n onLoadMore();\n }\n }, [isFetching, onLoadMore]);\n\n useEffect(() => {\n isFetching.current = false;\n // listen to data and hasMore because when one of them gets updated, the fetching is done\n }, [data, hasMore]);\n\n /*****************************************************************************************/\n /************************************ Child Component ************************************/\n /*****************************************************************************************/\n\n const getItemContext = useCallback(\n (context: ItemContext<D>) => {\n const key = getRowKey(context.data);\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={onSelectionChange}\n rowKey={key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: context.data,\n metadata: { key: key },\n selector: selectorRenderer,\n isSelected: containsKey(selectedKeys, key)\n };\n },\n [selectionMode, selectedKeys, onSelectionChange, getRowKey]\n );\n\n const childrenComponent = (context: ItemContext<D>) => {\n const cardItemContext = getItemContext(context);\n const isTabbable = isCurrentTabbableKey(cardItemContext.metadata.key);\n const isFocused = currentKey === cardItemContext.metadata.key && !isTabbable;\n const isFocusRingVisible = isFocused && showFocusRing;\n const isSelected = cardItemContext.isSelected;\n const itemRenderFunc = (context: ListItemRendererContext<K, D>) => (\n <MemoizeBaseCardViewItem\n key={cardItemContext.metadata.key}\n context={context}\n isTabbable={isTabbable}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isGridLayout={layout === 'grid'}\n isSelected={isSelected}\n selectionMode={selectionMode}\n focusBehavior={validFocusBehavior}\n {...(focusBehavior === 'content' && { setIsFocusBehaviorValid })}\n {...(isInitialAnimation.current && { initialAnimation })}\n {...(cardItemContext.index === 0 && !cardSize.width && { updateCardSize })}\n {...(isReorderEnabled && { reorderItemProps })}>\n {children}\n </MemoizeBaseCardViewItem>\n );\n return itemRenderFunc(cardItemContext);\n };\n\n // todo: issue track in JET-57952, need a way to show the skeletons in keyboard navigation\n const skeletons =\n data && !data.length && hasMore ? (\n <DefaultLoadMoreSkeletons layout={layout} />\n ) : (\n <LoadMoreSkeletons\n layout={layout}\n colCount={columns}\n totalCount={data?.length || 0}\n cardWidth={cardSize.width}\n cardHeight={cardSize.height}\n />\n );\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n const collectionComponent = (\n <div role=\"row\">\n <BaseCardViewLayout {...layoutProps}>\n <LoadMoreCollection\n data={data}\n hasMore={hasMore}\n onLoadMore={handleLoadMore}\n loadMoreIndicator={skeletons}\n loadMoreThreshold={gutterSizePX + 4} // gap size + padding\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n </BaseCardViewLayout>\n </div>\n );\n\n const initialLoadSkeletons = (\n <BaseCardViewLayout {...layoutProps}>\n <InitialLoadSkeletons layout={layout} />\n </BaseCardViewLayout>\n );\n\n return (\n <div\n {...mergeProps(\n currentKeyProps,\n focusRingProps,\n selectionProps,\n reorderProps,\n {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown,\n onKeyDown: handleKeyDown\n },\n // only enable tabbable mode in default focusBehavior\n { ...(validFocusBehavior === 'card' && tabbableModeProps) }\n )}\n ref={rootRef}\n role=\"grid\"\n class={styles.baseStyle}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}\n aria-rowcount={ariaRowcount}\n aria-colcount={ariaColcount}>\n <ReorderableContext.Provider value={reorderContext}>\n {!data ? (\n initialLoadSkeletons\n ) : data.length || hasMore ? (\n collectionComponent\n ) : (\n <Fragment />\n )}\n </ReorderableContext.Provider>\n {reorderAcc}\n </div>\n );\n }\n);\n\n/**\n * Props specific for the BaseCardView\n */\ntype BaseCardViewProps<K, D> = BaseCardViewImplProps<K, D> & {\n ref?: ForwardedRef<HTMLDivElement>;\n};\n\n/**\n * Cast BaseCardViewImpl to generic type, because BaseCardViewImpl would infer the generic type to specific type,\n * i.e infer <K extends string | number, D> to <string | number, unknown>, which will cause type issues in the parent component\n */\nexport const BaseCardView = BaseCardViewImpl as <K extends string | number, D>(\n props: BaseCardViewProps<K, D>\n) => JSX.Element;\n"],"names":["useRef","multiVariantStyles","styles","useCallback","ITEM_SELECTOR","useReorderableItem","useUser","classNames","_jsxs","_Fragment","_jsx","useResizeObserver","useLayoutEffect","allTabbableElements","warn","useAnimation","useEffect","useMemo","mergeRefs","useId","TabbableModeContext","FocusTrap","memo","compareListItemContext","cardViewVars","Grid","Flex","useState","Fragment","LOADMORE_STYLE_CLASS","Skeleton","useReorderable","dragToScroll","forwardRef","useImperativeHandle","useTabbableModeSet","keyExtractor","useCurrentKey","getPrevNextKeyByCount","useCollectionFocusRing","isKeyDefined","getFirstVisibleKey","findElementByKey","handleSelectionRange","useSelection","HiddenAccessible","Selector","containsKey","getViewportConfig","LoadMoreCollection","mergeProps","ReorderableContext"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
var jsxRuntime = require('preact/jsx-runtime');
|
|
5
5
|
var hooks = require('preact/hooks');
|
|
6
6
|
var useResizeObserver = require('./useResizeObserver-819b1236.js');
|
|
7
|
-
var BaseCardView = require('./BaseCardView-
|
|
7
|
+
var BaseCardView = require('./BaseCardView-55bc5e6f.js');
|
|
8
8
|
|
|
9
9
|
function CardFlexView(props) {
|
|
10
10
|
const rootRef = hooks.useRef(null);
|
|
@@ -26,4 +26,4 @@ function CardFlexView(props) {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
exports.CardFlexView = CardFlexView;
|
|
29
|
-
//# sourceMappingURL=CardFlexView-
|
|
29
|
+
//# sourceMappingURL=CardFlexView-ae79f8f1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardFlexView-
|
|
1
|
+
{"version":3,"file":"CardFlexView-ae79f8f1.js","sources":["../../src/UNSAFE_CardFlexView/CardFlexView.tsx"],"sourcesContent":["import { useCallback, useRef, useState } from 'preact/hooks';\nimport { useResizeObserver } from '../hooks/UNSAFE_useResizeObserver';\nimport { BaseCardView, gutterSizeToPX, getColCount } from '../PRIVATE_BaseCardView';\nimport { BaseCardViewPublicProps as Props } from './BaseCardView.types';\n\ntype CardFlexViewProps<K extends string | number, D> = Props<K, D>;\ntype SizeInfo = {\n cardWidth?: number;\n cardHeight?: number;\n containerWidth?: number;\n};\n\nexport function CardFlexView<K extends string | number, D>(props: CardFlexViewProps<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n const [size, setSize] = useState<SizeInfo>({});\n const updateCardSize = (cardWidth: number, cardHeight: number) => {\n setSize((size) => ({ ...size, cardWidth, cardHeight }));\n };\n\n const handleResize = useCallback(\n (entry: ResizeObserverEntry) => {\n const containerWidth = entry.contentRect.width;\n if (size.containerWidth !== containerWidth) {\n setSize((size) => ({ ...size, containerWidth }));\n }\n },\n [size]\n );\n useResizeObserver(rootRef, handleResize);\n\n const gutterSizePX = gutterSizeToPX[props.gutterSize || 'sm'];\n const columns = getColCount(gutterSizePX, size.cardWidth, size.containerWidth);\n const cardSize = { width: size.cardWidth, height: size.cardHeight };\n\n return (\n <BaseCardView\n {...props}\n ref={rootRef}\n layout=\"flex\"\n columns={columns}\n cardSize={cardSize}\n updateCardSize={updateCardSize}\n />\n );\n}\n"],"names":["useRef","useState","useCallback","useResizeObserver","gutterSizeToPX","getColCount","_jsx","BaseCardView"],"mappings":";;;;;;;;AAYM,SAAU,YAAY,CAA+B,KAA8B,EAAA;AACvF,IAAA,MAAM,OAAO,GAAGA,YAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAGC,cAAQ,CAAW,EAAE,CAAC,CAAC;AAC/C,IAAA,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,UAAkB,KAAI;AAC/D,QAAA,OAAO,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;AAC1D,KAAC,CAAC;AAEF,IAAA,MAAM,YAAY,GAAGC,iBAAW,CAC9B,CAAC,KAA0B,KAAI;AAC7B,QAAA,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;AAC/C,QAAA,IAAI,IAAI,CAAC,cAAc,KAAK,cAAc,EAAE;AAC1C,YAAA,OAAO,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;SAClD;AACH,KAAC,EACD,CAAC,IAAI,CAAC,CACP,CAAC;AACF,IAAAC,mCAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAEzC,MAAM,YAAY,GAAGC,2BAAc,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;AAC9D,IAAA,MAAM,OAAO,GAAGC,wBAAW,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;AAC/E,IAAA,MAAM,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;IAEpE,QACEC,cAAC,CAAAC,yBAAY,EACP,EAAA,GAAA,KAAK,EACT,GAAG,EAAE,OAAO,EACZ,MAAM,EAAC,MAAM,EACb,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,CAAA,EACF;AACJ;;;;"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
var jsxRuntime = require('preact/jsx-runtime');
|
|
5
5
|
var hooks = require('preact/hooks');
|
|
6
|
-
var BaseCardView = require('./BaseCardView-
|
|
6
|
+
var BaseCardView = require('./BaseCardView-55bc5e6f.js');
|
|
7
7
|
|
|
8
8
|
function CardGridView(props) {
|
|
9
9
|
const [cardSize, setCardSize] = hooks.useState({});
|
|
@@ -14,4 +14,4 @@ function CardGridView(props) {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
exports.CardGridView = CardGridView;
|
|
17
|
-
//# sourceMappingURL=CardGridView-
|
|
17
|
+
//# sourceMappingURL=CardGridView-4936ffd6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardGridView-
|
|
1
|
+
{"version":3,"file":"CardGridView-4936ffd6.js","sources":["../../src/UNSAFE_CardGridView/CardGridView.tsx"],"sourcesContent":["import { useState } from 'preact/hooks';\nimport { BaseCardView } from '../PRIVATE_BaseCardView';\nimport { Props } from '../UNSAFE_CardFlexView';\n\ntype CardGridProps<K extends string | number, D> = Props<K, D> & {\n /**\n * Provide the number of columns to render. The number of columns is required for CardGridView component.\n * If the number of columns is not provided, please use CardFlexView component.\n */\n columns: number;\n};\n\nexport function CardGridView<K extends string | number, D>(props: CardGridProps<K, D>) {\n const [cardSize, setCardSize] = useState<{ width?: number; height?: number }>({});\n const updateCardSize = (width: number, height: number) => {\n setCardSize({ width, height });\n };\n\n return (\n <BaseCardView {...props} layout=\"grid\" cardSize={cardSize} updateCardSize={updateCardSize} />\n );\n}\n"],"names":["useState","_jsx","BaseCardView"],"mappings":";;;;;;;AAYM,SAAU,YAAY,CAA+B,KAA0B,EAAA;IACnF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAGA,cAAQ,CAAsC,EAAE,CAAC,CAAC;AAClF,IAAA,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,MAAc,KAAI;AACvD,QAAA,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;AACjC,KAAC,CAAC;AAEF,IAAA,QACEC,cAAC,CAAAC,yBAAY,OAAK,KAAK,EAAE,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAA,CAAI,EAC7F;AACJ;;;;"}
|
|
@@ -14,7 +14,6 @@ var useChartViewport = require('./useChartViewport-8ffd20a9.js');
|
|
|
14
14
|
var layoutUtils = require('./layoutUtils-9999fdd8.js');
|
|
15
15
|
var useChartNav = require('./useChartNav-e850e19e.js');
|
|
16
16
|
var mergeProps = require('./mergeProps-e3da7237.js');
|
|
17
|
-
var ScrollBar = require('./ScrollBar-dc5cf205.js');
|
|
18
17
|
var useSelectDrill = require('./useSelectDrill-fef4f69b.js');
|
|
19
18
|
var useUser = require('./useUser-8aaad5a7.js');
|
|
20
19
|
var useTestId = require('./useTestId-e267a39d.js');
|
|
@@ -38,6 +37,7 @@ require('./tooltipUtils-7857f698.js');
|
|
|
38
37
|
var useChartMarquee = require('./useChartMarquee-0900e36a.js');
|
|
39
38
|
var useVisTouchResponse = require('./useVisTouchResponse-fb9c4e8f.js');
|
|
40
39
|
var stringUtils = require('./stringUtils-4e4a6b2b.js');
|
|
40
|
+
var ScrollBar = require('./ScrollBar-dc5cf205.js');
|
|
41
41
|
|
|
42
42
|
function getNextGroup(info, viewportEndIndex, isGroupNavigable) {
|
|
43
43
|
const groupIndex = info.groupIndex + 1;
|
|
@@ -337,4 +337,4 @@ function Chart({ width, height, ...props }) {
|
|
|
337
337
|
}
|
|
338
338
|
|
|
339
339
|
exports.Chart = Chart;
|
|
340
|
-
//# sourceMappingURL=Chart-
|
|
340
|
+
//# sourceMappingURL=Chart-4eee682b.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart-42a979a7.js","sources":["../../src/PRIVATE_Axis/utils/axisNavUtils.ts","../../src/PRIVATE_VisSVGText/useTextTruncation.ts","../../src/PRIVATE_Chart/ChartWithDimensions.tsx","../../src/PRIVATE_Chart/Chart.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 */\nimport { Group, ChartGroupInfo } from '../../utils/UNSAFE_visTypes/chart';\ntype isGroupNavigableType = (groupIndex: number) => boolean;\n\nexport function getNextGroup(\n info: ChartGroupInfo,\n viewportEndIndex: number,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex + 1;\n if (groupIndex >= viewportEndIndex) {\n return;\n }\n\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getNextGroup({ groupIndex }, viewportEndIndex, isGroupNavigable);\n}\n\nexport function getPreviousGroup(\n info: ChartGroupInfo,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex - 1;\n if (groupIndex < 0) {\n return;\n }\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getPreviousGroup({ groupIndex }, isGroupNavigable);\n}\n\nexport function getGroupNavUtil(\n groups: Group[],\n renderedGroups: number[],\n xIndexExtent: { startIndex: number; endIndex: number },\n drilling: 'on' | 'off' | 'groupsOnly',\n isRtl: boolean\n) {\n const isGroupNavigable = (groupIndex: number) => {\n const groupsDrilling = groups[renderedGroups[groupIndex]].drilling;\n return (drilling === 'on' || drilling === 'groupsOnly') && groupsDrilling != 'off';\n };\n\n const getDefaultNavGroup = (info: ChartGroupInfo) => {\n if (xIndexExtent.startIndex > renderedGroups[info.groupIndex]) {\n info.groupIndex = 0;\n return info;\n } else if (xIndexExtent.endIndex < renderedGroups[info.groupIndex]) {\n info.groupIndex = renderedGroups.length - 1;\n return info;\n }\n return;\n };\n\n const getNextNavGroup = (info: ChartGroupInfo, arrow: 'ArrowRight' | 'ArrowLeft') => {\n let nextGroup = getDefaultNavGroup(info);\n\n if (nextGroup) return nextGroup;\n\n if (arrow === 'ArrowRight') {\n nextGroup = isRtl\n ? getPreviousGroup(info, isGroupNavigable)\n : getNextGroup(info, renderedGroups.length, isGroupNavigable);\n } else {\n nextGroup = isRtl\n ? getNextGroup(info, renderedGroups.length, isGroupNavigable)\n : getPreviousGroup(info, isGroupNavigable);\n }\n return nextGroup || info;\n };\n\n return { getDefaultNavGroup, getNextNavGroup };\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 { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { calculateOffset } from '#hooks/PRIVATE_useDatatip';\nimport { useTooltip } from '#hooks/UNSAFE_useTooltip';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useRef, useState } from 'preact/hooks';\n\ntype Props = {\n getTextAndBounds: (target: EventTarget | null) =>\n | {\n text?: string;\n bounds?: Dimension;\n }\n | undefined;\n isRtl: boolean;\n width: number;\n};\n\nexport function useTextTruncation({ getTextAndBounds, width, isRtl }: Props) {\n const [text, setText] = useState<string>();\n const bounds = useRef<Dimension>();\n\n const { tooltipContent, tooltipProps } = useTooltip({\n text,\n position: 'top-start',\n offset: calculateOffset(isRtl, width, bounds.current)\n });\n\n const onPointerMove = (event: Event) => {\n const textAndBounds = getTextAndBounds(event.target);\n\n if (textAndBounds) {\n bounds.current = textAndBounds.bounds;\n setText(textAndBounds.text);\n } else {\n setText(undefined);\n }\n };\n\n return {\n tooltipContent,\n tooltipProps: mergeProps({ onPointerMove }, tooltipProps)\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 { useTextDimensions } from '../hooks/PRIVATE_useTextDimensions';\nimport { useCssVars } from '../hooks/PRIVATE_useCssVars/useCssVars';\nimport { styles } from './themes/ChartStyles.css';\nimport { useRef } from 'preact/hooks';\nimport { PlotArea } from '../PRIVATE_PlotArea';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Axis } from '../PRIVATE_Axis/Axis';\nimport { useChartViewport } from '../hooks/PRIVATE_useChartViewport';\nimport {\n getAvailSpace,\n getLayoutInfo,\n getScrollBarSpace,\n updateScrollBarSpace\n} from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { useChartNav } from '../hooks/PRIVATE_useChartNav/useChartNav';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { getAxesPosition } from '../PRIVATE_Axis/utils/axisUtils';\nimport { ScrollBar } from '../PRIVATE_ChartScrollBar';\nimport { useSelectDrill } from '../hooks/PRIVATE_useChartEvents/useSelectDrill';\nimport { useChartDatatipAndCursor } from '../hooks/PRIVATE_useChartEvents/useDatatipAndCursor';\nimport { getGroupNavUtil } from '../PRIVATE_Axis/utils/axisNavUtils';\nimport { ChartItemData, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { Gridlines } from '../PRIVATE_PlotArea/Gridlines';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { getChartVars } from '../utils/PRIVATE_chartUtils';\nimport { useChartContextMenu } from '#hooks/PRIVATE_useChartContextMenu';\nimport { getElementData } from '#utils/UNSAFE_visUtils';\nimport { useTextTruncation } from '#PRIVATE_VisSVGText/useTextTruncation';\nimport { useChartMarquee } from '#hooks/PRIVATE_useChartMarquee';\nimport { ChartProps } from './Chart';\nimport type { gestureTypes } from '#hooks/PRIVATE_useVisContextMenu';\nimport { useVisTouchResponse } from '#hooks/PRIVATE_useVisTouchResponse';\nimport { merge } from '#utils/UNSAFE_stringUtils';\n\ntype ChartWithDimensionsProps<K, D> = Omit<ChartProps<K, D>, 'width' | 'height'> & {\n width: number;\n height: number;\n};\n\nconst chartVars = getChartVars();\n\nexport function ChartWithDimensions<K extends string | number, D extends ChartItemData<K>>({\n width,\n height,\n selectedIds,\n hiddenIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n xAxis,\n yAxis,\n plotArea,\n dragMode = 'user',\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n dataCursorPosition,\n onSelectionChange,\n isDataCursorEnabled,\n dataCursorStyle,\n onViewportChange,\n onDataCursorPositionChange,\n onItemDrill,\n onGroupDrill,\n onItemHover,\n onItemFocus,\n datatip,\n zoomAndScroll = 'off',\n offset,\n getNavUtil,\n getDataItemPos,\n getGapRatio,\n valueFormats,\n findNearest,\n getMarkerInfo,\n isRtl,\n children,\n testId,\n renderGridLinesInFront,\n contextMenuConfig,\n ...props\n}: ChartWithDimensionsProps<K, D>) {\n const testIdProps = useTestId(testId);\n const rootRef = useRef<HTMLDivElement>(null);\n const isHoriz = orientation === 'horizontal';\n const { xAxisPosition, yAxisPosition } = getAxesPosition(yAxis, isHoriz, isRtl);\n const { resolvedVars, cssContent } = useCssVars(chartVars);\n const colors = Array.from(Array(12)).map((_, index) => {\n return resolvedVars[`color${index + 1}`];\n });\n const { textMeasureContent, getTextDimensions } = useTextDimensions();\n let availSpace = getAvailSpace(width, height);\n const updatedSpace = getScrollBarSpace(availSpace, zoomAndScroll, xAxisPosition);\n let scrollDims = updatedSpace.scrollDims;\n availSpace = updatedSpace.availSpace;\n const hiddenSet = new Set(hiddenIds);\n const { locale } = useUser();\n const {\n xProps,\n xScale,\n xViewportExtent,\n xAxisExtent,\n xIndexExtent,\n yViewportExtent,\n yAxisExtent,\n groupWidth,\n yProps,\n yScale,\n yMaxDim,\n yMajorTicks,\n yMinorTicks,\n plotAreaSpace,\n idToDataMap,\n formatAxisLabel,\n formatYValue\n } = getLayoutInfo<K, D>(\n series,\n groups,\n getDataItem,\n xAxis,\n yAxis,\n availSpace,\n hiddenSet,\n hideAndShowBehavior,\n isHoriz,\n isRtl,\n isStacked,\n resolvedVars['labelFontSize'],\n offset,\n locale,\n getTextDimensions\n );\n\n scrollDims = updateScrollBarSpace(scrollDims, xAxisPosition === 'bottom', isRtl, yMaxDim);\n\n const gapRatio = getGapRatio(xIndexExtent.startIndex, xIndexExtent.endIndex);\n\n const getNextChartItem = getNavUtil(xIndexExtent.startIndex, xIndexExtent.endIndex);\n\n const renderedGroupsIndex = xProps.tickLabels.map(({ index }) => index + xIndexExtent.startIndex);\n const { getNextNavGroup, getDefaultNavGroup } = getGroupNavUtil(\n groups,\n renderedGroupsIndex,\n xIndexExtent,\n drilling,\n isRtl\n );\n\n const {\n cursor,\n marqueeProps,\n marqueeContent,\n toggleButtonContent,\n isPointInsideMarquee,\n dragMode: mode\n } = useChartMarquee<K, D>({\n plotAreaSpace,\n dragMode,\n chartWidth: width,\n isMultiSelection: selectionMode === 'multiple',\n onViewportChange,\n isZoomScroll: zoomAndScroll === 'live',\n xAxisExtent,\n xScale,\n selectedIds,\n getDataById: (id) => idToDataMap.get(id),\n onSelectionChange,\n viewportMax: xViewportExtent.viewportMax,\n viewportMin: xViewportExtent.viewportMin,\n isRtl\n });\n\n const { touchResponse, touchResponseStyle } = useVisTouchResponse({\n type: 'auto',\n supportsTouchDragGestures: mode !== 'off',\n rootRef\n });\n\n const { activeId, focusedItemInfo, hoveredItemInfo, focusedGroupInfo, navProps, onFocusUpdate } =\n useChartNav({\n rootRef,\n getNextChartItem,\n getNextNavGroup,\n getDefaultNavGroup,\n touchResponse,\n onItemHover,\n onItemFocus,\n drilling,\n xIndexExtent\n });\n\n const onContextMenuDismissed = (gesture: gestureTypes) => {\n if (gesture === 'keyboard') {\n onFocusUpdate();\n }\n };\n\n const getTextAndBounds = (target: EventTarget | null) => {\n if (target != rootRef.current) {\n const dataSet = getElementData(rootRef, target as HTMLElement);\n const text = dataSet?.['ojText']!;\n\n if (!text) {\n return;\n }\n\n if (text === xAxis?.title) {\n return {\n text,\n bounds: xProps.titleProps?.dims\n };\n } else if (text === yAxis?.title) {\n return {\n text,\n bounds: yProps.titleProps?.dims\n };\n } else if (dataSet?.['ojGroupIndex']) {\n const index = parseInt(dataSet['ojGroupIndex']);\n return {\n bounds: xProps.tickLabels[index].dims,\n text: text!\n };\n }\n }\n\n if (target === rootRef.current && focusedGroupInfo.isFocusVisible) {\n const group = groups[focusedGroupInfo.groupIndex];\n return {\n bounds: xProps.tickLabels[focusedGroupInfo.groupIndex].dims,\n text: group.name || group.id\n };\n }\n return;\n };\n\n const { tooltipContent, tooltipProps } = useTextTruncation({\n getTextAndBounds,\n width,\n isRtl\n });\n\n const { selectDrillProps, selectionContent } = useSelectDrill<K, D>({\n selectionMode,\n selection: [...selectedIds],\n onChange: onSelectionChange,\n rootRef,\n drilling,\n onItemDrill,\n onGroupDrill,\n focusedGroupInfo,\n focusedItemInfo,\n groups,\n getDataItem,\n getDataById: (id) => idToDataMap.get(id)\n });\n\n const viewportProps = useChartViewport({\n rootRef,\n width,\n height,\n xViewportExtent,\n yViewportExtent,\n xAxisExtent,\n yAxisExtent,\n xScale,\n yScale,\n plotAreaSpace,\n isRtl,\n isHoriz,\n zoomAndScroll,\n onViewportChange\n });\n\n const findNearestData = findNearest(xScale as any, yScale, groupWidth, gapRatio);\n const getDataItemPosition = getDataItemPos(xScale as any, yScale, groupWidth, gapRatio);\n\n const {\n datatipContent,\n dataCursorContent,\n datatipProps: { 'aria-describedby': datatipAriaDescribedby, ...datatipProps }\n } = useChartDatatipAndCursor<K, D>({\n series,\n groups,\n width,\n height,\n findNearest: findNearestData,\n plotAreaSpace,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorPosition,\n dataCursorStyle,\n hoveredItemInfo,\n focusedItemInfo,\n getDataItem,\n getMarkerInfo,\n getDataItemPos: getDataItemPosition,\n datatip,\n valueFormats,\n isHoriz,\n touchResponse,\n isDisabled: mode != 'off',\n xScale: xScale as any,\n yScale,\n timeAxisType: (xAxis as TimeAxisProps)?.timeAxisType,\n formatAxisLabel,\n formatYValue\n });\n\n const isGroupInteractive = (index: number) => {\n if ((xAxis as TimeAxisProps)?.timeAxisType != null) {\n return false;\n }\n const groupDrill = groups[index].drilling;\n if (groupDrill === 'on') {\n return true;\n }\n\n if (groupDrill != 'off' && (drilling === 'on' || drilling === 'groupsOnly')) {\n return true;\n }\n return false;\n };\n\n const plotAreaClipPathId = useId();\n const { viewportMin: xViewportMin, viewportMax: xViewportMax } = xViewportExtent;\n const { startIndex: xStartIndex, endIndex: xEndIndex } = xIndexExtent;\n const gridLines = (\n <Gridlines\n plotArea={plotArea}\n yMinorTicks={yMinorTicks}\n xScale={xScale}\n yScale={yScale}\n isLog={yAxis?.scale === 'log'}\n xViewportMin={xViewportMin}\n xViewportMax={xViewportMax}\n yTicks={yMajorTicks}\n yAxisPosition={yAxisPosition}\n />\n );\n const { contextMenuContent, contextMenuProps } = useChartContextMenu<K, D>({\n series,\n groups,\n getDataItem,\n focusedItemInfo,\n rootRef,\n xAxisTitle: xAxis?.title,\n yAxisTitle: yAxis?.title,\n contextMenuConfig,\n onContextMenuDismissed\n });\n\n const eventsProps = mergeProps(\n navProps,\n selectDrillProps,\n viewportProps,\n datatipProps,\n marqueeProps,\n tooltipProps,\n contextMenuProps\n );\n\n return (\n <div\n tabIndex={0}\n ref={rootRef}\n aria-activedescendant={activeId}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n aria-describedby={merge([props['aria-describedby'], datatipAriaDescribedby])}\n style={touchResponseStyle}\n role=\"application\"\n className={styles.baseChartStyle}\n {...testIdProps}\n {...eventsProps}>\n <svg width=\"100%\" height=\"100%\">\n <clipPath id={`${plotAreaClipPathId}`}>\n <rect {...plotAreaSpace}></rect>\n </clipPath>\n <PlotArea\n color={plotArea?.color}\n yScale={yScale}\n cursor={cursor}\n isLog={yAxis?.scale === 'log'}\n availSpace={plotAreaSpace}\n xAxisPosition={xAxisPosition}\n />\n {!renderGridLinesInFront && gridLines}\n <Axis {...(yProps as any)} axisPosition={yAxisPosition} isRtl={isRtl} />\n <Axis\n {...xProps}\n isRtl={isRtl}\n axisPosition={xAxisPosition}\n isTextInteractive={isGroupInteractive}\n activeId={activeId}\n focusedGroupIndex={\n focusedGroupInfo.isFocusVisible ? focusedGroupInfo.groupIndex : undefined\n }\n />\n <g clip-path={`url(#${plotAreaClipPathId})`}>\n {children({\n xStartIndex,\n xEndIndex,\n colors,\n xScale: xScale as any,\n yScale,\n isPointInsideMarquee,\n defaultFontSize: resolvedVars['labelFontSize'],\n gapRatio,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n getTextDimensions,\n groupWidth\n })}\n {renderGridLinesInFront && gridLines}\n {dataCursorContent}\n </g>\n {zoomAndScroll === 'live' && (\n <ScrollBar\n availSpace={scrollDims}\n isRtl={isRtl}\n viewport={xViewportExtent}\n axisExtent={xAxisExtent}\n isHoriz={xAxisPosition === 'bottom'}\n />\n )}\n {marqueeContent}\n </svg>\n {toggleButtonContent}\n {textMeasureContent}\n {cssContent}\n {datatipContent}\n {tooltipContent}\n {contextMenuContent}\n {selectionContent}\n </div>\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 { dimensionStyle } from './themes/ChartStyles.css';\nimport { TrackResizeContainer } from '../PRIVATE_TrackResizeContainer';\nimport { ChartWithDimensions } from './ChartWithDimensions';\nimport {\n ChartItemData,\n ChartCommonProps,\n ChartSeriesData,\n GetNextChartItemType,\n Info,\n Scale,\n getDataPosType\n} from '../utils/UNSAFE_visTypes/chart';\nimport { Dimension, MarkerShapes } from '#utils/UNSAFE_visTypes/common';\nimport { VNode } from 'preact';\nimport { Property } from 'csstype';\n\nexport type ChartProps<K, D> = {\n selectedIds: Set<K>;\n getGapRatio: (startIndex: number, endIndex: number) => number;\n getNavUtil: (startIndex: number, endIndex: number) => GetNextChartItemType;\n getDataItemPos: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => getDataPosType;\n findNearest: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => (\n x: number,\n y: number\n ) =>\n | {\n seriesIndex: number;\n groupIndex: number;\n y: number | undefined;\n x: number;\n }\n | undefined;\n children: (context: {\n xStartIndex: number;\n xEndIndex: number;\n xScale: Scale;\n yScale: Scale;\n gapRatio: number;\n activeId?: string;\n focusedItemInfo: Info;\n hoveredItemInfo?: Info;\n groupWidth: number;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getTextDimensions?: (text: string, style: Record<string, any>) => Dimension;\n defaultFontSize: string;\n colors: string[];\n }) => VNode;\n offset: number;\n series: ChartSeriesData<K, D>[];\n isRtl: boolean;\n renderGridLinesInFront: boolean;\n getMarkerInfo: (\n seriesIndex: number,\n groupIndex: number\n ) => { color: Property.Color | undefined; type?: MarkerShapes };\n} & Omit<ChartCommonProps<K, D>, 'highlightedIds' | 'hoverBehavior' | 'selectedIds'>;\n\nexport function Chart<K extends string | number, D extends ChartItemData<K>>({\n width,\n height,\n ...props\n}: ChartProps<K, D>) {\n // TODO: reevaluate how we handle empty data\n return (\n <TrackResizeContainer width={width} height={height} class={dimensionStyle}>\n {(width, height) =>\n width || height ? (\n <ChartWithDimensions width={width} height={height} {...props} />\n ) : undefined\n }\n </TrackResizeContainer>\n );\n}\n"],"names":["useState","useRef","useTooltip","calculateOffset","mergeProps","getChartVars","useTestId","getAxesPosition","useCssVars","useTextDimensions","getAvailSpace","getScrollBarSpace","useUser","getLayoutInfo","updateScrollBarSpace","useChartMarquee","useVisTouchResponse","useChartNav","getElementData","useSelectDrill","useChartViewport","useChartDatatipAndCursor","useId","_jsx","Gridlines","useChartContextMenu","_jsxs","merge","styles","PlotArea","Axis","ScrollBar","TrackResizeContainer","dimensionStyle"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Chart-4eee682b.js","sources":["../../src/PRIVATE_Axis/utils/axisNavUtils.ts","../../src/PRIVATE_VisSVGText/useTextTruncation.ts","../../src/PRIVATE_Chart/ChartWithDimensions.tsx","../../src/PRIVATE_Chart/Chart.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 */\nimport { Group, ChartGroupInfo } from '../../utils/UNSAFE_visTypes/chart';\ntype isGroupNavigableType = (groupIndex: number) => boolean;\n\nexport function getNextGroup(\n info: ChartGroupInfo,\n viewportEndIndex: number,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex + 1;\n if (groupIndex >= viewportEndIndex) {\n return;\n }\n\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getNextGroup({ groupIndex }, viewportEndIndex, isGroupNavigable);\n}\n\nexport function getPreviousGroup(\n info: ChartGroupInfo,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex - 1;\n if (groupIndex < 0) {\n return;\n }\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getPreviousGroup({ groupIndex }, isGroupNavigable);\n}\n\nexport function getGroupNavUtil(\n groups: Group[],\n renderedGroups: number[],\n xIndexExtent: { startIndex: number; endIndex: number },\n drilling: 'on' | 'off' | 'groupsOnly',\n isRtl: boolean\n) {\n const isGroupNavigable = (groupIndex: number) => {\n const groupsDrilling = groups[renderedGroups[groupIndex]].drilling;\n return (drilling === 'on' || drilling === 'groupsOnly') && groupsDrilling != 'off';\n };\n\n const getDefaultNavGroup = (info: ChartGroupInfo) => {\n if (xIndexExtent.startIndex > renderedGroups[info.groupIndex]) {\n info.groupIndex = 0;\n return info;\n } else if (xIndexExtent.endIndex < renderedGroups[info.groupIndex]) {\n info.groupIndex = renderedGroups.length - 1;\n return info;\n }\n return;\n };\n\n const getNextNavGroup = (info: ChartGroupInfo, arrow: 'ArrowRight' | 'ArrowLeft') => {\n let nextGroup = getDefaultNavGroup(info);\n\n if (nextGroup) return nextGroup;\n\n if (arrow === 'ArrowRight') {\n nextGroup = isRtl\n ? getPreviousGroup(info, isGroupNavigable)\n : getNextGroup(info, renderedGroups.length, isGroupNavigable);\n } else {\n nextGroup = isRtl\n ? getNextGroup(info, renderedGroups.length, isGroupNavigable)\n : getPreviousGroup(info, isGroupNavigable);\n }\n return nextGroup || info;\n };\n\n return { getDefaultNavGroup, getNextNavGroup };\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 { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { calculateOffset } from '#hooks/PRIVATE_useDatatip';\nimport { useTooltip } from '#hooks/UNSAFE_useTooltip';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useRef, useState } from 'preact/hooks';\n\ntype Props = {\n getTextAndBounds: (target: EventTarget | null) =>\n | {\n text?: string;\n bounds?: Dimension;\n }\n | undefined;\n isRtl: boolean;\n width: number;\n};\n\nexport function useTextTruncation({ getTextAndBounds, width, isRtl }: Props) {\n const [text, setText] = useState<string>();\n const bounds = useRef<Dimension>();\n\n const { tooltipContent, tooltipProps } = useTooltip({\n text,\n position: 'top-start',\n offset: calculateOffset(isRtl, width, bounds.current)\n });\n\n const onPointerMove = (event: Event) => {\n const textAndBounds = getTextAndBounds(event.target);\n\n if (textAndBounds) {\n bounds.current = textAndBounds.bounds;\n setText(textAndBounds.text);\n } else {\n setText(undefined);\n }\n };\n\n return {\n tooltipContent,\n tooltipProps: mergeProps({ onPointerMove }, tooltipProps)\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 { useTextDimensions } from '../hooks/PRIVATE_useTextDimensions';\nimport { useCssVars } from '../hooks/PRIVATE_useCssVars/useCssVars';\nimport { styles } from './themes/ChartStyles.css';\nimport { useRef } from 'preact/hooks';\nimport { PlotArea } from '../PRIVATE_PlotArea';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Axis } from '../PRIVATE_Axis/Axis';\nimport { useChartViewport } from '../hooks/PRIVATE_useChartViewport';\nimport {\n getAvailSpace,\n getLayoutInfo,\n getScrollBarSpace,\n updateScrollBarSpace\n} from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { useChartNav } from '../hooks/PRIVATE_useChartNav/useChartNav';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { getAxesPosition } from '../PRIVATE_Axis/utils/axisUtils';\nimport { ScrollBar } from '../PRIVATE_ChartScrollBar';\nimport { useSelectDrill } from '../hooks/PRIVATE_useChartEvents/useSelectDrill';\nimport { useChartDatatipAndCursor } from '../hooks/PRIVATE_useChartEvents/useDatatipAndCursor';\nimport { getGroupNavUtil } from '../PRIVATE_Axis/utils/axisNavUtils';\nimport { ChartItemData, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { Gridlines } from '../PRIVATE_PlotArea/Gridlines';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { getChartVars } from '../utils/PRIVATE_chartUtils';\nimport { useChartContextMenu } from '#hooks/PRIVATE_useChartContextMenu';\nimport { getElementData } from '#utils/UNSAFE_visUtils';\nimport { useTextTruncation } from '#PRIVATE_VisSVGText/useTextTruncation';\nimport { useChartMarquee } from '#hooks/PRIVATE_useChartMarquee';\nimport { ChartProps } from './Chart';\nimport type { gestureTypes } from '#hooks/PRIVATE_useVisContextMenu';\nimport { useVisTouchResponse } from '#hooks/PRIVATE_useVisTouchResponse';\nimport { merge } from '#utils/UNSAFE_stringUtils';\n\ntype ChartWithDimensionsProps<K, D> = Omit<ChartProps<K, D>, 'width' | 'height'> & {\n width: number;\n height: number;\n};\n\nconst chartVars = getChartVars();\n\nexport function ChartWithDimensions<K extends string | number, D extends ChartItemData<K>>({\n width,\n height,\n selectedIds,\n hiddenIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n xAxis,\n yAxis,\n plotArea,\n dragMode = 'user',\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n dataCursorPosition,\n onSelectionChange,\n isDataCursorEnabled,\n dataCursorStyle,\n onViewportChange,\n onDataCursorPositionChange,\n onItemDrill,\n onGroupDrill,\n onItemHover,\n onItemFocus,\n datatip,\n zoomAndScroll = 'off',\n offset,\n getNavUtil,\n getDataItemPos,\n getGapRatio,\n valueFormats,\n findNearest,\n getMarkerInfo,\n isRtl,\n children,\n testId,\n renderGridLinesInFront,\n contextMenuConfig,\n ...props\n}: ChartWithDimensionsProps<K, D>) {\n const testIdProps = useTestId(testId);\n const rootRef = useRef<HTMLDivElement>(null);\n const isHoriz = orientation === 'horizontal';\n const { xAxisPosition, yAxisPosition } = getAxesPosition(yAxis, isHoriz, isRtl);\n const { resolvedVars, cssContent } = useCssVars(chartVars);\n const colors = Array.from(Array(12)).map((_, index) => {\n return resolvedVars[`color${index + 1}`];\n });\n const { textMeasureContent, getTextDimensions } = useTextDimensions();\n let availSpace = getAvailSpace(width, height);\n const updatedSpace = getScrollBarSpace(availSpace, zoomAndScroll, xAxisPosition);\n let scrollDims = updatedSpace.scrollDims;\n availSpace = updatedSpace.availSpace;\n const hiddenSet = new Set(hiddenIds);\n const { locale } = useUser();\n const {\n xProps,\n xScale,\n xViewportExtent,\n xAxisExtent,\n xIndexExtent,\n yViewportExtent,\n yAxisExtent,\n groupWidth,\n yProps,\n yScale,\n yMaxDim,\n yMajorTicks,\n yMinorTicks,\n plotAreaSpace,\n idToDataMap,\n formatAxisLabel,\n formatYValue\n } = getLayoutInfo<K, D>(\n series,\n groups,\n getDataItem,\n xAxis,\n yAxis,\n availSpace,\n hiddenSet,\n hideAndShowBehavior,\n isHoriz,\n isRtl,\n isStacked,\n resolvedVars['labelFontSize'],\n offset,\n locale,\n getTextDimensions\n );\n\n scrollDims = updateScrollBarSpace(scrollDims, xAxisPosition === 'bottom', isRtl, yMaxDim);\n\n const gapRatio = getGapRatio(xIndexExtent.startIndex, xIndexExtent.endIndex);\n\n const getNextChartItem = getNavUtil(xIndexExtent.startIndex, xIndexExtent.endIndex);\n\n const renderedGroupsIndex = xProps.tickLabels.map(({ index }) => index + xIndexExtent.startIndex);\n const { getNextNavGroup, getDefaultNavGroup } = getGroupNavUtil(\n groups,\n renderedGroupsIndex,\n xIndexExtent,\n drilling,\n isRtl\n );\n\n const {\n cursor,\n marqueeProps,\n marqueeContent,\n toggleButtonContent,\n isPointInsideMarquee,\n dragMode: mode\n } = useChartMarquee<K, D>({\n plotAreaSpace,\n dragMode,\n chartWidth: width,\n isMultiSelection: selectionMode === 'multiple',\n onViewportChange,\n isZoomScroll: zoomAndScroll === 'live',\n xAxisExtent,\n xScale,\n selectedIds,\n getDataById: (id) => idToDataMap.get(id),\n onSelectionChange,\n viewportMax: xViewportExtent.viewportMax,\n viewportMin: xViewportExtent.viewportMin,\n isRtl\n });\n\n const { touchResponse, touchResponseStyle } = useVisTouchResponse({\n type: 'auto',\n supportsTouchDragGestures: mode !== 'off',\n rootRef\n });\n\n const { activeId, focusedItemInfo, hoveredItemInfo, focusedGroupInfo, navProps, onFocusUpdate } =\n useChartNav({\n rootRef,\n getNextChartItem,\n getNextNavGroup,\n getDefaultNavGroup,\n touchResponse,\n onItemHover,\n onItemFocus,\n drilling,\n xIndexExtent\n });\n\n const onContextMenuDismissed = (gesture: gestureTypes) => {\n if (gesture === 'keyboard') {\n onFocusUpdate();\n }\n };\n\n const getTextAndBounds = (target: EventTarget | null) => {\n if (target != rootRef.current) {\n const dataSet = getElementData(rootRef, target as HTMLElement);\n const text = dataSet?.['ojText']!;\n\n if (!text) {\n return;\n }\n\n if (text === xAxis?.title) {\n return {\n text,\n bounds: xProps.titleProps?.dims\n };\n } else if (text === yAxis?.title) {\n return {\n text,\n bounds: yProps.titleProps?.dims\n };\n } else if (dataSet?.['ojGroupIndex']) {\n const index = parseInt(dataSet['ojGroupIndex']);\n return {\n bounds: xProps.tickLabels[index].dims,\n text: text!\n };\n }\n }\n\n if (target === rootRef.current && focusedGroupInfo.isFocusVisible) {\n const group = groups[focusedGroupInfo.groupIndex];\n return {\n bounds: xProps.tickLabels[focusedGroupInfo.groupIndex].dims,\n text: group.name || group.id\n };\n }\n return;\n };\n\n const { tooltipContent, tooltipProps } = useTextTruncation({\n getTextAndBounds,\n width,\n isRtl\n });\n\n const { selectDrillProps, selectionContent } = useSelectDrill<K, D>({\n selectionMode,\n selection: [...selectedIds],\n onChange: onSelectionChange,\n rootRef,\n drilling,\n onItemDrill,\n onGroupDrill,\n focusedGroupInfo,\n focusedItemInfo,\n groups,\n getDataItem,\n getDataById: (id) => idToDataMap.get(id)\n });\n\n const viewportProps = useChartViewport({\n rootRef,\n width,\n height,\n xViewportExtent,\n yViewportExtent,\n xAxisExtent,\n yAxisExtent,\n xScale,\n yScale,\n plotAreaSpace,\n isRtl,\n isHoriz,\n zoomAndScroll,\n onViewportChange\n });\n\n const findNearestData = findNearest(xScale as any, yScale, groupWidth, gapRatio);\n const getDataItemPosition = getDataItemPos(xScale as any, yScale, groupWidth, gapRatio);\n\n const {\n datatipContent,\n dataCursorContent,\n datatipProps: { 'aria-describedby': datatipAriaDescribedby, ...datatipProps }\n } = useChartDatatipAndCursor<K, D>({\n series,\n groups,\n width,\n height,\n findNearest: findNearestData,\n plotAreaSpace,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorPosition,\n dataCursorStyle,\n hoveredItemInfo,\n focusedItemInfo,\n getDataItem,\n getMarkerInfo,\n getDataItemPos: getDataItemPosition,\n datatip,\n valueFormats,\n isHoriz,\n touchResponse,\n isDisabled: mode != 'off',\n xScale: xScale as any,\n yScale,\n timeAxisType: (xAxis as TimeAxisProps)?.timeAxisType,\n formatAxisLabel,\n formatYValue\n });\n\n const isGroupInteractive = (index: number) => {\n if ((xAxis as TimeAxisProps)?.timeAxisType != null) {\n return false;\n }\n const groupDrill = groups[index].drilling;\n if (groupDrill === 'on') {\n return true;\n }\n\n if (groupDrill != 'off' && (drilling === 'on' || drilling === 'groupsOnly')) {\n return true;\n }\n return false;\n };\n\n const plotAreaClipPathId = useId();\n const { viewportMin: xViewportMin, viewportMax: xViewportMax } = xViewportExtent;\n const { startIndex: xStartIndex, endIndex: xEndIndex } = xIndexExtent;\n const gridLines = (\n <Gridlines\n plotArea={plotArea}\n yMinorTicks={yMinorTicks}\n xScale={xScale}\n yScale={yScale}\n isLog={yAxis?.scale === 'log'}\n xViewportMin={xViewportMin}\n xViewportMax={xViewportMax}\n yTicks={yMajorTicks}\n yAxisPosition={yAxisPosition}\n />\n );\n const { contextMenuContent, contextMenuProps } = useChartContextMenu<K, D>({\n series,\n groups,\n getDataItem,\n focusedItemInfo,\n rootRef,\n xAxisTitle: xAxis?.title,\n yAxisTitle: yAxis?.title,\n contextMenuConfig,\n onContextMenuDismissed\n });\n\n const eventsProps = mergeProps(\n navProps,\n selectDrillProps,\n viewportProps,\n datatipProps,\n marqueeProps,\n tooltipProps,\n contextMenuProps\n );\n\n return (\n <div\n tabIndex={0}\n ref={rootRef}\n aria-activedescendant={activeId}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n aria-describedby={merge([props['aria-describedby'], datatipAriaDescribedby])}\n style={touchResponseStyle}\n role=\"application\"\n className={styles.baseChartStyle}\n {...testIdProps}\n {...eventsProps}>\n <svg width=\"100%\" height=\"100%\">\n <clipPath id={`${plotAreaClipPathId}`}>\n <rect {...plotAreaSpace}></rect>\n </clipPath>\n <PlotArea\n color={plotArea?.color}\n yScale={yScale}\n cursor={cursor}\n isLog={yAxis?.scale === 'log'}\n availSpace={plotAreaSpace}\n xAxisPosition={xAxisPosition}\n />\n {!renderGridLinesInFront && gridLines}\n <Axis {...(yProps as any)} axisPosition={yAxisPosition} isRtl={isRtl} />\n <Axis\n {...xProps}\n isRtl={isRtl}\n axisPosition={xAxisPosition}\n isTextInteractive={isGroupInteractive}\n activeId={activeId}\n focusedGroupIndex={\n focusedGroupInfo.isFocusVisible ? focusedGroupInfo.groupIndex : undefined\n }\n />\n <g clip-path={`url(#${plotAreaClipPathId})`}>\n {children({\n xStartIndex,\n xEndIndex,\n colors,\n xScale: xScale as any,\n yScale,\n isPointInsideMarquee,\n defaultFontSize: resolvedVars['labelFontSize'],\n gapRatio,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n getTextDimensions,\n groupWidth\n })}\n {renderGridLinesInFront && gridLines}\n {dataCursorContent}\n </g>\n {zoomAndScroll === 'live' && (\n <ScrollBar\n availSpace={scrollDims}\n isRtl={isRtl}\n viewport={xViewportExtent}\n axisExtent={xAxisExtent}\n isHoriz={xAxisPosition === 'bottom'}\n />\n )}\n {marqueeContent}\n </svg>\n {toggleButtonContent}\n {textMeasureContent}\n {cssContent}\n {datatipContent}\n {tooltipContent}\n {contextMenuContent}\n {selectionContent}\n </div>\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 { dimensionStyle } from './themes/ChartStyles.css';\nimport { TrackResizeContainer } from '../PRIVATE_TrackResizeContainer';\nimport { ChartWithDimensions } from './ChartWithDimensions';\nimport {\n ChartItemData,\n ChartCommonProps,\n ChartSeriesData,\n GetNextChartItemType,\n Info,\n Scale,\n getDataPosType\n} from '../utils/UNSAFE_visTypes/chart';\nimport { Dimension, MarkerShapes } from '#utils/UNSAFE_visTypes/common';\nimport { VNode } from 'preact';\nimport { Property } from 'csstype';\n\nexport type ChartProps<K, D> = {\n selectedIds: Set<K>;\n getGapRatio: (startIndex: number, endIndex: number) => number;\n getNavUtil: (startIndex: number, endIndex: number) => GetNextChartItemType;\n getDataItemPos: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => getDataPosType;\n findNearest: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => (\n x: number,\n y: number\n ) =>\n | {\n seriesIndex: number;\n groupIndex: number;\n y: number | undefined;\n x: number;\n }\n | undefined;\n children: (context: {\n xStartIndex: number;\n xEndIndex: number;\n xScale: Scale;\n yScale: Scale;\n gapRatio: number;\n activeId?: string;\n focusedItemInfo: Info;\n hoveredItemInfo?: Info;\n groupWidth: number;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getTextDimensions?: (text: string, style: Record<string, any>) => Dimension;\n defaultFontSize: string;\n colors: string[];\n }) => VNode;\n offset: number;\n series: ChartSeriesData<K, D>[];\n isRtl: boolean;\n renderGridLinesInFront: boolean;\n getMarkerInfo: (\n seriesIndex: number,\n groupIndex: number\n ) => { color: Property.Color | undefined; type?: MarkerShapes };\n} & Omit<ChartCommonProps<K, D>, 'highlightedIds' | 'hoverBehavior' | 'selectedIds'>;\n\nexport function Chart<K extends string | number, D extends ChartItemData<K>>({\n width,\n height,\n ...props\n}: ChartProps<K, D>) {\n // TODO: reevaluate how we handle empty data\n return (\n <TrackResizeContainer width={width} height={height} class={dimensionStyle}>\n {(width, height) =>\n width || height ? (\n <ChartWithDimensions width={width} height={height} {...props} />\n ) : undefined\n }\n </TrackResizeContainer>\n );\n}\n"],"names":["useState","useRef","useTooltip","calculateOffset","mergeProps","getChartVars","useTestId","getAxesPosition","useCssVars","useTextDimensions","getAvailSpace","getScrollBarSpace","useUser","getLayoutInfo","updateScrollBarSpace","useChartMarquee","useVisTouchResponse","useChartNav","getElementData","useSelectDrill","useChartViewport","useChartDatatipAndCursor","useId","_jsx","Gridlines","useChartContextMenu","_jsxs","merge","styles","PlotArea","Axis","ScrollBar","TrackResizeContainer","dimensionStyle"],"mappings":"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"}
|