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

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 (590) hide show
  1. package/CHANGELOG.md +1 -93
  2. package/lib/cjs/core-react/UiCore.d.ts +1 -1
  3. package/lib/cjs/core-react/UiCore.js +1 -1
  4. package/lib/cjs/core-react/UiCore.js.map +1 -1
  5. package/lib/cjs/core-react/_typography.scss +7 -8
  6. package/lib/cjs/core-react/autosuggest/AutoSuggest.scss +2 -3
  7. package/lib/cjs/core-react/badge/BetaBadge.d.ts +0 -1
  8. package/lib/cjs/core-react/badge/BetaBadge.d.ts.map +1 -1
  9. package/lib/cjs/core-react/badge/BetaBadge.js +0 -1
  10. package/lib/cjs/core-react/badge/BetaBadge.js.map +1 -1
  11. package/lib/cjs/core-react/button/button.scss +31 -42
  12. package/lib/cjs/core-react/button/variables.scss +10 -7
  13. package/lib/cjs/core-react/checkbox/checkbox.scss +11 -16
  14. package/lib/cjs/core-react/checklistbox/CheckListBox.d.ts +4 -1
  15. package/lib/cjs/core-react/checklistbox/CheckListBox.d.ts.map +1 -1
  16. package/lib/cjs/core-react/checklistbox/CheckListBox.js.map +1 -1
  17. package/lib/cjs/core-react/classes.scss +0 -4
  18. package/lib/cjs/core-react/colorthemes.scss +42 -10
  19. package/lib/cjs/core-react/colorvariables.scss +53 -15
  20. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts +2 -0
  21. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  22. package/lib/cjs/core-react/contextmenu/ContextMenu.js.map +1 -1
  23. package/lib/cjs/core-react/contextmenu/ContextMenu.scss +7 -8
  24. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js +1 -1
  25. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  26. package/lib/cjs/core-react/dialog/Dialog.scss +4 -5
  27. package/lib/cjs/core-react/expandable/ExpandableList.d.ts +2 -0
  28. package/lib/cjs/core-react/expandable/ExpandableList.d.ts.map +1 -1
  29. package/lib/cjs/core-react/expandable/ExpandableList.js.map +1 -1
  30. package/lib/cjs/core-react/expandable/list.scss +7 -17
  31. package/lib/cjs/core-react/hocs/withTimeout.js.map +1 -1
  32. package/lib/cjs/core-react/icons/IconComponent.d.ts +1 -1
  33. package/lib/cjs/core-react/icons/IconComponent.d.ts.map +1 -1
  34. package/lib/cjs/core-react/icons/IconComponent.js +1 -7
  35. package/lib/cjs/core-react/icons/IconComponent.js.map +1 -1
  36. package/lib/cjs/core-react/icons/SvgPath.d.ts +1 -1
  37. package/lib/cjs/core-react/icons/SvgPath.d.ts.map +1 -1
  38. package/lib/cjs/core-react/icons/SvgPath.js +2 -2
  39. package/lib/cjs/core-react/icons/SvgPath.js.map +1 -1
  40. package/lib/{esm/core-react/icons/SvgSprite.scss → cjs/core-react/icons/SvgPath.scss} +1 -1
  41. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.scss +4 -5
  42. package/lib/cjs/core-react/index.scss +0 -4
  43. package/lib/cjs/core-react/inputs/Input.d.ts +2 -4
  44. package/lib/cjs/core-react/inputs/Input.d.ts.map +1 -1
  45. package/lib/cjs/core-react/inputs/Input.js +1 -2
  46. package/lib/cjs/core-react/inputs/Input.js.map +1 -1
  47. package/lib/cjs/core-react/inputs/InputLabel.d.ts +2 -0
  48. package/lib/cjs/core-react/inputs/InputLabel.d.ts.map +1 -1
  49. package/lib/cjs/core-react/inputs/InputLabel.js.map +1 -1
  50. package/lib/cjs/core-react/inputs/classes.scss +0 -2
  51. package/lib/cjs/core-react/inputs/index.scss +1 -3
  52. package/lib/cjs/core-react/inputs/input-label.scss +90 -0
  53. package/lib/cjs/core-react/inputs/input.scss +36 -38
  54. package/lib/cjs/core-react/inputs/variables.scss +20 -15
  55. package/lib/cjs/core-react/listbox/Listbox.scss +3 -3
  56. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts +1 -2
  57. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  58. package/lib/cjs/core-react/loading/LoadingSpinner.js +1 -16
  59. package/lib/cjs/core-react/loading/LoadingSpinner.js.map +1 -1
  60. package/lib/cjs/core-react/loading/LoadingSpinner.scss +4 -5
  61. package/lib/cjs/core-react/messagebox/MessageBox.d.ts +4 -0
  62. package/lib/cjs/core-react/messagebox/MessageBox.d.ts.map +1 -1
  63. package/lib/cjs/core-react/messagebox/MessageBox.js.map +1 -1
  64. package/lib/cjs/core-react/popup/Popup.d.ts +2 -0
  65. package/lib/cjs/core-react/popup/Popup.d.ts.map +1 -1
  66. package/lib/cjs/core-react/popup/Popup.js.map +1 -1
  67. package/lib/cjs/core-react/popup/Popup.scss +123 -123
  68. package/lib/cjs/core-react/radialmenu/RadialMenu.d.ts +4 -0
  69. package/lib/cjs/core-react/radialmenu/RadialMenu.d.ts.map +1 -1
  70. package/lib/cjs/core-react/radialmenu/RadialMenu.js.map +1 -1
  71. package/lib/cjs/core-react/radialmenu/RadialMenu.scss +1 -2
  72. package/lib/cjs/core-react/searchbox/SearchBox.scss +2 -4
  73. package/lib/cjs/core-react/settings/SettingsContainer.js +1 -1
  74. package/lib/cjs/core-react/settings/SettingsContainer.js.map +1 -1
  75. package/lib/cjs/core-react/settings/SettingsContainer.scss +8 -7
  76. package/lib/cjs/core-react/style/baseline.scss +6 -8
  77. package/lib/cjs/core-react/style/data-viz.scss +11 -14
  78. package/lib/cjs/core-react/style/itwinui-overrides.scss +0 -1
  79. package/lib/cjs/core-react/style/mixins.scss +0 -1
  80. package/lib/cjs/core-react/style/opacity.scss +9 -10
  81. package/lib/cjs/core-react/style/space.scss +9 -13
  82. package/lib/cjs/core-react/style/speed.scss +3 -4
  83. package/lib/cjs/core-react/style/typography.scss +26 -25
  84. package/lib/cjs/core-react/style/variables.scss +4 -5
  85. package/lib/cjs/core-react/tabs/Tabs.d.ts +1 -1
  86. package/lib/cjs/core-react/tabs/Tabs.js.map +1 -1
  87. package/lib/cjs/core-react/tabs/classes.scss +0 -1
  88. package/lib/cjs/core-react/tabs/index.scss +0 -1
  89. package/lib/cjs/core-react/tabs/tabs.scss +38 -49
  90. package/lib/cjs/core-react/tabs/vertical.scss +17 -23
  91. package/lib/cjs/core-react/text/classes.scss +0 -8
  92. package/lib/cjs/core-react/text/index.scss +0 -8
  93. package/lib/cjs/core-react/text/mixins.scss +8 -46
  94. package/lib/cjs/core-react/tree/Node.scss +5 -5
  95. package/lib/cjs/core-react.d.ts +1 -41
  96. package/lib/cjs/core-react.d.ts.map +1 -1
  97. package/lib/cjs/core-react.js +1 -41
  98. package/lib/cjs/core-react.js.map +1 -1
  99. package/lib/esm/core-react/UiCore.d.ts +1 -1
  100. package/lib/esm/core-react/UiCore.js +1 -1
  101. package/lib/esm/core-react/UiCore.js.map +1 -1
  102. package/lib/esm/core-react/_typography.scss +7 -8
  103. package/lib/esm/core-react/autosuggest/AutoSuggest.scss +2 -3
  104. package/lib/esm/core-react/badge/BetaBadge.d.ts +0 -1
  105. package/lib/esm/core-react/badge/BetaBadge.d.ts.map +1 -1
  106. package/lib/esm/core-react/badge/BetaBadge.js +0 -1
  107. package/lib/esm/core-react/badge/BetaBadge.js.map +1 -1
  108. package/lib/esm/core-react/button/button.scss +31 -42
  109. package/lib/esm/core-react/button/variables.scss +10 -7
  110. package/lib/esm/core-react/checkbox/checkbox.scss +11 -16
  111. package/lib/esm/core-react/checklistbox/CheckListBox.d.ts +4 -1
  112. package/lib/esm/core-react/checklistbox/CheckListBox.d.ts.map +1 -1
  113. package/lib/esm/core-react/checklistbox/CheckListBox.js.map +1 -1
  114. package/lib/esm/core-react/classes.scss +0 -4
  115. package/lib/esm/core-react/colorthemes.scss +42 -10
  116. package/lib/esm/core-react/colorvariables.scss +53 -15
  117. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts +2 -0
  118. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  119. package/lib/esm/core-react/contextmenu/ContextMenu.js.map +1 -1
  120. package/lib/esm/core-react/contextmenu/ContextMenu.scss +7 -8
  121. package/lib/esm/core-react/contextmenu/ContextSubMenu.js +2 -2
  122. package/lib/esm/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  123. package/lib/esm/core-react/dialog/Dialog.scss +4 -5
  124. package/lib/esm/core-react/expandable/ExpandableList.d.ts +2 -0
  125. package/lib/esm/core-react/expandable/ExpandableList.d.ts.map +1 -1
  126. package/lib/esm/core-react/expandable/ExpandableList.js.map +1 -1
  127. package/lib/esm/core-react/expandable/list.scss +7 -17
  128. package/lib/esm/core-react/hocs/withTimeout.js.map +1 -1
  129. package/lib/esm/core-react/icons/IconComponent.d.ts +1 -1
  130. package/lib/esm/core-react/icons/IconComponent.d.ts.map +1 -1
  131. package/lib/esm/core-react/icons/IconComponent.js +1 -7
  132. package/lib/esm/core-react/icons/IconComponent.js.map +1 -1
  133. package/lib/esm/core-react/icons/SvgPath.d.ts +1 -1
  134. package/lib/esm/core-react/icons/SvgPath.d.ts.map +1 -1
  135. package/lib/esm/core-react/icons/SvgPath.js +2 -2
  136. package/lib/esm/core-react/icons/SvgPath.js.map +1 -1
  137. package/lib/{cjs/core-react/icons/SvgSprite.scss → esm/core-react/icons/SvgPath.scss} +1 -1
  138. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.scss +4 -5
  139. package/lib/esm/core-react/index.scss +0 -4
  140. package/lib/esm/core-react/inputs/Input.d.ts +2 -4
  141. package/lib/esm/core-react/inputs/Input.d.ts.map +1 -1
  142. package/lib/esm/core-react/inputs/Input.js +1 -2
  143. package/lib/esm/core-react/inputs/Input.js.map +1 -1
  144. package/lib/esm/core-react/inputs/InputLabel.d.ts +2 -0
  145. package/lib/esm/core-react/inputs/InputLabel.d.ts.map +1 -1
  146. package/lib/esm/core-react/inputs/InputLabel.js.map +1 -1
  147. package/lib/esm/core-react/inputs/classes.scss +0 -2
  148. package/lib/esm/core-react/inputs/index.scss +1 -3
  149. package/lib/esm/core-react/inputs/input-label.scss +90 -0
  150. package/lib/esm/core-react/inputs/input.scss +36 -38
  151. package/lib/esm/core-react/inputs/variables.scss +20 -15
  152. package/lib/esm/core-react/listbox/Listbox.scss +3 -3
  153. package/lib/esm/core-react/loading/LoadingSpinner.d.ts +1 -2
  154. package/lib/esm/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  155. package/lib/esm/core-react/loading/LoadingSpinner.js +1 -16
  156. package/lib/esm/core-react/loading/LoadingSpinner.js.map +1 -1
  157. package/lib/esm/core-react/loading/LoadingSpinner.scss +4 -5
  158. package/lib/esm/core-react/messagebox/MessageBox.d.ts +4 -0
  159. package/lib/esm/core-react/messagebox/MessageBox.d.ts.map +1 -1
  160. package/lib/esm/core-react/messagebox/MessageBox.js.map +1 -1
  161. package/lib/esm/core-react/popup/Popup.d.ts +2 -0
  162. package/lib/esm/core-react/popup/Popup.d.ts.map +1 -1
  163. package/lib/esm/core-react/popup/Popup.js.map +1 -1
  164. package/lib/esm/core-react/popup/Popup.scss +123 -123
  165. package/lib/esm/core-react/radialmenu/RadialMenu.d.ts +4 -0
  166. package/lib/esm/core-react/radialmenu/RadialMenu.d.ts.map +1 -1
  167. package/lib/esm/core-react/radialmenu/RadialMenu.js.map +1 -1
  168. package/lib/esm/core-react/radialmenu/RadialMenu.scss +1 -2
  169. package/lib/esm/core-react/searchbox/SearchBox.scss +2 -4
  170. package/lib/esm/core-react/settings/SettingsContainer.js +1 -1
  171. package/lib/esm/core-react/settings/SettingsContainer.js.map +1 -1
  172. package/lib/esm/core-react/settings/SettingsContainer.scss +8 -7
  173. package/lib/esm/core-react/style/baseline.scss +6 -8
  174. package/lib/esm/core-react/style/data-viz.scss +11 -14
  175. package/lib/esm/core-react/style/itwinui-overrides.scss +0 -1
  176. package/lib/esm/core-react/style/mixins.scss +0 -1
  177. package/lib/esm/core-react/style/opacity.scss +9 -10
  178. package/lib/esm/core-react/style/space.scss +9 -13
  179. package/lib/esm/core-react/style/speed.scss +3 -4
  180. package/lib/esm/core-react/style/typography.scss +26 -25
  181. package/lib/esm/core-react/style/variables.scss +4 -5
  182. package/lib/esm/core-react/tabs/Tabs.d.ts +1 -1
  183. package/lib/esm/core-react/tabs/Tabs.js.map +1 -1
  184. package/lib/esm/core-react/tabs/classes.scss +0 -1
  185. package/lib/esm/core-react/tabs/index.scss +0 -1
  186. package/lib/esm/core-react/tabs/tabs.scss +38 -49
  187. package/lib/esm/core-react/tabs/vertical.scss +17 -23
  188. package/lib/esm/core-react/text/classes.scss +0 -8
  189. package/lib/esm/core-react/text/index.scss +0 -8
  190. package/lib/esm/core-react/text/mixins.scss +8 -46
  191. package/lib/esm/core-react/tree/Node.scss +5 -5
  192. package/lib/esm/core-react.d.ts +1 -41
  193. package/lib/esm/core-react.d.ts.map +1 -1
  194. package/lib/esm/core-react.js +1 -41
  195. package/lib/esm/core-react.js.map +1 -1
  196. package/package.json +23 -21
  197. package/lib/cjs/core-react/badge/BetaBadge.scss +0 -9
  198. package/lib/cjs/core-react/button/Button.d.ts +0 -48
  199. package/lib/cjs/core-react/button/Button.d.ts.map +0 -1
  200. package/lib/cjs/core-react/button/Button.js +0 -86
  201. package/lib/cjs/core-react/button/Button.js.map +0 -1
  202. package/lib/cjs/core-react/checkbox/Checkbox.d.ts +0 -57
  203. package/lib/cjs/core-react/checkbox/Checkbox.d.ts.map +0 -1
  204. package/lib/cjs/core-react/checkbox/Checkbox.js +0 -65
  205. package/lib/cjs/core-react/checkbox/Checkbox.js.map +0 -1
  206. package/lib/cjs/core-react/dialog/DialogButtonDef.d.ts +0 -47
  207. package/lib/cjs/core-react/dialog/DialogButtonDef.d.ts.map +0 -1
  208. package/lib/cjs/core-react/dialog/DialogButtonDef.js +0 -38
  209. package/lib/cjs/core-react/dialog/DialogButtonDef.js.map +0 -1
  210. package/lib/cjs/core-react/expandable/ExpandableBlock.d.ts +0 -34
  211. package/lib/cjs/core-react/expandable/ExpandableBlock.d.ts.map +0 -1
  212. package/lib/cjs/core-react/expandable/ExpandableBlock.js +0 -36
  213. package/lib/cjs/core-react/expandable/ExpandableBlock.js.map +0 -1
  214. package/lib/cjs/core-react/expandable/ExpandableBlock.scss +0 -145
  215. package/lib/cjs/core-react/form/Field.d.ts +0 -20
  216. package/lib/cjs/core-react/form/Field.d.ts.map +0 -1
  217. package/lib/cjs/core-react/form/Field.js +0 -45
  218. package/lib/cjs/core-react/form/Field.js.map +0 -1
  219. package/lib/cjs/core-react/form/Form.d.ts +0 -132
  220. package/lib/cjs/core-react/form/Form.d.ts.map +0 -1
  221. package/lib/cjs/core-react/form/Form.js +0 -132
  222. package/lib/cjs/core-react/form/Form.js.map +0 -1
  223. package/lib/cjs/core-react/form/Form.scss +0 -78
  224. package/lib/cjs/core-react/icons/SvgSprite.d.ts +0 -21
  225. package/lib/cjs/core-react/icons/SvgSprite.d.ts.map +0 -1
  226. package/lib/cjs/core-react/icons/SvgSprite.js +0 -27
  227. package/lib/cjs/core-react/icons/SvgSprite.js.map +0 -1
  228. package/lib/cjs/core-react/inputs/LabeledInput.d.ts +0 -18
  229. package/lib/cjs/core-react/inputs/LabeledInput.d.ts.map +0 -1
  230. package/lib/cjs/core-react/inputs/LabeledInput.js +0 -34
  231. package/lib/cjs/core-react/inputs/LabeledInput.js.map +0 -1
  232. package/lib/cjs/core-react/inputs/LabeledTextarea.d.ts +0 -18
  233. package/lib/cjs/core-react/inputs/LabeledTextarea.d.ts.map +0 -1
  234. package/lib/cjs/core-react/inputs/LabeledTextarea.js +0 -32
  235. package/lib/cjs/core-react/inputs/LabeledTextarea.js.map +0 -1
  236. package/lib/cjs/core-react/inputs/Textarea.d.ts +0 -23
  237. package/lib/cjs/core-react/inputs/Textarea.d.ts.map +0 -1
  238. package/lib/cjs/core-react/inputs/Textarea.js +0 -36
  239. package/lib/cjs/core-react/inputs/Textarea.js.map +0 -1
  240. package/lib/cjs/core-react/inputs/labeled-input.scss +0 -103
  241. package/lib/cjs/core-react/inputs/labeled-textarea.scss +0 -77
  242. package/lib/cjs/core-react/inputs/textarea.scss +0 -55
  243. package/lib/cjs/core-react/loading/Spinner.d.ts +0 -38
  244. package/lib/cjs/core-react/loading/Spinner.d.ts.map +0 -1
  245. package/lib/cjs/core-react/loading/Spinner.js +0 -61
  246. package/lib/cjs/core-react/loading/Spinner.js.map +0 -1
  247. package/lib/cjs/core-react/loading/Spinner.scss +0 -26
  248. package/lib/cjs/core-react/messagebox/MessageSeverity.d.ts +0 -16
  249. package/lib/cjs/core-react/messagebox/MessageSeverity.d.ts.map +0 -1
  250. package/lib/cjs/core-react/messagebox/MessageSeverity.js +0 -24
  251. package/lib/cjs/core-react/messagebox/MessageSeverity.js.map +0 -1
  252. package/lib/cjs/core-react/progress-indicators/ProgressBar.d.ts +0 -29
  253. package/lib/cjs/core-react/progress-indicators/ProgressBar.d.ts.map +0 -1
  254. package/lib/cjs/core-react/progress-indicators/ProgressBar.js +0 -48
  255. package/lib/cjs/core-react/progress-indicators/ProgressBar.js.map +0 -1
  256. package/lib/cjs/core-react/progress-indicators/ProgressSpinner.d.ts +0 -49
  257. package/lib/cjs/core-react/progress-indicators/ProgressSpinner.d.ts.map +0 -1
  258. package/lib/cjs/core-react/progress-indicators/ProgressSpinner.js +0 -74
  259. package/lib/cjs/core-react/progress-indicators/ProgressSpinner.js.map +0 -1
  260. package/lib/cjs/core-react/progress-indicators/classes.scss +0 -33
  261. package/lib/cjs/core-react/progress-indicators/index.scss +0 -6
  262. package/lib/cjs/core-react/progress-indicators/progress-bar.scss +0 -91
  263. package/lib/cjs/core-react/progress-indicators/progress-spinner.scss +0 -132
  264. package/lib/cjs/core-react/radio/Radio.d.ts +0 -20
  265. package/lib/cjs/core-react/radio/Radio.d.ts.map +0 -1
  266. package/lib/cjs/core-react/radio/Radio.js +0 -28
  267. package/lib/cjs/core-react/radio/Radio.js.map +0 -1
  268. package/lib/cjs/core-react/radio/classes.scss +0 -7
  269. package/lib/cjs/core-react/radio/index.scss +0 -8
  270. package/lib/cjs/core-react/radio/radio.scss +0 -89
  271. package/lib/cjs/core-react/select/LabeledSelect.d.ts +0 -20
  272. package/lib/cjs/core-react/select/LabeledSelect.d.ts.map +0 -1
  273. package/lib/cjs/core-react/select/LabeledSelect.js +0 -34
  274. package/lib/cjs/core-react/select/LabeledSelect.js.map +0 -1
  275. package/lib/cjs/core-react/select/LabeledThemedSelect.d.ts +0 -16
  276. package/lib/cjs/core-react/select/LabeledThemedSelect.d.ts.map +0 -1
  277. package/lib/cjs/core-react/select/LabeledThemedSelect.js +0 -31
  278. package/lib/cjs/core-react/select/LabeledThemedSelect.js.map +0 -1
  279. package/lib/cjs/core-react/select/Select.d.ts +0 -53
  280. package/lib/cjs/core-react/select/Select.d.ts.map +0 -1
  281. package/lib/cjs/core-react/select/Select.js +0 -60
  282. package/lib/cjs/core-react/select/Select.js.map +0 -1
  283. package/lib/cjs/core-react/select/ThemedSelect.d.ts +0 -104
  284. package/lib/cjs/core-react/select/ThemedSelect.d.ts.map +0 -1
  285. package/lib/cjs/core-react/select/ThemedSelect.js +0 -57
  286. package/lib/cjs/core-react/select/ThemedSelect.js.map +0 -1
  287. package/lib/cjs/core-react/select/classes.scss +0 -9
  288. package/lib/cjs/core-react/select/index.scss +0 -10
  289. package/lib/cjs/core-react/select/labeled-select.scss +0 -72
  290. package/lib/cjs/core-react/select/labeled-themed-select.scss +0 -77
  291. package/lib/cjs/core-react/select/modalHelper.d.ts +0 -5
  292. package/lib/cjs/core-react/select/modalHelper.d.ts.map +0 -1
  293. package/lib/cjs/core-react/select/modalHelper.js +0 -21
  294. package/lib/cjs/core-react/select/modalHelper.js.map +0 -1
  295. package/lib/cjs/core-react/select/select.scss +0 -74
  296. package/lib/cjs/core-react/select/themed-select.scss +0 -159
  297. package/lib/cjs/core-react/slider/Slider.d.ts +0 -80
  298. package/lib/cjs/core-react/slider/Slider.d.ts.map +0 -1
  299. package/lib/cjs/core-react/slider/Slider.js +0 -91
  300. package/lib/cjs/core-react/slider/Slider.js.map +0 -1
  301. package/lib/cjs/core-react/slider/Slider.scss +0 -96
  302. package/lib/cjs/core-react/splitbutton/SplitButton.d.ts +0 -62
  303. package/lib/cjs/core-react/splitbutton/SplitButton.d.ts.map +0 -1
  304. package/lib/cjs/core-react/splitbutton/SplitButton.js +0 -104
  305. package/lib/cjs/core-react/splitbutton/SplitButton.js.map +0 -1
  306. package/lib/cjs/core-react/splitbutton/SplitButton.scss +0 -137
  307. package/lib/cjs/core-react/tabs/HorizontalTabs.d.ts +0 -11
  308. package/lib/cjs/core-react/tabs/HorizontalTabs.d.ts.map +0 -1
  309. package/lib/cjs/core-react/tabs/HorizontalTabs.js +0 -22
  310. package/lib/cjs/core-react/tabs/HorizontalTabs.js.map +0 -1
  311. package/lib/cjs/core-react/tabs/horizontal.scss +0 -77
  312. package/lib/cjs/core-react/text/Headline.d.ts +0 -11
  313. package/lib/cjs/core-react/text/Headline.d.ts.map +0 -1
  314. package/lib/cjs/core-react/text/Headline.js +0 -21
  315. package/lib/cjs/core-react/text/Headline.js.map +0 -1
  316. package/lib/cjs/core-react/text/LeadingText.d.ts +0 -11
  317. package/lib/cjs/core-react/text/LeadingText.d.ts.map +0 -1
  318. package/lib/cjs/core-react/text/LeadingText.js +0 -21
  319. package/lib/cjs/core-react/text/LeadingText.js.map +0 -1
  320. package/lib/cjs/core-react/text/LeadingText2.d.ts +0 -11
  321. package/lib/cjs/core-react/text/LeadingText2.d.ts.map +0 -1
  322. package/lib/cjs/core-react/text/LeadingText2.js +0 -21
  323. package/lib/cjs/core-react/text/LeadingText2.js.map +0 -1
  324. package/lib/cjs/core-react/text/SmallText.d.ts +0 -11
  325. package/lib/cjs/core-react/text/SmallText.d.ts.map +0 -1
  326. package/lib/cjs/core-react/text/SmallText.js +0 -21
  327. package/lib/cjs/core-react/text/SmallText.js.map +0 -1
  328. package/lib/cjs/core-react/text/Subheading.d.ts +0 -11
  329. package/lib/cjs/core-react/text/Subheading.d.ts.map +0 -1
  330. package/lib/cjs/core-react/text/Subheading.js +0 -21
  331. package/lib/cjs/core-react/text/Subheading.js.map +0 -1
  332. package/lib/cjs/core-react/text/Subheading2.d.ts +0 -11
  333. package/lib/cjs/core-react/text/Subheading2.d.ts.map +0 -1
  334. package/lib/cjs/core-react/text/Subheading2.js +0 -21
  335. package/lib/cjs/core-react/text/Subheading2.js.map +0 -1
  336. package/lib/cjs/core-react/text/Title.d.ts +0 -11
  337. package/lib/cjs/core-react/text/Title.d.ts.map +0 -1
  338. package/lib/cjs/core-react/text/Title.js +0 -21
  339. package/lib/cjs/core-react/text/Title.js.map +0 -1
  340. package/lib/cjs/core-react/text/Title2.d.ts +0 -11
  341. package/lib/cjs/core-react/text/Title2.d.ts.map +0 -1
  342. package/lib/cjs/core-react/text/Title2.js +0 -21
  343. package/lib/cjs/core-react/text/Title2.js.map +0 -1
  344. package/lib/cjs/core-react/text/headline.scss +0 -10
  345. package/lib/cjs/core-react/text/leading-2.scss +0 -11
  346. package/lib/cjs/core-react/text/leading.scss +0 -10
  347. package/lib/cjs/core-react/text/small.scss +0 -10
  348. package/lib/cjs/core-react/text/subheading-2.scss +0 -11
  349. package/lib/cjs/core-react/text/subheading.scss +0 -11
  350. package/lib/cjs/core-react/text/title-2.scss +0 -11
  351. package/lib/cjs/core-react/text/title.scss +0 -10
  352. package/lib/cjs/core-react/tiles/FeaturedTile.d.ts +0 -11
  353. package/lib/cjs/core-react/tiles/FeaturedTile.d.ts.map +0 -1
  354. package/lib/cjs/core-react/tiles/FeaturedTile.js +0 -21
  355. package/lib/cjs/core-react/tiles/FeaturedTile.js.map +0 -1
  356. package/lib/cjs/core-react/tiles/MinimalFeaturedTile.d.ts +0 -11
  357. package/lib/cjs/core-react/tiles/MinimalFeaturedTile.d.ts.map +0 -1
  358. package/lib/cjs/core-react/tiles/MinimalFeaturedTile.js +0 -21
  359. package/lib/cjs/core-react/tiles/MinimalFeaturedTile.js.map +0 -1
  360. package/lib/cjs/core-react/tiles/MinimalTile.d.ts +0 -11
  361. package/lib/cjs/core-react/tiles/MinimalTile.d.ts.map +0 -1
  362. package/lib/cjs/core-react/tiles/MinimalTile.js +0 -21
  363. package/lib/cjs/core-react/tiles/MinimalTile.js.map +0 -1
  364. package/lib/cjs/core-react/tiles/Tile.d.ts +0 -32
  365. package/lib/cjs/core-react/tiles/Tile.d.ts.map +0 -1
  366. package/lib/cjs/core-react/tiles/Tile.js +0 -40
  367. package/lib/cjs/core-react/tiles/Tile.js.map +0 -1
  368. package/lib/cjs/core-react/tiles/classes.scss +0 -7
  369. package/lib/cjs/core-react/tiles/index.scss +0 -5
  370. package/lib/cjs/core-react/tiles/tile.scss +0 -134
  371. package/lib/cjs/core-react/toggle/LabeledToggle.d.ts +0 -26
  372. package/lib/cjs/core-react/toggle/LabeledToggle.d.ts.map +0 -1
  373. package/lib/cjs/core-react/toggle/LabeledToggle.js +0 -29
  374. package/lib/cjs/core-react/toggle/LabeledToggle.js.map +0 -1
  375. package/lib/cjs/core-react/toggle/LabeledToggle.scss +0 -21
  376. package/lib/cjs/core-react/toggle/Toggle.d.ts +0 -52
  377. package/lib/cjs/core-react/toggle/Toggle.d.ts.map +0 -1
  378. package/lib/cjs/core-react/toggle/Toggle.js +0 -105
  379. package/lib/cjs/core-react/toggle/Toggle.js.map +0 -1
  380. package/lib/cjs/core-react/toggle/Toggle.scss +0 -135
  381. package/lib/cjs/core-react/tooltip/Tooltip.d.ts +0 -34
  382. package/lib/cjs/core-react/tooltip/Tooltip.d.ts.map +0 -1
  383. package/lib/cjs/core-react/tooltip/Tooltip.js +0 -57
  384. package/lib/cjs/core-react/tooltip/Tooltip.js.map +0 -1
  385. package/lib/cjs/core-react/tooltip/Tooltip.scss +0 -18
  386. package/lib/cjs/core-react/utils/PointProps.d.ts +0 -12
  387. package/lib/cjs/core-react/utils/PointProps.d.ts.map +0 -1
  388. package/lib/cjs/core-react/utils/PointProps.js +0 -10
  389. package/lib/cjs/core-react/utils/PointProps.js.map +0 -1
  390. package/lib/cjs/core-react/utils/UiEvent.d.ts +0 -10
  391. package/lib/cjs/core-react/utils/UiEvent.d.ts.map +0 -1
  392. package/lib/cjs/core-react/utils/UiEvent.js +0 -18
  393. package/lib/cjs/core-react/utils/UiEvent.js.map +0 -1
  394. package/lib/esm/core-react/badge/BetaBadge.scss +0 -9
  395. package/lib/esm/core-react/button/Button.d.ts +0 -48
  396. package/lib/esm/core-react/button/Button.d.ts.map +0 -1
  397. package/lib/esm/core-react/button/Button.js +0 -81
  398. package/lib/esm/core-react/button/Button.js.map +0 -1
  399. package/lib/esm/core-react/checkbox/Checkbox.d.ts +0 -57
  400. package/lib/esm/core-react/checkbox/Checkbox.d.ts.map +0 -1
  401. package/lib/esm/core-react/checkbox/Checkbox.js +0 -61
  402. package/lib/esm/core-react/checkbox/Checkbox.js.map +0 -1
  403. package/lib/esm/core-react/dialog/DialogButtonDef.d.ts +0 -47
  404. package/lib/esm/core-react/dialog/DialogButtonDef.d.ts.map +0 -1
  405. package/lib/esm/core-react/dialog/DialogButtonDef.js +0 -35
  406. package/lib/esm/core-react/dialog/DialogButtonDef.js.map +0 -1
  407. package/lib/esm/core-react/expandable/ExpandableBlock.d.ts +0 -34
  408. package/lib/esm/core-react/expandable/ExpandableBlock.d.ts.map +0 -1
  409. package/lib/esm/core-react/expandable/ExpandableBlock.js +0 -32
  410. package/lib/esm/core-react/expandable/ExpandableBlock.js.map +0 -1
  411. package/lib/esm/core-react/expandable/ExpandableBlock.scss +0 -145
  412. package/lib/esm/core-react/form/Field.d.ts +0 -20
  413. package/lib/esm/core-react/form/Field.d.ts.map +0 -1
  414. package/lib/esm/core-react/form/Field.js +0 -41
  415. package/lib/esm/core-react/form/Field.js.map +0 -1
  416. package/lib/esm/core-react/form/Form.d.ts +0 -132
  417. package/lib/esm/core-react/form/Form.d.ts.map +0 -1
  418. package/lib/esm/core-react/form/Form.js +0 -128
  419. package/lib/esm/core-react/form/Form.js.map +0 -1
  420. package/lib/esm/core-react/form/Form.scss +0 -78
  421. package/lib/esm/core-react/icons/SvgSprite.d.ts +0 -21
  422. package/lib/esm/core-react/icons/SvgSprite.d.ts.map +0 -1
  423. package/lib/esm/core-react/icons/SvgSprite.js +0 -23
  424. package/lib/esm/core-react/icons/SvgSprite.js.map +0 -1
  425. package/lib/esm/core-react/inputs/LabeledInput.d.ts +0 -18
  426. package/lib/esm/core-react/inputs/LabeledInput.d.ts.map +0 -1
  427. package/lib/esm/core-react/inputs/LabeledInput.js +0 -30
  428. package/lib/esm/core-react/inputs/LabeledInput.js.map +0 -1
  429. package/lib/esm/core-react/inputs/LabeledTextarea.d.ts +0 -18
  430. package/lib/esm/core-react/inputs/LabeledTextarea.d.ts.map +0 -1
  431. package/lib/esm/core-react/inputs/LabeledTextarea.js +0 -28
  432. package/lib/esm/core-react/inputs/LabeledTextarea.js.map +0 -1
  433. package/lib/esm/core-react/inputs/Textarea.d.ts +0 -23
  434. package/lib/esm/core-react/inputs/Textarea.d.ts.map +0 -1
  435. package/lib/esm/core-react/inputs/Textarea.js +0 -33
  436. package/lib/esm/core-react/inputs/Textarea.js.map +0 -1
  437. package/lib/esm/core-react/inputs/labeled-input.scss +0 -103
  438. package/lib/esm/core-react/inputs/labeled-textarea.scss +0 -77
  439. package/lib/esm/core-react/inputs/textarea.scss +0 -55
  440. package/lib/esm/core-react/loading/Spinner.d.ts +0 -38
  441. package/lib/esm/core-react/loading/Spinner.d.ts.map +0 -1
  442. package/lib/esm/core-react/loading/Spinner.js +0 -57
  443. package/lib/esm/core-react/loading/Spinner.js.map +0 -1
  444. package/lib/esm/core-react/loading/Spinner.scss +0 -26
  445. package/lib/esm/core-react/messagebox/MessageSeverity.d.ts +0 -16
  446. package/lib/esm/core-react/messagebox/MessageSeverity.d.ts.map +0 -1
  447. package/lib/esm/core-react/messagebox/MessageSeverity.js +0 -21
  448. package/lib/esm/core-react/messagebox/MessageSeverity.js.map +0 -1
  449. package/lib/esm/core-react/progress-indicators/ProgressBar.d.ts +0 -29
  450. package/lib/esm/core-react/progress-indicators/ProgressBar.d.ts.map +0 -1
  451. package/lib/esm/core-react/progress-indicators/ProgressBar.js +0 -44
  452. package/lib/esm/core-react/progress-indicators/ProgressBar.js.map +0 -1
  453. package/lib/esm/core-react/progress-indicators/ProgressSpinner.d.ts +0 -49
  454. package/lib/esm/core-react/progress-indicators/ProgressSpinner.d.ts.map +0 -1
  455. package/lib/esm/core-react/progress-indicators/ProgressSpinner.js +0 -70
  456. package/lib/esm/core-react/progress-indicators/ProgressSpinner.js.map +0 -1
  457. package/lib/esm/core-react/progress-indicators/classes.scss +0 -33
  458. package/lib/esm/core-react/progress-indicators/index.scss +0 -6
  459. package/lib/esm/core-react/progress-indicators/progress-bar.scss +0 -91
  460. package/lib/esm/core-react/progress-indicators/progress-spinner.scss +0 -132
  461. package/lib/esm/core-react/radio/Radio.d.ts +0 -20
  462. package/lib/esm/core-react/radio/Radio.d.ts.map +0 -1
  463. package/lib/esm/core-react/radio/Radio.js +0 -24
  464. package/lib/esm/core-react/radio/Radio.js.map +0 -1
  465. package/lib/esm/core-react/radio/classes.scss +0 -7
  466. package/lib/esm/core-react/radio/index.scss +0 -8
  467. package/lib/esm/core-react/radio/radio.scss +0 -89
  468. package/lib/esm/core-react/select/LabeledSelect.d.ts +0 -20
  469. package/lib/esm/core-react/select/LabeledSelect.d.ts.map +0 -1
  470. package/lib/esm/core-react/select/LabeledSelect.js +0 -30
  471. package/lib/esm/core-react/select/LabeledSelect.js.map +0 -1
  472. package/lib/esm/core-react/select/LabeledThemedSelect.d.ts +0 -16
  473. package/lib/esm/core-react/select/LabeledThemedSelect.d.ts.map +0 -1
  474. package/lib/esm/core-react/select/LabeledThemedSelect.js +0 -27
  475. package/lib/esm/core-react/select/LabeledThemedSelect.js.map +0 -1
  476. package/lib/esm/core-react/select/Select.d.ts +0 -53
  477. package/lib/esm/core-react/select/Select.d.ts.map +0 -1
  478. package/lib/esm/core-react/select/Select.js +0 -57
  479. package/lib/esm/core-react/select/Select.js.map +0 -1
  480. package/lib/esm/core-react/select/ThemedSelect.d.ts +0 -104
  481. package/lib/esm/core-react/select/ThemedSelect.d.ts.map +0 -1
  482. package/lib/esm/core-react/select/ThemedSelect.js +0 -53
  483. package/lib/esm/core-react/select/ThemedSelect.js.map +0 -1
  484. package/lib/esm/core-react/select/classes.scss +0 -9
  485. package/lib/esm/core-react/select/index.scss +0 -10
  486. package/lib/esm/core-react/select/labeled-select.scss +0 -72
  487. package/lib/esm/core-react/select/labeled-themed-select.scss +0 -77
  488. package/lib/esm/core-react/select/modalHelper.d.ts +0 -5
  489. package/lib/esm/core-react/select/modalHelper.d.ts.map +0 -1
  490. package/lib/esm/core-react/select/modalHelper.js +0 -17
  491. package/lib/esm/core-react/select/modalHelper.js.map +0 -1
  492. package/lib/esm/core-react/select/select.scss +0 -74
  493. package/lib/esm/core-react/select/themed-select.scss +0 -159
  494. package/lib/esm/core-react/slider/Slider.d.ts +0 -80
  495. package/lib/esm/core-react/slider/Slider.d.ts.map +0 -1
  496. package/lib/esm/core-react/slider/Slider.js +0 -87
  497. package/lib/esm/core-react/slider/Slider.js.map +0 -1
  498. package/lib/esm/core-react/slider/Slider.scss +0 -96
  499. package/lib/esm/core-react/splitbutton/SplitButton.d.ts +0 -62
  500. package/lib/esm/core-react/splitbutton/SplitButton.d.ts.map +0 -1
  501. package/lib/esm/core-react/splitbutton/SplitButton.js +0 -100
  502. package/lib/esm/core-react/splitbutton/SplitButton.js.map +0 -1
  503. package/lib/esm/core-react/splitbutton/SplitButton.scss +0 -137
  504. package/lib/esm/core-react/tabs/HorizontalTabs.d.ts +0 -11
  505. package/lib/esm/core-react/tabs/HorizontalTabs.d.ts.map +0 -1
  506. package/lib/esm/core-react/tabs/HorizontalTabs.js +0 -18
  507. package/lib/esm/core-react/tabs/HorizontalTabs.js.map +0 -1
  508. package/lib/esm/core-react/tabs/horizontal.scss +0 -77
  509. package/lib/esm/core-react/text/Headline.d.ts +0 -11
  510. package/lib/esm/core-react/text/Headline.d.ts.map +0 -1
  511. package/lib/esm/core-react/text/Headline.js +0 -17
  512. package/lib/esm/core-react/text/Headline.js.map +0 -1
  513. package/lib/esm/core-react/text/LeadingText.d.ts +0 -11
  514. package/lib/esm/core-react/text/LeadingText.d.ts.map +0 -1
  515. package/lib/esm/core-react/text/LeadingText.js +0 -17
  516. package/lib/esm/core-react/text/LeadingText.js.map +0 -1
  517. package/lib/esm/core-react/text/LeadingText2.d.ts +0 -11
  518. package/lib/esm/core-react/text/LeadingText2.d.ts.map +0 -1
  519. package/lib/esm/core-react/text/LeadingText2.js +0 -17
  520. package/lib/esm/core-react/text/LeadingText2.js.map +0 -1
  521. package/lib/esm/core-react/text/SmallText.d.ts +0 -11
  522. package/lib/esm/core-react/text/SmallText.d.ts.map +0 -1
  523. package/lib/esm/core-react/text/SmallText.js +0 -17
  524. package/lib/esm/core-react/text/SmallText.js.map +0 -1
  525. package/lib/esm/core-react/text/Subheading.d.ts +0 -11
  526. package/lib/esm/core-react/text/Subheading.d.ts.map +0 -1
  527. package/lib/esm/core-react/text/Subheading.js +0 -17
  528. package/lib/esm/core-react/text/Subheading.js.map +0 -1
  529. package/lib/esm/core-react/text/Subheading2.d.ts +0 -11
  530. package/lib/esm/core-react/text/Subheading2.d.ts.map +0 -1
  531. package/lib/esm/core-react/text/Subheading2.js +0 -17
  532. package/lib/esm/core-react/text/Subheading2.js.map +0 -1
  533. package/lib/esm/core-react/text/Title.d.ts +0 -11
  534. package/lib/esm/core-react/text/Title.d.ts.map +0 -1
  535. package/lib/esm/core-react/text/Title.js +0 -17
  536. package/lib/esm/core-react/text/Title.js.map +0 -1
  537. package/lib/esm/core-react/text/Title2.d.ts +0 -11
  538. package/lib/esm/core-react/text/Title2.d.ts.map +0 -1
  539. package/lib/esm/core-react/text/Title2.js +0 -17
  540. package/lib/esm/core-react/text/Title2.js.map +0 -1
  541. package/lib/esm/core-react/text/headline.scss +0 -10
  542. package/lib/esm/core-react/text/leading-2.scss +0 -11
  543. package/lib/esm/core-react/text/leading.scss +0 -10
  544. package/lib/esm/core-react/text/small.scss +0 -10
  545. package/lib/esm/core-react/text/subheading-2.scss +0 -11
  546. package/lib/esm/core-react/text/subheading.scss +0 -11
  547. package/lib/esm/core-react/text/title-2.scss +0 -11
  548. package/lib/esm/core-react/text/title.scss +0 -10
  549. package/lib/esm/core-react/tiles/FeaturedTile.d.ts +0 -11
  550. package/lib/esm/core-react/tiles/FeaturedTile.d.ts.map +0 -1
  551. package/lib/esm/core-react/tiles/FeaturedTile.js +0 -17
  552. package/lib/esm/core-react/tiles/FeaturedTile.js.map +0 -1
  553. package/lib/esm/core-react/tiles/MinimalFeaturedTile.d.ts +0 -11
  554. package/lib/esm/core-react/tiles/MinimalFeaturedTile.d.ts.map +0 -1
  555. package/lib/esm/core-react/tiles/MinimalFeaturedTile.js +0 -17
  556. package/lib/esm/core-react/tiles/MinimalFeaturedTile.js.map +0 -1
  557. package/lib/esm/core-react/tiles/MinimalTile.d.ts +0 -11
  558. package/lib/esm/core-react/tiles/MinimalTile.d.ts.map +0 -1
  559. package/lib/esm/core-react/tiles/MinimalTile.js +0 -17
  560. package/lib/esm/core-react/tiles/MinimalTile.js.map +0 -1
  561. package/lib/esm/core-react/tiles/Tile.d.ts +0 -32
  562. package/lib/esm/core-react/tiles/Tile.d.ts.map +0 -1
  563. package/lib/esm/core-react/tiles/Tile.js +0 -36
  564. package/lib/esm/core-react/tiles/Tile.js.map +0 -1
  565. package/lib/esm/core-react/tiles/classes.scss +0 -7
  566. package/lib/esm/core-react/tiles/index.scss +0 -5
  567. package/lib/esm/core-react/tiles/tile.scss +0 -134
  568. package/lib/esm/core-react/toggle/LabeledToggle.d.ts +0 -26
  569. package/lib/esm/core-react/toggle/LabeledToggle.d.ts.map +0 -1
  570. package/lib/esm/core-react/toggle/LabeledToggle.js +0 -25
  571. package/lib/esm/core-react/toggle/LabeledToggle.js.map +0 -1
  572. package/lib/esm/core-react/toggle/LabeledToggle.scss +0 -21
  573. package/lib/esm/core-react/toggle/Toggle.d.ts +0 -52
  574. package/lib/esm/core-react/toggle/Toggle.d.ts.map +0 -1
  575. package/lib/esm/core-react/toggle/Toggle.js +0 -102
  576. package/lib/esm/core-react/toggle/Toggle.js.map +0 -1
  577. package/lib/esm/core-react/toggle/Toggle.scss +0 -135
  578. package/lib/esm/core-react/tooltip/Tooltip.d.ts +0 -34
  579. package/lib/esm/core-react/tooltip/Tooltip.d.ts.map +0 -1
  580. package/lib/esm/core-react/tooltip/Tooltip.js +0 -52
  581. package/lib/esm/core-react/tooltip/Tooltip.js.map +0 -1
  582. package/lib/esm/core-react/tooltip/Tooltip.scss +0 -18
  583. package/lib/esm/core-react/utils/PointProps.d.ts +0 -12
  584. package/lib/esm/core-react/utils/PointProps.d.ts.map +0 -1
  585. package/lib/esm/core-react/utils/PointProps.js +0 -9
  586. package/lib/esm/core-react/utils/PointProps.js.map +0 -1
  587. package/lib/esm/core-react/utils/UiEvent.d.ts +0 -10
  588. package/lib/esm/core-react/utils/UiEvent.d.ts.map +0 -1
  589. package/lib/esm/core-react/utils/UiEvent.js +0 -14
  590. package/lib/esm/core-react/utils/UiEvent.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sourceRoot":"","sources":["../../../../src/core-react/popup/Popup.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 Popup\r\n */\r\n\r\nimport \"./Popup.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport * as ReactDOM from \"react-dom\";\r\nimport { RelativePosition, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { FocusTrap } from \"../focustrap/FocusTrap\";\r\nimport { CommonProps } from \"../utils/Props\";\r\n\r\n// cSpell:ignore focustrap focusable alertdialog\r\n\r\n/** @internal */\r\ninterface PopupPoint {\r\n x: number;\r\n y: number;\r\n}\r\n\r\n/** Properties for the [[Popup]] component\r\n * @public\r\n */\r\nexport interface PopupProps extends CommonProps {\r\n /** Show or hide the box shadow (defaults to true) */\r\n showShadow: boolean;\r\n /** Show or hide the arrow (defaults to false) */\r\n showArrow: boolean;\r\n /** Indicates whether the popup is shown or not (defaults to false) */\r\n isOpen: boolean;\r\n /** Direction (relative to the target) to which the popup is expanded (defaults to Bottom) */\r\n position: RelativePosition;\r\n /** Top position (absolute positioning - defaults to 0) */\r\n top: number;\r\n /** Left position (absolute positioning - defaults to 0) */\r\n left: number;\r\n /** Function called when the popup is opened */\r\n onOpen?: () => void;\r\n /** Function called when user clicks outside the popup */\r\n onOutsideClick?: (e: MouseEvent) => void;\r\n /** Function called when the popup is closed */\r\n onClose?: () => void;\r\n /** Function called when the popup is closed on Enter */\r\n onEnter?: () => void;\r\n /** Function called when the wheel is used */\r\n onWheel?: (e: WheelEvent) => void;\r\n /** Function called when the right mouse button is pressed */\r\n onContextMenu?: (e: MouseEvent) => void;\r\n /** Offset from the parent (defaults to 4) */\r\n offset: number;\r\n /** Target element to position popup */\r\n target?: HTMLElement | null;\r\n /** Role - if not specified \"dialog\" is used */\r\n role?: \"dialog\" | \"alert\" | \"alertdialog\";\r\n /** accessibility label */\r\n ariaLabel?: string;\r\n /** set focus to popup - default to not set focus */\r\n moveFocus?: boolean;\r\n /** Element to receive focus, specified by React.RefObject or CSS selector string. If undefined and moveFocus is true then focus is moved to first focusable element. */\r\n focusTarget?: React.RefObject<HTMLElement> | string;\r\n /** Indicates whether the popup is pinned. */\r\n isPinned?: boolean;\r\n /** Indicates whether to use animation for open/close (defaults to true) */\r\n animate?: boolean;\r\n /** Indicates whether to close the popup when Enter is pressed (defaults to true) */\r\n closeOnEnter?: boolean;\r\n /** Indicates whether to close the popup when the wheel is used (defaults to true) */\r\n closeOnWheel?: boolean;\r\n /** Indicates whether to close the popup when the right mouse button is pressed (defaults to true) */\r\n closeOnContextMenu?: boolean;\r\n /** If false outside click processing and closing are skipped if click occurs in another Popup component, default to false. */\r\n closeOnNestedPopupOutsideClick?: boolean;\r\n /** If true the children are mounted once and unmounted when this component is unmounted. If false the\r\n * children are unmounted each time the popup is closed. */\r\n keepContentsMounted?: boolean;\r\n\r\n /**\r\n * If true the popup will remain open and will be repositioned when window resize events occur, default to false.\r\n * @beta\r\n * */\r\n repositionOnResize?: boolean;\r\n}\r\n\r\n/** @internal */\r\ninterface PopupState {\r\n isOpen: boolean;\r\n top: number;\r\n left: number;\r\n position: RelativePosition;\r\n parentDocument: Document;\r\n animationEnded: boolean;\r\n}\r\n\r\n/** Popup React component displays a popup relative to an optional target element.\r\n * @public\r\n */\r\nexport class Popup extends React.Component<PopupProps, PopupState> {\r\n private _popup: HTMLElement | null = null;\r\n\r\n constructor(props: PopupProps) {\r\n super(props);\r\n const parentDocument = this.props.target?.ownerDocument ?? document;\r\n\r\n this.state = {\r\n animationEnded: false,\r\n isOpen: this.props.isOpen,\r\n top: 0,\r\n left: 0,\r\n position: this.props.position,\r\n parentDocument,\r\n };\r\n }\r\n\r\n public static defaultProps: Partial<PopupProps> = {\r\n position: RelativePosition.Bottom,\r\n showShadow: true,\r\n showArrow: false,\r\n isOpen: false,\r\n offset: 4,\r\n top: -1,\r\n left: -1,\r\n };\r\n\r\n public override componentDidMount() {\r\n if (this.props.isOpen) {\r\n this._onShow();\r\n }\r\n }\r\n\r\n private getParentWindow() {\r\n // istanbul ignore next\r\n return this.state.parentDocument.defaultView ?? window;\r\n }\r\n\r\n public override componentDidUpdate(previousProps: PopupProps, prevState: PopupState) {\r\n if (this.state.position !== prevState.position) {\r\n this.setState( { animationEnded: false });\r\n }\r\n\r\n if (this.props.target !== previousProps.target) {\r\n // istanbul ignore next\r\n {\r\n const parentDocument = this.props.target?.ownerDocument ?? document;\r\n if (parentDocument !== this.state.parentDocument) {\r\n this._unBindWindowEvents();\r\n this.setState({ parentDocument });\r\n }\r\n }\r\n }\r\n\r\n if (this.props.isOpen === previousProps.isOpen) {\r\n if (this.props.isOpen) {\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n if ((Math.abs(this.state.left - point.x) < 3) &&\r\n (Math.abs(this.state.top - point.y) < 3) &&\r\n this.state.position === position)\r\n return;\r\n\r\n this.setState({\r\n left: point.x,\r\n top: point.y,\r\n position,\r\n });\r\n }\r\n return;\r\n }\r\n\r\n if (this.props.isOpen) {\r\n this._onShow();\r\n } else {\r\n this._onClose();\r\n }\r\n }\r\n\r\n public override componentWillUnmount() {\r\n this._unBindWindowEvents();\r\n }\r\n\r\n private _bindWindowEvents = () => {\r\n const activeWindow = this.getParentWindow();\r\n activeWindow.addEventListener(\"pointerdown\", this._handleOutsideClick);\r\n activeWindow.addEventListener(\"resize\", this._resize);\r\n activeWindow.addEventListener(\"contextmenu\", this._handleContextMenu);\r\n activeWindow.addEventListener(\"scroll\", this._hide);\r\n activeWindow.addEventListener(\"wheel\", this._handleWheel);\r\n activeWindow.addEventListener(\"keydown\", this._handleKeyboard);\r\n };\r\n\r\n private _unBindWindowEvents = () => {\r\n const activeWindow = this.getParentWindow();\r\n activeWindow.removeEventListener(\"pointerdown\", this._handleOutsideClick);\r\n activeWindow.removeEventListener(\"resize\", this._resize);\r\n activeWindow.removeEventListener(\"contextmenu\", this._handleContextMenu);\r\n activeWindow.removeEventListener(\"scroll\", this._hide);\r\n activeWindow.removeEventListener(\"wheel\", this._handleWheel);\r\n activeWindow.removeEventListener(\"keydown\", this._handleKeyboard);\r\n };\r\n\r\n private _handleWheel = (event: WheelEvent) => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.onWheel)\r\n return this.props.onWheel(event);\r\n\r\n const closeOnWheel = this.props.closeOnWheel !== undefined ? this.props.closeOnWheel : true;\r\n if (closeOnWheel)\r\n this._hide();\r\n };\r\n\r\n private isInCorePopup(element: HTMLElement): boolean {\r\n if (element.nodeName === \"DIV\") {\r\n if (element.classList && element.classList.contains(\"core-popup\"))\r\n return true;\r\n if (element.parentElement && this.isInCorePopup(element.parentElement))\r\n return true;\r\n } else {\r\n // istanbul ignore else\r\n if (element.parentElement && this.isInCorePopup(element.parentElement))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n private _handleOutsideClick = (event: MouseEvent): void => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.isPinned)\r\n return;\r\n\r\n if (!this.props.closeOnNestedPopupOutsideClick && this.isInCorePopup(event.target as HTMLElement))\r\n return;\r\n\r\n if (this.props.onOutsideClick)\r\n return this.props.onOutsideClick(event);\r\n\r\n if (this.props.target && this.props.target.contains(event.target as Node))\r\n return;\r\n\r\n this._onClose();\r\n };\r\n\r\n private _handleContextMenu = (event: MouseEvent) => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.onContextMenu)\r\n return this.props.onContextMenu(event);\r\n\r\n const closeOnContextMenu = this.props.closeOnContextMenu !== undefined ? this.props.closeOnContextMenu : true;\r\n if (closeOnContextMenu)\r\n this._hide();\r\n };\r\n\r\n private _handleKeyboard = (event: KeyboardEvent): void => {\r\n if (this.props.isPinned)\r\n return;\r\n\r\n if (event.key === SpecialKey.Escape || event.key === SpecialKey.Enter) {\r\n const closeOnEnter = this.props.closeOnEnter !== undefined ? this.props.closeOnEnter : true;\r\n if (event.key === SpecialKey.Enter) {\r\n if (closeOnEnter)\r\n this._onClose(true);\r\n else\r\n this.props.onEnter && this.props.onEnter();\r\n } else {\r\n this._onClose(false);\r\n }\r\n }\r\n };\r\n\r\n private _resize = () => {\r\n if (this.props.repositionOnResize) {\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n this.setState({ left: point.x, top: point.y, position });\r\n } else {\r\n this._hide(); // legacy behavior\r\n }\r\n };\r\n\r\n private _hide = () => {\r\n if (this.props.isPinned)\r\n return;\r\n\r\n this._onClose();\r\n };\r\n\r\n private _onShow() {\r\n this._bindWindowEvents();\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n\r\n this.setState({ left: point.x, top: point.y, isOpen: true, position }, () => {\r\n if (this.props.onOpen)\r\n this.props.onOpen();\r\n });\r\n }\r\n\r\n private _onClose(enterKey?: boolean) {\r\n if (!this.state.isOpen)\r\n return;\r\n\r\n this._unBindWindowEvents();\r\n\r\n this.setState({ isOpen: false }, () => {\r\n if (enterKey && this.props.onEnter)\r\n this.props.onEnter();\r\n if (this.props.onClose)\r\n this.props.onClose();\r\n });\r\n }\r\n\r\n private _isPositionAbsolute(): boolean {\r\n return (this.props.top !== -1 && this.props.left !== -1);\r\n }\r\n\r\n private _getClassNameByPosition(position: RelativePosition): string {\r\n if (!this._isPositionAbsolute()) {\r\n switch (position) {\r\n case RelativePosition.TopLeft:\r\n return \"core-popup-top-left\";\r\n case RelativePosition.TopRight:\r\n return \"core-popup-top-right\";\r\n case RelativePosition.BottomLeft:\r\n return \"core-popup-bottom-left\";\r\n case RelativePosition.BottomRight:\r\n return \"core-popup-bottom-right\";\r\n case RelativePosition.Top:\r\n return \"core-popup-top\";\r\n case RelativePosition.Left:\r\n return \"core-popup-left\";\r\n case RelativePosition.Right:\r\n return \"core-popup-right\";\r\n case RelativePosition.Bottom:\r\n return \"core-popup-bottom\";\r\n case RelativePosition.LeftTop:\r\n return \"core-popup-left-top\";\r\n case RelativePosition.RightTop:\r\n return \"core-popup-right-top\";\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n private _getPopupDimensions(): { popupWidth: number, popupHeight: number } {\r\n let popupWidth = 0;\r\n let popupHeight = 0;\r\n // istanbul ignore else\r\n if (this._popup) {\r\n const activeWindow = this.getParentWindow();\r\n const style = activeWindow.getComputedStyle(this._popup);\r\n const borderLeftWidth = parsePxString(style.borderLeftWidth);\r\n const borderRightWidth = parsePxString(style.borderRightWidth);\r\n const borderTopWidth = parsePxString(style.borderTopWidth);\r\n const borderBottomWidth = parsePxString(style.borderBottomWidth);\r\n popupWidth = this._popup.clientWidth + borderLeftWidth + borderRightWidth;\r\n popupHeight = this._popup.clientHeight + borderTopWidth + borderBottomWidth;\r\n }\r\n\r\n return { popupWidth, popupHeight };\r\n }\r\n\r\n private _getPosition = (position: RelativePosition) => {\r\n const activeWindow = this.getParentWindow();\r\n const { target, offset, top, left } = this.props;\r\n const offsetArrow = (this.props.showArrow) ? 6 : 0;\r\n\r\n // absolute position\r\n if (this._isPositionAbsolute())\r\n return { x: left, y: top };\r\n\r\n // sanity check\r\n const point = { x: 0, y: 0 };\r\n if (!this._popup || !target)\r\n return point;\r\n\r\n // relative position\r\n const scrollY = activeWindow.scrollY;\r\n const scrollX = activeWindow.scrollX;\r\n\r\n const targetRect = target.getBoundingClientRect();\r\n\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n\r\n switch (position) {\r\n case RelativePosition.Top:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.left + (targetRect.width / 2) - (popupWidth / 2);\r\n break;\r\n\r\n case RelativePosition.TopLeft:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.left;\r\n break;\r\n\r\n case RelativePosition.TopRight:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.right - popupWidth;\r\n break;\r\n\r\n case RelativePosition.Bottom:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.left + (targetRect.width / 2) - (popupWidth / 2);\r\n break;\r\n\r\n case RelativePosition.BottomLeft:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.left;\r\n break;\r\n\r\n case RelativePosition.BottomRight:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.right - popupWidth;\r\n break;\r\n\r\n case RelativePosition.Left:\r\n point.y = scrollY + targetRect.top + (targetRect.height / 2) - (popupHeight / 2);\r\n point.x = scrollX + targetRect.left - popupWidth - offset - offsetArrow;\r\n break;\r\n\r\n case RelativePosition.LeftTop:\r\n point.y = scrollY + targetRect.top;\r\n point.x = scrollX + targetRect.left - popupWidth - offset - offsetArrow;\r\n break;\r\n\r\n case RelativePosition.Right:\r\n point.y = scrollY + targetRect.top + (targetRect.height / 2) - (popupHeight / 2);\r\n point.x = scrollX + targetRect.right + offset + offsetArrow;\r\n break;\r\n\r\n case RelativePosition.RightTop:\r\n point.y = scrollY + targetRect.top;\r\n point.x = scrollX + targetRect.right + offset + offsetArrow;\r\n break;\r\n }\r\n\r\n return point;\r\n };\r\n\r\n private _toggleRelativePosition(): RelativePosition {\r\n const { target, position, offset } = this.props;\r\n\r\n if (!this._popup || !target)\r\n return position;\r\n\r\n // istanbul ignore if\r\n if (this._isPositionAbsolute())\r\n return position;\r\n\r\n let newPosition = position;\r\n\r\n interface Rect {\r\n left: number;\r\n top: number;\r\n right: number;\r\n bottom: number;\r\n }\r\n\r\n const activeWindow = this.getParentWindow();\r\n\r\n // Note: Cannot use DOMRect yet since it's experimental and not available in all browsers (Nov. 2018)\r\n const viewportRect: Rect = { left: activeWindow.scrollX, top: activeWindow.scrollY, right: activeWindow.scrollX + activeWindow.innerWidth, bottom: activeWindow.scrollY + activeWindow.innerHeight };\r\n const targetRect = target.getBoundingClientRect();\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n const containerStyle = activeWindow.getComputedStyle(target);\r\n const offsetArrow = this.props.showArrow ? /* istanbul ignore next */ 10 : 2;\r\n\r\n const bottomMargin = parseMargin(containerStyle.marginBottom);\r\n if ((targetRect.bottom + popupHeight + bottomMargin + offsetArrow + offset) > viewportRect.bottom) {\r\n if (newPosition === RelativePosition.Bottom)\r\n newPosition = RelativePosition.Top;\r\n else if (newPosition === RelativePosition.BottomLeft)\r\n newPosition = RelativePosition.TopLeft;\r\n else if (newPosition === RelativePosition.BottomRight)\r\n newPosition = RelativePosition.TopRight;\r\n }\r\n\r\n const topMargin = parseMargin(containerStyle.marginTop);\r\n if ((targetRect.top - popupHeight - topMargin - offsetArrow - offset) < viewportRect.top) {\r\n if (newPosition === RelativePosition.Top)\r\n newPosition = RelativePosition.Bottom;\r\n else if (newPosition === RelativePosition.TopLeft)\r\n newPosition = RelativePosition.BottomLeft;\r\n else if (newPosition === RelativePosition.TopRight)\r\n newPosition = RelativePosition.BottomRight;\r\n }\r\n\r\n const leftMargin = parseMargin(containerStyle.marginLeft);\r\n if ((targetRect.left - popupWidth - leftMargin - offsetArrow - offset) < viewportRect.left) {\r\n if (newPosition === RelativePosition.Left)\r\n newPosition = RelativePosition.Right;\r\n else if (newPosition === RelativePosition.LeftTop)\r\n newPosition = RelativePosition.RightTop;\r\n }\r\n\r\n const rightMargin = parseMargin(containerStyle.marginRight);\r\n if ((targetRect.right + popupWidth + rightMargin + offsetArrow + offset) > viewportRect.right) {\r\n if (newPosition === RelativePosition.Right)\r\n newPosition = RelativePosition.Left;\r\n else if (newPosition === RelativePosition.RightTop)\r\n newPosition = RelativePosition.LeftTop;\r\n }\r\n\r\n return newPosition;\r\n }\r\n\r\n // fit the popup within the extents of the view port\r\n private _fitPopup = (point: PopupPoint) => {\r\n const fittedPoint = point;\r\n\r\n // istanbul ignore if\r\n if (!this._popup) {\r\n return fittedPoint;\r\n }\r\n\r\n // const popupRect = this._popup.getBoundingClientRect();\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n const { innerWidth, innerHeight } = window;\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.y + popupHeight > innerHeight) {\r\n fittedPoint.y = innerHeight - popupHeight;\r\n }\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.x + popupWidth > innerWidth) {\r\n fittedPoint.x = innerWidth - popupWidth;\r\n }\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.y < 0) {\r\n fittedPoint.y = 0;\r\n }\r\n\r\n if (fittedPoint.x < 0) {\r\n fittedPoint.x = 0;\r\n }\r\n\r\n return fittedPoint;\r\n };\r\n\r\n private _handleAnimationEnd = (event: React.AnimationEvent<HTMLDivElement>) => {\r\n if (event.target === this._popup) {\r\n this.setState({ animationEnded: true });\r\n }\r\n };\r\n\r\n public override render() {\r\n const animate = this.props.animate !== undefined ? this.props.animate : true;\r\n const className = classnames(\r\n \"core-popup\",\r\n this._getClassNameByPosition(this.state.position),\r\n this.props.showShadow && \"core-popup-shadow\",\r\n this.props.showArrow && \"arrow\",\r\n !animate && \"core-popup-animation-none\",\r\n this.props.className,\r\n this.state.animationEnded && \"core-animation-ended\",\r\n (!this.props.isOpen && this.props.keepContentsMounted) && \"core-popup-hidden\"\r\n );\r\n\r\n const style: React.CSSProperties = {\r\n top: this.state.top,\r\n left: this.state.left,\r\n ...this.props.style,\r\n };\r\n\r\n const role = this.props.role ? this.props.role : \"dialog\"; // accessibility property\r\n\r\n if (!this.props.isOpen && !this.props.keepContentsMounted) {\r\n return null;\r\n }\r\n\r\n return ReactDOM.createPortal(\r\n (\r\n <div\r\n className={className} data-testid=\"core-popup\"\r\n ref={(element) => { this._popup = element; }}\r\n style={style}\r\n role={role}\r\n aria-modal={true}\r\n tabIndex={-1}\r\n aria-label={this.props.ariaLabel}\r\n onAnimationEnd={this._handleAnimationEnd}\r\n >\r\n <FocusTrap active={!!this.props.moveFocus} initialFocusElement={this.props.focusTarget} returnFocusOnDeactivate={true}>\r\n {this.props.children}\r\n </FocusTrap>\r\n </div>\r\n ), this.state.parentDocument.body);\r\n }\r\n}\r\n\r\nfunction parsePxString(pxStr: string): number {\r\n const parsed = parseInt(pxStr, 10);\r\n return parsed || 0;\r\n}\r\n\r\nfunction parseMargin(value: string) {\r\n return value ? /* istanbul ignore next */ parseFloat(value) : 0;\r\n}\r\n"]}
1
+ {"version":3,"file":"Popup.js","sourceRoot":"","sources":["../../../../src/core-react/popup/Popup.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 Popup\r\n */\r\n\r\nimport \"./Popup.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport * as ReactDOM from \"react-dom\";\r\nimport { RelativePosition, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { FocusTrap } from \"../focustrap/FocusTrap\";\r\nimport { CommonProps } from \"../utils/Props\";\r\n\r\n// cSpell:ignore focustrap focusable alertdialog\r\n\r\n/** @internal */\r\ninterface PopupPoint {\r\n x: number;\r\n y: number;\r\n}\r\n\r\n/** Properties for the [[Popup]] component\r\n * @public\r\n */\r\nexport interface PopupProps extends CommonProps {\r\n /** Show or hide the box shadow (defaults to true) */\r\n showShadow: boolean;\r\n /** Show or hide the arrow (defaults to false) */\r\n showArrow: boolean;\r\n /** Indicates whether the popup is shown or not (defaults to false) */\r\n isOpen: boolean;\r\n /** Direction (relative to the target) to which the popup is expanded (defaults to Bottom) */\r\n position: RelativePosition;\r\n /** Top position (absolute positioning - defaults to 0) */\r\n top: number;\r\n /** Left position (absolute positioning - defaults to 0) */\r\n left: number;\r\n /** Function called when the popup is opened */\r\n onOpen?: () => void;\r\n /** Function called when user clicks outside the popup */\r\n onOutsideClick?: (e: MouseEvent) => void;\r\n /** Function called when the popup is closed */\r\n onClose?: () => void;\r\n /** Function called when the popup is closed on Enter */\r\n onEnter?: () => void;\r\n /** Function called when the wheel is used */\r\n onWheel?: (e: WheelEvent) => void;\r\n /** Function called when the right mouse button is pressed */\r\n onContextMenu?: (e: MouseEvent) => void;\r\n /** Offset from the parent (defaults to 4) */\r\n offset: number;\r\n /** Target element to position popup */\r\n target?: HTMLElement | null;\r\n /** Role - if not specified \"dialog\" is used */\r\n role?: \"dialog\" | \"alert\" | \"alertdialog\";\r\n /** accessibility label */\r\n ariaLabel?: string;\r\n /** set focus to popup - default to not set focus */\r\n moveFocus?: boolean;\r\n /** Element to receive focus, specified by React.RefObject or CSS selector string. If undefined and moveFocus is true then focus is moved to first focusable element. */\r\n focusTarget?: React.RefObject<HTMLElement> | string;\r\n /** Indicates whether the popup is pinned. */\r\n isPinned?: boolean;\r\n /** Indicates whether to use animation for open/close (defaults to true) */\r\n animate?: boolean;\r\n /** Indicates whether to close the popup when Enter is pressed (defaults to true) */\r\n closeOnEnter?: boolean;\r\n /** Indicates whether to close the popup when the wheel is used (defaults to true) */\r\n closeOnWheel?: boolean;\r\n /** Indicates whether to close the popup when the right mouse button is pressed (defaults to true) */\r\n closeOnContextMenu?: boolean;\r\n /** If false outside click processing and closing are skipped if click occurs in another Popup component, default to false. */\r\n closeOnNestedPopupOutsideClick?: boolean;\r\n /** If true the children are mounted once and unmounted when this component is unmounted. If false the\r\n * children are unmounted each time the popup is closed. */\r\n keepContentsMounted?: boolean;\r\n\r\n /**\r\n * If true the popup will remain open and will be repositioned when window resize events occur, default to false.\r\n * @beta\r\n * */\r\n repositionOnResize?: boolean;\r\n\r\n /** Content */\r\n children?: React.ReactNode;\r\n}\r\n\r\n/** @internal */\r\ninterface PopupState {\r\n isOpen: boolean;\r\n top: number;\r\n left: number;\r\n position: RelativePosition;\r\n parentDocument: Document;\r\n animationEnded: boolean;\r\n}\r\n\r\n/** Popup React component displays a popup relative to an optional target element.\r\n * @public\r\n */\r\nexport class Popup extends React.Component<PopupProps, PopupState> {\r\n private _popup: HTMLElement | null = null;\r\n\r\n constructor(props: PopupProps) {\r\n super(props);\r\n const parentDocument = this.props.target?.ownerDocument ?? document;\r\n\r\n this.state = {\r\n animationEnded: false,\r\n isOpen: this.props.isOpen,\r\n top: 0,\r\n left: 0,\r\n position: this.props.position,\r\n parentDocument,\r\n };\r\n }\r\n\r\n public static defaultProps: Partial<PopupProps> = {\r\n position: RelativePosition.Bottom,\r\n showShadow: true,\r\n showArrow: false,\r\n isOpen: false,\r\n offset: 4,\r\n top: -1,\r\n left: -1,\r\n };\r\n\r\n public override componentDidMount() {\r\n if (this.props.isOpen) {\r\n this._onShow();\r\n }\r\n }\r\n\r\n private getParentWindow() {\r\n // istanbul ignore next\r\n return this.state.parentDocument.defaultView ?? window;\r\n }\r\n\r\n public override componentDidUpdate(previousProps: PopupProps, prevState: PopupState) {\r\n if (this.state.position !== prevState.position) {\r\n this.setState( { animationEnded: false });\r\n }\r\n\r\n if (this.props.target !== previousProps.target) {\r\n // istanbul ignore next\r\n {\r\n const parentDocument = this.props.target?.ownerDocument ?? document;\r\n if (parentDocument !== this.state.parentDocument) {\r\n this._unBindWindowEvents();\r\n this.setState({ parentDocument });\r\n }\r\n }\r\n }\r\n\r\n if (this.props.isOpen === previousProps.isOpen) {\r\n if (this.props.isOpen) {\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n if ((Math.abs(this.state.left - point.x) < 3) &&\r\n (Math.abs(this.state.top - point.y) < 3) &&\r\n this.state.position === position)\r\n return;\r\n\r\n this.setState({\r\n left: point.x,\r\n top: point.y,\r\n position,\r\n });\r\n }\r\n return;\r\n }\r\n\r\n if (this.props.isOpen) {\r\n this._onShow();\r\n } else {\r\n this._onClose();\r\n }\r\n }\r\n\r\n public override componentWillUnmount() {\r\n this._unBindWindowEvents();\r\n }\r\n\r\n private _bindWindowEvents = () => {\r\n const activeWindow = this.getParentWindow();\r\n activeWindow.addEventListener(\"pointerdown\", this._handleOutsideClick);\r\n activeWindow.addEventListener(\"resize\", this._resize);\r\n activeWindow.addEventListener(\"contextmenu\", this._handleContextMenu);\r\n activeWindow.addEventListener(\"scroll\", this._hide);\r\n activeWindow.addEventListener(\"wheel\", this._handleWheel);\r\n activeWindow.addEventListener(\"keydown\", this._handleKeyboard);\r\n };\r\n\r\n private _unBindWindowEvents = () => {\r\n const activeWindow = this.getParentWindow();\r\n activeWindow.removeEventListener(\"pointerdown\", this._handleOutsideClick);\r\n activeWindow.removeEventListener(\"resize\", this._resize);\r\n activeWindow.removeEventListener(\"contextmenu\", this._handleContextMenu);\r\n activeWindow.removeEventListener(\"scroll\", this._hide);\r\n activeWindow.removeEventListener(\"wheel\", this._handleWheel);\r\n activeWindow.removeEventListener(\"keydown\", this._handleKeyboard);\r\n };\r\n\r\n private _handleWheel = (event: WheelEvent) => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.onWheel)\r\n return this.props.onWheel(event);\r\n\r\n const closeOnWheel = this.props.closeOnWheel !== undefined ? this.props.closeOnWheel : true;\r\n if (closeOnWheel)\r\n this._hide();\r\n };\r\n\r\n private isInCorePopup(element: HTMLElement): boolean {\r\n if (element.nodeName === \"DIV\") {\r\n if (element.classList && element.classList.contains(\"core-popup\"))\r\n return true;\r\n if (element.parentElement && this.isInCorePopup(element.parentElement))\r\n return true;\r\n } else {\r\n // istanbul ignore else\r\n if (element.parentElement && this.isInCorePopup(element.parentElement))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n private _handleOutsideClick = (event: MouseEvent): void => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.isPinned)\r\n return;\r\n\r\n if (!this.props.closeOnNestedPopupOutsideClick && this.isInCorePopup(event.target as HTMLElement))\r\n return;\r\n\r\n if (this.props.onOutsideClick)\r\n return this.props.onOutsideClick(event);\r\n\r\n if (this.props.target && this.props.target.contains(event.target as Node))\r\n return;\r\n\r\n this._onClose();\r\n };\r\n\r\n private _handleContextMenu = (event: MouseEvent) => {\r\n if (this._popup && this._popup.contains(event.target as Node))\r\n return;\r\n\r\n if (this.props.onContextMenu)\r\n return this.props.onContextMenu(event);\r\n\r\n const closeOnContextMenu = this.props.closeOnContextMenu !== undefined ? this.props.closeOnContextMenu : true;\r\n if (closeOnContextMenu)\r\n this._hide();\r\n };\r\n\r\n private _handleKeyboard = (event: KeyboardEvent): void => {\r\n if (this.props.isPinned)\r\n return;\r\n\r\n if (event.key === SpecialKey.Escape || event.key === SpecialKey.Enter) {\r\n const closeOnEnter = this.props.closeOnEnter !== undefined ? this.props.closeOnEnter : true;\r\n if (event.key === SpecialKey.Enter) {\r\n if (closeOnEnter)\r\n this._onClose(true);\r\n else\r\n this.props.onEnter && this.props.onEnter();\r\n } else {\r\n this._onClose(false);\r\n }\r\n }\r\n };\r\n\r\n private _resize = () => {\r\n if (this.props.repositionOnResize) {\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n this.setState({ left: point.x, top: point.y, position });\r\n } else {\r\n this._hide(); // legacy behavior\r\n }\r\n };\r\n\r\n private _hide = () => {\r\n if (this.props.isPinned)\r\n return;\r\n\r\n this._onClose();\r\n };\r\n\r\n private _onShow() {\r\n this._bindWindowEvents();\r\n const position = this._toggleRelativePosition();\r\n const point = this._fitPopup(this._getPosition(position));\r\n\r\n this.setState({ left: point.x, top: point.y, isOpen: true, position }, () => {\r\n if (this.props.onOpen)\r\n this.props.onOpen();\r\n });\r\n }\r\n\r\n private _onClose(enterKey?: boolean) {\r\n if (!this.state.isOpen)\r\n return;\r\n\r\n this._unBindWindowEvents();\r\n\r\n this.setState({ isOpen: false }, () => {\r\n if (enterKey && this.props.onEnter)\r\n this.props.onEnter();\r\n if (this.props.onClose)\r\n this.props.onClose();\r\n });\r\n }\r\n\r\n private _isPositionAbsolute(): boolean {\r\n return (this.props.top !== -1 && this.props.left !== -1);\r\n }\r\n\r\n private _getClassNameByPosition(position: RelativePosition): string {\r\n if (!this._isPositionAbsolute()) {\r\n switch (position) {\r\n case RelativePosition.TopLeft:\r\n return \"core-popup-top-left\";\r\n case RelativePosition.TopRight:\r\n return \"core-popup-top-right\";\r\n case RelativePosition.BottomLeft:\r\n return \"core-popup-bottom-left\";\r\n case RelativePosition.BottomRight:\r\n return \"core-popup-bottom-right\";\r\n case RelativePosition.Top:\r\n return \"core-popup-top\";\r\n case RelativePosition.Left:\r\n return \"core-popup-left\";\r\n case RelativePosition.Right:\r\n return \"core-popup-right\";\r\n case RelativePosition.Bottom:\r\n return \"core-popup-bottom\";\r\n case RelativePosition.LeftTop:\r\n return \"core-popup-left-top\";\r\n case RelativePosition.RightTop:\r\n return \"core-popup-right-top\";\r\n }\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n private _getPopupDimensions(): { popupWidth: number, popupHeight: number } {\r\n let popupWidth = 0;\r\n let popupHeight = 0;\r\n // istanbul ignore else\r\n if (this._popup) {\r\n const activeWindow = this.getParentWindow();\r\n const style = activeWindow.getComputedStyle(this._popup);\r\n const borderLeftWidth = parsePxString(style.borderLeftWidth);\r\n const borderRightWidth = parsePxString(style.borderRightWidth);\r\n const borderTopWidth = parsePxString(style.borderTopWidth);\r\n const borderBottomWidth = parsePxString(style.borderBottomWidth);\r\n popupWidth = this._popup.clientWidth + borderLeftWidth + borderRightWidth;\r\n popupHeight = this._popup.clientHeight + borderTopWidth + borderBottomWidth;\r\n }\r\n\r\n return { popupWidth, popupHeight };\r\n }\r\n\r\n private _getPosition = (position: RelativePosition) => {\r\n const activeWindow = this.getParentWindow();\r\n const { target, offset, top, left } = this.props;\r\n const offsetArrow = (this.props.showArrow) ? 6 : 0;\r\n\r\n // absolute position\r\n if (this._isPositionAbsolute())\r\n return { x: left, y: top };\r\n\r\n // sanity check\r\n const point = { x: 0, y: 0 };\r\n if (!this._popup || !target)\r\n return point;\r\n\r\n // relative position\r\n const scrollY = activeWindow.scrollY;\r\n const scrollX = activeWindow.scrollX;\r\n\r\n const targetRect = target.getBoundingClientRect();\r\n\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n\r\n switch (position) {\r\n case RelativePosition.Top:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.left + (targetRect.width / 2) - (popupWidth / 2);\r\n break;\r\n\r\n case RelativePosition.TopLeft:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.left;\r\n break;\r\n\r\n case RelativePosition.TopRight:\r\n point.y = scrollY + targetRect.top - popupHeight - offset - offsetArrow;\r\n point.x = scrollX + targetRect.right - popupWidth;\r\n break;\r\n\r\n case RelativePosition.Bottom:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.left + (targetRect.width / 2) - (popupWidth / 2);\r\n break;\r\n\r\n case RelativePosition.BottomLeft:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.left;\r\n break;\r\n\r\n case RelativePosition.BottomRight:\r\n point.y = scrollY + targetRect.bottom + offset + offsetArrow;\r\n point.x = scrollX + targetRect.right - popupWidth;\r\n break;\r\n\r\n case RelativePosition.Left:\r\n point.y = scrollY + targetRect.top + (targetRect.height / 2) - (popupHeight / 2);\r\n point.x = scrollX + targetRect.left - popupWidth - offset - offsetArrow;\r\n break;\r\n\r\n case RelativePosition.LeftTop:\r\n point.y = scrollY + targetRect.top;\r\n point.x = scrollX + targetRect.left - popupWidth - offset - offsetArrow;\r\n break;\r\n\r\n case RelativePosition.Right:\r\n point.y = scrollY + targetRect.top + (targetRect.height / 2) - (popupHeight / 2);\r\n point.x = scrollX + targetRect.right + offset + offsetArrow;\r\n break;\r\n\r\n case RelativePosition.RightTop:\r\n point.y = scrollY + targetRect.top;\r\n point.x = scrollX + targetRect.right + offset + offsetArrow;\r\n break;\r\n }\r\n\r\n return point;\r\n };\r\n\r\n private _toggleRelativePosition(): RelativePosition {\r\n const { target, position, offset } = this.props;\r\n\r\n if (!this._popup || !target)\r\n return position;\r\n\r\n // istanbul ignore if\r\n if (this._isPositionAbsolute())\r\n return position;\r\n\r\n let newPosition = position;\r\n\r\n interface Rect {\r\n left: number;\r\n top: number;\r\n right: number;\r\n bottom: number;\r\n }\r\n\r\n const activeWindow = this.getParentWindow();\r\n\r\n // Note: Cannot use DOMRect yet since it's experimental and not available in all browsers (Nov. 2018)\r\n const viewportRect: Rect = { left: activeWindow.scrollX, top: activeWindow.scrollY, right: activeWindow.scrollX + activeWindow.innerWidth, bottom: activeWindow.scrollY + activeWindow.innerHeight };\r\n const targetRect = target.getBoundingClientRect();\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n const containerStyle = activeWindow.getComputedStyle(target);\r\n const offsetArrow = this.props.showArrow ? /* istanbul ignore next */ 10 : 2;\r\n\r\n const bottomMargin = parseMargin(containerStyle.marginBottom);\r\n if ((targetRect.bottom + popupHeight + bottomMargin + offsetArrow + offset) > viewportRect.bottom) {\r\n if (newPosition === RelativePosition.Bottom)\r\n newPosition = RelativePosition.Top;\r\n else if (newPosition === RelativePosition.BottomLeft)\r\n newPosition = RelativePosition.TopLeft;\r\n else if (newPosition === RelativePosition.BottomRight)\r\n newPosition = RelativePosition.TopRight;\r\n }\r\n\r\n const topMargin = parseMargin(containerStyle.marginTop);\r\n if ((targetRect.top - popupHeight - topMargin - offsetArrow - offset) < viewportRect.top) {\r\n if (newPosition === RelativePosition.Top)\r\n newPosition = RelativePosition.Bottom;\r\n else if (newPosition === RelativePosition.TopLeft)\r\n newPosition = RelativePosition.BottomLeft;\r\n else if (newPosition === RelativePosition.TopRight)\r\n newPosition = RelativePosition.BottomRight;\r\n }\r\n\r\n const leftMargin = parseMargin(containerStyle.marginLeft);\r\n if ((targetRect.left - popupWidth - leftMargin - offsetArrow - offset) < viewportRect.left) {\r\n if (newPosition === RelativePosition.Left)\r\n newPosition = RelativePosition.Right;\r\n else if (newPosition === RelativePosition.LeftTop)\r\n newPosition = RelativePosition.RightTop;\r\n }\r\n\r\n const rightMargin = parseMargin(containerStyle.marginRight);\r\n if ((targetRect.right + popupWidth + rightMargin + offsetArrow + offset) > viewportRect.right) {\r\n if (newPosition === RelativePosition.Right)\r\n newPosition = RelativePosition.Left;\r\n else if (newPosition === RelativePosition.RightTop)\r\n newPosition = RelativePosition.LeftTop;\r\n }\r\n\r\n return newPosition;\r\n }\r\n\r\n // fit the popup within the extents of the view port\r\n private _fitPopup = (point: PopupPoint) => {\r\n const fittedPoint = point;\r\n\r\n // istanbul ignore if\r\n if (!this._popup) {\r\n return fittedPoint;\r\n }\r\n\r\n // const popupRect = this._popup.getBoundingClientRect();\r\n const { popupWidth, popupHeight } = this._getPopupDimensions();\r\n const { innerWidth, innerHeight } = window;\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.y + popupHeight > innerHeight) {\r\n fittedPoint.y = innerHeight - popupHeight;\r\n }\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.x + popupWidth > innerWidth) {\r\n fittedPoint.x = innerWidth - popupWidth;\r\n }\r\n\r\n // istanbul ignore if\r\n if (fittedPoint.y < 0) {\r\n fittedPoint.y = 0;\r\n }\r\n\r\n if (fittedPoint.x < 0) {\r\n fittedPoint.x = 0;\r\n }\r\n\r\n return fittedPoint;\r\n };\r\n\r\n private _handleAnimationEnd = (event: React.AnimationEvent<HTMLDivElement>) => {\r\n if (event.target === this._popup) {\r\n this.setState({ animationEnded: true });\r\n }\r\n };\r\n\r\n public override render() {\r\n const animate = this.props.animate !== undefined ? this.props.animate : true;\r\n const className = classnames(\r\n \"core-popup\",\r\n this._getClassNameByPosition(this.state.position),\r\n this.props.showShadow && \"core-popup-shadow\",\r\n this.props.showArrow && \"arrow\",\r\n !animate && \"core-popup-animation-none\",\r\n this.props.className,\r\n this.state.animationEnded && \"core-animation-ended\",\r\n (!this.props.isOpen && this.props.keepContentsMounted) && \"core-popup-hidden\"\r\n );\r\n\r\n const style: React.CSSProperties = {\r\n top: this.state.top,\r\n left: this.state.left,\r\n ...this.props.style,\r\n };\r\n\r\n const role = this.props.role ? this.props.role : \"dialog\"; // accessibility property\r\n\r\n if (!this.props.isOpen && !this.props.keepContentsMounted) {\r\n return null;\r\n }\r\n\r\n return ReactDOM.createPortal(\r\n (\r\n <div\r\n className={className} data-testid=\"core-popup\"\r\n ref={(element) => { this._popup = element; }}\r\n style={style}\r\n role={role}\r\n aria-modal={true}\r\n tabIndex={-1}\r\n aria-label={this.props.ariaLabel}\r\n onAnimationEnd={this._handleAnimationEnd}\r\n >\r\n <FocusTrap active={!!this.props.moveFocus} initialFocusElement={this.props.focusTarget} returnFocusOnDeactivate={true}>\r\n {this.props.children}\r\n </FocusTrap>\r\n </div>\r\n ), this.state.parentDocument.body);\r\n }\r\n}\r\n\r\nfunction parsePxString(pxStr: string): number {\r\n const parsed = parseInt(pxStr, 10);\r\n return parsed || 0;\r\n}\r\n\r\nfunction parseMargin(value: string) {\r\n return value ? /* istanbul ignore next */ parseFloat(value) : 0;\r\n}\r\n"]}
@@ -4,191 +4,191 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  @import "../inputs/variables";
6
6
  @import "../z-index";
7
- @import "~@itwin/itwinui-css/scss/style/elevation";
8
7
 
9
8
  .core-popup {
10
- top: 0;
11
- left: 0;
12
- display: block;
13
- box-sizing: border-box;
14
- position: absolute;
15
- border-radius: 4px;
16
- border: 1px solid $buic-background-panel-stroke;
17
- background: $buic-background-panel;
18
- color: $buic-text-color;
19
- animation-duration: .2s;
20
- animation-timing-function: ease;
21
- animation-fill-mode: forwards;
22
- cursor: default;
23
-
24
- @include uicore-z-index(dialog-popup);
25
-
26
- &.core-popup-animation-none {
27
- animation-duration: 0s;
28
- }
29
-
30
- &.core-popup-hidden {
31
- display: none;
32
- }
33
-
34
- &.core-animation-ended {
35
- animation-name: none;
36
- }
37
- }
38
-
39
- .core-popup.arrow::after, .core-popup.arrow::before {
40
- border: solid transparent;
41
- content: " ";
42
- height: 0;
43
- width: 0;
44
- position: absolute;
45
- pointer-events: none;
46
- color: $buic-background-panel;
9
+ top: 0;
10
+ left: 0;
11
+ display: block;
12
+ box-sizing: border-box;
13
+ position: absolute;
14
+ border-radius: var(--iui-border-radius-1);
15
+ border: 1px solid $buic-background-panel-stroke;
16
+ background: $buic-background-panel;
17
+ color: $buic-text-color;
18
+ animation-duration: 0.2s;
19
+ animation-timing-function: ease;
20
+ animation-fill-mode: forwards;
21
+ cursor: default;
22
+
23
+ @include uicore-z-index(dialog-popup);
24
+
25
+ &.core-popup-animation-none {
26
+ animation-duration: 0s;
27
+ }
28
+
29
+ &.core-popup-hidden {
30
+ display: none;
31
+ }
32
+
33
+ &.core-animation-ended {
34
+ animation-name: none;
35
+ }
36
+ }
37
+
38
+ .core-popup.arrow::after,
39
+ .core-popup.arrow::before {
40
+ border: solid transparent;
41
+ content: " ";
42
+ height: 0;
43
+ width: 0;
44
+ position: absolute;
45
+ pointer-events: none;
46
+ color: $buic-background-panel;
47
47
  }
48
48
 
49
49
  .core-popup.core-popup-bottom-left.arrow::after,
50
50
  .core-popup.core-popup-bottom-left.arrow::before {
51
- bottom: 100%;
52
- left: 25%;
51
+ bottom: 100%;
52
+ left: 25%;
53
53
  }
54
54
 
55
55
  .core-popup.core-popup-bottom-right.arrow::after,
56
56
  .core-popup.core-popup-bottom-right.arrow::before {
57
- bottom: 100%;
58
- left: 75%;
57
+ bottom: 100%;
58
+ left: 75%;
59
59
  }
60
60
 
61
61
  .core-popup.core-popup-bottom.arrow::after,
62
62
  .core-popup.core-popup-bottom.arrow::before {
63
- bottom: 100%;
64
- left: 50%;
63
+ bottom: 100%;
64
+ left: 50%;
65
65
  }
66
66
 
67
67
  .core-popup.core-popup-top.arrow::after,
68
68
  .core-popup.core-popup-top.arrow::before {
69
- top: 100%;
70
- left: 50%;
69
+ top: 100%;
70
+ left: 50%;
71
71
  }
72
72
 
73
73
  .core-popup.core-popup-top-left.arrow::after,
74
74
  .core-popup.core-popup-top-left.arrow::before {
75
- top: 100%;
76
- left: 25%;
75
+ top: 100%;
76
+ left: 25%;
77
77
  }
78
78
 
79
79
  .core-popup.core-popup-top-right.arrow::after,
80
80
  .core-popup.core-popup-top-right.arrow::before {
81
- top: 100%;
82
- left: 75%;
81
+ top: 100%;
82
+ left: 75%;
83
83
  }
84
84
 
85
85
  .core-popup.core-popup-left.arrow::after,
86
86
  .core-popup.core-popup-left.arrow::before {
87
- top: 50%;
88
- left: 100%;
87
+ top: 50%;
88
+ left: 100%;
89
89
  }
90
90
 
91
91
  .core-popup.core-popup-right.arrow::after,
92
92
  .core-popup.core-popup-right.arrow::before {
93
- top: 50%;
94
- right: 100%;
93
+ top: 50%;
94
+ right: 100%;
95
95
  }
96
96
 
97
97
  .core-popup.core-popup-bottom.arrow::before,
98
98
  .core-popup.core-popup-bottom-left.arrow::before,
99
99
  .core-popup.core-popup-bottom-right.arrow::before {
100
- border-bottom-color: inherit;
101
- border-width: 9px;
102
- margin-left: -9px;
100
+ border-bottom-color: inherit;
101
+ border-width: 9px;
102
+ margin-left: -9px;
103
103
  }
104
104
 
105
105
  .core-popup.core-popup-top.arrow::before,
106
106
  .core-popup.core-popup-top-left.arrow::before,
107
107
  .core-popup.core-popup-top-right.arrow::before {
108
- border-top-color: inherit;
109
- border-width: 9px;
110
- margin-left: -9px;
108
+ border-top-color: inherit;
109
+ border-width: 9px;
110
+ margin-left: -9px;
111
111
  }
112
112
 
113
113
  .core-popup.core-popup-left.arrow::before {
114
- border-left-color: inherit;
115
- border-width: 9px;
116
- margin-top: -9px;
114
+ border-left-color: inherit;
115
+ border-width: 9px;
116
+ margin-top: -9px;
117
117
  }
118
118
 
119
119
  .core-popup.core-popup-right.arrow::before {
120
- border-right-color: inherit;
121
- border-width: 9px;
122
- margin-top: -9px;
120
+ border-right-color: inherit;
121
+ border-width: 9px;
122
+ margin-top: -9px;
123
123
  }
124
124
 
125
125
  .core-popup.core-popup-bottom.arrow::after,
126
126
  .core-popup.core-popup-bottom-left.arrow::after,
127
127
  .core-popup.core-popup-bottom-right.arrow::after {
128
- border-bottom-color: currentColor;
129
- border-width: 8px;
130
- margin-left: -8px;
128
+ border-bottom-color: currentColor;
129
+ border-width: 8px;
130
+ margin-left: -8px;
131
131
  }
132
132
 
133
133
  .core-popup.core-popup-top.arrow::after,
134
134
  .core-popup.core-popup-top-left.arrow::after,
135
135
  .core-popup.core-popup-top-right.arrow::after {
136
- border-top-color: currentColor;
137
- border-width: 8px;
138
- margin-left: -8px;
136
+ border-top-color: currentColor;
137
+ border-width: 8px;
138
+ margin-left: -8px;
139
139
  }
140
140
 
141
141
  .core-popup.core-popup-left.arrow::after {
142
- border-left-color: currentColor;
143
- border-width: 8px;
144
- margin-top: -8px;
142
+ border-left-color: currentColor;
143
+ border-width: 8px;
144
+ margin-top: -8px;
145
145
  }
146
146
 
147
147
  .core-popup.core-popup-right.arrow::after {
148
- border-right-color: currentColor;
149
- border-width: 8px;
150
- margin-top: -8px;
148
+ border-right-color: currentColor;
149
+ border-width: 8px;
150
+ margin-top: -8px;
151
151
  }
152
152
 
153
153
  .core-popup-shadow {
154
- -webkit-box-shadow: $iui-elevation-16;
155
- box-shadow: $iui-elevation-16;
156
- background-clip: padding-box;
154
+ -webkit-box-shadow: var(--iui-shadow-4);
155
+ box-shadow: var(--iui-shadow-4);
156
+ background-clip: padding-box;
157
157
  }
158
158
 
159
159
  .core-popup-top-left {
160
- transform-origin: left bottom 0px;
161
- animation-name: animate-corner;
160
+ transform-origin: left bottom 0px;
161
+ animation-name: animate-corner;
162
162
  }
163
163
 
164
164
  .core-popup-top-right {
165
- transform-origin: right bottom 0px;
166
- animation-name: animate-corner;
165
+ transform-origin: right bottom 0px;
166
+ animation-name: animate-corner;
167
167
  }
168
168
 
169
169
  .core-popup-bottom-left {
170
- transform-origin: left top 0px;
171
- animation-name: animate-corner;
170
+ transform-origin: left top 0px;
171
+ animation-name: animate-corner;
172
172
  }
173
173
 
174
174
  .core-popup-bottom-right {
175
- transform-origin: right top 0px;
176
- animation-name: animate-corner;
175
+ transform-origin: right top 0px;
176
+ animation-name: animate-corner;
177
177
  }
178
178
 
179
179
  .core-popup-left {
180
- transform-origin: right;
181
- animation-name: animate-horizontal;
180
+ transform-origin: right;
181
+ animation-name: animate-horizontal;
182
182
  }
183
183
 
184
184
  .core-popup-left-top {
185
185
  transform-origin: right top 0px;
186
186
  animation-name: animate-corner;
187
- }
187
+ }
188
188
 
189
189
  .core-popup-right {
190
- transform-origin: left;
191
- animation-name: animate-horizontal;
190
+ transform-origin: left;
191
+ animation-name: animate-horizontal;
192
192
  }
193
193
 
194
194
  .core-popup-right-top {
@@ -197,44 +197,44 @@
197
197
  }
198
198
 
199
199
  .core-popup-top {
200
- transform-origin: bottom;
201
- animation-name: animate-vertical;
202
- };
200
+ transform-origin: bottom;
201
+ animation-name: animate-vertical;
202
+ }
203
203
 
204
204
  .core-popup-bottom {
205
- transform-origin: top;
206
- animation-name: animate-vertical;
205
+ transform-origin: top;
206
+ animation-name: animate-vertical;
207
207
  }
208
208
 
209
209
  @keyframes animate-vertical {
210
- from {
211
- visibility: hidden;
212
- transform: scale(1,.5);
213
- }
214
- to {
215
- visibility: visible;
216
- transform: scale(1);
217
- }
210
+ from {
211
+ visibility: hidden;
212
+ transform: scale(1, 0.5);
213
+ }
214
+ to {
215
+ visibility: visible;
216
+ transform: scale(1);
217
+ }
218
218
  }
219
219
 
220
220
  @keyframes animate-corner {
221
- from {
222
- visibility: hidden;
223
- transform: scale(.5,.5);
224
- }
225
- to {
226
- visibility: visible;
227
- transform: scale(1,1);
228
- }
221
+ from {
222
+ visibility: hidden;
223
+ transform: scale(0.5, 0.5);
224
+ }
225
+ to {
226
+ visibility: visible;
227
+ transform: scale(1, 1);
228
+ }
229
229
  }
230
230
 
231
231
  @keyframes animate-horizontal {
232
- from {
233
- visibility: hidden;
234
- transform: scale(.5,1);
235
- }
236
- to {
237
- visibility: visible;
238
- transform: scale(1,1);
239
- }
232
+ from {
233
+ visibility: hidden;
234
+ transform: scale(0.5, 1);
235
+ }
236
+ to {
237
+ visibility: visible;
238
+ transform: scale(1, 1);
239
+ }
240
240
  }
@@ -30,6 +30,8 @@ export interface RadialMenuProps extends CommonProps {
30
30
  onBlur?: (event: any) => any;
31
31
  /** triggered onKeyUp for <Esc> key */
32
32
  onEsc?: (event: any) => any;
33
+ /** Content */
34
+ children?: React.ReactNode;
33
35
  }
34
36
  /** @internal */
35
37
  interface RadialMenuState {
@@ -70,6 +72,8 @@ export interface RadialButtonProps extends CommonProps {
70
72
  onSelect?: (e: any) => any;
71
73
  /** Whether item is highlighted */
72
74
  selected?: boolean;
75
+ /** Content */
76
+ children?: React.ReactNode;
73
77
  }
74
78
  /** @internal */
75
79
  interface RadialButtonState {
@@ -1 +1 @@
1
- {"version":3,"file":"RadialMenu.d.ts","sourceRoot":"","sources":["../../../../src/core-react/radialmenu/RadialMenu.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAQ,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAW,MAAM,WAAW,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,8DAA8D;IAC9D,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7B,sCAAsC;IACtC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;CAC7B;AAED,gBAAgB;AAChB,UAAU,eAAe;IACvB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,UAAW,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAC/E,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAc,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAGlD;IAEF,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,CAEvD;gBAEU,KAAK,EAAE,eAAe;IAIlB,MAAM,IAAI,GAAG,CAAC,OAAO;IAqDrB,iBAAiB;IASjB,oBAAoB;IAKpB,kBAAkB,CAAC,SAAS,EAAE,eAAe;IAM7D,OAAO,CAAC,YAAY,CAGlB;IAEF,OAAO,CAAC,YAAY,CAGlB;IAEF,oDAAoD;IAC7C,MAAM,aAIX;IAEF,OAAO,CAAC,uBAAuB,CAa7B;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,gEAAgE;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kDAAkD;IAClD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,gBAAgB;IAChB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wGAAwG;IACxG,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAC3B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,gBAAgB;AAChB,UAAU,iBAAiB;IACzB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAErF,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAA2C;gBAE1F,KAAK,EAAE,iBAAiB;IAIpB,MAAM,IAAI,GAAG,CAAC,OAAO;IAwDrC,wCAAwC;IACjC,MAAM,aAIX;IAEF,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,eAAe,CAErB;CACH"}
1
+ {"version":3,"file":"RadialMenu.d.ts","sourceRoot":"","sources":["../../../../src/core-react/radialmenu/RadialMenu.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAQ,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAW,MAAM,WAAW,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,8DAA8D;IAC9D,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7B,sCAAsC;IACtC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC5B,cAAc;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,gBAAgB;AAChB,UAAU,eAAe;IACvB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,UAAW,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAC/E,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAc,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAGlD;IAEF,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,CAEvD;gBAEU,KAAK,EAAE,eAAe;IAIlB,MAAM,IAAI,GAAG,CAAC,OAAO;IAqDrB,iBAAiB;IASjB,oBAAoB;IAKpB,kBAAkB,CAAC,SAAS,EAAE,eAAe;IAM7D,OAAO,CAAC,YAAY,CAGlB;IAEF,OAAO,CAAC,YAAY,CAGlB;IAEF,oDAAoD;IAC7C,MAAM,aAIX;IAEF,OAAO,CAAC,uBAAuB,CAa7B;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,gEAAgE;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kDAAkD;IAClD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,gBAAgB;IAChB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wGAAwG;IACxG,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAC3B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,gBAAgB;AAChB,UAAU,iBAAiB;IACzB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAErF,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAA2C;gBAE1F,KAAK,EAAE,iBAAiB;IAIpB,MAAM,IAAI,GAAG,CAAC,OAAO;IAwDrC,wCAAwC;IACjC,MAAM,aAIX;IAEF,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,eAAe,CAErB;CACH"}