@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
@@ -5,16 +5,22 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import { KeyboardEvent, RefObject } from 'react';
8
+ type RegisterItemPayload = {
9
+ ref: RefObject<HTMLLIElement | null>;
10
+ disabled: boolean;
11
+ };
8
12
  type ActionType = {
9
- type: 'enableIcons' | 'enableSelectableItems' | 'registerItem';
10
- payload: any;
13
+ type: 'enableIcons' | 'enableSelectableItems';
14
+ } | {
15
+ type: 'registerItem';
16
+ payload: RegisterItemPayload;
11
17
  };
12
18
  type StateType = {
13
19
  isRoot: boolean;
14
20
  hasIcons: boolean;
15
21
  hasSelectableItems: boolean;
16
22
  size: 'xs' | 'sm' | 'md' | 'lg' | null;
17
- items: any[];
23
+ items: RegisterItemPayload[];
18
24
  requestCloseRoot: (e: Pick<KeyboardEvent<HTMLUListElement>, 'type'>) => void;
19
25
  };
20
26
  declare function menuReducer(state: StateType, action: ActionType): {
@@ -22,19 +28,12 @@ declare function menuReducer(state: StateType, action: ActionType): {
22
28
  isRoot: boolean;
23
29
  hasSelectableItems: boolean;
24
30
  size: "xs" | "sm" | "md" | "lg" | null;
25
- items: any[];
31
+ items: RegisterItemPayload[];
26
32
  requestCloseRoot: (e: Pick<KeyboardEvent<HTMLUListElement>, "type">) => void;
27
33
  };
28
- type DispatchFuncProps = {
29
- type: ActionType['type'];
30
- payload: {
31
- ref: RefObject<HTMLLIElement | null>;
32
- disabled: boolean;
33
- };
34
- };
35
34
  type MenuContextProps = {
36
35
  state: StateType;
37
- dispatch: (props: DispatchFuncProps) => void;
36
+ dispatch: (props: ActionType) => void;
38
37
  };
39
38
  declare const MenuContext: import("react").Context<MenuContextProps>;
40
39
  export { MenuContext, menuReducer };
@@ -198,14 +198,41 @@ const MenuItem = forwardRef(function MenuItem({ children, className, dangerDescr
198
198
  });
199
199
  });
200
200
  MenuItem.propTypes = {
201
+ /**
202
+ * Optionally provide another Menu to create a submenu. props.children can't be used to specify the content of the MenuItem itself. Use props.label instead.
203
+ */
201
204
  children: PropTypes.node,
205
+ /**
206
+ * Additional CSS class names.
207
+ */
202
208
  className: PropTypes.string,
209
+ /**
210
+ * Specify the message read by screen readers for the danger menu item variant
211
+ */
203
212
  dangerDescription: PropTypes.string,
213
+ /**
214
+ * Specify whether the MenuItem is disabled or not.
215
+ */
204
216
  disabled: PropTypes.bool,
217
+ /**
218
+ * Specify the kind of the MenuItem.
219
+ */
205
220
  kind: PropTypes.oneOf(["default", "danger"]),
221
+ /**
222
+ * A required label titling the MenuItem. Will be rendered as its text content.
223
+ */
206
224
  label: PropTypes.string.isRequired,
225
+ /**
226
+ * Provide an optional function to be called when the MenuItem is clicked.
227
+ */
207
228
  onClick: PropTypes.func,
229
+ /**
230
+ * A component used to render an icon.
231
+ */
208
232
  renderIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
233
+ /**
234
+ * Provide a shortcut for the action of this MenuItem. Note that the component will only render it as a hint but not actually register the shortcut.
235
+ */
209
236
  shortcut: PropTypes.string
210
237
  };
211
238
  const MenuItemSelectable = forwardRef(function MenuItemSelectable({ className, defaultSelected, label, onChange, selected, ...rest }, forwardRef) {
@@ -234,10 +261,25 @@ const MenuItemSelectable = forwardRef(function MenuItemSelectable({ className, d
234
261
  });
235
262
  });
236
263
  MenuItemSelectable.propTypes = {
264
+ /**
265
+ * Additional CSS class names.
266
+ */
237
267
  className: PropTypes.string,
268
+ /**
269
+ * Specify whether the option should be selected by default.
270
+ */
238
271
  defaultSelected: PropTypes.bool,
272
+ /**
273
+ * A required label titling this option.
274
+ */
239
275
  label: PropTypes.string.isRequired,
276
+ /**
277
+ * Provide an optional function to be called when the selection state changes.
278
+ */
240
279
  onChange: PropTypes.func,
280
+ /**
281
+ * Pass a bool to props.selected to control the state of this option.
282
+ */
241
283
  selected: PropTypes.bool
242
284
  };
243
285
  const MenuItemGroup = forwardRef(function MenuItemGroup({ children, className, label, ...rest }, forwardRef) {
@@ -254,8 +296,17 @@ const MenuItemGroup = forwardRef(function MenuItemGroup({ children, className, l
254
296
  });
255
297
  });
256
298
  MenuItemGroup.propTypes = {
299
+ /**
300
+ * A collection of MenuItems to be rendered within this group.
301
+ */
257
302
  children: PropTypes.node,
303
+ /**
304
+ * Additional CSS class names.
305
+ */
258
306
  className: PropTypes.string,
307
+ /**
308
+ * A required label titling this group.
309
+ */
259
310
  label: PropTypes.string.isRequired
260
311
  };
261
312
  const MenuItemRadioGroup = forwardRef(function MenuItemRadioGroup({ className, defaultSelectedItem, items, itemToString = defaultItemToString, label, onChange, selectedItem, ...rest }, forwardRef) {
@@ -292,12 +343,33 @@ const MenuItemRadioGroup = forwardRef(function MenuItemRadioGroup({ className, d
292
343
  });
293
344
  });
294
345
  MenuItemRadioGroup.propTypes = {
346
+ /**
347
+ * Additional CSS class names.
348
+ */
295
349
  className: PropTypes.string,
350
+ /**
351
+ * Specify the default selected item. Must match the type of props.items.
352
+ */
296
353
  defaultSelectedItem: PropTypes.any,
354
+ /**
355
+ * Converts an item into a string for display.
356
+ */
297
357
  itemToString: PropTypes.func,
358
+ /**
359
+ * Provide the options for this radio group. Can be of any type, as long as you provide an appropriate props.itemToString function.
360
+ */
298
361
  items: PropTypes.array,
362
+ /**
363
+ * A required label titling this radio group.
364
+ */
299
365
  label: PropTypes.string.isRequired,
366
+ /**
367
+ * Provide an optional function to be called when the selection changes.
368
+ */
300
369
  onChange: PropTypes.func,
370
+ /**
371
+ * Provide props.selectedItem to control the state of this radio group. Must match the type of props.items.
372
+ */
301
373
  selectedItem: PropTypes.any
302
374
  };
303
375
  const MenuItemDivider = forwardRef(function MenuItemDivider({ className, ...rest }, forwardRef) {
@@ -309,6 +381,10 @@ const MenuItemDivider = forwardRef(function MenuItemDivider({ className, ...rest
309
381
  ref: forwardRef
310
382
  });
311
383
  });
312
- MenuItemDivider.propTypes = { className: PropTypes.string };
384
+ MenuItemDivider.propTypes = {
385
+ /**
386
+ * Additional CSS class names.
387
+ */
388
+ className: PropTypes.string };
313
389
  //#endregion
314
390
  export { MenuItem, MenuItemDivider, MenuItemGroup, MenuItemRadioGroup, MenuItemSelectable };
@@ -115,11 +115,29 @@ const MenuButton = forwardRef(({ children, className, disabled, kind = defaultBu
115
115
  });
116
116
  });
117
117
  MenuButton.propTypes = {
118
+ /**
119
+ * A collection of MenuItems to be rendered as actions for this MenuButton.
120
+ */
118
121
  children: PropTypes.node.isRequired,
122
+ /**
123
+ * Additional CSS class names.
124
+ */
119
125
  className: PropTypes.string,
126
+ /**
127
+ * Specify whether the MenuButton should be disabled, or not.
128
+ */
120
129
  disabled: PropTypes.bool,
130
+ /**
131
+ * Specify the type of button to be used as the base for the trigger button.
132
+ */
121
133
  kind: PropTypes.oneOf(validButtonKinds),
134
+ /**
135
+ * Provide the label to be rendered on the trigger button.
136
+ */
122
137
  label: PropTypes.string.isRequired,
138
+ /**
139
+ * Experimental property. Specify how the menu should align with the button element
140
+ */
123
141
  menuAlignment: PropTypes.oneOf([
124
142
  "top",
125
143
  "top-start",
@@ -128,15 +146,30 @@ MenuButton.propTypes = {
128
146
  "bottom-start",
129
147
  "bottom-end"
130
148
  ]),
149
+ /**
150
+ * Specify the size of the button and menu.
151
+ */
131
152
  size: PropTypes.oneOf([
132
153
  "xs",
133
154
  "sm",
134
155
  "md",
135
156
  "lg"
136
157
  ]),
158
+ /**
159
+ * Specify the tabIndex of the button.
160
+ */
137
161
  tabIndex: PropTypes.number,
162
+ /**
163
+ * Specify the background token to use for the menu. Default is 'layer'.
164
+ */
138
165
  menuBackgroundToken: PropTypes.oneOf(["layer", "background"]),
166
+ /**
167
+ * Specify whether a border should be rendered on the menu
168
+ */
139
169
  menuBorder: PropTypes.bool,
170
+ /**
171
+ * Specify a DOM node where the Menu should be rendered in. Defaults to document.body.
172
+ */
140
173
  menuTarget: PropTypes.instanceOf(typeof Element !== "undefined" ? Element : Object)
141
174
  };
142
175
  //#endregion
@@ -483,43 +483,143 @@ const ModalDialog = React.forwardRef(function ModalDialog({ "aria-label": ariaLa
483
483
  });
484
484
  });
485
485
  Modal.propTypes = {
486
+ /**
487
+ * Specify whether the Modal is displaying an alert, error or warning
488
+ * Should go hand in hand with the danger prop.
489
+ */
486
490
  alert: PropTypes.bool,
491
+ /**
492
+ * Required props for the accessibility label of the header
493
+ */
487
494
  ["aria-label"]: requiredIfGivenPropIsTruthy("hasScrollingContent", PropTypes.string),
495
+ /**
496
+ * Provide the contents of your Modal
497
+ */
488
498
  children: PropTypes.node,
499
+ /**
500
+ * Specify an optional className to be applied to the modal root node
501
+ */
489
502
  className: PropTypes.string,
503
+ /**
504
+ * Specify label for the close button of the modal; defaults to close
505
+ */
490
506
  closeButtonLabel: PropTypes.string,
507
+ /**
508
+ * Specify whether the Modal is for dangerous actions
509
+ */
491
510
  danger: PropTypes.bool,
511
+ /**
512
+ * Specify the message read by screen readers for the danger primary button.
513
+ * Defaults to an empty string; provide localized text to opt in.
514
+ */
492
515
  dangerDescription: PropTypes.string,
516
+ /**
517
+ * **Experimental**: Provide a decorator component to be rendered inside the `Modal` component
518
+ */
493
519
  decorator: PropTypes.node,
520
+ /**
521
+ * Specify whether the modal contains scrolling content
522
+ */
494
523
  hasScrollingContent: PropTypes.bool,
524
+ /**
525
+ * Specify the DOM element ID of the top-level node.
526
+ */
495
527
  id: PropTypes.string,
528
+ /**
529
+ * Specify whether or not the Modal content should have any inner padding.
530
+ */
496
531
  isFullWidth: PropTypes.bool,
532
+ /**
533
+ * Provide a ref to return focus to once the modal is closed.
534
+ */
497
535
  launcherButtonRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.oneOfType([typeof HTMLElement !== "undefined" ? PropTypes.instanceOf(HTMLElement) : PropTypes.any, PropTypes.oneOf([null])]).isRequired })]),
536
+ /**
537
+ * Specify the description for the loading text
538
+ */
498
539
  loadingDescription: PropTypes.string,
540
+ /**
541
+ * Specify the description for the loading text
542
+ */
499
543
  loadingIconDescription: PropTypes.string,
544
+ /**
545
+ * loading status
546
+ */
500
547
  loadingStatus: PropTypes.oneOf([
501
548
  "inactive",
502
549
  "active",
503
550
  "finished",
504
551
  "error"
505
552
  ]),
553
+ /**
554
+ * Specify a label to be read by screen readers on the modal root node
555
+ */
506
556
  modalAriaLabel: PropTypes.string,
557
+ /**
558
+ * Specify the content of the modal header title.
559
+ */
507
560
  modalHeading: PropTypes.node,
561
+ /**
562
+ * Specify the content of the modal header label.
563
+ */
508
564
  modalLabel: PropTypes.node,
565
+ /**
566
+ * Specify a handler for keypresses.
567
+ */
509
568
  onKeyDown: PropTypes.func,
569
+ /**
570
+ * Provide an optional handler to be invoked when loading is
571
+ * successful
572
+ */
510
573
  onLoadingSuccess: PropTypes.func,
574
+ /**
575
+ * Specify a handler for closing modal.
576
+ * The handler should care of closing modal, e.g. changing `open` prop.
577
+ */
511
578
  onRequestClose: PropTypes.func,
579
+ /**
580
+ * Specify a handler for "submitting" modal.
581
+ * The handler should care of closing modal, e.g. changing `open` prop, if necessary.
582
+ */
512
583
  onRequestSubmit: PropTypes.func,
584
+ /**
585
+ * Specify a handler for the secondary button.
586
+ * Useful if separate handler from `onRequestClose` is desirable
587
+ */
513
588
  onSecondarySubmit: PropTypes.func,
589
+ /**
590
+ * Specify whether the Modal is currently open
591
+ */
514
592
  open: PropTypes.bool,
593
+ /**
594
+ * Specify whether the modal should be button-less
595
+ */
515
596
  passiveModal: PropTypes.bool,
597
+ /**
598
+ * Prevent closing on click outside of modal
599
+ */
516
600
  preventCloseOnClickOutside: (props, propName) => {
517
- if (!props.passiveModal && props[propName] === false) return new Error(invalidOutsideClickMessage);
601
+ if (!props.passiveModal && props[propName] === false) return /* @__PURE__ */ new Error(invalidOutsideClickMessage);
518
602
  return null;
519
603
  },
604
+ /**
605
+ * Specify whether the Button should be disabled, or not
606
+ */
520
607
  primaryButtonDisabled: PropTypes.bool,
608
+ /**
609
+ * Specify the text for the primary button
610
+ */
521
611
  primaryButtonText: PropTypes.node,
612
+ /**
613
+ * Specify the text for the secondary button
614
+ */
522
615
  secondaryButtonText: PropTypes.node,
616
+ /**
617
+ * Specify an array of config objects for secondary buttons
618
+ * (`Array<{
619
+ * buttonText: string,
620
+ * onClick: function,
621
+ * }>`).
622
+ */
523
623
  secondaryButtons: (props, propName, componentName) => {
524
624
  if (props.secondaryButtons) {
525
625
  if (!Array.isArray(props.secondaryButtons) || props.secondaryButtons.length !== 2) return /* @__PURE__ */ new Error(`${propName} needs to be an array of two button config objects`);
@@ -533,9 +633,23 @@ Modal.propTypes = {
533
633
  }
534
634
  return null;
535
635
  },
636
+ /**
637
+ * Specify a CSS selector that matches the DOM element that should
638
+ * be focused when the Modal opens
639
+ */
536
640
  selectorPrimaryFocus: PropTypes.string,
641
+ /**
642
+ * Specify CSS selectors that match DOM elements working as floating menus.
643
+ * Focusing on those elements won't trigger "focus-wrap" behavior
644
+ */
537
645
  selectorsFloatingMenus: PropTypes.arrayOf(PropTypes.string.isRequired),
646
+ /**
647
+ * Specify if Enter key should be used as "submit" action
648
+ */
538
649
  shouldSubmitOnEnter: PropTypes.bool,
650
+ /**
651
+ * Specify the size variant.
652
+ */
539
653
  size: PropTypes.oneOf(ModalSizes),
540
654
  slug: deprecate(PropTypes.node, "The `slug` prop has been deprecated and will be removed in the next major version. Use the decorator prop instead.")
541
655
  };
@@ -571,45 +571,173 @@ const FilterableMultiSelect = forwardRef(function FilterableMultiSelect({ autoAl
571
571
  });
572
572
  FilterableMultiSelect.displayName = "FilterableMultiSelect";
573
573
  FilterableMultiSelect.propTypes = {
574
+ /**
575
+ * Deprecated, aria-label is no longer needed
576
+ * Specify a label to be read by screen readers on the container node
577
+ */
574
578
  ["aria-label"]: deprecate(PropTypes.string, "ariaLabel / aria-label props are no longer required for FilterableMultiSelect"),
579
+ /**
580
+ * Deprecated, please use `aria-label` instead.
581
+ * Specify a label to be read by screen readers on the container note.
582
+ */
575
583
  ariaLabel: deprecate(PropTypes.string, "ariaLabel / aria-label props are no longer required for FilterableMultiSelect"),
584
+ /**
585
+ * **Experimental**: Will attempt to automatically align the floating
586
+ * element to avoid collisions with the viewport and being clipped by
587
+ * ancestor elements. Requires React v17+
588
+ * @see https://github.com/carbon-design-system/carbon/issues/18714
589
+ */
576
590
  autoAlign: PropTypes.bool,
591
+ /**
592
+ * Specify the text that should be read for screen readers that describes total items selected
593
+ */
577
594
  clearSelectionDescription: PropTypes.string,
595
+ /**
596
+ * Specify the text that should be read for screen readers to clear selection.
597
+ */
578
598
  clearSelectionText: PropTypes.string,
599
+ /**
600
+ * **Experimental**: Provide a decorator component to be rendered inside the `FilterableMultiSelect` component
601
+ */
579
602
  decorator: PropTypes.node,
603
+ /**
604
+ * Provide a method that filters the dropdown options based on the current input. Overriding this
605
+ * prop means that you have to handle the filtering logic when the user types in the text input.
606
+ * Otherwise, a default built-in filtering function will be used.
607
+ */
580
608
  filterItems: PropTypes.func,
609
+ /**
610
+ * Specify the direction of the multiselect dropdown. Can be either top or bottom.
611
+ */
581
612
  direction: PropTypes.oneOf(["top", "bottom"]),
613
+ /**
614
+ * Disable the control
615
+ */
582
616
  disabled: PropTypes.bool,
617
+ /**
618
+ * Additional props passed to Downshift.
619
+ *
620
+ * **Use with caution:** anything you define here overrides the components'
621
+ * internal handling of that prop. Downshift APIs and internals are subject to
622
+ * change, and in some cases they can not be shimmed by Carbon to shield you
623
+ * from potentially breaking changes.
624
+ */
583
625
  downshiftProps: PropTypes.shape(Downshift.propTypes),
626
+ /**
627
+ * Specify whether the title text should be hidden or not
628
+ */
584
629
  hideLabel: PropTypes.bool,
630
+ /**
631
+ * Specify a custom `id`
632
+ */
585
633
  id: PropTypes.string.isRequired,
634
+ /**
635
+ * Allow users to pass in arbitrary items from their collection that are
636
+ * pre-selected
637
+ */
586
638
  initialSelectedItems: PropTypes.array,
639
+ /**
640
+ * Is the current selection invalid?
641
+ */
587
642
  invalid: PropTypes.bool,
643
+ /**
644
+ * If invalid, what is the error?
645
+ */
588
646
  invalidText: PropTypes.node,
647
+ /**
648
+ * Function to render items as custom components instead of strings.
649
+ * Defaults to null and is overridden by a getter
650
+ */
589
651
  itemToElement: PropTypes.func,
652
+ /**
653
+ * Helper function passed to downshift that allows the library to render a
654
+ * given item to a string label. By default, it extracts the `label` field
655
+ * from a given item to serve as the item label in the list.
656
+ */
590
657
  itemToString: PropTypes.func,
658
+ /**
659
+ * We try to stay as generic as possible here to allow individuals to pass
660
+ * in a collection of whatever kind of data structure they prefer
661
+ */
591
662
  items: PropTypes.array.isRequired,
663
+ /**
664
+ * `true` to use the light version.
665
+ */
592
666
  light: deprecate(PropTypes.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."),
667
+ /**
668
+ * Specify the locale of the control. Used for the default `compareItems`
669
+ * used for sorting the list of items in the control.
670
+ */
593
671
  locale: PropTypes.string,
672
+ /**
673
+ * `onChange` is a utility for this controlled component to communicate to a
674
+ * consuming component what kind of internal state changes are occurring.
675
+ */
594
676
  onChange: PropTypes.func,
677
+ /**
678
+ * `onInputValueChange` is a utility for this controlled component to communicate to
679
+ * the currently typed input.
680
+ */
595
681
  onInputValueChange: PropTypes.func,
682
+ /**
683
+ * `onMenuChange` is a utility for this controlled component to communicate to a
684
+ * consuming component that the menu was opened(`true`)/closed(`false`).
685
+ */
596
686
  onMenuChange: PropTypes.func,
687
+ /**
688
+ * Initialize the component with an open(`true`)/closed(`false`) menu.
689
+ */
597
690
  open: PropTypes.bool,
691
+ /**
692
+ * Generic `placeholder` that will be used as the textual representation of
693
+ * what this field is for
694
+ */
598
695
  placeholder: PropTypes.string,
696
+ /**
697
+ * Specify feedback (mode) of the selection.
698
+ * `top`: selected item jumps to top
699
+ * `fixed`: selected item stays at it's position
700
+ * `top-after-reopen`: selected item jump to top after reopen dropdown
701
+ */
599
702
  selectionFeedback: PropTypes.oneOf([
600
703
  "top",
601
704
  "fixed",
602
705
  "top-after-reopen"
603
706
  ]),
707
+ /**
708
+ * Specify the size of the ListBox. Currently supports either `sm`, `md` or `lg` as an option.
709
+ */
604
710
  size: ListBoxSizePropType,
605
711
  slug: deprecate(PropTypes.node, "The `slug` prop has been deprecated and will be removed in the next major version. Use the decorator prop instead."),
606
712
  ...sortingPropTypes,
713
+ /**
714
+ * Provide text to be used in a `<label>` element that is tied to the
715
+ * combobox via ARIA attributes.
716
+ */
607
717
  titleText: PropTypes.node,
718
+ /**
719
+ * Translates component strings using your i18n tool.
720
+ */
608
721
  translateWithId: PropTypes.func,
609
722
  type: ListBoxTypePropType,
723
+ /**
724
+ * Specify title to show title on hover
725
+ */
610
726
  useTitleInItem: PropTypes.bool,
727
+ /**
728
+ * Specify whether the control is currently in warning state
729
+ */
611
730
  warn: PropTypes.bool,
731
+ /**
732
+ * Provide the text that is displayed when the control is in warning state
733
+ */
612
734
  warnText: PropTypes.node,
735
+ /**
736
+ * Specify native input attributes to place on the `<input>`, like maxLength.
737
+ * These are passed to downshift's getInputProps() and will override the
738
+ * internal input props.
739
+ * https://github.com/downshift-js/downshift?tab=readme-ov-file#getinputprops
740
+ */
613
741
  inputProps: PropTypes.object
614
742
  };
615
743
  //#endregion