@carbon/react 1.82.1 → 1.83.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 +943 -828
- package/es/components/AILabel/index.js +13 -13
- package/es/components/AISkeleton/AISkeletonIcon.js +2 -2
- package/es/components/AISkeleton/AISkeletonPlaceholder.js +2 -2
- package/es/components/AISkeleton/AISkeletonText.js +2 -2
- package/es/components/Accordion/Accordion.Skeleton.js +15 -15
- package/es/components/Accordion/Accordion.js +3 -3
- package/es/components/Accordion/AccordionItem.js +9 -9
- package/es/components/Accordion/AccordionProvider.js +2 -2
- package/es/components/AccordionItem/index.d.ts +9 -0
- package/es/components/AspectRatio/AspectRatio.js +2 -2
- package/es/components/BadgeIndicator/index.js +3 -3
- package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +5 -5
- package/es/components/Breadcrumb/Breadcrumb.js +3 -3
- package/es/components/Breadcrumb/BreadcrumbItem.js +9 -9
- package/es/components/Button/Button.Skeleton.js +3 -3
- package/es/components/Button/Button.js +5 -5
- package/es/components/Button/ButtonBase.js +5 -5
- package/es/components/ButtonSet/ButtonSet.js +2 -2
- package/es/components/ChatButton/ChatButton.Skeleton.js +2 -2
- package/es/components/ChatButton/ChatButton.js +3 -3
- package/es/components/Checkbox/Checkbox.Skeleton.js +4 -4
- package/es/components/Checkbox/Checkbox.js +15 -15
- package/es/components/CheckboxGroup/CheckboxGroup.js +12 -12
- package/es/components/ClassPrefix/index.js +2 -2
- package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +7 -7
- package/es/components/CodeSnippet/CodeSnippet.js +16 -16
- package/es/components/ComboBox/ComboBox.js +18 -18
- package/es/components/ComboButton/index.js +7 -7
- package/es/components/ComposedModal/ComposedModal.js +20 -20
- package/es/components/ComposedModal/ModalFooter.js +8 -8
- package/es/components/ComposedModal/ModalHeader.js +8 -8
- package/es/components/ContainedList/ContainedList.js +7 -7
- package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +7 -7
- package/es/components/ContentSwitcher/ContentSwitcher.d.ts +8 -0
- package/es/components/ContentSwitcher/ContentSwitcher.js +13 -7
- package/es/components/Copy/Copy.js +2 -2
- package/es/components/CopyButton/CopyButton.js +4 -4
- package/es/components/DangerButton/DangerButton.js +2 -2
- package/es/components/DataTable/DataTable.d.ts +81 -283
- package/es/components/DataTable/DataTable.js +83 -123
- package/es/components/DataTable/Table.d.ts +2 -2
- package/es/components/DataTable/Table.js +4 -4
- package/es/components/DataTable/TableActionList.d.ts +1 -1
- package/es/components/DataTable/TableBatchAction.js +2 -2
- package/es/components/DataTable/TableBatchActions.js +9 -9
- package/es/components/DataTable/TableBody.d.ts +3 -3
- package/es/components/DataTable/TableBody.js +2 -2
- 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 +6 -6
- package/es/components/DataTable/TableDecoratorRow.js +4 -4
- package/es/components/DataTable/TableExpandHeader.d.ts +2 -3
- package/es/components/DataTable/TableExpandHeader.js +4 -4
- package/es/components/DataTable/TableExpandRow.js +8 -8
- package/es/components/DataTable/TableExpandedRow.d.ts +3 -3
- package/es/components/DataTable/TableExpandedRow.js +4 -4
- package/es/components/DataTable/TableHead.d.ts +1 -1
- package/es/components/DataTable/TableHeader.d.ts +4 -4
- package/es/components/DataTable/TableHeader.js +15 -15
- package/es/components/DataTable/TableRow.d.ts +3 -4
- package/es/components/DataTable/TableRow.js +4 -4
- package/es/components/DataTable/TableSelectAll.js +3 -3
- package/es/components/DataTable/TableSelectRow.js +4 -4
- package/es/components/DataTable/TableSlugRow.js +3 -3
- package/es/components/DataTable/TableToolbar.js +2 -2
- package/es/components/DataTable/TableToolbarAction.js +2 -2
- package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/es/components/DataTable/TableToolbarMenu.js +2 -2
- package/es/components/DataTable/TableToolbarSearch.js +2 -2
- package/es/components/DataTable/index.d.ts +1 -1
- package/es/components/DataTableSkeleton/DataTableSkeleton.js +15 -15
- package/es/components/DatePicker/DatePicker.Skeleton.js +8 -8
- package/es/components/DatePicker/DatePicker.d.ts +1 -1
- package/es/components/DatePicker/DatePicker.js +23 -20
- package/es/components/DatePickerInput/DatePickerInput.d.ts +3 -4
- package/es/components/DatePickerInput/DatePickerInput.js +19 -19
- package/es/components/Dialog/index.d.ts +5 -6
- package/es/components/Dialog/index.js +10 -10
- package/es/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
- package/es/components/Dropdown/Dropdown.Skeleton.js +4 -4
- package/es/components/Dropdown/Dropdown.d.ts +3 -3
- package/es/components/Dropdown/Dropdown.js +18 -18
- package/es/components/ErrorBoundary/ErrorBoundary.js +2 -2
- package/es/components/ExpandableSearch/ExpandableSearch.js +3 -3
- package/es/components/FeatureFlags/index.js +2 -2
- package/es/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
- package/es/components/FileUploader/FileUploader.Skeleton.js +5 -5
- package/es/components/FileUploader/FileUploader.d.ts +2 -3
- package/es/components/FileUploader/FileUploader.js +12 -12
- package/es/components/FileUploader/FileUploaderButton.d.ts +3 -4
- package/es/components/FileUploader/FileUploaderButton.js +6 -5
- package/es/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
- package/es/components/FileUploader/FileUploaderDropContainer.js +5 -5
- package/es/components/FileUploader/FileUploaderItem.d.ts +2 -3
- package/es/components/FileUploader/FileUploaderItem.js +13 -13
- package/es/components/FileUploader/Filename.d.ts +3 -4
- package/es/components/FileUploader/Filename.js +7 -7
- package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -5
- package/es/components/FluidComboBox/FluidComboBox.js +4 -4
- package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +11 -11
- package/es/components/FluidDatePicker/FluidDatePicker.js +4 -4
- package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
- package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -5
- package/es/components/FluidDropdown/FluidDropdown.js +4 -4
- package/es/components/FluidForm/FluidForm.d.ts +3 -4
- package/es/components/FluidForm/FluidForm.js +3 -3
- package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -5
- package/es/components/FluidMultiSelect/FluidMultiSelect.js +5 -5
- package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -5
- package/es/components/FluidNumberInput/FluidNumberInput.js +4 -4
- package/es/components/FluidSearch/FluidSearch.Skeleton.js +5 -5
- package/es/components/FluidSearch/FluidSearch.js +4 -4
- package/es/components/FluidSelect/FluidSelect.Skeleton.js +5 -5
- package/es/components/FluidSelect/FluidSelect.js +4 -4
- package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -5
- package/es/components/FluidTextArea/FluidTextArea.js +3 -3
- package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -5
- package/es/components/FluidTextInput/FluidTextInput.js +5 -5
- package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +3 -3
- package/es/components/FluidTimePicker/FluidTimePicker.js +13 -13
- package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +3 -3
- package/es/components/Form/Form.js +2 -2
- package/es/components/FormGroup/FormGroup.d.ts +3 -4
- package/es/components/FormGroup/FormGroup.js +4 -4
- package/es/components/FormItem/FormItem.js +2 -2
- package/es/components/FormLabel/FormLabel.js +2 -2
- package/es/components/Grid/CSSGrid.js +8 -8
- package/es/components/Grid/Column.d.ts +5 -5
- package/es/components/Grid/Column.js +15 -15
- package/es/components/Grid/ColumnHang.js +2 -2
- package/es/components/Grid/FlexGrid.js +4 -4
- package/es/components/Grid/Grid.js +3 -3
- package/es/components/Grid/GridContext.d.ts +2 -2
- package/es/components/Grid/GridContext.js +1 -1
- package/es/components/Grid/Row.js +2 -2
- package/es/components/Heading/index.js +9 -9
- package/es/components/Icon/Icon.Skeleton.js +2 -2
- package/es/components/IconButton/index.js +11 -6
- package/es/components/IconIndicator/index.js +4 -4
- package/es/components/IdPrefix/index.js +2 -2
- package/es/components/InlineCheckbox/InlineCheckbox.js +6 -6
- package/es/components/InlineLoading/InlineLoading.js +10 -10
- package/es/components/Layer/LayerContext.js +2 -2
- package/es/components/Layer/index.d.ts +4 -0
- package/es/components/Layer/index.js +15 -8
- package/es/components/Layout/index.js +5 -5
- package/es/components/LayoutDirection/LayoutDirection.js +4 -4
- package/es/components/LayoutDirection/LayoutDirectionContext.js +2 -2
- package/es/components/LayoutDirection/index.d.ts +8 -0
- package/es/components/Link/Link.js +6 -6
- 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 +2 -2
- package/es/components/ListBox/ListBoxMenu.d.ts +2 -3
- package/es/components/ListBox/ListBoxMenu.js +2 -2
- package/es/components/ListBox/ListBoxMenuIcon.js +4 -4
- package/es/components/ListBox/ListBoxMenuItem.d.ts +2 -3
- package/es/components/ListBox/ListBoxMenuItem.js +3 -3
- package/es/components/ListBox/ListBoxSelection.js +6 -6
- package/es/components/ListBox/next/ListBoxSelection.js +7 -7
- package/es/components/ListBox/next/ListBoxTrigger.js +4 -4
- package/es/components/ListItem/ListItem.js +2 -2
- package/es/components/Loading/Loading.d.ts +3 -3
- package/es/components/Loading/Loading.js +6 -6
- package/es/components/Menu/Menu.js +5 -4
- package/es/components/Menu/MenuItem.js +18 -17
- package/es/components/MenuButton/index.js +4 -4
- package/es/components/Modal/Modal.d.ts +3 -4
- package/es/components/Modal/Modal.js +40 -38
- package/es/components/ModalWrapper/ModalWrapper.js +7 -7
- package/es/components/MultiSelect/FilterableMultiSelect.js +22 -26
- package/es/components/MultiSelect/MultiSelect.js +23 -23
- package/es/components/Notification/Notification.js +41 -41
- package/es/components/NumberInput/NumberInput.Skeleton.js +4 -4
- package/es/components/NumberInput/NumberInput.js +22 -22
- package/es/components/OrderedList/OrderedList.js +2 -2
- package/es/components/OverflowMenu/OverflowMenu.js +7 -7
- package/es/components/OverflowMenu/index.js +3 -3
- package/es/components/OverflowMenu/next/index.js +6 -6
- package/es/components/OverflowMenuItem/OverflowMenuItem.js +4 -4
- package/es/components/OverflowMenuV2/index.js +3 -3
- package/es/components/PageHeader/PageHeader.js +29 -29
- package/es/components/Pagination/Pagination.Skeleton.js +8 -8
- package/es/components/Pagination/Pagination.js +17 -17
- package/es/components/Pagination/experimental/PageSelector.js +3 -3
- package/es/components/Pagination/experimental/Pagination.js +14 -14
- package/es/components/PaginationNav/PaginationNav.js +31 -31
- package/es/components/Popover/index.js +15 -15
- package/es/components/PrimaryButton/PrimaryButton.js +2 -2
- package/es/components/ProgressBar/ProgressBar.js +13 -13
- package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +7 -7
- package/es/components/ProgressIndicator/ProgressIndicator.js +20 -20
- 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 +12 -12
- package/es/components/Search/Search.Skeleton.js +4 -4
- package/es/components/Search/Search.js +11 -11
- package/es/components/SecondaryButton/SecondaryButton.js +2 -2
- package/es/components/Select/Select.Skeleton.js +5 -5
- package/es/components/Select/Select.js +19 -19
- package/es/components/SelectItem/SelectItem.js +2 -2
- package/es/components/SelectItemGroup/SelectItemGroup.js +2 -2
- package/es/components/ShapeIndicator/index.js +7 -7
- package/es/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
- package/es/components/SkeletonIcon/SkeletonIcon.js +3 -7
- package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +2 -2
- package/es/components/SkeletonText/SkeletonText.js +4 -4
- package/es/components/Slider/Slider.Skeleton.js +17 -17
- package/es/components/Slider/Slider.d.ts +8 -0
- package/es/components/Slider/Slider.js +44 -38
- package/es/components/Slider/SliderHandles.js +19 -19
- 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 +12 -12
- 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 +7 -7
- package/es/components/Tabs/Tabs.js +65 -62
- package/es/components/Tag/DismissibleTag.d.ts +4 -0
- package/es/components/Tag/DismissibleTag.js +18 -13
- package/es/components/Tag/OperationalTag.js +6 -6
- package/es/components/Tag/SelectableTag.d.ts +4 -0
- package/es/components/Tag/SelectableTag.js +18 -9
- package/es/components/Tag/Tag.Skeleton.js +2 -2
- package/es/components/Tag/Tag.js +15 -15
- package/es/components/Text/Text.js +4 -4
- package/es/components/Text/TextDirection.js +2 -2
- package/es/components/Text/createTextComponent.js +2 -2
- package/es/components/TextArea/TextArea.Skeleton.js +4 -4
- package/es/components/TextArea/TextArea.js +19 -19
- package/es/components/TextInput/ControlledPasswordInput.d.ts +2 -3
- package/es/components/TextInput/ControlledPasswordInput.js +13 -13
- package/es/components/TextInput/PasswordInput.js +15 -15
- package/es/components/TextInput/TextInput.Skeleton.js +4 -4
- package/es/components/TextInput/TextInput.js +17 -17
- package/es/components/Theme/index.js +10 -10
- package/es/components/Tile/Tile.js +36 -36
- 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 +4 -4
- package/es/components/Toggle/Toggle.js +10 -10
- package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +8 -8
- package/es/components/Toggletip/index.js +12 -12
- package/es/components/Tooltip/DefinitionTooltip.js +4 -4
- package/es/components/Tooltip/Tooltip.d.ts +3 -0
- package/es/components/Tooltip/Tooltip.js +25 -13
- package/es/components/TreeView/TreeNode.js +45 -36
- package/es/components/TreeView/TreeView.js +30 -21
- package/es/components/UIShell/Content.js +2 -2
- package/es/components/UIShell/Header.js +2 -2
- package/es/components/UIShell/HeaderContainer.js +2 -2
- package/es/components/UIShell/HeaderGlobalAction.js +3 -3
- package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/es/components/UIShell/HeaderMenu.js +14 -14
- package/es/components/UIShell/HeaderMenuButton.js +4 -4
- package/es/components/UIShell/HeaderMenuItem.js +11 -9
- package/es/components/UIShell/HeaderName.js +3 -3
- package/es/components/UIShell/HeaderNavigation.js +3 -3
- package/es/components/UIShell/HeaderPanel.js +3 -3
- package/es/components/UIShell/HeaderSideNavItems.js +2 -2
- package/es/components/UIShell/Link.js +3 -3
- package/es/components/UIShell/SideNav.js +7 -7
- package/es/components/UIShell/SideNavDetails.js +3 -3
- package/es/components/UIShell/SideNavDivider.js +3 -3
- package/es/components/UIShell/SideNavFooter.js +7 -7
- package/es/components/UIShell/SideNavHeader.js +3 -3
- package/es/components/UIShell/SideNavIcon.js +2 -2
- package/es/components/UIShell/SideNavItem.js +2 -2
- package/es/components/UIShell/SideNavItems.js +5 -5
- package/es/components/UIShell/SideNavLink.js +5 -5
- package/es/components/UIShell/SideNavLinkText.js +2 -2
- package/es/components/UIShell/SideNavMenu.js +10 -10
- package/es/components/UIShell/SideNavMenuItem.js +5 -5
- package/es/components/UIShell/SideNavSwitcher.js +8 -8
- package/es/components/UIShell/SkipToContent.js +2 -2
- package/es/components/UIShell/Switcher.js +9 -9
- package/es/components/UIShell/SwitcherDivider.js +2 -2
- package/es/components/UIShell/SwitcherItem.js +3 -3
- package/es/components/UnorderedList/UnorderedList.js +2 -2
- package/es/feature-flags.d.ts +7 -0
- package/es/index.js +25 -26
- package/es/internal/FloatingMenu.js +4 -4
- package/es/internal/__mocks__/mockHTMLElement.d.ts +9 -0
- package/es/internal/createClassWrapper.js +2 -2
- package/es/internal/debounce.d.ts +8 -0
- package/es/internal/environment.d.ts +12 -0
- package/es/internal/useId.js +2 -2
- package/es/internal/useIdPrefix.js +3 -3
- package/es/internal/useNormalizedInputProps.js +3 -3
- package/es/internal/usePrefix.js +3 -3
- package/es/internal/usePreviousValue.d.ts +17 -0
- package/es/internal/usePreviousValue.js +28 -0
- package/es/internal/useResizeObserver.d.ts +14 -0
- package/es/internal/useResizeObserver.js +74 -0
- package/es/internal/wrapFocus.js +3 -6
- package/es/prop-types/AriaPropTypes.d.ts +8 -0
- package/es/tools/wrapComponent.d.ts +3 -4
- package/es/tools/wrapComponent.js +2 -2
- package/es/types/common.d.ts +0 -2
- package/lib/components/AccordionItem/index.d.ts +9 -0
- package/lib/components/CodeSnippet/CodeSnippet.js +2 -3
- package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +8 -0
- package/lib/components/ContentSwitcher/ContentSwitcher.js +7 -1
- package/lib/components/DataTable/DataTable.d.ts +81 -283
- package/lib/components/DataTable/DataTable.js +82 -123
- package/lib/components/DataTable/Table.d.ts +2 -2
- package/lib/components/DataTable/TableActionList.d.ts +1 -1
- package/lib/components/DataTable/TableBody.d.ts +3 -3
- package/lib/components/DataTable/TableCell.d.ts +3 -4
- package/lib/components/DataTable/TableContainer.d.ts +2 -3
- package/lib/components/DataTable/TableExpandHeader.d.ts +2 -3
- package/lib/components/DataTable/TableExpandedRow.d.ts +3 -3
- package/lib/components/DataTable/TableHead.d.ts +1 -1
- package/lib/components/DataTable/TableHeader.d.ts +4 -4
- package/lib/components/DataTable/TableRow.d.ts +3 -4
- package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/lib/components/DataTable/index.d.ts +1 -1
- package/lib/components/DatePicker/DatePicker.d.ts +1 -1
- package/lib/components/DatePicker/DatePicker.js +6 -3
- package/lib/components/DatePickerInput/DatePickerInput.d.ts +3 -4
- package/lib/components/Dialog/index.d.ts +5 -6
- package/lib/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
- package/lib/components/Dropdown/Dropdown.d.ts +3 -3
- package/lib/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
- package/lib/components/FileUploader/FileUploader.d.ts +2 -3
- package/lib/components/FileUploader/FileUploaderButton.d.ts +3 -4
- package/lib/components/FileUploader/FileUploaderButton.js +3 -2
- package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
- package/lib/components/FileUploader/FileUploaderItem.d.ts +2 -3
- package/lib/components/FileUploader/Filename.d.ts +3 -4
- package/lib/components/FluidForm/FluidForm.d.ts +3 -4
- package/lib/components/FormGroup/FormGroup.d.ts +3 -4
- package/lib/components/Grid/Column.d.ts +5 -5
- package/lib/components/Grid/Column.js +10 -10
- package/lib/components/Grid/GridContext.d.ts +2 -2
- package/lib/components/Grid/GridContext.js +5 -23
- package/lib/components/IconButton/index.js +6 -1
- package/lib/components/Layer/index.d.ts +4 -0
- package/lib/components/Layer/index.js +9 -2
- package/lib/components/LayoutDirection/index.d.ts +8 -0
- package/lib/components/Link/Link.js +1 -1
- package/lib/components/ListBox/ListBox.d.ts +2 -3
- package/lib/components/ListBox/ListBoxField.d.ts +3 -4
- package/lib/components/ListBox/ListBoxMenu.d.ts +2 -3
- package/lib/components/ListBox/ListBoxMenuItem.d.ts +2 -3
- package/lib/components/Loading/Loading.d.ts +3 -3
- package/lib/components/Menu/Menu.js +2 -1
- package/lib/components/Menu/MenuItem.js +2 -1
- package/lib/components/Modal/Modal.d.ts +3 -4
- package/lib/components/Modal/Modal.js +5 -3
- package/lib/components/MultiSelect/FilterableMultiSelect.js +1 -5
- package/lib/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
- package/lib/components/SkeletonIcon/SkeletonIcon.js +1 -5
- package/lib/components/Slider/Slider.d.ts +8 -0
- package/lib/components/Slider/Slider.js +6 -0
- package/lib/components/Tabs/Tabs.js +5 -2
- package/lib/components/Tag/DismissibleTag.d.ts +4 -0
- package/lib/components/Tag/DismissibleTag.js +8 -3
- package/lib/components/Tag/SelectableTag.d.ts +4 -0
- package/lib/components/Tag/SelectableTag.js +12 -3
- package/lib/components/TextInput/ControlledPasswordInput.d.ts +2 -3
- package/lib/components/TileGroup/TileGroup.d.ts +3 -4
- package/lib/components/TimePicker/TimePicker.d.ts +2 -3
- package/lib/components/Tooltip/Tooltip.d.ts +3 -0
- package/lib/components/Tooltip/Tooltip.js +18 -6
- package/lib/components/TreeView/TreeNode.js +20 -11
- package/lib/components/TreeView/TreeView.js +27 -18
- package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/lib/components/UIShell/HeaderMenuItem.js +7 -5
- package/lib/components/UIShell/Switcher.js +3 -3
- package/lib/feature-flags.d.ts +7 -0
- package/lib/index.js +50 -51
- package/lib/internal/__mocks__/mockHTMLElement.d.ts +9 -0
- package/lib/internal/debounce.d.ts +8 -0
- package/lib/internal/environment.d.ts +12 -0
- package/lib/internal/usePreviousValue.d.ts +17 -0
- package/lib/internal/usePreviousValue.js +32 -0
- package/lib/internal/useResizeObserver.d.ts +14 -0
- package/lib/internal/useResizeObserver.js +78 -0
- package/lib/internal/wrapFocus.js +3 -6
- package/lib/prop-types/AriaPropTypes.d.ts +8 -0
- package/lib/tools/wrapComponent.d.ts +3 -4
- package/lib/types/common.d.ts +0 -2
- package/package.json +5 -6
- package/scss/components/content-switcher/_tokens.scss +9 -0
- package/telemetry.yml +5 -1
- package/es/components/DataTable/index.js +0 -76
- package/es/prop-types/tools/getDisplayName.js +0 -34
- package/es/prop-types/types.js +0 -13
- package/lib/components/DataTable/index.js +0 -82
- package/lib/prop-types/tools/getDisplayName.js +0 -38
- package/lib/prop-types/types.js +0 -17
|
@@ -7,5 +7,5 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Generic container for `HeaderGlobalAction` components
|
|
9
9
|
*/
|
|
10
|
-
declare const HeaderGlobalBar: (props: import("
|
|
10
|
+
declare const HeaderGlobalBar: (props: import("react").HTMLAttributes<"div">) => React.ReactElement<any>;
|
|
11
11
|
export default HeaderGlobalBar;
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { defineProperty as _defineProperty, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import { ChevronDown } from '@carbon/icons-react';
|
|
10
10
|
import cx from 'classnames';
|
|
11
|
-
import
|
|
11
|
+
import React from 'react';
|
|
12
12
|
import PropTypes from 'prop-types';
|
|
13
13
|
import { Enter, Space, Escape } from '../../internal/keyboard/keys.js';
|
|
14
14
|
import { matches } from '../../internal/keyboard/match.js';
|
|
@@ -24,10 +24,10 @@ import { composeEventHandlers } from '../../tools/events.js';
|
|
|
24
24
|
* help manage focus state of its children.
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
class HeaderMenu extends
|
|
27
|
+
class HeaderMenu extends React.Component {
|
|
28
28
|
constructor(props) {
|
|
29
29
|
super(props);
|
|
30
|
-
_defineProperty(this, "_subMenus", /*#__PURE__*/
|
|
30
|
+
_defineProperty(this, "_subMenus", /*#__PURE__*/React.createRef());
|
|
31
31
|
_defineProperty(this, "items", []);
|
|
32
32
|
_defineProperty(this, "menuButtonRef", null);
|
|
33
33
|
/**
|
|
@@ -124,8 +124,8 @@ class HeaderMenu extends React__default.Component {
|
|
|
124
124
|
* sequence when they might not want to go through all the items.
|
|
125
125
|
*/
|
|
126
126
|
_defineProperty(this, "_renderMenuItem", (item, index) => {
|
|
127
|
-
if (/*#__PURE__*/
|
|
128
|
-
return /*#__PURE__*/
|
|
127
|
+
if (/*#__PURE__*/React.isValidElement(item)) {
|
|
128
|
+
return /*#__PURE__*/React.cloneElement(item, {
|
|
129
129
|
ref: this.handleItemRef(index)
|
|
130
130
|
});
|
|
131
131
|
}
|
|
@@ -157,8 +157,8 @@ class HeaderMenu extends React__default.Component {
|
|
|
157
157
|
onKeyDown,
|
|
158
158
|
...rest
|
|
159
159
|
} = this.props;
|
|
160
|
-
const hasActiveDescendant = childrenArg =>
|
|
161
|
-
if (! /*#__PURE__*/
|
|
160
|
+
const hasActiveDescendant = childrenArg => React.Children.toArray(childrenArg).some(child => {
|
|
161
|
+
if (! /*#__PURE__*/React.isValidElement(child)) {
|
|
162
162
|
return false;
|
|
163
163
|
}
|
|
164
164
|
|
|
@@ -190,12 +190,12 @@ class HeaderMenu extends React__default.Component {
|
|
|
190
190
|
// - aria-haspopup can definitely have the value "menu"
|
|
191
191
|
// - aria-expanded is on their example node with role="menuitem"
|
|
192
192
|
// - href can be set to javascript:void(0), ideally this will be a button
|
|
193
|
-
return /*#__PURE__*/
|
|
193
|
+
return /*#__PURE__*/React.createElement("li", _extends({}, rest, {
|
|
194
194
|
className: itemClassName,
|
|
195
195
|
onKeyDown: composeEventHandlers([onKeyDown, this.handleMenuClose]),
|
|
196
196
|
onClick: composeEventHandlers([onClick, this.handleOnClick]),
|
|
197
197
|
onBlur: composeEventHandlers([onBlur, this.handleOnBlur])
|
|
198
|
-
}), /*#__PURE__*/
|
|
198
|
+
}), /*#__PURE__*/React.createElement("a", _extends({
|
|
199
199
|
// eslint-disable-line jsx-a11y/role-supports-aria-props,jsx-a11y/anchor-is-valid
|
|
200
200
|
"aria-haspopup": "menu" // eslint-disable-line jsx-a11y/aria-proptypes
|
|
201
201
|
,
|
|
@@ -205,13 +205,13 @@ class HeaderMenu extends React__default.Component {
|
|
|
205
205
|
onKeyDown: this.handleOnKeyDown,
|
|
206
206
|
ref: this.handleMenuButtonRef,
|
|
207
207
|
tabIndex: 0
|
|
208
|
-
}, accessibilityLabel), menuLinkName, MenuContent ? /*#__PURE__*/
|
|
208
|
+
}, accessibilityLabel), menuLinkName, MenuContent ? /*#__PURE__*/React.createElement(MenuContent, null) : /*#__PURE__*/React.createElement(ChevronDown, {
|
|
209
209
|
className: `${this.context}--header__menu-arrow`
|
|
210
|
-
})), /*#__PURE__*/
|
|
210
|
+
})), /*#__PURE__*/React.createElement("ul", _extends({}, accessibilityLabel, {
|
|
211
211
|
ref: this._subMenus,
|
|
212
212
|
onClick: this.handleOnClick,
|
|
213
213
|
className: `${prefix}--header__menu`
|
|
214
|
-
}),
|
|
214
|
+
}), React.Children.map(children, this._renderMenuItem)));
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
217
|
_defineProperty(HeaderMenu, "propTypes", {
|
|
@@ -265,8 +265,8 @@ _defineProperty(HeaderMenu, "propTypes", {
|
|
|
265
265
|
tabIndex: PropTypes.number
|
|
266
266
|
});
|
|
267
267
|
_defineProperty(HeaderMenu, "contextType", PrefixContext);
|
|
268
|
-
const HeaderMenuForwardRef = /*#__PURE__*/
|
|
269
|
-
return /*#__PURE__*/
|
|
268
|
+
const HeaderMenuForwardRef = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
269
|
+
return /*#__PURE__*/React.createElement(HeaderMenu, _extends({}, props, {
|
|
270
270
|
focusRef: ref
|
|
271
271
|
}));
|
|
272
272
|
});
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import { Menu, Close } from '@carbon/icons-react';
|
|
10
10
|
import cx from 'classnames';
|
|
11
|
-
import
|
|
11
|
+
import React from 'react';
|
|
12
12
|
import PropTypes from 'prop-types';
|
|
13
13
|
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
14
14
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
@@ -36,13 +36,13 @@ function HeaderMenuButton(_ref) {
|
|
|
36
36
|
[`${prefix}--header__menu-toggle`]: true,
|
|
37
37
|
[`${prefix}--header__menu-toggle__hidden`]: !isCollapsible
|
|
38
38
|
});
|
|
39
|
-
const menuIcon = renderMenuIcon ? renderMenuIcon : _Menu || (_Menu = /*#__PURE__*/
|
|
39
|
+
const menuIcon = renderMenuIcon ? renderMenuIcon : _Menu || (_Menu = /*#__PURE__*/React.createElement(Menu, {
|
|
40
40
|
size: 20
|
|
41
41
|
}));
|
|
42
|
-
const closeIcon = renderCloseIcon ? renderCloseIcon : _Close || (_Close = /*#__PURE__*/
|
|
42
|
+
const closeIcon = renderCloseIcon ? renderCloseIcon : _Close || (_Close = /*#__PURE__*/React.createElement(Close, {
|
|
43
43
|
size: 20
|
|
44
44
|
}));
|
|
45
|
-
return /*#__PURE__*/
|
|
45
|
+
return /*#__PURE__*/React.createElement("button", _extends({}, rest, {
|
|
46
46
|
"aria-label": ariaLabel,
|
|
47
47
|
"aria-labelledby": ariaLabelledBy,
|
|
48
48
|
className: className,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React, { forwardRef } from 'react';
|
|
11
11
|
import cx from 'classnames';
|
|
12
12
|
import Link, { LinkPropTypes } from './Link.js';
|
|
13
13
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
@@ -28,21 +28,23 @@ const HeaderMenuItem = /*#__PURE__*/forwardRef(function HeaderMenuItem(_ref, ref
|
|
|
28
28
|
if (isCurrentPage) {
|
|
29
29
|
isActive = isCurrentPage;
|
|
30
30
|
}
|
|
31
|
+
// We set the current class only if `isActive` is passed in and we do
|
|
32
|
+
// not have an `aria-current="page"` set for the breadcrumb item. When this
|
|
33
|
+
// class is added we also set `aria-current` as `true`
|
|
34
|
+
const hasCurrentClass = isActive && ariaCurrent !== 'page';
|
|
31
35
|
const linkClassName = cx({
|
|
32
36
|
[`${prefix}--header__menu-item`]: true,
|
|
33
|
-
|
|
34
|
-
// not have an `aria-current="page"` set for the breadcrumb item
|
|
35
|
-
[`${prefix}--header__menu-item--current`]: isActive && ariaCurrent !== 'page'
|
|
37
|
+
[`${prefix}--header__menu-item--current`]: hasCurrentClass
|
|
36
38
|
});
|
|
37
|
-
return /*#__PURE__*/
|
|
39
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
38
40
|
className: className,
|
|
39
41
|
role: role
|
|
40
|
-
}, /*#__PURE__*/
|
|
41
|
-
"aria-current": ariaCurrent,
|
|
42
|
+
}, /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
|
|
43
|
+
"aria-current": hasCurrentClass ? true : ariaCurrent,
|
|
42
44
|
className: linkClassName,
|
|
43
45
|
ref: ref,
|
|
44
46
|
tabIndex: tabIndex
|
|
45
|
-
}), /*#__PURE__*/
|
|
47
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
46
48
|
className: `${prefix}--text-truncate--end`
|
|
47
49
|
}, children)));
|
|
48
50
|
});
|
|
@@ -63,7 +65,7 @@ HeaderMenuItem.propTypes = {
|
|
|
63
65
|
*/
|
|
64
66
|
className: PropTypes.string,
|
|
65
67
|
/**
|
|
66
|
-
*
|
|
68
|
+
* If `true` and `aria-current !== 'page'`, applies selected styles to the item and sets `aria-current="true"`.
|
|
67
69
|
*/
|
|
68
70
|
isActive: PropTypes.bool,
|
|
69
71
|
/**
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import PropTypes from 'prop-types';
|
|
12
12
|
import Link, { LinkPropTypes } from './Link.js';
|
|
13
13
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
@@ -21,9 +21,9 @@ function HeaderName(_ref) {
|
|
|
21
21
|
} = _ref;
|
|
22
22
|
const selectorPrefix = usePrefix();
|
|
23
23
|
const className = cx(`${selectorPrefix}--header__name`, customClassName);
|
|
24
|
-
return /*#__PURE__*/
|
|
24
|
+
return /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
|
|
25
25
|
className: className
|
|
26
|
-
}), prefix && /*#__PURE__*/
|
|
26
|
+
}), prefix && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
|
|
27
27
|
className: `${selectorPrefix}--header__name--prefix`
|
|
28
28
|
}, prefix), "\xA0"), children);
|
|
29
29
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import PropTypes from 'prop-types';
|
|
12
12
|
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
13
13
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
@@ -22,11 +22,11 @@ function HeaderNavigation(_ref) {
|
|
|
22
22
|
} = _ref;
|
|
23
23
|
const prefix = usePrefix();
|
|
24
24
|
const className = cx(`${prefix}--header__nav`, customClassName);
|
|
25
|
-
return /*#__PURE__*/
|
|
25
|
+
return /*#__PURE__*/React.createElement("nav", _extends({}, rest, {
|
|
26
26
|
"aria-label": ariaLabel,
|
|
27
27
|
"aria-labelledby": ariaLabelledBy,
|
|
28
28
|
className: className
|
|
29
|
-
}), /*#__PURE__*/
|
|
29
|
+
}), /*#__PURE__*/React.createElement("ul", {
|
|
30
30
|
className: `${prefix}--header__menu-bar`
|
|
31
31
|
}, children));
|
|
32
32
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
|
-
import
|
|
11
|
+
import React, { useRef, useState } from 'react';
|
|
12
12
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
13
13
|
import { Escape } from '../../internal/keyboard/keys.js';
|
|
14
14
|
import { match } from '../../internal/keyboard/match.js';
|
|
@@ -16,7 +16,7 @@ import { useWindowEvent } from '../../internal/useEvent.js';
|
|
|
16
16
|
import { useMergedRefs } from '../../internal/useMergedRefs.js';
|
|
17
17
|
|
|
18
18
|
const noopFn = () => {};
|
|
19
|
-
const HeaderPanel = /*#__PURE__*/
|
|
19
|
+
const HeaderPanel = /*#__PURE__*/React.forwardRef(function HeaderPanel(_ref, ref) {
|
|
20
20
|
let {
|
|
21
21
|
children,
|
|
22
22
|
className: customClassName,
|
|
@@ -67,7 +67,7 @@ const HeaderPanel = /*#__PURE__*/React__default.forwardRef(function HeaderPanel(
|
|
|
67
67
|
onHeaderPanelFocus();
|
|
68
68
|
}
|
|
69
69
|
});
|
|
70
|
-
return /*#__PURE__*/
|
|
70
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, rest, {
|
|
71
71
|
className: className,
|
|
72
72
|
ref: headerPanelRef
|
|
73
73
|
}, eventHandlers), children);
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
|
-
import
|
|
9
|
+
import React from 'react';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
11
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
12
12
|
|
|
@@ -21,7 +21,7 @@ function HeaderSideNavItems(_ref) {
|
|
|
21
21
|
[`${prefix}--side-nav__header-navigation`]: true,
|
|
22
22
|
[`${prefix}--side-nav__header-divider`]: hasDivider
|
|
23
23
|
}, customClassName);
|
|
24
|
-
return /*#__PURE__*/
|
|
24
|
+
return /*#__PURE__*/React.createElement("ul", {
|
|
25
25
|
className: className
|
|
26
26
|
}, children);
|
|
27
27
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import deprecate from '../../prop-types/deprecate.js';
|
|
12
12
|
|
|
13
13
|
// First define the component without generics
|
|
@@ -22,13 +22,13 @@ const LinkBase = (_ref, ref) => {
|
|
|
22
22
|
...rest
|
|
23
23
|
} = _ref;
|
|
24
24
|
const BaseComponentAsAny = BaseComponent ?? element ?? 'a';
|
|
25
|
-
return /*#__PURE__*/
|
|
25
|
+
return /*#__PURE__*/React.createElement(BaseComponentAsAny, _extends({
|
|
26
26
|
ref: ref
|
|
27
27
|
}, rest));
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
// Use forwardRef with the non-generic function
|
|
31
|
-
const Link = /*#__PURE__*/
|
|
31
|
+
const Link = /*#__PURE__*/React.forwardRef(LinkBase);
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
34
|
* Link is a custom component that allows us to supporting rendering elements
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
-
import
|
|
9
|
+
import React, { createContext, useRef, isValidElement } from 'react';
|
|
10
10
|
import cx from 'classnames';
|
|
11
11
|
import PropTypes from 'prop-types';
|
|
12
12
|
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
@@ -93,13 +93,13 @@ function SideNavRenderFunction(_ref, ref) {
|
|
|
93
93
|
let childrenToRender = children;
|
|
94
94
|
|
|
95
95
|
// Pass the expansion state as a prop, so children can update themselves to match
|
|
96
|
-
childrenToRender =
|
|
96
|
+
childrenToRender = React.Children.map(children, child => {
|
|
97
97
|
// if we are controlled, check for if we have hovered over or the expanded state, else just use the expanded state (uncontrolled)
|
|
98
98
|
const currentExpansionState = controlled ? expandedViaHoverState || expanded : expanded;
|
|
99
99
|
if (/*#__PURE__*/isValidElement(child)) {
|
|
100
100
|
const childJsxElement = child;
|
|
101
101
|
// avoid spreading `isSideNavExpanded` to non-Carbon UI Shell children
|
|
102
|
-
return /*#__PURE__*/
|
|
102
|
+
return /*#__PURE__*/React.cloneElement(childJsxElement, {
|
|
103
103
|
...(CARBON_SIDENAV_ITEMS.includes(childJsxElement.type?.displayName ?? childJsxElement.type?.name) ? {
|
|
104
104
|
isSideNavExpanded: currentExpansionState
|
|
105
105
|
} : {})
|
|
@@ -157,24 +157,24 @@ function SideNavRenderFunction(_ref, ref) {
|
|
|
157
157
|
});
|
|
158
158
|
const lgMediaQuery = `(min-width: ${breakpoints.lg.width})`;
|
|
159
159
|
const isLg = useMatchMedia(lgMediaQuery);
|
|
160
|
-
return /*#__PURE__*/
|
|
160
|
+
return /*#__PURE__*/React.createElement(SideNavContext.Provider, {
|
|
161
161
|
value: {
|
|
162
162
|
isRail
|
|
163
163
|
}
|
|
164
164
|
}, isFixedNav ? null :
|
|
165
165
|
/*#__PURE__*/
|
|
166
166
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
|
|
167
|
-
|
|
167
|
+
React.createElement("div", {
|
|
168
168
|
className: overlayClassName,
|
|
169
169
|
onClick: onOverlayClick
|
|
170
|
-
}), /*#__PURE__*/
|
|
170
|
+
}), /*#__PURE__*/React.createElement("nav", _extends({
|
|
171
171
|
tabIndex: -1,
|
|
172
172
|
ref: navRef,
|
|
173
173
|
className: `${prefix}--side-nav__navigation ${className}`,
|
|
174
174
|
inert: !isRail ? !(expanded || isLg) : undefined
|
|
175
175
|
}, accessibilityLabel, eventHandlers, other), childrenToRender));
|
|
176
176
|
}
|
|
177
|
-
const SideNav = /*#__PURE__*/
|
|
177
|
+
const SideNav = /*#__PURE__*/React.forwardRef(SideNavRenderFunction);
|
|
178
178
|
SideNav.displayName = 'SideNav';
|
|
179
179
|
SideNav.propTypes = {
|
|
180
180
|
/**
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
|
-
import
|
|
11
|
+
import React from 'react';
|
|
12
12
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
13
13
|
|
|
14
14
|
const SideNavDetails = _ref => {
|
|
@@ -20,9 +20,9 @@ const SideNavDetails = _ref => {
|
|
|
20
20
|
} = _ref;
|
|
21
21
|
const prefix = usePrefix();
|
|
22
22
|
const className = cx(`${prefix}--side-nav__details`, customClassName);
|
|
23
|
-
return /*#__PURE__*/
|
|
23
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
24
24
|
className: className
|
|
25
|
-
}, rest), /*#__PURE__*/
|
|
25
|
+
}, rest), /*#__PURE__*/React.createElement("h2", {
|
|
26
26
|
className: `${prefix}--side-nav__title`,
|
|
27
27
|
title: title
|
|
28
28
|
}, title), children);
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
12
12
|
|
|
13
13
|
var _hr;
|
|
@@ -17,9 +17,9 @@ const SideNavDivider = _ref => {
|
|
|
17
17
|
} = _ref;
|
|
18
18
|
const prefix = usePrefix();
|
|
19
19
|
const classNames = cx(`${prefix}--side-nav__divider`, className);
|
|
20
|
-
return /*#__PURE__*/
|
|
20
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
21
21
|
className: classNames
|
|
22
|
-
}, _hr || (_hr = /*#__PURE__*/
|
|
22
|
+
}, _hr || (_hr = /*#__PURE__*/React.createElement("hr", null)));
|
|
23
23
|
};
|
|
24
24
|
SideNavDivider.propTypes = {
|
|
25
25
|
/**
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { Close, ChevronRight } from '@carbon/icons-react';
|
|
9
9
|
import cx from 'classnames';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import PropTypes from 'prop-types';
|
|
12
12
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
13
13
|
|
|
@@ -26,20 +26,20 @@ function SideNavFooter(_ref) {
|
|
|
26
26
|
} = _ref;
|
|
27
27
|
const prefix = usePrefix();
|
|
28
28
|
const className = cx(`${prefix}--side-nav__footer`, customClassName);
|
|
29
|
-
return /*#__PURE__*/
|
|
29
|
+
return /*#__PURE__*/React.createElement("footer", {
|
|
30
30
|
className: className
|
|
31
|
-
}, /*#__PURE__*/
|
|
31
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
32
32
|
className: `${prefix}--side-nav__toggle`,
|
|
33
33
|
type: "button",
|
|
34
34
|
onClick: evt => onToggle(evt),
|
|
35
35
|
title: assistiveText
|
|
36
|
-
}, /*#__PURE__*/
|
|
36
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
37
37
|
className: `${prefix}--side-nav__icon`
|
|
38
|
-
}, expanded ? _Close || (_Close = /*#__PURE__*/
|
|
38
|
+
}, expanded ? _Close || (_Close = /*#__PURE__*/React.createElement(Close, {
|
|
39
39
|
size: 20
|
|
40
|
-
})) : _ChevronRight || (_ChevronRight = /*#__PURE__*/
|
|
40
|
+
})) : _ChevronRight || (_ChevronRight = /*#__PURE__*/React.createElement(ChevronRight, {
|
|
41
41
|
size: 20
|
|
42
|
-
}))), /*#__PURE__*/
|
|
42
|
+
}))), /*#__PURE__*/React.createElement("span", {
|
|
43
43
|
className: `${prefix}--assistive-text`
|
|
44
44
|
}, assistiveText)));
|
|
45
45
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import SideNavIcon from './SideNavIcon.js';
|
|
12
12
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
13
13
|
|
|
@@ -19,9 +19,9 @@ const SideNavHeader = _ref => {
|
|
|
19
19
|
} = _ref;
|
|
20
20
|
const prefix = usePrefix();
|
|
21
21
|
const className = cx(`${prefix}--side-nav__header`, customClassName);
|
|
22
|
-
return /*#__PURE__*/
|
|
22
|
+
return /*#__PURE__*/React.createElement("header", {
|
|
23
23
|
className: className
|
|
24
|
-
}, /*#__PURE__*/
|
|
24
|
+
}, /*#__PURE__*/React.createElement(SideNavIcon, null, /*#__PURE__*/React.createElement(IconElement, null)), children);
|
|
25
25
|
};
|
|
26
26
|
SideNavHeader.displayName = 'SideNavHeader';
|
|
27
27
|
SideNavHeader.propTypes = {
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
12
12
|
|
|
13
13
|
const SideNavIcon = _ref => {
|
|
@@ -22,7 +22,7 @@ const SideNavIcon = _ref => {
|
|
|
22
22
|
[`${prefix}--side-nav__icon--small`]: small,
|
|
23
23
|
[customClassName]: !!customClassName
|
|
24
24
|
});
|
|
25
|
-
return /*#__PURE__*/
|
|
25
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
26
26
|
className: className
|
|
27
27
|
}, children);
|
|
28
28
|
};
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
12
12
|
|
|
13
13
|
const SideNavItem = _ref => {
|
|
@@ -22,7 +22,7 @@ const SideNavItem = _ref => {
|
|
|
22
22
|
[`${prefix}--side-nav__item--large`]: large,
|
|
23
23
|
[customClassName]: !!customClassName
|
|
24
24
|
});
|
|
25
|
-
return /*#__PURE__*/
|
|
25
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
26
26
|
className: className
|
|
27
27
|
}, children);
|
|
28
28
|
};
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import cx from 'classnames';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import { CARBON_SIDENAV_ITEMS } from './_utils.js';
|
|
12
12
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
13
13
|
|
|
@@ -19,18 +19,18 @@ const SideNavItems = _ref => {
|
|
|
19
19
|
} = _ref;
|
|
20
20
|
const prefix = usePrefix();
|
|
21
21
|
const className = cx([`${prefix}--side-nav__items`], customClassName);
|
|
22
|
-
const childrenWithExpandedState =
|
|
23
|
-
if (/*#__PURE__*/
|
|
22
|
+
const childrenWithExpandedState = React.Children.map(children, child => {
|
|
23
|
+
if (/*#__PURE__*/React.isValidElement(child)) {
|
|
24
24
|
// avoid spreading `isSideNavExpanded` to non-Carbon UI Shell children
|
|
25
25
|
const childDisplayName = child.type?.displayName;
|
|
26
|
-
return /*#__PURE__*/
|
|
26
|
+
return /*#__PURE__*/React.cloneElement(child, {
|
|
27
27
|
...(CARBON_SIDENAV_ITEMS.includes(childDisplayName) ? {
|
|
28
28
|
isSideNavExpanded
|
|
29
29
|
} : {})
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
|
-
return /*#__PURE__*/
|
|
33
|
+
return /*#__PURE__*/React.createElement("ul", {
|
|
34
34
|
className: className
|
|
35
35
|
}, childrenWithExpandedState);
|
|
36
36
|
};
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
|
-
import
|
|
11
|
+
import React, { forwardRef, useContext } from 'react';
|
|
12
12
|
import Link, { LinkPropTypes } from './Link.js';
|
|
13
13
|
import SideNavIcon from './SideNavIcon.js';
|
|
14
14
|
import SideNavItem from './SideNavItem.js';
|
|
@@ -36,15 +36,15 @@ const SideNavLinkBase = (_ref, ref) => {
|
|
|
36
36
|
[`${prefix}--side-nav__link--current`]: isActive,
|
|
37
37
|
[customClassName]: !!customClassName
|
|
38
38
|
});
|
|
39
|
-
return /*#__PURE__*/
|
|
39
|
+
return /*#__PURE__*/React.createElement(SideNavItem, {
|
|
40
40
|
large: large
|
|
41
|
-
}, /*#__PURE__*/
|
|
41
|
+
}, /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
|
|
42
42
|
className: className,
|
|
43
43
|
ref: ref,
|
|
44
44
|
tabIndex: tabIndex === undefined ? !isSideNavExpanded && !isRail ? -1 : 0 : tabIndex
|
|
45
|
-
}), IconElement && /*#__PURE__*/
|
|
45
|
+
}), IconElement && /*#__PURE__*/React.createElement(SideNavIcon, {
|
|
46
46
|
small: true
|
|
47
|
-
}, /*#__PURE__*/
|
|
47
|
+
}, /*#__PURE__*/React.createElement(IconElement, null)), /*#__PURE__*/React.createElement(SideNavLinkText, null, children)));
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
// Use forwardRef with the non-generic function and cast to the generic component type
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
9
|
import cx from 'classnames';
|
|
10
|
-
import
|
|
10
|
+
import React from 'react';
|
|
11
11
|
import { usePrefix } from '../../internal/usePrefix.js';
|
|
12
12
|
import PropTypes from 'prop-types';
|
|
13
13
|
|
|
@@ -19,7 +19,7 @@ function SideNavLinkText(_ref) {
|
|
|
19
19
|
} = _ref;
|
|
20
20
|
const prefix = usePrefix();
|
|
21
21
|
const className = cx(`${prefix}--side-nav__link-text`, customClassName);
|
|
22
|
-
return /*#__PURE__*/
|
|
22
|
+
return /*#__PURE__*/React.createElement("span", _extends({}, rest, {
|
|
23
23
|
className: className
|
|
24
24
|
}), children);
|
|
25
25
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { ChevronDown } from '@carbon/icons-react';
|
|
9
9
|
import cx from 'classnames';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
|
-
import
|
|
11
|
+
import React, { useContext, useState } from 'react';
|
|
12
12
|
import SideNavIcon from './SideNavIcon.js';
|
|
13
13
|
import { Escape } from '../../internal/keyboard/keys.js';
|
|
14
14
|
import { match } from '../../internal/keyboard/match.js';
|
|
@@ -16,7 +16,7 @@ import { usePrefix } from '../../internal/usePrefix.js';
|
|
|
16
16
|
import { SideNavContext } from './SideNav.js';
|
|
17
17
|
|
|
18
18
|
var _ChevronDown;
|
|
19
|
-
const SideNavMenu = /*#__PURE__*/
|
|
19
|
+
const SideNavMenu = /*#__PURE__*/React.forwardRef(function SideNavMenu(_ref, ref) {
|
|
20
20
|
let {
|
|
21
21
|
className: customClassName,
|
|
22
22
|
children,
|
|
@@ -51,14 +51,14 @@ const SideNavMenu = /*#__PURE__*/React__default.forwardRef(function SideNavMenu(
|
|
|
51
51
|
return (
|
|
52
52
|
/*#__PURE__*/
|
|
53
53
|
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
54
|
-
|
|
54
|
+
React.createElement("li", {
|
|
55
55
|
className: className,
|
|
56
56
|
onKeyDown: event => {
|
|
57
57
|
if (match(event, Escape)) {
|
|
58
58
|
setIsExpanded(false);
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
}, /*#__PURE__*/
|
|
61
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
62
62
|
"aria-expanded": isExpanded,
|
|
63
63
|
className: `${prefix}--side-nav__submenu`,
|
|
64
64
|
onClick: () => {
|
|
@@ -67,14 +67,14 @@ const SideNavMenu = /*#__PURE__*/React__default.forwardRef(function SideNavMenu(
|
|
|
67
67
|
ref: ref,
|
|
68
68
|
type: "button",
|
|
69
69
|
tabIndex: tabIndex === undefined ? !isSideNavExpanded && !isRail ? -1 : 0 : tabIndex
|
|
70
|
-
}, IconElement && /*#__PURE__*/
|
|
70
|
+
}, IconElement && /*#__PURE__*/React.createElement(SideNavIcon, null, /*#__PURE__*/React.createElement(IconElement, null)), /*#__PURE__*/React.createElement("span", {
|
|
71
71
|
className: `${prefix}--side-nav__submenu-title`
|
|
72
|
-
}, title), /*#__PURE__*/
|
|
72
|
+
}, title), /*#__PURE__*/React.createElement(SideNavIcon, {
|
|
73
73
|
className: `${prefix}--side-nav__submenu-chevron`,
|
|
74
74
|
small: true
|
|
75
|
-
}, _ChevronDown || (_ChevronDown = /*#__PURE__*/
|
|
75
|
+
}, _ChevronDown || (_ChevronDown = /*#__PURE__*/React.createElement(ChevronDown, {
|
|
76
76
|
size: 20
|
|
77
|
-
})))), /*#__PURE__*/
|
|
77
|
+
})))), /*#__PURE__*/React.createElement("ul", {
|
|
78
78
|
className: `${prefix}--side-nav__menu`
|
|
79
79
|
}, children))
|
|
80
80
|
);
|
|
@@ -130,7 +130,7 @@ a single element, an array of elements, or null or undefined.
|
|
|
130
130
|
function hasActiveDescendant(children) {
|
|
131
131
|
if (Array.isArray(children)) {
|
|
132
132
|
return children.some(child => {
|
|
133
|
-
if (! /*#__PURE__*/
|
|
133
|
+
if (! /*#__PURE__*/React.isValidElement(child)) {
|
|
134
134
|
return false;
|
|
135
135
|
}
|
|
136
136
|
|
|
@@ -147,7 +147,7 @@ function hasActiveDescendant(children) {
|
|
|
147
147
|
|
|
148
148
|
// We use React.isValidElement(child) to check if the child is a valid React element before accessing its props
|
|
149
149
|
|
|
150
|
-
if (/*#__PURE__*/
|
|
150
|
+
if (/*#__PURE__*/React.isValidElement(children)) {
|
|
151
151
|
const props = children.props;
|
|
152
152
|
if (props.isActive === true || props['aria-current']) {
|
|
153
153
|
return true;
|