@carbon/react 1.110.0-rc.0 → 1.111.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 +994 -994
- package/es/components/AILabel/index.js +47 -0
- package/es/components/AISkeleton/AISkeletonIcon.js +6 -0
- package/es/components/AISkeleton/AISkeletonPlaceholder.js +6 -1
- package/es/components/AISkeleton/AISkeletonText.js +15 -0
- package/es/components/Accordion/Accordion.Skeleton.js +15 -0
- package/es/components/Accordion/Accordion.js +22 -0
- package/es/components/Accordion/AccordionItem.js +33 -0
- package/es/components/AspectRatio/AspectRatio.js +19 -0
- package/es/components/BadgeIndicator/index.js +9 -0
- package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +12 -0
- package/es/components/Breadcrumb/Breadcrumb.js +16 -0
- package/es/components/Breadcrumb/BreadcrumbItem.js +12 -0
- package/es/components/Button/Button.Skeleton.js +17 -0
- package/es/components/Button/Button.js +96 -0
- package/es/components/ButtonSet/ButtonSet.js +14 -0
- package/es/components/ChatButton/ChatButton.Skeleton.js +6 -0
- package/es/components/ChatButton/ChatButton.js +24 -0
- package/es/components/Checkbox/Checkbox.Skeleton.js +5 -1
- package/es/components/Checkbox/Checkbox.js +57 -0
- package/es/components/CheckboxGroup/CheckboxGroup.js +40 -0
- package/es/components/ClassPrefix/index.js +3 -0
- package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +6 -0
- package/es/components/CodeSnippet/CodeSnippet.js +76 -0
- package/es/components/ComboBox/ComboBox.js +140 -0
- package/es/components/ComboButton/index.js +27 -0
- package/es/components/ComposedModal/ComposedModal.js +68 -0
- package/es/components/ComposedModal/ModalFooter.js +63 -0
- package/es/components/ComposedModal/ModalHeader.js +35 -0
- package/es/components/ContainedList/ContainedList.js +21 -0
- package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +18 -0
- package/es/components/ContentSwitcher/ContentSwitcher.js +25 -0
- package/es/components/Copy/Copy.js +29 -0
- package/es/components/CopyButton/CopyButton.js +26 -0
- package/es/components/DataTable/DataTable.js +59 -0
- package/es/components/DataTable/Table.js +27 -0
- package/es/components/DataTable/TableBatchAction.js +10 -0
- package/es/components/DataTable/TableBatchActions.js +24 -0
- package/es/components/DataTable/TableBody.js +3 -0
- package/es/components/DataTable/TableCell.js +15 -0
- package/es/components/DataTable/TableContainer.js +18 -0
- package/es/components/DataTable/TableDecoratorRow.js +6 -0
- package/es/components/DataTable/TableExpandHeader.js +31 -0
- package/es/components/DataTable/TableExpandRow.js +29 -0
- package/es/components/DataTable/TableExpandedRow.js +9 -0
- package/es/components/DataTable/TableHeader.js +35 -0
- package/es/components/DataTable/TableRow.js +21 -0
- package/es/components/DataTable/TableSelectAll.js +28 -0
- package/es/components/DataTable/TableSelectRow.js +31 -0
- package/es/components/DataTable/TableSlugRow.js +6 -0
- package/es/components/DataTable/TableToolbar.js +15 -0
- package/es/components/DataTable/TableToolbarMenu.js +15 -0
- package/es/components/DataTable/TableToolbarSearch.js +58 -0
- package/es/components/DataTableSkeleton/DataTableSkeleton.js +24 -0
- package/es/components/DatePicker/DatePicker.Skeleton.js +12 -0
- package/es/components/DatePicker/DatePicker.js +88 -0
- package/es/components/DatePickerInput/DatePickerInput.js +79 -0
- package/es/components/Dialog/Dialog.js +130 -3
- package/es/components/Dropdown/Dropdown.Skeleton.js +9 -0
- package/es/components/Dropdown/Dropdown.js +109 -0
- package/es/components/FeatureFlags/index.js +3 -0
- package/es/components/FileUploader/FileUploader.Skeleton.js +5 -1
- package/es/components/FileUploader/FileUploader.js +57 -0
- package/es/components/FileUploader/FileUploaderButton.js +47 -0
- package/es/components/FileUploader/FileUploaderDropContainer.js +42 -0
- package/es/components/FileUploader/FileUploaderItem.js +29 -0
- package/es/components/FileUploader/Filename.js +18 -0
- package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -1
- package/es/components/FluidComboBox/FluidComboBox.js +61 -0
- package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +6 -0
- package/es/components/FluidDatePicker/FluidDatePicker.js +21 -0
- package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -1
- package/es/components/FluidDropdown/FluidDropdown.js +65 -0
- package/es/components/FluidForm/FluidForm.js +6 -0
- package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -1
- package/es/components/FluidMultiSelect/FluidMultiSelect.js +128 -0
- package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -1
- package/es/components/FluidNumberInput/FluidNumberInput.js +95 -0
- package/es/components/FluidSearch/FluidSearch.Skeleton.js +5 -1
- package/es/components/FluidSearch/FluidSearch.js +45 -0
- package/es/components/FluidSelect/FluidSelect.Skeleton.js +5 -1
- package/es/components/FluidSelect/FluidSelect.js +38 -0
- package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -1
- package/es/components/FluidTextArea/FluidTextArea.js +67 -0
- package/es/components/FluidTextInput/FluidPasswordInput.js +58 -0
- package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -1
- package/es/components/FluidTextInput/FluidTextInput.js +54 -0
- package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +6 -0
- package/es/components/FluidTimePicker/FluidTimePicker.js +28 -0
- package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +26 -0
- package/es/components/Form/Form.js +6 -0
- package/es/components/FormGroup/FormGroup.js +25 -0
- package/es/components/FormItem/FormItem.js +6 -0
- package/es/components/FormLabel/FormLabel.js +9 -0
- package/es/components/Grid/CSSGrid.js +43 -0
- package/es/components/Grid/Column.js +86 -0
- package/es/components/Grid/ColumnHang.js +9 -0
- package/es/components/Grid/FlexGrid.js +24 -0
- package/es/components/Grid/Grid.js +27 -0
- package/es/components/Grid/GridContext.js +10 -0
- package/es/components/Grid/Row.js +17 -0
- package/es/components/Heading/index.js +19 -0
- package/es/components/Icon/Icon.Skeleton.js +5 -1
- package/es/components/IconButton/index.js +68 -0
- package/es/components/IconIndicator/index.js +12 -0
- package/es/components/IdPrefix/index.js +3 -0
- package/es/components/InlineCheckbox/InlineCheckbox.js +34 -0
- package/es/components/InlineLoading/InlineLoading.js +19 -0
- package/es/components/Layer/index.js +17 -0
- package/es/components/Layout/index.js +34 -0
- package/es/components/LayoutDirection/LayoutDirection.js +10 -0
- package/es/components/Link/Link.d.ts +1 -1
- package/es/components/Link/Link.js +28 -0
- package/es/components/ListBox/ListBox.js +41 -0
- package/es/components/ListBox/ListBoxField.js +17 -0
- package/es/components/ListBox/ListBoxMenu.js +6 -0
- package/es/components/ListBox/ListBoxMenuIcon.js +7 -0
- package/es/components/ListBox/ListBoxMenuItem.js +16 -0
- package/es/components/ListBox/ListBoxSelection.d.ts +1 -1
- package/es/components/ListBox/ListBoxSelection.js +32 -9
- package/es/components/ListBox/next/ListBoxSelection.d.ts +1 -1
- package/es/components/ListBox/next/ListBoxSelection.js +41 -6
- package/es/components/ListBox/next/ListBoxTrigger.js +7 -0
- package/es/components/ListItem/ListItem.js +6 -0
- package/es/components/Loading/Loading.js +18 -0
- package/es/components/Menu/Menu.js +52 -0
- package/es/components/Menu/MenuContext.d.ts +11 -12
- package/es/components/Menu/MenuItem.js +77 -1
- package/es/components/MenuButton/index.js +33 -0
- package/es/components/Modal/Modal.js +115 -1
- package/es/components/MultiSelect/FilterableMultiSelect.js +128 -0
- package/es/components/MultiSelect/MultiSelect.js +149 -1
- package/es/components/MultiSelect/MultiSelectPropTypes.js +25 -0
- package/es/components/Notification/Notification.js +207 -0
- package/es/components/NumberInput/NumberInput.Skeleton.js +9 -0
- package/es/components/NumberInput/NumberInput.js +138 -0
- package/es/components/OrderedList/OrderedList.js +15 -0
- package/es/components/OverflowMenu/OverflowMenu.js +76 -0
- package/es/components/OverflowMenu/next/index.js +30 -0
- package/es/components/OverflowMenuItem/OverflowMenuItem.js +36 -0
- package/es/components/PageHeader/PageHeader.js +48 -0
- package/es/components/Pagination/Pagination.Skeleton.js +5 -1
- package/es/components/Pagination/Pagination.d.ts +8 -0
- package/es/components/Pagination/Pagination.js +85 -3
- package/es/components/Pagination/experimental/PageSelector.js +8 -0
- package/es/components/Pagination/experimental/Pagination.js +54 -0
- package/es/components/PaginationNav/PaginationNav.js +80 -0
- package/es/components/Popover/index.js +58 -0
- package/es/components/ProgressBar/ProgressBar.js +27 -0
- package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +6 -0
- package/es/components/ProgressIndicator/ProgressIndicator.js +58 -0
- package/es/components/RadioButton/RadioButton.Skeleton.js +5 -1
- package/es/components/RadioButton/RadioButton.js +63 -0
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +59 -0
- package/es/components/RadioTile/RadioTile.js +45 -0
- package/es/components/Search/Search.Skeleton.js +9 -0
- package/es/components/Search/Search.js +66 -1
- package/es/components/Select/Select.Skeleton.js +6 -0
- package/es/components/Select/Select.js +82 -19
- package/es/components/SelectItem/SelectItem.js +15 -0
- package/es/components/SelectItemGroup/SelectItemGroup.js +12 -0
- package/es/components/ShapeIndicator/index.js +12 -0
- package/es/components/SkeletonIcon/SkeletonIcon.js +5 -1
- package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +5 -1
- package/es/components/SkeletonText/SkeletonText.js +15 -0
- package/es/components/Slider/Slider.Skeleton.js +15 -0
- package/es/components/Slider/Slider.js +104 -0
- package/es/components/Stack/Stack.js +20 -0
- package/es/components/StructuredList/StructuredList.Skeleton.js +6 -0
- package/es/components/StructuredList/StructuredList.js +97 -0
- package/es/components/Switch/IconSwitch.js +47 -0
- package/es/components/Switch/Switch.js +30 -0
- package/es/components/TabContent/TabContent.js +9 -0
- package/es/components/Tabs/Tabs.Skeleton.js +6 -0
- package/es/components/Tabs/Tabs.d.ts +15 -1
- package/es/components/Tabs/Tabs.js +185 -5
- package/es/components/Tag/DismissibleTag.js +43 -0
- package/es/components/Tag/OperationalTag.js +22 -0
- package/es/components/Tag/SelectableTag.js +31 -0
- package/es/components/Tag/Tag.Skeleton.js +7 -0
- package/es/components/Tag/Tag.js +41 -0
- package/es/components/Text/Text.js +10 -0
- package/es/components/Text/TextDirection.js +11 -0
- package/es/components/TextArea/TextArea.Skeleton.js +6 -0
- package/es/components/TextArea/TextArea.js +80 -0
- package/es/components/TextInput/ControlledPasswordInput.js +64 -0
- package/es/components/TextInput/PasswordInput.js +83 -0
- package/es/components/TextInput/TextInput.Skeleton.js +9 -0
- package/es/components/TextInput/TextInput.js +76 -0
- package/es/components/Theme/index.js +21 -0
- package/es/components/Tile/Tile.js +157 -2
- package/es/components/TileGroup/TileGroup.js +28 -0
- package/es/components/TimePicker/TimePicker.js +67 -0
- package/es/components/TimePickerSelect/TimePickerSelect.js +15 -0
- package/es/components/Toggle/Toggle.js +46 -0
- package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +11 -0
- package/es/components/Toggletip/index.js +38 -0
- package/es/components/Tooltip/DefinitionTooltip.js +36 -0
- package/es/components/Tooltip/Tooltip.js +46 -0
- package/es/components/TreeView/TreeNode.js +64 -0
- package/es/components/TreeView/TreeView.js +32 -0
- package/es/components/UIShell/Content.js +9 -0
- package/es/components/UIShell/Header.js +9 -0
- package/es/components/UIShell/HeaderContainer.js +9 -0
- package/es/components/UIShell/HeaderGlobalAction.js +28 -0
- package/es/components/UIShell/HeaderMenu.js +37 -0
- package/es/components/UIShell/HeaderMenuButton.js +17 -0
- package/es/components/UIShell/HeaderMenuItem.js +25 -0
- package/es/components/UIShell/HeaderName.js +18 -0
- package/es/components/UIShell/HeaderNavigation.js +10 -0
- package/es/components/UIShell/HeaderPanel.js +19 -0
- package/es/components/UIShell/HeaderSideNavItems.js +11 -0
- package/es/components/UIShell/Link.js +14 -0
- package/es/components/UIShell/SideNav.js +53 -0
- package/es/components/UIShell/SideNavDetails.js +10 -0
- package/es/components/UIShell/SideNavDivider.js +5 -1
- package/es/components/UIShell/SideNavFooter.js +11 -0
- package/es/components/UIShell/SideNavHeader.js +13 -0
- package/es/components/UIShell/SideNavIcon.js +10 -0
- package/es/components/UIShell/SideNavItem.js +10 -0
- package/es/components/UIShell/SideNavItems.js +11 -0
- package/es/components/UIShell/SideNavLink.js +22 -0
- package/es/components/UIShell/SideNavLinkText.js +6 -0
- package/es/components/UIShell/SideNavMenu.js +31 -0
- package/es/components/UIShell/SideNavMenuItem.js +17 -0
- package/es/components/UIShell/SideNavSwitcher.js +16 -0
- package/es/components/UIShell/SkipToContent.js +11 -0
- package/es/components/UIShell/Switcher.js +12 -0
- package/es/components/UIShell/SwitcherDivider.js +5 -1
- package/es/components/UIShell/SwitcherItem.js +30 -0
- package/es/components/UnorderedList/UnorderedList.js +12 -0
- package/es/index.d.ts +1 -0
- package/es/internal/OptimizedResize.js +6 -2
- package/es/internal/usePresence.js +6 -0
- package/es/internal/warnAboutDeprecatedReactVersion.d.ts +7 -0
- package/lib/components/AILabel/index.js +47 -0
- package/lib/components/AISkeleton/AISkeletonIcon.js +6 -0
- package/lib/components/AISkeleton/AISkeletonPlaceholder.js +6 -1
- package/lib/components/AISkeleton/AISkeletonText.js +15 -0
- package/lib/components/Accordion/Accordion.Skeleton.js +15 -0
- package/lib/components/Accordion/Accordion.js +22 -0
- package/lib/components/Accordion/AccordionItem.js +33 -0
- package/lib/components/AspectRatio/AspectRatio.js +19 -0
- package/lib/components/BadgeIndicator/index.js +9 -0
- package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +12 -0
- package/lib/components/Breadcrumb/Breadcrumb.js +16 -0
- package/lib/components/Breadcrumb/BreadcrumbItem.js +12 -0
- package/lib/components/Button/Button.Skeleton.js +17 -0
- package/lib/components/Button/Button.js +96 -0
- package/lib/components/ButtonSet/ButtonSet.js +14 -0
- package/lib/components/ChatButton/ChatButton.Skeleton.js +6 -0
- package/lib/components/ChatButton/ChatButton.js +24 -0
- package/lib/components/Checkbox/Checkbox.Skeleton.js +5 -1
- package/lib/components/Checkbox/Checkbox.js +57 -0
- package/lib/components/CheckboxGroup/CheckboxGroup.js +40 -0
- package/lib/components/ClassPrefix/index.js +3 -0
- package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +6 -0
- package/lib/components/CodeSnippet/CodeSnippet.js +76 -0
- package/lib/components/ComboBox/ComboBox.js +140 -0
- package/lib/components/ComboButton/index.js +27 -0
- package/lib/components/ComposedModal/ComposedModal.js +68 -0
- package/lib/components/ComposedModal/ComposedModalContext.js +0 -1
- package/lib/components/ComposedModal/ModalFooter.js +63 -0
- package/lib/components/ComposedModal/ModalHeader.js +35 -0
- package/lib/components/ComposedModal/useComposedModalState.js +0 -1
- package/lib/components/ContainedList/ContainedList.js +21 -0
- package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +18 -0
- package/lib/components/ContainedList/index.js +2 -2
- package/lib/components/ContentSwitcher/ContentSwitcher.js +25 -0
- package/lib/components/ContextMenu/useContextMenu.js +0 -1
- package/lib/components/Copy/Copy.js +29 -0
- package/lib/components/CopyButton/CopyButton.js +26 -0
- package/lib/components/DataTable/DataTable.js +59 -0
- package/lib/components/DataTable/Table.js +27 -0
- package/lib/components/DataTable/TableBatchAction.js +10 -0
- package/lib/components/DataTable/TableBatchActions.js +24 -0
- package/lib/components/DataTable/TableBody.js +3 -0
- package/lib/components/DataTable/TableCell.js +15 -0
- package/lib/components/DataTable/TableContainer.js +18 -0
- package/lib/components/DataTable/TableContext.js +0 -1
- package/lib/components/DataTable/TableDecoratorRow.js +6 -0
- package/lib/components/DataTable/TableExpandHeader.js +31 -0
- package/lib/components/DataTable/TableExpandRow.js +29 -0
- package/lib/components/DataTable/TableExpandedRow.js +9 -0
- package/lib/components/DataTable/TableHeader.js +35 -0
- package/lib/components/DataTable/TableRow.js +21 -0
- package/lib/components/DataTable/TableSelectAll.js +28 -0
- package/lib/components/DataTable/TableSelectRow.js +31 -0
- package/lib/components/DataTable/TableSlugRow.js +6 -0
- package/lib/components/DataTable/TableToolbar.js +15 -0
- package/lib/components/DataTable/TableToolbarMenu.js +15 -0
- package/lib/components/DataTable/TableToolbarSearch.js +58 -0
- package/lib/components/DataTableSkeleton/DataTableSkeleton.js +24 -0
- package/lib/components/DatePicker/DatePicker.Skeleton.js +12 -0
- package/lib/components/DatePicker/DatePicker.js +88 -0
- package/lib/components/DatePickerInput/DatePickerInput.js +79 -0
- package/lib/components/Dialog/Dialog.js +130 -3
- package/lib/components/Dropdown/Dropdown.Skeleton.js +9 -0
- package/lib/components/Dropdown/Dropdown.js +109 -0
- package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +0 -1
- package/lib/components/FeatureFlags/index.js +3 -0
- package/lib/components/FileUploader/FileUploader.Skeleton.js +5 -1
- package/lib/components/FileUploader/FileUploader.js +57 -0
- package/lib/components/FileUploader/FileUploaderButton.js +47 -0
- package/lib/components/FileUploader/FileUploaderDropContainer.js +42 -0
- package/lib/components/FileUploader/FileUploaderItem.js +29 -0
- package/lib/components/FileUploader/Filename.js +18 -0
- package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -1
- package/lib/components/FluidComboBox/FluidComboBox.js +61 -0
- package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +6 -0
- package/lib/components/FluidDatePicker/FluidDatePicker.js +21 -0
- package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -1
- package/lib/components/FluidDropdown/FluidDropdown.js +65 -0
- package/lib/components/FluidForm/FluidForm.js +6 -0
- package/lib/components/FluidForm/FormContext.js +0 -1
- package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -1
- package/lib/components/FluidMultiSelect/FluidMultiSelect.js +128 -0
- package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -1
- package/lib/components/FluidNumberInput/FluidNumberInput.js +95 -0
- package/lib/components/FluidSearch/FluidSearch.Skeleton.js +5 -1
- package/lib/components/FluidSearch/FluidSearch.js +45 -0
- package/lib/components/FluidSelect/FluidSelect.Skeleton.js +5 -1
- package/lib/components/FluidSelect/FluidSelect.js +38 -0
- package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -1
- package/lib/components/FluidTextArea/FluidTextArea.js +67 -0
- package/lib/components/FluidTextInput/FluidPasswordInput.js +58 -0
- package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -1
- package/lib/components/FluidTextInput/FluidTextInput.js +54 -0
- package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +6 -0
- package/lib/components/FluidTimePicker/FluidTimePicker.js +28 -0
- package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +26 -0
- package/lib/components/Form/Form.js +6 -0
- package/lib/components/FormGroup/FormGroup.js +25 -0
- package/lib/components/FormItem/FormItem.js +6 -0
- package/lib/components/FormLabel/FormLabel.js +9 -0
- package/lib/components/Grid/CSSGrid.js +43 -0
- package/lib/components/Grid/Column.js +86 -0
- package/lib/components/Grid/ColumnHang.js +9 -0
- package/lib/components/Grid/FlexGrid.js +24 -0
- package/lib/components/Grid/Grid.js +27 -0
- package/lib/components/Grid/GridContext.js +10 -0
- package/lib/components/Grid/Row.js +17 -0
- package/lib/components/Heading/index.js +19 -0
- package/lib/components/Icon/Icon.Skeleton.js +5 -1
- package/lib/components/IconButton/index.js +68 -0
- package/lib/components/IconIndicator/index.js +12 -0
- package/lib/components/IdPrefix/index.js +3 -0
- package/lib/components/InlineCheckbox/InlineCheckbox.js +34 -0
- package/lib/components/InlineLoading/InlineLoading.js +19 -0
- package/lib/components/Layer/index.js +17 -0
- package/lib/components/Layout/index.js +34 -0
- package/lib/components/LayoutDirection/LayoutDirection.js +10 -0
- package/lib/components/LayoutDirection/useLayoutDirection.js +0 -1
- package/lib/components/Link/Link.d.ts +1 -1
- package/lib/components/Link/Link.js +28 -0
- package/lib/components/ListBox/ListBox.js +41 -0
- package/lib/components/ListBox/ListBoxField.js +17 -0
- package/lib/components/ListBox/ListBoxMenu.js +6 -0
- package/lib/components/ListBox/ListBoxMenuIcon.js +7 -0
- package/lib/components/ListBox/ListBoxMenuItem.js +16 -0
- package/lib/components/ListBox/ListBoxSelection.d.ts +1 -1
- package/lib/components/ListBox/ListBoxSelection.js +32 -9
- package/lib/components/ListBox/next/ListBoxSelection.d.ts +1 -1
- package/lib/components/ListBox/next/ListBoxSelection.js +41 -6
- package/lib/components/ListBox/next/ListBoxTrigger.js +7 -0
- package/lib/components/ListItem/ListItem.js +6 -0
- package/lib/components/Loading/Loading.js +18 -0
- package/lib/components/Menu/Menu.js +52 -0
- package/lib/components/Menu/MenuContext.d.ts +11 -12
- package/lib/components/Menu/MenuContext.js +0 -1
- package/lib/components/Menu/MenuItem.js +77 -1
- package/lib/components/MenuButton/index.js +33 -0
- package/lib/components/Modal/Modal.js +115 -1
- package/lib/components/MultiSelect/FilterableMultiSelect.js +128 -0
- package/lib/components/MultiSelect/MultiSelect.js +148 -0
- package/lib/components/MultiSelect/MultiSelectPropTypes.js +25 -0
- package/lib/components/Notification/Notification.js +207 -0
- package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -0
- package/lib/components/NumberInput/NumberInput.js +138 -0
- package/lib/components/OrderedList/OrderedList.js +15 -0
- package/lib/components/OverflowMenu/OverflowMenu.js +76 -0
- package/lib/components/OverflowMenu/next/index.js +30 -0
- package/lib/components/OverflowMenuItem/OverflowMenuItem.js +36 -0
- package/lib/components/PageHeader/PageHeader.js +48 -0
- package/lib/components/Pagination/Pagination.Skeleton.js +5 -1
- package/lib/components/Pagination/Pagination.d.ts +8 -0
- package/lib/components/Pagination/Pagination.js +85 -3
- package/lib/components/Pagination/experimental/PageSelector.js +8 -0
- package/lib/components/Pagination/experimental/Pagination.js +54 -0
- package/lib/components/PaginationNav/PaginationNav.js +80 -0
- package/lib/components/Popover/index.js +58 -0
- package/lib/components/ProgressBar/ProgressBar.js +27 -0
- package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +6 -0
- package/lib/components/ProgressIndicator/ProgressIndicator.js +58 -0
- package/lib/components/RadioButton/RadioButton.Skeleton.js +5 -1
- package/lib/components/RadioButton/RadioButton.js +63 -0
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +59 -0
- package/lib/components/RadioTile/RadioTile.js +45 -0
- package/lib/components/Search/Search.Skeleton.js +9 -0
- package/lib/components/Search/Search.js +66 -1
- package/lib/components/Select/Select.Skeleton.js +6 -0
- package/lib/components/Select/Select.js +82 -19
- package/lib/components/SelectItem/SelectItem.js +15 -0
- package/lib/components/SelectItemGroup/SelectItemGroup.js +12 -0
- package/lib/components/ShapeIndicator/index.js +12 -0
- package/lib/components/SkeletonIcon/SkeletonIcon.js +5 -1
- package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +5 -1
- package/lib/components/SkeletonText/SkeletonText.js +15 -0
- package/lib/components/Slider/Slider.Skeleton.js +15 -0
- package/lib/components/Slider/Slider.js +104 -0
- package/lib/components/Stack/Stack.js +20 -0
- package/lib/components/StructuredList/StructuredList.Skeleton.js +6 -0
- package/lib/components/StructuredList/StructuredList.js +97 -0
- package/lib/components/Switch/IconSwitch.js +47 -0
- package/lib/components/Switch/Switch.js +30 -0
- package/lib/components/TabContent/TabContent.js +9 -0
- package/lib/components/Tabs/Tabs.Skeleton.js +6 -0
- package/lib/components/Tabs/Tabs.d.ts +15 -1
- package/lib/components/Tabs/Tabs.js +185 -5
- package/lib/components/Tabs/usePressable.js +0 -1
- package/lib/components/Tag/DismissibleTag.js +43 -0
- package/lib/components/Tag/OperationalTag.js +22 -0
- package/lib/components/Tag/SelectableTag.js +31 -0
- package/lib/components/Tag/Tag.Skeleton.js +7 -0
- package/lib/components/Tag/Tag.js +41 -0
- package/lib/components/Text/Text.js +10 -0
- package/lib/components/Text/TextDirection.js +11 -0
- package/lib/components/Text/TextDirectionContext.js +0 -1
- package/lib/components/TextArea/TextArea.Skeleton.js +6 -0
- package/lib/components/TextArea/TextArea.js +80 -0
- package/lib/components/TextInput/ControlledPasswordInput.js +64 -0
- package/lib/components/TextInput/PasswordInput.js +83 -0
- package/lib/components/TextInput/TextInput.Skeleton.js +9 -0
- package/lib/components/TextInput/TextInput.js +76 -0
- package/lib/components/Theme/index.js +21 -0
- package/lib/components/Tile/Tile.js +157 -2
- package/lib/components/TileGroup/TileGroup.js +28 -0
- package/lib/components/TimePicker/TimePicker.js +67 -0
- package/lib/components/TimePickerSelect/TimePickerSelect.js +15 -0
- package/lib/components/Toggle/Toggle.js +46 -0
- package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +11 -0
- package/lib/components/Toggletip/index.js +38 -0
- package/lib/components/Tooltip/DefinitionTooltip.js +36 -0
- package/lib/components/Tooltip/Tooltip.js +46 -0
- package/lib/components/TreeView/TreeContext.js +0 -1
- package/lib/components/TreeView/TreeNode.js +64 -0
- package/lib/components/TreeView/TreeView.js +32 -0
- package/lib/components/UIShell/Content.js +9 -0
- package/lib/components/UIShell/Header.js +9 -0
- package/lib/components/UIShell/HeaderContainer.js +9 -0
- package/lib/components/UIShell/HeaderGlobalAction.js +28 -0
- package/lib/components/UIShell/HeaderMenu.js +37 -0
- package/lib/components/UIShell/HeaderMenuButton.js +17 -0
- package/lib/components/UIShell/HeaderMenuItem.js +25 -0
- package/lib/components/UIShell/HeaderName.js +18 -0
- package/lib/components/UIShell/HeaderNavigation.js +10 -0
- package/lib/components/UIShell/HeaderPanel.js +19 -0
- package/lib/components/UIShell/HeaderSideNavItems.js +11 -0
- package/lib/components/UIShell/Link.js +14 -0
- package/lib/components/UIShell/SideNav.js +53 -0
- package/lib/components/UIShell/SideNavDetails.js +10 -0
- package/lib/components/UIShell/SideNavDivider.js +5 -1
- package/lib/components/UIShell/SideNavFooter.js +11 -0
- package/lib/components/UIShell/SideNavHeader.js +13 -0
- package/lib/components/UIShell/SideNavIcon.js +10 -0
- package/lib/components/UIShell/SideNavItem.js +10 -0
- package/lib/components/UIShell/SideNavItems.js +11 -0
- package/lib/components/UIShell/SideNavLink.js +22 -0
- package/lib/components/UIShell/SideNavLinkText.js +6 -0
- package/lib/components/UIShell/SideNavMenu.js +31 -0
- package/lib/components/UIShell/SideNavMenuItem.js +17 -0
- package/lib/components/UIShell/SideNavSwitcher.js +16 -0
- package/lib/components/UIShell/SkipToContent.js +11 -0
- package/lib/components/UIShell/Switcher.js +12 -0
- package/lib/components/UIShell/SwitcherDivider.js +5 -1
- package/lib/components/UIShell/SwitcherItem.js +30 -0
- package/lib/components/UnorderedList/UnorderedList.js +12 -0
- package/lib/feature-flags.js +0 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +241 -241
- package/lib/internal/OptimizedResize.js +6 -2
- package/lib/internal/useAttachedMenu.js +0 -1
- package/lib/internal/useControllableState.js +0 -1
- package/lib/internal/useDelayedState.js +0 -1
- package/lib/internal/useEvent.js +0 -1
- package/lib/internal/useIsomorphicEffect.js +0 -1
- package/lib/internal/useMatchMedia.js +0 -1
- package/lib/internal/useMergedRefs.js +0 -1
- package/lib/internal/useNoInteractiveChildren.js +0 -1
- package/lib/internal/useOutsideClick.js +0 -1
- package/lib/internal/useOverflowItems.js +0 -1
- package/lib/internal/usePresence.js +6 -1
- package/lib/internal/usePresenceContext.js +0 -1
- package/lib/internal/usePreviousValue.js +0 -1
- package/lib/internal/useResizeObserver.js +0 -1
- package/lib/internal/useSavedCallback.js +0 -1
- package/lib/internal/utils.js +0 -1
- package/lib/internal/warnAboutDeprecatedReactVersion.d.ts +7 -0
- package/lib/internal/wrapFocus.js +0 -1
- package/package.json +9 -9
- package/telemetry.yml +12 -0
|
@@ -37,12 +37,18 @@ const ListBoxMenu = (0, react.forwardRef)(({ children, id, ...rest }, ref) => {
|
|
|
37
37
|
});
|
|
38
38
|
ListBoxMenu.displayName = "ListBoxMenu";
|
|
39
39
|
ListBoxMenu.propTypes = {
|
|
40
|
+
/**
|
|
41
|
+
* Provide the contents of your ListBoxMenu
|
|
42
|
+
*/
|
|
40
43
|
children: prop_types.default.oneOfType([
|
|
41
44
|
prop_types.default.node,
|
|
42
45
|
prop_types.default.arrayOf(prop_types.default.oneOf([require_ListBoxMenuItem.default])),
|
|
43
46
|
prop_types.default.shape({ type: prop_types.default.oneOf([require_ListBoxMenuItem.default]) }),
|
|
44
47
|
prop_types.default.bool
|
|
45
48
|
]),
|
|
49
|
+
/**
|
|
50
|
+
* Specify a custom `id`
|
|
51
|
+
*/
|
|
46
52
|
id: prop_types.default.string.isRequired
|
|
47
53
|
};
|
|
48
54
|
//#endregion
|
|
@@ -51,7 +51,14 @@ const ListBoxMenuIcon = ({ isOpen, translateWithId: t = defaultTranslateWithId }
|
|
|
51
51
|
});
|
|
52
52
|
};
|
|
53
53
|
ListBoxMenuIcon.propTypes = {
|
|
54
|
+
/**
|
|
55
|
+
* Specify whether the menu is currently open, which will influence the
|
|
56
|
+
* direction of the menu icon
|
|
57
|
+
*/
|
|
54
58
|
isOpen: prop_types.default.bool.isRequired,
|
|
59
|
+
/**
|
|
60
|
+
* Translates component strings using your i18n tool.
|
|
61
|
+
*/
|
|
55
62
|
translateWithId: prop_types.default.func
|
|
56
63
|
};
|
|
57
64
|
//#endregion
|
|
@@ -73,10 +73,26 @@ const ListBoxMenuItem = (0, react.forwardRef)(({ children, isActive = false, isH
|
|
|
73
73
|
});
|
|
74
74
|
ListBoxMenuItem.displayName = "ListBoxMenuItem";
|
|
75
75
|
ListBoxMenuItem.propTypes = {
|
|
76
|
+
/**
|
|
77
|
+
* Specify any children nodes that should be rendered inside of the ListBox
|
|
78
|
+
* Menu Item
|
|
79
|
+
*/
|
|
76
80
|
children: prop_types.default.node,
|
|
81
|
+
/**
|
|
82
|
+
* Specify if the item should be disabled
|
|
83
|
+
*/
|
|
77
84
|
disabled: prop_types.default.bool,
|
|
85
|
+
/**
|
|
86
|
+
* Specify whether the current menu item is "active".
|
|
87
|
+
*/
|
|
78
88
|
isActive: prop_types.default.bool,
|
|
89
|
+
/**
|
|
90
|
+
* Specify whether the current menu item is "highlighted".
|
|
91
|
+
*/
|
|
79
92
|
isHighlighted: prop_types.default.bool,
|
|
93
|
+
/**
|
|
94
|
+
* Provide an optional tooltip for the ListBoxMenuItem
|
|
95
|
+
*/
|
|
80
96
|
title: prop_types.default.string
|
|
81
97
|
};
|
|
82
98
|
//#endregion
|
|
@@ -17,7 +17,7 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
17
17
|
let _carbon_icons_react = require("@carbon/icons-react");
|
|
18
18
|
//#region src/components/ListBox/ListBoxSelection.tsx
|
|
19
19
|
/**
|
|
20
|
-
* Copyright IBM Corp. 2016,
|
|
20
|
+
* Copyright IBM Corp. 2016, 2026
|
|
21
21
|
*
|
|
22
22
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
23
23
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -27,7 +27,7 @@ const translationIds = {
|
|
|
27
27
|
"clear.selection": "clear.selection"
|
|
28
28
|
};
|
|
29
29
|
const defaultTranslations = {
|
|
30
|
-
[translationIds["clear.all"]]: "Clear
|
|
30
|
+
[translationIds["clear.all"]]: "Clear selected items",
|
|
31
31
|
[translationIds["clear.selection"]]: "Clear selected item"
|
|
32
32
|
};
|
|
33
33
|
const defaultTranslateWithId = (messageId) => {
|
|
@@ -40,9 +40,11 @@ const defaultTranslateWithId = (messageId) => {
|
|
|
40
40
|
*/
|
|
41
41
|
const ListBoxSelection = ({ clearSelection, selectionCount, translateWithId: t = defaultTranslateWithId, disabled, onClearSelection, readOnly }) => {
|
|
42
42
|
const prefix = require_usePrefix.usePrefix();
|
|
43
|
+
const hasSelectionCount = (selectionCount ?? 0) > 0;
|
|
44
|
+
const hasMultipleSelections = (selectionCount ?? 0) > 1;
|
|
43
45
|
const className = (0, classnames.default)(`${prefix}--list-box__selection`, {
|
|
44
|
-
[`${prefix}--tag--filter`]:
|
|
45
|
-
[`${prefix}--list-box__selection--multi`]:
|
|
46
|
+
[`${prefix}--tag--filter`]: hasSelectionCount,
|
|
47
|
+
[`${prefix}--list-box__selection--multi`]: hasSelectionCount
|
|
46
48
|
});
|
|
47
49
|
const handleOnClick = (event) => {
|
|
48
50
|
event.stopPropagation();
|
|
@@ -50,9 +52,9 @@ const ListBoxSelection = ({ clearSelection, selectionCount, translateWithId: t =
|
|
|
50
52
|
clearSelection(event);
|
|
51
53
|
if (onClearSelection) onClearSelection(event);
|
|
52
54
|
};
|
|
53
|
-
const description =
|
|
55
|
+
const description = hasMultipleSelections ? t("clear.all") : t("clear.selection");
|
|
54
56
|
const tagClasses = (0, classnames.default)(`${prefix}--tag`, `${prefix}--tag--filter`, `${prefix}--tag--high-contrast`, { [`${prefix}--tag--disabled`]: disabled });
|
|
55
|
-
return
|
|
57
|
+
return hasSelectionCount ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
56
58
|
className: tagClasses,
|
|
57
59
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
58
60
|
className: `${prefix}--tag__label`,
|
|
@@ -63,27 +65,48 @@ const ListBoxSelection = ({ clearSelection, selectionCount, translateWithId: t =
|
|
|
63
65
|
tabIndex: -1,
|
|
64
66
|
className: `${prefix}--tag__close-icon`,
|
|
65
67
|
onClick: handleOnClick,
|
|
66
|
-
"aria-label":
|
|
68
|
+
"aria-label": description,
|
|
67
69
|
title: description,
|
|
68
70
|
"aria-disabled": readOnly ? true : void 0,
|
|
69
71
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_carbon_icons_react.Close, {})
|
|
70
72
|
})]
|
|
71
|
-
}) : /* @__PURE__ */ (0, react_jsx_runtime.
|
|
73
|
+
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
72
74
|
role: "button",
|
|
73
75
|
className,
|
|
74
76
|
tabIndex: -1,
|
|
75
77
|
onClick: handleOnClick,
|
|
76
78
|
"aria-label": description,
|
|
77
79
|
title: description,
|
|
78
|
-
children:
|
|
80
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_carbon_icons_react.Close, {})
|
|
79
81
|
});
|
|
80
82
|
};
|
|
81
83
|
ListBoxSelection.propTypes = {
|
|
84
|
+
/**
|
|
85
|
+
* Specify a function to be invoked when a user interacts with the clear
|
|
86
|
+
* selection element.
|
|
87
|
+
*/
|
|
82
88
|
clearSelection: prop_types.default.func.isRequired,
|
|
89
|
+
/**
|
|
90
|
+
* Specify whether or not the clear selection element should be disabled
|
|
91
|
+
*/
|
|
83
92
|
disabled: prop_types.default.bool,
|
|
93
|
+
/**
|
|
94
|
+
* Specify an optional `onClearSelection` handler that is called when the underlying
|
|
95
|
+
* element is cleared
|
|
96
|
+
*/
|
|
84
97
|
onClearSelection: prop_types.default.func,
|
|
98
|
+
/**
|
|
99
|
+
* Whether or not the Dropdown is readonly
|
|
100
|
+
*/
|
|
85
101
|
readOnly: prop_types.default.bool,
|
|
102
|
+
/**
|
|
103
|
+
* Specify an optional `selectionCount` value that will be used to determine
|
|
104
|
+
* whether the selection should display a badge or a single clear icon.
|
|
105
|
+
*/
|
|
86
106
|
selectionCount: prop_types.default.number,
|
|
107
|
+
/**
|
|
108
|
+
* Translates component strings using your i18n tool.
|
|
109
|
+
*/
|
|
87
110
|
translateWithId: prop_types.default.func
|
|
88
111
|
};
|
|
89
112
|
//#endregion
|
|
@@ -17,7 +17,7 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
17
17
|
let _carbon_icons_react = require("@carbon/icons-react");
|
|
18
18
|
//#region src/components/ListBox/next/ListBoxSelection.tsx
|
|
19
19
|
/**
|
|
20
|
-
* Copyright IBM Corp. 2016,
|
|
20
|
+
* Copyright IBM Corp. 2016, 2026
|
|
21
21
|
*
|
|
22
22
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
23
23
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -32,7 +32,7 @@ const translationIds = {
|
|
|
32
32
|
"clear.selection": "clear.selection"
|
|
33
33
|
};
|
|
34
34
|
const defaultTranslations = {
|
|
35
|
-
[translationIds["clear.all"]]: "Clear
|
|
35
|
+
[translationIds["clear.all"]]: "Clear selected items",
|
|
36
36
|
[translationIds["clear.selection"]]: "Clear selected item"
|
|
37
37
|
};
|
|
38
38
|
const defaultTranslateWithId = (messageId) => {
|
|
@@ -40,11 +40,13 @@ const defaultTranslateWithId = (messageId) => {
|
|
|
40
40
|
};
|
|
41
41
|
function ListBoxSelection({ clearSelection, selectionCount, translateWithId: t = defaultTranslateWithId, disabled, readOnly, onClearSelection, ...rest }) {
|
|
42
42
|
const prefix = require_usePrefix.usePrefix();
|
|
43
|
+
const hasSelectionCount = (selectionCount ?? 0) > 0;
|
|
44
|
+
const hasMultipleSelections = (selectionCount ?? 0) > 1;
|
|
43
45
|
const className = (0, classnames.default)(`${prefix}--list-box__selection`, {
|
|
44
|
-
[`${prefix}--tag--filter`]:
|
|
45
|
-
[`${prefix}--list-box__selection--multi`]:
|
|
46
|
+
[`${prefix}--tag--filter`]: hasSelectionCount,
|
|
47
|
+
[`${prefix}--list-box__selection--multi`]: hasSelectionCount
|
|
46
48
|
});
|
|
47
|
-
const description =
|
|
49
|
+
const description = hasMultipleSelections ? t("clear.all") : t("clear.selection");
|
|
48
50
|
const tagClasses = (0, classnames.default)(`${prefix}--tag`, `${prefix}--tag--filter`, `${prefix}--tag--high-contrast`, { [`${prefix}--tag--disabled`]: disabled });
|
|
49
51
|
function onClick(event) {
|
|
50
52
|
event.stopPropagation();
|
|
@@ -52,7 +54,7 @@ function ListBoxSelection({ clearSelection, selectionCount, translateWithId: t =
|
|
|
52
54
|
clearSelection(event);
|
|
53
55
|
if (onClearSelection) onClearSelection(event);
|
|
54
56
|
}
|
|
55
|
-
if (
|
|
57
|
+
if (hasSelectionCount) return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
56
58
|
className: tagClasses,
|
|
57
59
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
58
60
|
className: `${prefix}--tag__label`,
|
|
@@ -84,14 +86,47 @@ function ListBoxSelection({ clearSelection, selectionCount, translateWithId: t =
|
|
|
84
86
|
});
|
|
85
87
|
}
|
|
86
88
|
ListBoxSelection.propTypes = {
|
|
89
|
+
/**
|
|
90
|
+
* Specify a function to be invoked when a user interacts with the clear
|
|
91
|
+
* selection element.
|
|
92
|
+
*/
|
|
87
93
|
clearSelection: prop_types.default.func.isRequired,
|
|
94
|
+
/**
|
|
95
|
+
* Specify whether or not the clear selection element should be disabled
|
|
96
|
+
*/
|
|
88
97
|
disabled: prop_types.default.bool,
|
|
98
|
+
/**
|
|
99
|
+
* Whether or not the listbox is readonly
|
|
100
|
+
*/
|
|
89
101
|
readOnly: prop_types.default.bool,
|
|
102
|
+
/**
|
|
103
|
+
* Specify an optional `onClearSelection` handler that is called when the underlying
|
|
104
|
+
* element is cleared
|
|
105
|
+
*/
|
|
90
106
|
onClearSelection: prop_types.default.func,
|
|
107
|
+
/**
|
|
108
|
+
* Specify an optional `onClick` handler that is called when the underlying
|
|
109
|
+
* clear selection element is clicked
|
|
110
|
+
*/
|
|
91
111
|
onClick: prop_types.default.func,
|
|
112
|
+
/**
|
|
113
|
+
* Specify an optional `onClick` handler that is called when the underlying
|
|
114
|
+
* clear selection element is clicked
|
|
115
|
+
*/
|
|
92
116
|
onMouseUp: prop_types.default.func,
|
|
117
|
+
/**
|
|
118
|
+
* Specify an optional `onKeyDown` handler that is called when the underlying
|
|
119
|
+
* clear selection element fires a keydown event
|
|
120
|
+
*/
|
|
93
121
|
onKeyDown: prop_types.default.func,
|
|
122
|
+
/**
|
|
123
|
+
* Specify an optional `selectionCount` value that will be used to determine
|
|
124
|
+
* whether the selection should display a badge or a single clear icon.
|
|
125
|
+
*/
|
|
94
126
|
selectionCount: prop_types.default.number,
|
|
127
|
+
/**
|
|
128
|
+
* Translates component strings using your i18n tool.
|
|
129
|
+
*/
|
|
95
130
|
translateWithId: prop_types.default.func
|
|
96
131
|
};
|
|
97
132
|
//#endregion
|
|
@@ -56,7 +56,14 @@ const ListBoxTrigger = react.default.forwardRef(({ isOpen, translateWithId: t =
|
|
|
56
56
|
});
|
|
57
57
|
});
|
|
58
58
|
ListBoxTrigger.propTypes = {
|
|
59
|
+
/**
|
|
60
|
+
* Specify whether the menu is currently open, which will influence the
|
|
61
|
+
* direction of the menu icon
|
|
62
|
+
*/
|
|
59
63
|
isOpen: prop_types.default.bool.isRequired,
|
|
64
|
+
/**
|
|
65
|
+
* Translates component strings using your i18n tool.
|
|
66
|
+
*/
|
|
60
67
|
translateWithId: prop_types.default.func
|
|
61
68
|
};
|
|
62
69
|
//#endregion
|
|
@@ -31,7 +31,13 @@ function ListItem({ className, children, ...other }) {
|
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
ListItem.propTypes = {
|
|
34
|
+
/**
|
|
35
|
+
* Specify the content for the ListItem
|
|
36
|
+
*/
|
|
34
37
|
children: prop_types.default.node,
|
|
38
|
+
/**
|
|
39
|
+
* Specify an optional className to apply to the underlying `<li>` node
|
|
40
|
+
*/
|
|
35
41
|
className: prop_types.default.string
|
|
36
42
|
};
|
|
37
43
|
//#endregion
|
|
@@ -66,11 +66,29 @@ function Loading({ active = true, className: customClassName, withOverlay = true
|
|
|
66
66
|
}) : loading;
|
|
67
67
|
}
|
|
68
68
|
Loading.propTypes = {
|
|
69
|
+
/**
|
|
70
|
+
* Specify whether you want the loading indicator to be spinning or not
|
|
71
|
+
*/
|
|
69
72
|
active: prop_types.default.bool,
|
|
73
|
+
/**
|
|
74
|
+
* Provide an optional className to be applied to the containing node
|
|
75
|
+
*/
|
|
70
76
|
className: prop_types.default.string,
|
|
77
|
+
/**
|
|
78
|
+
* Specify a description that would be used to best describe the loading state
|
|
79
|
+
*/
|
|
71
80
|
description: prop_types.default.string,
|
|
81
|
+
/**
|
|
82
|
+
* Provide an `id` to uniquely identify the label
|
|
83
|
+
*/
|
|
72
84
|
id: require_deprecate.deprecate(prop_types.default.string, `\nThe prop \`id\` is no longer needed.`),
|
|
85
|
+
/**
|
|
86
|
+
* Specify whether you would like the small variant of <Loading>
|
|
87
|
+
*/
|
|
73
88
|
small: prop_types.default.bool,
|
|
89
|
+
/**
|
|
90
|
+
* Specify whether you want the loader to be applied with an overlay
|
|
91
|
+
*/
|
|
74
92
|
withOverlay: prop_types.default.bool
|
|
75
93
|
};
|
|
76
94
|
//#endregion
|
|
@@ -216,25 +216,77 @@ const Menu = (0, react.forwardRef)(function Menu({ backgroundToken = "layer", bo
|
|
|
216
216
|
return isRoot ? open && (0, react_dom.createPortal)(rendered, target) || null : rendered;
|
|
217
217
|
});
|
|
218
218
|
Menu.propTypes = {
|
|
219
|
+
/**
|
|
220
|
+
* Specify the background token to use. Default is 'layer'.
|
|
221
|
+
*/
|
|
219
222
|
backgroundToken: prop_types.default.oneOf(["layer", "background"]),
|
|
223
|
+
/**
|
|
224
|
+
* Specify whether a border should be rendered on the menu
|
|
225
|
+
*/
|
|
220
226
|
border: prop_types.default.bool,
|
|
227
|
+
/**
|
|
228
|
+
* A collection of MenuItems to be rendered within this Menu.
|
|
229
|
+
*/
|
|
221
230
|
children: prop_types.default.node,
|
|
231
|
+
/**
|
|
232
|
+
* Additional CSS class names.
|
|
233
|
+
*/
|
|
222
234
|
className: prop_types.default.string,
|
|
235
|
+
/**
|
|
236
|
+
* A label describing the Menu.
|
|
237
|
+
*/
|
|
223
238
|
label: prop_types.default.string,
|
|
239
|
+
/**
|
|
240
|
+
* Specify how the menu should align with the button element
|
|
241
|
+
*/
|
|
224
242
|
menuAlignment: prop_types.default.string,
|
|
243
|
+
/**
|
|
244
|
+
* **Deprecated**: Menus now always support both icons as well as selectable items and nesting.
|
|
245
|
+
* The mode of this menu. Defaults to full.
|
|
246
|
+
* `full` supports nesting and selectable menu items, but no icons.
|
|
247
|
+
* `basic` supports icons but no nesting or selectable menu items.
|
|
248
|
+
*
|
|
249
|
+
* **This prop is not intended for use and will be set by the respective implementation (like useContextMenu, MenuButton, and ComboButton).**
|
|
250
|
+
*/
|
|
225
251
|
mode: require_deprecate.deprecate(prop_types.default.oneOf(["full", "basic"]), "Menus now always support both icons as well as selectable items and nesting."),
|
|
252
|
+
/**
|
|
253
|
+
* Provide an optional function to be called when the Menu should be closed,
|
|
254
|
+
* including if the Menu is blurred, the user presses escape, or the Menu is
|
|
255
|
+
* a submenu and the user presses ArrowLeft.
|
|
256
|
+
*/
|
|
226
257
|
onClose: prop_types.default.func,
|
|
258
|
+
/**
|
|
259
|
+
* Provide an optional function to be called when the Menu is opened.
|
|
260
|
+
*/
|
|
227
261
|
onOpen: prop_types.default.func,
|
|
262
|
+
/**
|
|
263
|
+
* Whether the Menu is open or not.
|
|
264
|
+
*/
|
|
228
265
|
open: prop_types.default.bool,
|
|
266
|
+
/**
|
|
267
|
+
* Specify the size of the Menu.
|
|
268
|
+
*/
|
|
229
269
|
size: prop_types.default.oneOf([
|
|
230
270
|
"xs",
|
|
231
271
|
"sm",
|
|
232
272
|
"md",
|
|
233
273
|
"lg"
|
|
234
274
|
]),
|
|
275
|
+
/**
|
|
276
|
+
* Specify a DOM node where the Menu should be rendered in. Defaults to document.body.
|
|
277
|
+
*/
|
|
235
278
|
target: prop_types.default.object,
|
|
279
|
+
/**
|
|
280
|
+
* Specify the x position of the Menu. Either pass a single number or an array with two numbers describing your activator's boundaries ([x1, x2])
|
|
281
|
+
*/
|
|
236
282
|
x: prop_types.default.oneOfType([prop_types.default.number, prop_types.default.arrayOf(prop_types.default.number)]),
|
|
283
|
+
/**
|
|
284
|
+
* Specify the y position of the Menu. Either pass a single number or an array with two numbers describing your activator's boundaries ([y1, y2])
|
|
285
|
+
*/
|
|
237
286
|
y: prop_types.default.oneOfType([prop_types.default.number, prop_types.default.arrayOf(prop_types.default.number)]),
|
|
287
|
+
/**
|
|
288
|
+
* @deprecated Internal compatibility flag. Use `false` to enable auto-alignment behavior.
|
|
289
|
+
*/
|
|
238
290
|
legacyAutoalign: prop_types.default.bool
|
|
239
291
|
};
|
|
240
292
|
//#endregion
|
|
@@ -5,16 +5,22 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import { KeyboardEvent, RefObject } from 'react';
|
|
8
|
+
type RegisterItemPayload = {
|
|
9
|
+
ref: RefObject<HTMLLIElement | null>;
|
|
10
|
+
disabled: boolean;
|
|
11
|
+
};
|
|
8
12
|
type ActionType = {
|
|
9
|
-
type: 'enableIcons' | 'enableSelectableItems'
|
|
10
|
-
|
|
13
|
+
type: 'enableIcons' | 'enableSelectableItems';
|
|
14
|
+
} | {
|
|
15
|
+
type: 'registerItem';
|
|
16
|
+
payload: RegisterItemPayload;
|
|
11
17
|
};
|
|
12
18
|
type StateType = {
|
|
13
19
|
isRoot: boolean;
|
|
14
20
|
hasIcons: boolean;
|
|
15
21
|
hasSelectableItems: boolean;
|
|
16
22
|
size: 'xs' | 'sm' | 'md' | 'lg' | null;
|
|
17
|
-
items:
|
|
23
|
+
items: RegisterItemPayload[];
|
|
18
24
|
requestCloseRoot: (e: Pick<KeyboardEvent<HTMLUListElement>, 'type'>) => void;
|
|
19
25
|
};
|
|
20
26
|
declare function menuReducer(state: StateType, action: ActionType): {
|
|
@@ -22,19 +28,12 @@ declare function menuReducer(state: StateType, action: ActionType): {
|
|
|
22
28
|
isRoot: boolean;
|
|
23
29
|
hasSelectableItems: boolean;
|
|
24
30
|
size: "xs" | "sm" | "md" | "lg" | null;
|
|
25
|
-
items:
|
|
31
|
+
items: RegisterItemPayload[];
|
|
26
32
|
requestCloseRoot: (e: Pick<KeyboardEvent<HTMLUListElement>, "type">) => void;
|
|
27
33
|
};
|
|
28
|
-
type DispatchFuncProps = {
|
|
29
|
-
type: ActionType['type'];
|
|
30
|
-
payload: {
|
|
31
|
-
ref: RefObject<HTMLLIElement | null>;
|
|
32
|
-
disabled: boolean;
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
34
|
type MenuContextProps = {
|
|
36
35
|
state: StateType;
|
|
37
|
-
dispatch: (props:
|
|
36
|
+
dispatch: (props: ActionType) => void;
|
|
38
37
|
};
|
|
39
38
|
declare const MenuContext: import("react").Context<MenuContextProps>;
|
|
40
39
|
export { MenuContext, menuReducer };
|
|
@@ -202,14 +202,41 @@ const MenuItem = (0, react.forwardRef)(function MenuItem({ children, className,
|
|
|
202
202
|
});
|
|
203
203
|
});
|
|
204
204
|
MenuItem.propTypes = {
|
|
205
|
+
/**
|
|
206
|
+
* Optionally provide another Menu to create a submenu. props.children can't be used to specify the content of the MenuItem itself. Use props.label instead.
|
|
207
|
+
*/
|
|
205
208
|
children: prop_types.default.node,
|
|
209
|
+
/**
|
|
210
|
+
* Additional CSS class names.
|
|
211
|
+
*/
|
|
206
212
|
className: prop_types.default.string,
|
|
213
|
+
/**
|
|
214
|
+
* Specify the message read by screen readers for the danger menu item variant
|
|
215
|
+
*/
|
|
207
216
|
dangerDescription: prop_types.default.string,
|
|
217
|
+
/**
|
|
218
|
+
* Specify whether the MenuItem is disabled or not.
|
|
219
|
+
*/
|
|
208
220
|
disabled: prop_types.default.bool,
|
|
221
|
+
/**
|
|
222
|
+
* Specify the kind of the MenuItem.
|
|
223
|
+
*/
|
|
209
224
|
kind: prop_types.default.oneOf(["default", "danger"]),
|
|
225
|
+
/**
|
|
226
|
+
* A required label titling the MenuItem. Will be rendered as its text content.
|
|
227
|
+
*/
|
|
210
228
|
label: prop_types.default.string.isRequired,
|
|
229
|
+
/**
|
|
230
|
+
* Provide an optional function to be called when the MenuItem is clicked.
|
|
231
|
+
*/
|
|
211
232
|
onClick: prop_types.default.func,
|
|
233
|
+
/**
|
|
234
|
+
* A component used to render an icon.
|
|
235
|
+
*/
|
|
212
236
|
renderIcon: prop_types.default.oneOfType([prop_types.default.func, prop_types.default.object]),
|
|
237
|
+
/**
|
|
238
|
+
* Provide a shortcut for the action of this MenuItem. Note that the component will only render it as a hint but not actually register the shortcut.
|
|
239
|
+
*/
|
|
213
240
|
shortcut: prop_types.default.string
|
|
214
241
|
};
|
|
215
242
|
const MenuItemSelectable = (0, react.forwardRef)(function MenuItemSelectable({ className, defaultSelected, label, onChange, selected, ...rest }, forwardRef) {
|
|
@@ -238,10 +265,25 @@ const MenuItemSelectable = (0, react.forwardRef)(function MenuItemSelectable({ c
|
|
|
238
265
|
});
|
|
239
266
|
});
|
|
240
267
|
MenuItemSelectable.propTypes = {
|
|
268
|
+
/**
|
|
269
|
+
* Additional CSS class names.
|
|
270
|
+
*/
|
|
241
271
|
className: prop_types.default.string,
|
|
272
|
+
/**
|
|
273
|
+
* Specify whether the option should be selected by default.
|
|
274
|
+
*/
|
|
242
275
|
defaultSelected: prop_types.default.bool,
|
|
276
|
+
/**
|
|
277
|
+
* A required label titling this option.
|
|
278
|
+
*/
|
|
243
279
|
label: prop_types.default.string.isRequired,
|
|
280
|
+
/**
|
|
281
|
+
* Provide an optional function to be called when the selection state changes.
|
|
282
|
+
*/
|
|
244
283
|
onChange: prop_types.default.func,
|
|
284
|
+
/**
|
|
285
|
+
* Pass a bool to props.selected to control the state of this option.
|
|
286
|
+
*/
|
|
245
287
|
selected: prop_types.default.bool
|
|
246
288
|
};
|
|
247
289
|
const MenuItemGroup = (0, react.forwardRef)(function MenuItemGroup({ children, className, label, ...rest }, forwardRef) {
|
|
@@ -258,8 +300,17 @@ const MenuItemGroup = (0, react.forwardRef)(function MenuItemGroup({ children, c
|
|
|
258
300
|
});
|
|
259
301
|
});
|
|
260
302
|
MenuItemGroup.propTypes = {
|
|
303
|
+
/**
|
|
304
|
+
* A collection of MenuItems to be rendered within this group.
|
|
305
|
+
*/
|
|
261
306
|
children: prop_types.default.node,
|
|
307
|
+
/**
|
|
308
|
+
* Additional CSS class names.
|
|
309
|
+
*/
|
|
262
310
|
className: prop_types.default.string,
|
|
311
|
+
/**
|
|
312
|
+
* A required label titling this group.
|
|
313
|
+
*/
|
|
263
314
|
label: prop_types.default.string.isRequired
|
|
264
315
|
};
|
|
265
316
|
const MenuItemRadioGroup = (0, react.forwardRef)(function MenuItemRadioGroup({ className, defaultSelectedItem, items, itemToString = require_defaultItemToString.defaultItemToString, label, onChange, selectedItem, ...rest }, forwardRef) {
|
|
@@ -296,12 +347,33 @@ const MenuItemRadioGroup = (0, react.forwardRef)(function MenuItemRadioGroup({ c
|
|
|
296
347
|
});
|
|
297
348
|
});
|
|
298
349
|
MenuItemRadioGroup.propTypes = {
|
|
350
|
+
/**
|
|
351
|
+
* Additional CSS class names.
|
|
352
|
+
*/
|
|
299
353
|
className: prop_types.default.string,
|
|
354
|
+
/**
|
|
355
|
+
* Specify the default selected item. Must match the type of props.items.
|
|
356
|
+
*/
|
|
300
357
|
defaultSelectedItem: prop_types.default.any,
|
|
358
|
+
/**
|
|
359
|
+
* Converts an item into a string for display.
|
|
360
|
+
*/
|
|
301
361
|
itemToString: prop_types.default.func,
|
|
362
|
+
/**
|
|
363
|
+
* Provide the options for this radio group. Can be of any type, as long as you provide an appropriate props.itemToString function.
|
|
364
|
+
*/
|
|
302
365
|
items: prop_types.default.array,
|
|
366
|
+
/**
|
|
367
|
+
* A required label titling this radio group.
|
|
368
|
+
*/
|
|
303
369
|
label: prop_types.default.string.isRequired,
|
|
370
|
+
/**
|
|
371
|
+
* Provide an optional function to be called when the selection changes.
|
|
372
|
+
*/
|
|
304
373
|
onChange: prop_types.default.func,
|
|
374
|
+
/**
|
|
375
|
+
* Provide props.selectedItem to control the state of this radio group. Must match the type of props.items.
|
|
376
|
+
*/
|
|
305
377
|
selectedItem: prop_types.default.any
|
|
306
378
|
};
|
|
307
379
|
const MenuItemDivider = (0, react.forwardRef)(function MenuItemDivider({ className, ...rest }, forwardRef) {
|
|
@@ -313,7 +385,11 @@ const MenuItemDivider = (0, react.forwardRef)(function MenuItemDivider({ classNa
|
|
|
313
385
|
ref: forwardRef
|
|
314
386
|
});
|
|
315
387
|
});
|
|
316
|
-
MenuItemDivider.propTypes = {
|
|
388
|
+
MenuItemDivider.propTypes = {
|
|
389
|
+
/**
|
|
390
|
+
* Additional CSS class names.
|
|
391
|
+
*/
|
|
392
|
+
className: prop_types.default.string };
|
|
317
393
|
//#endregion
|
|
318
394
|
exports.MenuItem = MenuItem;
|
|
319
395
|
exports.MenuItemDivider = MenuItemDivider;
|
|
@@ -119,11 +119,29 @@ const MenuButton = (0, react.forwardRef)(({ children, className, disabled, kind
|
|
|
119
119
|
});
|
|
120
120
|
});
|
|
121
121
|
MenuButton.propTypes = {
|
|
122
|
+
/**
|
|
123
|
+
* A collection of MenuItems to be rendered as actions for this MenuButton.
|
|
124
|
+
*/
|
|
122
125
|
children: prop_types.default.node.isRequired,
|
|
126
|
+
/**
|
|
127
|
+
* Additional CSS class names.
|
|
128
|
+
*/
|
|
123
129
|
className: prop_types.default.string,
|
|
130
|
+
/**
|
|
131
|
+
* Specify whether the MenuButton should be disabled, or not.
|
|
132
|
+
*/
|
|
124
133
|
disabled: prop_types.default.bool,
|
|
134
|
+
/**
|
|
135
|
+
* Specify the type of button to be used as the base for the trigger button.
|
|
136
|
+
*/
|
|
125
137
|
kind: prop_types.default.oneOf(validButtonKinds),
|
|
138
|
+
/**
|
|
139
|
+
* Provide the label to be rendered on the trigger button.
|
|
140
|
+
*/
|
|
126
141
|
label: prop_types.default.string.isRequired,
|
|
142
|
+
/**
|
|
143
|
+
* Experimental property. Specify how the menu should align with the button element
|
|
144
|
+
*/
|
|
127
145
|
menuAlignment: prop_types.default.oneOf([
|
|
128
146
|
"top",
|
|
129
147
|
"top-start",
|
|
@@ -132,15 +150,30 @@ MenuButton.propTypes = {
|
|
|
132
150
|
"bottom-start",
|
|
133
151
|
"bottom-end"
|
|
134
152
|
]),
|
|
153
|
+
/**
|
|
154
|
+
* Specify the size of the button and menu.
|
|
155
|
+
*/
|
|
135
156
|
size: prop_types.default.oneOf([
|
|
136
157
|
"xs",
|
|
137
158
|
"sm",
|
|
138
159
|
"md",
|
|
139
160
|
"lg"
|
|
140
161
|
]),
|
|
162
|
+
/**
|
|
163
|
+
* Specify the tabIndex of the button.
|
|
164
|
+
*/
|
|
141
165
|
tabIndex: prop_types.default.number,
|
|
166
|
+
/**
|
|
167
|
+
* Specify the background token to use for the menu. Default is 'layer'.
|
|
168
|
+
*/
|
|
142
169
|
menuBackgroundToken: prop_types.default.oneOf(["layer", "background"]),
|
|
170
|
+
/**
|
|
171
|
+
* Specify whether a border should be rendered on the menu
|
|
172
|
+
*/
|
|
143
173
|
menuBorder: prop_types.default.bool,
|
|
174
|
+
/**
|
|
175
|
+
* Specify a DOM node where the Menu should be rendered in. Defaults to document.body.
|
|
176
|
+
*/
|
|
144
177
|
menuTarget: prop_types.default.instanceOf(typeof Element !== "undefined" ? Element : Object)
|
|
145
178
|
};
|
|
146
179
|
//#endregion
|