@itwin/core-react 4.0.0-dev.12 → 4.0.0-dev.14

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 (616) hide show
  1. package/CHANGELOG.md +116 -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/autosuggest/AutoSuggest.d.ts +96 -96
  8. package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  9. package/lib/cjs/core-react/autosuggest/AutoSuggest.js +174 -174
  10. package/lib/cjs/core-react/autosuggest/AutoSuggest.scss +1 -2
  11. package/lib/cjs/core-react/badge/Badge.d.ts +18 -18
  12. package/lib/cjs/core-react/badge/Badge.js +26 -26
  13. package/lib/cjs/core-react/badge/BadgeUtilities.d.ts +12 -12
  14. package/lib/cjs/core-react/badge/BadgeUtilities.js +38 -38
  15. package/lib/cjs/core-react/badge/BetaBadge.d.ts +9 -9
  16. package/lib/cjs/core-react/badge/BetaBadge.js +22 -22
  17. package/lib/cjs/core-react/badge/NewBadge.d.ts +10 -10
  18. package/lib/cjs/core-react/badge/NewBadge.js +23 -23
  19. package/lib/cjs/core-react/base/Centered.d.ts +10 -10
  20. package/lib/cjs/core-react/base/Centered.js +20 -20
  21. package/lib/cjs/core-react/base/Div.d.ts +16 -16
  22. package/lib/cjs/core-react/base/Div.js +20 -20
  23. package/lib/cjs/core-react/base/DivWithOutsideClick.d.ts +79 -79
  24. package/lib/cjs/core-react/base/DivWithOutsideClick.js +16 -16
  25. package/lib/cjs/core-react/base/FillCentered.d.ts +10 -10
  26. package/lib/cjs/core-react/base/FillCentered.js +20 -20
  27. package/lib/cjs/core-react/base/FlexWrapContainer.d.ts +11 -11
  28. package/lib/cjs/core-react/base/FlexWrapContainer.js +21 -21
  29. package/lib/cjs/core-react/base/Gap.d.ts +15 -15
  30. package/lib/cjs/core-react/base/Gap.js +20 -20
  31. package/lib/cjs/core-react/base/Gap.js.map +1 -1
  32. package/lib/cjs/core-react/base/PointerEvents.d.ts +7 -7
  33. package/lib/cjs/core-react/base/PointerEvents.js +17 -17
  34. package/lib/cjs/core-react/base/ScrollView.d.ts +11 -11
  35. package/lib/cjs/core-react/base/ScrollView.js +21 -21
  36. package/lib/cjs/core-react/button/UnderlinedButton.d.ts +24 -24
  37. package/lib/cjs/core-react/button/UnderlinedButton.js +35 -35
  38. package/lib/cjs/core-react/checklistbox/CheckListBox.d.ts +40 -40
  39. package/lib/cjs/core-react/checklistbox/CheckListBox.js +42 -42
  40. package/lib/cjs/core-react/checklistbox/CheckListBox.scss +0 -1
  41. package/lib/cjs/core-react/classes.scss +0 -2
  42. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts +93 -93
  43. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  44. package/lib/cjs/core-react/contextmenu/ContextMenu.js +363 -364
  45. package/lib/cjs/core-react/contextmenu/ContextMenu.js.map +1 -1
  46. package/lib/cjs/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
  47. package/lib/cjs/core-react/contextmenu/ContextMenuDirection.js +26 -26
  48. package/lib/cjs/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
  49. package/lib/cjs/core-react/contextmenu/ContextMenuDivider.js +23 -23
  50. package/lib/cjs/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
  51. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js +108 -108
  52. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  53. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
  54. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  55. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js +162 -162
  56. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  57. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
  58. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js +61 -63
  59. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  60. package/lib/cjs/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
  61. package/lib/cjs/core-react/contextmenu/PopupContextMenu.js +55 -55
  62. package/lib/cjs/core-react/contextmenu/TildeFinder.d.ts +18 -18
  63. package/lib/cjs/core-react/contextmenu/TildeFinder.js +70 -70
  64. package/lib/cjs/core-react/contextmenu/TildeFinder.js.map +1 -1
  65. package/lib/cjs/core-react/dialog/Dialog.d.ts +132 -132
  66. package/lib/cjs/core-react/dialog/Dialog.js +374 -375
  67. package/lib/cjs/core-react/dialog/Dialog.js.map +1 -1
  68. package/lib/cjs/core-react/dialog/GlobalDialog.d.ts +28 -28
  69. package/lib/cjs/core-react/dialog/GlobalDialog.js +52 -53
  70. package/lib/cjs/core-react/dialog/GlobalDialog.js.map +1 -1
  71. package/lib/cjs/core-react/elementseparator/ElementSeparator.d.ts +41 -41
  72. package/lib/cjs/core-react/elementseparator/ElementSeparator.js +163 -163
  73. package/lib/cjs/core-react/elementseparator/ElementSeparator.js.map +1 -1
  74. package/lib/cjs/core-react/enums/Alignment.d.ts +22 -22
  75. package/lib/cjs/core-react/enums/Alignment.js +31 -31
  76. package/lib/cjs/core-react/enums/CheckBoxState.d.ts +20 -20
  77. package/lib/cjs/core-react/enums/CheckBoxState.js +19 -19
  78. package/lib/cjs/core-react/enums/Orientation.d.ts +11 -11
  79. package/lib/cjs/core-react/enums/Orientation.js +19 -19
  80. package/lib/cjs/core-react/enums/SortDirection.d.ts +12 -12
  81. package/lib/cjs/core-react/enums/SortDirection.js +20 -20
  82. package/lib/cjs/core-react/enums/TimeFormat.d.ts +14 -14
  83. package/lib/cjs/core-react/enums/TimeFormat.js +22 -22
  84. package/lib/cjs/core-react/expandable/ExpandableList.d.ts +37 -37
  85. package/lib/cjs/core-react/expandable/ExpandableList.js +57 -57
  86. package/lib/cjs/core-react/expandable/ExpandableList.js.map +1 -1
  87. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
  88. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  89. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.js +150 -150
  90. package/lib/cjs/core-react/focustrap/FocusTrap.d.ts +28 -28
  91. package/lib/cjs/core-react/focustrap/FocusTrap.js +196 -196
  92. package/lib/cjs/core-react/hocs/withIsPressed.d.ts +77 -77
  93. package/lib/cjs/core-react/hocs/withIsPressed.js +46 -46
  94. package/lib/cjs/core-react/hocs/withOnOutsideClick.d.ts +103 -103
  95. package/lib/cjs/core-react/hocs/withOnOutsideClick.js +114 -115
  96. package/lib/cjs/core-react/hocs/withOnOutsideClick.js.map +1 -1
  97. package/lib/cjs/core-react/hocs/withTimeout.d.ts +74 -74
  98. package/lib/cjs/core-react/hocs/withTimeout.js +46 -46
  99. package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts +26 -26
  100. package/lib/cjs/core-react/icons/ConditionalIconItem.js +64 -64
  101. package/lib/cjs/core-react/icons/IconComponent.d.ts +25 -25
  102. package/lib/cjs/core-react/icons/IconComponent.d.ts.map +1 -1
  103. package/lib/cjs/core-react/icons/IconComponent.js +48 -48
  104. package/lib/cjs/core-react/icons/IconComponent.js.map +1 -1
  105. package/lib/cjs/core-react/icons/SvgPath.d.ts +23 -23
  106. package/lib/cjs/core-react/icons/SvgPath.js +27 -27
  107. package/lib/cjs/core-react/icons/WebFontIcon.d.ts +25 -25
  108. package/lib/cjs/core-react/icons/WebFontIcon.js +21 -21
  109. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
  110. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.js +56 -56
  111. package/lib/cjs/core-react/index.scss +0 -2
  112. package/lib/cjs/core-react/inputs/Input.d.ts +20 -20
  113. package/lib/cjs/core-react/inputs/Input.js +45 -45
  114. package/lib/cjs/core-react/inputs/InputLabel.d.ts +20 -20
  115. package/lib/cjs/core-react/inputs/InputLabel.js +41 -41
  116. package/lib/cjs/core-react/inputs/InputStatus.d.ts +11 -11
  117. package/lib/cjs/core-react/inputs/InputStatus.js +19 -19
  118. package/lib/cjs/core-react/inputs/LabeledComponentProps.d.ts +33 -33
  119. package/lib/cjs/core-react/inputs/LabeledComponentProps.js +9 -9
  120. package/lib/cjs/core-react/inputs/iconinput/IconInput.d.ts +23 -23
  121. package/lib/cjs/core-react/inputs/iconinput/IconInput.js +29 -29
  122. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts +50 -50
  123. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  124. package/lib/cjs/core-react/inputs/numberinput/NumberInput.js +153 -153
  125. package/lib/cjs/core-react/listbox/Listbox.d.ts +55 -55
  126. package/lib/cjs/core-react/listbox/Listbox.d.ts.map +1 -1
  127. package/lib/cjs/core-react/listbox/Listbox.js +221 -222
  128. package/lib/cjs/core-react/listbox/Listbox.js.map +1 -1
  129. package/lib/cjs/core-react/loading/LoadingBar.d.ts +29 -29
  130. package/lib/cjs/core-react/loading/LoadingBar.js +40 -40
  131. package/lib/cjs/core-react/loading/LoadingBar.js.map +1 -1
  132. package/lib/cjs/core-react/loading/LoadingPrompt.d.ts +39 -39
  133. package/lib/cjs/core-react/loading/LoadingPrompt.js +44 -44
  134. package/lib/cjs/core-react/loading/LoadingPrompt.js.map +1 -1
  135. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts +32 -32
  136. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  137. package/lib/cjs/core-react/loading/LoadingSpinner.js +30 -30
  138. package/lib/cjs/core-react/loading/LoadingSpinner.js.map +1 -1
  139. package/lib/cjs/core-react/loading/LoadingStatus.d.ts +24 -24
  140. package/lib/cjs/core-react/loading/LoadingStatus.js +37 -37
  141. package/lib/cjs/core-react/loading/LoadingStatus.js.map +1 -1
  142. package/lib/cjs/core-react/messagebox/MessageBox.d.ts +80 -80
  143. package/lib/cjs/core-react/messagebox/MessageBox.js +114 -114
  144. package/lib/cjs/core-react/messagebox/MessageBox.js.map +1 -1
  145. package/lib/cjs/core-react/notification/MessageRenderer.d.ts +19 -19
  146. package/lib/cjs/core-react/notification/MessageRenderer.js +81 -81
  147. package/lib/cjs/core-react/notification/MessageRenderer.js.map +1 -1
  148. package/lib/cjs/core-react/notification/MessageType.d.ts +22 -22
  149. package/lib/cjs/core-react/notification/MessageType.d.ts.map +1 -1
  150. package/lib/cjs/core-react/notification/MessageType.js +24 -24
  151. package/lib/cjs/core-react/popup/Popup.d.ts +111 -111
  152. package/lib/cjs/core-react/popup/Popup.js +418 -422
  153. package/lib/cjs/core-react/popup/Popup.js.map +1 -1
  154. package/lib/cjs/core-react/radialmenu/Annulus.d.ts +54 -54
  155. package/lib/cjs/core-react/radialmenu/Annulus.js +82 -82
  156. package/lib/cjs/core-react/radialmenu/RadialMenu.d.ts +97 -97
  157. package/lib/cjs/core-react/radialmenu/RadialMenu.js +179 -179
  158. package/lib/cjs/core-react/radialmenu/RadialMenu.js.map +1 -1
  159. package/lib/cjs/core-react/searchbox/SearchBox.d.ts +52 -52
  160. package/lib/cjs/core-react/searchbox/SearchBox.js +111 -111
  161. package/lib/cjs/core-react/searchbox/SearchBox.scss +2 -3
  162. package/lib/cjs/core-react/settings/SettingsContainer.d.ts +30 -30
  163. package/lib/cjs/core-react/settings/SettingsContainer.js +121 -121
  164. package/lib/cjs/core-react/settings/SettingsManager.d.ts +132 -132
  165. package/lib/cjs/core-react/settings/SettingsManager.js +122 -122
  166. package/lib/cjs/core-react/style/index.scss +0 -7
  167. package/lib/cjs/core-react/tabs/Tabs.d.ts +71 -71
  168. package/lib/cjs/core-react/tabs/Tabs.js +125 -125
  169. package/lib/cjs/core-react/tabs/VerticalTabs.d.ts +9 -9
  170. package/lib/cjs/core-react/tabs/VerticalTabs.js +20 -20
  171. package/lib/cjs/core-react/text/BlockText.d.ts +9 -9
  172. package/lib/cjs/core-react/text/BlockText.js +20 -20
  173. package/lib/cjs/core-react/text/BodyText.d.ts +10 -10
  174. package/lib/cjs/core-react/text/BodyText.js +21 -21
  175. package/lib/cjs/core-react/text/BodyText.js.map +1 -1
  176. package/lib/cjs/core-react/text/DisabledText.d.ts +6 -6
  177. package/lib/cjs/core-react/text/DisabledText.js +20 -20
  178. package/lib/cjs/core-react/text/FilteredText.d.ts +24 -24
  179. package/lib/cjs/core-react/text/FilteredText.js +40 -40
  180. package/lib/cjs/core-react/text/FilteredText.js.map +1 -1
  181. package/lib/cjs/core-react/text/MutedText.d.ts +10 -10
  182. package/lib/cjs/core-react/text/MutedText.js +21 -21
  183. package/lib/cjs/core-react/text/MutedText.js.map +1 -1
  184. package/lib/cjs/core-react/text/StyledText.d.ts +17 -17
  185. package/lib/cjs/core-react/text/StyledText.js +21 -21
  186. package/lib/cjs/core-react/text/StyledText.js.map +1 -1
  187. package/lib/cjs/core-react/text/TextProps.d.ts +10 -10
  188. package/lib/cjs/core-react/text/TextProps.js +9 -9
  189. package/lib/cjs/core-react/tree/Branch.d.ts +19 -19
  190. package/lib/cjs/core-react/tree/Branch.js +23 -23
  191. package/lib/cjs/core-react/tree/ExpansionToggle.d.ts +20 -20
  192. package/lib/cjs/core-react/tree/ExpansionToggle.js +30 -30
  193. package/lib/cjs/core-react/tree/Node.d.ts +79 -79
  194. package/lib/cjs/core-react/tree/Node.d.ts.map +1 -1
  195. package/lib/cjs/core-react/tree/Node.js +87 -88
  196. package/lib/cjs/core-react/tree/Node.js.map +1 -1
  197. package/lib/cjs/core-react/tree/Node.scss +0 -15
  198. package/lib/cjs/core-react/tree/Placeholder.d.ts +22 -22
  199. package/lib/cjs/core-react/tree/Placeholder.js +31 -31
  200. package/lib/cjs/core-react/tree/Tree.d.ts +28 -28
  201. package/lib/cjs/core-react/tree/Tree.js +100 -100
  202. package/lib/cjs/core-react/uistate/LocalStateStorage.d.ts +16 -16
  203. package/lib/cjs/core-react/uistate/LocalStateStorage.js +49 -49
  204. package/lib/cjs/core-react/uistate/UiStateEntry.d.ts +30 -30
  205. package/lib/cjs/core-react/uistate/UiStateEntry.js +59 -59
  206. package/lib/cjs/core-react/uistate/UiStateStorage.d.ts +28 -28
  207. package/lib/cjs/core-react/uistate/UiStateStorage.js +21 -21
  208. package/lib/cjs/core-react/utils/IconHelper.d.ts +23 -23
  209. package/lib/cjs/core-react/utils/IconHelper.js +62 -62
  210. package/lib/cjs/core-react/utils/IconWebComponent.d.ts +10 -10
  211. package/lib/cjs/core-react/utils/IconWebComponent.js +72 -72
  212. package/lib/cjs/core-react/utils/IconWebComponent.js.map +1 -1
  213. package/lib/cjs/core-react/utils/Point.d.ts +37 -37
  214. package/lib/cjs/core-react/utils/Point.js +73 -73
  215. package/lib/cjs/core-react/utils/Point.js.map +1 -1
  216. package/lib/cjs/core-react/utils/Props.d.ts +38 -38
  217. package/lib/cjs/core-react/utils/Props.d.ts.map +1 -1
  218. package/lib/cjs/core-react/utils/Props.js +9 -9
  219. package/lib/cjs/core-react/utils/Rectangle.d.ts +144 -144
  220. package/lib/cjs/core-react/utils/Rectangle.js +270 -270
  221. package/lib/cjs/core-react/utils/Rectangle.js.map +1 -1
  222. package/lib/cjs/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
  223. package/lib/cjs/core-react/utils/ScrollPositionMaintainer.js +36 -36
  224. package/lib/cjs/core-react/utils/Size.d.ts +23 -23
  225. package/lib/cjs/core-react/utils/Size.js +32 -32
  226. package/lib/cjs/core-react/utils/Size.js.map +1 -1
  227. package/lib/cjs/core-react/utils/Timer.d.ts +35 -35
  228. package/lib/cjs/core-react/utils/Timer.d.ts.map +1 -1
  229. package/lib/cjs/core-react/utils/Timer.js +64 -64
  230. package/lib/cjs/core-react/utils/UiGeometry.d.ts +20 -20
  231. package/lib/cjs/core-react/utils/UiGeometry.js +28 -28
  232. package/lib/cjs/core-react/utils/flattenChildren.d.ts +8 -8
  233. package/lib/cjs/core-react/utils/flattenChildren.js +27 -27
  234. package/lib/cjs/core-react/utils/getBestBWContrastColor.d.ts +7 -7
  235. package/lib/cjs/core-react/utils/getBestBWContrastColor.js +22 -22
  236. package/lib/cjs/core-react/utils/getBestBWContrastColor.js.map +1 -1
  237. package/lib/cjs/core-react/utils/getCssVariable.d.ts +11 -11
  238. package/lib/cjs/core-react/utils/getCssVariable.js +31 -31
  239. package/lib/cjs/core-react/utils/getCssVariable.js.map +1 -1
  240. package/lib/cjs/core-react/utils/getDisplayName.d.ts +8 -8
  241. package/lib/cjs/core-react/utils/getDisplayName.js +21 -21
  242. package/lib/cjs/core-react/utils/getUserColor.d.ts +7 -7
  243. package/lib/cjs/core-react/utils/getUserColor.js +38 -38
  244. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
  245. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  246. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.js +19 -19
  247. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
  248. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js +88 -89
  249. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  250. package/lib/cjs/core-react/utils/hooks/useDisposable.d.ts +17 -17
  251. package/lib/cjs/core-react/utils/hooks/useDisposable.js +38 -38
  252. package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
  253. package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.js +26 -26
  254. package/lib/cjs/core-react/utils/hooks/useEventListener.d.ts +11 -11
  255. package/lib/cjs/core-react/utils/hooks/useEventListener.js +43 -43
  256. package/lib/cjs/core-react/utils/hooks/useInterval.d.ts +5 -5
  257. package/lib/cjs/core-react/utils/hooks/useInterval.js +36 -36
  258. package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
  259. package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.js +64 -64
  260. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
  261. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  262. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.js +92 -92
  263. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
  264. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js +114 -114
  265. package/lib/cjs/core-react/utils/hooks/useRefEffect.d.ts +7 -7
  266. package/lib/cjs/core-react/utils/hooks/useRefEffect.js +23 -23
  267. package/lib/cjs/core-react/utils/hooks/useRefState.d.ts +21 -21
  268. package/lib/cjs/core-react/utils/hooks/useRefState.js +35 -35
  269. package/lib/cjs/core-react/utils/hooks/useRefs.d.ts +12 -12
  270. package/lib/cjs/core-react/utils/hooks/useRefs.js +53 -53
  271. package/lib/cjs/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
  272. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js +203 -208
  273. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  274. package/lib/cjs/core-react/utils/hooks/useTargeted.d.ts +8 -8
  275. package/lib/cjs/core-react/utils/hooks/useTargeted.js +28 -28
  276. package/lib/cjs/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
  277. package/lib/cjs/core-react/utils/hooks/useThrottledFn.js +25 -25
  278. package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
  279. package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.js +27 -27
  280. package/lib/cjs/core-react/utils/isPromiseLike.d.ts +7 -7
  281. package/lib/cjs/core-react/utils/isPromiseLike.js +17 -17
  282. package/lib/cjs/core-react/utils/shallowDiffers.d.ts +11 -11
  283. package/lib/cjs/core-react/utils/shallowDiffers.js +29 -29
  284. package/lib/cjs/core-react/utils/typeUtils.d.ts +7 -7
  285. package/lib/cjs/core-react/utils/typeUtils.d.ts.map +1 -1
  286. package/lib/cjs/core-react/utils/typeUtils.js +9 -9
  287. package/lib/cjs/core-react.d.ts +236 -236
  288. package/lib/cjs/core-react.js +263 -259
  289. package/lib/cjs/core-react.js.map +1 -1
  290. package/lib/esm/core-react/UiCore.d.ts +40 -40
  291. package/lib/esm/core-react/UiCore.js +82 -81
  292. package/lib/esm/core-react/UiCore.js.map +1 -1
  293. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts +96 -96
  294. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  295. package/lib/esm/core-react/autosuggest/AutoSuggest.js +170 -170
  296. package/lib/esm/core-react/autosuggest/AutoSuggest.scss +1 -2
  297. package/lib/esm/core-react/badge/Badge.d.ts +18 -18
  298. package/lib/esm/core-react/badge/Badge.js +22 -22
  299. package/lib/esm/core-react/badge/BadgeUtilities.d.ts +12 -12
  300. package/lib/esm/core-react/badge/BadgeUtilities.js +34 -34
  301. package/lib/esm/core-react/badge/BetaBadge.d.ts +9 -9
  302. package/lib/esm/core-react/badge/BetaBadge.js +18 -18
  303. package/lib/esm/core-react/badge/NewBadge.d.ts +10 -10
  304. package/lib/esm/core-react/badge/NewBadge.js +19 -19
  305. package/lib/esm/core-react/base/Centered.d.ts +10 -10
  306. package/lib/esm/core-react/base/Centered.js +16 -16
  307. package/lib/esm/core-react/base/Div.d.ts +16 -16
  308. package/lib/esm/core-react/base/Div.js +16 -16
  309. package/lib/esm/core-react/base/DivWithOutsideClick.d.ts +79 -79
  310. package/lib/esm/core-react/base/DivWithOutsideClick.js +13 -13
  311. package/lib/esm/core-react/base/FillCentered.d.ts +10 -10
  312. package/lib/esm/core-react/base/FillCentered.js +16 -16
  313. package/lib/esm/core-react/base/FlexWrapContainer.d.ts +11 -11
  314. package/lib/esm/core-react/base/FlexWrapContainer.js +17 -17
  315. package/lib/esm/core-react/base/Gap.d.ts +15 -15
  316. package/lib/esm/core-react/base/Gap.js +16 -16
  317. package/lib/esm/core-react/base/Gap.js.map +1 -1
  318. package/lib/esm/core-react/base/PointerEvents.d.ts +7 -7
  319. package/lib/esm/core-react/base/PointerEvents.js +13 -13
  320. package/lib/esm/core-react/base/ScrollView.d.ts +11 -11
  321. package/lib/esm/core-react/base/ScrollView.js +17 -17
  322. package/lib/esm/core-react/button/UnderlinedButton.d.ts +24 -24
  323. package/lib/esm/core-react/button/UnderlinedButton.js +31 -31
  324. package/lib/esm/core-react/checklistbox/CheckListBox.d.ts +40 -40
  325. package/lib/esm/core-react/checklistbox/CheckListBox.js +36 -36
  326. package/lib/esm/core-react/checklistbox/CheckListBox.scss +0 -1
  327. package/lib/esm/core-react/classes.scss +0 -2
  328. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts +93 -93
  329. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  330. package/lib/esm/core-react/contextmenu/ContextMenu.js +360 -360
  331. package/lib/esm/core-react/contextmenu/ContextMenu.js.map +1 -1
  332. package/lib/esm/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
  333. package/lib/esm/core-react/contextmenu/ContextMenuDirection.js +23 -23
  334. package/lib/esm/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
  335. package/lib/esm/core-react/contextmenu/ContextMenuDivider.js +19 -19
  336. package/lib/esm/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
  337. package/lib/esm/core-react/contextmenu/ContextMenuItem.js +105 -104
  338. package/lib/esm/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  339. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
  340. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  341. package/lib/esm/core-react/contextmenu/ContextSubMenu.js +159 -158
  342. package/lib/esm/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  343. package/lib/esm/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
  344. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js +57 -59
  345. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  346. package/lib/esm/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
  347. package/lib/esm/core-react/contextmenu/PopupContextMenu.js +51 -51
  348. package/lib/esm/core-react/contextmenu/TildeFinder.d.ts +18 -18
  349. package/lib/esm/core-react/contextmenu/TildeFinder.js +67 -66
  350. package/lib/esm/core-react/contextmenu/TildeFinder.js.map +1 -1
  351. package/lib/esm/core-react/dialog/Dialog.d.ts +132 -132
  352. package/lib/esm/core-react/dialog/Dialog.js +371 -371
  353. package/lib/esm/core-react/dialog/Dialog.js.map +1 -1
  354. package/lib/esm/core-react/dialog/GlobalDialog.d.ts +28 -28
  355. package/lib/esm/core-react/dialog/GlobalDialog.js +48 -49
  356. package/lib/esm/core-react/dialog/GlobalDialog.js.map +1 -1
  357. package/lib/esm/core-react/elementseparator/ElementSeparator.d.ts +41 -41
  358. package/lib/esm/core-react/elementseparator/ElementSeparator.js +159 -159
  359. package/lib/esm/core-react/elementseparator/ElementSeparator.js.map +1 -1
  360. package/lib/esm/core-react/enums/Alignment.d.ts +22 -22
  361. package/lib/esm/core-react/enums/Alignment.js +28 -28
  362. package/lib/esm/core-react/enums/CheckBoxState.d.ts +20 -20
  363. package/lib/esm/core-react/enums/CheckBoxState.js +16 -16
  364. package/lib/esm/core-react/enums/Orientation.d.ts +11 -11
  365. package/lib/esm/core-react/enums/Orientation.js +16 -16
  366. package/lib/esm/core-react/enums/SortDirection.d.ts +12 -12
  367. package/lib/esm/core-react/enums/SortDirection.js +17 -17
  368. package/lib/esm/core-react/enums/TimeFormat.d.ts +14 -14
  369. package/lib/esm/core-react/enums/TimeFormat.js +19 -19
  370. package/lib/esm/core-react/expandable/ExpandableList.d.ts +37 -37
  371. package/lib/esm/core-react/expandable/ExpandableList.js +54 -53
  372. package/lib/esm/core-react/expandable/ExpandableList.js.map +1 -1
  373. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
  374. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  375. package/lib/esm/core-react/focus/ItemKeyboardNavigator.js +145 -145
  376. package/lib/esm/core-react/focustrap/FocusTrap.d.ts +28 -28
  377. package/lib/esm/core-react/focustrap/FocusTrap.js +191 -191
  378. package/lib/esm/core-react/hocs/withIsPressed.d.ts +77 -77
  379. package/lib/esm/core-react/hocs/withIsPressed.js +42 -42
  380. package/lib/esm/core-react/hocs/withOnOutsideClick.d.ts +103 -103
  381. package/lib/esm/core-react/hocs/withOnOutsideClick.js +110 -111
  382. package/lib/esm/core-react/hocs/withOnOutsideClick.js.map +1 -1
  383. package/lib/esm/core-react/hocs/withTimeout.d.ts +74 -74
  384. package/lib/esm/core-react/hocs/withTimeout.js +42 -42
  385. package/lib/esm/core-react/icons/ConditionalIconItem.d.ts +26 -26
  386. package/lib/esm/core-react/icons/ConditionalIconItem.js +60 -60
  387. package/lib/esm/core-react/icons/IconComponent.d.ts +25 -25
  388. package/lib/esm/core-react/icons/IconComponent.d.ts.map +1 -1
  389. package/lib/esm/core-react/icons/IconComponent.js +44 -44
  390. package/lib/esm/core-react/icons/IconComponent.js.map +1 -1
  391. package/lib/esm/core-react/icons/SvgPath.d.ts +23 -23
  392. package/lib/esm/core-react/icons/SvgPath.js +23 -23
  393. package/lib/esm/core-react/icons/WebFontIcon.d.ts +25 -25
  394. package/lib/esm/core-react/icons/WebFontIcon.js +17 -17
  395. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
  396. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.js +52 -52
  397. package/lib/esm/core-react/index.scss +0 -2
  398. package/lib/esm/core-react/inputs/Input.d.ts +20 -20
  399. package/lib/esm/core-react/inputs/Input.js +42 -42
  400. package/lib/esm/core-react/inputs/InputLabel.d.ts +20 -20
  401. package/lib/esm/core-react/inputs/InputLabel.js +37 -37
  402. package/lib/esm/core-react/inputs/InputStatus.d.ts +11 -11
  403. package/lib/esm/core-react/inputs/InputStatus.js +16 -16
  404. package/lib/esm/core-react/inputs/LabeledComponentProps.d.ts +33 -33
  405. package/lib/esm/core-react/inputs/LabeledComponentProps.js +8 -8
  406. package/lib/esm/core-react/inputs/iconinput/IconInput.d.ts +23 -23
  407. package/lib/esm/core-react/inputs/iconinput/IconInput.js +26 -26
  408. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts +50 -50
  409. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  410. package/lib/esm/core-react/inputs/numberinput/NumberInput.js +150 -150
  411. package/lib/esm/core-react/listbox/Listbox.d.ts +55 -55
  412. package/lib/esm/core-react/listbox/Listbox.d.ts.map +1 -1
  413. package/lib/esm/core-react/listbox/Listbox.js +216 -217
  414. package/lib/esm/core-react/listbox/Listbox.js.map +1 -1
  415. package/lib/esm/core-react/loading/LoadingBar.d.ts +29 -29
  416. package/lib/esm/core-react/loading/LoadingBar.js +36 -35
  417. package/lib/esm/core-react/loading/LoadingBar.js.map +1 -1
  418. package/lib/esm/core-react/loading/LoadingPrompt.d.ts +39 -39
  419. package/lib/esm/core-react/loading/LoadingPrompt.js +41 -40
  420. package/lib/esm/core-react/loading/LoadingPrompt.js.map +1 -1
  421. package/lib/esm/core-react/loading/LoadingSpinner.d.ts +32 -32
  422. package/lib/esm/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  423. package/lib/esm/core-react/loading/LoadingSpinner.js +27 -26
  424. package/lib/esm/core-react/loading/LoadingSpinner.js.map +1 -1
  425. package/lib/esm/core-react/loading/LoadingStatus.d.ts +24 -24
  426. package/lib/esm/core-react/loading/LoadingStatus.js +34 -33
  427. package/lib/esm/core-react/loading/LoadingStatus.js.map +1 -1
  428. package/lib/esm/core-react/messagebox/MessageBox.d.ts +80 -80
  429. package/lib/esm/core-react/messagebox/MessageBox.js +110 -109
  430. package/lib/esm/core-react/messagebox/MessageBox.js.map +1 -1
  431. package/lib/esm/core-react/notification/MessageRenderer.d.ts +19 -19
  432. package/lib/esm/core-react/notification/MessageRenderer.js +77 -77
  433. package/lib/esm/core-react/notification/MessageRenderer.js.map +1 -1
  434. package/lib/esm/core-react/notification/MessageType.d.ts +22 -22
  435. package/lib/esm/core-react/notification/MessageType.d.ts.map +1 -1
  436. package/lib/esm/core-react/notification/MessageType.js +19 -19
  437. package/lib/esm/core-react/popup/Popup.d.ts +111 -111
  438. package/lib/esm/core-react/popup/Popup.js +415 -418
  439. package/lib/esm/core-react/popup/Popup.js.map +1 -1
  440. package/lib/esm/core-react/radialmenu/Annulus.d.ts +54 -54
  441. package/lib/esm/core-react/radialmenu/Annulus.js +75 -75
  442. package/lib/esm/core-react/radialmenu/RadialMenu.d.ts +97 -97
  443. package/lib/esm/core-react/radialmenu/RadialMenu.js +175 -174
  444. package/lib/esm/core-react/radialmenu/RadialMenu.js.map +1 -1
  445. package/lib/esm/core-react/searchbox/SearchBox.d.ts +52 -52
  446. package/lib/esm/core-react/searchbox/SearchBox.js +107 -107
  447. package/lib/esm/core-react/searchbox/SearchBox.scss +2 -3
  448. package/lib/esm/core-react/settings/SettingsContainer.d.ts +30 -30
  449. package/lib/esm/core-react/settings/SettingsContainer.js +115 -115
  450. package/lib/esm/core-react/settings/SettingsManager.d.ts +132 -132
  451. package/lib/esm/core-react/settings/SettingsManager.js +113 -113
  452. package/lib/esm/core-react/style/index.scss +0 -7
  453. package/lib/esm/core-react/tabs/Tabs.d.ts +71 -71
  454. package/lib/esm/core-react/tabs/Tabs.js +121 -121
  455. package/lib/esm/core-react/tabs/VerticalTabs.d.ts +9 -9
  456. package/lib/esm/core-react/tabs/VerticalTabs.js +16 -16
  457. package/lib/esm/core-react/text/BlockText.d.ts +9 -9
  458. package/lib/esm/core-react/text/BlockText.js +16 -16
  459. package/lib/esm/core-react/text/BodyText.d.ts +10 -10
  460. package/lib/esm/core-react/text/BodyText.js +17 -17
  461. package/lib/esm/core-react/text/BodyText.js.map +1 -1
  462. package/lib/esm/core-react/text/DisabledText.d.ts +6 -6
  463. package/lib/esm/core-react/text/DisabledText.js +16 -16
  464. package/lib/esm/core-react/text/FilteredText.d.ts +24 -24
  465. package/lib/esm/core-react/text/FilteredText.js +36 -36
  466. package/lib/esm/core-react/text/FilteredText.js.map +1 -1
  467. package/lib/esm/core-react/text/MutedText.d.ts +10 -10
  468. package/lib/esm/core-react/text/MutedText.js +17 -17
  469. package/lib/esm/core-react/text/MutedText.js.map +1 -1
  470. package/lib/esm/core-react/text/StyledText.d.ts +17 -17
  471. package/lib/esm/core-react/text/StyledText.js +17 -17
  472. package/lib/esm/core-react/text/StyledText.js.map +1 -1
  473. package/lib/esm/core-react/text/TextProps.d.ts +10 -10
  474. package/lib/esm/core-react/text/TextProps.js +8 -8
  475. package/lib/esm/core-react/tree/Branch.d.ts +19 -19
  476. package/lib/esm/core-react/tree/Branch.js +19 -19
  477. package/lib/esm/core-react/tree/ExpansionToggle.d.ts +20 -20
  478. package/lib/esm/core-react/tree/ExpansionToggle.js +26 -26
  479. package/lib/esm/core-react/tree/Node.d.ts +79 -79
  480. package/lib/esm/core-react/tree/Node.d.ts.map +1 -1
  481. package/lib/esm/core-react/tree/Node.js +83 -84
  482. package/lib/esm/core-react/tree/Node.js.map +1 -1
  483. package/lib/esm/core-react/tree/Node.scss +0 -15
  484. package/lib/esm/core-react/tree/Placeholder.d.ts +22 -22
  485. package/lib/esm/core-react/tree/Placeholder.js +27 -27
  486. package/lib/esm/core-react/tree/Tree.d.ts +28 -28
  487. package/lib/esm/core-react/tree/Tree.js +96 -96
  488. package/lib/esm/core-react/uistate/LocalStateStorage.d.ts +16 -16
  489. package/lib/esm/core-react/uistate/LocalStateStorage.js +45 -45
  490. package/lib/esm/core-react/uistate/UiStateEntry.d.ts +30 -30
  491. package/lib/esm/core-react/uistate/UiStateEntry.js +55 -55
  492. package/lib/esm/core-react/uistate/UiStateStorage.d.ts +28 -28
  493. package/lib/esm/core-react/uistate/UiStateStorage.js +18 -18
  494. package/lib/esm/core-react/utils/IconHelper.d.ts +23 -23
  495. package/lib/esm/core-react/utils/IconHelper.js +58 -58
  496. package/lib/esm/core-react/utils/IconWebComponent.d.ts +10 -10
  497. package/lib/esm/core-react/utils/IconWebComponent.js +68 -68
  498. package/lib/esm/core-react/utils/IconWebComponent.js.map +1 -1
  499. package/lib/esm/core-react/utils/Point.d.ts +37 -37
  500. package/lib/esm/core-react/utils/Point.js +69 -69
  501. package/lib/esm/core-react/utils/Point.js.map +1 -1
  502. package/lib/esm/core-react/utils/Props.d.ts +38 -38
  503. package/lib/esm/core-react/utils/Props.d.ts.map +1 -1
  504. package/lib/esm/core-react/utils/Props.js +8 -8
  505. package/lib/esm/core-react/utils/Rectangle.d.ts +144 -144
  506. package/lib/esm/core-react/utils/Rectangle.js +266 -266
  507. package/lib/esm/core-react/utils/Rectangle.js.map +1 -1
  508. package/lib/esm/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
  509. package/lib/esm/core-react/utils/ScrollPositionMaintainer.js +32 -32
  510. package/lib/esm/core-react/utils/Size.d.ts +23 -23
  511. package/lib/esm/core-react/utils/Size.js +28 -28
  512. package/lib/esm/core-react/utils/Size.js.map +1 -1
  513. package/lib/esm/core-react/utils/Timer.d.ts +35 -35
  514. package/lib/esm/core-react/utils/Timer.d.ts.map +1 -1
  515. package/lib/esm/core-react/utils/Timer.js +60 -60
  516. package/lib/esm/core-react/utils/UiGeometry.d.ts +20 -20
  517. package/lib/esm/core-react/utils/UiGeometry.js +24 -24
  518. package/lib/esm/core-react/utils/flattenChildren.d.ts +8 -8
  519. package/lib/esm/core-react/utils/flattenChildren.js +23 -23
  520. package/lib/esm/core-react/utils/getBestBWContrastColor.d.ts +7 -7
  521. package/lib/esm/core-react/utils/getBestBWContrastColor.js +18 -18
  522. package/lib/esm/core-react/utils/getBestBWContrastColor.js.map +1 -1
  523. package/lib/esm/core-react/utils/getCssVariable.d.ts +11 -11
  524. package/lib/esm/core-react/utils/getCssVariable.js +26 -26
  525. package/lib/esm/core-react/utils/getCssVariable.js.map +1 -1
  526. package/lib/esm/core-react/utils/getDisplayName.d.ts +8 -8
  527. package/lib/esm/core-react/utils/getDisplayName.js +17 -17
  528. package/lib/esm/core-react/utils/getUserColor.d.ts +7 -7
  529. package/lib/esm/core-react/utils/getUserColor.js +34 -34
  530. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
  531. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  532. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.js +16 -16
  533. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
  534. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js +84 -85
  535. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  536. package/lib/esm/core-react/utils/hooks/useDisposable.d.ts +17 -17
  537. package/lib/esm/core-react/utils/hooks/useDisposable.js +33 -33
  538. package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
  539. package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.js +22 -22
  540. package/lib/esm/core-react/utils/hooks/useEventListener.d.ts +11 -11
  541. package/lib/esm/core-react/utils/hooks/useEventListener.js +39 -39
  542. package/lib/esm/core-react/utils/hooks/useInterval.d.ts +5 -5
  543. package/lib/esm/core-react/utils/hooks/useInterval.js +32 -32
  544. package/lib/esm/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
  545. package/lib/esm/core-react/utils/hooks/useLifecycleLogging.js +60 -60
  546. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
  547. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  548. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.js +88 -88
  549. package/lib/esm/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
  550. package/lib/esm/core-react/utils/hooks/useProximityToMouse.js +102 -102
  551. package/lib/esm/core-react/utils/hooks/useRefEffect.d.ts +7 -7
  552. package/lib/esm/core-react/utils/hooks/useRefEffect.js +19 -19
  553. package/lib/esm/core-react/utils/hooks/useRefState.d.ts +21 -21
  554. package/lib/esm/core-react/utils/hooks/useRefState.js +31 -31
  555. package/lib/esm/core-react/utils/hooks/useRefs.d.ts +12 -12
  556. package/lib/esm/core-react/utils/hooks/useRefs.js +48 -48
  557. package/lib/esm/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
  558. package/lib/esm/core-react/utils/hooks/useResizeObserver.js +196 -201
  559. package/lib/esm/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  560. package/lib/esm/core-react/utils/hooks/useTargeted.d.ts +8 -8
  561. package/lib/esm/core-react/utils/hooks/useTargeted.js +24 -24
  562. package/lib/esm/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
  563. package/lib/esm/core-react/utils/hooks/useThrottledFn.js +21 -21
  564. package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
  565. package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.js +23 -23
  566. package/lib/esm/core-react/utils/isPromiseLike.d.ts +7 -7
  567. package/lib/esm/core-react/utils/isPromiseLike.js +13 -13
  568. package/lib/esm/core-react/utils/shallowDiffers.d.ts +11 -11
  569. package/lib/esm/core-react/utils/shallowDiffers.js +25 -25
  570. package/lib/esm/core-react/utils/typeUtils.d.ts +7 -7
  571. package/lib/esm/core-react/utils/typeUtils.d.ts.map +1 -1
  572. package/lib/esm/core-react/utils/typeUtils.js +8 -8
  573. package/lib/esm/core-react.d.ts +236 -236
  574. package/lib/esm/core-react.js +241 -241
  575. package/package.json +15 -13
  576. package/ThirdPartyNotices.md +0 -28
  577. package/lib/cjs/core-react/button/blue-large.scss +0 -12
  578. package/lib/cjs/core-react/button/blue.scss +0 -17
  579. package/lib/cjs/core-react/button/button.scss +0 -70
  580. package/lib/cjs/core-react/button/classes.scss +0 -14
  581. package/lib/cjs/core-react/button/disabled-large.scss +0 -12
  582. package/lib/cjs/core-react/button/disabled.scss +0 -17
  583. package/lib/cjs/core-react/button/hollow-large.scss +0 -13
  584. package/lib/cjs/core-react/button/hollow.scss +0 -30
  585. package/lib/cjs/core-react/button/index.scss +0 -14
  586. package/lib/cjs/core-react/button/primary-large.scss +0 -12
  587. package/lib/cjs/core-react/button/primary.scss +0 -17
  588. package/lib/cjs/core-react/button/variables.scss +0 -22
  589. package/lib/cjs/core-react/checkbox/checkbox.scss +0 -124
  590. package/lib/cjs/core-react/checkbox/classes.scss +0 -8
  591. package/lib/cjs/core-react/checkbox/index.scss +0 -8
  592. package/lib/cjs/core-react/style/data-viz.scss +0 -20
  593. package/lib/cjs/core-react/style/space.scss +0 -13
  594. package/lib/cjs/core-react/style/speed.scss +0 -9
  595. package/lib/cjs/core-react/style/typography.scss +0 -39
  596. package/lib/cjs/core-react/style/variables.scss +0 -9
  597. package/lib/esm/core-react/button/blue-large.scss +0 -12
  598. package/lib/esm/core-react/button/blue.scss +0 -17
  599. package/lib/esm/core-react/button/button.scss +0 -70
  600. package/lib/esm/core-react/button/classes.scss +0 -14
  601. package/lib/esm/core-react/button/disabled-large.scss +0 -12
  602. package/lib/esm/core-react/button/disabled.scss +0 -17
  603. package/lib/esm/core-react/button/hollow-large.scss +0 -13
  604. package/lib/esm/core-react/button/hollow.scss +0 -30
  605. package/lib/esm/core-react/button/index.scss +0 -14
  606. package/lib/esm/core-react/button/primary-large.scss +0 -12
  607. package/lib/esm/core-react/button/primary.scss +0 -17
  608. package/lib/esm/core-react/button/variables.scss +0 -22
  609. package/lib/esm/core-react/checkbox/checkbox.scss +0 -124
  610. package/lib/esm/core-react/checkbox/classes.scss +0 -8
  611. package/lib/esm/core-react/checkbox/index.scss +0 -8
  612. package/lib/esm/core-react/style/data-viz.scss +0 -20
  613. package/lib/esm/core-react/style/space.scss +0 -13
  614. package/lib/esm/core-react/style/speed.scss +0 -9
  615. package/lib/esm/core-react/style/typography.scss +0 -39
  616. package/lib/esm/core-react/style/variables.scss +0 -9
@@ -1,365 +1,364 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module ContextMenu
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.ContextMenu = void 0;
11
- require("./ContextMenu.scss");
12
- const classnames_1 = require("classnames");
13
- const React = require("react");
14
- const appui_abstract_1 = require("@itwin/appui-abstract");
15
- const DivWithOutsideClick_1 = require("../base/DivWithOutsideClick");
16
- const ContextMenuDirection_1 = require("./ContextMenuDirection");
17
- const ContextMenuItem_1 = require("./ContextMenuItem");
18
- const ContextSubMenu_1 = require("./ContextSubMenu");
19
- /**
20
- * A context menu populated with [[ContextMenuItem]] components.
21
- * Can be nested using [[ContextSubMenu]] component.
22
- * @public
23
- */
24
- class ContextMenu extends React.PureComponent {
25
- constructor(props) {
26
- super(props);
27
- this._rootElement = null;
28
- this._menuElement = null;
29
- this._selectedElement = null;
30
- this._length = 0;
31
- this._hotKeyMap = new Map();
32
- this._lastDirection = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
33
- this._lastSelectedIndex = 0;
34
- this._parentWindowHeight = 0;
35
- this._parentWindowWidth = 0;
36
- this._handleHotKeyParsed = (index, hotKey) => {
37
- this._hotKeyMap.set(index, hotKey);
38
- };
39
- // istanbul ignore next
40
- this._handleOnOutsideClick = (event) => {
41
- if (this.props.opened && this.props.onOutsideClick)
42
- this.props.onOutsideClick(event);
43
- };
44
- this._injectMenuItemProps = (children, direction, selectedIndex) => {
45
- let index = 0;
46
- // add inheritance data to submenu children
47
- const ch = React.Children.map(children, (child) => {
48
- // Capture only ContextSubMenus and ContextMenuItems.
49
- if (child && typeof child === "object" && "props" in child && (child.type === ContextSubMenu_1.ContextSubMenu || child.type === ContextMenuItem_1.ContextMenuItem) &&
50
- !appui_abstract_1.ConditionalBooleanValue.getValue(child.props.disabled) && !appui_abstract_1.ConditionalBooleanValue.getValue(child.props.hidden)) {
51
- const id = index; // get separate id variable so value stays the same when onHover is called later.
52
- const onHover = () => {
53
- this.setState({ selectedIndex: id });
54
- this.focus();
55
- };
56
- const ref = (el) => {
57
- if (selectedIndex === id) // only save to this._selectedElement if previously captured bool is true
58
- this._selectedElement = el;
59
- };
60
- const boundHandleHotKeyParse = this._handleHotKeyParsed.bind(this, id); // bind local callback for specific index
61
- const childProps = {
62
- parentMenu: this,
63
- ref,
64
- onHover,
65
- isSelected: selectedIndex === id,
66
- onHotKeyParsed: boundHandleHotKeyParse,
67
- };
68
- if (child.type === ContextSubMenu_1.ContextSubMenu) { // add direction only to sub-menus
69
- childProps.direction = child.props.direction || /* istanbul ignore next */ direction;
70
- }
71
- index++;
72
- return React.cloneElement(child, childProps);
73
- }
74
- else
75
- return child; // Else, pass through unmodified
76
- });
77
- this._length = index;
78
- return ch;
79
- };
80
- this._rootRef = (el) => {
81
- this._rootElement = el;
82
- };
83
- this._menuRef = (el) => {
84
- this._menuElement = el;
85
- };
86
- this.focus = () => {
87
- // istanbul ignore else
88
- if (this._menuElement)
89
- this._menuElement.focus();
90
- };
91
- this.blur = () => {
92
- // istanbul ignore else
93
- if (this._menuElement)
94
- this._menuElement.blur();
95
- };
96
- this.getRect = () => {
97
- let clientRect = DOMRect.fromRect({ x: 0, y: 0, width: 0, height: 0 });
98
- // istanbul ignore else
99
- if (this._menuElement) {
100
- clientRect = this._menuElement.getBoundingClientRect();
101
- }
102
- return clientRect;
103
- };
104
- this._handleFocusChange = (event) => {
105
- // istanbul ignore else
106
- if (this._rootElement && this.props.opened && event.target instanceof Node && this.props.onOutsideClick && !this._rootElement.contains(event.target))
107
- this.props.onOutsideClick(event);
108
- };
109
- this._handleClick = (event) => {
110
- if (this.props.onSelect)
111
- this.props.onSelect(event);
112
- };
113
- this._handleKeyUp = (event) => {
114
- if (this.state.ignoreNextKeyUp) {
115
- this.setState({ ignoreNextKeyUp: false });
116
- return;
117
- }
118
- // istanbul ignore else
119
- if (event.key) {
120
- for (const [key, value] of this._hotKeyMap) {
121
- if (!this.props.hotkeySelect && key > this.state.selectedIndex) { // Start search at current index.
122
- if (event.key.toUpperCase() === value) {
123
- this.setState({ selectedIndex: key });
124
- return;
125
- }
126
- }
127
- }
128
- for (const [key, value] of this._hotKeyMap) {
129
- if (event.key.toUpperCase() === value) {
130
- this.setState({ selectedIndex: key }, () => {
131
- if (this.props.hotkeySelect && this._selectedElement) {
132
- this._selectedElement.select();
133
- }
134
- });
135
- event.stopPropagation();
136
- return;
137
- }
138
- }
139
- }
140
- if (event.key === appui_abstract_1.SpecialKey.ArrowLeft) {
141
- event.stopPropagation();
142
- if (this.props.parentMenu && this.props.parentSubmenu) {
143
- this.props.parentSubmenu.close();
144
- this.props.parentMenu.focus();
145
- }
146
- if (this.props.onEsc)
147
- this.props.onEsc(event);
148
- }
149
- if (event.key === appui_abstract_1.SpecialKey.Escape) {
150
- // istanbul ignore else
151
- if (this.props.onEsc)
152
- this.props.onEsc(event);
153
- }
154
- if ((event.key === appui_abstract_1.SpecialKey.Enter || event.key === appui_abstract_1.SpecialKey.ArrowRight) && this._selectedElement) {
155
- event.stopPropagation();
156
- // istanbul ignore else
157
- if (event.key === appui_abstract_1.SpecialKey.Enter || /* istanbul ignore next */ this._selectedElement instanceof ContextSubMenu_1.ContextSubMenu) {
158
- // istanbul ignore else
159
- if (this._selectedElement.select)
160
- this._selectedElement.select();
161
- }
162
- }
163
- let { selectedIndex } = this.state;
164
- if (event.key === appui_abstract_1.SpecialKey.ArrowUp || event.key === appui_abstract_1.SpecialKey.ArrowDown) {
165
- event.stopPropagation();
166
- if (selectedIndex === -1) {
167
- selectedIndex = 0;
168
- }
169
- else {
170
- if (event.key === appui_abstract_1.SpecialKey.ArrowUp) {
171
- if (this.state.selectedIndex === 0)
172
- selectedIndex = this._length - 1;
173
- else
174
- selectedIndex--;
175
- }
176
- if (event.key === appui_abstract_1.SpecialKey.ArrowDown) {
177
- if (this.state.selectedIndex === this._length - 1)
178
- selectedIndex = 0;
179
- else
180
- selectedIndex++;
181
- }
182
- }
183
- }
184
- this.setState({ selectedIndex });
185
- };
186
- this.state = {
187
- selectedIndex: this.props.selectedIndex,
188
- direction: props.direction,
189
- ignoreNextKeyUp: props.ignoreNextKeyUp,
190
- };
191
- }
192
- render() {
193
- const { opened, direction, onOutsideClick, onSelect, onEsc, autoflip, edgeLimit, hotkeySelect, // eslint-disable-line @typescript-eslint/no-unused-vars
194
- selectedIndex, floating, parentMenu, parentSubmenu, children, className, ignoreNextKeyUp, // eslint-disable-line @typescript-eslint/no-unused-vars
195
- ...props } = this.props;
196
- const renderDirection = parentMenu === undefined ? this.state.direction : direction;
197
- if (this._lastChildren !== children || this._lastDirection !== renderDirection || this._lastSelectedIndex !== this.state.selectedIndex) {
198
- this._injectedChildren = this._injectMenuItemProps(children, renderDirection, this.state.selectedIndex);
199
- this._lastChildren = children;
200
- this._lastDirection = renderDirection;
201
- this._lastSelectedIndex = this.state.selectedIndex;
202
- }
203
- const classNames = (0, classnames_1.default)("core-context-menu", className);
204
- return (React.createElement("div", { role: "presentation", className: classNames, onKeyUp: this._handleKeyUp, onClick: this._handleClick, "data-testid": "core-context-menu-root", ...props, ref: this._rootRef },
205
- React.createElement(DivWithOutsideClick_1.DivWithOutsideClick, { onOutsideClick: this._handleOnOutsideClick },
206
- React.createElement("div", { ref: this._menuRef, role: "menu", tabIndex: 0, "data-testid": "core-context-menu-container", className: (0, classnames_1.default)("core-context-menu-container", opened && "core-context-menu-opened", floating && "core-context-menu-floating", ContextMenu.getCSSClassNameFromDirection(renderDirection)) }, this._injectedChildren))));
207
- }
208
- getWindow() {
209
- var _a;
210
- const el = this._rootElement ? this._rootElement : /* istanbul ignore next */ this._menuElement;
211
- const parentDocument = el.ownerDocument;
212
- // istanbul ignore next
213
- return (_a = parentDocument.defaultView) !== null && _a !== void 0 ? _a : window;
214
- }
215
- /** @internal */
216
- componentDidMount() {
217
- const parentWindow = this.getWindow();
218
- parentWindow.addEventListener("focus", this._handleFocusChange);
219
- parentWindow.addEventListener("mouseup", this._handleFocusChange);
220
- this.checkRenderDirection();
221
- if (this.props.opened)
222
- this.focus();
223
- }
224
- /** @internal */
225
- componentWillUnmount() {
226
- const parentWindow = this.getWindow();
227
- parentWindow.removeEventListener("focus", this._handleFocusChange);
228
- parentWindow.removeEventListener("mouseup", this._handleFocusChange);
229
- }
230
- checkRenderDirection() {
231
- const { direction, autoflip, parentMenu } = this.props;
232
- const parentWindow = this.getWindow();
233
- let renderDirection = parentMenu === undefined ? this.state.direction : direction;
234
- if (parentWindow.innerHeight === this._parentWindowHeight && parentWindow.innerWidth === this._parentWindowWidth)
235
- return;
236
- this._parentWindowHeight = parentWindow.innerHeight;
237
- this._parentWindowWidth = parentWindow.innerWidth;
238
- // check if menu should flip
239
- if (parentWindow && autoflip && parentMenu === undefined) {
240
- const menuRect = this.getRect();
241
- renderDirection = ContextMenu.autoFlip(renderDirection, menuRect, parentWindow.innerWidth, parentWindow.innerHeight);
242
- // istanbul ignore next
243
- if (renderDirection !== this.state.direction)
244
- this.setState({ direction: renderDirection });
245
- }
246
- }
247
- componentDidUpdate(prevProps) {
248
- if (prevProps.selectedIndex !== this.props.selectedIndex) {
249
- this.setState((_, props) => ({ selectedIndex: props.selectedIndex }));
250
- }
251
- if (!prevProps.opened && this.props.opened) {
252
- this.setState((_, props) => ({ selectedIndex: props.selectedIndex }));
253
- }
254
- if (!this.props.parentMenu) {
255
- // const direction = this.props.direction!;
256
- // if ((!this.props.opened && prevProps.opened && direction !== this.state.direction) || prevProps.direction !== direction)
257
- this.checkRenderDirection();
258
- }
259
- }
260
- }
261
- exports.ContextMenu = ContextMenu;
262
- ContextMenu.defaultProps = {
263
- direction: ContextMenuDirection_1.ContextMenuDirection.BottomRight,
264
- autoflip: true,
265
- edgeLimit: true,
266
- hotkeySelect: true,
267
- selectedIndex: -1,
268
- floating: true,
269
- };
270
- /** @internal */
271
- ContextMenu.autoFlip = (dir, rect, windowWidth, windowHeight) => {
272
- if (rect.right > windowWidth) {
273
- switch (dir) {
274
- case ContextMenuDirection_1.ContextMenuDirection.TopRight:
275
- dir = ContextMenuDirection_1.ContextMenuDirection.TopLeft;
276
- break;
277
- case ContextMenuDirection_1.ContextMenuDirection.Right:
278
- dir = ContextMenuDirection_1.ContextMenuDirection.Left;
279
- break;
280
- case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
281
- dir = ContextMenuDirection_1.ContextMenuDirection.BottomLeft;
282
- break;
283
- }
284
- }
285
- if (rect.left < 0) {
286
- switch (dir) {
287
- case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
288
- dir = ContextMenuDirection_1.ContextMenuDirection.TopRight;
289
- break;
290
- case ContextMenuDirection_1.ContextMenuDirection.Left:
291
- dir = ContextMenuDirection_1.ContextMenuDirection.Right;
292
- break;
293
- case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
294
- dir = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
295
- break;
296
- }
297
- }
298
- if (rect.bottom > windowHeight) {
299
- switch (dir) {
300
- case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
301
- dir = ContextMenuDirection_1.ContextMenuDirection.TopLeft;
302
- break;
303
- case ContextMenuDirection_1.ContextMenuDirection.Bottom:
304
- dir = ContextMenuDirection_1.ContextMenuDirection.Top;
305
- break;
306
- case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
307
- dir = ContextMenuDirection_1.ContextMenuDirection.TopRight;
308
- break;
309
- }
310
- }
311
- if (rect.top < 0) {
312
- switch (dir) {
313
- case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
314
- dir = ContextMenuDirection_1.ContextMenuDirection.BottomLeft;
315
- break;
316
- case ContextMenuDirection_1.ContextMenuDirection.Top:
317
- dir = ContextMenuDirection_1.ContextMenuDirection.Bottom;
318
- break;
319
- case ContextMenuDirection_1.ContextMenuDirection.TopRight:
320
- dir = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
321
- break;
322
- }
323
- }
324
- return dir;
325
- };
326
- /** @internal */
327
- ContextMenu.getCSSClassNameFromDirection = (direction) => {
328
- let className = "";
329
- // istanbul ignore next
330
- if (direction === undefined)
331
- direction = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
332
- if (direction === ContextMenuDirection_1.ContextMenuDirection.None)
333
- return "";
334
- switch (direction) {
335
- case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
336
- className = "core-context-menu-top core-context-menu-left";
337
- break;
338
- case ContextMenuDirection_1.ContextMenuDirection.Top:
339
- className = "core-context-menu-top";
340
- break;
341
- case ContextMenuDirection_1.ContextMenuDirection.TopRight:
342
- className = "core-context-menu-top core-context-menu-right";
343
- break;
344
- case ContextMenuDirection_1.ContextMenuDirection.Left:
345
- className = "core-context-menu-left";
346
- break;
347
- case ContextMenuDirection_1.ContextMenuDirection.Center:
348
- className = "core-context-menu-center";
349
- break;
350
- case ContextMenuDirection_1.ContextMenuDirection.Right:
351
- className = "core-context-menu-right";
352
- break;
353
- case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
354
- className = "core-context-menu-bottom core-context-menu-left";
355
- break;
356
- case ContextMenuDirection_1.ContextMenuDirection.Bottom:
357
- className = "core-context-menu-bottom";
358
- break;
359
- case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
360
- className = "core-context-menu-bottom core-context-menu-right";
361
- break;
362
- }
363
- return className;
364
- };
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module ContextMenu
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.ContextMenu = void 0;
11
+ require("./ContextMenu.scss");
12
+ const classnames_1 = require("classnames");
13
+ const React = require("react");
14
+ const appui_abstract_1 = require("@itwin/appui-abstract");
15
+ const DivWithOutsideClick_1 = require("../base/DivWithOutsideClick");
16
+ const ContextMenuDirection_1 = require("./ContextMenuDirection");
17
+ const ContextMenuItem_1 = require("./ContextMenuItem");
18
+ const ContextSubMenu_1 = require("./ContextSubMenu");
19
+ /**
20
+ * A context menu populated with [[ContextMenuItem]] components.
21
+ * Can be nested using [[ContextSubMenu]] component.
22
+ * @public
23
+ */
24
+ class ContextMenu extends React.PureComponent {
25
+ constructor(props) {
26
+ super(props);
27
+ this._rootElement = null;
28
+ this._menuElement = null;
29
+ this._selectedElement = null;
30
+ this._length = 0;
31
+ this._hotKeyMap = new Map();
32
+ this._lastDirection = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
33
+ this._lastSelectedIndex = 0;
34
+ this._parentWindowHeight = 0;
35
+ this._parentWindowWidth = 0;
36
+ this._handleHotKeyParsed = (index, hotKey) => {
37
+ this._hotKeyMap.set(index, hotKey);
38
+ };
39
+ // istanbul ignore next
40
+ this._handleOnOutsideClick = (event) => {
41
+ if (this.props.opened && this.props.onOutsideClick)
42
+ this.props.onOutsideClick(event);
43
+ };
44
+ this._injectMenuItemProps = (children, direction, selectedIndex) => {
45
+ let index = 0;
46
+ // add inheritance data to submenu children
47
+ const ch = React.Children.map(children, (child) => {
48
+ // Capture only ContextSubMenus and ContextMenuItems.
49
+ if (child && typeof child === "object" && "props" in child && (child.type === ContextSubMenu_1.ContextSubMenu || child.type === ContextMenuItem_1.ContextMenuItem) &&
50
+ !appui_abstract_1.ConditionalBooleanValue.getValue(child.props.disabled) && !appui_abstract_1.ConditionalBooleanValue.getValue(child.props.hidden)) {
51
+ const id = index; // get separate id variable so value stays the same when onHover is called later.
52
+ const onHover = () => {
53
+ this.setState({ selectedIndex: id });
54
+ this.focus();
55
+ };
56
+ const ref = (el) => {
57
+ if (selectedIndex === id) // only save to this._selectedElement if previously captured bool is true
58
+ this._selectedElement = el;
59
+ };
60
+ const boundHandleHotKeyParse = this._handleHotKeyParsed.bind(this, id); // bind local callback for specific index
61
+ const childProps = {
62
+ parentMenu: this,
63
+ ref,
64
+ onHover,
65
+ isSelected: selectedIndex === id,
66
+ onHotKeyParsed: boundHandleHotKeyParse,
67
+ };
68
+ if (child.type === ContextSubMenu_1.ContextSubMenu) { // add direction only to sub-menus
69
+ childProps.direction = child.props.direction || /* istanbul ignore next */ direction;
70
+ }
71
+ index++;
72
+ return React.cloneElement(child, childProps);
73
+ }
74
+ else
75
+ return child; // Else, pass through unmodified
76
+ });
77
+ this._length = index;
78
+ return ch;
79
+ };
80
+ this._rootRef = (el) => {
81
+ this._rootElement = el;
82
+ };
83
+ this._menuRef = (el) => {
84
+ this._menuElement = el;
85
+ };
86
+ this.focus = () => {
87
+ // istanbul ignore else
88
+ if (this._menuElement)
89
+ this._menuElement.focus();
90
+ };
91
+ this.blur = () => {
92
+ // istanbul ignore else
93
+ if (this._menuElement)
94
+ this._menuElement.blur();
95
+ };
96
+ this.getRect = () => {
97
+ let clientRect = DOMRect.fromRect({ x: 0, y: 0, width: 0, height: 0 });
98
+ // istanbul ignore else
99
+ if (this._menuElement) {
100
+ clientRect = this._menuElement.getBoundingClientRect();
101
+ }
102
+ return clientRect;
103
+ };
104
+ this._handleFocusChange = (event) => {
105
+ // istanbul ignore else
106
+ if (this._rootElement && this.props.opened && event.target instanceof Node && this.props.onOutsideClick && !this._rootElement.contains(event.target))
107
+ this.props.onOutsideClick(event);
108
+ };
109
+ this._handleClick = (event) => {
110
+ if (this.props.onSelect)
111
+ this.props.onSelect(event);
112
+ };
113
+ this._handleKeyUp = (event) => {
114
+ if (this.state.ignoreNextKeyUp) {
115
+ this.setState({ ignoreNextKeyUp: false });
116
+ return;
117
+ }
118
+ // istanbul ignore else
119
+ if (event.key) {
120
+ for (const [key, value] of this._hotKeyMap) {
121
+ if (!this.props.hotkeySelect && key > this.state.selectedIndex) { // Start search at current index.
122
+ if (event.key.toUpperCase() === value) {
123
+ this.setState({ selectedIndex: key });
124
+ return;
125
+ }
126
+ }
127
+ }
128
+ for (const [key, value] of this._hotKeyMap) {
129
+ if (event.key.toUpperCase() === value) {
130
+ this.setState({ selectedIndex: key }, () => {
131
+ if (this.props.hotkeySelect && this._selectedElement) {
132
+ this._selectedElement.select();
133
+ }
134
+ });
135
+ event.stopPropagation();
136
+ return;
137
+ }
138
+ }
139
+ }
140
+ if (event.key === appui_abstract_1.SpecialKey.ArrowLeft) {
141
+ event.stopPropagation();
142
+ if (this.props.parentMenu && this.props.parentSubmenu) {
143
+ this.props.parentSubmenu.close();
144
+ this.props.parentMenu.focus();
145
+ }
146
+ if (this.props.onEsc)
147
+ this.props.onEsc(event);
148
+ }
149
+ if (event.key === appui_abstract_1.SpecialKey.Escape) {
150
+ // istanbul ignore else
151
+ if (this.props.onEsc)
152
+ this.props.onEsc(event);
153
+ }
154
+ if ((event.key === appui_abstract_1.SpecialKey.Enter || event.key === appui_abstract_1.SpecialKey.ArrowRight) && this._selectedElement) {
155
+ event.stopPropagation();
156
+ // istanbul ignore else
157
+ if (event.key === appui_abstract_1.SpecialKey.Enter || /* istanbul ignore next */ this._selectedElement instanceof ContextSubMenu_1.ContextSubMenu) {
158
+ // istanbul ignore else
159
+ if (this._selectedElement.select)
160
+ this._selectedElement.select();
161
+ }
162
+ }
163
+ let { selectedIndex } = this.state;
164
+ if (event.key === appui_abstract_1.SpecialKey.ArrowUp || event.key === appui_abstract_1.SpecialKey.ArrowDown) {
165
+ event.stopPropagation();
166
+ if (selectedIndex === -1) {
167
+ selectedIndex = 0;
168
+ }
169
+ else {
170
+ if (event.key === appui_abstract_1.SpecialKey.ArrowUp) {
171
+ if (this.state.selectedIndex === 0)
172
+ selectedIndex = this._length - 1;
173
+ else
174
+ selectedIndex--;
175
+ }
176
+ if (event.key === appui_abstract_1.SpecialKey.ArrowDown) {
177
+ if (this.state.selectedIndex === this._length - 1)
178
+ selectedIndex = 0;
179
+ else
180
+ selectedIndex++;
181
+ }
182
+ }
183
+ }
184
+ this.setState({ selectedIndex });
185
+ };
186
+ this.state = {
187
+ selectedIndex: this.props.selectedIndex,
188
+ direction: props.direction,
189
+ ignoreNextKeyUp: props.ignoreNextKeyUp,
190
+ };
191
+ }
192
+ render() {
193
+ const { opened, direction, onOutsideClick, onSelect, onEsc, autoflip, edgeLimit, hotkeySelect, // eslint-disable-line @typescript-eslint/no-unused-vars
194
+ selectedIndex, floating, parentMenu, parentSubmenu, children, className, ignoreNextKeyUp, // eslint-disable-line @typescript-eslint/no-unused-vars
195
+ ...props } = this.props;
196
+ const renderDirection = parentMenu === undefined ? this.state.direction : direction;
197
+ if (this._lastChildren !== children || this._lastDirection !== renderDirection || this._lastSelectedIndex !== this.state.selectedIndex) {
198
+ this._injectedChildren = this._injectMenuItemProps(children, renderDirection, this.state.selectedIndex);
199
+ this._lastChildren = children;
200
+ this._lastDirection = renderDirection;
201
+ this._lastSelectedIndex = this.state.selectedIndex;
202
+ }
203
+ const classNames = (0, classnames_1.default)("core-context-menu", className);
204
+ return (React.createElement("div", { role: "presentation", className: classNames, onKeyUp: this._handleKeyUp, onClick: this._handleClick, "data-testid": "core-context-menu-root", ...props, ref: this._rootRef },
205
+ React.createElement(DivWithOutsideClick_1.DivWithOutsideClick, { onOutsideClick: this._handleOnOutsideClick },
206
+ React.createElement("div", { ref: this._menuRef, role: "menu", tabIndex: 0, "data-testid": "core-context-menu-container", className: (0, classnames_1.default)("core-context-menu-container", opened && "core-context-menu-opened", floating && "core-context-menu-floating", ContextMenu.getCSSClassNameFromDirection(renderDirection)) }, this._injectedChildren))));
207
+ }
208
+ getWindow() {
209
+ const el = this._rootElement ? this._rootElement : /* istanbul ignore next */ this._menuElement;
210
+ const parentDocument = el.ownerDocument;
211
+ // istanbul ignore next
212
+ return parentDocument.defaultView ?? window;
213
+ }
214
+ /** @internal */
215
+ componentDidMount() {
216
+ const parentWindow = this.getWindow();
217
+ parentWindow.addEventListener("focus", this._handleFocusChange);
218
+ parentWindow.addEventListener("mouseup", this._handleFocusChange);
219
+ this.checkRenderDirection();
220
+ if (this.props.opened)
221
+ this.focus();
222
+ }
223
+ /** @internal */
224
+ componentWillUnmount() {
225
+ const parentWindow = this.getWindow();
226
+ parentWindow.removeEventListener("focus", this._handleFocusChange);
227
+ parentWindow.removeEventListener("mouseup", this._handleFocusChange);
228
+ }
229
+ checkRenderDirection() {
230
+ const { direction, autoflip, parentMenu } = this.props;
231
+ const parentWindow = this.getWindow();
232
+ let renderDirection = parentMenu === undefined ? this.state.direction : direction;
233
+ if (parentWindow.innerHeight === this._parentWindowHeight && parentWindow.innerWidth === this._parentWindowWidth)
234
+ return;
235
+ this._parentWindowHeight = parentWindow.innerHeight;
236
+ this._parentWindowWidth = parentWindow.innerWidth;
237
+ // check if menu should flip
238
+ if (parentWindow && autoflip && parentMenu === undefined) {
239
+ const menuRect = this.getRect();
240
+ renderDirection = ContextMenu.autoFlip(renderDirection, menuRect, parentWindow.innerWidth, parentWindow.innerHeight);
241
+ // istanbul ignore next
242
+ if (renderDirection !== this.state.direction)
243
+ this.setState({ direction: renderDirection });
244
+ }
245
+ }
246
+ componentDidUpdate(prevProps) {
247
+ if (prevProps.selectedIndex !== this.props.selectedIndex) {
248
+ this.setState((_, props) => ({ selectedIndex: props.selectedIndex }));
249
+ }
250
+ if (!prevProps.opened && this.props.opened) {
251
+ this.setState((_, props) => ({ selectedIndex: props.selectedIndex }));
252
+ }
253
+ if (!this.props.parentMenu) {
254
+ // const direction = this.props.direction!;
255
+ // if ((!this.props.opened && prevProps.opened && direction !== this.state.direction) || prevProps.direction !== direction)
256
+ this.checkRenderDirection();
257
+ }
258
+ }
259
+ }
260
+ ContextMenu.defaultProps = {
261
+ direction: ContextMenuDirection_1.ContextMenuDirection.BottomRight,
262
+ autoflip: true,
263
+ edgeLimit: true,
264
+ hotkeySelect: true,
265
+ selectedIndex: -1,
266
+ floating: true,
267
+ };
268
+ /** @internal */
269
+ ContextMenu.autoFlip = (dir, rect, windowWidth, windowHeight) => {
270
+ if (rect.right > windowWidth) {
271
+ switch (dir) {
272
+ case ContextMenuDirection_1.ContextMenuDirection.TopRight:
273
+ dir = ContextMenuDirection_1.ContextMenuDirection.TopLeft;
274
+ break;
275
+ case ContextMenuDirection_1.ContextMenuDirection.Right:
276
+ dir = ContextMenuDirection_1.ContextMenuDirection.Left;
277
+ break;
278
+ case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
279
+ dir = ContextMenuDirection_1.ContextMenuDirection.BottomLeft;
280
+ break;
281
+ }
282
+ }
283
+ if (rect.left < 0) {
284
+ switch (dir) {
285
+ case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
286
+ dir = ContextMenuDirection_1.ContextMenuDirection.TopRight;
287
+ break;
288
+ case ContextMenuDirection_1.ContextMenuDirection.Left:
289
+ dir = ContextMenuDirection_1.ContextMenuDirection.Right;
290
+ break;
291
+ case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
292
+ dir = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
293
+ break;
294
+ }
295
+ }
296
+ if (rect.bottom > windowHeight) {
297
+ switch (dir) {
298
+ case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
299
+ dir = ContextMenuDirection_1.ContextMenuDirection.TopLeft;
300
+ break;
301
+ case ContextMenuDirection_1.ContextMenuDirection.Bottom:
302
+ dir = ContextMenuDirection_1.ContextMenuDirection.Top;
303
+ break;
304
+ case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
305
+ dir = ContextMenuDirection_1.ContextMenuDirection.TopRight;
306
+ break;
307
+ }
308
+ }
309
+ if (rect.top < 0) {
310
+ switch (dir) {
311
+ case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
312
+ dir = ContextMenuDirection_1.ContextMenuDirection.BottomLeft;
313
+ break;
314
+ case ContextMenuDirection_1.ContextMenuDirection.Top:
315
+ dir = ContextMenuDirection_1.ContextMenuDirection.Bottom;
316
+ break;
317
+ case ContextMenuDirection_1.ContextMenuDirection.TopRight:
318
+ dir = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
319
+ break;
320
+ }
321
+ }
322
+ return dir;
323
+ };
324
+ /** @internal */
325
+ ContextMenu.getCSSClassNameFromDirection = (direction) => {
326
+ let className = "";
327
+ // istanbul ignore next
328
+ if (direction === undefined)
329
+ direction = ContextMenuDirection_1.ContextMenuDirection.BottomRight;
330
+ if (direction === ContextMenuDirection_1.ContextMenuDirection.None)
331
+ return "";
332
+ switch (direction) {
333
+ case ContextMenuDirection_1.ContextMenuDirection.TopLeft:
334
+ className = "core-context-menu-top core-context-menu-left";
335
+ break;
336
+ case ContextMenuDirection_1.ContextMenuDirection.Top:
337
+ className = "core-context-menu-top";
338
+ break;
339
+ case ContextMenuDirection_1.ContextMenuDirection.TopRight:
340
+ className = "core-context-menu-top core-context-menu-right";
341
+ break;
342
+ case ContextMenuDirection_1.ContextMenuDirection.Left:
343
+ className = "core-context-menu-left";
344
+ break;
345
+ case ContextMenuDirection_1.ContextMenuDirection.Center:
346
+ className = "core-context-menu-center";
347
+ break;
348
+ case ContextMenuDirection_1.ContextMenuDirection.Right:
349
+ className = "core-context-menu-right";
350
+ break;
351
+ case ContextMenuDirection_1.ContextMenuDirection.BottomLeft:
352
+ className = "core-context-menu-bottom core-context-menu-left";
353
+ break;
354
+ case ContextMenuDirection_1.ContextMenuDirection.Bottom:
355
+ className = "core-context-menu-bottom";
356
+ break;
357
+ case ContextMenuDirection_1.ContextMenuDirection.BottomRight:
358
+ className = "core-context-menu-bottom core-context-menu-right";
359
+ break;
360
+ }
361
+ return className;
362
+ };
363
+ exports.ContextMenu = ContextMenu;
365
364
  //# sourceMappingURL=ContextMenu.js.map