@itwin/itwinui-react 2.0.0-dev.2 → 2.0.0-dev.4

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 (474) hide show
  1. package/README.md +10 -1
  2. package/cjs/core/Alert/Alert.js +8 -30
  3. package/cjs/core/Avatar/Avatar.js +10 -33
  4. package/cjs/core/AvatarGroup/AvatarGroup.js +18 -43
  5. package/cjs/core/Backdrop/Backdrop.js +6 -28
  6. package/cjs/core/Badge/Badge.js +13 -31
  7. package/cjs/core/Breadcrumbs/Breadcrumbs.js +14 -40
  8. package/cjs/core/ButtonGroup/ButtonGroup.js +10 -32
  9. package/cjs/core/Buttons/Button/Button.js +6 -28
  10. package/cjs/core/Buttons/DropdownButton/DropdownButton.js +14 -36
  11. package/cjs/core/Buttons/IconButton/IconButton.js +6 -28
  12. package/cjs/core/Buttons/IdeasButton/IdeasButton.js +6 -28
  13. package/cjs/core/Buttons/SplitButton/SplitButton.js +14 -36
  14. package/cjs/core/Carousel/Carousel.js +38 -63
  15. package/cjs/core/Carousel/CarouselContext.js +1 -1
  16. package/cjs/core/Carousel/CarouselDot.js +6 -28
  17. package/cjs/core/Carousel/CarouselDotsList.js +33 -60
  18. package/cjs/core/Carousel/CarouselNavigation.js +22 -44
  19. package/cjs/core/Carousel/CarouselSlide.js +12 -34
  20. package/cjs/core/Carousel/CarouselSlider.js +26 -51
  21. package/cjs/core/Checkbox/Checkbox.js +18 -42
  22. package/cjs/core/ColorPicker/ColorBuilder.js +51 -73
  23. package/cjs/core/ColorPicker/ColorInputPanel.js +64 -88
  24. package/cjs/core/ColorPicker/ColorPalette.js +26 -50
  25. package/cjs/core/ColorPicker/ColorPicker.js +25 -49
  26. package/cjs/core/ColorPicker/ColorPickerContext.js +3 -3
  27. package/cjs/core/ColorPicker/ColorSwatch.js +13 -34
  28. package/cjs/core/ComboBox/ComboBox.js +67 -93
  29. package/cjs/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
  30. package/cjs/core/ComboBox/ComboBoxDropdown.js +13 -36
  31. package/cjs/core/ComboBox/ComboBoxEndIcon.js +12 -34
  32. package/cjs/core/ComboBox/ComboBoxInput.js +28 -50
  33. package/cjs/core/ComboBox/ComboBoxInputContainer.js +9 -31
  34. package/cjs/core/ComboBox/ComboBoxMenu.js +35 -60
  35. package/cjs/core/ComboBox/ComboBoxMenuItem.js +11 -33
  36. package/cjs/core/ComboBox/helpers.js +11 -19
  37. package/cjs/core/DatePicker/DatePicker.js +87 -111
  38. package/cjs/core/Dialog/Dialog.js +28 -48
  39. package/cjs/core/Dialog/DialogBackdrop.js +16 -35
  40. package/cjs/core/Dialog/DialogButtonBar.js +6 -28
  41. package/cjs/core/Dialog/DialogContent.js +6 -28
  42. package/cjs/core/Dialog/DialogContext.js +2 -2
  43. package/cjs/core/Dialog/DialogDragContext.js +6 -15
  44. package/cjs/core/Dialog/DialogMain.js +52 -59
  45. package/cjs/core/Dialog/DialogTitleBar.js +14 -36
  46. package/cjs/core/Dialog/DialogTitleBarTitle.js +6 -28
  47. package/cjs/core/DropdownMenu/DropdownMenu.js +14 -36
  48. package/cjs/core/ExpandableBlock/ExpandableBlock.js +12 -34
  49. package/cjs/core/Fieldset/Fieldset.js +9 -33
  50. package/cjs/core/FileUpload/FileUpload.js +13 -35
  51. package/cjs/core/FileUpload/FileUploadTemplate.js +4 -4
  52. package/cjs/core/Footer/Footer.js +21 -49
  53. package/cjs/core/Footer/FooterItem.js +6 -28
  54. package/cjs/core/Footer/FooterList.js +6 -28
  55. package/cjs/core/Footer/FooterSeparator.js +6 -28
  56. package/cjs/core/Header/Header.js +10 -32
  57. package/cjs/core/Header/HeaderBasicButton.js +6 -28
  58. package/cjs/core/Header/HeaderBreadcrumbs.js +9 -39
  59. package/cjs/core/Header/HeaderButton.js +22 -36
  60. package/cjs/core/Header/HeaderDropdownButton.js +14 -36
  61. package/cjs/core/Header/HeaderLogo.js +7 -29
  62. package/cjs/core/Header/HeaderSplitButton.js +13 -35
  63. package/cjs/core/InformationPanel/InformationPanel.js +15 -37
  64. package/cjs/core/InformationPanel/InformationPanelBody.js +6 -28
  65. package/cjs/core/InformationPanel/InformationPanelContent.js +6 -28
  66. package/cjs/core/InformationPanel/InformationPanelHeader.js +7 -29
  67. package/cjs/core/InformationPanel/InformationPanelWrapper.js +6 -28
  68. package/cjs/core/Input/Input.js +9 -31
  69. package/cjs/core/InputGroup/InputGroup.js +6 -28
  70. package/cjs/core/Label/Label.js +7 -29
  71. package/cjs/core/LabeledInput/LabeledInput.js +7 -29
  72. package/cjs/core/LabeledSelect/LabeledSelect.js +7 -29
  73. package/cjs/core/LabeledTextarea/LabeledTextarea.js +7 -29
  74. package/cjs/core/Menu/Menu.js +18 -40
  75. package/cjs/core/Menu/MenuDivider.js +6 -28
  76. package/cjs/core/Menu/MenuExtraContent.js +6 -28
  77. package/cjs/core/Menu/MenuItem.js +17 -39
  78. package/cjs/core/Menu/MenuItemSkeleton.js +11 -30
  79. package/cjs/core/Modal/Modal.js +12 -30
  80. package/cjs/core/Modal/ModalButtonBar.js +1 -1
  81. package/cjs/core/Modal/ModalContent.js +1 -1
  82. package/cjs/core/{ErrorPage → NonIdealState}/ErrorPage.d.ts +5 -1
  83. package/cjs/core/NonIdealState/ErrorPage.js +144 -0
  84. package/cjs/core/NonIdealState/NonIdealState.d.ts +46 -0
  85. package/cjs/core/NonIdealState/NonIdealState.js +32 -0
  86. package/{esm/core/ErrorPage → cjs/core/NonIdealState}/index.d.ts +3 -1
  87. package/cjs/core/{ErrorPage → NonIdealState}/index.js +4 -2
  88. package/cjs/core/ProgressIndicators/ProgressLinear/ProgressLinear.js +11 -34
  89. package/cjs/core/ProgressIndicators/ProgressRadial/ProgressRadial.js +13 -37
  90. package/cjs/core/Radio/Radio.js +10 -33
  91. package/cjs/core/RadioTiles/RadioTile.js +9 -31
  92. package/cjs/core/RadioTiles/RadioTileGroup.js +6 -28
  93. package/cjs/core/Select/Select.js +59 -72
  94. package/cjs/core/Select/SelectTag.js +6 -28
  95. package/cjs/core/SideNavigation/SideNavigation.js +14 -40
  96. package/cjs/core/SideNavigation/SidenavButton.js +8 -30
  97. package/cjs/core/SideNavigation/SidenavSubmenu.js +6 -28
  98. package/cjs/core/SideNavigation/SidenavSubmenuHeader.js +6 -28
  99. package/cjs/core/SkipToContentLink/SkipToContentLink.js +6 -28
  100. package/cjs/core/Slider/Slider.js +68 -96
  101. package/cjs/core/Slider/Thumb.js +20 -39
  102. package/cjs/core/Slider/Track.js +24 -44
  103. package/cjs/core/StatusMessage/StatusMessage.js +6 -7
  104. package/cjs/core/Stepper/Stepper.js +10 -34
  105. package/cjs/core/Stepper/StepperStep.js +15 -34
  106. package/cjs/core/Stepper/Wizard.js +6 -28
  107. package/cjs/core/Stepper/WorkflowDiagram.js +6 -28
  108. package/cjs/core/Stepper/WorkflowDiagramStep.js +6 -28
  109. package/cjs/core/Surface/Surface.js +11 -30
  110. package/cjs/core/Table/SubRowExpander.js +6 -6
  111. package/cjs/core/Table/Table.d.ts +19 -24
  112. package/cjs/core/Table/Table.js +189 -195
  113. package/cjs/core/Table/TableCell.js +29 -30
  114. package/cjs/core/Table/TablePaginator.js +52 -83
  115. package/cjs/core/Table/TableRowMemoized.d.ts +6 -10
  116. package/cjs/core/Table/TableRowMemoized.js +36 -60
  117. package/cjs/core/Table/actionHandlers/expandHandler.js +3 -3
  118. package/cjs/core/Table/actionHandlers/filterHandler.js +4 -4
  119. package/cjs/core/Table/actionHandlers/resizeHandler.js +13 -15
  120. package/cjs/core/Table/actionHandlers/selectHandler.js +35 -40
  121. package/cjs/core/Table/cells/DefaultCell.js +5 -27
  122. package/cjs/core/Table/cells/EditableCell.js +16 -40
  123. package/cjs/core/Table/columns/actionColumn.js +44 -62
  124. package/cjs/core/Table/columns/expanderColumn.d.ts +2 -5
  125. package/cjs/core/Table/columns/expanderColumn.js +12 -27
  126. package/cjs/core/Table/columns/selectionColumn.d.ts +2 -5
  127. package/cjs/core/Table/columns/selectionColumn.js +16 -37
  128. package/cjs/core/Table/filters/BaseFilter.js +6 -6
  129. package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +19 -41
  130. package/cjs/core/Table/filters/DateRangeFilter/DateRangeFilter.js +20 -31
  131. package/cjs/core/Table/filters/FilterButtonBar.js +8 -19
  132. package/cjs/core/Table/filters/FilterToggle.js +15 -37
  133. package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +16 -29
  134. package/cjs/core/Table/filters/TextFilter/TextFilter.js +11 -11
  135. package/cjs/core/Table/filters/customFilterFunctions.js +11 -13
  136. package/cjs/core/Table/filters/defaultFilterFunctions.js +62 -64
  137. package/cjs/core/Table/filters/tableFilters.js +7 -18
  138. package/cjs/core/Table/hooks/useColumnDragAndDrop.js +41 -53
  139. package/cjs/core/Table/hooks/useExpanderCell.js +17 -33
  140. package/cjs/core/Table/hooks/useResizeColumns.js +197 -205
  141. package/cjs/core/Table/hooks/useScrollToRow.js +11 -12
  142. package/cjs/core/Table/hooks/useSelectionCell.js +7 -18
  143. package/cjs/core/Table/hooks/useStickyColumns.js +28 -33
  144. package/cjs/core/Table/hooks/useSubRowFiltering.js +37 -57
  145. package/cjs/core/Table/hooks/useSubRowSelection.js +10 -12
  146. package/cjs/core/Table/utils.js +15 -26
  147. package/cjs/core/Tabs/Tab.js +6 -28
  148. package/cjs/core/Tabs/Tabs.js +45 -67
  149. package/cjs/core/Tag/Tag.js +8 -30
  150. package/cjs/core/Tag/TagContainer.js +9 -32
  151. package/cjs/core/Textarea/Textarea.js +9 -31
  152. package/cjs/core/ThemeProvider/ThemeProvider.d.ts +1 -0
  153. package/cjs/core/ThemeProvider/ThemeProvider.js +16 -37
  154. package/cjs/core/Tile/Tile.js +29 -58
  155. package/cjs/core/TimePicker/TimePicker.js +59 -97
  156. package/cjs/core/Toast/Toast.js +45 -65
  157. package/cjs/core/Toast/ToastWrapper.js +13 -24
  158. package/cjs/core/Toast/Toaster.js +87 -137
  159. package/cjs/core/Toast/index.js +2 -2
  160. package/cjs/core/ToggleSwitch/ToggleSwitch.js +10 -32
  161. package/cjs/core/Tooltip/Tooltip.js +6 -28
  162. package/cjs/core/Tree/Tree.js +58 -80
  163. package/cjs/core/Tree/TreeContext.js +3 -3
  164. package/cjs/core/Tree/TreeNode.js +21 -43
  165. package/cjs/core/Tree/TreeNodeExpander.js +7 -29
  166. package/cjs/core/Typography/Anchor/Anchor.js +5 -28
  167. package/cjs/core/Typography/Blockquote/Blockquote.js +6 -28
  168. package/cjs/core/Typography/Body/Body.js +7 -29
  169. package/cjs/core/Typography/Code/Code.js +6 -28
  170. package/cjs/core/Typography/Headline/Headline.js +6 -28
  171. package/cjs/core/Typography/Kbd/Kbd.js +6 -28
  172. package/cjs/core/Typography/Leading/Leading.js +6 -28
  173. package/cjs/core/Typography/Small/Small.js +6 -28
  174. package/cjs/core/Typography/Subheading/Subheading.js +6 -28
  175. package/cjs/core/Typography/Text/Text.js +11 -34
  176. package/cjs/core/Typography/Title/Title.js +6 -28
  177. package/cjs/core/index.d.ts +2 -2
  178. package/cjs/core/index.js +6 -5
  179. package/cjs/core/utils/color/ColorValue.js +146 -156
  180. package/cjs/core/utils/components/FocusTrap.js +14 -14
  181. package/cjs/core/utils/components/InputContainer.js +12 -36
  182. package/cjs/core/utils/components/MiddleTextTruncation.js +15 -31
  183. package/cjs/core/utils/components/Popover.d.ts +1 -1
  184. package/cjs/core/utils/components/Popover.js +57 -60
  185. package/cjs/core/utils/components/Resizer.js +51 -51
  186. package/cjs/core/utils/components/VirtualScroll.js +72 -89
  187. package/cjs/core/utils/components/VisuallyHidden.js +6 -28
  188. package/cjs/core/utils/components/WithCSSTransition.d.ts +2 -2
  189. package/cjs/core/utils/components/WithCSSTransition.js +18 -40
  190. package/cjs/core/utils/functions/colors.js +7 -7
  191. package/cjs/core/utils/functions/dom.js +7 -8
  192. package/cjs/core/utils/functions/focusable.js +11 -15
  193. package/cjs/core/utils/functions/numbers.js +5 -6
  194. package/cjs/core/utils/functions/styles.js +3 -3
  195. package/cjs/core/utils/hooks/useContainerWidth.js +9 -13
  196. package/cjs/core/utils/hooks/useDragAndDrop.js +32 -33
  197. package/cjs/core/utils/hooks/useEventListener.js +7 -7
  198. package/cjs/core/utils/hooks/useIntersection.js +9 -12
  199. package/cjs/core/utils/hooks/useIsomorphicLayoutEffect.js +1 -1
  200. package/cjs/core/utils/hooks/useLatestRef.js +4 -4
  201. package/cjs/core/utils/hooks/useMediaQuery.js +9 -12
  202. package/cjs/core/utils/hooks/useMergedRefs.js +6 -23
  203. package/cjs/core/utils/hooks/useOverflow.js +26 -33
  204. package/cjs/core/utils/hooks/useResizeObserver.js +6 -9
  205. package/cjs/core/utils/hooks/useSafeContext.js +4 -4
  206. package/cjs/core/utils/hooks/useTheme.js +18 -20
  207. package/cjs/core/utils/icons/StatusIconMap.js +9 -20
  208. package/cjs/core/utils/icons/SvgCalendar.js +3 -14
  209. package/cjs/core/utils/icons/SvgCaretDownSmall.js +3 -14
  210. package/cjs/core/utils/icons/SvgCaretRightSmall.js +3 -14
  211. package/cjs/core/utils/icons/SvgCaretUpSmall.js +3 -14
  212. package/cjs/core/utils/icons/SvgCheckmark.js +3 -14
  213. package/cjs/core/utils/icons/SvgCheckmarkSmall.js +3 -14
  214. package/cjs/core/utils/icons/SvgChevronLeft.js +3 -14
  215. package/cjs/core/utils/icons/SvgChevronLeftDouble.js +3 -14
  216. package/cjs/core/utils/icons/SvgChevronRight.js +3 -14
  217. package/cjs/core/utils/icons/SvgChevronRightDouble.js +3 -14
  218. package/cjs/core/utils/icons/SvgClose.js +3 -14
  219. package/cjs/core/utils/icons/SvgCloseSmall.js +3 -14
  220. package/cjs/core/utils/icons/SvgColumnManager.js +3 -14
  221. package/cjs/core/utils/icons/SvgFilter.js +3 -14
  222. package/cjs/core/utils/icons/SvgFilterHollow.js +3 -14
  223. package/cjs/core/utils/icons/SvgImportantSmall.js +3 -14
  224. package/cjs/core/utils/icons/SvgInfoCircular.js +3 -14
  225. package/cjs/core/utils/icons/SvgMore.js +3 -14
  226. package/cjs/core/utils/icons/SvgMoreVertical.js +3 -14
  227. package/cjs/core/utils/icons/SvgNew.js +3 -14
  228. package/cjs/core/utils/icons/SvgSmileyHappy.js +3 -14
  229. package/cjs/core/utils/icons/SvgSortDown.js +3 -14
  230. package/cjs/core/utils/icons/SvgSortUp.js +3 -14
  231. package/cjs/core/utils/icons/SvgStatusError.js +3 -14
  232. package/cjs/core/utils/icons/SvgStatusSuccess.js +3 -14
  233. package/cjs/core/utils/icons/SvgStatusWarning.js +3 -14
  234. package/cjs/core/utils/icons/SvgSwap.js +3 -14
  235. package/cjs/core/utils/icons/SvgUpload.js +3 -14
  236. package/cjs/types/react-table-config.d.ts +6 -2
  237. package/esm/core/Alert/Alert.js +5 -27
  238. package/esm/core/Avatar/Avatar.js +9 -32
  239. package/esm/core/AvatarGroup/AvatarGroup.js +16 -41
  240. package/esm/core/Backdrop/Backdrop.js +3 -25
  241. package/esm/core/Badge/Badge.js +10 -28
  242. package/esm/core/Breadcrumbs/Breadcrumbs.js +11 -37
  243. package/esm/core/ButtonGroup/ButtonGroup.js +7 -29
  244. package/esm/core/Buttons/Button/Button.js +3 -25
  245. package/esm/core/Buttons/DropdownButton/DropdownButton.js +9 -31
  246. package/esm/core/Buttons/IconButton/IconButton.js +3 -25
  247. package/esm/core/Buttons/IdeasButton/IdeasButton.js +3 -25
  248. package/esm/core/Buttons/SplitButton/SplitButton.js +8 -30
  249. package/esm/core/Carousel/Carousel.js +29 -54
  250. package/esm/core/Carousel/CarouselContext.js +1 -1
  251. package/esm/core/Carousel/CarouselDot.js +4 -26
  252. package/esm/core/Carousel/CarouselDotsList.js +28 -55
  253. package/esm/core/Carousel/CarouselNavigation.js +16 -38
  254. package/esm/core/Carousel/CarouselSlide.js +8 -30
  255. package/esm/core/Carousel/CarouselSlider.js +22 -47
  256. package/esm/core/Checkbox/Checkbox.js +14 -38
  257. package/esm/core/ColorPicker/ColorBuilder.js +46 -68
  258. package/esm/core/ColorPicker/ColorInputPanel.js +58 -82
  259. package/esm/core/ColorPicker/ColorPalette.js +20 -44
  260. package/esm/core/ColorPicker/ColorPicker.js +21 -45
  261. package/esm/core/ColorPicker/ColorPickerContext.js +3 -3
  262. package/esm/core/ColorPicker/ColorSwatch.js +9 -30
  263. package/esm/core/ComboBox/ComboBox.js +55 -81
  264. package/esm/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
  265. package/esm/core/ComboBox/ComboBoxDropdown.js +10 -33
  266. package/esm/core/ComboBox/ComboBoxEndIcon.js +8 -30
  267. package/esm/core/ComboBox/ComboBoxInput.js +24 -46
  268. package/esm/core/ComboBox/ComboBoxInputContainer.js +5 -27
  269. package/esm/core/ComboBox/ComboBoxMenu.js +29 -54
  270. package/esm/core/ComboBox/ComboBoxMenuItem.js +7 -29
  271. package/esm/core/ComboBox/helpers.js +13 -21
  272. package/esm/core/DatePicker/DatePicker.js +82 -106
  273. package/esm/core/Dialog/Dialog.js +19 -39
  274. package/esm/core/Dialog/DialogBackdrop.js +11 -30
  275. package/esm/core/Dialog/DialogButtonBar.js +3 -25
  276. package/esm/core/Dialog/DialogContent.js +3 -25
  277. package/esm/core/Dialog/DialogContext.js +2 -2
  278. package/esm/core/Dialog/DialogDragContext.js +6 -15
  279. package/esm/core/Dialog/DialogMain.js +45 -52
  280. package/esm/core/Dialog/DialogTitleBar.js +7 -29
  281. package/esm/core/Dialog/DialogTitleBarTitle.js +3 -25
  282. package/esm/core/DropdownMenu/DropdownMenu.js +11 -33
  283. package/esm/core/ExpandableBlock/ExpandableBlock.js +9 -31
  284. package/esm/core/Fieldset/Fieldset.js +6 -30
  285. package/esm/core/FileUpload/FileUpload.js +10 -32
  286. package/esm/core/FileUpload/FileUploadTemplate.js +2 -2
  287. package/esm/core/Footer/Footer.js +16 -44
  288. package/esm/core/Footer/FooterItem.js +3 -25
  289. package/esm/core/Footer/FooterList.js +3 -25
  290. package/esm/core/Footer/FooterSeparator.js +3 -25
  291. package/esm/core/Header/Header.js +5 -27
  292. package/esm/core/Header/HeaderBasicButton.js +3 -25
  293. package/esm/core/Header/HeaderBreadcrumbs.js +7 -37
  294. package/esm/core/Header/HeaderButton.js +16 -30
  295. package/esm/core/Header/HeaderDropdownButton.js +9 -31
  296. package/esm/core/Header/HeaderLogo.js +4 -26
  297. package/esm/core/Header/HeaderSplitButton.js +8 -30
  298. package/esm/core/InformationPanel/InformationPanel.js +12 -34
  299. package/esm/core/InformationPanel/InformationPanelBody.js +3 -25
  300. package/esm/core/InformationPanel/InformationPanelContent.js +3 -25
  301. package/esm/core/InformationPanel/InformationPanelHeader.js +3 -25
  302. package/esm/core/InformationPanel/InformationPanelWrapper.js +3 -25
  303. package/esm/core/Input/Input.js +6 -28
  304. package/esm/core/InputGroup/InputGroup.js +4 -26
  305. package/esm/core/Label/Label.js +4 -26
  306. package/esm/core/LabeledInput/LabeledInput.js +4 -26
  307. package/esm/core/LabeledSelect/LabeledSelect.js +4 -26
  308. package/esm/core/LabeledTextarea/LabeledTextarea.js +4 -26
  309. package/esm/core/Menu/Menu.js +15 -37
  310. package/esm/core/Menu/MenuDivider.js +3 -25
  311. package/esm/core/Menu/MenuExtraContent.js +3 -25
  312. package/esm/core/Menu/MenuItem.js +13 -35
  313. package/esm/core/Menu/MenuItemSkeleton.js +8 -27
  314. package/esm/core/Modal/Modal.js +8 -26
  315. package/esm/core/Modal/ModalButtonBar.js +1 -1
  316. package/esm/core/Modal/ModalContent.js +1 -1
  317. package/esm/core/{ErrorPage → NonIdealState}/ErrorPage.d.ts +5 -1
  318. package/esm/core/NonIdealState/ErrorPage.js +137 -0
  319. package/esm/core/NonIdealState/NonIdealState.d.ts +46 -0
  320. package/esm/core/NonIdealState/NonIdealState.js +25 -0
  321. package/{cjs/core/ErrorPage → esm/core/NonIdealState}/index.d.ts +3 -1
  322. package/esm/core/{ErrorPage → NonIdealState}/index.js +2 -1
  323. package/esm/core/ProgressIndicators/ProgressLinear/ProgressLinear.js +8 -31
  324. package/esm/core/ProgressIndicators/ProgressRadial/ProgressRadial.js +10 -34
  325. package/esm/core/Radio/Radio.js +7 -30
  326. package/esm/core/RadioTiles/RadioTile.js +6 -28
  327. package/esm/core/RadioTiles/RadioTileGroup.js +3 -25
  328. package/esm/core/Select/Select.js +53 -66
  329. package/esm/core/Select/SelectTag.js +3 -25
  330. package/esm/core/SideNavigation/SideNavigation.js +9 -35
  331. package/esm/core/SideNavigation/SidenavButton.js +4 -26
  332. package/esm/core/SideNavigation/SidenavSubmenu.js +3 -25
  333. package/esm/core/SideNavigation/SidenavSubmenuHeader.js +3 -25
  334. package/esm/core/SkipToContentLink/SkipToContentLink.js +3 -25
  335. package/esm/core/Slider/Slider.js +63 -91
  336. package/esm/core/Slider/Thumb.js +17 -36
  337. package/esm/core/Slider/Track.js +23 -43
  338. package/esm/core/StatusMessage/StatusMessage.js +3 -4
  339. package/esm/core/Stepper/Stepper.js +7 -31
  340. package/esm/core/Stepper/StepperStep.js +12 -31
  341. package/esm/core/Stepper/Wizard.js +3 -25
  342. package/esm/core/Stepper/WorkflowDiagram.js +3 -25
  343. package/esm/core/Stepper/WorkflowDiagramStep.js +3 -25
  344. package/esm/core/Surface/Surface.js +8 -27
  345. package/esm/core/Table/SubRowExpander.js +3 -3
  346. package/esm/core/Table/Table.d.ts +19 -24
  347. package/esm/core/Table/Table.js +177 -183
  348. package/esm/core/Table/TableCell.js +23 -24
  349. package/esm/core/Table/TablePaginator.js +46 -77
  350. package/esm/core/Table/TableRowMemoized.d.ts +6 -10
  351. package/esm/core/Table/TableRowMemoized.js +32 -56
  352. package/esm/core/Table/actionHandlers/expandHandler.js +3 -3
  353. package/esm/core/Table/actionHandlers/filterHandler.js +4 -4
  354. package/esm/core/Table/actionHandlers/resizeHandler.js +13 -15
  355. package/esm/core/Table/actionHandlers/selectHandler.js +35 -40
  356. package/esm/core/Table/cells/DefaultCell.js +3 -25
  357. package/esm/core/Table/cells/EditableCell.js +14 -38
  358. package/esm/core/Table/columns/actionColumn.js +34 -52
  359. package/esm/core/Table/columns/expanderColumn.d.ts +2 -5
  360. package/esm/core/Table/columns/expanderColumn.js +9 -24
  361. package/esm/core/Table/columns/selectionColumn.d.ts +2 -5
  362. package/esm/core/Table/columns/selectionColumn.js +14 -35
  363. package/esm/core/Table/filters/BaseFilter.js +3 -3
  364. package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +14 -36
  365. package/esm/core/Table/filters/DateRangeFilter/DateRangeFilter.js +15 -26
  366. package/esm/core/Table/filters/FilterButtonBar.js +4 -15
  367. package/esm/core/Table/filters/FilterToggle.js +11 -33
  368. package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +11 -24
  369. package/esm/core/Table/filters/TextFilter/TextFilter.js +6 -6
  370. package/esm/core/Table/filters/customFilterFunctions.js +12 -14
  371. package/esm/core/Table/filters/defaultFilterFunctions.js +63 -65
  372. package/esm/core/Table/filters/tableFilters.js +4 -15
  373. package/esm/core/Table/hooks/useColumnDragAndDrop.js +40 -52
  374. package/esm/core/Table/hooks/useExpanderCell.js +15 -31
  375. package/esm/core/Table/hooks/useResizeColumns.js +196 -204
  376. package/esm/core/Table/hooks/useScrollToRow.js +10 -11
  377. package/esm/core/Table/hooks/useSelectionCell.js +6 -17
  378. package/esm/core/Table/hooks/useStickyColumns.js +27 -32
  379. package/esm/core/Table/hooks/useSubRowFiltering.js +35 -55
  380. package/esm/core/Table/hooks/useSubRowSelection.js +9 -11
  381. package/esm/core/Table/utils.js +15 -26
  382. package/esm/core/Tabs/Tab.js +3 -25
  383. package/esm/core/Tabs/Tabs.js +41 -63
  384. package/esm/core/Tag/Tag.js +4 -26
  385. package/esm/core/Tag/TagContainer.js +6 -29
  386. package/esm/core/Textarea/Textarea.js +6 -28
  387. package/esm/core/ThemeProvider/ThemeProvider.d.ts +1 -0
  388. package/esm/core/ThemeProvider/ThemeProvider.js +15 -36
  389. package/esm/core/Tile/Tile.js +23 -52
  390. package/esm/core/TimePicker/TimePicker.js +56 -94
  391. package/esm/core/Toast/Toast.js +41 -61
  392. package/esm/core/Toast/ToastWrapper.js +10 -21
  393. package/esm/core/Toast/Toaster.js +83 -134
  394. package/esm/core/Toast/index.js +1 -1
  395. package/esm/core/ToggleSwitch/ToggleSwitch.js +7 -29
  396. package/esm/core/Tooltip/Tooltip.js +3 -25
  397. package/esm/core/Tree/Tree.js +54 -76
  398. package/esm/core/Tree/TreeContext.js +3 -3
  399. package/esm/core/Tree/TreeNode.js +16 -38
  400. package/esm/core/Tree/TreeNodeExpander.js +3 -25
  401. package/esm/core/Typography/Anchor/Anchor.js +2 -25
  402. package/esm/core/Typography/Blockquote/Blockquote.js +3 -25
  403. package/esm/core/Typography/Body/Body.js +4 -26
  404. package/esm/core/Typography/Code/Code.js +3 -25
  405. package/esm/core/Typography/Headline/Headline.js +3 -25
  406. package/esm/core/Typography/Kbd/Kbd.js +4 -26
  407. package/esm/core/Typography/Leading/Leading.js +3 -25
  408. package/esm/core/Typography/Small/Small.js +3 -25
  409. package/esm/core/Typography/Subheading/Subheading.js +3 -25
  410. package/esm/core/Typography/Text/Text.js +8 -31
  411. package/esm/core/Typography/Title/Title.js +3 -25
  412. package/esm/core/index.d.ts +2 -2
  413. package/esm/core/index.js +1 -1
  414. package/esm/core/utils/color/ColorValue.js +145 -156
  415. package/esm/core/utils/components/FocusTrap.js +11 -11
  416. package/esm/core/utils/components/InputContainer.js +10 -34
  417. package/esm/core/utils/components/MiddleTextTruncation.js +13 -29
  418. package/esm/core/utils/components/Popover.d.ts +1 -1
  419. package/esm/core/utils/components/Popover.js +54 -57
  420. package/esm/core/utils/components/Resizer.js +49 -49
  421. package/esm/core/utils/components/VirtualScroll.js +69 -86
  422. package/esm/core/utils/components/VisuallyHidden.js +3 -25
  423. package/esm/core/utils/components/WithCSSTransition.d.ts +2 -2
  424. package/esm/core/utils/components/WithCSSTransition.js +16 -38
  425. package/esm/core/utils/functions/colors.js +8 -8
  426. package/esm/core/utils/functions/dom.js +7 -8
  427. package/esm/core/utils/functions/focusable.js +11 -15
  428. package/esm/core/utils/functions/numbers.js +5 -6
  429. package/esm/core/utils/functions/styles.js +3 -3
  430. package/esm/core/utils/hooks/useContainerWidth.js +6 -10
  431. package/esm/core/utils/hooks/useDragAndDrop.js +28 -29
  432. package/esm/core/utils/hooks/useEventListener.js +6 -6
  433. package/esm/core/utils/hooks/useIntersection.js +7 -10
  434. package/esm/core/utils/hooks/useIsomorphicLayoutEffect.js +1 -1
  435. package/esm/core/utils/hooks/useLatestRef.js +3 -3
  436. package/esm/core/utils/hooks/useMediaQuery.js +6 -9
  437. package/esm/core/utils/hooks/useMergedRefs.js +5 -22
  438. package/esm/core/utils/hooks/useOverflow.js +23 -30
  439. package/esm/core/utils/hooks/useResizeObserver.js +4 -7
  440. package/esm/core/utils/hooks/useSafeContext.js +3 -3
  441. package/esm/core/utils/hooks/useTheme.js +14 -16
  442. package/esm/core/utils/icons/StatusIconMap.js +5 -16
  443. package/esm/core/utils/icons/SvgCalendar.js +2 -13
  444. package/esm/core/utils/icons/SvgCaretDownSmall.js +2 -13
  445. package/esm/core/utils/icons/SvgCaretRightSmall.js +2 -13
  446. package/esm/core/utils/icons/SvgCaretUpSmall.js +2 -13
  447. package/esm/core/utils/icons/SvgCheckmark.js +2 -13
  448. package/esm/core/utils/icons/SvgCheckmarkSmall.js +2 -13
  449. package/esm/core/utils/icons/SvgChevronLeft.js +2 -13
  450. package/esm/core/utils/icons/SvgChevronLeftDouble.js +2 -13
  451. package/esm/core/utils/icons/SvgChevronRight.js +2 -13
  452. package/esm/core/utils/icons/SvgChevronRightDouble.js +2 -13
  453. package/esm/core/utils/icons/SvgClose.js +2 -13
  454. package/esm/core/utils/icons/SvgCloseSmall.js +2 -13
  455. package/esm/core/utils/icons/SvgColumnManager.js +2 -13
  456. package/esm/core/utils/icons/SvgFilter.js +2 -13
  457. package/esm/core/utils/icons/SvgFilterHollow.js +2 -13
  458. package/esm/core/utils/icons/SvgImportantSmall.js +2 -13
  459. package/esm/core/utils/icons/SvgInfoCircular.js +2 -13
  460. package/esm/core/utils/icons/SvgMore.js +2 -13
  461. package/esm/core/utils/icons/SvgMoreVertical.js +2 -13
  462. package/esm/core/utils/icons/SvgNew.js +2 -13
  463. package/esm/core/utils/icons/SvgSmileyHappy.js +2 -13
  464. package/esm/core/utils/icons/SvgSortDown.js +2 -13
  465. package/esm/core/utils/icons/SvgSortUp.js +2 -13
  466. package/esm/core/utils/icons/SvgStatusError.js +2 -13
  467. package/esm/core/utils/icons/SvgStatusSuccess.js +2 -13
  468. package/esm/core/utils/icons/SvgStatusWarning.js +2 -13
  469. package/esm/core/utils/icons/SvgSwap.js +2 -13
  470. package/esm/core/utils/icons/SvgUpload.js +2 -13
  471. package/esm/types/react-table-config.d.ts +6 -2
  472. package/package.json +4 -4
  473. package/cjs/core/ErrorPage/ErrorPage.js +0 -168
  474. package/esm/core/ErrorPage/ErrorPage.js +0 -161
@@ -1,25 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
1
  /*---------------------------------------------------------------------------------------------
24
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -40,22 +18,22 @@ import '@itwin/itwinui-css/css/color-picker.css';
40
18
  * <ColorInputPanel defaultColorFormat='hsl' />
41
19
  * </ColorPicker>
42
20
  */
43
- export var ColorInputPanel = React.forwardRef(function (props, ref) {
21
+ export const ColorInputPanel = React.forwardRef((props, ref) => {
44
22
  var _a, _b, _c, _d, _f, _g, _h, _j;
45
- var defaultColorFormat = props.defaultColorFormat, _k = props.allowedColorFormats, allowedColorFormats = _k === void 0 ? ['hsl', 'rgb', 'hex'] : _k, className = props.className, rest = __rest(props, ["defaultColorFormat", "allowedColorFormats", "className"]);
23
+ const { defaultColorFormat, allowedColorFormats = ['hsl', 'rgb', 'hex'], className, ...rest } = props;
46
24
  useTheme();
47
- var inputsContainerRef = React.useRef(null);
48
- var _l = useColorPickerContext(), activeColor = _l.activeColor, applyHsvColorChange = _l.applyHsvColorChange, hsvColor = _l.hsvColor, showAlpha = _l.showAlpha;
49
- var _m = React.useState(defaultColorFormat), currentFormat = _m[0], setCurrentFormat = _m[1];
50
- React.useEffect(function () {
25
+ const inputsContainerRef = React.useRef(null);
26
+ const { activeColor, applyHsvColorChange, hsvColor, showAlpha } = useColorPickerContext();
27
+ const [currentFormat, setCurrentFormat] = React.useState(defaultColorFormat);
28
+ React.useEffect(() => {
51
29
  setCurrentFormat(defaultColorFormat);
52
30
  }, [defaultColorFormat]);
53
31
  // need to use state since input may have parsing error
54
- var _o = React.useState(['', '', '', '']), input = _o[0], setInput = _o[1];
55
- React.useEffect(function () {
32
+ const [input, setInput] = React.useState(['', '', '', '']);
33
+ React.useEffect(() => {
56
34
  var _a, _b;
57
35
  if (currentFormat === 'hsl') {
58
- var hsl = activeColor.toHslColor();
36
+ const hsl = activeColor.toHslColor();
59
37
  setInput([
60
38
  ColorValue.getFormattedColorNumber(hsvColor.h),
61
39
  ColorValue.getFormattedColorNumber(hsl.s),
@@ -64,7 +42,7 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
64
42
  ]);
65
43
  }
66
44
  else if (currentFormat === 'rgb') {
67
- var rgb = activeColor.toRgbColor();
45
+ const rgb = activeColor.toRgbColor();
68
46
  setInput([
69
47
  rgb.r.toString(),
70
48
  rgb.g.toString(),
@@ -77,23 +55,21 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
77
55
  setValidHexInput(true);
78
56
  }
79
57
  }, [activeColor, hsvColor.h, currentFormat, showAlpha]);
80
- var _p = React.useState(true), validHexInput = _p[0], setValidHexInput = _p[1];
81
- var swapColorFormat = React.useCallback(function () {
58
+ const [validHexInput, setValidHexInput] = React.useState(true);
59
+ const swapColorFormat = React.useCallback(() => {
82
60
  var _a;
83
- var newFormat = (_a = allowedColorFormats[(allowedColorFormats.indexOf(currentFormat) + 1) %
61
+ const newFormat = (_a = allowedColorFormats[(allowedColorFormats.indexOf(currentFormat) + 1) %
84
62
  allowedColorFormats.length]) !== null && _a !== void 0 ? _a : allowedColorFormats[0];
85
63
  setCurrentFormat(newFormat);
86
64
  }, [currentFormat, allowedColorFormats]);
87
- var isFocusInside = function (focused) {
88
- return !!(focused &&
89
- inputsContainerRef.current &&
90
- inputsContainerRef.current.contains(focused));
91
- };
92
- var handleColorInputChange = function () {
93
- var color;
65
+ const isFocusInside = (focused) => !!(focused &&
66
+ inputsContainerRef.current &&
67
+ inputsContainerRef.current.contains(focused));
68
+ const handleColorInputChange = () => {
69
+ let color;
94
70
  if (currentFormat === 'hex') {
95
71
  try {
96
- var value = input[0].replace(/ /g, '').toLowerCase(); // remove white space from input
72
+ const value = input[0].replace(/ /g, '').toLowerCase(); // remove white space from input
97
73
  color = ColorValue.create(value);
98
74
  setValidHexInput(true);
99
75
  if (activeColor.toHexString(showAlpha).toLowerCase() === value) {
@@ -106,7 +82,7 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
106
82
  }
107
83
  }
108
84
  if (currentFormat === 'hsl') {
109
- var _a = input.map(Number), h = _a[0], s = _a[1], l = _a[2], a = _a[3];
85
+ const [h, s, l, a] = input.map(Number);
110
86
  if (h < 0 ||
111
87
  h > 360 ||
112
88
  s < 0 ||
@@ -117,14 +93,14 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
117
93
  a > 1) {
118
94
  return;
119
95
  }
120
- var hsl = activeColor.toHslColor();
96
+ const hsl = activeColor.toHslColor();
121
97
  if (hsl.h === h && hsl.s === s && hsl.l === l && hsl.a === a) {
122
98
  return;
123
99
  }
124
- color = ColorValue.create({ h: h, s: s, l: l, a: a });
100
+ color = ColorValue.create({ h, s, l, a });
125
101
  }
126
102
  if (currentFormat === 'rgb') {
127
- var _b = input.map(Number), r = _b[0], g = _b[1], b = _b[2], a = _b[3];
103
+ const [r, g, b, a] = input.map(Number);
128
104
  if (r < 0 ||
129
105
  r > 255 ||
130
106
  g < 0 ||
@@ -135,43 +111,43 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
135
111
  a > 1) {
136
112
  return;
137
113
  }
138
- var rgb = activeColor.toRgbColor();
114
+ const rgb = activeColor.toRgbColor();
139
115
  if (rgb.r === r && rgb.g === g && rgb.b === b && rgb.a === a) {
140
116
  return;
141
117
  }
142
- color = ColorValue.create({ r: r, g: g, b: b, a: a });
118
+ color = ColorValue.create({ r, g, b, a });
143
119
  }
144
120
  if (color) {
145
121
  applyHsvColorChange(color.toHsvColor(), true, color);
146
122
  }
147
123
  };
148
- var hexInputField = (React.createElement(InputContainer, { status: validHexInput ? undefined : 'negative' },
149
- React.createElement(Input, { size: 'small', maxLength: showAlpha ? 9 : 7, minLength: 1, placeholder: 'HEX', value: input[0], onChange: function (event) {
150
- var value = event.target.value.startsWith('#')
124
+ const hexInputField = (React.createElement(InputContainer, { status: validHexInput ? undefined : 'negative' },
125
+ React.createElement(Input, { size: 'small', maxLength: showAlpha ? 9 : 7, minLength: 1, placeholder: 'HEX', value: input[0], onChange: (event) => {
126
+ const value = event.target.value.startsWith('#')
151
127
  ? event.target.value
152
- : "#".concat(event.target.value);
128
+ : `#${event.target.value}`;
153
129
  setInput([value]);
154
- }, onKeyDown: function (event) {
130
+ }, onKeyDown: (event) => {
155
131
  if (event.key === 'Enter') {
156
132
  event.preventDefault();
157
133
  handleColorInputChange();
158
134
  }
159
- }, onBlur: function (event) {
135
+ }, onBlur: (event) => {
160
136
  event.preventDefault();
161
137
  handleColorInputChange();
162
138
  } })));
163
- var hslInputs = (React.createElement(React.Fragment, null,
139
+ const hslInputs = (React.createElement(React.Fragment, null,
164
140
  React.createElement(InputContainer, { status: Number(input[0]) < 0 || Number(input[0]) > 360
165
141
  ? 'negative'
166
142
  : undefined },
167
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '359', step: '.1', placeholder: 'H', value: (_a = input[0]) !== null && _a !== void 0 ? _a : '', onChange: function (event) {
143
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '359', step: '.1', placeholder: 'H', value: (_a = input[0]) !== null && _a !== void 0 ? _a : '', onChange: (event) => {
168
144
  setInput([event.target.value, input[1], input[2], input[3]]);
169
- }, onKeyDown: function (event) {
145
+ }, onKeyDown: (event) => {
170
146
  if (event.key === 'Enter') {
171
147
  event.preventDefault();
172
148
  handleColorInputChange();
173
149
  }
174
- }, onBlur: function (event) {
150
+ }, onBlur: (event) => {
175
151
  event.preventDefault();
176
152
  if (!isFocusInside(event.relatedTarget)) {
177
153
  handleColorInputChange();
@@ -180,14 +156,14 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
180
156
  React.createElement(InputContainer, { status: Number(input[1]) < 0 || Number(input[1]) > 100
181
157
  ? 'negative'
182
158
  : undefined },
183
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'S', value: (_b = input[1]) !== null && _b !== void 0 ? _b : '', onChange: function (event) {
159
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'S', value: (_b = input[1]) !== null && _b !== void 0 ? _b : '', onChange: (event) => {
184
160
  setInput([input[0], event.target.value, input[2], input[3]]);
185
- }, onKeyDown: function (event) {
161
+ }, onKeyDown: (event) => {
186
162
  if (event.key === 'Enter') {
187
163
  event.preventDefault();
188
164
  handleColorInputChange();
189
165
  }
190
- }, onBlur: function (event) {
166
+ }, onBlur: (event) => {
191
167
  event.preventDefault();
192
168
  if (!isFocusInside(event.relatedTarget)) {
193
169
  handleColorInputChange();
@@ -196,14 +172,14 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
196
172
  React.createElement(InputContainer, { status: Number(input[2]) < 0 || Number(input[2]) > 100
197
173
  ? 'negative'
198
174
  : undefined },
199
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'L', value: (_c = input[2]) !== null && _c !== void 0 ? _c : '', onChange: function (event) {
175
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '100', step: '.1', placeholder: 'L', value: (_c = input[2]) !== null && _c !== void 0 ? _c : '', onChange: (event) => {
200
176
  setInput([input[0], input[1], event.target.value, input[3]]);
201
- }, onKeyDown: function (event) {
177
+ }, onKeyDown: (event) => {
202
178
  if (event.key === 'Enter') {
203
179
  event.preventDefault();
204
180
  handleColorInputChange();
205
181
  }
206
- }, onBlur: function (event) {
182
+ }, onBlur: (event) => {
207
183
  event.preventDefault();
208
184
  if (!isFocusInside(event.relatedTarget)) {
209
185
  handleColorInputChange();
@@ -212,31 +188,31 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
212
188
  showAlpha && (React.createElement(InputContainer, { status: Number(input[3]) < 0 || Number(input[3]) > 1
213
189
  ? 'negative'
214
190
  : undefined },
215
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', value: (_d = input[3]) !== null && _d !== void 0 ? _d : '', onChange: function (event) {
191
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', value: (_d = input[3]) !== null && _d !== void 0 ? _d : '', onChange: (event) => {
216
192
  setInput([input[0], input[1], input[2], event.target.value]);
217
- }, onKeyDown: function (event) {
193
+ }, onKeyDown: (event) => {
218
194
  if (event.key === 'Enter') {
219
195
  event.preventDefault();
220
196
  handleColorInputChange();
221
197
  }
222
- }, onBlur: function (event) {
198
+ }, onBlur: (event) => {
223
199
  event.preventDefault();
224
200
  if (!isFocusInside(event.relatedTarget)) {
225
201
  handleColorInputChange();
226
202
  }
227
203
  } })))));
228
- var rgbInputs = (React.createElement(React.Fragment, null,
204
+ const rgbInputs = (React.createElement(React.Fragment, null,
229
205
  React.createElement(InputContainer, { status: Number(input[0]) < 0 || Number(input[0]) > 255
230
206
  ? 'negative'
231
207
  : undefined },
232
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'R', value: (_f = input[0]) !== null && _f !== void 0 ? _f : '', onChange: function (event) {
208
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'R', value: (_f = input[0]) !== null && _f !== void 0 ? _f : '', onChange: (event) => {
233
209
  setInput([event.target.value, input[1], input[2], input[3]]);
234
- }, onKeyDown: function (event) {
210
+ }, onKeyDown: (event) => {
235
211
  if (event.key === 'Enter') {
236
212
  event.preventDefault();
237
213
  handleColorInputChange();
238
214
  }
239
- }, onBlur: function (event) {
215
+ }, onBlur: (event) => {
240
216
  event.preventDefault();
241
217
  if (!isFocusInside(event.relatedTarget)) {
242
218
  handleColorInputChange();
@@ -245,14 +221,14 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
245
221
  React.createElement(InputContainer, { status: Number(input[1]) < 0 || Number(input[1]) > 255
246
222
  ? 'negative'
247
223
  : undefined },
248
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'G', value: (_g = input[1]) !== null && _g !== void 0 ? _g : '', onChange: function (event) {
224
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'G', value: (_g = input[1]) !== null && _g !== void 0 ? _g : '', onChange: (event) => {
249
225
  setInput([input[0], event.target.value, input[2], input[3]]);
250
- }, onKeyDown: function (event) {
226
+ }, onKeyDown: (event) => {
251
227
  if (event.key === 'Enter') {
252
228
  event.preventDefault();
253
229
  handleColorInputChange();
254
230
  }
255
- }, onBlur: function (event) {
231
+ }, onBlur: (event) => {
256
232
  event.preventDefault();
257
233
  if (!isFocusInside(event.relatedTarget)) {
258
234
  handleColorInputChange();
@@ -261,14 +237,14 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
261
237
  React.createElement(InputContainer, { status: Number(input[2]) < 0 || Number(input[2]) > 255
262
238
  ? 'negative'
263
239
  : undefined },
264
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'B', value: (_h = input[2]) !== null && _h !== void 0 ? _h : '', onChange: function (event) {
240
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '255', placeholder: 'B', value: (_h = input[2]) !== null && _h !== void 0 ? _h : '', onChange: (event) => {
265
241
  setInput([input[0], input[1], event.target.value, input[3]]);
266
- }, onKeyDown: function (event) {
242
+ }, onKeyDown: (event) => {
267
243
  if (event.key === 'Enter') {
268
244
  event.preventDefault();
269
245
  handleColorInputChange();
270
246
  }
271
- }, onBlur: function (event) {
247
+ }, onBlur: (event) => {
272
248
  event.preventDefault();
273
249
  if (!isFocusInside(event.relatedTarget)) {
274
250
  handleColorInputChange();
@@ -277,20 +253,20 @@ export var ColorInputPanel = React.forwardRef(function (props, ref) {
277
253
  showAlpha && (React.createElement(InputContainer, { status: Number(input[3]) < 0 || Number(input[3]) > 1
278
254
  ? 'negative'
279
255
  : undefined },
280
- React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', value: (_j = input[3]) !== null && _j !== void 0 ? _j : '', onChange: function (event) {
256
+ React.createElement(Input, { size: 'small', type: 'number', min: '0', max: '1', step: '.01', placeholder: 'A', value: (_j = input[3]) !== null && _j !== void 0 ? _j : '', onChange: (event) => {
281
257
  setInput([input[0], input[1], input[2], event.target.value]);
282
- }, onKeyDown: function (event) {
258
+ }, onKeyDown: (event) => {
283
259
  if (event.key === 'Enter') {
284
260
  event.preventDefault();
285
261
  handleColorInputChange();
286
262
  }
287
- }, onBlur: function (event) {
263
+ }, onBlur: (event) => {
288
264
  event.preventDefault();
289
265
  if (!isFocusInside(event.relatedTarget)) {
290
266
  handleColorInputChange();
291
267
  }
292
268
  } })))));
293
- return (React.createElement("div", __assign({ className: cx('iui-color-input-wrapper', className), ref: ref }, rest),
269
+ return (React.createElement("div", { className: cx('iui-color-input-wrapper', className), ref: ref, ...rest },
294
270
  React.createElement("div", { className: 'iui-color-picker-section-label' }, showAlpha && currentFormat != 'hex'
295
271
  ? currentFormat.toUpperCase() + 'A'
296
272
  : currentFormat.toUpperCase()),
@@ -1,25 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
1
  /*---------------------------------------------------------------------------------------------
24
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -42,43 +20,41 @@ import '@itwin/itwinui-css/css/color-picker.css';
42
20
  * // ...
43
21
  * </ColorPalette>
44
22
  */
45
- export var ColorPalette = React.forwardRef(function (props, ref) {
46
- var colors = props.colors, label = props.label, className = props.className, children = props.children, rest = __rest(props, ["colors", "label", "className", "children"]);
23
+ export const ColorPalette = React.forwardRef((props, ref) => {
24
+ const { colors, label, className, children, ...rest } = props;
47
25
  useTheme();
48
- var _a = useColorPickerContext(), activeColor = _a.activeColor, setActiveColor = _a.setActiveColor, onChangeComplete = _a.onChangeComplete;
49
- var _b = React.useState(), focusedIndex = _b[0], setFocusedIndex = _b[1];
26
+ const { activeColor, setActiveColor, onChangeComplete, } = useColorPickerContext();
27
+ const [focusedIndex, setFocusedIndex] = React.useState();
50
28
  // callback ref to set tabindex=0 on first child if none of the swatches are tabbable
51
- var setDefaultTabIndex = function (el) {
29
+ const setDefaultTabIndex = (el) => {
52
30
  var _a;
53
31
  if (el && !el.querySelector('[tabindex="0"]')) {
54
32
  (_a = el.firstElementChild) === null || _a === void 0 ? void 0 : _a.setAttribute('tabindex', '0');
55
33
  }
56
34
  };
57
- var paletteRef = React.useRef(null);
58
- var paletteRefs = useMergedRefs(paletteRef, setDefaultTabIndex);
35
+ const paletteRef = React.useRef(null);
36
+ const paletteRefs = useMergedRefs(paletteRef, setDefaultTabIndex);
59
37
  // Color palette arrow key navigation
60
- var handleKeyDown = function (event) {
61
- var swatches = getFocusableElements(paletteRef.current);
38
+ const handleKeyDown = (event) => {
39
+ const swatches = getFocusableElements(paletteRef.current);
62
40
  if (!swatches.length) {
63
41
  return;
64
42
  }
65
- var currentIndex = swatches.findIndex(function (swatch) { var _a; return swatch === ((_a = paletteRef.current) === null || _a === void 0 ? void 0 : _a.ownerDocument.activeElement); });
43
+ const currentIndex = swatches.findIndex((swatch) => { var _a; return swatch === ((_a = paletteRef.current) === null || _a === void 0 ? void 0 : _a.ownerDocument.activeElement); });
66
44
  if (currentIndex < 0) {
67
45
  return;
68
46
  }
69
- var newIndex = -1;
47
+ let newIndex = -1;
70
48
  switch (event.key) {
71
49
  case 'ArrowDown': {
72
50
  // Look for next ColorSwatch with same offsetLeft value
73
- newIndex = swatches.findIndex(function (swatch, index) {
74
- return index > currentIndex &&
75
- swatch.offsetLeft === swatches[currentIndex].offsetLeft;
76
- });
51
+ newIndex = swatches.findIndex((swatch, index) => index > currentIndex &&
52
+ swatch.offsetLeft === swatches[currentIndex].offsetLeft);
77
53
  break;
78
54
  }
79
55
  case 'ArrowUp': {
80
56
  // Look backwards for next ColorSwatch with same offsetLeft value
81
- for (var i = currentIndex - 1; i >= 0; i--) {
57
+ for (let i = currentIndex - 1; i >= 0; i--) {
82
58
  if (swatches[i].offsetLeft === swatches[currentIndex].offsetLeft) {
83
59
  newIndex = i;
84
60
  break;
@@ -105,21 +81,21 @@ export var ColorPalette = React.forwardRef(function (props, ref) {
105
81
  }
106
82
  };
107
83
  // call focus() when focusedIndex changes
108
- React.useEffect(function () {
84
+ React.useEffect(() => {
109
85
  var _a;
110
86
  if (focusedIndex != null) {
111
- var swatches = getFocusableElements(paletteRef.current);
87
+ const swatches = getFocusableElements(paletteRef.current);
112
88
  (_a = swatches[focusedIndex]) === null || _a === void 0 ? void 0 : _a.focus();
113
89
  }
114
90
  }, [focusedIndex]);
115
- return (React.createElement("div", __assign({ className: cx('iui-color-palette-wrapper', className), ref: ref }, rest),
91
+ return (React.createElement("div", { className: cx('iui-color-palette-wrapper', className), ref: ref, ...rest },
116
92
  label && React.createElement("div", { className: 'iui-color-picker-section-label' }, label),
117
93
  React.createElement("div", { className: 'iui-color-palette', onKeyDown: handleKeyDown, ref: paletteRefs },
118
94
  children,
119
95
  colors &&
120
- colors.map(function (_color, index) {
121
- var color = getColorValue(_color);
122
- return (React.createElement(ColorSwatch, { key: index, color: color, onClick: function (event) {
96
+ colors.map((_color, index) => {
97
+ const color = getColorValue(_color);
98
+ return (React.createElement(ColorSwatch, { key: index, color: color, onClick: (event) => {
123
99
  event.preventDefault();
124
100
  onChangeComplete === null || onChangeComplete === void 0 ? void 0 : onChangeComplete(color);
125
101
  setActiveColor(color);
@@ -1,25 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
1
  /*---------------------------------------------------------------------------------------------
24
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -29,7 +7,7 @@ import '@itwin/itwinui-css/css/color-picker.css';
29
7
  import { useTheme, ColorValue, getTabbableElements, } from '../utils';
30
8
  import cx from 'classnames';
31
9
  import { ColorPickerContext } from './ColorPickerContext';
32
- export var getColorValue = function (color) {
10
+ export const getColorValue = (color) => {
33
11
  if (color instanceof ColorValue) {
34
12
  return color;
35
13
  }
@@ -48,41 +26,39 @@ export var getColorValue = function (color) {
48
26
  * <ColorPalette label='Saved colors' colors={['#FFFFFF', '#5A6973']} />
49
27
  * </ColorPicker>
50
28
  */
51
- export var ColorPicker = function (props) {
52
- var children = props.children, className = props.className, selectedColor = props.selectedColor, onChange = props.onChange, onChangeComplete = props.onChangeComplete, _a = props.setFocus, setFocus = _a === void 0 ? false : _a, _b = props.showAlpha, showAlpha = _b === void 0 ? false : _b, rest = __rest(props, ["children", "className", "selectedColor", "onChange", "onChangeComplete", "setFocus", "showAlpha"]);
29
+ export const ColorPicker = (props) => {
30
+ const { children, className, selectedColor, onChange, onChangeComplete, setFocus = false, showAlpha = false, ...rest } = props;
53
31
  useTheme();
54
- var ref = React.useRef(null);
32
+ const ref = React.useRef(null);
55
33
  // set focus on the first tabbable element
56
- React.useEffect(function () {
34
+ React.useEffect(() => {
57
35
  if (ref.current && setFocus) {
58
- var tabbableElements = getTabbableElements(ref.current);
36
+ const tabbableElements = getTabbableElements(ref.current);
59
37
  tabbableElements[0].focus();
60
38
  }
61
39
  }, [setFocus]);
62
- var inColor = React.useMemo(function () { return getColorValue(selectedColor); }, [
40
+ const inColor = React.useMemo(() => getColorValue(selectedColor), [
63
41
  selectedColor,
64
42
  ]);
65
- var activeColorTbgr = React.useRef(inColor.toTbgr());
66
- var _c = React.useState(inColor), activeColor = _c[0], setActiveColor = _c[1]; // Color of colorDot or active ColorSwatch
67
- React.useEffect(function () {
43
+ const activeColorTbgr = React.useRef(inColor.toTbgr());
44
+ const [activeColor, setActiveColor] = React.useState(inColor); // Color of colorDot or active ColorSwatch
45
+ React.useEffect(() => {
68
46
  setActiveColor(inColor);
69
47
  }, [inColor]);
70
- var _d = React.useState(function () {
71
- return activeColor.toHsvColor();
72
- }), hsvColor = _d[0], setHsvColor = _d[1];
48
+ const [hsvColor, setHsvColor] = React.useState(() => activeColor.toHsvColor());
73
49
  // The following code is used to preserve the Hue after initial mount. If the current HSV value produces the same rgb value
74
50
  // as the selectedColor prop then leave the HSV color unchanged. This prevents the jumping of HUE as the s/v values are changed
75
51
  // by user moving the pointer.
76
- React.useEffect(function () {
52
+ React.useEffect(() => {
77
53
  if (inColor.toTbgr() !== activeColorTbgr.current) {
78
54
  activeColorTbgr.current = inColor.toTbgr();
79
55
  setHsvColor(inColor.toHsvColor());
80
56
  }
81
57
  }, [inColor]);
82
- var applyHsvColorChange = React.useCallback(function (newColor, selectionChanged, newColorValue) {
58
+ const applyHsvColorChange = React.useCallback((newColor, selectionChanged, newColorValue) => {
83
59
  // save the HSV values
84
60
  setHsvColor(newColor);
85
- var newActiveColor = newColorValue !== null && newColorValue !== void 0 ? newColorValue : ColorValue.create(newColor);
61
+ const newActiveColor = newColorValue !== null && newColorValue !== void 0 ? newColorValue : ColorValue.create(newColor);
86
62
  // Only update selected color when dragging is done
87
63
  if (selectionChanged) {
88
64
  onChangeComplete === null || onChangeComplete === void 0 ? void 0 : onChangeComplete(newActiveColor);
@@ -94,14 +70,14 @@ export var ColorPicker = function (props) {
94
70
  // this converts it to store in tbgr
95
71
  setActiveColor(newActiveColor);
96
72
  }, [onChange, onChangeComplete]);
97
- return (React.createElement("div", __assign({ className: cx('iui-color-picker', className), ref: ref }, rest),
73
+ return (React.createElement("div", { className: cx('iui-color-picker', className), ref: ref, ...rest },
98
74
  React.createElement(ColorPickerContext.Provider, { value: {
99
- activeColor: activeColor,
100
- setActiveColor: setActiveColor,
101
- hsvColor: hsvColor,
102
- applyHsvColorChange: applyHsvColorChange,
103
- onChangeComplete: onChangeComplete,
104
- showAlpha: showAlpha,
75
+ activeColor,
76
+ setActiveColor,
77
+ hsvColor,
78
+ applyHsvColorChange,
79
+ onChangeComplete,
80
+ showAlpha,
105
81
  } }, children)));
106
82
  };
107
83
  export default ColorPicker;
@@ -3,9 +3,9 @@
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import React from 'react';
6
- export var ColorPickerContext = React.createContext(undefined);
7
- export var useColorPickerContext = function () {
8
- var context = React.useContext(ColorPickerContext);
6
+ export const ColorPickerContext = React.createContext(undefined);
7
+ export const useColorPickerContext = () => {
8
+ const context = React.useContext(ColorPickerContext);
9
9
  if (context == undefined) {
10
10
  throw new Error('useColorPickerContext must be used within a ColorPickerContext.Provider');
11
11
  }
@@ -1,25 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
1
  /*---------------------------------------------------------------------------------------------
24
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
25
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -35,14 +13,15 @@ import { getColorValue } from './ColorPicker';
35
13
  * <ColorSwatch color='#23450b' onClick={onClick}/>
36
14
  * <ColorSwatch color={{ r: 255, g: 255, b: 0 }} onClick={onClick}/>
37
15
  */
38
- export var ColorSwatch = React.forwardRef(function (props, ref) {
39
- var color = props.color, style = props.style, onClick = props.onClick, isActive = props.isActive, className = props.className, rest = __rest(props, ["color", "style", "onClick", "isActive", "className"]);
16
+ export const ColorSwatch = React.forwardRef((props, ref) => {
17
+ const { color, style, onClick, isActive, className, ...rest } = props;
40
18
  useTheme();
41
- var colorString = React.useMemo(function () {
42
- return typeof color === 'string'
43
- ? color
44
- : getColorValue(color).toHslString(true);
45
- }, [color]);
46
- return (React.createElement("div", __assign({ className: cx('iui-color-swatch', { 'iui-active': isActive }, className), style: __assign({ '--iui-color-swatch-background': colorString }, style), onClick: onClick, tabIndex: isActive ? 0 : -1, "aria-selected": isActive, ref: ref }, rest)));
19
+ const colorString = React.useMemo(() => typeof color === 'string'
20
+ ? color
21
+ : getColorValue(color).toHslString(true), [color]);
22
+ return (React.createElement("div", { className: cx('iui-color-swatch', { 'iui-active': isActive }, className), style: {
23
+ '--iui-color-swatch-background': colorString,
24
+ ...style,
25
+ }, onClick: onClick, tabIndex: isActive ? 0 : -1, "aria-selected": isActive, ref: ref, ...rest }));
47
26
  });
48
27
  export default ColorSwatch;