@itwin/core-react 4.0.0-dev.9 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (950) hide show
  1. package/CHANGELOG.md +163 -1
  2. package/ContributeGuidelines.md +17 -14
  3. package/README.md +2 -2
  4. package/lib/cjs/core-react/UiCore.d.ts +40 -40
  5. package/lib/cjs/core-react/UiCore.js +85 -85
  6. package/lib/cjs/core-react/UiCore.js.map +1 -1
  7. package/lib/cjs/core-react/_geometry.scss +70 -70
  8. package/lib/cjs/core-react/_helpers.scss +51 -51
  9. package/lib/cjs/core-react/_math.scss +13 -13
  10. package/lib/cjs/core-react/_scrollbar.scss +51 -51
  11. package/lib/cjs/core-react/_typography.scss +44 -44
  12. package/lib/cjs/core-react/_z-index.scss +65 -65
  13. package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts +96 -96
  14. package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  15. package/lib/cjs/core-react/autosuggest/AutoSuggest.js +174 -174
  16. package/lib/cjs/core-react/autosuggest/AutoSuggest.js.map +1 -1
  17. package/lib/cjs/core-react/autosuggest/AutoSuggest.scss +79 -82
  18. package/lib/cjs/core-react/badge/Badge.d.ts +18 -18
  19. package/lib/cjs/core-react/badge/Badge.js +26 -26
  20. package/lib/cjs/core-react/badge/Badge.js.map +1 -1
  21. package/lib/cjs/core-react/badge/Badge.scss +13 -13
  22. package/lib/cjs/core-react/badge/BadgeUtilities.d.ts +12 -12
  23. package/lib/cjs/core-react/badge/BadgeUtilities.js +38 -38
  24. package/lib/cjs/core-react/badge/BadgeUtilities.js.map +1 -1
  25. package/lib/cjs/core-react/badge/BetaBadge.d.ts +9 -9
  26. package/lib/cjs/core-react/badge/BetaBadge.js +22 -22
  27. package/lib/cjs/core-react/badge/BetaBadge.js.map +1 -1
  28. package/lib/cjs/core-react/badge/NewBadge.d.ts +10 -10
  29. package/lib/cjs/core-react/badge/NewBadge.js +23 -23
  30. package/lib/cjs/core-react/badge/NewBadge.js.map +1 -1
  31. package/lib/cjs/core-react/badge/NewBadge.scss +9 -9
  32. package/lib/cjs/core-react/base/Centered.d.ts +10 -10
  33. package/lib/cjs/core-react/base/Centered.js +20 -20
  34. package/lib/cjs/core-react/base/Centered.js.map +1 -1
  35. package/lib/cjs/core-react/base/Div.d.ts +16 -16
  36. package/lib/cjs/core-react/base/Div.js +20 -20
  37. package/lib/cjs/core-react/base/Div.js.map +1 -1
  38. package/lib/cjs/core-react/base/DivWithOutsideClick.d.ts +79 -79
  39. package/lib/cjs/core-react/base/DivWithOutsideClick.js +16 -16
  40. package/lib/cjs/core-react/base/DivWithOutsideClick.js.map +1 -1
  41. package/lib/cjs/core-react/base/FillCentered.d.ts +10 -10
  42. package/lib/cjs/core-react/base/FillCentered.js +20 -20
  43. package/lib/cjs/core-react/base/FillCentered.js.map +1 -1
  44. package/lib/cjs/core-react/base/FlexWrapContainer.d.ts +11 -11
  45. package/lib/cjs/core-react/base/FlexWrapContainer.js +21 -21
  46. package/lib/cjs/core-react/base/FlexWrapContainer.js.map +1 -1
  47. package/lib/cjs/core-react/base/Gap.d.ts +15 -15
  48. package/lib/cjs/core-react/base/Gap.js +20 -20
  49. package/lib/cjs/core-react/base/Gap.js.map +1 -1
  50. package/lib/cjs/core-react/base/PointerEvents.d.ts +7 -7
  51. package/lib/cjs/core-react/base/PointerEvents.js +17 -17
  52. package/lib/cjs/core-react/base/PointerEvents.js.map +1 -1
  53. package/lib/cjs/core-react/base/ScrollView.d.ts +11 -11
  54. package/lib/cjs/core-react/base/ScrollView.js +21 -21
  55. package/lib/cjs/core-react/base/ScrollView.js.map +1 -1
  56. package/lib/cjs/core-react/base/base.scss +42 -42
  57. package/lib/cjs/core-react/base/classes.scss +13 -13
  58. package/lib/cjs/core-react/base/index.scss +5 -5
  59. package/lib/cjs/core-react/button/UnderlinedButton.d.ts +24 -24
  60. package/lib/cjs/core-react/button/UnderlinedButton.js +35 -35
  61. package/lib/cjs/core-react/button/UnderlinedButton.js.map +1 -1
  62. package/lib/cjs/core-react/button/UnderlinedButton.scss +32 -32
  63. package/lib/cjs/core-react/checklistbox/CheckListBox.d.ts +40 -40
  64. package/lib/cjs/core-react/checklistbox/CheckListBox.js +42 -42
  65. package/lib/cjs/core-react/checklistbox/CheckListBox.js.map +1 -1
  66. package/lib/cjs/core-react/checklistbox/CheckListBox.scss +21 -22
  67. package/lib/cjs/core-react/classes.scss +11 -14
  68. package/lib/cjs/core-react/colorthemes.scss +61 -90
  69. package/lib/cjs/core-react/colorvariables.scss +131 -154
  70. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts +93 -93
  71. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  72. package/lib/cjs/core-react/contextmenu/ContextMenu.js +363 -364
  73. package/lib/cjs/core-react/contextmenu/ContextMenu.js.map +1 -1
  74. package/lib/cjs/core-react/contextmenu/ContextMenu.scss +236 -237
  75. package/lib/cjs/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
  76. package/lib/cjs/core-react/contextmenu/ContextMenuDirection.js +26 -26
  77. package/lib/cjs/core-react/contextmenu/ContextMenuDirection.js.map +1 -1
  78. package/lib/cjs/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
  79. package/lib/cjs/core-react/contextmenu/ContextMenuDivider.js +23 -23
  80. package/lib/cjs/core-react/contextmenu/ContextMenuDivider.js.map +1 -1
  81. package/lib/cjs/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
  82. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js +108 -108
  83. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  84. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
  85. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  86. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js +162 -159
  87. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  88. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
  89. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.d.ts.map +1 -1
  90. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js +61 -59
  91. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  92. package/lib/cjs/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
  93. package/lib/cjs/core-react/contextmenu/PopupContextMenu.js +55 -55
  94. package/lib/cjs/core-react/contextmenu/PopupContextMenu.js.map +1 -1
  95. package/lib/cjs/core-react/contextmenu/TildeFinder.d.ts +18 -18
  96. package/lib/cjs/core-react/contextmenu/TildeFinder.js +70 -70
  97. package/lib/cjs/core-react/contextmenu/TildeFinder.js.map +1 -1
  98. package/lib/cjs/core-react/dialog/Dialog.d.ts +132 -132
  99. package/lib/cjs/core-react/dialog/Dialog.d.ts.map +1 -1
  100. package/lib/cjs/core-react/dialog/Dialog.js +374 -366
  101. package/lib/cjs/core-react/dialog/Dialog.js.map +1 -1
  102. package/lib/cjs/core-react/dialog/Dialog.scss +245 -244
  103. package/lib/cjs/core-react/dialog/GlobalDialog.d.ts +28 -28
  104. package/lib/cjs/core-react/dialog/GlobalDialog.js +52 -53
  105. package/lib/cjs/core-react/dialog/GlobalDialog.js.map +1 -1
  106. package/lib/cjs/core-react/elementseparator/ElementSeparator.d.ts +41 -41
  107. package/lib/cjs/core-react/elementseparator/ElementSeparator.js +163 -163
  108. package/lib/cjs/core-react/elementseparator/ElementSeparator.js.map +1 -1
  109. package/lib/cjs/core-react/elementseparator/ElementSeparator.scss +85 -85
  110. package/lib/cjs/core-react/enums/Alignment.d.ts +22 -22
  111. package/lib/cjs/core-react/enums/Alignment.js +31 -31
  112. package/lib/cjs/core-react/enums/Alignment.js.map +1 -1
  113. package/lib/cjs/core-react/enums/CheckBoxState.d.ts +20 -20
  114. package/lib/cjs/core-react/enums/CheckBoxState.js +19 -19
  115. package/lib/cjs/core-react/enums/CheckBoxState.js.map +1 -1
  116. package/lib/cjs/core-react/enums/Orientation.d.ts +11 -11
  117. package/lib/cjs/core-react/enums/Orientation.js +19 -19
  118. package/lib/cjs/core-react/enums/Orientation.js.map +1 -1
  119. package/lib/cjs/core-react/enums/SortDirection.d.ts +12 -12
  120. package/lib/cjs/core-react/enums/SortDirection.js +20 -20
  121. package/lib/cjs/core-react/enums/SortDirection.js.map +1 -1
  122. package/lib/cjs/core-react/enums/TimeFormat.d.ts +14 -14
  123. package/lib/cjs/core-react/enums/TimeFormat.js +22 -22
  124. package/lib/cjs/core-react/enums/TimeFormat.js.map +1 -1
  125. package/lib/cjs/core-react/expandable/ExpandableList.d.ts +37 -37
  126. package/lib/cjs/core-react/expandable/ExpandableList.js +57 -57
  127. package/lib/cjs/core-react/expandable/ExpandableList.js.map +1 -1
  128. package/lib/cjs/core-react/expandable/ExpandableList.scss +8 -8
  129. package/lib/cjs/core-react/expandable/classes.scss +7 -7
  130. package/lib/cjs/core-react/expandable/index.scss +5 -5
  131. package/lib/cjs/core-react/expandable/list.scss +35 -35
  132. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
  133. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  134. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.js +150 -150
  135. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.js.map +1 -1
  136. package/lib/cjs/core-react/focustrap/FocusTrap.d.ts +28 -28
  137. package/lib/cjs/core-react/focustrap/FocusTrap.js +196 -196
  138. package/lib/cjs/core-react/focustrap/FocusTrap.js.map +1 -1
  139. package/lib/cjs/core-react/hocs/withIsPressed.d.ts +77 -77
  140. package/lib/cjs/core-react/hocs/withIsPressed.js +46 -46
  141. package/lib/cjs/core-react/hocs/withIsPressed.js.map +1 -1
  142. package/lib/cjs/core-react/hocs/withOnOutsideClick.d.ts +103 -103
  143. package/lib/cjs/core-react/hocs/withOnOutsideClick.js +114 -115
  144. package/lib/cjs/core-react/hocs/withOnOutsideClick.js.map +1 -1
  145. package/lib/cjs/core-react/hocs/withTimeout.d.ts +74 -74
  146. package/lib/cjs/core-react/hocs/withTimeout.js +46 -46
  147. package/lib/cjs/core-react/hocs/withTimeout.js.map +1 -1
  148. package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts +27 -0
  149. package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts.map +1 -0
  150. package/lib/cjs/core-react/icons/ConditionalIconItem.js +65 -0
  151. package/lib/cjs/core-react/icons/ConditionalIconItem.js.map +1 -0
  152. package/lib/cjs/core-react/icons/IconComponent.d.ts +25 -24
  153. package/lib/cjs/core-react/icons/IconComponent.d.ts.map +1 -1
  154. package/lib/cjs/core-react/icons/IconComponent.js +48 -48
  155. package/lib/cjs/core-react/icons/IconComponent.js.map +1 -1
  156. package/lib/cjs/core-react/icons/IconComponent.scss +20 -20
  157. package/lib/cjs/core-react/icons/SvgPath.d.ts +23 -23
  158. package/lib/cjs/core-react/icons/SvgPath.js +27 -27
  159. package/lib/cjs/core-react/icons/SvgPath.js.map +1 -1
  160. package/lib/cjs/core-react/icons/SvgPath.scss +15 -15
  161. package/lib/cjs/core-react/icons/WebFontIcon.d.ts +25 -26
  162. package/lib/cjs/core-react/icons/WebFontIcon.d.ts.map +1 -1
  163. package/lib/cjs/core-react/icons/WebFontIcon.js +21 -22
  164. package/lib/cjs/core-react/icons/WebFontIcon.js.map +1 -1
  165. package/lib/cjs/core-react/icons/WebFontIcon.scss +17 -17
  166. package/lib/cjs/core-react/icons/classes.scss +10 -10
  167. package/lib/cjs/core-react/icons/index.scss +6 -6
  168. package/lib/cjs/core-react/icons/mixins.scss +25 -25
  169. package/lib/cjs/core-react/icons/variables.scss +12 -21
  170. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
  171. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.js +56 -56
  172. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.js.map +1 -1
  173. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.scss +54 -54
  174. package/lib/cjs/core-react/index.scss +21 -23
  175. package/lib/cjs/core-react/inputs/Input.d.ts +20 -20
  176. package/lib/cjs/core-react/inputs/Input.js +45 -45
  177. package/lib/cjs/core-react/inputs/Input.js.map +1 -1
  178. package/lib/cjs/core-react/inputs/InputLabel.d.ts +20 -20
  179. package/lib/cjs/core-react/inputs/InputLabel.d.ts.map +1 -1
  180. package/lib/cjs/core-react/inputs/InputLabel.js +41 -33
  181. package/lib/cjs/core-react/inputs/InputLabel.js.map +1 -1
  182. package/lib/cjs/core-react/inputs/InputStatus.d.ts +11 -11
  183. package/lib/cjs/core-react/inputs/InputStatus.js +19 -19
  184. package/lib/cjs/core-react/inputs/InputStatus.js.map +1 -1
  185. package/lib/cjs/core-react/inputs/LabeledComponentProps.d.ts +33 -33
  186. package/lib/cjs/core-react/inputs/LabeledComponentProps.js +9 -9
  187. package/lib/cjs/core-react/inputs/LabeledComponentProps.js.map +1 -1
  188. package/lib/cjs/core-react/inputs/classes.scss +8 -8
  189. package/lib/cjs/core-react/inputs/iconinput/IconInput.d.ts +23 -23
  190. package/lib/cjs/core-react/inputs/iconinput/IconInput.js +29 -29
  191. package/lib/cjs/core-react/inputs/iconinput/IconInput.js.map +1 -1
  192. package/lib/cjs/core-react/inputs/iconinput/IconInput.scss +35 -35
  193. package/lib/cjs/core-react/inputs/index.scss +9 -9
  194. package/lib/cjs/core-react/inputs/input-label.scss +90 -90
  195. package/lib/cjs/core-react/inputs/input.scss +58 -58
  196. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts +50 -45
  197. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  198. package/lib/cjs/core-react/inputs/numberinput/NumberInput.js +153 -148
  199. package/lib/cjs/core-react/inputs/numberinput/NumberInput.js.map +1 -1
  200. package/lib/cjs/core-react/inputs/numberinput/NumberInput.scss +88 -89
  201. package/lib/cjs/core-react/inputs/variables.scss +38 -38
  202. package/lib/cjs/core-react/layout-variables.scss +17 -17
  203. package/lib/cjs/core-react/listbox/Listbox.d.ts +55 -55
  204. package/lib/cjs/core-react/listbox/Listbox.d.ts.map +1 -1
  205. package/lib/cjs/core-react/listbox/Listbox.js +221 -222
  206. package/lib/cjs/core-react/listbox/Listbox.js.map +1 -1
  207. package/lib/cjs/core-react/listbox/Listbox.scss +54 -54
  208. package/lib/cjs/core-react/loading/LoadingBar.d.ts +29 -29
  209. package/lib/cjs/core-react/loading/LoadingBar.js +40 -40
  210. package/lib/cjs/core-react/loading/LoadingBar.js.map +1 -1
  211. package/lib/cjs/core-react/loading/LoadingBar.scss +29 -29
  212. package/lib/cjs/core-react/loading/LoadingPrompt.d.ts +39 -39
  213. package/lib/cjs/core-react/loading/LoadingPrompt.js +44 -44
  214. package/lib/cjs/core-react/loading/LoadingPrompt.js.map +1 -1
  215. package/lib/cjs/core-react/loading/LoadingPrompt.scss +33 -33
  216. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts +32 -32
  217. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  218. package/lib/cjs/core-react/loading/LoadingSpinner.js +30 -30
  219. package/lib/cjs/core-react/loading/LoadingSpinner.js.map +1 -1
  220. package/lib/cjs/core-react/loading/LoadingSpinner.scss +26 -26
  221. package/lib/cjs/core-react/loading/LoadingStatus.d.ts +24 -24
  222. package/lib/cjs/core-react/loading/LoadingStatus.js +37 -37
  223. package/lib/cjs/core-react/loading/LoadingStatus.js.map +1 -1
  224. package/lib/cjs/core-react/loading/LoadingStatus.scss +20 -20
  225. package/lib/cjs/core-react/loading/index.scss +5 -5
  226. package/lib/cjs/core-react/loading/mixins.scss +57 -57
  227. package/lib/cjs/core-react/messagebox/MessageBox.d.ts +80 -68
  228. package/lib/cjs/core-react/messagebox/MessageBox.d.ts.map +1 -1
  229. package/lib/cjs/core-react/messagebox/MessageBox.js +114 -70
  230. package/lib/cjs/core-react/messagebox/MessageBox.js.map +1 -1
  231. package/lib/cjs/core-react/messagebox/MessageBox.scss +56 -46
  232. package/lib/cjs/core-react/notification/MessageRenderer.d.ts +19 -19
  233. package/lib/cjs/core-react/notification/MessageRenderer.js +81 -81
  234. package/lib/cjs/core-react/notification/MessageRenderer.js.map +1 -1
  235. package/lib/cjs/core-react/notification/MessageType.d.ts +22 -22
  236. package/lib/cjs/core-react/notification/MessageType.d.ts.map +1 -1
  237. package/lib/cjs/core-react/notification/MessageType.js +24 -24
  238. package/lib/cjs/core-react/notification/MessageType.js.map +1 -1
  239. package/lib/cjs/core-react/popup/Popup.d.ts +111 -111
  240. package/lib/cjs/core-react/popup/Popup.d.ts.map +1 -1
  241. package/lib/cjs/core-react/popup/Popup.js +418 -419
  242. package/lib/cjs/core-react/popup/Popup.js.map +1 -1
  243. package/lib/cjs/core-react/popup/Popup.scss +240 -240
  244. package/lib/cjs/core-react/radialmenu/Annulus.d.ts +54 -54
  245. package/lib/cjs/core-react/radialmenu/Annulus.js +82 -82
  246. package/lib/cjs/core-react/radialmenu/Annulus.js.map +1 -1
  247. package/lib/cjs/core-react/radialmenu/RadialMenu.d.ts +97 -97
  248. package/lib/cjs/core-react/radialmenu/RadialMenu.js +179 -179
  249. package/lib/cjs/core-react/radialmenu/RadialMenu.js.map +1 -1
  250. package/lib/cjs/core-react/radialmenu/RadialMenu.scss +55 -55
  251. package/lib/cjs/core-react/searchbox/SearchBox.d.ts +52 -52
  252. package/lib/cjs/core-react/searchbox/SearchBox.d.ts.map +1 -1
  253. package/lib/cjs/core-react/searchbox/SearchBox.js +111 -109
  254. package/lib/cjs/core-react/searchbox/SearchBox.js.map +1 -1
  255. package/lib/cjs/core-react/searchbox/SearchBox.scss +47 -51
  256. package/lib/cjs/core-react/settings/SettingsContainer.d.ts +30 -30
  257. package/lib/cjs/core-react/settings/SettingsContainer.js +121 -121
  258. package/lib/cjs/core-react/settings/SettingsContainer.js.map +1 -1
  259. package/lib/cjs/core-react/settings/SettingsContainer.scss +68 -66
  260. package/lib/cjs/core-react/settings/SettingsManager.d.ts +132 -132
  261. package/lib/cjs/core-react/settings/SettingsManager.js +122 -122
  262. package/lib/cjs/core-react/settings/SettingsManager.js.map +1 -1
  263. package/lib/cjs/core-react/style/baseline.scss +11 -11
  264. package/lib/cjs/core-react/style/breakpoints.scss +41 -41
  265. package/lib/cjs/core-react/style/colors.scss +77 -77
  266. package/lib/cjs/core-react/style/index.scss +10 -17
  267. package/lib/cjs/core-react/style/mixins.scss +27 -27
  268. package/lib/cjs/core-react/style/opacity.scss +16 -16
  269. package/lib/cjs/core-react/style/themecolors.scss +123 -129
  270. package/lib/cjs/core-react/tabs/Tabs.d.ts +71 -71
  271. package/lib/cjs/core-react/tabs/Tabs.js +125 -125
  272. package/lib/cjs/core-react/tabs/Tabs.js.map +1 -1
  273. package/lib/cjs/core-react/tabs/VerticalTabs.d.ts +9 -9
  274. package/lib/cjs/core-react/tabs/VerticalTabs.js +20 -20
  275. package/lib/cjs/core-react/tabs/VerticalTabs.js.map +1 -1
  276. package/lib/cjs/core-react/tabs/classes.scss +7 -7
  277. package/lib/cjs/core-react/tabs/index.scss +5 -5
  278. package/lib/cjs/core-react/tabs/tabs.scss +96 -106
  279. package/lib/cjs/core-react/tabs/vertical.scss +51 -58
  280. package/lib/cjs/core-react/text/BlockText.d.ts +9 -9
  281. package/lib/cjs/core-react/text/BlockText.d.ts.map +1 -1
  282. package/lib/cjs/core-react/text/BlockText.js +20 -19
  283. package/lib/cjs/core-react/text/BlockText.js.map +1 -1
  284. package/lib/cjs/core-react/text/BodyText.d.ts +10 -9
  285. package/lib/cjs/core-react/text/BodyText.d.ts.map +1 -1
  286. package/lib/cjs/core-react/text/BodyText.js +21 -19
  287. package/lib/cjs/core-react/text/BodyText.js.map +1 -1
  288. package/lib/cjs/core-react/text/DisabledText.d.ts +6 -6
  289. package/lib/cjs/core-react/text/DisabledText.d.ts.map +1 -1
  290. package/lib/cjs/core-react/text/DisabledText.js +20 -19
  291. package/lib/cjs/core-react/text/DisabledText.js.map +1 -1
  292. package/lib/cjs/core-react/text/FilteredText.d.ts +24 -24
  293. package/lib/cjs/core-react/text/FilteredText.js +40 -40
  294. package/lib/cjs/core-react/text/FilteredText.js.map +1 -1
  295. package/lib/cjs/core-react/text/FilteredText.scss +10 -10
  296. package/lib/cjs/core-react/text/MutedText.d.ts +10 -9
  297. package/lib/cjs/core-react/text/MutedText.d.ts.map +1 -1
  298. package/lib/cjs/core-react/text/MutedText.js +21 -19
  299. package/lib/cjs/core-react/text/MutedText.js.map +1 -1
  300. package/lib/cjs/core-react/text/StyledText.d.ts +17 -16
  301. package/lib/cjs/core-react/text/StyledText.d.ts.map +1 -1
  302. package/lib/cjs/core-react/text/StyledText.js +21 -20
  303. package/lib/cjs/core-react/text/StyledText.js.map +1 -1
  304. package/lib/cjs/core-react/text/TextProps.d.ts +10 -10
  305. package/lib/cjs/core-react/text/TextProps.js +9 -9
  306. package/lib/cjs/core-react/text/TextProps.js.map +1 -1
  307. package/lib/cjs/core-react/text/block.scss +15 -10
  308. package/lib/cjs/core-react/text/body.scss +13 -10
  309. package/lib/cjs/core-react/text/classes.scss +10 -10
  310. package/lib/cjs/core-react/text/disabled.scss +10 -10
  311. package/lib/cjs/core-react/text/index.scss +10 -10
  312. package/lib/cjs/core-react/text/mixins.scss +24 -24
  313. package/lib/cjs/core-react/text/muted.scss +10 -10
  314. package/lib/cjs/core-react/tree/Branch.d.ts +19 -19
  315. package/lib/cjs/core-react/tree/Branch.js +23 -23
  316. package/lib/cjs/core-react/tree/Branch.js.map +1 -1
  317. package/lib/cjs/core-react/tree/Branch.scss +12 -12
  318. package/lib/cjs/core-react/tree/ExpansionToggle.d.ts +20 -20
  319. package/lib/cjs/core-react/tree/ExpansionToggle.d.ts.map +1 -1
  320. package/lib/cjs/core-react/tree/ExpansionToggle.js +30 -28
  321. package/lib/cjs/core-react/tree/ExpansionToggle.js.map +1 -1
  322. package/lib/cjs/core-react/tree/ExpansionToggle.scss +32 -28
  323. package/lib/cjs/core-react/tree/Node.d.ts +79 -79
  324. package/lib/cjs/core-react/tree/Node.d.ts.map +1 -1
  325. package/lib/cjs/core-react/tree/Node.js +87 -88
  326. package/lib/cjs/core-react/tree/Node.js.map +1 -1
  327. package/lib/cjs/core-react/tree/Node.scss +68 -84
  328. package/lib/cjs/core-react/tree/Placeholder.d.ts +22 -22
  329. package/lib/cjs/core-react/tree/Placeholder.js +31 -31
  330. package/lib/cjs/core-react/tree/Placeholder.js.map +1 -1
  331. package/lib/cjs/core-react/tree/Placeholder.scss +17 -20
  332. package/lib/cjs/core-react/tree/Tree.d.ts +28 -28
  333. package/lib/cjs/core-react/tree/Tree.js +100 -100
  334. package/lib/cjs/core-react/tree/Tree.js.map +1 -1
  335. package/lib/cjs/core-react/tree/Tree.scss +21 -21
  336. package/lib/cjs/core-react/uistate/LocalStateStorage.d.ts +16 -16
  337. package/lib/cjs/core-react/uistate/LocalStateStorage.js +49 -49
  338. package/lib/cjs/core-react/uistate/LocalStateStorage.js.map +1 -1
  339. package/lib/cjs/core-react/uistate/UiStateEntry.d.ts +30 -30
  340. package/lib/cjs/core-react/uistate/UiStateEntry.js +59 -59
  341. package/lib/cjs/core-react/uistate/UiStateEntry.js.map +1 -1
  342. package/lib/cjs/core-react/uistate/UiStateStorage.d.ts +28 -28
  343. package/lib/cjs/core-react/uistate/UiStateStorage.js +21 -21
  344. package/lib/cjs/core-react/uistate/UiStateStorage.js.map +1 -1
  345. package/lib/cjs/core-react/utils/IconHelper.d.ts +23 -23
  346. package/lib/cjs/core-react/utils/IconHelper.js +62 -62
  347. package/lib/cjs/core-react/utils/IconHelper.js.map +1 -1
  348. package/lib/cjs/core-react/utils/IconWebComponent.d.ts +10 -10
  349. package/lib/cjs/core-react/utils/IconWebComponent.js +72 -72
  350. package/lib/cjs/core-react/utils/IconWebComponent.js.map +1 -1
  351. package/lib/cjs/core-react/utils/Point.d.ts +37 -37
  352. package/lib/cjs/core-react/utils/Point.js +73 -73
  353. package/lib/cjs/core-react/utils/Point.js.map +1 -1
  354. package/lib/cjs/core-react/utils/Props.d.ts +38 -38
  355. package/lib/cjs/core-react/utils/Props.d.ts.map +1 -1
  356. package/lib/cjs/core-react/utils/Props.js +9 -9
  357. package/lib/cjs/core-react/utils/Props.js.map +1 -1
  358. package/lib/cjs/core-react/utils/Rectangle.d.ts +144 -144
  359. package/lib/cjs/core-react/utils/Rectangle.js +270 -270
  360. package/lib/cjs/core-react/utils/Rectangle.js.map +1 -1
  361. package/lib/cjs/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
  362. package/lib/cjs/core-react/utils/ScrollPositionMaintainer.js +36 -36
  363. package/lib/cjs/core-react/utils/ScrollPositionMaintainer.js.map +1 -1
  364. package/lib/cjs/core-react/utils/Size.d.ts +23 -23
  365. package/lib/cjs/core-react/utils/Size.js +32 -32
  366. package/lib/cjs/core-react/utils/Size.js.map +1 -1
  367. package/lib/cjs/core-react/utils/Timer.d.ts +35 -35
  368. package/lib/cjs/core-react/utils/Timer.d.ts.map +1 -1
  369. package/lib/cjs/core-react/utils/Timer.js +64 -64
  370. package/lib/cjs/core-react/utils/Timer.js.map +1 -1
  371. package/lib/cjs/core-react/utils/UiGeometry.d.ts +20 -20
  372. package/lib/cjs/core-react/utils/UiGeometry.js +28 -28
  373. package/lib/cjs/core-react/utils/UiGeometry.js.map +1 -1
  374. package/lib/cjs/core-react/utils/flattenChildren.d.ts +8 -8
  375. package/lib/cjs/core-react/utils/flattenChildren.js +27 -27
  376. package/lib/cjs/core-react/utils/flattenChildren.js.map +1 -1
  377. package/lib/cjs/core-react/utils/getBestBWContrastColor.d.ts +7 -7
  378. package/lib/cjs/core-react/utils/getBestBWContrastColor.js +22 -22
  379. package/lib/cjs/core-react/utils/getBestBWContrastColor.js.map +1 -1
  380. package/lib/cjs/core-react/utils/getCssVariable.d.ts +11 -11
  381. package/lib/cjs/core-react/utils/getCssVariable.js +31 -31
  382. package/lib/cjs/core-react/utils/getCssVariable.js.map +1 -1
  383. package/lib/cjs/core-react/utils/getDisplayName.d.ts +8 -8
  384. package/lib/cjs/core-react/utils/getDisplayName.js +21 -21
  385. package/lib/cjs/core-react/utils/getDisplayName.js.map +1 -1
  386. package/lib/cjs/core-react/utils/getUserColor.d.ts +7 -7
  387. package/lib/cjs/core-react/utils/getUserColor.js +38 -38
  388. package/lib/cjs/core-react/utils/getUserColor.js.map +1 -1
  389. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
  390. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  391. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.js +19 -19
  392. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.js.map +1 -1
  393. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
  394. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js +88 -89
  395. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  396. package/lib/cjs/core-react/utils/hooks/useDisposable.d.ts +17 -17
  397. package/lib/cjs/core-react/utils/hooks/useDisposable.js +38 -38
  398. package/lib/cjs/core-react/utils/hooks/useDisposable.js.map +1 -1
  399. package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
  400. package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.js +26 -26
  401. package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.js.map +1 -1
  402. package/lib/cjs/core-react/utils/hooks/useEventListener.d.ts +11 -11
  403. package/lib/cjs/core-react/utils/hooks/useEventListener.js +43 -43
  404. package/lib/cjs/core-react/utils/hooks/useEventListener.js.map +1 -1
  405. package/lib/cjs/core-react/utils/hooks/useInterval.d.ts +5 -5
  406. package/lib/cjs/core-react/utils/hooks/useInterval.js +36 -36
  407. package/lib/cjs/core-react/utils/hooks/useInterval.js.map +1 -1
  408. package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
  409. package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.js +64 -64
  410. package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.js.map +1 -1
  411. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
  412. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  413. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.js +92 -92
  414. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.js.map +1 -1
  415. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
  416. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.d.ts.map +1 -1
  417. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js +114 -114
  418. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js.map +1 -1
  419. package/lib/cjs/core-react/utils/hooks/useRefEffect.d.ts +7 -7
  420. package/lib/cjs/core-react/utils/hooks/useRefEffect.js +23 -23
  421. package/lib/cjs/core-react/utils/hooks/useRefEffect.js.map +1 -1
  422. package/lib/cjs/core-react/utils/hooks/useRefState.d.ts +21 -21
  423. package/lib/cjs/core-react/utils/hooks/useRefState.js +35 -35
  424. package/lib/cjs/core-react/utils/hooks/useRefState.js.map +1 -1
  425. package/lib/cjs/core-react/utils/hooks/useRefs.d.ts +12 -12
  426. package/lib/cjs/core-react/utils/hooks/useRefs.d.ts.map +1 -1
  427. package/lib/cjs/core-react/utils/hooks/useRefs.js +53 -53
  428. package/lib/cjs/core-react/utils/hooks/useRefs.js.map +1 -1
  429. package/lib/cjs/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
  430. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js +203 -208
  431. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  432. package/lib/cjs/core-react/utils/hooks/useTargeted.d.ts +8 -8
  433. package/lib/cjs/core-react/utils/hooks/useTargeted.js +28 -28
  434. package/lib/cjs/core-react/utils/hooks/useTargeted.js.map +1 -1
  435. package/lib/cjs/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
  436. package/lib/cjs/core-react/utils/hooks/useThrottledFn.js +25 -25
  437. package/lib/cjs/core-react/utils/hooks/useThrottledFn.js.map +1 -1
  438. package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
  439. package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.js +27 -27
  440. package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.js.map +1 -1
  441. package/lib/cjs/core-react/utils/isPromiseLike.d.ts +7 -7
  442. package/lib/cjs/core-react/utils/isPromiseLike.js +17 -17
  443. package/lib/cjs/core-react/utils/isPromiseLike.js.map +1 -1
  444. package/lib/cjs/core-react/utils/shallowDiffers.d.ts +11 -11
  445. package/lib/cjs/core-react/utils/shallowDiffers.js +29 -29
  446. package/lib/cjs/core-react/utils/shallowDiffers.js.map +1 -1
  447. package/lib/cjs/core-react/utils/typeUtils.d.ts +7 -7
  448. package/lib/cjs/core-react/utils/typeUtils.d.ts.map +1 -1
  449. package/lib/cjs/core-react/utils/typeUtils.js +9 -9
  450. package/lib/cjs/core-react/utils/typeUtils.js.map +1 -1
  451. package/lib/cjs/core-react.d.ts +236 -235
  452. package/lib/cjs/core-react.d.ts.map +1 -1
  453. package/lib/cjs/core-react.js +263 -258
  454. package/lib/cjs/core-react.js.map +1 -1
  455. package/lib/esm/core-react/UiCore.d.ts +40 -40
  456. package/lib/esm/core-react/UiCore.js +82 -81
  457. package/lib/esm/core-react/UiCore.js.map +1 -1
  458. package/lib/esm/core-react/_geometry.scss +70 -70
  459. package/lib/esm/core-react/_helpers.scss +51 -51
  460. package/lib/esm/core-react/_math.scss +13 -13
  461. package/lib/esm/core-react/_scrollbar.scss +51 -51
  462. package/lib/esm/core-react/_typography.scss +44 -44
  463. package/lib/esm/core-react/_z-index.scss +65 -65
  464. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts +96 -96
  465. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  466. package/lib/esm/core-react/autosuggest/AutoSuggest.js +170 -170
  467. package/lib/esm/core-react/autosuggest/AutoSuggest.js.map +1 -1
  468. package/lib/esm/core-react/autosuggest/AutoSuggest.scss +79 -82
  469. package/lib/esm/core-react/badge/Badge.d.ts +18 -18
  470. package/lib/esm/core-react/badge/Badge.js +22 -22
  471. package/lib/esm/core-react/badge/Badge.js.map +1 -1
  472. package/lib/esm/core-react/badge/Badge.scss +13 -13
  473. package/lib/esm/core-react/badge/BadgeUtilities.d.ts +12 -12
  474. package/lib/esm/core-react/badge/BadgeUtilities.js +34 -34
  475. package/lib/esm/core-react/badge/BadgeUtilities.js.map +1 -1
  476. package/lib/esm/core-react/badge/BetaBadge.d.ts +9 -9
  477. package/lib/esm/core-react/badge/BetaBadge.js +18 -18
  478. package/lib/esm/core-react/badge/BetaBadge.js.map +1 -1
  479. package/lib/esm/core-react/badge/NewBadge.d.ts +10 -10
  480. package/lib/esm/core-react/badge/NewBadge.js +19 -19
  481. package/lib/esm/core-react/badge/NewBadge.js.map +1 -1
  482. package/lib/esm/core-react/badge/NewBadge.scss +9 -9
  483. package/lib/esm/core-react/base/Centered.d.ts +10 -10
  484. package/lib/esm/core-react/base/Centered.js +16 -16
  485. package/lib/esm/core-react/base/Centered.js.map +1 -1
  486. package/lib/esm/core-react/base/Div.d.ts +16 -16
  487. package/lib/esm/core-react/base/Div.js +16 -16
  488. package/lib/esm/core-react/base/Div.js.map +1 -1
  489. package/lib/esm/core-react/base/DivWithOutsideClick.d.ts +79 -79
  490. package/lib/esm/core-react/base/DivWithOutsideClick.js +13 -13
  491. package/lib/esm/core-react/base/DivWithOutsideClick.js.map +1 -1
  492. package/lib/esm/core-react/base/FillCentered.d.ts +10 -10
  493. package/lib/esm/core-react/base/FillCentered.js +16 -16
  494. package/lib/esm/core-react/base/FillCentered.js.map +1 -1
  495. package/lib/esm/core-react/base/FlexWrapContainer.d.ts +11 -11
  496. package/lib/esm/core-react/base/FlexWrapContainer.js +17 -17
  497. package/lib/esm/core-react/base/FlexWrapContainer.js.map +1 -1
  498. package/lib/esm/core-react/base/Gap.d.ts +15 -15
  499. package/lib/esm/core-react/base/Gap.js +16 -16
  500. package/lib/esm/core-react/base/Gap.js.map +1 -1
  501. package/lib/esm/core-react/base/PointerEvents.d.ts +7 -7
  502. package/lib/esm/core-react/base/PointerEvents.js +13 -13
  503. package/lib/esm/core-react/base/PointerEvents.js.map +1 -1
  504. package/lib/esm/core-react/base/ScrollView.d.ts +11 -11
  505. package/lib/esm/core-react/base/ScrollView.js +17 -17
  506. package/lib/esm/core-react/base/ScrollView.js.map +1 -1
  507. package/lib/esm/core-react/base/base.scss +42 -42
  508. package/lib/esm/core-react/base/classes.scss +13 -13
  509. package/lib/esm/core-react/base/index.scss +5 -5
  510. package/lib/esm/core-react/button/UnderlinedButton.d.ts +24 -24
  511. package/lib/esm/core-react/button/UnderlinedButton.js +31 -31
  512. package/lib/esm/core-react/button/UnderlinedButton.js.map +1 -1
  513. package/lib/esm/core-react/button/UnderlinedButton.scss +32 -32
  514. package/lib/esm/core-react/checklistbox/CheckListBox.d.ts +40 -40
  515. package/lib/esm/core-react/checklistbox/CheckListBox.js +36 -36
  516. package/lib/esm/core-react/checklistbox/CheckListBox.js.map +1 -1
  517. package/lib/esm/core-react/checklistbox/CheckListBox.scss +21 -22
  518. package/lib/esm/core-react/classes.scss +11 -14
  519. package/lib/esm/core-react/colorthemes.scss +61 -90
  520. package/lib/esm/core-react/colorvariables.scss +131 -154
  521. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts +93 -93
  522. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  523. package/lib/esm/core-react/contextmenu/ContextMenu.js +360 -360
  524. package/lib/esm/core-react/contextmenu/ContextMenu.js.map +1 -1
  525. package/lib/esm/core-react/contextmenu/ContextMenu.scss +236 -237
  526. package/lib/esm/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
  527. package/lib/esm/core-react/contextmenu/ContextMenuDirection.js +23 -23
  528. package/lib/esm/core-react/contextmenu/ContextMenuDirection.js.map +1 -1
  529. package/lib/esm/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
  530. package/lib/esm/core-react/contextmenu/ContextMenuDivider.js +19 -19
  531. package/lib/esm/core-react/contextmenu/ContextMenuDivider.js.map +1 -1
  532. package/lib/esm/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
  533. package/lib/esm/core-react/contextmenu/ContextMenuItem.js +105 -104
  534. package/lib/esm/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  535. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
  536. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  537. package/lib/esm/core-react/contextmenu/ContextSubMenu.js +159 -155
  538. package/lib/esm/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  539. package/lib/esm/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
  540. package/lib/esm/core-react/contextmenu/GlobalContextMenu.d.ts.map +1 -1
  541. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js +57 -55
  542. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  543. package/lib/esm/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
  544. package/lib/esm/core-react/contextmenu/PopupContextMenu.js +51 -51
  545. package/lib/esm/core-react/contextmenu/PopupContextMenu.js.map +1 -1
  546. package/lib/esm/core-react/contextmenu/TildeFinder.d.ts +18 -18
  547. package/lib/esm/core-react/contextmenu/TildeFinder.js +67 -66
  548. package/lib/esm/core-react/contextmenu/TildeFinder.js.map +1 -1
  549. package/lib/esm/core-react/dialog/Dialog.d.ts +132 -132
  550. package/lib/esm/core-react/dialog/Dialog.d.ts.map +1 -1
  551. package/lib/esm/core-react/dialog/Dialog.js +371 -362
  552. package/lib/esm/core-react/dialog/Dialog.js.map +1 -1
  553. package/lib/esm/core-react/dialog/Dialog.scss +245 -244
  554. package/lib/esm/core-react/dialog/GlobalDialog.d.ts +28 -28
  555. package/lib/esm/core-react/dialog/GlobalDialog.js +48 -49
  556. package/lib/esm/core-react/dialog/GlobalDialog.js.map +1 -1
  557. package/lib/esm/core-react/elementseparator/ElementSeparator.d.ts +41 -41
  558. package/lib/esm/core-react/elementseparator/ElementSeparator.js +159 -159
  559. package/lib/esm/core-react/elementseparator/ElementSeparator.js.map +1 -1
  560. package/lib/esm/core-react/elementseparator/ElementSeparator.scss +85 -85
  561. package/lib/esm/core-react/enums/Alignment.d.ts +22 -22
  562. package/lib/esm/core-react/enums/Alignment.js +28 -28
  563. package/lib/esm/core-react/enums/Alignment.js.map +1 -1
  564. package/lib/esm/core-react/enums/CheckBoxState.d.ts +20 -20
  565. package/lib/esm/core-react/enums/CheckBoxState.js +16 -16
  566. package/lib/esm/core-react/enums/CheckBoxState.js.map +1 -1
  567. package/lib/esm/core-react/enums/Orientation.d.ts +11 -11
  568. package/lib/esm/core-react/enums/Orientation.js +16 -16
  569. package/lib/esm/core-react/enums/Orientation.js.map +1 -1
  570. package/lib/esm/core-react/enums/SortDirection.d.ts +12 -12
  571. package/lib/esm/core-react/enums/SortDirection.js +17 -17
  572. package/lib/esm/core-react/enums/SortDirection.js.map +1 -1
  573. package/lib/esm/core-react/enums/TimeFormat.d.ts +14 -14
  574. package/lib/esm/core-react/enums/TimeFormat.js +19 -19
  575. package/lib/esm/core-react/enums/TimeFormat.js.map +1 -1
  576. package/lib/esm/core-react/expandable/ExpandableList.d.ts +37 -37
  577. package/lib/esm/core-react/expandable/ExpandableList.js +54 -53
  578. package/lib/esm/core-react/expandable/ExpandableList.js.map +1 -1
  579. package/lib/esm/core-react/expandable/ExpandableList.scss +8 -8
  580. package/lib/esm/core-react/expandable/classes.scss +7 -7
  581. package/lib/esm/core-react/expandable/index.scss +5 -5
  582. package/lib/esm/core-react/expandable/list.scss +35 -35
  583. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
  584. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  585. package/lib/esm/core-react/focus/ItemKeyboardNavigator.js +145 -145
  586. package/lib/esm/core-react/focus/ItemKeyboardNavigator.js.map +1 -1
  587. package/lib/esm/core-react/focustrap/FocusTrap.d.ts +28 -28
  588. package/lib/esm/core-react/focustrap/FocusTrap.js +191 -191
  589. package/lib/esm/core-react/focustrap/FocusTrap.js.map +1 -1
  590. package/lib/esm/core-react/hocs/withIsPressed.d.ts +77 -77
  591. package/lib/esm/core-react/hocs/withIsPressed.js +42 -42
  592. package/lib/esm/core-react/hocs/withIsPressed.js.map +1 -1
  593. package/lib/esm/core-react/hocs/withOnOutsideClick.d.ts +103 -103
  594. package/lib/esm/core-react/hocs/withOnOutsideClick.js +110 -111
  595. package/lib/esm/core-react/hocs/withOnOutsideClick.js.map +1 -1
  596. package/lib/esm/core-react/hocs/withTimeout.d.ts +74 -74
  597. package/lib/esm/core-react/hocs/withTimeout.js +42 -42
  598. package/lib/esm/core-react/hocs/withTimeout.js.map +1 -1
  599. package/lib/esm/core-react/icons/ConditionalIconItem.d.ts +27 -0
  600. package/lib/esm/core-react/icons/ConditionalIconItem.d.ts.map +1 -0
  601. package/lib/esm/core-react/icons/ConditionalIconItem.js +61 -0
  602. package/lib/esm/core-react/icons/ConditionalIconItem.js.map +1 -0
  603. package/lib/esm/core-react/icons/IconComponent.d.ts +25 -24
  604. package/lib/esm/core-react/icons/IconComponent.d.ts.map +1 -1
  605. package/lib/esm/core-react/icons/IconComponent.js +44 -44
  606. package/lib/esm/core-react/icons/IconComponent.js.map +1 -1
  607. package/lib/esm/core-react/icons/IconComponent.scss +20 -20
  608. package/lib/esm/core-react/icons/SvgPath.d.ts +23 -23
  609. package/lib/esm/core-react/icons/SvgPath.js +23 -23
  610. package/lib/esm/core-react/icons/SvgPath.js.map +1 -1
  611. package/lib/esm/core-react/icons/SvgPath.scss +15 -15
  612. package/lib/esm/core-react/icons/WebFontIcon.d.ts +25 -26
  613. package/lib/esm/core-react/icons/WebFontIcon.d.ts.map +1 -1
  614. package/lib/esm/core-react/icons/WebFontIcon.js +17 -18
  615. package/lib/esm/core-react/icons/WebFontIcon.js.map +1 -1
  616. package/lib/esm/core-react/icons/WebFontIcon.scss +17 -17
  617. package/lib/esm/core-react/icons/classes.scss +10 -10
  618. package/lib/esm/core-react/icons/index.scss +6 -6
  619. package/lib/esm/core-react/icons/mixins.scss +25 -25
  620. package/lib/esm/core-react/icons/variables.scss +12 -21
  621. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
  622. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.js +52 -52
  623. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.js.map +1 -1
  624. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.scss +54 -54
  625. package/lib/esm/core-react/index.scss +21 -23
  626. package/lib/esm/core-react/inputs/Input.d.ts +20 -20
  627. package/lib/esm/core-react/inputs/Input.js +42 -42
  628. package/lib/esm/core-react/inputs/Input.js.map +1 -1
  629. package/lib/esm/core-react/inputs/InputLabel.d.ts +20 -20
  630. package/lib/esm/core-react/inputs/InputLabel.d.ts.map +1 -1
  631. package/lib/esm/core-react/inputs/InputLabel.js +37 -29
  632. package/lib/esm/core-react/inputs/InputLabel.js.map +1 -1
  633. package/lib/esm/core-react/inputs/InputStatus.d.ts +11 -11
  634. package/lib/esm/core-react/inputs/InputStatus.js +16 -16
  635. package/lib/esm/core-react/inputs/InputStatus.js.map +1 -1
  636. package/lib/esm/core-react/inputs/LabeledComponentProps.d.ts +33 -33
  637. package/lib/esm/core-react/inputs/LabeledComponentProps.js +8 -8
  638. package/lib/esm/core-react/inputs/LabeledComponentProps.js.map +1 -1
  639. package/lib/esm/core-react/inputs/classes.scss +8 -8
  640. package/lib/esm/core-react/inputs/iconinput/IconInput.d.ts +23 -23
  641. package/lib/esm/core-react/inputs/iconinput/IconInput.js +26 -26
  642. package/lib/esm/core-react/inputs/iconinput/IconInput.js.map +1 -1
  643. package/lib/esm/core-react/inputs/iconinput/IconInput.scss +35 -35
  644. package/lib/esm/core-react/inputs/index.scss +9 -9
  645. package/lib/esm/core-react/inputs/input-label.scss +90 -90
  646. package/lib/esm/core-react/inputs/input.scss +58 -58
  647. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts +50 -45
  648. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  649. package/lib/esm/core-react/inputs/numberinput/NumberInput.js +150 -145
  650. package/lib/esm/core-react/inputs/numberinput/NumberInput.js.map +1 -1
  651. package/lib/esm/core-react/inputs/numberinput/NumberInput.scss +88 -89
  652. package/lib/esm/core-react/inputs/variables.scss +38 -38
  653. package/lib/esm/core-react/layout-variables.scss +17 -17
  654. package/lib/esm/core-react/listbox/Listbox.d.ts +55 -55
  655. package/lib/esm/core-react/listbox/Listbox.d.ts.map +1 -1
  656. package/lib/esm/core-react/listbox/Listbox.js +216 -217
  657. package/lib/esm/core-react/listbox/Listbox.js.map +1 -1
  658. package/lib/esm/core-react/listbox/Listbox.scss +54 -54
  659. package/lib/esm/core-react/loading/LoadingBar.d.ts +29 -29
  660. package/lib/esm/core-react/loading/LoadingBar.js +36 -35
  661. package/lib/esm/core-react/loading/LoadingBar.js.map +1 -1
  662. package/lib/esm/core-react/loading/LoadingBar.scss +29 -29
  663. package/lib/esm/core-react/loading/LoadingPrompt.d.ts +39 -39
  664. package/lib/esm/core-react/loading/LoadingPrompt.js +41 -40
  665. package/lib/esm/core-react/loading/LoadingPrompt.js.map +1 -1
  666. package/lib/esm/core-react/loading/LoadingPrompt.scss +33 -33
  667. package/lib/esm/core-react/loading/LoadingSpinner.d.ts +32 -32
  668. package/lib/esm/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  669. package/lib/esm/core-react/loading/LoadingSpinner.js +27 -26
  670. package/lib/esm/core-react/loading/LoadingSpinner.js.map +1 -1
  671. package/lib/esm/core-react/loading/LoadingSpinner.scss +26 -26
  672. package/lib/esm/core-react/loading/LoadingStatus.d.ts +24 -24
  673. package/lib/esm/core-react/loading/LoadingStatus.js +34 -33
  674. package/lib/esm/core-react/loading/LoadingStatus.js.map +1 -1
  675. package/lib/esm/core-react/loading/LoadingStatus.scss +20 -20
  676. package/lib/esm/core-react/loading/index.scss +5 -5
  677. package/lib/esm/core-react/loading/mixins.scss +57 -57
  678. package/lib/esm/core-react/messagebox/MessageBox.d.ts +80 -68
  679. package/lib/esm/core-react/messagebox/MessageBox.d.ts.map +1 -1
  680. package/lib/esm/core-react/messagebox/MessageBox.js +110 -65
  681. package/lib/esm/core-react/messagebox/MessageBox.js.map +1 -1
  682. package/lib/esm/core-react/messagebox/MessageBox.scss +56 -46
  683. package/lib/esm/core-react/notification/MessageRenderer.d.ts +19 -19
  684. package/lib/esm/core-react/notification/MessageRenderer.js +77 -77
  685. package/lib/esm/core-react/notification/MessageRenderer.js.map +1 -1
  686. package/lib/esm/core-react/notification/MessageType.d.ts +22 -22
  687. package/lib/esm/core-react/notification/MessageType.d.ts.map +1 -1
  688. package/lib/esm/core-react/notification/MessageType.js +19 -19
  689. package/lib/esm/core-react/notification/MessageType.js.map +1 -1
  690. package/lib/esm/core-react/popup/Popup.d.ts +111 -111
  691. package/lib/esm/core-react/popup/Popup.d.ts.map +1 -1
  692. package/lib/esm/core-react/popup/Popup.js +415 -415
  693. package/lib/esm/core-react/popup/Popup.js.map +1 -1
  694. package/lib/esm/core-react/popup/Popup.scss +240 -240
  695. package/lib/esm/core-react/radialmenu/Annulus.d.ts +54 -54
  696. package/lib/esm/core-react/radialmenu/Annulus.js +75 -75
  697. package/lib/esm/core-react/radialmenu/Annulus.js.map +1 -1
  698. package/lib/esm/core-react/radialmenu/RadialMenu.d.ts +97 -97
  699. package/lib/esm/core-react/radialmenu/RadialMenu.js +175 -174
  700. package/lib/esm/core-react/radialmenu/RadialMenu.js.map +1 -1
  701. package/lib/esm/core-react/radialmenu/RadialMenu.scss +55 -55
  702. package/lib/esm/core-react/searchbox/SearchBox.d.ts +52 -52
  703. package/lib/esm/core-react/searchbox/SearchBox.d.ts.map +1 -1
  704. package/lib/esm/core-react/searchbox/SearchBox.js +107 -105
  705. package/lib/esm/core-react/searchbox/SearchBox.js.map +1 -1
  706. package/lib/esm/core-react/searchbox/SearchBox.scss +47 -51
  707. package/lib/esm/core-react/settings/SettingsContainer.d.ts +30 -30
  708. package/lib/esm/core-react/settings/SettingsContainer.js +115 -115
  709. package/lib/esm/core-react/settings/SettingsContainer.js.map +1 -1
  710. package/lib/esm/core-react/settings/SettingsContainer.scss +68 -66
  711. package/lib/esm/core-react/settings/SettingsManager.d.ts +132 -132
  712. package/lib/esm/core-react/settings/SettingsManager.js +113 -113
  713. package/lib/esm/core-react/settings/SettingsManager.js.map +1 -1
  714. package/lib/esm/core-react/style/baseline.scss +11 -11
  715. package/lib/esm/core-react/style/breakpoints.scss +41 -41
  716. package/lib/esm/core-react/style/colors.scss +77 -77
  717. package/lib/esm/core-react/style/index.scss +10 -17
  718. package/lib/esm/core-react/style/mixins.scss +27 -27
  719. package/lib/esm/core-react/style/opacity.scss +16 -16
  720. package/lib/esm/core-react/style/themecolors.scss +123 -129
  721. package/lib/esm/core-react/tabs/Tabs.d.ts +71 -71
  722. package/lib/esm/core-react/tabs/Tabs.js +121 -121
  723. package/lib/esm/core-react/tabs/Tabs.js.map +1 -1
  724. package/lib/esm/core-react/tabs/VerticalTabs.d.ts +9 -9
  725. package/lib/esm/core-react/tabs/VerticalTabs.js +16 -16
  726. package/lib/esm/core-react/tabs/VerticalTabs.js.map +1 -1
  727. package/lib/esm/core-react/tabs/classes.scss +7 -7
  728. package/lib/esm/core-react/tabs/index.scss +5 -5
  729. package/lib/esm/core-react/tabs/tabs.scss +96 -106
  730. package/lib/esm/core-react/tabs/vertical.scss +51 -58
  731. package/lib/esm/core-react/text/BlockText.d.ts +9 -9
  732. package/lib/esm/core-react/text/BlockText.d.ts.map +1 -1
  733. package/lib/esm/core-react/text/BlockText.js +16 -15
  734. package/lib/esm/core-react/text/BlockText.js.map +1 -1
  735. package/lib/esm/core-react/text/BodyText.d.ts +10 -9
  736. package/lib/esm/core-react/text/BodyText.d.ts.map +1 -1
  737. package/lib/esm/core-react/text/BodyText.js +17 -15
  738. package/lib/esm/core-react/text/BodyText.js.map +1 -1
  739. package/lib/esm/core-react/text/DisabledText.d.ts +6 -6
  740. package/lib/esm/core-react/text/DisabledText.d.ts.map +1 -1
  741. package/lib/esm/core-react/text/DisabledText.js +16 -15
  742. package/lib/esm/core-react/text/DisabledText.js.map +1 -1
  743. package/lib/esm/core-react/text/FilteredText.d.ts +24 -24
  744. package/lib/esm/core-react/text/FilteredText.js +36 -36
  745. package/lib/esm/core-react/text/FilteredText.js.map +1 -1
  746. package/lib/esm/core-react/text/FilteredText.scss +10 -10
  747. package/lib/esm/core-react/text/MutedText.d.ts +10 -9
  748. package/lib/esm/core-react/text/MutedText.d.ts.map +1 -1
  749. package/lib/esm/core-react/text/MutedText.js +17 -15
  750. package/lib/esm/core-react/text/MutedText.js.map +1 -1
  751. package/lib/esm/core-react/text/StyledText.d.ts +17 -16
  752. package/lib/esm/core-react/text/StyledText.d.ts.map +1 -1
  753. package/lib/esm/core-react/text/StyledText.js +17 -16
  754. package/lib/esm/core-react/text/StyledText.js.map +1 -1
  755. package/lib/esm/core-react/text/TextProps.d.ts +10 -10
  756. package/lib/esm/core-react/text/TextProps.js +8 -8
  757. package/lib/esm/core-react/text/TextProps.js.map +1 -1
  758. package/lib/esm/core-react/text/block.scss +15 -10
  759. package/lib/esm/core-react/text/body.scss +13 -10
  760. package/lib/esm/core-react/text/classes.scss +10 -10
  761. package/lib/esm/core-react/text/disabled.scss +10 -10
  762. package/lib/esm/core-react/text/index.scss +10 -10
  763. package/lib/esm/core-react/text/mixins.scss +24 -24
  764. package/lib/esm/core-react/text/muted.scss +10 -10
  765. package/lib/esm/core-react/tree/Branch.d.ts +19 -19
  766. package/lib/esm/core-react/tree/Branch.js +19 -19
  767. package/lib/esm/core-react/tree/Branch.js.map +1 -1
  768. package/lib/esm/core-react/tree/Branch.scss +12 -12
  769. package/lib/esm/core-react/tree/ExpansionToggle.d.ts +20 -20
  770. package/lib/esm/core-react/tree/ExpansionToggle.d.ts.map +1 -1
  771. package/lib/esm/core-react/tree/ExpansionToggle.js +26 -24
  772. package/lib/esm/core-react/tree/ExpansionToggle.js.map +1 -1
  773. package/lib/esm/core-react/tree/ExpansionToggle.scss +32 -28
  774. package/lib/esm/core-react/tree/Node.d.ts +79 -79
  775. package/lib/esm/core-react/tree/Node.d.ts.map +1 -1
  776. package/lib/esm/core-react/tree/Node.js +83 -84
  777. package/lib/esm/core-react/tree/Node.js.map +1 -1
  778. package/lib/esm/core-react/tree/Node.scss +68 -84
  779. package/lib/esm/core-react/tree/Placeholder.d.ts +22 -22
  780. package/lib/esm/core-react/tree/Placeholder.js +27 -27
  781. package/lib/esm/core-react/tree/Placeholder.js.map +1 -1
  782. package/lib/esm/core-react/tree/Placeholder.scss +17 -20
  783. package/lib/esm/core-react/tree/Tree.d.ts +28 -28
  784. package/lib/esm/core-react/tree/Tree.js +96 -96
  785. package/lib/esm/core-react/tree/Tree.js.map +1 -1
  786. package/lib/esm/core-react/tree/Tree.scss +21 -21
  787. package/lib/esm/core-react/uistate/LocalStateStorage.d.ts +16 -16
  788. package/lib/esm/core-react/uistate/LocalStateStorage.js +45 -45
  789. package/lib/esm/core-react/uistate/LocalStateStorage.js.map +1 -1
  790. package/lib/esm/core-react/uistate/UiStateEntry.d.ts +30 -30
  791. package/lib/esm/core-react/uistate/UiStateEntry.js +55 -55
  792. package/lib/esm/core-react/uistate/UiStateEntry.js.map +1 -1
  793. package/lib/esm/core-react/uistate/UiStateStorage.d.ts +28 -28
  794. package/lib/esm/core-react/uistate/UiStateStorage.js +18 -18
  795. package/lib/esm/core-react/uistate/UiStateStorage.js.map +1 -1
  796. package/lib/esm/core-react/utils/IconHelper.d.ts +23 -23
  797. package/lib/esm/core-react/utils/IconHelper.js +58 -58
  798. package/lib/esm/core-react/utils/IconHelper.js.map +1 -1
  799. package/lib/esm/core-react/utils/IconWebComponent.d.ts +10 -10
  800. package/lib/esm/core-react/utils/IconWebComponent.js +68 -68
  801. package/lib/esm/core-react/utils/IconWebComponent.js.map +1 -1
  802. package/lib/esm/core-react/utils/Point.d.ts +37 -37
  803. package/lib/esm/core-react/utils/Point.js +69 -69
  804. package/lib/esm/core-react/utils/Point.js.map +1 -1
  805. package/lib/esm/core-react/utils/Props.d.ts +38 -38
  806. package/lib/esm/core-react/utils/Props.d.ts.map +1 -1
  807. package/lib/esm/core-react/utils/Props.js +8 -8
  808. package/lib/esm/core-react/utils/Props.js.map +1 -1
  809. package/lib/esm/core-react/utils/Rectangle.d.ts +144 -144
  810. package/lib/esm/core-react/utils/Rectangle.js +266 -266
  811. package/lib/esm/core-react/utils/Rectangle.js.map +1 -1
  812. package/lib/esm/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
  813. package/lib/esm/core-react/utils/ScrollPositionMaintainer.js +32 -32
  814. package/lib/esm/core-react/utils/ScrollPositionMaintainer.js.map +1 -1
  815. package/lib/esm/core-react/utils/Size.d.ts +23 -23
  816. package/lib/esm/core-react/utils/Size.js +28 -28
  817. package/lib/esm/core-react/utils/Size.js.map +1 -1
  818. package/lib/esm/core-react/utils/Timer.d.ts +35 -35
  819. package/lib/esm/core-react/utils/Timer.d.ts.map +1 -1
  820. package/lib/esm/core-react/utils/Timer.js +60 -60
  821. package/lib/esm/core-react/utils/Timer.js.map +1 -1
  822. package/lib/esm/core-react/utils/UiGeometry.d.ts +20 -20
  823. package/lib/esm/core-react/utils/UiGeometry.js +24 -24
  824. package/lib/esm/core-react/utils/UiGeometry.js.map +1 -1
  825. package/lib/esm/core-react/utils/flattenChildren.d.ts +8 -8
  826. package/lib/esm/core-react/utils/flattenChildren.js +23 -23
  827. package/lib/esm/core-react/utils/flattenChildren.js.map +1 -1
  828. package/lib/esm/core-react/utils/getBestBWContrastColor.d.ts +7 -7
  829. package/lib/esm/core-react/utils/getBestBWContrastColor.js +18 -18
  830. package/lib/esm/core-react/utils/getBestBWContrastColor.js.map +1 -1
  831. package/lib/esm/core-react/utils/getCssVariable.d.ts +11 -11
  832. package/lib/esm/core-react/utils/getCssVariable.js +26 -26
  833. package/lib/esm/core-react/utils/getCssVariable.js.map +1 -1
  834. package/lib/esm/core-react/utils/getDisplayName.d.ts +8 -8
  835. package/lib/esm/core-react/utils/getDisplayName.js +17 -17
  836. package/lib/esm/core-react/utils/getDisplayName.js.map +1 -1
  837. package/lib/esm/core-react/utils/getUserColor.d.ts +7 -7
  838. package/lib/esm/core-react/utils/getUserColor.js +34 -34
  839. package/lib/esm/core-react/utils/getUserColor.js.map +1 -1
  840. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
  841. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  842. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.js +16 -16
  843. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.js.map +1 -1
  844. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
  845. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js +84 -85
  846. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  847. package/lib/esm/core-react/utils/hooks/useDisposable.d.ts +17 -17
  848. package/lib/esm/core-react/utils/hooks/useDisposable.js +33 -33
  849. package/lib/esm/core-react/utils/hooks/useDisposable.js.map +1 -1
  850. package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
  851. package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.js +22 -22
  852. package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.js.map +1 -1
  853. package/lib/esm/core-react/utils/hooks/useEventListener.d.ts +11 -11
  854. package/lib/esm/core-react/utils/hooks/useEventListener.js +39 -39
  855. package/lib/esm/core-react/utils/hooks/useEventListener.js.map +1 -1
  856. package/lib/esm/core-react/utils/hooks/useInterval.d.ts +5 -5
  857. package/lib/esm/core-react/utils/hooks/useInterval.js +32 -32
  858. package/lib/esm/core-react/utils/hooks/useInterval.js.map +1 -1
  859. package/lib/esm/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
  860. package/lib/esm/core-react/utils/hooks/useLifecycleLogging.js +60 -60
  861. package/lib/esm/core-react/utils/hooks/useLifecycleLogging.js.map +1 -1
  862. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
  863. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  864. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.js +88 -88
  865. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.js.map +1 -1
  866. package/lib/esm/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
  867. package/lib/esm/core-react/utils/hooks/useProximityToMouse.d.ts.map +1 -1
  868. package/lib/esm/core-react/utils/hooks/useProximityToMouse.js +102 -102
  869. package/lib/esm/core-react/utils/hooks/useProximityToMouse.js.map +1 -1
  870. package/lib/esm/core-react/utils/hooks/useRefEffect.d.ts +7 -7
  871. package/lib/esm/core-react/utils/hooks/useRefEffect.js +19 -19
  872. package/lib/esm/core-react/utils/hooks/useRefEffect.js.map +1 -1
  873. package/lib/esm/core-react/utils/hooks/useRefState.d.ts +21 -21
  874. package/lib/esm/core-react/utils/hooks/useRefState.js +31 -31
  875. package/lib/esm/core-react/utils/hooks/useRefState.js.map +1 -1
  876. package/lib/esm/core-react/utils/hooks/useRefs.d.ts +12 -12
  877. package/lib/esm/core-react/utils/hooks/useRefs.d.ts.map +1 -1
  878. package/lib/esm/core-react/utils/hooks/useRefs.js +48 -48
  879. package/lib/esm/core-react/utils/hooks/useRefs.js.map +1 -1
  880. package/lib/esm/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
  881. package/lib/esm/core-react/utils/hooks/useResizeObserver.js +196 -201
  882. package/lib/esm/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  883. package/lib/esm/core-react/utils/hooks/useTargeted.d.ts +8 -8
  884. package/lib/esm/core-react/utils/hooks/useTargeted.js +24 -24
  885. package/lib/esm/core-react/utils/hooks/useTargeted.js.map +1 -1
  886. package/lib/esm/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
  887. package/lib/esm/core-react/utils/hooks/useThrottledFn.js +21 -21
  888. package/lib/esm/core-react/utils/hooks/useThrottledFn.js.map +1 -1
  889. package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
  890. package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.js +23 -23
  891. package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.js.map +1 -1
  892. package/lib/esm/core-react/utils/isPromiseLike.d.ts +7 -7
  893. package/lib/esm/core-react/utils/isPromiseLike.js +13 -13
  894. package/lib/esm/core-react/utils/isPromiseLike.js.map +1 -1
  895. package/lib/esm/core-react/utils/shallowDiffers.d.ts +11 -11
  896. package/lib/esm/core-react/utils/shallowDiffers.js +25 -25
  897. package/lib/esm/core-react/utils/shallowDiffers.js.map +1 -1
  898. package/lib/esm/core-react/utils/typeUtils.d.ts +7 -7
  899. package/lib/esm/core-react/utils/typeUtils.d.ts.map +1 -1
  900. package/lib/esm/core-react/utils/typeUtils.js +8 -8
  901. package/lib/esm/core-react/utils/typeUtils.js.map +1 -1
  902. package/lib/esm/core-react.d.ts +236 -235
  903. package/lib/esm/core-react.d.ts.map +1 -1
  904. package/lib/esm/core-react.js +241 -240
  905. package/lib/esm/core-react.js.map +1 -1
  906. package/lib/public/locales/en/UiCore.json +30 -30
  907. package/package.json +23 -34
  908. package/ThirdPartyNotices.md +0 -28
  909. package/lib/cjs/core-react/button/blue-large.scss +0 -12
  910. package/lib/cjs/core-react/button/blue.scss +0 -25
  911. package/lib/cjs/core-react/button/button.scss +0 -70
  912. package/lib/cjs/core-react/button/classes.scss +0 -14
  913. package/lib/cjs/core-react/button/disabled-large.scss +0 -12
  914. package/lib/cjs/core-react/button/disabled.scss +0 -17
  915. package/lib/cjs/core-react/button/hollow-large.scss +0 -13
  916. package/lib/cjs/core-react/button/hollow.scss +0 -30
  917. package/lib/cjs/core-react/button/index.scss +0 -14
  918. package/lib/cjs/core-react/button/primary-large.scss +0 -12
  919. package/lib/cjs/core-react/button/primary.scss +0 -25
  920. package/lib/cjs/core-react/button/variables.scss +0 -22
  921. package/lib/cjs/core-react/checkbox/checkbox.scss +0 -124
  922. package/lib/cjs/core-react/checkbox/classes.scss +0 -8
  923. package/lib/cjs/core-react/checkbox/index.scss +0 -8
  924. package/lib/cjs/core-react/style/data-viz.scss +0 -20
  925. package/lib/cjs/core-react/style/itwinui-overrides.scss +0 -24
  926. package/lib/cjs/core-react/style/space.scss +0 -13
  927. package/lib/cjs/core-react/style/speed.scss +0 -12
  928. package/lib/cjs/core-react/style/typography.scss +0 -44
  929. package/lib/cjs/core-react/style/variables.scss +0 -12
  930. package/lib/esm/core-react/button/blue-large.scss +0 -12
  931. package/lib/esm/core-react/button/blue.scss +0 -25
  932. package/lib/esm/core-react/button/button.scss +0 -70
  933. package/lib/esm/core-react/button/classes.scss +0 -14
  934. package/lib/esm/core-react/button/disabled-large.scss +0 -12
  935. package/lib/esm/core-react/button/disabled.scss +0 -17
  936. package/lib/esm/core-react/button/hollow-large.scss +0 -13
  937. package/lib/esm/core-react/button/hollow.scss +0 -30
  938. package/lib/esm/core-react/button/index.scss +0 -14
  939. package/lib/esm/core-react/button/primary-large.scss +0 -12
  940. package/lib/esm/core-react/button/primary.scss +0 -25
  941. package/lib/esm/core-react/button/variables.scss +0 -22
  942. package/lib/esm/core-react/checkbox/checkbox.scss +0 -124
  943. package/lib/esm/core-react/checkbox/classes.scss +0 -8
  944. package/lib/esm/core-react/checkbox/index.scss +0 -8
  945. package/lib/esm/core-react/style/data-viz.scss +0 -20
  946. package/lib/esm/core-react/style/itwinui-overrides.scss +0 -24
  947. package/lib/esm/core-react/style/space.scss +0 -13
  948. package/lib/esm/core-react/style/speed.scss +0 -12
  949. package/lib/esm/core-react/style/typography.scss +0 -44
  950. package/lib/esm/core-react/style/variables.scss +0 -12
@@ -1,40 +1,40 @@
1
- /** @packageDocumentation
2
- * @module Utilities
3
- */
4
- import * as React from "react";
5
- /** Uses ResizeObserver API to notify about element bound changes.
6
- * @internal
7
- */
8
- export declare function useResizeObserver<T extends Element>(onResize?: (width: number, height: number) => void): (instance: Element | null) => void;
9
- /** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector
10
- * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly
11
- * handles observing element in pop-out/child windows.
12
- * @internal
13
- */
14
- export declare function useLayoutResizeObserver(inElement: HTMLElement | null, onResize?: (width?: number, height?: number) => void): (number | undefined)[];
15
- /** Prop the ElementResizeObserver sends to the render function.
16
- * @public
17
- */
18
- export interface RenderPropsArgs {
19
- width?: number;
20
- height?: number;
21
- }
22
- /** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles
23
- * observing element in pop-out/child windows.
24
- * @public
25
- */
26
- export declare function ElementResizeObserver({ watchedElement, render }: {
27
- watchedElement: HTMLElement | null;
28
- render: (props: RenderPropsArgs) => JSX.Element;
29
- }): JSX.Element;
30
- /** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when
31
- * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then
32
- * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report
33
- * size changes from its parent container.
34
- * @public
35
- */
36
- export declare function ResizableContainerObserver({ onResize, children }: {
37
- onResize: (width: number, height: number) => void;
38
- children?: React.ReactNode;
39
- }): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module Utilities
3
+ */
4
+ import * as React from "react";
5
+ /** Uses ResizeObserver API to notify about element bound changes.
6
+ * @internal
7
+ */
8
+ export declare function useResizeObserver<T extends Element>(onResize?: (width: number, height: number) => void): (instance: Element | null) => void;
9
+ /** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector
10
+ * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly
11
+ * handles observing element in pop-out/child windows.
12
+ * @internal
13
+ */
14
+ export declare function useLayoutResizeObserver(inElement: HTMLElement | null, onResize?: (width?: number, height?: number) => void): (number | undefined)[];
15
+ /** Prop the ElementResizeObserver sends to the render function.
16
+ * @public
17
+ */
18
+ export interface RenderPropsArgs {
19
+ width?: number;
20
+ height?: number;
21
+ }
22
+ /** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles
23
+ * observing element in pop-out/child windows.
24
+ * @public
25
+ */
26
+ export declare function ElementResizeObserver({ watchedElement, render }: {
27
+ watchedElement: HTMLElement | null;
28
+ render: (props: RenderPropsArgs) => JSX.Element;
29
+ }): JSX.Element;
30
+ /** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when
31
+ * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then
32
+ * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report
33
+ * size changes from its parent container.
34
+ * @public
35
+ */
36
+ export declare function ResizableContainerObserver({ onResize, children }: {
37
+ onResize: (width: number, height: number) => void;
38
+ children?: React.ReactNode;
39
+ }): JSX.Element;
40
40
  //# sourceMappingURL=useResizeObserver.d.ts.map
@@ -1,209 +1,204 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ResizableContainerObserver = exports.ElementResizeObserver = exports.useLayoutResizeObserver = exports.useResizeObserver = void 0;
4
- /*---------------------------------------------------------------------------------------------
5
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
6
- * See LICENSE.md in the project root for license terms and full copyright notice.
7
- *--------------------------------------------------------------------------------------------*/
8
- /** @packageDocumentation
9
- * @module Utilities
10
- */
11
- const React = require("react");
12
- const ResizeObserverPolyfill_1 = require("./ResizeObserverPolyfill");
13
- const useRefEffect_1 = require("./useRefEffect");
14
- const useRefs_1 = require("./useRefs");
15
- /** Uses ResizeObserver API to notify about element bound changes.
16
- * @internal
17
- */
18
- function useResizeObserver(onResize) {
19
- const [bounds, setBounds] = React.useState({ width: 0, height: 0 });
20
- const resizeObserver = React.useRef(null);
21
- const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active
22
- const isMountedRef = React.useRef(false);
23
- const owningWindowRef = React.useRef(null);
24
- // istanbul ignore next
25
- const resizeObserverCleanup = () => {
26
- var _a;
27
- if (rafRef.current)
28
- owningWindowRef.current.cancelAnimationFrame(rafRef.current);
29
- (_a = resizeObserver.current) === null || _a === void 0 ? void 0 : _a.disconnect();
30
- resizeObserver.current = null;
31
- };
32
- React.useEffect(() => {
33
- isMountedRef.current = true;
34
- return () => {
35
- var _a;
36
- isMountedRef.current = false;
37
- if (rafRef.current)
38
- owningWindowRef.current.cancelAnimationFrame(rafRef.current);
39
- (_a = owningWindowRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener("beforeunload", resizeObserverCleanup);
40
- };
41
- }, []);
42
- const processResize = React.useCallback((target) => {
43
- const newBounds = target.getBoundingClientRect();
44
- // istanbul ignore else
45
- if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
46
- setBounds(newBounds);
47
- onResize && onResize(newBounds.width, newBounds.height);
48
- }
49
- }, [onResize, bounds.height, bounds.width]);
50
- const handleResize = React.useCallback((entries) => {
51
- // istanbul ignore if
52
- if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {
53
- return;
54
- }
55
- const target = entries[0].target;
56
- // istanbul ignore next
57
- owningWindowRef.current && owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
58
- owningWindowRef.current = target.ownerDocument.defaultView;
59
- // istanbul ignore else
60
- if (owningWindowRef.current) {
61
- owningWindowRef.current.addEventListener("unload", resizeObserverCleanup);
62
- // using requestAnimationFrame to stop the "ResizeObserver loop completed with undelivered notifications." and
63
- // "ResizeObserver loop limit exceeded" messages reported to window.onError
64
- rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));
65
- }
66
- }, [processResize]);
67
- const observerRef = (0, useRefEffect_1.useRefEffect)((instance) => {
68
- resizeObserver.current = new ResizeObserverPolyfill_1.ResizeObserver(handleResize);
69
- if (instance) {
70
- resizeObserver.current.observe(instance);
71
- const newBounds = instance.getBoundingClientRect();
72
- onResize && onResize(newBounds.width, newBounds.height);
73
- setBounds(newBounds);
74
- }
75
- return () => {
76
- var _a;
77
- instance && ( /* istanbul ignore next */(_a = resizeObserver.current) === null || _a === void 0 ? void 0 : _a.unobserve(instance));
78
- resizeObserver.current = null;
79
- };
80
- }, [handleResize, onResize]);
81
- const handleRef = React.useCallback((instance) => {
82
- const newBounds = instance && instance.getBoundingClientRect();
83
- // istanbul ignore if
84
- if (newBounds && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
85
- setBounds(newBounds);
86
- onResize && onResize(newBounds.width, newBounds.height);
87
- }
88
- }, [bounds.height, bounds.width, onResize]);
89
- const ref = (0, useRefs_1.useRefs)(handleRef, observerRef);
90
- return ref;
91
- }
92
- exports.useResizeObserver = useResizeObserver;
93
- /** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector
94
- * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly
95
- * handles observing element in pop-out/child windows.
96
- * @internal
97
- */
98
- function useLayoutResizeObserver(inElement, onResize) {
99
- const inBoundingRect = inElement === null || inElement === void 0 ? void 0 : inElement.getBoundingClientRect();
100
- const [bounds, setBounds] = React.useState({ width: inBoundingRect === null || inBoundingRect === void 0 ? void 0 : inBoundingRect.width, height: inBoundingRect === null || inBoundingRect === void 0 ? void 0 : inBoundingRect.height });
101
- const [watchedElement, setWatchedElement] = React.useState(inElement);
102
- const resizeObserver = React.useRef(null);
103
- const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active
104
- const isMountedRef = React.useRef(false);
105
- const owningWindowRef = React.useRef(null);
106
- // istanbul ignore next
107
- const resizeObserverCleanup = () => {
108
- var _a;
109
- if (rafRef.current)
110
- owningWindowRef.current.cancelAnimationFrame(rafRef.current);
111
- (_a = resizeObserver.current) === null || _a === void 0 ? void 0 : _a.disconnect();
112
- resizeObserver.current = null;
113
- };
114
- React.useEffect(() => {
115
- isMountedRef.current = true;
116
- setWatchedElement(inElement);
117
- // istanbul ignore next
118
- if (inElement) {
119
- const newBounds = inElement.getBoundingClientRect();
120
- onResize && onResize(newBounds.width, newBounds.height);
121
- setBounds(newBounds);
122
- }
123
- return () => {
124
- isMountedRef.current = false;
125
- (rafRef.current && owningWindowRef.current) && owningWindowRef.current.cancelAnimationFrame(rafRef.current);
126
- owningWindowRef.current && owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
127
- };
128
- }, [onResize, inElement]);
129
- const processResize = React.useCallback((target) => {
130
- const newBounds = target.getBoundingClientRect();
131
- // istanbul ignore next
132
- if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
133
- onResize && onResize(newBounds.width, newBounds.height);
134
- setBounds(newBounds);
135
- }
136
- }, [bounds.height, bounds.width, onResize]);
137
- const handleResize = React.useCallback((entries) => {
138
- // istanbul ignore next
139
- if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {
140
- return;
141
- }
142
- const target = entries[0].target;
143
- // istanbul ignore next
144
- if (owningWindowRef.current)
145
- owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
146
- owningWindowRef.current = target.ownerDocument.defaultView;
147
- // istanbul ignore else
148
- if (owningWindowRef.current) {
149
- owningWindowRef.current.addEventListener("unload", resizeObserverCleanup);
150
- // using requestAnimationFrame to stop the "ResizeObserver loop completed with undelivered notifications." and
151
- // "ResizeObserver loop limit exceeded" messages reported to window.onError
152
- rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));
153
- }
154
- }, [processResize]);
155
- React.useLayoutEffect(() => {
156
- if (!watchedElement) {
157
- return;
158
- }
159
- resizeObserver.current = new ResizeObserverPolyfill_1.ResizeObserver(handleResize);
160
- resizeObserver.current.observe(watchedElement);
161
- return () => {
162
- var _a;
163
- // istanbul ignore next
164
- (_a = resizeObserver.current) === null || _a === void 0 ? void 0 : _a.disconnect();
165
- resizeObserver.current = null;
166
- };
167
- }, [handleResize, watchedElement]);
168
- return [bounds.width, bounds.height];
169
- }
170
- exports.useLayoutResizeObserver = useLayoutResizeObserver;
171
- /** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles
172
- * observing element in pop-out/child windows.
173
- * @public
174
- */
175
- function ElementResizeObserver({ watchedElement, render }) {
176
- const [width, height] = useLayoutResizeObserver(watchedElement);
177
- return render({ width, height });
178
- }
179
- exports.ElementResizeObserver = ElementResizeObserver;
180
- /** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when
181
- * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then
182
- * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report
183
- * size changes from its parent container.
184
- * @public
185
- */
186
- function ResizableContainerObserver({ onResize, children }) {
187
- const containerRef = React.useRef(null); // set to non-zero when requestAnimationFrame processing is active
188
- const [containerElement, setContainerElement] = React.useState(null);
189
- const isMountedRef = React.useRef(false);
190
- const hasChildren = React.Children.count(children) !== 0;
191
- // if no children are specified then monitor size of parent element.
192
- React.useEffect(() => {
193
- // istanbul ignore next
194
- if (!isMountedRef.current && containerRef.current) {
195
- isMountedRef.current = true;
196
- const hasParent = !!containerRef.current.parentElement;
197
- setContainerElement(hasChildren && hasParent ? containerRef.current : containerRef.current.parentElement);
198
- }
199
- }, [hasChildren]);
200
- const processResize = React.useCallback((width, height) => {
201
- // istanbul ignore next
202
- onResize(width !== null && width !== void 0 ? width : 0, height !== null && height !== void 0 ? height : 0);
203
- }, [onResize]);
204
- useLayoutResizeObserver(containerElement, processResize);
205
- const style = hasChildren ? { width: "100%", height: "100%" } : { display: "none" };
206
- return (React.createElement("div", { ref: containerRef, className: "uicore-resizable-container", style: style }, hasChildren && children));
207
- }
208
- exports.ResizableContainerObserver = ResizableContainerObserver;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResizableContainerObserver = exports.ElementResizeObserver = exports.useLayoutResizeObserver = exports.useResizeObserver = void 0;
4
+ /*---------------------------------------------------------------------------------------------
5
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
6
+ * See LICENSE.md in the project root for license terms and full copyright notice.
7
+ *--------------------------------------------------------------------------------------------*/
8
+ /** @packageDocumentation
9
+ * @module Utilities
10
+ */
11
+ const React = require("react");
12
+ const ResizeObserverPolyfill_1 = require("./ResizeObserverPolyfill");
13
+ const useRefEffect_1 = require("./useRefEffect");
14
+ const useRefs_1 = require("./useRefs");
15
+ /** Uses ResizeObserver API to notify about element bound changes.
16
+ * @internal
17
+ */
18
+ function useResizeObserver(onResize) {
19
+ const [bounds, setBounds] = React.useState({ width: 0, height: 0 });
20
+ const resizeObserver = React.useRef(null);
21
+ const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active
22
+ const isMountedRef = React.useRef(false);
23
+ const owningWindowRef = React.useRef(null);
24
+ // istanbul ignore next
25
+ const resizeObserverCleanup = () => {
26
+ if (rafRef.current)
27
+ owningWindowRef.current.cancelAnimationFrame(rafRef.current);
28
+ resizeObserver.current?.disconnect();
29
+ resizeObserver.current = null;
30
+ };
31
+ React.useEffect(() => {
32
+ isMountedRef.current = true;
33
+ return () => {
34
+ isMountedRef.current = false;
35
+ if (rafRef.current)
36
+ owningWindowRef.current.cancelAnimationFrame(rafRef.current);
37
+ owningWindowRef.current?.removeEventListener("beforeunload", resizeObserverCleanup);
38
+ };
39
+ }, []);
40
+ const processResize = React.useCallback((target) => {
41
+ const newBounds = target.getBoundingClientRect();
42
+ // istanbul ignore else
43
+ if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
44
+ setBounds(newBounds);
45
+ onResize && onResize(newBounds.width, newBounds.height);
46
+ }
47
+ }, [onResize, bounds.height, bounds.width]);
48
+ const handleResize = React.useCallback((entries) => {
49
+ // istanbul ignore if
50
+ if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {
51
+ return;
52
+ }
53
+ const target = entries[0].target;
54
+ // istanbul ignore next
55
+ owningWindowRef.current && owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
56
+ owningWindowRef.current = target.ownerDocument.defaultView;
57
+ // istanbul ignore else
58
+ if (owningWindowRef.current) {
59
+ owningWindowRef.current.addEventListener("unload", resizeObserverCleanup);
60
+ // using requestAnimationFrame to stop the "ResizeObserver loop completed with undelivered notifications." and
61
+ // "ResizeObserver loop limit exceeded" messages reported to window.onError
62
+ rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));
63
+ }
64
+ }, [processResize]);
65
+ const observerRef = (0, useRefEffect_1.useRefEffect)((instance) => {
66
+ resizeObserver.current = new ResizeObserverPolyfill_1.ResizeObserver(handleResize);
67
+ if (instance) {
68
+ resizeObserver.current.observe(instance);
69
+ const newBounds = instance.getBoundingClientRect();
70
+ onResize && onResize(newBounds.width, newBounds.height);
71
+ setBounds(newBounds);
72
+ }
73
+ return () => {
74
+ instance && ( /* istanbul ignore next */resizeObserver.current?.unobserve(instance));
75
+ resizeObserver.current = null;
76
+ };
77
+ }, [handleResize, onResize]);
78
+ const handleRef = React.useCallback((instance) => {
79
+ const newBounds = instance && instance.getBoundingClientRect();
80
+ // istanbul ignore if
81
+ if (newBounds && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
82
+ setBounds(newBounds);
83
+ onResize && onResize(newBounds.width, newBounds.height);
84
+ }
85
+ }, [bounds.height, bounds.width, onResize]);
86
+ const ref = (0, useRefs_1.useRefs)(handleRef, observerRef);
87
+ return ref;
88
+ }
89
+ exports.useResizeObserver = useResizeObserver;
90
+ /** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector
91
+ * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly
92
+ * handles observing element in pop-out/child windows.
93
+ * @internal
94
+ */
95
+ function useLayoutResizeObserver(inElement, onResize) {
96
+ const inBoundingRect = inElement?.getBoundingClientRect();
97
+ const [bounds, setBounds] = React.useState({ width: inBoundingRect?.width, height: inBoundingRect?.height });
98
+ const [watchedElement, setWatchedElement] = React.useState(inElement);
99
+ const resizeObserver = React.useRef(null);
100
+ const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active
101
+ const isMountedRef = React.useRef(false);
102
+ const owningWindowRef = React.useRef(null);
103
+ // istanbul ignore next
104
+ const resizeObserverCleanup = () => {
105
+ if (rafRef.current)
106
+ owningWindowRef.current.cancelAnimationFrame(rafRef.current);
107
+ resizeObserver.current?.disconnect();
108
+ resizeObserver.current = null;
109
+ };
110
+ React.useEffect(() => {
111
+ isMountedRef.current = true;
112
+ setWatchedElement(inElement);
113
+ // istanbul ignore next
114
+ if (inElement) {
115
+ const newBounds = inElement.getBoundingClientRect();
116
+ onResize && onResize(newBounds.width, newBounds.height);
117
+ setBounds(newBounds);
118
+ }
119
+ return () => {
120
+ isMountedRef.current = false;
121
+ (rafRef.current && owningWindowRef.current) && owningWindowRef.current.cancelAnimationFrame(rafRef.current);
122
+ owningWindowRef.current && owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
123
+ };
124
+ }, [onResize, inElement]);
125
+ const processResize = React.useCallback((target) => {
126
+ const newBounds = target.getBoundingClientRect();
127
+ // istanbul ignore next
128
+ if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {
129
+ onResize && onResize(newBounds.width, newBounds.height);
130
+ setBounds(newBounds);
131
+ }
132
+ }, [bounds.height, bounds.width, onResize]);
133
+ const handleResize = React.useCallback((entries) => {
134
+ // istanbul ignore next
135
+ if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {
136
+ return;
137
+ }
138
+ const target = entries[0].target;
139
+ // istanbul ignore next
140
+ if (owningWindowRef.current)
141
+ owningWindowRef.current.removeEventListener("beforeunload", resizeObserverCleanup);
142
+ owningWindowRef.current = target.ownerDocument.defaultView;
143
+ // istanbul ignore else
144
+ if (owningWindowRef.current) {
145
+ owningWindowRef.current.addEventListener("unload", resizeObserverCleanup);
146
+ // using requestAnimationFrame to stop the "ResizeObserver loop completed with undelivered notifications." and
147
+ // "ResizeObserver loop limit exceeded" messages reported to window.onError
148
+ rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));
149
+ }
150
+ }, [processResize]);
151
+ React.useLayoutEffect(() => {
152
+ if (!watchedElement) {
153
+ return;
154
+ }
155
+ resizeObserver.current = new ResizeObserverPolyfill_1.ResizeObserver(handleResize);
156
+ resizeObserver.current.observe(watchedElement);
157
+ return () => {
158
+ // istanbul ignore next
159
+ resizeObserver.current?.disconnect();
160
+ resizeObserver.current = null;
161
+ };
162
+ }, [handleResize, watchedElement]);
163
+ return [bounds.width, bounds.height];
164
+ }
165
+ exports.useLayoutResizeObserver = useLayoutResizeObserver;
166
+ /** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles
167
+ * observing element in pop-out/child windows.
168
+ * @public
169
+ */
170
+ function ElementResizeObserver({ watchedElement, render }) {
171
+ const [width, height] = useLayoutResizeObserver(watchedElement);
172
+ return render({ width, height });
173
+ }
174
+ exports.ElementResizeObserver = ElementResizeObserver;
175
+ /** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when
176
+ * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then
177
+ * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report
178
+ * size changes from its parent container.
179
+ * @public
180
+ */
181
+ function ResizableContainerObserver({ onResize, children }) {
182
+ const containerRef = React.useRef(null); // set to non-zero when requestAnimationFrame processing is active
183
+ const [containerElement, setContainerElement] = React.useState(null);
184
+ const isMountedRef = React.useRef(false);
185
+ const hasChildren = React.Children.count(children) !== 0;
186
+ // if no children are specified then monitor size of parent element.
187
+ React.useEffect(() => {
188
+ // istanbul ignore next
189
+ if (!isMountedRef.current && containerRef.current) {
190
+ isMountedRef.current = true;
191
+ const hasParent = !!containerRef.current.parentElement;
192
+ setContainerElement(hasChildren && hasParent ? containerRef.current : containerRef.current.parentElement);
193
+ }
194
+ }, [hasChildren]);
195
+ const processResize = React.useCallback((width, height) => {
196
+ // istanbul ignore next
197
+ onResize(width ?? 0, height ?? 0);
198
+ }, [onResize]);
199
+ useLayoutResizeObserver(containerElement, processResize);
200
+ const style = hasChildren ? { width: "100%", height: "100%" } : { display: "none" };
201
+ return (React.createElement("div", { ref: containerRef, className: "uicore-resizable-container", style: style }, hasChildren && children));
202
+ }
203
+ exports.ResizableContainerObserver = ResizableContainerObserver;
209
204
  //# sourceMappingURL=useResizeObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useResizeObserver.js","sourceRoot":"","sources":["../../../../../src/core-react/utils/hooks/useResizeObserver.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\nimport * as React from \"react\";\r\nimport { ResizeObserver } from \"./ResizeObserverPolyfill\";\r\nimport { useRefEffect } from \"./useRefEffect\";\r\nimport { useRefs } from \"./useRefs\";\r\n\r\n/** Uses ResizeObserver API to notify about element bound changes.\r\n * @internal\r\n */\r\nexport function useResizeObserver<T extends Element>(onResize?: (width: number, height: number) => void) {\r\n const [bounds, setBounds] = React.useState({ width: 0, height: 0 });\r\n const resizeObserver = React.useRef<ResizeObserver | null>(null);\r\n const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active\r\n const isMountedRef = React.useRef(false);\r\n const owningWindowRef = React.useRef<any>(null);\r\n\r\n // istanbul ignore next\r\n const resizeObserverCleanup = () => {\r\n if (rafRef.current)\r\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\r\n\r\n resizeObserver.current?.disconnect();\r\n resizeObserver.current = null;\r\n };\r\n\r\n React.useEffect(() => {\r\n isMountedRef.current = true;\r\n return () => {\r\n isMountedRef.current = false;\r\n if (rafRef.current)\r\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\r\n owningWindowRef.current?.removeEventListener(\"beforeunload\", resizeObserverCleanup);\r\n };\r\n }, []);\r\n\r\n const processResize = React.useCallback((target: HTMLElement) => {\r\n const newBounds = target.getBoundingClientRect();\r\n // istanbul ignore else\r\n if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\r\n setBounds(newBounds);\r\n onResize && onResize(newBounds.width, newBounds.height);\r\n }\r\n }, [onResize, bounds.height, bounds.width]);\r\n\r\n const handleResize = React.useCallback((entries: any[]) => {\r\n // istanbul ignore if\r\n if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {\r\n return;\r\n }\r\n const target = entries[0].target as HTMLElement;\r\n // istanbul ignore next\r\n owningWindowRef.current && owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\r\n\r\n owningWindowRef.current = target.ownerDocument.defaultView;\r\n // istanbul ignore else\r\n if (owningWindowRef.current) {\r\n owningWindowRef.current.addEventListener(\"unload\", resizeObserverCleanup);\r\n\r\n // using requestAnimationFrame to stop the \"ResizeObserver loop completed with undelivered notifications.\" and\r\n // \"ResizeObserver loop limit exceeded\" messages reported to window.onError\r\n rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));\r\n }\r\n }, [processResize]);\r\n\r\n const observerRef = useRefEffect((instance: T | null) => {\r\n resizeObserver.current = new ResizeObserver(handleResize);\r\n if (instance) {\r\n resizeObserver.current.observe(instance);\r\n const newBounds = instance.getBoundingClientRect();\r\n onResize && onResize(newBounds.width, newBounds.height);\r\n setBounds(newBounds);\r\n }\r\n\r\n return () => {\r\n instance && ( /* istanbul ignore next */resizeObserver.current?.unobserve(instance));\r\n resizeObserver.current = null;\r\n };\r\n }, [handleResize, onResize]);\r\n\r\n const handleRef = React.useCallback((instance: Element | null) => {\r\n const newBounds = instance && instance.getBoundingClientRect();\r\n // istanbul ignore if\r\n if (newBounds && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\r\n setBounds(newBounds);\r\n onResize && onResize(newBounds.width, newBounds.height);\r\n }\r\n }, [bounds.height, bounds.width, onResize]);\r\n\r\n const ref = useRefs(handleRef, observerRef);\r\n return ref;\r\n}\r\n\r\n/** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector\r\n * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly\r\n * handles observing element in pop-out/child windows.\r\n * @internal\r\n */\r\nexport function useLayoutResizeObserver(inElement: HTMLElement | null, onResize?: (width?: number, height?: number) => void) {\r\n const inBoundingRect = inElement?.getBoundingClientRect();\r\n const [bounds, setBounds] = React.useState<{ width?: number, height?: number }>({ width: inBoundingRect?.width, height: inBoundingRect?.height });\r\n const [watchedElement, setWatchedElement] = React.useState(inElement);\r\n const resizeObserver = React.useRef<ResizeObserver | null>(null);\r\n const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active\r\n const isMountedRef = React.useRef(false);\r\n const owningWindowRef = React.useRef<any>(null);\r\n\r\n // istanbul ignore next\r\n const resizeObserverCleanup = () => {\r\n if (rafRef.current)\r\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\r\n\r\n resizeObserver.current?.disconnect();\r\n resizeObserver.current = null;\r\n };\r\n\r\n React.useEffect(() => {\r\n isMountedRef.current = true;\r\n setWatchedElement(inElement);\r\n\r\n // istanbul ignore next\r\n if (inElement) {\r\n const newBounds = inElement.getBoundingClientRect();\r\n onResize && onResize(newBounds.width, newBounds.height);\r\n setBounds(newBounds);\r\n }\r\n\r\n return () => {\r\n isMountedRef.current = false;\r\n (rafRef.current && owningWindowRef.current) && owningWindowRef.current.cancelAnimationFrame(rafRef.current);\r\n owningWindowRef.current && owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\r\n };\r\n }, [onResize, inElement]);\r\n\r\n const processResize = React.useCallback((target: HTMLElement) => {\r\n const newBounds = target.getBoundingClientRect();\r\n // istanbul ignore next\r\n if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\r\n onResize && onResize(newBounds.width, newBounds.height);\r\n setBounds(newBounds);\r\n }\r\n }, [bounds.height, bounds.width, onResize]);\r\n\r\n const handleResize = React.useCallback((entries: any[]) => {\r\n // istanbul ignore next\r\n if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {\r\n return;\r\n }\r\n const target = entries[0].target as HTMLElement;\r\n // istanbul ignore next\r\n if (owningWindowRef.current)\r\n owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\r\n\r\n owningWindowRef.current = target.ownerDocument.defaultView;\r\n // istanbul ignore else\r\n if (owningWindowRef.current) {\r\n owningWindowRef.current.addEventListener(\"unload\", resizeObserverCleanup);\r\n\r\n // using requestAnimationFrame to stop the \"ResizeObserver loop completed with undelivered notifications.\" and\r\n // \"ResizeObserver loop limit exceeded\" messages reported to window.onError\r\n rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));\r\n }\r\n }, [processResize]);\r\n\r\n React.useLayoutEffect(() => {\r\n if (!watchedElement) {\r\n return;\r\n }\r\n resizeObserver.current = new ResizeObserver(handleResize);\r\n resizeObserver.current.observe(watchedElement);\r\n return () => {\r\n // istanbul ignore next\r\n resizeObserver.current?.disconnect();\r\n resizeObserver.current = null;\r\n };\r\n }, [handleResize, watchedElement]);\r\n\r\n return [bounds.width, bounds.height];\r\n}\r\n\r\n/** Prop the ElementResizeObserver sends to the render function.\r\n * @public\r\n */\r\nexport interface RenderPropsArgs {\r\n width?: number;\r\n height?: number;\r\n}\r\n\r\n/** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles\r\n * observing element in pop-out/child windows.\r\n * @public\r\n */\r\nexport function ElementResizeObserver({ watchedElement, render }: { watchedElement: HTMLElement | null, render: (props: RenderPropsArgs) => JSX.Element }) {\r\n const [width, height] = useLayoutResizeObserver(watchedElement);\r\n return render({ width, height });\r\n}\r\n\r\n/** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when\r\n * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then\r\n * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report\r\n * size changes from its parent container.\r\n * @public\r\n */\r\nexport function ResizableContainerObserver({ onResize, children }: { onResize: (width: number, height: number) => void, children?: React.ReactNode }) {\r\n const containerRef = React.useRef<HTMLDivElement>(null); // set to non-zero when requestAnimationFrame processing is active\r\n const [containerElement, setContainerElement] = React.useState<HTMLElement | null>(null);\r\n const isMountedRef = React.useRef(false);\r\n const hasChildren = React.Children.count(children) !== 0;\r\n\r\n // if no children are specified then monitor size of parent element.\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n if (!isMountedRef.current && containerRef.current) {\r\n isMountedRef.current = true;\r\n const hasParent = !!containerRef.current.parentElement;\r\n setContainerElement(hasChildren && hasParent ? containerRef.current : containerRef.current.parentElement);\r\n }\r\n }, [hasChildren]);\r\n\r\n const processResize = React.useCallback((width?: number, height?: number) => {\r\n // istanbul ignore next\r\n onResize(width ?? 0, height ?? 0);\r\n }, [onResize]);\r\n\r\n useLayoutResizeObserver(containerElement, processResize);\r\n const style: React.CSSProperties = hasChildren ? { width: \"100%\", height: \"100%\" } : { display: \"none\" };\r\n\r\n return (\r\n <div ref={containerRef} className=\"uicore-resizable-container\" style={style}>\r\n {hasChildren && children}\r\n </div>\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"useResizeObserver.js","sourceRoot":"","sources":["../../../../../src/core-react/utils/hooks/useResizeObserver.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\nimport * as React from \"react\";\nimport { ResizeObserver } from \"./ResizeObserverPolyfill\";\nimport { useRefEffect } from \"./useRefEffect\";\nimport { useRefs } from \"./useRefs\";\n\n/** Uses ResizeObserver API to notify about element bound changes.\n * @internal\n */\nexport function useResizeObserver<T extends Element>(onResize?: (width: number, height: number) => void) {\n const [bounds, setBounds] = React.useState({ width: 0, height: 0 });\n const resizeObserver = React.useRef<ResizeObserver | null>(null);\n const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active\n const isMountedRef = React.useRef(false);\n const owningWindowRef = React.useRef<any>(null);\n\n // istanbul ignore next\n const resizeObserverCleanup = () => {\n if (rafRef.current)\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\n\n resizeObserver.current?.disconnect();\n resizeObserver.current = null;\n };\n\n React.useEffect(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n if (rafRef.current)\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\n owningWindowRef.current?.removeEventListener(\"beforeunload\", resizeObserverCleanup);\n };\n }, []);\n\n const processResize = React.useCallback((target: HTMLElement) => {\n const newBounds = target.getBoundingClientRect();\n // istanbul ignore else\n if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\n setBounds(newBounds);\n onResize && onResize(newBounds.width, newBounds.height);\n }\n }, [onResize, bounds.height, bounds.width]);\n\n const handleResize = React.useCallback((entries: any[]) => {\n // istanbul ignore if\n if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {\n return;\n }\n const target = entries[0].target as HTMLElement;\n // istanbul ignore next\n owningWindowRef.current && owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\n\n owningWindowRef.current = target.ownerDocument.defaultView;\n // istanbul ignore else\n if (owningWindowRef.current) {\n owningWindowRef.current.addEventListener(\"unload\", resizeObserverCleanup);\n\n // using requestAnimationFrame to stop the \"ResizeObserver loop completed with undelivered notifications.\" and\n // \"ResizeObserver loop limit exceeded\" messages reported to window.onError\n rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));\n }\n }, [processResize]);\n\n const observerRef = useRefEffect((instance: T | null) => {\n resizeObserver.current = new ResizeObserver(handleResize);\n if (instance) {\n resizeObserver.current.observe(instance);\n const newBounds = instance.getBoundingClientRect();\n onResize && onResize(newBounds.width, newBounds.height);\n setBounds(newBounds);\n }\n\n return () => {\n instance && ( /* istanbul ignore next */resizeObserver.current?.unobserve(instance));\n resizeObserver.current = null;\n };\n }, [handleResize, onResize]);\n\n const handleRef = React.useCallback((instance: Element | null) => {\n const newBounds = instance && instance.getBoundingClientRect();\n // istanbul ignore if\n if (newBounds && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\n setBounds(newBounds);\n onResize && onResize(newBounds.width, newBounds.height);\n }\n }, [bounds.height, bounds.width, onResize]);\n\n const ref = useRefs(handleRef, observerRef);\n return ref;\n}\n\n/** React hook that uses ResizeObserver API to notify about element bound changes. Note: to work similar to ReactResizeDetector\n * width and height are initialized as undefined and only set during after mount if bounds are non-zero. This implementation properly\n * handles observing element in pop-out/child windows.\n * @internal\n */\nexport function useLayoutResizeObserver(inElement: HTMLElement | null, onResize?: (width?: number, height?: number) => void) {\n const inBoundingRect = inElement?.getBoundingClientRect();\n const [bounds, setBounds] = React.useState<{ width?: number, height?: number }>({ width: inBoundingRect?.width, height: inBoundingRect?.height });\n const [watchedElement, setWatchedElement] = React.useState(inElement);\n const resizeObserver = React.useRef<ResizeObserver | null>(null);\n const rafRef = React.useRef(0); // set to non-zero when requestAnimationFrame processing is active\n const isMountedRef = React.useRef(false);\n const owningWindowRef = React.useRef<any>(null);\n\n // istanbul ignore next\n const resizeObserverCleanup = () => {\n if (rafRef.current)\n owningWindowRef.current.cancelAnimationFrame(rafRef.current);\n\n resizeObserver.current?.disconnect();\n resizeObserver.current = null;\n };\n\n React.useEffect(() => {\n isMountedRef.current = true;\n setWatchedElement(inElement);\n\n // istanbul ignore next\n if (inElement) {\n const newBounds = inElement.getBoundingClientRect();\n onResize && onResize(newBounds.width, newBounds.height);\n setBounds(newBounds);\n }\n\n return () => {\n isMountedRef.current = false;\n (rafRef.current && owningWindowRef.current) && owningWindowRef.current.cancelAnimationFrame(rafRef.current);\n owningWindowRef.current && owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\n };\n }, [onResize, inElement]);\n\n const processResize = React.useCallback((target: HTMLElement) => {\n const newBounds = target.getBoundingClientRect();\n // istanbul ignore next\n if (isMountedRef.current && (bounds.width !== newBounds.width || bounds.height !== newBounds.height)) {\n onResize && onResize(newBounds.width, newBounds.height);\n setBounds(newBounds);\n }\n }, [bounds.height, bounds.width, onResize]);\n\n const handleResize = React.useCallback((entries: any[]) => {\n // istanbul ignore next\n if (!isMountedRef.current || !Array.isArray(entries) || 0 === entries.length) {\n return;\n }\n const target = entries[0].target as HTMLElement;\n // istanbul ignore next\n if (owningWindowRef.current)\n owningWindowRef.current.removeEventListener(\"beforeunload\", resizeObserverCleanup);\n\n owningWindowRef.current = target.ownerDocument.defaultView;\n // istanbul ignore else\n if (owningWindowRef.current) {\n owningWindowRef.current.addEventListener(\"unload\", resizeObserverCleanup);\n\n // using requestAnimationFrame to stop the \"ResizeObserver loop completed with undelivered notifications.\" and\n // \"ResizeObserver loop limit exceeded\" messages reported to window.onError\n rafRef.current = owningWindowRef.current.requestAnimationFrame(() => processResize(target));\n }\n }, [processResize]);\n\n React.useLayoutEffect(() => {\n if (!watchedElement) {\n return;\n }\n resizeObserver.current = new ResizeObserver(handleResize);\n resizeObserver.current.observe(watchedElement);\n return () => {\n // istanbul ignore next\n resizeObserver.current?.disconnect();\n resizeObserver.current = null;\n };\n }, [handleResize, watchedElement]);\n\n return [bounds.width, bounds.height];\n}\n\n/** Prop the ElementResizeObserver sends to the render function.\n * @public\n */\nexport interface RenderPropsArgs {\n width?: number;\n height?: number;\n}\n\n/** ElementResizeObserver provides functionality similar to ReactResizeDetector when a render function is specified. This implementation properly handles\n * observing element in pop-out/child windows.\n * @public\n */\nexport function ElementResizeObserver({ watchedElement, render }: { watchedElement: HTMLElement | null, render: (props: RenderPropsArgs) => JSX.Element }) {\n const [width, height] = useLayoutResizeObserver(watchedElement);\n return render({ width, height });\n}\n\n/** ResizableContainerObserver is a component that provides the functionality similar to the ReactResizeDetector option that call a function when\n * the observed element is resized. This implementation properly handles observing element in pop-out/child windows. If children nodes are defined then\n * the div added by the component is considered the container whose size will be observed. If no children are provided then the component will report\n * size changes from its parent container.\n * @public\n */\nexport function ResizableContainerObserver({ onResize, children }: { onResize: (width: number, height: number) => void, children?: React.ReactNode }) {\n const containerRef = React.useRef<HTMLDivElement>(null); // set to non-zero when requestAnimationFrame processing is active\n const [containerElement, setContainerElement] = React.useState<HTMLElement | null>(null);\n const isMountedRef = React.useRef(false);\n const hasChildren = React.Children.count(children) !== 0;\n\n // if no children are specified then monitor size of parent element.\n React.useEffect(() => {\n // istanbul ignore next\n if (!isMountedRef.current && containerRef.current) {\n isMountedRef.current = true;\n const hasParent = !!containerRef.current.parentElement;\n setContainerElement(hasChildren && hasParent ? containerRef.current : containerRef.current.parentElement);\n }\n }, [hasChildren]);\n\n const processResize = React.useCallback((width?: number, height?: number) => {\n // istanbul ignore next\n onResize(width ?? 0, height ?? 0);\n }, [onResize]);\n\n useLayoutResizeObserver(containerElement, processResize);\n const style: React.CSSProperties = hasChildren ? { width: \"100%\", height: \"100%\" } : { display: \"none\" };\n\n return (\n <div ref={containerRef} className=\"uicore-resizable-container\" style={style}>\n {hasChildren && children}\n </div>\n );\n}\n"]}
@@ -1,9 +1,9 @@
1
- /** @packageDocumentation
2
- * @module Utilities
3
- */
4
- import * as React from "react";
5
- /** Returns a stateful value that indicates if the component is targeted/hovered.
6
- * @internal
7
- */
8
- export declare const useTargeted: (ref: React.RefObject<Element>) => boolean;
1
+ /** @packageDocumentation
2
+ * @module Utilities
3
+ */
4
+ import * as React from "react";
5
+ /** Returns a stateful value that indicates if the component is targeted/hovered.
6
+ * @internal
7
+ */
8
+ export declare const useTargeted: (ref: React.RefObject<Element>) => boolean;
9
9
  //# sourceMappingURL=useTargeted.d.ts.map