@carbon/react 1.83.0-rc.0 → 1.84.0-rc.0
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/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +895 -790
- package/README.md +1 -1
- package/es/components/AILabel/index.js +37 -40
- package/es/components/AISkeleton/AISkeletonIcon.js +6 -7
- package/es/components/AISkeleton/AISkeletonPlaceholder.js +6 -7
- package/es/components/AISkeleton/AISkeletonText.js +6 -7
- package/es/components/Accordion/Accordion.Skeleton.js +24 -25
- package/es/components/Accordion/Accordion.js +13 -14
- package/es/components/Accordion/AccordionItem.js +22 -23
- package/es/components/Accordion/AccordionProvider.js +6 -7
- package/es/components/AspectRatio/AspectRatio.js +9 -10
- package/es/components/BadgeIndicator/index.js +7 -8
- package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
- package/es/components/Breadcrumb/Breadcrumb.js +3 -3
- package/es/components/Breadcrumb/BreadcrumbItem.js +9 -9
- package/es/components/Button/Button.Skeleton.js +10 -11
- package/es/components/Button/Button.js +5 -5
- package/es/components/Button/ButtonBase.js +27 -28
- package/es/components/ButtonSet/ButtonSet.js +2 -2
- package/es/components/ChatButton/ChatButton.Skeleton.js +7 -8
- package/es/components/ChatButton/ChatButton.js +13 -14
- package/es/components/Checkbox/Checkbox.Skeleton.js +8 -9
- package/es/components/Checkbox/Checkbox.js +33 -34
- package/es/components/CheckboxGroup/CheckboxGroup.js +28 -29
- package/es/components/ClassPrefix/index.js +6 -7
- package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +12 -13
- package/es/components/CodeSnippet/CodeSnippet.js +41 -42
- package/es/components/ComboBox/ComboBox.js +42 -48
- package/es/components/ComboBox/tools/filter.js +9 -12
- package/es/components/ComboButton/index.js +22 -24
- package/es/components/ComposedModal/ComposedModal.js +49 -52
- package/es/components/ComposedModal/ModalFooter.js +42 -47
- package/es/components/ComposedModal/ModalHeader.js +21 -22
- package/es/components/ContainedList/ContainedList.js +17 -18
- package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +16 -17
- package/es/components/ContentSwitcher/ContentSwitcher.d.ts +17 -29
- package/es/components/ContentSwitcher/ContentSwitcher.js +100 -126
- package/es/components/ContentSwitcher/index.d.ts +3 -4
- package/es/components/ContextMenu/useContextMenu.js +1 -2
- package/es/components/Copy/Copy.js +13 -14
- package/es/components/CopyButton/CopyButton.js +14 -15
- package/es/components/DangerButton/DangerButton.js +2 -2
- package/es/components/DataTable/DataTable.d.ts +81 -283
- package/es/components/DataTable/DataTable.js +124 -172
- package/es/components/DataTable/Table.d.ts +2 -2
- package/es/components/DataTable/Table.js +19 -22
- package/es/components/DataTable/TableActionList.d.ts +1 -1
- package/es/components/DataTable/TableBatchAction.js +9 -12
- package/es/components/DataTable/TableBatchActions.js +27 -29
- package/es/components/DataTable/TableBody.d.ts +3 -3
- package/es/components/DataTable/TableBody.js +9 -12
- package/es/components/DataTable/TableCell.d.ts +3 -4
- package/es/components/DataTable/TableCell.js +2 -2
- package/es/components/DataTable/TableContainer.d.ts +2 -3
- package/es/components/DataTable/TableContainer.js +15 -16
- package/es/components/DataTable/TableDecoratorRow.js +8 -9
- package/es/components/DataTable/TableExpandHeader.d.ts +2 -3
- package/es/components/DataTable/TableExpandHeader.js +18 -19
- package/es/components/DataTable/TableExpandRow.js +20 -21
- package/es/components/DataTable/TableExpandedRow.d.ts +3 -3
- package/es/components/DataTable/TableExpandedRow.js +10 -11
- package/es/components/DataTable/TableHead.d.ts +1 -1
- package/es/components/DataTable/TableHeader.d.ts +4 -4
- package/es/components/DataTable/TableHeader.js +29 -30
- package/es/components/DataTable/TableRow.d.ts +3 -4
- package/es/components/DataTable/TableRow.js +4 -4
- package/es/components/DataTable/TableSelectAll.js +14 -15
- package/es/components/DataTable/TableSelectRow.js +16 -17
- package/es/components/DataTable/TableSlugRow.js +7 -8
- package/es/components/DataTable/TableToolbar.js +9 -10
- package/es/components/DataTable/TableToolbarAction.js +2 -2
- package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/es/components/DataTable/TableToolbarMenu.js +10 -11
- package/es/components/DataTable/TableToolbarSearch.js +24 -26
- package/es/components/DataTable/index.d.ts +1 -1
- package/es/components/DataTable/state/sorting.js +3 -4
- package/es/components/DataTable/tools/filter.js +10 -12
- package/es/components/DataTable/tools/normalize.js +6 -8
- package/es/components/DataTable/tools/sorting.js +24 -30
- package/es/components/DataTableSkeleton/DataTableSkeleton.js +26 -27
- package/es/components/DatePicker/DatePicker.Skeleton.js +15 -16
- package/es/components/DatePicker/DatePicker.js +104 -81
- package/es/components/DatePickerInput/DatePickerInput.d.ts +3 -4
- package/es/components/DatePickerInput/DatePickerInput.js +24 -25
- package/es/components/Dialog/index.d.ts +194 -10
- package/es/components/Dialog/index.js +458 -39
- package/es/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
- package/es/components/Dropdown/Dropdown.Skeleton.js +10 -11
- package/es/components/Dropdown/Dropdown.d.ts +3 -3
- package/es/components/Dropdown/Dropdown.js +57 -60
- package/es/components/ErrorBoundary/ErrorBoundary.js +4 -4
- package/es/components/ExpandableSearch/ExpandableSearch.js +11 -12
- package/es/components/FeatureFlags/index.js +13 -14
- package/es/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
- package/es/components/FileUploader/FileUploader.Skeleton.js +9 -10
- package/es/components/FileUploader/FileUploader.d.ts +2 -3
- package/es/components/FileUploader/FileUploader.js +33 -35
- package/es/components/FileUploader/FileUploaderButton.d.ts +2 -3
- package/es/components/FileUploader/FileUploaderButton.js +20 -21
- package/es/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
- package/es/components/FileUploader/FileUploaderDropContainer.js +20 -21
- package/es/components/FileUploader/FileUploaderItem.d.ts +2 -3
- package/es/components/FileUploader/FileUploaderItem.js +26 -27
- package/es/components/FileUploader/Filename.d.ts +3 -4
- package/es/components/FileUploader/Filename.js +16 -17
- package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +9 -10
- package/es/components/FluidComboBox/FluidComboBox.js +8 -9
- package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +16 -17
- package/es/components/FluidDatePicker/FluidDatePicker.js +13 -14
- package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
- package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +9 -10
- package/es/components/FluidDropdown/FluidDropdown.js +8 -9
- package/es/components/FluidForm/FluidForm.d.ts +3 -4
- package/es/components/FluidForm/FluidForm.js +8 -9
- package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +9 -10
- package/es/components/FluidMultiSelect/FluidMultiSelect.js +10 -11
- package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +9 -10
- package/es/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
- package/es/components/FluidNumberInput/FluidNumberInput.js +41 -8
- package/es/components/FluidSearch/FluidSearch.Skeleton.js +9 -10
- package/es/components/FluidSearch/FluidSearch.js +7 -8
- package/es/components/FluidSelect/FluidSelect.Skeleton.js +9 -10
- package/es/components/FluidSelect/FluidSelect.js +8 -9
- package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
- package/es/components/FluidTextArea/FluidTextArea.js +7 -8
- package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
- package/es/components/FluidTextInput/FluidTextInput.js +9 -10
- package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +8 -9
- package/es/components/FluidTimePicker/FluidTimePicker.js +23 -24
- package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -8
- package/es/components/Form/Form.js +7 -8
- package/es/components/FormGroup/FormGroup.d.ts +3 -4
- package/es/components/FormGroup/FormGroup.js +15 -16
- package/es/components/FormItem/FormItem.js +7 -8
- package/es/components/FormLabel/FormLabel.js +8 -9
- package/es/components/Grid/CSSGrid.js +23 -25
- package/es/components/Grid/Column.js +32 -31
- package/es/components/Grid/ColumnHang.js +8 -9
- package/es/components/Grid/FlexGrid.js +12 -13
- package/es/components/Grid/Grid.js +3 -3
- package/es/components/Grid/GridContext.d.ts +2 -2
- package/es/components/Grid/GridContext.js +6 -7
- package/es/components/Grid/Row.js +10 -11
- package/es/components/Heading/index.js +13 -14
- package/es/components/Icon/Icon.Skeleton.js +6 -7
- package/es/components/IconButton/index.js +30 -26
- package/es/components/IconIndicator/index.js +10 -11
- package/es/components/IdPrefix/index.js +6 -7
- package/es/components/InlineCheckbox/InlineCheckbox.js +6 -6
- package/es/components/InlineLoading/InlineLoading.js +19 -20
- package/es/components/Layer/LayerContext.js +2 -2
- package/es/components/Layer/index.d.ts +4 -0
- package/es/components/Layer/index.js +21 -15
- package/es/components/Layout/index.js +24 -29
- package/es/components/LayoutDirection/LayoutDirection.js +10 -11
- package/es/components/LayoutDirection/LayoutDirectionContext.js +2 -2
- package/es/components/Link/Link.d.ts +1 -1
- package/es/components/Link/Link.js +19 -20
- package/es/components/ListBox/ListBox.d.ts +2 -3
- package/es/components/ListBox/ListBox.js +5 -5
- package/es/components/ListBox/ListBoxField.d.ts +3 -4
- package/es/components/ListBox/ListBoxField.js +8 -9
- package/es/components/ListBox/ListBoxMenu.d.ts +2 -3
- package/es/components/ListBox/ListBoxMenu.js +7 -8
- package/es/components/ListBox/ListBoxMenuIcon.js +8 -9
- package/es/components/ListBox/ListBoxMenuItem.d.ts +2 -3
- package/es/components/ListBox/ListBoxMenuItem.js +11 -13
- package/es/components/ListBox/ListBoxSelection.js +14 -15
- package/es/components/ListBox/next/ListBoxSelection.js +16 -17
- package/es/components/ListBox/next/ListBoxTrigger.js +8 -9
- package/es/components/ListItem/ListItem.js +7 -8
- package/es/components/Loading/Loading.d.ts +3 -3
- package/es/components/Loading/Loading.js +14 -15
- package/es/components/Menu/Menu.js +26 -27
- package/es/components/Menu/MenuItem.js +55 -60
- package/es/components/MenuButton/index.js +20 -22
- package/es/components/Modal/Modal.d.ts +2 -3
- package/es/components/Modal/Modal.js +85 -93
- package/es/components/ModalWrapper/ModalWrapper.js +9 -9
- package/es/components/MultiSelect/FilterableMultiSelect.js +68 -74
- package/es/components/MultiSelect/MultiSelect.js +65 -67
- package/es/components/MultiSelect/tools/sorting.js +11 -15
- package/es/components/Notification/Notification.js +137 -146
- package/es/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
- package/es/components/NumberInput/NumberFormatPropTypes.js +40 -0
- package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
- package/es/components/NumberInput/NumberInput.d.ts +39 -3
- package/es/components/NumberInput/NumberInput.js +195 -65
- package/es/components/OrderedList/OrderedList.js +9 -10
- package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
- package/es/components/OverflowMenu/OverflowMenu.js +42 -48
- package/es/components/OverflowMenu/index.js +3 -3
- package/es/components/OverflowMenu/next/index.js +17 -18
- package/es/components/OverflowMenuItem/OverflowMenuItem.js +4 -4
- package/es/components/OverflowMenuV2/index.js +3 -3
- package/es/components/PageHeader/PageHeader.d.ts +29 -5
- package/es/components/PageHeader/PageHeader.js +136 -90
- package/es/components/Pagination/Pagination.Skeleton.js +12 -13
- package/es/components/Pagination/Pagination.js +40 -41
- package/es/components/Pagination/experimental/PageSelector.js +11 -12
- package/es/components/Pagination/experimental/Pagination.js +34 -35
- package/es/components/PaginationNav/PaginationNav.js +63 -68
- package/es/components/Popover/index.js +40 -42
- package/es/components/PrimaryButton/PrimaryButton.js +2 -2
- package/es/components/ProgressBar/ProgressBar.js +24 -25
- package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +12 -13
- package/es/components/ProgressIndicator/ProgressIndicator.js +49 -52
- package/es/components/RadioButton/RadioButton.Skeleton.js +4 -4
- package/es/components/RadioButton/RadioButton.js +10 -10
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +16 -16
- package/es/components/RadioTile/RadioTile.js +28 -29
- package/es/components/Search/Search.Skeleton.js +9 -10
- package/es/components/Search/Search.js +36 -38
- package/es/components/SecondaryButton/SecondaryButton.js +2 -2
- package/es/components/Select/Select.Skeleton.js +10 -11
- package/es/components/Select/Select.js +42 -43
- package/es/components/SelectItem/SelectItem.js +10 -11
- package/es/components/SelectItemGroup/SelectItemGroup.js +9 -10
- package/es/components/ShapeIndicator/index.js +13 -14
- package/es/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
- package/es/components/SkeletonIcon/SkeletonIcon.js +7 -12
- package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +6 -7
- package/es/components/SkeletonText/SkeletonText.js +12 -13
- package/es/components/Slider/Slider.Skeleton.js +25 -26
- package/es/components/Slider/Slider.js +99 -113
- package/es/components/Slider/SliderHandles.js +20 -20
- package/es/components/Stack/HStack.js +2 -2
- package/es/components/Stack/Stack.js +2 -2
- package/es/components/Stack/VStack.js +2 -2
- package/es/components/StructuredList/StructuredList.Skeleton.js +17 -18
- package/es/components/StructuredList/StructuredList.js +24 -24
- package/es/components/Switch/IconSwitch.js +3 -3
- package/es/components/Switch/Switch.js +4 -4
- package/es/components/TabContent/TabContent.js +2 -2
- package/es/components/Tabs/Tabs.Skeleton.js +12 -13
- package/es/components/Tabs/Tabs.js +141 -156
- package/es/components/Tabs/usePressable.js +7 -8
- package/es/components/Tag/DismissibleTag.js +26 -27
- package/es/components/Tag/OperationalTag.js +16 -17
- package/es/components/Tag/SelectableTag.js +19 -20
- package/es/components/Tag/Tag.Skeleton.js +7 -8
- package/es/components/Tag/Tag.js +33 -34
- package/es/components/Text/Text.js +9 -10
- package/es/components/Text/TextDirection.js +7 -8
- package/es/components/Text/createTextComponent.js +2 -2
- package/es/components/TextArea/TextArea.Skeleton.js +4 -4
- package/es/components/TextArea/TextArea.js +22 -22
- package/es/components/TextInput/ControlledPasswordInput.d.ts +2 -3
- package/es/components/TextInput/ControlledPasswordInput.js +36 -37
- package/es/components/TextInput/PasswordInput.js +40 -41
- package/es/components/TextInput/TextInput.Skeleton.js +9 -10
- package/es/components/TextInput/TextInput.js +43 -44
- package/es/components/TextInput/util.js +14 -17
- package/es/components/Theme/index.js +19 -21
- package/es/components/Tile/Tile.js +98 -104
- package/es/components/TileGroup/TileGroup.d.ts +3 -4
- package/es/components/TileGroup/TileGroup.js +8 -8
- package/es/components/TimePicker/TimePicker.d.ts +2 -3
- package/es/components/TimePicker/TimePicker.js +14 -14
- package/es/components/TimePickerSelect/TimePickerSelect.js +4 -4
- package/es/components/Toggle/Toggle.Skeleton.js +8 -9
- package/es/components/Toggle/Toggle.js +27 -28
- package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +14 -15
- package/es/components/Toggletip/index.js +43 -49
- package/es/components/Tooltip/DefinitionTooltip.js +17 -18
- package/es/components/Tooltip/Tooltip.d.ts +3 -0
- package/es/components/Tooltip/Tooltip.js +39 -28
- package/es/components/TreeView/TreeNode.js +64 -56
- package/es/components/TreeView/TreeView.js +44 -37
- package/es/components/UIShell/Content.js +8 -9
- package/es/components/UIShell/Header.js +7 -8
- package/es/components/UIShell/HeaderContainer.js +7 -8
- package/es/components/UIShell/HeaderGlobalAction.js +14 -15
- package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/es/components/UIShell/HeaderMenu.d.ts +10 -112
- package/es/components/UIShell/HeaderMenu.js +154 -201
- package/es/components/UIShell/HeaderMenuButton.js +14 -15
- package/es/components/UIShell/HeaderMenuItem.js +21 -20
- package/es/components/UIShell/HeaderName.js +9 -10
- package/es/components/UIShell/HeaderNavigation.js +10 -11
- package/es/components/UIShell/HeaderPanel.js +11 -12
- package/es/components/UIShell/HeaderSideNavItems.js +7 -8
- package/es/components/UIShell/Link.js +11 -12
- package/es/components/UIShell/SideNav.js +30 -32
- package/es/components/UIShell/SideNavDetails.js +9 -10
- package/es/components/UIShell/SideNavDivider.js +6 -7
- package/es/components/UIShell/SideNavFooter.js +13 -14
- package/es/components/UIShell/SideNavHeader.js +8 -9
- package/es/components/UIShell/SideNavIcon.js +7 -8
- package/es/components/UIShell/SideNavItem.js +7 -8
- package/es/components/UIShell/SideNavItems.js +10 -11
- package/es/components/UIShell/SideNavLink.js +15 -16
- package/es/components/UIShell/SideNavLinkText.js +7 -8
- package/es/components/UIShell/SideNavMenu.js +20 -21
- package/es/components/UIShell/SideNavMenuItem.js +5 -5
- package/es/components/UIShell/SideNavSwitcher.js +8 -8
- package/es/components/UIShell/SkipToContent.js +9 -10
- package/es/components/UIShell/Switcher.js +12 -13
- package/es/components/UIShell/SwitcherDivider.js +6 -7
- package/es/components/UIShell/SwitcherItem.js +3 -3
- package/es/components/UnorderedList/UnorderedList.js +8 -9
- package/es/index.js +25 -26
- package/es/internal/FloatingMenu.js +30 -32
- package/es/internal/Selection.js +15 -17
- package/{lib/feature-flags.d.ts → es/internal/__mocks__/mockHTMLElement.d.ts} +4 -2
- package/es/internal/createClassWrapper.js +2 -2
- package/es/internal/getAnnouncement.d.ts +8 -0
- package/es/internal/getAnnouncement.js +22 -0
- package/es/internal/keyboard/match.js +6 -7
- package/es/internal/useControllableState.d.ts +1 -1
- package/es/internal/useControllableState.js +8 -9
- package/es/internal/useDelayedState.js +1 -2
- package/es/internal/useDocumentLang.d.ts +12 -0
- package/es/internal/useId.js +4 -6
- package/es/internal/useIdPrefix.js +3 -3
- package/es/internal/useMatchMedia.js +1 -2
- package/es/internal/useMergedRefs.d.ts +1 -1
- package/es/internal/useNoInteractiveChildren.js +2 -4
- package/es/internal/useNormalizedInputProps.js +12 -13
- package/es/internal/usePrefix.js +3 -3
- package/es/internal/useResizeObserver.d.ts +14 -0
- package/es/internal/useResizeObserver.js +73 -0
- package/es/internal/useSavedCallback.js +1 -3
- package/es/internal/wrapFocus.js +23 -35
- package/es/prop-types/deprecate.js +1 -4
- package/es/prop-types/deprecateValuesWithin.js +1 -4
- package/es/prop-types/isRequiredOneOf.js +1 -4
- package/es/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
- package/es/tools/events.js +1 -4
- package/es/tools/mergeRefs.js +9 -14
- package/es/tools/uniqueId.js +1 -2
- package/es/tools/wrapComponent.d.ts +3 -4
- package/es/tools/wrapComponent.js +11 -13
- package/es/types/common.d.ts +0 -2
- package/lib/components/AILabel/index.js +27 -30
- package/lib/components/AISkeleton/AISkeletonIcon.js +4 -5
- package/lib/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
- package/lib/components/AISkeleton/AISkeletonText.js +4 -5
- package/lib/components/Accordion/Accordion.Skeleton.js +9 -10
- package/lib/components/Accordion/Accordion.js +10 -11
- package/lib/components/Accordion/AccordionItem.js +13 -14
- package/lib/components/Accordion/AccordionProvider.js +4 -5
- package/lib/components/AspectRatio/AspectRatio.js +7 -8
- package/lib/components/BadgeIndicator/index.js +5 -6
- package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
- package/lib/components/Button/Button.Skeleton.js +7 -8
- package/lib/components/Button/ButtonBase.js +23 -24
- package/lib/components/ChatButton/ChatButton.Skeleton.js +5 -6
- package/lib/components/ChatButton/ChatButton.js +11 -12
- package/lib/components/Checkbox/Checkbox.Skeleton.js +4 -5
- package/lib/components/Checkbox/Checkbox.js +19 -20
- package/lib/components/CheckboxGroup/CheckboxGroup.js +16 -17
- package/lib/components/ClassPrefix/index.js +4 -5
- package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
- package/lib/components/CodeSnippet/CodeSnippet.js +27 -29
- package/lib/components/ComboBox/ComboBox.js +24 -30
- package/lib/components/ComboBox/tools/filter.js +9 -12
- package/lib/components/ComboButton/index.js +16 -18
- package/lib/components/ComposedModal/ComposedModal.js +31 -34
- package/lib/components/ComposedModal/ModalFooter.js +37 -42
- package/lib/components/ComposedModal/ModalHeader.js +14 -15
- package/lib/components/ContainedList/ContainedList.js +10 -11
- package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
- package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +17 -29
- package/lib/components/ContentSwitcher/ContentSwitcher.js +98 -124
- package/lib/components/ContentSwitcher/index.d.ts +3 -4
- package/lib/components/ContextMenu/useContextMenu.js +1 -2
- package/lib/components/Copy/Copy.js +11 -12
- package/lib/components/CopyButton/CopyButton.js +10 -11
- package/lib/components/DataTable/DataTable.d.ts +81 -283
- package/lib/components/DataTable/DataTable.js +123 -172
- package/lib/components/DataTable/Table.d.ts +2 -2
- package/lib/components/DataTable/Table.js +15 -18
- package/lib/components/DataTable/TableActionList.d.ts +1 -1
- package/lib/components/DataTable/TableBatchAction.js +8 -11
- package/lib/components/DataTable/TableBatchActions.js +18 -20
- package/lib/components/DataTable/TableBody.d.ts +3 -3
- package/lib/components/DataTable/TableBody.js +8 -11
- package/lib/components/DataTable/TableCell.d.ts +3 -4
- package/lib/components/DataTable/TableContainer.d.ts +2 -3
- package/lib/components/DataTable/TableContainer.js +9 -10
- package/lib/components/DataTable/TableDecoratorRow.js +4 -5
- package/lib/components/DataTable/TableExpandHeader.d.ts +2 -3
- package/lib/components/DataTable/TableExpandHeader.js +14 -15
- package/lib/components/DataTable/TableExpandRow.js +13 -14
- package/lib/components/DataTable/TableExpandedRow.d.ts +3 -3
- package/lib/components/DataTable/TableExpandedRow.js +6 -7
- package/lib/components/DataTable/TableHead.d.ts +1 -1
- package/lib/components/DataTable/TableHeader.d.ts +4 -4
- package/lib/components/DataTable/TableHeader.js +15 -16
- package/lib/components/DataTable/TableRow.d.ts +3 -4
- package/lib/components/DataTable/TableSelectAll.js +11 -12
- package/lib/components/DataTable/TableSelectRow.js +12 -13
- package/lib/components/DataTable/TableSlugRow.js +4 -5
- package/lib/components/DataTable/TableToolbar.js +7 -8
- package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/lib/components/DataTable/TableToolbarMenu.js +8 -9
- package/lib/components/DataTable/TableToolbarSearch.js +22 -24
- package/lib/components/DataTable/index.d.ts +1 -1
- package/lib/components/DataTable/state/sorting.js +3 -4
- package/lib/components/DataTable/tools/filter.js +10 -12
- package/lib/components/DataTable/tools/normalize.js +6 -8
- package/lib/components/DataTable/tools/sorting.js +24 -30
- package/lib/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
- package/lib/components/DatePicker/DatePicker.Skeleton.js +7 -8
- package/lib/components/DatePicker/DatePicker.js +87 -64
- package/lib/components/DatePickerInput/DatePickerInput.d.ts +3 -4
- package/lib/components/DatePickerInput/DatePickerInput.js +5 -6
- package/lib/components/Dialog/index.d.ts +194 -10
- package/lib/components/Dialog/index.js +457 -33
- package/lib/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
- package/lib/components/Dropdown/Dropdown.Skeleton.js +6 -7
- package/lib/components/Dropdown/Dropdown.d.ts +3 -3
- package/lib/components/Dropdown/Dropdown.js +40 -43
- package/lib/components/ErrorBoundary/ErrorBoundary.js +2 -2
- package/lib/components/ExpandableSearch/ExpandableSearch.js +9 -10
- package/lib/components/FeatureFlags/index.js +11 -12
- package/lib/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
- package/lib/components/FileUploader/FileUploader.Skeleton.js +4 -5
- package/lib/components/FileUploader/FileUploader.d.ts +2 -3
- package/lib/components/FileUploader/FileUploader.js +22 -24
- package/lib/components/FileUploader/FileUploaderButton.d.ts +2 -3
- package/lib/components/FileUploader/FileUploaderButton.js +16 -17
- package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
- package/lib/components/FileUploader/FileUploaderDropContainer.js +15 -16
- package/lib/components/FileUploader/FileUploaderItem.d.ts +2 -3
- package/lib/components/FileUploader/FileUploaderItem.js +13 -14
- package/lib/components/FileUploader/Filename.d.ts +3 -4
- package/lib/components/FileUploader/Filename.js +9 -10
- package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
- package/lib/components/FluidComboBox/FluidComboBox.js +5 -6
- package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
- package/lib/components/FluidDatePicker/FluidDatePicker.js +10 -11
- package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
- package/lib/components/FluidDropdown/FluidDropdown.js +5 -6
- package/lib/components/FluidForm/FluidForm.d.ts +3 -4
- package/lib/components/FluidForm/FluidForm.js +5 -6
- package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
- package/lib/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
- package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
- package/lib/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
- package/lib/components/FluidNumberInput/FluidNumberInput.js +38 -5
- package/lib/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
- package/lib/components/FluidSearch/FluidSearch.js +4 -5
- package/lib/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
- package/lib/components/FluidSelect/FluidSelect.js +5 -6
- package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
- package/lib/components/FluidTextArea/FluidTextArea.js +4 -5
- package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
- package/lib/components/FluidTextInput/FluidTextInput.js +5 -6
- package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
- package/lib/components/FluidTimePicker/FluidTimePicker.js +11 -12
- package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
- package/lib/components/Form/Form.js +5 -6
- package/lib/components/FormGroup/FormGroup.d.ts +3 -4
- package/lib/components/FormGroup/FormGroup.js +11 -12
- package/lib/components/FormItem/FormItem.js +5 -6
- package/lib/components/FormLabel/FormLabel.js +6 -7
- package/lib/components/Grid/CSSGrid.js +17 -19
- package/lib/components/Grid/Column.js +28 -27
- package/lib/components/Grid/ColumnHang.js +6 -7
- package/lib/components/Grid/FlexGrid.js +9 -10
- package/lib/components/Grid/GridContext.d.ts +2 -2
- package/lib/components/Grid/GridContext.js +10 -29
- package/lib/components/Grid/Row.js +8 -9
- package/lib/components/Heading/index.js +5 -6
- package/lib/components/Icon/Icon.Skeleton.js +4 -5
- package/lib/components/IconButton/index.js +26 -22
- package/lib/components/IconIndicator/index.js +7 -8
- package/lib/components/IdPrefix/index.js +4 -5
- package/lib/components/InlineLoading/InlineLoading.js +9 -10
- package/lib/components/Layer/index.d.ts +4 -0
- package/lib/components/Layer/index.js +16 -10
- package/lib/components/Layout/index.js +21 -26
- package/lib/components/LayoutDirection/LayoutDirection.js +6 -7
- package/lib/components/Link/Link.d.ts +1 -1
- package/lib/components/Link/Link.js +15 -16
- package/lib/components/ListBox/ListBox.d.ts +2 -3
- package/lib/components/ListBox/ListBoxField.d.ts +3 -4
- package/lib/components/ListBox/ListBoxField.js +6 -7
- package/lib/components/ListBox/ListBoxMenu.d.ts +2 -3
- package/lib/components/ListBox/ListBoxMenu.js +5 -6
- package/lib/components/ListBox/ListBoxMenuIcon.js +4 -5
- package/lib/components/ListBox/ListBoxMenuItem.d.ts +2 -3
- package/lib/components/ListBox/ListBoxMenuItem.js +8 -10
- package/lib/components/ListBox/ListBoxSelection.js +8 -9
- package/lib/components/ListBox/next/ListBoxSelection.js +9 -10
- package/lib/components/ListBox/next/ListBoxTrigger.js +5 -6
- package/lib/components/ListItem/ListItem.js +5 -6
- package/lib/components/Loading/Loading.d.ts +3 -3
- package/lib/components/Loading/Loading.js +8 -9
- package/lib/components/Menu/Menu.js +23 -24
- package/lib/components/Menu/MenuItem.js +39 -44
- package/lib/components/MenuButton/index.js +16 -18
- package/lib/components/Modal/Modal.d.ts +2 -3
- package/lib/components/Modal/Modal.js +55 -63
- package/lib/components/ModalWrapper/ModalWrapper.js +2 -2
- package/lib/components/MultiSelect/FilterableMultiSelect.js +46 -52
- package/lib/components/MultiSelect/MultiSelect.js +43 -45
- package/lib/components/MultiSelect/tools/sorting.js +11 -15
- package/lib/components/Notification/Notification.js +96 -105
- package/lib/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
- package/lib/components/NumberInput/NumberFormatPropTypes.js +48 -0
- package/lib/components/NumberInput/NumberInput.Skeleton.js +6 -7
- package/lib/components/NumberInput/NumberInput.d.ts +39 -3
- package/lib/components/NumberInput/NumberInput.js +173 -43
- package/lib/components/OrderedList/OrderedList.js +7 -8
- package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
- package/lib/components/OverflowMenu/OverflowMenu.js +35 -41
- package/lib/components/OverflowMenu/next/index.js +12 -13
- package/lib/components/PageHeader/PageHeader.d.ts +29 -5
- package/lib/components/PageHeader/PageHeader.js +119 -73
- package/lib/components/Pagination/Pagination.Skeleton.js +4 -5
- package/lib/components/Pagination/Pagination.js +24 -25
- package/lib/components/Pagination/experimental/PageSelector.js +8 -9
- package/lib/components/Pagination/experimental/Pagination.js +20 -21
- package/lib/components/PaginationNav/PaginationNav.js +33 -38
- package/lib/components/Popover/index.js +26 -28
- package/lib/components/ProgressBar/ProgressBar.js +11 -12
- package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
- package/lib/components/ProgressIndicator/ProgressIndicator.js +29 -32
- package/lib/components/RadioTile/RadioTile.js +17 -18
- package/lib/components/Search/Search.Skeleton.js +5 -6
- package/lib/components/Search/Search.js +26 -28
- package/lib/components/Select/Select.Skeleton.js +5 -6
- package/lib/components/Select/Select.js +24 -25
- package/lib/components/SelectItem/SelectItem.js +8 -9
- package/lib/components/SelectItemGroup/SelectItemGroup.js +7 -8
- package/lib/components/ShapeIndicator/index.js +7 -8
- package/lib/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
- package/lib/components/SkeletonIcon/SkeletonIcon.js +5 -10
- package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
- package/lib/components/SkeletonText/SkeletonText.js +8 -9
- package/lib/components/Slider/Slider.Skeleton.js +8 -9
- package/lib/components/Slider/Slider.js +69 -83
- package/lib/components/Slider/SliderHandles.js +6 -6
- package/lib/components/StructuredList/StructuredList.Skeleton.js +5 -6
- package/lib/components/Tabs/Tabs.Skeleton.js +5 -6
- package/lib/components/Tabs/Tabs.js +83 -98
- package/lib/components/Tabs/usePressable.js +7 -8
- package/lib/components/Tag/DismissibleTag.js +16 -17
- package/lib/components/Tag/OperationalTag.js +10 -11
- package/lib/components/Tag/SelectableTag.js +13 -14
- package/lib/components/Tag/Tag.Skeleton.js +5 -6
- package/lib/components/Tag/Tag.js +19 -20
- package/lib/components/Text/Text.js +6 -7
- package/lib/components/Text/TextDirection.js +5 -6
- package/lib/components/TextArea/TextArea.js +3 -3
- package/lib/components/TextInput/ControlledPasswordInput.d.ts +2 -3
- package/lib/components/TextInput/ControlledPasswordInput.js +24 -25
- package/lib/components/TextInput/PasswordInput.js +26 -27
- package/lib/components/TextInput/TextInput.Skeleton.js +5 -6
- package/lib/components/TextInput/TextInput.js +27 -28
- package/lib/components/TextInput/util.js +14 -17
- package/lib/components/Theme/index.js +10 -12
- package/lib/components/Tile/Tile.js +68 -74
- package/lib/components/TileGroup/TileGroup.d.ts +3 -4
- package/lib/components/TimePicker/TimePicker.d.ts +2 -3
- package/lib/components/Toggle/Toggle.Skeleton.js +4 -5
- package/lib/components/Toggle/Toggle.js +17 -18
- package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
- package/lib/components/Toggletip/index.js +33 -39
- package/lib/components/Tooltip/DefinitionTooltip.js +13 -14
- package/lib/components/Tooltip/Tooltip.d.ts +3 -0
- package/lib/components/Tooltip/Tooltip.js +33 -22
- package/lib/components/TreeView/TreeNode.js +40 -32
- package/lib/components/TreeView/TreeView.js +41 -34
- package/lib/components/UIShell/Content.js +6 -7
- package/lib/components/UIShell/Header.js +5 -6
- package/lib/components/UIShell/HeaderContainer.js +5 -6
- package/lib/components/UIShell/HeaderGlobalAction.js +12 -13
- package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/lib/components/UIShell/HeaderMenu.d.ts +10 -112
- package/lib/components/UIShell/HeaderMenu.js +152 -199
- package/lib/components/UIShell/HeaderMenuButton.js +10 -11
- package/lib/components/UIShell/HeaderMenuItem.js +17 -16
- package/lib/components/UIShell/HeaderName.js +6 -7
- package/lib/components/UIShell/HeaderNavigation.js +7 -8
- package/lib/components/UIShell/HeaderPanel.js +9 -10
- package/lib/components/UIShell/HeaderSideNavItems.js +5 -6
- package/lib/components/UIShell/Link.js +8 -9
- package/lib/components/UIShell/SideNav.js +23 -25
- package/lib/components/UIShell/SideNavDetails.js +6 -7
- package/lib/components/UIShell/SideNavDivider.js +3 -4
- package/lib/components/UIShell/SideNavFooter.js +6 -7
- package/lib/components/UIShell/SideNavHeader.js +5 -6
- package/lib/components/UIShell/SideNavIcon.js +5 -6
- package/lib/components/UIShell/SideNavItem.js +5 -6
- package/lib/components/UIShell/SideNavItems.js +5 -6
- package/lib/components/UIShell/SideNavLink.js +10 -11
- package/lib/components/UIShell/SideNavLinkText.js +5 -6
- package/lib/components/UIShell/SideNavMenu.js +11 -12
- package/lib/components/UIShell/SkipToContent.js +7 -8
- package/lib/components/UIShell/Switcher.js +4 -5
- package/lib/components/UIShell/SwitcherDivider.js +4 -5
- package/lib/components/UnorderedList/UnorderedList.js +6 -7
- package/lib/index.js +81 -82
- package/lib/internal/FloatingMenu.js +26 -28
- package/lib/internal/Selection.js +15 -17
- package/{es/feature-flags.d.ts → lib/internal/__mocks__/mockHTMLElement.d.ts} +4 -2
- package/lib/internal/getAnnouncement.d.ts +8 -0
- package/lib/internal/getAnnouncement.js +26 -0
- package/lib/internal/keyboard/match.js +6 -7
- package/lib/internal/useControllableState.d.ts +1 -1
- package/lib/internal/useControllableState.js +8 -9
- package/lib/internal/useDelayedState.js +1 -2
- package/lib/internal/useDocumentLang.d.ts +12 -0
- package/lib/internal/useId.js +2 -4
- package/lib/internal/useMatchMedia.js +1 -2
- package/lib/internal/useMergedRefs.d.ts +1 -1
- package/lib/internal/useNoInteractiveChildren.js +2 -4
- package/lib/internal/useNormalizedInputProps.js +9 -10
- package/lib/internal/useResizeObserver.d.ts +14 -0
- package/lib/internal/useResizeObserver.js +77 -0
- package/lib/internal/useSavedCallback.js +1 -3
- package/lib/internal/wrapFocus.js +23 -35
- package/lib/prop-types/deprecate.js +1 -4
- package/lib/prop-types/deprecateValuesWithin.js +1 -4
- package/lib/prop-types/isRequiredOneOf.js +1 -4
- package/lib/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
- package/lib/tools/events.js +1 -4
- package/lib/tools/mergeRefs.js +9 -14
- package/lib/tools/uniqueId.js +1 -2
- package/lib/tools/wrapComponent.d.ts +3 -4
- package/lib/tools/wrapComponent.js +9 -11
- package/lib/types/common.d.ts +0 -2
- package/package.json +21 -20
- package/scss/components/content-switcher/_tokens.scss +9 -0
- package/telemetry.yml +27 -2
- package/es/components/ContentSwitcher/index.js +0 -13
- package/es/components/DataTable/index.js +0 -76
- package/es/internal/useAnnouncer.js +0 -21
- package/lib/components/ContentSwitcher/index.js +0 -18
- package/lib/components/DataTable/index.js +0 -82
- package/lib/internal/useAnnouncer.js +0 -25
|
@@ -10,7 +10,7 @@ import { ChevronLeft, ChevronRight, Close } from '@carbon/icons-react';
|
|
|
10
10
|
import { breakpoints } from '@carbon/layout';
|
|
11
11
|
import cx from 'classnames';
|
|
12
12
|
import PropTypes from 'prop-types';
|
|
13
|
-
import
|
|
13
|
+
import React, { useState, useRef, useCallback, useEffect, forwardRef, createContext, useMemo, isValidElement } from 'react';
|
|
14
14
|
import '../Grid/FlexGrid.js';
|
|
15
15
|
import { Grid as GridAsGridComponent } from '../Grid/Grid.js';
|
|
16
16
|
import '../Grid/Row.js';
|
|
@@ -42,7 +42,7 @@ const verticalTabHeight = 64;
|
|
|
42
42
|
|
|
43
43
|
// Used to manage the overall state of the Tabs
|
|
44
44
|
|
|
45
|
-
const TabsContext = /*#__PURE__*/
|
|
45
|
+
const TabsContext = /*#__PURE__*/React.createContext({
|
|
46
46
|
baseId: '',
|
|
47
47
|
activeIndex: 0,
|
|
48
48
|
defaultSelectedIndex: 0,
|
|
@@ -54,7 +54,7 @@ const TabsContext = /*#__PURE__*/React__default.createContext({
|
|
|
54
54
|
});
|
|
55
55
|
|
|
56
56
|
// Used to keep track of position in a tablist
|
|
57
|
-
const TabContext = /*#__PURE__*/
|
|
57
|
+
const TabContext = /*#__PURE__*/React.createContext({
|
|
58
58
|
index: 0,
|
|
59
59
|
hasSecondaryLabel: false
|
|
60
60
|
});
|
|
@@ -62,21 +62,20 @@ const lgMediaQuery = `(min-width: ${breakpoints.lg.width})`;
|
|
|
62
62
|
const smMediaQuery = `(max-width: ${breakpoints.md.width})`;
|
|
63
63
|
|
|
64
64
|
// Used to keep track of position in a list of tab panels
|
|
65
|
-
const TabPanelContext = /*#__PURE__*/
|
|
65
|
+
const TabPanelContext = /*#__PURE__*/React.createContext(0);
|
|
66
66
|
|
|
67
67
|
/**
|
|
68
68
|
* Tabs
|
|
69
69
|
*/
|
|
70
70
|
|
|
71
|
-
function Tabs(
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
} = _ref;
|
|
71
|
+
function Tabs({
|
|
72
|
+
children,
|
|
73
|
+
defaultSelectedIndex = 0,
|
|
74
|
+
onChange,
|
|
75
|
+
selectedIndex: controlledSelectedIndex,
|
|
76
|
+
dismissable,
|
|
77
|
+
onTabCloseRequest
|
|
78
|
+
}) {
|
|
80
79
|
const baseId = useId('ccs');
|
|
81
80
|
if (dismissable && !onTabCloseRequest) {
|
|
82
81
|
console.error('dismissable property specified without also providing an onTabCloseRequest property.');
|
|
@@ -101,7 +100,7 @@ function Tabs(_ref) {
|
|
|
101
100
|
selectedIndex,
|
|
102
101
|
setSelectedIndex
|
|
103
102
|
};
|
|
104
|
-
return /*#__PURE__*/
|
|
103
|
+
return /*#__PURE__*/React.createElement(TabsContext.Provider, {
|
|
105
104
|
value: value
|
|
106
105
|
}, children);
|
|
107
106
|
}
|
|
@@ -141,15 +140,14 @@ Tabs.propTypes = {
|
|
|
141
140
|
*/
|
|
142
141
|
selectedIndex: PropTypes.number
|
|
143
142
|
};
|
|
144
|
-
function TabsVertical(
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
} = _ref2;
|
|
143
|
+
function TabsVertical({
|
|
144
|
+
children,
|
|
145
|
+
height,
|
|
146
|
+
defaultSelectedIndex = 0,
|
|
147
|
+
onChange,
|
|
148
|
+
selectedIndex: controlledSelectedIndex,
|
|
149
|
+
...rest
|
|
150
|
+
}) {
|
|
153
151
|
const [selectedIndex, setSelectedIndex] = useControllableState({
|
|
154
152
|
value: controlledSelectedIndex,
|
|
155
153
|
defaultValue: defaultSelectedIndex,
|
|
@@ -160,26 +158,23 @@ function TabsVertical(_ref2) {
|
|
|
160
158
|
const props = {
|
|
161
159
|
...rest,
|
|
162
160
|
selectedIndex,
|
|
163
|
-
onChange:
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
} = _ref3;
|
|
167
|
-
return setSelectedIndex(selectedIndex);
|
|
168
|
-
}
|
|
161
|
+
onChange: ({
|
|
162
|
+
selectedIndex
|
|
163
|
+
}) => setSelectedIndex(selectedIndex)
|
|
169
164
|
};
|
|
170
165
|
const isSm = useMatchMedia(smMediaQuery);
|
|
171
166
|
if (!isSm) {
|
|
172
167
|
return (
|
|
173
168
|
/*#__PURE__*/
|
|
174
169
|
// eslint-disable-next-line react/forbid-component-props
|
|
175
|
-
|
|
170
|
+
React.createElement(GridAsGridComponent, {
|
|
176
171
|
style: {
|
|
177
172
|
height: height
|
|
178
173
|
}
|
|
179
|
-
}, /*#__PURE__*/
|
|
174
|
+
}, /*#__PURE__*/React.createElement(Tabs, props, children))
|
|
180
175
|
);
|
|
181
176
|
}
|
|
182
|
-
return /*#__PURE__*/
|
|
177
|
+
return /*#__PURE__*/React.createElement(Tabs, props, children);
|
|
183
178
|
}
|
|
184
179
|
TabsVertical.propTypes = {
|
|
185
180
|
/**
|
|
@@ -250,29 +245,28 @@ function getNextIndexVertical(event, total, index) {
|
|
|
250
245
|
* TabList
|
|
251
246
|
*/
|
|
252
247
|
|
|
253
|
-
function TabList(
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
} = _ref4;
|
|
248
|
+
function TabList({
|
|
249
|
+
activation = 'automatic',
|
|
250
|
+
'aria-label': label,
|
|
251
|
+
children,
|
|
252
|
+
className: customClassName,
|
|
253
|
+
contained = false,
|
|
254
|
+
fullWidth = false,
|
|
255
|
+
iconSize,
|
|
256
|
+
leftOverflowButtonProps,
|
|
257
|
+
light,
|
|
258
|
+
rightOverflowButtonProps,
|
|
259
|
+
scrollDebounceWait = 200,
|
|
260
|
+
scrollIntoView,
|
|
261
|
+
...rest
|
|
262
|
+
}) {
|
|
269
263
|
const {
|
|
270
264
|
activeIndex,
|
|
271
265
|
selectedIndex,
|
|
272
266
|
setSelectedIndex,
|
|
273
267
|
setActiveIndex,
|
|
274
268
|
dismissable
|
|
275
|
-
} =
|
|
269
|
+
} = React.useContext(TabsContext);
|
|
276
270
|
const prefix = usePrefix();
|
|
277
271
|
const ref = useRef(null);
|
|
278
272
|
const previousButton = useRef(null);
|
|
@@ -281,13 +275,13 @@ function TabList(_ref4) {
|
|
|
281
275
|
const [scrollLeft, setScrollLeft] = useState(0);
|
|
282
276
|
let hasSecondaryLabelTabs = false;
|
|
283
277
|
if (contained) {
|
|
284
|
-
hasSecondaryLabelTabs =
|
|
278
|
+
hasSecondaryLabelTabs = React.Children.toArray(children).some(child => {
|
|
285
279
|
const _child = child;
|
|
286
|
-
return /*#__PURE__*/
|
|
280
|
+
return /*#__PURE__*/React.isValidElement(child) && !!_child.props.secondaryLabel;
|
|
287
281
|
});
|
|
288
282
|
}
|
|
289
283
|
const isLg = useMatchMedia(lgMediaQuery);
|
|
290
|
-
const distributeWidth = fullWidth && contained && isLg &&
|
|
284
|
+
const distributeWidth = fullWidth && contained && isLg && React.Children.toArray(children).length < 9;
|
|
291
285
|
const className = cx(`${prefix}--tabs`, {
|
|
292
286
|
[`${prefix}--tabs--contained`]: contained,
|
|
293
287
|
[`${prefix}--tabs--light`]: light,
|
|
@@ -341,10 +335,9 @@ function TabList(_ref4) {
|
|
|
341
335
|
tabs.current[nextIndex]?.focus();
|
|
342
336
|
}
|
|
343
337
|
}
|
|
344
|
-
function handleBlur(
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
} = _ref5;
|
|
338
|
+
function handleBlur({
|
|
339
|
+
relatedTarget: currentActiveNode
|
|
340
|
+
}) {
|
|
348
341
|
if (ref.current?.contains(currentActiveNode)) {
|
|
349
342
|
return;
|
|
350
343
|
}
|
|
@@ -455,10 +448,9 @@ function TabList(_ref4) {
|
|
|
455
448
|
scrollTabIntoView(tab);
|
|
456
449
|
}, [selectedIndex, isScrollable, children]);
|
|
457
450
|
usePressable(previousButton, {
|
|
458
|
-
onPress(
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
} = _ref6;
|
|
451
|
+
onPress({
|
|
452
|
+
longPress
|
|
453
|
+
}) {
|
|
462
454
|
if (!longPress && ref.current) {
|
|
463
455
|
setScrollLeft(Math.max(scrollLeft - ref.current.scrollWidth / tabs.current.length * 1.5, 0));
|
|
464
456
|
}
|
|
@@ -468,10 +460,9 @@ function TabList(_ref4) {
|
|
|
468
460
|
}
|
|
469
461
|
});
|
|
470
462
|
usePressable(nextButton, {
|
|
471
|
-
onPress(
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
} = _ref7;
|
|
463
|
+
onPress({
|
|
464
|
+
longPress
|
|
465
|
+
}) {
|
|
475
466
|
if (!longPress && ref.current) {
|
|
476
467
|
setScrollLeft(Math.min(scrollLeft + ref.current.scrollWidth / tabs.current.length * 1.5, ref.current.scrollWidth - ref.current.clientWidth));
|
|
477
468
|
}
|
|
@@ -480,16 +471,16 @@ function TabList(_ref4) {
|
|
|
480
471
|
return createLongPressBehavior(ref, 'forward', setScrollLeft);
|
|
481
472
|
}
|
|
482
473
|
});
|
|
483
|
-
return /*#__PURE__*/
|
|
474
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
484
475
|
className: className
|
|
485
|
-
}, /*#__PURE__*/
|
|
476
|
+
}, /*#__PURE__*/React.createElement("button", _extends({
|
|
486
477
|
"aria-hidden": "true",
|
|
487
478
|
tabIndex: -1,
|
|
488
479
|
"aria-label": "Scroll left",
|
|
489
480
|
ref: previousButton,
|
|
490
481
|
className: previousButtonClasses,
|
|
491
482
|
type: "button"
|
|
492
|
-
}, leftOverflowButtonProps), _ChevronLeft || (_ChevronLeft = /*#__PURE__*/
|
|
483
|
+
}, leftOverflowButtonProps), _ChevronLeft || (_ChevronLeft = /*#__PURE__*/React.createElement(ChevronLeft, null))), /*#__PURE__*/React.createElement("div", _extends({}, rest, {
|
|
493
484
|
"aria-label": label,
|
|
494
485
|
ref: ref,
|
|
495
486
|
role: "tablist",
|
|
@@ -497,26 +488,26 @@ function TabList(_ref4) {
|
|
|
497
488
|
onScroll: debouncedOnScroll,
|
|
498
489
|
onKeyDown: onKeyDown,
|
|
499
490
|
onBlur: handleBlur
|
|
500
|
-
}),
|
|
501
|
-
return !isElement(child) ? null : /*#__PURE__*/
|
|
491
|
+
}), React.Children.map(children, (child, index) => {
|
|
492
|
+
return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabContext.Provider, {
|
|
502
493
|
value: {
|
|
503
494
|
index,
|
|
504
495
|
hasSecondaryLabel: hasSecondaryLabelTabs,
|
|
505
496
|
contained
|
|
506
497
|
}
|
|
507
|
-
}, /*#__PURE__*/
|
|
498
|
+
}, /*#__PURE__*/React.cloneElement(child, {
|
|
508
499
|
ref: node => {
|
|
509
500
|
tabs.current[index] = node;
|
|
510
501
|
}
|
|
511
502
|
}));
|
|
512
|
-
})), /*#__PURE__*/
|
|
503
|
+
})), /*#__PURE__*/React.createElement("button", _extends({
|
|
513
504
|
"aria-hidden": "true",
|
|
514
505
|
tabIndex: -1,
|
|
515
506
|
"aria-label": "Scroll right",
|
|
516
507
|
ref: nextButton,
|
|
517
508
|
className: nextButtonClasses,
|
|
518
509
|
type: "button"
|
|
519
|
-
}, rightOverflowButtonProps), _ChevronRight || (_ChevronRight = /*#__PURE__*/
|
|
510
|
+
}, rightOverflowButtonProps), _ChevronRight || (_ChevronRight = /*#__PURE__*/React.createElement(ChevronRight, null))));
|
|
520
511
|
}
|
|
521
512
|
TabList.propTypes = {
|
|
522
513
|
/**
|
|
@@ -581,21 +572,20 @@ TabList.propTypes = {
|
|
|
581
572
|
|
|
582
573
|
// type TabElement = HTMLElement & { disabled?: boolean };
|
|
583
574
|
|
|
584
|
-
function TabListVertical(
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
} = _ref8;
|
|
575
|
+
function TabListVertical({
|
|
576
|
+
activation = 'automatic',
|
|
577
|
+
'aria-label': label,
|
|
578
|
+
children,
|
|
579
|
+
className: customClassName,
|
|
580
|
+
scrollIntoView,
|
|
581
|
+
...rest
|
|
582
|
+
}) {
|
|
593
583
|
const {
|
|
594
584
|
activeIndex,
|
|
595
585
|
selectedIndex,
|
|
596
586
|
setSelectedIndex,
|
|
597
587
|
setActiveIndex
|
|
598
|
-
} =
|
|
588
|
+
} = React.useContext(TabsContext);
|
|
599
589
|
const prefix = usePrefix();
|
|
600
590
|
const ref = useRef(null);
|
|
601
591
|
const [isOverflowingBottom, setIsOverflowingBottom] = useState(false);
|
|
@@ -618,10 +608,9 @@ function TabListVertical(_ref8) {
|
|
|
618
608
|
tabs.current[nextIndex]?.focus();
|
|
619
609
|
}
|
|
620
610
|
}
|
|
621
|
-
function handleBlur(
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
} = _ref9;
|
|
611
|
+
function handleBlur({
|
|
612
|
+
relatedTarget: currentActiveNode
|
|
613
|
+
}) {
|
|
625
614
|
if (ref.current?.contains(currentActiveNode)) {
|
|
626
615
|
return;
|
|
627
616
|
}
|
|
@@ -682,34 +671,34 @@ function TabListVertical(_ref8) {
|
|
|
682
671
|
};
|
|
683
672
|
});
|
|
684
673
|
if (isSm) {
|
|
685
|
-
return /*#__PURE__*/
|
|
674
|
+
return /*#__PURE__*/React.createElement(TabList, _extends({}, rest, {
|
|
686
675
|
"aria-label": label,
|
|
687
676
|
contained: true
|
|
688
677
|
}), children);
|
|
689
678
|
}
|
|
690
|
-
return /*#__PURE__*/
|
|
679
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
691
680
|
className: className
|
|
692
|
-
}, isOverflowingTop && /*#__PURE__*/
|
|
681
|
+
}, isOverflowingTop && /*#__PURE__*/React.createElement("div", {
|
|
693
682
|
className: `${prefix}--tab--list-gradient_top`
|
|
694
|
-
}), /*#__PURE__*/
|
|
683
|
+
}), /*#__PURE__*/React.createElement("div", _extends({}, rest, {
|
|
695
684
|
"aria-label": label,
|
|
696
685
|
ref: ref,
|
|
697
686
|
role: "tablist",
|
|
698
687
|
className: `${prefix}--tab--list`,
|
|
699
688
|
onKeyDown: onKeyDown,
|
|
700
689
|
onBlur: handleBlur
|
|
701
|
-
}),
|
|
702
|
-
return !isElement(child) ? null : /*#__PURE__*/
|
|
690
|
+
}), React.Children.map(children, (child, index) => {
|
|
691
|
+
return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabContext.Provider, {
|
|
703
692
|
value: {
|
|
704
693
|
index,
|
|
705
694
|
hasSecondaryLabel: false
|
|
706
695
|
}
|
|
707
|
-
}, /*#__PURE__*/
|
|
696
|
+
}, /*#__PURE__*/React.cloneElement(child, {
|
|
708
697
|
ref: node => {
|
|
709
698
|
tabs.current[index] = node;
|
|
710
699
|
}
|
|
711
700
|
}));
|
|
712
|
-
})), isOverflowingBottom && /*#__PURE__*/
|
|
701
|
+
})), isOverflowingBottom && /*#__PURE__*/React.createElement("div", {
|
|
713
702
|
className: `${prefix}--tab--list-gradient_bottom`
|
|
714
703
|
}));
|
|
715
704
|
}
|
|
@@ -780,18 +769,17 @@ function createLongPressBehavior(ref, direction, setScrollLeft) {
|
|
|
780
769
|
* Tab
|
|
781
770
|
*/
|
|
782
771
|
|
|
783
|
-
const Tab = /*#__PURE__*/forwardRef(function Tab(
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
} = _ref10;
|
|
772
|
+
const Tab = /*#__PURE__*/forwardRef(function Tab({
|
|
773
|
+
as = 'button',
|
|
774
|
+
children,
|
|
775
|
+
className: customClassName,
|
|
776
|
+
disabled,
|
|
777
|
+
onClick,
|
|
778
|
+
onKeyDown,
|
|
779
|
+
secondaryLabel,
|
|
780
|
+
renderIcon: Icon,
|
|
781
|
+
...rest
|
|
782
|
+
}, forwardRef) {
|
|
795
783
|
const prefix = usePrefix();
|
|
796
784
|
const {
|
|
797
785
|
selectedIndex,
|
|
@@ -799,15 +787,15 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
799
787
|
baseId,
|
|
800
788
|
dismissable,
|
|
801
789
|
onTabCloseRequest
|
|
802
|
-
} =
|
|
790
|
+
} = React.useContext(TabsContext);
|
|
803
791
|
const {
|
|
804
792
|
index,
|
|
805
793
|
hasSecondaryLabel,
|
|
806
794
|
contained
|
|
807
|
-
} =
|
|
795
|
+
} = React.useContext(TabContext);
|
|
808
796
|
const {
|
|
809
797
|
badgeIndicator
|
|
810
|
-
} =
|
|
798
|
+
} = React.useContext(IconTabContext) || {};
|
|
811
799
|
const dismissIconRef = useRef(null);
|
|
812
800
|
const tabRef = useRef(null);
|
|
813
801
|
const ref = useMergedRefs([forwardRef, tabRef]);
|
|
@@ -883,12 +871,12 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
883
871
|
}
|
|
884
872
|
onKeyDown?.(event);
|
|
885
873
|
};
|
|
886
|
-
const DismissIcon = /*#__PURE__*/
|
|
874
|
+
const DismissIcon = /*#__PURE__*/React.createElement("div", {
|
|
887
875
|
className: cx({
|
|
888
876
|
[`${prefix}--tabs__nav-item--close`]: dismissable,
|
|
889
877
|
[`${prefix}--tabs__nav-item--close--hidden`]: !dismissable
|
|
890
878
|
})
|
|
891
|
-
}, /*#__PURE__*/
|
|
879
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
892
880
|
type: "button",
|
|
893
881
|
tabIndex: selectedIndex === index && dismissable ? 0 : -1,
|
|
894
882
|
"aria-disabled": disabled,
|
|
@@ -903,7 +891,7 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
903
891
|
onClick: handleClose,
|
|
904
892
|
title: `Remove ${typeof children === 'string' ? children : ''} tab`,
|
|
905
893
|
ref: dismissIconRef
|
|
906
|
-
}, /*#__PURE__*/
|
|
894
|
+
}, /*#__PURE__*/React.createElement(Close, {
|
|
907
895
|
"aria-hidden": selectedIndex === index && dismissable ? 'false' : 'true',
|
|
908
896
|
"aria-label": `Press delete to remove ${typeof children === 'string' ? children : ''} tab`
|
|
909
897
|
})));
|
|
@@ -911,14 +899,14 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
911
899
|
|
|
912
900
|
// should only happen for vertical variation, so no dismissable icon is needed here
|
|
913
901
|
if (isEllipsisApplied) {
|
|
914
|
-
return /*#__PURE__*/
|
|
902
|
+
return /*#__PURE__*/React.createElement(Tooltip, {
|
|
915
903
|
label: children,
|
|
916
904
|
align: "top",
|
|
917
905
|
leaveDelayMs: 0,
|
|
918
906
|
autoAlign: true,
|
|
919
907
|
onMouseEnter: () => false,
|
|
920
908
|
closeOnActivation: true
|
|
921
|
-
}, /*#__PURE__*/
|
|
909
|
+
}, /*#__PURE__*/React.createElement(BaseComponent, _extends({}, rest, {
|
|
922
910
|
"aria-controls": panelId,
|
|
923
911
|
"aria-disabled": disabled,
|
|
924
912
|
"aria-selected": selectedIndex === index,
|
|
@@ -938,17 +926,17 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
938
926
|
onKeyDown: handleKeyDown,
|
|
939
927
|
tabIndex: selectedIndex === index ? '0' : '-1',
|
|
940
928
|
type: "button"
|
|
941
|
-
}), /*#__PURE__*/
|
|
929
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
942
930
|
className: `${prefix}--tabs__nav-item-label-wrapper`
|
|
943
|
-
}, /*#__PURE__*/
|
|
931
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
944
932
|
className: `${prefix}--tabs__nav-item-label`
|
|
945
|
-
}, children)), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/
|
|
933
|
+
}, children)), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React.createElement(Text, {
|
|
946
934
|
as: "div",
|
|
947
935
|
className: `${prefix}--tabs__nav-item-secondary-label`,
|
|
948
936
|
title: secondaryLabel
|
|
949
937
|
}, secondaryLabel)));
|
|
950
938
|
}
|
|
951
|
-
return /*#__PURE__*/
|
|
939
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BaseComponent, _extends({}, rest, {
|
|
952
940
|
"aria-controls": panelId,
|
|
953
941
|
"aria-disabled": disabled,
|
|
954
942
|
"aria-selected": selectedIndex === index,
|
|
@@ -967,25 +955,25 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
|
|
|
967
955
|
onKeyDown: handleKeyDown,
|
|
968
956
|
tabIndex: selectedIndex === index ? '0' : '-1',
|
|
969
957
|
type: "button"
|
|
970
|
-
}), /*#__PURE__*/
|
|
958
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
971
959
|
className: `${prefix}--tabs__nav-item-label-wrapper`
|
|
972
|
-
}, dismissable && Icon && /*#__PURE__*/
|
|
960
|
+
}, dismissable && Icon && /*#__PURE__*/React.createElement("div", {
|
|
973
961
|
className: `${prefix}--tabs__nav-item--icon-left`
|
|
974
|
-
}, /*#__PURE__*/
|
|
962
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
|
975
963
|
size: 16
|
|
976
|
-
})), /*#__PURE__*/
|
|
964
|
+
})), /*#__PURE__*/React.createElement(Text, {
|
|
977
965
|
className: `${prefix}--tabs__nav-item-label`
|
|
978
|
-
}, children), !dismissable && Icon && /*#__PURE__*/
|
|
966
|
+
}, children), !dismissable && Icon && /*#__PURE__*/React.createElement("div", {
|
|
979
967
|
className: cx(`${prefix}--tabs__nav-item--icon`, {
|
|
980
968
|
[`${prefix}--visually-hidden`]: !hasIcon
|
|
981
969
|
})
|
|
982
|
-
}, !dismissable && Icon && /*#__PURE__*/
|
|
970
|
+
}, !dismissable && Icon && /*#__PURE__*/React.createElement(Icon, {
|
|
983
971
|
size: 16
|
|
984
|
-
}))), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/
|
|
972
|
+
}))), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React.createElement(Text, {
|
|
985
973
|
as: "div",
|
|
986
974
|
className: `${prefix}--tabs__nav-item-secondary-label`,
|
|
987
975
|
title: secondaryLabel
|
|
988
|
-
}, secondaryLabel), !disabled && badgeIndicator && (_BadgeIndicator || (_BadgeIndicator = /*#__PURE__*/
|
|
976
|
+
}, secondaryLabel), !disabled && badgeIndicator && (_BadgeIndicator || (_BadgeIndicator = /*#__PURE__*/React.createElement(BadgeIndicator, null)))), DismissIcon);
|
|
989
977
|
});
|
|
990
978
|
Tab.propTypes = {
|
|
991
979
|
/**
|
|
@@ -1034,17 +1022,16 @@ Tab.propTypes = {
|
|
|
1034
1022
|
*/
|
|
1035
1023
|
|
|
1036
1024
|
const IconTabContext = /*#__PURE__*/createContext(false);
|
|
1037
|
-
const IconTab = /*#__PURE__*/
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
} = _ref11;
|
|
1025
|
+
const IconTab = /*#__PURE__*/React.forwardRef(function IconTab({
|
|
1026
|
+
badgeIndicator,
|
|
1027
|
+
children,
|
|
1028
|
+
className: customClassName,
|
|
1029
|
+
defaultOpen = false,
|
|
1030
|
+
enterDelayMs,
|
|
1031
|
+
leaveDelayMs,
|
|
1032
|
+
label,
|
|
1033
|
+
...rest
|
|
1034
|
+
}, ref) {
|
|
1048
1035
|
const prefix = usePrefix();
|
|
1049
1036
|
const value = useMemo(() => ({
|
|
1050
1037
|
badgeIndicator
|
|
@@ -1053,16 +1040,16 @@ const IconTab = /*#__PURE__*/React__default.forwardRef(function IconTab(_ref11,
|
|
|
1053
1040
|
const classNames = cx(`${prefix}--tabs__nav-item--icon-only`, customClassName, {
|
|
1054
1041
|
[`${prefix}--tabs__nav-item--icon-only__20`]: hasSize20
|
|
1055
1042
|
});
|
|
1056
|
-
return /*#__PURE__*/
|
|
1043
|
+
return /*#__PURE__*/React.createElement(IconTabContext.Provider, {
|
|
1057
1044
|
value: value
|
|
1058
|
-
}, /*#__PURE__*/
|
|
1045
|
+
}, /*#__PURE__*/React.createElement(Tooltip, {
|
|
1059
1046
|
align: "bottom",
|
|
1060
1047
|
defaultOpen: defaultOpen,
|
|
1061
1048
|
className: `${prefix}--icon-tooltip`,
|
|
1062
1049
|
enterDelayMs: enterDelayMs,
|
|
1063
1050
|
label: label,
|
|
1064
1051
|
leaveDelayMs: leaveDelayMs
|
|
1065
|
-
}, /*#__PURE__*/
|
|
1052
|
+
}, /*#__PURE__*/React.createElement(Tab, _extends({
|
|
1066
1053
|
className: classNames,
|
|
1067
1054
|
ref: ref
|
|
1068
1055
|
}, rest), children)));
|
|
@@ -1106,12 +1093,11 @@ IconTab.propTypes = {
|
|
|
1106
1093
|
* TabPanel
|
|
1107
1094
|
*/
|
|
1108
1095
|
|
|
1109
|
-
const TabPanel = /*#__PURE__*/
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
} = _ref12;
|
|
1096
|
+
const TabPanel = /*#__PURE__*/React.forwardRef(function TabPanel({
|
|
1097
|
+
children,
|
|
1098
|
+
className: customClassName,
|
|
1099
|
+
...rest
|
|
1100
|
+
}, forwardRef) {
|
|
1115
1101
|
const prefix = usePrefix();
|
|
1116
1102
|
const panel = useRef(null);
|
|
1117
1103
|
const ref = useMergedRefs([forwardRef, panel]);
|
|
@@ -1120,8 +1106,8 @@ const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref12
|
|
|
1120
1106
|
const {
|
|
1121
1107
|
selectedIndex,
|
|
1122
1108
|
baseId
|
|
1123
|
-
} =
|
|
1124
|
-
const index =
|
|
1109
|
+
} = React.useContext(TabsContext);
|
|
1110
|
+
const index = React.useContext(TabPanelContext);
|
|
1125
1111
|
const id = `${baseId}-tabpanel-${index}`;
|
|
1126
1112
|
const tabId = `${baseId}-tab-${index}`;
|
|
1127
1113
|
const className = cx(`${prefix}--tab-content`, customClassName, {
|
|
@@ -1161,7 +1147,7 @@ const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref12
|
|
|
1161
1147
|
});
|
|
1162
1148
|
return () => observer.disconnect();
|
|
1163
1149
|
}, []);
|
|
1164
|
-
return /*#__PURE__*/
|
|
1150
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, rest, {
|
|
1165
1151
|
"aria-labelledby": tabId,
|
|
1166
1152
|
id: id,
|
|
1167
1153
|
className: className,
|
|
@@ -1186,10 +1172,9 @@ TabPanel.propTypes = {
|
|
|
1186
1172
|
* TabPanels
|
|
1187
1173
|
*/
|
|
1188
1174
|
|
|
1189
|
-
function TabPanels(
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
} = _ref13;
|
|
1175
|
+
function TabPanels({
|
|
1176
|
+
children
|
|
1177
|
+
}) {
|
|
1193
1178
|
const prefix = usePrefix();
|
|
1194
1179
|
const refs = useRef([]);
|
|
1195
1180
|
const hiddenStates = useRef([]);
|
|
@@ -1222,10 +1207,10 @@ function TabPanels(_ref13) {
|
|
|
1222
1207
|
});
|
|
1223
1208
|
}
|
|
1224
1209
|
});
|
|
1225
|
-
return /*#__PURE__*/
|
|
1226
|
-
return !isElement(child) ? null : /*#__PURE__*/
|
|
1210
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, React.Children.map(children, (child, index) => {
|
|
1211
|
+
return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabPanelContext.Provider, {
|
|
1227
1212
|
value: index
|
|
1228
|
-
}, /*#__PURE__*/
|
|
1213
|
+
}, /*#__PURE__*/React.cloneElement(child, {
|
|
1229
1214
|
ref: element => {
|
|
1230
1215
|
refs.current[index] = element;
|
|
1231
1216
|
}
|
|
@@ -20,14 +20,13 @@ import { useRef, useState, useEffect } from 'react';
|
|
|
20
20
|
* delayLongPressMs?: number,
|
|
21
21
|
* }} options
|
|
22
22
|
*/
|
|
23
|
-
function usePressable(ref
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
23
|
+
function usePressable(ref, {
|
|
24
|
+
onPress,
|
|
25
|
+
onPressIn,
|
|
26
|
+
onPressOut,
|
|
27
|
+
onLongPress,
|
|
28
|
+
delayLongPressMs = 500
|
|
29
|
+
} = {}) {
|
|
31
30
|
const savedOnPress = useRef(onPress);
|
|
32
31
|
const savedOnPressIn = useRef(onPressIn);
|
|
33
32
|
const savedOnPressOut = useRef(onPressOut);
|