@carbon/react 1.112.0 → 1.113.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 +941 -941
- package/es/components/AILabel/index.js +6 -6
- 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 +3 -3
- package/es/components/Accordion/Accordion.js +2 -2
- package/es/components/Accordion/AccordionItem.js +2 -2
- package/es/components/AspectRatio/AspectRatio.js +2 -2
- package/es/components/BadgeIndicator/index.js +4 -4
- package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +3 -3
- package/es/components/Breadcrumb/Breadcrumb.js +2 -2
- package/es/components/Breadcrumb/BreadcrumbItem.js +3 -3
- package/es/components/Button/Button.Skeleton.js +3 -3
- package/es/components/Button/Button.js +2 -2
- package/es/components/Button/ButtonBase.js +2 -2
- package/es/components/Button/index.js +3 -3
- package/es/components/ButtonSet/ButtonSet.js +3 -3
- package/es/components/ButtonSet/index.js +1 -1
- package/es/components/ChatButton/ChatButton.Skeleton.js +2 -2
- package/es/components/ChatButton/ChatButton.js +3 -3
- package/es/components/Checkbox/Checkbox.Skeleton.js +3 -3
- package/es/components/Checkbox/Checkbox.js +4 -4
- package/es/components/Checkbox/index.js +2 -2
- package/es/components/CheckboxGroup/CheckboxGroup.js +2 -2
- package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +3 -3
- package/es/components/CodeSnippet/CodeSnippet.js +2 -2
- package/es/components/ComboBox/ComboBox.js +12 -9
- package/es/components/ComboBox/index.js +1 -1
- package/es/components/ComboButton/index.js +5 -5
- package/es/components/ComposedModal/ComposedModal.js +7 -6
- package/es/components/ComposedModal/ComposedModalPresence.js +5 -2
- package/es/components/ComposedModal/ModalFooter.js +4 -4
- package/es/components/ComposedModal/ModalHeader.js +6 -6
- package/es/components/ContainedList/ContainedList.js +2 -2
- package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +2 -2
- package/es/components/ContainedList/ContainedListItem/index.js +1 -1
- package/es/components/ContentSwitcher/ContentSwitcher.js +2 -2
- package/es/components/Copy/Copy.js +4 -4
- package/es/components/Copy/index.js +1 -1
- package/es/components/CopyButton/CopyButton.js +3 -3
- package/es/components/CopyButton/index.js +1 -1
- package/es/components/DataTable/DataTable.js +4 -3
- package/es/components/DataTable/Table.js +3 -3
- package/es/components/DataTable/TableBatchActions.js +3 -3
- package/es/components/DataTable/TableCell.js +2 -2
- package/es/components/DataTable/TableContainer.js +3 -3
- package/es/components/DataTable/TableDecoratorRow.js +2 -2
- package/es/components/DataTable/TableExpandHeader.js +2 -2
- package/es/components/DataTable/TableExpandRow.js +2 -2
- package/es/components/DataTable/TableExpandedRow.js +2 -2
- package/es/components/DataTable/TableHeader.js +4 -4
- package/es/components/DataTable/TableRow.js +2 -2
- package/es/components/DataTable/TableSelectAll.js +2 -2
- package/es/components/DataTable/TableSelectRow.js +2 -2
- package/es/components/DataTable/TableSlugRow.js +2 -2
- package/es/components/DataTable/TableToolbar.js +3 -3
- package/es/components/DataTable/TableToolbarMenu.js +4 -4
- package/es/components/DataTable/TableToolbarSearch.js +3 -3
- package/es/components/DataTable/state/sorting.js +3 -2
- package/es/components/DataTable/tools/sorting.js +1 -1
- package/es/components/DataTableSkeleton/DataTableSkeleton.js +2 -2
- package/es/components/DatePicker/DatePicker.Skeleton.js +4 -4
- package/es/components/DatePicker/DatePicker.js +3 -3
- package/es/components/DatePicker/index.js +2 -2
- package/es/components/DatePickerInput/DatePickerInput.js +7 -7
- package/es/components/DatePickerInput/index.js +1 -1
- package/es/components/Dialog/Dialog.js +9 -9
- package/es/components/Dialog/index.js +1 -1
- package/es/components/Dropdown/Dropdown.Skeleton.js +4 -4
- package/es/components/Dropdown/Dropdown.js +5 -5
- package/es/components/Dropdown/index.js +2 -2
- package/es/components/ExpandableSearch/ExpandableSearch.js +2 -2
- package/es/components/ExpandableSearch/index.js +1 -1
- package/es/components/FileUploader/FileUploader.Skeleton.js +4 -4
- package/es/components/FileUploader/FileUploader.js +11 -8
- package/es/components/FileUploader/FileUploaderButton.js +3 -3
- package/es/components/FileUploader/FileUploaderDropContainer.js +8 -6
- package/es/components/FileUploader/FileUploaderItem.js +3 -3
- package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +2 -2
- package/es/components/FluidComboBox/FluidComboBox.js +3 -3
- package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +3 -3
- package/es/components/FluidDatePicker/FluidDatePicker.js +3 -3
- package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +2 -2
- package/es/components/FluidDropdown/FluidDropdown.js +3 -3
- package/es/components/FluidForm/FluidForm.js +3 -3
- package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +2 -2
- package/es/components/FluidMultiSelect/FluidMultiSelect.js +4 -4
- package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +2 -2
- package/es/components/FluidNumberInput/FluidNumberInput.js +3 -3
- package/es/components/FluidSearch/FluidSearch.Skeleton.js +2 -2
- package/es/components/FluidSearch/FluidSearch.js +3 -3
- package/es/components/FluidSelect/FluidSelect.Skeleton.js +2 -2
- package/es/components/FluidSelect/FluidSelect.js +3 -3
- package/es/components/FluidSelect/index.js +2 -2
- package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +2 -2
- package/es/components/FluidTextArea/FluidTextArea.js +3 -3
- package/es/components/FluidTextInput/FluidPasswordInput.js +3 -3
- package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +2 -2
- package/es/components/FluidTextInput/FluidTextInput.js +4 -4
- package/es/components/FluidTextInput/index.js +3 -3
- package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +2 -2
- package/es/components/FluidTimePicker/FluidTimePicker.js +3 -3
- package/es/components/FluidTimePickerSelect/index.js +1 -1
- package/es/components/Form/Form.js +2 -2
- package/es/components/FormGroup/FormGroup.js +2 -2
- package/es/components/FormItem/FormItem.js +2 -2
- package/es/components/FormLabel/FormLabel.js +2 -2
- package/es/components/Grid/CSSGrid.js +4 -4
- package/es/components/Grid/Column.js +3 -3
- package/es/components/Grid/ColumnHang.js +3 -3
- package/es/components/Grid/FlexGrid.js +3 -3
- package/es/components/Grid/Grid.js +3 -3
- package/es/components/Grid/Row.js +2 -2
- package/es/components/Icon/Icon.Skeleton.js +3 -3
- package/es/components/IconButton/index.js +4 -3
- package/es/components/IconIndicator/index.js +4 -4
- package/es/components/InlineCheckbox/index.js +1 -1
- package/es/components/InlineLoading/InlineLoading.js +2 -2
- package/es/components/InlineLoading/index.js +1 -1
- package/es/components/Layer/LayerLevel.js +1 -1
- package/es/components/Layer/index.js +2 -2
- package/es/components/Layout/index.js +3 -3
- package/es/components/LayoutDirection/LayoutDirection.js +1 -1
- package/es/components/Link/Link.js +2 -2
- package/es/components/Link/index.js +1 -1
- package/es/components/ListBox/ListBox.js +2 -2
- package/es/components/ListBox/ListBoxMenuIcon.js +2 -2
- package/es/components/ListBox/ListBoxMenuItem.js +4 -3
- package/es/components/ListBox/ListBoxSelection.js +3 -3
- package/es/components/ListBox/index.js +2 -2
- package/es/components/ListBox/next/ListBoxSelection.js +3 -3
- package/es/components/ListBox/next/ListBoxTrigger.js +2 -2
- package/es/components/ListItem/ListItem.js +2 -2
- package/es/components/Loading/Loading.js +3 -3
- package/es/components/Loading/index.js +1 -1
- package/es/components/Menu/Menu.js +3 -3
- package/es/components/Menu/MenuItem.js +9 -9
- package/es/components/MenuButton/index.js +4 -4
- package/es/components/Modal/Modal.js +9 -9
- package/es/components/Modal/ModalPresence.js +5 -2
- package/es/components/Modal/index.js +2 -2
- package/es/components/ModalWrapper/ModalWrapper.js +2 -2
- package/es/components/MultiSelect/FilterableMultiSelect.js +10 -8
- package/es/components/MultiSelect/MultiSelect.js +7 -7
- package/es/components/Notification/Notification.js +10 -10
- package/es/components/NumberInput/NumberInput.Skeleton.js +2 -2
- package/es/components/NumberInput/NumberInput.js +21 -11
- package/es/components/OrderedList/OrderedList.js +2 -2
- package/es/components/OverflowMenu/OverflowMenu.js +7 -7
- package/es/components/OverflowMenu/index.js +2 -2
- package/es/components/OverflowMenu/next/index.js +4 -4
- package/es/components/OverflowMenuItem/OverflowMenuItem.js +4 -4
- package/es/components/OverflowMenuItem/index.js +1 -1
- package/es/components/OverflowMenuV2/index.js +1 -1
- package/es/components/PageHeader/PageHeader.js +15 -15
- package/es/components/PageHeader/index.js +1 -1
- package/es/components/Pagination/Pagination.Skeleton.js +3 -3
- package/es/components/Pagination/Pagination.d.ts +18 -1
- package/es/components/Pagination/Pagination.js +33 -8
- package/es/components/Pagination/experimental/PageSelector.d.ts +4 -0
- package/es/components/Pagination/experimental/PageSelector.js +16 -3
- package/es/components/Pagination/experimental/Pagination-story.d.ts +100 -65
- package/es/components/Pagination/experimental/Pagination.d.ts +4 -0
- package/es/components/Pagination/experimental/Pagination.js +12 -5
- package/es/components/PaginationNav/PaginationNav.js +8 -6
- package/es/components/Popover/index.js +14 -6
- package/es/components/ProgressBar/ProgressBar.js +3 -3
- package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +3 -3
- package/es/components/ProgressIndicator/ProgressIndicator.js +4 -4
- package/es/components/RadioButton/RadioButton.Skeleton.js +3 -3
- package/es/components/RadioButton/RadioButton.js +3 -3
- package/es/components/RadioButton/index.js +1 -1
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +4 -4
- package/es/components/RadioTile/RadioTile.js +3 -3
- package/es/components/RadioTile/index.js +1 -1
- package/es/components/Search/Search.Skeleton.js +3 -3
- package/es/components/Search/Search.js +4 -4
- package/es/components/Search/index.js +2 -2
- package/es/components/Select/Select.Skeleton.js +3 -3
- package/es/components/Select/Select.js +6 -6
- package/es/components/Select/index.js +2 -2
- package/es/components/SelectItem/SelectItem.js +2 -2
- package/es/components/SelectItem/index.js +1 -1
- package/es/components/SelectItemGroup/SelectItemGroup.js +2 -2
- package/es/components/ShapeIndicator/index.js +4 -4
- package/es/components/SkeletonIcon/SkeletonIcon.js +2 -2
- package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +2 -2
- package/es/components/SkeletonText/SkeletonText.js +2 -2
- package/es/components/SkeletonText/index.js +1 -1
- package/es/components/Slider/Slider.Skeleton.js +7 -7
- package/es/components/Slider/Slider.js +22 -20
- package/es/components/Stack/Stack.js +2 -2
- package/es/components/StructuredList/StructuredList.Skeleton.js +3 -3
- package/es/components/StructuredList/StructuredList.js +7 -7
- package/es/components/Switch/IconSwitch.js +6 -5
- package/es/components/Switch/Switch.js +3 -3
- package/es/components/TabContent/TabContent.js +2 -2
- package/es/components/Tabs/Tabs.Skeleton.js +3 -3
- package/es/components/Tabs/Tabs.js +45 -33
- package/es/components/Tag/DismissibleTag.js +4 -3
- package/es/components/Tag/OperationalTag.js +4 -3
- package/es/components/Tag/SelectableTag.js +3 -3
- package/es/components/Tag/Tag.Skeleton.js +3 -3
- package/es/components/Tag/Tag.js +4 -3
- package/es/components/TextArea/TextArea.Skeleton.js +3 -3
- package/es/components/TextArea/TextArea.js +8 -8
- package/es/components/TextArea/index.js +2 -2
- package/es/components/TextInput/ControlledPasswordInput.js +6 -6
- package/es/components/TextInput/PasswordInput.js +10 -10
- package/es/components/TextInput/TextInput.Skeleton.js +3 -3
- package/es/components/TextInput/TextInput.js +9 -9
- package/es/components/TextInput/index.js +2 -2
- package/es/components/Theme/index.js +2 -2
- package/es/components/Tile/Tile.js +14 -11
- package/es/components/TileGroup/TileGroup.js +1 -1
- package/es/components/TimePicker/TimePicker.js +5 -5
- package/es/components/TimePickerSelect/TimePickerSelect.js +2 -2
- package/es/components/Toggle/Toggle.Skeleton.js +3 -3
- package/es/components/Toggle/Toggle.js +6 -6
- package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +2 -2
- package/es/components/Toggletip/index.js +6 -6
- package/es/components/Tooltip/DefinitionTooltip.js +2 -2
- package/es/components/Tooltip/Tooltip.d.ts +2 -1
- package/es/components/Tooltip/Tooltip.js +5 -4
- package/es/components/TreeView/TreeNode.js +11 -8
- package/es/components/TreeView/TreeView.js +2 -2
- package/es/components/UIShell/Content.js +2 -2
- package/es/components/UIShell/Header.js +2 -2
- package/es/components/UIShell/HeaderGlobalAction.js +2 -2
- package/es/components/UIShell/HeaderMenu.js +4 -4
- package/es/components/UIShell/HeaderMenuButton.js +2 -2
- package/es/components/UIShell/HeaderMenuItem.js +2 -2
- package/es/components/UIShell/HeaderName.js +2 -2
- package/es/components/UIShell/HeaderNavigation.js +2 -2
- package/es/components/UIShell/HeaderPanel.js +3 -3
- package/es/components/UIShell/HeaderSideNavItems.js +2 -2
- package/es/components/UIShell/SideNav.js +3 -3
- package/es/components/UIShell/SideNavDetails.js +2 -2
- package/es/components/UIShell/SideNavDivider.js +2 -2
- package/es/components/UIShell/SideNavFooter.js +2 -2
- package/es/components/UIShell/SideNavHeader.js +2 -2
- package/es/components/UIShell/SideNavIcon.js +2 -2
- package/es/components/UIShell/SideNavItem.js +2 -2
- package/es/components/UIShell/SideNavItems.js +2 -2
- package/es/components/UIShell/SideNavLink.js +2 -2
- package/es/components/UIShell/SideNavLinkText.js +2 -2
- package/es/components/UIShell/SideNavMenu.js +3 -3
- package/es/components/UIShell/SideNavMenuItem.js +3 -3
- package/es/components/UIShell/SideNavSwitcher.js +2 -2
- package/es/components/UIShell/SkipToContent.js +2 -2
- package/es/components/UIShell/Switcher.js +2 -2
- package/es/components/UIShell/SwitcherDivider.js +3 -3
- package/es/components/UIShell/SwitcherItem.js +4 -4
- package/es/components/UnorderedList/UnorderedList.js +2 -2
- package/es/index.js +30 -30
- package/es/internal/FloatingMenu.js +12 -9
- package/es/internal/motion/MotionSurface.d.ts +35 -0
- package/es/internal/motion/useMotionEnabled.d.ts +13 -0
- package/es/internal/motion/useMotionSurface.d.ts +33 -0
- package/es/internal/useId.js +1 -1
- package/es/internal/useOverflowItems.js +2 -1
- package/es/internal/usePresence.d.ts +8 -1
- package/es/internal/usePresence.js +4 -2
- package/es/internal/usePresenceContext.d.ts +12 -0
- package/es/internal/usePresenceContext.js +23 -5
- package/es/tools/wrapComponent.js +2 -2
- package/lib/components/AILabel/index.js +4 -4
- package/lib/components/AISkeleton/AISkeletonIcon.js +2 -2
- package/lib/components/AISkeleton/AISkeletonPlaceholder.js +2 -2
- package/lib/components/AISkeleton/AISkeletonText.js +2 -2
- package/lib/components/Accordion/Accordion.Skeleton.js +3 -2
- package/lib/components/Accordion/Accordion.js +2 -2
- package/lib/components/Accordion/AccordionItem.js +2 -2
- package/lib/components/AspectRatio/AspectRatio.js +2 -2
- package/lib/components/BadgeIndicator/index.js +3 -2
- package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +3 -2
- package/lib/components/Breadcrumb/Breadcrumb.js +2 -2
- package/lib/components/Breadcrumb/BreadcrumbItem.js +2 -2
- package/lib/components/Button/Button.Skeleton.js +3 -2
- package/lib/components/Button/Button.js +2 -2
- package/lib/components/Button/ButtonBase.js +2 -2
- package/lib/components/Button/index.js +7 -1
- package/lib/components/ButtonSet/ButtonSet.js +2 -2
- package/lib/components/ButtonSet/index.js +3 -1
- package/lib/components/ChatButton/ChatButton.Skeleton.js +2 -2
- package/lib/components/ChatButton/ChatButton.js +2 -2
- package/lib/components/Checkbox/Checkbox.Skeleton.js +3 -2
- package/lib/components/Checkbox/Checkbox.js +3 -3
- package/lib/components/Checkbox/index.js +3 -1
- package/lib/components/CheckboxGroup/CheckboxGroup.js +2 -2
- package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +3 -2
- package/lib/components/CodeSnippet/CodeSnippet.js +2 -2
- package/lib/components/ComboBox/ComboBox.js +8 -5
- package/lib/components/ComboBox/index.js +3 -1
- package/lib/components/ComboButton/index.js +2 -2
- package/lib/components/ComposedModal/ComposedModal.js +5 -4
- package/lib/components/ComposedModal/ComposedModalPresence.js +4 -1
- package/lib/components/ComposedModal/ModalFooter.js +3 -3
- package/lib/components/ComposedModal/ModalHeader.js +2 -2
- package/lib/components/ContainedList/ContainedList.js +2 -2
- package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +2 -2
- package/lib/components/ContainedList/ContainedListItem/index.js +3 -1
- package/lib/components/ContentSwitcher/ContentSwitcher.js +2 -2
- package/lib/components/Copy/Copy.js +3 -3
- package/lib/components/Copy/index.js +3 -1
- package/lib/components/CopyButton/CopyButton.js +3 -3
- package/lib/components/CopyButton/index.js +3 -1
- package/lib/components/DataTable/DataTable.js +4 -3
- package/lib/components/DataTable/Table.js +3 -2
- package/lib/components/DataTable/TableBatchActions.js +2 -2
- package/lib/components/DataTable/TableCell.js +2 -2
- package/lib/components/DataTable/TableContainer.js +2 -2
- package/lib/components/DataTable/TableDecoratorRow.js +2 -2
- package/lib/components/DataTable/TableExpandHeader.js +2 -2
- package/lib/components/DataTable/TableExpandRow.js +2 -2
- package/lib/components/DataTable/TableExpandedRow.js +2 -2
- package/lib/components/DataTable/TableHeader.js +2 -2
- package/lib/components/DataTable/TableRow.js +2 -2
- package/lib/components/DataTable/TableSelectAll.js +2 -2
- package/lib/components/DataTable/TableSelectRow.js +2 -2
- package/lib/components/DataTable/TableSlugRow.js +2 -2
- package/lib/components/DataTable/TableToolbar.js +3 -2
- package/lib/components/DataTable/TableToolbarMenu.js +3 -3
- package/lib/components/DataTable/TableToolbarSearch.js +3 -3
- package/lib/components/DataTable/state/sorting.js +3 -1
- package/lib/components/DataTable/tools/sorting.js +2 -0
- package/lib/components/DataTableSkeleton/DataTableSkeleton.js +2 -2
- package/lib/components/DatePicker/DatePicker.Skeleton.js +3 -2
- package/lib/components/DatePicker/DatePicker.js +2 -2
- package/lib/components/DatePicker/index.js +3 -1
- package/lib/components/DatePickerInput/DatePickerInput.js +3 -3
- package/lib/components/DatePickerInput/index.js +3 -1
- package/lib/components/Dialog/Dialog.js +3 -3
- package/lib/components/Dialog/index.js +8 -0
- package/lib/components/Dropdown/Dropdown.Skeleton.js +3 -2
- package/lib/components/Dropdown/Dropdown.js +2 -2
- package/lib/components/Dropdown/index.js +3 -1
- package/lib/components/ExpandableSearch/ExpandableSearch.js +2 -2
- package/lib/components/ExpandableSearch/index.js +3 -1
- package/lib/components/FileUploader/FileUploader.Skeleton.js +4 -3
- package/lib/components/FileUploader/FileUploader.js +9 -6
- package/lib/components/FileUploader/FileUploaderButton.js +3 -3
- package/lib/components/FileUploader/FileUploaderDropContainer.js +8 -6
- package/lib/components/FileUploader/FileUploaderItem.js +3 -3
- package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +2 -2
- package/lib/components/FluidComboBox/FluidComboBox.js +2 -2
- package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +2 -2
- package/lib/components/FluidDatePicker/FluidDatePicker.js +2 -2
- package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +2 -2
- package/lib/components/FluidDropdown/FluidDropdown.js +2 -2
- package/lib/components/FluidForm/FluidForm.js +2 -2
- package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +2 -2
- package/lib/components/FluidMultiSelect/FluidMultiSelect.js +2 -2
- package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +2 -2
- package/lib/components/FluidNumberInput/FluidNumberInput.js +2 -2
- package/lib/components/FluidSearch/FluidSearch.Skeleton.js +2 -2
- package/lib/components/FluidSearch/FluidSearch.js +2 -2
- package/lib/components/FluidSelect/FluidSelect.Skeleton.js +2 -2
- package/lib/components/FluidSelect/FluidSelect.js +2 -2
- package/lib/components/FluidSelect/index.js +3 -1
- package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +2 -2
- package/lib/components/FluidTextArea/FluidTextArea.js +2 -2
- package/lib/components/FluidTextInput/FluidPasswordInput.js +2 -2
- package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +2 -2
- package/lib/components/FluidTextInput/FluidTextInput.js +2 -2
- package/lib/components/FluidTextInput/index.js +5 -2
- package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +2 -2
- package/lib/components/FluidTimePicker/FluidTimePicker.js +2 -2
- package/lib/components/FluidTimePickerSelect/index.js +3 -1
- package/lib/components/Form/Form.js +2 -2
- package/lib/components/FormGroup/FormGroup.js +2 -2
- package/lib/components/FormItem/FormItem.js +2 -2
- package/lib/components/FormLabel/FormLabel.js +2 -2
- package/lib/components/Grid/CSSGrid.js +3 -3
- package/lib/components/Grid/Column.js +2 -2
- package/lib/components/Grid/ColumnHang.js +3 -3
- package/lib/components/Grid/FlexGrid.js +3 -3
- package/lib/components/Grid/Grid.js +3 -3
- package/lib/components/Grid/Row.js +2 -2
- package/lib/components/Icon/Icon.Skeleton.js +3 -2
- package/lib/components/IconButton/index.js +4 -3
- package/lib/components/IconIndicator/index.js +4 -2
- package/lib/components/InlineCheckbox/index.js +3 -1
- package/lib/components/InlineLoading/InlineLoading.js +2 -2
- package/lib/components/InlineLoading/index.js +3 -1
- package/lib/components/Layer/LayerLevel.js +1 -0
- package/lib/components/Layer/index.js +2 -2
- package/lib/components/Layout/index.js +2 -2
- package/lib/components/LayoutDirection/LayoutDirection.js +1 -0
- package/lib/components/Link/Link.js +2 -2
- package/lib/components/Link/index.js +3 -1
- package/lib/components/ListBox/ListBox.js +2 -2
- package/lib/components/ListBox/ListBoxMenuIcon.js +2 -2
- package/lib/components/ListBox/ListBoxMenuItem.js +4 -3
- package/lib/components/ListBox/ListBoxSelection.js +2 -2
- package/lib/components/ListBox/index.js +3 -1
- package/lib/components/ListBox/next/ListBoxSelection.js +2 -2
- package/lib/components/ListBox/next/ListBoxTrigger.js +2 -2
- package/lib/components/ListItem/ListItem.js +2 -2
- package/lib/components/Loading/Loading.js +2 -2
- package/lib/components/Loading/index.js +3 -1
- package/lib/components/Menu/Menu.js +2 -2
- package/lib/components/Menu/MenuItem.js +2 -2
- package/lib/components/MenuButton/index.js +2 -2
- package/lib/components/Modal/Modal.js +5 -4
- package/lib/components/Modal/ModalPresence.js +4 -1
- package/lib/components/Modal/index.js +6 -2
- package/lib/components/ModalWrapper/ModalWrapper.js +2 -2
- package/lib/components/MultiSelect/FilterableMultiSelect.js +6 -4
- package/lib/components/MultiSelect/MultiSelect.js +3 -3
- package/lib/components/Notification/Notification.js +4 -4
- package/lib/components/NumberInput/NumberInput.Skeleton.js +2 -2
- package/lib/components/NumberInput/NumberInput.js +16 -5
- package/lib/components/OrderedList/OrderedList.js +2 -2
- package/lib/components/OverflowMenu/OverflowMenu.js +5 -3
- package/lib/components/OverflowMenu/index.js +3 -2
- package/lib/components/OverflowMenu/next/index.js +2 -2
- package/lib/components/OverflowMenuItem/OverflowMenuItem.js +3 -3
- package/lib/components/OverflowMenuItem/index.js +3 -1
- package/lib/components/OverflowMenuV2/index.js +1 -1
- package/lib/components/PageHeader/PageHeader.js +5 -5
- package/lib/components/PageHeader/index.js +14 -0
- package/lib/components/Pagination/Pagination.Skeleton.js +3 -2
- package/lib/components/Pagination/Pagination.d.ts +18 -1
- package/lib/components/Pagination/Pagination.js +31 -6
- package/lib/components/Pagination/experimental/PageSelector.d.ts +4 -0
- package/lib/components/Pagination/experimental/PageSelector.js +9 -2
- package/lib/components/Pagination/experimental/Pagination-story.d.ts +100 -65
- package/lib/components/Pagination/experimental/Pagination.d.ts +4 -0
- package/lib/components/Pagination/experimental/Pagination.js +9 -2
- package/lib/components/PaginationNav/PaginationNav.js +6 -4
- package/lib/components/Popover/index.js +10 -2
- package/lib/components/ProgressBar/ProgressBar.js +2 -2
- package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +3 -2
- package/lib/components/ProgressIndicator/ProgressIndicator.js +2 -2
- package/lib/components/RadioButton/RadioButton.Skeleton.js +3 -2
- package/lib/components/RadioButton/RadioButton.js +2 -2
- package/lib/components/RadioButton/index.js +3 -1
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +2 -2
- package/lib/components/RadioTile/RadioTile.js +3 -3
- package/lib/components/RadioTile/index.js +3 -1
- package/lib/components/Search/Search.Skeleton.js +3 -2
- package/lib/components/Search/Search.js +3 -3
- package/lib/components/Search/index.js +3 -1
- package/lib/components/Select/Select.Skeleton.js +3 -2
- package/lib/components/Select/Select.js +2 -2
- package/lib/components/Select/index.js +3 -1
- package/lib/components/SelectItem/SelectItem.js +2 -2
- package/lib/components/SelectItem/index.js +3 -1
- package/lib/components/SelectItemGroup/SelectItemGroup.js +2 -2
- package/lib/components/ShapeIndicator/index.js +4 -2
- package/lib/components/SkeletonIcon/SkeletonIcon.js +2 -2
- package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +2 -2
- package/lib/components/SkeletonText/SkeletonText.js +2 -2
- package/lib/components/SkeletonText/index.js +3 -1
- package/lib/components/Slider/Slider.Skeleton.js +2 -2
- package/lib/components/Slider/Slider.js +8 -6
- package/lib/components/Stack/Stack.js +2 -2
- package/lib/components/StructuredList/StructuredList.Skeleton.js +2 -2
- package/lib/components/StructuredList/StructuredList.js +2 -2
- package/lib/components/Switch/IconSwitch.js +5 -4
- package/lib/components/Switch/Switch.js +3 -3
- package/lib/components/TabContent/TabContent.js +2 -2
- package/lib/components/Tabs/Tabs.Skeleton.js +3 -2
- package/lib/components/Tabs/Tabs.js +35 -23
- package/lib/components/Tag/DismissibleTag.js +3 -2
- package/lib/components/Tag/OperationalTag.js +3 -2
- package/lib/components/Tag/SelectableTag.js +2 -2
- package/lib/components/Tag/Tag.Skeleton.js +3 -2
- package/lib/components/Tag/Tag.js +3 -2
- package/lib/components/TextArea/TextArea.Skeleton.js +3 -2
- package/lib/components/TextArea/TextArea.js +3 -3
- package/lib/components/TextArea/index.js +3 -1
- package/lib/components/TextInput/ControlledPasswordInput.js +3 -3
- package/lib/components/TextInput/PasswordInput.js +2 -2
- package/lib/components/TextInput/TextInput.Skeleton.js +3 -2
- package/lib/components/TextInput/TextInput.js +2 -2
- package/lib/components/TextInput/index.js +3 -1
- package/lib/components/Theme/index.js +2 -2
- package/lib/components/Tile/Tile.js +7 -4
- package/lib/components/TileGroup/TileGroup.js +1 -1
- package/lib/components/TimePicker/TimePicker.js +2 -2
- package/lib/components/TimePickerSelect/TimePickerSelect.js +2 -2
- package/lib/components/Toggle/Toggle.Skeleton.js +3 -2
- package/lib/components/Toggle/Toggle.js +3 -2
- package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +2 -2
- package/lib/components/Toggletip/index.js +4 -3
- package/lib/components/Tooltip/DefinitionTooltip.js +2 -2
- package/lib/components/Tooltip/Tooltip.d.ts +2 -1
- package/lib/components/Tooltip/Tooltip.js +5 -4
- package/lib/components/TreeView/TreeNode.js +8 -5
- package/lib/components/TreeView/TreeView.js +2 -2
- package/lib/components/UIShell/Content.js +2 -2
- package/lib/components/UIShell/Header.js +2 -2
- package/lib/components/UIShell/HeaderGlobalAction.js +2 -2
- package/lib/components/UIShell/HeaderMenu.js +3 -2
- package/lib/components/UIShell/HeaderMenuButton.js +2 -2
- package/lib/components/UIShell/HeaderMenuItem.js +2 -2
- package/lib/components/UIShell/HeaderName.js +2 -2
- package/lib/components/UIShell/HeaderNavigation.js +2 -2
- package/lib/components/UIShell/HeaderPanel.js +3 -3
- package/lib/components/UIShell/HeaderSideNavItems.js +2 -2
- package/lib/components/UIShell/SideNav.js +2 -2
- package/lib/components/UIShell/SideNavDetails.js +2 -2
- package/lib/components/UIShell/SideNavDivider.js +2 -2
- package/lib/components/UIShell/SideNavFooter.js +2 -2
- package/lib/components/UIShell/SideNavHeader.js +2 -2
- package/lib/components/UIShell/SideNavIcon.js +2 -2
- package/lib/components/UIShell/SideNavItem.js +2 -2
- package/lib/components/UIShell/SideNavItems.js +2 -2
- package/lib/components/UIShell/SideNavLink.js +2 -2
- package/lib/components/UIShell/SideNavLinkText.js +2 -2
- package/lib/components/UIShell/SideNavMenu.js +3 -2
- package/lib/components/UIShell/SideNavMenuItem.js +2 -2
- package/lib/components/UIShell/SideNavSwitcher.js +2 -2
- package/lib/components/UIShell/SkipToContent.js +2 -2
- package/lib/components/UIShell/Switcher.js +2 -2
- package/lib/components/UIShell/SwitcherDivider.js +2 -2
- package/lib/components/UIShell/SwitcherItem.js +2 -2
- package/lib/components/UnorderedList/UnorderedList.js +2 -2
- package/lib/index.js +33 -32
- package/lib/internal/FloatingMenu.js +13 -8
- package/lib/internal/motion/MotionSurface.d.ts +35 -0
- package/lib/internal/motion/useMotionEnabled.d.ts +13 -0
- package/lib/internal/motion/useMotionSurface.d.ts +33 -0
- package/lib/internal/useId.js +1 -0
- package/lib/internal/useOverflowItems.js +2 -1
- package/lib/internal/usePresence.d.ts +8 -1
- package/lib/internal/usePresence.js +4 -2
- package/lib/internal/usePresenceContext.d.ts +12 -0
- package/lib/internal/usePresenceContext.js +22 -3
- package/lib/tools/wrapComponent.js +2 -2
- package/package.json +12 -9
- package/telemetry.yml +1 -0
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { noopFn } from "../../internal/noopFn.js";
|
|
8
9
|
import { PrefixContext } from "../../internal/usePrefix.js";
|
|
9
10
|
import { ArrowDown, ArrowLeft, ArrowRight as ArrowRight$1, ArrowUp as ArrowUp$1, Escape, Tab } from "../../internal/keyboard/keys.js";
|
|
10
11
|
import { matches } from "../../internal/keyboard/match.js";
|
|
11
12
|
import { setupGetInstanceId } from "../../tools/setupGetInstanceId.js";
|
|
12
|
-
import { noopFn } from "../../internal/noopFn.js";
|
|
13
13
|
import { deprecate } from "../../prop-types/deprecate.js";
|
|
14
14
|
import { deprecateValuesWithin } from "../../prop-types/deprecateValuesWithin.js";
|
|
15
15
|
import { mapPopoverAlign } from "../../tools/mapPopoverAlign.js";
|
|
@@ -17,8 +17,8 @@ import { IconButton } from "../IconButton/index.js";
|
|
|
17
17
|
import { mergeRefs } from "../../tools/mergeRefs.js";
|
|
18
18
|
import { DIRECTION_BOTTOM, FloatingMenu } from "../../internal/FloatingMenu.js";
|
|
19
19
|
import { useOutsideClick } from "../../internal/useOutsideClick.js";
|
|
20
|
-
import classNames from "classnames";
|
|
21
20
|
import React, { Children, cloneElement, forwardRef, isValidElement, useCallback, useContext, useEffect, useReducer, useRef, useState } from "react";
|
|
21
|
+
import cx from "classnames";
|
|
22
22
|
import PropTypes from "prop-types";
|
|
23
23
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
24
24
|
import { OverflowMenuVertical } from "@carbon/icons-react";
|
|
@@ -231,21 +231,21 @@ const OverflowMenu = forwardRef(({ align, ["aria-label"]: ariaLabel = null, aria
|
|
|
231
231
|
return document.body;
|
|
232
232
|
};
|
|
233
233
|
const menuBodyId = `overflow-menu-${instanceId.current}__menu-body`;
|
|
234
|
-
const overflowMenuClasses =
|
|
234
|
+
const overflowMenuClasses = cx(className, `${prefix}--overflow-menu`, {
|
|
235
235
|
[`${prefix}--overflow-menu--open`]: open,
|
|
236
236
|
[`${prefix}--overflow-menu--light`]: light,
|
|
237
237
|
[`${prefix}--overflow-menu--${size}`]: size,
|
|
238
238
|
[`${prefix}--layout--size-${size}`]: size
|
|
239
239
|
});
|
|
240
|
-
const overflowMenuOptionsClasses =
|
|
240
|
+
const overflowMenuOptionsClasses = cx(menuOptionsClass, `${prefix}--overflow-menu-options`, {
|
|
241
241
|
[`${prefix}--overflow-menu--flip`]: flipped,
|
|
242
242
|
[`${prefix}--overflow-menu-options--open`]: open,
|
|
243
243
|
[`${prefix}--overflow-menu-options--light`]: light,
|
|
244
244
|
[`${prefix}--overflow-menu-options--${size}`]: size,
|
|
245
245
|
[`${prefix}--layout--size-${size}`]: size
|
|
246
246
|
});
|
|
247
|
-
const overflowMenuIconClasses =
|
|
248
|
-
const overflowMenuWrapperClasses =
|
|
247
|
+
const overflowMenuIconClasses = cx(`${prefix}--overflow-menu__icon`, iconClass);
|
|
248
|
+
const overflowMenuWrapperClasses = cx(`${prefix}--overflow-menu__wrapper`);
|
|
249
249
|
const childrenWithProps = Children.toArray(children).map((child, index) => {
|
|
250
250
|
if (isValidElement(child)) {
|
|
251
251
|
const childElement = child;
|
|
@@ -454,4 +454,4 @@ OverflowMenu.propTypes = {
|
|
|
454
454
|
])
|
|
455
455
|
};
|
|
456
456
|
//#endregion
|
|
457
|
-
export { OverflowMenu as default };
|
|
457
|
+
export { OverflowMenu, OverflowMenu as default, getMenuOffset };
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { useFeatureFlag } from "../FeatureFlags/index.js";
|
|
9
9
|
import { OverflowMenu as OverflowMenu$1 } from "./next/index.js";
|
|
10
|
-
import OverflowMenu$2 from "./OverflowMenu.js";
|
|
10
|
+
import { OverflowMenu as OverflowMenu$2 } from "./OverflowMenu.js";
|
|
11
11
|
import { forwardRef } from "react";
|
|
12
12
|
import { jsx } from "react/jsx-runtime";
|
|
13
13
|
//#region src/components/OverflowMenu/index.tsx
|
|
@@ -29,4 +29,4 @@ const OverflowMenu = forwardRef((props, ref) => {
|
|
|
29
29
|
OverflowMenu.displayName = "OverflowMenu";
|
|
30
30
|
OverflowMenu.propTypes = OverflowMenu$2.propTypes;
|
|
31
31
|
//#endregion
|
|
32
|
-
export { OverflowMenu as default };
|
|
32
|
+
export { OverflowMenu, OverflowMenu as default };
|
|
@@ -14,8 +14,8 @@ import { IconButton } from "../../IconButton/index.js";
|
|
|
14
14
|
import { mergeRefs } from "../../../tools/mergeRefs.js";
|
|
15
15
|
import { Menu as Menu$1 } from "../../Menu/Menu.js";
|
|
16
16
|
import { useAttachedMenu } from "../../../internal/useAttachedMenu.js";
|
|
17
|
-
import classNames from "classnames";
|
|
18
17
|
import React, { useEffect, useRef } from "react";
|
|
18
|
+
import cx from "classnames";
|
|
19
19
|
import PropTypes from "prop-types";
|
|
20
20
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
21
21
|
import { OverflowMenuVertical } from "@carbon/icons-react";
|
|
@@ -65,9 +65,9 @@ const OverflowMenu = React.forwardRef(({ autoAlign = false, children, className,
|
|
|
65
65
|
function handleTriggerClick() {
|
|
66
66
|
if (triggerRef.current) hookOnClick();
|
|
67
67
|
}
|
|
68
|
-
const containerClasses =
|
|
69
|
-
const menuClasses =
|
|
70
|
-
const triggerClasses =
|
|
68
|
+
const containerClasses = cx(className, `${prefix}--overflow-menu__container`, { [`${prefix}--autoalign`]: enableFloatingStyles });
|
|
69
|
+
const menuClasses = cx(`${prefix}--overflow-menu__${menuAlignment}`);
|
|
70
|
+
const triggerClasses = cx(`${prefix}--overflow-menu`, { [`${prefix}--overflow-menu--open`]: open }, size !== defaultSize && `${prefix}--overflow-menu--${size}`, size !== defaultSize && `${prefix}--layout--size-${size}`);
|
|
71
71
|
const floatingRef = mergeRefs(triggerRef, refs.setReference);
|
|
72
72
|
return /* @__PURE__ */ jsxs("div", {
|
|
73
73
|
...rest,
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
import { warning } from "../../internal/warning.js";
|
|
8
9
|
import { usePrefix } from "../../internal/usePrefix.js";
|
|
9
10
|
import { Text } from "../Text/Text.js";
|
|
10
11
|
import { ArrowDown, ArrowUp } from "../../internal/keyboard/keys.js";
|
|
11
12
|
import { match } from "../../internal/keyboard/match.js";
|
|
12
13
|
import { useId } from "../../internal/useId.js";
|
|
13
|
-
import { warning } from "../../internal/warning.js";
|
|
14
|
-
import classNames from "classnames";
|
|
15
14
|
import { forwardRef } from "react";
|
|
15
|
+
import cx from "classnames";
|
|
16
16
|
import PropTypes from "prop-types";
|
|
17
17
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
18
18
|
//#region src/components/OverflowMenuItem/OverflowMenuItem.tsx
|
|
@@ -40,8 +40,8 @@ const OverflowMenuItem = forwardRef((props, ref) => {
|
|
|
40
40
|
if (closeMenu) closeMenu();
|
|
41
41
|
}
|
|
42
42
|
warning(!!closeMenu, "`<OverflowMenuItem>` detected missing `closeMenu` prop. `closeMenu` is required to let `<OverflowMenu>` close the menu upon actions on `<OverflowMenuItem>`. Please make sure `<OverflowMenuItem>` is a direct child of `<OverflowMenu>.");
|
|
43
|
-
const overflowMenuBtnClasses =
|
|
44
|
-
const overflowMenuItemClasses =
|
|
43
|
+
const overflowMenuBtnClasses = cx(`${prefix}--overflow-menu-options__btn`, className);
|
|
44
|
+
const overflowMenuItemClasses = cx(`${prefix}--overflow-menu-options__option`, {
|
|
45
45
|
[`${prefix}--overflow-menu--divider`]: hasDivider,
|
|
46
46
|
[`${prefix}--overflow-menu-options__option--danger`]: isDelete,
|
|
47
47
|
[`${prefix}--overflow-menu-options__option--disabled`]: disabled
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import { warning } from "../../internal/warning.js";
|
|
9
9
|
import { FeatureFlags } from "../FeatureFlags/index.js";
|
|
10
|
-
import OverflowMenu from "../OverflowMenu/index.js";
|
|
10
|
+
import { OverflowMenu } from "../OverflowMenu/index.js";
|
|
11
11
|
import "react";
|
|
12
12
|
import { jsx } from "react/jsx-runtime";
|
|
13
13
|
//#region src/components/OverflowMenuV2/index.js
|
|
@@ -14,15 +14,15 @@ import { Popover, PopoverContent } from "../Popover/index.js";
|
|
|
14
14
|
import { DefinitionTooltip } from "../Tooltip/DefinitionTooltip.js";
|
|
15
15
|
import { MenuItem } from "../Menu/MenuItem.js";
|
|
16
16
|
import { deprecateComponent } from "../../prop-types/deprecateComponent.js";
|
|
17
|
-
import { GridAsGridComponent } from "../Grid/Grid.js";
|
|
17
|
+
import { Grid as GridAsGridComponent } from "../Grid/Grid.js";
|
|
18
18
|
import Column from "../Grid/Column.js";
|
|
19
19
|
import { MenuButton } from "../MenuButton/index.js";
|
|
20
20
|
import { useMatchMedia } from "../../internal/useMatchMedia.js";
|
|
21
21
|
import Tag from "../Tag/Tag.js";
|
|
22
22
|
import OperationalTag from "../Tag/OperationalTag.js";
|
|
23
23
|
import useOverflowItems from "../../internal/useOverflowItems.js";
|
|
24
|
-
import classNames from "classnames";
|
|
25
24
|
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
25
|
+
import cx from "classnames";
|
|
26
26
|
import PropTypes from "prop-types";
|
|
27
27
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
28
28
|
import { createOverflowHandler } from "@carbon/utilities";
|
|
@@ -47,7 +47,7 @@ const usePageHeaderDeprecation = (componentName) => {
|
|
|
47
47
|
const PageHeader = React.forwardRef(({ className, children, ...other }, ref) => {
|
|
48
48
|
usePageHeaderDeprecation("PageHeader");
|
|
49
49
|
return /* @__PURE__ */ jsx("div", {
|
|
50
|
-
className:
|
|
50
|
+
className: cx({ [`${usePrefix()}--page-header`]: true }, className),
|
|
51
51
|
ref,
|
|
52
52
|
...other,
|
|
53
53
|
children
|
|
@@ -57,14 +57,14 @@ PageHeader.displayName = "PageHeader";
|
|
|
57
57
|
const PageHeaderBreadcrumbBar = React.forwardRef(({ border = true, className, children, renderIcon: IconElement, contentActions, contentActionsFlush, pageActions, pageActionsFlush, ...other }, ref) => {
|
|
58
58
|
usePageHeaderDeprecation("PageHeaderBreadcrumbBar");
|
|
59
59
|
const prefix = usePrefix();
|
|
60
|
-
const classNames
|
|
60
|
+
const classNames = cx({
|
|
61
61
|
[`${prefix}--page-header__breadcrumb-bar`]: true,
|
|
62
62
|
[`${prefix}--page-header__breadcrumb-bar-border`]: border,
|
|
63
63
|
[`${prefix}--page-header__breadcrumb__actions-flush`]: pageActionsFlush
|
|
64
64
|
}, className);
|
|
65
|
-
const contentActionsClasses =
|
|
65
|
+
const contentActionsClasses = cx({ [`${prefix}--page-header__breadcrumb__content-actions`]: !contentActionsFlush });
|
|
66
66
|
return /* @__PURE__ */ jsx("div", {
|
|
67
|
-
className: classNames
|
|
67
|
+
className: classNames,
|
|
68
68
|
ref,
|
|
69
69
|
...other,
|
|
70
70
|
children: /* @__PURE__ */ jsx(GridAsGridComponent, { children: /* @__PURE__ */ jsx(Column, {
|
|
@@ -94,7 +94,7 @@ PageHeaderBreadcrumbBar.displayName = "PageHeaderBreadcrumbBar";
|
|
|
94
94
|
const PageHeaderContent = React.forwardRef(({ className, children, title, renderIcon: IconElement, contextualActions, pageActions, ...other }, ref) => {
|
|
95
95
|
usePageHeaderDeprecation("PageHeaderContent");
|
|
96
96
|
const prefix = usePrefix();
|
|
97
|
-
const classNames
|
|
97
|
+
const classNames = cx({ [`${prefix}--page-header__content`]: true }, className);
|
|
98
98
|
const titleRef = useRef(null);
|
|
99
99
|
const [isEllipsisApplied, setIsEllipsisApplied] = useState(false);
|
|
100
100
|
const isEllipsisActive = (element) => {
|
|
@@ -105,7 +105,7 @@ const PageHeaderContent = React.forwardRef(({ className, children, title, render
|
|
|
105
105
|
if (titleRef.current) isEllipsisActive(titleRef.current);
|
|
106
106
|
}, [title]);
|
|
107
107
|
return /* @__PURE__ */ jsx("div", {
|
|
108
|
-
className: classNames
|
|
108
|
+
className: classNames,
|
|
109
109
|
ref,
|
|
110
110
|
...other,
|
|
111
111
|
children: /* @__PURE__ */ jsx(GridAsGridComponent, { children: /* @__PURE__ */ jsxs(Column, {
|
|
@@ -177,7 +177,7 @@ PageHeaderContent.propTypes = {
|
|
|
177
177
|
};
|
|
178
178
|
const PageHeaderContentPageActions = ({ className, children, menuButtonLabel = "Actions", actions, ...other }) => {
|
|
179
179
|
usePageHeaderDeprecation("PageHeaderContentPageActions");
|
|
180
|
-
const classNames
|
|
180
|
+
const classNames = cx({ [`${usePrefix()}--page-header__content__page-actions`]: true }, className);
|
|
181
181
|
const containerRef = useRef(null);
|
|
182
182
|
const offsetRef = useRef(null);
|
|
183
183
|
const [menuButtonVisibility, setMenuButtonVisibility] = useState(false);
|
|
@@ -200,7 +200,7 @@ const PageHeaderContentPageActions = ({ className, children, menuButtonLabel = "
|
|
|
200
200
|
});
|
|
201
201
|
}, []);
|
|
202
202
|
return /* @__PURE__ */ jsx("div", {
|
|
203
|
-
className: classNames
|
|
203
|
+
className: classNames,
|
|
204
204
|
ref: containerRef,
|
|
205
205
|
...other,
|
|
206
206
|
children: actions && /* @__PURE__ */ jsx(Fragment, { children: Array.isArray(actions) && /* @__PURE__ */ jsxs(Fragment, { children: [actions.map((action) => /* @__PURE__ */ jsx("div", { children: React.cloneElement(action.body, {
|
|
@@ -245,7 +245,7 @@ const PageHeaderContentText = ({ className, children, subtitle, ...other }) => {
|
|
|
245
245
|
usePageHeaderDeprecation("PageHeaderContentText");
|
|
246
246
|
const prefix = usePrefix();
|
|
247
247
|
return /* @__PURE__ */ jsxs("div", {
|
|
248
|
-
className:
|
|
248
|
+
className: cx({ [`${prefix}--page-header__content__body`]: true }, className),
|
|
249
249
|
...other,
|
|
250
250
|
children: [subtitle && /* @__PURE__ */ jsx(Text, {
|
|
251
251
|
as: "h3",
|
|
@@ -271,10 +271,10 @@ PageHeaderContentText.propTypes = {
|
|
|
271
271
|
};
|
|
272
272
|
const PageHeaderHeroImage = ({ className, children, ...other }) => {
|
|
273
273
|
usePageHeaderDeprecation("PageHeaderHeroImage");
|
|
274
|
-
const classNames
|
|
274
|
+
const classNames = cx({ [`${usePrefix()}--page-header__hero-image`]: true }, className);
|
|
275
275
|
const isLg = useMatchMedia(`(min-width: ${breakpoints.lg.width})`);
|
|
276
276
|
return /* @__PURE__ */ jsx(AspectRatio, {
|
|
277
|
-
className: classNames
|
|
277
|
+
className: classNames,
|
|
278
278
|
...other,
|
|
279
279
|
ratio: isLg ? "2x1" : "3x2",
|
|
280
280
|
children
|
|
@@ -294,7 +294,7 @@ PageHeaderHeroImage.propTypes = {
|
|
|
294
294
|
const PageHeaderTabBar = React.forwardRef(({ className, children, tags = [], ...other }, ref) => {
|
|
295
295
|
usePageHeaderDeprecation("PageHeaderTabBar");
|
|
296
296
|
const prefix = usePrefix();
|
|
297
|
-
const classNames
|
|
297
|
+
const classNames = cx({ [`${prefix}--page-header__tab-bar`]: true }, className);
|
|
298
298
|
const [openPopover, setOpenPopover] = useState(false);
|
|
299
299
|
const tagSize = tags[0]?.size || "md";
|
|
300
300
|
const instanceId = useId("PageHeaderTabBar");
|
|
@@ -355,7 +355,7 @@ const PageHeaderTabBar = React.forwardRef(({ className, children, tags = [], ...
|
|
|
355
355
|
})]
|
|
356
356
|
});
|
|
357
357
|
return /* @__PURE__ */ jsx("div", {
|
|
358
|
-
className: classNames
|
|
358
|
+
className: classNames,
|
|
359
359
|
ref,
|
|
360
360
|
...other,
|
|
361
361
|
children: /* @__PURE__ */ jsx(GridAsGridComponent, { children: /* @__PURE__ */ jsx(Column, {
|
|
@@ -25,4 +25,4 @@ var PageHeader_exports = /* @__PURE__ */ __exportAll({
|
|
|
25
25
|
TabBar: () => TabBar
|
|
26
26
|
});
|
|
27
27
|
//#endregion
|
|
28
|
-
export { PageHeader_exports };
|
|
28
|
+
export { BreadcrumbBar, Content, ContentPageActions, ContentText, HeroImage, PageHeader, PageHeaderBreadcrumbBar, PageHeaderContent, PageHeaderContentPageActions, PageHeaderContentText, PageHeaderHeroImage, PageHeaderTabBar, PageHeader_exports, Root, TabBar };
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
import { usePrefix } from "../../internal/usePrefix.js";
|
|
9
9
|
import SkeletonText_default from "../SkeletonText/index.js";
|
|
10
|
-
import classNames from "classnames";
|
|
11
10
|
import "react";
|
|
11
|
+
import cx from "classnames";
|
|
12
12
|
import PropTypes from "prop-types";
|
|
13
13
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
14
|
//#region src/components/Pagination/Pagination.Skeleton.tsx
|
|
@@ -21,7 +21,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
21
21
|
function PaginationSkeleton({ className, ...rest }) {
|
|
22
22
|
const prefix = usePrefix();
|
|
23
23
|
return /* @__PURE__ */ jsxs("div", {
|
|
24
|
-
className:
|
|
24
|
+
className: cx(`${prefix}--pagination`, `${prefix}--skeleton`, className),
|
|
25
25
|
...rest,
|
|
26
26
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
27
27
|
className: `${prefix}--pagination__left`,
|
|
@@ -42,4 +42,4 @@ PaginationSkeleton.propTypes = {
|
|
|
42
42
|
*/
|
|
43
43
|
className: PropTypes.string };
|
|
44
44
|
//#endregion
|
|
45
|
-
export { PaginationSkeleton as default };
|
|
45
|
+
export { PaginationSkeleton, PaginationSkeleton as default };
|
|
@@ -81,6 +81,22 @@ export interface PaginationProps extends Omit<React.HTMLAttributes<HTMLDivElemen
|
|
|
81
81
|
* A function returning the label for the page select.
|
|
82
82
|
*/
|
|
83
83
|
pageSelectLabelText?: (total: number) => string;
|
|
84
|
+
/**
|
|
85
|
+
* Provide a custom render function for the page-selection control.
|
|
86
|
+
* When provided, the default `<Select>` is replaced with the returned node.
|
|
87
|
+
*/
|
|
88
|
+
renderPageSelect?: (props: {
|
|
89
|
+
/** The currently active page. */
|
|
90
|
+
currentPage: number;
|
|
91
|
+
/** Total number of pages derived from `totalItems` and `pageSize`. */
|
|
92
|
+
totalPages: number;
|
|
93
|
+
/** Current page size. */
|
|
94
|
+
currentPageSize: number;
|
|
95
|
+
/** The computed accessible label for the page-selection control. */
|
|
96
|
+
pageSelectLabelText: string;
|
|
97
|
+
/** Sets the active page. */
|
|
98
|
+
onSetPage: (page: number | string) => void;
|
|
99
|
+
}) => React.ReactNode;
|
|
84
100
|
/**
|
|
85
101
|
* The number dictating how many items a page contains.
|
|
86
102
|
*/
|
|
@@ -98,7 +114,8 @@ export interface PaginationProps extends Omit<React.HTMLAttributes<HTMLDivElemen
|
|
|
98
114
|
*/
|
|
99
115
|
pageText?: (page: number, pagesUnknown?: boolean) => string;
|
|
100
116
|
/**
|
|
101
|
-
* `true`
|
|
117
|
+
* `true` when the total number of pages is unknown. Hides the page selection
|
|
118
|
+
* control.
|
|
102
119
|
*/
|
|
103
120
|
pagesUnknown?: boolean;
|
|
104
121
|
/**
|
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
import { usePrefix } from "../../internal/usePrefix.js";
|
|
9
9
|
import { useFallbackId } from "../../internal/useId.js";
|
|
10
10
|
import { IconButton } from "../IconButton/index.js";
|
|
11
|
+
import { clamp } from "../../internal/clamp.js";
|
|
11
12
|
import { usePreviousValue } from "../../internal/usePreviousValue.js";
|
|
12
13
|
import Select_default from "../Select/index.js";
|
|
13
14
|
import SelectItem_default from "../SelectItem/index.js";
|
|
14
|
-
import classNames from "classnames";
|
|
15
15
|
import React, { useEffect, useMemo, useRef, useState } from "react";
|
|
16
|
+
import cx from "classnames";
|
|
16
17
|
import PropTypes from "prop-types";
|
|
17
18
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
18
19
|
import { CaretLeft, CaretRight } from "@carbon/icons-react";
|
|
@@ -52,7 +53,7 @@ const getPageSize = (pageSizes, pageSize) => {
|
|
|
52
53
|
}
|
|
53
54
|
return pageSizes[0].value;
|
|
54
55
|
};
|
|
55
|
-
const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardTextTooltipPosition = "top", className: customClassName = "", disabled = false, forwardText = "Next page", forwardTextTooltipPosition = "top", id, isLastPage = false, itemText = (min, max) => `${min}–${max} items`, itemRangeText = (min, max, total) => `${min}–${max} of ${total} items`, itemsPerPageText = "Items per page:", onChange, pageNumberText: _pageNumberText, pageRangeText = (_current, total) => `of ${total} ${total === 1 ? "page" : "pages"}`, pageSelectLabelText = (total) => `Page of ${total} ${total === 1 ? "page" : "pages"}`, page: controlledPage = 1, pageInputDisabled, pageSize: controlledPageSize, pageSizeInputDisabled, pageSizes: controlledPageSizes, pageText = (page) => `page ${page}`, pagesUnknown = false, size = "md", totalItems, ...rest }, ref) => {
|
|
56
|
+
const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardTextTooltipPosition = "top", className: customClassName = "", disabled = false, forwardText = "Next page", forwardTextTooltipPosition = "top", id, isLastPage = false, itemText = (min, max) => `${min}–${max} items`, itemRangeText = (min, max, total) => `${min}–${max} of ${total} items`, itemsPerPageText = "Items per page:", onChange, pageNumberText: _pageNumberText, pageRangeText = (_current, total) => `of ${total} ${total === 1 ? "page" : "pages"}`, pageSelectLabelText = (total) => `Page of ${total} ${total === 1 ? "page" : "pages"}`, page: controlledPage = 1, pageInputDisabled, renderPageSelect, pageSize: controlledPageSize, pageSizeInputDisabled, pageSizes: controlledPageSizes, pageText = (page) => `page ${page}`, pagesUnknown = false, size = "md", totalItems, ...rest }, ref) => {
|
|
56
57
|
const prefix = usePrefix();
|
|
57
58
|
const inputId = useFallbackId(id?.toString());
|
|
58
59
|
const backBtnRef = useRef(null);
|
|
@@ -67,7 +68,7 @@ const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardT
|
|
|
67
68
|
const [pageSize, setPageSize] = useState(() => {
|
|
68
69
|
return getPageSize(normalizedControlledPageSizes, controlledPageSize);
|
|
69
70
|
});
|
|
70
|
-
const className =
|
|
71
|
+
const className = cx({
|
|
71
72
|
[`${prefix}--pagination`]: true,
|
|
72
73
|
[`${prefix}--pagination--${size}`]: size,
|
|
73
74
|
[`${prefix}--layout--size-${size}`]: size,
|
|
@@ -75,18 +76,18 @@ const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardT
|
|
|
75
76
|
});
|
|
76
77
|
const totalPages = totalItems ? Math.max(Math.ceil(totalItems / pageSize), 1) : 1;
|
|
77
78
|
const backButtonDisabled = disabled || page === 1;
|
|
78
|
-
const backButtonClasses =
|
|
79
|
+
const backButtonClasses = cx({
|
|
79
80
|
[`${prefix}--pagination__button`]: true,
|
|
80
81
|
[`${prefix}--pagination__button--backward`]: true,
|
|
81
82
|
[`${prefix}--pagination__button--no-index`]: backButtonDisabled
|
|
82
83
|
});
|
|
83
84
|
const forwardButtonDisabled = disabled || page === totalPages && !pagesUnknown;
|
|
84
|
-
const forwardButtonClasses =
|
|
85
|
+
const forwardButtonClasses = cx({
|
|
85
86
|
[`${prefix}--pagination__button`]: true,
|
|
86
87
|
[`${prefix}--pagination__button--forward`]: true,
|
|
87
88
|
[`${prefix}--pagination__button--no-index`]: forwardButtonDisabled
|
|
88
89
|
});
|
|
89
|
-
const selectItems = renderSelectItems(totalPages);
|
|
90
|
+
const selectItems = renderPageSelect ? [] : renderSelectItems(totalPages);
|
|
90
91
|
const focusMap = {
|
|
91
92
|
backward: backBtnRef,
|
|
92
93
|
forward: forwardBtnRef
|
|
@@ -140,7 +141,8 @@ const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardT
|
|
|
140
141
|
]);
|
|
141
142
|
useEffect(() => {
|
|
142
143
|
if (controlledPageSize === prevControlledPageSize) return;
|
|
143
|
-
|
|
144
|
+
const nextPageSize = getPageSize(normalizedControlledPageSizes, controlledPageSize);
|
|
145
|
+
setPageSize(nextPageSize);
|
|
144
146
|
}, [
|
|
145
147
|
controlledPageSize,
|
|
146
148
|
normalizedControlledPageSizes,
|
|
@@ -165,6 +167,18 @@ const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardT
|
|
|
165
167
|
});
|
|
166
168
|
}
|
|
167
169
|
}
|
|
170
|
+
function handleSetPage(nextPage) {
|
|
171
|
+
if (disabled || pageInputDisabled) return;
|
|
172
|
+
const numericPage = Number(nextPage);
|
|
173
|
+
if (!Number.isInteger(numericPage)) return;
|
|
174
|
+
const clamped = clamp(numericPage, 1, totalPages);
|
|
175
|
+
if (clamped === page) return;
|
|
176
|
+
setPage(clamped);
|
|
177
|
+
if (onChange) onChange({
|
|
178
|
+
page: clamped,
|
|
179
|
+
pageSize
|
|
180
|
+
});
|
|
181
|
+
}
|
|
168
182
|
function incrementPage() {
|
|
169
183
|
const nextPage = page + 1;
|
|
170
184
|
setPage(nextPage);
|
|
@@ -223,7 +237,13 @@ const Pagination = React.forwardRef(({ backwardText = "Previous page", backwardT
|
|
|
223
237
|
children: [pagesUnknown ? /* @__PURE__ */ jsx("span", {
|
|
224
238
|
className: `${prefix}--pagination__text ${prefix}--pagination__page-text ${prefix}--pagination__unknown-pages-text`,
|
|
225
239
|
children: pageText(page)
|
|
226
|
-
}) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
240
|
+
}) : /* @__PURE__ */ jsxs(Fragment, { children: [renderPageSelect ? renderPageSelect({
|
|
241
|
+
currentPage: page,
|
|
242
|
+
totalPages,
|
|
243
|
+
currentPageSize: pageSize,
|
|
244
|
+
pageSelectLabelText: pageSelectLabelText(totalPages),
|
|
245
|
+
onSetPage: handleSetPage
|
|
246
|
+
}) : /* @__PURE__ */ jsx(Select_default, {
|
|
227
247
|
id: `${prefix}-pagination-select-${inputId}-right`,
|
|
228
248
|
className: `${prefix}--select__page-number`,
|
|
229
249
|
labelText: pageSelectLabelText(totalPages),
|
|
@@ -341,6 +361,11 @@ Pagination.propTypes = {
|
|
|
341
361
|
*/
|
|
342
362
|
pageSelectLabelText: PropTypes.func,
|
|
343
363
|
/**
|
|
364
|
+
* Provide a custom render function for the page-selection control.
|
|
365
|
+
* When provided, the default `<Select>` is replaced with the returned node.
|
|
366
|
+
*/
|
|
367
|
+
renderPageSelect: PropTypes.func,
|
|
368
|
+
/**
|
|
344
369
|
* The number dictating how many items a page contains.
|
|
345
370
|
*/
|
|
346
371
|
pageSize: PropTypes.number,
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
export default PageSelector;
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated Use `Pagination` with the `renderPageSelect` prop instead.
|
|
4
|
+
* `unstable_PageSelector` / `preview_PageSelector` will be removed in v12.
|
|
5
|
+
*/
|
|
2
6
|
declare function PageSelector({ className, currentPage, id, labelText, totalPages, ...other }: {
|
|
3
7
|
[x: string]: any;
|
|
4
8
|
className?: null | undefined;
|
|
@@ -9,14 +9,27 @@ import { usePrefix } from "../../../internal/usePrefix.js";
|
|
|
9
9
|
import { useId } from "../../../internal/useId.js";
|
|
10
10
|
import Select_default from "../../Select/index.js";
|
|
11
11
|
import SelectItem_default from "../../SelectItem/index.js";
|
|
12
|
-
import
|
|
13
|
-
import "
|
|
12
|
+
import { useEffect } from "react";
|
|
13
|
+
import cx from "classnames";
|
|
14
14
|
import PropTypes from "prop-types";
|
|
15
15
|
import { jsx } from "react/jsx-runtime";
|
|
16
16
|
//#region src/components/Pagination/experimental/PageSelector.js
|
|
17
|
+
/**
|
|
18
|
+
* Copyright IBM Corp. 2016, 2023
|
|
19
|
+
*
|
|
20
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
21
|
+
* LICENSE file in the root directory of this source tree.
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated Use `Pagination` with the `renderPageSelect` prop instead.
|
|
25
|
+
* `unstable_PageSelector` / `preview_PageSelector` will be removed in v12.
|
|
26
|
+
*/
|
|
17
27
|
function PageSelector({ className = null, currentPage, id = 1, labelText = "Current page number", totalPages, ...other }) {
|
|
18
28
|
const namespace = `${usePrefix()}--unstable-pagination__page-selector`;
|
|
19
29
|
const instanceId = `${namespace}__select-${useId()}`;
|
|
30
|
+
useEffect(() => {
|
|
31
|
+
console.warn("[Carbon] `unstable_PageSelector` / `preview_PageSelector` is deprecated and will be removed in v12. Use `Pagination` with the `renderPageSelect` prop instead.");
|
|
32
|
+
}, []);
|
|
20
33
|
const renderPages = (total) => {
|
|
21
34
|
const pages = [];
|
|
22
35
|
for (let counter = 1; counter <= total; counter += 1) pages.push(/* @__PURE__ */ jsx(SelectItem_default, {
|
|
@@ -26,7 +39,7 @@ function PageSelector({ className = null, currentPage, id = 1, labelText = "Curr
|
|
|
26
39
|
return pages;
|
|
27
40
|
};
|
|
28
41
|
return /* @__PURE__ */ jsx(Select_default, {
|
|
29
|
-
className:
|
|
42
|
+
className: cx(namespace, className),
|
|
30
43
|
hideLabel: true,
|
|
31
44
|
id: instanceId || id,
|
|
32
45
|
inline: true,
|