@carbon/react 1.27.0 → 1.28.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 (591) hide show
  1. package/es/_virtual/_rollupPluginBabelHelpers.js +1 -313
  2. package/es/components/Accordion/Accordion.Skeleton.js +28 -30
  3. package/es/components/Accordion/Accordion.js +18 -21
  4. package/es/components/Accordion/AccordionItem.js +37 -49
  5. package/es/components/AspectRatio/AspectRatio.js +10 -12
  6. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +10 -11
  7. package/es/components/Breadcrumb/Breadcrumb.js +14 -13
  8. package/es/components/Breadcrumb/BreadcrumbItem.js +24 -22
  9. package/es/components/Button/Button.Skeleton.js +25 -23
  10. package/es/components/Button/Button.js +77 -72
  11. package/es/components/ButtonSet/ButtonSet.js +12 -10
  12. package/es/components/Checkbox/Checkbox.Skeleton.js +10 -11
  13. package/es/components/Checkbox/Checkbox.js +55 -52
  14. package/es/components/CheckboxGroup/CheckboxGroup.js +33 -31
  15. package/es/components/ClassPrefix/index.js +4 -2
  16. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +15 -14
  17. package/es/components/CodeSnippet/CodeSnippet.js +199 -102
  18. package/es/components/ComboBox/ComboBox.js +349 -178
  19. package/es/components/ComboBox/tools/filter.js +6 -4
  20. package/es/components/ComboButton/index.js +38 -43
  21. package/es/components/ComposedModal/ComposedModal.js +187 -85
  22. package/es/components/ComposedModal/ModalFooter.js +54 -49
  23. package/es/components/ComposedModal/ModalHeader.js +39 -26
  24. package/es/components/ContainedList/ContainedList.js +18 -17
  25. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  26. package/es/components/ContentSwitcher/ContentSwitcher.js +83 -98
  27. package/es/components/ContentSwitcher/index.js +1 -1
  28. package/es/components/ContextMenu/useContextMenu.js +12 -21
  29. package/es/components/Copy/Copy.js +24 -29
  30. package/es/components/CopyButton/CopyButton.js +10 -10
  31. package/es/components/DangerButton/DangerButton.js +3 -5
  32. package/es/components/DataTable/DataTable.js +334 -361
  33. package/es/components/DataTable/Table.js +29 -26
  34. package/es/components/DataTable/TableActionList.js +2 -4
  35. package/es/components/DataTable/TableBatchAction.js +2 -4
  36. package/es/components/DataTable/TableBatchActions.js +29 -30
  37. package/es/components/DataTable/TableBody.js +7 -8
  38. package/es/components/DataTable/TableCell.js +1 -1
  39. package/es/components/DataTable/TableContainer.js +23 -23
  40. package/es/components/DataTable/TableContext.js +1 -1
  41. package/es/components/DataTable/TableExpandHeader.js +19 -21
  42. package/es/components/DataTable/TableExpandRow.js +23 -23
  43. package/es/components/DataTable/TableExpandedRow.js +18 -23
  44. package/es/components/DataTable/TableHead.js +1 -1
  45. package/es/components/DataTable/TableHeader.js +45 -41
  46. package/es/components/DataTable/TableRow.js +7 -8
  47. package/es/components/DataTable/TableSelectAll.js +13 -11
  48. package/es/components/DataTable/TableSelectRow.js +29 -21
  49. package/es/components/DataTable/TableToolbar.js +19 -14
  50. package/es/components/DataTable/TableToolbarAction.js +6 -6
  51. package/es/components/DataTable/TableToolbarContent.js +2 -4
  52. package/es/components/DataTable/TableToolbarMenu.js +11 -12
  53. package/es/components/DataTable/TableToolbarSearch.js +52 -71
  54. package/es/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  55. package/es/components/DataTable/state/sortStates.js +1 -1
  56. package/es/components/DataTable/state/sorting.js +28 -20
  57. package/es/components/DataTable/tools/cells.js +1 -3
  58. package/es/components/DataTable/tools/denormalize.js +4 -17
  59. package/es/components/DataTable/tools/filter.js +18 -16
  60. package/es/components/DataTable/tools/instanceId.js +2 -2
  61. package/es/components/DataTable/tools/normalize.js +28 -25
  62. package/es/components/DataTable/tools/sorting.js +28 -25
  63. package/es/components/DataTableSkeleton/DataTableSkeleton.js +36 -38
  64. package/es/components/DatePicker/DatePicker.Skeleton.js +17 -18
  65. package/es/components/DatePicker/DatePicker.js +206 -195
  66. package/es/components/DatePicker/plugins/appendToPlugin.js +45 -43
  67. package/es/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  68. package/es/components/DatePicker/plugins/rangePlugin.js +19 -11
  69. package/es/components/DatePickerInput/DatePickerInput.js +83 -74
  70. package/es/components/Dropdown/Dropdown.Skeleton.js +13 -12
  71. package/es/components/Dropdown/Dropdown.js +266 -109
  72. package/es/components/ErrorBoundary/ErrorBoundary.js +27 -48
  73. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  74. package/es/components/ExpandableSearch/ExpandableSearch.d.ts +13 -0
  75. package/es/components/ExpandableSearch/ExpandableSearch.js +18 -25
  76. package/es/components/FeatureFlags/index.js +25 -43
  77. package/es/components/FileUploader/FileUploader.Skeleton.js +8 -9
  78. package/es/components/FileUploader/FileUploader.js +120 -147
  79. package/es/components/FileUploader/FileUploaderButton.js +36 -48
  80. package/es/components/FileUploader/FileUploaderDropContainer.js +49 -53
  81. package/es/components/FileUploader/FileUploaderItem.js +30 -30
  82. package/es/components/FileUploader/Filename.js +13 -14
  83. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +11 -12
  84. package/es/components/FluidComboBox/FluidComboBox.js +11 -9
  85. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +18 -18
  86. package/es/components/FluidDatePicker/FluidDatePicker.js +19 -16
  87. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  88. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +11 -12
  89. package/es/components/FluidDropdown/FluidDropdown.js +11 -9
  90. package/es/components/FluidForm/FluidForm.js +9 -10
  91. package/es/components/FluidForm/FormContext.js +1 -1
  92. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +11 -12
  93. package/es/components/FluidMultiSelect/FluidMultiSelect.js +12 -10
  94. package/es/components/FluidSelect/FluidSelect.Skeleton.js +11 -12
  95. package/es/components/FluidSelect/FluidSelect.js +9 -9
  96. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
  97. package/es/components/FluidTextArea/FluidTextArea.js +7 -8
  98. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
  99. package/es/components/FluidTextInput/FluidTextInput.js +10 -9
  100. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +11 -10
  101. package/es/components/FluidTimePicker/FluidTimePicker.js +30 -26
  102. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -7
  103. package/es/components/Form/Form.js +9 -10
  104. package/es/components/FormGroup/FormGroup.js +16 -17
  105. package/es/components/FormItem/FormItem.js +8 -9
  106. package/es/components/FormLabel/FormLabel.js +11 -10
  107. package/es/components/Grid/CSSGrid.js +38 -39
  108. package/es/components/Grid/Column.js +86 -79
  109. package/es/components/Grid/ColumnHang.js +12 -14
  110. package/es/components/Grid/FlexGrid.js +19 -21
  111. package/es/components/Grid/Grid.js +2 -2
  112. package/es/components/Grid/GridContext.js +12 -11
  113. package/es/components/Grid/Row.js +16 -18
  114. package/es/components/Heading/index.js +11 -13
  115. package/es/components/Icon/Icon.Skeleton.js +10 -12
  116. package/es/components/IconButton/index.js +19 -22
  117. package/es/components/IdPrefix/index.js +4 -2
  118. package/es/components/InlineCheckbox/InlineCheckbox.js +89 -36
  119. package/es/components/InlineLoading/InlineLoading.js +23 -25
  120. package/es/components/Layer/LayerContext.js +1 -1
  121. package/es/components/Layer/index.js +17 -18
  122. package/es/components/Layout/LayoutDirection.js +8 -10
  123. package/es/components/Layout/LayoutDirectionContext.js +1 -1
  124. package/es/components/Link/Link.js +25 -25
  125. package/es/components/ListBox/ListBox.js +38 -31
  126. package/es/components/ListBox/ListBoxField.js +9 -10
  127. package/es/components/ListBox/ListBoxMenu.js +9 -10
  128. package/es/components/ListBox/ListBoxMenuIcon.js +16 -14
  129. package/es/components/ListBox/ListBoxMenuItem.js +23 -26
  130. package/es/components/ListBox/ListBoxPropTypes.js +4 -4
  131. package/es/components/ListBox/ListBoxSelection.js +30 -25
  132. package/es/components/ListBox/index.js +1 -1
  133. package/es/components/ListBox/next/ListBoxSelection.js +27 -24
  134. package/es/components/ListBox/next/ListBoxTrigger.js +20 -19
  135. package/es/components/ListItem/ListItem.js +9 -10
  136. package/es/components/Loading/Loading.js +24 -24
  137. package/es/components/Menu/Menu.js +67 -80
  138. package/es/components/Menu/MenuContext.js +9 -12
  139. package/es/components/Menu/MenuItem.js +104 -128
  140. package/es/components/MenuButton/index.js +37 -41
  141. package/es/components/Modal/Modal.js +281 -120
  142. package/es/components/ModalWrapper/ModalWrapper.js +72 -96
  143. package/es/components/MultiSelect/FilterableMultiSelect.js +299 -163
  144. package/es/components/MultiSelect/MultiSelect.js +162 -174
  145. package/es/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  146. package/es/components/MultiSelect/tools/itemToString.js +3 -4
  147. package/es/components/MultiSelect/tools/sorting.js +15 -13
  148. package/es/components/Notification/Notification.js +436 -164
  149. package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
  150. package/es/components/NumberInput/NumberInput.js +140 -139
  151. package/es/components/OrderedList/OrderedList.js +17 -15
  152. package/es/components/OverflowMenu/OverflowMenu.js +359 -227
  153. package/es/components/OverflowMenu/index.js +1 -1
  154. package/es/components/OverflowMenuItem/OverflowMenuItem.js +32 -37
  155. package/es/components/OverflowMenuV2/index.js +26 -28
  156. package/es/components/Pagination/Pagination.Skeleton.js +9 -10
  157. package/es/components/Pagination/Pagination.js +98 -140
  158. package/es/components/Pagination/experimental/PageSelector.js +16 -16
  159. package/es/components/Pagination/experimental/Pagination.js +73 -94
  160. package/es/components/PaginationNav/PaginationNav.js +98 -117
  161. package/es/components/Popover/index.js +74 -80
  162. package/es/components/PrimaryButton/PrimaryButton.js +3 -5
  163. package/es/components/ProgressBar/ProgressBar.js +39 -37
  164. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +15 -14
  165. package/es/components/ProgressIndicator/ProgressIndicator.js +71 -71
  166. package/es/components/RadioButton/RadioButton.Skeleton.js +9 -10
  167. package/es/components/RadioButton/RadioButton.js +27 -27
  168. package/es/components/RadioButtonGroup/RadioButtonGroup.js +55 -65
  169. package/es/components/RadioTile/RadioTile.js +27 -25
  170. package/es/components/Search/Search.Skeleton.js +16 -16
  171. package/es/components/Search/Search.d.ts +83 -0
  172. package/es/components/Search/Search.js +65 -72
  173. package/es/components/Search/index.d.ts +11 -0
  174. package/es/components/SecondaryButton/SecondaryButton.js +3 -5
  175. package/es/components/Select/Select.Skeleton.js +12 -13
  176. package/es/components/Select/Select.js +79 -73
  177. package/es/components/SelectItem/SelectItem.js +17 -13
  178. package/es/components/SelectItemGroup/SelectItemGroup.js +11 -12
  179. package/es/components/SkeletonIcon/SkeletonIcon.js +11 -11
  180. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +11 -11
  181. package/es/components/SkeletonText/SkeletonText.js +29 -29
  182. package/es/components/Slider/Slider.Skeleton.js +17 -18
  183. package/es/components/Slider/Slider.js +306 -329
  184. package/es/components/Slider/index.js +1 -1
  185. package/es/components/Stack/Stack.js +19 -20
  186. package/es/components/Stack/index.js +2 -2
  187. package/es/components/StructuredList/StructuredList.Skeleton.js +25 -24
  188. package/es/components/StructuredList/StructuredList.js +134 -106
  189. package/es/components/Switch/IconSwitch.js +48 -54
  190. package/es/components/Switch/Switch.js +33 -31
  191. package/es/components/Tab/Tab.js +77 -83
  192. package/es/components/Tab/index.js +1 -1
  193. package/es/components/TabContent/TabContent.js +16 -18
  194. package/es/components/Tabs/Tabs.Skeleton.js +14 -13
  195. package/es/components/Tabs/Tabs.js +195 -206
  196. package/es/components/Tabs/usePressable.js +27 -36
  197. package/es/components/Tag/Tag.Skeleton.js +10 -9
  198. package/es/components/Tag/Tag.js +34 -31
  199. package/es/components/Text/Text.js +20 -20
  200. package/es/components/Text/TextDirection.js +8 -7
  201. package/es/components/Text/TextDirectionContext.js +1 -1
  202. package/es/components/Text/index.js +1 -1
  203. package/es/components/TextArea/TextArea.Skeleton.js +11 -12
  204. package/es/components/TextArea/TextArea.js +89 -83
  205. package/es/components/TextInput/ControlledPasswordInput.js +79 -73
  206. package/es/components/TextInput/PasswordInput.js +101 -91
  207. package/es/components/TextInput/TextInput.Skeleton.js +11 -12
  208. package/es/components/TextInput/TextInput.js +104 -92
  209. package/es/components/TextInput/util.js +26 -28
  210. package/es/components/Theme/index.js +25 -20
  211. package/es/components/Tile/Tile.js +135 -176
  212. package/es/components/TileGroup/TileGroup.js +55 -70
  213. package/es/components/TileGroup/index.js +1 -1
  214. package/es/components/TimePicker/TimePicker.js +60 -67
  215. package/es/components/TimePickerSelect/TimePickerSelect.js +20 -18
  216. package/es/components/TimePickerSelect/index.js +1 -1
  217. package/es/components/Toggle/Toggle.Skeleton.js +63 -52
  218. package/es/components/Toggle/Toggle.js +44 -48
  219. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +56 -50
  220. package/es/components/Toggletip/index.js +52 -48
  221. package/es/components/Tooltip/DefinitionTooltip.js +24 -31
  222. package/es/components/Tooltip/Tooltip.js +35 -50
  223. package/es/components/TreeView/TreeNode.js +94 -74
  224. package/es/components/TreeView/TreeView.js +72 -83
  225. package/es/components/UIShell/Content.js +12 -14
  226. package/es/components/UIShell/Header.js +16 -12
  227. package/es/components/UIShell/HeaderContainer.js +8 -14
  228. package/es/components/UIShell/HeaderGlobalAction.js +26 -19
  229. package/es/components/UIShell/HeaderGlobalBar.js +1 -3
  230. package/es/components/UIShell/HeaderMenu.js +114 -129
  231. package/es/components/UIShell/HeaderMenuButton.js +31 -22
  232. package/es/components/UIShell/HeaderMenuItem.js +28 -20
  233. package/es/components/UIShell/HeaderName.js +19 -14
  234. package/es/components/UIShell/HeaderNavigation.js +19 -15
  235. package/es/components/UIShell/HeaderPanel.js +23 -17
  236. package/es/components/UIShell/HeaderSideNavItems.js +11 -9
  237. package/es/components/UIShell/Link.js +11 -11
  238. package/es/components/UIShell/SideNav.js +66 -62
  239. package/es/components/UIShell/SideNavDetails.js +11 -12
  240. package/es/components/UIShell/SideNavDivider.js +5 -3
  241. package/es/components/UIShell/SideNavFooter.js +12 -12
  242. package/es/components/UIShell/SideNavHeader.js +8 -6
  243. package/es/components/UIShell/SideNavIcon.js +11 -8
  244. package/es/components/UIShell/SideNavItem.js +11 -9
  245. package/es/components/UIShell/SideNavItems.js +13 -11
  246. package/es/components/UIShell/SideNavLink.js +19 -17
  247. package/es/components/UIShell/SideNavLinkText.js +8 -9
  248. package/es/components/UIShell/SideNavMenu.js +28 -35
  249. package/es/components/UIShell/SideNavMenuItem.js +14 -14
  250. package/es/components/UIShell/SideNavSwitcher.js +19 -19
  251. package/es/components/UIShell/SkipToContent.js +10 -11
  252. package/es/components/UIShell/Switcher.js +20 -11
  253. package/es/components/UIShell/SwitcherDivider.js +10 -9
  254. package/es/components/UIShell/SwitcherItem.js +26 -19
  255. package/es/components/UIShell/_utils.js +1 -1
  256. package/es/components/UnorderedList/UnorderedList.js +14 -14
  257. package/es/index.js +5 -5
  258. package/es/internal/ClickListener.js +49 -65
  259. package/es/internal/FloatingMenu.js +193 -200
  260. package/es/internal/OptimizedResize.js +9 -8
  261. package/es/internal/Selection.js +92 -111
  262. package/es/internal/createClassWrapper.js +2 -2
  263. package/es/internal/deprecateFieldOnObject.js +5 -3
  264. package/es/internal/environment.js +1 -1
  265. package/es/internal/focus/index.js +1 -1
  266. package/es/internal/keyboard/keys.js +11 -11
  267. package/es/internal/keyboard/match.js +7 -6
  268. package/es/internal/keyboard/navigation.js +15 -5
  269. package/es/internal/useAnnouncer.js +2 -2
  270. package/es/internal/useAttachedMenu.js +12 -20
  271. package/es/internal/useControllableState.js +11 -16
  272. package/es/internal/useDelayedState.js +9 -18
  273. package/es/internal/useEffectOnce.js +4 -4
  274. package/es/internal/useEvent.js +4 -4
  275. package/es/internal/useId.js +15 -19
  276. package/es/internal/useIdPrefix.js +1 -1
  277. package/es/internal/useIsomorphicEffect.js +1 -1
  278. package/es/internal/useMergedRefs.js +3 -3
  279. package/es/internal/useNoInteractiveChildren.js +8 -19
  280. package/es/internal/useNormalizedInputProps.js +16 -14
  281. package/es/internal/usePrefix.js +1 -1
  282. package/es/internal/useSavedCallback.js +3 -3
  283. package/es/internal/warning.js +4 -4
  284. package/es/internal/wrapFocus.js +16 -21
  285. package/es/prop-types/AriaPropTypes.js +1 -1
  286. package/es/prop-types/deprecate.js +6 -5
  287. package/es/prop-types/isRequiredOneOf.js +12 -25
  288. package/es/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  289. package/es/prop-types/types.js +1 -1
  290. package/es/tools/array.js +1 -1
  291. package/es/tools/events.js +21 -14
  292. package/es/tools/mergeRefs.js +3 -3
  293. package/es/tools/setupGetInstanceId.js +1 -1
  294. package/es/tools/uniqueId.js +3 -3
  295. package/es/tools/wrapComponent.js +14 -13
  296. package/lib/_virtual/_rollupPluginBabelHelpers.js +0 -336
  297. package/lib/components/Accordion/Accordion.Skeleton.js +27 -29
  298. package/lib/components/Accordion/Accordion.js +17 -20
  299. package/lib/components/Accordion/AccordionItem.js +36 -48
  300. package/lib/components/AspectRatio/AspectRatio.js +9 -11
  301. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
  302. package/lib/components/Breadcrumb/Breadcrumb.js +13 -12
  303. package/lib/components/Breadcrumb/BreadcrumbItem.js +23 -21
  304. package/lib/components/Button/Button.Skeleton.js +24 -22
  305. package/lib/components/Button/Button.js +76 -71
  306. package/lib/components/ButtonSet/ButtonSet.js +11 -9
  307. package/lib/components/Checkbox/Checkbox.Skeleton.js +9 -10
  308. package/lib/components/Checkbox/Checkbox.js +54 -51
  309. package/lib/components/CheckboxGroup/CheckboxGroup.js +32 -30
  310. package/lib/components/ClassPrefix/index.js +4 -2
  311. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +14 -13
  312. package/lib/components/CodeSnippet/CodeSnippet.js +198 -101
  313. package/lib/components/ComboBox/ComboBox.js +348 -177
  314. package/lib/components/ComboBox/tools/filter.js +6 -4
  315. package/lib/components/ComboButton/index.js +37 -42
  316. package/lib/components/ComposedModal/ComposedModal.js +187 -85
  317. package/lib/components/ComposedModal/ModalFooter.js +53 -48
  318. package/lib/components/ComposedModal/ModalHeader.js +38 -25
  319. package/lib/components/ContainedList/ContainedList.js +18 -17
  320. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  321. package/lib/components/ContentSwitcher/ContentSwitcher.js +82 -97
  322. package/lib/components/ContentSwitcher/index.js +1 -1
  323. package/lib/components/ContextMenu/useContextMenu.js +12 -21
  324. package/lib/components/Copy/Copy.js +23 -28
  325. package/lib/components/CopyButton/CopyButton.js +9 -9
  326. package/lib/components/DangerButton/DangerButton.js +3 -5
  327. package/lib/components/DataTable/DataTable.js +332 -359
  328. package/lib/components/DataTable/Table.js +28 -25
  329. package/lib/components/DataTable/TableActionList.js +2 -4
  330. package/lib/components/DataTable/TableBatchAction.js +2 -4
  331. package/lib/components/DataTable/TableBatchActions.js +28 -29
  332. package/lib/components/DataTable/TableBody.js +6 -7
  333. package/lib/components/DataTable/TableCell.js +1 -1
  334. package/lib/components/DataTable/TableContainer.js +22 -22
  335. package/lib/components/DataTable/TableContext.js +1 -1
  336. package/lib/components/DataTable/TableExpandHeader.js +18 -20
  337. package/lib/components/DataTable/TableExpandRow.js +22 -22
  338. package/lib/components/DataTable/TableExpandedRow.js +17 -22
  339. package/lib/components/DataTable/TableHead.js +1 -1
  340. package/lib/components/DataTable/TableHeader.js +43 -39
  341. package/lib/components/DataTable/TableRow.js +7 -8
  342. package/lib/components/DataTable/TableSelectAll.js +13 -11
  343. package/lib/components/DataTable/TableSelectRow.js +28 -20
  344. package/lib/components/DataTable/TableToolbar.js +18 -13
  345. package/lib/components/DataTable/TableToolbarAction.js +5 -5
  346. package/lib/components/DataTable/TableToolbarContent.js +2 -4
  347. package/lib/components/DataTable/TableToolbarMenu.js +10 -11
  348. package/lib/components/DataTable/TableToolbarSearch.js +51 -70
  349. package/lib/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  350. package/lib/components/DataTable/state/sortStates.js +1 -1
  351. package/lib/components/DataTable/state/sorting.js +28 -20
  352. package/lib/components/DataTable/tools/cells.js +1 -3
  353. package/lib/components/DataTable/tools/denormalize.js +4 -17
  354. package/lib/components/DataTable/tools/filter.js +18 -16
  355. package/lib/components/DataTable/tools/instanceId.js +2 -2
  356. package/lib/components/DataTable/tools/normalize.js +28 -25
  357. package/lib/components/DataTable/tools/sorting.js +27 -24
  358. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +35 -37
  359. package/lib/components/DatePicker/DatePicker.Skeleton.js +16 -17
  360. package/lib/components/DatePicker/DatePicker.js +205 -194
  361. package/lib/components/DatePicker/plugins/appendToPlugin.js +45 -43
  362. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  363. package/lib/components/DatePicker/plugins/rangePlugin.js +19 -11
  364. package/lib/components/DatePickerInput/DatePickerInput.js +83 -74
  365. package/lib/components/Dropdown/Dropdown.Skeleton.js +12 -11
  366. package/lib/components/Dropdown/Dropdown.js +265 -108
  367. package/lib/components/ErrorBoundary/ErrorBoundary.js +27 -48
  368. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  369. package/lib/components/ExpandableSearch/ExpandableSearch.d.ts +13 -0
  370. package/lib/components/ExpandableSearch/ExpandableSearch.js +17 -24
  371. package/lib/components/FeatureFlags/index.js +25 -43
  372. package/lib/components/FileUploader/FileUploader.Skeleton.js +7 -8
  373. package/lib/components/FileUploader/FileUploader.js +119 -146
  374. package/lib/components/FileUploader/FileUploaderButton.js +35 -47
  375. package/lib/components/FileUploader/FileUploaderDropContainer.js +48 -52
  376. package/lib/components/FileUploader/FileUploaderItem.js +29 -29
  377. package/lib/components/FileUploader/Filename.js +12 -13
  378. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +10 -11
  379. package/lib/components/FluidComboBox/FluidComboBox.js +10 -8
  380. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +17 -17
  381. package/lib/components/FluidDatePicker/FluidDatePicker.js +18 -15
  382. package/lib/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  383. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +10 -11
  384. package/lib/components/FluidDropdown/FluidDropdown.js +10 -8
  385. package/lib/components/FluidForm/FluidForm.js +8 -9
  386. package/lib/components/FluidForm/FormContext.js +1 -1
  387. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +10 -11
  388. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +11 -9
  389. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +10 -11
  390. package/lib/components/FluidSelect/FluidSelect.js +8 -8
  391. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +8 -9
  392. package/lib/components/FluidTextArea/FluidTextArea.js +6 -7
  393. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +8 -9
  394. package/lib/components/FluidTextInput/FluidTextInput.js +9 -8
  395. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +10 -9
  396. package/lib/components/FluidTimePicker/FluidTimePicker.js +30 -26
  397. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +6 -6
  398. package/lib/components/Form/Form.js +8 -9
  399. package/lib/components/FormGroup/FormGroup.js +15 -16
  400. package/lib/components/FormItem/FormItem.js +7 -8
  401. package/lib/components/FormLabel/FormLabel.js +10 -9
  402. package/lib/components/Grid/CSSGrid.js +37 -38
  403. package/lib/components/Grid/Column.js +85 -78
  404. package/lib/components/Grid/ColumnHang.js +11 -13
  405. package/lib/components/Grid/FlexGrid.js +19 -21
  406. package/lib/components/Grid/Grid.js +2 -2
  407. package/lib/components/Grid/GridContext.js +12 -11
  408. package/lib/components/Grid/Row.js +16 -18
  409. package/lib/components/Heading/index.js +11 -13
  410. package/lib/components/Icon/Icon.Skeleton.js +9 -11
  411. package/lib/components/IconButton/index.js +18 -21
  412. package/lib/components/IdPrefix/index.js +4 -2
  413. package/lib/components/InlineCheckbox/InlineCheckbox.js +89 -36
  414. package/lib/components/InlineLoading/InlineLoading.js +22 -24
  415. package/lib/components/Layer/LayerContext.js +1 -1
  416. package/lib/components/Layer/index.js +16 -17
  417. package/lib/components/Layout/LayoutDirection.js +7 -9
  418. package/lib/components/Layout/LayoutDirectionContext.js +1 -1
  419. package/lib/components/Link/Link.js +24 -24
  420. package/lib/components/ListBox/ListBox.js +37 -30
  421. package/lib/components/ListBox/ListBoxField.js +8 -9
  422. package/lib/components/ListBox/ListBoxMenu.js +8 -9
  423. package/lib/components/ListBox/ListBoxMenuIcon.js +16 -14
  424. package/lib/components/ListBox/ListBoxMenuItem.js +22 -25
  425. package/lib/components/ListBox/ListBoxPropTypes.js +4 -4
  426. package/lib/components/ListBox/ListBoxSelection.js +30 -25
  427. package/lib/components/ListBox/index.js +1 -1
  428. package/lib/components/ListBox/next/ListBoxSelection.js +26 -23
  429. package/lib/components/ListBox/next/ListBoxTrigger.js +19 -18
  430. package/lib/components/ListItem/ListItem.js +8 -9
  431. package/lib/components/Loading/Loading.js +23 -23
  432. package/lib/components/Menu/Menu.js +66 -79
  433. package/lib/components/Menu/MenuContext.js +9 -12
  434. package/lib/components/Menu/MenuItem.js +103 -127
  435. package/lib/components/MenuButton/index.js +36 -40
  436. package/lib/components/Modal/Modal.js +280 -119
  437. package/lib/components/ModalWrapper/ModalWrapper.js +71 -95
  438. package/lib/components/MultiSelect/FilterableMultiSelect.js +298 -162
  439. package/lib/components/MultiSelect/MultiSelect.js +163 -175
  440. package/lib/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  441. package/lib/components/MultiSelect/tools/itemToString.js +3 -4
  442. package/lib/components/MultiSelect/tools/sorting.js +15 -13
  443. package/lib/components/Notification/Notification.js +434 -162
  444. package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -10
  445. package/lib/components/NumberInput/NumberInput.js +139 -138
  446. package/lib/components/OrderedList/OrderedList.js +16 -14
  447. package/lib/components/OverflowMenu/OverflowMenu.js +358 -226
  448. package/lib/components/OverflowMenu/index.js +1 -1
  449. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +31 -36
  450. package/lib/components/OverflowMenuV2/index.js +25 -27
  451. package/lib/components/Pagination/Pagination.Skeleton.js +8 -9
  452. package/lib/components/Pagination/Pagination.js +97 -139
  453. package/lib/components/Pagination/experimental/PageSelector.js +17 -17
  454. package/lib/components/Pagination/experimental/Pagination.js +72 -93
  455. package/lib/components/PaginationNav/PaginationNav.js +97 -116
  456. package/lib/components/Popover/index.js +73 -79
  457. package/lib/components/PrimaryButton/PrimaryButton.js +3 -5
  458. package/lib/components/ProgressBar/ProgressBar.js +38 -36
  459. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +14 -13
  460. package/lib/components/ProgressIndicator/ProgressIndicator.js +70 -70
  461. package/lib/components/RadioButton/RadioButton.Skeleton.js +8 -9
  462. package/lib/components/RadioButton/RadioButton.js +26 -26
  463. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +54 -64
  464. package/lib/components/RadioTile/RadioTile.js +26 -24
  465. package/lib/components/Search/Search.Skeleton.js +15 -15
  466. package/lib/components/Search/Search.d.ts +83 -0
  467. package/lib/components/Search/Search.js +62 -69
  468. package/lib/components/Search/index.d.ts +11 -0
  469. package/lib/components/SecondaryButton/SecondaryButton.js +3 -5
  470. package/lib/components/Select/Select.Skeleton.js +11 -12
  471. package/lib/components/Select/Select.js +78 -72
  472. package/lib/components/SelectItem/SelectItem.js +16 -12
  473. package/lib/components/SelectItemGroup/SelectItemGroup.js +10 -11
  474. package/lib/components/SkeletonIcon/SkeletonIcon.js +10 -10
  475. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +10 -10
  476. package/lib/components/SkeletonText/SkeletonText.js +28 -28
  477. package/lib/components/Slider/Slider.Skeleton.js +16 -17
  478. package/lib/components/Slider/Slider.js +305 -328
  479. package/lib/components/Slider/index.js +1 -1
  480. package/lib/components/Stack/Stack.js +18 -19
  481. package/lib/components/Stack/index.js +2 -2
  482. package/lib/components/StructuredList/StructuredList.Skeleton.js +24 -23
  483. package/lib/components/StructuredList/StructuredList.js +133 -105
  484. package/lib/components/Switch/IconSwitch.js +45 -51
  485. package/lib/components/Switch/Switch.js +33 -31
  486. package/lib/components/Tab/Tab.js +76 -82
  487. package/lib/components/Tab/index.js +1 -1
  488. package/lib/components/TabContent/TabContent.js +15 -17
  489. package/lib/components/Tabs/Tabs.Skeleton.js +13 -12
  490. package/lib/components/Tabs/Tabs.js +194 -205
  491. package/lib/components/Tabs/usePressable.js +27 -36
  492. package/lib/components/Tag/Tag.Skeleton.js +9 -8
  493. package/lib/components/Tag/Tag.js +33 -30
  494. package/lib/components/Text/Text.js +19 -19
  495. package/lib/components/Text/TextDirection.js +8 -7
  496. package/lib/components/Text/TextDirectionContext.js +1 -1
  497. package/lib/components/Text/index.js +1 -1
  498. package/lib/components/TextArea/TextArea.Skeleton.js +10 -11
  499. package/lib/components/TextArea/TextArea.js +88 -82
  500. package/lib/components/TextInput/ControlledPasswordInput.js +78 -72
  501. package/lib/components/TextInput/PasswordInput.js +100 -90
  502. package/lib/components/TextInput/TextInput.Skeleton.js +10 -11
  503. package/lib/components/TextInput/TextInput.js +104 -92
  504. package/lib/components/TextInput/util.js +28 -30
  505. package/lib/components/Theme/index.js +24 -19
  506. package/lib/components/Tile/Tile.js +134 -175
  507. package/lib/components/TileGroup/TileGroup.js +54 -69
  508. package/lib/components/TileGroup/index.js +1 -1
  509. package/lib/components/TimePicker/TimePicker.js +59 -66
  510. package/lib/components/TimePickerSelect/TimePickerSelect.js +19 -17
  511. package/lib/components/TimePickerSelect/index.js +1 -1
  512. package/lib/components/Toggle/Toggle.Skeleton.js +68 -57
  513. package/lib/components/Toggle/Toggle.js +43 -47
  514. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +60 -54
  515. package/lib/components/Toggletip/index.js +51 -47
  516. package/lib/components/Tooltip/DefinitionTooltip.js +23 -30
  517. package/lib/components/Tooltip/Tooltip.js +34 -49
  518. package/lib/components/TreeView/TreeNode.js +93 -73
  519. package/lib/components/TreeView/TreeView.js +71 -82
  520. package/lib/components/UIShell/Content.js +12 -14
  521. package/lib/components/UIShell/Header.js +15 -11
  522. package/lib/components/UIShell/HeaderContainer.js +8 -14
  523. package/lib/components/UIShell/HeaderGlobalAction.js +25 -18
  524. package/lib/components/UIShell/HeaderGlobalBar.js +1 -3
  525. package/lib/components/UIShell/HeaderMenu.js +113 -128
  526. package/lib/components/UIShell/HeaderMenuButton.js +30 -21
  527. package/lib/components/UIShell/HeaderMenuItem.js +27 -19
  528. package/lib/components/UIShell/HeaderName.js +18 -13
  529. package/lib/components/UIShell/HeaderNavigation.js +18 -14
  530. package/lib/components/UIShell/HeaderPanel.js +22 -16
  531. package/lib/components/UIShell/HeaderSideNavItems.js +11 -9
  532. package/lib/components/UIShell/Link.js +11 -11
  533. package/lib/components/UIShell/SideNav.js +65 -61
  534. package/lib/components/UIShell/SideNavDetails.js +10 -11
  535. package/lib/components/UIShell/SideNavDivider.js +5 -3
  536. package/lib/components/UIShell/SideNavFooter.js +12 -12
  537. package/lib/components/UIShell/SideNavHeader.js +8 -6
  538. package/lib/components/UIShell/SideNavIcon.js +11 -8
  539. package/lib/components/UIShell/SideNavItem.js +11 -9
  540. package/lib/components/UIShell/SideNavItems.js +13 -11
  541. package/lib/components/UIShell/SideNavLink.js +18 -16
  542. package/lib/components/UIShell/SideNavLinkText.js +7 -8
  543. package/lib/components/UIShell/SideNavMenu.js +28 -35
  544. package/lib/components/UIShell/SideNavMenuItem.js +13 -13
  545. package/lib/components/UIShell/SideNavSwitcher.js +19 -19
  546. package/lib/components/UIShell/SkipToContent.js +9 -10
  547. package/lib/components/UIShell/Switcher.js +19 -10
  548. package/lib/components/UIShell/SwitcherDivider.js +9 -8
  549. package/lib/components/UIShell/SwitcherItem.js +25 -18
  550. package/lib/components/UIShell/_utils.js +1 -1
  551. package/lib/components/UnorderedList/UnorderedList.js +13 -13
  552. package/lib/index.js +10 -10
  553. package/lib/internal/ClickListener.js +49 -65
  554. package/lib/internal/FloatingMenu.js +192 -199
  555. package/lib/internal/OptimizedResize.js +9 -8
  556. package/lib/internal/Selection.js +91 -110
  557. package/lib/internal/createClassWrapper.js +2 -2
  558. package/lib/internal/deprecateFieldOnObject.js +5 -3
  559. package/lib/internal/environment.js +1 -1
  560. package/lib/internal/focus/index.js +1 -1
  561. package/lib/internal/keyboard/keys.js +11 -11
  562. package/lib/internal/keyboard/match.js +7 -6
  563. package/lib/internal/keyboard/navigation.js +15 -5
  564. package/lib/internal/useAnnouncer.js +2 -2
  565. package/lib/internal/useAttachedMenu.js +12 -20
  566. package/lib/internal/useControllableState.js +11 -16
  567. package/lib/internal/useDelayedState.js +9 -18
  568. package/lib/internal/useEffectOnce.js +4 -4
  569. package/lib/internal/useEvent.js +4 -4
  570. package/lib/internal/useId.js +14 -18
  571. package/lib/internal/useIdPrefix.js +1 -1
  572. package/lib/internal/useIsomorphicEffect.js +1 -1
  573. package/lib/internal/useMergedRefs.js +3 -3
  574. package/lib/internal/useNoInteractiveChildren.js +8 -19
  575. package/lib/internal/useNormalizedInputProps.js +16 -14
  576. package/lib/internal/usePrefix.js +1 -1
  577. package/lib/internal/useSavedCallback.js +3 -3
  578. package/lib/internal/warning.js +4 -4
  579. package/lib/internal/wrapFocus.js +16 -21
  580. package/lib/prop-types/AriaPropTypes.js +1 -1
  581. package/lib/prop-types/deprecate.js +6 -5
  582. package/lib/prop-types/isRequiredOneOf.js +15 -28
  583. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  584. package/lib/prop-types/types.js +1 -1
  585. package/lib/tools/array.js +1 -1
  586. package/lib/tools/events.js +21 -14
  587. package/lib/tools/mergeRefs.js +3 -3
  588. package/lib/tools/setupGetInstanceId.js +1 -1
  589. package/lib/tools/uniqueId.js +3 -3
  590. package/lib/tools/wrapComponent.js +14 -13
  591. package/package.json +6 -6
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, defineProperty as _defineProperty, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
10
  import React__default, { useState, useRef, useCallback, useEffect } from 'react';
11
11
  import cx from 'classnames';
@@ -19,72 +19,47 @@ import copy from 'copy-to-clipboard';
19
19
  import deprecate from '../../prop-types/deprecate.js';
20
20
  import { usePrefix } from '../../internal/usePrefix.js';
21
21
 
22
- var _CodeSnippet$propType, _CodeSnippet$defaultP;
23
-
24
- var _excluded = ["className", "type", "children", "disabled", "feedback", "feedbackTimeout", "onClick", "aria-label", "ariaLabel", "copyText", "copyButtonDescription", "light", "showMoreText", "showLessText", "hideCopyButton", "wrapText", "maxCollapsedNumberOfRows", "maxExpandedNumberOfRows", "minCollapsedNumberOfRows", "minExpandedNumberOfRows"];
25
- var rowHeightInPixels = 16;
26
- var defaultMaxCollapsedNumberOfRows = 15;
27
- var defaultMaxExpandedNumberOfRows = 0;
28
- var defaultMinCollapsedNumberOfRows = 3;
29
- var defaultMinExpandedNumberOfRows = 16;
22
+ const rowHeightInPixels = 16;
23
+ const defaultMaxCollapsedNumberOfRows = 15;
24
+ const defaultMaxExpandedNumberOfRows = 0;
25
+ const defaultMinCollapsedNumberOfRows = 3;
26
+ const defaultMinExpandedNumberOfRows = 16;
30
27
 
31
28
  function CodeSnippet(_ref) {
32
- var _classNames;
33
-
34
- var className = _ref.className,
35
- type = _ref.type,
36
- children = _ref.children,
37
- disabled = _ref.disabled,
38
- feedback = _ref.feedback,
39
- feedbackTimeout = _ref.feedbackTimeout,
40
- onClick = _ref.onClick,
41
- ariaLabel = _ref['aria-label'],
42
- deprecatedAriaLabel = _ref.ariaLabel,
43
- copyText = _ref.copyText,
44
- copyButtonDescription = _ref.copyButtonDescription,
45
- light = _ref.light,
46
- showMoreText = _ref.showMoreText,
47
- showLessText = _ref.showLessText,
48
- hideCopyButton = _ref.hideCopyButton,
49
- wrapText = _ref.wrapText,
50
- _ref$maxCollapsedNumb = _ref.maxCollapsedNumberOfRows,
51
- maxCollapsedNumberOfRows = _ref$maxCollapsedNumb === void 0 ? defaultMaxCollapsedNumberOfRows : _ref$maxCollapsedNumb,
52
- _ref$maxExpandedNumbe = _ref.maxExpandedNumberOfRows,
53
- maxExpandedNumberOfRows = _ref$maxExpandedNumbe === void 0 ? defaultMaxExpandedNumberOfRows : _ref$maxExpandedNumbe,
54
- _ref$minCollapsedNumb = _ref.minCollapsedNumberOfRows,
55
- minCollapsedNumberOfRows = _ref$minCollapsedNumb === void 0 ? defaultMinCollapsedNumberOfRows : _ref$minCollapsedNumb,
56
- _ref$minExpandedNumbe = _ref.minExpandedNumberOfRows,
57
- minExpandedNumberOfRows = _ref$minExpandedNumbe === void 0 ? defaultMinExpandedNumberOfRows : _ref$minExpandedNumbe,
58
- rest = _objectWithoutProperties(_ref, _excluded);
59
-
60
- var _useState = useState(false),
61
- _useState2 = _slicedToArray(_useState, 2),
62
- expandedCode = _useState2[0],
63
- setExpandedCode = _useState2[1];
64
-
65
- var _useState3 = useState(false),
66
- _useState4 = _slicedToArray(_useState3, 2),
67
- shouldShowMoreLessBtn = _useState4[0],
68
- setShouldShowMoreLessBtn = _useState4[1];
69
-
70
- var _useRef = useRef(uniqueId()),
71
- uid = _useRef.current;
72
-
73
- var codeContentRef = useRef();
74
- var codeContainerRef = useRef();
75
- var innerCodeRef = useRef();
76
-
77
- var _useState5 = useState(false),
78
- _useState6 = _slicedToArray(_useState5, 2),
79
- hasLeftOverflow = _useState6[0],
80
- setHasLeftOverflow = _useState6[1];
81
-
82
- var _useState7 = useState(false),
83
- _useState8 = _slicedToArray(_useState7, 2),
84
- hasRightOverflow = _useState8[0],
85
- setHasRightOverflow = _useState8[1];
86
-
87
- var getCodeRef = useCallback(function () {
29
+ let {
30
+ className,
31
+ type,
32
+ children,
33
+ disabled,
34
+ feedback,
35
+ feedbackTimeout,
36
+ onClick,
37
+ ['aria-label']: ariaLabel,
38
+ ariaLabel: deprecatedAriaLabel,
39
+ copyText,
40
+ copyButtonDescription,
41
+ light,
42
+ showMoreText,
43
+ showLessText,
44
+ hideCopyButton,
45
+ wrapText,
46
+ maxCollapsedNumberOfRows = defaultMaxCollapsedNumberOfRows,
47
+ maxExpandedNumberOfRows = defaultMaxExpandedNumberOfRows,
48
+ minCollapsedNumberOfRows = defaultMinCollapsedNumberOfRows,
49
+ minExpandedNumberOfRows = defaultMinExpandedNumberOfRows,
50
+ ...rest
51
+ } = _ref;
52
+ const [expandedCode, setExpandedCode] = useState(false);
53
+ const [shouldShowMoreLessBtn, setShouldShowMoreLessBtn] = useState(false);
54
+ const {
55
+ current: uid
56
+ } = useRef(uniqueId());
57
+ const codeContentRef = useRef();
58
+ const codeContainerRef = useRef();
59
+ const innerCodeRef = useRef();
60
+ const [hasLeftOverflow, setHasLeftOverflow] = useState(false);
61
+ const [hasRightOverflow, setHasRightOverflow] = useState(false);
62
+ const getCodeRef = useCallback(() => {
88
63
  if (type === 'single') {
89
64
  return codeContainerRef;
90
65
  }
@@ -93,39 +68,41 @@ function CodeSnippet(_ref) {
93
68
  return codeContentRef;
94
69
  }
95
70
  }, [type]);
96
- var prefix = usePrefix();
97
- var getCodeRefDimensions = useCallback(function () {
98
- var _getCodeRef$current = getCodeRef().current,
99
- codeClientWidth = _getCodeRef$current.clientWidth,
100
- codeScrollLeft = _getCodeRef$current.scrollLeft,
101
- codeScrollWidth = _getCodeRef$current.scrollWidth;
71
+ const prefix = usePrefix();
72
+ const getCodeRefDimensions = useCallback(() => {
73
+ const {
74
+ clientWidth: codeClientWidth,
75
+ scrollLeft: codeScrollLeft,
76
+ scrollWidth: codeScrollWidth
77
+ } = getCodeRef().current;
102
78
  return {
103
79
  horizontalOverflow: codeScrollWidth > codeClientWidth,
104
- codeClientWidth: codeClientWidth,
105
- codeScrollWidth: codeScrollWidth,
106
- codeScrollLeft: codeScrollLeft
80
+ codeClientWidth,
81
+ codeScrollWidth,
82
+ codeScrollLeft
107
83
  };
108
84
  }, [getCodeRef]);
109
- var handleScroll = useCallback(function () {
85
+ const handleScroll = useCallback(() => {
110
86
  if (type === 'inline' || type === 'single' && !(codeContainerRef !== null && codeContainerRef !== void 0 && codeContainerRef.current) || type === 'multi' && !(codeContentRef !== null && codeContentRef !== void 0 && codeContentRef.current)) {
111
87
  return;
112
88
  }
113
89
 
114
- var _getCodeRefDimensions = getCodeRefDimensions(),
115
- horizontalOverflow = _getCodeRefDimensions.horizontalOverflow,
116
- codeClientWidth = _getCodeRefDimensions.codeClientWidth,
117
- codeScrollWidth = _getCodeRefDimensions.codeScrollWidth,
118
- codeScrollLeft = _getCodeRefDimensions.codeScrollLeft;
119
-
90
+ const {
91
+ horizontalOverflow,
92
+ codeClientWidth,
93
+ codeScrollWidth,
94
+ codeScrollLeft
95
+ } = getCodeRefDimensions();
120
96
  setHasLeftOverflow(horizontalOverflow && !!codeScrollLeft);
121
97
  setHasRightOverflow(horizontalOverflow && codeScrollLeft + codeClientWidth !== codeScrollWidth);
122
98
  }, [type, getCodeRefDimensions]);
123
99
  useResizeObserver({
124
100
  ref: getCodeRef(),
125
- onResize: function onResize() {
101
+ onResize: () => {
126
102
  if (codeContentRef !== null && codeContentRef !== void 0 && codeContentRef.current && type === 'multi') {
127
- var _codeContentRef$curre = codeContentRef.current.getBoundingClientRect(),
128
- height = _codeContentRef$curre.height;
103
+ const {
104
+ height
105
+ } = codeContentRef.current.getBoundingClientRect();
129
106
 
130
107
  if (maxCollapsedNumberOfRows > 0 && (maxExpandedNumberOfRows <= 0 || maxExpandedNumberOfRows > maxCollapsedNumberOfRows) && height > maxCollapsedNumberOfRows * rowHeightInPixels) {
131
108
  setShouldShowMoreLessBtn(true);
@@ -143,15 +120,15 @@ function CodeSnippet(_ref) {
143
120
  }
144
121
  }
145
122
  }, [type, maxCollapsedNumberOfRows, maxExpandedNumberOfRows, minExpandedNumberOfRows, rowHeightInPixels]);
146
- useEffect(function () {
123
+ useEffect(() => {
147
124
  handleScroll();
148
125
  }, [handleScroll]);
149
126
 
150
- var handleCopyClick = function handleCopyClick(evt) {
127
+ const handleCopyClick = evt => {
151
128
  if (copyText || innerCodeRef !== null && innerCodeRef !== void 0 && innerCodeRef.current) {
152
129
  var _innerCodeRef$current;
153
130
 
154
- copy(copyText !== null && copyText !== void 0 ? copyText : innerCodeRef === null || innerCodeRef === void 0 ? void 0 : (_innerCodeRef$current = innerCodeRef.current) === null || _innerCodeRef$current === void 0 ? void 0 : _innerCodeRef$current.innerText);
131
+ copy(copyText ?? (innerCodeRef === null || innerCodeRef === void 0 ? void 0 : (_innerCodeRef$current = innerCodeRef.current) === null || _innerCodeRef$current === void 0 ? void 0 : _innerCodeRef$current.innerText));
155
132
  }
156
133
 
157
134
  if (onClick) {
@@ -159,8 +136,16 @@ function CodeSnippet(_ref) {
159
136
  }
160
137
  };
161
138
 
162
- var codeSnippetClasses = cx(className, "".concat(prefix, "--snippet"), (_classNames = {}, _defineProperty(_classNames, "".concat(prefix, "--snippet--").concat(type), type), _defineProperty(_classNames, "".concat(prefix, "--snippet--disabled"), type !== 'inline' && disabled), _defineProperty(_classNames, "".concat(prefix, "--snippet--expand"), expandedCode), _defineProperty(_classNames, "".concat(prefix, "--snippet--light"), light), _defineProperty(_classNames, "".concat(prefix, "--snippet--no-copy"), hideCopyButton), _defineProperty(_classNames, "".concat(prefix, "--snippet--wraptext"), wrapText), _defineProperty(_classNames, "".concat(prefix, "--snippet--has-right-overflow"), type == 'multi' && hasRightOverflow), _classNames));
163
- var expandCodeBtnText = expandedCode ? showLessText : showMoreText;
139
+ const codeSnippetClasses = cx(className, `${prefix}--snippet`, {
140
+ [`${prefix}--snippet--${type}`]: type,
141
+ [`${prefix}--snippet--disabled`]: type !== 'inline' && disabled,
142
+ [`${prefix}--snippet--expand`]: expandedCode,
143
+ [`${prefix}--snippet--light`]: light,
144
+ [`${prefix}--snippet--no-copy`]: hideCopyButton,
145
+ [`${prefix}--snippet--wraptext`]: wrapText,
146
+ [`${prefix}--snippet--has-right-overflow`]: type == 'multi' && hasRightOverflow
147
+ });
148
+ const expandCodeBtnText = expandedCode ? showLessText : showMoreText;
164
149
 
165
150
  if (type === 'inline') {
166
151
  if (hideCopyButton) {
@@ -185,10 +170,10 @@ function CodeSnippet(_ref) {
185
170
  }, children));
186
171
  }
187
172
 
188
- var containerStyle = {};
173
+ let containerStyle = {};
189
174
 
190
175
  if (type === 'multi') {
191
- var styles = {};
176
+ const styles = {};
192
177
 
193
178
  if (expandedCode) {
194
179
  if (maxExpandedNumberOfRows > 0) {
@@ -219,7 +204,7 @@ function CodeSnippet(_ref) {
219
204
  ref: codeContainerRef,
220
205
  role: type === 'single' || type === 'multi' ? 'textbox' : null,
221
206
  tabIndex: (type === 'single' || type === 'multi') && !disabled ? 0 : null,
222
- className: "".concat(prefix, "--snippet-container"),
207
+ className: `${prefix}--snippet-container`,
223
208
  "aria-label": deprecatedAriaLabel || ariaLabel || 'code-snippet',
224
209
  "aria-readonly": type === 'single' || type === 'multi' ? true : null,
225
210
  "aria-multiline": type === 'multi' ? true : null,
@@ -230,9 +215,9 @@ function CodeSnippet(_ref) {
230
215
  }, /*#__PURE__*/React__default.createElement("code", {
231
216
  ref: innerCodeRef
232
217
  }, children))), hasLeftOverflow && /*#__PURE__*/React__default.createElement("div", {
233
- className: "".concat(prefix, "--snippet__overflow-indicator--left")
218
+ className: `${prefix}--snippet__overflow-indicator--left`
234
219
  }), hasRightOverflow && type !== 'multi' && /*#__PURE__*/React__default.createElement("div", {
235
- className: "".concat(prefix, "--snippet__overflow-indicator--right")
220
+ className: `${prefix}--snippet__overflow-indicator--right`
236
221
  }), !hideCopyButton && /*#__PURE__*/React__default.createElement(CopyButton, {
237
222
  disabled: disabled,
238
223
  onClick: handleCopyClick,
@@ -242,21 +227,133 @@ function CodeSnippet(_ref) {
242
227
  }), shouldShowMoreLessBtn && /*#__PURE__*/React__default.createElement(Button, {
243
228
  kind: "ghost",
244
229
  size: "sm",
245
- className: "".concat(prefix, "--snippet-btn--expand"),
230
+ className: `${prefix}--snippet-btn--expand`,
246
231
  disabled: disabled,
247
- onClick: function onClick() {
248
- return setExpandedCode(!expandedCode);
249
- }
232
+ onClick: () => setExpandedCode(!expandedCode)
250
233
  }, /*#__PURE__*/React__default.createElement("span", {
251
- className: "".concat(prefix, "--snippet-btn--text")
234
+ className: `${prefix}--snippet-btn--text`
252
235
  }, expandCodeBtnText), /*#__PURE__*/React__default.createElement(ChevronDown, {
253
- className: "".concat(prefix, "--icon-chevron--down ").concat(prefix, "--snippet__icon"),
236
+ className: `${prefix}--icon-chevron--down ${prefix}--snippet__icon`,
254
237
  name: "chevron--down",
255
238
  role: "img"
256
239
  })));
257
240
  }
258
241
 
259
- CodeSnippet.propTypes = (_CodeSnippet$propType = {}, _defineProperty(_CodeSnippet$propType, 'aria-label', PropTypes.string), _defineProperty(_CodeSnippet$propType, "ariaLabel", deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.')), _defineProperty(_CodeSnippet$propType, "children", PropTypes.node), _defineProperty(_CodeSnippet$propType, "className", PropTypes.string), _defineProperty(_CodeSnippet$propType, "copyButtonDescription", PropTypes.string), _defineProperty(_CodeSnippet$propType, "copyText", PropTypes.string), _defineProperty(_CodeSnippet$propType, "disabled", PropTypes.bool), _defineProperty(_CodeSnippet$propType, "feedback", PropTypes.string), _defineProperty(_CodeSnippet$propType, "feedbackTimeout", PropTypes.number), _defineProperty(_CodeSnippet$propType, "hideCopyButton", PropTypes.bool), _defineProperty(_CodeSnippet$propType, "light", deprecate(PropTypes.bool, 'The `light` prop for `CodeSnippet` has ' + 'been deprecated in favor of the new `Layer` component. It will be removed in the next major release.')), _defineProperty(_CodeSnippet$propType, "maxCollapsedNumberOfRows", PropTypes.number), _defineProperty(_CodeSnippet$propType, "maxExpandedNumberOfRows", PropTypes.number), _defineProperty(_CodeSnippet$propType, "minCollapsedNumberOfRows", PropTypes.number), _defineProperty(_CodeSnippet$propType, "minExpandedNumberOfRows", PropTypes.number), _defineProperty(_CodeSnippet$propType, "onClick", PropTypes.func), _defineProperty(_CodeSnippet$propType, "showLessText", PropTypes.string), _defineProperty(_CodeSnippet$propType, "showMoreText", PropTypes.string), _defineProperty(_CodeSnippet$propType, "type", PropTypes.oneOf(['single', 'inline', 'multi'])), _defineProperty(_CodeSnippet$propType, "wrapText", PropTypes.bool), _CodeSnippet$propType);
260
- CodeSnippet.defaultProps = (_CodeSnippet$defaultP = {}, _defineProperty(_CodeSnippet$defaultP, 'aria-label', 'Copy to clipboard'), _defineProperty(_CodeSnippet$defaultP, "type", 'single'), _defineProperty(_CodeSnippet$defaultP, "showMoreText", 'Show more'), _defineProperty(_CodeSnippet$defaultP, "showLessText", 'Show less'), _defineProperty(_CodeSnippet$defaultP, "wrapText", false), _CodeSnippet$defaultP);
242
+ CodeSnippet.propTypes = {
243
+ /**
244
+ * Specify a label to be read by screen readers on the containing <textbox>
245
+ * node
246
+ */
247
+ ['aria-label']: PropTypes.string,
248
+
249
+ /**
250
+ * Deprecated, please use `aria-label` instead.
251
+ * Specify a label to be read by screen readers on the containing <textbox>
252
+ * node
253
+ */
254
+ ariaLabel: deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.'),
255
+
256
+ /**
257
+ * Provide the content of your CodeSnippet as a node or string
258
+ */
259
+ children: PropTypes.node,
260
+
261
+ /**
262
+ * Specify an optional className to be applied to the container node
263
+ */
264
+ className: PropTypes.string,
265
+
266
+ /**
267
+ * Specify the description for the Copy Button
268
+ */
269
+ copyButtonDescription: PropTypes.string,
270
+
271
+ /**
272
+ * Optional text to copy. If not specified, the `children` node's `innerText`
273
+ * will be used as the copy value.
274
+ */
275
+ copyText: PropTypes.string,
276
+
277
+ /**
278
+ * Specify whether or not the CodeSnippet should be disabled
279
+ */
280
+ disabled: PropTypes.bool,
281
+
282
+ /**
283
+ * Specify the string displayed when the snippet is copied
284
+ */
285
+ feedback: PropTypes.string,
286
+
287
+ /**
288
+ * Specify the time it takes for the feedback message to timeout
289
+ */
290
+ feedbackTimeout: PropTypes.number,
291
+
292
+ /**
293
+ * Specify whether or not a copy button should be used/rendered.
294
+ */
295
+ hideCopyButton: PropTypes.bool,
296
+
297
+ /**
298
+ * Specify whether you are using the light variant of the Code Snippet,
299
+ * typically used for inline snippet to display an alternate color
300
+ */
301
+ light: deprecate(PropTypes.bool, 'The `light` prop for `CodeSnippet` has ' + 'been deprecated in favor of the new `Layer` component. It will be removed in the next major release.'),
302
+
303
+ /**
304
+ * Specify the maximum number of rows to be shown when in collapsed view
305
+ */
306
+ maxCollapsedNumberOfRows: PropTypes.number,
307
+
308
+ /**
309
+ * Specify the maximum number of rows to be shown when in expanded view
310
+ */
311
+ maxExpandedNumberOfRows: PropTypes.number,
312
+
313
+ /**
314
+ * Specify the minimum number of rows to be shown when in collapsed view
315
+ */
316
+ minCollapsedNumberOfRows: PropTypes.number,
317
+
318
+ /**
319
+ * Specify the minimum number of rows to be shown when in expanded view
320
+ */
321
+ minExpandedNumberOfRows: PropTypes.number,
322
+
323
+ /**
324
+ * An optional handler to listen to the `onClick` even fired by the Copy
325
+ * Button
326
+ */
327
+ onClick: PropTypes.func,
328
+
329
+ /**
330
+ * Specify a string that is displayed when the Code Snippet has been
331
+ * interacted with to show more lines
332
+ */
333
+ showLessText: PropTypes.string,
334
+
335
+ /**
336
+ * Specify a string that is displayed when the Code Snippet text is more
337
+ * than 15 lines
338
+ */
339
+ showMoreText: PropTypes.string,
340
+
341
+ /**
342
+ * Provide the type of Code Snippet
343
+ */
344
+ type: PropTypes.oneOf(['single', 'inline', 'multi']),
345
+
346
+ /**
347
+ * Specify whether or not to wrap the text.
348
+ */
349
+ wrapText: PropTypes.bool
350
+ };
351
+ CodeSnippet.defaultProps = {
352
+ ['aria-label']: 'Copy to clipboard',
353
+ type: 'single',
354
+ showMoreText: 'Show more',
355
+ showLessText: 'Show less',
356
+ wrapText: false
357
+ };
261
358
 
262
359
  export { CodeSnippet as default };