@itwin/itwinui-react 3.0.0-dev.9 → 3.0.1

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 (665) hide show
  1. package/CHANGELOG.md +80 -768
  2. package/README.md +5 -7
  3. package/cjs/core/Alert/Alert.d.ts +1 -1
  4. package/cjs/core/Alert/Alert.js +4 -3
  5. package/cjs/core/Avatar/Avatar.js +2 -1
  6. package/cjs/core/Breadcrumbs/Breadcrumbs.js +23 -6
  7. package/cjs/core/ButtonGroup/ButtonGroup.js +6 -8
  8. package/cjs/core/Buttons/{Button/Button.d.ts → Button.d.ts} +2 -2
  9. package/cjs/core/Buttons/{Button/Button.js → Button.js} +1 -1
  10. package/{esm/core/Buttons/DropdownButton → cjs/core/Buttons}/DropdownButton.d.ts +3 -3
  11. package/cjs/core/Buttons/{DropdownButton/DropdownButton.js → DropdownButton.js} +7 -7
  12. package/{esm/core/Buttons/IconButton → cjs/core/Buttons}/IconButton.d.ts +2 -2
  13. package/cjs/core/Buttons/{IconButton/IconButton.js → IconButton.js} +6 -3
  14. package/{esm/core/Buttons/IdeasButton → cjs/core/Buttons}/IdeasButton.d.ts +1 -1
  15. package/cjs/core/Buttons/{IdeasButton/IdeasButton.js → IdeasButton.js} +3 -3
  16. package/cjs/core/Buttons/{SplitButton/SplitButton.d.ts → SplitButton.d.ts} +3 -3
  17. package/cjs/core/Buttons/{SplitButton/SplitButton.js → SplitButton.js} +14 -13
  18. package/cjs/core/Carousel/Carousel.d.ts +14 -7
  19. package/cjs/core/Carousel/Carousel.js +9 -39
  20. package/cjs/core/Carousel/CarouselContext.d.ts +0 -4
  21. package/cjs/core/Carousel/CarouselDot.js +1 -1
  22. package/cjs/core/Carousel/CarouselDotsList.js +26 -2
  23. package/cjs/core/Carousel/CarouselNavigation.d.ts +3 -3
  24. package/cjs/core/Carousel/CarouselNavigation.js +13 -26
  25. package/cjs/core/Carousel/CarouselSlide.d.ts +1 -1
  26. package/cjs/core/Carousel/CarouselSlide.js +12 -2
  27. package/cjs/core/Carousel/CarouselSlider.d.ts +1 -1
  28. package/cjs/core/Carousel/CarouselSlider.js +2 -2
  29. package/cjs/core/Checkbox/Checkbox.js +7 -7
  30. package/cjs/core/ColorPicker/ColorBuilder.js +5 -3
  31. package/cjs/core/ColorPicker/ColorInputPanel.js +50 -30
  32. package/cjs/core/ColorPicker/ColorPalette.js +2 -80
  33. package/cjs/core/ColorPicker/ColorPicker.d.ts +9 -0
  34. package/cjs/core/ColorPicker/ColorPicker.js +6 -1
  35. package/cjs/core/ColorPicker/ColorSwatch.d.ts +1 -1
  36. package/cjs/core/ColorPicker/ColorSwatch.js +25 -15
  37. package/cjs/core/ComboBox/ComboBox.d.ts +6 -1
  38. package/cjs/core/ComboBox/ComboBox.js +19 -18
  39. package/cjs/core/ComboBox/ComboBoxEndIcon.js +2 -1
  40. package/cjs/core/ComboBox/ComboBoxInput.d.ts +1 -1
  41. package/cjs/core/ComboBox/ComboBoxInput.js +10 -10
  42. package/cjs/core/ComboBox/ComboBoxInputContainer.js +6 -6
  43. package/cjs/core/ComboBox/ComboBoxMenu.d.ts +1 -1
  44. package/cjs/core/ComboBox/ComboBoxMenu.js +12 -14
  45. package/cjs/core/ComboBox/helpers.d.ts +1 -1
  46. package/cjs/core/DatePicker/DatePicker.d.ts +9 -0
  47. package/cjs/core/DatePicker/DatePicker.js +13 -8
  48. package/cjs/core/Dialog/DialogBackdrop.js +4 -4
  49. package/cjs/core/Dialog/DialogTitleBar.js +2 -2
  50. package/cjs/core/{utils/components → Divider}/Divider.d.ts +1 -1
  51. package/cjs/core/{utils/components → Divider}/Divider.js +1 -1
  52. package/cjs/core/DropdownMenu/DropdownMenu.d.ts +2 -2
  53. package/cjs/core/DropdownMenu/DropdownMenu.js +4 -3
  54. package/cjs/core/ExpandableBlock/ExpandableBlock.d.ts +1 -1
  55. package/cjs/core/ExpandableBlock/ExpandableBlock.js +3 -2
  56. package/cjs/core/FileUpload/FileUploadCard.js +3 -2
  57. package/cjs/core/FileUpload/FileUploadTemplate.js +1 -1
  58. package/cjs/core/{utils/components → Flex}/Flex.d.ts +2 -2
  59. package/cjs/core/{utils/components → Flex}/Flex.js +1 -1
  60. package/cjs/core/Header/Header.js +11 -11
  61. package/cjs/core/Header/HeaderBasicButton.d.ts +1 -1
  62. package/cjs/core/Header/HeaderButton.d.ts +2 -2
  63. package/cjs/core/Header/HeaderDropdownButton.d.ts +1 -1
  64. package/cjs/core/Header/HeaderDropdownButton.js +6 -6
  65. package/cjs/core/Header/HeaderSplitButton.d.ts +1 -1
  66. package/cjs/core/Header/HeaderSplitButton.js +7 -7
  67. package/{esm/core/utils/components → cjs/core/Icon}/Icon.d.ts +2 -2
  68. package/cjs/core/{utils/components → Icon}/Icon.js +1 -1
  69. package/cjs/core/InformationPanel/InformationPanelHeader.js +7 -7
  70. package/cjs/core/Input/Input.d.ts +0 -1
  71. package/cjs/core/Input/Input.js +0 -1
  72. package/cjs/core/InputGroup/InputGroup.d.ts +1 -1
  73. package/cjs/core/InputGroup/InputGroup.js +6 -6
  74. package/cjs/core/InputWithDecorations/InputWithDecorations.d.ts +1 -1
  75. package/cjs/core/InputWithDecorations/InputWithDecorations.js +2 -2
  76. package/cjs/core/LabeledInput/LabeledInput.d.ts +4 -4
  77. package/cjs/core/LabeledInput/LabeledInput.js +11 -13
  78. package/cjs/core/LabeledSelect/LabeledSelect.d.ts +2 -2
  79. package/cjs/core/LabeledSelect/LabeledSelect.js +10 -9
  80. package/cjs/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
  81. package/cjs/core/LabeledTextarea/LabeledTextarea.js +2 -2
  82. package/{esm/core/utils/components → cjs/core/LinkAction}/LinkAction.d.ts +2 -2
  83. package/cjs/core/{utils/components → LinkAction}/LinkAction.js +1 -1
  84. package/cjs/core/Menu/MenuItem.js +2 -1
  85. package/cjs/core/Menu/MenuItemSkeleton.js +2 -1
  86. package/cjs/core/Modal/Modal.js +5 -5
  87. package/cjs/core/NonIdealState/ErrorPage.js +17 -15
  88. package/cjs/core/{utils/components → Popover}/Popover.d.ts +29 -13
  89. package/cjs/core/{utils/components → Popover}/Popover.js +43 -25
  90. package/cjs/core/RadioTiles/RadioTileGroup.d.ts +1 -1
  91. package/cjs/core/RadioTiles/RadioTileGroup.js +4 -4
  92. package/cjs/core/SearchBox/SearchBox.d.ts +3 -2
  93. package/cjs/core/SearchBox/SearchBox.js +4 -3
  94. package/cjs/core/Select/Select.d.ts +2 -2
  95. package/cjs/core/Select/Select.js +39 -30
  96. package/cjs/core/Select/SelectTagContainer.js +2 -2
  97. package/cjs/core/SideNavigation/SideNavigation.js +5 -5
  98. package/cjs/core/SideNavigation/SidenavButton.d.ts +1 -1
  99. package/cjs/core/SideNavigation/SidenavButton.js +2 -2
  100. package/cjs/core/Slider/Slider.d.ts +3 -7
  101. package/cjs/core/Slider/Slider.js +8 -22
  102. package/cjs/core/Slider/Thumb.d.ts +2 -3
  103. package/cjs/core/Slider/Thumb.js +5 -9
  104. package/cjs/core/StatusMessage/StatusMessage.d.ts +1 -1
  105. package/cjs/core/StatusMessage/StatusMessage.js +2 -1
  106. package/cjs/core/Stepper/StepperStep.js +7 -7
  107. package/cjs/core/Stepper/WorkflowDiagramStep.js +5 -5
  108. package/cjs/core/Surface/Surface.d.ts +8 -0
  109. package/cjs/core/Surface/Surface.js +19 -1
  110. package/cjs/core/Table/SubRowExpander.d.ts +1 -1
  111. package/cjs/core/Table/SubRowExpander.js +2 -2
  112. package/cjs/core/Table/Table.d.ts +1 -1
  113. package/cjs/core/Table/Table.js +53 -60
  114. package/cjs/core/Table/TableCell.d.ts +1 -1
  115. package/cjs/core/Table/TablePaginator.js +27 -25
  116. package/cjs/core/Table/TableRowMemoized.d.ts +1 -1
  117. package/cjs/core/Table/actionHandlers/expandHandler.d.ts +1 -1
  118. package/cjs/core/Table/actionHandlers/filterHandler.d.ts +1 -1
  119. package/cjs/core/Table/actionHandlers/resizeHandler.d.ts +17 -17
  120. package/cjs/core/Table/actionHandlers/selectHandler.d.ts +8 -8
  121. package/cjs/core/Table/cells/DefaultCell.d.ts +1 -1
  122. package/cjs/core/Table/cells/EditableCell.d.ts +1 -1
  123. package/cjs/core/Table/columns/actionColumn.d.ts +2 -2
  124. package/cjs/core/Table/columns/actionColumn.js +10 -15
  125. package/cjs/core/Table/columns/expanderColumn.d.ts +1 -1
  126. package/cjs/core/Table/columns/expanderColumn.js +5 -4
  127. package/cjs/core/Table/columns/selectionColumn.d.ts +1 -1
  128. package/cjs/core/Table/columns/selectionColumn.js +5 -5
  129. package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.d.ts +1 -1
  130. package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +25 -19
  131. package/cjs/core/Table/filters/FilterButtonBar.js +3 -3
  132. package/cjs/core/Table/filters/FilterToggle.d.ts +1 -1
  133. package/cjs/core/Table/filters/FilterToggle.js +5 -3
  134. package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +3 -3
  135. package/cjs/core/Table/filters/TextFilter/TextFilter.js +2 -2
  136. package/cjs/core/Table/filters/customFilterFunctions.d.ts +1 -1
  137. package/cjs/core/Table/filters/defaultFilterFunctions.d.ts +1 -1
  138. package/cjs/core/Table/filters/types.d.ts +2 -19
  139. package/cjs/core/Table/hooks/useColumnDragAndDrop.d.ts +1 -1
  140. package/cjs/core/Table/hooks/useExpanderCell.d.ts +1 -1
  141. package/cjs/core/Table/hooks/useResizeColumns.d.ts +1 -1
  142. package/cjs/core/Table/hooks/useScrollToRow.d.ts +1 -1
  143. package/cjs/core/Table/hooks/useScrollToRow.js +1 -1
  144. package/cjs/core/Table/hooks/useSelectionCell.d.ts +1 -1
  145. package/cjs/core/Table/hooks/useStickyColumns.d.ts +1 -1
  146. package/cjs/core/Table/hooks/useSubRowFiltering.d.ts +1 -1
  147. package/cjs/core/Table/hooks/useSubRowSelection.d.ts +1 -1
  148. package/cjs/core/Table/index.d.ts +1 -1
  149. package/cjs/core/Table/utils.d.ts +1 -1
  150. package/cjs/core/Tabs/Tabs.d.ts +222 -52
  151. package/cjs/core/Tabs/Tabs.js +429 -375
  152. package/cjs/core/Tag/Tag.js +2 -2
  153. package/cjs/core/Textarea/Textarea.js +2 -2
  154. package/cjs/core/ThemeProvider/ThemeProvider.d.ts +3 -2
  155. package/cjs/core/ThemeProvider/ThemeProvider.js +17 -8
  156. package/cjs/core/Tile/Tile.d.ts +2 -2
  157. package/cjs/core/Tile/Tile.js +20 -18
  158. package/cjs/core/Toast/Toast.js +2 -2
  159. package/cjs/core/TransferList/TransferList.d.ts +1 -1
  160. package/cjs/core/TransferList/TransferList.js +6 -5
  161. package/cjs/core/Tree/TreeNodeExpander.d.ts +1 -1
  162. package/cjs/core/Tree/TreeNodeExpander.js +2 -2
  163. package/{esm/core/Typography/Anchor → cjs/core/Typography}/Anchor.d.ts +1 -1
  164. package/cjs/core/Typography/{Anchor/Anchor.js → Anchor.js} +1 -1
  165. package/{esm/core/Typography/Blockquote → cjs/core/Typography}/Blockquote.d.ts +1 -1
  166. package/cjs/core/Typography/{Blockquote/Blockquote.js → Blockquote.js} +1 -1
  167. package/cjs/core/Typography/{Code/Code.d.ts → Code.d.ts} +1 -1
  168. package/cjs/core/Typography/{Code/Code.js → Code.js} +1 -1
  169. package/{esm/core/Typography/Kbd → cjs/core/Typography}/Kbd.d.ts +1 -1
  170. package/cjs/core/Typography/{Kbd/Kbd.js → Kbd.js} +1 -1
  171. package/{esm/core/Typography/Text → cjs/core/Typography}/Text.d.ts +1 -1
  172. package/cjs/core/Typography/{Text/Text.js → Text.js} +1 -1
  173. package/{esm/core/utils/components → cjs/core/VisuallyHidden}/VisuallyHidden.d.ts +1 -1
  174. package/cjs/core/{utils/components → VisuallyHidden}/VisuallyHidden.js +1 -1
  175. package/cjs/core/utils/components/AutoclearingHiddenLiveRegion.js +1 -1
  176. package/cjs/core/utils/components/InputContainer.js +4 -4
  177. package/cjs/core/utils/components/WithCSSTransition.js +7 -1
  178. package/cjs/core/utils/components/index.d.ts +0 -6
  179. package/cjs/core/utils/components/index.js +0 -6
  180. package/cjs/core/utils/functions/dev.d.ts +11 -0
  181. package/cjs/core/utils/functions/dev.js +34 -0
  182. package/cjs/core/utils/functions/index.d.ts +1 -0
  183. package/cjs/core/utils/functions/index.js +1 -0
  184. package/cjs/core/utils/hooks/useGlobals.d.ts +1 -1
  185. package/cjs/core/utils/hooks/useGlobals.js +3 -7
  186. package/cjs/core/utils/hooks/useOverflow.js +3 -1
  187. package/cjs/index.d.ts +112 -2
  188. package/cjs/index.js +950 -5
  189. package/cjs/react-table/react-table.d.ts +745 -0
  190. package/cjs/{core/Badge/index.js → react-table/react-table.js} +5 -10
  191. package/cjs/styles.js +15 -15
  192. package/esm/core/Alert/Alert.d.ts +1 -1
  193. package/esm/core/Alert/Alert.js +2 -2
  194. package/esm/core/Avatar/Avatar.js +2 -6
  195. package/esm/core/Breadcrumbs/Breadcrumbs.js +24 -6
  196. package/esm/core/ButtonGroup/ButtonGroup.js +6 -8
  197. package/esm/core/Buttons/{Button/Button.d.ts → Button.d.ts} +2 -2
  198. package/esm/core/Buttons/{Button/Button.js → Button.js} +1 -1
  199. package/{cjs/core/Buttons/DropdownButton → esm/core/Buttons}/DropdownButton.d.ts +3 -3
  200. package/esm/core/Buttons/{DropdownButton/DropdownButton.js → DropdownButton.js} +3 -3
  201. package/{cjs/core/Buttons/IconButton → esm/core/Buttons}/IconButton.d.ts +2 -2
  202. package/esm/core/Buttons/{IconButton/IconButton.js → IconButton.js} +3 -2
  203. package/{cjs/core/Buttons/IdeasButton → esm/core/Buttons}/IdeasButton.d.ts +1 -1
  204. package/esm/core/Buttons/{IdeasButton/IdeasButton.js → IdeasButton.js} +2 -2
  205. package/esm/core/Buttons/{SplitButton/SplitButton.d.ts → SplitButton.d.ts} +3 -3
  206. package/esm/core/Buttons/{SplitButton/SplitButton.js → SplitButton.js} +5 -5
  207. package/esm/core/Carousel/Carousel.d.ts +14 -7
  208. package/esm/core/Carousel/Carousel.js +9 -39
  209. package/esm/core/Carousel/CarouselContext.d.ts +0 -4
  210. package/esm/core/Carousel/CarouselDot.js +1 -1
  211. package/esm/core/Carousel/CarouselDotsList.js +26 -2
  212. package/esm/core/Carousel/CarouselNavigation.d.ts +3 -3
  213. package/esm/core/Carousel/CarouselNavigation.js +6 -23
  214. package/esm/core/Carousel/CarouselSlide.d.ts +1 -1
  215. package/esm/core/Carousel/CarouselSlide.js +15 -3
  216. package/esm/core/Carousel/CarouselSlider.d.ts +1 -1
  217. package/esm/core/Carousel/CarouselSlider.js +2 -2
  218. package/esm/core/Checkbox/Checkbox.js +1 -1
  219. package/esm/core/ColorPicker/ColorBuilder.js +3 -1
  220. package/esm/core/ColorPicker/ColorInputPanel.js +27 -7
  221. package/esm/core/ColorPicker/ColorPalette.js +3 -83
  222. package/esm/core/ColorPicker/ColorPicker.d.ts +9 -0
  223. package/esm/core/ColorPicker/ColorPicker.js +6 -1
  224. package/esm/core/ColorPicker/ColorSwatch.d.ts +1 -1
  225. package/esm/core/ColorPicker/ColorSwatch.js +18 -12
  226. package/esm/core/ComboBox/ComboBox.d.ts +6 -1
  227. package/esm/core/ComboBox/ComboBox.js +6 -4
  228. package/esm/core/ComboBox/ComboBoxEndIcon.js +2 -1
  229. package/esm/core/ComboBox/ComboBoxInput.d.ts +1 -1
  230. package/esm/core/ComboBox/ComboBoxInput.js +1 -1
  231. package/esm/core/ComboBox/ComboBoxInputContainer.js +1 -1
  232. package/esm/core/ComboBox/ComboBoxMenu.d.ts +1 -1
  233. package/esm/core/ComboBox/ComboBoxMenu.js +2 -4
  234. package/esm/core/ComboBox/helpers.d.ts +1 -1
  235. package/esm/core/DatePicker/DatePicker.d.ts +9 -0
  236. package/esm/core/DatePicker/DatePicker.js +12 -3
  237. package/esm/core/Dialog/DialogBackdrop.js +1 -1
  238. package/esm/core/Dialog/DialogTitleBar.js +1 -1
  239. package/esm/core/{utils/components → Divider}/Divider.d.ts +1 -1
  240. package/esm/core/{utils/components → Divider}/Divider.js +1 -1
  241. package/esm/core/DropdownMenu/DropdownMenu.d.ts +2 -2
  242. package/esm/core/DropdownMenu/DropdownMenu.js +2 -3
  243. package/esm/core/ExpandableBlock/ExpandableBlock.d.ts +1 -1
  244. package/esm/core/ExpandableBlock/ExpandableBlock.js +1 -1
  245. package/esm/core/FileUpload/FileUploadCard.js +2 -2
  246. package/esm/core/FileUpload/FileUploadTemplate.js +1 -1
  247. package/esm/core/{utils/components → Flex}/Flex.d.ts +2 -2
  248. package/esm/core/{utils/components → Flex}/Flex.js +1 -1
  249. package/esm/core/Header/Header.js +2 -2
  250. package/esm/core/Header/HeaderBasicButton.d.ts +1 -1
  251. package/esm/core/Header/HeaderButton.d.ts +2 -2
  252. package/esm/core/Header/HeaderDropdownButton.d.ts +1 -1
  253. package/esm/core/Header/HeaderDropdownButton.js +1 -1
  254. package/esm/core/Header/HeaderSplitButton.d.ts +1 -1
  255. package/esm/core/Header/HeaderSplitButton.js +1 -1
  256. package/{cjs/core/utils/components → esm/core/Icon}/Icon.d.ts +2 -2
  257. package/esm/core/{utils/components → Icon}/Icon.js +1 -1
  258. package/esm/core/InformationPanel/InformationPanelHeader.js +1 -1
  259. package/esm/core/Input/Input.d.ts +0 -1
  260. package/esm/core/Input/Input.js +0 -1
  261. package/esm/core/InputGroup/InputGroup.d.ts +1 -1
  262. package/esm/core/InputGroup/InputGroup.js +3 -3
  263. package/esm/core/InputWithDecorations/InputWithDecorations.d.ts +1 -1
  264. package/esm/core/InputWithDecorations/InputWithDecorations.js +1 -1
  265. package/esm/core/LabeledInput/LabeledInput.d.ts +4 -4
  266. package/esm/core/LabeledInput/LabeledInput.js +5 -4
  267. package/esm/core/LabeledSelect/LabeledSelect.d.ts +2 -2
  268. package/esm/core/LabeledSelect/LabeledSelect.js +6 -4
  269. package/esm/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
  270. package/esm/core/LabeledTextarea/LabeledTextarea.js +2 -2
  271. package/{cjs/core/utils/components → esm/core/LinkAction}/LinkAction.d.ts +2 -2
  272. package/esm/core/{utils/components → LinkAction}/LinkAction.js +1 -1
  273. package/esm/core/Menu/MenuItem.js +1 -1
  274. package/esm/core/Menu/MenuItemSkeleton.js +2 -1
  275. package/esm/core/Modal/Modal.js +1 -1
  276. package/esm/core/NonIdealState/ErrorPage.js +2 -2
  277. package/esm/core/{utils/components → Popover}/Popover.d.ts +29 -13
  278. package/esm/core/{utils/components → Popover}/Popover.js +45 -25
  279. package/esm/core/RadioTiles/RadioTileGroup.d.ts +1 -1
  280. package/esm/core/RadioTiles/RadioTileGroup.js +1 -1
  281. package/esm/core/SearchBox/SearchBox.d.ts +3 -2
  282. package/esm/core/SearchBox/SearchBox.js +2 -2
  283. package/esm/core/Select/Select.d.ts +2 -2
  284. package/esm/core/Select/Select.js +17 -10
  285. package/esm/core/Select/SelectTagContainer.js +1 -1
  286. package/esm/core/SideNavigation/SideNavigation.js +2 -2
  287. package/esm/core/SideNavigation/SidenavButton.d.ts +1 -1
  288. package/esm/core/SideNavigation/SidenavButton.js +1 -1
  289. package/esm/core/Slider/Slider.d.ts +3 -7
  290. package/esm/core/Slider/Slider.js +8 -19
  291. package/esm/core/Slider/Thumb.d.ts +2 -3
  292. package/esm/core/Slider/Thumb.js +2 -6
  293. package/esm/core/StatusMessage/StatusMessage.d.ts +1 -1
  294. package/esm/core/StatusMessage/StatusMessage.js +2 -1
  295. package/esm/core/Stepper/StepperStep.js +1 -1
  296. package/esm/core/Stepper/WorkflowDiagramStep.js +1 -1
  297. package/esm/core/Surface/Surface.d.ts +8 -0
  298. package/esm/core/Surface/Surface.js +19 -1
  299. package/esm/core/Table/SubRowExpander.d.ts +1 -1
  300. package/esm/core/Table/SubRowExpander.js +1 -1
  301. package/esm/core/Table/Table.d.ts +1 -1
  302. package/esm/core/Table/Table.js +7 -13
  303. package/esm/core/Table/TableCell.d.ts +1 -1
  304. package/esm/core/Table/TablePaginator.js +5 -3
  305. package/esm/core/Table/TableRowMemoized.d.ts +1 -1
  306. package/esm/core/Table/actionHandlers/expandHandler.d.ts +1 -1
  307. package/esm/core/Table/actionHandlers/filterHandler.d.ts +1 -1
  308. package/esm/core/Table/actionHandlers/resizeHandler.d.ts +17 -17
  309. package/esm/core/Table/actionHandlers/selectHandler.d.ts +8 -8
  310. package/esm/core/Table/cells/DefaultCell.d.ts +1 -1
  311. package/esm/core/Table/cells/EditableCell.d.ts +1 -1
  312. package/esm/core/Table/columns/actionColumn.d.ts +2 -2
  313. package/esm/core/Table/columns/actionColumn.js +4 -6
  314. package/esm/core/Table/columns/expanderColumn.d.ts +1 -1
  315. package/esm/core/Table/columns/expanderColumn.js +2 -1
  316. package/esm/core/Table/columns/selectionColumn.d.ts +1 -1
  317. package/esm/core/Table/columns/selectionColumn.js +1 -1
  318. package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.d.ts +1 -1
  319. package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +8 -5
  320. package/esm/core/Table/filters/FilterButtonBar.js +1 -1
  321. package/esm/core/Table/filters/FilterToggle.d.ts +1 -1
  322. package/esm/core/Table/filters/FilterToggle.js +4 -7
  323. package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +1 -1
  324. package/esm/core/Table/filters/TextFilter/TextFilter.js +1 -1
  325. package/esm/core/Table/filters/customFilterFunctions.d.ts +1 -1
  326. package/esm/core/Table/filters/defaultFilterFunctions.d.ts +1 -1
  327. package/esm/core/Table/filters/types.d.ts +2 -19
  328. package/esm/core/Table/hooks/useColumnDragAndDrop.d.ts +1 -1
  329. package/esm/core/Table/hooks/useExpanderCell.d.ts +1 -1
  330. package/esm/core/Table/hooks/useResizeColumns.d.ts +1 -1
  331. package/esm/core/Table/hooks/useScrollToRow.d.ts +1 -1
  332. package/esm/core/Table/hooks/useScrollToRow.js +1 -1
  333. package/esm/core/Table/hooks/useSelectionCell.d.ts +1 -1
  334. package/esm/core/Table/hooks/useStickyColumns.d.ts +1 -1
  335. package/esm/core/Table/hooks/useSubRowFiltering.d.ts +1 -1
  336. package/esm/core/Table/hooks/useSubRowSelection.d.ts +1 -1
  337. package/esm/core/Table/index.d.ts +1 -1
  338. package/esm/core/Table/utils.d.ts +1 -1
  339. package/esm/core/Tabs/Tabs.d.ts +222 -52
  340. package/esm/core/Tabs/Tabs.js +424 -368
  341. package/esm/core/Tag/Tag.js +1 -1
  342. package/esm/core/Textarea/Textarea.js +1 -1
  343. package/esm/core/ThemeProvider/ThemeProvider.d.ts +3 -2
  344. package/esm/core/ThemeProvider/ThemeProvider.js +17 -8
  345. package/esm/core/Tile/Tile.d.ts +2 -2
  346. package/esm/core/Tile/Tile.js +15 -14
  347. package/esm/core/Toast/Toast.js +1 -1
  348. package/esm/core/TransferList/TransferList.d.ts +1 -1
  349. package/esm/core/TransferList/TransferList.js +3 -2
  350. package/esm/core/Tree/TreeNodeExpander.d.ts +1 -1
  351. package/esm/core/Tree/TreeNodeExpander.js +1 -1
  352. package/{cjs/core/Typography/Anchor → esm/core/Typography}/Anchor.d.ts +1 -1
  353. package/esm/core/Typography/{Anchor/Anchor.js → Anchor.js} +1 -1
  354. package/{cjs/core/Typography/Blockquote → esm/core/Typography}/Blockquote.d.ts +1 -1
  355. package/esm/core/Typography/{Blockquote/Blockquote.js → Blockquote.js} +1 -1
  356. package/esm/core/Typography/{Code/Code.d.ts → Code.d.ts} +1 -1
  357. package/esm/core/Typography/{Code/Code.js → Code.js} +1 -1
  358. package/{cjs/core/Typography/Kbd → esm/core/Typography}/Kbd.d.ts +1 -1
  359. package/esm/core/Typography/{Kbd/Kbd.js → Kbd.js} +1 -1
  360. package/{cjs/core/Typography/Text → esm/core/Typography}/Text.d.ts +1 -1
  361. package/esm/core/Typography/{Text/Text.js → Text.js} +1 -1
  362. package/{cjs/core/utils/components → esm/core/VisuallyHidden}/VisuallyHidden.d.ts +1 -1
  363. package/esm/core/{utils/components → VisuallyHidden}/VisuallyHidden.js +1 -1
  364. package/esm/core/utils/components/AutoclearingHiddenLiveRegion.js +1 -1
  365. package/esm/core/utils/components/InputContainer.js +2 -2
  366. package/esm/core/utils/components/WithCSSTransition.js +7 -1
  367. package/esm/core/utils/components/index.d.ts +0 -6
  368. package/esm/core/utils/components/index.js +0 -6
  369. package/esm/core/utils/functions/dev.d.ts +11 -0
  370. package/esm/core/utils/functions/dev.js +29 -0
  371. package/esm/core/utils/functions/index.d.ts +1 -0
  372. package/esm/core/utils/functions/index.js +1 -0
  373. package/esm/core/utils/hooks/useGlobals.d.ts +1 -1
  374. package/esm/core/utils/hooks/useGlobals.js +1 -5
  375. package/esm/core/utils/hooks/useOverflow.js +3 -1
  376. package/esm/index.d.ts +112 -2
  377. package/esm/index.js +123 -2
  378. package/esm/react-table/react-table.d.ts +745 -0
  379. package/esm/{core/Backdrop/index.js → react-table/react-table.js} +5 -1
  380. package/esm/styles.js +15 -15
  381. package/package.json +22 -21
  382. package/react-table.d.ts +745 -0
  383. package/styles.css +57 -66
  384. package/cjs/core/Alert/index.d.ts +0 -3
  385. package/cjs/core/Alert/index.js +0 -15
  386. package/cjs/core/Avatar/index.d.ts +0 -3
  387. package/cjs/core/Avatar/index.js +0 -15
  388. package/cjs/core/AvatarGroup/index.d.ts +0 -3
  389. package/cjs/core/AvatarGroup/index.js +0 -15
  390. package/cjs/core/Backdrop/index.d.ts +0 -1
  391. package/cjs/core/Backdrop/index.js +0 -14
  392. package/cjs/core/Badge/index.d.ts +0 -3
  393. package/cjs/core/Breadcrumbs/index.d.ts +0 -3
  394. package/cjs/core/Breadcrumbs/index.js +0 -15
  395. package/cjs/core/ButtonGroup/index.d.ts +0 -3
  396. package/cjs/core/ButtonGroup/index.js +0 -15
  397. package/cjs/core/Buttons/Button/index.d.ts +0 -3
  398. package/cjs/core/Buttons/Button/index.js +0 -15
  399. package/cjs/core/Buttons/DropdownButton/index.d.ts +0 -3
  400. package/cjs/core/Buttons/DropdownButton/index.js +0 -15
  401. package/cjs/core/Buttons/IconButton/index.d.ts +0 -3
  402. package/cjs/core/Buttons/IconButton/index.js +0 -15
  403. package/cjs/core/Buttons/IdeasButton/index.d.ts +0 -3
  404. package/cjs/core/Buttons/IdeasButton/index.js +0 -15
  405. package/cjs/core/Buttons/SplitButton/index.d.ts +0 -3
  406. package/cjs/core/Buttons/SplitButton/index.js +0 -15
  407. package/cjs/core/Buttons/index.d.ts +0 -5
  408. package/cjs/core/Buttons/index.js +0 -47
  409. package/cjs/core/Carousel/index.d.ts +0 -3
  410. package/cjs/core/Carousel/index.js +0 -15
  411. package/cjs/core/Checkbox/index.d.ts +0 -3
  412. package/cjs/core/Checkbox/index.js +0 -15
  413. package/cjs/core/ColorPicker/index.d.ts +0 -7
  414. package/cjs/core/ColorPicker/index.js +0 -48
  415. package/cjs/core/ComboBox/index.d.ts +0 -3
  416. package/cjs/core/ComboBox/index.js +0 -15
  417. package/cjs/core/DatePicker/index.d.ts +0 -3
  418. package/cjs/core/DatePicker/index.js +0 -21
  419. package/cjs/core/Dialog/index.d.ts +0 -3
  420. package/cjs/core/Dialog/index.js +0 -15
  421. package/cjs/core/DropdownMenu/index.d.ts +0 -4
  422. package/cjs/core/DropdownMenu/index.js +0 -15
  423. package/cjs/core/ExpandableBlock/index.d.ts +0 -3
  424. package/cjs/core/ExpandableBlock/index.js +0 -15
  425. package/cjs/core/Fieldset/index.d.ts +0 -3
  426. package/cjs/core/Fieldset/index.js +0 -15
  427. package/cjs/core/FileUpload/index.d.ts +0 -6
  428. package/cjs/core/FileUpload/index.js +0 -40
  429. package/cjs/core/Footer/index.d.ts +0 -4
  430. package/cjs/core/Footer/index.js +0 -21
  431. package/cjs/core/Header/index.d.ts +0 -6
  432. package/cjs/core/Header/index.js +0 -40
  433. package/cjs/core/InformationPanel/index.d.ts +0 -7
  434. package/cjs/core/InformationPanel/index.js +0 -48
  435. package/cjs/core/Input/index.d.ts +0 -3
  436. package/cjs/core/Input/index.js +0 -15
  437. package/cjs/core/InputGrid/index.d.ts +0 -3
  438. package/cjs/core/InputGrid/index.js +0 -15
  439. package/cjs/core/InputGroup/index.d.ts +0 -3
  440. package/cjs/core/InputGroup/index.js +0 -15
  441. package/cjs/core/InputWithDecorations/index.d.ts +0 -3
  442. package/cjs/core/InputWithDecorations/index.js +0 -15
  443. package/cjs/core/Label/index.d.ts +0 -3
  444. package/cjs/core/Label/index.js +0 -15
  445. package/cjs/core/LabeledInput/index.d.ts +0 -3
  446. package/cjs/core/LabeledInput/index.js +0 -15
  447. package/cjs/core/LabeledSelect/index.d.ts +0 -3
  448. package/cjs/core/LabeledSelect/index.js +0 -15
  449. package/cjs/core/LabeledTextarea/index.d.ts +0 -3
  450. package/cjs/core/LabeledTextarea/index.js +0 -15
  451. package/cjs/core/List/index.d.ts +0 -2
  452. package/cjs/core/List/index.js +0 -21
  453. package/cjs/core/Menu/index.d.ts +0 -5
  454. package/cjs/core/Menu/index.js +0 -47
  455. package/cjs/core/Modal/index.d.ts +0 -5
  456. package/cjs/core/Modal/index.js +0 -29
  457. package/cjs/core/NonIdealState/index.d.ts +0 -5
  458. package/cjs/core/NonIdealState/index.js +0 -22
  459. package/cjs/core/NotificationMarker/index.d.ts +0 -3
  460. package/cjs/core/NotificationMarker/index.js +0 -15
  461. package/cjs/core/Overlay/index.d.ts +0 -1
  462. package/cjs/core/Overlay/index.js +0 -14
  463. package/cjs/core/ProgressIndicators/index.d.ts +0 -2
  464. package/cjs/core/ProgressIndicators/index.js +0 -21
  465. package/cjs/core/Radio/index.d.ts +0 -3
  466. package/cjs/core/Radio/index.js +0 -15
  467. package/cjs/core/RadioTiles/index.d.ts +0 -4
  468. package/cjs/core/RadioTiles/index.js +0 -22
  469. package/cjs/core/SearchBox/index.d.ts +0 -3
  470. package/cjs/core/SearchBox/index.js +0 -15
  471. package/cjs/core/Select/index.d.ts +0 -4
  472. package/cjs/core/Select/index.js +0 -15
  473. package/cjs/core/SideNavigation/index.d.ts +0 -6
  474. package/cjs/core/SideNavigation/index.js +0 -40
  475. package/cjs/core/SkipToContentLink/index.d.ts +0 -3
  476. package/cjs/core/SkipToContentLink/index.js +0 -15
  477. package/cjs/core/Slider/index.d.ts +0 -3
  478. package/cjs/core/Slider/index.js +0 -15
  479. package/cjs/core/StatusMessage/index.d.ts +0 -3
  480. package/cjs/core/StatusMessage/index.js +0 -15
  481. package/cjs/core/Stepper/index.d.ts +0 -3
  482. package/cjs/core/Stepper/index.js +0 -21
  483. package/cjs/core/Surface/index.d.ts +0 -3
  484. package/cjs/core/Surface/index.js +0 -15
  485. package/cjs/core/Tabs/Tab.d.ts +0 -40
  486. package/cjs/core/Tabs/Tab.js +0 -65
  487. package/cjs/core/Tabs/index.d.ts +0 -2
  488. package/cjs/core/Tabs/index.js +0 -21
  489. package/cjs/core/Tag/index.d.ts +0 -4
  490. package/cjs/core/Tag/index.js +0 -22
  491. package/cjs/core/Textarea/index.d.ts +0 -3
  492. package/cjs/core/Textarea/index.js +0 -15
  493. package/cjs/core/ThemeProvider/index.d.ts +0 -4
  494. package/cjs/core/ThemeProvider/index.js +0 -15
  495. package/cjs/core/Tile/index.d.ts +0 -3
  496. package/cjs/core/Tile/index.js +0 -15
  497. package/cjs/core/TimePicker/index.d.ts +0 -4
  498. package/cjs/core/TimePicker/index.js +0 -15
  499. package/cjs/core/Toast/index.d.ts +0 -1
  500. package/cjs/core/Toast/index.js +0 -14
  501. package/cjs/core/ToggleSwitch/index.d.ts +0 -3
  502. package/cjs/core/ToggleSwitch/index.js +0 -15
  503. package/cjs/core/Tooltip/index.d.ts +0 -3
  504. package/cjs/core/Tooltip/index.js +0 -15
  505. package/cjs/core/TransferList/index.d.ts +0 -3
  506. package/cjs/core/TransferList/index.js +0 -15
  507. package/cjs/core/Tree/index.d.ts +0 -4
  508. package/cjs/core/Tree/index.js +0 -28
  509. package/cjs/core/Typography/Anchor/index.d.ts +0 -3
  510. package/cjs/core/Typography/Anchor/index.js +0 -15
  511. package/cjs/core/Typography/Blockquote/index.d.ts +0 -3
  512. package/cjs/core/Typography/Blockquote/index.js +0 -15
  513. package/cjs/core/Typography/Code/index.d.ts +0 -3
  514. package/cjs/core/Typography/Code/index.js +0 -15
  515. package/cjs/core/Typography/Kbd/index.d.ts +0 -3
  516. package/cjs/core/Typography/Kbd/index.js +0 -21
  517. package/cjs/core/Typography/Text/index.d.ts +0 -3
  518. package/cjs/core/Typography/Text/index.js +0 -15
  519. package/cjs/core/Typography/index.d.ts +0 -5
  520. package/cjs/core/Typography/index.js +0 -54
  521. package/cjs/core/index.d.ts +0 -68
  522. package/cjs/core/index.js +0 -916
  523. package/cjs/types/react-table-config.d.ts +0 -135
  524. package/cjs/types/react-table-config.js +0 -2
  525. package/esm/core/Alert/index.d.ts +0 -3
  526. package/esm/core/Alert/index.js +0 -6
  527. package/esm/core/Avatar/index.d.ts +0 -3
  528. package/esm/core/Avatar/index.js +0 -6
  529. package/esm/core/AvatarGroup/index.d.ts +0 -3
  530. package/esm/core/AvatarGroup/index.js +0 -6
  531. package/esm/core/Backdrop/index.d.ts +0 -1
  532. package/esm/core/Badge/index.d.ts +0 -3
  533. package/esm/core/Badge/index.js +0 -6
  534. package/esm/core/Breadcrumbs/index.d.ts +0 -3
  535. package/esm/core/Breadcrumbs/index.js +0 -6
  536. package/esm/core/ButtonGroup/index.d.ts +0 -3
  537. package/esm/core/ButtonGroup/index.js +0 -6
  538. package/esm/core/Buttons/Button/index.d.ts +0 -3
  539. package/esm/core/Buttons/Button/index.js +0 -6
  540. package/esm/core/Buttons/DropdownButton/index.d.ts +0 -3
  541. package/esm/core/Buttons/DropdownButton/index.js +0 -6
  542. package/esm/core/Buttons/IconButton/index.d.ts +0 -3
  543. package/esm/core/Buttons/IconButton/index.js +0 -6
  544. package/esm/core/Buttons/IdeasButton/index.d.ts +0 -3
  545. package/esm/core/Buttons/IdeasButton/index.js +0 -6
  546. package/esm/core/Buttons/SplitButton/index.d.ts +0 -3
  547. package/esm/core/Buttons/SplitButton/index.js +0 -6
  548. package/esm/core/Buttons/index.d.ts +0 -5
  549. package/esm/core/Buttons/index.js +0 -9
  550. package/esm/core/Carousel/index.d.ts +0 -3
  551. package/esm/core/Carousel/index.js +0 -6
  552. package/esm/core/Checkbox/index.d.ts +0 -3
  553. package/esm/core/Checkbox/index.js +0 -6
  554. package/esm/core/ColorPicker/index.d.ts +0 -7
  555. package/esm/core/ColorPicker/index.js +0 -10
  556. package/esm/core/ComboBox/index.d.ts +0 -3
  557. package/esm/core/ComboBox/index.js +0 -6
  558. package/esm/core/DatePicker/index.d.ts +0 -3
  559. package/esm/core/DatePicker/index.js +0 -6
  560. package/esm/core/Dialog/index.d.ts +0 -3
  561. package/esm/core/Dialog/index.js +0 -6
  562. package/esm/core/DropdownMenu/index.d.ts +0 -4
  563. package/esm/core/DropdownMenu/index.js +0 -6
  564. package/esm/core/ExpandableBlock/index.d.ts +0 -3
  565. package/esm/core/ExpandableBlock/index.js +0 -6
  566. package/esm/core/Fieldset/index.d.ts +0 -3
  567. package/esm/core/Fieldset/index.js +0 -6
  568. package/esm/core/FileUpload/index.d.ts +0 -6
  569. package/esm/core/FileUpload/index.js +0 -9
  570. package/esm/core/Footer/index.d.ts +0 -4
  571. package/esm/core/Footer/index.js +0 -6
  572. package/esm/core/Header/index.d.ts +0 -6
  573. package/esm/core/Header/index.js +0 -9
  574. package/esm/core/InformationPanel/index.d.ts +0 -7
  575. package/esm/core/InformationPanel/index.js +0 -10
  576. package/esm/core/Input/index.d.ts +0 -3
  577. package/esm/core/Input/index.js +0 -6
  578. package/esm/core/InputGrid/index.d.ts +0 -3
  579. package/esm/core/InputGrid/index.js +0 -6
  580. package/esm/core/InputGroup/index.d.ts +0 -3
  581. package/esm/core/InputGroup/index.js +0 -6
  582. package/esm/core/InputWithDecorations/index.d.ts +0 -3
  583. package/esm/core/InputWithDecorations/index.js +0 -6
  584. package/esm/core/Label/index.d.ts +0 -3
  585. package/esm/core/Label/index.js +0 -6
  586. package/esm/core/LabeledInput/index.d.ts +0 -3
  587. package/esm/core/LabeledInput/index.js +0 -6
  588. package/esm/core/LabeledSelect/index.d.ts +0 -3
  589. package/esm/core/LabeledSelect/index.js +0 -6
  590. package/esm/core/LabeledTextarea/index.d.ts +0 -3
  591. package/esm/core/LabeledTextarea/index.js +0 -6
  592. package/esm/core/List/index.d.ts +0 -2
  593. package/esm/core/List/index.js +0 -6
  594. package/esm/core/Menu/index.d.ts +0 -5
  595. package/esm/core/Menu/index.js +0 -9
  596. package/esm/core/Modal/index.d.ts +0 -5
  597. package/esm/core/Modal/index.js +0 -8
  598. package/esm/core/NonIdealState/index.d.ts +0 -5
  599. package/esm/core/NonIdealState/index.js +0 -7
  600. package/esm/core/NotificationMarker/index.d.ts +0 -3
  601. package/esm/core/NotificationMarker/index.js +0 -6
  602. package/esm/core/Overlay/index.d.ts +0 -1
  603. package/esm/core/Overlay/index.js +0 -5
  604. package/esm/core/ProgressIndicators/index.d.ts +0 -2
  605. package/esm/core/ProgressIndicators/index.js +0 -6
  606. package/esm/core/Radio/index.d.ts +0 -3
  607. package/esm/core/Radio/index.js +0 -6
  608. package/esm/core/RadioTiles/index.d.ts +0 -4
  609. package/esm/core/RadioTiles/index.js +0 -7
  610. package/esm/core/SearchBox/index.d.ts +0 -3
  611. package/esm/core/SearchBox/index.js +0 -6
  612. package/esm/core/Select/index.d.ts +0 -4
  613. package/esm/core/Select/index.js +0 -6
  614. package/esm/core/SideNavigation/index.d.ts +0 -6
  615. package/esm/core/SideNavigation/index.js +0 -9
  616. package/esm/core/SkipToContentLink/index.d.ts +0 -3
  617. package/esm/core/SkipToContentLink/index.js +0 -6
  618. package/esm/core/Slider/index.d.ts +0 -3
  619. package/esm/core/Slider/index.js +0 -6
  620. package/esm/core/StatusMessage/index.d.ts +0 -3
  621. package/esm/core/StatusMessage/index.js +0 -6
  622. package/esm/core/Stepper/index.d.ts +0 -3
  623. package/esm/core/Stepper/index.js +0 -6
  624. package/esm/core/Surface/index.d.ts +0 -3
  625. package/esm/core/Surface/index.js +0 -6
  626. package/esm/core/Tabs/Tab.d.ts +0 -40
  627. package/esm/core/Tabs/Tab.js +0 -57
  628. package/esm/core/Tabs/index.d.ts +0 -2
  629. package/esm/core/Tabs/index.js +0 -6
  630. package/esm/core/Tag/index.d.ts +0 -4
  631. package/esm/core/Tag/index.js +0 -7
  632. package/esm/core/Textarea/index.d.ts +0 -3
  633. package/esm/core/Textarea/index.js +0 -6
  634. package/esm/core/ThemeProvider/index.d.ts +0 -4
  635. package/esm/core/ThemeProvider/index.js +0 -6
  636. package/esm/core/Tile/index.d.ts +0 -3
  637. package/esm/core/Tile/index.js +0 -6
  638. package/esm/core/TimePicker/index.d.ts +0 -4
  639. package/esm/core/TimePicker/index.js +0 -6
  640. package/esm/core/Toast/index.d.ts +0 -1
  641. package/esm/core/Toast/index.js +0 -5
  642. package/esm/core/ToggleSwitch/index.d.ts +0 -3
  643. package/esm/core/ToggleSwitch/index.js +0 -6
  644. package/esm/core/Tooltip/index.d.ts +0 -3
  645. package/esm/core/Tooltip/index.js +0 -6
  646. package/esm/core/TransferList/index.d.ts +0 -3
  647. package/esm/core/TransferList/index.js +0 -6
  648. package/esm/core/Tree/index.d.ts +0 -4
  649. package/esm/core/Tree/index.js +0 -7
  650. package/esm/core/Typography/Anchor/index.d.ts +0 -3
  651. package/esm/core/Typography/Anchor/index.js +0 -6
  652. package/esm/core/Typography/Blockquote/index.d.ts +0 -3
  653. package/esm/core/Typography/Blockquote/index.js +0 -6
  654. package/esm/core/Typography/Code/index.d.ts +0 -3
  655. package/esm/core/Typography/Code/index.js +0 -6
  656. package/esm/core/Typography/Kbd/index.d.ts +0 -3
  657. package/esm/core/Typography/Kbd/index.js +0 -6
  658. package/esm/core/Typography/Text/index.d.ts +0 -3
  659. package/esm/core/Typography/Text/index.js +0 -6
  660. package/esm/core/Typography/index.d.ts +0 -5
  661. package/esm/core/Typography/index.js +0 -9
  662. package/esm/core/index.d.ts +0 -68
  663. package/esm/core/index.js +0 -132
  664. package/esm/types/react-table-config.d.ts +0 -135
  665. package/esm/types/react-table-config.js +0 -1
@@ -55,6 +55,7 @@ export const CarouselDotsList = React.forwardRef((props, ref) => {
55
55
  context.setCurrentIndex(index);
56
56
  context.scrollToSlide.current(index);
57
57
  }
58
+ listRef.current?.children[index]?.focus();
58
59
  onSlideChange?.(index);
59
60
  },
60
61
  [context, onSlideChange],
@@ -105,13 +106,12 @@ export const CarouselDotsList = React.forwardRef((props, ref) => {
105
106
  index < firstVisibleDotIndex || index > lastVisibleDotIndex;
106
107
  return React.createElement(CarouselDot, {
107
108
  key: index,
108
- 'aria-label': `Slide ${index}`,
109
+ 'aria-label': `Slide ${index + 1}`,
109
110
  isActive: index === currentIndex,
110
111
  onClick: () => handleSlideChange(index),
111
112
  isSmall: isSecondSmallDot,
112
113
  isSmaller: isFirstSmallDot || isClipped,
113
114
  id: idPrefix && `${idPrefix}--dot-${index}`,
114
- 'aria-controls': idPrefix && `${idPrefix}--slide-${index}`,
115
115
  });
116
116
  });
117
117
  }, [
@@ -138,6 +138,27 @@ export const CarouselDotsList = React.forwardRef((props, ref) => {
138
138
  justMounted.current = false;
139
139
  }
140
140
  }, [currentIndex, firstVisibleDotIndex, slideCount, visibleCount, width]);
141
+ const handleKeyDown = (event) => {
142
+ if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) {
143
+ return;
144
+ }
145
+ const key = event.key;
146
+ if (key === 'ArrowLeft' || key === 'ArrowRight') {
147
+ event.preventDefault();
148
+ }
149
+ };
150
+ const handleKeyUp = (event) => {
151
+ switch (event.key) {
152
+ case 'ArrowLeft': {
153
+ handleSlideChange((slideCount + currentIndex - 1) % slideCount);
154
+ break;
155
+ }
156
+ case 'ArrowRight': {
157
+ handleSlideChange((slideCount + currentIndex + 1) % slideCount);
158
+ break;
159
+ }
160
+ }
161
+ };
141
162
  return React.createElement(
142
163
  React.Fragment,
143
164
  null,
@@ -148,6 +169,9 @@ export const CarouselDotsList = React.forwardRef((props, ref) => {
148
169
  role: 'tablist',
149
170
  'aria-label': 'Slides',
150
171
  ref: refs,
172
+ onKeyDown: handleKeyDown,
173
+ onKeyUp: handleKeyUp,
174
+ tabIndex: -1,
151
175
  ...rest,
152
176
  },
153
177
  children ?? dots,
@@ -6,14 +6,14 @@ import type { PolymorphicForwardRefComponent } from '../utils/index.js';
6
6
  *
7
7
  * `children` can be specified to override what is shown in this navigation section.
8
8
  */
9
- export declare const CarouselNavigation: PolymorphicForwardRefComponent<"nav", {}> & {
9
+ export declare const CarouselNavigation: PolymorphicForwardRefComponent<"div", {}> & {
10
10
  PreviousButton: PolymorphicForwardRefComponent<"button", Omit<Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
11
11
  ref?: ((instance: HTMLButtonElement | null) => void) | React.RefObject<HTMLButtonElement> | null | undefined;
12
12
  }, "label" | "as" | "size" | "htmlDisabled" | "styleType" | "isActive" | "iconProps"> & {
13
13
  isActive?: boolean | undefined;
14
14
  label?: React.ReactNode;
15
15
  iconProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement> | undefined;
16
- } & Omit<import("../Buttons/Button/Button.js").ButtonProps, "startIcon" | "endIcon" | "labelProps" | "startIconProps" | "endIconProps"> & {
16
+ } & Omit<import("../Buttons/Button.js").ButtonProps, "startIcon" | "endIcon" | "labelProps" | "startIconProps" | "endIconProps"> & {
17
17
  as?: "button" | undefined;
18
18
  }>;
19
19
  NextButton: PolymorphicForwardRefComponent<"button", Omit<Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
@@ -22,7 +22,7 @@ export declare const CarouselNavigation: PolymorphicForwardRefComponent<"nav", {
22
22
  isActive?: boolean | undefined;
23
23
  label?: React.ReactNode;
24
24
  iconProps?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement> | undefined;
25
- } & Omit<import("../Buttons/Button/Button.js").ButtonProps, "startIcon" | "endIcon" | "labelProps" | "startIconProps" | "endIconProps"> & {
25
+ } & Omit<import("../Buttons/Button.js").ButtonProps, "startIcon" | "endIcon" | "labelProps" | "startIconProps" | "endIconProps"> & {
26
26
  as?: "button" | undefined;
27
27
  }>;
28
28
  };
@@ -5,19 +5,14 @@
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
7
  import { CarouselContext } from './CarouselContext.js';
8
- import { IconButton } from '../Buttons/index.js';
8
+ import { IconButton } from '../Buttons/IconButton.js';
9
9
  import { CarouselDotsList } from './CarouselDotsList.js';
10
10
  import { Box, SvgChevronLeft, SvgChevronRight } from '../utils/index.js';
11
11
  const CarouselNavigationComponent = React.forwardRef((props, ref) => {
12
12
  const { className, children, ...rest } = props;
13
13
  return React.createElement(
14
14
  Box,
15
- {
16
- as: 'nav',
17
- className: cx('iui-carousel-navigation', className),
18
- ref: ref,
19
- ...rest,
20
- },
15
+ { className: cx('iui-carousel-navigation', className), ref: ref, ...rest },
21
16
  children ??
22
17
  React.createElement(
23
18
  React.Fragment,
@@ -42,20 +37,14 @@ const PreviousButton = React.forwardRef((props, ref) => {
42
37
  if (!context) {
43
38
  throw new Error('CarouselNavigation should be used inside Carousel');
44
39
  }
45
- const {
46
- slideCount,
47
- currentIndex,
48
- setCurrentIndex,
49
- keysPressed,
50
- scrollToSlide,
51
- } = context;
40
+ const { slideCount, currentIndex, setCurrentIndex, scrollToSlide } = context;
52
41
  return React.createElement(
53
42
  IconButton,
54
43
  {
55
44
  styleType: 'borderless',
56
45
  size: 'small',
57
46
  tabIndex: -1,
58
- 'data-pressed': keysPressed['ArrowLeft'] || undefined,
47
+ 'aria-label': 'Previous',
59
48
  ref: ref,
60
49
  ...props,
61
50
  onClick: (e) => {
@@ -74,20 +63,14 @@ const NextButton = React.forwardRef((props, ref) => {
74
63
  if (!context) {
75
64
  throw new Error('CarouselNavigation should be used inside Carousel');
76
65
  }
77
- const {
78
- slideCount,
79
- currentIndex,
80
- setCurrentIndex,
81
- keysPressed,
82
- scrollToSlide,
83
- } = context;
66
+ const { slideCount, currentIndex, setCurrentIndex, scrollToSlide } = context;
84
67
  return React.createElement(
85
68
  IconButton,
86
69
  {
87
70
  styleType: 'borderless',
88
71
  size: 'small',
89
72
  tabIndex: -1,
90
- 'data-pressed': keysPressed['ArrowRight'] || undefined,
73
+ 'aria-label': 'Next',
91
74
  ref: ref,
92
75
  ...props,
93
76
  onClick: (e) => {
@@ -12,5 +12,5 @@ type CarouselSlideProps = {
12
12
  * It is recommended that the slide content bring its own dimensions (esp. height) and that
13
13
  * the dimensions should be the same for all slides.
14
14
  */
15
- export declare const CarouselSlide: PolymorphicForwardRefComponent<"li", CarouselSlideProps>;
15
+ export declare const CarouselSlide: PolymorphicForwardRefComponent<"div", CarouselSlideProps>;
16
16
  export {};
@@ -4,7 +4,12 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
- import { Box, useIntersection, useMergedRefs } from '../utils/index.js';
7
+ import {
8
+ Box,
9
+ mergeEventHandlers,
10
+ useIntersection,
11
+ useMergedRefs,
12
+ } from '../utils/index.js';
8
13
  import { CarouselContext } from './CarouselContext.js';
9
14
  /**
10
15
  * `CarouselSlide` is used for the actual slide content. The content can be specified through `children`.
@@ -18,7 +23,7 @@ export const CarouselSlide = React.forwardRef((props, ref) => {
18
23
  if (!context || index == null) {
19
24
  throw new Error('CarouselSlide must be used within Carousel');
20
25
  }
21
- const { isManuallyUpdating, setCurrentIndex } = context;
26
+ const { isManuallyUpdating, currentIndex, setCurrentIndex } = context;
22
27
  const updateActiveIndexOnScroll = React.useCallback(() => {
23
28
  // only update index if scroll was triggered by browser
24
29
  if (!isManuallyUpdating.current) {
@@ -34,12 +39,19 @@ export const CarouselSlide = React.forwardRef((props, ref) => {
34
39
  return React.createElement(
35
40
  Box,
36
41
  {
37
- as: 'li',
38
42
  className: cx('iui-carousel-slider-item', className),
39
43
  role: 'tabpanel',
40
44
  'aria-roledescription': 'slide',
45
+ tabIndex: index === currentIndex ? 0 : undefined,
41
46
  ref: refs,
47
+ inert: index !== currentIndex ? '' : undefined,
42
48
  ...rest,
49
+ onKeyDown: mergeEventHandlers(props.onKeyDown, (event) => {
50
+ // prevent default browser scrolling on arrow keys because focus will get lost when slide switches
51
+ if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {
52
+ event.preventDefault();
53
+ }
54
+ }),
43
55
  },
44
56
  children,
45
57
  );
@@ -2,4 +2,4 @@ import type { PolymorphicForwardRefComponent } from '../utils/index.js';
2
2
  /**
3
3
  * `CarouselSlider` is the scrollable list that should consist of `CarouselSlide` components.
4
4
  */
5
- export declare const CarouselSlider: PolymorphicForwardRefComponent<"ol", {}>;
5
+ export declare const CarouselSlider: PolymorphicForwardRefComponent<"div", {}>;
@@ -28,6 +28,7 @@ export const CarouselSlider = React.forwardRef((props, ref) => {
28
28
  React.isValidElement(child)
29
29
  ? React.cloneElement(child, {
30
30
  id: `${idPrefix}--slide-${index}`,
31
+ 'aria-labelledby': `${idPrefix}--dot-${index}`,
31
32
  index,
32
33
  })
33
34
  : child,
@@ -66,11 +67,10 @@ export const CarouselSlider = React.forwardRef((props, ref) => {
66
67
  return React.createElement(
67
68
  Box,
68
69
  {
69
- as: 'ol',
70
- 'aria-live': 'polite',
71
70
  className: cx('iui-carousel-slider', className),
72
71
  ref: refs,
73
72
  onScroll: handleOnScroll,
73
+ tabIndex: -1,
74
74
  ...rest,
75
75
  },
76
76
  items,
@@ -4,7 +4,7 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import cx from 'classnames';
6
6
  import * as React from 'react';
7
- import { ProgressRadial } from '../ProgressIndicators/index.js';
7
+ import { ProgressRadial } from '../ProgressIndicators/ProgressRadial.js';
8
8
  import { useMergedRefs, Box } from '../utils/index.js';
9
9
  /**
10
10
  * Simple input checkbox
@@ -11,7 +11,7 @@ import {
11
11
  useMergedRefs,
12
12
  Box,
13
13
  } from '../utils/index.js';
14
- import { Slider } from '../Slider/index.js';
14
+ import { Slider } from '../Slider/Slider.js';
15
15
  import { useColorPickerContext } from './ColorPickerContext.js';
16
16
  const getVerticalPercentageOfRectangle = (rect, pointer) => {
17
17
  const position = getBoundedValue(pointer, rect.top, rect.bottom);
@@ -273,6 +273,7 @@ export const ColorBuilder = React.forwardRef((props, ref) => {
273
273
  },
274
274
  min: 0,
275
275
  max: 359,
276
+ thumbProps: () => ({ 'aria-label': 'Hue' }),
276
277
  }),
277
278
  showAlpha &&
278
279
  React.createElement(Slider, {
@@ -294,6 +295,7 @@ export const ColorBuilder = React.forwardRef((props, ref) => {
294
295
  style: {
295
296
  '--iui-color-picker-selected-color': hueColorString,
296
297
  },
298
+ thumbProps: () => ({ 'aria-label': 'Opacity' }),
297
299
  }),
298
300
  );
299
301
  });
@@ -4,9 +4,9 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
- import { IconButton } from '../Buttons/index.js';
8
- import { Input } from '../Input/index.js';
9
- import { ColorValue, SvgSwap, Box } from '../utils/index.js';
7
+ import { IconButton } from '../Buttons/IconButton.js';
8
+ import { Input } from '../Input/Input.js';
9
+ import { ColorValue, SvgSwap, Box, useId } from '../utils/index.js';
10
10
  import { useColorPickerContext } from './ColorPickerContext.js';
11
11
  /**
12
12
  * `ColorInputPanel` shows input fields to enter precise color values in the specified format.
@@ -140,6 +140,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
140
140
  maxLength: showAlpha ? 9 : 7,
141
141
  minLength: 1,
142
142
  placeholder: 'HEX',
143
+ 'aria-label': 'Hex',
143
144
  value: input[0],
144
145
  onChange: (event) => {
145
146
  const value = event.target.value.startsWith('#')
@@ -169,6 +170,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
169
170
  max: '359',
170
171
  step: '.1',
171
172
  placeholder: 'H',
173
+ 'aria-label': 'Hue',
172
174
  value: input[0] ?? '',
173
175
  onChange: (event) => {
174
176
  setInput([event.target.value, input[1], input[2], input[3]]);
@@ -195,6 +197,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
195
197
  max: '100',
196
198
  step: '.1',
197
199
  placeholder: 'S',
200
+ 'aria-label': 'Saturation',
198
201
  value: input[1] ?? '',
199
202
  onChange: (event) => {
200
203
  setInput([input[0], event.target.value, input[2], input[3]]);
@@ -221,6 +224,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
221
224
  max: '100',
222
225
  step: '.1',
223
226
  placeholder: 'L',
227
+ 'aria-label': 'Lightness',
224
228
  value: input[2] ?? '',
225
229
  onChange: (event) => {
226
230
  setInput([input[0], input[1], event.target.value, input[3]]);
@@ -248,6 +252,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
248
252
  max: '1',
249
253
  step: '.01',
250
254
  placeholder: 'A',
255
+ 'aria-label': 'Alpha',
251
256
  value: input[3] ?? '',
252
257
  onChange: (event) => {
253
258
  setInput([input[0], input[1], input[2], event.target.value]);
@@ -277,6 +282,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
277
282
  min: '0',
278
283
  max: '255',
279
284
  placeholder: 'R',
285
+ 'aria-label': 'Red',
280
286
  value: input[0] ?? '',
281
287
  onChange: (event) => {
282
288
  setInput([event.target.value, input[1], input[2], input[3]]);
@@ -302,6 +308,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
302
308
  min: '0',
303
309
  max: '255',
304
310
  placeholder: 'G',
311
+ 'aria-label': 'Green',
305
312
  value: input[1] ?? '',
306
313
  onChange: (event) => {
307
314
  setInput([input[0], event.target.value, input[2], input[3]]);
@@ -327,6 +334,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
327
334
  min: '0',
328
335
  max: '255',
329
336
  placeholder: 'B',
337
+ 'aria-label': 'Blue',
330
338
  value: input[2] ?? '',
331
339
  onChange: (event) => {
332
340
  setInput([input[0], input[1], event.target.value, input[3]]);
@@ -354,6 +362,7 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
354
362
  max: '1',
355
363
  step: '.01',
356
364
  placeholder: 'A',
365
+ 'aria-label': 'Alpha',
357
366
  value: input[3] ?? '',
358
367
  onChange: (event) => {
359
368
  setInput([input[0], input[1], input[2], event.target.value]);
@@ -374,13 +383,14 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
374
383
  Number(input[3]) < 0 || Number(input[3]) > 1 ? 'negative' : undefined,
375
384
  }),
376
385
  );
386
+ const labelId = useId();
377
387
  return React.createElement(
378
388
  Box,
379
389
  { className: cx('iui-color-input-wrapper', className), ref: ref, ...rest },
380
390
  React.createElement(
381
391
  Box,
382
- { className: 'iui-color-picker-section-label' },
383
- showAlpha && currentFormat != 'hex'
392
+ { className: 'iui-color-picker-section-label', id: labelId },
393
+ showAlpha && currentFormat !== 'hex'
384
394
  ? currentFormat.toUpperCase() + 'A'
385
395
  : currentFormat.toUpperCase(),
386
396
  ),
@@ -390,12 +400,22 @@ export const ColorInputPanel = React.forwardRef((props, ref) => {
390
400
  allowedColorFormats.length > 1 &&
391
401
  React.createElement(
392
402
  IconButton,
393
- { styleType: 'borderless', onClick: swapColorFormat, size: 'small' },
403
+ {
404
+ styleType: 'borderless',
405
+ onClick: swapColorFormat,
406
+ size: 'small',
407
+ label: 'Switch format',
408
+ },
394
409
  React.createElement(SvgSwap, null),
395
410
  ),
396
411
  React.createElement(
397
412
  Box,
398
- { ref: inputsContainerRef, className: 'iui-color-input-fields' },
413
+ {
414
+ ref: inputsContainerRef,
415
+ className: 'iui-color-input-fields',
416
+ role: currentFormat !== 'hex' ? 'group' : undefined,
417
+ 'aria-labelledby': currentFormat !== 'hex' ? labelId : undefined,
418
+ },
399
419
  currentFormat === 'hex' && hexInputField,
400
420
  currentFormat === 'rgb' && rgbInputs,
401
421
  currentFormat === 'hsl' && hslInputs,
@@ -4,12 +4,7 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
- import {
8
- ColorValue,
9
- getFocusableElements,
10
- useMergedRefs,
11
- Box,
12
- } from '../utils/index.js';
7
+ import { ColorValue, Box } from '../utils/index.js';
13
8
  import { getColorValue } from './ColorPicker.js';
14
9
  import { ColorSwatch } from './ColorSwatch.js';
15
10
  import { useColorPickerContext } from './ColorPickerContext.js';
@@ -28,76 +23,6 @@ export const ColorPalette = React.forwardRef((props, ref) => {
28
23
  const { colors, label, className, children, ...rest } = props;
29
24
  const { activeColor, setActiveColor, onChangeComplete } =
30
25
  useColorPickerContext();
31
- const [focusedIndex, setFocusedIndex] = React.useState();
32
- // callback ref to set tabindex=0 on first child if none of the swatches are tabbable
33
- const setDefaultTabIndex = (el) => {
34
- if (el && !el.querySelector('[tabindex="0"]')) {
35
- el.firstElementChild?.setAttribute('tabindex', '0');
36
- }
37
- };
38
- const paletteRef = React.useRef(null);
39
- const paletteRefs = useMergedRefs(paletteRef, setDefaultTabIndex);
40
- // Color palette arrow key navigation
41
- const handleKeyDown = (event) => {
42
- if (event.altKey) {
43
- return;
44
- }
45
- const swatches = getFocusableElements(paletteRef.current);
46
- if (!swatches.length) {
47
- return;
48
- }
49
- const currentIndex = swatches.findIndex(
50
- (swatch) => swatch === paletteRef.current?.ownerDocument.activeElement,
51
- );
52
- if (currentIndex < 0) {
53
- return;
54
- }
55
- let newIndex = -1;
56
- switch (event.key) {
57
- case 'ArrowDown': {
58
- // Look for next ColorSwatch with same offsetLeft value
59
- newIndex = swatches.findIndex(
60
- (swatch, index) =>
61
- index > currentIndex &&
62
- swatch.offsetLeft === swatches[currentIndex].offsetLeft,
63
- );
64
- break;
65
- }
66
- case 'ArrowUp': {
67
- // Look backwards for next ColorSwatch with same offsetLeft value
68
- for (let i = currentIndex - 1; i >= 0; i--) {
69
- if (swatches[i].offsetLeft === swatches[currentIndex].offsetLeft) {
70
- newIndex = i;
71
- break;
72
- }
73
- }
74
- break;
75
- }
76
- case 'ArrowLeft':
77
- newIndex = Math.max(currentIndex - 1, 0);
78
- break;
79
- case 'ArrowRight':
80
- newIndex = Math.min(currentIndex + 1, swatches.length - 1);
81
- break;
82
- case 'Enter':
83
- case ' ':
84
- case 'Spacebar':
85
- swatches[currentIndex].click();
86
- event.preventDefault();
87
- return;
88
- }
89
- if (newIndex >= 0 && newIndex < swatches.length) {
90
- setFocusedIndex(newIndex);
91
- event.preventDefault();
92
- }
93
- };
94
- // call focus() when focusedIndex changes
95
- React.useEffect(() => {
96
- if (focusedIndex != null) {
97
- const swatches = getFocusableElements(paletteRef.current);
98
- swatches[focusedIndex]?.focus();
99
- }
100
- }, [focusedIndex]);
101
26
  return React.createElement(
102
27
  Box,
103
28
  {
@@ -113,11 +38,7 @@ export const ColorPalette = React.forwardRef((props, ref) => {
113
38
  ),
114
39
  React.createElement(
115
40
  Box,
116
- {
117
- className: 'iui-color-palette',
118
- onKeyDown: handleKeyDown,
119
- ref: paletteRefs,
120
- },
41
+ { className: 'iui-color-palette' },
121
42
  children,
122
43
  colors &&
123
44
  colors.map((_color, index) => {
@@ -125,8 +46,7 @@ export const ColorPalette = React.forwardRef((props, ref) => {
125
46
  return React.createElement(ColorSwatch, {
126
47
  key: index,
127
48
  color: color,
128
- onClick: (event) => {
129
- event.preventDefault();
49
+ onClick: () => {
130
50
  onChangeComplete?.(color);
131
51
  setActiveColor(color);
132
52
  },
@@ -30,6 +30,15 @@ type ColorPickerProps = {
30
30
  * @default false
31
31
  */
32
32
  showAlpha?: boolean;
33
+ /**
34
+ * Whether there is a background, border, shadow, etc.
35
+ *
36
+ * Should be set to true if used in a popover that doesn't have its own background,
37
+ * or set to false if the popover has its own background or embedding within a page.
38
+ *
39
+ * @default true
40
+ */
41
+ applyBackground?: boolean;
33
42
  };
34
43
  /**
35
44
  * ColorPicker to display color builder options, color inputs, and a palette of ColorSwatches.
@@ -33,6 +33,7 @@ export const ColorPicker = React.forwardRef((props, forwardedRef) => {
33
33
  onChange,
34
34
  onChangeComplete,
35
35
  showAlpha = false,
36
+ applyBackground = true,
36
37
  ...rest
37
38
  } = props;
38
39
  const ref = React.useRef(null);
@@ -77,7 +78,11 @@ export const ColorPicker = React.forwardRef((props, forwardedRef) => {
77
78
  return React.createElement(
78
79
  Box,
79
80
  {
80
- className: cx('iui-color-picker', className),
81
+ className: cx(
82
+ 'iui-color-picker',
83
+ { 'iui-popover-surface': applyBackground },
84
+ className,
85
+ ),
81
86
  ref: useMergedRefs(ref, forwardedRef),
82
87
  ...rest,
83
88
  },
@@ -16,5 +16,5 @@ type ColorSwatchProps = {
16
16
  * <ColorSwatch color='#23450b' onClick={onClick}/>
17
17
  * <ColorSwatch color={{ r: 255, g: 255, b: 0 }} onClick={onClick}/>
18
18
  */
19
- export declare const ColorSwatch: PolymorphicForwardRefComponent<"div", ColorSwatchProps>;
19
+ export declare const ColorSwatch: PolymorphicForwardRefComponent<"button", ColorSwatchProps>;
20
20
  export default ColorSwatch;
@@ -4,8 +4,9 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
- import { ColorValue, Box } from '../utils/index.js';
7
+ import { ColorValue, Box, ButtonBase } from '../utils/index.js';
8
8
  import { getColorValue } from './ColorPicker.js';
9
+ import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.js';
9
10
  /**
10
11
  * ColorSwatch component to display within a color palette.
11
12
  * @example
@@ -21,17 +22,22 @@ export const ColorSwatch = React.forwardRef((props, ref) => {
21
22
  : getColorValue(color).toHslString(true),
22
23
  [color],
23
24
  );
24
- return React.createElement(Box, {
25
- className: cx('iui-color-swatch', { 'iui-active': isActive }, className),
26
- style: {
27
- '--iui-color-swatch-background': colorString,
28
- ...style,
25
+ return React.createElement(
26
+ Box,
27
+ {
28
+ as: !!onClick ? ButtonBase : 'span',
29
+ className: cx('iui-color-swatch', { 'iui-active': isActive }, className),
30
+ style: {
31
+ '--iui-color-swatch-background': colorString,
32
+ ...style,
33
+ },
34
+ onClick: onClick,
35
+ 'aria-pressed': !!onClick && isActive ? 'true' : undefined,
36
+ ref: ref,
37
+ ...rest,
29
38
  },
30
- onClick: onClick,
31
- tabIndex: isActive ? 0 : -1,
32
- 'aria-selected': isActive,
33
- ref: ref,
34
- ...rest,
35
- });
39
+ props.children ??
40
+ React.createElement(VisuallyHidden, null, colorString.toUpperCase()),
41
+ );
36
42
  });
37
43
  export default ColorSwatch;
@@ -1,7 +1,8 @@
1
1
  import * as React from 'react';
2
- import type { SelectOption } from '../Select/index.js';
2
+ import type { SelectOption } from '../Select/Select.js';
3
3
  import type { Input } from '../Input/Input.js';
4
4
  import type { InputContainerProps, CommonProps } from '../utils/index.js';
5
+ import { ComboBoxEndIcon } from './ComboBoxEndIcon.js';
5
6
  type ActionType = 'added' | 'removed';
6
7
  type MultipleOnChangeProps<T> = {
7
8
  value: T;
@@ -49,6 +50,10 @@ export type ComboBoxProps<T> = {
49
50
  * Props to customize dropdown menu behavior.
50
51
  */
51
52
  dropdownMenuProps?: React.ComponentProps<'div'>;
53
+ /**
54
+ * End icon props.
55
+ */
56
+ endIconProps?: React.ComponentProps<typeof ComboBoxEndIcon>;
52
57
  /**
53
58
  * Message shown when no options are available.
54
59
  * If `JSX.Element` is provided, it will be rendered as is and won't be wrapped with `MenuExtraContent`.
@@ -3,17 +3,17 @@
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
- import { MenuExtraContent } from '../Menu/index.js';
7
- import SelectTag from '../Select/SelectTag.js';
8
- import { Text } from '../Typography/index.js';
6
+ import { MenuExtraContent } from '../Menu/MenuExtraContent.js';
7
+ import { SelectTag } from '../Select/SelectTag.js';
8
+ import { Text } from '../Typography/Text.js';
9
9
  import {
10
10
  getRandomValue,
11
11
  mergeRefs,
12
12
  useLatestRef,
13
13
  useIsomorphicLayoutEffect,
14
14
  AutoclearingHiddenLiveRegion,
15
- usePopover,
16
15
  } from '../utils/index.js';
16
+ import { usePopover } from '../Popover/Popover.js';
17
17
  import {
18
18
  ComboBoxActionContext,
19
19
  comboBoxReducer,
@@ -57,6 +57,7 @@ export const ComboBox = (props) => {
57
57
  onChange,
58
58
  filterFunction,
59
59
  inputProps,
60
+ endIconProps,
60
61
  dropdownMenuProps,
61
62
  emptyStateMessage = 'No options found',
62
63
  itemRenderer,
@@ -423,6 +424,7 @@ export const ComboBox = (props) => {
423
424
  }),
424
425
  ),
425
426
  React.createElement(ComboBoxEndIcon, {
427
+ ...endIconProps,
426
428
  disabled: inputProps?.disabled,
427
429
  isOpen: isOpen,
428
430
  }),
@@ -4,7 +4,8 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import cx from 'classnames';
6
6
  import * as React from 'react';
7
- import { SvgCaretDownSmall, Icon } from '../utils/index.js';
7
+ import { SvgCaretDownSmall } from '../utils/index.js';
8
+ import { Icon } from '../Icon/Icon.js';
8
9
  export const ComboBoxEndIcon = React.forwardRef((props, forwardedRef) => {
9
10
  const { className, children, disabled, isOpen, ...rest } = props;
10
11
  return React.createElement(