@itwin/appui-react 5.0.5 → 5.1.0

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 (514) hide show
  1. package/CHANGELOG.md +48 -38
  2. package/lib/appui-react/UiFramework.d.ts +1 -1
  3. package/lib/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/appui-react/UiFramework.js +46 -46
  5. package/lib/appui-react/UiFramework.js.map +1 -1
  6. package/lib/appui-react/accudraw/AccuDrawCommandItems.js +1 -1
  7. package/lib/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  8. package/lib/appui-react/accudraw/AccuDrawDialog.js +1 -1
  9. package/lib/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  10. package/lib/appui-react/accudraw/AccuDrawFieldContainer.d.ts +2 -0
  11. package/lib/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  12. package/lib/appui-react/accudraw/AccuDrawFieldContainer.js +38 -26
  13. package/lib/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  14. package/lib/appui-react/accudraw/AccuDrawInputField.d.ts +4 -2
  15. package/lib/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  16. package/lib/appui-react/accudraw/AccuDrawInputField.js +45 -38
  17. package/lib/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  18. package/lib/appui-react/accudraw/AccuDrawInputField.scss +0 -15
  19. package/lib/appui-react/accudraw/AccuDrawPopupManager.js +3 -3
  20. package/lib/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  21. package/lib/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
  22. package/lib/appui-react/accudraw/AccuDrawWidget.js +2 -2
  23. package/lib/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  24. package/lib/appui-react/accudraw/Calculator.js +1 -1
  25. package/lib/appui-react/accudraw/Calculator.js.map +1 -1
  26. package/lib/appui-react/accudraw/CalculatorPopup.js +1 -1
  27. package/lib/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  28. package/lib/appui-react/accudraw/FrameworkAccuDraw.d.ts +2 -2
  29. package/lib/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  30. package/lib/appui-react/accudraw/FrameworkAccuDraw.js +18 -15
  31. package/lib/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  32. package/lib/appui-react/accudraw/MenuButton.js +1 -1
  33. package/lib/appui-react/accudraw/MenuButton.js.map +1 -1
  34. package/lib/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  35. package/lib/appui-react/backstage/BackstageComposer.js +2 -3
  36. package/lib/appui-react/backstage/BackstageComposer.js.map +1 -1
  37. package/lib/appui-react/backstage/BackstageComposerItem.js +6 -6
  38. package/lib/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  39. package/lib/appui-react/backstage/BackstageItem.js.map +1 -1
  40. package/lib/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  41. package/lib/appui-react/backstage/BackstageManager.js +3 -3
  42. package/lib/appui-react/backstage/BackstageManager.js.map +1 -1
  43. package/lib/appui-react/backstage/InternalBackstageManager.js +2 -2
  44. package/lib/appui-react/backstage/InternalBackstageManager.js.map +1 -1
  45. package/lib/appui-react/configurableui/ActivityTracker.d.ts.map +1 -1
  46. package/lib/appui-react/configurableui/ActivityTracker.js +0 -1
  47. package/lib/appui-react/configurableui/ActivityTracker.js.map +1 -1
  48. package/lib/appui-react/configurableui/ConfigurableUiContent.js +6 -6
  49. package/lib/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  50. package/lib/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  51. package/lib/appui-react/configurableui/InternalConfigurableUiManager.d.ts +1 -1
  52. package/lib/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  53. package/lib/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  54. package/lib/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  55. package/lib/appui-react/content/ContentControl.js +1 -1
  56. package/lib/appui-react/content/ContentControl.js.map +1 -1
  57. package/lib/appui-react/content/ContentGroup.js +7 -7
  58. package/lib/appui-react/content/ContentGroup.js.map +1 -1
  59. package/lib/appui-react/content/ContentLayout.d.ts.map +1 -1
  60. package/lib/appui-react/content/ContentLayout.js +16 -17
  61. package/lib/appui-react/content/ContentLayout.js.map +1 -1
  62. package/lib/appui-react/content/DefaultViewOverlay.js +1 -1
  63. package/lib/appui-react/content/DefaultViewOverlay.js.map +1 -1
  64. package/lib/appui-react/content/FloatingViewportContent.js +4 -4
  65. package/lib/appui-react/content/FloatingViewportContent.js.map +1 -1
  66. package/lib/appui-react/content/IModelViewport.d.ts +1 -1
  67. package/lib/appui-react/content/IModelViewport.d.ts.map +1 -1
  68. package/lib/appui-react/content/IModelViewport.js +1 -1
  69. package/lib/appui-react/content/IModelViewport.js.map +1 -1
  70. package/lib/appui-react/content/InternalContentViewManager.js +26 -26
  71. package/lib/appui-react/content/InternalContentViewManager.js.map +1 -1
  72. package/lib/appui-react/content/ViewportContentControl.js +1 -1
  73. package/lib/appui-react/content/ViewportContentControl.js.map +1 -1
  74. package/lib/appui-react/content/split-pane/SplitPane.js +2 -2
  75. package/lib/appui-react/content/split-pane/SplitPane.js.map +1 -1
  76. package/lib/appui-react/cursor/CursorInformation.js +2 -2
  77. package/lib/appui-react/cursor/CursorInformation.js.map +1 -1
  78. package/lib/appui-react/cursor/cursormenu/CursorMenu.d.ts +1 -1
  79. package/lib/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  80. package/lib/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  81. package/lib/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  82. package/lib/appui-react/cursor/cursorpopup/CursorPopup.d.ts +1 -1
  83. package/lib/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  84. package/lib/appui-react/cursor/cursorpopup/CursorPopup.js +3 -3
  85. package/lib/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  86. package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +1 -1
  87. package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  88. package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  89. package/lib/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -1
  90. package/lib/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  91. package/lib/appui-react/dialog/ContentDialog.js.map +1 -1
  92. package/lib/appui-react/dialog/ContentDialogManager.js +2 -2
  93. package/lib/appui-react/dialog/ContentDialogManager.js.map +1 -1
  94. package/lib/appui-react/dialog/DialogManagerBase.js +4 -4
  95. package/lib/appui-react/dialog/DialogManagerBase.js.map +1 -1
  96. package/lib/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  97. package/lib/appui-react/dialog/InternalContentDialogManager.js +2 -3
  98. package/lib/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  99. package/lib/appui-react/dialog/InternalModalDialogManager.js +1 -1
  100. package/lib/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  101. package/lib/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  102. package/lib/appui-react/dialog/InternalModelessDialogManager.js +1 -2
  103. package/lib/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  104. package/lib/appui-react/dialog/ModalDialogManager.js +2 -2
  105. package/lib/appui-react/dialog/ModalDialogManager.js.map +1 -1
  106. package/lib/appui-react/dialog/ModelessDialog.js +1 -1
  107. package/lib/appui-react/dialog/ModelessDialog.js.map +1 -1
  108. package/lib/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
  109. package/lib/appui-react/dialog/ModelessDialogManager.js +2 -3
  110. package/lib/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  111. package/lib/appui-react/dialog/StandardMessageBox.js +1 -1
  112. package/lib/appui-react/dialog/StandardMessageBox.js.map +1 -1
  113. package/lib/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  114. package/lib/appui-react/feedback/ElementTooltip.d.ts +1 -1
  115. package/lib/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  116. package/lib/appui-react/feedback/ElementTooltip.js.map +1 -1
  117. package/lib/appui-react/feedback/ValidationTextbox.js.map +1 -1
  118. package/lib/appui-react/framework/FrameworkBackstage.js.map +1 -1
  119. package/lib/appui-react/framework/FrameworkContent.js +3 -3
  120. package/lib/appui-react/framework/FrameworkContent.js.map +1 -1
  121. package/lib/appui-react/framework/FrameworkControls.js.map +1 -1
  122. package/lib/appui-react/framework/FrameworkDialogs.js +2 -2
  123. package/lib/appui-react/framework/FrameworkDialogs.js.map +1 -1
  124. package/lib/appui-react/framework/FrameworkFrontstages.js +8 -8
  125. package/lib/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  126. package/lib/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  127. package/lib/appui-react/framework/FrameworkToolSettings.js +1 -1
  128. package/lib/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  129. package/lib/appui-react/frontstage/Frontstage.js.map +1 -1
  130. package/lib/appui-react/frontstage/FrontstageConfig.d.ts +5 -2
  131. package/lib/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -1
  132. package/lib/appui-react/frontstage/FrontstageConfig.js.map +1 -1
  133. package/lib/appui-react/frontstage/FrontstageDef.d.ts +5 -1
  134. package/lib/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  135. package/lib/appui-react/frontstage/FrontstageDef.js +22 -17
  136. package/lib/appui-react/frontstage/FrontstageDef.js.map +1 -1
  137. package/lib/appui-react/frontstage/InternalFrontstageManager.js +29 -29
  138. package/lib/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  139. package/lib/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  140. package/lib/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  141. package/lib/appui-react/frontstage/ModalSettingsStage.js +2 -2
  142. package/lib/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  143. package/lib/appui-react/frontstage/NestedFrontstage.js +1 -1
  144. package/lib/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  145. package/lib/appui-react/frontstage/StandardFrontstageProvider.js +1 -1
  146. package/lib/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  147. package/lib/appui-react/hooks/useActiveIModelConnection.js +1 -1
  148. package/lib/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  149. package/lib/appui-react/hooks/useUiVisibility.js +1 -1
  150. package/lib/appui-react/hooks/useUiVisibility.js.map +1 -1
  151. package/lib/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  152. package/lib/appui-react/keyboardshortcut/KeyboardShortcut.js +1 -1
  153. package/lib/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  154. package/lib/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  155. package/lib/appui-react/keyboardshortcut/KeyboardShortcutProps.js.map +1 -1
  156. package/lib/appui-react/layout/StandardLayout.js.map +1 -1
  157. package/lib/appui-react/layout/backstage/Backstage.js.map +1 -1
  158. package/lib/appui-react/layout/backstage/Item.js.map +1 -1
  159. package/lib/appui-react/layout/backstage/Separator.js +1 -1
  160. package/lib/appui-react/layout/backstage/Separator.js.map +1 -1
  161. package/lib/appui-react/layout/base/usePointerCaptor.d.ts +1 -1
  162. package/lib/appui-react/layout/base/usePointerCaptor.d.ts.map +1 -1
  163. package/lib/appui-react/layout/footer/dialog/Dialog.js.map +1 -1
  164. package/lib/appui-react/layout/footer/dialog/TitleBar.js.map +1 -1
  165. package/lib/appui-react/layout/footer/snap-mode/Panel.js.map +1 -1
  166. package/lib/appui-react/layout/footer/snap-mode/Snap.js.map +1 -1
  167. package/lib/appui-react/layout/footer/tool-assistance/Dialog.js.map +1 -1
  168. package/lib/appui-react/layout/footer/tool-assistance/Instruction.js.map +1 -1
  169. package/lib/appui-react/layout/footer/tool-assistance/Item.js.map +1 -1
  170. package/lib/appui-react/layout/footer/tool-assistance/NewDot.js +1 -1
  171. package/lib/appui-react/layout/footer/tool-assistance/NewDot.js.map +1 -1
  172. package/lib/appui-react/layout/footer/tool-assistance/Separator.js.map +1 -1
  173. package/lib/appui-react/layout/outline/SectionOutline.js.map +1 -1
  174. package/lib/appui-react/layout/popup/Tooltip.js.map +1 -1
  175. package/lib/appui-react/layout/state/internal/PanelStateHelpers.js +1 -1
  176. package/lib/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  177. package/lib/appui-react/layout/state/internal/TabStateHelpers.js +6 -6
  178. package/lib/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  179. package/lib/appui-react/layout/state/internal/ToolSettingsStateHelpers.js +6 -6
  180. package/lib/appui-react/layout/state/internal/ToolSettingsStateHelpers.js.map +1 -1
  181. package/lib/appui-react/layout/state/internal/WidgetStateHelpers.js +13 -13
  182. package/lib/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  183. package/lib/appui-react/layout/target/TargetContainer.js.map +1 -1
  184. package/lib/appui-react/layout/target/useAllowedSideTarget.js +1 -1
  185. package/lib/appui-react/layout/target/useAllowedSideTarget.js.map +1 -1
  186. package/lib/appui-react/layout/tool-settings/Docked.js +1 -1
  187. package/lib/appui-react/layout/tool-settings/Docked.js.map +1 -1
  188. package/lib/appui-react/layout/tool-settings/Handle.js.map +1 -1
  189. package/lib/appui-react/layout/tool-settings/Overflow.js.map +1 -1
  190. package/lib/appui-react/layout/tool-settings/Panel.js +1 -1
  191. package/lib/appui-react/layout/tool-settings/Panel.js.map +1 -1
  192. package/lib/appui-react/layout/tool-settings/Setting.js.map +1 -1
  193. package/lib/appui-react/layout/widget/Menu.js +1 -1
  194. package/lib/appui-react/layout/widget/Menu.js.map +1 -1
  195. package/lib/appui-react/layout/widget/MenuTab.js.map +1 -1
  196. package/lib/appui-react/layout/widget/NavigationArea.js.map +1 -1
  197. package/lib/appui-react/layout/widget/Tab.js +1 -1
  198. package/lib/appui-react/layout/widget/Tab.js.map +1 -1
  199. package/lib/appui-react/layout/widget/TabBar.js +1 -1
  200. package/lib/appui-react/layout/widget/TabBar.js.map +1 -1
  201. package/lib/appui-react/layout/widget/ToolsArea.js.map +1 -1
  202. package/lib/appui-react/layout/widget/Widget.js.map +1 -1
  203. package/lib/appui-react/layout/widget/tools/button/Button.js.map +1 -1
  204. package/lib/appui-react/layout/widget/tools/button/Expandable.js.map +1 -1
  205. package/lib/appui-react/layout/widget-panels/Expander.js +1 -1
  206. package/lib/appui-react/layout/widget-panels/Expander.js.map +1 -1
  207. package/lib/appui-react/layout/widget-panels/Grip.d.ts.map +1 -1
  208. package/lib/appui-react/layout/widget-panels/Grip.js +3 -3
  209. package/lib/appui-react/layout/widget-panels/Grip.js.map +1 -1
  210. package/lib/appui-react/layout/widget-panels/Panel.d.ts.map +1 -1
  211. package/lib/appui-react/layout/widget-panels/useAnimatePanel.d.ts.map +1 -1
  212. package/lib/appui-react/messages/InputField.js +2 -2
  213. package/lib/appui-react/messages/InputField.js.map +1 -1
  214. package/lib/appui-react/messages/MessageManager.d.ts +4 -4
  215. package/lib/appui-react/messages/MessageManager.d.ts.map +1 -1
  216. package/lib/appui-react/messages/MessageManager.js +25 -25
  217. package/lib/appui-react/messages/MessageManager.js.map +1 -1
  218. package/lib/appui-react/messages/MessageRenderer.js.map +1 -1
  219. package/lib/appui-react/messages/Pointer.d.ts.map +1 -1
  220. package/lib/appui-react/messages/Pointer.js +7 -7
  221. package/lib/appui-react/messages/Pointer.js.map +1 -1
  222. package/lib/appui-react/messages/ReactNotifyMessageDetails.d.ts +2 -2
  223. package/lib/appui-react/messages/ReactNotifyMessageDetails.d.ts.map +1 -1
  224. package/lib/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  225. package/lib/appui-react/navigationaids/CubeNavigationAidControl.js +2 -2
  226. package/lib/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  227. package/lib/appui-react/navigationaids/DrawingNavigationAidControl.js +2 -2
  228. package/lib/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  229. package/lib/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  230. package/lib/appui-react/navigationaids/SheetNavigationAid.js +2 -2
  231. package/lib/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  232. package/lib/appui-react/navigationaids/SheetsModalFrontstage.js +8 -8
  233. package/lib/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  234. package/lib/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +1 -1
  235. package/lib/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  236. package/lib/appui-react/navigationaids/StandardRotationNavigationAid.js +3 -3
  237. package/lib/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  238. package/lib/appui-react/pickers/ListPicker.d.ts +1 -0
  239. package/lib/appui-react/pickers/ListPicker.d.ts.map +1 -1
  240. package/lib/appui-react/pickers/ListPicker.js +11 -10
  241. package/lib/appui-react/pickers/ListPicker.js.map +1 -1
  242. package/lib/appui-react/pickers/ViewSelector.d.ts +1 -0
  243. package/lib/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  244. package/lib/appui-react/pickers/ViewSelector.js +7 -6
  245. package/lib/appui-react/pickers/ViewSelector.js.map +1 -1
  246. package/lib/appui-react/popup/CardPopup.js +2 -2
  247. package/lib/appui-react/popup/CardPopup.js.map +1 -1
  248. package/lib/appui-react/popup/ComponentPopup.js.map +1 -1
  249. package/lib/appui-react/popup/HTMLElementPopup.js.map +1 -1
  250. package/lib/appui-react/popup/InputEditorPopup.js.map +1 -1
  251. package/lib/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  252. package/lib/appui-react/popup/KeyinPalettePanel.js +2 -3
  253. package/lib/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  254. package/lib/appui-react/popup/KeyinPalettePopup.js +1 -1
  255. package/lib/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  256. package/lib/appui-react/popup/PopupManager.d.ts +1 -1
  257. package/lib/appui-react/popup/PopupManager.d.ts.map +1 -1
  258. package/lib/appui-react/popup/PopupManager.js +4 -4
  259. package/lib/appui-react/popup/PopupManager.js.map +1 -1
  260. package/lib/appui-react/popup/PositionPopup.js +2 -2
  261. package/lib/appui-react/popup/PositionPopup.js.map +1 -1
  262. package/lib/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  263. package/lib/appui-react/popup/ToolbarPopup.js +1 -1
  264. package/lib/appui-react/popup/ToolbarPopup.js.map +1 -1
  265. package/lib/appui-react/preview/PreviewFeatures.d.ts +3 -5
  266. package/lib/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  267. package/lib/appui-react/preview/PreviewFeatures.js +1 -2
  268. package/lib/appui-react/preview/PreviewFeatures.js.map +1 -1
  269. package/lib/appui-react/preview/allow-bearing-letters-in-accudraw-input-fields/useAllowBearingLettersInAccuDrawInputFields.d.ts +5 -0
  270. package/lib/appui-react/preview/allow-bearing-letters-in-accudraw-input-fields/useAllowBearingLettersInAccuDrawInputFields.d.ts.map +1 -0
  271. package/lib/appui-react/preview/{allow-letters-in-accudraw-input-fields/useAllowLettersInAccuDrawInputFields.js → allow-bearing-letters-in-accudraw-input-fields/useAllowBearingLettersInAccuDrawInputFields.js} +5 -5
  272. package/lib/appui-react/preview/allow-bearing-letters-in-accudraw-input-fields/useAllowBearingLettersInAccuDrawInputFields.js.map +1 -0
  273. package/lib/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts +1 -1
  274. package/lib/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts.map +1 -1
  275. package/lib/appui-react/preview/control-widget-visibility/NavigationWidget.js +1 -1
  276. package/lib/appui-react/preview/control-widget-visibility/NavigationWidget.js.map +1 -1
  277. package/lib/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts +1 -1
  278. package/lib/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts.map +1 -1
  279. package/lib/appui-react/preview/enable-maximized-widget/MaximizedWidget.js.map +1 -1
  280. package/lib/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts +1 -4
  281. package/lib/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts.map +1 -1
  282. package/lib/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +13 -13
  283. package/lib/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  284. package/lib/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +1 -1
  285. package/lib/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -1
  286. package/lib/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +1 -1
  287. package/lib/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -1
  288. package/lib/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +1 -1
  289. package/lib/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  290. package/lib/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  291. package/lib/appui-react/redux/ConfigurableUiState.d.ts.map +1 -1
  292. package/lib/appui-react/redux/ConfigurableUiState.js +1 -1
  293. package/lib/appui-react/redux/ConfigurableUiState.js.map +1 -1
  294. package/lib/appui-react/redux/FrameworkState.js.map +1 -1
  295. package/lib/appui-react/redux/ReducerRegistry.js +1 -1
  296. package/lib/appui-react/redux/ReducerRegistry.js.map +1 -1
  297. package/lib/appui-react/redux/SessionState.d.ts.map +1 -1
  298. package/lib/appui-react/redux/SessionState.js.map +1 -1
  299. package/lib/appui-react/redux/StateManager.js +2 -2
  300. package/lib/appui-react/redux/StateManager.js.map +1 -1
  301. package/lib/appui-react/redux/connectIModel.js +1 -1
  302. package/lib/appui-react/redux/connectIModel.js.map +1 -1
  303. package/lib/appui-react/redux/redux-ts.js.map +1 -1
  304. package/lib/appui-react/selection/SelectionContextItemDef.js +2 -2
  305. package/lib/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  306. package/lib/appui-react/settings/SettingsManager.js +1 -1
  307. package/lib/appui-react/settings/SettingsManager.js.map +1 -1
  308. package/lib/appui-react/settings/quantityformatting/QuantityFormat.js +3 -3
  309. package/lib/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  310. package/lib/appui-react/settings/ui/UiSettingsPage.js +5 -5
  311. package/lib/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  312. package/lib/appui-react/shared/ActionButtonItemDef.js +1 -1
  313. package/lib/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  314. package/lib/appui-react/shared/AnyItemDef.js.map +1 -1
  315. package/lib/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
  316. package/lib/appui-react/shared/CommandItemDef.js +1 -1
  317. package/lib/appui-react/shared/CommandItemDef.js.map +1 -1
  318. package/lib/appui-react/shared/CustomItemDef.js +1 -1
  319. package/lib/appui-react/shared/CustomItemDef.js.map +1 -1
  320. package/lib/appui-react/shared/CustomItemProps.js.map +1 -1
  321. package/lib/appui-react/shared/GroupItemProps.js.map +1 -1
  322. package/lib/appui-react/shared/ItemDefBase.js.map +1 -1
  323. package/lib/appui-react/shared/ItemMap.js +1 -1
  324. package/lib/appui-react/shared/ItemMap.js.map +1 -1
  325. package/lib/appui-react/shared/ItemProps.js.map +1 -1
  326. package/lib/appui-react/shared/MenuItem.js +1 -1
  327. package/lib/appui-react/shared/MenuItem.js.map +1 -1
  328. package/lib/appui-react/shared/ToolItemDef.js +1 -1
  329. package/lib/appui-react/shared/ToolItemDef.js.map +1 -1
  330. package/lib/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
  331. package/lib/appui-react/stagepanels/StagePanelDef.js +2 -2
  332. package/lib/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  333. package/lib/appui-react/statusbar/Field.js.map +1 -1
  334. package/lib/appui-react/statusbar/Indicator.js +2 -2
  335. package/lib/appui-react/statusbar/Indicator.js.map +1 -1
  336. package/lib/appui-react/statusbar/LabelIndicator.js +2 -2
  337. package/lib/appui-react/statusbar/LabelIndicator.js.map +1 -1
  338. package/lib/appui-react/statusbar/Overflow.js.map +1 -1
  339. package/lib/appui-react/statusbar/Separator.js +1 -1
  340. package/lib/appui-react/statusbar/Separator.js.map +1 -1
  341. package/lib/appui-react/statusbar/StatusBar.js.map +1 -1
  342. package/lib/appui-react/statusbar/StatusBarComposer.js +6 -6
  343. package/lib/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  344. package/lib/appui-react/statusbar/StatusBarItem.js.map +1 -1
  345. package/lib/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  346. package/lib/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  347. package/lib/appui-react/statusbar/dialog/Button.js.map +1 -1
  348. package/lib/appui-react/statusbar/dialog/Dialog.js.map +1 -1
  349. package/lib/appui-react/statusbar/dialog/TitleBar.js.map +1 -1
  350. package/lib/appui-react/statusbar/popup/Popup.js +2 -2
  351. package/lib/appui-react/statusbar/popup/Popup.js.map +1 -1
  352. package/lib/appui-react/statusfields/ActivityCenter.js +2 -2
  353. package/lib/appui-react/statusfields/ActivityCenter.js.map +1 -1
  354. package/lib/appui-react/statusfields/SectionsField.js.map +1 -1
  355. package/lib/appui-react/statusfields/SelectionCount.js.map +1 -1
  356. package/lib/appui-react/statusfields/SelectionInfo.js +2 -2
  357. package/lib/appui-react/statusfields/SelectionInfo.js.map +1 -1
  358. package/lib/appui-react/statusfields/SelectionScope.js +3 -3
  359. package/lib/appui-react/statusfields/SelectionScope.js.map +1 -1
  360. package/lib/appui-react/statusfields/SnapMode.js +2 -2
  361. package/lib/appui-react/statusfields/SnapMode.js.map +1 -1
  362. package/lib/appui-react/statusfields/ViewAttributes.d.ts +1 -1
  363. package/lib/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  364. package/lib/appui-react/statusfields/ViewAttributes.js +1 -1
  365. package/lib/appui-react/statusfields/ViewAttributes.js.map +1 -1
  366. package/lib/appui-react/statusfields/message-center/MessageCenterField.js +1 -1
  367. package/lib/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -1
  368. package/lib/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -1
  369. package/lib/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts +1 -1
  370. package/lib/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  371. package/lib/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
  372. package/lib/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  373. package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  374. package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.js +5 -5
  375. package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  376. package/lib/appui-react/syncui/InternalSyncUiEventDispatcher.js +2 -2
  377. package/lib/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  378. package/lib/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  379. package/lib/appui-react/syncui/SyncUiEventDispatcher.js +3 -8
  380. package/lib/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  381. package/lib/appui-react/syncui/UiSyncEvent.js +1 -1
  382. package/lib/appui-react/syncui/UiSyncEvent.js.map +1 -1
  383. package/lib/appui-react/theme/ThemeManager.js +1 -1
  384. package/lib/appui-react/theme/ThemeManager.js.map +1 -1
  385. package/lib/appui-react/toolbar/GroupItem.js +1 -1
  386. package/lib/appui-react/toolbar/GroupItem.js.map +1 -1
  387. package/lib/appui-react/toolbar/Toolbar.js.map +1 -1
  388. package/lib/appui-react/toolbar/ToolbarComposer.js +3 -3
  389. package/lib/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  390. package/lib/appui-react/toolbar/ToolbarHelper.js +4 -4
  391. package/lib/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  392. package/lib/appui-react/toolbar/ToolbarItem.js.map +1 -1
  393. package/lib/appui-react/toolbar/ToolbarItemUtilities.js +1 -1
  394. package/lib/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
  395. package/lib/appui-react/toolbar/ToolbarItemsManager.js +10 -10
  396. package/lib/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  397. package/lib/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  398. package/lib/appui-react/toolbar/new-toolbars/Badge.d.ts +1 -1
  399. package/lib/appui-react/toolbar/new-toolbars/Badge.d.ts.map +1 -1
  400. package/lib/appui-react/toolbar/new-toolbars/Badge.js +1 -1
  401. package/lib/appui-react/toolbar/new-toolbars/Badge.js.map +1 -1
  402. package/lib/appui-react/toolbar/new-toolbars/GroupItem.js +2 -2
  403. package/lib/appui-react/toolbar/new-toolbars/GroupItem.js.map +1 -1
  404. package/lib/appui-react/toolbar/new-toolbars/Item.js +1 -1
  405. package/lib/appui-react/toolbar/new-toolbars/Item.js.map +1 -1
  406. package/lib/appui-react/toolbar/new-toolbars/ToolGroup.js.map +1 -1
  407. package/lib/appui-react/toolbar/new-toolbars/useOverflow.d.ts.map +1 -1
  408. package/lib/appui-react/toolbar/useDefaultToolbarItems.js +1 -1
  409. package/lib/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  410. package/lib/appui-react/toolbar/useUiItemsProviderToolbarItems.js +1 -1
  411. package/lib/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  412. package/lib/appui-react/tools/CoreToolDefinitions.js +2 -2
  413. package/lib/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  414. package/lib/appui-react/tools/KeyinPaletteTools.d.ts +1 -1
  415. package/lib/appui-react/tools/OpenSettingsTool.d.ts +1 -1
  416. package/lib/appui-react/tools/RestoreLayoutTool.d.ts +2 -2
  417. package/lib/appui-react/tools/ToolbarItems.js +1 -1
  418. package/lib/appui-react/tools/ToolbarItems.js.map +1 -1
  419. package/lib/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts.map +1 -1
  420. package/lib/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -3
  421. package/lib/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  422. package/lib/appui-react/toolsettings/InternalToolSettingsManager.js +2 -2
  423. package/lib/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  424. package/lib/appui-react/toolsettings/ToolInformation.js +1 -1
  425. package/lib/appui-react/toolsettings/ToolInformation.js.map +1 -1
  426. package/lib/appui-react/toolsettings/ToolUiProvider.js +1 -1
  427. package/lib/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  428. package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +5 -5
  429. package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.js +1 -1
  430. package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  431. package/lib/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
  432. package/lib/appui-react/ui-items-provider/StandardContentToolsProvider.js +4 -4
  433. package/lib/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  434. package/lib/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  435. package/lib/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +3 -3
  436. package/lib/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  437. package/lib/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  438. package/lib/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -3
  439. package/lib/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  440. package/lib/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  441. package/lib/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -1
  442. package/lib/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  443. package/lib/appui-react/ui-items-provider/UiItemsManager.js +3 -3
  444. package/lib/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  445. package/lib/appui-react/uiadmin/FrameworkUiAdmin.js +3 -3
  446. package/lib/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  447. package/lib/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  448. package/lib/appui-react/uistate/AppUiSettings.js +2 -2
  449. package/lib/appui-react/uistate/AppUiSettings.js.map +1 -1
  450. package/lib/appui-react/uistate/LocalStateStorage.js +1 -1
  451. package/lib/appui-react/uistate/LocalStateStorage.js.map +1 -1
  452. package/lib/appui-react/uistate/UiStateStorage.js +1 -1
  453. package/lib/appui-react/uistate/UiStateStorage.js.map +1 -1
  454. package/lib/appui-react/uistate/useReduxFrameworkState.js +1 -1
  455. package/lib/appui-react/uistate/useReduxFrameworkState.js.map +1 -1
  456. package/lib/appui-react/uistate/useUiStateStorage.js +1 -1
  457. package/lib/appui-react/uistate/useUiStateStorage.js.map +1 -1
  458. package/lib/appui-react/utils/PropsHelper.js +5 -5
  459. package/lib/appui-react/utils/PropsHelper.js.map +1 -1
  460. package/lib/appui-react/utils/RectangleProps.js.map +1 -1
  461. package/lib/appui-react/utils/SizeProps.js.map +1 -1
  462. package/lib/appui-react/utils/ViewUtilities.d.ts.map +1 -1
  463. package/lib/appui-react/utils/ViewUtilities.js.map +1 -1
  464. package/lib/appui-react/utils/getActiveViewport.js +1 -1
  465. package/lib/appui-react/utils/getActiveViewport.js.map +1 -1
  466. package/lib/appui-react/widget-panels/DockedBar.js.map +1 -1
  467. package/lib/appui-react/widget-panels/Frontstage.js +7 -7
  468. package/lib/appui-react/widget-panels/Frontstage.js.map +1 -1
  469. package/lib/appui-react/widget-panels/StatusBar.js +5 -5
  470. package/lib/appui-react/widget-panels/StatusBar.js.map +1 -1
  471. package/lib/appui-react/widget-panels/Tab.js +4 -4
  472. package/lib/appui-react/widget-panels/Tab.js.map +1 -1
  473. package/lib/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  474. package/lib/appui-react/widget-panels/ToolSettings.js +8 -5
  475. package/lib/appui-react/widget-panels/ToolSettings.js.map +1 -1
  476. package/lib/appui-react/widgets/BackstageAppButton.js +2 -2
  477. package/lib/appui-react/widgets/BackstageAppButton.js.map +1 -1
  478. package/lib/appui-react/widgets/BasicNavigationWidget.js +1 -1
  479. package/lib/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  480. package/lib/appui-react/widgets/BasicToolWidget.js +1 -1
  481. package/lib/appui-react/widgets/BasicToolWidget.js.map +1 -1
  482. package/lib/appui-react/widgets/ContentToolWidgetComposer.js +1 -1
  483. package/lib/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  484. package/lib/appui-react/widgets/NavigationWidgetComposer.js +10 -10
  485. package/lib/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  486. package/lib/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  487. package/lib/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  488. package/lib/appui-react/widgets/ToolWidgetComposer.js +1 -1
  489. package/lib/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  490. package/lib/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
  491. package/lib/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  492. package/lib/appui-react/widgets/Widget.js.map +1 -1
  493. package/lib/appui-react/widgets/WidgetControl.js +1 -1
  494. package/lib/appui-react/widgets/WidgetControl.js.map +1 -1
  495. package/lib/appui-react/widgets/WidgetDef.js +21 -21
  496. package/lib/appui-react/widgets/WidgetDef.js.map +1 -1
  497. package/lib/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  498. package/lib/appui-react/widgets/useWidget.d.ts.map +1 -1
  499. package/lib/appui-react.js +1 -1
  500. package/lib/appui-react.js.map +1 -1
  501. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +0 -15
  502. package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +0 -15
  503. package/package.json +17 -17
  504. package/lib/appui-react/layout/widget/tools/button/Back.d.ts +0 -21
  505. package/lib/appui-react/layout/widget/tools/button/Back.d.ts.map +0 -1
  506. package/lib/appui-react/layout/widget/tools/button/Back.js +0 -23
  507. package/lib/appui-react/layout/widget/tools/button/Back.js.map +0 -1
  508. package/lib/appui-react/preview/allow-letters-in-accudraw-input-fields/useAllowLettersInAccuDrawInputFields.d.ts +0 -5
  509. package/lib/appui-react/preview/allow-letters-in-accudraw-input-fields/useAllowLettersInAccuDrawInputFields.d.ts.map +0 -1
  510. package/lib/appui-react/preview/allow-letters-in-accudraw-input-fields/useAllowLettersInAccuDrawInputFields.js.map +0 -1
  511. package/lib/appui-react/preview/enable-colorless-accudraw-input-fields/useEnableColorlessAccuDrawInputFields.d.ts +0 -5
  512. package/lib/appui-react/preview/enable-colorless-accudraw-input-fields/useEnableColorlessAccuDrawInputFields.d.ts.map +0 -1
  513. package/lib/appui-react/preview/enable-colorless-accudraw-input-fields/useEnableColorlessAccuDrawInputFields.js +0 -13
  514. package/lib/appui-react/preview/enable-colorless-accudraw-input-fields/useEnableColorlessAccuDrawInputFields.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DialogManagerBase.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/DialogManagerBase.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 \"./DialogManagerBase.scss\";\nimport * as React from \"react\";\nimport type { BeUiEvent } from \"@itwin/core-bentley\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { ListenerType } from \"@itwin/core-react/internal\";\nimport { getCssVariableAsNumber } from \"@itwin/core-react\";\nimport { ThemeProvider } from \"@itwin/itwinui-react\";\n\n/** Dialog Stack Changed Event Args class.\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface DialogChangedEventArgs {\n dialogCount: number;\n activeDialog: React.ReactNode | undefined;\n}\n\n/** Dialog Changed Event class.\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class DialogChangedEvent extends UiEvent<DialogChangedEventArgs> {}\n\n/** Information maintained by a Dialog Manager about a dialog\n * @public\n */\nexport interface DialogInfo {\n reactNode: React.ReactNode;\n id: string;\n parentDocument: Document;\n}\n\n/** Used if the 'dialog' z-index CSS variable cannot be read */\nconst ZINDEX_DEFAULT = 12000;\n\n/** Dialog Manager class.\n * @internal\n */\nexport class DialogManagerBase {\n private static _sId = 0;\n private _dialogs: DialogInfo[] = new Array<DialogInfo>();\n // eslint-disable-next-line deprecation/deprecation\n private _onDialogChangedEvent: BeUiEvent<DialogChangedEventArgs>;\n private static _topZIndex = ZINDEX_DEFAULT;\n\n // eslint-disable-next-line deprecation/deprecation\n constructor(onDialogChangedEvent: BeUiEvent<DialogChangedEventArgs>) {\n this._onDialogChangedEvent = onDialogChangedEvent;\n }\n\n /** Initialize the modeless dialog manager */\n public static initialize(): void {\n DialogManagerBase._topZIndex = DialogManagerBase.getDialogZIndexDefault();\n }\n\n public static get topZIndex(): number {\n return DialogManagerBase._topZIndex;\n }\n\n public static set topZIndex(zIndex: number) {\n DialogManagerBase._topZIndex = zIndex;\n }\n public get dialogs() {\n return this._dialogs;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n public get onDialogChangedEvent(): BeUiEvent<DialogChangedEventArgs> {\n return this._onDialogChangedEvent;\n }\n\n public static getDialogZIndexDefault(): number {\n const variable = \"--uicore-z-index-dialog\";\n // eslint-disable-next-line deprecation/deprecation\n const value = getCssVariableAsNumber(variable);\n\n if (!isNaN(value)) return value;\n\n Logger.logError(\n UiFramework.loggerCategory(\"DialogManagerBase\"),\n `'${variable}' CSS variable not found`\n );\n return ZINDEX_DEFAULT;\n }\n\n /**\n * Triggers opening a dialog.\n * @param dialog Dialog React component.\n * @param id The unique Id the identifies the dialog.\n * @param parentDocument Optional document required when displaying a dialog in a child popup window.\n */\n public openDialog(\n dialog: React.ReactNode,\n id?: string,\n parentDocument?: Document\n ): void {\n if (!id) id = `Dialog-${++DialogManagerBase._sId}`;\n\n const owningDoc = parentDocument ?? document;\n this.pushDialog({ reactNode: dialog, id, parentDocument: owningDoc });\n }\n\n /** @internal */\n public pushDialog(dialogInfo: DialogInfo): void {\n this._dialogs.push(dialogInfo);\n this.emitDialogChangedEvent();\n }\n\n public closeDialog(dialog?: React.ReactNode): void {\n let targetDialog = dialog;\n if (!dialog) targetDialog = this.activeDialog;\n\n this.removeDialog(targetDialog);\n this.emitDialogChangedEvent();\n }\n\n /** @internal */\n public closeAll(): void {\n this._dialogs = [];\n this.emitDialogChangedEvent();\n }\n\n /** @internal */\n public removeDialog(dialog: React.ReactNode): void {\n const index = this._dialogs.findIndex((dialogInfo: DialogInfo) => {\n return dialog === dialogInfo.reactNode;\n });\n if (index >= 0) this._dialogs.splice(index, 1);\n if (this._dialogs.length < 1)\n DialogManagerBase.topZIndex = DialogManagerBase.getDialogZIndexDefault();\n }\n\n public emitDialogChangedEvent(): void {\n this._onDialogChangedEvent.emit({\n dialogCount: this.dialogCount,\n activeDialog: this.activeDialog,\n });\n }\n\n public update(): void {\n this.emitDialogChangedEvent();\n }\n\n public get activeDialog(): React.ReactNode | undefined {\n if (this._dialogs.length > 0)\n return this._dialogs[this._dialogs.length - 1].reactNode;\n\n return undefined;\n }\n\n public get dialogCount(): number {\n return this._dialogs.length;\n }\n}\n\n/** Properties for the [[DialogRendererBase]] component\n * @internal\n */\nexport interface DialogRendererProps {\n dialogManager: DialogManagerBase;\n style?: React.CSSProperties;\n}\n\ninterface DialogRendererState {\n parentDocument: Document | undefined;\n renderer: HTMLElement | undefined;\n}\n/** DialogRenderer React component.\n * @internal\n */\nexport class DialogRendererBase extends React.PureComponent<\n DialogRendererProps,\n DialogRendererState\n> {\n public override readonly state: DialogRendererState = {\n parentDocument: undefined,\n renderer: undefined,\n };\n\n private _handleRefSet = (el: HTMLElement | null) => {\n this.setState({\n parentDocument: el?.ownerDocument ?? undefined,\n renderer: el ?? undefined,\n });\n };\n\n public override render(): React.ReactNode {\n if (this.props.dialogManager.dialogCount <= 0) return null;\n\n return (\n <div\n className=\"uifw-dialog-dialogManagerBase_renderer\"\n ref={this._handleRefSet}\n >\n <ThemeProvider portalContainer={this.state.renderer}>\n {this.state.parentDocument &&\n this.props.dialogManager.dialogs\n .filter(\n (info) => info.parentDocument === this.state.parentDocument\n )\n .map((info) => {\n return (\n <React.Fragment key={info.id}>\n {info.reactNode}\n </React.Fragment>\n );\n })}\n </ThemeProvider>\n </div>\n );\n }\n\n public override componentDidMount(): void {\n this.props.dialogManager.onDialogChangedEvent.addListener(\n this._handleDialogChangedEvent\n );\n }\n\n public override componentWillUnmount(): void {\n this.props.dialogManager.onDialogChangedEvent.removeListener(\n this._handleDialogChangedEvent\n );\n }\n\n private _handleDialogChangedEvent: ListenerType<\n DialogManagerBase[\"onDialogChangedEvent\"]\n > = () => {\n this.forceUpdate();\n };\n}\n"]}
1
+ {"version":3,"file":"DialogManagerBase.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/DialogManagerBase.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 \"./DialogManagerBase.scss\";\nimport * as React from \"react\";\nimport type { BeUiEvent } from \"@itwin/core-bentley\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { ListenerType } from \"@itwin/core-react/internal\";\nimport { getCssVariableAsNumber } from \"@itwin/core-react\";\nimport { ThemeProvider } from \"@itwin/itwinui-react\";\n\n/** Dialog Stack Changed Event Args class.\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface DialogChangedEventArgs {\n dialogCount: number;\n activeDialog: React.ReactNode | undefined;\n}\n\n/** Dialog Changed Event class.\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class DialogChangedEvent extends UiEvent<DialogChangedEventArgs> {}\n\n/** Information maintained by a Dialog Manager about a dialog\n * @public\n */\nexport interface DialogInfo {\n reactNode: React.ReactNode;\n id: string;\n parentDocument: Document;\n}\n\n/** Used if the 'dialog' z-index CSS variable cannot be read */\nconst ZINDEX_DEFAULT = 12000;\n\n/** Dialog Manager class.\n * @internal\n */\nexport class DialogManagerBase {\n private static _sId = 0;\n private _dialogs: DialogInfo[] = new Array<DialogInfo>();\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _onDialogChangedEvent: BeUiEvent<DialogChangedEventArgs>;\n private static _topZIndex = ZINDEX_DEFAULT;\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n constructor(onDialogChangedEvent: BeUiEvent<DialogChangedEventArgs>) {\n this._onDialogChangedEvent = onDialogChangedEvent;\n }\n\n /** Initialize the modeless dialog manager */\n public static initialize(): void {\n DialogManagerBase._topZIndex = DialogManagerBase.getDialogZIndexDefault();\n }\n\n public static get topZIndex(): number {\n return DialogManagerBase._topZIndex;\n }\n\n public static set topZIndex(zIndex: number) {\n DialogManagerBase._topZIndex = zIndex;\n }\n public get dialogs() {\n return this._dialogs;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public get onDialogChangedEvent(): BeUiEvent<DialogChangedEventArgs> {\n return this._onDialogChangedEvent;\n }\n\n public static getDialogZIndexDefault(): number {\n const variable = \"--uicore-z-index-dialog\";\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n const value = getCssVariableAsNumber(variable);\n\n if (!isNaN(value)) return value;\n\n Logger.logError(\n UiFramework.loggerCategory(\"DialogManagerBase\"),\n `'${variable}' CSS variable not found`\n );\n return ZINDEX_DEFAULT;\n }\n\n /**\n * Triggers opening a dialog.\n * @param dialog Dialog React component.\n * @param id The unique Id the identifies the dialog.\n * @param parentDocument Optional document required when displaying a dialog in a child popup window.\n */\n public openDialog(\n dialog: React.ReactNode,\n id?: string,\n parentDocument?: Document\n ): void {\n if (!id) id = `Dialog-${++DialogManagerBase._sId}`;\n\n const owningDoc = parentDocument ?? document;\n this.pushDialog({ reactNode: dialog, id, parentDocument: owningDoc });\n }\n\n /** @internal */\n public pushDialog(dialogInfo: DialogInfo): void {\n this._dialogs.push(dialogInfo);\n this.emitDialogChangedEvent();\n }\n\n public closeDialog(dialog?: React.ReactNode): void {\n let targetDialog = dialog;\n if (!dialog) targetDialog = this.activeDialog;\n\n this.removeDialog(targetDialog);\n this.emitDialogChangedEvent();\n }\n\n /** @internal */\n public closeAll(): void {\n this._dialogs = [];\n this.emitDialogChangedEvent();\n }\n\n /** @internal */\n public removeDialog(dialog: React.ReactNode): void {\n const index = this._dialogs.findIndex((dialogInfo: DialogInfo) => {\n return dialog === dialogInfo.reactNode;\n });\n if (index >= 0) this._dialogs.splice(index, 1);\n if (this._dialogs.length < 1)\n DialogManagerBase.topZIndex = DialogManagerBase.getDialogZIndexDefault();\n }\n\n public emitDialogChangedEvent(): void {\n this._onDialogChangedEvent.emit({\n dialogCount: this.dialogCount,\n activeDialog: this.activeDialog,\n });\n }\n\n public update(): void {\n this.emitDialogChangedEvent();\n }\n\n public get activeDialog(): React.ReactNode | undefined {\n if (this._dialogs.length > 0)\n return this._dialogs[this._dialogs.length - 1].reactNode;\n\n return undefined;\n }\n\n public get dialogCount(): number {\n return this._dialogs.length;\n }\n}\n\n/** Properties for the [[DialogRendererBase]] component\n * @internal\n */\nexport interface DialogRendererProps {\n dialogManager: DialogManagerBase;\n style?: React.CSSProperties;\n}\n\ninterface DialogRendererState {\n parentDocument: Document | undefined;\n renderer: HTMLElement | undefined;\n}\n/** DialogRenderer React component.\n * @internal\n */\nexport class DialogRendererBase extends React.PureComponent<\n DialogRendererProps,\n DialogRendererState\n> {\n public override readonly state: DialogRendererState = {\n parentDocument: undefined,\n renderer: undefined,\n };\n\n private _handleRefSet = (el: HTMLElement | null) => {\n this.setState({\n parentDocument: el?.ownerDocument ?? undefined,\n renderer: el ?? undefined,\n });\n };\n\n public override render(): React.ReactNode {\n if (this.props.dialogManager.dialogCount <= 0) return null;\n\n return (\n <div\n className=\"uifw-dialog-dialogManagerBase_renderer\"\n ref={this._handleRefSet}\n >\n <ThemeProvider portalContainer={this.state.renderer}>\n {this.state.parentDocument &&\n this.props.dialogManager.dialogs\n .filter(\n (info) => info.parentDocument === this.state.parentDocument\n )\n .map((info) => {\n return (\n <React.Fragment key={info.id}>\n {info.reactNode}\n </React.Fragment>\n );\n })}\n </ThemeProvider>\n </div>\n );\n }\n\n public override componentDidMount(): void {\n this.props.dialogManager.onDialogChangedEvent.addListener(\n this._handleDialogChangedEvent\n );\n }\n\n public override componentWillUnmount(): void {\n this.props.dialogManager.onDialogChangedEvent.removeListener(\n this._handleDialogChangedEvent\n );\n }\n\n private _handleDialogChangedEvent: ListenerType<\n DialogManagerBase[\"onDialogChangedEvent\"]\n > = () => {\n this.forceUpdate();\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"InternalContentDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalContentDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAGxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAO1E;;GAEG;AACH,qBAAa,4BAA4B;IACvC,mCAAmC;IACnC,gBAAuB,2BAA2B,oCACR;IAE1C,gBAAgB;IAChB,gBAAuB,aAAa,EAAE,iBAAiB,CAGnD;IAEJ,wCAAwC;IACxC,WAAkB,OAAO,kDAExB;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,CAAwC;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAE9C,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAE1D;;OAEG;WACW,UAAU,IAAI,IAAI;IAKhC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAcrC;;;OAGG;WACW,IAAI,CAChB,MAAM,EAAE,KAAK,CAAC,SAAS,EACvB,EAAE,EAAE,MAAM,EACV,cAAc,WAAW,GACxB,IAAI;IA+BP;;OAEG;WACW,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAuBrC,gBAAgB;WACF,QAAQ,IAAI,IAAI;IAQ9B,yBAAyB;WACX,MAAM,IAAI,IAAI;IAI5B,qCAAqC;IACrC,WAAkB,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS,CAWtD;IAED,wCAAwC;IACxC,WAAkB,KAAK,IAAI,MAAM,CAEhC;IAED,uDAAuD;WACzC,sBAAsB,CAClC,MAAM,EAAE,KAAK,CAAC,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI;IAmBP,4CAA4C;WAC9B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;WAO7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;CAGjE"}
1
+ {"version":3,"file":"InternalContentDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalContentDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAGxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAK1E;;GAEG;AACH,qBAAa,4BAA4B;IACvC,mCAAmC;IACnC,gBAAuB,2BAA2B,oCACR;IAE1C,gBAAgB;IAChB,gBAAuB,aAAa,EAAE,iBAAiB,CAGnD;IAEJ,wCAAwC;IACxC,WAAkB,OAAO,kDAExB;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,CAAwC;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAE9C,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAE1D;;OAEG;WACW,UAAU,IAAI,IAAI;IAKhC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAcrC;;;OAGG;WACW,IAAI,CAChB,MAAM,EAAE,KAAK,CAAC,SAAS,EACvB,EAAE,EAAE,MAAM,EACV,cAAc,WAAW,GACxB,IAAI;IA+BP;;OAEG;WACW,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAuBrC,gBAAgB;WACF,QAAQ,IAAI,IAAI;IAQ9B,yBAAyB;WACX,MAAM,IAAI,IAAI;IAI5B,qCAAqC;IACrC,WAAkB,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS,CAWtD;IAED,wCAAwC;IACxC,WAAkB,KAAK,IAAI,MAAM,CAEhC;IAED,uDAAuD;WACzC,sBAAsB,CAClC,MAAM,EAAE,KAAK,CAAC,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI;IAmBP,4CAA4C;WAC9B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;WAO7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;CAGjE"}
@@ -10,7 +10,6 @@ import { getCssVariableAsNumber } from "@itwin/core-react";
10
10
  import { UiFramework } from "../UiFramework.js";
11
11
  import { DialogManagerBase } from "./DialogManagerBase.js";
12
12
  import { IModelApp, NotifyMessageDetails, OutputMessagePriority, OutputMessageType, } from "@itwin/core-frontend";
13
- // cSpell:ignore ZINDEX modeless
14
13
  /** Used if the 'dialog' z-index CSS variable cannot be read */
15
14
  const CONTENT_DIALOG_ZINDEX_DEFAULT = 2000;
16
15
  /** Content Dialog Manager class displays and manages multiple modeless dialogs
@@ -30,7 +29,7 @@ export class InternalContentDialogManager {
30
29
  }
31
30
  static getDialogZIndexDefault() {
32
31
  const variable = "--uicore-z-index-view-content-dialog";
33
- // eslint-disable-next-line deprecation/deprecation
32
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
34
33
  const value = getCssVariableAsNumber(variable);
35
34
  if (!isNaN(value))
36
35
  return value;
@@ -128,7 +127,7 @@ export class InternalContentDialogManager {
128
127
  }
129
128
  }
130
129
  /** Content Dialog Changed Event */
131
- InternalContentDialogManager.onContentDialogChangedEvent = new BeUiEvent(); // eslint-disable-line deprecation/deprecation
130
+ InternalContentDialogManager.onContentDialogChangedEvent = new BeUiEvent(); // eslint-disable-line @typescript-eslint/no-deprecated
132
131
  /** @internal */
133
132
  InternalContentDialogManager.dialogManager = new DialogManagerBase(InternalContentDialogManager.onContentDialogChangedEvent);
134
133
  InternalContentDialogManager._dialogMap = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"InternalContentDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalContentDialogManager.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 type * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { getCssVariableAsNumber } from \"@itwin/core-react\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport {\n IModelApp,\n NotifyMessageDetails,\n OutputMessagePriority,\n OutputMessageType,\n} from \"@itwin/core-frontend\";\nimport type { ContentDialogInfo } from \"../framework/FrameworkContent.js\";\n\n// cSpell:ignore ZINDEX modeless\n\n/** Used if the 'dialog' z-index CSS variable cannot be read */\nconst CONTENT_DIALOG_ZINDEX_DEFAULT = 2000;\n\n/** Content Dialog Manager class displays and manages multiple modeless dialogs\n * @internal\n */\nexport class InternalContentDialogManager {\n /** Content Dialog Changed Event */\n public static readonly onContentDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(\n InternalContentDialogManager.onContentDialogChangedEvent\n );\n\n /** Get the array of modeless dialogs */\n public static get dialogs() {\n return InternalContentDialogManager.dialogManager.dialogs;\n }\n\n private static _dialogMap = new Map<string, ContentDialogInfo>();\n private static _idArray = new Array<string>();\n\n private static _topZIndex = CONTENT_DIALOG_ZINDEX_DEFAULT;\n\n /** Initialize the modeless dialog manager.\n * @internal\n */\n public static initialize(): void {\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n }\n\n private static getDialogZIndexDefault(): number {\n const variable = \"--uicore-z-index-view-content-dialog\";\n // eslint-disable-next-line deprecation/deprecation\n const value = getCssVariableAsNumber(variable);\n\n if (!isNaN(value)) return value;\n\n Logger.logError(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `'${variable}' CSS variable not found`\n );\n return CONTENT_DIALOG_ZINDEX_DEFAULT;\n }\n\n /** Open a modeless dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog to open\n */\n public static open(\n dialog: React.ReactNode,\n id: string,\n parentDocument = document\n ): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n const message = `Dialog with id of '${id}' already opened`;\n Logger.logInfo(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `openDialog: ${message}`\n );\n IModelApp.notifications.outputMessage(\n new NotifyMessageDetails(\n OutputMessagePriority.Info,\n message,\n undefined,\n OutputMessageType.Toast\n )\n );\n return;\n }\n InternalContentDialogManager._dialogMap.set(id, {\n reactNode: dialog,\n zIndex: ++InternalContentDialogManager._topZIndex,\n parentDocument,\n });\n InternalContentDialogManager._idArray.push(id);\n InternalContentDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modeless dialog\n * @param id The id of the Dialog to close.\n */\n public static close(id: string): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n InternalContentDialogManager.dialogManager.removeDialog(\n dialogInfo.reactNode\n );\n InternalContentDialogManager._dialogMap.delete(id);\n const index = InternalContentDialogManager._idArray.indexOf(id);\n if (index >= 0) InternalContentDialogManager._idArray.splice(index, 1);\n\n if (InternalContentDialogManager.active === undefined)\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n\n this.update();\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `closeDialog: Could not find dialog with id of '${id}'`\n );\n }\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalContentDialogManager.dialogManager.closeAll();\n InternalContentDialogManager._dialogMap.clear();\n InternalContentDialogManager._idArray = [];\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalContentDialogManager.dialogManager.update();\n }\n\n /** Get the active modeless dialog */\n public static get active(): React.ReactNode | undefined {\n if (InternalContentDialogManager._idArray.length > 0) {\n const id =\n InternalContentDialogManager._idArray[\n InternalContentDialogManager._idArray.length - 1\n ];\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) return dialogInfo.reactNode;\n }\n\n return undefined;\n }\n\n /** Get the count of modeless dialogs */\n public static get count(): number {\n return InternalContentDialogManager.dialogManager.dialogCount;\n }\n\n /** Handle a pointer down event on a modeless dialog */\n public static handlePointerDownEvent(\n _event: React.PointerEvent,\n id: string,\n updateFunc: () => void\n ): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (\n dialogInfo &&\n dialogInfo.reactNode !== InternalContentDialogManager.active\n ) {\n dialogInfo.zIndex = ++InternalContentDialogManager._topZIndex;\n\n InternalContentDialogManager._idArray.splice(\n InternalContentDialogManager._idArray.indexOf(id),\n 1\n );\n InternalContentDialogManager._idArray.push(id);\n\n updateFunc();\n this.update();\n }\n }\n\n /** Get the z-index for a modeless dialog */\n public static getZIndex(id: string): number {\n let zIndex = InternalContentDialogManager.getDialogZIndexDefault();\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) zIndex = dialogInfo.zIndex;\n return zIndex;\n }\n\n public static getInfo(id: string): ContentDialogInfo | undefined {\n return InternalContentDialogManager._dialogMap.get(id);\n }\n}\n"]}
1
+ {"version":3,"file":"InternalContentDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalContentDialogManager.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 type * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { getCssVariableAsNumber } from \"@itwin/core-react\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport {\n IModelApp,\n NotifyMessageDetails,\n OutputMessagePriority,\n OutputMessageType,\n} from \"@itwin/core-frontend\";\nimport type { ContentDialogInfo } from \"../framework/FrameworkContent.js\";\n\n/** Used if the 'dialog' z-index CSS variable cannot be read */\nconst CONTENT_DIALOG_ZINDEX_DEFAULT = 2000;\n\n/** Content Dialog Manager class displays and manages multiple modeless dialogs\n * @internal\n */\nexport class InternalContentDialogManager {\n /** Content Dialog Changed Event */\n public static readonly onContentDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line @typescript-eslint/no-deprecated\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(\n InternalContentDialogManager.onContentDialogChangedEvent\n );\n\n /** Get the array of modeless dialogs */\n public static get dialogs() {\n return InternalContentDialogManager.dialogManager.dialogs;\n }\n\n private static _dialogMap = new Map<string, ContentDialogInfo>();\n private static _idArray = new Array<string>();\n\n private static _topZIndex = CONTENT_DIALOG_ZINDEX_DEFAULT;\n\n /** Initialize the modeless dialog manager.\n * @internal\n */\n public static initialize(): void {\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n }\n\n private static getDialogZIndexDefault(): number {\n const variable = \"--uicore-z-index-view-content-dialog\";\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n const value = getCssVariableAsNumber(variable);\n\n if (!isNaN(value)) return value;\n\n Logger.logError(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `'${variable}' CSS variable not found`\n );\n return CONTENT_DIALOG_ZINDEX_DEFAULT;\n }\n\n /** Open a modeless dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog to open\n */\n public static open(\n dialog: React.ReactNode,\n id: string,\n parentDocument = document\n ): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n const message = `Dialog with id of '${id}' already opened`;\n Logger.logInfo(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `openDialog: ${message}`\n );\n IModelApp.notifications.outputMessage(\n new NotifyMessageDetails(\n OutputMessagePriority.Info,\n message,\n undefined,\n OutputMessageType.Toast\n )\n );\n return;\n }\n InternalContentDialogManager._dialogMap.set(id, {\n reactNode: dialog,\n zIndex: ++InternalContentDialogManager._topZIndex,\n parentDocument,\n });\n InternalContentDialogManager._idArray.push(id);\n InternalContentDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modeless dialog\n * @param id The id of the Dialog to close.\n */\n public static close(id: string): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n InternalContentDialogManager.dialogManager.removeDialog(\n dialogInfo.reactNode\n );\n InternalContentDialogManager._dialogMap.delete(id);\n const index = InternalContentDialogManager._idArray.indexOf(id);\n if (index >= 0) InternalContentDialogManager._idArray.splice(index, 1);\n\n if (InternalContentDialogManager.active === undefined)\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n\n this.update();\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"InternalContentDialogManager\"),\n `closeDialog: Could not find dialog with id of '${id}'`\n );\n }\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalContentDialogManager.dialogManager.closeAll();\n InternalContentDialogManager._dialogMap.clear();\n InternalContentDialogManager._idArray = [];\n InternalContentDialogManager._topZIndex =\n InternalContentDialogManager.getDialogZIndexDefault();\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalContentDialogManager.dialogManager.update();\n }\n\n /** Get the active modeless dialog */\n public static get active(): React.ReactNode | undefined {\n if (InternalContentDialogManager._idArray.length > 0) {\n const id =\n InternalContentDialogManager._idArray[\n InternalContentDialogManager._idArray.length - 1\n ];\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) return dialogInfo.reactNode;\n }\n\n return undefined;\n }\n\n /** Get the count of modeless dialogs */\n public static get count(): number {\n return InternalContentDialogManager.dialogManager.dialogCount;\n }\n\n /** Handle a pointer down event on a modeless dialog */\n public static handlePointerDownEvent(\n _event: React.PointerEvent,\n id: string,\n updateFunc: () => void\n ): void {\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (\n dialogInfo &&\n dialogInfo.reactNode !== InternalContentDialogManager.active\n ) {\n dialogInfo.zIndex = ++InternalContentDialogManager._topZIndex;\n\n InternalContentDialogManager._idArray.splice(\n InternalContentDialogManager._idArray.indexOf(id),\n 1\n );\n InternalContentDialogManager._idArray.push(id);\n\n updateFunc();\n this.update();\n }\n }\n\n /** Get the z-index for a modeless dialog */\n public static getZIndex(id: string): number {\n let zIndex = InternalContentDialogManager.getDialogZIndexDefault();\n const dialogInfo = InternalContentDialogManager._dialogMap.get(id);\n if (dialogInfo) zIndex = dialogInfo.zIndex;\n return zIndex;\n }\n\n public static getInfo(id: string): ContentDialogInfo | undefined {\n return InternalContentDialogManager._dialogMap.get(id);\n }\n}\n"]}
@@ -47,7 +47,7 @@ export class InternalModalDialogManager {
47
47
  }
48
48
  }
49
49
  /** Modal Dialog Changed Event */
50
- InternalModalDialogManager.onModalDialogChangedEvent = new BeUiEvent(); // eslint-disable-line deprecation/deprecation
50
+ InternalModalDialogManager.onModalDialogChangedEvent = new BeUiEvent(); // eslint-disable-line @typescript-eslint/no-deprecated
51
51
  /** @internal */
52
52
  InternalModalDialogManager.dialogManager = new DialogManagerBase(InternalModalDialogManager.onModalDialogChangedEvent);
53
53
  //# sourceMappingURL=InternalModalDialogManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InternalModalDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModalDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IASrC,qCAAqC;IAC9B,MAAM,KAAK,OAAO;QACvB,OAAO,0BAA0B,CAAC,aAAa,CAAC,OAAO,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,IAAI,CAChB,MAAuB,EACvB,EAAW,EACX,cAAc,GAAG,QAAQ;QAEzB,0BAA0B,CAAC,aAAa,CAAC,UAAU,CACjD,MAAM,EACN,EAAE,EACF,cAAc,CACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,MAAwB;QAC1C,0BAA0B,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,QAAQ;QACpB,0BAA0B,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACtD,CAAC;IAED,yBAAyB;IAClB,MAAM,CAAC,MAAM;QAClB,0BAA0B,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IACpD,CAAC;IAED,kCAAkC;IAC3B,MAAM,KAAK,MAAM;QACtB,OAAO,0BAA0B,CAAC,aAAa,CAAC,YAAY,CAAC;IAC/D,CAAC;IAED,qCAAqC;IAC9B,MAAM,KAAK,KAAK;QACrB,OAAO,0BAA0B,CAAC,aAAa,CAAC,WAAW,CAAC;IAC9D,CAAC;;AAvDD,iCAAiC;AACV,oDAAyB,GAC9C,IAAI,SAAS,EAA0B,CAAC,CAAC,8CAA8C;AAEzF,gBAAgB;AACO,wCAAa,GAClC,IAAI,iBAAiB,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,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 Dialog\n */\n\nimport type * as React from \"react\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** Modal Dialog Manager class displays and manages multiple modal dialogs\n * @internal\n */\nexport class InternalModalDialogManager {\n /** Modal Dialog Changed Event */\n public static readonly onModalDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(InternalModalDialogManager.onModalDialogChangedEvent);\n\n /** Get the array of modal dialogs */\n public static get dialogs() {\n return InternalModalDialogManager.dialogManager.dialogs;\n }\n\n /** Open a modal dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog. If one is not provided, an id is generated.\n * @param parentDocument The Document used to determine the owning window.\n */\n public static open(\n dialog: React.ReactNode,\n id?: string,\n parentDocument = document\n ): void {\n InternalModalDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modal dialog\n * @param dialog The Dialog to open. If one is not specified, the active dialog will be closed.\n */\n public static close(dialog?: React.ReactNode): void {\n InternalModalDialogManager.dialogManager.closeDialog(dialog);\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalModalDialogManager.dialogManager.closeAll();\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalModalDialogManager.dialogManager.update();\n }\n\n /** Get the active modal dialog */\n public static get active(): React.ReactNode | undefined {\n return InternalModalDialogManager.dialogManager.activeDialog;\n }\n\n /** Get the count of modal dialogs */\n public static get count(): number {\n return InternalModalDialogManager.dialogManager.dialogCount;\n }\n}\n"]}
1
+ {"version":3,"file":"InternalModalDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModalDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IASrC,qCAAqC;IAC9B,MAAM,KAAK,OAAO;QACvB,OAAO,0BAA0B,CAAC,aAAa,CAAC,OAAO,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,IAAI,CAChB,MAAuB,EACvB,EAAW,EACX,cAAc,GAAG,QAAQ;QAEzB,0BAA0B,CAAC,aAAa,CAAC,UAAU,CACjD,MAAM,EACN,EAAE,EACF,cAAc,CACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,MAAwB;QAC1C,0BAA0B,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,QAAQ;QACpB,0BAA0B,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACtD,CAAC;IAED,yBAAyB;IAClB,MAAM,CAAC,MAAM;QAClB,0BAA0B,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IACpD,CAAC;IAED,kCAAkC;IAC3B,MAAM,KAAK,MAAM;QACtB,OAAO,0BAA0B,CAAC,aAAa,CAAC,YAAY,CAAC;IAC/D,CAAC;IAED,qCAAqC;IAC9B,MAAM,KAAK,KAAK;QACrB,OAAO,0BAA0B,CAAC,aAAa,CAAC,WAAW,CAAC;IAC9D,CAAC;;AAvDD,iCAAiC;AACV,oDAAyB,GAC9C,IAAI,SAAS,EAA0B,CAAC,CAAC,uDAAuD;AAElG,gBAAgB;AACO,wCAAa,GAClC,IAAI,iBAAiB,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,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 Dialog\n */\n\nimport type * as React from \"react\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** Modal Dialog Manager class displays and manages multiple modal dialogs\n * @internal\n */\nexport class InternalModalDialogManager {\n /** Modal Dialog Changed Event */\n public static readonly onModalDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line @typescript-eslint/no-deprecated\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(InternalModalDialogManager.onModalDialogChangedEvent);\n\n /** Get the array of modal dialogs */\n public static get dialogs() {\n return InternalModalDialogManager.dialogManager.dialogs;\n }\n\n /** Open a modal dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog. If one is not provided, an id is generated.\n * @param parentDocument The Document used to determine the owning window.\n */\n public static open(\n dialog: React.ReactNode,\n id?: string,\n parentDocument = document\n ): void {\n InternalModalDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modal dialog\n * @param dialog The Dialog to open. If one is not specified, the active dialog will be closed.\n */\n public static close(dialog?: React.ReactNode): void {\n InternalModalDialogManager.dialogManager.closeDialog(dialog);\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalModalDialogManager.dialogManager.closeAll();\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalModalDialogManager.dialogManager.update();\n }\n\n /** Get the active modal dialog */\n public static get active(): React.ReactNode | undefined {\n return InternalModalDialogManager.dialogManager.activeDialog;\n }\n\n /** Get the count of modal dialogs */\n public static get count(): number {\n return InternalModalDialogManager.dialogManager.dialogCount;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"InternalModelessDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModelessDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAI3E;;GAEG;AACH,qBAAa,6BAA6B;IACxC,oCAAoC;IACpC,gBAAuB,4BAA4B,oCACT;IAE1C,gBAAgB;IAChB,gBAAuB,aAAa,EAAE,iBAAiB,CAGnD;IAEJ,wCAAwC;IACxC,WAAkB,OAAO,kDAExB;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,CAAyC;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAE9C;;OAEG;WACW,UAAU,IAAI,IAAI;IAIhC;;;OAGG;WACW,IAAI,CAChB,MAAM,EAAE,KAAK,CAAC,SAAS,EACvB,EAAE,EAAE,MAAM,EACV,cAAc,WAAW,GACxB,IAAI;IA+BP;;OAEG;WACW,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAuBrC,gBAAgB;WACF,QAAQ,IAAI,IAAI;IAM9B,yBAAyB;WACX,MAAM,IAAI,IAAI;IAI5B,qCAAqC;IACrC,WAAkB,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS,CAWtD;IAED,wCAAwC;IACxC,WAAkB,KAAK,IAAI,MAAM,CAEhC;IAED,uDAAuD;WACzC,sBAAsB,CAClC,MAAM,EAAE,KAAK,CAAC,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI;IAoBP,4CAA4C;WAC9B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;WAO7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;CAGlE"}
1
+ {"version":3,"file":"InternalModelessDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModelessDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAE3E;;GAEG;AACH,qBAAa,6BAA6B;IACxC,oCAAoC;IACpC,gBAAuB,4BAA4B,oCACT;IAE1C,gBAAgB;IAChB,gBAAuB,aAAa,EAAE,iBAAiB,CAGnD;IAEJ,wCAAwC;IACxC,WAAkB,OAAO,kDAExB;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,CAAyC;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAE9C;;OAEG;WACW,UAAU,IAAI,IAAI;IAIhC;;;OAGG;WACW,IAAI,CAChB,MAAM,EAAE,KAAK,CAAC,SAAS,EACvB,EAAE,EAAE,MAAM,EACV,cAAc,WAAW,GACxB,IAAI;IA+BP;;OAEG;WACW,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAuBrC,gBAAgB;WACF,QAAQ,IAAI,IAAI;IAM9B,yBAAyB;WACX,MAAM,IAAI,IAAI;IAI5B,qCAAqC;IACrC,WAAkB,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS,CAWtD;IAED,wCAAwC;IACxC,WAAkB,KAAK,IAAI,MAAM,CAEhC;IAED,uDAAuD;WACzC,sBAAsB,CAClC,MAAM,EAAE,KAAK,CAAC,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI;IAoBP,4CAA4C;WAC9B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;WAO7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;CAGlE"}
@@ -9,7 +9,6 @@ import { BeUiEvent, Logger } from "@itwin/core-bentley";
9
9
  import { UiFramework } from "../UiFramework.js";
10
10
  import { DialogManagerBase } from "./DialogManagerBase.js";
11
11
  import { IModelApp, NotifyMessageDetails, OutputMessagePriority, OutputMessageType, } from "@itwin/core-frontend";
12
- // cSpell:ignore ZINDEX modeless
13
12
  /** Modeless Dialog Manager class displays and manages multiple modeless dialogs
14
13
  * @internal
15
14
  */
@@ -114,7 +113,7 @@ export class InternalModelessDialogManager {
114
113
  }
115
114
  }
116
115
  /** Modeless Dialog Changed Event */
117
- InternalModelessDialogManager.onModelessDialogChangedEvent = new BeUiEvent(); // eslint-disable-line deprecation/deprecation
116
+ InternalModelessDialogManager.onModelessDialogChangedEvent = new BeUiEvent(); // eslint-disable-line @typescript-eslint/no-deprecated
118
117
  /** @internal */
119
118
  InternalModelessDialogManager.dialogManager = new DialogManagerBase(InternalModelessDialogManager.onModelessDialogChangedEvent);
120
119
  InternalModelessDialogManager._dialogMap = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"InternalModelessDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModelessDialogManager.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 type * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport {\n IModelApp,\n NotifyMessageDetails,\n OutputMessagePriority,\n OutputMessageType,\n} from \"@itwin/core-frontend\";\nimport type { ModelessDialogInfo } from \"../framework/FrameworkDialogs.js\";\n\n// cSpell:ignore ZINDEX modeless\n\n/** Modeless Dialog Manager class displays and manages multiple modeless dialogs\n * @internal\n */\nexport class InternalModelessDialogManager {\n /** Modeless Dialog Changed Event */\n public static readonly onModelessDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(\n InternalModelessDialogManager.onModelessDialogChangedEvent\n );\n\n /** Get the array of modeless dialogs */\n public static get dialogs() {\n return InternalModelessDialogManager.dialogManager.dialogs;\n }\n\n private static _dialogMap = new Map<string, ModelessDialogInfo>();\n private static _idArray = new Array<string>();\n\n /** Initialize the modeless dialog manager\n * @internal\n */\n public static initialize(): void {\n DialogManagerBase.initialize();\n }\n\n /** Open a modeless dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog to open\n */\n public static open(\n dialog: React.ReactNode,\n id: string,\n parentDocument = document\n ): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n const message = `Dialog with id of '${id}' already opened`;\n Logger.logInfo(\n UiFramework.loggerCategory(\"InternalModelessDialogManager\"),\n `openDialog: ${message}`\n );\n IModelApp.notifications.outputMessage(\n new NotifyMessageDetails(\n OutputMessagePriority.Info,\n message,\n undefined,\n OutputMessageType.Toast\n )\n );\n return;\n }\n InternalModelessDialogManager._dialogMap.set(id, {\n reactNode: dialog,\n zIndex: DialogManagerBase.topZIndex,\n parentDocument,\n });\n InternalModelessDialogManager._idArray.push(id);\n InternalModelessDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modeless dialog\n * @param id The id of the Dialog to close.\n */\n public static close(id: string): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n InternalModelessDialogManager.dialogManager.removeDialog(\n dialogInfo.reactNode\n );\n InternalModelessDialogManager._dialogMap.delete(id);\n const index = InternalModelessDialogManager._idArray.indexOf(id);\n if (index >= 0) InternalModelessDialogManager._idArray.splice(index, 1);\n\n if (InternalModelessDialogManager.active === undefined)\n DialogManagerBase.topZIndex =\n DialogManagerBase.getDialogZIndexDefault();\n\n this.update();\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"InternalModelessDialogManager\"),\n `closeDialog: Could not find dialog with id of '${id}'`\n );\n }\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalModelessDialogManager.dialogManager.closeAll();\n InternalModelessDialogManager._dialogMap.clear();\n InternalModelessDialogManager._idArray = [];\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalModelessDialogManager.dialogManager.update();\n }\n\n /** Get the active modeless dialog */\n public static get active(): React.ReactNode | undefined {\n if (InternalModelessDialogManager._idArray.length > 0) {\n const id =\n InternalModelessDialogManager._idArray[\n InternalModelessDialogManager._idArray.length - 1\n ];\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) return dialogInfo.reactNode;\n }\n\n return undefined;\n }\n\n /** Get the count of modeless dialogs */\n public static get count(): number {\n return InternalModelessDialogManager.dialogManager.dialogCount;\n }\n\n /** Handle a pointer down event on a modeless dialog */\n public static handlePointerDownEvent(\n _event: React.PointerEvent,\n id: string,\n updateFunc: () => void\n ): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (\n dialogInfo &&\n dialogInfo.reactNode !== InternalModelessDialogManager.active\n ) {\n DialogManagerBase.topZIndex += 1;\n dialogInfo.zIndex = DialogManagerBase.topZIndex;\n\n InternalModelessDialogManager._idArray.splice(\n InternalModelessDialogManager._idArray.indexOf(id),\n 1\n );\n InternalModelessDialogManager._idArray.push(id);\n\n updateFunc();\n this.update();\n }\n }\n\n /** Get the z-index for a modeless dialog */\n public static getZIndex(id: string): number {\n let zIndex = DialogManagerBase.getDialogZIndexDefault();\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) zIndex = dialogInfo.zIndex;\n return zIndex;\n }\n\n public static getInfo(id: string): ModelessDialogInfo | undefined {\n return InternalModelessDialogManager._dialogMap.get(id);\n }\n}\n"]}
1
+ {"version":3,"file":"InternalModelessDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/InternalModelessDialogManager.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 type * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport type { DialogChangedEventArgs } from \"./DialogManagerBase.js\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport {\n IModelApp,\n NotifyMessageDetails,\n OutputMessagePriority,\n OutputMessageType,\n} from \"@itwin/core-frontend\";\nimport type { ModelessDialogInfo } from \"../framework/FrameworkDialogs.js\";\n\n/** Modeless Dialog Manager class displays and manages multiple modeless dialogs\n * @internal\n */\nexport class InternalModelessDialogManager {\n /** Modeless Dialog Changed Event */\n public static readonly onModelessDialogChangedEvent =\n new BeUiEvent<DialogChangedEventArgs>(); // eslint-disable-line @typescript-eslint/no-deprecated\n\n /** @internal */\n public static readonly dialogManager: DialogManagerBase =\n new DialogManagerBase(\n InternalModelessDialogManager.onModelessDialogChangedEvent\n );\n\n /** Get the array of modeless dialogs */\n public static get dialogs() {\n return InternalModelessDialogManager.dialogManager.dialogs;\n }\n\n private static _dialogMap = new Map<string, ModelessDialogInfo>();\n private static _idArray = new Array<string>();\n\n /** Initialize the modeless dialog manager\n * @internal\n */\n public static initialize(): void {\n DialogManagerBase.initialize();\n }\n\n /** Open a modeless dialog\n * @param dialog The Dialog to open\n * @param id The id of the Dialog to open\n */\n public static open(\n dialog: React.ReactNode,\n id: string,\n parentDocument = document\n ): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n const message = `Dialog with id of '${id}' already opened`;\n Logger.logInfo(\n UiFramework.loggerCategory(\"InternalModelessDialogManager\"),\n `openDialog: ${message}`\n );\n IModelApp.notifications.outputMessage(\n new NotifyMessageDetails(\n OutputMessagePriority.Info,\n message,\n undefined,\n OutputMessageType.Toast\n )\n );\n return;\n }\n InternalModelessDialogManager._dialogMap.set(id, {\n reactNode: dialog,\n zIndex: DialogManagerBase.topZIndex,\n parentDocument,\n });\n InternalModelessDialogManager._idArray.push(id);\n InternalModelessDialogManager.dialogManager.openDialog(\n dialog,\n id,\n parentDocument\n );\n }\n\n /** Close a modeless dialog\n * @param id The id of the Dialog to close.\n */\n public static close(id: string): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) {\n InternalModelessDialogManager.dialogManager.removeDialog(\n dialogInfo.reactNode\n );\n InternalModelessDialogManager._dialogMap.delete(id);\n const index = InternalModelessDialogManager._idArray.indexOf(id);\n if (index >= 0) InternalModelessDialogManager._idArray.splice(index, 1);\n\n if (InternalModelessDialogManager.active === undefined)\n DialogManagerBase.topZIndex =\n DialogManagerBase.getDialogZIndexDefault();\n\n this.update();\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"InternalModelessDialogManager\"),\n `closeDialog: Could not find dialog with id of '${id}'`\n );\n }\n }\n\n /** @internal */\n public static closeAll(): void {\n InternalModelessDialogManager.dialogManager.closeAll();\n InternalModelessDialogManager._dialogMap.clear();\n InternalModelessDialogManager._idArray = [];\n }\n\n /** Update the dialogs */\n public static update(): void {\n InternalModelessDialogManager.dialogManager.update();\n }\n\n /** Get the active modeless dialog */\n public static get active(): React.ReactNode | undefined {\n if (InternalModelessDialogManager._idArray.length > 0) {\n const id =\n InternalModelessDialogManager._idArray[\n InternalModelessDialogManager._idArray.length - 1\n ];\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) return dialogInfo.reactNode;\n }\n\n return undefined;\n }\n\n /** Get the count of modeless dialogs */\n public static get count(): number {\n return InternalModelessDialogManager.dialogManager.dialogCount;\n }\n\n /** Handle a pointer down event on a modeless dialog */\n public static handlePointerDownEvent(\n _event: React.PointerEvent,\n id: string,\n updateFunc: () => void\n ): void {\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (\n dialogInfo &&\n dialogInfo.reactNode !== InternalModelessDialogManager.active\n ) {\n DialogManagerBase.topZIndex += 1;\n dialogInfo.zIndex = DialogManagerBase.topZIndex;\n\n InternalModelessDialogManager._idArray.splice(\n InternalModelessDialogManager._idArray.indexOf(id),\n 1\n );\n InternalModelessDialogManager._idArray.push(id);\n\n updateFunc();\n this.update();\n }\n }\n\n /** Get the z-index for a modeless dialog */\n public static getZIndex(id: string): number {\n let zIndex = DialogManagerBase.getDialogZIndexDefault();\n const dialogInfo = InternalModelessDialogManager._dialogMap.get(id);\n if (dialogInfo) zIndex = dialogInfo.zIndex;\n return zIndex;\n }\n\n public static getInfo(id: string): ModelessDialogInfo | undefined {\n return InternalModelessDialogManager._dialogMap.get(id);\n }\n}\n"]}
@@ -11,9 +11,9 @@ import { InternalModalDialogManager as internal } from "./InternalModalDialogMan
11
11
  /** ModalDialogRenderer React component renders modal dialogs
12
12
  * @public
13
13
  */
14
- // eslint-disable-next-line deprecation/deprecation
14
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
15
15
  export class ModalDialogRenderer extends React.PureComponent {
16
- // eslint-disable-next-line deprecation/deprecation
16
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
17
17
  constructor(props) {
18
18
  super(props);
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModalDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModalDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,0BAA0B,IAAI,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEzF;;GAEG;AACH,mDAAmD;AACnD,MAAM,OAAO,mBAAoB,SAAQ,KAAK,CAAC,aAA0B;IACvE,mDAAmD;IACnD,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,CACL,oBAAC,kBAAkB,OACb,IAAI,CAAC,KAAK,EACd,aAAa,EAAE,QAAQ,CAAC,aAAa,GACrC,CACH,CAAC;IACJ,CAAC;CACF","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 * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { DialogRendererBase } from \"./DialogManagerBase.js\";\nimport { InternalModalDialogManager as internal } from \"./InternalModalDialogManager.js\";\n\n/** ModalDialogRenderer React component renders modal dialogs\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ModalDialogRenderer extends React.PureComponent<CommonProps> {\n // eslint-disable-next-line deprecation/deprecation\n constructor(props: CommonProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n return (\n <DialogRendererBase\n {...this.props}\n dialogManager={internal.dialogManager}\n />\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ModalDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModalDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,0BAA0B,IAAI,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEzF;;GAEG;AACH,4DAA4D;AAC5D,MAAM,OAAO,mBAAoB,SAAQ,KAAK,CAAC,aAA0B;IACvE,4DAA4D;IAC5D,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,CACL,oBAAC,kBAAkB,OACb,IAAI,CAAC,KAAK,EACd,aAAa,EAAE,QAAQ,CAAC,aAAa,GACrC,CACH,CAAC;IACJ,CAAC;CACF","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 * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { DialogRendererBase } from \"./DialogManagerBase.js\";\nimport { InternalModalDialogManager as internal } from \"./InternalModalDialogManager.js\";\n\n/** ModalDialogRenderer React component renders modal dialogs\n * @public\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class ModalDialogRenderer extends React.PureComponent<CommonProps> {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n constructor(props: CommonProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n return (\n <DialogRendererBase\n {...this.props}\n dialogManager={internal.dialogManager}\n />\n );\n }\n}\n"]}
@@ -23,7 +23,7 @@ export class ModelessDialog extends React.Component {
23
23
  render() {
24
24
  const { dialogId, style, modal, modelessId, onModelessPointerDown, ...props } = this.props;
25
25
  return (
26
- // eslint-disable-next-line deprecation/deprecation
26
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
27
27
  React.createElement(Dialog, { ...props, modal: false, modelessId: dialogId, onModelessPointerDown: (event) => UiFramework.dialogs.modeless.handlePointerDownEvent(event, dialogId, this._updateDialog), style: {
28
28
  zIndex: UiFramework.dialogs.modeless.getZIndex(dialogId),
29
29
  ...style,
@@ -1 +1 @@
1
- {"version":3,"file":"ModelessDialog.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialog.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAahD;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAA8B;IACtE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAoCP,kBAAa,GAAG,GAAG,EAAE;YAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC;IArCF,CAAC;IAEe,MAAM;QACpB,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,KAAK,EACL,UAAU,EACV,qBAAqB,EACrB,GAAG,KAAK,EACT,GAAG,IAAI,CAAC,KAAK,CAAC;QAEf,OAAO;QACL,mDAAmD;QACnD,oBAAC,MAAM,OACD,KAAK,EACT,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,QAAQ,EACpB,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/B,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CACjD,KAAK,EACL,QAAQ,EACR,IAAI,CAAC,aAAa,CACnB,EAEH,KAAK,EAAE;gBACL,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACxD,GAAG,KAAK;aACT,IAEA,IAAI,CAAC,KAAK,CAAC,QAAQ,CACb,CACV,CAAC;IACJ,CAAC;CAKF","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 * as React from \"react\";\nimport type { DialogProps } from \"@itwin/core-react\";\nimport { Dialog } from \"@itwin/core-react\";\nimport { UiFramework } from \"../UiFramework.js\";\n\n/* eslint-disable deprecation/deprecation */\n\n/** Properties for the [[ModelessDialog]] component\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link ModelessDialog} component.\n */\nexport interface ModelessDialogProps extends DialogProps {\n dialogId: string;\n movable?: boolean;\n}\n\n/** Modeless Dialog React component uses the Dialog component with a modal={false} prop.\n * It controls the z-index to keep the focused dialog above others.\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\nexport class ModelessDialog extends React.Component<ModelessDialogProps> {\n constructor(props: ModelessDialogProps) {\n super(props);\n }\n\n public override render(): React.ReactElement {\n const {\n dialogId,\n style,\n modal,\n modelessId,\n onModelessPointerDown,\n ...props\n } = this.props;\n\n return (\n // eslint-disable-next-line deprecation/deprecation\n <Dialog\n {...props}\n modal={false}\n modelessId={dialogId}\n onModelessPointerDown={(event) =>\n UiFramework.dialogs.modeless.handlePointerDownEvent(\n event,\n dialogId,\n this._updateDialog\n )\n }\n style={{\n zIndex: UiFramework.dialogs.modeless.getZIndex(dialogId),\n ...style,\n }}\n >\n {this.props.children}\n </Dialog>\n );\n }\n\n private _updateDialog = () => {\n this.forceUpdate();\n };\n}\n"]}
1
+ {"version":3,"file":"ModelessDialog.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialog.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAahD;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAA8B;IACtE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAoCP,kBAAa,GAAG,GAAG,EAAE;YAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC;IArCF,CAAC;IAEe,MAAM;QACpB,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,KAAK,EACL,UAAU,EACV,qBAAqB,EACrB,GAAG,KAAK,EACT,GAAG,IAAI,CAAC,KAAK,CAAC;QAEf,OAAO;QACL,4DAA4D;QAC5D,oBAAC,MAAM,OACD,KAAK,EACT,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,QAAQ,EACpB,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/B,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CACjD,KAAK,EACL,QAAQ,EACR,IAAI,CAAC,aAAa,CACnB,EAEH,KAAK,EAAE;gBACL,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACxD,GAAG,KAAK;aACT,IAEA,IAAI,CAAC,KAAK,CAAC,QAAQ,CACb,CACV,CAAC;IACJ,CAAC;CAKF","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 * as React from \"react\";\nimport type { DialogProps } from \"@itwin/core-react\";\nimport { Dialog } from \"@itwin/core-react\";\nimport { UiFramework } from \"../UiFramework.js\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Properties for the [[ModelessDialog]] component\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link ModelessDialog} component.\n */\nexport interface ModelessDialogProps extends DialogProps {\n dialogId: string;\n movable?: boolean;\n}\n\n/** Modeless Dialog React component uses the Dialog component with a modal={false} prop.\n * It controls the z-index to keep the focused dialog above others.\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\nexport class ModelessDialog extends React.Component<ModelessDialogProps> {\n constructor(props: ModelessDialogProps) {\n super(props);\n }\n\n public override render(): React.ReactElement {\n const {\n dialogId,\n style,\n modal,\n modelessId,\n onModelessPointerDown,\n ...props\n } = this.props;\n\n return (\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n <Dialog\n {...props}\n modal={false}\n modelessId={dialogId}\n onModelessPointerDown={(event) =>\n UiFramework.dialogs.modeless.handlePointerDownEvent(\n event,\n dialogId,\n this._updateDialog\n )\n }\n style={{\n zIndex: UiFramework.dialogs.modeless.getZIndex(dialogId),\n ...style,\n }}\n >\n {this.props.children}\n </Dialog>\n );\n }\n\n private _updateDialog = () => {\n this.forceUpdate();\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ModelessDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD;;GAEG;AAEH,qBAAa,sBAAuB,SAAQ,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC;gBAE9D,KAAK,EAAE,WAAW;IAId,MAAM,IAAI,KAAK,CAAC,SAAS;CAQ1C"}
1
+ {"version":3,"file":"ModelessDialogManager.d.ts","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialogManager.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AAEH,qBAAa,sBAAuB,SAAQ,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC;gBAE9D,KAAK,EAAE,WAAW;IAId,MAAM,IAAI,KAAK,CAAC,SAAS;CAQ1C"}
@@ -8,13 +8,12 @@
8
8
  import * as React from "react";
9
9
  import { DialogRendererBase } from "./DialogManagerBase.js";
10
10
  import { InternalModelessDialogManager as internal } from "./InternalModelessDialogManager.js";
11
- // cSpell:ignore ZINDEX modeless
12
11
  /** ModelessDialogRenderer React component renders modeless dialogs.
13
12
  * @public
14
13
  */
15
- // eslint-disable-next-line deprecation/deprecation
14
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
16
15
  export class ModelessDialogRenderer extends React.PureComponent {
17
- // eslint-disable-next-line deprecation/deprecation
16
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
18
17
  constructor(props) {
19
18
  super(props);
20
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModelessDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,IAAI,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE/F,gCAAgC;AAEhC;;GAEG;AACH,mDAAmD;AACnD,MAAM,OAAO,sBAAuB,SAAQ,KAAK,CAAC,aAA0B;IAC1E,mDAAmD;IACnD,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,CACL,oBAAC,kBAAkB,OACb,IAAI,CAAC,KAAK,EACd,aAAa,EAAE,QAAQ,CAAC,aAAa,GACrC,CACH,CAAC;IACJ,CAAC;CACF","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 * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { DialogRendererBase } from \"./DialogManagerBase.js\";\nimport { InternalModelessDialogManager as internal } from \"./InternalModelessDialogManager.js\";\n\n// cSpell:ignore ZINDEX modeless\n\n/** ModelessDialogRenderer React component renders modeless dialogs.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ModelessDialogRenderer extends React.PureComponent<CommonProps> {\n // eslint-disable-next-line deprecation/deprecation\n constructor(props: CommonProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n return (\n <DialogRendererBase\n {...this.props}\n dialogManager={internal.dialogManager}\n />\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ModelessDialogManager.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/ModelessDialogManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,IAAI,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE/F;;GAEG;AACH,4DAA4D;AAC5D,MAAM,OAAO,sBAAuB,SAAQ,KAAK,CAAC,aAA0B;IAC1E,4DAA4D;IAC5D,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,CACL,oBAAC,kBAAkB,OACb,IAAI,CAAC,KAAK,EACd,aAAa,EAAE,QAAQ,CAAC,aAAa,GACrC,CACH,CAAC;IACJ,CAAC;CACF","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 * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { DialogRendererBase } from \"./DialogManagerBase.js\";\nimport { InternalModelessDialogManager as internal } from \"./InternalModelessDialogManager.js\";\n\n/** ModelessDialogRenderer React component renders modeless dialogs.\n * @public\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class ModelessDialogRenderer extends React.PureComponent<CommonProps> {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n constructor(props: CommonProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n return (\n <DialogRendererBase\n {...this.props}\n dialogManager={internal.dialogManager}\n />\n );\n }\n}\n"]}
@@ -17,7 +17,7 @@ import { useTranslation } from "../hooks/useTranslation.js";
17
17
  * @public
18
18
  * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.
19
19
  */
20
- // eslint-disable-next-line deprecation/deprecation
20
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
21
21
  export function StandardMessageBox(props) {
22
22
  const [isOpen, setIsOpen] = React.useState(props.opened);
23
23
  let severity = MessageSeverity.None;
@@ -1 +1 @@
1
- {"version":3,"file":"StandardMessageBox.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/StandardMessageBox.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 * as React from \"react\";\nimport type { DialogButtonDef } from \"@itwin/appui-abstract\";\nimport { DialogButtonType, MessageSeverity } from \"@itwin/appui-abstract\";\nimport {\n MessageBoxIconType,\n MessageBoxType,\n MessageBoxValue,\n} from \"@itwin/core-frontend\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageContainer } from \"@itwin/core-react\";\nimport { Button, Dialog } from \"@itwin/itwinui-react\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport { useTranslation } from \"../hooks/useTranslation.js\";\n\n/** Properties for [[StandardMessageBox]] React component\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link StandardMessageBox} component.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport interface StandardMessageBoxProps extends CommonProps {\n /** Indicates whether the message box is open. */\n opened: boolean;\n /** The standard icon to display in the message box. */\n iconType: MessageBoxIconType;\n /** Title to display in the message box. */\n title: string;\n /** Controls the button set displayed. */\n messageBoxType: MessageBoxType;\n /** Callback function for processing the message box result. */\n onResult?: (result: MessageBoxValue) => void;\n /** Content. */\n children?: React.ReactNode;\n}\n\n/** StandardMessageBox React component displays a standard icon, message text and a standard button set in the lower right.\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport function StandardMessageBox(props: StandardMessageBoxProps) {\n const [isOpen, setIsOpen] = React.useState(props.opened);\n\n let severity = MessageSeverity.None;\n switch (props.iconType) {\n case MessageBoxIconType.NoSymbol:\n severity = MessageSeverity.None;\n break;\n case MessageBoxIconType.Information:\n severity = MessageSeverity.Information;\n break;\n case MessageBoxIconType.Question:\n severity = MessageSeverity.Question;\n break;\n case MessageBoxIconType.Warning:\n severity = MessageSeverity.Warning;\n break;\n case MessageBoxIconType.Critical:\n severity = MessageSeverity.Error;\n break;\n case MessageBoxIconType.Success:\n severity = MessageSeverity.Success;\n break;\n }\n\n const handleButton = (buttonType: MessageBoxValue) => {\n closeDialog(() => {\n if (props.onResult) props.onResult(buttonType);\n });\n };\n\n const handleCancel = () => {\n closeDialog(() => {\n if (props.onResult) props.onResult(MessageBoxValue.Cancel);\n });\n };\n\n const closeDialog = (followUp: () => void) => {\n setIsOpen(false);\n UiFramework.dialogs.modal.close();\n followUp();\n };\n\n return (\n <Dialog\n isOpen={isOpen}\n style={{ zIndex: DialogManagerBase.topZIndex, ...props.style }}\n className={props.className}\n onClose={handleCancel}\n closeOnEsc\n closeOnExternalClick={false}\n preventDocumentScroll\n >\n <Dialog.Backdrop />\n <Dialog.Main\n style={{ width: 512 }}\n data-testid=\"message-box-dialog-container\"\n >\n <Dialog.TitleBar titleText={props.title} />\n <Dialog.Content>\n {/* eslint-disable-next-line deprecation/deprecation */}\n <MessageContainer severity={severity}>\n {props.children}\n </MessageContainer>\n </Dialog.Content>\n <Dialog.ButtonBar>\n <DialogButtons\n messageBoxType={props.messageBoxType}\n handleButton={handleButton}\n />\n </Dialog.ButtonBar>\n </Dialog.Main>\n </Dialog>\n );\n}\n\nfunction DialogButtons(props: {\n messageBoxType: MessageBoxType;\n handleButton: (buttonType: MessageBoxValue) => void;\n}) {\n const buttonCluster: DialogButtonDef[] = new Array<DialogButtonDef>();\n\n switch (props.messageBoxType) {\n case MessageBoxType.Ok:\n case MessageBoxType.LargeOk:\n buttonCluster.push({\n type: DialogButtonType.OK,\n onClick: () => {\n props.handleButton(MessageBoxValue.Ok);\n },\n });\n break;\n case MessageBoxType.OkCancel:\n case MessageBoxType.MediumAlert:\n buttonCluster.push({\n type: DialogButtonType.OK,\n onClick: () => {\n props.handleButton(MessageBoxValue.Ok);\n },\n });\n buttonCluster.push({\n type: DialogButtonType.Cancel,\n onClick: () => {\n props.handleButton(MessageBoxValue.Cancel);\n },\n });\n break;\n case MessageBoxType.YesNo:\n case MessageBoxType.YesNoCancel:\n buttonCluster.push({\n type: DialogButtonType.Yes,\n onClick: () => {\n props.handleButton(MessageBoxValue.Yes);\n },\n });\n buttonCluster.push({\n type: DialogButtonType.No,\n onClick: () => {\n props.handleButton(MessageBoxValue.No);\n },\n });\n if (MessageBoxType.YesNoCancel === props.messageBoxType)\n buttonCluster.push({\n type: DialogButtonType.Cancel,\n onClick: () => {\n props.handleButton(MessageBoxValue.Cancel);\n },\n });\n break;\n }\n\n return buttonCluster.map((button, index) => {\n return <DialogButton button={button} key={index} />;\n });\n}\n\nfunction DialogButton({ button }: { button: DialogButtonDef }) {\n const { translate } = useTranslation();\n\n let buttonText = \"\";\n let usePrimaryStyleType = false;\n\n switch (button.type) {\n case DialogButtonType.OK:\n buttonText = translate(\"dialog.ok\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Retry:\n buttonText = translate(\"dialog.retry\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Yes:\n buttonText = translate(\"dialog.yes\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.No:\n buttonText = translate(\"dialog.no\");\n break;\n case DialogButtonType.Cancel:\n buttonText = translate(\"dialog.cancel\");\n break;\n case DialogButtonType.Close:\n buttonText = translate(\"dialog.close\");\n break;\n case DialogButtonType.Next:\n buttonText = translate(\"dialog.next\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Previous:\n buttonText = translate(\"dialog.previous\");\n usePrimaryStyleType = true;\n break;\n }\n\n return (\n <Button\n styleType={usePrimaryStyleType ? \"high-visibility\" : undefined}\n onClick={button.onClick}\n >\n {buttonText}\n </Button>\n );\n}\n"]}
1
+ {"version":3,"file":"StandardMessageBox.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/StandardMessageBox.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 * as React from \"react\";\nimport type { DialogButtonDef } from \"@itwin/appui-abstract\";\nimport { DialogButtonType, MessageSeverity } from \"@itwin/appui-abstract\";\nimport {\n MessageBoxIconType,\n MessageBoxType,\n MessageBoxValue,\n} from \"@itwin/core-frontend\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageContainer } from \"@itwin/core-react\";\nimport { Button, Dialog } from \"@itwin/itwinui-react\";\nimport { DialogManagerBase } from \"./DialogManagerBase.js\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport { useTranslation } from \"../hooks/useTranslation.js\";\n\n/** Properties for [[StandardMessageBox]] React component\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link StandardMessageBox} component.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface StandardMessageBoxProps extends CommonProps {\n /** Indicates whether the message box is open. */\n opened: boolean;\n /** The standard icon to display in the message box. */\n iconType: MessageBoxIconType;\n /** Title to display in the message box. */\n title: string;\n /** Controls the button set displayed. */\n messageBoxType: MessageBoxType;\n /** Callback function for processing the message box result. */\n onResult?: (result: MessageBoxValue) => void;\n /** Content. */\n children?: React.ReactNode;\n}\n\n/** StandardMessageBox React component displays a standard icon, message text and a standard button set in the lower right.\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport function StandardMessageBox(props: StandardMessageBoxProps) {\n const [isOpen, setIsOpen] = React.useState(props.opened);\n\n let severity = MessageSeverity.None;\n switch (props.iconType) {\n case MessageBoxIconType.NoSymbol:\n severity = MessageSeverity.None;\n break;\n case MessageBoxIconType.Information:\n severity = MessageSeverity.Information;\n break;\n case MessageBoxIconType.Question:\n severity = MessageSeverity.Question;\n break;\n case MessageBoxIconType.Warning:\n severity = MessageSeverity.Warning;\n break;\n case MessageBoxIconType.Critical:\n severity = MessageSeverity.Error;\n break;\n case MessageBoxIconType.Success:\n severity = MessageSeverity.Success;\n break;\n }\n\n const handleButton = (buttonType: MessageBoxValue) => {\n closeDialog(() => {\n if (props.onResult) props.onResult(buttonType);\n });\n };\n\n const handleCancel = () => {\n closeDialog(() => {\n if (props.onResult) props.onResult(MessageBoxValue.Cancel);\n });\n };\n\n const closeDialog = (followUp: () => void) => {\n setIsOpen(false);\n UiFramework.dialogs.modal.close();\n followUp();\n };\n\n return (\n <Dialog\n isOpen={isOpen}\n style={{ zIndex: DialogManagerBase.topZIndex, ...props.style }}\n className={props.className}\n onClose={handleCancel}\n closeOnEsc\n closeOnExternalClick={false}\n preventDocumentScroll\n >\n <Dialog.Backdrop />\n <Dialog.Main\n style={{ width: 512 }}\n data-testid=\"message-box-dialog-container\"\n >\n <Dialog.TitleBar titleText={props.title} />\n <Dialog.Content>\n {/* eslint-disable-next-line @typescript-eslint/no-deprecated */}\n <MessageContainer severity={severity}>\n {props.children}\n </MessageContainer>\n </Dialog.Content>\n <Dialog.ButtonBar>\n <DialogButtons\n messageBoxType={props.messageBoxType}\n handleButton={handleButton}\n />\n </Dialog.ButtonBar>\n </Dialog.Main>\n </Dialog>\n );\n}\n\nfunction DialogButtons(props: {\n messageBoxType: MessageBoxType;\n handleButton: (buttonType: MessageBoxValue) => void;\n}) {\n const buttonCluster: DialogButtonDef[] = new Array<DialogButtonDef>();\n\n switch (props.messageBoxType) {\n case MessageBoxType.Ok:\n case MessageBoxType.LargeOk:\n buttonCluster.push({\n type: DialogButtonType.OK,\n onClick: () => {\n props.handleButton(MessageBoxValue.Ok);\n },\n });\n break;\n case MessageBoxType.OkCancel:\n case MessageBoxType.MediumAlert:\n buttonCluster.push({\n type: DialogButtonType.OK,\n onClick: () => {\n props.handleButton(MessageBoxValue.Ok);\n },\n });\n buttonCluster.push({\n type: DialogButtonType.Cancel,\n onClick: () => {\n props.handleButton(MessageBoxValue.Cancel);\n },\n });\n break;\n case MessageBoxType.YesNo:\n case MessageBoxType.YesNoCancel:\n buttonCluster.push({\n type: DialogButtonType.Yes,\n onClick: () => {\n props.handleButton(MessageBoxValue.Yes);\n },\n });\n buttonCluster.push({\n type: DialogButtonType.No,\n onClick: () => {\n props.handleButton(MessageBoxValue.No);\n },\n });\n if (MessageBoxType.YesNoCancel === props.messageBoxType)\n buttonCluster.push({\n type: DialogButtonType.Cancel,\n onClick: () => {\n props.handleButton(MessageBoxValue.Cancel);\n },\n });\n break;\n }\n\n return buttonCluster.map((button, index) => {\n return <DialogButton button={button} key={index} />;\n });\n}\n\nfunction DialogButton({ button }: { button: DialogButtonDef }) {\n const { translate } = useTranslation();\n\n let buttonText = \"\";\n let usePrimaryStyleType = false;\n\n switch (button.type) {\n case DialogButtonType.OK:\n buttonText = translate(\"dialog.ok\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Retry:\n buttonText = translate(\"dialog.retry\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Yes:\n buttonText = translate(\"dialog.yes\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.No:\n buttonText = translate(\"dialog.no\");\n break;\n case DialogButtonType.Cancel:\n buttonText = translate(\"dialog.cancel\");\n break;\n case DialogButtonType.Close:\n buttonText = translate(\"dialog.close\");\n break;\n case DialogButtonType.Next:\n buttonText = translate(\"dialog.next\");\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Previous:\n buttonText = translate(\"dialog.previous\");\n usePrimaryStyleType = true;\n break;\n }\n\n return (\n <Button\n styleType={usePrimaryStyleType ? \"high-visibility\" : undefined}\n onClick={button.onClick}\n >\n {buttonText}\n </Button>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UiDataProvidedDialog.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/UiDataProvidedDialog.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 type {\n DialogButtonDef,\n DialogLayoutDataProvider,\n} from \"@itwin/appui-abstract\";\nimport { DialogButtonType } from \"@itwin/appui-abstract\";\nimport * as React from \"react\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport { getUniqueId } from \"../layout/base/NineZone.js\";\nimport { ComponentGenerator } from \"../uiprovider/ComponentGenerator.js\";\nimport { DefaultDialogGridContainer } from \"../uiprovider/DefaultDialogGridContainer.js\";\nimport { Button, Dialog } from \"@itwin/itwinui-react\";\nimport classnames from \"classnames\";\nimport { useTranslation } from \"../hooks/useTranslation.js\";\n\n/** Props for [[UiDataProvidedDialog]] component.\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link UiDataProvidedDialog} component.\n */\nexport interface UiDataProvidedDialogProps {\n /** Dialog title */\n title: string;\n /** Provider that provides and lays out DialogItems */\n uiDataProvider: DialogLayoutDataProvider;\n /** Indicates if Dialog is Modal */\n isModal: boolean;\n /** Id used to specify dialog. */\n id?: string;\n /** Indicates whether the user can resize dialog with cursor. Default: false */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor. Default: false */\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: \"50%\" */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: 300px */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: 100px */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n /** Custom CSS style properties. */\n style?: React.CSSProperties;\n}\n\n/** Component to show dialog populated from properties supplied via uiDataProvider\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\nexport function UiDataProvidedDialog({\n uiDataProvider,\n id,\n isModal,\n title,\n movable,\n resizable,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n width,\n height,\n style,\n}: // eslint-disable-next-line deprecation/deprecation\nUiDataProvidedDialogProps) {\n const dialogId = React.useRef(id ? id : getUniqueId());\n const dialogIsModal = React.useRef(isModal);\n const onOK = React.useRef<() => void>();\n const onCancel = React.useRef<() => void>();\n const closeDialog = () => {\n if (dialogIsModal.current) UiFramework.dialogs.modal.close();\n else UiFramework.dialogs.modeless.close(dialogId.current);\n };\n\n const handleOk = React.useCallback(() => {\n onOK.current && onOK.current();\n closeDialog();\n }, []);\n\n const handleCancel = React.useCallback(() => {\n onCancel.current && onCancel.current();\n closeDialog();\n }, []);\n\n const generateButtonCluster = React.useCallback(\n (buttons: DialogButtonDef[] | undefined) => {\n if (buttons) {\n for (const button of buttons) {\n if (DialogButtonType.Cancel === button.type) {\n onCancel.current = button.onClick;\n button.onClick = handleCancel;\n continue;\n }\n if (DialogButtonType.OK === button.type) {\n onOK.current = button.onClick;\n button.onClick = handleOk;\n continue;\n }\n }\n }\n return buttons;\n },\n [handleCancel, handleOk]\n );\n const [buttonCluster, setButtonCluster] = React.useState(() =>\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n\n React.useEffect(() => {\n return uiDataProvider.onItemsReloadedEvent.addListener(() => {\n setButtonCluster(\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n });\n }, [generateButtonCluster, uiDataProvider]);\n\n React.useEffect(() => {\n return uiDataProvider.onButtonsReloadedEvent.addListener(() => {\n setButtonCluster(\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n });\n }, [generateButtonCluster, uiDataProvider]);\n\n const handleClose = React.useCallback(() => closeDialog(), []);\n\n const containerStyle: React.CSSProperties = {\n minWidth,\n minHeight,\n maxWidth: maxWidth || \"100%\",\n maxHeight,\n width: width || \"50%\",\n margin: \"\",\n height,\n };\n\n return (\n <Dialog\n isOpen={true}\n onClose={handleClose}\n closeOnEsc\n closeOnExternalClick={false}\n isDraggable={movable}\n isResizable={resizable}\n preventDocumentScroll\n style={style}\n >\n {isModal && <Dialog.Backdrop />}\n <Dialog.Main\n style={containerStyle}\n data-testid=\"ui-data-provided-dialog-container\"\n >\n <Dialog.TitleBar titleText={title} />\n <Dialog.Content>\n <DefaultDialogGridContainer\n componentGenerator={new ComponentGenerator(uiDataProvider)}\n />\n </Dialog.Content>\n <Dialog.ButtonBar>\n {buttonCluster &&\n buttonCluster.map((button, index) => (\n <DialogButton key={index} button={button} />\n ))}\n </Dialog.ButtonBar>\n </Dialog.Main>\n </Dialog>\n );\n}\n\nfunction DialogButton({ button }: { button: DialogButtonDef }) {\n const { translate } = useTranslation();\n\n let buttonText = \"\";\n let usePrimaryStyleType = false;\n let buttonClass = button.className;\n\n switch (button.type) {\n case DialogButtonType.OK:\n buttonText = translate(\"dialog.ok\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Retry:\n buttonText = translate(\"dialog.retry\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Yes:\n buttonText = translate(\"dialog.yes\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.No:\n buttonText = translate(\"dialog.no\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Cancel:\n buttonText = translate(\"dialog.cancel\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Close:\n buttonText = translate(\"dialog.close\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Next:\n buttonText = translate(\"dialog.next\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Previous:\n buttonText = translate(\"dialog.previous\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n }\n\n buttonText = button.label || buttonText;\n\n return (\n <Button\n className={buttonClass}\n disabled={button.disabled}\n styleType={usePrimaryStyleType ? \"high-visibility\" : undefined}\n onClick={button.onClick}\n >\n {buttonText}\n </Button>\n );\n}\n"]}
1
+ {"version":3,"file":"UiDataProvidedDialog.js","sourceRoot":"","sources":["../../../src/appui-react/dialog/UiDataProvidedDialog.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 type {\n DialogButtonDef,\n DialogLayoutDataProvider,\n} from \"@itwin/appui-abstract\";\nimport { DialogButtonType } from \"@itwin/appui-abstract\";\nimport * as React from \"react\";\nimport { UiFramework } from \"../UiFramework.js\";\nimport { getUniqueId } from \"../layout/base/NineZone.js\";\nimport { ComponentGenerator } from \"../uiprovider/ComponentGenerator.js\";\nimport { DefaultDialogGridContainer } from \"../uiprovider/DefaultDialogGridContainer.js\";\nimport { Button, Dialog } from \"@itwin/itwinui-react\";\nimport classnames from \"classnames\";\nimport { useTranslation } from \"../hooks/useTranslation.js\";\n\n/** Props for [[UiDataProvidedDialog]] component.\n * @public\n * @deprecated in 4.15.0. Props of deprecated {@link UiDataProvidedDialog} component.\n */\nexport interface UiDataProvidedDialogProps {\n /** Dialog title */\n title: string;\n /** Provider that provides and lays out DialogItems */\n uiDataProvider: DialogLayoutDataProvider;\n /** Indicates if Dialog is Modal */\n isModal: boolean;\n /** Id used to specify dialog. */\n id?: string;\n /** Indicates whether the user can resize dialog with cursor. Default: false */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor. Default: false */\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: \"50%\" */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: 300px */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. Default: 100px */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n /** Custom CSS style properties. */\n style?: React.CSSProperties;\n}\n\n/** Component to show dialog populated from properties supplied via uiDataProvider\n * @public\n * @deprecated in 4.15.0. Use {@link https://itwinui.bentley.com/docs/dialog iTwinUI Dialog} instead.\n */\nexport function UiDataProvidedDialog({\n uiDataProvider,\n id,\n isModal,\n title,\n movable,\n resizable,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n width,\n height,\n style,\n}: // eslint-disable-next-line @typescript-eslint/no-deprecated\nUiDataProvidedDialogProps) {\n const dialogId = React.useRef(id ? id : getUniqueId());\n const dialogIsModal = React.useRef(isModal);\n const onOK = React.useRef<() => void>();\n const onCancel = React.useRef<() => void>();\n const closeDialog = () => {\n if (dialogIsModal.current) UiFramework.dialogs.modal.close();\n else UiFramework.dialogs.modeless.close(dialogId.current);\n };\n\n const handleOk = React.useCallback(() => {\n onOK.current && onOK.current();\n closeDialog();\n }, []);\n\n const handleCancel = React.useCallback(() => {\n onCancel.current && onCancel.current();\n closeDialog();\n }, []);\n\n const generateButtonCluster = React.useCallback(\n (buttons: DialogButtonDef[] | undefined) => {\n if (buttons) {\n for (const button of buttons) {\n if (DialogButtonType.Cancel === button.type) {\n onCancel.current = button.onClick;\n button.onClick = handleCancel;\n continue;\n }\n if (DialogButtonType.OK === button.type) {\n onOK.current = button.onClick;\n button.onClick = handleOk;\n continue;\n }\n }\n }\n return buttons;\n },\n [handleCancel, handleOk]\n );\n const [buttonCluster, setButtonCluster] = React.useState(() =>\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n\n React.useEffect(() => {\n return uiDataProvider.onItemsReloadedEvent.addListener(() => {\n setButtonCluster(\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n });\n }, [generateButtonCluster, uiDataProvider]);\n\n React.useEffect(() => {\n return uiDataProvider.onButtonsReloadedEvent.addListener(() => {\n setButtonCluster(\n generateButtonCluster(uiDataProvider.supplyButtonData())\n );\n });\n }, [generateButtonCluster, uiDataProvider]);\n\n const handleClose = React.useCallback(() => closeDialog(), []);\n\n const containerStyle: React.CSSProperties = {\n minWidth,\n minHeight,\n maxWidth: maxWidth || \"100%\",\n maxHeight,\n width: width || \"50%\",\n margin: \"\",\n height,\n };\n\n return (\n <Dialog\n isOpen={true}\n onClose={handleClose}\n closeOnEsc\n closeOnExternalClick={false}\n isDraggable={movable}\n isResizable={resizable}\n preventDocumentScroll\n style={style}\n >\n {isModal && <Dialog.Backdrop />}\n <Dialog.Main\n style={containerStyle}\n data-testid=\"ui-data-provided-dialog-container\"\n >\n <Dialog.TitleBar titleText={title} />\n <Dialog.Content>\n <DefaultDialogGridContainer\n componentGenerator={new ComponentGenerator(uiDataProvider)}\n />\n </Dialog.Content>\n <Dialog.ButtonBar>\n {buttonCluster &&\n buttonCluster.map((button, index) => (\n <DialogButton key={index} button={button} />\n ))}\n </Dialog.ButtonBar>\n </Dialog.Main>\n </Dialog>\n );\n}\n\nfunction DialogButton({ button }: { button: DialogButtonDef }) {\n const { translate } = useTranslation();\n\n let buttonText = \"\";\n let usePrimaryStyleType = false;\n let buttonClass = button.className;\n\n switch (button.type) {\n case DialogButtonType.OK:\n buttonText = translate(\"dialog.ok\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Retry:\n buttonText = translate(\"dialog.retry\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Yes:\n buttonText = translate(\"dialog.yes\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.No:\n buttonText = translate(\"dialog.no\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Cancel:\n buttonText = translate(\"dialog.cancel\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Close:\n buttonText = translate(\"dialog.close\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n break;\n case DialogButtonType.Next:\n buttonText = translate(\"dialog.next\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n case DialogButtonType.Previous:\n buttonText = translate(\"dialog.previous\");\n buttonClass = classnames(buttonClass, button.buttonStyle);\n usePrimaryStyleType = true;\n break;\n }\n\n buttonText = button.label || buttonText;\n\n return (\n <Button\n className={buttonClass}\n disabled={button.disabled}\n styleType={usePrimaryStyleType ? \"high-visibility\" : undefined}\n onClick={button.onClick}\n >\n {buttonText}\n </Button>\n );\n}\n"]}
@@ -35,7 +35,7 @@ export declare class ElementTooltipChangedEvent extends UiEvent<ElementTooltipCh
35
35
  /** ElementTooltip React component.
36
36
  * @public
37
37
  */
38
- export declare class ElementTooltip extends React.Component<CommonProps, // eslint-disable-line deprecation/deprecation
38
+ export declare class ElementTooltip extends React.Component<CommonProps, // eslint-disable-line @typescript-eslint/no-deprecated
39
39
  ElementTooltipState> {
40
40
  private static _elementTooltipChangedEvent;
41
41
  private static _isTooltipVisible;
@@ -1 +1 @@
1
- {"version":3,"file":"ElementTooltip.d.ts","sourceRoot":"","sources":["../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AASlF,gCAAgC;AAChC,UAAU,mBAAmB;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,KAAK,CAAC;IAChB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,EAAE,CAAC,EAAE,KAAK,CAAC;IACX,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAG;AAE1F;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CACjD,WAAW,EAAE,8CAA8C;AAC3D,mBAAmB,CACpB;IACC,OAAO,CAAC,MAAM,CAAC,2BAA2B,CACQ;IAClD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAU;IAEzC,WAAkB,4BAA4B,IAAI,0BAA0B,CAE3E;IAED,WAAkB,gBAAgB,IAAI,OAAO,CAE5C;WAEa,WAAW,CACvB,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,iBAAiB,EAC1B,EAAE,CAAC,EAAE,KAAK,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,IAAI;WAYO,WAAW,IAAI,IAAI;IAQjC,WAAkB,eAAe,IAAI,OAAO,CAE3C;IAED,WAAkB,eAAe,CAAC,IAAI,EAAE,OAAO,EAG9C;IAEe,MAAM;CAGvB"}
1
+ {"version":3,"file":"ElementTooltip.d.ts","sourceRoot":"","sources":["../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AASlF,gCAAgC;AAChC,UAAU,mBAAmB;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,KAAK,CAAC;IAChB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,EAAE,CAAC,EAAE,KAAK,CAAC;IACX,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAG;AAE1F;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CACjD,WAAW,EAAE,uDAAuD;AACpE,mBAAmB,CACpB;IACC,OAAO,CAAC,MAAM,CAAC,2BAA2B,CACQ;IAClD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAU;IAEzC,WAAkB,4BAA4B,IAAI,0BAA0B,CAE3E;IAED,WAAkB,gBAAgB,IAAI,OAAO,CAE5C;WAEa,WAAW,CACvB,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,iBAAiB,EAC1B,EAAE,CAAC,EAAE,KAAK,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,IAAI;WAYO,WAAW,IAAI,IAAI;IAQjC,WAAkB,eAAe,IAAI,OAAO,CAE3C;IAED,WAAkB,eAAe,CAAC,IAAI,EAAE,OAAO,EAG9C;IAEe,MAAM;CAGvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ElementTooltip.js","sourceRoot":"","sources":["../../../src/appui-react/feedback/ElementTooltip.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 \"./ElementTooltip.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type { ToolTipOptions } from \"@itwin/core-frontend\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageRenderer } from \"@itwin/core-react\";\nimport { Rectangle } from \"@itwin/core-react/internal\";\nimport type { NotifyMessageType } from \"../messages/ReactNotifyMessageDetails.js\";\nimport {\n offsetAndContainInContainer,\n Tooltip,\n} from \"../layout/popup/Tooltip.js\";\nimport type { SizeProps } from \"../utils/SizeProps.js\";\n\n/* eslint-disable deprecation/deprecation */\n\n/** [[ElementTooltip]] state. */\ninterface ElementTooltipState {\n isVisible: boolean;\n message: NotifyMessageType;\n position: XAndY;\n options?: ToolTipOptions;\n}\n\n/** [[ElementTooltipChangedEvent]] arguments.\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface ElementTooltipChangedEventArgs {\n isTooltipVisible: boolean;\n message: NotifyMessageType;\n el?: HTMLElement;\n pt?: XAndY;\n options?: ToolTipOptions;\n}\n\n/** ElementTooltip Changed Event class.\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\nexport class ElementTooltipChangedEvent extends UiEvent<ElementTooltipChangedEventArgs> {}\n\n/** ElementTooltip React component.\n * @public\n */\nexport class ElementTooltip extends React.Component<\n CommonProps, // eslint-disable-line deprecation/deprecation\n ElementTooltipState\n> {\n private static _elementTooltipChangedEvent =\n new BeUiEvent<ElementTooltipChangedEventArgs>();\n private static _isTooltipVisible: boolean;\n private static _isTooltipHalted: boolean;\n\n public static get onElementTooltipChangedEvent(): ElementTooltipChangedEvent {\n return ElementTooltip._elementTooltipChangedEvent;\n }\n\n public static get isTooltipVisible(): boolean {\n return ElementTooltip._isTooltipVisible;\n }\n\n public static showTooltip(\n el: HTMLElement,\n message: NotifyMessageType,\n pt?: XAndY,\n options?: ToolTipOptions\n ): void {\n if (ElementTooltip._isTooltipHalted) return;\n ElementTooltip._isTooltipVisible = true;\n ElementTooltip.onElementTooltipChangedEvent.emit({\n isTooltipVisible: true,\n el,\n message,\n pt,\n options,\n });\n }\n\n public static hideTooltip(): void {\n ElementTooltip._isTooltipVisible = false;\n ElementTooltip.onElementTooltipChangedEvent.emit({\n isTooltipVisible: false,\n message: \"\",\n });\n }\n\n public static get isTooltipHalted(): boolean {\n return ElementTooltip._isTooltipHalted;\n }\n\n public static set isTooltipHalted(halt: boolean) {\n ElementTooltip._isTooltipHalted = halt;\n if (halt && ElementTooltip._isTooltipVisible) ElementTooltip.hideTooltip();\n }\n\n public override render() {\n return <ElementTooltipComponent />;\n }\n}\n\nfunction ElementTooltipComponent(props: CommonProps) {\n const [visible, setVisible] = React.useState(false);\n const [message, setMessage] = React.useState<NotifyMessageType>(\"\");\n const [preferredPosition, setPreferredPosition] = React.useState<\n XAndY | undefined\n >(undefined);\n const [position, setPosition] = React.useState<XAndY>({ x: 0, y: 0 });\n\n // Use a dedicated container for the tooltip to avoid z-index issues in the main window.\n const [mainContainer, setMainContainer] = React.useState<\n HTMLDivElement | undefined\n >(undefined);\n const [container, setContainer] = React.useState<HTMLElement | undefined>(\n undefined\n );\n const [popout, setPopout] = React.useState(false);\n const [size, setSize] = React.useState<SizeProps | undefined>(undefined);\n\n React.useEffect(() => {\n return ElementTooltip.onElementTooltipChangedEvent.addListener((args) => {\n const isPopout = args.el?.ownerDocument.defaultView !== window;\n setPopout(isPopout);\n setVisible(args.isTooltipVisible);\n setMessage(args.message);\n setContainer(args.el);\n setPreferredPosition(args.pt);\n });\n }, []);\n\n const portalContainer = popout ? container : mainContainer;\n\n React.useLayoutEffect(() => {\n if (!preferredPosition) return;\n\n // Use preferred position by default.\n setPosition(preferredPosition);\n\n if (!container) return;\n if (!size) return;\n\n // Contain the tooltip based on the container bounds.\n const containerBounds = Rectangle.create(container.getBoundingClientRect());\n const bounds = Rectangle.createFromSize(size).offset(preferredPosition);\n const adjustedPosition = offsetAndContainInContainer(\n bounds,\n containerBounds.getSize(),\n { x: 8, y: 8 }\n );\n const newPosition = adjustedPosition.offset(containerBounds.topLeft());\n setPosition(newPosition);\n }, [container, size, preferredPosition]);\n\n return (\n <>\n <div\n className={classnames(\n \"uifw-feedback-elementTooltip_container\",\n props.className\n )}\n ref={(el) => setMainContainer(el ?? undefined)}\n />\n {portalContainer &&\n visible &&\n ReactDOM.createPortal(\n <Tooltip\n className={classnames(\n \"uifw-feedback-elementTooltip\",\n props.className\n )}\n style={props.style}\n onSizeChanged={setSize}\n position={position}\n >\n <MessageRenderer message={message} />\n </Tooltip>,\n portalContainer\n )}\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"ElementTooltip.js","sourceRoot":"","sources":["../../../src/appui-react/feedback/ElementTooltip.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 \"./ElementTooltip.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\nimport type { ToolTipOptions } from \"@itwin/core-frontend\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { MessageRenderer } from \"@itwin/core-react\";\nimport { Rectangle } from \"@itwin/core-react/internal\";\nimport type { NotifyMessageType } from \"../messages/ReactNotifyMessageDetails.js\";\nimport {\n offsetAndContainInContainer,\n Tooltip,\n} from \"../layout/popup/Tooltip.js\";\nimport type { SizeProps } from \"../utils/SizeProps.js\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** [[ElementTooltip]] state. */\ninterface ElementTooltipState {\n isVisible: boolean;\n message: NotifyMessageType;\n position: XAndY;\n options?: ToolTipOptions;\n}\n\n/** [[ElementTooltipChangedEvent]] arguments.\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface ElementTooltipChangedEventArgs {\n isTooltipVisible: boolean;\n message: NotifyMessageType;\n el?: HTMLElement;\n pt?: XAndY;\n options?: ToolTipOptions;\n}\n\n/** ElementTooltip Changed Event class.\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\nexport class ElementTooltipChangedEvent extends UiEvent<ElementTooltipChangedEventArgs> {}\n\n/** ElementTooltip React component.\n * @public\n */\nexport class ElementTooltip extends React.Component<\n CommonProps, // eslint-disable-line @typescript-eslint/no-deprecated\n ElementTooltipState\n> {\n private static _elementTooltipChangedEvent =\n new BeUiEvent<ElementTooltipChangedEventArgs>();\n private static _isTooltipVisible: boolean;\n private static _isTooltipHalted: boolean;\n\n public static get onElementTooltipChangedEvent(): ElementTooltipChangedEvent {\n return ElementTooltip._elementTooltipChangedEvent;\n }\n\n public static get isTooltipVisible(): boolean {\n return ElementTooltip._isTooltipVisible;\n }\n\n public static showTooltip(\n el: HTMLElement,\n message: NotifyMessageType,\n pt?: XAndY,\n options?: ToolTipOptions\n ): void {\n if (ElementTooltip._isTooltipHalted) return;\n ElementTooltip._isTooltipVisible = true;\n ElementTooltip.onElementTooltipChangedEvent.emit({\n isTooltipVisible: true,\n el,\n message,\n pt,\n options,\n });\n }\n\n public static hideTooltip(): void {\n ElementTooltip._isTooltipVisible = false;\n ElementTooltip.onElementTooltipChangedEvent.emit({\n isTooltipVisible: false,\n message: \"\",\n });\n }\n\n public static get isTooltipHalted(): boolean {\n return ElementTooltip._isTooltipHalted;\n }\n\n public static set isTooltipHalted(halt: boolean) {\n ElementTooltip._isTooltipHalted = halt;\n if (halt && ElementTooltip._isTooltipVisible) ElementTooltip.hideTooltip();\n }\n\n public override render() {\n return <ElementTooltipComponent />;\n }\n}\n\nfunction ElementTooltipComponent(props: CommonProps) {\n const [visible, setVisible] = React.useState(false);\n const [message, setMessage] = React.useState<NotifyMessageType>(\"\");\n const [preferredPosition, setPreferredPosition] = React.useState<\n XAndY | undefined\n >(undefined);\n const [position, setPosition] = React.useState<XAndY>({ x: 0, y: 0 });\n\n // Use a dedicated container for the tooltip to avoid z-index issues in the main window.\n const [mainContainer, setMainContainer] = React.useState<\n HTMLDivElement | undefined\n >(undefined);\n const [container, setContainer] = React.useState<HTMLElement | undefined>(\n undefined\n );\n const [popout, setPopout] = React.useState(false);\n const [size, setSize] = React.useState<SizeProps | undefined>(undefined);\n\n React.useEffect(() => {\n return ElementTooltip.onElementTooltipChangedEvent.addListener((args) => {\n const isPopout = args.el?.ownerDocument.defaultView !== window;\n setPopout(isPopout);\n setVisible(args.isTooltipVisible);\n setMessage(args.message);\n setContainer(args.el);\n setPreferredPosition(args.pt);\n });\n }, []);\n\n const portalContainer = popout ? container : mainContainer;\n\n React.useLayoutEffect(() => {\n if (!preferredPosition) return;\n\n // Use preferred position by default.\n setPosition(preferredPosition);\n\n if (!container) return;\n if (!size) return;\n\n // Contain the tooltip based on the container bounds.\n const containerBounds = Rectangle.create(container.getBoundingClientRect());\n const bounds = Rectangle.createFromSize(size).offset(preferredPosition);\n const adjustedPosition = offsetAndContainInContainer(\n bounds,\n containerBounds.getSize(),\n { x: 8, y: 8 }\n );\n const newPosition = adjustedPosition.offset(containerBounds.topLeft());\n setPosition(newPosition);\n }, [container, size, preferredPosition]);\n\n return (\n <>\n <div\n className={classnames(\n \"uifw-feedback-elementTooltip_container\",\n props.className\n )}\n ref={(el) => setMainContainer(el ?? undefined)}\n />\n {portalContainer &&\n visible &&\n ReactDOM.createPortal(\n <Tooltip\n className={classnames(\n \"uifw-feedback-elementTooltip\",\n props.className\n )}\n style={props.style}\n onSizeChanged={setSize}\n position={position}\n >\n <MessageRenderer message={message} />\n </Tooltip>,\n portalContainer\n )}\n </>\n );\n}\n"]}