@oracle/oraclejet-preact 19.0.4 → 19.0.6
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-eb924a00.js +1 -1
- package/amd/BarChart-d94f9c56.js +1 -1
- package/amd/{BaseButton-2c9850cb.js → BaseButton-d69319ea.js} +2 -2
- package/amd/{BaseButton-2c9850cb.js.map → BaseButton-d69319ea.js.map} +1 -1
- package/amd/BaseCardView-bc694015.js +1 -1
- package/amd/{BaseCardViewSelectionTest-edac2bbb.js → BaseCardViewSelectionTest-4fae7370.js} +2 -2
- package/amd/{BaseCardViewSelectionTest-edac2bbb.js.map → BaseCardViewSelectionTest-4fae7370.js.map} +1 -1
- package/amd/BaseNavigationListItem-cb5c260b.js +1 -1
- package/amd/BaseRichSelection-7f20b3af.js +1 -1
- package/amd/BaseSwatchView-4d204ce0.js +1 -1
- package/amd/BaseTabBarItem-cdec0e90.js +1 -1
- package/amd/Button-d6bbc57f.js +2 -0
- package/amd/{Button-bd886c04.js.map → Button-d6bbc57f.js.map} +1 -1
- package/amd/ButtonSet-ce95318d.js +1 -1
- package/amd/ButtonSetButton-af5f14b6.js +1 -1
- package/amd/ButtonSetIconButton-f3c6a05e.js +1 -1
- package/amd/Card-6e7189a3.js +2 -0
- package/amd/{Card-b62c2442.js.map → Card-6e7189a3.js.map} +1 -1
- package/amd/{Center-45b0c778.js → Center-50b6397c.js} +2 -2
- package/amd/{Center-45b0c778.js.map → Center-50b6397c.js.map} +1 -1
- package/amd/Chart-3108fa88.js +1 -1
- package/amd/Checkbox-8160d2e6.js +1 -1
- package/amd/CheckboxControl-c5240f9a.js +1 -1
- package/amd/CheckboxRadioField-18bf3cc2.js +1 -1
- package/amd/CheckboxRadioLabelValueLayout-edb44215.js +1 -1
- package/amd/Chip-b62a8126.js +1 -1
- package/amd/ClearIcon-13bd61d3.js +1 -1
- package/amd/CollapseIcon-8d26ba2a.js +1 -1
- package/amd/Collapsible-bf6945f6.js +1 -1
- package/amd/ColorPalette-b26f3861.js +1 -1
- package/amd/ColorPicker-d578df9c.js +2 -0
- package/amd/{ColorPicker-8ef0b6e0.js.map → ColorPicker-d578df9c.js.map} +1 -1
- package/amd/ColorSwatch-57d78771.js +1 -1
- package/amd/ComboChart-e61b5581.js +1 -1
- package/amd/CompactHelpSource-103a8263.js +1 -1
- package/amd/{CompactLabelAssistance-7ec99e08.js → CompactLabelAssistance-deb90940.js} +2 -2
- package/amd/{CompactLabelAssistance-7ec99e08.js.map → CompactLabelAssistance-deb90940.js.map} +1 -1
- package/amd/CompactUserAssistance-5ef03b0a.js +1 -1
- package/amd/ComponentMessageContainer-7d775a43.js +1 -1
- package/amd/ConveyorBelt-b9ab13cc.js +1 -1
- package/amd/{DatePicker-568944a7.js → DatePicker-0c7ef704.js} +2 -2
- package/amd/{DatePicker-568944a7.js.map → DatePicker-0c7ef704.js.map} +1 -1
- package/amd/DatePickerHeader-25b87f04.js +1 -1
- package/amd/Diagram-461719eb.js +1 -1
- package/amd/{Dialog-2e5ca26a.js → Dialog-304ce274.js} +2 -2
- package/amd/{Dialog-2e5ca26a.js.map → Dialog-304ce274.js.map} +1 -1
- package/amd/DirectionalCollapseArrowIcon-6777ae07.js +1 -1
- package/amd/DirectionalExpandArrowIcon-21d0b1d5.js +1 -1
- package/amd/{DragHandle-68918f40.js → DragHandle-9d141cf3.js} +2 -2
- package/amd/{DragHandle-68918f40.js.map → DragHandle-9d141cf3.js.map} +1 -1
- package/amd/{DrawerPopup-8d62ed90.js → DrawerPopup-2b59d7f3.js} +2 -2
- package/amd/{DrawerPopup-8d62ed90.js.map → DrawerPopup-2b59d7f3.js.map} +1 -1
- package/amd/{Dropdown-9d52501e.js → Dropdown-c119d072.js} +2 -2
- package/amd/{Dropdown-9d52501e.js.map → Dropdown-c119d072.js.map} +1 -1
- package/amd/{EmbeddedIconButton-7a2a1a8c.js → EmbeddedIconButton-23c53268.js} +2 -2
- package/amd/{EmbeddedIconButton-7a2a1a8c.js.map → EmbeddedIconButton-23c53268.js.map} +1 -1
- package/amd/{EnvironmentProvider-fb09fcfb.js → EnvironmentProvider-d538fcb2.js} +2 -2
- package/amd/{EnvironmentProvider-fb09fcfb.js.map → EnvironmentProvider-d538fcb2.js.map} +1 -1
- package/amd/ExpandableList-08269646.js +1 -1
- package/amd/Expander-942144c1.js +2 -0
- package/amd/{Expander-9efeb845.js.map → Expander-942144c1.js.map} +1 -1
- package/amd/FilePicker-e5a20eaa.js +1 -1
- package/amd/{FlatTreeView-6545afce.js → FlatTreeView-dde3e071.js} +2 -2
- package/amd/{FlatTreeView-6545afce.js.map → FlatTreeView-dde3e071.js.map} +1 -1
- package/amd/{Flex-4bc3a394.js → Flex-07d2aa5b.js} +2 -2
- package/amd/{Flex-4bc3a394.js.map → Flex-07d2aa5b.js.map} +1 -1
- package/amd/{Floating-366a30f8.js → Floating-8192acb2.js} +2 -2
- package/amd/{Floating-366a30f8.js.map → Floating-8192acb2.js.map} +1 -1
- package/amd/FormLayout-ce4e956c.js +1 -1
- package/amd/Gantt-ad770490.js +1 -1
- package/amd/{Grid-2ddec30a.js → Grid-d415ba8d.js} +2 -2
- package/amd/{Grid-2ddec30a.js.map → Grid-d415ba8d.js.map} +1 -1
- package/amd/{Gridlines-545ae30a.js → Gridlines-c6c1fbb5.js} +2 -2
- package/amd/{Gridlines-545ae30a.js.map → Gridlines-c6c1fbb5.js.map} +1 -1
- package/amd/GroupLoadingIndicator-87f32efc.js +1 -1
- package/amd/{HighlightText-ace1b6c4.js → HighlightText-ecd2e5ce.js} +2 -2
- package/amd/{HighlightText-ace1b6c4.js.map → HighlightText-ecd2e5ce.js.map} +1 -1
- package/amd/Icon-865b3c78.js +1 -1
- package/amd/IconButton-232d63fc.js +1 -1
- package/amd/IconMenuButton-eef4b2da.js +1 -1
- package/amd/IconProgressButton-f9cdb23a.js +1 -1
- package/amd/IconSwitchButton-5be99684.js +1 -1
- package/amd/IconToggleButton-b783604a.js +1 -1
- package/amd/{IconUserAssistance-af9839fb.js → IconUserAssistance-0c55d53f.js} +2 -2
- package/amd/{IconUserAssistance-af9839fb.js.map → IconUserAssistance-0c55d53f.js.map} +1 -1
- package/amd/Indexer-bbb763a7.js +1 -1
- package/amd/InlineHelpSource-34ec0779.js +1 -1
- package/amd/InlineSelectSingle-bebf92d3.js +1 -1
- package/amd/InlineUserAssistance-e406e352.js +1 -1
- package/amd/{InputColor-5315b76a.js → InputColor-192a309b.js} +2 -2
- package/amd/{InputColor-5315b76a.js.map → InputColor-192a309b.js.map} +1 -1
- package/amd/InputDateMask-2fdb6f26.js +1 -1
- package/amd/InputDatePicker-c5ceeb44.js +1 -1
- package/amd/InputPassword-72147893.js +1 -1
- package/amd/InputSensitiveText-28cebe14.js +1 -1
- package/amd/InputText-83b55089.js +1 -1
- package/amd/Label-3c17bcc9.js +1 -1
- package/amd/LabelValueLayout-39dc1be3.js +1 -1
- package/amd/Layer-c91c7141.js +2 -0
- package/amd/{Layer-dc3c1ac9.js.map → Layer-c91c7141.js.map} +1 -1
- package/amd/{LayerHost-7d4aa6d3.js → LayerHost-daf96749.js} +2 -2
- package/amd/{LayerHost-7d4aa6d3.js.map → LayerHost-daf96749.js.map} +1 -1
- package/amd/{LayerManager-4983f21c.js → LayerManager-8bad71b0.js} +2 -2
- package/amd/{LayerManager-4983f21c.js.map → LayerManager-8bad71b0.js.map} +1 -1
- package/amd/Legend-a8e9f523.js +1 -1
- package/amd/{LineAreaChart-f8aefe07.js → LineAreaChart-ee71fd90.js} +2 -2
- package/amd/{LineAreaChart-f8aefe07.js.map → LineAreaChart-ee71fd90.js.map} +1 -1
- package/amd/Link-c772dbef.js +1 -1
- package/amd/List-5b5b3bd7.js +1 -1
- package/amd/{ListItemLayout-83b78862.js → ListItemLayout-50d0c8fa.js} +2 -2
- package/amd/{ListItemLayout-83b78862.js.map → ListItemLayout-50d0c8fa.js.map} +1 -1
- package/amd/ListView-02b5ba6d.js +1 -1
- package/amd/LiveRegion-ef77cf92.js +2 -0
- package/amd/{LiveRegion-4b9317e5.js.map → LiveRegion-ef77cf92.js.map} +1 -1
- package/amd/{MaxLengthLiveRegion-1f30f975.js → MaxLengthLiveRegion-04832e9d.js} +2 -2
- package/amd/{MaxLengthLiveRegion-1f30f975.js.map → MaxLengthLiveRegion-04832e9d.js.map} +1 -1
- package/amd/Menu-45a26116.js +1 -1
- package/amd/MenuButton-0a9c6e8e.js +1 -1
- package/amd/MenuItem-ff1cd14d.js +1 -1
- package/amd/Message-d715942d.js +1 -1
- package/amd/{MessageLayer-8df59ea9.js → MessageLayer-5a8ba5af.js} +2 -2
- package/amd/{MessageLayer-8df59ea9.js.map → MessageLayer-5a8ba5af.js.map} +1 -1
- package/amd/MessageToast-44f7b49d.js +1 -1
- package/amd/MessagesManager-1a6283c1.js +1 -1
- package/amd/MeterBar-e417440c.js +1 -1
- package/amd/MeterCircle-d2ac0a67.js +1 -1
- package/amd/{Modal-8d647f76.js → Modal-1b3cd230.js} +2 -2
- package/amd/{Modal-8d647f76.js.map → Modal-1b3cd230.js.map} +1 -1
- package/amd/{MonthView-d2f8f3f1.js → MonthView-c77fc0e7.js} +2 -2
- package/amd/{MonthView-d2f8f3f1.js.map → MonthView-c77fc0e7.js.map} +1 -1
- package/amd/NavigationListItem-cdbcc394.js +2 -0
- package/amd/{NavigationListItem-73686e95.js.map → NavigationListItem-cdbcc394.js.map} +1 -1
- package/amd/NavigationListLinkItem-77705dba.js +2 -0
- package/amd/{NavigationListLinkItem-87d5ca3d.js.map → NavigationListLinkItem-77705dba.js.map} +1 -1
- package/amd/NumberInputText-01c1859f.js +1 -1
- package/amd/{OverflowTabBar-b43ccbc1.js → OverflowTabBar-587b7c2a.js} +2 -2
- package/amd/{OverflowTabBar-b43ccbc1.js.map → OverflowTabBar-587b7c2a.js.map} +1 -1
- package/amd/{OverflowTabBarItem-b75ebe9b.js → OverflowTabBarItem-bcf24ceb.js} +2 -2
- package/amd/{OverflowTabBarItem-b75ebe9b.js.map → OverflowTabBarItem-bcf24ceb.js.map} +1 -1
- package/amd/PRIVATE_BaseCardView.js +1 -1
- package/amd/PRIVATE_BaseSwatchView.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_ContainerDiagram.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_Expander.js +1 -1
- package/amd/PRIVATE_FormControls.js +1 -1
- package/amd/PRIVATE_IconSwitchButton.js +1 -1
- package/amd/PRIVATE_Icons/CheckboxCrossed.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/DragV.js +1 -1
- package/amd/PRIVATE_Icons/None.js +1 -1
- package/amd/PRIVATE_List.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_RichSelectionCommon.js +1 -1
- package/amd/PRIVATE_SelectCommon.js +1 -1
- package/amd/PRIVATE_StyledCard.js +1 -1
- package/amd/PRIVATE_StyledCheckbox.js +1 -1
- package/amd/PRIVATE_SwatchFlexView.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/CheckboxCrossedIcon.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/DragHandleIcon.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/None.js +1 -1
- package/amd/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.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/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_VisOverview.js +1 -1
- package/amd/PRIVATE_VisTabularDatatip.js +1 -1
- package/amd/PictoChart-34f56e1c.js +1 -1
- package/amd/PieChart-c934e8f0.js +1 -1
- package/amd/{Popup-062b66ff.js → Popup-695781d6.js} +2 -2
- package/amd/{Popup-062b66ff.js.map → Popup-695781d6.js.map} +1 -1
- package/amd/{ProgressBar-9aed0a47.js → ProgressBar-70983add.js} +2 -2
- package/amd/{ProgressBar-9aed0a47.js.map → ProgressBar-70983add.js.map} +1 -1
- package/amd/ProgressButton-e6a1d457.js +1 -1
- package/amd/ProgressButtonLabelLayout-0931b1d5.js +1 -1
- package/amd/{ProgressCircle-0001dec1.js → ProgressCircle-551b98ed.js} +2 -2
- package/amd/{ProgressCircle-0001dec1.js.map → ProgressCircle-551b98ed.js.map} +1 -1
- package/amd/RadioItem-49626d64.js +1 -1
- package/amd/RatingGauge-e7a36731.js +1 -1
- package/amd/ReadonlyTextFieldInput-e5723c48.js +1 -1
- package/amd/RemovableTabBarItem-8c254100.js +2 -0
- package/amd/{RemovableTabBarItem-c7dd457b.js.map → RemovableTabBarItem-8c254100.js.map} +1 -1
- package/amd/{ReorderableTabBar-5d664f67.js → ReorderableTabBar-442e649a.js} +2 -2
- package/amd/{ReorderableTabBar-5d664f67.js.map → ReorderableTabBar-442e649a.js.map} +1 -1
- package/amd/RevealToggleIcon-28c5efc5.js +1 -1
- package/amd/{ScatterChart-1999acf0.js → ScatterChart-2b76df73.js} +2 -2
- package/amd/{ScatterChart-1999acf0.js.map → ScatterChart-2b76df73.js.map} +1 -1
- package/amd/SectionalLegend-a37ee0ec.js +1 -1
- package/amd/SectionedContent-054e2fc2.js +2 -0
- package/amd/{SectionedContent-bae8af88.js.map → SectionedContent-054e2fc2.js.map} +1 -1
- package/amd/SelectMobileFieldInput-3650e1fe.js +1 -1
- package/amd/SelectMultiple-8dce10da.js +1 -1
- package/amd/SelectSingle-6d1f640f.js +1 -1
- package/amd/SelectionCard-601660df.js +2 -0
- package/amd/{SelectionCard-e5665725.js.map → SelectionCard-601660df.js.map} +1 -1
- package/amd/Selector-470f114d.js +1 -1
- package/amd/{SelectorAll-ac6005c5.js → SelectorAll-82589ce2.js} +2 -2
- package/amd/{SelectorAll-ac6005c5.js.map → SelectorAll-82589ce2.js.map} +1 -1
- package/amd/{Sheet-fdd314ac.js → Sheet-c7f3fe2d.js} +2 -2
- package/amd/{Sheet-fdd314ac.js.map → Sheet-c7f3fe2d.js.map} +1 -1
- package/amd/SortControl-52991a27.js +2 -0
- package/amd/{SortControl-6d8e62c0.js.map → SortControl-52991a27.js.map} +1 -1
- package/amd/SplitMenuButton-ba7fc113.js +1 -1
- package/amd/{StyledCard-f72bdcc4.js → StyledCard-8dbd5d58.js} +2 -2
- package/amd/{StyledCard-f72bdcc4.js.map → StyledCard-8dbd5d58.js.map} +1 -1
- package/amd/{StyledLabelValueLayout-5a476d38.js → StyledLabelValueLayout-5737d116.js} +2 -2
- package/amd/{StyledLabelValueLayout-5a476d38.js.map → StyledLabelValueLayout-5737d116.js.map} +1 -1
- package/amd/StyledTextField-5e554e5b.js +1 -1
- package/amd/Submenu-d0c548f0.js +1 -1
- package/amd/TabBar-3fe1e19e.js +2 -0
- package/amd/{TabBar-fa06f492.js.map → TabBar-3fe1e19e.js.map} +1 -1
- package/amd/TabBarContextMenu-cad0a362.js +1 -1
- package/amd/TabBarLayout-9f802535.js +1 -1
- package/amd/TabBarMixed-090b4984.js +2 -0
- package/amd/{TabBarMixed-2d5bc172.js.map → TabBarMixed-090b4984.js.map} +1 -1
- package/amd/TabBarMixedSeparator-07022bdc.js +2 -0
- package/amd/{TabBarMixedSeparator-4c6ad368.js.map → TabBarMixedSeparator-07022bdc.js.map} +1 -1
- package/amd/{Table-d0cc2468.js → Table-42c274a8.js} +2 -2
- package/amd/{Table-d0cc2468.js.map → Table-42c274a8.js.map} +1 -1
- package/amd/{TableView-610de105.js → TableView-770fd77c.js} +2 -2
- package/amd/{TableView-610de105.js.map → TableView-770fd77c.js.map} +1 -1
- package/amd/TagCloud-ccd75f37.js +1 -1
- package/amd/TextArea-dfd1f679.js +1 -1
- package/amd/TextAreaAutosize-cbdc9644.js +1 -1
- package/amd/TextField-51b63f5f.js +1 -1
- package/amd/TextFieldInput-eb40adaa.js +1 -1
- package/amd/Theme-redwood/theme.css +121 -121
- package/amd/Theme-stable/theme.css +210 -210
- package/amd/TimeComponentCanvas2D-02d13a18.js +1 -1
- package/amd/ToggleButton-9201e07b.js +1 -1
- package/amd/Toolbar-4b2c5d5e.js +1 -1
- package/amd/TruncatingBadge-2d00ef48.js +1 -1
- package/amd/TruncatingText-459021db.js +1 -1
- package/amd/UNSAFE_ActionCard.js +1 -1
- package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
- package/amd/UNSAFE_BarChart.js +1 -1
- package/amd/UNSAFE_BareButton.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_Card.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_Checkbox.js +1 -1
- package/amd/UNSAFE_CheckboxItem.js +1 -1
- package/amd/UNSAFE_CheckboxRadioField.js +1 -1
- package/amd/UNSAFE_CheckboxSet.js +1 -1
- package/amd/UNSAFE_Chip.js +1 -1
- package/amd/UNSAFE_Collapsible.js +1 -1
- package/amd/UNSAFE_ColorPalette.js +1 -1
- package/amd/UNSAFE_ColorPicker.js +1 -1
- package/amd/UNSAFE_ColorSwatch.js +1 -1
- package/amd/UNSAFE_ComboChart.js +1 -1
- package/amd/UNSAFE_ComponentMessage.js +1 -1
- package/amd/UNSAFE_ConveyorBelt.js +1 -1
- package/amd/UNSAFE_DatePicker.js +1 -1
- package/amd/UNSAFE_Diagram.js +1 -1
- package/amd/UNSAFE_Dialog.js +1 -1
- package/amd/UNSAFE_DragHandle.js +1 -1
- package/amd/UNSAFE_DrawerLayout.js +1 -1
- package/amd/UNSAFE_DrawerPopup.js +1 -1
- package/amd/UNSAFE_Dropdown.js +1 -1
- package/amd/UNSAFE_Environment.js +1 -1
- package/amd/UNSAFE_ExpandableList.js +1 -1
- package/amd/UNSAFE_FilePicker.js +1 -1
- package/amd/UNSAFE_FlatTreeView.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_InlineSelectSingle.js +1 -1
- package/amd/UNSAFE_InputColor.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_InputTimeMask.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.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_RichCheckboxSet.js +1 -1
- package/amd/UNSAFE_RichRadioSet.js +1 -1
- package/amd/UNSAFE_RichSelectionItem.js +1 -1
- package/amd/UNSAFE_ScatterChart.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_SortControl.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-5520bcf5.js → View-ab4d3a33.js} +2 -2
- package/amd/{View-5520bcf5.js.map → View-ab4d3a33.js.map} +1 -1
- package/amd/{VisNoData-d70d0d82.js → VisNoData-adbb8750.js} +2 -2
- package/amd/{VisNoData-d70d0d82.js.map → VisNoData-adbb8750.js.map} +1 -1
- package/amd/{VisProgressiveLoader-07978120.js → VisProgressiveLoader-e5f7abe1.js} +2 -2
- package/amd/{VisProgressiveLoader-07978120.js.map → VisProgressiveLoader-e5f7abe1.js.map} +1 -1
- package/amd/{VisTabularDatatip-ab3b0b91.js → VisTabularDatatip-e95bbf79.js} +2 -2
- package/amd/{VisTabularDatatip-ab3b0b91.js.map → VisTabularDatatip-e95bbf79.js.map} +1 -1
- package/amd/{WindowOverlay-bd810e3b.js → WindowOverlay-69da5337.js} +2 -2
- package/amd/{WindowOverlay-bd810e3b.js.map → WindowOverlay-69da5337.js.map} +1 -1
- package/amd/{YearsGridView-f5c6d70d.js → YearsGridView-e1482970.js} +2 -2
- package/amd/{YearsGridView-f5c6d70d.js.map → YearsGridView-e1482970.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_useListCommon.js +1 -1
- package/amd/hooks/PRIVATE_useOutsideMousedown.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_useTooltipOnTruncation.js +1 -1
- package/amd/hooks/PRIVATE_useVisContextMenu.js +1 -1
- package/amd/hooks/PRIVATE_useVisDragModeControls.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_useBareButton.js +1 -1
- package/amd/hooks/UNSAFE_useColorScheme.js +1 -1
- package/amd/hooks/UNSAFE_useCurrentBgColor.js +1 -1
- package/amd/hooks/UNSAFE_useDensity.js +1 -1
- package/amd/hooks/UNSAFE_useHiddenTestMethod.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-89934afc.js → index-c11efa38.js} +2 -2
- package/amd/index-c11efa38.js.map +1 -0
- package/amd/listViewSelectionTests-a58ee4c0.js +1 -1
- package/amd/popupUtils-019ff48f.js +2 -0
- package/amd/{popupUtils-e19b93b5.js.map → popupUtils-019ff48f.js.map} +1 -1
- package/amd/{render-88108768.js → render-7cdd2fd1.js} +2 -2
- package/amd/{render-88108768.js.map → render-7cdd2fd1.js.map} +1 -1
- package/amd/{tabbableUtils-147c1073.js → tabbableUtils-b1a61a1b.js} +2 -2
- package/amd/{tabbableUtils-147c1073.js.map → tabbableUtils-b1a61a1b.js.map} +1 -1
- package/amd/{testData-845e2489.js → testData-c9985c4d.js} +2 -2
- package/amd/{testData-845e2489.js.map → testData-c9985c4d.js.map} +1 -1
- package/amd/{tooltipUtils-3c8a0253.js → tooltipUtils-ae57629b.js} +2 -2
- package/amd/{tooltipUtils-3c8a0253.js.map → tooltipUtils-ae57629b.js.map} +1 -1
- package/amd/useBareButton-3f7e0c0c.js +1 -1
- package/amd/useCellNavigation-43a992b6.js +1 -1
- package/amd/useChartContextMenu-59688a67.js +1 -1
- package/amd/{useChartDatatip-cdfc4089.js → useChartDatatip-7beb4b24.js} +2 -2
- package/amd/{useChartDatatip-cdfc4089.js.map → useChartDatatip-7beb4b24.js.map} +1 -1
- package/amd/{useColorScheme-f2a81610.js → useColorScheme-3022ec9a.js} +2 -2
- package/amd/{useColorScheme-f2a81610.js.map → useColorScheme-3022ec9a.js.map} +1 -1
- package/amd/useContextMenu-4bd1c23a.js +1 -1
- package/amd/useCssVars-5b3bc31e.js +2 -0
- package/amd/{useCssVars-d782da3d.js.map → useCssVars-5b3bc31e.js.map} +1 -1
- package/amd/{useCurrentBgColor-4326d3d6.js → useCurrentBgColor-11b82a49.js} +2 -2
- package/amd/{useCurrentBgColor-4326d3d6.js.map → useCurrentBgColor-11b82a49.js.map} +1 -1
- package/amd/useCurrentKey-8e979c7a.js +2 -0
- package/amd/{useCurrentKey-2f1ca19e.js.map → useCurrentKey-8e979c7a.js.map} +1 -1
- package/amd/{useDatatip-36aa820b.js → useDatatip-be0adcf0.js} +2 -2
- package/amd/{useDatatip-36aa820b.js.map → useDatatip-be0adcf0.js.map} +1 -1
- package/amd/{useDensity-bee3cef4.js → useDensity-cb21e58e.js} +2 -2
- package/amd/{useDensity-bee3cef4.js.map → useDensity-cb21e58e.js.map} +1 -1
- package/amd/useDisplayValue-fa0fbc23.js +1 -1
- package/amd/{useExpandCollapse-4478c2eb.js → useExpandCollapse-99ff9bec.js} +2 -2
- package/amd/{useExpandCollapse-4478c2eb.js.map → useExpandCollapse-99ff9bec.js.map} +1 -1
- package/amd/{useFloating-0df4b3d3.js → useFloating-25daefd7.js} +2 -2
- package/amd/{useFloating-0df4b3d3.js.map → useFloating-25daefd7.js.map} +1 -1
- package/amd/{useHiddenTestMethod-2f1d2e7e.js → useHiddenTestMethod-90b5bff5.js} +2 -2
- package/amd/{useHiddenTestMethod-2f1d2e7e.js.map → useHiddenTestMethod-90b5bff5.js.map} +1 -1
- package/amd/useKeyboardEvents-e4599671.js +2 -0
- package/amd/{useKeyboardEvents-a684ba76.js.map → useKeyboardEvents-e4599671.js.map} +1 -1
- package/amd/useLegendContextMenu-acabb503.js +1 -1
- package/amd/useMeterDatatip-934d034d.js +2 -0
- package/amd/{useMeterDatatip-b7dc96a3.js.map → useMeterDatatip-934d034d.js.map} +1 -1
- package/amd/useNavigation-a6a2218f.js +1 -1
- package/amd/{useOutsideClick-9c4ceb18.js → useOutsideClick-1b59c507.js} +2 -2
- package/amd/{useOutsideClick-9c4ceb18.js.map → useOutsideClick-1b59c507.js.map} +1 -1
- package/amd/{useOutsideMousedown-b0021878.js → useOutsideMousedown-ce3f7207.js} +2 -2
- package/amd/{useOutsideMousedown-b0021878.js.map → useOutsideMousedown-ce3f7207.js.map} +1 -1
- package/amd/{usePopupAnimation-9f80595b.js → usePopupAnimation-f8e212f7.js} +2 -2
- package/amd/{usePopupAnimation-9f80595b.js.map → usePopupAnimation-f8e212f7.js.map} +1 -1
- package/amd/usePrefixSuffix-b26030fe.js +2 -0
- package/amd/{usePrefixSuffix-66563417.js.map → usePrefixSuffix-b26030fe.js.map} +1 -1
- package/amd/{useReorderableItem-013ac2e8.js → useReorderableItem-13c24764.js} +2 -2
- package/amd/{useReorderableItem-013ac2e8.js.map → useReorderableItem-13c24764.js.map} +1 -1
- package/amd/{useRovingTabIndexContainer-b11a404b.js → useRovingTabIndexContainer-be2d51cf.js} +2 -2
- package/amd/{useRovingTabIndexContainer-b11a404b.js.map → useRovingTabIndexContainer-be2d51cf.js.map} +1 -1
- package/amd/{useScale-5d246769.js → useScale-fa445112.js} +2 -2
- package/amd/{useScale-5d246769.js.map → useScale-fa445112.js.map} +1 -1
- package/amd/useSelectCommon-f04454d2.js +1 -1
- package/amd/{useSelectDrill-05d4e28f.js → useSelectDrill-3b31318e.js} +2 -2
- package/amd/{useSelectDrill-05d4e28f.js.map → useSelectDrill-3b31318e.js.map} +1 -1
- package/amd/useSelection-7638353f.js +2 -0
- package/amd/{useSelection-bb7d04ee.js.map → useSelection-7638353f.js.map} +1 -1
- package/amd/{useSelection-87a6bea9.js → useSelection-d2a32b37.js} +2 -2
- package/amd/{useSelection-87a6bea9.js.map → useSelection-d2a32b37.js.map} +1 -1
- package/amd/useTabBar-ce36c510.js +1 -1
- package/amd/{useTestId-a2e433c2.js → useTestId-9afc201a.js} +2 -2
- package/amd/{useTestId-a2e433c2.js.map → useTestId-9afc201a.js.map} +1 -1
- package/amd/{useTheme-af7bfac1.js → useTheme-0ee6fb01.js} +2 -2
- package/amd/{useTheme-af7bfac1.js.map → useTheme-0ee6fb01.js.map} +1 -1
- package/amd/useThemeInterpolations-14ffb628.js +2 -0
- package/amd/{useThemeInterpolations-1dff2f9d.js.map → useThemeInterpolations-14ffb628.js.map} +1 -1
- package/amd/useTooltip-75a63697.js +2 -0
- package/amd/{useTooltip-e14d62f1.js.map → useTooltip-75a63697.js.map} +1 -1
- package/amd/{useTooltipControlled-f7e07ed4.js → useTooltipControlled-558b2a13.js} +2 -2
- package/amd/{useTooltipControlled-f7e07ed4.js.map → useTooltipControlled-558b2a13.js.map} +1 -1
- package/amd/{useTooltipOnTruncation-e6d20cc0.js → useTooltipOnTruncation-7c9b6e6b.js} +2 -2
- package/amd/{useTooltipOnTruncation-e6d20cc0.js.map → useTooltipOnTruncation-7c9b6e6b.js.map} +1 -1
- package/amd/{useTranslationBundle-27bf6340.js → useTranslationBundle-8e42d505.js} +2 -2
- package/amd/{useTranslationBundle-27bf6340.js.map → useTranslationBundle-8e42d505.js.map} +1 -1
- package/amd/{useUser-988f7da2.js → useUser-12ec03f1.js} +2 -2
- package/amd/{useUser-988f7da2.js.map → useUser-12ec03f1.js.map} +1 -1
- package/amd/useVisDragModeControls-4fcf2261.js +1 -1
- package/amd/{useVisEvents-3839d74f.js → useVisEvents-e7b8669b.js} +2 -2
- package/amd/{useVisEvents-3839d74f.js.map → useVisEvents-e7b8669b.js.map} +1 -1
- package/amd/utils/PRIVATE_tooltipUtils.js +1 -1
- package/amd/utils/PRIVATE_visTestUtils.js +1 -1
- package/amd/utils/UNSAFE_popupUtils.js +1 -1
- package/amd/{withDirectionIcon-2bb38763.js → withDirectionIcon-170ce869.js} +2 -2
- package/amd/{withDirectionIcon-2bb38763.js.map → withDirectionIcon-170ce869.js.map} +1 -1
- package/amd/withThemeProps-0ef51fd1.js +1 -1
- package/cjs/{NavigationListItem-d63c4cf7.js → NavigationListItem-843e014d.js} +16 -1
- package/cjs/{NavigationListItem-d63c4cf7.js.map → NavigationListItem-843e014d.js.map} +1 -1
- package/cjs/{OverflowTabBarItem-2bfac671.js → OverflowTabBarItem-6c3c9629.js} +2 -2
- package/cjs/{OverflowTabBarItem-2bfac671.js.map → OverflowTabBarItem-6c3c9629.js.map} +1 -1
- package/cjs/{TabBarLinkItem-662d0705.js → TabBarLinkItem-cdff6676.js} +2 -2
- package/cjs/{TabBarLinkItem-662d0705.js.map → TabBarLinkItem-cdff6676.js.map} +1 -1
- package/cjs/TextArea-8608dba1.js +187 -0
- package/cjs/TextArea-8608dba1.js.map +1 -0
- package/cjs/Theme-redwood/theme.css +81 -81
- package/cjs/Theme-stable/theme.css +144 -144
- package/cjs/UNSAFE_InputDatePicker.js +92 -92
- package/cjs/UNSAFE_NavigationList.js +17 -17
- package/cjs/UNSAFE_OverflowTabBar.js +3 -3
- package/cjs/UNSAFE_TabBar.js +3 -3
- package/cjs/UNSAFE_TabBarCommon.js +3 -3
- package/cjs/UNSAFE_TabBarMixed.js +2 -2
- package/cjs/UNSAFE_TextArea.js +106 -216
- package/cjs/UNSAFE_TextArea.js.map +1 -1
- package/cjs/UNSAFE_TextAreaAutosize.js +2 -2
- package/cjs/UNSAFE_TextAreaAutosize.js.map +1 -1
- package/es/CheckboxSet-751d4298.js +49 -0
- package/es/CheckboxSet-751d4298.js.map +1 -0
- package/es/MeterCircleVariants.styles.css +8 -8
- package/es/MeterCircleVariants.styles2.css +8 -8
- package/es/NavigationListItemVariants.styles.css +4 -4
- package/es/NavigationListItemVariants.styles2.css +4 -4
- package/es/TextArea-273e8ce4.js +184 -0
- package/es/TextArea-273e8ce4.js.map +1 -0
- package/es/Theme-redwood/theme.css +600 -600
- package/es/Theme-stable/theme.css +461 -461
- package/es/UNSAFE_CheckboxItem.js +101 -47
- package/es/UNSAFE_CheckboxItem.js.map +1 -1
- package/es/UNSAFE_CheckboxSet.js +10 -44
- package/es/UNSAFE_CheckboxSet.js.map +1 -1
- package/es/UNSAFE_MeterCircle/themes/redwood/MeterCircleTheme.js +1 -1
- package/es/UNSAFE_MeterCircle/themes/redwood/MeterCircleVariants.css.js +1 -1
- package/es/UNSAFE_MeterCircle/themes/stable/MeterCircleTheme.js +1 -1
- package/es/UNSAFE_MeterCircle/themes/stable/MeterCircleVariants.css.js +1 -1
- package/es/UNSAFE_MeterCircle.js +1 -1
- 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_RichCheckboxSet.js +29 -25
- package/es/UNSAFE_RichCheckboxSet.js.map +1 -1
- package/es/UNSAFE_RichSelectionItem.js +172 -29
- package/es/UNSAFE_RichSelectionItem.js.map +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_TextArea.js +104 -219
- package/es/UNSAFE_TextArea.js.map +1 -1
- package/es/UNSAFE_TextAreaAutosize.js +1 -1
- package/package.json +2 -2
- package/amd/Button-bd886c04.js +0 -2
- package/amd/Card-b62c2442.js +0 -2
- package/amd/ColorPicker-8ef0b6e0.js +0 -2
- package/amd/Expander-9efeb845.js +0 -2
- package/amd/Layer-dc3c1ac9.js +0 -2
- package/amd/LiveRegion-4b9317e5.js +0 -2
- package/amd/NavigationListItem-73686e95.js +0 -2
- package/amd/NavigationListLinkItem-87d5ca3d.js +0 -2
- package/amd/RemovableTabBarItem-c7dd457b.js +0 -2
- package/amd/SectionedContent-bae8af88.js +0 -2
- package/amd/SelectionCard-e5665725.js +0 -2
- package/amd/SortControl-6d8e62c0.js +0 -2
- package/amd/TabBar-fa06f492.js +0 -2
- package/amd/TabBarMixed-2d5bc172.js +0 -2
- package/amd/TabBarMixedSeparator-4c6ad368.js +0 -2
- package/amd/index-89934afc.js.map +0 -1
- package/amd/popupUtils-e19b93b5.js +0 -2
- package/amd/useCssVars-d782da3d.js +0 -2
- package/amd/useCurrentKey-2f1ca19e.js +0 -2
- package/amd/useKeyboardEvents-a684ba76.js +0 -2
- package/amd/useMeterDatatip-b7dc96a3.js +0 -2
- package/amd/usePrefixSuffix-66563417.js +0 -2
- package/amd/useSelection-bb7d04ee.js +0 -2
- package/amd/useThemeInterpolations-1dff2f9d.js +0 -2
- package/amd/useTooltip-e14d62f1.js +0 -2
- package/cjs/MaxLengthCounter-39055ba1.js +0 -27
- package/cjs/MaxLengthCounter-39055ba1.js.map +0 -1
- package/es/CheckboxSetContext-1be56556.js +0 -9
- package/es/CheckboxSetContext-1be56556.js.map +0 -1
- package/es/MaxLengthCounter-d622f964.js +0 -25
- package/es/MaxLengthCounter-d622f964.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Expander-
|
|
1
|
+
{"version":3,"file":"Expander-942144c1.js","sources":["../../src/PRIVATE_Expander/Expander.tsx"],"sourcesContent":["import { EmbeddedIconButton } from '#PRIVATE_EmbeddedIconButton';\nimport { ChevronDown } from '#UNSAFE_RedwoodIcons/ChevronDown';\nimport { ChevronRight } from '#UNSAFE_RedwoodIcons/ChevronRight';\nimport { ToggleDetail } from '#UNSAFE_Collection';\nimport { TestIdProps } from '#hooks/UNSAFE_useTestId';\nimport { classNames } from '#utils/UNSAFE_classNames';\n\nexport const ITEM_SELECTOR = 'oj-collection-expander';\n\n/**\n * Props for the Expander component\n */\ntype Props<K> = TestIdProps & {\n /**\n * The key of the item\n */\n itemKey: K;\n /**\n * A boolean to indicate whether the expander is expander or collapsed\n */\n expanded: boolean;\n /**\n * Callback function to invoke when the user expands or collapses the expander.\n */\n onToggle: (detail: ToggleDetail<K>) => void;\n};\n\n/**\n * The Expander component renders expand and collapse icons in collections.\n */\nexport function Expander<K>({ itemKey, expanded, onToggle }: Props<K>) {\n const classes = classNames([ITEM_SELECTOR]);\n\n const actionHandler = () => {\n onToggle({ value: itemKey });\n };\n\n return (\n <span class={classes}>\n <EmbeddedIconButton\n aria-label={expanded ? 'collapsible' : 'expandable'}\n onAction={actionHandler}>\n {expanded ? <ChevronDown size=\"6x\" /> : <ChevronRight size=\"6x\" />}\n </EmbeddedIconButton>\n </span>\n );\n}\n\nexport const isExpander = (elem: HTMLElement) => {\n if (elem.parentElement && elem.parentElement.classList.contains(ITEM_SELECTOR)) {\n return true;\n }\n return false;\n};\n"],"names":["ITEM_SELECTOR","itemKey","expanded","onToggle","classes","classNames","_jsx","class","children","EmbeddedIconButton","onAction","value","ChevronDown","size","jsx","ChevronRight","SvgChevronRight","elem","parentElement","classList","contains"],"mappings":"uLAOa,MAAAA,EAAgB,oCAuBvB,UAAsBC,QAAEA,EAAOC,SAAEA,EAAQC,SAAEA,IAC/C,MAAMC,EAAUC,EAAAA,WAAW,CAACL,IAM5B,OACEM,cAAMC,MAAOH,EACXI,SAAAF,EAAAA,IAACG,EAAAA,mBACa,CAAA,aAAAP,EAAW,cAAgB,aACvCQ,SARgB,KACpBP,EAAS,CAAEQ,MAAOV,GAAU,EAODO,SACtBN,EAAWI,EAAAA,IAACM,EAAAA,gBAAYC,KAAK,OAAUP,EAACQ,IAAAC,EAAYC,iBAACH,KAAK,UAInE,iCAE2BI,MACrBA,EAAKC,gBAAiBD,EAAKC,cAAcC,UAAUC,SAASpB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', './mergeProps-bcfa6a92', './classNames-08d99695', './useTranslationBundle-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', './mergeProps-bcfa6a92', './classNames-08d99695', './useTranslationBundle-8e42d505', './size-0127b66b', './stringUtils-4ffd9d59', './filePickerUtils-e4392bf2', './clientHints-6d361eaa', './usePress-949a0d03', 'preact/hooks', './TabbableModeContext-a9c97640', './useTabbableMode-df433329', './useTestId-9afc201a', './useComponentTheme-5aa41a8f', './useInteractionStyle-15a2bdd0', './UNSAFE_FilePicker/themes/redwood/FilePickerTheme'], (function(e,t,r,s,a,i,n,l,o,d,c,u,p,f,y,h,m){"use strict";const v=({ariaLabel:e,isDisabled:t,translations:r,primaryText:s,secondaryText:a,selectionMode:i})=>e||`${t?"":r.filePicker_addFiles()+". "}${T(s,r)}. ${g(a,r,i)}`,b=(e,t)=>({width:e?i.sizeToCSS(e):void 0,height:t?i.sizeToCSS(t):void 0}),T=(e,t)=>e||t.filePicker_dropzonePrimaryText(),g=(e,t,r)=>{const s="multiple"===r?t.filePicker_dropzoneSecondaryTextMultiple():t.filePicker_dropzoneSecondaryText();return e||s},x=(e,t,r)=>{const s=[],a=[];let i,n;if(e)for(let l=0;l<e.length;l++){i=e[l];const o=i.name;if(n=r.filePicker_unknownFileTypeUploadError(),o){const e=o.split(".");n=e.length>1?"."+e.pop():n}n=i.type?i.type:n,-1===s.indexOf(n)&&-1===a.indexOf(n)&&(k(i,t)?s.push(n):a.push(n))}return{accepted:s,rejected:a}},P=e=>{const t={length:{value:e.length},item:{value(e){return this[e]}}};for(let r=0;r<e.length;r++)t[r]={value:e[r],enumerable:!0};return Object.create(FileList.prototype,t)},D=(e,t)=>"single"!==t||1===e.length,S=(e,t)=>{const r=[];return 1===e.length?r.push({severity:"error",summary:t.filePicker_singleTypeUploadError({fileType:e[0]})}):r.push({severity:"error",summary:t.filePicker_multipleFileTypeUploadError({fileTypes:e.join(t.plural_separator())})}),r},k=(e,t)=>{const r=t;if(!r||0===r.length||!e)return!0;let s;for(let t=0;t<r.length;t++){if(s=n.f(r[t]),!s)return!0;if(s.startsWith(".",0)){if(!e.name||e.name&&e.name.toLowerCase().endsWith(s.toLowerCase()))return!0}else{if(!e.type)return!1;if("image/*"===s){if(e.type.startsWith("image/",0))return!0}else if("video/*"===s){if(e.type.startsWith("video/",0))return!0}else if("audio/*"===s){if(e.type.startsWith("audio/",0))return!0}else if(e.type===s)return!0}}return!1},j=(e,t,r)=>{let s;const a=t?new Promise((e=>{s=e})):null;return r?.({messages:e,until:a}),s},H=(e,t)=>{const r=P(e);t?.({files:r})},M=(e,t,r)=>{const{callback:s,validation:a}=w(e),{pressProps:i}=d.usePress(s);return{validation:a,dragAndDropProps:C(e.accept,e.selectionMode,j,H,t,e.translations,e.onCommit,e.onReject,r),pressProps:i}},w=e=>{const t=t=>{if(t.length>0){const r=x(t,e.accept,e.translations).rejected;r.length>0?j(S(r,e.translations),!1,e.onReject):H(t,e.onCommit)}};return{callback:r=>{("click"===r.type||"keyup"===r.type&&"Enter"===r.code)&&(r.preventDefault(),l.pickFiles(t,{accept:e.accept,selectionMode:e.selectionMode??"multiple",capture:e.capture??"none"}))},validation:t}},C=(e,t,r,s,a,i,n,l,d)=>{const u=c.useRef(!1),p=c.useRef(!1),f=c.useRef(),y=(e,t=!1)=>{u.current&&(e.preventDefault(),e.stopPropagation(),a.current?.contains(e.relatedTarget)||(u.current=!1,d?.("NA"),p.current||t||f.current?.()))};return{onDragEnter:e=>{e.preventDefault(),e.stopPropagation()},onDragOver:s=>{if(s.preventDefault(),s.stopPropagation(),u.current)return;const a=o.getClientHints().browser;if(u.current=!0,p.current=!0,"safari"!==a){if(!s.dataTransfer)return;const a=P(s.dataTransfer.items);let n=[];const o=D(a,t),c=x(a,e,i);o&&0===c.rejected.length?d?.("valid"):(p.current=!1,o?n=S(c.rejected,i):n.push({severity:"error",summary:i.filePicker_singleFileUploadError()}),d?.("invalid"),f.current=r(n,!0,l))}else d?.("valid")},onDragLeave:y,onDrop:a=>{if(u.current){if(a.preventDefault(),a.stopPropagation(),!a.dataTransfer)return void(u.current=!1);const o=P(a.dataTransfer.files);let d=!1;if(p.current){let a=[];if(D(o,t)){const t=x(o,e,i);t.rejected.length>0&&(a=S(t.rejected,i),d=!0)}else a.push({severity:"error",summary:i.filePicker_singleFileUploadError()});a.length>0&&(p.current=!1,r(a,!1,l)),p.current&&s(o,n)}y(a,d)}}}},F=({isDisabled:e,primaryText:r,secondaryText:s,translations:a,selectionMode:i})=>{const{styles:{disabledPrimaryTextStyle:n,primaryTextStyle:l,disabledSecondaryTextStyle:o,secondaryTextStyle:d}}=y.useComponentTheme(m.FilePickerRedwoodTheme);return t.jsxs(t.Fragment,{children:[t.jsx("div",{class:e?n:l,children:T(r,a)}),t.jsx("div",{class:e?o:d,children:g(s,a,i)})]})};const R=e=>{const a=f.useTestId(e.testId),{interactionProps:i,applyActiveStyle:n,applyHoverStyle:l,applyPseudoHoverStyle:o}=h.useInteractionStyle({isDisabled:!1}),{classes:d,styles:{maxWidth:u,inner:T,activeStyle:g,innerNeedsEventsHoverStyle:x,innerPseudoHoverStyle:P,invalidDrop:D,validDrop:S}}=y.useComponentTheme(m.FilePickerRedwoodTheme,{hoveredState:l?"isHover":void 0,pseudoHoveredState:o?"isPseudoHover":void 0}),k=[n?g:"",l?x:"",o?P:""],[j,H]=c.useState("NA"),w="valid"===j?S:"invalid"===j?D:void 0,C=c.useRef(null),{validation:R,dragAndDropProps:I,pressProps:_}=M(e,C,H),L=r.mergeProps(_,i);E(I,R,e.testHandlersRef||null);const N=s.classNames([d,void 0===e.width&&u]),{isTabbable:U}=p.useTabbableMode(),{primaryText:W,secondaryText:A,translations:z,selectionMode:O,width:$,height:B}=e;return t.jsx("div",{...a,...L,class:N,tabIndex:U?0:-1,role:"button","aria-label":v({ariaLabel:e["aria-label"],isDisabled:!1,translations:z,primaryText:W,secondaryText:A,selectionMode:O}),ref:C,style:b($,B),children:t.jsx("div",{class:s.classNames([T,w,...k]),...I,children:t.jsx(F,{...e,isDisabled:!1})})})},I=({children:e,primaryText:r,secondaryText:a,translations:i,width:n,height:l,testId:o,...d})=>{const c=f.useTestId(o),{classes:u,styles:{maxWidth:p,inner:h,noChildrenMargin:T}}=y.useComponentTheme(m.FilePickerRedwoodTheme,{disabledState:"isDisabled"});return t.jsx("div",{class:s.classNames([u,h,T,void 0===n&&p]),role:"button","aria-label":v({ariaLabel:d["aria-label"],isDisabled:!0,translations:i,primaryText:r,secondaryText:a}),"aria-hidden":"true",...c,style:b(n,l),children:e||t.jsx(F,{secondaryText:a,primaryText:r,...d,isDisabled:!0,translations:i})})},_=e=>{const a=f.useTestId(e.testId),{interactionProps:i,applyHoverStyle:n,applyPseudoHoverStyle:l}=h.useInteractionStyle({isDisabled:!1}),{classes:o,styles:{maxWidth:d,noChildrenMargin:u}}=y.useComponentTheme(m.FilePickerRedwoodTheme,{hoveredState:n?"isHover":void 0,pseudoHoveredState:l?"isPseudoHover":void 0}),T=c.useRef(null),{validation:g,dragAndDropProps:x,pressProps:P}=M(e,T),D=r.mergeProps(P,x,i);E(x,g,e.testHandlersRef||null);const S=s.classNames([o,u,void 0===e.width&&d]),{translations:k,selectionMode:j}=e,{isTabbable:H}=p.useTabbableMode();return t.jsx("div",{class:s.classNames([S]),tabIndex:H?void 0:-1,role:"button","aria-label":v({ariaLabel:e["aria-label"],isDisabled:!1,translations:k,selectionMode:j}),ref:T,style:b(e.width,e.height),...a,...D,children:e.children})},E=(e,t,r)=>{c.useImperativeHandle(r,(()=>({onDragEnter:e.onDragEnter,onDragOver:e.onDragOver,onDrop:e.onDrop,onDragLeave:e.onDragLeave,onClickSelected:t})))};e.FilePicker=function({capture:e="none",isDisabled:r=!1,selectionMode:s="multiple",children:i,...n}){const l=n.__testHandlerSymbol,o={capture:e,selectionMode:s,translations:a.useTranslationBundle("@oracle/oraclejet-preact"),...n};return r?t.jsx(I,{...o,children:i}):i?t.jsx(_,{testHandlersRef:l,...o,children:i}):t.jsx(R,{testHandlersRef:l,...o})}}));
|
|
2
2
|
//# sourceMappingURL=FilePicker-e5a20eaa.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', 'preact/hooks', './mergeProps-bcfa6a92', './collectionUtils-26e6c87c', './LoadMoreCollection-3ac9e69e', './classNames-08d99695', './TabbableModeContext-a9c97640', './useId-c9578d26', './View-
|
|
2
|
-
//# sourceMappingURL=FlatTreeView-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', 'preact/hooks', './mergeProps-bcfa6a92', './collectionUtils-26e6c87c', './LoadMoreCollection-3ac9e69e', './classNames-08d99695', './TabbableModeContext-a9c97640', './useId-c9578d26', './View-ab4d3a33', './UNSAFE_FlatTreeView/themes/TreeViewStyles.css', './UNSAFE_FlatTreeView/themes/TreeViewContract.css', './Flex-07d2aa5b', './Skeleton-a7e166a0', './useHover-8b8a1496', './clientHints-6d361eaa', './Expander-942144c1', './UNSAFE_FlatTreeView/themes/redwood/TreeViewTheme.css', './useSelection-d2a32b37', './useAdditiveSelection-9135c06c', './ReorderableContext-6d10a1b7', './keys-4755c121', './LayerHost-daf96749', 'preact/compat', './useExpandCollapse-99ff9bec', './useComponentTheme-5aa41a8f', './useUser-12ec03f1', './useNavigation-a6a2218f', './Selector-470f114d', './LiveRegion-ef77cf92', './HiddenAccessible-037ef42d', './useTranslationBundle-8e42d505'], (function(e,t,n,a,r,l,i,s,o,d,c,u,x,y,g,m,p,f,v,b,h,E,T,S,C,k,j,w,I,M,L,R){"use strict";function K({children:e,indentation:a=0}){const[r,l]=n.useState(!1);return n.useEffect((()=>{setTimeout((()=>{l(!0)}),50)}),[]),r&&e?t.jsx("div",{role:"presentation",children:t.jsx(d.View,{paddingInlineStart:a,children:[...Array(1)].map(((t,n)=>e(n)))})}):null}function A({indentation:e=0,isLeaf:n=!1}){return t.jsx(d.View,{paddingInlineStart:O(e,!n||void 0),children:t.jsx(d.View,{padding:[0,"4px"],children:t.jsxs(x.Flex,{height:"9x",align:"center",gap:"2x",children:[!n&&t.jsx(y.Skeleton,{width:"6x",height:"6x",borderRadius:"4px"}),t.jsx(y.Skeleton,{height:"5x",borderRadius:"4px"})]})})})}function F(){return t.jsxs(t.Fragment,{children:[t.jsx(A,{}),t.jsx(A,{indentation:1}),t.jsx(A,{indentation:2,isLeaf:!0})]})}function V({itemKey:e,depth:a,context:r,children:l,isExpanded:u,onToggle:y,selected:m,isSelectable:f,isCheckboxless:v,isTabbable:b,isLoading:h,isFocusRingVisible:E}){const T=n.useRef(null),S=O(a,u),C=O(a+1,u),{isHover:k,hoverProps:j}=g.useHover(),w=i.classNames([c.styles.treeItemStyles.base,E&&c.styles.treeItemStyles.focused,!0===m&&c.styles.treeItemStyles.selected,!0===m&&v&&c.styles.treeItemStyles.checkboxlessSelected,f&&!m&&k&&c.styles.treeItemStyles.hovered]);return t.jsxs(t.Fragment,{children:[t.jsx("div",{ref:T,id:o.useId(),tabIndex:_()?-1:void 0,"data-oj-key":e,class:w,role:"treeitem","aria-level":a+1,"aria-selected":m?"true":"false",...void 0!==u&&{"aria-expanded":u},..."number"==typeof e&&{"data-oj-key-type":"number"},...j,children:t.jsxs(t.Fragment,{children:[!0===m&&k&&t.jsx("div",{class:c.styles.selectedHoveredOverlay}),t.jsx(s.TabbableModeContext.Provider,{value:{isTabbable:b},children:t.jsx(d.View,{paddingInlineStart:S,children:t.jsxs(x.Flex,{align:"center",children:[void 0!==u&&t.jsx(p.Expander,{itemKey:e,expanded:u,onToggle:y}),l(r)]})})})]})}),h?t.jsx(K,{indentation:C,children:()=>t.jsx(F,{})}):null]})}const _=()=>{const{platform:e}=m.getClientHints();return"ios"===e||"android"===e},O=(e,t)=>{const n=void 0===t?"40px":"0px";return`calc(${Math.max(0,e)} * ${u.treeViewVars.indentWidth} + ${n})`};function N({children:e,minimumCount:a=1,onSkeletonVisible:r}){const[l,s]=n.useState(!1);n.useEffect((()=>{setTimeout((()=>{s(!0),r?.()}),50)}),[r]);const o=i.classNames([c.styles.skeletonStyles.container]);return l&&e?t.jsx("div",{class:o,role:"presentation",children:[...Array(a)].map(((t,n)=>e(n)))}):null}function P({data:e,children:n,selectionMode:a,onToggle:r=()=>{},viewportConfig:i,hasMore:s=!1,onLoadMore:o=()=>{},loadMoreIndicator:d=H,updateContext:c}){return t.jsx(t.Fragment,{children:null===e?null:t.jsx(l.LoadMoreCollection,{data:e,viewportConfig:i,hasMore:s,onLoadMore:o,loadMoreIndicator:d,children:e=>{const l=e.data.metadata.key,i={index:e.index,data:e.data.data,metadata:{key:l}};c&&c(i);const s=e.data.metadata.expanded;return t.jsx(V,{itemKey:i.metadata.key,context:i,depth:e.data.metadata.treeDepth,isExpanded:"ongoing"===s||s,onToggle:r,isSelectable:"none"!==a,isCheckboxless:"single"===a,selected:e.data.metadata.selected,isLoading:"ongoing"===s,isTabbable:!1,isFocusRingVisible:e.data.metadata.hasFocus,children:n},i.metadata.key)}})})}const H=t.jsx("div",{class:l.LOADMORE_STYLE_CLASS,children:t.jsx(N,{minimumCount:1,children:()=>t.jsx(F,{})})});const U=(e,t,n,a)=>{if(e&&null!==t){const r=Array.from(e.querySelectorAll(a)),l=r.findIndex((e=>e.dataset.ojKey==t));for(let e=l;e>=0;e--){const t=r[e].getAttribute("aria-level");if(null!==t&&Number(t)==n-1)return r[e]}}return null};const D=e=>t.jsx(N,{minimumCount:8,onSkeletonVisible:e,children:()=>t.jsx(F,{})}),B=e=>e.id,$=(e,t)=>{const n=t.map((e=>e.metadata.key)),a=n.indexOf(e.value.start),r=n.indexOf(e.value.end),l=Math.min(a,r),i=Math.max(a,r);return-1===l?{offset:0,count:-1}:n.slice(l,i+1)};e.FlatTreeView=function({"aria-label":e,"aria-labelledby":l,"aria-describedby":i,data:s,selectionMode:d="none",selectedKeys:c={all:!1,keys:new Set},onSelectionChange:u,onToggle:x,viewportConfig:y,...g}){const m=n.useRef(null),[p,h]=n.useState(),{collection_loading:T,collection_loaded:S}=R.useTranslationBundle("@oracle/oraclejet-preact"),K=o.useId(),A=n.useCallback((e=>{if(m.current){const t=r.findElementByKey(m.current,e,r.ITEM_SELECTOR);return"true"===t?.getAttribute("aria-expanded")}return!1}),[]),{treeNavigationProps:F,currentKey:V,showFocusRing:O}=function(e,t,l,i){const{direction:s}=j.useUser(),o={ArrowUp:e=>r.getPrevNextKey(t.current,e,!0,r.ITEM_SELECTOR),ArrowDown:e=>r.getPrevNextKey(t.current,e,!1,r.ITEM_SELECTOR)},{navigationProps:d,currentKey:c,onCurrentKeyChange:u,showFocusRing:x}=w.useNavigation(e,t,i,o,void 0,void 0,void 0,void 0,!0,!1,!0,!1),y=n.useCallback((e=>"tree"===e.getAttribute("role")?void 0===c?null:c:r.keyExtractor(e,r.ITEM_SELECTOR)),[c,r.keyExtractor]),g=n.useCallback((e=>{if("ArrowLeft"===e.key||"ArrowRight"===e.key){const n="rtl"===s,a="ArrowLeft"===e.key&&!n,i=y(e.target);if(i){const e=l(i);if(a&&!e&&t.current){const e=r.findElementByKey(t.current,i,r.ITEM_SELECTOR);if(e){const n=e.getAttribute("aria-level"),a=null!==n&&U(t.current,i,Number(n),r.ITEM_SELECTOR),l=a&&y(a);E.isKeyDefined(l)&&u?.({value:l})}}else if(!a&&e){const e=r.getPrevNextKey(t.current,i,!1,r.ITEM_SELECTOR)();E.isKeyDefined(e)&&u?.({value:e})}}}}),[s,l,u,y]);return{treeNavigationProps:a.mergeProps(d,{onKeyUp:g}),currentKey:c,showFocusRing:x}}(s,m,A,B),N=n.useMemo((()=>s?.map((e=>{const t=e.metadata.key,n={...e};return n.metadata.selected=E.containsKey(c,t),n.metadata.hasFocus=V===t&&O,n}))||[]),[s,c,V,O]),H=C.useExpandCollapse((e=>"tree"===e.getAttribute("role")?void 0===V?null:V:r.keyExtractor(e,r.ITEM_SELECTOR)),A,x,!0),q=n.useRef(),z=n.useCallback((e=>{u&&(!1===e.value.all&&e.value.keys.size>0&&(q.current=Array.from(e.value.keys.values()).pop()),u(e))}),[q,u]),W=n.useCallback((e=>{if(s&&u){const t=$(e,s);if(Array.isArray(t))if("shiftSpace"===e.eventType?q.current=e.value.start:q.current=e.value.end,"multipleToggle"===d){const e=E.addKeys(c,t);u({value:e,target:null})}else u({value:{all:!1,keys:new Set(t)},target:null})}}),[s,c,u]),{selectionProps:Y}=v.useSelection((e=>e===m.current?void 0===V?null:V:r.keyExtractor(e,r.ITEM_SELECTOR)),c,"multipleToggle"===d?"none":d,!1,"replace",z,q.current,V,((e,t)=>r.getPrevNextKey(m.current,e,t,r.ITEM_SELECTOR)),void 0,(e=>{if(m.current){const t=r.findElementByKey(m.current,e,r.ITEM_SELECTOR);t&&t.scrollIntoView({block:"nearest"})}}),W),{eventProps:G}=b.useAdditiveSelection((e=>e===m.current?void 0===V?null:V:r.keyExtractor(e,r.ITEM_SELECTOR)),c,"multipleToggle"===d?"multiple":"none",!1,(e=>s?s.findIndex((t=>t.metadata.key===e)):-1),((e,t)=>{if(s){return s.map((e=>e.metadata.key)).slice(e,t)}return[]}),((e,t)=>r.getPrevNextKey(m.current,e,t,r.ITEM_SELECTOR)),V,z,W),J=n.useCallback((e=>{"multiple"!==d&&"multipleToggle"!==d||u&&(e.metaKey||e.ctrlKey)&&"a"===e.key&&(e.preventDefault(),u({value:{all:!0,deletedKeys:new Set},target:e.target}))}),[u,d]),{classes:Q}=k.useComponentTheme(f.TreeViewRedwoodTheme);y=r.getViewportConfig(m,y);const X=n.useCallback((e=>{const n=e.metadata.key;e.selector="none"===d||"single"===d?void 0:e=>t.jsx("div",{"aria-hidden":!_()||void 0,children:t.jsx(I.Selector,{"aria-label":_()?e:void 0,rowKey:n,selectedKeys:c,onChange:u})})}),[d,c,u]),Z=n.useCallback((()=>{h(T())}),[T]);return t.jsxs(t.Fragment,{children:[t.jsx("div",{"aria-label":e,"aria-labelledby":l,"aria-describedby":null==s?i?[...new Set(i.split(/\s+/).concat(K))].join(" "):K:i,ref:m,role:"tree","aria-multiselectable":"multiple"===d,tabIndex:0,class:Q,...a.mergeProps(F,Y,G,H,{onKeyDown:J}),children:null==s?D(Z):t.jsx(P,{data:N,selectionMode:d,onToggle:x,viewportConfig:y,updateContext:X,...g})}),t.jsx(L.HiddenAccessible,{id:K,children:T()}),t.jsx(M.LiveRegion,{children:null==s?p:p===T()?S():""})]})}}));
|
|
2
|
+
//# sourceMappingURL=FlatTreeView-dde3e071.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlatTreeView-6545afce.js","sources":["../../src/UNSAFE_FlatTreeView/NodeSkeletonContainer.tsx","../../src/UNSAFE_FlatTreeView/TreeItemSkeletons.tsx","../../src/UNSAFE_FlatTreeView/TreeItem.tsx","../../src/UNSAFE_FlatTreeView/SkeletonContainer.tsx","../../src/UNSAFE_FlatTreeView/LoadMoreTreeCollection.tsx","../../src/UNSAFE_FlatTreeView/useTreeNavigation.ts","../../src/UNSAFE_FlatTreeView/FlatTreeView.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { Size } from '#utils/UNSAFE_size';\nimport { View } from '#UNSAFE_View';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n indentation?: Size;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * Represents the skeleton for a tree item in expanding state\n **/\nexport function NodeSkeletonContainer({ children, indentation = 0 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n return isVisible && children ? (\n <div role=\"presentation\">\n <View paddingInlineStart={indentation as Size}>\n {[...Array(1)].map((_element, index) => children(index))}\n </View>\n </div>\n ) : null;\n}\n","import { calcIndentation } from './TreeItem';\nimport { View } from '#UNSAFE_View';\nimport { Skeleton } from '#UNSAFE_Skeleton';\nimport { Flex } from '#UNSAFE_Flex';\nimport { Size } from '#utils/UNSAFE_size';\n\ntype Props = {\n indentation?: number;\n isLeaf?: boolean;\n};\n\nfunction TreeItemSkeleton({ indentation = 0, isLeaf = false }: Props) {\n return (\n <View paddingInlineStart={calcIndentation(indentation, isLeaf ? undefined : true) as Size}>\n <View padding={[0, '4px']}>\n <Flex height=\"9x\" align=\"center\" gap=\"2x\">\n {!isLeaf && <Skeleton width=\"6x\" height=\"6x\" borderRadius=\"4px\" />}\n <Skeleton height=\"5x\" borderRadius=\"4px\" />\n </Flex>\n </View>\n </View>\n );\n}\n\nexport function TreeItemSkeletons() {\n return (\n <>\n <TreeItemSkeleton />\n <TreeItemSkeleton indentation={1} />\n <TreeItemSkeleton indentation={2} isLeaf={true} />\n </>\n );\n}\n","import { ComponentChildren } from 'preact';\nimport { useRef } from 'preact/hooks';\nimport { Size } from '#utils/UNSAFE_size';\nimport { classNames } from '#utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '#hooks/UNSAFE_useTabbableMode';\nimport { ToggleDetail, ListItemRendererContext } from '#UNSAFE_Collection';\nimport { View } from '#UNSAFE_View';\nimport { styles } from './themes/TreeViewStyles.css';\nimport { treeViewVars as cssVars } from './themes/TreeViewContract.css';\nimport { Expander } from '#PRIVATE_Expander';\nimport { Flex } from '#UNSAFE_Flex';\nimport { NodeSkeletonContainer } from './NodeSkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useHover } from '#hooks/UNSAFE_useHover';\nimport { getClientHints } from '#utils/PRIVATE_clientHints';\n\ntype Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n itemKey: K;\n depth: number;\n context: ListItemRendererContext<K, D>;\n isExpanded: boolean | undefined;\n onToggle: (detail: ToggleDetail<K>) => void;\n selected: boolean | 'partial';\n isSelectable: boolean;\n isCheckboxless: boolean;\n isTabbable: boolean;\n isLoading?: boolean;\n isFocusRingVisible: boolean;\n};\n\nexport function TreeItem<K extends string | number, D>({\n itemKey,\n depth,\n context,\n children,\n isExpanded,\n onToggle,\n selected,\n isSelectable,\n isCheckboxless,\n isTabbable,\n isLoading,\n isFocusRingVisible\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const indentation = calcIndentation(depth, isExpanded);\n const skeletonIndentation = calcIndentation(depth + 1, isExpanded);\n\n const { isHover, hoverProps } = useHover();\n\n const classes = classNames([\n styles.treeItemStyles.base,\n isFocusRingVisible && styles.treeItemStyles.focused,\n selected === true && styles.treeItemStyles.selected,\n selected === true && isCheckboxless && styles.treeItemStyles.checkboxlessSelected,\n isSelectable && !selected && isHover && styles.treeItemStyles.hovered\n ]);\n\n return (\n <>\n <div\n ref={rootRef}\n id={useId()}\n tabIndex={isMobile() ? -1 : undefined}\n data-oj-key={itemKey}\n class={classes}\n role=\"treeitem\"\n aria-level={depth + 1}\n aria-selected={selected ? 'true' : 'false'}\n {...(isExpanded !== undefined && { 'aria-expanded': isExpanded })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...hoverProps}>\n <>\n {selected === true && isHover && <div class={styles.selectedHoveredOverlay}></div>}\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <View paddingInlineStart={indentation as Size}>\n <Flex align=\"center\">\n {isExpanded !== undefined && (\n <Expander itemKey={itemKey} expanded={isExpanded} onToggle={onToggle} />\n )}\n {children(context)}\n </Flex>\n </View>\n </TabbableModeContext.Provider>\n </>\n </div>\n {isLoading ? (\n <NodeSkeletonContainer indentation={skeletonIndentation as Size}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </NodeSkeletonContainer>\n ) : null}\n </>\n );\n}\n\nexport const isMobile = () => {\n const { platform } = getClientHints();\n return platform === 'ios' || platform === 'android';\n};\n\nexport const calcIndentation = (depth: number, isExpanded?: boolean) => {\n const expanderPlaceholder = isExpanded === undefined ? '40px' : '0px';\n return `calc(${Math.max(0, depth)} * ${cssVars.indentWidth} + ${expanderPlaceholder})`;\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { styles } from './themes/TreeViewStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n /**\n * Callback when skeleton do become visible, handler can use this\n * to update its live region.\n */\n onSkeletonVisible?: () => void;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1, onSkeletonVisible }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n onSkeletonVisible?.();\n }, timerValue);\n }, [onSkeletonVisible]);\n\n const containerClasses = classNames([styles.skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\n}\n","import { ItemContext } from '#UNSAFE_Collection';\nimport { LoadMoreCollection } from '#PRIVATE_LoadMoreCollection';\nimport { TreeItem } from './TreeItem';\nimport { InternalTreeNode, LoadMoreTreeCollectionProps as Props } from './TreeView.types';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { LOADMORE_STYLE_CLASS } from '#PRIVATE_LoadMoreCollection';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/TreeViewTheme.css';\n\n/**\n * Component that receives the flattened data and renders the hierarchy betweens items based on the shaped metadata.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n * This is an internal component that is used by FlatTreeView.\n */\nexport function LoadMoreTreeCollection<K extends string | number, D>({\n data,\n children,\n selectionMode,\n onToggle = () => {},\n viewportConfig,\n hasMore = false,\n onLoadMore = () => {},\n loadMoreIndicator = defaultLoadMoreIndicator,\n updateContext\n}: Props<K, D>) {\n const createTreeItem = (context: ItemContext<InternalTreeNode<K, D>>) => {\n const key = context.data.metadata.key;\n const treeItemContext = {\n index: context.index,\n data: context.data.data,\n metadata: { key }\n };\n // allow container to inject additional things to context\n if (updateContext) {\n updateContext(treeItemContext);\n }\n const expanded = context.data.metadata.expanded;\n return (\n <TreeItem\n key={treeItemContext.metadata.key}\n itemKey={treeItemContext.metadata.key}\n context={treeItemContext}\n depth={context.data.metadata.treeDepth}\n isExpanded={expanded === 'ongoing' ? true : expanded}\n onToggle={onToggle}\n isSelectable={selectionMode !== 'none'}\n isCheckboxless={selectionMode === 'single'} // TODO: need to update when checkboxless multiple is added\n selected={context.data.metadata.selected}\n isLoading={expanded === 'ongoing'}\n isTabbable={false}\n isFocusRingVisible={context.data.metadata.hasFocus}>\n {children}\n </TreeItem>\n );\n };\n\n return (\n <>\n {data === null ? null : (\n <LoadMoreCollection\n data={data}\n viewportConfig={viewportConfig}\n hasMore={hasMore}\n onLoadMore={onLoadMore}\n loadMoreIndicator={loadMoreIndicator}>\n {createTreeItem}\n </LoadMoreCollection>\n )}\n </>\n );\n}\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={1}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </SkeletonContainer>\n </div>\n);\n","import { RefObject } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useUser } from '#hooks/UNSAFE_useUser';\nimport {\n findElementByKey,\n keyExtractor,\n getPrevNextKey,\n ITEM_SELECTOR\n} from '#utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '#utils/UNSAFE_keys';\nimport { useNavigation } from '#hooks/PRIVATE_useListCommon';\n\nexport function useTreeNavigation<K extends string | number>(\n data: any | null,\n rootRef: RefObject<HTMLDivElement>,\n isExpanded: (key: K) => boolean,\n idExtractor: (elem: Element) => string\n) {\n const { direction } = useUser();\n\n const arrowKeyAndHandlers = {\n ArrowUp: (key?: K) => getPrevNextKey(rootRef.current, key, true, ITEM_SELECTOR),\n ArrowDown: (key?: K) => getPrevNextKey(rootRef.current, key, false, ITEM_SELECTOR)\n };\n\n const { navigationProps, currentKey, onCurrentKeyChange, showFocusRing } = useNavigation(\n data,\n rootRef,\n idExtractor,\n arrowKeyAndHandlers,\n undefined, // currentItemOverride,\n undefined, //onPersistCurrentItem,\n undefined,\n undefined,\n true, // should always allow shift key\n false, // TODO: update allowTabbableMode when F2 mode is added\n true,\n false\n );\n\n const itemKeyExtractor = useCallback(\n (element: HTMLElement) => {\n if (element.getAttribute('role') === 'tree') {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n [currentKey, keyExtractor]\n );\n\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {\n const isRtl = direction === 'rtl';\n const isLeftArrow = event.key === 'ArrowLeft' && !isRtl;\n const itemKey = itemKeyExtractor(event.target as HTMLElement);\n if (itemKey) {\n const contains = isExpanded(itemKey);\n // arrow left on a collapsed node, go to its parent\n if (isLeftArrow && !contains && rootRef.current) {\n const item = findElementByKey(rootRef.current, itemKey, ITEM_SELECTOR);\n if (item) {\n const treeDepth = item.getAttribute('aria-level');\n const parent =\n treeDepth !== null &&\n findParentElementByKey(rootRef.current, itemKey, Number(treeDepth), ITEM_SELECTOR);\n const newKey = parent && itemKeyExtractor(parent as HTMLElement);\n if (isKeyDefined(newKey)) {\n onCurrentKeyChange?.({ value: newKey as K });\n }\n }\n } else if (!isLeftArrow && contains) {\n // arrow right on an expanded node, go to its first child\n const newKey = getPrevNextKey(rootRef.current, itemKey, false, ITEM_SELECTOR)();\n if (isKeyDefined(newKey)) {\n onCurrentKeyChange?.({ value: newKey as K });\n }\n }\n }\n }\n },\n [direction, isExpanded, onCurrentKeyChange, itemKeyExtractor]\n );\n\n const treeNavigationProps = mergeProps(navigationProps, { onKeyUp });\n return { treeNavigationProps, currentKey, showFocusRing };\n}\n\nconst findParentElementByKey = <K extends string | number>(\n root: HTMLElement | null,\n key: K | null,\n treeDepth: number,\n itemSelector: string\n) => {\n if (root && key !== null) {\n const items = Array.from(root.querySelectorAll(itemSelector));\n const index = items.findIndex((i) => (i as HTMLElement).dataset['ojKey'] == key);\n for (let i = index; i >= 0; i--) {\n const level = items[i].getAttribute('aria-level');\n if (level !== null && Number(level) == treeDepth - 1) {\n return items[i];\n }\n }\n }\n return null;\n};\n","import { useMemo, useRef, useCallback, useState } from 'preact/hooks';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { SelectionDetail, ListItemRendererContext } from '#UNSAFE_Collection';\nimport { getViewportConfig } from '#utils/PRIVATE_collectionUtils';\nimport { FlattenedTreeNode, InternalTreeNode, FlatTreeViewProps as Props } from './TreeView.types';\nimport { LoadMoreTreeCollection } from './LoadMoreTreeCollection';\nimport {\n useSelection,\n useAdditiveSelection,\n SelectionRangeDetail\n} from '#hooks/PRIVATE_useSelection';\nimport { useExpandCollapse } from '#hooks/PRIVATE_useListCommon';\nimport {\n keyExtractor,\n getPrevNextKey,\n findElementByKey,\n ITEM_SELECTOR\n} from '#utils/PRIVATE_collectionUtils';\nimport { addKeys, containsKey } from '#utils/UNSAFE_keys';\nimport { useComponentTheme } from '#hooks/UNSAFE_useComponentTheme';\nimport { TreeViewRedwoodTheme } from './themes/redwood/TreeViewTheme.css';\nimport { useTreeNavigation } from './useTreeNavigation';\nimport { Selector } from '#UNSAFE_Selector';\nimport { isMobile } from './TreeItem';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { LiveRegion } from '#UNSAFE_LiveRegion';\nimport { HiddenAccessible } from '#UNSAFE_HiddenAccessible';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '#resources/nls/bundle';\n\n/**\n * A FlatTreeView displays flattened data as a tree with highly interactive features.\n */\nexport function FlatTreeView<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n data,\n selectionMode = 'none',\n selectedKeys = { all: false, keys: new Set() },\n onSelectionChange,\n onToggle,\n viewportConfig,\n ...rest\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const [liveRegion, setLiveRegion] = useState<string>();\n const { collection_loading, collection_loaded } = useTranslationBundle<BundleType>(\n '@oracle/oraclejet-preact'\n );\n const loadingDescId = useId();\n\n const isExpanded = useCallback((key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n return elem?.getAttribute('aria-expanded') === 'true';\n }\n return false;\n }, []);\n\n const { treeNavigationProps, currentKey, showFocusRing } = useTreeNavigation(\n data,\n rootRef,\n isExpanded,\n idExtractor\n );\n\n const items: InternalTreeNode<K, D>[] = useMemo(\n () =>\n data?.map((value: FlattenedTreeNode<K, D>) => {\n const itemKey = value.metadata.key;\n const newValue = { ...value } as InternalTreeNode<K, D>;\n newValue.metadata.selected = containsKey(selectedKeys, itemKey);\n newValue.metadata.hasFocus = currentKey === itemKey && showFocusRing;\n return newValue;\n }) || [],\n [data, selectedKeys, currentKey, showFocusRing]\n );\n\n const expandCollapseProps = useExpandCollapse(\n (element: HTMLElement) => {\n if (element.getAttribute('role') === 'tree') {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n isExpanded,\n onToggle,\n true\n );\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n if (selectionMode === 'multipleToggle') {\n const keys = addKeys(selectedKeys, value);\n onSelectionChange({ value: keys, target: null });\n } else {\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n }\n }\n }\n },\n [data, selectedKeys, onSelectionChange]\n );\n\n // single or multiple selection mode\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 === 'multipleToggle' ? 'none' : selectionMode,\n false,\n 'replace',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n elem.scrollIntoView({ block: 'nearest' });\n }\n }\n },\n handleSelectionRangeChange\n );\n\n // multipleToggle selection mode\n const { eventProps: multipleToggleSelectionProps } = useAdditiveSelection(\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 === 'multipleToggle' ? 'multiple' : 'none',\n false,\n (key: K) => {\n if (data) {\n return data.findIndex((value: FlattenedTreeNode<K, D>) => value.metadata.key === key);\n }\n return -1;\n },\n (startIndex: number, endIndex: number) => {\n if (data) {\n const keys = data.map((value: FlattenedTreeNode<K, D>) => value.metadata.key);\n return keys.slice(startIndex, endIndex);\n }\n return [];\n },\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n currentKey,\n handleSelectionChange,\n handleSelectionRangeChange\n );\n\n //Note: onKeyUp doesn't work with the cmd key\n const selectAllWithKeyboard = useCallback(\n (event: KeyboardEvent) => {\n if (selectionMode === 'multiple' || selectionMode === 'multipleToggle') {\n if (onSelectionChange && (event.metaKey || event.ctrlKey) && event.key === 'a') {\n event.preventDefault();\n onSelectionChange({\n value: { all: true, deletedKeys: new Set() },\n target: event.target\n });\n }\n }\n },\n [onSelectionChange, selectionMode]\n );\n\n const { classes } = useComponentTheme(TreeViewRedwoodTheme);\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const updateContextCallback = useCallback(\n (context: ListItemRendererContext<K, D>) => {\n const key = context.metadata.key;\n context.selector =\n selectionMode === 'none' || selectionMode === 'single'\n ? undefined\n : (ariaLabel?: string) => (\n <div aria-hidden={isMobile() ? undefined : true}>\n <Selector\n aria-label={isMobile() ? ariaLabel : undefined}\n rowKey={key}\n selectedKeys={selectedKeys}\n onChange={onSelectionChange}\n />\n </div>\n );\n },\n [selectionMode, selectedKeys, onSelectionChange]\n );\n\n const updateLiveRegion = useCallback(() => {\n setLiveRegion(collection_loading());\n }, [collection_loading]);\n\n return (\n <>\n <div\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={\n data == null\n ? ariaDescribedBy\n ? [...new Set(ariaDescribedBy.split(/\\s+/).concat(loadingDescId))].join(' ')\n : loadingDescId\n : ariaDescribedBy\n }\n ref={rootRef}\n role=\"tree\"\n aria-multiselectable={selectionMode === 'multiple' ? true : false}\n tabIndex={0}\n class={classes}\n {...mergeProps(\n treeNavigationProps,\n selectionProps,\n multipleToggleSelectionProps,\n expandCollapseProps,\n { onKeyDown: selectAllWithKeyboard }\n )}>\n {data == null ? (\n defaultLoadingIndicator(updateLiveRegion)\n ) : (\n <LoadMoreTreeCollection\n data={items}\n selectionMode={selectionMode}\n onToggle={onToggle}\n viewportConfig={viewportConfig}\n updateContext={updateContextCallback}\n {...rest}></LoadMoreTreeCollection>\n )}\n </div>\n <HiddenAccessible id={loadingDescId}>{collection_loading()}</HiddenAccessible>\n <LiveRegion>\n {data == null ? liveRegion : liveRegion === collection_loading() ? collection_loaded() : ''}\n </LiveRegion>\n </>\n );\n}\n\nconst defaultLoadingIndicator = (callback: () => void) => {\n return (\n <SkeletonContainer minimumCount={8} onSkeletonVisible={callback}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </SkeletonContainer>\n );\n};\n\nconst idExtractor = (elem: Element) => elem.id;\n\n/**\n * A helper function to handle range selection\n */\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n data: FlattenedTreeNode<K, D>[]\n) => {\n const keys = data.map((value: FlattenedTreeNode<K, D>) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: -1 };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n"],"names":["NodeSkeletonContainer","children","indentation","isVisible","setIsVisible","useState","useEffect","setTimeout","_jsx","role","View","paddingInlineStart","Array","map","_element","index","TreeItemSkeleton","isLeaf","calcIndentation","undefined","padding","_jsxs","Flex","height","align","gap","Skeleton","width","borderRadius","TreeItemSkeletons","_Fragment","TreeItem","itemKey","depth","context","isExpanded","onToggle","selected","isSelectable","isCheckboxless","isTabbable","isLoading","isFocusRingVisible","rootRef","useRef","skeletonIndentation","isHover","hoverProps","useHover","classes","classNames","styles","treeItemStyles","base","focused","checkboxlessSelected","hovered","jsx","ref","id","useId","tabIndex","isMobile","class","Fragment","selectedHoveredOverlay","TabbableModeContext","Provider","value","Expander","expanded","platform","getClientHints","expanderPlaceholder","Math","max","cssVars","treeViewVars","indentWidth","SkeletonContainer","minimumCount","onSkeletonVisible","containerClasses","skeletonStyles","container","LoadMoreTreeCollection","data","selectionMode","viewportConfig","hasMore","onLoadMore","loadMoreIndicator","defaultLoadMoreIndicator","updateContext","LoadMoreCollection","key","metadata","treeItemContext","treeDepth","hasFocus","LOADMORE_STYLE_CLASS","findParentElementByKey","root","itemSelector","items","from","querySelectorAll","findIndex","i","dataset","level","getAttribute","Number","defaultLoadingIndicator","callback","idExtractor","elem","handleSelectionRange","detail","keys","startIndex","indexOf","start","endIndex","end","minIndex","min","maxIndex","offset","count","slice","ariaLabel","ariaLabelledBy","ariaDescribedBy","selectedKeys","all","Set","onSelectionChange","rest","liveRegion","setLiveRegion","collection_loading","collection_loaded","useTranslationBundle","loadingDescId","useCallback","current","findElementByKey","ITEM_SELECTOR","treeNavigationProps","currentKey","showFocusRing","direction","useUser","arrowKeyAndHandlers","ArrowUp","getPrevNextKey","ArrowDown","navigationProps","onCurrentKeyChange","useNavigation","itemKeyExtractor","element","keyExtractor","onKeyUp","event","isRtl","isLeftArrow","target","contains","item","parent","newKey","isKeyDefined","mergeProps","useTreeNavigation","useMemo","newValue","containsKey","expandCollapseProps","useExpandCollapse","anchorKey","handleSelectionChange","size","values","pop","handleSelectionRangeChange","isArray","eventType","addKeys","selectionProps","useSelection","isPrev","scrollIntoView","block","eventProps","multipleToggleSelectionProps","useAdditiveSelection","selectAllWithKeyboard","metaKey","ctrlKey","preventDefault","deletedKeys","useComponentTheme","TreeViewRedwoodTheme","getViewportConfig","updateContextCallback","selector","Selector","rowKey","onChange","updateLiveRegion","split","concat","join","onKeyDown","HiddenAccessible","LiveRegion"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FlatTreeView-dde3e071.js","sources":["../../src/UNSAFE_FlatTreeView/NodeSkeletonContainer.tsx","../../src/UNSAFE_FlatTreeView/TreeItemSkeletons.tsx","../../src/UNSAFE_FlatTreeView/TreeItem.tsx","../../src/UNSAFE_FlatTreeView/SkeletonContainer.tsx","../../src/UNSAFE_FlatTreeView/LoadMoreTreeCollection.tsx","../../src/UNSAFE_FlatTreeView/useTreeNavigation.ts","../../src/UNSAFE_FlatTreeView/FlatTreeView.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { Size } from '#utils/UNSAFE_size';\nimport { View } from '#UNSAFE_View';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n indentation?: Size;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * Represents the skeleton for a tree item in expanding state\n **/\nexport function NodeSkeletonContainer({ children, indentation = 0 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n return isVisible && children ? (\n <div role=\"presentation\">\n <View paddingInlineStart={indentation as Size}>\n {[...Array(1)].map((_element, index) => children(index))}\n </View>\n </div>\n ) : null;\n}\n","import { calcIndentation } from './TreeItem';\nimport { View } from '#UNSAFE_View';\nimport { Skeleton } from '#UNSAFE_Skeleton';\nimport { Flex } from '#UNSAFE_Flex';\nimport { Size } from '#utils/UNSAFE_size';\n\ntype Props = {\n indentation?: number;\n isLeaf?: boolean;\n};\n\nfunction TreeItemSkeleton({ indentation = 0, isLeaf = false }: Props) {\n return (\n <View paddingInlineStart={calcIndentation(indentation, isLeaf ? undefined : true) as Size}>\n <View padding={[0, '4px']}>\n <Flex height=\"9x\" align=\"center\" gap=\"2x\">\n {!isLeaf && <Skeleton width=\"6x\" height=\"6x\" borderRadius=\"4px\" />}\n <Skeleton height=\"5x\" borderRadius=\"4px\" />\n </Flex>\n </View>\n </View>\n );\n}\n\nexport function TreeItemSkeletons() {\n return (\n <>\n <TreeItemSkeleton />\n <TreeItemSkeleton indentation={1} />\n <TreeItemSkeleton indentation={2} isLeaf={true} />\n </>\n );\n}\n","import { ComponentChildren } from 'preact';\nimport { useRef } from 'preact/hooks';\nimport { Size } from '#utils/UNSAFE_size';\nimport { classNames } from '#utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '#hooks/UNSAFE_useTabbableMode';\nimport { ToggleDetail, ListItemRendererContext } from '#UNSAFE_Collection';\nimport { View } from '#UNSAFE_View';\nimport { styles } from './themes/TreeViewStyles.css';\nimport { treeViewVars as cssVars } from './themes/TreeViewContract.css';\nimport { Expander } from '#PRIVATE_Expander';\nimport { Flex } from '#UNSAFE_Flex';\nimport { NodeSkeletonContainer } from './NodeSkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useHover } from '#hooks/UNSAFE_useHover';\nimport { getClientHints } from '#utils/PRIVATE_clientHints';\n\ntype Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n itemKey: K;\n depth: number;\n context: ListItemRendererContext<K, D>;\n isExpanded: boolean | undefined;\n onToggle: (detail: ToggleDetail<K>) => void;\n selected: boolean | 'partial';\n isSelectable: boolean;\n isCheckboxless: boolean;\n isTabbable: boolean;\n isLoading?: boolean;\n isFocusRingVisible: boolean;\n};\n\nexport function TreeItem<K extends string | number, D>({\n itemKey,\n depth,\n context,\n children,\n isExpanded,\n onToggle,\n selected,\n isSelectable,\n isCheckboxless,\n isTabbable,\n isLoading,\n isFocusRingVisible\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const indentation = calcIndentation(depth, isExpanded);\n const skeletonIndentation = calcIndentation(depth + 1, isExpanded);\n\n const { isHover, hoverProps } = useHover();\n\n const classes = classNames([\n styles.treeItemStyles.base,\n isFocusRingVisible && styles.treeItemStyles.focused,\n selected === true && styles.treeItemStyles.selected,\n selected === true && isCheckboxless && styles.treeItemStyles.checkboxlessSelected,\n isSelectable && !selected && isHover && styles.treeItemStyles.hovered\n ]);\n\n return (\n <>\n <div\n ref={rootRef}\n id={useId()}\n tabIndex={isMobile() ? -1 : undefined}\n data-oj-key={itemKey}\n class={classes}\n role=\"treeitem\"\n aria-level={depth + 1}\n aria-selected={selected ? 'true' : 'false'}\n {...(isExpanded !== undefined && { 'aria-expanded': isExpanded })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...hoverProps}>\n <>\n {selected === true && isHover && <div class={styles.selectedHoveredOverlay}></div>}\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <View paddingInlineStart={indentation as Size}>\n <Flex align=\"center\">\n {isExpanded !== undefined && (\n <Expander itemKey={itemKey} expanded={isExpanded} onToggle={onToggle} />\n )}\n {children(context)}\n </Flex>\n </View>\n </TabbableModeContext.Provider>\n </>\n </div>\n {isLoading ? (\n <NodeSkeletonContainer indentation={skeletonIndentation as Size}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </NodeSkeletonContainer>\n ) : null}\n </>\n );\n}\n\nexport const isMobile = () => {\n const { platform } = getClientHints();\n return platform === 'ios' || platform === 'android';\n};\n\nexport const calcIndentation = (depth: number, isExpanded?: boolean) => {\n const expanderPlaceholder = isExpanded === undefined ? '40px' : '0px';\n return `calc(${Math.max(0, depth)} * ${cssVars.indentWidth} + ${expanderPlaceholder})`;\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { styles } from './themes/TreeViewStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n /**\n * Callback when skeleton do become visible, handler can use this\n * to update its live region.\n */\n onSkeletonVisible?: () => void;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1, onSkeletonVisible }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n onSkeletonVisible?.();\n }, timerValue);\n }, [onSkeletonVisible]);\n\n const containerClasses = classNames([styles.skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\n}\n","import { ItemContext } from '#UNSAFE_Collection';\nimport { LoadMoreCollection } from '#PRIVATE_LoadMoreCollection';\nimport { TreeItem } from './TreeItem';\nimport { InternalTreeNode, LoadMoreTreeCollectionProps as Props } from './TreeView.types';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { LOADMORE_STYLE_CLASS } from '#PRIVATE_LoadMoreCollection';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/TreeViewTheme.css';\n\n/**\n * Component that receives the flattened data and renders the hierarchy betweens items based on the shaped metadata.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n * This is an internal component that is used by FlatTreeView.\n */\nexport function LoadMoreTreeCollection<K extends string | number, D>({\n data,\n children,\n selectionMode,\n onToggle = () => {},\n viewportConfig,\n hasMore = false,\n onLoadMore = () => {},\n loadMoreIndicator = defaultLoadMoreIndicator,\n updateContext\n}: Props<K, D>) {\n const createTreeItem = (context: ItemContext<InternalTreeNode<K, D>>) => {\n const key = context.data.metadata.key;\n const treeItemContext = {\n index: context.index,\n data: context.data.data,\n metadata: { key }\n };\n // allow container to inject additional things to context\n if (updateContext) {\n updateContext(treeItemContext);\n }\n const expanded = context.data.metadata.expanded;\n return (\n <TreeItem\n key={treeItemContext.metadata.key}\n itemKey={treeItemContext.metadata.key}\n context={treeItemContext}\n depth={context.data.metadata.treeDepth}\n isExpanded={expanded === 'ongoing' ? true : expanded}\n onToggle={onToggle}\n isSelectable={selectionMode !== 'none'}\n isCheckboxless={selectionMode === 'single'} // TODO: need to update when checkboxless multiple is added\n selected={context.data.metadata.selected}\n isLoading={expanded === 'ongoing'}\n isTabbable={false}\n isFocusRingVisible={context.data.metadata.hasFocus}>\n {children}\n </TreeItem>\n );\n };\n\n return (\n <>\n {data === null ? null : (\n <LoadMoreCollection\n data={data}\n viewportConfig={viewportConfig}\n hasMore={hasMore}\n onLoadMore={onLoadMore}\n loadMoreIndicator={loadMoreIndicator}>\n {createTreeItem}\n </LoadMoreCollection>\n )}\n </>\n );\n}\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={1}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </SkeletonContainer>\n </div>\n);\n","import { RefObject } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useUser } from '#hooks/UNSAFE_useUser';\nimport {\n findElementByKey,\n keyExtractor,\n getPrevNextKey,\n ITEM_SELECTOR\n} from '#utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '#utils/UNSAFE_keys';\nimport { useNavigation } from '#hooks/PRIVATE_useListCommon';\n\nexport function useTreeNavigation<K extends string | number>(\n data: any | null,\n rootRef: RefObject<HTMLDivElement>,\n isExpanded: (key: K) => boolean,\n idExtractor: (elem: Element) => string\n) {\n const { direction } = useUser();\n\n const arrowKeyAndHandlers = {\n ArrowUp: (key?: K) => getPrevNextKey(rootRef.current, key, true, ITEM_SELECTOR),\n ArrowDown: (key?: K) => getPrevNextKey(rootRef.current, key, false, ITEM_SELECTOR)\n };\n\n const { navigationProps, currentKey, onCurrentKeyChange, showFocusRing } = useNavigation(\n data,\n rootRef,\n idExtractor,\n arrowKeyAndHandlers,\n undefined, // currentItemOverride,\n undefined, //onPersistCurrentItem,\n undefined,\n undefined,\n true, // should always allow shift key\n false, // TODO: update allowTabbableMode when F2 mode is added\n true,\n false\n );\n\n const itemKeyExtractor = useCallback(\n (element: HTMLElement) => {\n if (element.getAttribute('role') === 'tree') {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n [currentKey, keyExtractor]\n );\n\n const onKeyUp = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {\n const isRtl = direction === 'rtl';\n const isLeftArrow = event.key === 'ArrowLeft' && !isRtl;\n const itemKey = itemKeyExtractor(event.target as HTMLElement);\n if (itemKey) {\n const contains = isExpanded(itemKey);\n // arrow left on a collapsed node, go to its parent\n if (isLeftArrow && !contains && rootRef.current) {\n const item = findElementByKey(rootRef.current, itemKey, ITEM_SELECTOR);\n if (item) {\n const treeDepth = item.getAttribute('aria-level');\n const parent =\n treeDepth !== null &&\n findParentElementByKey(rootRef.current, itemKey, Number(treeDepth), ITEM_SELECTOR);\n const newKey = parent && itemKeyExtractor(parent as HTMLElement);\n if (isKeyDefined(newKey)) {\n onCurrentKeyChange?.({ value: newKey as K });\n }\n }\n } else if (!isLeftArrow && contains) {\n // arrow right on an expanded node, go to its first child\n const newKey = getPrevNextKey(rootRef.current, itemKey, false, ITEM_SELECTOR)();\n if (isKeyDefined(newKey)) {\n onCurrentKeyChange?.({ value: newKey as K });\n }\n }\n }\n }\n },\n [direction, isExpanded, onCurrentKeyChange, itemKeyExtractor]\n );\n\n const treeNavigationProps = mergeProps(navigationProps, { onKeyUp });\n return { treeNavigationProps, currentKey, showFocusRing };\n}\n\nconst findParentElementByKey = <K extends string | number>(\n root: HTMLElement | null,\n key: K | null,\n treeDepth: number,\n itemSelector: string\n) => {\n if (root && key !== null) {\n const items = Array.from(root.querySelectorAll(itemSelector));\n const index = items.findIndex((i) => (i as HTMLElement).dataset['ojKey'] == key);\n for (let i = index; i >= 0; i--) {\n const level = items[i].getAttribute('aria-level');\n if (level !== null && Number(level) == treeDepth - 1) {\n return items[i];\n }\n }\n }\n return null;\n};\n","import { useMemo, useRef, useCallback, useState } from 'preact/hooks';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { SelectionDetail, ListItemRendererContext } from '#UNSAFE_Collection';\nimport { getViewportConfig } from '#utils/PRIVATE_collectionUtils';\nimport { FlattenedTreeNode, InternalTreeNode, FlatTreeViewProps as Props } from './TreeView.types';\nimport { LoadMoreTreeCollection } from './LoadMoreTreeCollection';\nimport {\n useSelection,\n useAdditiveSelection,\n SelectionRangeDetail\n} from '#hooks/PRIVATE_useSelection';\nimport { useExpandCollapse } from '#hooks/PRIVATE_useListCommon';\nimport {\n keyExtractor,\n getPrevNextKey,\n findElementByKey,\n ITEM_SELECTOR\n} from '#utils/PRIVATE_collectionUtils';\nimport { addKeys, containsKey } from '#utils/UNSAFE_keys';\nimport { useComponentTheme } from '#hooks/UNSAFE_useComponentTheme';\nimport { TreeViewRedwoodTheme } from './themes/redwood/TreeViewTheme.css';\nimport { useTreeNavigation } from './useTreeNavigation';\nimport { Selector } from '#UNSAFE_Selector';\nimport { isMobile } from './TreeItem';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { TreeItemSkeletons } from './TreeItemSkeletons';\nimport { LiveRegion } from '#UNSAFE_LiveRegion';\nimport { HiddenAccessible } from '#UNSAFE_HiddenAccessible';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '#resources/nls/bundle';\n\n/**\n * A FlatTreeView displays flattened data as a tree with highly interactive features.\n */\nexport function FlatTreeView<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n data,\n selectionMode = 'none',\n selectedKeys = { all: false, keys: new Set() },\n onSelectionChange,\n onToggle,\n viewportConfig,\n ...rest\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const [liveRegion, setLiveRegion] = useState<string>();\n const { collection_loading, collection_loaded } = useTranslationBundle<BundleType>(\n '@oracle/oraclejet-preact'\n );\n const loadingDescId = useId();\n\n const isExpanded = useCallback((key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n return elem?.getAttribute('aria-expanded') === 'true';\n }\n return false;\n }, []);\n\n const { treeNavigationProps, currentKey, showFocusRing } = useTreeNavigation(\n data,\n rootRef,\n isExpanded,\n idExtractor\n );\n\n const items: InternalTreeNode<K, D>[] = useMemo(\n () =>\n data?.map((value: FlattenedTreeNode<K, D>) => {\n const itemKey = value.metadata.key;\n const newValue = { ...value } as InternalTreeNode<K, D>;\n newValue.metadata.selected = containsKey(selectedKeys, itemKey);\n newValue.metadata.hasFocus = currentKey === itemKey && showFocusRing;\n return newValue;\n }) || [],\n [data, selectedKeys, currentKey, showFocusRing]\n );\n\n const expandCollapseProps = useExpandCollapse(\n (element: HTMLElement) => {\n if (element.getAttribute('role') === 'tree') {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n isExpanded,\n onToggle,\n true\n );\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n if (selectionMode === 'multipleToggle') {\n const keys = addKeys(selectedKeys, value);\n onSelectionChange({ value: keys, target: null });\n } else {\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n }\n }\n }\n },\n [data, selectedKeys, onSelectionChange]\n );\n\n // single or multiple selection mode\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 === 'multipleToggle' ? 'none' : selectionMode,\n false,\n 'replace',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n elem.scrollIntoView({ block: 'nearest' });\n }\n }\n },\n handleSelectionRangeChange\n );\n\n // multipleToggle selection mode\n const { eventProps: multipleToggleSelectionProps } = useAdditiveSelection(\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 === 'multipleToggle' ? 'multiple' : 'none',\n false,\n (key: K) => {\n if (data) {\n return data.findIndex((value: FlattenedTreeNode<K, D>) => value.metadata.key === key);\n }\n return -1;\n },\n (startIndex: number, endIndex: number) => {\n if (data) {\n const keys = data.map((value: FlattenedTreeNode<K, D>) => value.metadata.key);\n return keys.slice(startIndex, endIndex);\n }\n return [];\n },\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n currentKey,\n handleSelectionChange,\n handleSelectionRangeChange\n );\n\n //Note: onKeyUp doesn't work with the cmd key\n const selectAllWithKeyboard = useCallback(\n (event: KeyboardEvent) => {\n if (selectionMode === 'multiple' || selectionMode === 'multipleToggle') {\n if (onSelectionChange && (event.metaKey || event.ctrlKey) && event.key === 'a') {\n event.preventDefault();\n onSelectionChange({\n value: { all: true, deletedKeys: new Set() },\n target: event.target\n });\n }\n }\n },\n [onSelectionChange, selectionMode]\n );\n\n const { classes } = useComponentTheme(TreeViewRedwoodTheme);\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const updateContextCallback = useCallback(\n (context: ListItemRendererContext<K, D>) => {\n const key = context.metadata.key;\n context.selector =\n selectionMode === 'none' || selectionMode === 'single'\n ? undefined\n : (ariaLabel?: string) => (\n <div aria-hidden={isMobile() ? undefined : true}>\n <Selector\n aria-label={isMobile() ? ariaLabel : undefined}\n rowKey={key}\n selectedKeys={selectedKeys}\n onChange={onSelectionChange}\n />\n </div>\n );\n },\n [selectionMode, selectedKeys, onSelectionChange]\n );\n\n const updateLiveRegion = useCallback(() => {\n setLiveRegion(collection_loading());\n }, [collection_loading]);\n\n return (\n <>\n <div\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={\n data == null\n ? ariaDescribedBy\n ? [...new Set(ariaDescribedBy.split(/\\s+/).concat(loadingDescId))].join(' ')\n : loadingDescId\n : ariaDescribedBy\n }\n ref={rootRef}\n role=\"tree\"\n aria-multiselectable={selectionMode === 'multiple' ? true : false}\n tabIndex={0}\n class={classes}\n {...mergeProps(\n treeNavigationProps,\n selectionProps,\n multipleToggleSelectionProps,\n expandCollapseProps,\n { onKeyDown: selectAllWithKeyboard }\n )}>\n {data == null ? (\n defaultLoadingIndicator(updateLiveRegion)\n ) : (\n <LoadMoreTreeCollection\n data={items}\n selectionMode={selectionMode}\n onToggle={onToggle}\n viewportConfig={viewportConfig}\n updateContext={updateContextCallback}\n {...rest}></LoadMoreTreeCollection>\n )}\n </div>\n <HiddenAccessible id={loadingDescId}>{collection_loading()}</HiddenAccessible>\n <LiveRegion>\n {data == null ? liveRegion : liveRegion === collection_loading() ? collection_loaded() : ''}\n </LiveRegion>\n </>\n );\n}\n\nconst defaultLoadingIndicator = (callback: () => void) => {\n return (\n <SkeletonContainer minimumCount={8} onSkeletonVisible={callback}>\n {() => {\n return <TreeItemSkeletons />;\n }}\n </SkeletonContainer>\n );\n};\n\nconst idExtractor = (elem: Element) => elem.id;\n\n/**\n * A helper function to handle range selection\n */\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n data: FlattenedTreeNode<K, D>[]\n) => {\n const keys = data.map((value: FlattenedTreeNode<K, D>) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: -1 };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n"],"names":["NodeSkeletonContainer","children","indentation","isVisible","setIsVisible","useState","useEffect","setTimeout","_jsx","role","View","paddingInlineStart","Array","map","_element","index","TreeItemSkeleton","isLeaf","calcIndentation","undefined","padding","_jsxs","Flex","height","align","gap","Skeleton","width","borderRadius","TreeItemSkeletons","_Fragment","TreeItem","itemKey","depth","context","isExpanded","onToggle","selected","isSelectable","isCheckboxless","isTabbable","isLoading","isFocusRingVisible","rootRef","useRef","skeletonIndentation","isHover","hoverProps","useHover","classes","classNames","styles","treeItemStyles","base","focused","checkboxlessSelected","hovered","jsx","ref","id","useId","tabIndex","isMobile","class","Fragment","selectedHoveredOverlay","TabbableModeContext","Provider","value","Expander","expanded","platform","getClientHints","expanderPlaceholder","Math","max","cssVars","treeViewVars","indentWidth","SkeletonContainer","minimumCount","onSkeletonVisible","containerClasses","skeletonStyles","container","LoadMoreTreeCollection","data","selectionMode","viewportConfig","hasMore","onLoadMore","loadMoreIndicator","defaultLoadMoreIndicator","updateContext","LoadMoreCollection","key","metadata","treeItemContext","treeDepth","hasFocus","LOADMORE_STYLE_CLASS","findParentElementByKey","root","itemSelector","items","from","querySelectorAll","findIndex","i","dataset","level","getAttribute","Number","defaultLoadingIndicator","callback","idExtractor","elem","handleSelectionRange","detail","keys","startIndex","indexOf","start","endIndex","end","minIndex","min","maxIndex","offset","count","slice","ariaLabel","ariaLabelledBy","ariaDescribedBy","selectedKeys","all","Set","onSelectionChange","rest","liveRegion","setLiveRegion","collection_loading","collection_loaded","useTranslationBundle","loadingDescId","useCallback","current","findElementByKey","ITEM_SELECTOR","treeNavigationProps","currentKey","showFocusRing","direction","useUser","arrowKeyAndHandlers","ArrowUp","getPrevNextKey","ArrowDown","navigationProps","onCurrentKeyChange","useNavigation","itemKeyExtractor","element","keyExtractor","onKeyUp","event","isRtl","isLeftArrow","target","contains","item","parent","newKey","isKeyDefined","mergeProps","useTreeNavigation","useMemo","newValue","containsKey","expandCollapseProps","useExpandCollapse","anchorKey","handleSelectionChange","size","values","pop","handleSelectionRangeChange","isArray","eventType","addKeys","selectionProps","useSelection","isPrev","scrollIntoView","block","eventProps","multipleToggleSelectionProps","useAdditiveSelection","selectAllWithKeyboard","metaKey","ctrlKey","preventDefault","deletedKeys","useComponentTheme","TreeViewRedwoodTheme","getViewportConfig","updateContextCallback","selector","Selector","rowKey","onChange","updateLiveRegion","split","concat","join","onKeyDown","HiddenAccessible","LiveRegion"],"mappings":"+7BA4BM,SAAUA,GAAsBC,SAAEA,EAAQC,YAAEA,EAAc,IAC9D,MAAOC,EAAWC,GAAgBC,EAAQA,UAAC,GAQ3C,OANAC,EAAAA,WAAU,KACRC,YAAW,KACTH,GAAa,EAAK,GAVL,GAWD,GACb,IAEID,GAAaF,EAClBO,MAAK,MAAA,CAAAC,KAAK,wBACRD,EAAAA,IAACE,EAAAA,MAAKC,mBAAoBT,EACvBD,SAAA,IAAIW,MAAM,IAAIC,KAAI,CAACC,EAAUC,IAAUd,EAASc,SAGnD,IACN,CCjCA,SAASC,GAAiBd,YAAEA,EAAc,EAACe,OAAEA,GAAS,IACpD,OACET,MAACE,EAAAA,KAAK,CAAAC,mBAAoBO,EAAgBhB,GAAae,QAASE,GAAyBlB,SACvFO,MAACE,OAAI,CAACU,QAAS,CAAC,EAAG,gBACjBC,OAACC,EAAAA,MAAKC,OAAO,KAAKC,MAAM,SAASC,IAAI,KAAIxB,SAAA,EACrCgB,GAAUT,EAAAA,IAACkB,EAAAA,UAASC,MAAM,KAAKJ,OAAO,KAAKK,aAAa,QAC1DpB,MAACkB,EAAAA,SAAQ,CAACH,OAAO,KAAKK,aAAa,cAK7C,UAEgBC,IACd,OACER,OACES,EAAAA,SAAA,CAAA7B,SAAA,CAAAO,EAAAA,IAACQ,EAAgB,IACjBR,MAACQ,EAAgB,CAACd,YAAa,IAC/BM,EAAAA,IAACQ,EAAgB,CAACd,YAAa,EAAGe,QAAQ,MAGhD,CCAM,SAAUc,GAAuCC,QACrDA,EAAOC,MACPA,EAAKC,QACLA,EAAOjC,SACPA,EAAQkC,WACRA,EAAUC,SACVA,EAAQC,SACRA,EAAQC,aACRA,EAAYC,eACZA,EAAcC,WACdA,EAAUC,UACVA,EAASC,mBACTA,IAEA,MAAMC,EAAUC,SAAuB,MACjC1C,EAAcgB,EAAgBe,EAAOE,GACrCU,EAAsB3B,EAAgBe,EAAQ,EAAGE,IAEjDW,QAAEA,EAAOC,WAAEA,GAAeC,EAAQA,WAElCC,EAAUC,EAAAA,WAAW,CACzBC,EAAMA,OAACC,eAAeC,KACtBX,GAAsBS,EAAAA,OAAOC,eAAeE,SAC/B,IAAbjB,GAAqBc,SAAOC,eAAef,UAC9B,IAAbA,GAAqBE,GAAkBY,EAAMA,OAACC,eAAeG,qBAC7DjB,IAAiBD,GAAYS,GAAWK,EAAMA,OAACC,eAAeI,UAGhE,OACEnC,OACES,EAAAA,SAAA,CAAA7B,SAAA,CAAAO,EAAAiD,IAAA,MAAA,CACEC,IAAKf,EACLgB,GAAIC,EAAKA,QACTC,SAAUC,KAAc,OAAI3C,gBACfa,EACb+B,MAAOd,EACPxC,KAAK,WAAU,aACHwB,EAAQ,EACL,gBAAAI,EAAW,OAAS,gBACflB,IAAfgB,GAA4B,CAAE,gBAAiBA,MAC5B,iBAAZH,GAAwB,CAAE,mBAAoB,aACtDe,EACJ9C,SAAAoB,EAAAA,KAAAS,EAAAkC,SAAA,CAAA/D,SAAA,EACgB,IAAboC,GAAqBS,GAAWtC,EAAAA,IAAK,MAAA,CAAAuD,MAAOZ,SAAOc,yBACpDzD,EAAAA,IAAC0D,EAAmBA,oBAACC,SAAS,CAAAC,MAAO,CAAE5B,cAAYvC,SACjDO,MAACE,OAAI,CAACC,mBAAoBT,EACxBD,SAAAoB,EAAAA,KAACC,EAAIA,KAAA,CAACE,MAAM,wBACML,IAAfgB,GACC3B,EAACiD,IAAAY,YAASrC,QAASA,EAASsC,SAAUnC,EAAYC,SAAUA,IAE7DnC,EAASiC,eAMnBO,EACCjC,EAAAiD,IAACzD,EAAsB,CAAAE,YAAa2C,EAA2B5C,SAC5D,IACQO,EAAAiD,IAAC5B,EAAiB,CAAA,KAG3B,OAGV,CAEO,MAAMiC,EAAW,KACtB,MAAMS,SAAEA,GAAaC,EAAAA,iBACrB,MAAoB,QAAbD,GAAmC,YAAbA,CAAsB,EAGxCrD,EAAkB,CAACe,EAAeE,KAC7C,MAAMsC,OAAqCtD,IAAfgB,EAA2B,OAAS,MAChE,MAAO,QAAQuC,KAAKC,IAAI,EAAG1C,QAAY2C,EAAOC,aAACC,iBAAiBL,IAAsB,ECpElF,SAAUM,GAAkB9E,SAAEA,EAAQ+E,aAAEA,EAAe,EAACC,kBAAEA,IAC9D,MAAO9E,EAAWC,GAAgBC,EAAQA,UAAC,GAE3CC,EAAAA,WAAU,KACRC,YAAW,KACTH,GAAa,GACb6E,KAAqB,GAbR,GAcD,GACb,CAACA,IAEJ,MAAMC,EAAmBhC,EAAAA,WAAW,CAACC,EAAMA,OAACgC,eAAeC,YAC3D,OAAOjF,GAAaF,EAClBO,aAAKuD,MAAOmB,EAAkBzE,KAAK,eAAcR,SAC9C,IAAIW,MAAMoE,IAAenE,KAAI,CAACC,EAAUC,IAAUd,EAASc,OAE5D,IACN,CCvCgB,SAAAsE,GAAqDC,KACnEA,EAAIrF,SACJA,EAAQsF,cACRA,EAAanD,SACbA,EAAW,OAAQoD,eACnBA,EAAcC,QACdA,GAAU,EAAKC,WACfA,EAAa,OAAQC,kBACrBA,EAAoBC,EAAwBC,cAC5CA,IAiCA,OACErF,MACGsB,EAAAA,SAAA,CAAA7B,SAAS,OAATqF,EAAgB,KACf9E,EAAAiD,IAACqC,qBACC,CAAAR,KAAMA,EACNE,eAAgBA,EAChBC,QAASA,EACTC,WAAYA,EACZC,kBAAmBA,EAClB1F,SAxCeiC,IACtB,MAAM6D,EAAM7D,EAAQoD,KAAKU,SAASD,IAC5BE,EAAkB,CACtBlF,MAAOmB,EAAQnB,MACfuE,KAAMpD,EAAQoD,KAAKA,KACnBU,SAAU,CAAED,QAGVF,GACFA,EAAcI,GAEhB,MAAM3B,EAAWpC,EAAQoD,KAAKU,SAAS1B,SACvC,OACE9D,MAACuB,EAAQ,CAEPC,QAASiE,EAAgBD,SAASD,IAClC7D,QAAS+D,EACThE,MAAOC,EAAQoD,KAAKU,SAASE,UAC7B/D,WAAyB,YAAbmC,GAAgCA,EAC5ClC,SAAUA,EACVE,aAAgC,SAAlBiD,EACdhD,eAAkC,WAAlBgD,EAChBlD,SAAUH,EAAQoD,KAAKU,SAAS3D,SAChCI,UAAwB,YAAb6B,EACX9B,YAAY,EACZE,mBAAoBR,EAAQoD,KAAKU,SAASG,SACzClG,SAAAA,GAZIgG,EAAgBD,SAASD,IAchC,KAiBN,CAEA,MAAMH,EACJpF,EAAAA,IAAK,MAAA,CAAAuD,MAAOqC,EAAAA,qBAAoBnG,SAC9BO,EAACiD,IAAAsB,GAAkBC,aAAc,EAAC/E,SAC/B,IACQO,EAAAiD,IAAC5B,EAAiB,CAAA,OCYjC,MAAMwE,EAAyB,CAC7BC,EACAP,EACAG,EACAK,KAEA,GAAID,GAAgB,OAARP,EAAc,CACxB,MAAMS,EAAQ5F,MAAM6F,KAAKH,EAAKI,iBAAiBH,IACzCxF,EAAQyF,EAAMG,WAAWC,GAAOA,EAAkBC,QAAe,OAAKd,IAC5E,IAAK,IAAIa,EAAI7F,EAAO6F,GAAK,EAAGA,IAAK,CAC/B,MAAME,EAAQN,EAAMI,GAAGG,aAAa,cACpC,GAAc,OAAVD,GAAkBE,OAAOF,IAAUZ,EAAY,EACjD,OAAOM,EAAMI,EAEhB,CACF,CACD,OAAO,IAAI,EC+Kb,MAAMK,EAA2BC,GAE7B1G,EAAAiD,IAACsB,EAAiB,CAACC,aAAc,EAAGC,kBAAmBiC,EAAQjH,SAC5D,IACQO,EAAAiD,IAAC5B,EAAiB,CAAA,KAM3BsF,EAAeC,GAAkBA,EAAKzD,GAK/B0D,EAAuB,CAClCC,EACAhC,KAEA,MAAMiC,EAAOjC,EAAKzE,KAAKuD,GACdA,EAAM4B,SAASD,MAElByB,EAAaD,EAAKE,QAAQH,EAAOlD,MAAMsD,OACvCC,EAAWJ,EAAKE,QAAQH,EAAOlD,MAAMwD,KACrCC,EAAWnD,KAAKoD,IAAIN,EAAYG,GAChCI,EAAWrD,KAAKC,IAAI6C,EAAYG,GACtC,OAAkB,IAAdE,EAEK,CAAEG,OAAQ,EAAGC,OAAQ,GAGrBV,EAAKW,MAAML,EAAUE,EAAW,EACxC,iBArRG,UACJ,aAAcI,EACd,kBAAmBC,EACnB,mBAAoBC,EAAe/C,KACnCA,EAAIC,cACJA,EAAgB,OAAM+C,aACtBA,EAAe,CAAEC,KAAK,EAAOhB,KAAM,IAAIiB,KAAOC,kBAC9CA,EAAiBrG,SACjBA,EAAQoD,eACRA,KACGkD,IAEH,MAAM/F,EAAUC,SAAuB,OAChC+F,EAAYC,GAAiBvI,EAAQA,YACtCwI,mBAAEA,EAAkBC,kBAAEA,GAAsBC,EAAoBA,qBACpE,4BAEIC,EAAgBpF,EAAAA,QAEhBzB,EAAa8G,eAAalD,IAC9B,GAAIpD,EAAQuG,QAAS,CACnB,MAAM9B,EAAO+B,EAAAA,iBAAiBxG,EAAQuG,QAASnD,EAAKqD,EAAAA,eACpD,MAA+C,SAAxChC,GAAML,aAAa,gBAC3B,CACD,OAAO,CAAK,GACX,KAEGsC,oBAAEA,EAAmBC,WAAEA,EAAUC,cAAEA,GDjDrC,SACJjE,EACA3C,EACAR,EACAgF,GAEA,MAAMqC,UAAEA,GAAcC,EAAAA,UAEhBC,EAAsB,CAC1BC,QAAU5D,GAAY6D,iBAAejH,EAAQuG,QAASnD,GAAK,EAAMqD,iBACjES,UAAY9D,GAAY6D,iBAAejH,EAAQuG,QAASnD,GAAK,EAAOqD,mBAGhEU,gBAAEA,EAAeR,WAAEA,EAAUS,mBAAEA,EAAkBR,cAAEA,GAAkBS,EAAaA,cACtF1E,EACA3C,EACAwE,EACAuC,OACAvI,OACAA,OACAA,OACAA,GACA,GACA,GACA,GACA,GAGI8I,EAAmBhB,eACtBiB,GACsC,SAAjCA,EAAQnD,aAAa,aACD5F,IAAfmI,EAA2B,KAAOA,EAEpCa,EAAYA,aAACD,EAASd,EAAAA,gBAE/B,CAACE,EAAYa,EAAYA,eAGrBC,EAAUnB,eACboB,IACC,GAAkB,cAAdA,EAAMtE,KAAqC,eAAdsE,EAAMtE,IAAsB,CAC3D,MAAMuE,EAAsB,QAAdd,EACRe,EAA4B,cAAdF,EAAMtE,MAAwBuE,EAC5CtI,EAAUiI,EAAiBI,EAAMG,QACvC,GAAIxI,EAAS,CACX,MAAMyI,EAAWtI,EAAWH,GAE5B,GAAIuI,IAAgBE,GAAY9H,EAAQuG,QAAS,CAC/C,MAAMwB,EAAOvB,EAAAA,iBAAiBxG,EAAQuG,QAASlH,EAASoH,EAAAA,eACxD,GAAIsB,EAAM,CACR,MAAMxE,EAAYwE,EAAK3D,aAAa,cAC9B4D,EACU,OAAdzE,GACAG,EAAuB1D,EAAQuG,QAASlH,EAASgF,OAAOd,GAAYkD,EAAAA,eAChEwB,EAASD,GAAUV,EAAiBU,GACtCE,EAAAA,aAAaD,IACfb,IAAqB,CAAE3F,MAAOwG,GAEjC,CACF,MAAM,IAAKL,GAAeE,EAAU,CAEnC,MAAMG,EAAShB,EAAcA,eAACjH,EAAQuG,QAASlH,GAAS,EAAOoH,EAAaA,cAA7DQ,GACXiB,EAAAA,aAAaD,IACfb,IAAqB,CAAE3F,MAAOwG,GAEjC,CACF,CACF,IAEH,CAACpB,EAAWrH,EAAY4H,EAAoBE,IAI9C,MAAO,CAAEZ,oBADmByB,EAAUA,WAAChB,EAAiB,CAAEM,YAC5Bd,aAAYC,gBAC5C,CCzB6DwB,CACzDzF,EACA3C,EACAR,EACAgF,GAGIX,EAAkCwE,EAAAA,SACtC,IACE1F,GAAMzE,KAAKuD,IACT,MAAMpC,EAAUoC,EAAM4B,SAASD,IACzBkF,EAAW,IAAK7G,GAGtB,OAFA6G,EAASjF,SAAS3D,SAAW6I,EAAWA,YAAC5C,EAActG,GACvDiJ,EAASjF,SAASG,SAAWmD,IAAetH,GAAWuH,EAChD0B,CAAQ,KACX,IACR,CAAC3F,EAAMgD,EAAcgB,EAAYC,IAG7B4B,EAAsBC,qBACzBlB,GACsC,SAAjCA,EAAQnD,aAAa,aACD5F,IAAfmI,EAA2B,KAAOA,EAEpCa,EAAYA,aAACD,EAASd,EAAAA,gBAE/BjH,EACAC,GACA,GAIIiJ,EAAYzI,EAAAA,SAEZ0I,EAAwBrC,eAC3B3B,IACKmB,KACuB,IAArBnB,EAAOlD,MAAMmE,KAAiBjB,EAAOlD,MAAMmD,KAAKgE,KAAO,IAEzDF,EAAUnC,QAAUtI,MAAM6F,KAAKa,EAAOlD,MAAMmD,KAAKiE,UAAUC,OAE7DhD,EAAkBnB,GACnB,GAEH,CAAC+D,EAAW5C,IAGRiD,EAA6BzC,eAChC3B,IACC,GAAIhC,GAAQmD,EAAmB,CAC7B,MAAMrE,EAAQiD,EAAqBC,EAAQhC,GAC3C,GAAI1E,MAAM+K,QAAQvH,GAQhB,GAPyB,eAArBkD,EAAOsE,UAETP,EAAUnC,QAAU5B,EAAOlD,MAAMsD,MAGjC2D,EAAUnC,QAAU5B,EAAOlD,MAAMwD,IAEb,mBAAlBrC,EAAoC,CACtC,MAAMgC,EAAOsE,EAAAA,QAAQvD,EAAclE,GACnCqE,EAAkB,CAAErE,MAAOmD,EAAMiD,OAAQ,MAC1C,MACC/B,EAAkB,CAAErE,MAAO,CAAEmE,KAAK,EAAOhB,KAAM,IAAIiB,IAAIpE,IAAUoG,OAAQ,MAG9E,IAEH,CAAClF,EAAMgD,EAAcG,KAIjBqD,eAAEA,GAAmBC,EAAYA,cACpC7B,GACKA,IAAYvH,EAAQuG,aACA/H,IAAfmI,EAA2B,KAAOA,EAEpCa,EAAYA,aAACD,EAASd,EAAAA,gBAE/Bd,EACkB,mBAAlB/C,EAAqC,OAASA,GAC9C,EACA,UACA+F,EACAD,EAAUnC,QACVI,GACA,CAACA,EAA2B0C,IAC1BpC,iBAAejH,EAAQuG,QAASI,EAAY0C,EAAQ5C,EAAaA,qBACnEjI,GACC4E,IACC,GAAIpD,EAAQuG,QAAS,CACnB,MAAM9B,EAAO+B,EAAAA,iBAAiBxG,EAAQuG,QAASnD,EAAKqD,EAAAA,eAChDhC,GACFA,EAAK6E,eAAe,CAAEC,MAAO,WAEhC,IAEHR,IAIMS,WAAYC,GAAiCC,EAAoBA,sBACtEnC,GACKA,IAAYvH,EAAQuG,aACA/H,IAAfmI,EAA2B,KAAOA,EAEpCa,EAAYA,aAACD,EAASd,EAAAA,gBAE/Bd,EACkB,mBAAlB/C,EAAqC,WAAa,QAClD,GACCQ,GACKT,EACKA,EAAKqB,WAAWvC,GAAmCA,EAAM4B,SAASD,MAAQA,KAE3E,IAEV,CAACyB,EAAoBG,KACnB,GAAIrC,EAAM,CAER,OADaA,EAAKzE,KAAKuD,GAAmCA,EAAM4B,SAASD,MAC7DmC,MAAMV,EAAYG,EAC/B,CACD,MAAO,EAAE,IAEX,CAAC2B,EAA2B0C,IAC1BpC,EAAcA,eAACjH,EAAQuG,QAASI,EAAY0C,EAAQ5C,EAAAA,gBACtDE,EACAgC,EACAI,GAIIY,EAAwBrD,eAC3BoB,IACuB,aAAlB9E,GAAkD,mBAAlBA,GAC9BkD,IAAsB4B,EAAMkC,SAAWlC,EAAMmC,UAA0B,MAAdnC,EAAMtE,MACjEsE,EAAMoC,iBACNhE,EAAkB,CAChBrE,MAAO,CAAEmE,KAAK,EAAMmE,YAAa,IAAIlE,KACrCgC,OAAQH,EAAMG,SAGnB,GAEH,CAAC/B,EAAmBlD,KAGhBtC,QAAEA,GAAY0J,EAAiBA,kBAACC,EAAoBA,sBAC1DpH,EAAiBqH,EAAiBA,kBAAClK,EAAS6C,GAE5C,MAAMsH,EAAwB7D,eAC3B/G,IACC,MAAM6D,EAAM7D,EAAQ8D,SAASD,IAC7B7D,EAAQ6K,SACY,SAAlBxH,GAA8C,WAAlBA,OACxBpE,EACCgH,GACC3H,EAAAA,0BAAkBsD,UAAa3C,EAAgBlB,SAC7CO,EAAAA,IAACwM,EAAAA,SACa,CAAA,aAAAlJ,IAAaqE,OAAYhH,EACrC8L,OAAQlH,EACRuC,aAAcA,EACd4E,SAAUzE,KAGf,GAET,CAAClD,EAAe+C,EAAcG,IAG1B0E,EAAmBlE,EAAAA,aAAY,KACnCL,EAAcC,IAAqB,GAClC,CAACA,IAEJ,OACExH,6BACEb,EACciD,IAAA,MAAA,CAAA,aAAA0E,oBACKC,EAAc,mBAErB,MAAR9C,EACI+C,EACE,IAAI,IAAIG,IAAIH,EAAgB+E,MAAM,OAAOC,OAAOrE,KAAiBsE,KAAK,KACtEtE,EACFX,EAEN3E,IAAKf,EACLlC,KAAK,OACiB,uBAAkB,aAAlB8E,EACtB1B,SAAU,EACVE,MAAOd,KACH6H,aACFzB,EACAyC,EACAM,EACAjB,EACA,CAAEoC,UAAWjB,IAEdrM,SAAQ,MAARqF,EACC2B,EAAwBkG,GAExB3M,EAACiD,IAAA4B,EACC,CAAAC,KAAMkB,EACNjB,cAAeA,EACfnD,SAAUA,EACVoD,eAAgBA,EAChBK,cAAeiH,KACXpE,MAGVlI,EAAAA,IAACgN,EAAAA,iBAAgB,CAAC7J,GAAIqF,EAAgB/I,SAAA4I,MACtCrI,EAAAiD,IAACgK,EAAUA,WAAA,CAAAxN,SACA,MAARqF,EAAeqD,EAAaA,IAAeE,IAAuBC,IAAsB,OAIjG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', './useTestId-
|
|
2
|
-
//# sourceMappingURL=Flex-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', './useTestId-9afc201a', './classNames-08d99695', './boxalignment-6cee1ef3', './dimensions-f24f9a2b', './flexbox-8521f6aa', './flexitem-5db48325', './mergeInterpolations-9ede4cf7', 'css!./FlexStyles.styles.css'], (function(e,s,t,l,n,a,o,i,r,c){"use strict";var x="FlexStyles_marginZeroStyles__10p93f61";const f=[...Object.values(a.dimensionInterpolations),...Object.values(o.flexboxInterpolations),...Object.values(i.flexitemInterpolations),...Object.values(n.boxAlignmentInterpolations)],m=r.mergeInterpolations(f);e.Flex=({children:e,hasZeroMargins:n=!0,testId:a,...o})=>{const i=l.classNames(["FlexStyles_baseStyles__10p93f60",n&&x]),{class:r,...c}=m(o),f=t.useTestId(a);return s.jsx("div",{class:`${i} ${r}`,style:c,...f,children:e})},e.marginZeroStyles=x}));
|
|
2
|
+
//# sourceMappingURL=Flex-07d2aa5b.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Flex-
|
|
1
|
+
{"version":3,"file":"Flex-07d2aa5b.js","sources":["../../src/UNSAFE_Flex/Flex.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 { TestIdProps, useTestId } from '#hooks/UNSAFE_useTestId';\nimport { ComponentChildren } from 'preact';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport type { BoxAlignmentProps } from '../utils/UNSAFE_interpolations/boxalignment';\nimport { boxAlignmentInterpolations } from '../utils/UNSAFE_interpolations/boxalignment';\nimport type { DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { dimensionInterpolations } from '../utils/UNSAFE_interpolations/dimensions';\nimport type { FlexboxProps } from '../utils/UNSAFE_interpolations/flexbox';\nimport { flexboxInterpolations } from '../utils/UNSAFE_interpolations/flexbox';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { baseStyles, marginZeroStyles } from './FlexStyles.css';\n\ntype StyleProps = DimensionProps & FlexboxProps & FlexitemProps & BoxAlignmentProps;\n\ntype Props = StyleProps &\n TestIdProps & {\n children?: ComponentChildren;\n /**\n * @default true\n */\n hasZeroMargins?: boolean;\n };\n\nconst interpolations = [\n ...Object.values(dimensionInterpolations),\n ...Object.values(flexboxInterpolations),\n ...Object.values(flexitemInterpolations),\n ...Object.values(boxAlignmentInterpolations)\n];\n\nconst styleInterpolations = mergeInterpolations<Props>(interpolations);\n\nexport const Flex = ({ children, hasZeroMargins = true, testId, ...props }: Props) => {\n const flexComponentClasses = classNames([baseStyles, hasZeroMargins && marginZeroStyles]);\n const { class: cls, ...styles } = styleInterpolations(props);\n const testIdProps = useTestId(testId);\n return (\n <div class={`${flexComponentClasses} ${cls}`} style={styles} {...testIdProps}>\n {children}\n </div>\n );\n};\n"],"names":["interpolations","Object","values","dimensionInterpolations","flexboxInterpolations","flexitemInterpolations","boxAlignmentInterpolations","styleInterpolations","mergeInterpolations","children","hasZeroMargins","testId","props","flexComponentClasses","classNames","marginZeroStyles","class","cls","styles","testIdProps","useTestId","_jsx","style"],"mappings":"yUAgCA,MAAMA,EAAiB,IAClBC,OAAOC,OAAOC,8BACdF,OAAOC,OAAOE,4BACdH,OAAOC,OAAOG,6BACdJ,OAAOC,OAAOI,+BAGbC,EAAsBC,EAAAA,oBAA2BR,UAEnC,EAAGS,WAAUC,kBAAiB,EAAMC,YAAWC,MACjE,MAAMC,EAAuBC,EAAAA,WAAW,mCAAaJ,GAAkBK,KAC/DC,MAAOC,KAAQC,GAAWX,EAAoBK,GAChDO,EAAcC,YAAUT,GAC9B,OACEU,EAAAA,IAAK,MAAA,CAAAL,MAAO,GAAGH,KAAwBI,IAAOK,MAAOJ,KAAYC,WAC9DV,GAEH"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(['exports', 'preact/jsx-runtime', 'preact/hooks', 'preact/compat', './useFloating-
|
|
2
|
-
//# sourceMappingURL=Floating-
|
|
1
|
+
define(['exports', 'preact/jsx-runtime', 'preact/hooks', 'preact/compat', './useFloating-25daefd7', './refUtils-77e97004', './useOutsideClick-1b59c507', './useUser-12ec03f1', './useComponentTheme-5aa41a8f', './classNames-08d99695', './utils-ad4761c9', './themeContract.css-2e4b066d', './UNSAFE_Floating/themes/redwood/FloatingTheme', './UNSAFE_Floating/themes/FloatingStyles.css', './vanilla-extract-dynamic.esm-6065bbd7', './UNSAFE_Floating/themes/FloatingContract.css', './useUnsafeDomElementRef-75afb461'], (function(t,e,n,i,s,o,r,a,l,c,u,f,d,m,g,h,x){"use strict";const p=i.forwardRef((({data:t,anchorRef:i,tail:s,isRtl:r,backgroundColor:a},m)=>{const{styles:g,baseTheme:h}=l.useComponentTheme(d.FloatingRedwoodTheme),x=n.useRef(null),[p,b]=n.useState({arrowStyle:{visibility:"hidden"},arrowInnerStyle:{visibility:"hidden"}});n.useLayoutEffect((()=>{if(null==x.current)return;const{isCornerVerticalPlacement:e,isCornerHorizontalPlacement:n}=function(t,e,n){if("simple"===e&&n&&n.arrow){const{centerOffset:e}=n.arrow,i=7;let s=0,o=0;const r=t.current,a=void 0===r?.x&&void 0===r?.y;a&&(s=Math.round(r.getBoundingClientRect().height),o=Math.round(t.current?.getBoundingClientRect().width));return{isCornerVerticalPlacement:a?Math.abs(e)>=s/2-i/2:["start-top-corner","start-bottom-corner","end-top-corner","end-bottom-corner"].includes(n.origPlacement),isCornerHorizontalPlacement:a?Math.abs(e)>=o/2-i/2:["top-start-corner","top-end-corner","bottom-start-corner","bottom-end-corner"].includes(n.origPlacement)}}return{isCornerVerticalPlacement:!1,isCornerHorizontalPlacement:!1}}(i,s,t);b(function(t,e,n,i,s,o){const r={visibility:"visible"},a={visibility:"visible"};if("simple"===t&&s&&s.arrow){const{x:l,y:c,centerOffset:d}=s.arrow,m=7,g=6,h=5,x=5,p=0===d,b=d>0;function y(t){const e=t?g:m;w({borderTop:`${R(e)} solid ${u.rgba(f.colorSchemeVars.palette.neutral[90],.1)}`,borderRight:S(e),borderLeft:S(e)},r);const n=t?x:h;C({borderTop:`${R(n)} solid ${o}`,borderRight:`${S(n)}`,borderLeft:`${S(n)}`},a)}function w(t,e){Object.assign(e,t)}function C(t,e){Object.assign(e,t)}function A(t){return`rotate(${45*t}deg)`}function R(t){return`${t}px`}function S(t){return`${R(t)} solid transparent`}y(n||i);switch(s.placement.split("-")[0]){case"top":v();break;case"end":e?E():j();break;case"bottom":k();break;case"start":e?j():E()}function v(){null!=l&&(i?(w({top:"",bottom:R(2-m),left:R(l+(b?5:-5)),transform:A(b?5:3)},r),F()):(w({top:"",bottom:R(-m),left:R(p?l:l+(b?1:-1)),transform:A(0)},r),M()))}function j(){null!=c&&(n?(w({top:R(c+(b?2:-2)),right:"",left:R(-m-1),transform:A(b?7:5)},r),F()):(w({top:R(p?c:c+(b?-2:2)),right:"",left:R(1.5*-m),transform:A(2)},r),M()))}function k(){null!=l&&(i?(w({top:R(3-m),bottom:"",left:R(l+(b?4:-4)),transform:A(b?2:6)},r),C({top:R(-h),left:R((b?1:-1)-h)},a)):(w({top:R(-m),bottom:"",left:R(p?l:l+(b?1:-1)),transform:A(4)},r),M()))}function E(){null!=c&&(n?(w({top:R(c+(b?2:-2)),right:R(-m-1),left:"",transform:A(b?1:3)},r),C({top:R(-h),left:R((b?-2:2)-h)},a)):(w({top:R(p?c:c+(b?-2:2)),right:R(1.5*-m),left:"",transform:A(6)},r),M()))}function F(){C({top:R(-h),left:R((b?2:-2)-h)},a)}function M(){C({top:R(-h-2),left:R(-h)},a)}}return{arrowStyle:r,arrowInnerStyle:a}}(s,r,e,n,t,a))}),[t,a,t?.placement,t?.x,t?.y,t?.offset,t?.arrow,s,r,i]);const y=n.useMemo((()=>o.mergeRefs(m,x)),[m,x]);return"simple"===s&&e.jsxs("div",{ref:y,class:c.classNames([h,g.floatingTailBaseStyle]),style:p.arrowStyle,children:[" ",e.jsx("div",{class:c.classNames([g.floatingTailBaseStyle]),style:p.arrowInnerStyle})," "]})}));const b=i.forwardRef((({children:t,backgroundColor:i,onClickOutside:u,placement:f="bottom",anchorRef:b,offsetValue:y,class:w,tail:C="none",flipOptions:A={mainAxis:!0,crossAxis:!1},shiftOptions:R={mainAxis:!0,crossAxis:!1},sizeOptions:S={isMaxHeightAdjusted:!1,isMaxWidthAdjusted:!1},boundaryOptions:v={padding:0},onPosition:j,strategy:k},E)=>{const F=n.useRef(null),[M,O]=n.useState(),P=x.useUnsafeDomElementRef(b),[T,$]=n.useState(null),{styles:H,baseTheme:U}=l.useComponentTheme(d.FloatingRedwoodTheme);n.useLayoutEffect((()=>{$(P.current)}),[P]),P.current!==T&&$(P.current);const{direction:V}=a.useUser(),B="rtl"===V,N=n.useCallback((t=>{O(t),j?.(t)}),[j]),W=[s.offset(y),s.flip({mainAxis:A.mainAxis,crossAxis:A.crossAxis,fallbackPlacements:A.fallbackPlacements?.map((t=>s.logicalSide(t,V))),padding:v.padding}),s.shift({mainAxis:R.mainAxis,crossAxis:R.crossAxis,limiter:s.limitShift({mainAxis:R.mainAxis,crossAxis:R.crossAxis})}),...F.current?[s.arrow({element:F.current})]:[]];(S.isMaxHeightAdjusted||S.isMaxWidthAdjusted)&&W.push(s.size({apply({availableWidth:t,availableHeight:e,elements:n}){S.isMaxHeightAdjusted&&parseInt(n.floating.style.maxHeight)!==e&&Object.assign(n.floating.style,{maxHeight:`${Math.min(e,S.maxHeightCeiling||e)}px`}),S.isMaxWidthAdjusted&&parseInt(n.floating.style.maxWidth)!==t&&Object.assign(n.floating.style,{maxWidth:`${Math.min(t,S.maxWidthCeiling||t)}px`})},padding:v.padding}));const{x:I,y:z,reference:L,floating:D,refs:_,update:q}=s.useFloating({placement:f,middleware:W,onPosition:N,strategy:k}),[G,J]=n.useState(!1);n.useEffect((()=>{if(_.reference.current&&_.floating.current&&!0===G)return s.autoUpdate(_.reference.current,_.floating.current,q)}),[_.floating,_.reference,q,G]),n.useEffect((()=>{null!=I&&null!=z&&J(!0)}),[I,z]),r.useOutsideClick({isDisabled:!1,ref:_.floating,handler:u}),n.useLayoutEffect((()=>{if(T instanceof Element){return void L(T)}const t=T;if(null!=t&&null!=t.contextElement){const e=function(t,e){let n=null,i=null,s=!1;return{contextElement:t||void 0,getBoundingClientRect(){const o=t?.getBoundingClientRect()||{width:0,height:0,x:0,y:0},r="x"===e.axis||"both"===e.axis,a="y"===e.axis||"both"===e.axis;let l=o.width,c=o.height,u=o.x,f=o.y;return null==n&&e.x&&r&&(n=o.x-e.x),null==i&&e.y&&a&&(i=o.y-e.y),u-=n||0,f-=i||0,l=0,c=0,s?s&&(c="x"===e.axis?o.height:c,l="y"===e.axis?o.width:l):(l="y"===e.axis?o.width:0,c="x"===e.axis?o.height:0,u=r&&null!=e.x?e.x:u,f=a&&null!=e.y?e.y:f),s=!0,{width:l,height:c,x:u,y:f,top:f,right:u+l,bottom:f+c,left:u}}}}(t.contextElement,{axis:"both",x:t.x,y:t.y});return void L(e)}const e={getBoundingClientRect:()=>({width:0,height:0,x:t.x,y:t.y,top:t.y,left:t.x,right:t.x,bottom:t.y})};t&&null!=t.x&&L(e)}),[T,L]);const K=n.useMemo((()=>o.mergeRefs(E,D)),[E,D]),Q={top:z,left:I};let X={};i&&(X=g.assignInlineVars({[h.floatingVars.backgroundColor]:i}));const Y=null==I&&null==z?m.floatingVisibilityStyles.hidden:m.floatingVisibilityStyles.visible,Z=c.classNames([w,U,H.baseStyle,Y]),tt=b&&b.current;return e.jsxs("div",{class:Z,ref:K,style:{...Q,...X},children:[t,tt&&e.jsx(p,{ref:F,backgroundColor:i,data:M,anchorRef:P,tail:C,isRtl:B})]})}));t.Floating=b}));
|
|
2
|
+
//# sourceMappingURL=Floating-8192acb2.js.map
|