@itwin/itwinui-react 3.11.3 → 3.12.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 (727) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/cjs/core/Alert/Alert.d.ts +3 -7
  3. package/cjs/core/Alert/Alert.js +130 -121
  4. package/cjs/core/Avatar/Avatar.js +77 -70
  5. package/cjs/core/AvatarGroup/AvatarGroup.js +73 -83
  6. package/cjs/core/Backdrop/Backdrop.js +27 -38
  7. package/cjs/core/Badge/Badge.js +49 -65
  8. package/cjs/core/Breadcrumbs/Breadcrumbs.js +169 -129
  9. package/cjs/core/ButtonGroup/ButtonGroup.js +153 -108
  10. package/cjs/core/Buttons/Button.js +97 -55
  11. package/cjs/core/Buttons/DropdownButton.js +58 -54
  12. package/cjs/core/Buttons/IconButton.js +75 -52
  13. package/cjs/core/Buttons/IdeasButton.js +31 -44
  14. package/cjs/core/Buttons/SplitButton.js +105 -87
  15. package/cjs/core/Carousel/Carousel.d.ts +13 -119
  16. package/cjs/core/Carousel/Carousel.js +80 -103
  17. package/cjs/core/Carousel/CarouselContext.js +12 -31
  18. package/cjs/core/Carousel/CarouselDot.js +32 -46
  19. package/cjs/core/Carousel/CarouselDotsList.js +162 -144
  20. package/cjs/core/Carousel/CarouselNavigation.d.ts +6 -112
  21. package/cjs/core/Carousel/CarouselNavigation.js +102 -83
  22. package/cjs/core/Carousel/CarouselSlide.js +54 -61
  23. package/cjs/core/Carousel/CarouselSlider.d.ts +1 -1
  24. package/cjs/core/Carousel/CarouselSlider.js +74 -80
  25. package/cjs/core/Checkbox/Checkbox.js +97 -74
  26. package/cjs/core/ColorPicker/ColorBuilder.d.ts +1 -1
  27. package/cjs/core/ColorPicker/ColorBuilder.js +300 -209
  28. package/cjs/core/ColorPicker/ColorInputPanel.js +431 -285
  29. package/cjs/core/ColorPicker/ColorPalette.js +60 -64
  30. package/cjs/core/ColorPicker/ColorPicker.js +101 -97
  31. package/cjs/core/ColorPicker/ColorPickerContext.d.ts +2 -2
  32. package/cjs/core/ColorPicker/ColorPickerContext.js +28 -37
  33. package/cjs/core/ColorPicker/ColorSwatch.js +51 -51
  34. package/cjs/core/ComboBox/ComboBox.d.ts +13 -3
  35. package/cjs/core/ComboBox/ComboBox.js +422 -323
  36. package/cjs/core/ComboBox/ComboBox.types-test.js +92 -0
  37. package/cjs/core/ComboBox/ComboBoxEndIcon.js +38 -43
  38. package/cjs/core/ComboBox/ComboBoxInput.js +214 -172
  39. package/cjs/core/ComboBox/ComboBoxInputContainer.js +42 -40
  40. package/cjs/core/ComboBox/ComboBoxMenu.d.ts +1 -1
  41. package/cjs/core/ComboBox/ComboBoxMenu.js +102 -76
  42. package/cjs/core/ComboBox/ComboBoxMenuItem.js +87 -49
  43. package/cjs/core/ComboBox/ComboBoxMultipleContainer.js +20 -35
  44. package/cjs/core/ComboBox/helpers.d.ts +4 -27
  45. package/cjs/core/ComboBox/helpers.js +24 -78
  46. package/cjs/core/DatePicker/DatePicker.js +599 -379
  47. package/cjs/core/Dialog/Dialog.js +89 -91
  48. package/cjs/core/Dialog/DialogBackdrop.js +57 -63
  49. package/cjs/core/Dialog/DialogButtonBar.js +12 -17
  50. package/cjs/core/Dialog/DialogContent.js +12 -16
  51. package/cjs/core/Dialog/DialogContext.js +22 -33
  52. package/cjs/core/Dialog/DialogDragContext.d.ts +1 -1
  53. package/cjs/core/Dialog/DialogDragContext.js +25 -36
  54. package/cjs/core/Dialog/DialogMain.js +192 -161
  55. package/cjs/core/Dialog/DialogTitleBar.js +73 -68
  56. package/cjs/core/Dialog/DialogTitleBarTitle.js +12 -14
  57. package/cjs/core/Divider/Divider.js +23 -41
  58. package/cjs/core/DropdownMenu/DropdownMenu.d.ts +1 -1
  59. package/cjs/core/DropdownMenu/DropdownMenu.js +74 -113
  60. package/cjs/core/ExpandableBlock/ExpandableBlock.d.ts +3 -3
  61. package/cjs/core/ExpandableBlock/ExpandableBlock.js +207 -177
  62. package/cjs/core/Fieldset/Fieldset.js +36 -55
  63. package/cjs/core/FileUpload/FileEmptyCard.js +47 -71
  64. package/cjs/core/FileUpload/FileUpload.js +97 -76
  65. package/cjs/core/FileUpload/FileUploadCard.d.ts +2 -2
  66. package/cjs/core/FileUpload/FileUploadCard.js +197 -163
  67. package/cjs/core/FileUpload/FileUploadTemplate.js +64 -54
  68. package/cjs/core/Flex/Flex.js +81 -146
  69. package/cjs/core/Footer/Footer.js +129 -113
  70. package/cjs/core/Footer/FooterItem.js +12 -12
  71. package/cjs/core/Footer/FooterList.js +12 -12
  72. package/cjs/core/Footer/FooterSeparator.js +13 -13
  73. package/cjs/core/Header/Header.js +87 -79
  74. package/cjs/core/Header/HeaderBasicButton.js +33 -43
  75. package/cjs/core/Header/HeaderBreadcrumbs.js +61 -54
  76. package/cjs/core/Header/HeaderButton.js +92 -59
  77. package/cjs/core/Header/HeaderDropdownButton.js +59 -50
  78. package/cjs/core/Header/HeaderLogo.js +54 -48
  79. package/cjs/core/Header/HeaderSplitButton.js +81 -51
  80. package/cjs/core/Icon/Icon.js +41 -62
  81. package/cjs/core/InformationPanel/InformationPanel.js +108 -98
  82. package/cjs/core/InformationPanel/InformationPanelBody.js +12 -12
  83. package/cjs/core/InformationPanel/InformationPanelContent.js +31 -61
  84. package/cjs/core/InformationPanel/InformationPanelHeader.js +52 -60
  85. package/cjs/core/InformationPanel/InformationPanelWrapper.js +14 -18
  86. package/cjs/core/Input/Input.js +27 -46
  87. package/cjs/core/InputGrid/InputGrid.js +172 -206
  88. package/cjs/core/InputGroup/InputGroup.js +93 -75
  89. package/cjs/core/InputWithDecorations/InputWithDecorations.d.ts +2 -2
  90. package/cjs/core/InputWithDecorations/InputWithDecorations.js +67 -82
  91. package/cjs/core/Label/Label.js +41 -48
  92. package/cjs/core/LabeledInput/LabeledInput.js +90 -58
  93. package/cjs/core/LabeledSelect/LabeledSelect.d.ts +3 -389
  94. package/cjs/core/LabeledSelect/LabeledSelect.js +74 -73
  95. package/cjs/core/LabeledSelect/LabeledSelect.types-test.js +106 -0
  96. package/cjs/core/LabeledTextarea/LabeledTextarea.js +19 -58
  97. package/cjs/core/LinkAction/LinkAction.d.ts +1 -1
  98. package/cjs/core/LinkAction/LinkAction.js +35 -63
  99. package/cjs/core/List/List.js +15 -10
  100. package/cjs/core/List/ListItem.d.ts +3 -3
  101. package/cjs/core/List/ListItem.js +47 -99
  102. package/cjs/core/Menu/Menu.d.ts +80 -6
  103. package/cjs/core/Menu/Menu.js +223 -94
  104. package/cjs/core/Menu/MenuDivider.d.ts +1 -1
  105. package/cjs/core/Menu/MenuDivider.js +13 -25
  106. package/cjs/core/Menu/MenuExtraContent.js +13 -30
  107. package/cjs/core/Menu/MenuItem.d.ts +0 -8
  108. package/cjs/core/Menu/MenuItem.js +142 -173
  109. package/cjs/core/Menu/MenuItemSkeleton.js +68 -52
  110. package/cjs/core/Modal/Modal.js +56 -59
  111. package/cjs/core/Modal/ModalButtonBar.js +12 -12
  112. package/cjs/core/Modal/ModalContent.js +12 -12
  113. package/cjs/core/NonIdealState/ErrorPage.js +232 -164
  114. package/cjs/core/NonIdealState/NonIdealState.js +86 -49
  115. package/cjs/core/NotificationMarker/NotificationMarker.js +40 -50
  116. package/cjs/core/Overlay/Overlay.d.ts +3 -3
  117. package/cjs/core/Overlay/Overlay.js +55 -75
  118. package/cjs/core/Popover/Popover.d.ts +23 -30
  119. package/cjs/core/Popover/Popover.js +279 -192
  120. package/cjs/core/ProgressIndicators/ProgressLinear.js +72 -69
  121. package/cjs/core/ProgressIndicators/ProgressRadial.js +71 -71
  122. package/cjs/core/Radio/Radio.js +66 -52
  123. package/cjs/core/RadioTiles/RadioTile.js +89 -49
  124. package/cjs/core/RadioTiles/RadioTileGroup.js +30 -44
  125. package/cjs/core/SearchBox/SearchBox.js +220 -167
  126. package/cjs/core/Select/Select.d.ts +1 -1
  127. package/cjs/core/Select/Select.js +473 -303
  128. package/cjs/core/Select/Select.types-test.js +119 -0
  129. package/cjs/core/Select/SelectTag.js +33 -43
  130. package/cjs/core/Select/SelectTagContainer.js +39 -46
  131. package/cjs/core/SideNavigation/SideNavigation.js +139 -72
  132. package/cjs/core/SideNavigation/SidenavButton.js +56 -46
  133. package/cjs/core/SideNavigation/SidenavSubmenu.d.ts +1 -1
  134. package/cjs/core/SideNavigation/SidenavSubmenu.js +34 -47
  135. package/cjs/core/SideNavigation/SidenavSubmenuHeader.js +42 -54
  136. package/cjs/core/SkipToContentLink/SkipToContentLink.js +29 -46
  137. package/cjs/core/Slider/Slider.js +380 -236
  138. package/cjs/core/Slider/Thumb.js +120 -92
  139. package/cjs/core/Slider/Track.js +99 -89
  140. package/cjs/core/StatusMessage/StatusMessage.js +47 -50
  141. package/cjs/core/Stepper/Stepper.js +93 -51
  142. package/cjs/core/Stepper/StepperStep.js +123 -66
  143. package/cjs/core/Stepper/WorkflowDiagram.js +42 -45
  144. package/cjs/core/Stepper/WorkflowDiagramStep.js +49 -41
  145. package/cjs/core/Surface/Surface.js +110 -109
  146. package/cjs/core/Table/SubRowExpander.js +45 -42
  147. package/cjs/core/Table/Table.js +826 -500
  148. package/cjs/core/Table/TableCell.js +110 -79
  149. package/cjs/core/Table/TablePaginator.js +330 -173
  150. package/cjs/core/Table/TableRowMemoized.d.ts +9 -29
  151. package/cjs/core/Table/TableRowMemoized.js +160 -102
  152. package/cjs/core/Table/actionHandlers/expandHandler.d.ts +1 -1
  153. package/cjs/core/Table/actionHandlers/expandHandler.js +20 -14
  154. package/cjs/core/Table/actionHandlers/filterHandler.d.ts +1 -1
  155. package/cjs/core/Table/actionHandlers/filterHandler.js +33 -19
  156. package/cjs/core/Table/actionHandlers/index.js +38 -18
  157. package/cjs/core/Table/actionHandlers/resizeHandler.d.ts +18 -18
  158. package/cjs/core/Table/actionHandlers/resizeHandler.js +33 -16
  159. package/cjs/core/Table/actionHandlers/selectHandler.d.ts +12 -12
  160. package/cjs/core/Table/actionHandlers/selectHandler.js +136 -116
  161. package/cjs/core/Table/cells/DefaultCell.js +92 -62
  162. package/cjs/core/Table/cells/EditableCell.js +91 -87
  163. package/cjs/core/Table/cells/index.js +21 -11
  164. package/cjs/core/Table/columns/actionColumn.d.ts +2 -2
  165. package/cjs/core/Table/columns/actionColumn.js +108 -113
  166. package/cjs/core/Table/columns/expanderColumn.d.ts +2 -2
  167. package/cjs/core/Table/columns/expanderColumn.js +63 -83
  168. package/cjs/core/Table/columns/index.js +31 -15
  169. package/cjs/core/Table/columns/selectionColumn.d.ts +2 -2
  170. package/cjs/core/Table/columns/selectionColumn.js +86 -77
  171. package/cjs/core/Table/filters/BaseFilter.js +28 -57
  172. package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +134 -79
  173. package/cjs/core/Table/filters/DateRangeFilter/DateRangeFilter.js +130 -87
  174. package/cjs/core/Table/filters/FilterButtonBar.js +55 -51
  175. package/cjs/core/Table/filters/FilterToggle.js +74 -59
  176. package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +68 -63
  177. package/cjs/core/Table/filters/TextFilter/TextFilter.js +47 -55
  178. package/cjs/core/Table/filters/customFilterFunctions.js +25 -26
  179. package/cjs/core/Table/filters/defaultFilterFunctions.d.ts +7 -7
  180. package/cjs/core/Table/filters/defaultFilterFunctions.js +94 -83
  181. package/cjs/core/Table/filters/index.js +29 -15
  182. package/cjs/core/Table/filters/tableFilters.d.ts +2 -2
  183. package/cjs/core/Table/filters/tableFilters.js +30 -59
  184. package/cjs/core/Table/filters/types.js +4 -2
  185. package/cjs/core/Table/hooks/index.js +45 -23
  186. package/cjs/core/Table/hooks/useColumnDragAndDrop.js +108 -90
  187. package/cjs/core/Table/hooks/useExpanderCell.d.ts +1 -1
  188. package/cjs/core/Table/hooks/useExpanderCell.js +40 -52
  189. package/cjs/core/Table/hooks/useResizeColumns.js +362 -299
  190. package/cjs/core/Table/hooks/useScrollToRow.js +50 -65
  191. package/cjs/core/Table/hooks/useSelectionCell.d.ts +1 -1
  192. package/cjs/core/Table/hooks/useSelectionCell.js +25 -12
  193. package/cjs/core/Table/hooks/useStickyColumns.js +71 -70
  194. package/cjs/core/Table/hooks/useSubRowFiltering.js +99 -115
  195. package/cjs/core/Table/hooks/useSubRowSelection.js +39 -58
  196. package/cjs/core/Table/index.js +48 -22
  197. package/cjs/core/Table/utils.d.ts +1 -1
  198. package/cjs/core/Table/utils.js +79 -86
  199. package/cjs/core/Tabs/Tabs.d.ts +3 -3
  200. package/cjs/core/Tabs/Tabs.js +421 -358
  201. package/cjs/core/Tag/Tag.js +81 -56
  202. package/cjs/core/Tag/TagContainer.js +32 -47
  203. package/cjs/core/Textarea/Textarea.js +19 -39
  204. package/cjs/core/ThemeProvider/ThemeContext.d.ts +3 -3
  205. package/cjs/core/ThemeProvider/ThemeContext.js +12 -31
  206. package/cjs/core/ThemeProvider/ThemeProvider.js +233 -215
  207. package/cjs/core/Tile/Tile.d.ts +11 -80
  208. package/cjs/core/Tile/Tile.js +327 -336
  209. package/cjs/core/TimePicker/TimePicker.js +476 -269
  210. package/cjs/core/Toast/Toast.js +242 -149
  211. package/cjs/core/Toast/Toaster.js +150 -117
  212. package/cjs/core/ToggleSwitch/ToggleSwitch.js +77 -65
  213. package/cjs/core/Tooltip/Tooltip.d.ts +12 -11
  214. package/cjs/core/Tooltip/Tooltip.js +216 -175
  215. package/cjs/core/TransferList/TransferList.d.ts +4 -4
  216. package/cjs/core/TransferList/TransferList.js +191 -136
  217. package/cjs/core/Tree/Tree.js +214 -213
  218. package/cjs/core/Tree/TreeContext.js +26 -37
  219. package/cjs/core/Tree/TreeNode.d.ts +11 -4
  220. package/cjs/core/Tree/TreeNode.js +274 -154
  221. package/cjs/core/Tree/TreeNodeExpander.js +41 -45
  222. package/cjs/core/Typography/Anchor.js +42 -58
  223. package/cjs/core/Typography/Blockquote.js +27 -48
  224. package/cjs/core/Typography/Code.js +12 -14
  225. package/cjs/core/Typography/Kbd.js +49 -61
  226. package/cjs/core/Typography/Text.js +51 -59
  227. package/cjs/core/VisuallyHidden/VisuallyHidden.js +49 -56
  228. package/cjs/index.d.ts +1 -0
  229. package/cjs/index.js +481 -233
  230. package/cjs/react-table/react-table.js +4 -9
  231. package/cjs/react-table/react-table.types-test.js +653 -0
  232. package/cjs/styles.d.ts +2 -1
  233. package/cjs/styles.js +17 -1
  234. package/cjs/utils/color/ColorValue.js +465 -485
  235. package/cjs/utils/color/index.js +6 -21
  236. package/cjs/utils/components/AutoclearingHiddenLiveRegion.js +31 -48
  237. package/cjs/utils/components/Box.js +12 -14
  238. package/cjs/utils/components/ButtonBase.js +45 -51
  239. package/cjs/utils/components/FocusTrap.js +54 -69
  240. package/cjs/utils/components/InputContainer.js +68 -55
  241. package/cjs/utils/components/InputFlexContainer.d.ts +2 -2
  242. package/cjs/utils/components/InputFlexContainer.js +70 -36
  243. package/cjs/utils/components/InputWithIcon.js +13 -11
  244. package/cjs/utils/components/LineClamp.d.ts +1 -1
  245. package/cjs/utils/components/LineClamp.js +35 -40
  246. package/cjs/utils/components/MiddleTextTruncation.js +39 -65
  247. package/cjs/utils/components/Portal.d.ts +1 -1
  248. package/cjs/utils/components/Portal.js +43 -59
  249. package/cjs/utils/components/Resizer.js +239 -192
  250. package/cjs/utils/components/ShadowRoot.js +92 -108
  251. package/cjs/utils/components/VirtualScroll.js +314 -292
  252. package/cjs/utils/components/WithCSSTransition.d.ts +1 -1
  253. package/cjs/utils/components/WithCSSTransition.js +56 -62
  254. package/cjs/utils/components/index.js +19 -34
  255. package/cjs/utils/functions/colors.d.ts +1 -1
  256. package/cjs/utils/functions/colors.js +43 -35
  257. package/cjs/utils/functions/date.js +18 -19
  258. package/cjs/utils/functions/dev.js +37 -34
  259. package/cjs/utils/functions/dom.d.ts +1 -1
  260. package/cjs/utils/functions/dom.js +46 -44
  261. package/cjs/utils/functions/focusable.d.ts +23 -0
  262. package/cjs/utils/functions/focusable.js +91 -30
  263. package/cjs/utils/functions/import.js +29 -32
  264. package/cjs/utils/functions/index.js +15 -30
  265. package/cjs/utils/functions/numbers.js +31 -31
  266. package/cjs/utils/functions/polymorphic.d.ts +3 -180
  267. package/cjs/utils/functions/polymorphic.js +61 -95
  268. package/cjs/utils/functions/react.js +29 -56
  269. package/cjs/utils/functions/supports.js +13 -13
  270. package/cjs/utils/hooks/index.js +20 -35
  271. package/cjs/utils/hooks/useContainerWidth.js +34 -61
  272. package/cjs/utils/hooks/useControlledState.d.ts +1 -1
  273. package/cjs/utils/hooks/useControlledState.js +30 -50
  274. package/cjs/utils/hooks/useDragAndDrop.js +122 -122
  275. package/cjs/utils/hooks/useEventListener.js +25 -58
  276. package/cjs/utils/hooks/useGlobals.d.ts +3 -3
  277. package/cjs/utils/hooks/useGlobals.js +49 -65
  278. package/cjs/utils/hooks/useId.js +18 -42
  279. package/cjs/utils/hooks/useIntersection.js +41 -63
  280. package/cjs/utils/hooks/useIsClient.js +16 -36
  281. package/cjs/utils/hooks/useIsomorphicLayoutEffect.js +13 -39
  282. package/cjs/utils/hooks/useLatestRef.js +16 -43
  283. package/cjs/utils/hooks/useMediaQuery.js +30 -43
  284. package/cjs/utils/hooks/useMergedRefs.d.ts +2 -2
  285. package/cjs/utils/hooks/useMergedRefs.js +30 -50
  286. package/cjs/utils/hooks/useOverflow.d.ts +1 -1
  287. package/cjs/utils/hooks/useOverflow.js +70 -107
  288. package/cjs/utils/hooks/useResizeObserver.js +35 -67
  289. package/cjs/utils/hooks/useSafeContext.js +16 -40
  290. package/cjs/utils/hooks/useSyncExternalStore.js +42 -65
  291. package/cjs/utils/icons/StatusIconMap.d.ts +4 -5
  292. package/cjs/utils/icons/StatusIconMap.js +36 -39
  293. package/cjs/utils/icons/Svg.js +15 -12
  294. package/cjs/utils/icons/SvgCalendar.d.ts +1 -1
  295. package/cjs/utils/icons/SvgCalendar.js +19 -34
  296. package/cjs/utils/icons/SvgCaretDownSmall.d.ts +1 -1
  297. package/cjs/utils/icons/SvgCaretDownSmall.js +19 -34
  298. package/cjs/utils/icons/SvgCaretRightSmall.d.ts +1 -1
  299. package/cjs/utils/icons/SvgCaretRightSmall.js +19 -34
  300. package/cjs/utils/icons/SvgCaretUpSmall.d.ts +1 -1
  301. package/cjs/utils/icons/SvgCaretUpSmall.js +19 -34
  302. package/cjs/utils/icons/SvgCheckmark.d.ts +1 -1
  303. package/cjs/utils/icons/SvgCheckmark.js +19 -34
  304. package/cjs/utils/icons/SvgCheckmarkSmall.d.ts +1 -1
  305. package/cjs/utils/icons/SvgCheckmarkSmall.js +19 -34
  306. package/cjs/utils/icons/SvgChevronLeft.d.ts +1 -1
  307. package/cjs/utils/icons/SvgChevronLeft.js +19 -34
  308. package/cjs/utils/icons/SvgChevronLeftDouble.d.ts +1 -1
  309. package/cjs/utils/icons/SvgChevronLeftDouble.js +19 -34
  310. package/cjs/utils/icons/SvgChevronRight.d.ts +1 -1
  311. package/cjs/utils/icons/SvgChevronRight.js +19 -34
  312. package/cjs/utils/icons/SvgChevronRightDouble.d.ts +1 -1
  313. package/cjs/utils/icons/SvgChevronRightDouble.js +19 -34
  314. package/cjs/utils/icons/SvgChevronRightSmall.d.ts +1 -1
  315. package/cjs/utils/icons/SvgChevronRightSmall.js +19 -34
  316. package/cjs/utils/icons/SvgClose.d.ts +1 -1
  317. package/cjs/utils/icons/SvgClose.js +19 -34
  318. package/cjs/utils/icons/SvgCloseSmall.d.ts +1 -1
  319. package/cjs/utils/icons/SvgCloseSmall.js +19 -34
  320. package/cjs/utils/icons/SvgColumnManager.d.ts +1 -1
  321. package/cjs/utils/icons/SvgColumnManager.js +19 -34
  322. package/cjs/utils/icons/SvgDocument.d.ts +1 -1
  323. package/cjs/utils/icons/SvgDocument.js +19 -34
  324. package/cjs/utils/icons/SvgFilter.d.ts +1 -1
  325. package/cjs/utils/icons/SvgFilter.js +19 -34
  326. package/cjs/utils/icons/SvgFilterHollow.d.ts +1 -1
  327. package/cjs/utils/icons/SvgFilterHollow.js +19 -34
  328. package/cjs/utils/icons/SvgImportantSmall.d.ts +1 -1
  329. package/cjs/utils/icons/SvgImportantSmall.js +19 -34
  330. package/cjs/utils/icons/SvgInfoCircular.d.ts +1 -1
  331. package/cjs/utils/icons/SvgInfoCircular.js +19 -34
  332. package/cjs/utils/icons/SvgMore.d.ts +1 -1
  333. package/cjs/utils/icons/SvgMore.js +19 -34
  334. package/cjs/utils/icons/SvgMoreVertical.d.ts +1 -1
  335. package/cjs/utils/icons/SvgMoreVertical.js +19 -34
  336. package/cjs/utils/icons/SvgNew.d.ts +1 -1
  337. package/cjs/utils/icons/SvgNew.js +19 -34
  338. package/cjs/utils/icons/SvgSearch.d.ts +1 -1
  339. package/cjs/utils/icons/SvgSearch.js +19 -34
  340. package/cjs/utils/icons/SvgSmileyHappy.d.ts +1 -1
  341. package/cjs/utils/icons/SvgSmileyHappy.js +19 -34
  342. package/cjs/utils/icons/SvgSortDown.d.ts +1 -1
  343. package/cjs/utils/icons/SvgSortDown.js +19 -34
  344. package/cjs/utils/icons/SvgSortUp.d.ts +1 -1
  345. package/cjs/utils/icons/SvgSortUp.js +19 -34
  346. package/cjs/utils/icons/SvgStatusError.d.ts +1 -1
  347. package/cjs/utils/icons/SvgStatusError.js +19 -34
  348. package/cjs/utils/icons/SvgStatusSuccess.d.ts +1 -1
  349. package/cjs/utils/icons/SvgStatusSuccess.js +19 -34
  350. package/cjs/utils/icons/SvgStatusWarning.d.ts +1 -1
  351. package/cjs/utils/icons/SvgStatusWarning.js +19 -34
  352. package/cjs/utils/icons/SvgSwap.d.ts +1 -1
  353. package/cjs/utils/icons/SvgSwap.js +19 -34
  354. package/cjs/utils/icons/SvgUpload.d.ts +1 -1
  355. package/cjs/utils/icons/SvgUpload.js +19 -34
  356. package/cjs/utils/icons/index.js +37 -52
  357. package/cjs/utils/index.js +13 -28
  358. package/cjs/utils/meta.d.ts +7 -0
  359. package/cjs/utils/meta.js +16 -0
  360. package/cjs/utils/props.js +4 -2
  361. package/cjs/utils/providers/HydrationProvider.js +55 -68
  362. package/cjs/utils/providers/ScopeProvider.js +60 -71
  363. package/cjs/utils/providers/index.js +7 -22
  364. package/cjs/utils/types.js +4 -2
  365. package/esm/core/Alert/Alert.d.ts +3 -7
  366. package/esm/core/Alert/Alert.js +108 -80
  367. package/esm/core/Avatar/Avatar.js +45 -36
  368. package/esm/core/AvatarGroup/AvatarGroup.js +58 -51
  369. package/esm/core/Backdrop/Backdrop.js +12 -6
  370. package/esm/core/Badge/Badge.js +32 -33
  371. package/esm/core/Breadcrumbs/Breadcrumbs.js +150 -93
  372. package/esm/core/ButtonGroup/ButtonGroup.js +129 -72
  373. package/esm/core/Buttons/Button.js +72 -22
  374. package/esm/core/Buttons/DropdownButton.js +41 -20
  375. package/esm/core/Buttons/IconButton.js +50 -17
  376. package/esm/core/Buttons/IdeasButton.js +15 -11
  377. package/esm/core/Buttons/SplitButton.js +93 -53
  378. package/esm/core/Carousel/Carousel.d.ts +13 -119
  379. package/esm/core/Carousel/Carousel.js +58 -64
  380. package/esm/core/Carousel/CarouselContext.js +0 -4
  381. package/esm/core/Carousel/CarouselDot.js +17 -14
  382. package/esm/core/Carousel/CarouselDotsList.js +147 -111
  383. package/esm/core/Carousel/CarouselNavigation.d.ts +6 -112
  384. package/esm/core/Carousel/CarouselNavigation.js +80 -44
  385. package/esm/core/Carousel/CarouselSlide.js +41 -29
  386. package/esm/core/Carousel/CarouselSlider.d.ts +1 -1
  387. package/esm/core/Carousel/CarouselSlider.js +64 -48
  388. package/esm/core/Checkbox/Checkbox.js +78 -41
  389. package/esm/core/ColorPicker/ColorBuilder.d.ts +1 -1
  390. package/esm/core/ColorPicker/ColorBuilder.js +287 -176
  391. package/esm/core/ColorPicker/ColorInputPanel.js +413 -250
  392. package/esm/core/ColorPicker/ColorPalette.js +40 -30
  393. package/esm/core/ColorPicker/ColorPicker.js +75 -63
  394. package/esm/core/ColorPicker/ColorPickerContext.d.ts +2 -2
  395. package/esm/core/ColorPicker/ColorPickerContext.js +7 -9
  396. package/esm/core/ColorPicker/ColorSwatch.js +31 -18
  397. package/esm/core/ComboBox/ComboBox.d.ts +13 -3
  398. package/esm/core/ComboBox/ComboBox.js +407 -286
  399. package/esm/core/ComboBox/ComboBox.types-test.js +88 -0
  400. package/esm/core/ComboBox/ComboBoxEndIcon.js +21 -9
  401. package/esm/core/ComboBox/ComboBoxInput.js +193 -142
  402. package/esm/core/ComboBox/ComboBoxInputContainer.js +33 -10
  403. package/esm/core/ComboBox/ComboBoxMenu.d.ts +1 -1
  404. package/esm/core/ComboBox/ComboBoxMenu.js +85 -43
  405. package/esm/core/ComboBox/ComboBoxMenuItem.js +74 -19
  406. package/esm/core/ComboBox/ComboBoxMultipleContainer.js +6 -6
  407. package/esm/core/ComboBox/helpers.d.ts +4 -27
  408. package/esm/core/ComboBox/helpers.js +0 -47
  409. package/esm/core/DatePicker/DatePicker.js +564 -345
  410. package/esm/core/Dialog/Dialog.js +66 -51
  411. package/esm/core/Dialog/DialogBackdrop.js +40 -29
  412. package/esm/core/Dialog/DialogButtonBar.js +0 -12
  413. package/esm/core/Dialog/DialogContent.js +0 -11
  414. package/esm/core/Dialog/DialogContext.js +1 -5
  415. package/esm/core/Dialog/DialogDragContext.d.ts +1 -1
  416. package/esm/core/Dialog/DialogDragContext.js +4 -8
  417. package/esm/core/Dialog/DialogMain.js +182 -126
  418. package/esm/core/Dialog/DialogTitleBar.js +46 -31
  419. package/esm/core/Dialog/DialogTitleBarTitle.js +0 -9
  420. package/esm/core/Divider/Divider.js +8 -9
  421. package/esm/core/DropdownMenu/DropdownMenu.d.ts +1 -1
  422. package/esm/core/DropdownMenu/DropdownMenu.js +60 -84
  423. package/esm/core/ExpandableBlock/ExpandableBlock.d.ts +3 -3
  424. package/esm/core/ExpandableBlock/ExpandableBlock.js +173 -133
  425. package/esm/core/Fieldset/Fieldset.js +21 -23
  426. package/esm/core/FileUpload/FileEmptyCard.js +23 -34
  427. package/esm/core/FileUpload/FileUpload.js +67 -44
  428. package/esm/core/FileUpload/FileUploadCard.d.ts +2 -2
  429. package/esm/core/FileUpload/FileUploadCard.js +162 -118
  430. package/esm/core/FileUpload/FileUploadTemplate.js +45 -21
  431. package/esm/core/Flex/Flex.js +63 -111
  432. package/esm/core/Footer/Footer.js +96 -73
  433. package/esm/core/Footer/FooterItem.js +0 -7
  434. package/esm/core/Footer/FooterList.js +0 -7
  435. package/esm/core/Footer/FooterSeparator.js +1 -8
  436. package/esm/core/Header/Header.js +70 -45
  437. package/esm/core/Header/HeaderBasicButton.js +15 -11
  438. package/esm/core/Header/HeaderBreadcrumbs.js +39 -22
  439. package/esm/core/Header/HeaderButton.js +70 -28
  440. package/esm/core/Header/HeaderDropdownButton.js +44 -17
  441. package/esm/core/Header/HeaderLogo.js +39 -16
  442. package/esm/core/Header/HeaderSplitButton.js +67 -18
  443. package/esm/core/Icon/Icon.js +26 -30
  444. package/esm/core/InformationPanel/InformationPanel.js +93 -66
  445. package/esm/core/InformationPanel/InformationPanelBody.js +0 -7
  446. package/esm/core/InformationPanel/InformationPanelContent.js +19 -30
  447. package/esm/core/InformationPanel/InformationPanelHeader.js +39 -28
  448. package/esm/core/InformationPanel/InformationPanelWrapper.js +3 -14
  449. package/esm/core/Input/Input.js +12 -14
  450. package/esm/core/InputGrid/InputGrid.js +145 -165
  451. package/esm/core/InputGroup/InputGroup.js +72 -40
  452. package/esm/core/InputWithDecorations/InputWithDecorations.d.ts +2 -2
  453. package/esm/core/InputWithDecorations/InputWithDecorations.js +58 -49
  454. package/esm/core/Label/Label.js +26 -16
  455. package/esm/core/LabeledInput/LabeledInput.js +67 -21
  456. package/esm/core/LabeledSelect/LabeledSelect.d.ts +3 -389
  457. package/esm/core/LabeledSelect/LabeledSelect.js +58 -43
  458. package/esm/core/LabeledSelect/LabeledSelect.types-test.js +102 -0
  459. package/esm/core/LabeledTextarea/LabeledTextarea.js +6 -32
  460. package/esm/core/LinkAction/LinkAction.d.ts +1 -1
  461. package/esm/core/LinkAction/LinkAction.js +7 -27
  462. package/esm/core/List/List.js +3 -5
  463. package/esm/core/List/ListItem.d.ts +3 -3
  464. package/esm/core/List/ListItem.js +24 -61
  465. package/esm/core/Menu/Menu.d.ts +80 -6
  466. package/esm/core/Menu/Menu.js +211 -61
  467. package/esm/core/Menu/MenuDivider.d.ts +1 -1
  468. package/esm/core/Menu/MenuDivider.js +1 -20
  469. package/esm/core/Menu/MenuExtraContent.js +1 -25
  470. package/esm/core/Menu/MenuItem.d.ts +0 -8
  471. package/esm/core/Menu/MenuItem.js +132 -145
  472. package/esm/core/Menu/MenuItemSkeleton.js +48 -19
  473. package/esm/core/Modal/Modal.js +43 -31
  474. package/esm/core/Modal/ModalButtonBar.js +0 -7
  475. package/esm/core/Modal/ModalContent.js +0 -7
  476. package/esm/core/NonIdealState/ErrorPage.js +181 -134
  477. package/esm/core/NonIdealState/NonIdealState.js +65 -17
  478. package/esm/core/NotificationMarker/NotificationMarker.js +25 -18
  479. package/esm/core/Overlay/Overlay.d.ts +3 -3
  480. package/esm/core/Overlay/Overlay.js +36 -63
  481. package/esm/core/Popover/Popover.d.ts +23 -30
  482. package/esm/core/Popover/Popover.js +276 -157
  483. package/esm/core/ProgressIndicators/ProgressLinear.js +52 -36
  484. package/esm/core/ProgressIndicators/ProgressRadial.js +54 -39
  485. package/esm/core/Radio/Radio.js +48 -20
  486. package/esm/core/RadioTiles/RadioTile.js +62 -17
  487. package/esm/core/RadioTiles/RadioTileGroup.js +16 -15
  488. package/esm/core/SearchBox/SearchBox.js +203 -128
  489. package/esm/core/Select/Select.d.ts +1 -1
  490. package/esm/core/Select/Select.js +442 -260
  491. package/esm/core/Select/Select.types-test.js +115 -0
  492. package/esm/core/Select/SelectTag.js +18 -11
  493. package/esm/core/Select/SelectTagContainer.js +20 -13
  494. package/esm/core/SideNavigation/SideNavigation.js +104 -39
  495. package/esm/core/SideNavigation/SidenavButton.js +38 -12
  496. package/esm/core/SideNavigation/SidenavSubmenu.d.ts +1 -1
  497. package/esm/core/SideNavigation/SidenavSubmenu.js +16 -15
  498. package/esm/core/SideNavigation/SidenavSubmenuHeader.js +24 -22
  499. package/esm/core/SkipToContentLink/SkipToContentLink.js +11 -14
  500. package/esm/core/Slider/Slider.js +339 -202
  501. package/esm/core/Slider/Thumb.js +105 -59
  502. package/esm/core/Slider/Track.js +82 -57
  503. package/esm/core/StatusMessage/StatusMessage.js +31 -17
  504. package/esm/core/Stepper/Stepper.js +74 -18
  505. package/esm/core/Stepper/StepperStep.js +101 -33
  506. package/esm/core/Stepper/WorkflowDiagram.js +27 -13
  507. package/esm/core/Stepper/WorkflowDiagramStep.js +28 -8
  508. package/esm/core/Surface/Surface.js +92 -74
  509. package/esm/core/Table/SubRowExpander.js +32 -13
  510. package/esm/core/Table/Table.js +828 -461
  511. package/esm/core/Table/TableCell.js +85 -43
  512. package/esm/core/Table/TablePaginator.js +320 -137
  513. package/esm/core/Table/TableRowMemoized.d.ts +9 -29
  514. package/esm/core/Table/TableRowMemoized.js +135 -70
  515. package/esm/core/Table/actionHandlers/expandHandler.d.ts +1 -1
  516. package/esm/core/Table/actionHandlers/expandHandler.js +10 -10
  517. package/esm/core/Table/actionHandlers/filterHandler.d.ts +1 -1
  518. package/esm/core/Table/actionHandlers/filterHandler.js +23 -15
  519. package/esm/core/Table/actionHandlers/index.js +5 -5
  520. package/esm/core/Table/actionHandlers/resizeHandler.d.ts +18 -18
  521. package/esm/core/Table/actionHandlers/resizeHandler.js +14 -11
  522. package/esm/core/Table/actionHandlers/selectHandler.d.ts +12 -12
  523. package/esm/core/Table/actionHandlers/selectHandler.js +114 -110
  524. package/esm/core/Table/cells/DefaultCell.js +77 -29
  525. package/esm/core/Table/cells/EditableCell.js +77 -55
  526. package/esm/core/Table/cells/index.js +0 -4
  527. package/esm/core/Table/columns/actionColumn.d.ts +2 -2
  528. package/esm/core/Table/columns/actionColumn.js +89 -78
  529. package/esm/core/Table/columns/expanderColumn.d.ts +2 -2
  530. package/esm/core/Table/columns/expanderColumn.js +39 -52
  531. package/esm/core/Table/columns/index.js +0 -4
  532. package/esm/core/Table/columns/selectionColumn.d.ts +2 -2
  533. package/esm/core/Table/columns/selectionColumn.js +63 -47
  534. package/esm/core/Table/filters/BaseFilter.js +14 -25
  535. package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +116 -46
  536. package/esm/core/Table/filters/DateRangeFilter/DateRangeFilter.js +115 -56
  537. package/esm/core/Table/filters/FilterButtonBar.js +40 -18
  538. package/esm/core/Table/filters/FilterToggle.js +60 -26
  539. package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +53 -32
  540. package/esm/core/Table/filters/TextFilter/TextFilter.js +32 -24
  541. package/esm/core/Table/filters/customFilterFunctions.js +14 -22
  542. package/esm/core/Table/filters/defaultFilterFunctions.d.ts +7 -7
  543. package/esm/core/Table/filters/defaultFilterFunctions.js +83 -79
  544. package/esm/core/Table/filters/index.js +0 -4
  545. package/esm/core/Table/filters/tableFilters.d.ts +2 -2
  546. package/esm/core/Table/filters/tableFilters.js +15 -29
  547. package/esm/core/Table/hooks/index.js +0 -4
  548. package/esm/core/Table/hooks/useColumnDragAndDrop.js +89 -82
  549. package/esm/core/Table/hooks/useExpanderCell.d.ts +1 -1
  550. package/esm/core/Table/hooks/useExpanderCell.js +26 -24
  551. package/esm/core/Table/hooks/useResizeColumns.js +346 -292
  552. package/esm/core/Table/hooks/useScrollToRow.js +39 -38
  553. package/esm/core/Table/hooks/useSelectionCell.d.ts +1 -1
  554. package/esm/core/Table/hooks/useSelectionCell.js +14 -7
  555. package/esm/core/Table/hooks/useStickyColumns.js +58 -63
  556. package/esm/core/Table/hooks/useSubRowFiltering.js +87 -87
  557. package/esm/core/Table/hooks/useSubRowSelection.js +28 -31
  558. package/esm/core/Table/index.js +5 -5
  559. package/esm/core/Table/utils.d.ts +1 -1
  560. package/esm/core/Table/utils.js +55 -59
  561. package/esm/core/Tabs/Tabs.d.ts +3 -3
  562. package/esm/core/Tabs/Tabs.js +385 -315
  563. package/esm/core/Tag/Tag.js +54 -22
  564. package/esm/core/Tag/TagContainer.js +17 -15
  565. package/esm/core/Textarea/Textarea.js +6 -11
  566. package/esm/core/ThemeProvider/ThemeContext.d.ts +3 -3
  567. package/esm/core/ThemeProvider/ThemeContext.js +0 -4
  568. package/esm/core/ThemeProvider/ThemeProvider.js +210 -174
  569. package/esm/core/Tile/Tile.d.ts +11 -80
  570. package/esm/core/Tile/Tile.js +283 -283
  571. package/esm/core/TimePicker/TimePicker.js +461 -237
  572. package/esm/core/Toast/Toast.js +209 -114
  573. package/esm/core/Toast/Toaster.js +114 -79
  574. package/esm/core/ToggleSwitch/ToggleSwitch.js +59 -33
  575. package/esm/core/Tooltip/Tooltip.d.ts +12 -11
  576. package/esm/core/Tooltip/Tooltip.js +221 -144
  577. package/esm/core/TransferList/TransferList.d.ts +4 -4
  578. package/esm/core/TransferList/TransferList.js +152 -118
  579. package/esm/core/Tree/Tree.js +202 -178
  580. package/esm/core/Tree/TreeContext.js +5 -9
  581. package/esm/core/Tree/TreeNode.d.ts +11 -4
  582. package/esm/core/Tree/TreeNode.js +245 -121
  583. package/esm/core/Tree/TreeNodeExpander.js +23 -11
  584. package/esm/core/Typography/Anchor.js +21 -24
  585. package/esm/core/Typography/Blockquote.js +12 -16
  586. package/esm/core/Typography/Code.js +0 -9
  587. package/esm/core/Typography/Kbd.js +24 -28
  588. package/esm/core/Typography/Text.js +26 -26
  589. package/esm/core/VisuallyHidden/VisuallyHidden.js +34 -24
  590. package/esm/index.d.ts +1 -0
  591. package/esm/index.js +22 -7
  592. package/esm/react-table/react-table.js +0 -7
  593. package/esm/react-table/react-table.types-test.js +658 -0
  594. package/esm/styles.d.ts +2 -1
  595. package/esm/styles.js +8 -9
  596. package/esm/utils/color/ColorValue.js +436 -477
  597. package/esm/utils/color/index.js +0 -4
  598. package/esm/utils/components/AutoclearingHiddenLiveRegion.js +15 -19
  599. package/esm/utils/components/Box.js +0 -9
  600. package/esm/utils/components/ButtonBase.js +28 -17
  601. package/esm/utils/components/FocusTrap.js +41 -40
  602. package/esm/utils/components/InputContainer.js +51 -21
  603. package/esm/utils/components/InputFlexContainer.d.ts +2 -2
  604. package/esm/utils/components/InputFlexContainer.js +30 -23
  605. package/esm/utils/components/InputWithIcon.js +0 -5
  606. package/esm/utils/components/LineClamp.d.ts +1 -1
  607. package/esm/utils/components/LineClamp.js +21 -11
  608. package/esm/utils/components/MiddleTextTruncation.js +27 -37
  609. package/esm/utils/components/Portal.d.ts +1 -1
  610. package/esm/utils/components/Portal.js +13 -31
  611. package/esm/utils/components/Resizer.js +231 -165
  612. package/esm/utils/components/ShadowRoot.js +78 -78
  613. package/esm/utils/components/VirtualScroll.js +296 -263
  614. package/esm/utils/components/WithCSSTransition.d.ts +1 -1
  615. package/esm/utils/components/WithCSSTransition.js +44 -31
  616. package/esm/utils/components/index.js +0 -4
  617. package/esm/utils/functions/colors.d.ts +1 -1
  618. package/esm/utils/functions/colors.js +19 -28
  619. package/esm/utils/functions/date.js +8 -15
  620. package/esm/utils/functions/dev.js +15 -28
  621. package/esm/utils/functions/dom.d.ts +1 -1
  622. package/esm/utils/functions/dom.js +18 -36
  623. package/esm/utils/functions/focusable.d.ts +23 -0
  624. package/esm/utils/functions/focusable.js +68 -25
  625. package/esm/utils/functions/import.js +19 -28
  626. package/esm/utils/functions/index.js +0 -4
  627. package/esm/utils/functions/numbers.js +9 -25
  628. package/esm/utils/functions/polymorphic.d.ts +3 -180
  629. package/esm/utils/functions/polymorphic.js +42 -63
  630. package/esm/utils/functions/react.js +17 -28
  631. package/esm/utils/functions/supports.js +2 -8
  632. package/esm/utils/hooks/index.js +0 -4
  633. package/esm/utils/hooks/useContainerWidth.js +16 -32
  634. package/esm/utils/hooks/useControlledState.d.ts +1 -1
  635. package/esm/utils/hooks/useControlledState.js +19 -23
  636. package/esm/utils/hooks/useDragAndDrop.js +109 -93
  637. package/esm/utils/hooks/useEventListener.js +14 -31
  638. package/esm/utils/hooks/useGlobals.d.ts +3 -3
  639. package/esm/utils/hooks/useGlobals.js +27 -35
  640. package/esm/utils/hooks/useId.js +4 -13
  641. package/esm/utils/hooks/useIntersection.js +29 -35
  642. package/esm/utils/hooks/useIsClient.js +5 -9
  643. package/esm/utils/hooks/useIsomorphicLayoutEffect.js +2 -12
  644. package/esm/utils/hooks/useLatestRef.js +5 -16
  645. package/esm/utils/hooks/useMediaQuery.js +14 -15
  646. package/esm/utils/hooks/useMergedRefs.d.ts +2 -2
  647. package/esm/utils/hooks/useMergedRefs.js +10 -22
  648. package/esm/utils/hooks/useOverflow.d.ts +1 -1
  649. package/esm/utils/hooks/useOverflow.js +59 -78
  650. package/esm/utils/hooks/useResizeObserver.js +23 -39
  651. package/esm/utils/hooks/useSafeContext.js +5 -13
  652. package/esm/utils/hooks/useSyncExternalStore.js +31 -39
  653. package/esm/utils/icons/StatusIconMap.d.ts +4 -5
  654. package/esm/utils/icons/StatusIconMap.js +20 -8
  655. package/esm/utils/icons/Svg.js +3 -7
  656. package/esm/utils/icons/SvgCalendar.d.ts +1 -1
  657. package/esm/utils/icons/SvgCalendar.js +7 -6
  658. package/esm/utils/icons/SvgCaretDownSmall.d.ts +1 -1
  659. package/esm/utils/icons/SvgCaretDownSmall.js +7 -6
  660. package/esm/utils/icons/SvgCaretRightSmall.d.ts +1 -1
  661. package/esm/utils/icons/SvgCaretRightSmall.js +7 -6
  662. package/esm/utils/icons/SvgCaretUpSmall.d.ts +1 -1
  663. package/esm/utils/icons/SvgCaretUpSmall.js +7 -6
  664. package/esm/utils/icons/SvgCheckmark.d.ts +1 -1
  665. package/esm/utils/icons/SvgCheckmark.js +7 -6
  666. package/esm/utils/icons/SvgCheckmarkSmall.d.ts +1 -1
  667. package/esm/utils/icons/SvgCheckmarkSmall.js +7 -6
  668. package/esm/utils/icons/SvgChevronLeft.d.ts +1 -1
  669. package/esm/utils/icons/SvgChevronLeft.js +7 -6
  670. package/esm/utils/icons/SvgChevronLeftDouble.d.ts +1 -1
  671. package/esm/utils/icons/SvgChevronLeftDouble.js +7 -6
  672. package/esm/utils/icons/SvgChevronRight.d.ts +1 -1
  673. package/esm/utils/icons/SvgChevronRight.js +7 -6
  674. package/esm/utils/icons/SvgChevronRightDouble.d.ts +1 -1
  675. package/esm/utils/icons/SvgChevronRightDouble.js +7 -6
  676. package/esm/utils/icons/SvgChevronRightSmall.d.ts +1 -1
  677. package/esm/utils/icons/SvgChevronRightSmall.js +7 -6
  678. package/esm/utils/icons/SvgClose.d.ts +1 -1
  679. package/esm/utils/icons/SvgClose.js +7 -6
  680. package/esm/utils/icons/SvgCloseSmall.d.ts +1 -1
  681. package/esm/utils/icons/SvgCloseSmall.js +7 -6
  682. package/esm/utils/icons/SvgColumnManager.d.ts +1 -1
  683. package/esm/utils/icons/SvgColumnManager.js +7 -6
  684. package/esm/utils/icons/SvgDocument.d.ts +1 -1
  685. package/esm/utils/icons/SvgDocument.js +7 -6
  686. package/esm/utils/icons/SvgFilter.d.ts +1 -1
  687. package/esm/utils/icons/SvgFilter.js +7 -6
  688. package/esm/utils/icons/SvgFilterHollow.d.ts +1 -1
  689. package/esm/utils/icons/SvgFilterHollow.js +7 -6
  690. package/esm/utils/icons/SvgImportantSmall.d.ts +1 -1
  691. package/esm/utils/icons/SvgImportantSmall.js +7 -6
  692. package/esm/utils/icons/SvgInfoCircular.d.ts +1 -1
  693. package/esm/utils/icons/SvgInfoCircular.js +7 -6
  694. package/esm/utils/icons/SvgMore.d.ts +1 -1
  695. package/esm/utils/icons/SvgMore.js +7 -6
  696. package/esm/utils/icons/SvgMoreVertical.d.ts +1 -1
  697. package/esm/utils/icons/SvgMoreVertical.js +7 -6
  698. package/esm/utils/icons/SvgNew.d.ts +1 -1
  699. package/esm/utils/icons/SvgNew.js +7 -6
  700. package/esm/utils/icons/SvgSearch.d.ts +1 -1
  701. package/esm/utils/icons/SvgSearch.js +7 -6
  702. package/esm/utils/icons/SvgSmileyHappy.d.ts +1 -1
  703. package/esm/utils/icons/SvgSmileyHappy.js +7 -6
  704. package/esm/utils/icons/SvgSortDown.d.ts +1 -1
  705. package/esm/utils/icons/SvgSortDown.js +7 -6
  706. package/esm/utils/icons/SvgSortUp.d.ts +1 -1
  707. package/esm/utils/icons/SvgSortUp.js +7 -6
  708. package/esm/utils/icons/SvgStatusError.d.ts +1 -1
  709. package/esm/utils/icons/SvgStatusError.js +7 -6
  710. package/esm/utils/icons/SvgStatusSuccess.d.ts +1 -1
  711. package/esm/utils/icons/SvgStatusSuccess.js +7 -6
  712. package/esm/utils/icons/SvgStatusWarning.d.ts +1 -1
  713. package/esm/utils/icons/SvgStatusWarning.js +7 -6
  714. package/esm/utils/icons/SvgSwap.d.ts +1 -1
  715. package/esm/utils/icons/SvgSwap.js +7 -6
  716. package/esm/utils/icons/SvgUpload.d.ts +1 -1
  717. package/esm/utils/icons/SvgUpload.js +7 -6
  718. package/esm/utils/icons/index.js +0 -4
  719. package/esm/utils/index.js +0 -4
  720. package/esm/utils/meta.d.ts +7 -0
  721. package/esm/utils/meta.js +6 -0
  722. package/esm/utils/providers/HydrationProvider.js +33 -38
  723. package/esm/utils/providers/ScopeProvider.js +35 -40
  724. package/esm/utils/providers/index.js +0 -4
  725. package/package.json +22 -16
  726. package/styles.css +1 -1
  727. package/react-table.d.ts +0 -750
@@ -1,296 +1,442 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', {
3
+ value: true,
4
+ });
5
+ Object.defineProperty(exports, 'ColorInputPanel', {
6
+ enumerable: true,
7
+ get: function () {
8
+ return ColorInputPanel;
9
+ },
17
10
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ColorInputPanel = void 0;
30
- /*---------------------------------------------------------------------------------------------
31
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
32
- * See LICENSE.md in the project root for license terms and full copyright notice.
33
- *--------------------------------------------------------------------------------------------*/
34
- const React = __importStar(require("react"));
35
- const classnames_1 = __importDefault(require("classnames"));
36
- const IconButton_js_1 = require("../Buttons/IconButton.js");
37
- const Input_js_1 = require("../Input/Input.js");
38
- const index_js_1 = require("../../utils/index.js");
39
- const ColorPickerContext_js_1 = require("./ColorPickerContext.js");
40
- /**
41
- * `ColorInputPanel` shows input fields to enter precise color values in the specified format.
42
- * It also allows switching between the specified formats using a swap button.
43
- * @example
44
- * <ColorPicker>
45
- * // ...
46
- * <ColorInputPanel defaultColorFormat='hsl' />
47
- * </ColorPicker>
48
- */
49
- exports.ColorInputPanel = React.forwardRef((props, ref) => {
50
- const { defaultColorFormat, allowedColorFormats = ['hsl', 'rgb', 'hex'], className, ...rest } = props;
51
- const inputsContainerRef = React.useRef(null);
52
- const { activeColor, applyHsvColorChange, hsvColor, showAlpha } = (0, ColorPickerContext_js_1.useColorPickerContext)();
53
- const [currentFormat, setCurrentFormat] = React.useState(defaultColorFormat);
54
- React.useEffect(() => {
55
- setCurrentFormat(defaultColorFormat);
56
- }, [defaultColorFormat]);
57
- // need to use state since input may have parsing error
58
- const [input, setInput] = React.useState(['', '', '', '']);
59
- React.useEffect(() => {
60
- if (currentFormat === 'hsl') {
61
- const hsl = activeColor.toHslColor();
62
- setInput([
63
- index_js_1.ColorValue.getFormattedColorNumber(hsvColor.h),
64
- index_js_1.ColorValue.getFormattedColorNumber(hsl.s),
65
- index_js_1.ColorValue.getFormattedColorNumber(hsl.l),
66
- index_js_1.ColorValue.getFormattedColorNumber(hsl.a ?? activeColor.getAlpha() / 255, 2),
67
- ]);
11
+ const _interop_require_default = require('@swc/helpers/_/_interop_require_default');
12
+ const _interop_require_wildcard = require('@swc/helpers/_/_interop_require_wildcard');
13
+ const _react = _interop_require_wildcard._(require('react'));
14
+ const _classnames = _interop_require_default._(require('classnames'));
15
+ const _IconButton = require('../Buttons/IconButton.js');
16
+ const _Input = require('../Input/Input.js');
17
+ const _index = require('../../utils/index.js');
18
+ const _ColorPickerContext = require('./ColorPickerContext.js');
19
+ const ColorInputPanel = _react.forwardRef((props, ref) => {
20
+ const {
21
+ defaultColorFormat,
22
+ allowedColorFormats = ['hsl', 'rgb', 'hex'],
23
+ className,
24
+ ...rest
25
+ } = props;
26
+ const inputsContainerRef = _react.useRef(null);
27
+ const { activeColor, applyHsvColorChange, hsvColor, showAlpha } = (0,
28
+ _ColorPickerContext.useColorPickerContext)();
29
+ const [currentFormat, setCurrentFormat] = _react.useState(defaultColorFormat);
30
+ _react.useEffect(() => {
31
+ setCurrentFormat(defaultColorFormat);
32
+ }, [defaultColorFormat]);
33
+ const [input, setInput] = _react.useState(['', '', '', '']);
34
+ _react.useEffect(() => {
35
+ if (currentFormat === 'hsl') {
36
+ const hsl = activeColor.toHslColor();
37
+ setInput([
38
+ _index.ColorValue.getFormattedColorNumber(hsvColor.h),
39
+ _index.ColorValue.getFormattedColorNumber(hsl.s),
40
+ _index.ColorValue.getFormattedColorNumber(hsl.l),
41
+ _index.ColorValue.getFormattedColorNumber(
42
+ hsl.a ?? activeColor.getAlpha() / 255,
43
+ 2,
44
+ ),
45
+ ]);
46
+ } else if (currentFormat === 'rgb') {
47
+ const rgb = activeColor.toRgbColor();
48
+ setInput([
49
+ rgb.r.toString(),
50
+ rgb.g.toString(),
51
+ rgb.b.toString(),
52
+ _index.ColorValue.getFormattedColorNumber(
53
+ rgb.a ?? activeColor.getAlpha() / 255,
54
+ 2,
55
+ ),
56
+ ]);
57
+ } else {
58
+ setInput([activeColor.toHexString(showAlpha)]);
59
+ setValidHexInput(true);
60
+ }
61
+ }, [activeColor, hsvColor.h, currentFormat, showAlpha]);
62
+ const [validHexInput, setValidHexInput] = _react.useState(true);
63
+ const swapColorFormat = _react.useCallback(() => {
64
+ const newFormat =
65
+ allowedColorFormats[
66
+ (allowedColorFormats.indexOf(currentFormat) + 1) %
67
+ allowedColorFormats.length
68
+ ] ?? allowedColorFormats[0];
69
+ setCurrentFormat(newFormat);
70
+ }, [currentFormat, allowedColorFormats]);
71
+ const isFocusInside = (focused) =>
72
+ !!(
73
+ focused &&
74
+ inputsContainerRef.current &&
75
+ inputsContainerRef.current.contains(focused)
76
+ );
77
+ const handleColorInputChange = () => {
78
+ let color;
79
+ if (currentFormat === 'hex') {
80
+ try {
81
+ const value = input[0].replace(/ /g, '').toLowerCase();
82
+ color = _index.ColorValue.create(value);
83
+ setValidHexInput(true);
84
+ if (activeColor.toHexString(showAlpha).toLowerCase() === value) {
85
+ return;
68
86
  }
69
- else if (currentFormat === 'rgb') {
70
- const rgb = activeColor.toRgbColor();
71
- setInput([
72
- rgb.r.toString(),
73
- rgb.g.toString(),
74
- rgb.b.toString(),
75
- index_js_1.ColorValue.getFormattedColorNumber(rgb.a ?? activeColor.getAlpha() / 255, 2),
76
- ]);
87
+ } catch (_e) {
88
+ setValidHexInput(false);
89
+ return;
90
+ }
91
+ }
92
+ if (currentFormat === 'hsl') {
93
+ const [h, s, l, a] = input.map(Number);
94
+ if (
95
+ h < 0 ||
96
+ h > 360 ||
97
+ s < 0 ||
98
+ s > 100 ||
99
+ l < 0 ||
100
+ l > 100 ||
101
+ a < 0 ||
102
+ a > 1
103
+ ) {
104
+ return;
105
+ }
106
+ const hsl = activeColor.toHslColor();
107
+ if (hsl.h === h && hsl.s === s && hsl.l === l && hsl.a === a) {
108
+ return;
109
+ }
110
+ color = _index.ColorValue.create({
111
+ h,
112
+ s,
113
+ l,
114
+ a,
115
+ });
116
+ }
117
+ if (currentFormat === 'rgb') {
118
+ const [r, g, b, a] = input.map(Number);
119
+ if (
120
+ r < 0 ||
121
+ r > 255 ||
122
+ g < 0 ||
123
+ g > 255 ||
124
+ b < 0 ||
125
+ b > 255 ||
126
+ a < 0 ||
127
+ a > 1
128
+ ) {
129
+ return;
130
+ }
131
+ const rgb = activeColor.toRgbColor();
132
+ if (rgb.r === r && rgb.g === g && rgb.b === b && rgb.a === a) {
133
+ return;
134
+ }
135
+ color = _index.ColorValue.create({
136
+ r,
137
+ g,
138
+ b,
139
+ a,
140
+ });
141
+ }
142
+ if (color) {
143
+ applyHsvColorChange(color.toHsvColor(), true, color);
144
+ }
145
+ };
146
+ const hexInputField = _react.createElement(_Input.Input, {
147
+ size: 'small',
148
+ maxLength: showAlpha ? 9 : 7,
149
+ minLength: 1,
150
+ placeholder: 'HEX',
151
+ 'aria-label': 'Hex',
152
+ value: input[0],
153
+ onChange: (event) => {
154
+ const value = event.target.value.startsWith('#')
155
+ ? event.target.value
156
+ : `#${event.target.value}`;
157
+ setInput([value]);
158
+ },
159
+ onKeyDown: (event) => {
160
+ if (event.key === 'Enter') {
161
+ event.preventDefault();
162
+ handleColorInputChange();
163
+ }
164
+ },
165
+ onBlur: (event) => {
166
+ event.preventDefault();
167
+ handleColorInputChange();
168
+ },
169
+ status: validHexInput ? undefined : 'negative',
170
+ });
171
+ const hslInputs = _react.createElement(
172
+ _react.Fragment,
173
+ null,
174
+ _react.createElement(_Input.Input, {
175
+ size: 'small',
176
+ type: 'number',
177
+ min: '0',
178
+ max: '359',
179
+ step: '.1',
180
+ placeholder: 'H',
181
+ 'aria-label': 'Hue',
182
+ value: input[0] ?? '',
183
+ onChange: (event) => {
184
+ setInput([event.target.value, input[1], input[2], input[3]]);
185
+ },
186
+ onKeyDown: (event) => {
187
+ if (event.key === 'Enter') {
188
+ event.preventDefault();
189
+ handleColorInputChange();
77
190
  }
78
- else {
79
- setInput([activeColor.toHexString(showAlpha)]);
80
- setValidHexInput(true);
191
+ },
192
+ onBlur: (event) => {
193
+ event.preventDefault();
194
+ if (!isFocusInside(event.relatedTarget)) {
195
+ handleColorInputChange();
81
196
  }
82
- }, [activeColor, hsvColor.h, currentFormat, showAlpha]);
83
- const [validHexInput, setValidHexInput] = React.useState(true);
84
- const swapColorFormat = React.useCallback(() => {
85
- const newFormat = allowedColorFormats[(allowedColorFormats.indexOf(currentFormat) + 1) %
86
- allowedColorFormats.length] ?? allowedColorFormats[0];
87
- setCurrentFormat(newFormat);
88
- }, [currentFormat, allowedColorFormats]);
89
- const isFocusInside = (focused) => !!(focused &&
90
- inputsContainerRef.current &&
91
- inputsContainerRef.current.contains(focused));
92
- const handleColorInputChange = () => {
93
- let color;
94
- if (currentFormat === 'hex') {
95
- try {
96
- const value = input[0].replace(/ /g, '').toLowerCase(); // remove white space from input
97
- color = index_js_1.ColorValue.create(value);
98
- setValidHexInput(true);
99
- if (activeColor.toHexString(showAlpha).toLowerCase() === value) {
100
- return;
101
- }
102
- }
103
- catch (_e) {
104
- setValidHexInput(false);
105
- return;
106
- }
197
+ },
198
+ status:
199
+ Number(input[0]) < 0 || Number(input[0]) > 360 ? 'negative' : undefined,
200
+ }),
201
+ _react.createElement(_Input.Input, {
202
+ size: 'small',
203
+ type: 'number',
204
+ min: '0',
205
+ max: '100',
206
+ step: '.1',
207
+ placeholder: 'S',
208
+ 'aria-label': 'Saturation',
209
+ value: input[1] ?? '',
210
+ onChange: (event) => {
211
+ setInput([input[0], event.target.value, input[2], input[3]]);
212
+ },
213
+ onKeyDown: (event) => {
214
+ if (event.key === 'Enter') {
215
+ event.preventDefault();
216
+ handleColorInputChange();
107
217
  }
108
- if (currentFormat === 'hsl') {
109
- const [h, s, l, a] = input.map(Number);
110
- if (h < 0 ||
111
- h > 360 ||
112
- s < 0 ||
113
- s > 100 ||
114
- l < 0 ||
115
- l > 100 ||
116
- a < 0 ||
117
- a > 1) {
118
- return;
119
- }
120
- const hsl = activeColor.toHslColor();
121
- if (hsl.h === h && hsl.s === s && hsl.l === l && hsl.a === a) {
122
- return;
123
- }
124
- color = index_js_1.ColorValue.create({ h, s, l, a });
218
+ },
219
+ onBlur: (event) => {
220
+ event.preventDefault();
221
+ if (!isFocusInside(event.relatedTarget)) {
222
+ handleColorInputChange();
125
223
  }
126
- if (currentFormat === 'rgb') {
127
- const [r, g, b, a] = input.map(Number);
128
- if (r < 0 ||
129
- r > 255 ||
130
- g < 0 ||
131
- g > 255 ||
132
- b < 0 ||
133
- b > 255 ||
134
- a < 0 ||
135
- a > 1) {
136
- return;
137
- }
138
- const rgb = activeColor.toRgbColor();
139
- if (rgb.r === r && rgb.g === g && rgb.b === b && rgb.a === a) {
140
- return;
141
- }
142
- color = index_js_1.ColorValue.create({ r, g, b, a });
224
+ },
225
+ status:
226
+ Number(input[1]) < 0 || Number(input[1]) > 100 ? 'negative' : undefined,
227
+ }),
228
+ _react.createElement(_Input.Input, {
229
+ size: 'small',
230
+ type: 'number',
231
+ min: '0',
232
+ max: '100',
233
+ step: '.1',
234
+ placeholder: 'L',
235
+ 'aria-label': 'Lightness',
236
+ value: input[2] ?? '',
237
+ onChange: (event) => {
238
+ setInput([input[0], input[1], event.target.value, input[3]]);
239
+ },
240
+ onKeyDown: (event) => {
241
+ if (event.key === 'Enter') {
242
+ event.preventDefault();
243
+ handleColorInputChange();
143
244
  }
144
- if (color) {
145
- applyHsvColorChange(color.toHsvColor(), true, color);
245
+ },
246
+ onBlur: (event) => {
247
+ event.preventDefault();
248
+ if (!isFocusInside(event.relatedTarget)) {
249
+ handleColorInputChange();
146
250
  }
147
- };
148
- const hexInputField = (React.createElement(Input_js_1.Input, { size: 'small', maxLength: showAlpha ? 9 : 7, minLength: 1, placeholder: 'HEX', "aria-label": 'Hex', value: input[0], onChange: (event) => {
149
- const value = event.target.value.startsWith('#')
150
- ? event.target.value
151
- : `#${event.target.value}`;
152
- setInput([value]);
153
- }, onKeyDown: (event) => {
154
- if (event.key === 'Enter') {
155
- event.preventDefault();
156
- handleColorInputChange();
157
- }
158
- }, onBlur: (event) => {
251
+ },
252
+ status:
253
+ Number(input[2]) < 0 || Number(input[2]) > 100 ? 'negative' : undefined,
254
+ }),
255
+ showAlpha &&
256
+ _react.createElement(_Input.Input, {
257
+ size: 'small',
258
+ type: 'number',
259
+ min: '0',
260
+ max: '1',
261
+ step: '.01',
262
+ placeholder: 'A',
263
+ 'aria-label': 'Alpha',
264
+ value: input[3] ?? '',
265
+ onChange: (event) => {
266
+ setInput([input[0], input[1], input[2], event.target.value]);
267
+ },
268
+ onKeyDown: (event) => {
269
+ if (event.key === 'Enter') {
159
270
  event.preventDefault();
160
271
  handleColorInputChange();
161
- }, status: validHexInput ? undefined : 'negative' }));
162
- const hslInputs = (React.createElement(React.Fragment, null,
163
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '359', step: '.1', placeholder: 'H', "aria-label": 'Hue', value: input[0] ?? '', onChange: (event) => {
164
- setInput([event.target.value, input[1], input[2], input[3]]);
165
- }, onKeyDown: (event) => {
166
- if (event.key === 'Enter') {
167
- event.preventDefault();
168
- handleColorInputChange();
169
- }
170
- }, onBlur: (event) => {
171
- event.preventDefault();
172
- if (!isFocusInside(event.relatedTarget)) {
173
- handleColorInputChange();
174
- }
175
- }, status: Number(input[0]) < 0 || Number(input[0]) > 360
176
- ? 'negative'
177
- : undefined }),
178
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'S', "aria-label": 'Saturation', value: input[1] ?? '', onChange: (event) => {
179
- setInput([input[0], event.target.value, input[2], input[3]]);
180
- }, onKeyDown: (event) => {
181
- if (event.key === 'Enter') {
182
- event.preventDefault();
183
- handleColorInputChange();
184
- }
185
- }, onBlur: (event) => {
186
- event.preventDefault();
187
- if (!isFocusInside(event.relatedTarget)) {
188
- handleColorInputChange();
189
- }
190
- }, status: Number(input[1]) < 0 || Number(input[1]) > 100
191
- ? 'negative'
192
- : undefined }),
193
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'L', "aria-label": 'Lightness', value: input[2] ?? '', onChange: (event) => {
194
- setInput([input[0], input[1], event.target.value, input[3]]);
195
- }, onKeyDown: (event) => {
196
- if (event.key === 'Enter') {
197
- event.preventDefault();
198
- handleColorInputChange();
199
- }
200
- }, onBlur: (event) => {
201
- event.preventDefault();
202
- if (!isFocusInside(event.relatedTarget)) {
203
- handleColorInputChange();
204
- }
205
- }, status: Number(input[2]) < 0 || Number(input[2]) > 100
206
- ? 'negative'
207
- : undefined }),
208
- showAlpha && (React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', "aria-label": 'Alpha', value: input[3] ?? '', onChange: (event) => {
209
- setInput([input[0], input[1], input[2], event.target.value]);
210
- }, onKeyDown: (event) => {
211
- if (event.key === 'Enter') {
212
- event.preventDefault();
213
- handleColorInputChange();
214
- }
215
- }, onBlur: (event) => {
216
- event.preventDefault();
217
- if (!isFocusInside(event.relatedTarget)) {
218
- handleColorInputChange();
219
- }
220
- }, status: Number(input[3]) < 0 || Number(input[3]) > 1
221
- ? 'negative'
222
- : undefined }))));
223
- const rgbInputs = (React.createElement(React.Fragment, null,
224
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'R', "aria-label": 'Red', value: input[0] ?? '', onChange: (event) => {
225
- setInput([event.target.value, input[1], input[2], input[3]]);
226
- }, onKeyDown: (event) => {
227
- if (event.key === 'Enter') {
228
- event.preventDefault();
229
- handleColorInputChange();
230
- }
231
- }, onBlur: (event) => {
232
- event.preventDefault();
233
- if (!isFocusInside(event.relatedTarget)) {
234
- handleColorInputChange();
235
- }
236
- }, status: Number(input[0]) < 0 || Number(input[0]) > 255
237
- ? 'negative'
238
- : undefined }),
239
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'G', "aria-label": 'Green', value: input[1] ?? '', onChange: (event) => {
240
- setInput([input[0], event.target.value, input[2], input[3]]);
241
- }, onKeyDown: (event) => {
242
- if (event.key === 'Enter') {
243
- event.preventDefault();
244
- handleColorInputChange();
245
- }
246
- }, onBlur: (event) => {
247
- event.preventDefault();
248
- if (!isFocusInside(event.relatedTarget)) {
249
- handleColorInputChange();
250
- }
251
- }, status: Number(input[1]) < 0 || Number(input[1]) > 255
252
- ? 'negative'
253
- : undefined }),
254
- React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'B', "aria-label": 'Blue', value: input[2] ?? '', onChange: (event) => {
255
- setInput([input[0], input[1], event.target.value, input[3]]);
256
- }, onKeyDown: (event) => {
257
- if (event.key === 'Enter') {
258
- event.preventDefault();
259
- handleColorInputChange();
260
- }
261
- }, onBlur: (event) => {
262
- event.preventDefault();
263
- if (!isFocusInside(event.relatedTarget)) {
264
- handleColorInputChange();
265
- }
266
- }, status: Number(input[2]) < 0 || Number(input[2]) > 255
267
- ? 'negative'
268
- : undefined }),
269
- showAlpha && (React.createElement(Input_js_1.Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', "aria-label": 'Alpha', value: input[3] ?? '', onChange: (event) => {
270
- setInput([input[0], input[1], input[2], event.target.value]);
271
- }, onKeyDown: (event) => {
272
- if (event.key === 'Enter') {
273
- event.preventDefault();
274
- handleColorInputChange();
275
- }
276
- }, onBlur: (event) => {
277
- event.preventDefault();
278
- if (!isFocusInside(event.relatedTarget)) {
279
- handleColorInputChange();
280
- }
281
- }, status: Number(input[3]) < 0 || Number(input[3]) > 1
282
- ? 'negative'
283
- : undefined }))));
284
- const labelId = (0, index_js_1.useId)();
285
- return (React.createElement(index_js_1.Box, { className: (0, classnames_1.default)('iui-color-input-wrapper', className), ref: ref, ...rest },
286
- React.createElement(index_js_1.Box, { className: 'iui-color-picker-section-label', id: labelId }, showAlpha && currentFormat !== 'hex'
287
- ? currentFormat.toUpperCase() + 'A'
288
- : currentFormat.toUpperCase()),
289
- React.createElement(index_js_1.Box, { className: 'iui-color-input' },
290
- allowedColorFormats.length > 1 && (React.createElement(IconButton_js_1.IconButton, { styleType: 'borderless', onClick: swapColorFormat, size: 'small', label: 'Switch format' },
291
- React.createElement(index_js_1.SvgSwap, null))),
292
- React.createElement(index_js_1.Box, { ref: inputsContainerRef, className: 'iui-color-input-fields', role: currentFormat !== 'hex' ? 'group' : undefined, "aria-labelledby": currentFormat !== 'hex' ? labelId : undefined },
293
- currentFormat === 'hex' && hexInputField,
294
- currentFormat === 'rgb' && rgbInputs,
295
- currentFormat === 'hsl' && hslInputs))));
272
+ }
273
+ },
274
+ onBlur: (event) => {
275
+ event.preventDefault();
276
+ if (!isFocusInside(event.relatedTarget)) {
277
+ handleColorInputChange();
278
+ }
279
+ },
280
+ status:
281
+ Number(input[3]) < 0 || Number(input[3]) > 1 ? 'negative' : undefined,
282
+ }),
283
+ );
284
+ const rgbInputs = _react.createElement(
285
+ _react.Fragment,
286
+ null,
287
+ _react.createElement(_Input.Input, {
288
+ size: 'small',
289
+ type: 'number',
290
+ min: '0',
291
+ max: '255',
292
+ placeholder: 'R',
293
+ 'aria-label': 'Red',
294
+ value: input[0] ?? '',
295
+ onChange: (event) => {
296
+ setInput([event.target.value, input[1], input[2], input[3]]);
297
+ },
298
+ onKeyDown: (event) => {
299
+ if (event.key === 'Enter') {
300
+ event.preventDefault();
301
+ handleColorInputChange();
302
+ }
303
+ },
304
+ onBlur: (event) => {
305
+ event.preventDefault();
306
+ if (!isFocusInside(event.relatedTarget)) {
307
+ handleColorInputChange();
308
+ }
309
+ },
310
+ status:
311
+ Number(input[0]) < 0 || Number(input[0]) > 255 ? 'negative' : undefined,
312
+ }),
313
+ _react.createElement(_Input.Input, {
314
+ size: 'small',
315
+ type: 'number',
316
+ min: '0',
317
+ max: '255',
318
+ placeholder: 'G',
319
+ 'aria-label': 'Green',
320
+ value: input[1] ?? '',
321
+ onChange: (event) => {
322
+ setInput([input[0], event.target.value, input[2], input[3]]);
323
+ },
324
+ onKeyDown: (event) => {
325
+ if (event.key === 'Enter') {
326
+ event.preventDefault();
327
+ handleColorInputChange();
328
+ }
329
+ },
330
+ onBlur: (event) => {
331
+ event.preventDefault();
332
+ if (!isFocusInside(event.relatedTarget)) {
333
+ handleColorInputChange();
334
+ }
335
+ },
336
+ status:
337
+ Number(input[1]) < 0 || Number(input[1]) > 255 ? 'negative' : undefined,
338
+ }),
339
+ _react.createElement(_Input.Input, {
340
+ size: 'small',
341
+ type: 'number',
342
+ min: '0',
343
+ max: '255',
344
+ placeholder: 'B',
345
+ 'aria-label': 'Blue',
346
+ value: input[2] ?? '',
347
+ onChange: (event) => {
348
+ setInput([input[0], input[1], event.target.value, input[3]]);
349
+ },
350
+ onKeyDown: (event) => {
351
+ if (event.key === 'Enter') {
352
+ event.preventDefault();
353
+ handleColorInputChange();
354
+ }
355
+ },
356
+ onBlur: (event) => {
357
+ event.preventDefault();
358
+ if (!isFocusInside(event.relatedTarget)) {
359
+ handleColorInputChange();
360
+ }
361
+ },
362
+ status:
363
+ Number(input[2]) < 0 || Number(input[2]) > 255 ? 'negative' : undefined,
364
+ }),
365
+ showAlpha &&
366
+ _react.createElement(_Input.Input, {
367
+ size: 'small',
368
+ type: 'number',
369
+ min: '0',
370
+ max: '1',
371
+ step: '.01',
372
+ placeholder: 'A',
373
+ 'aria-label': 'Alpha',
374
+ value: input[3] ?? '',
375
+ onChange: (event) => {
376
+ setInput([input[0], input[1], input[2], event.target.value]);
377
+ },
378
+ onKeyDown: (event) => {
379
+ if (event.key === 'Enter') {
380
+ event.preventDefault();
381
+ handleColorInputChange();
382
+ }
383
+ },
384
+ onBlur: (event) => {
385
+ event.preventDefault();
386
+ if (!isFocusInside(event.relatedTarget)) {
387
+ handleColorInputChange();
388
+ }
389
+ },
390
+ status:
391
+ Number(input[3]) < 0 || Number(input[3]) > 1 ? 'negative' : undefined,
392
+ }),
393
+ );
394
+ const labelId = (0, _index.useId)();
395
+ return _react.createElement(
396
+ _index.Box,
397
+ {
398
+ className: (0, _classnames.default)('iui-color-input-wrapper', className),
399
+ ref: ref,
400
+ ...rest,
401
+ },
402
+ _react.createElement(
403
+ _index.Box,
404
+ {
405
+ className: 'iui-color-picker-section-label',
406
+ id: labelId,
407
+ },
408
+ showAlpha && currentFormat !== 'hex'
409
+ ? currentFormat.toUpperCase() + 'A'
410
+ : currentFormat.toUpperCase(),
411
+ ),
412
+ _react.createElement(
413
+ _index.Box,
414
+ {
415
+ className: 'iui-color-input',
416
+ },
417
+ allowedColorFormats.length > 1 &&
418
+ _react.createElement(
419
+ _IconButton.IconButton,
420
+ {
421
+ styleType: 'borderless',
422
+ onClick: swapColorFormat,
423
+ size: 'small',
424
+ label: 'Switch format',
425
+ },
426
+ _react.createElement(_index.SvgSwap, null),
427
+ ),
428
+ _react.createElement(
429
+ _index.Box,
430
+ {
431
+ ref: inputsContainerRef,
432
+ className: 'iui-color-input-fields',
433
+ role: currentFormat !== 'hex' ? 'group' : undefined,
434
+ 'aria-labelledby': currentFormat !== 'hex' ? labelId : undefined,
435
+ },
436
+ currentFormat === 'hex' && hexInputField,
437
+ currentFormat === 'rgb' && rgbInputs,
438
+ currentFormat === 'hsl' && hslInputs,
439
+ ),
440
+ ),
441
+ );
296
442
  });