@itwin/core-react 4.0.0-dev.2 → 4.0.0-dev.20

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 (448) hide show
  1. package/CHANGELOG.md +144 -7
  2. package/ContributeGuidelines.md +17 -14
  3. package/LICENSE.md +1 -1
  4. package/README.md +2 -2
  5. package/lib/cjs/core-react/UiCore.js +1 -1
  6. package/lib/cjs/core-react/UiCore.js.map +1 -1
  7. package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts +2 -2
  8. package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  9. package/lib/cjs/core-react/autosuggest/AutoSuggest.js +1 -1
  10. package/lib/cjs/core-react/autosuggest/AutoSuggest.js.map +1 -1
  11. package/lib/cjs/core-react/autosuggest/AutoSuggest.scss +5 -8
  12. package/lib/cjs/core-react/badge/BetaBadge.d.ts +0 -1
  13. package/lib/cjs/core-react/badge/BetaBadge.d.ts.map +1 -1
  14. package/lib/cjs/core-react/badge/BetaBadge.js +0 -1
  15. package/lib/cjs/core-react/badge/BetaBadge.js.map +1 -1
  16. package/lib/cjs/core-react/badge/NewBadge.scss +1 -1
  17. package/lib/cjs/core-react/base/Gap.js +1 -1
  18. package/lib/cjs/core-react/base/Gap.js.map +1 -1
  19. package/lib/cjs/core-react/checklistbox/CheckListBox.scss +1 -2
  20. package/lib/cjs/core-react/classes.scss +0 -3
  21. package/lib/cjs/core-react/colorthemes.scss +5 -34
  22. package/lib/cjs/core-react/colorvariables.scss +53 -76
  23. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts +1 -1
  24. package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  25. package/lib/cjs/core-react/contextmenu/ContextMenu.js +2 -3
  26. package/lib/cjs/core-react/contextmenu/ContextMenu.js.map +1 -1
  27. package/lib/cjs/core-react/contextmenu/ContextMenu.scss +12 -13
  28. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js +1 -1
  29. package/lib/cjs/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  30. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts +1 -1
  31. package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  32. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js +5 -2
  33. package/lib/cjs/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  34. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.d.ts.map +1 -1
  35. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js +6 -4
  36. package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  37. package/lib/cjs/core-react/contextmenu/TildeFinder.js +1 -1
  38. package/lib/cjs/core-react/contextmenu/TildeFinder.js.map +1 -1
  39. package/lib/cjs/core-react/dialog/Dialog.d.ts.map +1 -1
  40. package/lib/cjs/core-react/dialog/Dialog.js +18 -10
  41. package/lib/cjs/core-react/dialog/Dialog.js.map +1 -1
  42. package/lib/cjs/core-react/dialog/Dialog.scss +23 -22
  43. package/lib/cjs/core-react/dialog/GlobalDialog.js +1 -2
  44. package/lib/cjs/core-react/dialog/GlobalDialog.js.map +1 -1
  45. package/lib/cjs/core-react/elementseparator/ElementSeparator.js +2 -2
  46. package/lib/cjs/core-react/elementseparator/ElementSeparator.js.map +1 -1
  47. package/lib/cjs/core-react/elementseparator/ElementSeparator.scss +1 -1
  48. package/lib/cjs/core-react/expandable/ExpandableList.js +1 -1
  49. package/lib/cjs/core-react/expandable/ExpandableList.js.map +1 -1
  50. package/lib/cjs/core-react/expandable/list.scss +5 -5
  51. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts +1 -1
  52. package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  53. package/lib/cjs/core-react/hocs/withOnOutsideClick.js +1 -2
  54. package/lib/cjs/core-react/hocs/withOnOutsideClick.js.map +1 -1
  55. package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts +27 -0
  56. package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts.map +1 -0
  57. package/lib/cjs/core-react/icons/ConditionalIconItem.js +65 -0
  58. package/lib/cjs/core-react/icons/ConditionalIconItem.js.map +1 -0
  59. package/lib/cjs/core-react/icons/IconComponent.d.ts +3 -2
  60. package/lib/cjs/core-react/icons/IconComponent.d.ts.map +1 -1
  61. package/lib/cjs/core-react/icons/IconComponent.js +1 -7
  62. package/lib/cjs/core-react/icons/IconComponent.js.map +1 -1
  63. package/lib/cjs/core-react/icons/SvgPath.d.ts +1 -1
  64. package/lib/cjs/core-react/icons/SvgPath.d.ts.map +1 -1
  65. package/lib/cjs/core-react/icons/SvgPath.js +2 -2
  66. package/lib/cjs/core-react/icons/SvgPath.js.map +1 -1
  67. package/lib/cjs/core-react/icons/{SvgSprite.scss → SvgPath.scss} +1 -1
  68. package/lib/cjs/core-react/icons/WebFontIcon.d.ts +0 -1
  69. package/lib/cjs/core-react/icons/WebFontIcon.d.ts.map +1 -1
  70. package/lib/cjs/core-react/icons/WebFontIcon.js +0 -1
  71. package/lib/cjs/core-react/icons/WebFontIcon.js.map +1 -1
  72. package/lib/cjs/core-react/icons/variables.scss +0 -9
  73. package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.scss +2 -2
  74. package/lib/cjs/core-react/index.scss +0 -2
  75. package/lib/cjs/core-react/inputs/InputLabel.d.ts.map +1 -1
  76. package/lib/cjs/core-react/inputs/InputLabel.js +9 -1
  77. package/lib/cjs/core-react/inputs/InputLabel.js.map +1 -1
  78. package/lib/cjs/core-react/inputs/input-label.scss +2 -2
  79. package/lib/cjs/core-react/inputs/input.scss +7 -7
  80. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts +6 -1
  81. package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  82. package/lib/cjs/core-react/inputs/numberinput/NumberInput.js +13 -8
  83. package/lib/cjs/core-react/inputs/numberinput/NumberInput.js.map +1 -1
  84. package/lib/cjs/core-react/inputs/numberinput/NumberInput.scss +12 -13
  85. package/lib/cjs/core-react/inputs/variables.scss +4 -4
  86. package/lib/cjs/core-react/listbox/Listbox.d.ts +1 -1
  87. package/lib/cjs/core-react/listbox/Listbox.d.ts.map +1 -1
  88. package/lib/cjs/core-react/listbox/Listbox.js +2 -3
  89. package/lib/cjs/core-react/listbox/Listbox.js.map +1 -1
  90. package/lib/cjs/core-react/listbox/Listbox.scss +8 -8
  91. package/lib/cjs/core-react/loading/LoadingBar.js +1 -1
  92. package/lib/cjs/core-react/loading/LoadingBar.js.map +1 -1
  93. package/lib/cjs/core-react/loading/LoadingPrompt.js +1 -1
  94. package/lib/cjs/core-react/loading/LoadingPrompt.js.map +1 -1
  95. package/lib/cjs/core-react/loading/LoadingPrompt.scss +2 -2
  96. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts +1 -1
  97. package/lib/cjs/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  98. package/lib/cjs/core-react/loading/LoadingSpinner.js +1 -1
  99. package/lib/cjs/core-react/loading/LoadingSpinner.js.map +1 -1
  100. package/lib/cjs/core-react/loading/LoadingSpinner.scss +1 -1
  101. package/lib/cjs/core-react/loading/LoadingStatus.js +1 -1
  102. package/lib/cjs/core-react/loading/LoadingStatus.js.map +1 -1
  103. package/lib/cjs/core-react/messagebox/MessageBox.d.ts +13 -1
  104. package/lib/cjs/core-react/messagebox/MessageBox.d.ts.map +1 -1
  105. package/lib/cjs/core-react/messagebox/MessageBox.js +55 -11
  106. package/lib/cjs/core-react/messagebox/MessageBox.js.map +1 -1
  107. package/lib/cjs/core-react/messagebox/MessageBox.scss +24 -14
  108. package/lib/cjs/core-react/notification/MessageRenderer.js +1 -1
  109. package/lib/cjs/core-react/notification/MessageRenderer.js.map +1 -1
  110. package/lib/cjs/core-react/notification/MessageType.d.ts +1 -1
  111. package/lib/cjs/core-react/notification/MessageType.d.ts.map +1 -1
  112. package/lib/cjs/core-react/popup/Popup.d.ts.map +1 -1
  113. package/lib/cjs/core-react/popup/Popup.js +7 -8
  114. package/lib/cjs/core-react/popup/Popup.js.map +1 -1
  115. package/lib/cjs/core-react/popup/Popup.scss +5 -5
  116. package/lib/cjs/core-react/radialmenu/RadialMenu.js +1 -1
  117. package/lib/cjs/core-react/radialmenu/RadialMenu.js.map +1 -1
  118. package/lib/cjs/core-react/radialmenu/RadialMenu.scss +1 -1
  119. package/lib/cjs/core-react/searchbox/SearchBox.d.ts.map +1 -1
  120. package/lib/cjs/core-react/searchbox/SearchBox.js +8 -6
  121. package/lib/cjs/core-react/searchbox/SearchBox.js.map +1 -1
  122. package/lib/cjs/core-react/searchbox/SearchBox.scss +5 -9
  123. package/lib/cjs/core-react/settings/SettingsContainer.js +1 -1
  124. package/lib/cjs/core-react/settings/SettingsContainer.js.map +1 -1
  125. package/lib/cjs/core-react/settings/SettingsContainer.scss +3 -1
  126. package/lib/cjs/core-react/style/index.scss +0 -7
  127. package/lib/cjs/core-react/style/mixins.scss +2 -2
  128. package/lib/cjs/core-react/style/themecolors.scss +0 -6
  129. package/lib/cjs/core-react/tabs/tabs.scss +10 -20
  130. package/lib/cjs/core-react/tabs/vertical.scss +6 -13
  131. package/lib/cjs/core-react/text/BlockText.d.ts.map +1 -1
  132. package/lib/cjs/core-react/text/BlockText.js +1 -0
  133. package/lib/cjs/core-react/text/BlockText.js.map +1 -1
  134. package/lib/cjs/core-react/text/BodyText.d.ts +1 -0
  135. package/lib/cjs/core-react/text/BodyText.d.ts.map +1 -1
  136. package/lib/cjs/core-react/text/BodyText.js +2 -0
  137. package/lib/cjs/core-react/text/BodyText.js.map +1 -1
  138. package/lib/cjs/core-react/text/DisabledText.d.ts.map +1 -1
  139. package/lib/cjs/core-react/text/DisabledText.js +1 -0
  140. package/lib/cjs/core-react/text/DisabledText.js.map +1 -1
  141. package/lib/cjs/core-react/text/FilteredText.js +3 -3
  142. package/lib/cjs/core-react/text/FilteredText.js.map +1 -1
  143. package/lib/cjs/core-react/text/MutedText.d.ts +1 -0
  144. package/lib/cjs/core-react/text/MutedText.d.ts.map +1 -1
  145. package/lib/cjs/core-react/text/MutedText.js +2 -0
  146. package/lib/cjs/core-react/text/MutedText.js.map +1 -1
  147. package/lib/cjs/core-react/text/StyledText.d.ts +1 -0
  148. package/lib/cjs/core-react/text/StyledText.d.ts.map +1 -1
  149. package/lib/cjs/core-react/text/StyledText.js +1 -0
  150. package/lib/cjs/core-react/text/StyledText.js.map +1 -1
  151. package/lib/cjs/core-react/text/block.scss +9 -4
  152. package/lib/cjs/core-react/text/body.scss +7 -4
  153. package/lib/cjs/core-react/text/mixins.scss +3 -3
  154. package/lib/cjs/core-react/tree/ExpansionToggle.d.ts.map +1 -1
  155. package/lib/cjs/core-react/tree/ExpansionToggle.js +3 -1
  156. package/lib/cjs/core-react/tree/ExpansionToggle.js.map +1 -1
  157. package/lib/cjs/core-react/tree/ExpansionToggle.scss +9 -5
  158. package/lib/cjs/core-react/tree/Node.d.ts +2 -2
  159. package/lib/cjs/core-react/tree/Node.d.ts.map +1 -1
  160. package/lib/cjs/core-react/tree/Node.js +2 -3
  161. package/lib/cjs/core-react/tree/Node.js.map +1 -1
  162. package/lib/cjs/core-react/tree/Node.scss +3 -19
  163. package/lib/cjs/core-react/tree/Placeholder.scss +1 -4
  164. package/lib/cjs/core-react/utils/IconWebComponent.js +1 -1
  165. package/lib/cjs/core-react/utils/IconWebComponent.js.map +1 -1
  166. package/lib/cjs/core-react/utils/Point.js +4 -4
  167. package/lib/cjs/core-react/utils/Point.js.map +1 -1
  168. package/lib/cjs/core-react/utils/Props.d.ts +1 -1
  169. package/lib/cjs/core-react/utils/Props.d.ts.map +1 -1
  170. package/lib/cjs/core-react/utils/Rectangle.js +7 -7
  171. package/lib/cjs/core-react/utils/Rectangle.js.map +1 -1
  172. package/lib/cjs/core-react/utils/Size.js +4 -4
  173. package/lib/cjs/core-react/utils/Size.js.map +1 -1
  174. package/lib/cjs/core-react/utils/Timer.d.ts +1 -1
  175. package/lib/cjs/core-react/utils/Timer.d.ts.map +1 -1
  176. package/lib/cjs/core-react/utils/getBestBWContrastColor.js +3 -3
  177. package/lib/cjs/core-react/utils/getBestBWContrastColor.js.map +1 -1
  178. package/lib/cjs/core-react/utils/getCssVariable.js +1 -1
  179. package/lib/cjs/core-react/utils/getCssVariable.js.map +1 -1
  180. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +1 -1
  181. package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  182. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js +1 -2
  183. package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  184. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts +1 -1
  185. package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  186. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.d.ts.map +1 -1
  187. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js +2 -2
  188. package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js.map +1 -1
  189. package/lib/cjs/core-react/utils/hooks/useRefs.d.ts +1 -1
  190. package/lib/cjs/core-react/utils/hooks/useRefs.d.ts.map +1 -1
  191. package/lib/cjs/core-react/utils/hooks/useRefs.js.map +1 -1
  192. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js +8 -13
  193. package/lib/cjs/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  194. package/lib/cjs/core-react/utils/typeUtils.d.ts +1 -1
  195. package/lib/cjs/core-react/utils/typeUtils.d.ts.map +1 -1
  196. package/lib/cjs/core-react.d.ts +1 -1
  197. package/lib/cjs/core-react.d.ts.map +1 -1
  198. package/lib/cjs/core-react.js +6 -2
  199. package/lib/cjs/core-react.js.map +1 -1
  200. package/lib/esm/core-react/UiCore.js +2 -1
  201. package/lib/esm/core-react/UiCore.js.map +1 -1
  202. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts +2 -2
  203. package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
  204. package/lib/esm/core-react/autosuggest/AutoSuggest.js +1 -1
  205. package/lib/esm/core-react/autosuggest/AutoSuggest.js.map +1 -1
  206. package/lib/esm/core-react/autosuggest/AutoSuggest.scss +5 -8
  207. package/lib/esm/core-react/badge/BetaBadge.d.ts +0 -1
  208. package/lib/esm/core-react/badge/BetaBadge.d.ts.map +1 -1
  209. package/lib/esm/core-react/badge/BetaBadge.js +0 -1
  210. package/lib/esm/core-react/badge/BetaBadge.js.map +1 -1
  211. package/lib/esm/core-react/badge/NewBadge.scss +1 -1
  212. package/lib/esm/core-react/base/Gap.js +1 -1
  213. package/lib/esm/core-react/base/Gap.js.map +1 -1
  214. package/lib/esm/core-react/checklistbox/CheckListBox.scss +1 -2
  215. package/lib/esm/core-react/classes.scss +0 -3
  216. package/lib/esm/core-react/colorthemes.scss +5 -34
  217. package/lib/esm/core-react/colorvariables.scss +53 -76
  218. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts +1 -1
  219. package/lib/esm/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
  220. package/lib/esm/core-react/contextmenu/ContextMenu.js +3 -3
  221. package/lib/esm/core-react/contextmenu/ContextMenu.js.map +1 -1
  222. package/lib/esm/core-react/contextmenu/ContextMenu.scss +12 -13
  223. package/lib/esm/core-react/contextmenu/ContextMenuItem.js +2 -1
  224. package/lib/esm/core-react/contextmenu/ContextMenuItem.js.map +1 -1
  225. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts +1 -1
  226. package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
  227. package/lib/esm/core-react/contextmenu/ContextSubMenu.js +6 -2
  228. package/lib/esm/core-react/contextmenu/ContextSubMenu.js.map +1 -1
  229. package/lib/esm/core-react/contextmenu/GlobalContextMenu.d.ts.map +1 -1
  230. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js +6 -4
  231. package/lib/esm/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
  232. package/lib/esm/core-react/contextmenu/TildeFinder.js +2 -1
  233. package/lib/esm/core-react/contextmenu/TildeFinder.js.map +1 -1
  234. package/lib/esm/core-react/dialog/Dialog.d.ts.map +1 -1
  235. package/lib/esm/core-react/dialog/Dialog.js +19 -10
  236. package/lib/esm/core-react/dialog/Dialog.js.map +1 -1
  237. package/lib/esm/core-react/dialog/Dialog.scss +23 -22
  238. package/lib/esm/core-react/dialog/GlobalDialog.js +1 -2
  239. package/lib/esm/core-react/dialog/GlobalDialog.js.map +1 -1
  240. package/lib/esm/core-react/elementseparator/ElementSeparator.js +2 -2
  241. package/lib/esm/core-react/elementseparator/ElementSeparator.js.map +1 -1
  242. package/lib/esm/core-react/elementseparator/ElementSeparator.scss +1 -1
  243. package/lib/esm/core-react/expandable/ExpandableList.js +2 -1
  244. package/lib/esm/core-react/expandable/ExpandableList.js.map +1 -1
  245. package/lib/esm/core-react/expandable/list.scss +5 -5
  246. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts +1 -1
  247. package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
  248. package/lib/esm/core-react/hocs/withOnOutsideClick.js +1 -2
  249. package/lib/esm/core-react/hocs/withOnOutsideClick.js.map +1 -1
  250. package/lib/esm/core-react/icons/ConditionalIconItem.d.ts +27 -0
  251. package/lib/esm/core-react/icons/ConditionalIconItem.d.ts.map +1 -0
  252. package/lib/esm/core-react/icons/ConditionalIconItem.js +61 -0
  253. package/lib/esm/core-react/icons/ConditionalIconItem.js.map +1 -0
  254. package/lib/esm/core-react/icons/IconComponent.d.ts +3 -2
  255. package/lib/esm/core-react/icons/IconComponent.d.ts.map +1 -1
  256. package/lib/esm/core-react/icons/IconComponent.js +1 -7
  257. package/lib/esm/core-react/icons/IconComponent.js.map +1 -1
  258. package/lib/esm/core-react/icons/SvgPath.d.ts +1 -1
  259. package/lib/esm/core-react/icons/SvgPath.d.ts.map +1 -1
  260. package/lib/esm/core-react/icons/SvgPath.js +2 -2
  261. package/lib/esm/core-react/icons/SvgPath.js.map +1 -1
  262. package/lib/esm/core-react/icons/{SvgSprite.scss → SvgPath.scss} +1 -1
  263. package/lib/esm/core-react/icons/WebFontIcon.d.ts +0 -1
  264. package/lib/esm/core-react/icons/WebFontIcon.d.ts.map +1 -1
  265. package/lib/esm/core-react/icons/WebFontIcon.js +0 -1
  266. package/lib/esm/core-react/icons/WebFontIcon.js.map +1 -1
  267. package/lib/esm/core-react/icons/variables.scss +0 -9
  268. package/lib/esm/core-react/imagecheckbox/ImageCheckBox.scss +2 -2
  269. package/lib/esm/core-react/index.scss +0 -2
  270. package/lib/esm/core-react/inputs/InputLabel.d.ts.map +1 -1
  271. package/lib/esm/core-react/inputs/InputLabel.js +9 -1
  272. package/lib/esm/core-react/inputs/InputLabel.js.map +1 -1
  273. package/lib/esm/core-react/inputs/input-label.scss +2 -2
  274. package/lib/esm/core-react/inputs/input.scss +7 -7
  275. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts +6 -1
  276. package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
  277. package/lib/esm/core-react/inputs/numberinput/NumberInput.js +13 -8
  278. package/lib/esm/core-react/inputs/numberinput/NumberInput.js.map +1 -1
  279. package/lib/esm/core-react/inputs/numberinput/NumberInput.scss +12 -13
  280. package/lib/esm/core-react/inputs/variables.scss +4 -4
  281. package/lib/esm/core-react/listbox/Listbox.d.ts +1 -1
  282. package/lib/esm/core-react/listbox/Listbox.d.ts.map +1 -1
  283. package/lib/esm/core-react/listbox/Listbox.js +2 -3
  284. package/lib/esm/core-react/listbox/Listbox.js.map +1 -1
  285. package/lib/esm/core-react/listbox/Listbox.scss +8 -8
  286. package/lib/esm/core-react/loading/LoadingBar.js +2 -1
  287. package/lib/esm/core-react/loading/LoadingBar.js.map +1 -1
  288. package/lib/esm/core-react/loading/LoadingPrompt.js +2 -1
  289. package/lib/esm/core-react/loading/LoadingPrompt.js.map +1 -1
  290. package/lib/esm/core-react/loading/LoadingPrompt.scss +2 -2
  291. package/lib/esm/core-react/loading/LoadingSpinner.d.ts +1 -1
  292. package/lib/esm/core-react/loading/LoadingSpinner.d.ts.map +1 -1
  293. package/lib/esm/core-react/loading/LoadingSpinner.js +2 -1
  294. package/lib/esm/core-react/loading/LoadingSpinner.js.map +1 -1
  295. package/lib/esm/core-react/loading/LoadingSpinner.scss +1 -1
  296. package/lib/esm/core-react/loading/LoadingStatus.js +2 -1
  297. package/lib/esm/core-react/loading/LoadingStatus.js.map +1 -1
  298. package/lib/esm/core-react/messagebox/MessageBox.d.ts +13 -1
  299. package/lib/esm/core-react/messagebox/MessageBox.d.ts.map +1 -1
  300. package/lib/esm/core-react/messagebox/MessageBox.js +56 -11
  301. package/lib/esm/core-react/messagebox/MessageBox.js.map +1 -1
  302. package/lib/esm/core-react/messagebox/MessageBox.scss +24 -14
  303. package/lib/esm/core-react/notification/MessageRenderer.js +1 -1
  304. package/lib/esm/core-react/notification/MessageRenderer.js.map +1 -1
  305. package/lib/esm/core-react/notification/MessageType.d.ts +1 -1
  306. package/lib/esm/core-react/notification/MessageType.d.ts.map +1 -1
  307. package/lib/esm/core-react/popup/Popup.d.ts.map +1 -1
  308. package/lib/esm/core-react/popup/Popup.js +8 -8
  309. package/lib/esm/core-react/popup/Popup.js.map +1 -1
  310. package/lib/esm/core-react/popup/Popup.scss +5 -5
  311. package/lib/esm/core-react/radialmenu/RadialMenu.js +2 -1
  312. package/lib/esm/core-react/radialmenu/RadialMenu.js.map +1 -1
  313. package/lib/esm/core-react/radialmenu/RadialMenu.scss +1 -1
  314. package/lib/esm/core-react/searchbox/SearchBox.d.ts.map +1 -1
  315. package/lib/esm/core-react/searchbox/SearchBox.js +8 -6
  316. package/lib/esm/core-react/searchbox/SearchBox.js.map +1 -1
  317. package/lib/esm/core-react/searchbox/SearchBox.scss +5 -9
  318. package/lib/esm/core-react/settings/SettingsContainer.js +1 -1
  319. package/lib/esm/core-react/settings/SettingsContainer.js.map +1 -1
  320. package/lib/esm/core-react/settings/SettingsContainer.scss +3 -1
  321. package/lib/esm/core-react/style/index.scss +0 -7
  322. package/lib/esm/core-react/style/mixins.scss +2 -2
  323. package/lib/esm/core-react/style/themecolors.scss +0 -6
  324. package/lib/esm/core-react/tabs/tabs.scss +10 -20
  325. package/lib/esm/core-react/tabs/vertical.scss +6 -13
  326. package/lib/esm/core-react/text/BlockText.d.ts.map +1 -1
  327. package/lib/esm/core-react/text/BlockText.js +1 -0
  328. package/lib/esm/core-react/text/BlockText.js.map +1 -1
  329. package/lib/esm/core-react/text/BodyText.d.ts +1 -0
  330. package/lib/esm/core-react/text/BodyText.d.ts.map +1 -1
  331. package/lib/esm/core-react/text/BodyText.js +2 -0
  332. package/lib/esm/core-react/text/BodyText.js.map +1 -1
  333. package/lib/esm/core-react/text/DisabledText.d.ts.map +1 -1
  334. package/lib/esm/core-react/text/DisabledText.js +1 -0
  335. package/lib/esm/core-react/text/DisabledText.js.map +1 -1
  336. package/lib/esm/core-react/text/FilteredText.js +3 -3
  337. package/lib/esm/core-react/text/FilteredText.js.map +1 -1
  338. package/lib/esm/core-react/text/MutedText.d.ts +1 -0
  339. package/lib/esm/core-react/text/MutedText.d.ts.map +1 -1
  340. package/lib/esm/core-react/text/MutedText.js +2 -0
  341. package/lib/esm/core-react/text/MutedText.js.map +1 -1
  342. package/lib/esm/core-react/text/StyledText.d.ts +1 -0
  343. package/lib/esm/core-react/text/StyledText.d.ts.map +1 -1
  344. package/lib/esm/core-react/text/StyledText.js +1 -0
  345. package/lib/esm/core-react/text/StyledText.js.map +1 -1
  346. package/lib/esm/core-react/text/block.scss +9 -4
  347. package/lib/esm/core-react/text/body.scss +7 -4
  348. package/lib/esm/core-react/text/mixins.scss +3 -3
  349. package/lib/esm/core-react/tree/ExpansionToggle.d.ts.map +1 -1
  350. package/lib/esm/core-react/tree/ExpansionToggle.js +3 -1
  351. package/lib/esm/core-react/tree/ExpansionToggle.js.map +1 -1
  352. package/lib/esm/core-react/tree/ExpansionToggle.scss +9 -5
  353. package/lib/esm/core-react/tree/Node.d.ts +2 -2
  354. package/lib/esm/core-react/tree/Node.d.ts.map +1 -1
  355. package/lib/esm/core-react/tree/Node.js +2 -3
  356. package/lib/esm/core-react/tree/Node.js.map +1 -1
  357. package/lib/esm/core-react/tree/Node.scss +3 -19
  358. package/lib/esm/core-react/tree/Placeholder.scss +1 -4
  359. package/lib/esm/core-react/utils/IconWebComponent.js +1 -1
  360. package/lib/esm/core-react/utils/IconWebComponent.js.map +1 -1
  361. package/lib/esm/core-react/utils/Point.js +4 -4
  362. package/lib/esm/core-react/utils/Point.js.map +1 -1
  363. package/lib/esm/core-react/utils/Props.d.ts +1 -1
  364. package/lib/esm/core-react/utils/Props.d.ts.map +1 -1
  365. package/lib/esm/core-react/utils/Rectangle.js +7 -7
  366. package/lib/esm/core-react/utils/Rectangle.js.map +1 -1
  367. package/lib/esm/core-react/utils/Size.js +4 -4
  368. package/lib/esm/core-react/utils/Size.js.map +1 -1
  369. package/lib/esm/core-react/utils/Timer.d.ts +1 -1
  370. package/lib/esm/core-react/utils/Timer.d.ts.map +1 -1
  371. package/lib/esm/core-react/utils/getBestBWContrastColor.js +3 -3
  372. package/lib/esm/core-react/utils/getBestBWContrastColor.js.map +1 -1
  373. package/lib/esm/core-react/utils/getCssVariable.js +1 -1
  374. package/lib/esm/core-react/utils/getCssVariable.js.map +1 -1
  375. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +1 -1
  376. package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
  377. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js +1 -2
  378. package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
  379. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts +1 -1
  380. package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
  381. package/lib/esm/core-react/utils/hooks/useProximityToMouse.d.ts.map +1 -1
  382. package/lib/esm/core-react/utils/hooks/useProximityToMouse.js +2 -2
  383. package/lib/esm/core-react/utils/hooks/useProximityToMouse.js.map +1 -1
  384. package/lib/esm/core-react/utils/hooks/useRefs.d.ts +1 -1
  385. package/lib/esm/core-react/utils/hooks/useRefs.d.ts.map +1 -1
  386. package/lib/esm/core-react/utils/hooks/useRefs.js.map +1 -1
  387. package/lib/esm/core-react/utils/hooks/useResizeObserver.js +8 -13
  388. package/lib/esm/core-react/utils/hooks/useResizeObserver.js.map +1 -1
  389. package/lib/esm/core-react/utils/typeUtils.d.ts +1 -1
  390. package/lib/esm/core-react/utils/typeUtils.d.ts.map +1 -1
  391. package/lib/esm/core-react.d.ts +1 -1
  392. package/lib/esm/core-react.d.ts.map +1 -1
  393. package/lib/esm/core-react.js +1 -1
  394. package/lib/esm/core-react.js.map +1 -1
  395. package/package.json +26 -26
  396. package/ThirdPartyNotices.md +0 -28
  397. package/lib/cjs/core-react/badge/BetaBadge.scss +0 -9
  398. package/lib/cjs/core-react/button/blue-large.scss +0 -12
  399. package/lib/cjs/core-react/button/blue.scss +0 -25
  400. package/lib/cjs/core-react/button/button.scss +0 -70
  401. package/lib/cjs/core-react/button/classes.scss +0 -14
  402. package/lib/cjs/core-react/button/disabled-large.scss +0 -12
  403. package/lib/cjs/core-react/button/disabled.scss +0 -17
  404. package/lib/cjs/core-react/button/hollow-large.scss +0 -13
  405. package/lib/cjs/core-react/button/hollow.scss +0 -30
  406. package/lib/cjs/core-react/button/index.scss +0 -14
  407. package/lib/cjs/core-react/button/primary-large.scss +0 -12
  408. package/lib/cjs/core-react/button/primary.scss +0 -25
  409. package/lib/cjs/core-react/button/variables.scss +0 -22
  410. package/lib/cjs/core-react/checkbox/checkbox.scss +0 -124
  411. package/lib/cjs/core-react/checkbox/classes.scss +0 -8
  412. package/lib/cjs/core-react/checkbox/index.scss +0 -8
  413. package/lib/cjs/core-react/icons/SvgSprite.d.ts +0 -21
  414. package/lib/cjs/core-react/icons/SvgSprite.d.ts.map +0 -1
  415. package/lib/cjs/core-react/icons/SvgSprite.js +0 -27
  416. package/lib/cjs/core-react/icons/SvgSprite.js.map +0 -1
  417. package/lib/cjs/core-react/style/data-viz.scss +0 -20
  418. package/lib/cjs/core-react/style/itwinui-overrides.scss +0 -24
  419. package/lib/cjs/core-react/style/space.scss +0 -13
  420. package/lib/cjs/core-react/style/speed.scss +0 -12
  421. package/lib/cjs/core-react/style/typography.scss +0 -44
  422. package/lib/cjs/core-react/style/variables.scss +0 -12
  423. package/lib/esm/core-react/badge/BetaBadge.scss +0 -9
  424. package/lib/esm/core-react/button/blue-large.scss +0 -12
  425. package/lib/esm/core-react/button/blue.scss +0 -25
  426. package/lib/esm/core-react/button/button.scss +0 -70
  427. package/lib/esm/core-react/button/classes.scss +0 -14
  428. package/lib/esm/core-react/button/disabled-large.scss +0 -12
  429. package/lib/esm/core-react/button/disabled.scss +0 -17
  430. package/lib/esm/core-react/button/hollow-large.scss +0 -13
  431. package/lib/esm/core-react/button/hollow.scss +0 -30
  432. package/lib/esm/core-react/button/index.scss +0 -14
  433. package/lib/esm/core-react/button/primary-large.scss +0 -12
  434. package/lib/esm/core-react/button/primary.scss +0 -25
  435. package/lib/esm/core-react/button/variables.scss +0 -22
  436. package/lib/esm/core-react/checkbox/checkbox.scss +0 -124
  437. package/lib/esm/core-react/checkbox/classes.scss +0 -8
  438. package/lib/esm/core-react/checkbox/index.scss +0 -8
  439. package/lib/esm/core-react/icons/SvgSprite.d.ts +0 -21
  440. package/lib/esm/core-react/icons/SvgSprite.d.ts.map +0 -1
  441. package/lib/esm/core-react/icons/SvgSprite.js +0 -23
  442. package/lib/esm/core-react/icons/SvgSprite.js.map +0 -1
  443. package/lib/esm/core-react/style/data-viz.scss +0 -20
  444. package/lib/esm/core-react/style/itwinui-overrides.scss +0 -24
  445. package/lib/esm/core-react/style/space.scss +0 -13
  446. package/lib/esm/core-react/style/speed.scss +0 -12
  447. package/lib/esm/core-react/style/typography.scss +0 -44
  448. package/lib/esm/core-react/style/variables.scss +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingBar.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingBar.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B;;;GAGG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK,CAAC,aAA8B;IAKlD,MAAM;QACpB,MAAM,OAAO,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACzD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnE,OAAO,CACL,6BAAK,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACrD,6BAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBACnE,6BAAK,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,CAC/C;YACL,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,8BAAM,SAAS,EAAC,SAAS,IAAE,OAAO,CAAQ,CACpE,CACP,CAAC;IACJ,CAAC;;AAfa,uBAAY,GAA6B;IACrD,SAAS,EAAE,CAAC;CACb,CAAC;AAgBJ;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3B,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingBar.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { CommonProps } from \"../utils/Props\";\n\n/** Properties for [[LoadingBar]] component\n * @public\n */\nexport interface LoadingBarProps extends CommonProps {\n /** Percent */\n percent: number;\n /** Show percentage (optional) */\n showPercentage?: boolean;\n /** Height (in pixels) of the loading bar */\n barHeight: number;\n}\n\n/**\n * A loading bar with optional percentage text.\n * @public\n */\nexport class LoadingBar extends React.PureComponent<LoadingBarProps> {\n public static defaultProps: Partial<LoadingBarProps> = {\n barHeight: 4,\n };\n\n public override render() {\n const percent = `${percentInRange(this.props.percent)}%`;\n const containerClass = classnames(this.props.className, \"core-lb\");\n return (\n <div className={containerClass} style={this.props.style}>\n <div className=\"lb-container\" style={{ height: this.props.barHeight }}>\n <div className=\"fill\" style={{ width: percent }} />\n </div>\n {this.props.showPercentage && <span className=\"percent\">{percent}</span>}\n </div>\n );\n }\n}\n\n/** Sanity check to keep percentage between 0 & 100\n * @internal\n */\nexport function percentInRange(percent: number): number {\n let value = Math.min(percent, 100);\n value = Math.max(value, 0);\n return value;\n}\n"]}
1
+ {"version":3,"file":"LoadingBar.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingBar.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B;;;GAGG;AACH,MAAa,UAAW,SAAQ,KAAK,CAAC,aAA8B;IAKlD,MAAM;QACpB,MAAM,OAAO,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACzD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnE,OAAO,CACL,6BAAK,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACrD,6BAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBACnE,6BAAK,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,CAC/C;YACL,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,8BAAM,SAAS,EAAC,SAAS,IAAE,OAAO,CAAQ,CACpE,CACP,CAAC;IACJ,CAAC;;AAfa,uBAAY,GAA6B;IACrD,SAAS,EAAE,CAAC;CACb,CAAC;SAHS,UAAU;AAmBvB;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3B,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingBar.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { CommonProps } from \"../utils/Props\";\n\n/** Properties for [[LoadingBar]] component\n * @public\n */\nexport interface LoadingBarProps extends CommonProps {\n /** Percent */\n percent: number;\n /** Show percentage (optional) */\n showPercentage?: boolean;\n /** Height (in pixels) of the loading bar */\n barHeight: number;\n}\n\n/**\n * A loading bar with optional percentage text.\n * @public\n */\nexport class LoadingBar extends React.PureComponent<LoadingBarProps> {\n public static defaultProps: Partial<LoadingBarProps> = {\n barHeight: 4,\n };\n\n public override render() {\n const percent = `${percentInRange(this.props.percent)}%`;\n const containerClass = classnames(this.props.className, \"core-lb\");\n return (\n <div className={containerClass} style={this.props.style}>\n <div className=\"lb-container\" style={{ height: this.props.barHeight }}>\n <div className=\"fill\" style={{ width: percent }} />\n </div>\n {this.props.showPercentage && <span className=\"percent\">{percent}</span>}\n </div>\n );\n }\n}\n\n/** Sanity check to keep percentage between 0 & 100\n * @internal\n */\nexport function percentInRange(percent: number): number {\n let value = Math.min(percent, 100);\n value = Math.max(value, 0);\n return value;\n}\n"]}
@@ -16,7 +16,7 @@ import { LoadingStatus } from "./LoadingStatus";
16
16
  * A component to display during loading that optionally shows percentage, status text and a cancel button.
17
17
  * @public
18
18
  */
19
- export class LoadingPrompt extends React.PureComponent {
19
+ class LoadingPrompt extends React.PureComponent {
20
20
  render() {
21
21
  const isDeterminate = this.props.isDeterminate;
22
22
  return (React.createElement("div", { className: classnames("core-loadingprompt", this.props.className), style: this.props.style },
@@ -38,4 +38,5 @@ LoadingPrompt.defaultProps = {
38
38
  percent: 0,
39
39
  status: "",
40
40
  };
41
+ export { LoadingPrompt };
41
42
  //# sourceMappingURL=LoadingPrompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingPrompt.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingPrompt.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,sBAAsB,CAAC;AAC9B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AA+BhD;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,aAAiC;IAWxD,MAAM;QACpB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAE/C,OAAO,CACL,6BAAK,SAAS,EAAE,UAAU,CAAC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAC7F,8BAAM,SAAS,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAQ;YAChD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,8BAAM,SAAS,EAAC,SAAS,IAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAQ;YAC3E,aAAa,IAAI,oBAAC,UAAU,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAI;YACjI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACvC,oBAAC,aAAa,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAI;YAC3I,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAC,cAAc,IAAC,aAAa,SAAG,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAAC;YAC3G,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,oBAAC,MAAM,IAAC,SAAS,EAAC,uBAAuB,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,aAAiB,CAC7G,CACP,CAAC;IACJ,CAAC;;AAxBa,0BAAY,GAAgC;IACxD,cAAc,EAAE,KAAK;IACrB,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,oBAAoB,EAAE,KAAK;IAC3B,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,EAAE;CACX,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingPrompt.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Button, ProgressLinear } from \"@itwin/itwinui-react\";\nimport { LoadingBar } from \"./LoadingBar\";\nimport { LoadingSpinner } from \"./LoadingSpinner\";\nimport { LoadingStatus } from \"./LoadingStatus\";\nimport { CommonProps } from \"../utils/Props\";\n\n// cspell:ignore loadingprompt\n\n/** Properties for [[LoadingPrompt]] component\n * @public\n */\nexport interface LoadingPromptProps extends CommonProps {\n /** Title */\n title: string;\n /** Message displayed below the title (optional) */\n message?: string;\n /** Determine if a percentage bar is displayed (isDeterminate=true), otherwise a loading spinner or indeterminate progress bar is shown. */\n isDeterminate: boolean;\n /** Show current status and percentage. Default is false (not shown) */\n showStatus: boolean;\n /** Show cancel button. Default is false (not shown) */\n showCancel: boolean;\n /** Current loading status text (optional). Only shown if showStatus=true and isDeterminate=true */\n status: string;\n /** Current percentage. Only used if isDeterminate=true */\n percent: number;\n /** Show percentage at the end of the loading bar (optional). Only shown if isDeterminate=true and showStatus=false */\n showPercentage: boolean;\n /** Show indeterminate progress bar instead of loading spinner */\n showIndeterminateBar: boolean;\n /** Function called when Cancel button is clicked. */\n onCancel?: () => void;\n}\n\n/**\n * A component to display during loading that optionally shows percentage, status text and a cancel button.\n * @public\n */\nexport class LoadingPrompt extends React.PureComponent<LoadingPromptProps> {\n public static defaultProps: Partial<LoadingPromptProps> = {\n showPercentage: false,\n showStatus: false,\n showCancel: false,\n isDeterminate: false,\n showIndeterminateBar: false,\n percent: 0,\n status: \"\",\n };\n\n public override render() {\n const isDeterminate = this.props.isDeterminate;\n\n return (\n <div className={classnames(\"core-loadingprompt\", this.props.className)} style={this.props.style}>\n <span className=\"title\">{this.props.title}</span>\n {this.props.message && <span className=\"message\">{this.props.message}</span>}\n {isDeterminate && <LoadingBar style={{ width: \"100%\" }} percent={this.props.percent} showPercentage={this.props.showPercentage} />}\n {(isDeterminate && this.props.showStatus) &&\n <LoadingStatus style={{ marginTop: \".5em\", width: \"100%\", fontSize: \".75em\" }} percent={this.props.percent} message={this.props.status} />}\n {!isDeterminate && (this.props.showIndeterminateBar ? <ProgressLinear indeterminate /> : <LoadingSpinner />)}\n {this.props.showCancel && <Button className=\"loading-prompt-cancel\" onClick={this.props.onCancel}>Cancel</Button>}\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"LoadingPrompt.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingPrompt.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,sBAAsB,CAAC;AAC9B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AA+BhD;;;GAGG;AACH,MAAa,aAAc,SAAQ,KAAK,CAAC,aAAiC;IAWxD,MAAM;QACpB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAE/C,OAAO,CACL,6BAAK,SAAS,EAAE,UAAU,CAAC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAC7F,8BAAM,SAAS,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAQ;YAChD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,8BAAM,SAAS,EAAC,SAAS,IAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAQ;YAC3E,aAAa,IAAI,oBAAC,UAAU,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAI;YACjI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACvC,oBAAC,aAAa,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAI;YAC3I,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAC,cAAc,IAAC,aAAa,SAAG,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAAC;YAC3G,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,oBAAC,MAAM,IAAC,SAAS,EAAC,uBAAuB,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,aAAiB,CAC7G,CACP,CAAC;IACJ,CAAC;;AAxBa,0BAAY,GAAgC;IACxD,cAAc,EAAE,KAAK;IACrB,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,oBAAoB,EAAE,KAAK;IAC3B,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,EAAE;CACX,CAAC;SATS,aAAa","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingPrompt.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Button, ProgressLinear } from \"@itwin/itwinui-react\";\nimport { LoadingBar } from \"./LoadingBar\";\nimport { LoadingSpinner } from \"./LoadingSpinner\";\nimport { LoadingStatus } from \"./LoadingStatus\";\nimport { CommonProps } from \"../utils/Props\";\n\n// cspell:ignore loadingprompt\n\n/** Properties for [[LoadingPrompt]] component\n * @public\n */\nexport interface LoadingPromptProps extends CommonProps {\n /** Title */\n title: string;\n /** Message displayed below the title (optional) */\n message?: string;\n /** Determine if a percentage bar is displayed (isDeterminate=true), otherwise a loading spinner or indeterminate progress bar is shown. */\n isDeterminate: boolean;\n /** Show current status and percentage. Default is false (not shown) */\n showStatus: boolean;\n /** Show cancel button. Default is false (not shown) */\n showCancel: boolean;\n /** Current loading status text (optional). Only shown if showStatus=true and isDeterminate=true */\n status: string;\n /** Current percentage. Only used if isDeterminate=true */\n percent: number;\n /** Show percentage at the end of the loading bar (optional). Only shown if isDeterminate=true and showStatus=false */\n showPercentage: boolean;\n /** Show indeterminate progress bar instead of loading spinner */\n showIndeterminateBar: boolean;\n /** Function called when Cancel button is clicked. */\n onCancel?: () => void;\n}\n\n/**\n * A component to display during loading that optionally shows percentage, status text and a cancel button.\n * @public\n */\nexport class LoadingPrompt extends React.PureComponent<LoadingPromptProps> {\n public static defaultProps: Partial<LoadingPromptProps> = {\n showPercentage: false,\n showStatus: false,\n showCancel: false,\n isDeterminate: false,\n showIndeterminateBar: false,\n percent: 0,\n status: \"\",\n };\n\n public override render() {\n const isDeterminate = this.props.isDeterminate;\n\n return (\n <div className={classnames(\"core-loadingprompt\", this.props.className)} style={this.props.style}>\n <span className=\"title\">{this.props.title}</span>\n {this.props.message && <span className=\"message\">{this.props.message}</span>}\n {isDeterminate && <LoadingBar style={{ width: \"100%\" }} percent={this.props.percent} showPercentage={this.props.showPercentage} />}\n {(isDeterminate && this.props.showStatus) &&\n <LoadingStatus style={{ marginTop: \".5em\", width: \"100%\", fontSize: \".75em\" }} percent={this.props.percent} message={this.props.status} />}\n {!isDeterminate && (this.props.showIndeterminateBar ? <ProgressLinear indeterminate /> : <LoadingSpinner />)}\n {this.props.showCancel && <Button className=\"loading-prompt-cancel\" onClick={this.props.onCancel}>Cancel</Button>}\n </div>\n );\n }\n}\n"]}
@@ -17,13 +17,13 @@
17
17
  font-size: 32px;
18
18
  font-weight: 600;
19
19
  margin-bottom: 10px;
20
- color: $buic-foreground-body;
20
+ color: var(--iui-color-text);
21
21
  }
22
22
 
23
23
  .message {
24
24
  font-size: 14px;
25
25
  margin-bottom: 1.75em;
26
- color: $buic-foreground-body;
26
+ color: var(--iui-color-text);
27
27
  }
28
28
  }
29
29
 
@@ -7,7 +7,7 @@ import { ProgressRadialProps } from "@itwin/itwinui-react";
7
7
  /** Type for ProgressRadialProps.size
8
8
  * @public
9
9
  */
10
- export declare type RadialSizeType = ProgressRadialProps["size"];
10
+ export type RadialSizeType = ProgressRadialProps["size"];
11
11
  /** Properties for [[LoadingSpinner]] component
12
12
  * @public
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingSpinner.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3E;;GAEG;AACH,oBAAY,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAC5E,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;SAGK;IACL,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED;;;GAGG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC;IAC1E,OAAc,YAAY,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAEtD;IAEc,MAAM;CAUvB"}
1
+ {"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingSpinner.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAC5E,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;SAGK;IACL,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED;;;GAGG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC;IAC1E,OAAc,YAAY,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAEtD;IAEc,MAAM;CAUvB"}
@@ -12,7 +12,7 @@ import { ProgressRadial } from "@itwin/itwinui-react";
12
12
  * A loading spinner component that optionally shows a text message.
13
13
  * @public
14
14
  */
15
- export class LoadingSpinner extends React.PureComponent {
15
+ class LoadingSpinner extends React.PureComponent {
16
16
  render() {
17
17
  const { message, messageOnTop, size, ...rest } = this.props;
18
18
  return (React.createElement("div", { className: "core-ls" },
@@ -24,4 +24,5 @@ export class LoadingSpinner extends React.PureComponent {
24
24
  LoadingSpinner.defaultProps = {
25
25
  messageOnTop: false,
26
26
  };
27
+ export { LoadingSpinner };
27
28
  //# sourceMappingURL=LoadingSpinner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingSpinner.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingSpinner.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAsB3E;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,aAAkC;IAK1D,MAAM;QACpB,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5D,OAAO,CACL,6BAAK,SAAS,EAAC,SAAS;YACrB,CAAC,OAAO,IAAI,YAAY,CAAC,IAAI,8BAAM,SAAS,EAAC,gBAAgB,IAAE,OAAO,CAAQ;YAC/E,oBAAC,cAAc,IAAC,IAAI,EAAE,IAAI,KAAM,IAAI,EAAE,aAAa,SAAG;YACrD,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,8BAAM,SAAS,EAAC,mBAAmB,IAAE,OAAO,CAAQ,CAC/E,CACP,CAAC;IACJ,CAAC;;AAba,2BAAY,GAAiC;IACzD,YAAY,EAAE,KAAK;CACpB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingSpinner.scss\";\nimport * as React from \"react\";\nimport { ProgressRadial, ProgressRadialProps } from \"@itwin/itwinui-react\";\n\n/** Type for ProgressRadialProps.size\n * @public\n */\nexport type RadialSizeType = ProgressRadialProps[\"size\"];\n\n/** Properties for [[LoadingSpinner]] component\n * @public\n */\nexport interface LoadingSpinnerProps extends Omit<ProgressRadialProps, \"size\"> {\n /** Message (text) displayed */\n message?: string;\n /** Position the message above or below the spinner (defaults to bottom) */\n messageOnTop?: boolean;\n /**\n * Size of the progress indicator. Defaults to medium size.\n * @default ''\n */\n size?: RadialSizeType;\n}\n\n/**\n * A loading spinner component that optionally shows a text message.\n * @public\n */\nexport class LoadingSpinner extends React.PureComponent<LoadingSpinnerProps> {\n public static defaultProps: Partial<LoadingSpinnerProps> = {\n messageOnTop: false,\n };\n\n public override render() {\n const { message, messageOnTop, size, ...rest } = this.props;\n return (\n <div className=\"core-ls\">\n {(message && messageOnTop) && <span className=\"ls-message-top\">{message}</span>}\n <ProgressRadial size={size} {...rest} indeterminate />\n {(message && !messageOnTop) && <span className=\"ls-message-bottom\">{message}</span>}\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"LoadingSpinner.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingSpinner.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAsB3E;;;GAGG;AACH,MAAa,cAAe,SAAQ,KAAK,CAAC,aAAkC;IAK1D,MAAM;QACpB,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5D,OAAO,CACL,6BAAK,SAAS,EAAC,SAAS;YACrB,CAAC,OAAO,IAAI,YAAY,CAAC,IAAI,8BAAM,SAAS,EAAC,gBAAgB,IAAE,OAAO,CAAQ;YAC/E,oBAAC,cAAc,IAAC,IAAI,EAAE,IAAI,KAAM,IAAI,EAAE,aAAa,SAAG;YACrD,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,8BAAM,SAAS,EAAC,mBAAmB,IAAE,OAAO,CAAQ,CAC/E,CACP,CAAC;IACJ,CAAC;;AAba,2BAAY,GAAiC;IACzD,YAAY,EAAE,KAAK;CACpB,CAAC;SAHS,cAAc","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingSpinner.scss\";\nimport * as React from \"react\";\nimport { ProgressRadial, ProgressRadialProps } from \"@itwin/itwinui-react\";\n\n/** Type for ProgressRadialProps.size\n * @public\n */\nexport type RadialSizeType = ProgressRadialProps[\"size\"];\n\n/** Properties for [[LoadingSpinner]] component\n * @public\n */\nexport interface LoadingSpinnerProps extends Omit<ProgressRadialProps, \"size\"> {\n /** Message (text) displayed */\n message?: string;\n /** Position the message above or below the spinner (defaults to bottom) */\n messageOnTop?: boolean;\n /**\n * Size of the progress indicator. Defaults to medium size.\n * @default ''\n */\n size?: RadialSizeType;\n}\n\n/**\n * A loading spinner component that optionally shows a text message.\n * @public\n */\nexport class LoadingSpinner extends React.PureComponent<LoadingSpinnerProps> {\n public static defaultProps: Partial<LoadingSpinnerProps> = {\n messageOnTop: false,\n };\n\n public override render() {\n const { message, messageOnTop, size, ...rest } = this.props;\n return (\n <div className=\"core-ls\">\n {(message && messageOnTop) && <span className=\"ls-message-top\">{message}</span>}\n <ProgressRadial size={size} {...rest} indeterminate />\n {(message && !messageOnTop) && <span className=\"ls-message-bottom\">{message}</span>}\n </div>\n );\n }\n}\n"]}
@@ -11,7 +11,7 @@
11
11
  flex-direction: column;
12
12
 
13
13
  .ls-message {
14
- color: $buic-foreground-body;
14
+ color: var(--iui-color-text);
15
15
  }
16
16
 
17
17
  .ls-message-top {
@@ -12,7 +12,7 @@ import * as React from "react";
12
12
  * A loading indicator that shows status text along with the percentage.
13
13
  * @public
14
14
  */
15
- export class LoadingStatus extends React.PureComponent {
15
+ class LoadingStatus extends React.PureComponent {
16
16
  // sanity check to keep percentage between 0 & 100
17
17
  inRange(percent) {
18
18
  let value = Math.min(percent, 100);
@@ -31,4 +31,5 @@ LoadingStatus.defaultProps = {
31
31
  message: "",
32
32
  percent: 0,
33
33
  };
34
+ export { LoadingStatus };
34
35
  //# sourceMappingURL=LoadingStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingStatus.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingStatus.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,sBAAsB,CAAC;AAC9B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,aAAiC;IAMxE,kDAAkD;IAC1C,OAAO,CAAC,OAAe;QAC7B,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACvD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QACpF,OAAO,CACL,6BAAK,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACrD,8BAAM,SAAS,EAAC,wBAAwB,IAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAQ;YACpE,8BAAM,SAAS,EAAC,wBAAwB,IAAE,OAAO,CAAQ,CACrD,CACP,CAAC;IACJ,CAAC;;AArBa,0BAAY,GAAgC;IACxD,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,CAAC;CACX,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingStatus.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { CommonProps } from \"../utils/Props\";\n\n/** Properties for [[LoadingStatus]] component\n * @public\n */\nexport interface LoadingStatusProps extends CommonProps {\n /** Message (text) displayed */\n message: string;\n /** Percent displayed (as text) */\n percent: number;\n}\n\n/**\n * A loading indicator that shows status text along with the percentage.\n * @public\n */\nexport class LoadingStatus extends React.PureComponent<LoadingStatusProps> {\n public static defaultProps: Partial<LoadingStatusProps> = {\n message: \"\",\n percent: 0,\n };\n\n // sanity check to keep percentage between 0 & 100\n private inRange(percent: number): number {\n let value = Math.min(percent, 100);\n value = Math.max(value, 0);\n return value;\n }\n\n public override render() {\n const percent = `${this.inRange(this.props.percent)}%`;\n const containerClass = classnames(this.props.className, \"loading-status-container\");\n return (\n <div className={containerClass} style={this.props.style}>\n <span className=\"loading-status-message\">{this.props.message}</span>\n <span className=\"loading-status-percent\">{percent}</span>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"LoadingStatus.js","sourceRoot":"","sources":["../../../../src/core-react/loading/LoadingStatus.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,sBAAsB,CAAC;AAC9B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B;;;GAGG;AACH,MAAa,aAAc,SAAQ,KAAK,CAAC,aAAiC;IAMxE,kDAAkD;IAC1C,OAAO,CAAC,OAAe;QAC7B,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACvD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QACpF,OAAO,CACL,6BAAK,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACrD,8BAAM,SAAS,EAAC,wBAAwB,IAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAQ;YACpE,8BAAM,SAAS,EAAC,wBAAwB,IAAE,OAAO,CAAQ,CACrD,CACP,CAAC;IACJ,CAAC;;AArBa,0BAAY,GAAgC;IACxD,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,CAAC;CACX,CAAC;SAJS,aAAa","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Loading\n */\n\nimport \"./LoadingStatus.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { CommonProps } from \"../utils/Props\";\n\n/** Properties for [[LoadingStatus]] component\n * @public\n */\nexport interface LoadingStatusProps extends CommonProps {\n /** Message (text) displayed */\n message: string;\n /** Percent displayed (as text) */\n percent: number;\n}\n\n/**\n * A loading indicator that shows status text along with the percentage.\n * @public\n */\nexport class LoadingStatus extends React.PureComponent<LoadingStatusProps> {\n public static defaultProps: Partial<LoadingStatusProps> = {\n message: \"\",\n percent: 0,\n };\n\n // sanity check to keep percentage between 0 & 100\n private inRange(percent: number): number {\n let value = Math.min(percent, 100);\n value = Math.max(value, 0);\n return value;\n }\n\n public override render() {\n const percent = `${this.inRange(this.props.percent)}%`;\n const containerClass = classnames(this.props.className, \"loading-status-container\");\n return (\n <div className={containerClass} style={this.props.style}>\n <span className=\"loading-status-message\">{this.props.message}</span>\n <span className=\"loading-status-percent\">{percent}</span>\n </div>\n );\n }\n}\n"]}
@@ -5,6 +5,7 @@ import "./MessageBox.scss";
5
5
  import * as React from "react";
6
6
  import { DialogButtonDef, MessageSeverity } from "@itwin/appui-abstract";
7
7
  import { CommonProps } from "../utils/Props";
8
+ import { IconSpec } from "../icons/IconComponent";
8
9
  /** Properties for the [[MessageBox]] component
9
10
  * @public
10
11
  */
@@ -63,7 +64,18 @@ export interface MessageContainerProps extends CommonProps {
63
64
  * @public
64
65
  */
65
66
  export declare class MessageContainer extends React.PureComponent<MessageContainerProps> {
66
- static getIconClassName(severity: MessageSeverity, hollow?: boolean): string;
67
+ /** Returns the class name associated with the WebFont icon corresponding to the MessageSeverity.
68
+ * @param severity MessageSeverity
69
+ * @param _hollow @deprecated in 4.0. Ignored.
70
+ * @deprecated in 4.0. Please use getIcon method
71
+ */
72
+ static getIconClassName(severity: MessageSeverity, _hollow?: boolean): string;
73
+ /** Returns the React icon corresponding to the MessageSeverity.
74
+ * @param severity MessageSeverity
75
+ * @param hollow set to true to return the hollow form of the icon.
76
+ * @returns IconSpec
77
+ */
78
+ static getIcon(severity: MessageSeverity, hollow?: boolean): IconSpec;
67
79
  render(): JSX.Element;
68
80
  }
69
81
  //# sourceMappingURL=MessageBox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBox.d.ts","sourceRoot":"","sources":["../../../../src/core-react/messagebox/MessageBox.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,6BAA6B;IAC7B,QAAQ,EAAE,eAAe,CAAC;IAC1B,oCAAoC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,2FAA2F;IAC3F,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAC7B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACnC,sBAAsB;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK,CAAC,aAAa,CAAC,eAAe,CAAC;IAClE,OAAc,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAKlD;IAEc,MAAM,IAAI,GAAG,CAAC,OAAO;CAkBtC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,QAAQ,EAAE,eAAe,CAAC;IAC1B,sBAAsB;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC;WAChE,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM;IA8BnE,MAAM,IAAI,GAAG,CAAC,OAAO;CAgBtC"}
1
+ {"version":3,"file":"MessageBox.d.ts","sourceRoot":"","sources":["../../../../src/core-react/messagebox/MessageBox.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,OAAO,EAAQ,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,6BAA6B;IAC7B,QAAQ,EAAE,eAAe,CAAC;IAC1B,oCAAoC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,2FAA2F;IAC3F,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAC7B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACnC,sBAAsB;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK,CAAC,aAAa,CAAC,eAAe,CAAC;IAClE,OAAc,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAKlD;IAEc,MAAM,IAAI,GAAG,CAAC,OAAO;CAkBtC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,QAAQ,EAAE,eAAe,CAAC;IAC1B,sBAAsB;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC;IAC9E;;;;OAIG;WAEW,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM;IA8BpF;;;;OAIG;WAGW,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ;IA4B5D,MAAM,IAAI,GAAG,CAAC,OAAO;CAiBtC"}
@@ -10,10 +10,12 @@ import classnames from "classnames";
10
10
  import * as React from "react";
11
11
  import { MessageSeverity } from "@itwin/appui-abstract";
12
12
  import { Dialog } from "../dialog/Dialog";
13
+ import { SvgHelpCircular, SvgHelpCircularHollow, SvgInfoCircular, SvgInfoCircularHollow, SvgStatusError, SvgStatusErrorHollow, SvgStatusRejected, SvgStatusRejectedHollow, SvgStatusSuccess, SvgStatusSuccessHollow, SvgStatusWarning } from "@itwin/itwinui-icons-react";
14
+ import { Icon } from "../icons/IconComponent";
13
15
  /** Message Box React component.
14
16
  * @public
15
17
  */
16
- export class MessageBox extends React.PureComponent {
18
+ class MessageBox extends React.PureComponent {
17
19
  render() {
18
20
  return (React.createElement(Dialog, { title: this.props.title, buttonCluster: this.props.buttonCluster, opened: this.props.opened, width: this.props.width, onClose: this.props.onClose, onEscape: this.props.onEscape, modal: this.props.modal, className: this.props.className, style: this.props.style },
19
21
  React.createElement(MessageContainer, { severity: this.props.severity, className: this.props.contentClassName, style: this.props.contentStyle }, this.props.children)));
@@ -25,41 +27,84 @@ MessageBox.defaultProps = {
25
27
  width: "512px",
26
28
  modal: true,
27
29
  };
30
+ export { MessageBox };
28
31
  /** Message Container React component.
29
32
  * @public
30
33
  */
31
34
  export class MessageContainer extends React.PureComponent {
32
- static getIconClassName(severity, hollow) {
35
+ /** Returns the class name associated with the WebFont icon corresponding to the MessageSeverity.
36
+ * @param severity MessageSeverity
37
+ * @param _hollow @deprecated in 4.0. Ignored.
38
+ * @deprecated in 4.0. Please use getIcon method
39
+ */
40
+ /* istanbul ignore next */
41
+ static getIconClassName(severity, _hollow) {
33
42
  let iconClassName = "";
34
43
  switch (severity) {
35
44
  case MessageSeverity.None:
36
- iconClassName = " ";
45
+ iconClassName = "";
37
46
  break;
38
47
  case MessageSeverity.Success:
39
- iconClassName = hollow ? "icon-status-success-hollow" : "icon-status-success" + " core-message-box-success";
48
+ iconClassName = "core-message-box-success";
40
49
  break;
41
50
  case MessageSeverity.Information:
42
- iconClassName = hollow ? "icon-info-hollow" : "icon-info" + " core-message-box-information";
51
+ iconClassName = "core-message-box-information";
43
52
  break;
44
53
  case MessageSeverity.Question:
45
- iconClassName = hollow ? "icon-help-hollow" : "icon-help" + " core-message-box-question";
54
+ iconClassName = "core-message-box-question";
46
55
  break;
47
56
  case MessageSeverity.Warning:
48
- iconClassName = hollow ? "icon-status-warning" : "icon-status-warning" + " core-message-box-warning"; // TODO - need icon-status-warning-hollow icon
57
+ iconClassName = "core-message-box-warning"; // TODO - need icon-status-warning-hollow icon
49
58
  break;
50
59
  case MessageSeverity.Error:
51
- iconClassName = hollow ? "icon-status-error-hollow" : "icon-status-error" + " core-message-box-error";
60
+ iconClassName = "core-message-box-error";
52
61
  break;
53
62
  case MessageSeverity.Fatal:
54
- iconClassName = hollow ? "icon-status-rejected" : "icon-status-rejected" + " core-message-box-fatal";
63
+ iconClassName = "core-message-box-fatal";
55
64
  break;
56
65
  }
57
66
  return iconClassName;
58
67
  }
68
+ /** Returns the React icon corresponding to the MessageSeverity.
69
+ * @param severity MessageSeverity
70
+ * @param hollow set to true to return the hollow form of the icon.
71
+ * @returns IconSpec
72
+ */
73
+ /* ignore for unit tests and replace with visual testing */
74
+ /* istanbul ignore next */
75
+ static getIcon(severity, hollow) {
76
+ let iconSpec = "";
77
+ switch (severity) {
78
+ case MessageSeverity.None:
79
+ iconSpec = "";
80
+ break;
81
+ case MessageSeverity.Success:
82
+ iconSpec = hollow ? React.createElement(SvgStatusSuccessHollow, null) : React.createElement(SvgStatusSuccess, null);
83
+ break;
84
+ case MessageSeverity.Information:
85
+ iconSpec = hollow ? React.createElement(SvgInfoCircularHollow, null) : React.createElement(SvgInfoCircular, null);
86
+ break;
87
+ case MessageSeverity.Question:
88
+ iconSpec = hollow ? React.createElement(SvgHelpCircularHollow, null) : React.createElement(SvgHelpCircular, null);
89
+ break;
90
+ case MessageSeverity.Warning:
91
+ iconSpec = React.createElement(SvgStatusWarning, null); // TODO - need icon-status-warning-hollow icon
92
+ break;
93
+ case MessageSeverity.Error:
94
+ iconSpec = hollow ? React.createElement(SvgStatusErrorHollow, null) : React.createElement(SvgStatusError, null);
95
+ break;
96
+ case MessageSeverity.Fatal:
97
+ iconSpec = hollow ? React.createElement(SvgStatusRejectedHollow, null) : React.createElement(SvgStatusRejected, null);
98
+ break;
99
+ }
100
+ return iconSpec;
101
+ }
59
102
  render() {
60
- const iconClassName = classnames("icon", "core-message-box-icon", MessageContainer.getIconClassName(this.props.severity));
103
+ const iconClassName = classnames("icon", "core-message-box-icon");
104
+ const iconSpec = MessageContainer.getIcon(this.props.severity);
61
105
  return (React.createElement("div", { className: "core-message-box-container" },
62
- React.createElement("div", { className: iconClassName }),
106
+ React.createElement("div", { className: iconClassName },
107
+ React.createElement(Icon, { iconSpec: iconSpec })),
63
108
  React.createElement("div", { className: classnames("core-message-box-content", this.props.className), style: this.props.style }, this.props.children)));
64
109
  }
65
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBox.js","sourceRoot":"","sources":["../../../../src/core-react/messagebox/MessageBox.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Dialog\n */\n\nimport \"./MessageBox.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { DialogButtonDef, MessageSeverity } from \"@itwin/appui-abstract\";\nimport { Dialog } from \"../dialog/Dialog\";\nimport { CommonProps } from \"../utils/Props\";\n\n/** Properties for the [[MessageBox]] component\n * @public\n */\nexport interface MessageBoxProps extends CommonProps {\n /** Severity of MessageBox */\n severity: MessageSeverity;\n /** whether to show dialog or not */\n opened: boolean;\n /** List of [[DialogButtonDef]] objects specifying buttons and associated onClick events */\n buttonCluster: DialogButtonDef[];\n /** Title to show in title bar of dialog */\n title?: string | JSX.Element;\n /** onClick event for X button for dialog */\n onClose?: () => void;\n /** 'keyup' event for <Esc> key */\n onEscape?: () => void;\n /** minimum width that the dialog may be resized to. Default: 400 */\n minWidth?: number;\n /** minimum height that the dialog may be resized to. Default: 400 */\n minHeight?: number;\n /** initial width of dialog.\n * Displayed in px if value is a number, otherwise displayed in specified CSS unit.\n * Default: \"50%\"\n */\n width?: string | number;\n /** initial height of dialog.\n * Displayed in px if value is a number, otherwise displayed in specified CSS unit.\n * Default: \"\"\n */\n height?: string | number;\n /** Whether to show background overlay. Default: true */\n modal?: boolean;\n /** Custom CSS class name for the content */\n contentClassName?: string;\n /** Custom CSS Style for the content */\n contentStyle?: React.CSSProperties;\n /** Message content */\n children?: React.ReactNode;\n}\n\n/** Message Box React component.\n * @public\n */\nexport class MessageBox extends React.PureComponent<MessageBoxProps> {\n public static defaultProps: Partial<MessageBoxProps> = {\n minWidth: 400,\n minHeight: 400,\n width: \"512px\",\n modal: true,\n };\n\n public override render(): JSX.Element {\n return (\n <Dialog\n title={this.props.title}\n buttonCluster={this.props.buttonCluster}\n opened={this.props.opened}\n width={this.props.width}\n onClose={this.props.onClose}\n onEscape={this.props.onEscape}\n modal={this.props.modal}\n className={this.props.className}\n style={this.props.style} >\n <MessageContainer severity={this.props.severity} className={this.props.contentClassName} style={this.props.contentStyle}>\n {this.props.children}\n </MessageContainer>\n </Dialog>\n );\n }\n}\n\n/** Properties for the [[MessageContainer]] component\n * @public\n */\nexport interface MessageContainerProps extends CommonProps {\n severity: MessageSeverity;\n /** Message Content */\n children?: React.ReactNode;\n}\n\n/** Message Container React component.\n * @public\n */\nexport class MessageContainer extends React.PureComponent<MessageContainerProps> {\n public static getIconClassName(severity: MessageSeverity, hollow?: boolean): string {\n let iconClassName = \"\";\n\n switch (severity) {\n case MessageSeverity.None:\n iconClassName = \" \";\n break;\n case MessageSeverity.Success:\n iconClassName = hollow ? \"icon-status-success-hollow\" : \"icon-status-success\" + \" core-message-box-success\";\n break;\n case MessageSeverity.Information:\n iconClassName = hollow ? \"icon-info-hollow\" : \"icon-info\" + \" core-message-box-information\";\n break;\n case MessageSeverity.Question:\n iconClassName = hollow ? \"icon-help-hollow\" : \"icon-help\" + \" core-message-box-question\";\n break;\n case MessageSeverity.Warning:\n iconClassName = hollow ? \"icon-status-warning\" : \"icon-status-warning\" + \" core-message-box-warning\"; // TODO - need icon-status-warning-hollow icon\n break;\n case MessageSeverity.Error:\n iconClassName = hollow ? \"icon-status-error-hollow\" : \"icon-status-error\" + \" core-message-box-error\";\n break;\n case MessageSeverity.Fatal:\n iconClassName = hollow ? \"icon-status-rejected\" : \"icon-status-rejected\" + \" core-message-box-fatal\";\n break;\n }\n\n return iconClassName;\n }\n\n public override render(): JSX.Element {\n const iconClassName = classnames(\n \"icon\",\n \"core-message-box-icon\",\n MessageContainer.getIconClassName(this.props.severity),\n );\n\n return (\n <div className=\"core-message-box-container\">\n <div className={iconClassName} />\n <div className={classnames(\"core-message-box-content\", this.props.className)} style={this.props.style}>\n {this.props.children}\n </div>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"MessageBox.js","sourceRoot":"","sources":["../../../../src/core-react/messagebox/MessageBox.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Dialog\n */\n\nimport \"./MessageBox.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { DialogButtonDef, MessageSeverity } from \"@itwin/appui-abstract\";\nimport { Dialog } from \"../dialog/Dialog\";\nimport { CommonProps } from \"../utils/Props\";\nimport { SvgHelpCircular, SvgHelpCircularHollow, SvgInfoCircular, SvgInfoCircularHollow, SvgStatusError, SvgStatusErrorHollow, SvgStatusRejected,\n SvgStatusRejectedHollow,\n SvgStatusSuccess, SvgStatusSuccessHollow, SvgStatusWarning } from \"@itwin/itwinui-icons-react\";\nimport { Icon, IconSpec } from \"../icons/IconComponent\";\n\n/** Properties for the [[MessageBox]] component\n * @public\n */\nexport interface MessageBoxProps extends CommonProps {\n /** Severity of MessageBox */\n severity: MessageSeverity;\n /** whether to show dialog or not */\n opened: boolean;\n /** List of [[DialogButtonDef]] objects specifying buttons and associated onClick events */\n buttonCluster: DialogButtonDef[];\n /** Title to show in title bar of dialog */\n title?: string | JSX.Element;\n /** onClick event for X button for dialog */\n onClose?: () => void;\n /** 'keyup' event for <Esc> key */\n onEscape?: () => void;\n /** minimum width that the dialog may be resized to. Default: 400 */\n minWidth?: number;\n /** minimum height that the dialog may be resized to. Default: 400 */\n minHeight?: number;\n /** initial width of dialog.\n * Displayed in px if value is a number, otherwise displayed in specified CSS unit.\n * Default: \"50%\"\n */\n width?: string | number;\n /** initial height of dialog.\n * Displayed in px if value is a number, otherwise displayed in specified CSS unit.\n * Default: \"\"\n */\n height?: string | number;\n /** Whether to show background overlay. Default: true */\n modal?: boolean;\n /** Custom CSS class name for the content */\n contentClassName?: string;\n /** Custom CSS Style for the content */\n contentStyle?: React.CSSProperties;\n /** Message content */\n children?: React.ReactNode;\n}\n\n/** Message Box React component.\n * @public\n */\nexport class MessageBox extends React.PureComponent<MessageBoxProps> {\n public static defaultProps: Partial<MessageBoxProps> = {\n minWidth: 400,\n minHeight: 400,\n width: \"512px\",\n modal: true,\n };\n\n public override render(): JSX.Element {\n return (\n <Dialog\n title={this.props.title}\n buttonCluster={this.props.buttonCluster}\n opened={this.props.opened}\n width={this.props.width}\n onClose={this.props.onClose}\n onEscape={this.props.onEscape}\n modal={this.props.modal}\n className={this.props.className}\n style={this.props.style} >\n <MessageContainer severity={this.props.severity} className={this.props.contentClassName} style={this.props.contentStyle}>\n {this.props.children}\n </MessageContainer>\n </Dialog>\n );\n }\n}\n\n/** Properties for the [[MessageContainer]] component\n * @public\n */\nexport interface MessageContainerProps extends CommonProps {\n severity: MessageSeverity;\n /** Message Content */\n children?: React.ReactNode;\n}\n\n/** Message Container React component.\n * @public\n */\nexport class MessageContainer extends React.PureComponent<MessageContainerProps> {\n /** Returns the class name associated with the WebFont icon corresponding to the MessageSeverity.\n * @param severity MessageSeverity\n * @param _hollow @deprecated in 4.0. Ignored.\n * @deprecated in 4.0. Please use getIcon method\n */\n /* istanbul ignore next */\n public static getIconClassName(severity: MessageSeverity, _hollow?: boolean): string {\n let iconClassName = \"\";\n\n switch (severity) {\n case MessageSeverity.None:\n iconClassName = \"\";\n break;\n case MessageSeverity.Success:\n iconClassName = \"core-message-box-success\";\n break;\n case MessageSeverity.Information:\n iconClassName = \"core-message-box-information\";\n break;\n case MessageSeverity.Question:\n iconClassName = \"core-message-box-question\";\n break;\n case MessageSeverity.Warning:\n iconClassName = \"core-message-box-warning\"; // TODO - need icon-status-warning-hollow icon\n break;\n case MessageSeverity.Error:\n iconClassName = \"core-message-box-error\";\n break;\n case MessageSeverity.Fatal:\n iconClassName = \"core-message-box-fatal\";\n break;\n }\n\n return iconClassName;\n }\n\n /** Returns the React icon corresponding to the MessageSeverity.\n * @param severity MessageSeverity\n * @param hollow set to true to return the hollow form of the icon.\n * @returns IconSpec\n */\n /* ignore for unit tests and replace with visual testing */\n /* istanbul ignore next */\n public static getIcon(severity: MessageSeverity, hollow?: boolean): IconSpec {\n let iconSpec: IconSpec = \"\";\n switch (severity) {\n case MessageSeverity.None:\n iconSpec = \"\";\n break;\n case MessageSeverity.Success:\n iconSpec = hollow ? <SvgStatusSuccessHollow /> : <SvgStatusSuccess />;\n break;\n case MessageSeverity.Information:\n iconSpec = hollow ? <SvgInfoCircularHollow /> : <SvgInfoCircular />;\n break;\n case MessageSeverity.Question:\n iconSpec = hollow ? <SvgHelpCircularHollow /> : <SvgHelpCircular />;\n break;\n case MessageSeverity.Warning:\n iconSpec = <SvgStatusWarning />; // TODO - need icon-status-warning-hollow icon\n break;\n case MessageSeverity.Error:\n iconSpec = hollow ? <SvgStatusErrorHollow /> : <SvgStatusError />;\n break;\n case MessageSeverity.Fatal:\n iconSpec = hollow ? <SvgStatusRejectedHollow /> : <SvgStatusRejected />;\n break;\n }\n return iconSpec;\n }\n\n public override render(): JSX.Element {\n const iconClassName = classnames(\n \"icon\",\n \"core-message-box-icon\"\n );\n\n const iconSpec = MessageContainer.getIcon(this.props.severity);\n\n return (\n <div className=\"core-message-box-container\">\n <div className={iconClassName} ><Icon iconSpec={iconSpec} /></div>\n <div className={classnames(\"core-message-box-content\", this.props.className)} style={this.props.style}>\n {this.props.children}\n </div>\n </div>\n );\n }\n}\n"]}
@@ -2,19 +2,19 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- @import "../icons/variables";
6
- @import "../style/colors";
7
- @import "../style/themecolors";
8
- @import "../style/baseline";
5
+ @import "../icons/variables";
6
+ @import "../style/colors";
7
+ @import "../style/baseline";
9
8
 
10
9
  .core-message-box-container {
11
10
  display: flex;
12
- color: $buic-foreground-body;
11
+ color: var(--iui-color-text);
13
12
 
14
13
  .core-message-box-icon {
15
14
  flex: 0 0;
16
15
  font-size: $uicore-icons-medium;
17
- padding: 0 $uicore-unbordered-padding $uicore-unbordered-padding $uicore-unbordered-padding;
16
+ padding: 0 $uicore-unbordered-padding $uicore-unbordered-padding
17
+ $uicore-unbordered-padding;
18
18
  margin-top: 10px;
19
19
  }
20
20
 
@@ -22,23 +22,33 @@
22
22
  display: flex;
23
23
  align-items: center;
24
24
  flex: 1 1;
25
+
26
+ a {
27
+ // iTwinUI anchor link style
28
+ color: var(--iui-color-text-accent);
29
+ -webkit-tap-highlight-color: hsl(
30
+ var(--iui-color-accent-hsl) / var(--iui-opacity-6)
31
+ );
32
+ border-radius: var(--iui-border-radius-1);
33
+ cursor: pointer;
34
+ text-decoration: none;
35
+ }
25
36
  }
26
37
  }
27
38
 
28
39
  .core-message-box-success {
29
- color: $buic-foreground-success;
30
- }
31
- .core-message-box-information {
32
- color: $buic-foreground-primary;
40
+ color: var(--iui-color-text-positive);
33
41
  }
42
+ .core-message-box-information,
34
43
  .core-message-box-question {
35
- color: $uicore-yellow;
44
+ color: var(--iui-color-text-informational);
36
45
  }
37
46
  .core-message-box-warning {
38
- color: $buic-foreground-warning;
47
+ color: var(--iui-color-text-warning);
39
48
  }
40
- .core-message-box-error, .core-message-box-fatal {
41
- color: $buic-foreground-alert;
49
+ .core-message-box-error,
50
+ .core-message-box-fatal {
51
+ color: var(--iui-color-text-negative);
42
52
  }
43
53
 
44
54
  .notifymessage-icon {
@@ -21,7 +21,7 @@ export function MessageRenderer(props) {
21
21
  // the esm build of dompurify has a default import but the cjs build does not
22
22
  // if there is a default export, use it (likely esm), otherwise use the namespace
23
23
  // istanbul ignore next
24
- const sanitizer = DOMPurify !== null && DOMPurify !== void 0 ? DOMPurify : DOMPurifyNS; // `sanitizer` is default function name for "jam3/no-sanitizer-with-danger" ESLint rule
24
+ const sanitizer = DOMPurify ?? DOMPurifyNS; // `sanitizer` is default function name for "jam3/no-sanitizer-with-danger" ESLint rule
25
25
  let validAnchors = false;
26
26
  let hasAnchors = false;
27
27
  // verify that the tag has proper relationships
@@ -1 +1 @@
1
- {"version":3,"file":"MessageRenderer.js","sourceRoot":"","sources":["../../../../src/core-react/notification/MessageRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport * as React from \"react\";\nimport DOMPurify, * as DOMPurifyNS from \"dompurify\";\nimport { isHTMLElement, isReactMessage, MessageType } from \"./MessageType\";\nimport { ClassNameProps } from \"../utils/Props\";\n\n// cSpell:ignore dompurify\n\n/** Properties for the [[MessageRenderer]] component\n * @public\n */\nexport interface MessageRendererProps extends ClassNameProps {\n /** Message to render */\n message: MessageType;\n /** Indicates whether to use a `span` or `div` element for rendering */\n useSpan?: boolean;\n}\n\n/** React component renders a string, HTMLElement or React node in a `div` or `span`\n * @public\n */\nexport function MessageRenderer(props: MessageRendererProps) {\n let messageNode = null;\n const OutElement = props.useSpan ? \"span\" : \"div\";\n\n if (typeof props.message === \"string\") {\n messageNode = <OutElement className={props.className}>{props.message}</OutElement>;\n } else if (isHTMLElement(props.message)) {\n // the esm build of dompurify has a default import but the cjs build does not\n // if there is a default export, use it (likely esm), otherwise use the namespace\n // istanbul ignore next\n const sanitizer = DOMPurify ?? DOMPurifyNS; // `sanitizer` is default function name for \"jam3/no-sanitizer-with-danger\" ESLint rule\n\n let validAnchors = false;\n let hasAnchors = false;\n\n // verify that the tag has proper relationships\n const isAnchorValid = (anchor: HTMLAnchorElement): boolean => {\n return anchor.hasAttribute(\"rel\") && (anchor.rel.includes(\"noopener\") || anchor.rel.includes(\"noreferrer\"));\n };\n\n // recursively check child elements for valid anchor tags\n const checkChildAnchors = (parent: Element) => {\n const children = Array.from(parent.children);\n for (const child of children){\n if (child.hasAttribute(\"target\") && (child as HTMLAnchorElement).target === \"_blank\") {\n hasAnchors = true;\n validAnchors = isAnchorValid(child as HTMLAnchorElement);\n if (!validAnchors) {\n return;\n }\n }\n checkChildAnchors(child);\n }\n };\n\n // check for anchor tags in the message that have target _blank also have a relationship that avoids security holes\n // https://web.dev/external-anchors-use-rel-noopener/\n // first check the message element\n /* istanbul ignore else */\n if (props.message.hasAttribute(\"target\") && (props.message as HTMLAnchorElement).target === \"_blank\") {\n hasAnchors = true;\n validAnchors = isAnchorValid(props.message as HTMLAnchorElement);\n } else {\n // if the message element is not an anchor, recursively verify it's children\n if (props.message.children) {\n checkChildAnchors(props.message);\n }\n }\n\n let sanitizedHtml;\n if (hasAnchors && validAnchors) {\n // all anchors are valid. do not remove the target attr\n sanitizedHtml = sanitizer.sanitize(props.message.outerHTML, {ADD_ATTR: [\"target\"]});\n } else {\n sanitizedHtml = sanitizer.sanitize(props.message.outerHTML);\n }\n\n // we can safely disable jam3/no-sanitizer-with-danger as we are sanitizing above\n // eslint-disable-next-line @typescript-eslint/naming-convention, jam3/no-sanitizer-with-danger\n messageNode = <OutElement className={props.className} dangerouslySetInnerHTML={{ __html: sanitizedHtml }} />;\n } else {\n /* istanbul ignore else */\n if (isReactMessage(props.message))\n messageNode = <OutElement className={props.className}>{props.message.reactNode}</OutElement>;\n }\n\n return messageNode;\n}\n"]}
1
+ {"version":3,"file":"MessageRenderer.js","sourceRoot":"","sources":["../../../../src/core-react/notification/MessageRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport * as React from \"react\";\nimport DOMPurify, * as DOMPurifyNS from \"dompurify\";\nimport { isHTMLElement, isReactMessage, MessageType } from \"./MessageType\";\nimport { ClassNameProps } from \"../utils/Props\";\n\n// cSpell:ignore dompurify\n\n/** Properties for the [[MessageRenderer]] component\n * @public\n */\nexport interface MessageRendererProps extends ClassNameProps {\n /** Message to render */\n message: MessageType;\n /** Indicates whether to use a `span` or `div` element for rendering */\n useSpan?: boolean;\n}\n\n/** React component renders a string, HTMLElement or React node in a `div` or `span`\n * @public\n */\nexport function MessageRenderer(props: MessageRendererProps) {\n let messageNode = null;\n const OutElement = props.useSpan ? \"span\" : \"div\";\n\n if (typeof props.message === \"string\") {\n messageNode = <OutElement className={props.className}>{props.message}</OutElement>;\n } else if (isHTMLElement(props.message)) {\n // the esm build of dompurify has a default import but the cjs build does not\n // if there is a default export, use it (likely esm), otherwise use the namespace\n // istanbul ignore next\n const sanitizer = DOMPurify ?? DOMPurifyNS; // `sanitizer` is default function name for \"jam3/no-sanitizer-with-danger\" ESLint rule\n\n let validAnchors = false;\n let hasAnchors = false;\n\n // verify that the tag has proper relationships\n const isAnchorValid = (anchor: HTMLAnchorElement): boolean => {\n return anchor.hasAttribute(\"rel\") && (anchor.rel.includes(\"noopener\") || anchor.rel.includes(\"noreferrer\"));\n };\n\n // recursively check child elements for valid anchor tags\n const checkChildAnchors = (parent: Element) => {\n const children = Array.from(parent.children);\n for (const child of children){\n if (child.hasAttribute(\"target\") && (child as HTMLAnchorElement).target === \"_blank\") {\n hasAnchors = true;\n validAnchors = isAnchorValid(child as HTMLAnchorElement);\n if (!validAnchors) {\n return;\n }\n }\n checkChildAnchors(child);\n }\n };\n\n // check for anchor tags in the message that have target _blank also have a relationship that avoids security holes\n // https://web.dev/external-anchors-use-rel-noopener/\n // first check the message element\n /* istanbul ignore else */\n if (props.message.hasAttribute(\"target\") && (props.message as HTMLAnchorElement).target === \"_blank\") {\n hasAnchors = true;\n validAnchors = isAnchorValid(props.message as HTMLAnchorElement);\n } else {\n // if the message element is not an anchor, recursively verify it's children\n if (props.message.children) {\n checkChildAnchors(props.message);\n }\n }\n\n let sanitizedHtml;\n if (hasAnchors && validAnchors) {\n // all anchors are valid. do not remove the target attr\n sanitizedHtml = sanitizer.sanitize(props.message.outerHTML, {ADD_ATTR: [\"target\"]});\n } else {\n sanitizedHtml = sanitizer.sanitize(props.message.outerHTML);\n }\n\n // we can safely disable jam3/no-sanitizer-with-danger as we are sanitizing above\n // eslint-disable-next-line @typescript-eslint/naming-convention, jam3/no-sanitizer-with-danger\n messageNode = <OutElement className={props.className} dangerouslySetInnerHTML={{ __html: sanitizedHtml }} />;\n } else {\n /* istanbul ignore else */\n if (isReactMessage(props.message))\n messageNode = <OutElement className={props.className}>{props.message.reactNode}</OutElement>;\n }\n\n return messageNode;\n}\n"]}
@@ -11,7 +11,7 @@ export interface ReactMessage {
11
11
  /** Types for message
12
12
  * @public
13
13
  */
14
- export declare type MessageType = string | HTMLElement | ReactMessage;
14
+ export type MessageType = string | HTMLElement | ReactMessage;
15
15
  /** HTMLElement type guard.
16
16
  * @internal
17
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MessageType.d.ts","sourceRoot":"","sources":["../../../../src/core-react/notification/MessageType.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,oBAAY,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,aAAa,YAAa,WAAW,2BAEjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,YAAa,WAAW,4BAElD,CAAC"}
1
+ {"version":3,"file":"MessageType.d.ts","sourceRoot":"","sources":["../../../../src/core-react/notification/MessageType.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,aAAa,YAAa,WAAW,2BAEjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,YAAa,WAAW,4BAElD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.d.ts","sourceRoot":"","sources":["../../../../src/core-react/popup/Popup.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Popup.d.ts","sourceRoot":"","sources":["../../../../src/core-react/popup/Popup.tsx"],"names":[],"mappings":"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"}
@@ -14,9 +14,8 @@ import { FocusTrap } from "../focustrap/FocusTrap";
14
14
  /** Popup React component displays a popup relative to an optional target element.
15
15
  * @public
16
16
  */
17
- export class Popup extends React.Component {
17
+ class Popup extends React.Component {
18
18
  constructor(props) {
19
- var _a, _b;
20
19
  super(props);
21
20
  this._popup = null;
22
21
  this._bindWindowEvents = () => {
@@ -191,7 +190,7 @@ export class Popup extends React.Component {
191
190
  this.setState({ animationEnded: true });
192
191
  }
193
192
  };
194
- const parentDocument = (_b = (_a = this.props.target) === null || _a === void 0 ? void 0 : _a.ownerDocument) !== null && _b !== void 0 ? _b : document;
193
+ const parentDocument = this.props.target?.ownerDocument ?? document;
195
194
  this.state = {
196
195
  animationEnded: false,
197
196
  isOpen: this.props.isOpen,
@@ -207,19 +206,17 @@ export class Popup extends React.Component {
207
206
  }
208
207
  }
209
208
  getParentWindow() {
210
- var _a;
211
209
  // istanbul ignore next
212
- return (_a = this.state.parentDocument.defaultView) !== null && _a !== void 0 ? _a : window;
210
+ return this.state.parentDocument.defaultView ?? window;
213
211
  }
214
212
  componentDidUpdate(previousProps, prevState) {
215
- var _a, _b;
216
213
  if (this.state.position !== prevState.position) {
217
214
  this.setState({ animationEnded: false });
218
215
  }
219
216
  if (this.props.target !== previousProps.target) {
220
217
  // istanbul ignore next
221
218
  {
222
- const parentDocument = (_b = (_a = this.props.target) === null || _a === void 0 ? void 0 : _a.ownerDocument) !== null && _b !== void 0 ? _b : document;
219
+ const parentDocument = this.props.target?.ownerDocument ?? document;
223
220
  if (parentDocument !== this.state.parentDocument) {
224
221
  this._unBindWindowEvents();
225
222
  this.setState({ parentDocument });
@@ -394,7 +391,9 @@ export class Popup extends React.Component {
394
391
  return null;
395
392
  }
396
393
  return ReactDOM.createPortal((React.createElement("div", { className: className, "data-testid": "core-popup", ref: (element) => { this._popup = element; }, style: style, role: role, "aria-modal": true, tabIndex: -1, "aria-label": this.props.ariaLabel, onAnimationEnd: this._handleAnimationEnd },
397
- React.createElement(FocusTrap, { active: !!this.props.moveFocus, initialFocusElement: this.props.focusTarget, returnFocusOnDeactivate: true }, this.props.children))), this.state.parentDocument.body);
394
+ React.createElement(FocusTrap, { active: !!this.props.moveFocus, initialFocusElement: this.props.focusTarget, returnFocusOnDeactivate: true }, this.props.children))),
395
+ // istanbul ignore next
396
+ this.state.parentDocument.body.querySelector('[data-root-container="iui-root-id"]') ?? this.state.parentDocument.body);
398
397
  }
399
398
  }
400
399
  Popup.defaultProps = {
@@ -406,6 +405,7 @@ Popup.defaultProps = {
406
405
  top: -1,
407
406
  left: -1,
408
407
  };
408
+ export { Popup };
409
409
  function parsePxString(pxStr) {
410
410
  const parsed = parseInt(pxStr, 10);
411
411
  return parsed || 0;