@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
|
@@ -487,43 +487,143 @@ const ModalDialog = react.default.forwardRef(function ModalDialog({ "aria-label"
|
|
|
487
487
|
});
|
|
488
488
|
});
|
|
489
489
|
Modal.propTypes = {
|
|
490
|
+
/**
|
|
491
|
+
* Specify whether the Modal is displaying an alert, error or warning
|
|
492
|
+
* Should go hand in hand with the danger prop.
|
|
493
|
+
*/
|
|
490
494
|
alert: prop_types.default.bool,
|
|
495
|
+
/**
|
|
496
|
+
* Required props for the accessibility label of the header
|
|
497
|
+
*/
|
|
491
498
|
["aria-label"]: require_requiredIfGivenPropIsTruthy.requiredIfGivenPropIsTruthy("hasScrollingContent", prop_types.default.string),
|
|
499
|
+
/**
|
|
500
|
+
* Provide the contents of your Modal
|
|
501
|
+
*/
|
|
492
502
|
children: prop_types.default.node,
|
|
503
|
+
/**
|
|
504
|
+
* Specify an optional className to be applied to the modal root node
|
|
505
|
+
*/
|
|
493
506
|
className: prop_types.default.string,
|
|
507
|
+
/**
|
|
508
|
+
* Specify label for the close button of the modal; defaults to close
|
|
509
|
+
*/
|
|
494
510
|
closeButtonLabel: prop_types.default.string,
|
|
511
|
+
/**
|
|
512
|
+
* Specify whether the Modal is for dangerous actions
|
|
513
|
+
*/
|
|
495
514
|
danger: prop_types.default.bool,
|
|
515
|
+
/**
|
|
516
|
+
* Specify the message read by screen readers for the danger primary button.
|
|
517
|
+
* Defaults to an empty string; provide localized text to opt in.
|
|
518
|
+
*/
|
|
496
519
|
dangerDescription: prop_types.default.string,
|
|
520
|
+
/**
|
|
521
|
+
* **Experimental**: Provide a decorator component to be rendered inside the `Modal` component
|
|
522
|
+
*/
|
|
497
523
|
decorator: prop_types.default.node,
|
|
524
|
+
/**
|
|
525
|
+
* Specify whether the modal contains scrolling content
|
|
526
|
+
*/
|
|
498
527
|
hasScrollingContent: prop_types.default.bool,
|
|
528
|
+
/**
|
|
529
|
+
* Specify the DOM element ID of the top-level node.
|
|
530
|
+
*/
|
|
499
531
|
id: prop_types.default.string,
|
|
532
|
+
/**
|
|
533
|
+
* Specify whether or not the Modal content should have any inner padding.
|
|
534
|
+
*/
|
|
500
535
|
isFullWidth: prop_types.default.bool,
|
|
536
|
+
/**
|
|
537
|
+
* Provide a ref to return focus to once the modal is closed.
|
|
538
|
+
*/
|
|
501
539
|
launcherButtonRef: prop_types.default.oneOfType([prop_types.default.func, prop_types.default.shape({ current: prop_types.default.oneOfType([typeof HTMLElement !== "undefined" ? prop_types.default.instanceOf(HTMLElement) : prop_types.default.any, prop_types.default.oneOf([null])]).isRequired })]),
|
|
540
|
+
/**
|
|
541
|
+
* Specify the description for the loading text
|
|
542
|
+
*/
|
|
502
543
|
loadingDescription: prop_types.default.string,
|
|
544
|
+
/**
|
|
545
|
+
* Specify the description for the loading text
|
|
546
|
+
*/
|
|
503
547
|
loadingIconDescription: prop_types.default.string,
|
|
548
|
+
/**
|
|
549
|
+
* loading status
|
|
550
|
+
*/
|
|
504
551
|
loadingStatus: prop_types.default.oneOf([
|
|
505
552
|
"inactive",
|
|
506
553
|
"active",
|
|
507
554
|
"finished",
|
|
508
555
|
"error"
|
|
509
556
|
]),
|
|
557
|
+
/**
|
|
558
|
+
* Specify a label to be read by screen readers on the modal root node
|
|
559
|
+
*/
|
|
510
560
|
modalAriaLabel: prop_types.default.string,
|
|
561
|
+
/**
|
|
562
|
+
* Specify the content of the modal header title.
|
|
563
|
+
*/
|
|
511
564
|
modalHeading: prop_types.default.node,
|
|
565
|
+
/**
|
|
566
|
+
* Specify the content of the modal header label.
|
|
567
|
+
*/
|
|
512
568
|
modalLabel: prop_types.default.node,
|
|
569
|
+
/**
|
|
570
|
+
* Specify a handler for keypresses.
|
|
571
|
+
*/
|
|
513
572
|
onKeyDown: prop_types.default.func,
|
|
573
|
+
/**
|
|
574
|
+
* Provide an optional handler to be invoked when loading is
|
|
575
|
+
* successful
|
|
576
|
+
*/
|
|
514
577
|
onLoadingSuccess: prop_types.default.func,
|
|
578
|
+
/**
|
|
579
|
+
* Specify a handler for closing modal.
|
|
580
|
+
* The handler should care of closing modal, e.g. changing `open` prop.
|
|
581
|
+
*/
|
|
515
582
|
onRequestClose: prop_types.default.func,
|
|
583
|
+
/**
|
|
584
|
+
* Specify a handler for "submitting" modal.
|
|
585
|
+
* The handler should care of closing modal, e.g. changing `open` prop, if necessary.
|
|
586
|
+
*/
|
|
516
587
|
onRequestSubmit: prop_types.default.func,
|
|
588
|
+
/**
|
|
589
|
+
* Specify a handler for the secondary button.
|
|
590
|
+
* Useful if separate handler from `onRequestClose` is desirable
|
|
591
|
+
*/
|
|
517
592
|
onSecondarySubmit: prop_types.default.func,
|
|
593
|
+
/**
|
|
594
|
+
* Specify whether the Modal is currently open
|
|
595
|
+
*/
|
|
518
596
|
open: prop_types.default.bool,
|
|
597
|
+
/**
|
|
598
|
+
* Specify whether the modal should be button-less
|
|
599
|
+
*/
|
|
519
600
|
passiveModal: prop_types.default.bool,
|
|
601
|
+
/**
|
|
602
|
+
* Prevent closing on click outside of modal
|
|
603
|
+
*/
|
|
520
604
|
preventCloseOnClickOutside: (props, propName) => {
|
|
521
|
-
if (!props.passiveModal && props[propName] === false) return new Error(invalidOutsideClickMessage);
|
|
605
|
+
if (!props.passiveModal && props[propName] === false) return /* @__PURE__ */ new Error(invalidOutsideClickMessage);
|
|
522
606
|
return null;
|
|
523
607
|
},
|
|
608
|
+
/**
|
|
609
|
+
* Specify whether the Button should be disabled, or not
|
|
610
|
+
*/
|
|
524
611
|
primaryButtonDisabled: prop_types.default.bool,
|
|
612
|
+
/**
|
|
613
|
+
* Specify the text for the primary button
|
|
614
|
+
*/
|
|
525
615
|
primaryButtonText: prop_types.default.node,
|
|
616
|
+
/**
|
|
617
|
+
* Specify the text for the secondary button
|
|
618
|
+
*/
|
|
526
619
|
secondaryButtonText: prop_types.default.node,
|
|
620
|
+
/**
|
|
621
|
+
* Specify an array of config objects for secondary buttons
|
|
622
|
+
* (`Array<{
|
|
623
|
+
* buttonText: string,
|
|
624
|
+
* onClick: function,
|
|
625
|
+
* }>`).
|
|
626
|
+
*/
|
|
527
627
|
secondaryButtons: (props, propName, componentName) => {
|
|
528
628
|
if (props.secondaryButtons) {
|
|
529
629
|
if (!Array.isArray(props.secondaryButtons) || props.secondaryButtons.length !== 2) return /* @__PURE__ */ new Error(`${propName} needs to be an array of two button config objects`);
|
|
@@ -537,9 +637,23 @@ Modal.propTypes = {
|
|
|
537
637
|
}
|
|
538
638
|
return null;
|
|
539
639
|
},
|
|
640
|
+
/**
|
|
641
|
+
* Specify a CSS selector that matches the DOM element that should
|
|
642
|
+
* be focused when the Modal opens
|
|
643
|
+
*/
|
|
540
644
|
selectorPrimaryFocus: prop_types.default.string,
|
|
645
|
+
/**
|
|
646
|
+
* Specify CSS selectors that match DOM elements working as floating menus.
|
|
647
|
+
* Focusing on those elements won't trigger "focus-wrap" behavior
|
|
648
|
+
*/
|
|
541
649
|
selectorsFloatingMenus: prop_types.default.arrayOf(prop_types.default.string.isRequired),
|
|
650
|
+
/**
|
|
651
|
+
* Specify if Enter key should be used as "submit" action
|
|
652
|
+
*/
|
|
542
653
|
shouldSubmitOnEnter: prop_types.default.bool,
|
|
654
|
+
/**
|
|
655
|
+
* Specify the size variant.
|
|
656
|
+
*/
|
|
543
657
|
size: prop_types.default.oneOf(ModalSizes),
|
|
544
658
|
slug: require_deprecate.deprecate(prop_types.default.node, "The `slug` prop has been deprecated and will be removed in the next major version. Use the decorator prop instead.")
|
|
545
659
|
};
|
|
@@ -577,45 +577,173 @@ const FilterableMultiSelect = (0, react.forwardRef)(function FilterableMultiSele
|
|
|
577
577
|
});
|
|
578
578
|
FilterableMultiSelect.displayName = "FilterableMultiSelect";
|
|
579
579
|
FilterableMultiSelect.propTypes = {
|
|
580
|
+
/**
|
|
581
|
+
* Deprecated, aria-label is no longer needed
|
|
582
|
+
* Specify a label to be read by screen readers on the container node
|
|
583
|
+
*/
|
|
580
584
|
["aria-label"]: require_deprecate.deprecate(prop_types.default.string, "ariaLabel / aria-label props are no longer required for FilterableMultiSelect"),
|
|
585
|
+
/**
|
|
586
|
+
* Deprecated, please use `aria-label` instead.
|
|
587
|
+
* Specify a label to be read by screen readers on the container note.
|
|
588
|
+
*/
|
|
581
589
|
ariaLabel: require_deprecate.deprecate(prop_types.default.string, "ariaLabel / aria-label props are no longer required for FilterableMultiSelect"),
|
|
590
|
+
/**
|
|
591
|
+
* **Experimental**: Will attempt to automatically align the floating
|
|
592
|
+
* element to avoid collisions with the viewport and being clipped by
|
|
593
|
+
* ancestor elements. Requires React v17+
|
|
594
|
+
* @see https://github.com/carbon-design-system/carbon/issues/18714
|
|
595
|
+
*/
|
|
582
596
|
autoAlign: prop_types.default.bool,
|
|
597
|
+
/**
|
|
598
|
+
* Specify the text that should be read for screen readers that describes total items selected
|
|
599
|
+
*/
|
|
583
600
|
clearSelectionDescription: prop_types.default.string,
|
|
601
|
+
/**
|
|
602
|
+
* Specify the text that should be read for screen readers to clear selection.
|
|
603
|
+
*/
|
|
584
604
|
clearSelectionText: prop_types.default.string,
|
|
605
|
+
/**
|
|
606
|
+
* **Experimental**: Provide a decorator component to be rendered inside the `FilterableMultiSelect` component
|
|
607
|
+
*/
|
|
585
608
|
decorator: prop_types.default.node,
|
|
609
|
+
/**
|
|
610
|
+
* Provide a method that filters the dropdown options based on the current input. Overriding this
|
|
611
|
+
* prop means that you have to handle the filtering logic when the user types in the text input.
|
|
612
|
+
* Otherwise, a default built-in filtering function will be used.
|
|
613
|
+
*/
|
|
586
614
|
filterItems: prop_types.default.func,
|
|
615
|
+
/**
|
|
616
|
+
* Specify the direction of the multiselect dropdown. Can be either top or bottom.
|
|
617
|
+
*/
|
|
587
618
|
direction: prop_types.default.oneOf(["top", "bottom"]),
|
|
619
|
+
/**
|
|
620
|
+
* Disable the control
|
|
621
|
+
*/
|
|
588
622
|
disabled: prop_types.default.bool,
|
|
623
|
+
/**
|
|
624
|
+
* Additional props passed to Downshift.
|
|
625
|
+
*
|
|
626
|
+
* **Use with caution:** anything you define here overrides the components'
|
|
627
|
+
* internal handling of that prop. Downshift APIs and internals are subject to
|
|
628
|
+
* change, and in some cases they can not be shimmed by Carbon to shield you
|
|
629
|
+
* from potentially breaking changes.
|
|
630
|
+
*/
|
|
589
631
|
downshiftProps: prop_types.default.shape(downshift.default.propTypes),
|
|
632
|
+
/**
|
|
633
|
+
* Specify whether the title text should be hidden or not
|
|
634
|
+
*/
|
|
590
635
|
hideLabel: prop_types.default.bool,
|
|
636
|
+
/**
|
|
637
|
+
* Specify a custom `id`
|
|
638
|
+
*/
|
|
591
639
|
id: prop_types.default.string.isRequired,
|
|
640
|
+
/**
|
|
641
|
+
* Allow users to pass in arbitrary items from their collection that are
|
|
642
|
+
* pre-selected
|
|
643
|
+
*/
|
|
592
644
|
initialSelectedItems: prop_types.default.array,
|
|
645
|
+
/**
|
|
646
|
+
* Is the current selection invalid?
|
|
647
|
+
*/
|
|
593
648
|
invalid: prop_types.default.bool,
|
|
649
|
+
/**
|
|
650
|
+
* If invalid, what is the error?
|
|
651
|
+
*/
|
|
594
652
|
invalidText: prop_types.default.node,
|
|
653
|
+
/**
|
|
654
|
+
* Function to render items as custom components instead of strings.
|
|
655
|
+
* Defaults to null and is overridden by a getter
|
|
656
|
+
*/
|
|
595
657
|
itemToElement: prop_types.default.func,
|
|
658
|
+
/**
|
|
659
|
+
* Helper function passed to downshift that allows the library to render a
|
|
660
|
+
* given item to a string label. By default, it extracts the `label` field
|
|
661
|
+
* from a given item to serve as the item label in the list.
|
|
662
|
+
*/
|
|
596
663
|
itemToString: prop_types.default.func,
|
|
664
|
+
/**
|
|
665
|
+
* We try to stay as generic as possible here to allow individuals to pass
|
|
666
|
+
* in a collection of whatever kind of data structure they prefer
|
|
667
|
+
*/
|
|
597
668
|
items: prop_types.default.array.isRequired,
|
|
669
|
+
/**
|
|
670
|
+
* `true` to use the light version.
|
|
671
|
+
*/
|
|
598
672
|
light: require_deprecate.deprecate(prop_types.default.bool, "The `light` prop for `FilterableMultiSelect` has been deprecated in favor of the new `Layer` component. It will be removed in the next major release."),
|
|
673
|
+
/**
|
|
674
|
+
* Specify the locale of the control. Used for the default `compareItems`
|
|
675
|
+
* used for sorting the list of items in the control.
|
|
676
|
+
*/
|
|
599
677
|
locale: prop_types.default.string,
|
|
678
|
+
/**
|
|
679
|
+
* `onChange` is a utility for this controlled component to communicate to a
|
|
680
|
+
* consuming component what kind of internal state changes are occurring.
|
|
681
|
+
*/
|
|
600
682
|
onChange: prop_types.default.func,
|
|
683
|
+
/**
|
|
684
|
+
* `onInputValueChange` is a utility for this controlled component to communicate to
|
|
685
|
+
* the currently typed input.
|
|
686
|
+
*/
|
|
601
687
|
onInputValueChange: prop_types.default.func,
|
|
688
|
+
/**
|
|
689
|
+
* `onMenuChange` is a utility for this controlled component to communicate to a
|
|
690
|
+
* consuming component that the menu was opened(`true`)/closed(`false`).
|
|
691
|
+
*/
|
|
602
692
|
onMenuChange: prop_types.default.func,
|
|
693
|
+
/**
|
|
694
|
+
* Initialize the component with an open(`true`)/closed(`false`) menu.
|
|
695
|
+
*/
|
|
603
696
|
open: prop_types.default.bool,
|
|
697
|
+
/**
|
|
698
|
+
* Generic `placeholder` that will be used as the textual representation of
|
|
699
|
+
* what this field is for
|
|
700
|
+
*/
|
|
604
701
|
placeholder: prop_types.default.string,
|
|
702
|
+
/**
|
|
703
|
+
* Specify feedback (mode) of the selection.
|
|
704
|
+
* `top`: selected item jumps to top
|
|
705
|
+
* `fixed`: selected item stays at it's position
|
|
706
|
+
* `top-after-reopen`: selected item jump to top after reopen dropdown
|
|
707
|
+
*/
|
|
605
708
|
selectionFeedback: prop_types.default.oneOf([
|
|
606
709
|
"top",
|
|
607
710
|
"fixed",
|
|
608
711
|
"top-after-reopen"
|
|
609
712
|
]),
|
|
713
|
+
/**
|
|
714
|
+
* Specify the size of the ListBox. Currently supports either `sm`, `md` or `lg` as an option.
|
|
715
|
+
*/
|
|
610
716
|
size: require_ListBoxPropTypes.ListBoxSizePropType,
|
|
611
717
|
slug: require_deprecate.deprecate(prop_types.default.node, "The `slug` prop has been deprecated and will be removed in the next major version. Use the decorator prop instead."),
|
|
612
718
|
...require_MultiSelectPropTypes.sortingPropTypes,
|
|
719
|
+
/**
|
|
720
|
+
* Provide text to be used in a `<label>` element that is tied to the
|
|
721
|
+
* combobox via ARIA attributes.
|
|
722
|
+
*/
|
|
613
723
|
titleText: prop_types.default.node,
|
|
724
|
+
/**
|
|
725
|
+
* Translates component strings using your i18n tool.
|
|
726
|
+
*/
|
|
614
727
|
translateWithId: prop_types.default.func,
|
|
615
728
|
type: require_ListBoxPropTypes.ListBoxTypePropType,
|
|
729
|
+
/**
|
|
730
|
+
* Specify title to show title on hover
|
|
731
|
+
*/
|
|
616
732
|
useTitleInItem: prop_types.default.bool,
|
|
733
|
+
/**
|
|
734
|
+
* Specify whether the control is currently in warning state
|
|
735
|
+
*/
|
|
617
736
|
warn: prop_types.default.bool,
|
|
737
|
+
/**
|
|
738
|
+
* Provide the text that is displayed when the control is in warning state
|
|
739
|
+
*/
|
|
618
740
|
warnText: prop_types.default.node,
|
|
741
|
+
/**
|
|
742
|
+
* Specify native input attributes to place on the `<input>`, like maxLength.
|
|
743
|
+
* These are passed to downshift's getInputProps() and will override the
|
|
744
|
+
* internal input props.
|
|
745
|
+
* https://github.com/downshift-js/downshift?tab=readme-ov-file#getinputprops
|
|
746
|
+
*/
|
|
619
747
|
inputProps: prop_types.default.object
|
|
620
748
|
};
|
|
621
749
|
//#endregion
|
|
@@ -146,6 +146,7 @@ const MultiSelect = react.default.forwardRef(({ autoAlign = false, className: co
|
|
|
146
146
|
if (require_match.match(e, require_keys.ArrowDown) && selectedItems.length === 0) setInputFocused(false);
|
|
147
147
|
if (require_match.match(e, require_keys.Escape) && isOpen) setInputFocused(true);
|
|
148
148
|
if (require_match.match(e, require_keys.Enter) && isOpen) setInputFocused(true);
|
|
149
|
+
if (require_match.match(e, require_keys.Tab) && isOpen) setIsOpenWrapper(false);
|
|
149
150
|
}
|
|
150
151
|
}
|
|
151
152
|
});
|
|
@@ -424,45 +425,192 @@ const MultiSelect = react.default.forwardRef(({ autoAlign = false, className: co
|
|
|
424
425
|
MultiSelect.displayName = "MultiSelect";
|
|
425
426
|
MultiSelect.propTypes = {
|
|
426
427
|
...require_MultiSelectPropTypes.sortingPropTypes,
|
|
428
|
+
/**
|
|
429
|
+
* **Experimental**: Will attempt to automatically align the floating
|
|
430
|
+
* element to avoid collisions with the viewport and being clipped by
|
|
431
|
+
* ancestor elements. Requires React v17+
|
|
432
|
+
* @see https://github.com/carbon-design-system/carbon/issues/18714
|
|
433
|
+
*/
|
|
427
434
|
autoAlign: prop_types.default.bool,
|
|
435
|
+
/**
|
|
436
|
+
* Provide a custom class name to be added to the outermost node in the
|
|
437
|
+
* component
|
|
438
|
+
*/
|
|
428
439
|
className: prop_types.default.string,
|
|
440
|
+
/**
|
|
441
|
+
* Specify the text that should be read for screen readers that describes total items selected
|
|
442
|
+
*/
|
|
429
443
|
clearSelectionDescription: prop_types.default.string,
|
|
444
|
+
/**
|
|
445
|
+
* Specify the text that should be read for screen readers to clear selection.
|
|
446
|
+
*/
|
|
430
447
|
clearSelectionText: prop_types.default.string,
|
|
448
|
+
/**
|
|
449
|
+
* Provide a compare function that is used to determine the ordering of
|
|
450
|
+
* options. See 'sortItems' for more control. Consider
|
|
451
|
+
* declaring function with `useCallback` to prevent unnecessary re-renders.
|
|
452
|
+
*/
|
|
431
453
|
compareItems: prop_types.default.func,
|
|
454
|
+
/**
|
|
455
|
+
* **Experimental**: Provide a decorator component to be rendered inside the `MultiSelect` component
|
|
456
|
+
*/
|
|
432
457
|
decorator: prop_types.default.node,
|
|
458
|
+
/**
|
|
459
|
+
* Specify the direction of the multiselect dropdown. Can be either top or bottom.
|
|
460
|
+
*/
|
|
433
461
|
direction: prop_types.default.oneOf(["top", "bottom"]),
|
|
462
|
+
/**
|
|
463
|
+
* Disable the control
|
|
464
|
+
*/
|
|
434
465
|
disabled: prop_types.default.bool,
|
|
466
|
+
/**
|
|
467
|
+
* Additional props passed to Downshift.
|
|
468
|
+
*
|
|
469
|
+
* **Use with caution:** anything you define here overrides the components'
|
|
470
|
+
* internal handling of that prop. Downshift APIs and internals are subject to
|
|
471
|
+
* change, and in some cases they can not be shimmed by Carbon to shield you
|
|
472
|
+
* from potentially breaking changes.
|
|
473
|
+
*/
|
|
435
474
|
downshiftProps: prop_types.default.object,
|
|
475
|
+
/**
|
|
476
|
+
* Provide helper text that is used alongside the control label for
|
|
477
|
+
* additional help
|
|
478
|
+
*/
|
|
436
479
|
helperText: prop_types.default.node,
|
|
480
|
+
/**
|
|
481
|
+
* Specify whether the title text should be hidden or not
|
|
482
|
+
*/
|
|
437
483
|
hideLabel: prop_types.default.bool,
|
|
484
|
+
/**
|
|
485
|
+
* Specify a custom `id`
|
|
486
|
+
*/
|
|
438
487
|
id: prop_types.default.string.isRequired,
|
|
488
|
+
/**
|
|
489
|
+
* Allow users to pass in arbitrary items from their collection that are
|
|
490
|
+
* pre-selected
|
|
491
|
+
*/
|
|
439
492
|
initialSelectedItems: prop_types.default.array,
|
|
493
|
+
/**
|
|
494
|
+
* Is the current selection invalid?
|
|
495
|
+
*/
|
|
440
496
|
invalid: prop_types.default.bool,
|
|
497
|
+
/**
|
|
498
|
+
* If invalid, what is the error?
|
|
499
|
+
*/
|
|
441
500
|
invalidText: prop_types.default.node,
|
|
501
|
+
/**
|
|
502
|
+
* Renders an item as a custom React node instead of a string.
|
|
503
|
+
*/
|
|
442
504
|
itemToElement: prop_types.default.func,
|
|
505
|
+
/**
|
|
506
|
+
* Helper function passed to downshift that allows the library to render a
|
|
507
|
+
* given item to a string label. By default, it extracts the `label` field
|
|
508
|
+
* from a given item to serve as the item label in the list. Consider
|
|
509
|
+
* declaring function with `useCallback` to prevent unnecessary re-renders.
|
|
510
|
+
*/
|
|
443
511
|
itemToString: prop_types.default.func,
|
|
512
|
+
/**
|
|
513
|
+
* We try to stay as generic as possible here to allow individuals to pass
|
|
514
|
+
* in a collection of whatever kind of data structure they prefer
|
|
515
|
+
*/
|
|
444
516
|
items: prop_types.default.array.isRequired,
|
|
517
|
+
/**
|
|
518
|
+
* Generic `label` that will be used as the textual representation of what
|
|
519
|
+
* this field is for
|
|
520
|
+
*/
|
|
445
521
|
label: prop_types.default.node.isRequired,
|
|
522
|
+
/**
|
|
523
|
+
* `true` to use the light version.
|
|
524
|
+
*/
|
|
446
525
|
light: require_deprecate.deprecate(prop_types.default.bool, "The `light` prop for `MultiSelect` has been deprecated in favor of the new `Layer` component. It will be removed in the next major release."),
|
|
526
|
+
/**
|
|
527
|
+
* Specify the locale of the control. Used for the default `compareItems`
|
|
528
|
+
* used for sorting the list of items in the control.
|
|
529
|
+
*/
|
|
447
530
|
locale: prop_types.default.string,
|
|
531
|
+
/**
|
|
532
|
+
* `onChange` is a utility for this controlled component to communicate to a
|
|
533
|
+
* consuming component what kind of internal state changes are occurring.
|
|
534
|
+
*/
|
|
448
535
|
onChange: prop_types.default.func,
|
|
536
|
+
/**
|
|
537
|
+
* `onMenuChange` is a utility for this controlled component to communicate to a
|
|
538
|
+
* consuming component that the menu was open(`true`)/closed(`false`).
|
|
539
|
+
*/
|
|
449
540
|
onMenuChange: prop_types.default.func,
|
|
541
|
+
/**
|
|
542
|
+
* Initialize the component with an open(`true`)/closed(`false`) menu.
|
|
543
|
+
*/
|
|
450
544
|
open: prop_types.default.bool,
|
|
545
|
+
/**
|
|
546
|
+
* Whether or not the Dropdown is readonly
|
|
547
|
+
*/
|
|
451
548
|
readOnly: prop_types.default.bool,
|
|
549
|
+
/**
|
|
550
|
+
* For full control of the selected items
|
|
551
|
+
*/
|
|
452
552
|
selectedItems: prop_types.default.array,
|
|
553
|
+
/**
|
|
554
|
+
* Specify feedback (mode) of the selection.
|
|
555
|
+
* `top`: selected item jumps to top
|
|
556
|
+
* `fixed`: selected item stays at it's position
|
|
557
|
+
* `top-after-reopen`: selected item jump to top after reopen dropdown
|
|
558
|
+
*/
|
|
453
559
|
selectionFeedback: prop_types.default.oneOf([
|
|
454
560
|
"top",
|
|
455
561
|
"fixed",
|
|
456
562
|
"top-after-reopen"
|
|
457
563
|
]),
|
|
564
|
+
/**
|
|
565
|
+
* Specify the size of the ListBox. Currently supports either `xs`, `sm`, `md` or `lg` as an option.
|
|
566
|
+
*/
|
|
458
567
|
size: require_ListBoxPropTypes.ListBoxSizePropType,
|
|
459
568
|
slug: require_deprecate.deprecate(prop_types.default.node, "The `slug` prop has been deprecated and will be removed in the next major version. Use the decorator prop instead."),
|
|
569
|
+
/**
|
|
570
|
+
* Provide a method that sorts all options in the control. Overriding this
|
|
571
|
+
* prop means that you also have to handle the sort logic for selected versus
|
|
572
|
+
* un-selected items. If you just want to control ordering, consider the
|
|
573
|
+
* `compareItems` prop instead.
|
|
574
|
+
*
|
|
575
|
+
* The return value should be a number whose sign indicates the relative order
|
|
576
|
+
* of the two elements: negative if a is less than b, positive if a is greater
|
|
577
|
+
* than b, and zero if they are equal.
|
|
578
|
+
*
|
|
579
|
+
* sortItems :
|
|
580
|
+
* (items: Array<Item>, {
|
|
581
|
+
* selectedItems: Array<Item>,
|
|
582
|
+
* itemToString: Item => string,
|
|
583
|
+
* compareItems: (itemA: string, itemB: string, {
|
|
584
|
+
* locale: string
|
|
585
|
+
* }) => number,
|
|
586
|
+
* locale: string,
|
|
587
|
+
* }) => Array<Item>
|
|
588
|
+
*/
|
|
460
589
|
sortItems: prop_types.default.func,
|
|
590
|
+
/**
|
|
591
|
+
* Provide text to be used in a `<label>` element that is tied to the
|
|
592
|
+
* multiselect via ARIA attributes.
|
|
593
|
+
*/
|
|
461
594
|
titleText: prop_types.default.node,
|
|
595
|
+
/**
|
|
596
|
+
* Translates component strings using your i18n tool.
|
|
597
|
+
*/
|
|
462
598
|
translateWithId: prop_types.default.func,
|
|
599
|
+
/**
|
|
600
|
+
* Specify 'inline' to create an inline multi-select.
|
|
601
|
+
*/
|
|
463
602
|
type: require_ListBoxPropTypes.ListBoxTypePropType,
|
|
603
|
+
/**
|
|
604
|
+
* Specify title to show title on hover
|
|
605
|
+
*/
|
|
464
606
|
useTitleInItem: prop_types.default.bool,
|
|
607
|
+
/**
|
|
608
|
+
* Specify whether the control is currently in warning state
|
|
609
|
+
*/
|
|
465
610
|
warn: prop_types.default.bool,
|
|
611
|
+
/**
|
|
612
|
+
* Provide the text that is displayed when the control is in warning state
|
|
613
|
+
*/
|
|
466
614
|
warnText: prop_types.default.node
|
|
467
615
|
};
|
|
468
616
|
//#endregion
|
|
@@ -16,7 +16,32 @@ prop_types = require_runtime.__toESM(prop_types);
|
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
17
|
*/
|
|
18
18
|
const sortingPropTypes = {
|
|
19
|
+
/**
|
|
20
|
+
* Provide a compare function that is used to determine the ordering of
|
|
21
|
+
* options. `compareItems` has the following function signature:
|
|
22
|
+
*
|
|
23
|
+
* compareFunction :
|
|
24
|
+
* (itemA: string, itemB: string, { locale: string }) => number
|
|
25
|
+
*/
|
|
19
26
|
compareItems: prop_types.default.func,
|
|
27
|
+
/**
|
|
28
|
+
* Provide a method that sorts all options in the control. Overriding this
|
|
29
|
+
* prop means that you also have to handle the sort logic for selected versus
|
|
30
|
+
* un-selected items. If you just want to control ordering, consider the
|
|
31
|
+
* `compareItems` prop instead.
|
|
32
|
+
*
|
|
33
|
+
* `sortItems` has the following signature:
|
|
34
|
+
*
|
|
35
|
+
* sortItems :
|
|
36
|
+
* (items: Array<Item>, {
|
|
37
|
+
* selectedItems: Array<Item>,
|
|
38
|
+
* itemToString: Item => string,
|
|
39
|
+
* compareItems: (itemA: string, itemB: string, {
|
|
40
|
+
* locale: string
|
|
41
|
+
* }) => number,
|
|
42
|
+
* locale: string,
|
|
43
|
+
* }) => Array<Item>
|
|
44
|
+
*/
|
|
20
45
|
sortItems: prop_types.default.func
|
|
21
46
|
};
|
|
22
47
|
//#endregion
|