@carbon/react 1.29.0 → 1.30.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 (580) hide show
  1. package/es/_virtual/_rollupPluginBabelHelpers.js +16 -5
  2. package/es/components/Accordion/Accordion.Skeleton.js +0 -7
  3. package/es/components/Accordion/Accordion.js +1 -8
  4. package/es/components/Accordion/AccordionItem.js +5 -19
  5. package/es/components/AspectRatio/AspectRatio.js +0 -5
  6. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +0 -3
  7. package/es/components/Breadcrumb/Breadcrumb.js +0 -3
  8. package/es/components/Breadcrumb/BreadcrumbItem.js +0 -7
  9. package/es/components/Button/Button.Skeleton.js +2 -7
  10. package/es/components/Button/Button.js +2 -36
  11. package/es/components/ButtonSet/ButtonSet.js +0 -2
  12. package/es/components/Checkbox/Checkbox.Skeleton.js +0 -1
  13. package/es/components/Checkbox/Checkbox.js +4 -20
  14. package/es/components/CheckboxGroup/CheckboxGroup.js +0 -11
  15. package/es/components/ClassPrefix/index.d.ts +26 -0
  16. package/es/components/ClassPrefix/index.js +0 -2
  17. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +0 -5
  18. package/es/components/CodeSnippet/CodeSnippet.js +6 -45
  19. package/es/components/ComboBox/ComboBox.js +12 -79
  20. package/es/components/ComboBox/tools/filter.js +0 -1
  21. package/es/components/ComboButton/index.js +0 -14
  22. package/es/components/ComposedModal/ComposedModal.js +2 -32
  23. package/es/components/ComposedModal/ModalFooter.js +0 -21
  24. package/es/components/ComposedModal/ModalHeader.js +0 -12
  25. package/es/components/ContainedList/ContainedList.js +5 -32
  26. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +0 -6
  27. package/es/components/ContentSwitcher/ContentSwitcher.js +11 -23
  28. package/es/components/ContextMenu/useContextMenu.js +1 -6
  29. package/es/components/Copy/Copy.js +8 -31
  30. package/es/components/CopyButton/CopyButton.js +0 -4
  31. package/es/components/DangerButton/DangerButton.js +0 -1
  32. package/es/components/DataTable/DataTable.js +171 -91
  33. package/es/components/DataTable/Table.js +0 -6
  34. package/es/components/DataTable/TableBatchAction.js +0 -4
  35. package/es/components/DataTable/TableBatchActions.js +0 -8
  36. package/es/components/DataTable/TableBody.js +0 -1
  37. package/es/components/DataTable/TableContainer.js +0 -5
  38. package/es/components/DataTable/TableExpandHeader.js +0 -7
  39. package/es/components/DataTable/TableExpandRow.js +0 -6
  40. package/es/components/DataTable/TableExpandedRow.js +0 -6
  41. package/es/components/DataTable/TableHeader.d.ts +1 -1
  42. package/es/components/DataTable/TableHeader.js +3 -19
  43. package/es/components/DataTable/TableRow.js +4 -5
  44. package/es/components/DataTable/TableSelectAll.js +0 -8
  45. package/es/components/DataTable/TableSelectRow.js +2 -10
  46. package/es/components/DataTable/TableToolbar.js +0 -3
  47. package/es/components/DataTable/TableToolbarMenu.d.ts +1 -1
  48. package/es/components/DataTable/TableToolbarMenu.js +3 -6
  49. package/es/components/DataTable/TableToolbarSearch.js +2 -30
  50. package/es/components/DataTable/state/getDerivedStateFromProps.js +0 -4
  51. package/es/components/DataTable/state/sorting.js +5 -8
  52. package/es/components/DataTable/tools/denormalize.js +2 -2
  53. package/es/components/DataTable/tools/filter.js +0 -2
  54. package/es/components/DataTable/tools/instanceId.js +0 -1
  55. package/es/components/DataTable/tools/normalize.js +10 -10
  56. package/es/components/DataTable/tools/sorting.js +5 -13
  57. package/es/components/DataTableSkeleton/DataTableSkeleton.js +5 -20
  58. package/es/components/DatePicker/DatePicker.Skeleton.js +0 -6
  59. package/es/components/DatePicker/DatePicker.js +154 -177
  60. package/es/components/DatePicker/plugins/appendToPlugin.js +3 -7
  61. package/es/components/DatePicker/plugins/fixEventsPlugin.js +14 -25
  62. package/es/components/DatePicker/plugins/rangePlugin.js +2 -7
  63. package/es/components/DatePickerInput/DatePickerInput.js +2 -28
  64. package/es/components/Dropdown/Dropdown.Skeleton.js +0 -2
  65. package/es/components/Dropdown/Dropdown.js +43 -52
  66. package/es/components/ErrorBoundary/ErrorBoundary.js +0 -10
  67. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +0 -1
  68. package/es/components/ExpandableSearch/ExpandableSearch.js +1 -10
  69. package/es/components/FeatureFlags/index.js +8 -20
  70. package/es/components/FileUploader/FileUploader.Skeleton.js +0 -2
  71. package/es/components/FileUploader/FileUploader.js +3 -38
  72. package/es/components/FileUploader/FileUploaderButton.js +3 -24
  73. package/es/components/FileUploader/FileUploaderDropContainer.js +1 -28
  74. package/es/components/FileUploader/FileUploaderItem.js +1 -11
  75. package/es/components/FileUploader/Filename.js +0 -10
  76. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +0 -1
  77. package/es/components/FluidComboBox/FluidComboBox.js +0 -18
  78. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +0 -2
  79. package/es/components/FluidDatePicker/FluidDatePicker.js +0 -6
  80. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +2 -1
  81. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +0 -1
  82. package/es/components/FluidDropdown/FluidDropdown.js +0 -18
  83. package/es/components/FluidForm/FluidForm.js +0 -2
  84. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +0 -1
  85. package/es/components/FluidMultiSelect/FluidMultiSelect.js +0 -19
  86. package/es/components/FluidSelect/FluidSelect.Skeleton.js +0 -1
  87. package/es/components/FluidSelect/FluidSelect.js +0 -10
  88. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +0 -1
  89. package/es/components/FluidTextArea/FluidTextArea.js +0 -20
  90. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +0 -1
  91. package/es/components/FluidTextInput/FluidTextInput.js +0 -14
  92. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +0 -3
  93. package/es/components/FluidTimePicker/FluidTimePicker.js +1 -11
  94. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +0 -6
  95. package/es/components/Form/Form.d.ts +23 -0
  96. package/es/components/Form/Form.js +3 -6
  97. package/es/components/Form/index.d.ts +7 -0
  98. package/es/components/FormGroup/FormGroup.js +0 -7
  99. package/es/components/FormItem/FormItem.js +0 -2
  100. package/es/components/FormLabel/FormLabel.js +1 -7
  101. package/es/components/Grid/CSSGrid.js +2 -15
  102. package/es/components/Grid/Column.js +18 -59
  103. package/es/components/Grid/ColumnHang.js +2 -5
  104. package/es/components/Grid/FlexGrid.js +2 -8
  105. package/es/components/Grid/Grid.js +0 -8
  106. package/es/components/Grid/GridContext.js +1 -3
  107. package/es/components/Grid/Row.js +2 -7
  108. package/es/components/Heading/index.js +0 -4
  109. package/es/components/Icon/Icon.Skeleton.js +2 -2
  110. package/es/components/IconButton/index.js +0 -10
  111. package/es/components/IdPrefix/index.js +0 -2
  112. package/es/components/InlineCheckbox/InlineCheckbox.js +0 -14
  113. package/es/components/InlineLoading/InlineLoading.js +0 -12
  114. package/es/components/Layer/index.js +3 -6
  115. package/es/components/Layout/LayoutDirection.js +0 -3
  116. package/es/components/Layout/useLayoutDirection.js +0 -1
  117. package/es/components/Link/Link.js +3 -10
  118. package/es/components/ListBox/ListBox.js +2 -13
  119. package/es/components/ListBox/ListBoxField.js +0 -5
  120. package/es/components/ListBox/ListBoxMenuIcon.js +0 -4
  121. package/es/components/ListBox/ListBoxMenuItem.js +2 -6
  122. package/es/components/ListBox/ListBoxPropTypes.d.ts +2 -2
  123. package/es/components/ListBox/ListBoxSelection.js +1 -13
  124. package/es/components/ListBox/next/ListBoxSelection.js +1 -14
  125. package/es/components/ListBox/next/ListBoxTrigger.js +1 -3
  126. package/es/components/ListItem/ListItem.d.ts +23 -0
  127. package/es/components/ListItem/ListItem.js +4 -8
  128. package/es/components/ListItem/index.d.ts +7 -0
  129. package/es/components/Loading/Loading.js +0 -6
  130. package/es/components/Menu/Menu.js +22 -40
  131. package/es/components/Menu/MenuContext.js +4 -5
  132. package/es/components/Menu/MenuItem.js +5 -39
  133. package/es/components/MenuButton/index.js +0 -9
  134. package/es/components/Modal/Modal.js +0 -43
  135. package/es/components/ModalWrapper/ModalWrapper.js +2 -15
  136. package/es/components/MultiSelect/FilterableMultiSelect.js +2 -60
  137. package/es/components/MultiSelect/MultiSelect.js +22 -70
  138. package/es/components/MultiSelect/MultiSelectPropTypes.js +0 -1
  139. package/es/components/MultiSelect/index.js +0 -1
  140. package/es/components/MultiSelect/tools/itemToString.js +0 -2
  141. package/es/components/MultiSelect/tools/sorting.js +3 -4
  142. package/es/components/Notification/Notification.js +0 -78
  143. package/es/components/NumberInput/NumberInput.Skeleton.js +0 -2
  144. package/es/components/NumberInput/NumberInput.js +3 -60
  145. package/es/components/OrderedList/OrderedList.d.ts +39 -0
  146. package/es/components/OrderedList/OrderedList.js +7 -19
  147. package/es/components/{Form/index.js → OrderedList/index.d.ts} +1 -3
  148. package/es/components/OverflowMenu/OverflowMenu.js +65 -86
  149. package/es/components/OverflowMenuItem/OverflowMenuItem.js +6 -23
  150. package/es/components/OverflowMenuV2/index.js +0 -5
  151. package/es/components/Pagination/Pagination.Skeleton.js +0 -2
  152. package/es/components/Pagination/Pagination.js +11 -47
  153. package/es/components/Pagination/experimental/PageSelector.js +0 -10
  154. package/es/components/Pagination/experimental/Pagination.js +2 -48
  155. package/es/components/PaginationNav/PaginationNav.js +15 -59
  156. package/es/components/Popover/index.d.ts +14 -8
  157. package/es/components/Popover/index.js +44 -48
  158. package/es/components/PrimaryButton/PrimaryButton.js +0 -1
  159. package/es/components/ProgressBar/ProgressBar.js +0 -15
  160. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +0 -4
  161. package/es/components/ProgressIndicator/ProgressIndicator.js +2 -40
  162. package/es/components/RadioButton/RadioButton.Skeleton.js +0 -1
  163. package/es/components/RadioButton/RadioButton.js +0 -13
  164. package/es/components/RadioButtonGroup/RadioButtonGroup.js +3 -23
  165. package/es/components/RadioTile/RadioTile.js +0 -12
  166. package/es/components/Search/Search.Skeleton.js +0 -2
  167. package/es/components/Search/Search.js +1 -28
  168. package/es/components/SecondaryButton/SecondaryButton.js +0 -1
  169. package/es/components/Select/Select.Skeleton.js +0 -2
  170. package/es/components/Select/Select.d.ts +1 -1
  171. package/es/components/Select/Select.js +6 -33
  172. package/es/components/SelectItem/SelectItem.js +0 -5
  173. package/es/components/SelectItemGroup/SelectItemGroup.d.ts +0 -1
  174. package/es/components/SelectItemGroup/SelectItemGroup.js +1 -7
  175. package/es/components/SkeletonIcon/SkeletonIcon.js +0 -2
  176. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +0 -1
  177. package/es/components/SkeletonText/SkeletonText.js +0 -12
  178. package/es/components/Slider/Slider.Skeleton.js +0 -2
  179. package/es/components/Slider/Slider.d.ts +0 -1
  180. package/es/components/Slider/Slider.js +112 -135
  181. package/es/components/Stack/Stack.js +1 -8
  182. package/es/components/StructuredList/StructuredList.Skeleton.js +0 -5
  183. package/es/components/StructuredList/StructuredList.js +1 -25
  184. package/es/components/Switch/IconSwitch.js +0 -18
  185. package/es/components/Switch/Switch.js +0 -11
  186. package/es/components/TabContent/TabContent.js +2 -6
  187. package/es/components/Tabs/Tabs.Skeleton.js +0 -4
  188. package/es/components/Tabs/Tabs.js +135 -104
  189. package/es/components/Tabs/usePressable.js +18 -31
  190. package/es/components/Tag/Tag.Skeleton.js +0 -2
  191. package/es/components/Tag/Tag.js +0 -15
  192. package/es/components/Text/Text.js +5 -18
  193. package/es/components/Text/TextDirection.js +0 -3
  194. package/es/components/Text/TextDirectionContext.js +0 -1
  195. package/es/components/Text/createTextComponent.js +0 -3
  196. package/es/components/TextArea/TextArea.Skeleton.js +0 -2
  197. package/es/components/TextArea/TextArea.js +11 -33
  198. package/es/components/TextInput/ControlledPasswordInput.js +0 -20
  199. package/es/components/TextInput/PasswordInput.js +0 -25
  200. package/es/components/TextInput/TextInput.Skeleton.js +0 -2
  201. package/es/components/TextInput/TextInput.d.ts +1 -1
  202. package/es/components/TextInput/TextInput.js +5 -33
  203. package/es/components/TextInput/util.js +3 -5
  204. package/es/components/Theme/index.js +1 -6
  205. package/es/components/Tile/Tile.js +32 -59
  206. package/es/components/TileGroup/TileGroup.js +1 -22
  207. package/es/components/TimePicker/TimePicker.js +6 -32
  208. package/es/components/TimePickerSelect/TimePickerSelect.js +2 -5
  209. package/es/components/Toggle/Toggle.Skeleton.js +0 -8
  210. package/es/components/Toggle/Toggle.js +0 -16
  211. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +0 -7
  212. package/es/components/Toggletip/index.d.ts +148 -0
  213. package/es/components/Toggletip/index.js +20 -44
  214. package/es/components/Tooltip/DefinitionTooltip.js +0 -11
  215. package/es/components/Tooltip/Tooltip.d.ts +1 -1
  216. package/es/components/Tooltip/Tooltip.js +4 -21
  217. package/es/components/TreeView/TreeNode.js +21 -66
  218. package/es/components/TreeView/TreeView.js +11 -67
  219. package/es/components/UIShell/Content.js +2 -4
  220. package/es/components/UIShell/Header.js +0 -2
  221. package/es/components/UIShell/HeaderContainer.d.ts +33 -0
  222. package/es/components/UIShell/HeaderContainer.js +13 -11
  223. package/es/components/UIShell/HeaderGlobalAction.js +0 -6
  224. package/es/components/UIShell/HeaderGlobalBar.js +0 -1
  225. package/es/components/UIShell/HeaderMenu.js +32 -31
  226. package/es/components/UIShell/HeaderMenuButton.js +2 -4
  227. package/es/components/UIShell/HeaderMenuItem.js +0 -8
  228. package/es/components/UIShell/HeaderName.js +0 -5
  229. package/es/components/UIShell/HeaderNavigation.js +0 -2
  230. package/es/components/UIShell/HeaderPanel.js +0 -2
  231. package/es/components/UIShell/HeaderSideNavItems.js +0 -2
  232. package/es/components/UIShell/Link.js +2 -3
  233. package/es/components/UIShell/SideNav.d.ts +3 -1
  234. package/es/components/UIShell/SideNav.js +44 -36
  235. package/es/components/UIShell/SideNavDetails.js +0 -3
  236. package/es/components/UIShell/SideNavDivider.js +0 -1
  237. package/es/components/UIShell/SideNavFooter.js +1 -4
  238. package/es/components/UIShell/SideNavHeader.js +0 -4
  239. package/es/components/UIShell/SideNavIcon.js +0 -3
  240. package/es/components/UIShell/SideNavItem.js +0 -3
  241. package/es/components/UIShell/SideNavItems.js +2 -6
  242. package/es/components/UIShell/SideNavLink.js +3 -7
  243. package/es/components/UIShell/SideNavLinkText.js +0 -2
  244. package/es/components/UIShell/SideNavMenu.js +0 -16
  245. package/es/components/UIShell/SideNavMenuItem.js +0 -2
  246. package/es/components/UIShell/SideNavSwitcher.js +2 -5
  247. package/es/components/UIShell/SkipToContent.d.ts +32 -0
  248. package/es/components/UIShell/SkipToContent.js +8 -15
  249. package/es/components/UIShell/Switcher.js +0 -2
  250. package/es/components/UIShell/SwitcherDivider.js +0 -1
  251. package/es/components/UIShell/SwitcherItem.js +0 -3
  252. package/es/components/UnorderedList/UnorderedList.d.ts +34 -0
  253. package/es/components/UnorderedList/UnorderedList.js +6 -16
  254. package/es/components/UnorderedList/index.d.ts +7 -0
  255. package/es/index.js +7 -8
  256. package/es/internal/ClickListener.js +3 -13
  257. package/es/internal/FloatingMenu.js +57 -63
  258. package/es/internal/OptimizedResize.js +6 -12
  259. package/es/internal/Selection.js +2 -25
  260. package/es/internal/createClassWrapper.js +0 -2
  261. package/es/internal/deprecateFieldOnObject.js +0 -4
  262. package/es/internal/focus/index.js +0 -1
  263. package/es/internal/keyboard/keys.js +2 -1
  264. package/es/internal/keyboard/match.js +1 -6
  265. package/es/internal/keyboard/navigation.js +8 -7
  266. package/es/internal/useAnnouncer.js +0 -1
  267. package/es/internal/useAttachedMenu.js +1 -9
  268. package/es/internal/useControllableState.js +6 -13
  269. package/es/internal/useDelayedState.js +2 -4
  270. package/es/internal/useEffectOnce.js +0 -1
  271. package/es/internal/useEvent.js +61 -3
  272. package/es/internal/useId.js +2 -5
  273. package/es/internal/useIsomorphicEffect.js +1 -0
  274. package/es/internal/useMergedRefs.js +2 -2
  275. package/es/internal/useNoInteractiveChildren.js +2 -13
  276. package/es/internal/useNormalizedInputProps.js +0 -3
  277. package/es/internal/useSavedCallback.js +1 -2
  278. package/es/internal/warning.js +0 -3
  279. package/es/internal/wrapFocus.js +1 -8
  280. package/es/prop-types/deprecate.js +2 -5
  281. package/es/prop-types/isRequiredOneOf.js +2 -5
  282. package/es/prop-types/requiredIfGivenPropIsTruthy.js +0 -2
  283. package/es/tools/array.js +0 -3
  284. package/es/tools/events.js +0 -3
  285. package/es/tools/mergeRefs.js +0 -2
  286. package/es/tools/wrapComponent.js +2 -5
  287. package/lib/_virtual/_rollupPluginBabelHelpers.js +17 -4
  288. package/lib/components/Accordion/Accordion.Skeleton.js +0 -7
  289. package/lib/components/Accordion/Accordion.js +1 -27
  290. package/lib/components/Accordion/AccordionItem.js +5 -19
  291. package/lib/components/AspectRatio/AspectRatio.js +0 -5
  292. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +0 -3
  293. package/lib/components/Breadcrumb/Breadcrumb.js +0 -3
  294. package/lib/components/Breadcrumb/BreadcrumbItem.js +0 -7
  295. package/lib/components/Button/Button.Skeleton.js +2 -26
  296. package/lib/components/Button/Button.js +2 -36
  297. package/lib/components/ButtonSet/ButtonSet.js +0 -2
  298. package/lib/components/Checkbox/Checkbox.Skeleton.js +0 -1
  299. package/lib/components/Checkbox/Checkbox.js +4 -20
  300. package/lib/components/CheckboxGroup/CheckboxGroup.js +0 -11
  301. package/lib/components/ClassPrefix/index.d.ts +26 -0
  302. package/lib/components/ClassPrefix/index.js +0 -2
  303. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +0 -5
  304. package/lib/components/CodeSnippet/CodeSnippet.js +6 -45
  305. package/lib/components/ComboBox/ComboBox.js +19 -86
  306. package/lib/components/ComboBox/tools/filter.js +0 -1
  307. package/lib/components/ComboButton/index.js +0 -14
  308. package/lib/components/ComposedModal/ComposedModal.js +2 -32
  309. package/lib/components/ComposedModal/ModalFooter.js +0 -21
  310. package/lib/components/ComposedModal/ModalHeader.js +0 -12
  311. package/lib/components/ContainedList/ContainedList.js +5 -32
  312. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +0 -6
  313. package/lib/components/ContentSwitcher/ContentSwitcher.js +11 -23
  314. package/lib/components/ContextMenu/useContextMenu.js +1 -6
  315. package/lib/components/Copy/Copy.js +8 -50
  316. package/lib/components/CopyButton/CopyButton.js +0 -4
  317. package/lib/components/DangerButton/DangerButton.js +0 -1
  318. package/lib/components/DataTable/DataTable.js +171 -91
  319. package/lib/components/DataTable/Table.js +0 -6
  320. package/lib/components/DataTable/TableBatchAction.js +0 -4
  321. package/lib/components/DataTable/TableBatchActions.js +0 -8
  322. package/lib/components/DataTable/TableBody.js +0 -1
  323. package/lib/components/DataTable/TableContainer.js +0 -5
  324. package/lib/components/DataTable/TableExpandHeader.js +0 -7
  325. package/lib/components/DataTable/TableExpandRow.js +0 -6
  326. package/lib/components/DataTable/TableExpandedRow.js +0 -6
  327. package/lib/components/DataTable/TableHeader.d.ts +1 -1
  328. package/lib/components/DataTable/TableHeader.js +3 -19
  329. package/lib/components/DataTable/TableRow.js +4 -5
  330. package/lib/components/DataTable/TableSelectAll.js +0 -8
  331. package/lib/components/DataTable/TableSelectRow.js +2 -10
  332. package/lib/components/DataTable/TableToolbar.js +0 -3
  333. package/lib/components/DataTable/TableToolbarMenu.d.ts +1 -1
  334. package/lib/components/DataTable/TableToolbarMenu.js +3 -6
  335. package/lib/components/DataTable/TableToolbarSearch.js +2 -30
  336. package/lib/components/DataTable/state/getDerivedStateFromProps.js +0 -4
  337. package/lib/components/DataTable/state/sorting.js +5 -8
  338. package/lib/components/DataTable/tools/denormalize.js +2 -2
  339. package/lib/components/DataTable/tools/filter.js +0 -2
  340. package/lib/components/DataTable/tools/instanceId.js +0 -1
  341. package/lib/components/DataTable/tools/normalize.js +10 -10
  342. package/lib/components/DataTable/tools/sorting.js +5 -13
  343. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +5 -20
  344. package/lib/components/DatePicker/DatePicker.Skeleton.js +0 -6
  345. package/lib/components/DatePicker/DatePicker.js +154 -177
  346. package/lib/components/DatePicker/plugins/appendToPlugin.js +3 -7
  347. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +14 -25
  348. package/lib/components/DatePicker/plugins/rangePlugin.js +2 -7
  349. package/lib/components/DatePickerInput/DatePickerInput.js +2 -28
  350. package/lib/components/Dropdown/Dropdown.Skeleton.js +0 -2
  351. package/lib/components/Dropdown/Dropdown.js +50 -59
  352. package/lib/components/ErrorBoundary/ErrorBoundary.js +0 -10
  353. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +0 -1
  354. package/lib/components/ExpandableSearch/ExpandableSearch.js +1 -10
  355. package/lib/components/FeatureFlags/index.js +8 -20
  356. package/lib/components/FileUploader/FileUploader.Skeleton.js +0 -2
  357. package/lib/components/FileUploader/FileUploader.js +3 -57
  358. package/lib/components/FileUploader/FileUploaderButton.js +3 -43
  359. package/lib/components/FileUploader/FileUploaderDropContainer.js +1 -28
  360. package/lib/components/FileUploader/FileUploaderItem.js +1 -30
  361. package/lib/components/FileUploader/Filename.js +0 -10
  362. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +0 -1
  363. package/lib/components/FluidComboBox/FluidComboBox.js +0 -18
  364. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +0 -2
  365. package/lib/components/FluidDatePicker/FluidDatePicker.js +0 -6
  366. package/lib/components/FluidDatePickerInput/FluidDatePickerInput.js +2 -1
  367. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +0 -1
  368. package/lib/components/FluidDropdown/FluidDropdown.js +0 -18
  369. package/lib/components/FluidForm/FluidForm.js +0 -2
  370. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +0 -1
  371. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +0 -19
  372. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +0 -1
  373. package/lib/components/FluidSelect/FluidSelect.js +0 -10
  374. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +0 -1
  375. package/lib/components/FluidTextArea/FluidTextArea.js +0 -20
  376. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +0 -1
  377. package/lib/components/FluidTextInput/FluidTextInput.js +0 -14
  378. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +0 -3
  379. package/lib/components/FluidTimePicker/FluidTimePicker.js +1 -11
  380. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +0 -6
  381. package/lib/components/Form/Form.d.ts +23 -0
  382. package/lib/components/Form/Form.js +3 -6
  383. package/lib/components/Form/index.d.ts +7 -0
  384. package/lib/components/FormGroup/FormGroup.js +0 -7
  385. package/lib/components/FormItem/FormItem.js +0 -2
  386. package/lib/components/FormLabel/FormLabel.js +1 -26
  387. package/lib/components/Grid/CSSGrid.js +2 -15
  388. package/lib/components/Grid/Column.js +18 -59
  389. package/lib/components/Grid/ColumnHang.js +2 -5
  390. package/lib/components/Grid/FlexGrid.js +2 -8
  391. package/lib/components/Grid/Grid.js +0 -8
  392. package/lib/components/Grid/GridContext.js +1 -3
  393. package/lib/components/Grid/Row.js +2 -7
  394. package/lib/components/Heading/index.js +0 -4
  395. package/lib/components/Icon/Icon.Skeleton.js +2 -2
  396. package/lib/components/IconButton/index.js +0 -10
  397. package/lib/components/IdPrefix/index.js +0 -2
  398. package/lib/components/InlineCheckbox/InlineCheckbox.js +0 -14
  399. package/lib/components/InlineLoading/InlineLoading.js +0 -12
  400. package/lib/components/Layer/index.js +3 -6
  401. package/lib/components/Layout/LayoutDirection.js +0 -3
  402. package/lib/components/Layout/useLayoutDirection.js +0 -1
  403. package/lib/components/Link/Link.js +3 -10
  404. package/lib/components/ListBox/ListBox.js +2 -13
  405. package/lib/components/ListBox/ListBoxField.js +0 -5
  406. package/lib/components/ListBox/ListBoxMenuIcon.js +0 -4
  407. package/lib/components/ListBox/ListBoxMenuItem.js +2 -6
  408. package/lib/components/ListBox/ListBoxPropTypes.d.ts +2 -2
  409. package/lib/components/ListBox/ListBoxSelection.js +1 -13
  410. package/lib/components/ListBox/next/ListBoxSelection.js +1 -14
  411. package/lib/components/ListBox/next/ListBoxTrigger.js +1 -3
  412. package/lib/components/ListItem/ListItem.d.ts +23 -0
  413. package/lib/components/ListItem/ListItem.js +4 -8
  414. package/lib/components/ListItem/index.d.ts +7 -0
  415. package/lib/components/Loading/Loading.js +0 -6
  416. package/lib/components/Menu/Menu.js +22 -40
  417. package/lib/components/Menu/MenuContext.js +4 -5
  418. package/lib/components/Menu/MenuItem.js +5 -39
  419. package/lib/components/MenuButton/index.js +0 -9
  420. package/lib/components/Modal/Modal.js +0 -43
  421. package/lib/components/ModalWrapper/ModalWrapper.js +2 -15
  422. package/lib/components/MultiSelect/FilterableMultiSelect.js +8 -66
  423. package/lib/components/MultiSelect/MultiSelect.js +30 -78
  424. package/lib/components/MultiSelect/MultiSelectPropTypes.js +0 -1
  425. package/lib/components/MultiSelect/index.js +0 -1
  426. package/lib/components/MultiSelect/tools/itemToString.js +0 -2
  427. package/lib/components/MultiSelect/tools/sorting.js +3 -4
  428. package/lib/components/Notification/Notification.js +0 -78
  429. package/lib/components/NumberInput/NumberInput.Skeleton.js +0 -2
  430. package/lib/components/NumberInput/NumberInput.js +3 -60
  431. package/lib/components/OrderedList/OrderedList.d.ts +39 -0
  432. package/lib/components/OrderedList/OrderedList.js +7 -19
  433. package/lib/components/OrderedList/index.d.ts +7 -0
  434. package/lib/components/OverflowMenu/OverflowMenu.js +65 -86
  435. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +6 -23
  436. package/lib/components/OverflowMenuV2/index.js +0 -5
  437. package/lib/components/Pagination/Pagination.Skeleton.js +0 -2
  438. package/lib/components/Pagination/Pagination.js +11 -47
  439. package/lib/components/Pagination/experimental/PageSelector.js +0 -10
  440. package/lib/components/Pagination/experimental/Pagination.js +2 -67
  441. package/lib/components/PaginationNav/PaginationNav.js +15 -78
  442. package/lib/components/Popover/index.d.ts +14 -8
  443. package/lib/components/Popover/index.js +44 -48
  444. package/lib/components/PrimaryButton/PrimaryButton.js +0 -1
  445. package/lib/components/ProgressBar/ProgressBar.js +0 -15
  446. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +0 -4
  447. package/lib/components/ProgressIndicator/ProgressIndicator.js +2 -40
  448. package/lib/components/RadioButton/RadioButton.Skeleton.js +0 -1
  449. package/lib/components/RadioButton/RadioButton.js +0 -13
  450. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +3 -23
  451. package/lib/components/RadioTile/RadioTile.js +0 -12
  452. package/lib/components/Search/Search.Skeleton.js +0 -2
  453. package/lib/components/Search/Search.js +1 -28
  454. package/lib/components/SecondaryButton/SecondaryButton.js +0 -1
  455. package/lib/components/Select/Select.Skeleton.js +0 -2
  456. package/lib/components/Select/Select.d.ts +1 -1
  457. package/lib/components/Select/Select.js +6 -33
  458. package/lib/components/SelectItem/SelectItem.js +0 -5
  459. package/lib/components/SelectItemGroup/SelectItemGroup.d.ts +0 -1
  460. package/lib/components/SelectItemGroup/SelectItemGroup.js +1 -26
  461. package/lib/components/SkeletonIcon/SkeletonIcon.js +0 -2
  462. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +0 -1
  463. package/lib/components/SkeletonText/SkeletonText.js +0 -12
  464. package/lib/components/Slider/Slider.Skeleton.js +0 -2
  465. package/lib/components/Slider/Slider.d.ts +0 -1
  466. package/lib/components/Slider/Slider.js +112 -154
  467. package/lib/components/Stack/Stack.js +1 -8
  468. package/lib/components/StructuredList/StructuredList.Skeleton.js +0 -5
  469. package/lib/components/StructuredList/StructuredList.js +1 -25
  470. package/lib/components/Switch/IconSwitch.js +0 -18
  471. package/lib/components/Switch/Switch.js +0 -11
  472. package/lib/components/TabContent/TabContent.js +2 -6
  473. package/lib/components/Tabs/Tabs.Skeleton.js +0 -4
  474. package/lib/components/Tabs/Tabs.js +133 -102
  475. package/lib/components/Tabs/usePressable.js +18 -31
  476. package/lib/components/Tag/Tag.Skeleton.js +0 -2
  477. package/lib/components/Tag/Tag.js +0 -15
  478. package/lib/components/Text/Text.js +5 -18
  479. package/lib/components/Text/TextDirection.js +0 -3
  480. package/lib/components/Text/TextDirectionContext.js +0 -1
  481. package/lib/components/Text/createTextComponent.js +0 -3
  482. package/lib/components/TextArea/TextArea.Skeleton.js +0 -2
  483. package/lib/components/TextArea/TextArea.js +10 -32
  484. package/lib/components/TextInput/ControlledPasswordInput.js +0 -20
  485. package/lib/components/TextInput/PasswordInput.js +0 -25
  486. package/lib/components/TextInput/TextInput.Skeleton.js +0 -2
  487. package/lib/components/TextInput/TextInput.d.ts +1 -1
  488. package/lib/components/TextInput/TextInput.js +5 -52
  489. package/lib/components/TextInput/util.js +3 -5
  490. package/lib/components/Theme/index.js +1 -6
  491. package/lib/components/Tile/Tile.js +31 -58
  492. package/lib/components/TileGroup/TileGroup.js +1 -22
  493. package/lib/components/TimePicker/TimePicker.js +6 -32
  494. package/lib/components/TimePickerSelect/TimePickerSelect.js +2 -5
  495. package/lib/components/Toggle/Toggle.Skeleton.js +0 -8
  496. package/lib/components/Toggle/Toggle.js +0 -16
  497. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +0 -7
  498. package/lib/components/Toggletip/index.d.ts +148 -0
  499. package/lib/components/Toggletip/index.js +20 -44
  500. package/lib/components/Tooltip/DefinitionTooltip.js +0 -11
  501. package/lib/components/Tooltip/Tooltip.d.ts +1 -1
  502. package/lib/components/Tooltip/Tooltip.js +4 -21
  503. package/lib/components/TreeView/TreeNode.js +21 -66
  504. package/lib/components/TreeView/TreeView.js +11 -67
  505. package/lib/components/UIShell/Content.js +2 -4
  506. package/lib/components/UIShell/Header.js +0 -2
  507. package/lib/components/UIShell/HeaderContainer.d.ts +33 -0
  508. package/lib/components/UIShell/HeaderContainer.js +13 -11
  509. package/lib/components/UIShell/HeaderGlobalAction.js +0 -6
  510. package/lib/components/UIShell/HeaderGlobalBar.js +0 -1
  511. package/lib/components/UIShell/HeaderMenu.js +32 -31
  512. package/lib/components/UIShell/HeaderMenuButton.js +2 -4
  513. package/lib/components/UIShell/HeaderMenuItem.js +0 -8
  514. package/lib/components/UIShell/HeaderName.js +0 -5
  515. package/lib/components/UIShell/HeaderNavigation.js +0 -2
  516. package/lib/components/UIShell/HeaderPanel.js +0 -2
  517. package/lib/components/UIShell/HeaderSideNavItems.js +0 -2
  518. package/lib/components/UIShell/Link.js +2 -3
  519. package/lib/components/UIShell/SideNav.d.ts +3 -1
  520. package/lib/components/UIShell/SideNav.js +43 -35
  521. package/lib/components/UIShell/SideNavDetails.js +0 -3
  522. package/lib/components/UIShell/SideNavDivider.js +0 -1
  523. package/lib/components/UIShell/SideNavFooter.js +1 -4
  524. package/lib/components/UIShell/SideNavHeader.js +0 -4
  525. package/lib/components/UIShell/SideNavIcon.js +0 -3
  526. package/lib/components/UIShell/SideNavItem.js +0 -3
  527. package/lib/components/UIShell/SideNavItems.js +2 -6
  528. package/lib/components/UIShell/SideNavLink.js +3 -7
  529. package/lib/components/UIShell/SideNavLinkText.js +0 -2
  530. package/lib/components/UIShell/SideNavMenu.js +0 -16
  531. package/lib/components/UIShell/SideNavMenuItem.js +0 -2
  532. package/lib/components/UIShell/SideNavSwitcher.js +2 -5
  533. package/lib/components/UIShell/SkipToContent.d.ts +32 -0
  534. package/lib/components/UIShell/SkipToContent.js +8 -15
  535. package/lib/components/UIShell/Switcher.js +0 -2
  536. package/lib/components/UIShell/SwitcherDivider.js +0 -1
  537. package/lib/components/UIShell/SwitcherItem.js +0 -3
  538. package/lib/components/UnorderedList/UnorderedList.d.ts +34 -0
  539. package/lib/components/UnorderedList/UnorderedList.js +6 -16
  540. package/lib/components/UnorderedList/index.d.ts +7 -0
  541. package/lib/index.js +42 -43
  542. package/lib/internal/ClickListener.js +3 -13
  543. package/lib/internal/FloatingMenu.js +57 -63
  544. package/lib/internal/OptimizedResize.js +6 -12
  545. package/lib/internal/Selection.js +2 -25
  546. package/lib/internal/createClassWrapper.js +0 -2
  547. package/lib/internal/deprecateFieldOnObject.js +0 -4
  548. package/lib/internal/focus/index.js +0 -1
  549. package/lib/internal/keyboard/keys.js +2 -1
  550. package/lib/internal/keyboard/match.js +1 -6
  551. package/lib/internal/keyboard/navigation.js +8 -7
  552. package/lib/internal/useAnnouncer.js +0 -1
  553. package/lib/internal/useAttachedMenu.js +1 -9
  554. package/lib/internal/useControllableState.js +6 -13
  555. package/lib/internal/useDelayedState.js +2 -4
  556. package/lib/internal/useEffectOnce.js +0 -1
  557. package/lib/internal/useEvent.js +61 -2
  558. package/lib/internal/useId.js +2 -5
  559. package/lib/internal/useIsomorphicEffect.js +1 -0
  560. package/lib/internal/useMergedRefs.js +2 -2
  561. package/lib/internal/useNoInteractiveChildren.js +2 -13
  562. package/lib/internal/useNormalizedInputProps.js +0 -3
  563. package/lib/internal/useSavedCallback.js +1 -2
  564. package/lib/internal/warning.js +0 -3
  565. package/lib/internal/wrapFocus.js +1 -8
  566. package/lib/prop-types/deprecate.js +2 -5
  567. package/lib/prop-types/isRequiredOneOf.js +2 -5
  568. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +0 -2
  569. package/lib/tools/array.js +0 -3
  570. package/lib/tools/events.js +0 -3
  571. package/lib/tools/mergeRefs.js +0 -2
  572. package/lib/tools/wrapComponent.js +2 -5
  573. package/package.json +9 -9
  574. package/es/components/Tab/Tab.js +0 -185
  575. package/es/components/Tab/index.js +0 -14
  576. package/es/components/TimePickerSelect/index.js +0 -13
  577. package/lib/components/Form/index.js +0 -17
  578. package/lib/components/Tab/Tab.js +0 -214
  579. package/lib/components/Tab/index.js +0 -39
  580. package/lib/components/TimePickerSelect/index.js +0 -38
@@ -14,7 +14,6 @@ import { PrefixContext } from '../../internal/usePrefix.js';
14
14
  class ToggleSkeleton extends React__default.Component {
15
15
  render() {
16
16
  var _div;
17
-
18
17
  const {
19
18
  id,
20
19
  labelText,
@@ -47,22 +46,17 @@ class ToggleSkeleton extends React__default.Component {
47
46
  }))));
48
47
  });
49
48
  }
50
-
51
49
  }
52
-
53
50
  _defineProperty(ToggleSkeleton, "propTypes", {
54
51
  ['aria-label']: PropTypes.string.isRequired,
55
-
56
52
  /**
57
53
  * Specify an optional className to add to the form item wrapper.
58
54
  */
59
55
  className: PropTypes.string,
60
-
61
56
  /**
62
57
  * Provide an id that unique represents the underlying `<input>`
63
58
  */
64
59
  id: PropTypes.string,
65
-
66
60
  /**
67
61
  * Provide the text that will be read by a screen reader when visiting this
68
62
  * control
@@ -70,13 +64,11 @@ _defineProperty(ToggleSkeleton, "propTypes", {
70
64
  * provided
71
65
  */
72
66
  labelText: PropTypes.string,
73
-
74
67
  /**
75
68
  * Specify the size of the Toggle. Currently only supports 'sm' or 'md' (default)
76
69
  */
77
70
  size: PropTypes.oneOf(['sm', 'md'])
78
71
  });
79
-
80
72
  _defineProperty(ToggleSkeleton, "defaultProps", {
81
73
  ['aria-label']: 'Toggle is loading',
82
74
  size: 'md'
@@ -38,17 +38,14 @@ function Toggle(_ref) {
38
38
  onChange: onToggle,
39
39
  defaultValue: defaultToggled
40
40
  });
41
-
42
41
  function handleClick(e) {
43
42
  if (!readOnly) {
44
43
  setChecked(!checked);
45
44
  }
46
-
47
45
  if (onClick) {
48
46
  onClick(e);
49
47
  }
50
48
  }
51
-
52
49
  const isSm = size === 'sm';
53
50
  const sideLabel = hideLabel ? labelText : checked ? labelB : labelA;
54
51
  const renderSideLabel = !(hideLabel && !labelText);
@@ -119,43 +116,35 @@ Toggle.propTypes = {
119
116
  * Specify another element's id to be used as the label for this toggle
120
117
  */
121
118
  'aria-labelledby': PropTypes.string,
122
-
123
119
  /**
124
120
  * Specify a custom className to apply to the form-item node
125
121
  */
126
122
  className: PropTypes.string,
127
-
128
123
  /**
129
124
  * Specify whether the toggle should be on by default
130
125
  */
131
126
  defaultToggled: PropTypes.bool,
132
-
133
127
  /**
134
128
  * Whether this control should be disabled
135
129
  */
136
130
  disabled: PropTypes.bool,
137
-
138
131
  /**
139
132
  * If true, the side labels (props.labelA and props.labelB) will be replaced by
140
133
  * props.labelText (if passed), so that the toggle doesn't render a top label.
141
134
  */
142
135
  hideLabel: PropTypes.bool,
143
-
144
136
  /**
145
137
  * Provide an id that unique represents the underlying `<button>`
146
138
  */
147
139
  id: PropTypes.string.isRequired,
148
-
149
140
  /**
150
141
  * Specify the label for the "off" position
151
142
  */
152
143
  labelA: PropTypes.node,
153
-
154
144
  /**
155
145
  * Specify the label for the "on" position
156
146
  */
157
147
  labelB: PropTypes.node,
158
-
159
148
  /**
160
149
  * Provide the text that will be read by a screen reader when visiting this
161
150
  * control. This should be provided unless 'aria-labelledby' is set instead
@@ -163,27 +152,22 @@ Toggle.propTypes = {
163
152
  * toggle's id.
164
153
  */
165
154
  labelText: PropTypes.string,
166
-
167
155
  /**
168
156
  * Provide an event listener that is called when the control is clicked
169
157
  */
170
158
  onClick: PropTypes.func,
171
-
172
159
  /**
173
160
  * Provide an event listener that is called when the control is toggled
174
161
  */
175
162
  onToggle: PropTypes.func,
176
-
177
163
  /**
178
164
  * Whether the toggle should be read-only
179
165
  */
180
166
  readOnly: PropTypes.bool,
181
-
182
167
  /**
183
168
  * Specify the size of the Toggle. Currently only supports 'sm' or 'md' (default)
184
169
  */
185
170
  size: PropTypes.oneOf(['sm', 'md']),
186
-
187
171
  /**
188
172
  * Specify whether the control is toggled
189
173
  */
@@ -12,7 +12,6 @@ import cx from 'classnames';
12
12
  import { PrefixContext } from '../../internal/usePrefix.js';
13
13
 
14
14
  var _path;
15
-
16
15
  class ToggleSmallSkeleton extends React__default.Component {
17
16
  render() {
18
17
  const {
@@ -45,22 +44,17 @@ class ToggleSmallSkeleton extends React__default.Component {
45
44
  }))))));
46
45
  });
47
46
  }
48
-
49
47
  }
50
-
51
48
  _defineProperty(ToggleSmallSkeleton, "propTypes", {
52
49
  ['aria-label']: PropTypes.string.isRequired,
53
-
54
50
  /**
55
51
  * Specify an optional className to add to the form item wrapper.
56
52
  */
57
53
  className: PropTypes.string,
58
-
59
54
  /**
60
55
  * Provide an id that unique represents the underlying `<input>`
61
56
  */
62
57
  id: PropTypes.string,
63
-
64
58
  /**
65
59
  * Provide the text that will be read by a screen reader when visiting this
66
60
  * control
@@ -69,7 +63,6 @@ _defineProperty(ToggleSmallSkeleton, "propTypes", {
69
63
  */
70
64
  labelText: PropTypes.string
71
65
  });
72
-
73
66
  _defineProperty(ToggleSmallSkeleton, "defaultProps", {
74
67
  ['aria-label']: 'Toggle is loading'
75
68
  });
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2023
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import PropTypes from 'prop-types';
8
+ import { type ElementType, type ReactNode } from 'react';
9
+ import { type PopoverAlignment } from '../Popover';
10
+ type ToggletipLabelProps<E extends ElementType> = {
11
+ as?: E | undefined;
12
+ children?: ReactNode;
13
+ className?: string | undefined;
14
+ };
15
+ /**
16
+ * Used to render the label for a Toggletip
17
+ */
18
+ export declare function ToggletipLabel<E extends ElementType>({ as: BaseComponent, children, className: customClassName, }: ToggletipLabelProps<E>): JSX.Element;
19
+ export declare namespace ToggletipLabel {
20
+ var propTypes: {
21
+ /**
22
+ * Provide a custom element or component to render the top-level node for the
23
+ * component.
24
+ */
25
+ as: PropTypes.Requireable<PropTypes.ReactComponentLike>;
26
+ /**
27
+ * Custom children to be rendered as the content of the label
28
+ */
29
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
30
+ /**
31
+ * Provide a custom class name to be added to the outermost node in the
32
+ * component
33
+ */
34
+ className: PropTypes.Requireable<string>;
35
+ };
36
+ }
37
+ interface ToggletipProps<E extends ElementType> {
38
+ align?: PopoverAlignment | undefined;
39
+ as?: E | undefined;
40
+ className?: string | undefined;
41
+ children?: ReactNode;
42
+ defaultOpen?: boolean | undefined;
43
+ }
44
+ /**
45
+ * Used as a container for the button and content of a toggletip. This component
46
+ * is responsible for coordinating between interactions with the button and the
47
+ * visibility of the content
48
+ */
49
+ export declare function Toggletip<E extends ElementType = 'span'>({ align, as, className: customClassName, children, defaultOpen, }: ToggletipProps<E>): JSX.Element;
50
+ export declare namespace Toggletip {
51
+ var propTypes: {
52
+ /**
53
+ * Specify how the toggletip should align with the button
54
+ */
55
+ align: PropTypes.Requireable<string>;
56
+ /**
57
+ * Provide a custom element or component to render the top-level node for the
58
+ * component.
59
+ */
60
+ as: PropTypes.Requireable<PropTypes.ReactComponentLike>;
61
+ /**
62
+ * Custom children to be rendered as the content of the label
63
+ */
64
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
65
+ /**
66
+ * Provide a custom class name to be added to the outermost node in the
67
+ * component
68
+ */
69
+ className: PropTypes.Requireable<string>;
70
+ /**
71
+ * Specify if the toggletip should be open by default
72
+ */
73
+ defaultOpen: PropTypes.Requireable<boolean>;
74
+ };
75
+ }
76
+ interface ToggletipButtonProps {
77
+ children?: ReactNode;
78
+ className?: string | undefined;
79
+ label?: string | undefined;
80
+ }
81
+ /**
82
+ * `ToggletipButton` controls the visibility of the Toggletip through mouse
83
+ * clicks and keyboard interactions.
84
+ */
85
+ export declare function ToggletipButton({ children, className: customClassName, label, }: ToggletipButtonProps): JSX.Element;
86
+ export declare namespace ToggletipButton {
87
+ var propTypes: {
88
+ /**
89
+ * Custom children to be rendered as the content of the label
90
+ */
91
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
92
+ /**
93
+ * Provide a custom class name to be added to the outermost node in the
94
+ * component
95
+ */
96
+ className: PropTypes.Requireable<string>;
97
+ /**
98
+ * Provide an accessible label for this button
99
+ */
100
+ label: PropTypes.Requireable<string>;
101
+ };
102
+ }
103
+ interface ToggletipContentProps {
104
+ children?: ReactNode;
105
+ className?: string | undefined;
106
+ }
107
+ /**
108
+ * `ToggletipContent` is a wrapper around `PopoverContent`. It places the
109
+ * `children` passed in as a prop inside of `PopoverContent` so that they will
110
+ * be rendered inside of the popover for this component.
111
+ */
112
+ export declare function ToggletipContent({ children, className: customClassName, }: ToggletipContentProps): JSX.Element;
113
+ export declare namespace ToggletipContent {
114
+ var propTypes: {
115
+ /**
116
+ * Custom children to be rendered as the content of the label
117
+ */
118
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
119
+ /**
120
+ * Provide a custom class name to be added to the outermost node in the
121
+ * component
122
+ */
123
+ className: PropTypes.Requireable<string>;
124
+ };
125
+ }
126
+ interface ToggleTipActionsProps {
127
+ children?: ReactNode;
128
+ className?: string | undefined;
129
+ }
130
+ /**
131
+ * `ToggletipActions` is a container for one or two actions present at the base
132
+ * of a toggletip. It is used for layout of these items.
133
+ */
134
+ export declare function ToggletipActions({ children, className: customClassName, }: ToggleTipActionsProps): JSX.Element;
135
+ export declare namespace ToggletipActions {
136
+ var propTypes: {
137
+ /**
138
+ * Custom children to be rendered as the content of the label
139
+ */
140
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
141
+ /**
142
+ * Provide a custom class name to be added to the outermost node in the
143
+ * component
144
+ */
145
+ className: PropTypes.Requireable<string>;
146
+ };
147
+ }
148
+ export {};
@@ -19,7 +19,6 @@ import { Escape } from '../../internal/keyboard/keys.js';
19
19
  /**
20
20
  * Used to render the label for a Toggletip
21
21
  */
22
-
23
22
  function ToggletipLabel(_ref) {
24
23
  let {
25
24
  as: BaseComponent = 'span',
@@ -28,33 +27,30 @@ function ToggletipLabel(_ref) {
28
27
  } = _ref;
29
28
  const prefix = usePrefix();
30
29
  const className = cx(`${prefix}--toggletip-label`, customClassName);
31
- return /*#__PURE__*/React__default.createElement(BaseComponent, {
30
+ const BaseComponentAsAny = BaseComponent;
31
+ return /*#__PURE__*/React__default.createElement(BaseComponentAsAny, {
32
32
  className: className
33
33
  }, children);
34
34
  }
35
-
36
35
  ToggletipLabel.propTypes = {
37
36
  /**
38
37
  * Provide a custom element or component to render the top-level node for the
39
38
  * component.
40
39
  */
41
- as: PropTypes.oneOfType([PropTypes.string, PropTypes.elementType]),
42
-
40
+ as: PropTypes.elementType,
43
41
  /**
44
42
  * Custom children to be rendered as the content of the label
45
43
  */
46
44
  children: PropTypes.node,
47
-
48
45
  /**
49
46
  * Provide a custom class name to be added to the outermost node in the
50
47
  * component
51
48
  */
52
49
  className: PropTypes.string
53
- }; // Used to coordinate accessibility props between button and content along with
50
+ };
51
+ // Used to coordinate accessibility props between button and content along with
54
52
  // the actions to open and close the toggletip
55
-
56
- const ToggletipContext = /*#__PURE__*/React__default.createContext();
57
-
53
+ const ToggletipContext = /*#__PURE__*/React__default.createContext(undefined);
58
54
  function useToggletip() {
59
55
  return useContext(ToggletipContext);
60
56
  }
@@ -63,8 +59,6 @@ function useToggletip() {
63
59
  * is responsible for coordinating between interactions with the button and the
64
60
  * visibility of the content
65
61
  */
66
-
67
-
68
62
  function Toggletip(_ref2) {
69
63
  let {
70
64
  align,
@@ -73,7 +67,7 @@ function Toggletip(_ref2) {
73
67
  children,
74
68
  defaultOpen = false
75
69
  } = _ref2;
76
- const ref = useRef();
70
+ const ref = useRef(null);
77
71
  const [open, setOpen] = useState(defaultOpen);
78
72
  const prefix = usePrefix();
79
73
  const id = useId();
@@ -98,39 +92,36 @@ function Toggletip(_ref2) {
98
92
  id
99
93
  }
100
94
  };
101
-
102
- function onKeyDown(event) {
95
+ const onKeyDown = event => {
103
96
  if (open && match(event, Escape)) {
104
- actions.close(); // If the menu is closed while focus is still inside the menu, it should return to the trigger button (#12922)
105
-
106
- const button = ref.current.children[0];
97
+ actions.close();
107
98
 
108
- if (button && button.type === 'button') {
99
+ // If the menu is closed while focus is still inside the menu, it should return to the trigger button (#12922)
100
+ const button = ref.current?.children[0];
101
+ if (button instanceof HTMLButtonElement) {
109
102
  button.focus();
110
103
  }
111
104
  }
112
- }
113
-
114
- function handleBlur(event) {
105
+ };
106
+ const handleBlur = event => {
115
107
  // Do not close if the menu itself is clicked, should only close on focus out
116
108
  if (open && event.relatedTarget === null) {
117
109
  return;
118
110
  }
119
-
120
111
  if (!event.currentTarget.contains(event.relatedTarget)) {
121
112
  // The menu should be closed when focus leaves the `Toggletip` (#12922)
122
113
  actions.close();
123
114
  }
124
- } // If the `Toggletip` is the last focusable item in the tab order, it shoudl also close when the browser window loses focus (#12922)
125
-
115
+ };
126
116
 
117
+ // If the `Toggletip` is the last focusable item in the tab order, it shoudl also close when the browser window loses focus (#12922)
127
118
  useWindowEvent('blur', () => {
128
119
  if (open) {
129
120
  actions.close();
130
121
  }
131
122
  });
132
123
  useWindowEvent('click', event => {
133
- if (open && !ref.current.contains(event.target)) {
124
+ if (open && ref.current && !ref.current.contains(event.target)) {
134
125
  actions.close();
135
126
  }
136
127
  });
@@ -149,30 +140,25 @@ function Toggletip(_ref2) {
149
140
  ref: ref
150
141
  }, children));
151
142
  }
152
-
153
143
  Toggletip.propTypes = {
154
144
  /**
155
145
  * Specify how the toggletip should align with the button
156
146
  */
157
147
  align: PropTypes.oneOf(['top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right', 'left', 'left-bottom', 'left-top', 'right', 'right-bottom', 'right-top']),
158
-
159
148
  /**
160
149
  * Provide a custom element or component to render the top-level node for the
161
150
  * component.
162
151
  */
163
- as: PropTypes.oneOfType([PropTypes.string, PropTypes.elementType]),
164
-
152
+ as: PropTypes.elementType,
165
153
  /**
166
154
  * Custom children to be rendered as the content of the label
167
155
  */
168
156
  children: PropTypes.node,
169
-
170
157
  /**
171
158
  * Provide a custom class name to be added to the outermost node in the
172
159
  * component
173
160
  */
174
161
  className: PropTypes.string,
175
-
176
162
  /**
177
163
  * Specify if the toggletip should be open by default
178
164
  */
@@ -182,7 +168,6 @@ Toggletip.propTypes = {
182
168
  * `ToggletipButton` controls the visibility of the Toggletip through mouse
183
169
  * clicks and keyboard interactions.
184
170
  */
185
-
186
171
  function ToggletipButton(_ref3) {
187
172
  let {
188
173
  children,
@@ -192,25 +177,22 @@ function ToggletipButton(_ref3) {
192
177
  const toggletip = useToggletip();
193
178
  const prefix = usePrefix();
194
179
  const className = cx(`${prefix}--toggletip-button`, customClassName);
195
- return /*#__PURE__*/React__default.createElement("button", _extends({}, toggletip.buttonProps, {
180
+ return /*#__PURE__*/React__default.createElement("button", _extends({}, toggletip?.buttonProps, {
196
181
  "aria-label": label,
197
182
  type: "button",
198
183
  className: className
199
184
  }), children);
200
185
  }
201
-
202
186
  ToggletipButton.propTypes = {
203
187
  /**
204
188
  * Custom children to be rendered as the content of the label
205
189
  */
206
190
  children: PropTypes.node,
207
-
208
191
  /**
209
192
  * Provide a custom class name to be added to the outermost node in the
210
193
  * component
211
194
  */
212
195
  className: PropTypes.string,
213
-
214
196
  /**
215
197
  * Provide an accessible label for this button
216
198
  */
@@ -221,7 +203,6 @@ ToggletipButton.propTypes = {
221
203
  * `children` passed in as a prop inside of `PopoverContent` so that they will
222
204
  * be rendered inside of the popover for this component.
223
205
  */
224
-
225
206
  function ToggletipContent(_ref4) {
226
207
  let {
227
208
  children,
@@ -231,17 +212,15 @@ function ToggletipContent(_ref4) {
231
212
  const prefix = usePrefix();
232
213
  return /*#__PURE__*/React__default.createElement(PopoverContent, _extends({
233
214
  className: customClassName
234
- }, toggletip.contentProps), /*#__PURE__*/React__default.createElement("div", {
215
+ }, toggletip?.contentProps), /*#__PURE__*/React__default.createElement("div", {
235
216
  className: `${prefix}--toggletip-content`
236
217
  }, children));
237
218
  }
238
-
239
219
  ToggletipContent.propTypes = {
240
220
  /**
241
221
  * Custom children to be rendered as the content of the label
242
222
  */
243
223
  children: PropTypes.node,
244
-
245
224
  /**
246
225
  * Provide a custom class name to be added to the outermost node in the
247
226
  * component
@@ -252,7 +231,6 @@ ToggletipContent.propTypes = {
252
231
  * `ToggletipActions` is a container for one or two actions present at the base
253
232
  * of a toggletip. It is used for layout of these items.
254
233
  */
255
-
256
234
  function ToggletipActions(_ref5) {
257
235
  let {
258
236
  children,
@@ -264,13 +242,11 @@ function ToggletipActions(_ref5) {
264
242
  className: className
265
243
  }, children);
266
244
  }
267
-
268
245
  ToggletipActions.propTypes = {
269
246
  /**
270
247
  * Custom children to be rendered as the content of the label
271
248
  */
272
249
  children: PropTypes.node,
273
-
274
250
  /**
275
251
  * Provide a custom class name to be added to the outermost node in the
276
252
  * component
@@ -32,14 +32,12 @@ const DefinitionTooltip = _ref => {
32
32
  const [isOpen, setOpen] = useState(defaultOpen);
33
33
  const prefix = usePrefix();
34
34
  const tooltipId = useFallbackId(id);
35
-
36
35
  function onKeyDown(event) {
37
36
  if (isOpen && match(event, Escape)) {
38
37
  event.stopPropagation();
39
38
  setOpen(false);
40
39
  }
41
40
  }
42
-
43
41
  return /*#__PURE__*/React__default.createElement(Popover, {
44
42
  align: align,
45
43
  className: className,
@@ -69,52 +67,43 @@ const DefinitionTooltip = _ref => {
69
67
  id: tooltipId
70
68
  }, tooltipText ?? definition));
71
69
  };
72
-
73
70
  DefinitionTooltip.propTypes = {
74
71
  /**
75
72
  * Specify how the trigger should align with the tooltip
76
73
  */
77
74
  align: PropTypes.oneOf(['top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right', 'left', 'left-bottom', 'left-top', 'right', 'right-bottom', 'right-top']),
78
-
79
75
  /**
80
76
  * The `children` prop will be used as the value that is being defined
81
77
  */
82
78
  children: PropTypes.node.isRequired,
83
-
84
79
  /**
85
80
  * Specify an optional className to be applied to the container node
86
81
  */
87
82
  className: PropTypes.string,
88
-
89
83
  /**
90
84
  * Specify whether the tooltip should be open when it first renders
91
85
  */
92
86
  defaultOpen: PropTypes.bool,
93
-
94
87
  /**
95
88
  * The `definition` prop is used as the content inside of the tooltip that
96
89
  * appears when a user interacts with the element rendered by the `children`
97
90
  * prop
98
91
  */
99
92
  definition: PropTypes.node.isRequired,
100
-
101
93
  /**
102
94
  * Provide a value that will be assigned as the id of the tooltip
103
95
  */
104
96
  id: PropTypes.string,
105
-
106
97
  /**
107
98
  * Specifies whether or not the `DefinitionTooltip` should open on hover or not
108
99
  */
109
100
  openOnHover: PropTypes.bool,
110
-
111
101
  /**
112
102
  * [Deprecated in v11] Please use the `definition` prop instead.
113
103
  *
114
104
  * Provide the text that will be displayed in the tooltip when it is rendered.
115
105
  */
116
106
  tooltipText: deprecate(PropTypes.node, 'The tooltipText prop has been deprecated. Please use the `definition` prop instead.'),
117
-
118
107
  /**
119
108
  * The CSS class name of the trigger element
120
109
  */
@@ -7,7 +7,7 @@
7
7
  import PropTypes from 'prop-types';
8
8
  import React from 'react';
9
9
  import { PopoverAlignment } from '../Popover';
10
- import { PolymorphicProps } from '../../types/common';
10
+ import { type PolymorphicProps } from '../../types/common';
11
11
  interface TooltipBaseProps {
12
12
  /**
13
13
  * Specify how the trigger should align with the tooltip