@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.
Files changed (501) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +994 -994
  2. package/es/components/AILabel/index.js +47 -0
  3. package/es/components/AISkeleton/AISkeletonIcon.js +6 -0
  4. package/es/components/AISkeleton/AISkeletonPlaceholder.js +6 -1
  5. package/es/components/AISkeleton/AISkeletonText.js +15 -0
  6. package/es/components/Accordion/Accordion.Skeleton.js +15 -0
  7. package/es/components/Accordion/Accordion.js +22 -0
  8. package/es/components/Accordion/AccordionItem.js +33 -0
  9. package/es/components/AspectRatio/AspectRatio.js +19 -0
  10. package/es/components/BadgeIndicator/index.js +9 -0
  11. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +12 -0
  12. package/es/components/Breadcrumb/Breadcrumb.js +16 -0
  13. package/es/components/Breadcrumb/BreadcrumbItem.js +12 -0
  14. package/es/components/Button/Button.Skeleton.js +17 -0
  15. package/es/components/Button/Button.js +96 -0
  16. package/es/components/ButtonSet/ButtonSet.js +14 -0
  17. package/es/components/ChatButton/ChatButton.Skeleton.js +6 -0
  18. package/es/components/ChatButton/ChatButton.js +24 -0
  19. package/es/components/Checkbox/Checkbox.Skeleton.js +5 -1
  20. package/es/components/Checkbox/Checkbox.js +57 -0
  21. package/es/components/CheckboxGroup/CheckboxGroup.js +40 -0
  22. package/es/components/ClassPrefix/index.js +3 -0
  23. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +6 -0
  24. package/es/components/CodeSnippet/CodeSnippet.js +76 -0
  25. package/es/components/ComboBox/ComboBox.js +140 -0
  26. package/es/components/ComboButton/index.js +27 -0
  27. package/es/components/ComposedModal/ComposedModal.js +68 -0
  28. package/es/components/ComposedModal/ModalFooter.js +63 -0
  29. package/es/components/ComposedModal/ModalHeader.js +35 -0
  30. package/es/components/ContainedList/ContainedList.js +21 -0
  31. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +18 -0
  32. package/es/components/ContentSwitcher/ContentSwitcher.js +25 -0
  33. package/es/components/Copy/Copy.js +29 -0
  34. package/es/components/CopyButton/CopyButton.js +26 -0
  35. package/es/components/DataTable/DataTable.js +59 -0
  36. package/es/components/DataTable/Table.js +27 -0
  37. package/es/components/DataTable/TableBatchAction.js +10 -0
  38. package/es/components/DataTable/TableBatchActions.js +24 -0
  39. package/es/components/DataTable/TableBody.js +3 -0
  40. package/es/components/DataTable/TableCell.js +15 -0
  41. package/es/components/DataTable/TableContainer.js +18 -0
  42. package/es/components/DataTable/TableDecoratorRow.js +6 -0
  43. package/es/components/DataTable/TableExpandHeader.js +31 -0
  44. package/es/components/DataTable/TableExpandRow.js +29 -0
  45. package/es/components/DataTable/TableExpandedRow.js +9 -0
  46. package/es/components/DataTable/TableHeader.js +35 -0
  47. package/es/components/DataTable/TableRow.js +21 -0
  48. package/es/components/DataTable/TableSelectAll.js +28 -0
  49. package/es/components/DataTable/TableSelectRow.js +31 -0
  50. package/es/components/DataTable/TableSlugRow.js +6 -0
  51. package/es/components/DataTable/TableToolbar.js +15 -0
  52. package/es/components/DataTable/TableToolbarMenu.js +15 -0
  53. package/es/components/DataTable/TableToolbarSearch.js +58 -0
  54. package/es/components/DataTableSkeleton/DataTableSkeleton.js +24 -0
  55. package/es/components/DatePicker/DatePicker.Skeleton.js +12 -0
  56. package/es/components/DatePicker/DatePicker.js +88 -0
  57. package/es/components/DatePickerInput/DatePickerInput.js +79 -0
  58. package/es/components/Dialog/Dialog.js +130 -3
  59. package/es/components/Dropdown/Dropdown.Skeleton.js +9 -0
  60. package/es/components/Dropdown/Dropdown.js +109 -0
  61. package/es/components/FeatureFlags/index.js +3 -0
  62. package/es/components/FileUploader/FileUploader.Skeleton.js +5 -1
  63. package/es/components/FileUploader/FileUploader.js +57 -0
  64. package/es/components/FileUploader/FileUploaderButton.js +47 -0
  65. package/es/components/FileUploader/FileUploaderDropContainer.js +42 -0
  66. package/es/components/FileUploader/FileUploaderItem.js +29 -0
  67. package/es/components/FileUploader/Filename.js +18 -0
  68. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -1
  69. package/es/components/FluidComboBox/FluidComboBox.js +61 -0
  70. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +6 -0
  71. package/es/components/FluidDatePicker/FluidDatePicker.js +21 -0
  72. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -1
  73. package/es/components/FluidDropdown/FluidDropdown.js +65 -0
  74. package/es/components/FluidForm/FluidForm.js +6 -0
  75. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -1
  76. package/es/components/FluidMultiSelect/FluidMultiSelect.js +128 -0
  77. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -1
  78. package/es/components/FluidNumberInput/FluidNumberInput.js +95 -0
  79. package/es/components/FluidSearch/FluidSearch.Skeleton.js +5 -1
  80. package/es/components/FluidSearch/FluidSearch.js +45 -0
  81. package/es/components/FluidSelect/FluidSelect.Skeleton.js +5 -1
  82. package/es/components/FluidSelect/FluidSelect.js +38 -0
  83. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -1
  84. package/es/components/FluidTextArea/FluidTextArea.js +67 -0
  85. package/es/components/FluidTextInput/FluidPasswordInput.js +58 -0
  86. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -1
  87. package/es/components/FluidTextInput/FluidTextInput.js +54 -0
  88. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +6 -0
  89. package/es/components/FluidTimePicker/FluidTimePicker.js +28 -0
  90. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +26 -0
  91. package/es/components/Form/Form.js +6 -0
  92. package/es/components/FormGroup/FormGroup.js +25 -0
  93. package/es/components/FormItem/FormItem.js +6 -0
  94. package/es/components/FormLabel/FormLabel.js +9 -0
  95. package/es/components/Grid/CSSGrid.js +43 -0
  96. package/es/components/Grid/Column.js +86 -0
  97. package/es/components/Grid/ColumnHang.js +9 -0
  98. package/es/components/Grid/FlexGrid.js +24 -0
  99. package/es/components/Grid/Grid.js +27 -0
  100. package/es/components/Grid/GridContext.js +10 -0
  101. package/es/components/Grid/Row.js +17 -0
  102. package/es/components/Heading/index.js +19 -0
  103. package/es/components/Icon/Icon.Skeleton.js +5 -1
  104. package/es/components/IconButton/index.js +68 -0
  105. package/es/components/IconIndicator/index.js +12 -0
  106. package/es/components/IdPrefix/index.js +3 -0
  107. package/es/components/InlineCheckbox/InlineCheckbox.js +34 -0
  108. package/es/components/InlineLoading/InlineLoading.js +19 -0
  109. package/es/components/Layer/index.js +17 -0
  110. package/es/components/Layout/index.js +34 -0
  111. package/es/components/LayoutDirection/LayoutDirection.js +10 -0
  112. package/es/components/Link/Link.d.ts +1 -1
  113. package/es/components/Link/Link.js +28 -0
  114. package/es/components/ListBox/ListBox.js +41 -0
  115. package/es/components/ListBox/ListBoxField.js +17 -0
  116. package/es/components/ListBox/ListBoxMenu.js +6 -0
  117. package/es/components/ListBox/ListBoxMenuIcon.js +7 -0
  118. package/es/components/ListBox/ListBoxMenuItem.js +16 -0
  119. package/es/components/ListBox/ListBoxSelection.d.ts +1 -1
  120. package/es/components/ListBox/ListBoxSelection.js +32 -9
  121. package/es/components/ListBox/next/ListBoxSelection.d.ts +1 -1
  122. package/es/components/ListBox/next/ListBoxSelection.js +41 -6
  123. package/es/components/ListBox/next/ListBoxTrigger.js +7 -0
  124. package/es/components/ListItem/ListItem.js +6 -0
  125. package/es/components/Loading/Loading.js +18 -0
  126. package/es/components/Menu/Menu.js +52 -0
  127. package/es/components/Menu/MenuContext.d.ts +11 -12
  128. package/es/components/Menu/MenuItem.js +77 -1
  129. package/es/components/MenuButton/index.js +33 -0
  130. package/es/components/Modal/Modal.js +115 -1
  131. package/es/components/MultiSelect/FilterableMultiSelect.js +128 -0
  132. package/es/components/MultiSelect/MultiSelect.js +149 -1
  133. package/es/components/MultiSelect/MultiSelectPropTypes.js +25 -0
  134. package/es/components/Notification/Notification.js +207 -0
  135. package/es/components/NumberInput/NumberInput.Skeleton.js +9 -0
  136. package/es/components/NumberInput/NumberInput.js +138 -0
  137. package/es/components/OrderedList/OrderedList.js +15 -0
  138. package/es/components/OverflowMenu/OverflowMenu.js +76 -0
  139. package/es/components/OverflowMenu/next/index.js +30 -0
  140. package/es/components/OverflowMenuItem/OverflowMenuItem.js +36 -0
  141. package/es/components/PageHeader/PageHeader.js +48 -0
  142. package/es/components/Pagination/Pagination.Skeleton.js +5 -1
  143. package/es/components/Pagination/Pagination.d.ts +8 -0
  144. package/es/components/Pagination/Pagination.js +85 -3
  145. package/es/components/Pagination/experimental/PageSelector.js +8 -0
  146. package/es/components/Pagination/experimental/Pagination.js +54 -0
  147. package/es/components/PaginationNav/PaginationNav.js +80 -0
  148. package/es/components/Popover/index.js +58 -0
  149. package/es/components/ProgressBar/ProgressBar.js +27 -0
  150. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +6 -0
  151. package/es/components/ProgressIndicator/ProgressIndicator.js +58 -0
  152. package/es/components/RadioButton/RadioButton.Skeleton.js +5 -1
  153. package/es/components/RadioButton/RadioButton.js +63 -0
  154. package/es/components/RadioButtonGroup/RadioButtonGroup.js +59 -0
  155. package/es/components/RadioTile/RadioTile.js +45 -0
  156. package/es/components/Search/Search.Skeleton.js +9 -0
  157. package/es/components/Search/Search.js +66 -1
  158. package/es/components/Select/Select.Skeleton.js +6 -0
  159. package/es/components/Select/Select.js +82 -19
  160. package/es/components/SelectItem/SelectItem.js +15 -0
  161. package/es/components/SelectItemGroup/SelectItemGroup.js +12 -0
  162. package/es/components/ShapeIndicator/index.js +12 -0
  163. package/es/components/SkeletonIcon/SkeletonIcon.js +5 -1
  164. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +5 -1
  165. package/es/components/SkeletonText/SkeletonText.js +15 -0
  166. package/es/components/Slider/Slider.Skeleton.js +15 -0
  167. package/es/components/Slider/Slider.js +104 -0
  168. package/es/components/Stack/Stack.js +20 -0
  169. package/es/components/StructuredList/StructuredList.Skeleton.js +6 -0
  170. package/es/components/StructuredList/StructuredList.js +97 -0
  171. package/es/components/Switch/IconSwitch.js +47 -0
  172. package/es/components/Switch/Switch.js +30 -0
  173. package/es/components/TabContent/TabContent.js +9 -0
  174. package/es/components/Tabs/Tabs.Skeleton.js +6 -0
  175. package/es/components/Tabs/Tabs.d.ts +15 -1
  176. package/es/components/Tabs/Tabs.js +185 -5
  177. package/es/components/Tag/DismissibleTag.js +43 -0
  178. package/es/components/Tag/OperationalTag.js +22 -0
  179. package/es/components/Tag/SelectableTag.js +31 -0
  180. package/es/components/Tag/Tag.Skeleton.js +7 -0
  181. package/es/components/Tag/Tag.js +41 -0
  182. package/es/components/Text/Text.js +10 -0
  183. package/es/components/Text/TextDirection.js +11 -0
  184. package/es/components/TextArea/TextArea.Skeleton.js +6 -0
  185. package/es/components/TextArea/TextArea.js +80 -0
  186. package/es/components/TextInput/ControlledPasswordInput.js +64 -0
  187. package/es/components/TextInput/PasswordInput.js +83 -0
  188. package/es/components/TextInput/TextInput.Skeleton.js +9 -0
  189. package/es/components/TextInput/TextInput.js +76 -0
  190. package/es/components/Theme/index.js +21 -0
  191. package/es/components/Tile/Tile.js +157 -2
  192. package/es/components/TileGroup/TileGroup.js +28 -0
  193. package/es/components/TimePicker/TimePicker.js +67 -0
  194. package/es/components/TimePickerSelect/TimePickerSelect.js +15 -0
  195. package/es/components/Toggle/Toggle.js +46 -0
  196. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +11 -0
  197. package/es/components/Toggletip/index.js +38 -0
  198. package/es/components/Tooltip/DefinitionTooltip.js +36 -0
  199. package/es/components/Tooltip/Tooltip.js +46 -0
  200. package/es/components/TreeView/TreeNode.js +64 -0
  201. package/es/components/TreeView/TreeView.js +32 -0
  202. package/es/components/UIShell/Content.js +9 -0
  203. package/es/components/UIShell/Header.js +9 -0
  204. package/es/components/UIShell/HeaderContainer.js +9 -0
  205. package/es/components/UIShell/HeaderGlobalAction.js +28 -0
  206. package/es/components/UIShell/HeaderMenu.js +37 -0
  207. package/es/components/UIShell/HeaderMenuButton.js +17 -0
  208. package/es/components/UIShell/HeaderMenuItem.js +25 -0
  209. package/es/components/UIShell/HeaderName.js +18 -0
  210. package/es/components/UIShell/HeaderNavigation.js +10 -0
  211. package/es/components/UIShell/HeaderPanel.js +19 -0
  212. package/es/components/UIShell/HeaderSideNavItems.js +11 -0
  213. package/es/components/UIShell/Link.js +14 -0
  214. package/es/components/UIShell/SideNav.js +53 -0
  215. package/es/components/UIShell/SideNavDetails.js +10 -0
  216. package/es/components/UIShell/SideNavDivider.js +5 -1
  217. package/es/components/UIShell/SideNavFooter.js +11 -0
  218. package/es/components/UIShell/SideNavHeader.js +13 -0
  219. package/es/components/UIShell/SideNavIcon.js +10 -0
  220. package/es/components/UIShell/SideNavItem.js +10 -0
  221. package/es/components/UIShell/SideNavItems.js +11 -0
  222. package/es/components/UIShell/SideNavLink.js +22 -0
  223. package/es/components/UIShell/SideNavLinkText.js +6 -0
  224. package/es/components/UIShell/SideNavMenu.js +31 -0
  225. package/es/components/UIShell/SideNavMenuItem.js +17 -0
  226. package/es/components/UIShell/SideNavSwitcher.js +16 -0
  227. package/es/components/UIShell/SkipToContent.js +11 -0
  228. package/es/components/UIShell/Switcher.js +12 -0
  229. package/es/components/UIShell/SwitcherDivider.js +5 -1
  230. package/es/components/UIShell/SwitcherItem.js +30 -0
  231. package/es/components/UnorderedList/UnorderedList.js +12 -0
  232. package/es/index.d.ts +1 -0
  233. package/es/internal/OptimizedResize.js +6 -2
  234. package/es/internal/usePresence.js +6 -0
  235. package/es/internal/warnAboutDeprecatedReactVersion.d.ts +7 -0
  236. package/lib/components/AILabel/index.js +47 -0
  237. package/lib/components/AISkeleton/AISkeletonIcon.js +6 -0
  238. package/lib/components/AISkeleton/AISkeletonPlaceholder.js +6 -1
  239. package/lib/components/AISkeleton/AISkeletonText.js +15 -0
  240. package/lib/components/Accordion/Accordion.Skeleton.js +15 -0
  241. package/lib/components/Accordion/Accordion.js +22 -0
  242. package/lib/components/Accordion/AccordionItem.js +33 -0
  243. package/lib/components/AspectRatio/AspectRatio.js +19 -0
  244. package/lib/components/BadgeIndicator/index.js +9 -0
  245. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +12 -0
  246. package/lib/components/Breadcrumb/Breadcrumb.js +16 -0
  247. package/lib/components/Breadcrumb/BreadcrumbItem.js +12 -0
  248. package/lib/components/Button/Button.Skeleton.js +17 -0
  249. package/lib/components/Button/Button.js +96 -0
  250. package/lib/components/ButtonSet/ButtonSet.js +14 -0
  251. package/lib/components/ChatButton/ChatButton.Skeleton.js +6 -0
  252. package/lib/components/ChatButton/ChatButton.js +24 -0
  253. package/lib/components/Checkbox/Checkbox.Skeleton.js +5 -1
  254. package/lib/components/Checkbox/Checkbox.js +57 -0
  255. package/lib/components/CheckboxGroup/CheckboxGroup.js +40 -0
  256. package/lib/components/ClassPrefix/index.js +3 -0
  257. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +6 -0
  258. package/lib/components/CodeSnippet/CodeSnippet.js +76 -0
  259. package/lib/components/ComboBox/ComboBox.js +140 -0
  260. package/lib/components/ComboButton/index.js +27 -0
  261. package/lib/components/ComposedModal/ComposedModal.js +68 -0
  262. package/lib/components/ComposedModal/ComposedModalContext.js +0 -1
  263. package/lib/components/ComposedModal/ModalFooter.js +63 -0
  264. package/lib/components/ComposedModal/ModalHeader.js +35 -0
  265. package/lib/components/ComposedModal/useComposedModalState.js +0 -1
  266. package/lib/components/ContainedList/ContainedList.js +21 -0
  267. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +18 -0
  268. package/lib/components/ContainedList/index.js +2 -2
  269. package/lib/components/ContentSwitcher/ContentSwitcher.js +25 -0
  270. package/lib/components/ContextMenu/useContextMenu.js +0 -1
  271. package/lib/components/Copy/Copy.js +29 -0
  272. package/lib/components/CopyButton/CopyButton.js +26 -0
  273. package/lib/components/DataTable/DataTable.js +59 -0
  274. package/lib/components/DataTable/Table.js +27 -0
  275. package/lib/components/DataTable/TableBatchAction.js +10 -0
  276. package/lib/components/DataTable/TableBatchActions.js +24 -0
  277. package/lib/components/DataTable/TableBody.js +3 -0
  278. package/lib/components/DataTable/TableCell.js +15 -0
  279. package/lib/components/DataTable/TableContainer.js +18 -0
  280. package/lib/components/DataTable/TableContext.js +0 -1
  281. package/lib/components/DataTable/TableDecoratorRow.js +6 -0
  282. package/lib/components/DataTable/TableExpandHeader.js +31 -0
  283. package/lib/components/DataTable/TableExpandRow.js +29 -0
  284. package/lib/components/DataTable/TableExpandedRow.js +9 -0
  285. package/lib/components/DataTable/TableHeader.js +35 -0
  286. package/lib/components/DataTable/TableRow.js +21 -0
  287. package/lib/components/DataTable/TableSelectAll.js +28 -0
  288. package/lib/components/DataTable/TableSelectRow.js +31 -0
  289. package/lib/components/DataTable/TableSlugRow.js +6 -0
  290. package/lib/components/DataTable/TableToolbar.js +15 -0
  291. package/lib/components/DataTable/TableToolbarMenu.js +15 -0
  292. package/lib/components/DataTable/TableToolbarSearch.js +58 -0
  293. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +24 -0
  294. package/lib/components/DatePicker/DatePicker.Skeleton.js +12 -0
  295. package/lib/components/DatePicker/DatePicker.js +88 -0
  296. package/lib/components/DatePickerInput/DatePickerInput.js +79 -0
  297. package/lib/components/Dialog/Dialog.js +130 -3
  298. package/lib/components/Dropdown/Dropdown.Skeleton.js +9 -0
  299. package/lib/components/Dropdown/Dropdown.js +109 -0
  300. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +0 -1
  301. package/lib/components/FeatureFlags/index.js +3 -0
  302. package/lib/components/FileUploader/FileUploader.Skeleton.js +5 -1
  303. package/lib/components/FileUploader/FileUploader.js +57 -0
  304. package/lib/components/FileUploader/FileUploaderButton.js +47 -0
  305. package/lib/components/FileUploader/FileUploaderDropContainer.js +42 -0
  306. package/lib/components/FileUploader/FileUploaderItem.js +29 -0
  307. package/lib/components/FileUploader/Filename.js +18 -0
  308. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -1
  309. package/lib/components/FluidComboBox/FluidComboBox.js +61 -0
  310. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +6 -0
  311. package/lib/components/FluidDatePicker/FluidDatePicker.js +21 -0
  312. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -1
  313. package/lib/components/FluidDropdown/FluidDropdown.js +65 -0
  314. package/lib/components/FluidForm/FluidForm.js +6 -0
  315. package/lib/components/FluidForm/FormContext.js +0 -1
  316. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -1
  317. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +128 -0
  318. package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -1
  319. package/lib/components/FluidNumberInput/FluidNumberInput.js +95 -0
  320. package/lib/components/FluidSearch/FluidSearch.Skeleton.js +5 -1
  321. package/lib/components/FluidSearch/FluidSearch.js +45 -0
  322. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +5 -1
  323. package/lib/components/FluidSelect/FluidSelect.js +38 -0
  324. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -1
  325. package/lib/components/FluidTextArea/FluidTextArea.js +67 -0
  326. package/lib/components/FluidTextInput/FluidPasswordInput.js +58 -0
  327. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -1
  328. package/lib/components/FluidTextInput/FluidTextInput.js +54 -0
  329. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +6 -0
  330. package/lib/components/FluidTimePicker/FluidTimePicker.js +28 -0
  331. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +26 -0
  332. package/lib/components/Form/Form.js +6 -0
  333. package/lib/components/FormGroup/FormGroup.js +25 -0
  334. package/lib/components/FormItem/FormItem.js +6 -0
  335. package/lib/components/FormLabel/FormLabel.js +9 -0
  336. package/lib/components/Grid/CSSGrid.js +43 -0
  337. package/lib/components/Grid/Column.js +86 -0
  338. package/lib/components/Grid/ColumnHang.js +9 -0
  339. package/lib/components/Grid/FlexGrid.js +24 -0
  340. package/lib/components/Grid/Grid.js +27 -0
  341. package/lib/components/Grid/GridContext.js +10 -0
  342. package/lib/components/Grid/Row.js +17 -0
  343. package/lib/components/Heading/index.js +19 -0
  344. package/lib/components/Icon/Icon.Skeleton.js +5 -1
  345. package/lib/components/IconButton/index.js +68 -0
  346. package/lib/components/IconIndicator/index.js +12 -0
  347. package/lib/components/IdPrefix/index.js +3 -0
  348. package/lib/components/InlineCheckbox/InlineCheckbox.js +34 -0
  349. package/lib/components/InlineLoading/InlineLoading.js +19 -0
  350. package/lib/components/Layer/index.js +17 -0
  351. package/lib/components/Layout/index.js +34 -0
  352. package/lib/components/LayoutDirection/LayoutDirection.js +10 -0
  353. package/lib/components/LayoutDirection/useLayoutDirection.js +0 -1
  354. package/lib/components/Link/Link.d.ts +1 -1
  355. package/lib/components/Link/Link.js +28 -0
  356. package/lib/components/ListBox/ListBox.js +41 -0
  357. package/lib/components/ListBox/ListBoxField.js +17 -0
  358. package/lib/components/ListBox/ListBoxMenu.js +6 -0
  359. package/lib/components/ListBox/ListBoxMenuIcon.js +7 -0
  360. package/lib/components/ListBox/ListBoxMenuItem.js +16 -0
  361. package/lib/components/ListBox/ListBoxSelection.d.ts +1 -1
  362. package/lib/components/ListBox/ListBoxSelection.js +32 -9
  363. package/lib/components/ListBox/next/ListBoxSelection.d.ts +1 -1
  364. package/lib/components/ListBox/next/ListBoxSelection.js +41 -6
  365. package/lib/components/ListBox/next/ListBoxTrigger.js +7 -0
  366. package/lib/components/ListItem/ListItem.js +6 -0
  367. package/lib/components/Loading/Loading.js +18 -0
  368. package/lib/components/Menu/Menu.js +52 -0
  369. package/lib/components/Menu/MenuContext.d.ts +11 -12
  370. package/lib/components/Menu/MenuContext.js +0 -1
  371. package/lib/components/Menu/MenuItem.js +77 -1
  372. package/lib/components/MenuButton/index.js +33 -0
  373. package/lib/components/Modal/Modal.js +115 -1
  374. package/lib/components/MultiSelect/FilterableMultiSelect.js +128 -0
  375. package/lib/components/MultiSelect/MultiSelect.js +148 -0
  376. package/lib/components/MultiSelect/MultiSelectPropTypes.js +25 -0
  377. package/lib/components/Notification/Notification.js +207 -0
  378. package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -0
  379. package/lib/components/NumberInput/NumberInput.js +138 -0
  380. package/lib/components/OrderedList/OrderedList.js +15 -0
  381. package/lib/components/OverflowMenu/OverflowMenu.js +76 -0
  382. package/lib/components/OverflowMenu/next/index.js +30 -0
  383. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +36 -0
  384. package/lib/components/PageHeader/PageHeader.js +48 -0
  385. package/lib/components/Pagination/Pagination.Skeleton.js +5 -1
  386. package/lib/components/Pagination/Pagination.d.ts +8 -0
  387. package/lib/components/Pagination/Pagination.js +85 -3
  388. package/lib/components/Pagination/experimental/PageSelector.js +8 -0
  389. package/lib/components/Pagination/experimental/Pagination.js +54 -0
  390. package/lib/components/PaginationNav/PaginationNav.js +80 -0
  391. package/lib/components/Popover/index.js +58 -0
  392. package/lib/components/ProgressBar/ProgressBar.js +27 -0
  393. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +6 -0
  394. package/lib/components/ProgressIndicator/ProgressIndicator.js +58 -0
  395. package/lib/components/RadioButton/RadioButton.Skeleton.js +5 -1
  396. package/lib/components/RadioButton/RadioButton.js +63 -0
  397. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +59 -0
  398. package/lib/components/RadioTile/RadioTile.js +45 -0
  399. package/lib/components/Search/Search.Skeleton.js +9 -0
  400. package/lib/components/Search/Search.js +66 -1
  401. package/lib/components/Select/Select.Skeleton.js +6 -0
  402. package/lib/components/Select/Select.js +82 -19
  403. package/lib/components/SelectItem/SelectItem.js +15 -0
  404. package/lib/components/SelectItemGroup/SelectItemGroup.js +12 -0
  405. package/lib/components/ShapeIndicator/index.js +12 -0
  406. package/lib/components/SkeletonIcon/SkeletonIcon.js +5 -1
  407. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +5 -1
  408. package/lib/components/SkeletonText/SkeletonText.js +15 -0
  409. package/lib/components/Slider/Slider.Skeleton.js +15 -0
  410. package/lib/components/Slider/Slider.js +104 -0
  411. package/lib/components/Stack/Stack.js +20 -0
  412. package/lib/components/StructuredList/StructuredList.Skeleton.js +6 -0
  413. package/lib/components/StructuredList/StructuredList.js +97 -0
  414. package/lib/components/Switch/IconSwitch.js +47 -0
  415. package/lib/components/Switch/Switch.js +30 -0
  416. package/lib/components/TabContent/TabContent.js +9 -0
  417. package/lib/components/Tabs/Tabs.Skeleton.js +6 -0
  418. package/lib/components/Tabs/Tabs.d.ts +15 -1
  419. package/lib/components/Tabs/Tabs.js +185 -5
  420. package/lib/components/Tabs/usePressable.js +0 -1
  421. package/lib/components/Tag/DismissibleTag.js +43 -0
  422. package/lib/components/Tag/OperationalTag.js +22 -0
  423. package/lib/components/Tag/SelectableTag.js +31 -0
  424. package/lib/components/Tag/Tag.Skeleton.js +7 -0
  425. package/lib/components/Tag/Tag.js +41 -0
  426. package/lib/components/Text/Text.js +10 -0
  427. package/lib/components/Text/TextDirection.js +11 -0
  428. package/lib/components/Text/TextDirectionContext.js +0 -1
  429. package/lib/components/TextArea/TextArea.Skeleton.js +6 -0
  430. package/lib/components/TextArea/TextArea.js +80 -0
  431. package/lib/components/TextInput/ControlledPasswordInput.js +64 -0
  432. package/lib/components/TextInput/PasswordInput.js +83 -0
  433. package/lib/components/TextInput/TextInput.Skeleton.js +9 -0
  434. package/lib/components/TextInput/TextInput.js +76 -0
  435. package/lib/components/Theme/index.js +21 -0
  436. package/lib/components/Tile/Tile.js +157 -2
  437. package/lib/components/TileGroup/TileGroup.js +28 -0
  438. package/lib/components/TimePicker/TimePicker.js +67 -0
  439. package/lib/components/TimePickerSelect/TimePickerSelect.js +15 -0
  440. package/lib/components/Toggle/Toggle.js +46 -0
  441. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +11 -0
  442. package/lib/components/Toggletip/index.js +38 -0
  443. package/lib/components/Tooltip/DefinitionTooltip.js +36 -0
  444. package/lib/components/Tooltip/Tooltip.js +46 -0
  445. package/lib/components/TreeView/TreeContext.js +0 -1
  446. package/lib/components/TreeView/TreeNode.js +64 -0
  447. package/lib/components/TreeView/TreeView.js +32 -0
  448. package/lib/components/UIShell/Content.js +9 -0
  449. package/lib/components/UIShell/Header.js +9 -0
  450. package/lib/components/UIShell/HeaderContainer.js +9 -0
  451. package/lib/components/UIShell/HeaderGlobalAction.js +28 -0
  452. package/lib/components/UIShell/HeaderMenu.js +37 -0
  453. package/lib/components/UIShell/HeaderMenuButton.js +17 -0
  454. package/lib/components/UIShell/HeaderMenuItem.js +25 -0
  455. package/lib/components/UIShell/HeaderName.js +18 -0
  456. package/lib/components/UIShell/HeaderNavigation.js +10 -0
  457. package/lib/components/UIShell/HeaderPanel.js +19 -0
  458. package/lib/components/UIShell/HeaderSideNavItems.js +11 -0
  459. package/lib/components/UIShell/Link.js +14 -0
  460. package/lib/components/UIShell/SideNav.js +53 -0
  461. package/lib/components/UIShell/SideNavDetails.js +10 -0
  462. package/lib/components/UIShell/SideNavDivider.js +5 -1
  463. package/lib/components/UIShell/SideNavFooter.js +11 -0
  464. package/lib/components/UIShell/SideNavHeader.js +13 -0
  465. package/lib/components/UIShell/SideNavIcon.js +10 -0
  466. package/lib/components/UIShell/SideNavItem.js +10 -0
  467. package/lib/components/UIShell/SideNavItems.js +11 -0
  468. package/lib/components/UIShell/SideNavLink.js +22 -0
  469. package/lib/components/UIShell/SideNavLinkText.js +6 -0
  470. package/lib/components/UIShell/SideNavMenu.js +31 -0
  471. package/lib/components/UIShell/SideNavMenuItem.js +17 -0
  472. package/lib/components/UIShell/SideNavSwitcher.js +16 -0
  473. package/lib/components/UIShell/SkipToContent.js +11 -0
  474. package/lib/components/UIShell/Switcher.js +12 -0
  475. package/lib/components/UIShell/SwitcherDivider.js +5 -1
  476. package/lib/components/UIShell/SwitcherItem.js +30 -0
  477. package/lib/components/UnorderedList/UnorderedList.js +12 -0
  478. package/lib/feature-flags.js +0 -1
  479. package/lib/index.d.ts +1 -0
  480. package/lib/index.js +241 -241
  481. package/lib/internal/OptimizedResize.js +6 -2
  482. package/lib/internal/useAttachedMenu.js +0 -1
  483. package/lib/internal/useControllableState.js +0 -1
  484. package/lib/internal/useDelayedState.js +0 -1
  485. package/lib/internal/useEvent.js +0 -1
  486. package/lib/internal/useIsomorphicEffect.js +0 -1
  487. package/lib/internal/useMatchMedia.js +0 -1
  488. package/lib/internal/useMergedRefs.js +0 -1
  489. package/lib/internal/useNoInteractiveChildren.js +0 -1
  490. package/lib/internal/useOutsideClick.js +0 -1
  491. package/lib/internal/useOverflowItems.js +0 -1
  492. package/lib/internal/usePresence.js +6 -1
  493. package/lib/internal/usePresenceContext.js +0 -1
  494. package/lib/internal/usePreviousValue.js +0 -1
  495. package/lib/internal/useResizeObserver.js +0 -1
  496. package/lib/internal/useSavedCallback.js +0 -1
  497. package/lib/internal/utils.js +0 -1
  498. package/lib/internal/warnAboutDeprecatedReactVersion.d.ts +7 -0
  499. package/lib/internal/wrapFocus.js +0 -1
  500. package/package.json +9 -9
  501. 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