@itwin/itwinui-react 3.0.0-dev.0 → 3.0.0-dev.2

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 (602) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +28 -22
  3. package/cjs/core/Alert/Alert.d.ts +47 -29
  4. package/cjs/core/Alert/Alert.js +73 -22
  5. package/cjs/core/Avatar/Avatar.d.ts +0 -1
  6. package/cjs/core/Avatar/Avatar.js +1 -2
  7. package/cjs/core/AvatarGroup/AvatarGroup.d.ts +0 -1
  8. package/cjs/core/AvatarGroup/AvatarGroup.js +1 -2
  9. package/cjs/core/Backdrop/Backdrop.d.ts +0 -1
  10. package/cjs/core/Backdrop/Backdrop.js +0 -1
  11. package/cjs/core/Badge/Badge.d.ts +0 -1
  12. package/cjs/core/Badge/Badge.js +0 -1
  13. package/cjs/core/Breadcrumbs/Breadcrumbs.d.ts +0 -1
  14. package/cjs/core/Breadcrumbs/Breadcrumbs.js +2 -4
  15. package/cjs/core/ButtonGroup/ButtonGroup.d.ts +0 -1
  16. package/cjs/core/ButtonGroup/ButtonGroup.js +1 -5
  17. package/cjs/core/Buttons/Button/Button.d.ts +0 -1
  18. package/cjs/core/Buttons/Button/Button.js +0 -1
  19. package/cjs/core/Buttons/DropdownButton/DropdownButton.d.ts +0 -1
  20. package/cjs/core/Buttons/DropdownButton/DropdownButton.js +3 -6
  21. package/cjs/core/Buttons/IconButton/IconButton.d.ts +0 -2
  22. package/cjs/core/Buttons/IconButton/IconButton.js +0 -2
  23. package/cjs/core/Buttons/SplitButton/SplitButton.d.ts +0 -1
  24. package/cjs/core/Buttons/SplitButton/SplitButton.js +0 -1
  25. package/cjs/core/Carousel/Carousel.d.ts +2 -3
  26. package/cjs/core/Carousel/Carousel.js +3 -6
  27. package/cjs/core/Carousel/CarouselDotsList.d.ts +0 -1
  28. package/cjs/core/Carousel/CarouselDotsList.js +8 -11
  29. package/cjs/core/Carousel/CarouselNavigation.d.ts +2 -2
  30. package/cjs/core/Carousel/CarouselNavigation.js +3 -5
  31. package/cjs/core/Carousel/CarouselSlider.js +10 -15
  32. package/cjs/core/Checkbox/Checkbox.d.ts +0 -1
  33. package/cjs/core/Checkbox/Checkbox.js +0 -1
  34. package/cjs/core/ColorPicker/ColorBuilder.d.ts +0 -1
  35. package/cjs/core/ColorPicker/ColorBuilder.js +7 -11
  36. package/cjs/core/ColorPicker/ColorInputPanel.d.ts +0 -1
  37. package/cjs/core/ColorPicker/ColorInputPanel.js +12 -16
  38. package/cjs/core/ColorPicker/ColorPalette.d.ts +0 -1
  39. package/cjs/core/ColorPicker/ColorPalette.js +4 -7
  40. package/cjs/core/ColorPicker/ColorPicker.d.ts +0 -1
  41. package/cjs/core/ColorPicker/ColorPicker.js +3 -4
  42. package/cjs/core/ColorPicker/ColorSwatch.d.ts +0 -1
  43. package/cjs/core/ColorPicker/ColorSwatch.js +0 -1
  44. package/cjs/core/ComboBox/ComboBox.d.ts +0 -1
  45. package/cjs/core/ComboBox/ComboBox.js +25 -33
  46. package/cjs/core/ComboBox/ComboBoxDropdown.js +1 -2
  47. package/cjs/core/ComboBox/ComboBoxEndIcon.js +1 -1
  48. package/cjs/core/ComboBox/ComboBoxInput.js +21 -20
  49. package/cjs/core/ComboBox/ComboBoxMenu.js +3 -4
  50. package/cjs/core/ComboBox/ComboBoxMenuItem.js +2 -2
  51. package/cjs/core/ComboBox/helpers.js +4 -5
  52. package/cjs/core/DatePicker/DatePicker.d.ts +0 -1
  53. package/cjs/core/DatePicker/DatePicker.js +32 -33
  54. package/cjs/core/Dialog/Dialog.d.ts +0 -1
  55. package/cjs/core/Dialog/Dialog.js +12 -5
  56. package/cjs/core/Dialog/DialogBackdrop.js +1 -1
  57. package/cjs/core/Dialog/DialogButtonBar.d.ts +0 -1
  58. package/cjs/core/Dialog/DialogButtonBar.js +0 -1
  59. package/cjs/core/Dialog/DialogContent.d.ts +0 -1
  60. package/cjs/core/Dialog/DialogContent.js +0 -1
  61. package/cjs/core/Dialog/DialogContext.d.ts +15 -0
  62. package/cjs/core/Dialog/DialogMain.d.ts +0 -1
  63. package/cjs/core/Dialog/DialogMain.js +18 -25
  64. package/cjs/core/Dialog/DialogTitleBar.d.ts +0 -1
  65. package/cjs/core/Dialog/DialogTitleBar.js +0 -1
  66. package/cjs/core/Dialog/DialogTitleBarTitle.d.ts +0 -1
  67. package/cjs/core/Dialog/DialogTitleBarTitle.js +0 -1
  68. package/cjs/core/DropdownMenu/DropdownMenu.js +6 -8
  69. package/cjs/core/ExpandableBlock/ExpandableBlock.d.ts +5 -1
  70. package/cjs/core/ExpandableBlock/ExpandableBlock.js +8 -6
  71. package/cjs/core/Fieldset/Fieldset.d.ts +0 -1
  72. package/cjs/core/Fieldset/Fieldset.js +0 -1
  73. package/cjs/core/FileUpload/FileEmptyCard.js +1 -1
  74. package/cjs/core/FileUpload/FileUpload.d.ts +0 -1
  75. package/cjs/core/FileUpload/FileUpload.js +3 -7
  76. package/cjs/core/FileUpload/FileUploadCard.d.ts +0 -1
  77. package/cjs/core/FileUpload/FileUploadCard.js +10 -12
  78. package/cjs/core/FileUpload/FileUploadTemplate.d.ts +0 -1
  79. package/cjs/core/FileUpload/FileUploadTemplate.js +0 -1
  80. package/cjs/core/Footer/Footer.d.ts +0 -1
  81. package/cjs/core/Footer/Footer.js +0 -1
  82. package/cjs/core/Footer/FooterItem.d.ts +0 -1
  83. package/cjs/core/Footer/FooterItem.js +0 -1
  84. package/cjs/core/Footer/FooterList.d.ts +0 -1
  85. package/cjs/core/Footer/FooterList.js +0 -1
  86. package/cjs/core/Footer/FooterSeparator.d.ts +0 -1
  87. package/cjs/core/Footer/FooterSeparator.js +0 -1
  88. package/cjs/core/Header/Header.d.ts +0 -1
  89. package/cjs/core/Header/Header.js +0 -1
  90. package/cjs/core/Header/HeaderBreadcrumbs.d.ts +0 -1
  91. package/cjs/core/Header/HeaderBreadcrumbs.js +0 -1
  92. package/cjs/core/Header/HeaderButton.d.ts +0 -1
  93. package/cjs/core/Header/HeaderButton.js +0 -1
  94. package/cjs/core/Header/HeaderLogo.d.ts +0 -1
  95. package/cjs/core/Header/HeaderLogo.js +0 -1
  96. package/cjs/core/InformationPanel/InformationPanel.d.ts +0 -1
  97. package/cjs/core/InformationPanel/InformationPanel.js +1 -5
  98. package/cjs/core/InformationPanel/InformationPanelBody.d.ts +0 -1
  99. package/cjs/core/InformationPanel/InformationPanelBody.js +0 -1
  100. package/cjs/core/InformationPanel/InformationPanelContent.d.ts +0 -1
  101. package/cjs/core/InformationPanel/InformationPanelContent.js +0 -1
  102. package/cjs/core/InformationPanel/InformationPanelHeader.d.ts +0 -1
  103. package/cjs/core/InformationPanel/InformationPanelHeader.js +0 -1
  104. package/cjs/core/InformationPanel/InformationPanelWrapper.d.ts +0 -1
  105. package/cjs/core/InformationPanel/InformationPanelWrapper.js +0 -1
  106. package/cjs/core/Input/Input.d.ts +0 -1
  107. package/cjs/core/Input/Input.js +0 -1
  108. package/cjs/core/InputGroup/InputGroup.d.ts +0 -1
  109. package/cjs/core/InputGroup/InputGroup.js +0 -1
  110. package/cjs/core/Label/Label.d.ts +0 -1
  111. package/cjs/core/Label/Label.js +0 -1
  112. package/cjs/core/LabeledInput/LabeledInput.d.ts +0 -1
  113. package/cjs/core/LabeledInput/LabeledInput.js +1 -2
  114. package/cjs/core/LabeledSelect/LabeledSelect.d.ts +0 -1
  115. package/cjs/core/LabeledSelect/LabeledSelect.js +0 -1
  116. package/cjs/core/LabeledTextarea/LabeledTextarea.d.ts +0 -1
  117. package/cjs/core/LabeledTextarea/LabeledTextarea.js +1 -2
  118. package/cjs/core/List/List.d.ts +0 -1
  119. package/cjs/core/List/List.js +0 -1
  120. package/cjs/core/List/ListItem.d.ts +0 -1
  121. package/cjs/core/List/ListItem.js +0 -1
  122. package/cjs/core/Menu/Menu.d.ts +0 -1
  123. package/cjs/core/Menu/Menu.js +3 -5
  124. package/cjs/core/Menu/MenuDivider.d.ts +0 -1
  125. package/cjs/core/Menu/MenuDivider.js +0 -1
  126. package/cjs/core/Menu/MenuExtraContent.d.ts +0 -1
  127. package/cjs/core/Menu/MenuExtraContent.js +0 -1
  128. package/cjs/core/Menu/MenuItem.d.ts +0 -1
  129. package/cjs/core/Menu/MenuItem.js +8 -12
  130. package/cjs/core/Menu/MenuItemSkeleton.d.ts +0 -1
  131. package/cjs/core/Menu/MenuItemSkeleton.js +0 -1
  132. package/cjs/core/Modal/Modal.d.ts +8 -10
  133. package/cjs/core/Modal/Modal.js +7 -18
  134. package/cjs/core/NonIdealState/NonIdealState.d.ts +0 -1
  135. package/cjs/core/NonIdealState/NonIdealState.js +0 -1
  136. package/cjs/core/NotificationMarker/NotificationMarker.d.ts +0 -1
  137. package/cjs/core/NotificationMarker/NotificationMarker.js +0 -1
  138. package/cjs/core/ProgressIndicators/ProgressLinear/ProgressLinear.d.ts +0 -1
  139. package/cjs/core/ProgressIndicators/ProgressLinear/ProgressLinear.js +0 -1
  140. package/cjs/core/ProgressIndicators/ProgressRadial/ProgressRadial.d.ts +0 -1
  141. package/cjs/core/ProgressIndicators/ProgressRadial/ProgressRadial.js +0 -1
  142. package/cjs/core/Radio/Radio.d.ts +0 -1
  143. package/cjs/core/Radio/Radio.js +0 -1
  144. package/cjs/core/RadioTiles/RadioTile.d.ts +0 -1
  145. package/cjs/core/RadioTiles/RadioTile.js +0 -1
  146. package/cjs/core/RadioTiles/RadioTileGroup.d.ts +0 -1
  147. package/cjs/core/RadioTiles/RadioTileGroup.js +0 -1
  148. package/cjs/core/SearchBox/SearchBox.d.ts +0 -1
  149. package/cjs/core/SearchBox/SearchBox.js +12 -13
  150. package/cjs/core/Select/Select.d.ts +0 -1
  151. package/cjs/core/Select/Select.js +12 -18
  152. package/cjs/core/Select/SelectTag.d.ts +0 -1
  153. package/cjs/core/Select/SelectTag.js +0 -1
  154. package/cjs/core/SideNavigation/SideNavigation.d.ts +0 -1
  155. package/cjs/core/SideNavigation/SideNavigation.js +2 -3
  156. package/cjs/core/SideNavigation/SidenavButton.d.ts +0 -1
  157. package/cjs/core/SideNavigation/SidenavButton.js +0 -1
  158. package/cjs/core/SideNavigation/SidenavSubmenu.d.ts +0 -1
  159. package/cjs/core/SideNavigation/SidenavSubmenu.js +0 -1
  160. package/cjs/core/SideNavigation/SidenavSubmenuHeader.d.ts +0 -1
  161. package/cjs/core/SideNavigation/SidenavSubmenuHeader.js +0 -1
  162. package/cjs/core/SkipToContentLink/SkipToContentLink.d.ts +0 -1
  163. package/cjs/core/SkipToContentLink/SkipToContentLink.js +0 -1
  164. package/cjs/core/Slider/Slider.d.ts +0 -1
  165. package/cjs/core/Slider/Slider.js +16 -20
  166. package/cjs/core/Slider/Thumb.js +1 -1
  167. package/cjs/core/Slider/Track.js +2 -1
  168. package/cjs/core/StatusMessage/StatusMessage.js +1 -1
  169. package/cjs/core/Stepper/Stepper.d.ts +0 -1
  170. package/cjs/core/Stepper/Stepper.js +1 -2
  171. package/cjs/core/Stepper/StepperStep.js +1 -1
  172. package/cjs/core/Stepper/WorkflowDiagram.d.ts +0 -1
  173. package/cjs/core/Stepper/WorkflowDiagram.js +0 -1
  174. package/cjs/core/Surface/Surface.d.ts +0 -1
  175. package/cjs/core/Surface/Surface.js +0 -1
  176. package/cjs/core/Table/Table.d.ts +0 -1
  177. package/cjs/core/Table/Table.js +33 -34
  178. package/cjs/core/Table/TableCell.js +3 -2
  179. package/cjs/core/Table/TablePaginator.d.ts +0 -1
  180. package/cjs/core/Table/TablePaginator.js +10 -12
  181. package/cjs/core/Table/TableRowMemoized.js +40 -47
  182. package/cjs/core/Table/actionHandlers/expandHandler.js +3 -3
  183. package/cjs/core/Table/actionHandlers/filterHandler.js +4 -5
  184. package/cjs/core/Table/actionHandlers/selectHandler.js +6 -6
  185. package/cjs/core/Table/cells/DefaultCell.js +4 -3
  186. package/cjs/core/Table/cells/EditableCell.js +7 -13
  187. package/cjs/core/Table/columns/actionColumn.js +3 -6
  188. package/cjs/core/Table/columns/expanderColumn.js +3 -3
  189. package/cjs/core/Table/columns/selectionColumn.js +4 -4
  190. package/cjs/core/Table/filters/BaseFilter.d.ts +0 -1
  191. package/cjs/core/Table/filters/BaseFilter.js +1 -2
  192. package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +2 -4
  193. package/cjs/core/Table/filters/DateRangeFilter/DateRangeFilter.d.ts +0 -1
  194. package/cjs/core/Table/filters/DateRangeFilter/DateRangeFilter.js +2 -4
  195. package/cjs/core/Table/filters/FilterButtonBar.d.ts +0 -1
  196. package/cjs/core/Table/filters/FilterButtonBar.js +1 -2
  197. package/cjs/core/Table/filters/FilterToggle.d.ts +0 -1
  198. package/cjs/core/Table/filters/FilterToggle.js +0 -1
  199. package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.d.ts +0 -1
  200. package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +2 -4
  201. package/cjs/core/Table/filters/TextFilter/TextFilter.d.ts +0 -1
  202. package/cjs/core/Table/filters/TextFilter/TextFilter.js +1 -3
  203. package/cjs/core/Table/hooks/useColumnDragAndDrop.js +8 -4
  204. package/cjs/core/Table/hooks/useResizeColumns.js +16 -22
  205. package/cjs/core/Table/hooks/useScrollToRow.js +1 -2
  206. package/cjs/core/Table/hooks/useStickyColumns.js +3 -5
  207. package/cjs/core/Table/hooks/useSubRowFiltering.js +2 -4
  208. package/cjs/core/Tabs/Tab.d.ts +0 -1
  209. package/cjs/core/Tabs/Tab.js +0 -1
  210. package/cjs/core/Tabs/Tabs.d.ts +0 -1
  211. package/cjs/core/Tabs/Tabs.js +16 -19
  212. package/cjs/core/Tag/Tag.d.ts +0 -1
  213. package/cjs/core/Tag/Tag.js +0 -1
  214. package/cjs/core/Tag/TagContainer.d.ts +0 -1
  215. package/cjs/core/Tag/TagContainer.js +0 -1
  216. package/cjs/core/Textarea/Textarea.d.ts +0 -1
  217. package/cjs/core/Textarea/Textarea.js +0 -1
  218. package/cjs/core/ThemeProvider/ThemeContext.d.ts +1 -1
  219. package/cjs/core/ThemeProvider/ThemeProvider.d.ts +2 -5
  220. package/cjs/core/ThemeProvider/ThemeProvider.js +11 -15
  221. package/cjs/core/Tile/Tile.d.ts +0 -1
  222. package/cjs/core/Tile/Tile.js +3 -7
  223. package/cjs/core/TimePicker/TimePicker.d.ts +0 -1
  224. package/cjs/core/TimePicker/TimePicker.js +13 -14
  225. package/cjs/core/Toast/Toast.d.ts +0 -1
  226. package/cjs/core/Toast/Toast.js +2 -4
  227. package/cjs/core/Toast/ToastWrapper.d.ts +0 -1
  228. package/cjs/core/Toast/ToastWrapper.js +0 -1
  229. package/cjs/core/Toast/Toaster.js +6 -11
  230. package/cjs/core/ToggleSwitch/ToggleSwitch.d.ts +0 -1
  231. package/cjs/core/ToggleSwitch/ToggleSwitch.js +1 -3
  232. package/cjs/core/Tooltip/Tooltip.d.ts +0 -1
  233. package/cjs/core/Tooltip/Tooltip.js +0 -1
  234. package/cjs/core/TransferList/TransferList.d.ts +69 -0
  235. package/cjs/core/TransferList/TransferList.js +147 -0
  236. package/cjs/core/TransferList/index.d.ts +3 -0
  237. package/cjs/core/TransferList/index.js +10 -0
  238. package/cjs/core/Tree/Tree.d.ts +0 -1
  239. package/cjs/core/Tree/Tree.js +9 -14
  240. package/cjs/core/Tree/TreeNode.d.ts +0 -1
  241. package/cjs/core/Tree/TreeNode.js +9 -11
  242. package/cjs/core/Tree/TreeNodeExpander.d.ts +0 -1
  243. package/cjs/core/Tree/TreeNodeExpander.js +0 -1
  244. package/cjs/core/Typography/Anchor/Anchor.d.ts +0 -1
  245. package/cjs/core/Typography/Anchor/Anchor.js +0 -1
  246. package/cjs/core/Typography/Blockquote/Blockquote.d.ts +0 -1
  247. package/cjs/core/Typography/Blockquote/Blockquote.js +0 -1
  248. package/cjs/core/Typography/Code/Code.d.ts +0 -1
  249. package/cjs/core/Typography/Code/Code.js +0 -1
  250. package/cjs/core/Typography/Kbd/Kbd.d.ts +0 -1
  251. package/cjs/core/Typography/Kbd/Kbd.js +0 -1
  252. package/cjs/core/Typography/Text/Text.d.ts +0 -1
  253. package/cjs/core/Typography/Text/Text.js +0 -1
  254. package/cjs/core/index.d.ts +1 -0
  255. package/cjs/core/index.js +118 -116
  256. package/cjs/core/utils/color/ColorValue.js +9 -15
  257. package/cjs/core/utils/components/AutoclearingHiddenLiveRegion.js +2 -3
  258. package/cjs/core/utils/components/Divider.d.ts +0 -1
  259. package/cjs/core/utils/components/Divider.js +0 -1
  260. package/cjs/core/utils/components/Flex.d.ts +0 -1
  261. package/cjs/core/utils/components/Flex.js +0 -1
  262. package/cjs/core/utils/components/FocusTrap.js +4 -4
  263. package/cjs/core/utils/components/Icon.d.ts +0 -1
  264. package/cjs/core/utils/components/Icon.js +0 -1
  265. package/cjs/core/utils/components/InputContainer.d.ts +0 -1
  266. package/cjs/core/utils/components/InputContainer.js +0 -1
  267. package/cjs/core/utils/components/InputFlexContainer.d.ts +0 -1
  268. package/cjs/core/utils/components/InputFlexContainer.js +0 -1
  269. package/cjs/core/utils/components/LinkAction.d.ts +0 -1
  270. package/cjs/core/utils/components/LinkAction.js +0 -1
  271. package/cjs/core/utils/components/MiddleTextTruncation.js +1 -2
  272. package/cjs/core/utils/components/Popover.d.ts +0 -1
  273. package/cjs/core/utils/components/Popover.js +5 -9
  274. package/cjs/core/utils/components/Resizer.js +7 -6
  275. package/cjs/core/utils/components/VirtualScroll.js +14 -21
  276. package/cjs/core/utils/components/VisuallyHidden.d.ts +0 -1
  277. package/cjs/core/utils/components/VisuallyHidden.js +0 -1
  278. package/cjs/core/utils/functions/dom.d.ts +6 -0
  279. package/cjs/core/utils/functions/dom.js +24 -6
  280. package/cjs/core/utils/functions/index.d.ts +0 -1
  281. package/cjs/core/utils/functions/index.js +0 -1
  282. package/cjs/core/utils/functions/polymorphic.js +9 -1
  283. package/cjs/core/utils/functions/supports.js +1 -1
  284. package/cjs/core/utils/hooks/index.d.ts +0 -1
  285. package/cjs/core/utils/hooks/index.js +0 -1
  286. package/cjs/core/utils/hooks/useContainerWidth.js +1 -1
  287. package/cjs/core/utils/hooks/useDragAndDrop.js +8 -10
  288. package/cjs/core/utils/hooks/useEventListener.js +1 -1
  289. package/cjs/core/utils/hooks/useGlobals.d.ts +9 -4
  290. package/cjs/core/utils/hooks/useGlobals.js +6 -6
  291. package/cjs/core/utils/hooks/useId.js +1 -2
  292. package/cjs/core/utils/hooks/useIntersection.js +2 -3
  293. package/cjs/core/utils/hooks/useMediaQuery.js +6 -8
  294. package/cjs/core/utils/hooks/useOverflow.js +1 -2
  295. package/cjs/core/utils/hooks/useResizeObserver.js +3 -4
  296. package/cjs/styles.d.ts +5 -0
  297. package/cjs/styles.js +450 -0
  298. package/esm/core/Alert/Alert.d.ts +47 -29
  299. package/esm/core/Alert/Alert.js +74 -23
  300. package/esm/core/Avatar/Avatar.d.ts +0 -1
  301. package/esm/core/Avatar/Avatar.js +1 -2
  302. package/esm/core/AvatarGroup/AvatarGroup.d.ts +0 -1
  303. package/esm/core/AvatarGroup/AvatarGroup.js +1 -2
  304. package/esm/core/Backdrop/Backdrop.d.ts +0 -1
  305. package/esm/core/Backdrop/Backdrop.js +0 -1
  306. package/esm/core/Badge/Badge.d.ts +0 -1
  307. package/esm/core/Badge/Badge.js +0 -1
  308. package/esm/core/Breadcrumbs/Breadcrumbs.d.ts +0 -1
  309. package/esm/core/Breadcrumbs/Breadcrumbs.js +2 -4
  310. package/esm/core/ButtonGroup/ButtonGroup.d.ts +0 -1
  311. package/esm/core/ButtonGroup/ButtonGroup.js +1 -5
  312. package/esm/core/Buttons/Button/Button.d.ts +0 -1
  313. package/esm/core/Buttons/Button/Button.js +0 -1
  314. package/esm/core/Buttons/DropdownButton/DropdownButton.d.ts +0 -1
  315. package/esm/core/Buttons/DropdownButton/DropdownButton.js +3 -6
  316. package/esm/core/Buttons/IconButton/IconButton.d.ts +0 -2
  317. package/esm/core/Buttons/IconButton/IconButton.js +0 -2
  318. package/esm/core/Buttons/SplitButton/SplitButton.d.ts +0 -1
  319. package/esm/core/Buttons/SplitButton/SplitButton.js +0 -1
  320. package/esm/core/Carousel/Carousel.d.ts +2 -3
  321. package/esm/core/Carousel/Carousel.js +3 -6
  322. package/esm/core/Carousel/CarouselDotsList.d.ts +0 -1
  323. package/esm/core/Carousel/CarouselDotsList.js +8 -11
  324. package/esm/core/Carousel/CarouselNavigation.d.ts +2 -2
  325. package/esm/core/Carousel/CarouselNavigation.js +3 -5
  326. package/esm/core/Carousel/CarouselSlider.js +10 -15
  327. package/esm/core/Checkbox/Checkbox.d.ts +0 -1
  328. package/esm/core/Checkbox/Checkbox.js +0 -1
  329. package/esm/core/ColorPicker/ColorBuilder.d.ts +0 -1
  330. package/esm/core/ColorPicker/ColorBuilder.js +7 -11
  331. package/esm/core/ColorPicker/ColorInputPanel.d.ts +0 -1
  332. package/esm/core/ColorPicker/ColorInputPanel.js +12 -16
  333. package/esm/core/ColorPicker/ColorPalette.d.ts +0 -1
  334. package/esm/core/ColorPicker/ColorPalette.js +4 -7
  335. package/esm/core/ColorPicker/ColorPicker.d.ts +0 -1
  336. package/esm/core/ColorPicker/ColorPicker.js +3 -4
  337. package/esm/core/ColorPicker/ColorSwatch.d.ts +0 -1
  338. package/esm/core/ColorPicker/ColorSwatch.js +0 -1
  339. package/esm/core/ComboBox/ComboBox.d.ts +0 -1
  340. package/esm/core/ComboBox/ComboBox.js +25 -33
  341. package/esm/core/ComboBox/ComboBoxDropdown.js +1 -2
  342. package/esm/core/ComboBox/ComboBoxEndIcon.js +1 -1
  343. package/esm/core/ComboBox/ComboBoxInput.js +21 -20
  344. package/esm/core/ComboBox/ComboBoxMenu.js +3 -4
  345. package/esm/core/ComboBox/ComboBoxMenuItem.js +2 -2
  346. package/esm/core/ComboBox/helpers.js +4 -5
  347. package/esm/core/DatePicker/DatePicker.d.ts +0 -1
  348. package/esm/core/DatePicker/DatePicker.js +32 -33
  349. package/esm/core/Dialog/Dialog.d.ts +0 -1
  350. package/esm/core/Dialog/Dialog.js +13 -6
  351. package/esm/core/Dialog/DialogBackdrop.js +1 -1
  352. package/esm/core/Dialog/DialogButtonBar.d.ts +0 -1
  353. package/esm/core/Dialog/DialogButtonBar.js +0 -1
  354. package/esm/core/Dialog/DialogContent.d.ts +0 -1
  355. package/esm/core/Dialog/DialogContent.js +0 -1
  356. package/esm/core/Dialog/DialogContext.d.ts +15 -0
  357. package/esm/core/Dialog/DialogMain.d.ts +0 -1
  358. package/esm/core/Dialog/DialogMain.js +18 -25
  359. package/esm/core/Dialog/DialogTitleBar.d.ts +0 -1
  360. package/esm/core/Dialog/DialogTitleBar.js +0 -1
  361. package/esm/core/Dialog/DialogTitleBarTitle.d.ts +0 -1
  362. package/esm/core/Dialog/DialogTitleBarTitle.js +0 -1
  363. package/esm/core/DropdownMenu/DropdownMenu.js +6 -8
  364. package/esm/core/ExpandableBlock/ExpandableBlock.d.ts +5 -1
  365. package/esm/core/ExpandableBlock/ExpandableBlock.js +8 -6
  366. package/esm/core/Fieldset/Fieldset.d.ts +0 -1
  367. package/esm/core/Fieldset/Fieldset.js +0 -1
  368. package/esm/core/FileUpload/FileEmptyCard.js +1 -1
  369. package/esm/core/FileUpload/FileUpload.d.ts +0 -1
  370. package/esm/core/FileUpload/FileUpload.js +3 -7
  371. package/esm/core/FileUpload/FileUploadCard.d.ts +0 -1
  372. package/esm/core/FileUpload/FileUploadCard.js +10 -12
  373. package/esm/core/FileUpload/FileUploadTemplate.d.ts +0 -1
  374. package/esm/core/FileUpload/FileUploadTemplate.js +0 -1
  375. package/esm/core/Footer/Footer.d.ts +0 -1
  376. package/esm/core/Footer/Footer.js +0 -1
  377. package/esm/core/Footer/FooterItem.d.ts +0 -1
  378. package/esm/core/Footer/FooterItem.js +0 -1
  379. package/esm/core/Footer/FooterList.d.ts +0 -1
  380. package/esm/core/Footer/FooterList.js +0 -1
  381. package/esm/core/Footer/FooterSeparator.d.ts +0 -1
  382. package/esm/core/Footer/FooterSeparator.js +0 -1
  383. package/esm/core/Header/Header.d.ts +0 -1
  384. package/esm/core/Header/Header.js +0 -1
  385. package/esm/core/Header/HeaderBreadcrumbs.d.ts +0 -1
  386. package/esm/core/Header/HeaderBreadcrumbs.js +0 -1
  387. package/esm/core/Header/HeaderButton.d.ts +0 -1
  388. package/esm/core/Header/HeaderButton.js +0 -1
  389. package/esm/core/Header/HeaderLogo.d.ts +0 -1
  390. package/esm/core/Header/HeaderLogo.js +0 -1
  391. package/esm/core/InformationPanel/InformationPanel.d.ts +0 -1
  392. package/esm/core/InformationPanel/InformationPanel.js +1 -5
  393. package/esm/core/InformationPanel/InformationPanelBody.d.ts +0 -1
  394. package/esm/core/InformationPanel/InformationPanelBody.js +0 -1
  395. package/esm/core/InformationPanel/InformationPanelContent.d.ts +0 -1
  396. package/esm/core/InformationPanel/InformationPanelContent.js +0 -1
  397. package/esm/core/InformationPanel/InformationPanelHeader.d.ts +0 -1
  398. package/esm/core/InformationPanel/InformationPanelHeader.js +0 -1
  399. package/esm/core/InformationPanel/InformationPanelWrapper.d.ts +0 -1
  400. package/esm/core/InformationPanel/InformationPanelWrapper.js +0 -1
  401. package/esm/core/Input/Input.d.ts +0 -1
  402. package/esm/core/Input/Input.js +0 -1
  403. package/esm/core/InputGroup/InputGroup.d.ts +0 -1
  404. package/esm/core/InputGroup/InputGroup.js +0 -1
  405. package/esm/core/Label/Label.d.ts +0 -1
  406. package/esm/core/Label/Label.js +0 -1
  407. package/esm/core/LabeledInput/LabeledInput.d.ts +0 -1
  408. package/esm/core/LabeledInput/LabeledInput.js +1 -2
  409. package/esm/core/LabeledSelect/LabeledSelect.d.ts +0 -1
  410. package/esm/core/LabeledSelect/LabeledSelect.js +0 -1
  411. package/esm/core/LabeledTextarea/LabeledTextarea.d.ts +0 -1
  412. package/esm/core/LabeledTextarea/LabeledTextarea.js +1 -2
  413. package/esm/core/List/List.d.ts +0 -1
  414. package/esm/core/List/List.js +0 -1
  415. package/esm/core/List/ListItem.d.ts +0 -1
  416. package/esm/core/List/ListItem.js +0 -1
  417. package/esm/core/Menu/Menu.d.ts +0 -1
  418. package/esm/core/Menu/Menu.js +3 -5
  419. package/esm/core/Menu/MenuDivider.d.ts +0 -1
  420. package/esm/core/Menu/MenuDivider.js +0 -1
  421. package/esm/core/Menu/MenuExtraContent.d.ts +0 -1
  422. package/esm/core/Menu/MenuExtraContent.js +0 -1
  423. package/esm/core/Menu/MenuItem.d.ts +0 -1
  424. package/esm/core/Menu/MenuItem.js +8 -12
  425. package/esm/core/Menu/MenuItemSkeleton.d.ts +0 -1
  426. package/esm/core/Menu/MenuItemSkeleton.js +0 -1
  427. package/esm/core/Modal/Modal.d.ts +8 -10
  428. package/esm/core/Modal/Modal.js +3 -11
  429. package/esm/core/NonIdealState/NonIdealState.d.ts +0 -1
  430. package/esm/core/NonIdealState/NonIdealState.js +0 -1
  431. package/esm/core/NotificationMarker/NotificationMarker.d.ts +0 -1
  432. package/esm/core/NotificationMarker/NotificationMarker.js +0 -1
  433. package/esm/core/ProgressIndicators/ProgressLinear/ProgressLinear.d.ts +0 -1
  434. package/esm/core/ProgressIndicators/ProgressLinear/ProgressLinear.js +0 -1
  435. package/esm/core/ProgressIndicators/ProgressRadial/ProgressRadial.d.ts +0 -1
  436. package/esm/core/ProgressIndicators/ProgressRadial/ProgressRadial.js +0 -1
  437. package/esm/core/Radio/Radio.d.ts +0 -1
  438. package/esm/core/Radio/Radio.js +0 -1
  439. package/esm/core/RadioTiles/RadioTile.d.ts +0 -1
  440. package/esm/core/RadioTiles/RadioTile.js +0 -1
  441. package/esm/core/RadioTiles/RadioTileGroup.d.ts +0 -1
  442. package/esm/core/RadioTiles/RadioTileGroup.js +0 -1
  443. package/esm/core/SearchBox/SearchBox.d.ts +0 -1
  444. package/esm/core/SearchBox/SearchBox.js +12 -13
  445. package/esm/core/Select/Select.d.ts +0 -1
  446. package/esm/core/Select/Select.js +12 -18
  447. package/esm/core/Select/SelectTag.d.ts +0 -1
  448. package/esm/core/Select/SelectTag.js +0 -1
  449. package/esm/core/SideNavigation/SideNavigation.d.ts +0 -1
  450. package/esm/core/SideNavigation/SideNavigation.js +2 -3
  451. package/esm/core/SideNavigation/SidenavButton.d.ts +0 -1
  452. package/esm/core/SideNavigation/SidenavButton.js +0 -1
  453. package/esm/core/SideNavigation/SidenavSubmenu.d.ts +0 -1
  454. package/esm/core/SideNavigation/SidenavSubmenu.js +0 -1
  455. package/esm/core/SideNavigation/SidenavSubmenuHeader.d.ts +0 -1
  456. package/esm/core/SideNavigation/SidenavSubmenuHeader.js +0 -1
  457. package/esm/core/SkipToContentLink/SkipToContentLink.d.ts +0 -1
  458. package/esm/core/SkipToContentLink/SkipToContentLink.js +0 -1
  459. package/esm/core/Slider/Slider.d.ts +0 -1
  460. package/esm/core/Slider/Slider.js +16 -20
  461. package/esm/core/Slider/Thumb.js +1 -1
  462. package/esm/core/Slider/Track.js +2 -1
  463. package/esm/core/StatusMessage/StatusMessage.js +1 -1
  464. package/esm/core/Stepper/Stepper.d.ts +0 -1
  465. package/esm/core/Stepper/Stepper.js +1 -2
  466. package/esm/core/Stepper/StepperStep.js +1 -1
  467. package/esm/core/Stepper/WorkflowDiagram.d.ts +0 -1
  468. package/esm/core/Stepper/WorkflowDiagram.js +0 -1
  469. package/esm/core/Surface/Surface.d.ts +0 -1
  470. package/esm/core/Surface/Surface.js +0 -1
  471. package/esm/core/Table/Table.d.ts +0 -1
  472. package/esm/core/Table/Table.js +34 -35
  473. package/esm/core/Table/TableCell.js +3 -2
  474. package/esm/core/Table/TablePaginator.d.ts +0 -1
  475. package/esm/core/Table/TablePaginator.js +11 -13
  476. package/esm/core/Table/TableRowMemoized.js +41 -48
  477. package/esm/core/Table/actionHandlers/expandHandler.js +3 -3
  478. package/esm/core/Table/actionHandlers/filterHandler.js +4 -5
  479. package/esm/core/Table/actionHandlers/selectHandler.js +6 -6
  480. package/esm/core/Table/cells/DefaultCell.js +4 -3
  481. package/esm/core/Table/cells/EditableCell.js +8 -14
  482. package/esm/core/Table/columns/actionColumn.js +3 -6
  483. package/esm/core/Table/columns/expanderColumn.js +3 -3
  484. package/esm/core/Table/columns/selectionColumn.js +4 -4
  485. package/esm/core/Table/filters/BaseFilter.d.ts +0 -1
  486. package/esm/core/Table/filters/BaseFilter.js +2 -3
  487. package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +2 -4
  488. package/esm/core/Table/filters/DateRangeFilter/DateRangeFilter.d.ts +0 -1
  489. package/esm/core/Table/filters/DateRangeFilter/DateRangeFilter.js +2 -4
  490. package/esm/core/Table/filters/FilterButtonBar.d.ts +0 -1
  491. package/esm/core/Table/filters/FilterButtonBar.js +2 -3
  492. package/esm/core/Table/filters/FilterToggle.d.ts +0 -1
  493. package/esm/core/Table/filters/FilterToggle.js +0 -1
  494. package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.d.ts +0 -1
  495. package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +2 -4
  496. package/esm/core/Table/filters/TextFilter/TextFilter.d.ts +0 -1
  497. package/esm/core/Table/filters/TextFilter/TextFilter.js +1 -3
  498. package/esm/core/Table/hooks/useColumnDragAndDrop.js +5 -4
  499. package/esm/core/Table/hooks/useResizeColumns.js +16 -22
  500. package/esm/core/Table/hooks/useScrollToRow.js +1 -2
  501. package/esm/core/Table/hooks/useStickyColumns.js +3 -5
  502. package/esm/core/Table/hooks/useSubRowFiltering.js +2 -4
  503. package/esm/core/Tabs/Tab.d.ts +0 -1
  504. package/esm/core/Tabs/Tab.js +0 -1
  505. package/esm/core/Tabs/Tabs.d.ts +0 -1
  506. package/esm/core/Tabs/Tabs.js +16 -19
  507. package/esm/core/Tag/Tag.d.ts +0 -1
  508. package/esm/core/Tag/Tag.js +0 -1
  509. package/esm/core/Tag/TagContainer.d.ts +0 -1
  510. package/esm/core/Tag/TagContainer.js +0 -1
  511. package/esm/core/Textarea/Textarea.d.ts +0 -1
  512. package/esm/core/Textarea/Textarea.js +0 -1
  513. package/esm/core/ThemeProvider/ThemeContext.d.ts +1 -1
  514. package/esm/core/ThemeProvider/ThemeProvider.d.ts +2 -5
  515. package/esm/core/ThemeProvider/ThemeProvider.js +12 -16
  516. package/esm/core/Tile/Tile.d.ts +0 -1
  517. package/esm/core/Tile/Tile.js +3 -7
  518. package/esm/core/TimePicker/TimePicker.d.ts +0 -1
  519. package/esm/core/TimePicker/TimePicker.js +13 -14
  520. package/esm/core/Toast/Toast.d.ts +0 -1
  521. package/esm/core/Toast/Toast.js +2 -4
  522. package/esm/core/Toast/ToastWrapper.d.ts +0 -1
  523. package/esm/core/Toast/ToastWrapper.js +0 -1
  524. package/esm/core/Toast/Toaster.js +6 -11
  525. package/esm/core/ToggleSwitch/ToggleSwitch.d.ts +0 -1
  526. package/esm/core/ToggleSwitch/ToggleSwitch.js +1 -3
  527. package/esm/core/Tooltip/Tooltip.d.ts +0 -1
  528. package/esm/core/Tooltip/Tooltip.js +0 -1
  529. package/esm/core/TransferList/TransferList.d.ts +69 -0
  530. package/esm/core/TransferList/TransferList.js +141 -0
  531. package/esm/core/TransferList/index.d.ts +3 -0
  532. package/esm/core/TransferList/index.js +6 -0
  533. package/esm/core/Tree/Tree.d.ts +0 -1
  534. package/esm/core/Tree/Tree.js +9 -14
  535. package/esm/core/Tree/TreeNode.d.ts +0 -1
  536. package/esm/core/Tree/TreeNode.js +9 -11
  537. package/esm/core/Tree/TreeNodeExpander.d.ts +0 -1
  538. package/esm/core/Tree/TreeNodeExpander.js +0 -1
  539. package/esm/core/Typography/Anchor/Anchor.d.ts +0 -1
  540. package/esm/core/Typography/Anchor/Anchor.js +0 -1
  541. package/esm/core/Typography/Blockquote/Blockquote.d.ts +0 -1
  542. package/esm/core/Typography/Blockquote/Blockquote.js +0 -1
  543. package/esm/core/Typography/Code/Code.d.ts +0 -1
  544. package/esm/core/Typography/Code/Code.js +0 -1
  545. package/esm/core/Typography/Kbd/Kbd.d.ts +0 -1
  546. package/esm/core/Typography/Kbd/Kbd.js +0 -1
  547. package/esm/core/Typography/Text/Text.d.ts +0 -1
  548. package/esm/core/Typography/Text/Text.js +0 -1
  549. package/esm/core/index.d.ts +1 -0
  550. package/esm/core/index.js +1 -0
  551. package/esm/core/utils/color/ColorValue.js +9 -15
  552. package/esm/core/utils/components/AutoclearingHiddenLiveRegion.js +2 -3
  553. package/esm/core/utils/components/Divider.d.ts +0 -1
  554. package/esm/core/utils/components/Divider.js +0 -1
  555. package/esm/core/utils/components/Flex.d.ts +0 -1
  556. package/esm/core/utils/components/Flex.js +0 -1
  557. package/esm/core/utils/components/FocusTrap.js +4 -4
  558. package/esm/core/utils/components/Icon.d.ts +0 -1
  559. package/esm/core/utils/components/Icon.js +0 -1
  560. package/esm/core/utils/components/InputContainer.d.ts +0 -1
  561. package/esm/core/utils/components/InputContainer.js +0 -1
  562. package/esm/core/utils/components/InputFlexContainer.d.ts +0 -1
  563. package/esm/core/utils/components/InputFlexContainer.js +0 -1
  564. package/esm/core/utils/components/LinkAction.d.ts +0 -1
  565. package/esm/core/utils/components/LinkAction.js +0 -1
  566. package/esm/core/utils/components/MiddleTextTruncation.js +1 -2
  567. package/esm/core/utils/components/Popover.d.ts +0 -1
  568. package/esm/core/utils/components/Popover.js +5 -9
  569. package/esm/core/utils/components/Resizer.js +7 -6
  570. package/esm/core/utils/components/VirtualScroll.js +14 -21
  571. package/esm/core/utils/components/VisuallyHidden.d.ts +0 -1
  572. package/esm/core/utils/components/VisuallyHidden.js +0 -1
  573. package/esm/core/utils/functions/dom.d.ts +6 -0
  574. package/esm/core/utils/functions/dom.js +19 -5
  575. package/esm/core/utils/functions/index.d.ts +0 -1
  576. package/esm/core/utils/functions/index.js +0 -1
  577. package/esm/core/utils/functions/polymorphic.js +9 -1
  578. package/esm/core/utils/functions/supports.js +1 -1
  579. package/esm/core/utils/hooks/index.d.ts +0 -1
  580. package/esm/core/utils/hooks/index.js +0 -1
  581. package/esm/core/utils/hooks/useContainerWidth.js +1 -1
  582. package/esm/core/utils/hooks/useDragAndDrop.js +8 -10
  583. package/esm/core/utils/hooks/useEventListener.js +1 -1
  584. package/esm/core/utils/hooks/useGlobals.d.ts +9 -4
  585. package/esm/core/utils/hooks/useGlobals.js +6 -6
  586. package/esm/core/utils/hooks/useId.js +1 -2
  587. package/esm/core/utils/hooks/useIntersection.js +2 -3
  588. package/esm/core/utils/hooks/useMediaQuery.js +6 -8
  589. package/esm/core/utils/hooks/useOverflow.js +1 -2
  590. package/esm/core/utils/hooks/useResizeObserver.js +3 -4
  591. package/esm/styles.d.ts +5 -0
  592. package/esm/styles.js +451 -0
  593. package/package.json +14 -11
  594. package/styles.css +1940 -0
  595. package/cjs/core/utils/functions/styles.d.ts +0 -6
  596. package/cjs/core/utils/functions/styles.js +0 -21
  597. package/cjs/core/utils/hooks/useIsThemeAlreadySet.d.ts +0 -7
  598. package/cjs/core/utils/hooks/useIsThemeAlreadySet.js +0 -54
  599. package/esm/core/utils/functions/styles.d.ts +0 -6
  600. package/esm/core/utils/functions/styles.js +0 -17
  601. package/esm/core/utils/hooks/useIsThemeAlreadySet.d.ts +0 -7
  602. package/esm/core/utils/hooks/useIsThemeAlreadySet.js +0 -27
@@ -7,6 +7,5 @@ export * from './dom.js';
7
7
  export * from './colors.js';
8
8
  export * from './numbers.js';
9
9
  export * from './focusable.js';
10
- export * from './styles.js';
11
10
  export * from './supports.js';
12
11
  export * from './polymorphic.js';
@@ -5,12 +5,13 @@
5
5
  import * as React from 'react';
6
6
  import cx from 'classnames';
7
7
  import { useGlobals } from '../hooks/useGlobals.js';
8
+ import styles from '../../../styles.js';
8
9
  const _base = (defaultElement) => {
9
10
  return (className, attrs) => {
10
11
  const Comp = React.forwardRef(({ as = defaultElement, ...props }, ref) => {
11
12
  const Element = as || 'div'; // eslint-disable-line
12
13
  useGlobals();
13
- return (React.createElement(Element, { ref: ref, ...attrs, ...props, className: cx(className, attrs === null || attrs === void 0 ? void 0 : attrs.className, props.className) }));
14
+ return (React.createElement(Element, { ref: ref, ...attrs, ...props, className: getScopedClassName(cx(className, attrs?.className, props.className)) }));
14
15
  });
15
16
  Comp.displayName = getDisplayNameFromClass(className);
16
17
  return Comp;
@@ -50,3 +51,10 @@ const getDisplayNameFromClass = (str) => {
50
51
  const camel = str.replace(/-([a-z])/g, (g) => g[1].toUpperCase());
51
52
  return camel.substring(3);
52
53
  };
54
+ // e.g. iui-button -> _iui3-button
55
+ const getScopedClassName = (className = '') => {
56
+ return (className
57
+ .split(' ')
58
+ .map((c) => (c in styles ? styles[c] : c))
59
+ .join(' ') || null);
60
+ };
@@ -6,4 +6,4 @@ import { getWindow } from './dom.js';
6
6
  /**
7
7
  * Returns true if the :has selector is supported in the browser
8
8
  */
9
- export const supportsHas = () => { var _a, _b, _c; return (_c = (_b = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.CSS) === null || _b === void 0 ? void 0 : _b.supports) === null || _c === void 0 ? void 0 : _c.call(_b, 'selector(:has(+ *))'); };
9
+ export const supportsHas = () => getWindow()?.CSS?.supports?.('selector(:has(+ *))');
@@ -9,6 +9,5 @@ export * from './useMediaQuery.js';
9
9
  export * from './useSafeContext.js';
10
10
  export * from './useLatestRef.js';
11
11
  export * from './useIsomorphicLayoutEffect.js';
12
- export * from './useIsThemeAlreadySet.js';
13
12
  export * from './useIsClient.js';
14
13
  export * from './useId.js';
@@ -13,6 +13,5 @@ export * from './useMediaQuery.js';
13
13
  export * from './useSafeContext.js';
14
14
  export * from './useLatestRef.js';
15
15
  export * from './useIsomorphicLayoutEffect.js';
16
- export * from './useIsThemeAlreadySet.js';
17
16
  export * from './useIsClient.js';
18
17
  export * from './useId.js';
@@ -31,7 +31,7 @@ export const useContainerWidth = (watchResizes = true) => {
31
31
  const updateWidth = React.useCallback(({ width }) => setContentWidth(width), []);
32
32
  const [resizeRef, resizeObserver] = useResizeObserver(updateWidth);
33
33
  if (!watchResizes) {
34
- resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
34
+ resizeObserver?.disconnect();
35
35
  }
36
36
  const refs = useMergedRefs(ref, watchResizes ? resizeRef : undefined);
37
37
  return [refs, contentWidth];
@@ -7,13 +7,12 @@ import { getTranslateValues, getWindow } from '../functions/index.js';
7
7
  import { useEventListener } from './useEventListener.js';
8
8
  import { useResizeObserver } from './useResizeObserver.js';
9
9
  const getContainerRect = (containerRef) => {
10
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
11
- const containerRect = (_a = containerRef === null || containerRef === void 0 ? void 0 : containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
10
+ const containerRect = containerRef?.current?.getBoundingClientRect();
12
11
  return {
13
- top: (_b = containerRect === null || containerRect === void 0 ? void 0 : containerRect.top) !== null && _b !== void 0 ? _b : 0,
14
- right: (_e = (_c = containerRect === null || containerRect === void 0 ? void 0 : containerRect.right) !== null && _c !== void 0 ? _c : (_d = getWindow()) === null || _d === void 0 ? void 0 : _d.innerWidth) !== null && _e !== void 0 ? _e : 0,
15
- bottom: (_h = (_f = containerRect === null || containerRect === void 0 ? void 0 : containerRect.bottom) !== null && _f !== void 0 ? _f : (_g = getWindow()) === null || _g === void 0 ? void 0 : _g.innerHeight) !== null && _h !== void 0 ? _h : 0,
16
- left: (_j = containerRect === null || containerRect === void 0 ? void 0 : containerRect.left) !== null && _j !== void 0 ? _j : 0,
12
+ top: containerRect?.top ?? 0,
13
+ right: containerRect?.right ?? getWindow()?.innerWidth ?? 0,
14
+ bottom: containerRect?.bottom ?? getWindow()?.innerHeight ?? 0,
15
+ left: containerRect?.left ?? 0,
17
16
  };
18
17
  };
19
18
  /**
@@ -31,11 +30,10 @@ export const useDragAndDrop = (elementRef, containerRef, enabled = true) => {
31
30
  const translateY = React.useRef();
32
31
  const containerRectRef = React.useRef(getContainerRect(containerRef));
33
32
  const adjustTransform = React.useCallback(() => {
34
- var _a;
35
33
  if (!elementRef.current || !enabled) {
36
34
  return;
37
35
  }
38
- const { top, right, bottom, left } = (_a = elementRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
36
+ const { top, right, bottom, left } = elementRef.current?.getBoundingClientRect();
39
37
  let [newTranslateX, newTranslateY] = getTranslateValues(elementRef.current);
40
38
  containerRectRef.current = getContainerRect(containerRef);
41
39
  if (bottom > containerRectRef.current.bottom) {
@@ -55,10 +53,10 @@ export const useDragAndDrop = (elementRef, containerRef, enabled = true) => {
55
53
  elementRef.current.style.transform = `translate(${newTranslateX}px, ${newTranslateY}px)`;
56
54
  }, [containerRef, elementRef, enabled]);
57
55
  const [resizeRef, resizeObserver] = useResizeObserver(adjustTransform);
58
- resizeRef(containerRef === null || containerRef === void 0 ? void 0 : containerRef.current);
56
+ resizeRef(containerRef?.current);
59
57
  React.useEffect(() => {
60
58
  return () => {
61
- resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
59
+ resizeObserver?.disconnect();
62
60
  };
63
61
  }, [resizeObserver]);
64
62
  useEventListener('resize', () => {
@@ -25,7 +25,7 @@ export const useEventListener = (eventName, handler, element) => {
25
25
  if (!element) {
26
26
  return;
27
27
  }
28
- const eventListener = (event) => { var _a; return (_a = savedHandler.current) === null || _a === void 0 ? void 0 : _a.call(savedHandler, event); };
28
+ const eventListener = (event) => savedHandler.current?.(event);
29
29
  element.addEventListener(eventName, eventListener);
30
30
  return () => {
31
31
  element.removeEventListener(eventName, eventListener);
@@ -1,10 +1,15 @@
1
- import '@itwin/itwinui-css/css/global.css';
2
- import '@itwin/itwinui-variables/index.css';
1
+ import * as React from 'react';
2
+ import { ThemeContext } from '../../ThemeProvider/ThemeContext.js';
3
3
  /**
4
4
  * Hook used in every component for any shared setup and side effects.
5
+ * Returns the nearest ThemeContext.
5
6
  *
6
7
  * @private
7
8
  */
8
- export declare const useGlobals: () => void;
9
+ export declare const useGlobals: () => {
10
+ theme?: import("../../index.js").ThemeType | undefined;
11
+ themeOptions?: import("../../ThemeProvider/ThemeProvider.js").ThemeOptions | undefined;
12
+ portalContainerRef?: React.RefObject<HTMLElement> | undefined;
13
+ } | undefined;
9
14
  /** Shows console error if ThemeProvider is not used */
10
- export declare const useThemeProviderWarning: () => void;
15
+ export declare const useThemeProviderWarning: (themeContext: React.ContextType<typeof ThemeContext>) => void;
@@ -3,32 +3,32 @@
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
6
- import '@itwin/itwinui-css/css/global.css';
7
- import '@itwin/itwinui-variables/index.css';
8
6
  import { ThemeContext } from '../../ThemeProvider/ThemeContext.js';
9
7
  let isDev = false;
10
8
  // wrapping in try-catch because process might be undefined
11
9
  try {
12
10
  isDev = process.env.NODE_ENV !== 'production';
13
11
  }
14
- catch (_a) { }
12
+ catch { }
15
13
  const didLogWarning = {
16
14
  fontSize: false,
17
15
  themeProvider: false,
18
16
  };
19
17
  /**
20
18
  * Hook used in every component for any shared setup and side effects.
19
+ * Returns the nearest ThemeContext.
21
20
  *
22
21
  * @private
23
22
  */
24
23
  export const useGlobals = () => {
25
- useThemeProviderWarning();
24
+ const themeContext = React.useContext(ThemeContext);
25
+ useThemeProviderWarning(themeContext);
26
26
  useRootFontSizeWarning();
27
+ return themeContext;
27
28
  };
28
29
  // ----------------------------------------------------------------------------
29
30
  /** Shows console error if ThemeProvider is not used */
30
- export const useThemeProviderWarning = () => {
31
- const themeContext = React.useContext(ThemeContext);
31
+ export const useThemeProviderWarning = (themeContext) => {
32
32
  React.useEffect(() => {
33
33
  if (isDev && !didLogWarning.themeProvider && !themeContext) {
34
34
  console.error('iTwinUI components must be used within a tree wrapped in a ThemeProvider.');
@@ -2,7 +2,6 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- var _a;
6
5
  import * as React from 'react';
7
6
  import { getRandomValue } from '../functions/numbers.js';
8
7
  /**
@@ -16,4 +15,4 @@ export const useId = () => {
16
15
  // This is needed to avoid bundlers trying to import non-existing export.
17
16
  // Read more: https://github.com/webpack/webpack/issues/14814
18
17
  const _React = React;
19
- const useUniqueValue = (_a = _React.useId) !== null && _a !== void 0 ? _a : (() => getRandomValue(10));
18
+ const useUniqueValue = _React.useId ?? (() => getRandomValue(10));
@@ -20,10 +20,9 @@ export const useIntersection = (onIntersect, options = {}, once = true) => {
20
20
  const { root, rootMargin, threshold } = options;
21
21
  const cleanupRef = React.useRef(() => { });
22
22
  const setRef = React.useCallback((node) => {
23
- var _a, _b;
24
- (_a = cleanupRef.current) === null || _a === void 0 ? void 0 : _a.call(cleanupRef);
23
+ cleanupRef.current?.();
25
24
  cleanupRef.current = () => { }; // ensure it doesn't try to clean up again
26
- if (!node || !((_b = getWindow()) === null || _b === void 0 ? void 0 : _b.IntersectionObserver)) {
25
+ if (!node || !getWindow()?.IntersectionObserver) {
27
26
  return;
28
27
  }
29
28
  const observer = new IntersectionObserver(([entry], obs) => {
@@ -8,27 +8,25 @@ import { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect.js';
8
8
  export const useMediaQuery = (queryString) => {
9
9
  const [matches, setMatches] = React.useState();
10
10
  useIsomorphicLayoutEffect(() => {
11
- var _a, _b, _c;
12
- const mediaQueryList = (_b = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.matchMedia) === null || _b === void 0 ? void 0 : _b.call(_a, queryString);
11
+ const mediaQueryList = getWindow()?.matchMedia?.(queryString);
13
12
  const handleChange = ({ matches }) => setMatches(matches);
14
13
  if (mediaQueryList != undefined) {
15
14
  setMatches(mediaQueryList.matches);
16
15
  try {
17
16
  mediaQueryList.addEventListener('change', handleChange);
18
17
  }
19
- catch (_d) {
18
+ catch {
20
19
  // Safari 13 fallback
21
- (_c = mediaQueryList.addListener) === null || _c === void 0 ? void 0 : _c.call(mediaQueryList, handleChange);
20
+ mediaQueryList.addListener?.(handleChange);
22
21
  }
23
22
  }
24
23
  return () => {
25
- var _a;
26
24
  try {
27
- mediaQueryList === null || mediaQueryList === void 0 ? void 0 : mediaQueryList.removeEventListener('change', handleChange);
25
+ mediaQueryList?.removeEventListener('change', handleChange);
28
26
  }
29
- catch (_b) {
27
+ catch {
30
28
  // Safari 13 fallback
31
- (_a = mediaQueryList === null || mediaQueryList === void 0 ? void 0 : mediaQueryList.removeListener) === null || _a === void 0 ? void 0 : _a.call(mediaQueryList, handleChange);
29
+ mediaQueryList?.removeListener?.(handleChange);
32
30
  }
33
31
  };
34
32
  }, [queryString]);
@@ -49,9 +49,8 @@ export const useOverflow = (items, disabled = false, orientation = 'horizontal')
49
49
  }, [containerSize, disabled, items]);
50
50
  const mergedRefs = useMergedRefs(containerRef, resizeRef);
51
51
  useIsomorphicLayoutEffect(() => {
52
- var _a;
53
52
  if (!containerRef.current || disabled) {
54
- (_a = resizeObserverRef.current) === null || _a === void 0 ? void 0 : _a.disconnect();
53
+ resizeObserverRef.current?.disconnect();
55
54
  return;
56
55
  }
57
56
  const dimension = orientation === 'horizontal' ? 'Width' : 'Height';
@@ -19,14 +19,13 @@ import { getWindow } from '../functions/dom.js';
19
19
  export const useResizeObserver = (onResize) => {
20
20
  const resizeObserver = React.useRef();
21
21
  const elementRef = React.useCallback((element) => {
22
- var _a, _b, _c;
23
- if (!((_a = getWindow()) === null || _a === void 0 ? void 0 : _a.ResizeObserver)) {
22
+ if (!getWindow()?.ResizeObserver) {
24
23
  return;
25
24
  }
26
- (_b = resizeObserver.current) === null || _b === void 0 ? void 0 : _b.disconnect();
25
+ resizeObserver.current?.disconnect();
27
26
  if (element) {
28
27
  resizeObserver.current = new ResizeObserver(([{ contentRect }]) => onResize(contentRect));
29
- (_c = resizeObserver.current) === null || _c === void 0 ? void 0 : _c.observe(element);
28
+ resizeObserver.current?.observe(element);
30
29
  }
31
30
  }, [onResize]);
32
31
  return [elementRef, resizeObserver.current];
@@ -0,0 +1,5 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export default styles as Record<string, string>;