@itwin/appui-react 4.9.0 → 4.10.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/lib/cjs/appui-react/UiFramework.js +4 -7
  2. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  3. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +4 -2
  4. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  5. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +17 -29
  6. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  7. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.scss +10 -17
  8. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +2 -0
  9. package/lib/cjs/appui-react/accudraw/SquareButton.d.ts +3 -1
  10. package/lib/cjs/appui-react/accudraw/SquareButton.d.ts.map +1 -1
  11. package/lib/cjs/appui-react/accudraw/SquareButton.js +1 -4
  12. package/lib/cjs/appui-react/accudraw/SquareButton.js.map +1 -1
  13. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
  14. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  15. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +2 -2
  16. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  17. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -1
  18. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  19. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +19 -15
  20. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  21. package/lib/cjs/appui-react/configurableui/{configurableui.scss → ConfigurableUiContent.scss} +14 -0
  22. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  23. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  24. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  25. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  26. package/lib/cjs/appui-react/content/ContentLayout.js +9 -12
  27. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  28. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  29. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  30. package/lib/cjs/appui-react/content/FloatingViewportContent.js +1 -2
  31. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  32. package/lib/cjs/appui-react/content/IModelViewport.js +4 -7
  33. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  34. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  35. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  36. package/lib/cjs/appui-react/content/InternalContentViewManager.js +2 -2
  37. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  38. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
  39. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  40. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  41. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  42. package/lib/cjs/appui-react/dialog/ContentDialog.js +3 -6
  43. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  44. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -3
  45. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  46. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/feedback/ElementTooltip.js +2 -3
  48. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  49. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +10 -14
  50. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  51. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts +2 -4
  52. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js +2 -3
  54. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  55. package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +1 -1
  56. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -3
  57. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  58. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  59. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  60. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  61. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  62. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  63. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  64. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  65. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  66. package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
  67. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  68. package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
  69. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  70. package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
  71. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  72. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
  73. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  74. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  75. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  76. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  77. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  78. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  79. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  80. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  81. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  82. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
  83. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  84. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +1 -1
  85. package/lib/cjs/appui-react/layout/widget/Button.d.ts +2 -9
  86. package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
  87. package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
  88. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
  89. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  90. package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
  91. package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
  92. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
  93. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  94. package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
  95. package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
  96. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js +1 -1
  97. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +1 -1
  98. package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
  99. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  100. package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
  101. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  102. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  103. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  104. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
  105. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  106. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  107. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  108. package/lib/cjs/appui-react/messages/InputField.d.ts.map +1 -1
  109. package/lib/cjs/appui-react/messages/InputField.js +2 -3
  110. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  111. package/lib/cjs/appui-react/messages/MessageLabel.js +2 -2
  112. package/lib/cjs/appui-react/messages/MessageLabel.js.map +1 -1
  113. package/lib/cjs/appui-react/messages/MessageManager.d.ts +15 -5
  114. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  115. package/lib/cjs/appui-react/messages/MessageManager.js +23 -41
  116. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  117. package/lib/cjs/appui-react/messages/MessageRenderer.d.ts +8 -0
  118. package/lib/cjs/appui-react/messages/MessageRenderer.d.ts.map +1 -0
  119. package/lib/cjs/appui-react/messages/MessageRenderer.js +136 -0
  120. package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -0
  121. package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -2
  122. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  123. package/lib/cjs/appui-react/messages/Pointer.js +5 -6
  124. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  125. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  126. package/lib/cjs/appui-react/pickers/ViewSelector.js +5 -6
  127. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  128. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  129. package/lib/cjs/appui-react/popup/CardPopup.js +1 -2
  130. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  131. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  132. package/lib/cjs/appui-react/popup/HTMLElementPopup.js +1 -2
  133. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  134. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -2
  135. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  136. package/lib/cjs/appui-react/popup/PopupManager.js +1 -2
  137. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  138. package/lib/cjs/appui-react/preview/PreviewFeatures.js +1 -1
  139. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  140. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  141. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
  142. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  143. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  144. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  145. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
  146. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  147. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +1 -4
  148. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +11 -16
  149. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  150. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  151. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  152. package/lib/cjs/appui-react/statusbar/StatusBar.js +3 -5
  153. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  154. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +1 -1
  155. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  156. package/lib/cjs/appui-react/statusfields/MessageCenter.js +5 -4
  157. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  158. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +1 -3
  159. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  160. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
  161. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  162. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +1 -1
  163. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  164. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +3 -2
  165. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  166. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +3 -12
  167. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  168. package/lib/cjs/appui-react/theme/ThemeManager.js +3 -1
  169. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  170. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +6 -4
  171. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  172. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  173. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  174. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  175. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +18 -25
  176. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  177. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
  178. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  179. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  180. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  181. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  182. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  183. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  184. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  185. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  186. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  187. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  188. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  189. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +1 -1
  190. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  191. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts +1 -0
  192. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  193. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +19 -16
  194. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  195. package/lib/cjs/appui-react/widget-panels/Content.js +8 -9
  196. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  197. package/lib/cjs/appui-react/widget-panels/Frontstage.js +10 -14
  198. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  199. package/lib/cjs/appui-react/widget-panels/StatusBar.js +1 -1
  200. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  201. package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
  202. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  203. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +15 -23
  204. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  205. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +1 -1
  206. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  207. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  208. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  209. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  210. package/lib/cjs/appui-react/widgets/WidgetDef.js +4 -5
  211. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  212. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  213. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  214. package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
  215. package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
  216. package/lib/esm/appui-react/UiFramework.js +4 -7
  217. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  218. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +4 -2
  219. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  220. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +17 -29
  221. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  222. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.scss +10 -17
  223. package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +2 -0
  224. package/lib/esm/appui-react/accudraw/SquareButton.d.ts +3 -1
  225. package/lib/esm/appui-react/accudraw/SquareButton.d.ts.map +1 -1
  226. package/lib/esm/appui-react/accudraw/SquareButton.js +1 -4
  227. package/lib/esm/appui-react/accudraw/SquareButton.js.map +1 -1
  228. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
  229. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  230. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +2 -2
  231. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  232. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -1
  233. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  234. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +19 -15
  235. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  236. package/lib/esm/appui-react/configurableui/{configurableui.scss → ConfigurableUiContent.scss} +14 -0
  237. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  238. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  239. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  240. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  241. package/lib/esm/appui-react/content/ContentLayout.js +9 -12
  242. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  243. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  244. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  245. package/lib/esm/appui-react/content/FloatingViewportContent.js +1 -2
  246. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  247. package/lib/esm/appui-react/content/IModelViewport.js +4 -7
  248. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  249. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  250. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  251. package/lib/esm/appui-react/content/InternalContentViewManager.js +2 -2
  252. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  253. package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
  254. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  255. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  256. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  257. package/lib/esm/appui-react/dialog/ContentDialog.js +3 -6
  258. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  259. package/lib/esm/appui-react/dialog/DialogManagerBase.js +2 -3
  260. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  261. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  262. package/lib/esm/appui-react/feedback/ElementTooltip.js +3 -4
  263. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  264. package/lib/esm/appui-react/frontstage/FrontstageDef.js +10 -14
  265. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  266. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts +2 -4
  267. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  268. package/lib/esm/appui-react/frontstage/ModalFrontstage.js +2 -3
  269. package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  270. package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +1 -1
  271. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -3
  272. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  273. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  274. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  275. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  276. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  277. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  278. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  279. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  280. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  281. package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
  282. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  283. package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
  284. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  285. package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
  286. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  287. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
  288. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  289. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  290. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  291. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  292. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  293. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  294. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  295. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  296. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  297. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
  298. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  299. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +1 -1
  300. package/lib/esm/appui-react/layout/widget/Button.d.ts +2 -9
  301. package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
  302. package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
  303. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
  304. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  305. package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
  306. package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
  307. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
  308. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  309. package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
  310. package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
  311. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js +1 -1
  312. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +1 -1
  313. package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
  314. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  315. package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
  316. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  317. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  318. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  319. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
  320. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  321. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  322. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  323. package/lib/esm/appui-react/messages/InputField.d.ts.map +1 -1
  324. package/lib/esm/appui-react/messages/InputField.js +3 -4
  325. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  326. package/lib/esm/appui-react/messages/MessageLabel.js +2 -2
  327. package/lib/esm/appui-react/messages/MessageLabel.js.map +1 -1
  328. package/lib/esm/appui-react/messages/MessageManager.d.ts +15 -5
  329. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  330. package/lib/esm/appui-react/messages/MessageManager.js +23 -41
  331. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  332. package/lib/esm/appui-react/messages/MessageRenderer.d.ts +8 -0
  333. package/lib/esm/appui-react/messages/MessageRenderer.d.ts.map +1 -0
  334. package/lib/esm/appui-react/messages/MessageRenderer.js +132 -0
  335. package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -0
  336. package/lib/esm/appui-react/messages/Pointer.d.ts +2 -2
  337. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  338. package/lib/esm/appui-react/messages/Pointer.js +6 -7
  339. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  340. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  341. package/lib/esm/appui-react/pickers/ViewSelector.js +5 -6
  342. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  343. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  344. package/lib/esm/appui-react/popup/CardPopup.js +2 -3
  345. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  346. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  347. package/lib/esm/appui-react/popup/HTMLElementPopup.js +2 -3
  348. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  349. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -2
  350. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  351. package/lib/esm/appui-react/popup/PopupManager.js +1 -2
  352. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  353. package/lib/esm/appui-react/preview/PreviewFeatures.js +1 -1
  354. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  355. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  356. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
  357. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  358. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  359. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  360. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
  361. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  362. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +1 -4
  363. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +11 -16
  364. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  365. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  366. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  367. package/lib/esm/appui-react/statusbar/StatusBar.js +3 -5
  368. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  369. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +1 -1
  370. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  371. package/lib/esm/appui-react/statusfields/MessageCenter.js +6 -5
  372. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  373. package/lib/esm/appui-react/statusfields/SelectionScope.scss +1 -3
  374. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  375. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
  376. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  377. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +1 -1
  378. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  379. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +3 -2
  380. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  381. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +3 -12
  382. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  383. package/lib/esm/appui-react/theme/ThemeManager.js +3 -1
  384. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  385. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +6 -4
  386. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  387. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  388. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  389. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  390. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +15 -22
  391. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  392. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
  393. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  394. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  395. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  396. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  397. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  398. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  399. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  400. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  401. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  402. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  403. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  404. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +1 -1
  405. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  406. package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts +1 -0
  407. package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  408. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +19 -16
  409. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  410. package/lib/esm/appui-react/widget-panels/Content.js +8 -9
  411. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  412. package/lib/esm/appui-react/widget-panels/Frontstage.js +10 -14
  413. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  414. package/lib/esm/appui-react/widget-panels/StatusBar.js +1 -1
  415. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  416. package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
  417. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  418. package/lib/esm/appui-react/widget-panels/ToolSettings.js +15 -23
  419. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  420. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +1 -1
  421. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  422. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  423. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  424. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  425. package/lib/esm/appui-react/widgets/WidgetDef.js +4 -5
  426. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  427. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  428. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  429. package/lib/esm/appui-react/widgets/useWidget.js +1 -1
  430. package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
  431. package/package.json +12 -14
  432. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +0 -10
  433. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +0 -1
  434. package/lib/cjs/appui-react/messages/ActivityMessage.js +0 -92
  435. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +0 -1
  436. package/lib/cjs/appui-react/messages/MessageSpan.d.ts +0 -15
  437. package/lib/cjs/appui-react/messages/MessageSpan.d.ts.map +0 -1
  438. package/lib/cjs/appui-react/messages/MessageSpan.js +0 -23
  439. package/lib/cjs/appui-react/messages/MessageSpan.js.map +0 -1
  440. package/lib/esm/appui-react/messages/ActivityMessage.d.ts +0 -10
  441. package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +0 -1
  442. package/lib/esm/appui-react/messages/ActivityMessage.js +0 -88
  443. package/lib/esm/appui-react/messages/ActivityMessage.js.map +0 -1
  444. package/lib/esm/appui-react/messages/MessageSpan.d.ts +0 -15
  445. package/lib/esm/appui-react/messages/MessageSpan.d.ts.map +0 -1
  446. package/lib/esm/appui-react/messages/MessageSpan.js +0 -18
  447. package/lib/esm/appui-react/messages/MessageSpan.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"UiFramework.js","sourceRoot":"","sources":["../../../src/appui-react/UiFramework.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n// cSpell:ignore configurableui clientservices\n\nimport type { Store } from \"redux\";\nimport { Logger, ProcessDetector } from \"@itwin/core-bentley\";\nimport type { Localization } from \"@itwin/core-common\";\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport { IModelApp, SnapMode } from \"@itwin/core-frontend\";\nimport { UiAdmin, UiError, UiEvent } from \"@itwin/appui-abstract\";\nimport type { UiStateStorage } from \"@itwin/core-react\";\nimport { LocalStateStorage, SettingsManager } from \"@itwin/core-react\";\nimport { getObjectClassName } from \"@itwin/core-react\";\nimport { UiIModelComponents } from \"@itwin/imodel-components-react\";\nimport { BackstageManager } from \"./backstage/BackstageManager\";\nimport { InternalChildWindowManager } from \"./childwindow/InternalChildWindowManager\";\nimport { InternalConfigurableUiManager } from \"./configurableui/InternalConfigurableUiManager\";\nimport { ConfigurableUiActionId } from \"./configurableui/state\";\nimport type { FrameworkState } from \"./redux/FrameworkState\";\nimport type {\n CursorMenuData,\n PresentationSelectionScope,\n} from \"./redux/SessionState\";\nimport { SessionStateActionId } from \"./redux/SessionState\";\nimport { StateManager } from \"./redux/StateManager\";\nimport type { HideIsolateEmphasizeActionHandler } from \"./selection/HideIsolateEmphasizeManager\";\nimport { HideIsolateEmphasizeManager } from \"./selection/HideIsolateEmphasizeManager\";\nimport type { ThemeId } from \"./theme/ThemeManager\";\nimport {\n SYSTEM_PREFERRED_COLOR_THEME,\n TOOLBAR_OPACITY_DEFAULT,\n WIDGET_OPACITY_DEFAULT,\n} from \"./theme/ThemeManager\";\nimport * as keyinPaletteTools from \"./tools/KeyinPaletteTools\";\nimport * as openSettingTools from \"./tools/OpenSettingsTool\";\nimport * as restoreLayoutTools from \"./tools/RestoreLayoutTool\";\nimport * as toolSettingTools from \"./tools/ToolSettingsTools\";\nimport {\n InternalUiShowHideManager,\n UiShowHideSettingsProvider,\n} from \"./utils/InternalUiShowHideManager\";\nimport { WidgetManager } from \"./widgets/WidgetManager\";\nimport { InternalFrontstageManager } from \"./frontstage/InternalFrontstageManager\";\nimport { InternalContentViewManager } from \"./content/InternalContentViewManager\";\nimport { InternalModalDialogManager } from \"./dialog/InternalModalDialogManager\";\nimport { InternalModelessDialogManager } from \"./dialog/InternalModelessDialogManager\";\nimport { InternalKeyboardShortcutManager } from \"./keyboardshortcut/InternalKeyboardShortcut\";\nimport { InternalToolSettingsManager } from \"./toolsettings/InternalToolSettingsManager\";\nimport type { FrameworkBackstage } from \"./framework/FrameworkBackstage\";\nimport type { FrameworkChildWindows } from \"./framework/FrameworkChildWindows\";\nimport type { FrameworkControls } from \"./framework/FrameworkControls\";\nimport type { FrameworkFrontstages } from \"./framework/FrameworkFrontstages\";\nimport type { FrameworkToolSettings } from \"./framework/FrameworkToolSettings\";\nimport type { FrameworkContent } from \"./framework/FrameworkContent\";\nimport type { FrameworkDialogs } from \"./framework/FrameworkDialogs\";\nimport type { FrameworkKeyboardShortcuts } from \"./framework/FrameworkKeyboardShortcuts\";\nimport type { FrameworkVisibility } from \"./framework/FrameworkVisibility\";\nimport {\n SyncUiEventDispatcher,\n SyncUiEventId,\n} from \"./syncui/SyncUiEventDispatcher\";\n\n// cSpell:ignore Mobi\n\n/** Interface to be implemented but any classes that wants to load their user settings when the UiStateEntry storage class is set.\n * @public\n */\nexport interface UserSettingsProvider {\n /** Unique provider Id */\n providerId: string;\n /** Function to load settings from settings storage */\n loadUserSettings(storage: UiStateStorage): Promise<void>;\n}\n\n/** UiVisibility Event Args interface.\n * @public\n */\nexport interface UiVisibilityEventArgs {\n visible: boolean;\n}\n\n/** UiVisibility Event class.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class UiVisibilityChangedEvent extends UiEvent<UiVisibilityEventArgs> {}\n\n/** TrackingTime time argument used by our feature tracking manager as an option argument to the TelemetryClient\n * @internal\n */\nexport interface TrackingTime {\n startTime: Date;\n endTime: Date;\n}\n\n/** Main entry point to configure and interact with the features provided by the AppUi-react package.\n * @public\n */\nexport class UiFramework {\n /**\n * Operation on the backstage component.\n * @public\n */\n public static get backstage(): FrameworkBackstage {\n // istanbul ignore next\n if (!UiFramework._backstageManager)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._backstageManager;\n }\n\n /**\n * Manage access to the child windows.\n * @public\n */\n public static get childWindows(): FrameworkChildWindows {\n return this._childWindowManager;\n }\n\n /**\n * Manage registered controls\n * @public\n */\n public static get controls(): FrameworkControls {\n return InternalConfigurableUiManager;\n }\n\n /**\n * Manage access to frontstages and related helper methods.\n * @public\n */\n public static get frontstages(): FrameworkFrontstages {\n return InternalFrontstageManager;\n }\n\n /**\n * Manage access and behavior of the tool settings.\n * @public\n */\n public static get toolSettings(): FrameworkToolSettings {\n return InternalToolSettingsManager;\n }\n\n /**\n * Manage content presented by the frontstages.\n * @public\n */\n public static get content(): FrameworkContent {\n return InternalContentViewManager;\n }\n\n /**\n * Manage displayed dialogs.\n * @public\n */\n public static get dialogs(): FrameworkDialogs {\n return {\n modal: InternalModalDialogManager,\n modeless: InternalModelessDialogManager,\n };\n }\n\n /**\n * Manages global keyboard shortcuts\n *\n * Note: This only manages the list of available shortcuts registered with it. It does not listens to the actual\n * keyboard events. In order for these shortcuts to be called upon a keyboard event, the application can\n * override the `IModelApp.toolAdmin` and assign it [[FrameworkToolAdmin]] or create an event listener\n * and call `UiFramework.keyboardShortcuts.processKey`.\n * @public\n */\n public static get keyboardShortcuts(): FrameworkKeyboardShortcuts {\n return InternalKeyboardShortcutManager;\n }\n\n /**\n * Manages UI visibility (Show/Hide)\n * @public\n */\n public static get visibility(): FrameworkVisibility {\n return InternalUiShowHideManager;\n }\n\n private static _initialized = false;\n private static _store?: Store<any>;\n private static _complaint = \"UiFramework not initialized\";\n private static _frameworkStateKeyInStore: string = \"frameworkState\"; // default name\n private static _backstageManager?: BackstageManager;\n private static _widgetManager?: WidgetManager;\n private static _hideIsolateEmphasizeActionHandler?: HideIsolateEmphasizeActionHandler;\n /** this provides a default state storage handler */\n private static _uiStateStorage: UiStateStorage = new LocalStateStorage();\n private static _settingsManager?: SettingsManager;\n private static _uiSettingsProviderRegistry: Map<\n string,\n UserSettingsProvider\n > = new Map<string, UserSettingsProvider>();\n private static _childWindowManager = new InternalChildWindowManager();\n public static useDefaultPopoutUrl = false;\n\n /** Registers class that will be informed when the UserSettingsStorage location has been set or changed. This allows\n * classes to load any previously saved settings from the new storage location. Common storage locations are the browser's\n * local storage, or the iTwin Product Settings cloud storage available via the SettingsAdmin see `IModelApp.settingsAdmin`.\n * @public\n */\n public static registerUserSettingsProvider(entry: UserSettingsProvider) {\n if (this._uiSettingsProviderRegistry.has(entry.providerId)) return false;\n\n this._uiSettingsProviderRegistry.set(entry.providerId, entry);\n return true;\n }\n\n /** Get Show Ui event.\n * @public\n */\n public static readonly onUiVisibilityChanged = new UiVisibilityChangedEvent();\n\n /**\n * Called by the application to initialize the UiFramework. Also initializes UIIModelComponents, UiComponents, UiCore.\n * @param store The single Redux store created by the host application. If this is `undefined` then it is assumed that the [[StateManager]] is being used to provide the Redux store.\n * @param frameworkStateKey The name of the key used by the app when adding the UiFramework state into the Redux store. If not defined \"frameworkState\" is assumed. This value is ignored if [[StateManager]] is being used. The StateManager use \"frameworkState\".\n */\n public static async initialize(\n store: Store<any> | undefined,\n frameworkStateKey?: string\n ): Promise<void> {\n if (UiFramework._initialized) {\n Logger.logInfo(\n UiFramework.loggerCategory(UiFramework),\n `UiFramework.initialize already called`\n );\n return;\n }\n\n /* if store is undefined then the StateManager class should have been initialized by parent app and the apps default set of reducers registered with it.\n If the app has no reducers to add and does not initialize a StateManager then just initialize the StateManager with the default framework reducer now */\n if (undefined === store && !StateManager.isInitialized(true))\n new StateManager();\n\n UiFramework._store = store;\n // ignore setting _frameworkStateKeyInStore if not using store\n if (frameworkStateKey && store)\n UiFramework._frameworkStateKeyInStore = frameworkStateKey;\n\n // set up namespace and register all tools from package\n const frameworkNamespace = IModelApp.localization?.registerNamespace(\n UiFramework.localizationNamespace\n );\n [\n restoreLayoutTools,\n keyinPaletteTools,\n openSettingTools,\n toolSettingTools,\n ].forEach((tool) =>\n IModelApp.tools.registerModule(tool, this.localizationNamespace)\n );\n\n UiFramework._backstageManager = new BackstageManager();\n UiFramework._hideIsolateEmphasizeActionHandler =\n new HideIsolateEmphasizeManager(); // this allows user to override the default HideIsolateEmphasizeManager implementation.\n UiFramework._widgetManager = new WidgetManager();\n\n // Initialize ui-imodel-components, ui-components, ui-core & ui-abstract\n await UiIModelComponents.initialize();\n\n UiFramework.settingsManager.onSettingsProvidersChanged.addListener(() => {\n SyncUiEventDispatcher.dispatchSyncUiEvent(\n SyncUiEventId.SettingsProvidersChanged\n );\n });\n\n // Initialize the MessagePresenter interface in UiAdmin for Editor notifications\n UiAdmin.messagePresenter = IModelApp.notifications;\n\n UiFramework._initialized = true;\n\n // initialize any standalone settings providers that don't need to have defaults set by iModelApp\n UiShowHideSettingsProvider.initialize();\n\n InternalConfigurableUiManager.initialize();\n\n return frameworkNamespace;\n }\n\n /** Un-registers the UiFramework internationalization service namespace */\n public static terminate() {\n UiFramework._store = undefined;\n UiFramework._frameworkStateKeyInStore = \"frameworkState\";\n if (StateManager.isInitialized(true)) StateManager.clearStore();\n // istanbul ignore next\n IModelApp.localization?.unregisterNamespace(\n UiFramework.localizationNamespace\n );\n UiFramework._backstageManager = undefined;\n UiFramework._widgetManager = undefined;\n UiFramework._hideIsolateEmphasizeActionHandler = undefined;\n UiFramework._settingsManager = undefined;\n\n UiIModelComponents.terminate();\n InternalUiShowHideManager.terminate();\n UiFramework._initialized = false;\n }\n\n /** Determines if UiFramework has been initialized */\n public static get initialized(): boolean {\n return UiFramework._initialized;\n }\n\n /** Property that returns the SettingManager used by AppUI-based applications.\n * @public\n */\n public static get settingsManager() {\n if (undefined === UiFramework._settingsManager)\n UiFramework._settingsManager = new SettingsManager();\n return UiFramework._settingsManager;\n }\n\n /** @public */\n public static get frameworkStateKey(): string {\n return UiFramework._frameworkStateKeyInStore;\n }\n\n /** The UiFramework state maintained by Redux\n * @public\n */\n public static get frameworkState(): FrameworkState | undefined {\n try {\n return UiFramework.store.getState()[UiFramework.frameworkStateKey];\n } catch (_e) {\n return undefined;\n }\n }\n\n /** The Redux store */\n public static get store(): Store<any> {\n if (UiFramework._store) return UiFramework._store;\n\n // istanbul ignore else\n if (!StateManager.isInitialized(true))\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `Error trying to access redux store before either store or StateManager has been initialized.`\n );\n\n // istanbul ignore next\n return StateManager.store;\n }\n\n /** The internationalization service created by the app.\n * @internal\n */\n public static get localization(): Localization {\n // istanbul ignore next\n if (!IModelApp.localization)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `IModelApp.localization has not been defined.`\n );\n return IModelApp.localization;\n }\n\n /** The internationalization service namespace. */\n public static get localizationNamespace(): string {\n return \"UiFramework\";\n }\n\n /** @public */\n public static get hideIsolateEmphasizeActionHandler(): HideIsolateEmphasizeActionHandler {\n // istanbul ignore next\n if (!UiFramework._hideIsolateEmphasizeActionHandler)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._hideIsolateEmphasizeActionHandler;\n }\n\n /** @public */\n public static setHideIsolateEmphasizeActionHandler(\n handler: HideIsolateEmphasizeActionHandler | undefined\n ) {\n // istanbul ignore else\n if (handler) UiFramework._hideIsolateEmphasizeActionHandler = handler;\n else\n UiFramework._hideIsolateEmphasizeActionHandler =\n new HideIsolateEmphasizeManager();\n }\n\n /** @alpha */\n public static get widgetManager(): WidgetManager {\n // istanbul ignore next\n if (!UiFramework._widgetManager)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._widgetManager;\n }\n\n /** Calls localization.getLocalizedStringWithNamespace with the \"UiFramework\" namespace. Do NOT include the namespace in the key.\n * @internal\n */\n public static translate(key: string | string[]): string {\n return IModelApp.localization.getLocalizedString(key, {\n ns: UiFramework.localizationNamespace,\n });\n }\n\n /** @internal */\n public static get packageName(): string {\n return \"appui-react\";\n }\n\n /** @internal */\n public static loggerCategory(obj: any): string {\n const className = getObjectClassName(obj);\n const category =\n UiFramework.packageName + (className ? `.${className}` : \"\");\n return category;\n }\n\n public static dispatchActionToStore(\n type: string,\n payload: any,\n immediateSync = false\n ) {\n UiFramework.store.dispatch({ type, payload });\n if (immediateSync) SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(type);\n else SyncUiEventDispatcher.dispatchSyncUiEvent(type);\n }\n\n public static setAccudrawSnapMode(snapMode: SnapMode) {\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetSnapMode,\n snapMode,\n true\n );\n }\n\n public static getAccudrawSnapMode(): SnapMode {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.snapMode\n : /* istanbul ignore next */ SnapMode.NearestKeypoint;\n }\n\n /**\n * Returns the stored active selection scope id.\n */\n public static getActiveSelectionScope(): string {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.activeSelectionScope\n : /* istanbul ignore next */ \"element\";\n }\n\n /**\n * This method stores the active selection scope to the supplied scope id, and triggers\n * a `SessionStateActionId.SetSelectionScope` event in the `SyncUiEventDispatcher`.\n * Note: As of 4.0, this method *does not change* the active selection scope in the `Presentation.selection.scopes.activeScope` property.\n * This event should be listened to and the change should typically be applied to\n * `Presentation.selection.scopes.activeScope` property from the `@itwin/presentation-frontend` package.\n */\n public static setActiveSelectionScope(selectionScopeId: string): void {\n // istanbul ignore else\n if (UiFramework.frameworkState) {\n const foundIndex =\n UiFramework.frameworkState.sessionState.availableSelectionScopes.findIndex(\n (selectionScope: PresentationSelectionScope) =>\n selectionScope.id === selectionScopeId\n );\n if (-1 !== foundIndex) {\n const scope =\n UiFramework.frameworkState.sessionState.availableSelectionScopes[\n foundIndex\n ];\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetSelectionScope,\n scope.id\n );\n }\n }\n }\n\n /** @public */\n public static openCursorMenu(menuData: CursorMenuData | undefined): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.UpdateCursorMenu,\n menuData\n );\n }\n\n /** @public */\n public static closeCursorMenu(): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.UpdateCursorMenu,\n undefined\n );\n }\n\n /** @public */\n public static getCursorMenuData(): CursorMenuData | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.cursorMenuData\n : /* istanbul ignore next */ undefined;\n }\n\n public static getActiveIModelId(): string {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.iModelId\n : /* istanbul ignore next */ \"\";\n }\n\n public static setActiveIModelId(iModelId: string): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetActiveIModelId,\n iModelId\n );\n }\n\n public static setIModelConnection(\n iModelConnection: IModelConnection | undefined,\n immediateSync = false\n ) {\n const oldConnection = UiFramework.getIModelConnection();\n if (oldConnection === iModelConnection) return;\n\n InternalFrontstageManager.clearFrontstageDefsForIModelId(\n oldConnection?.iModelId\n );\n\n oldConnection && SyncUiEventDispatcher.clearConnectionEvents(oldConnection);\n iModelConnection &&\n SyncUiEventDispatcher.initializeConnectionEvents(iModelConnection);\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetIModelConnection,\n iModelConnection,\n immediateSync\n );\n const itemsSelected = iModelConnection\n ? iModelConnection.selectionSet.elements.size\n : 0;\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetNumItemsSelected,\n itemsSelected\n );\n UiFramework.setActiveIModelId(iModelConnection?.iModelId ?? \"\");\n }\n\n public static getIModelConnection(): IModelConnection | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.iModelConnection\n : /* istanbul ignore next */ undefined;\n }\n\n /** Called by iModelApp to initialize saved UI state from registered UseSettingsProviders\n * @public\n */\n public static async initializeStateFromUserSettingsProviders(\n immediateSync = false\n ) {\n // let any registered providers to load values from the new storage location\n const providerKeys = [...this._uiSettingsProviderRegistry.keys()];\n for await (const key of providerKeys) {\n await this._uiSettingsProviderRegistry\n .get(key)!\n .loadUserSettings(UiFramework._uiStateStorage);\n }\n\n // istanbul ignore next\n if (immediateSync)\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.UiStateStorageChanged\n );\n else\n SyncUiEventDispatcher.dispatchSyncUiEvent(\n SyncUiEventId.UiStateStorageChanged\n );\n }\n\n /** @public */\n public static async setUiStateStorage(\n storage: UiStateStorage,\n immediateSync = false\n ) {\n if (UiFramework._uiStateStorage === storage) return;\n\n UiFramework._uiStateStorage = storage;\n await this.initializeStateFromUserSettingsProviders(immediateSync);\n }\n\n /** The UI Settings Storage is a convenient wrapper around Local Storage to assist in caching state information across user sessions.\n * It was previously used to conflate both the state information across session and the information driven directly from user explicit action,\n * which are now handled with user preferences.\n * @public\n */\n public static getUiStateStorage(): UiStateStorage {\n return UiFramework._uiStateStorage;\n }\n\n public static setDefaultIModelViewportControlId(\n iModelViewportControlId: string,\n immediateSync = false\n ) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultIModelViewportControlId,\n iModelViewportControlId,\n immediateSync\n );\n }\n\n public static getDefaultIModelViewportControlId(): string | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultIModelViewportControlId\n : /* istanbul ignore next */ undefined;\n }\n\n public static setDefaultViewId(viewId: string, immediateSync = false) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultViewId,\n viewId,\n immediateSync\n );\n }\n\n public static getDefaultViewId(): string | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultViewId\n : /* istanbul ignore next */ undefined;\n }\n\n public static setDefaultViewState(\n viewState: ViewState,\n immediateSync = false\n ) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultViewState,\n viewState,\n immediateSync\n );\n }\n public static getDefaultViewState(): ViewState | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultViewState\n : /* istanbul ignore next */ undefined;\n }\n\n /**\n * Returns the stored list of available selection scopes. This list should be set by the application\n * by dispatching the `setAvailableSelectionScopes` action.\n * The value for this action typically come from `Presentation.selection.scopes.getSelectionScopes()`\n * method found in the `@itwin/presentation-frontend` package.\n * @public */\n public static getAvailableSelectionScopes(): PresentationSelectionScope[] {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.availableSelectionScopes\n : /* istanbul ignore next */\n [{ id: \"element\", label: \"Element\" } as PresentationSelectionScope];\n }\n\n public static getIsUiVisible() {\n return UiFramework.visibility.isUiVisible;\n }\n\n public static setIsUiVisible(visible: boolean) {\n if (UiFramework.visibility.isUiVisible !== visible) {\n UiFramework.visibility.isUiVisible = visible;\n UiFramework.onUiVisibilityChanged.emit({ visible });\n }\n }\n\n /**\n * Set the theme value used by the [[ThemeManager]] component.\n */\n public static setColorTheme(theme: ThemeId) {\n if (UiFramework.getColorTheme() === theme) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetTheme,\n theme,\n true\n );\n }\n\n public static getColorTheme(): ThemeId {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.theme\n : /* istanbul ignore next */ SYSTEM_PREFERRED_COLOR_THEME;\n }\n\n /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified.\n * @param opacity a value between 0 and 1. The default value is 0.5. IT IS NOT ADVISED TO USE A VALUE BELOW 0.2\n * @public\n */\n public static setToolbarOpacity(opacity: number) {\n if (UiFramework.getToolbarOpacity() === opacity) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetToolbarOpacity,\n opacity,\n true\n );\n }\n\n /** UiFramework.getToolbarOpacity() returns a number between 0 and 1 that is the non-hovered opacity for toolbars.\n * @public\n */\n public static getToolbarOpacity(): number {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.toolbarOpacity\n : /* istanbul ignore next */ TOOLBAR_OPACITY_DEFAULT;\n }\n\n public static setWidgetOpacity(opacity: number) {\n if (UiFramework.getWidgetOpacity() === opacity) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetWidgetOpacity,\n opacity,\n true\n );\n }\n\n public static getWidgetOpacity(): number {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.widgetOpacity\n : /* istanbul ignore next */ WIDGET_OPACITY_DEFAULT;\n }\n\n // eslint-disable-next-line @itwin/prefer-get\n public static isMobile() {\n return ProcessDetector.isMobileBrowser;\n }\n\n public static get showWidgetIcon(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.showWidgetIcon\n : /* istanbul ignore next */ false;\n }\n\n public static setShowWidgetIcon(value: boolean) {\n if (UiFramework.showWidgetIcon === value) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetShowWidgetIcon,\n value,\n true\n );\n }\n /** Animate Tool Settings on appear */\n public static get animateToolSettings(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.animateToolSettings\n : /* istanbul ignore next */ false;\n }\n public static setAnimateToolSettings(value: boolean) {\n if (UiFramework.animateToolSettings === value) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.AnimateToolSettings,\n value,\n true\n );\n }\n\n /** Use Tool Name As Tool Settings Widget Tab Label */\n public static get useToolAsToolSettingsLabel(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState\n .useToolAsToolSettingsLabel\n : /* istanbul ignore next */ false;\n }\n public static setUseToolAsToolSettingsLabel(value: boolean) {\n if (UiFramework.useToolAsToolSettingsLabel === value) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.UseToolAsToolSettingsLabel,\n value,\n true\n );\n }\n\n /** When `true`, panels will close as soon as the mouse leave the panel.\n * When `false` (default), panels will close on next click outside the panel.\n * @public */\n public static get autoCollapseUnpinnedPanels(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState\n .autoCollapseUnpinnedPanels\n : /* istanbul ignore next */ false;\n }\n\n /** Method used to enable the automatic closing of an unpinned widget panel as soon as the\n * mouse leaves the widget panel. The default behavior is to require a mouse click outside\n * the panel before it is closed.\n * @public */\n\n public static setAutoCollapseUnpinnedPanels(value: boolean) {\n if (UiFramework.autoCollapseUnpinnedPanels === value) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.AutoCollapseUnpinnedPanels,\n value,\n true\n );\n }\n\n public static get useDragInteraction(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.useDragInteraction\n : false;\n }\n\n public static setUseDragInteraction(useDragInteraction: boolean) {\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetDragInteraction,\n useDragInteraction,\n true\n );\n }\n\n /** Returns the variable controlling whether the overlay is displayed in a Viewport\n * @public\n */\n public static get viewOverlayDisplay() {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.viewOverlayDisplay\n : /* istanbul ignore next */ true;\n }\n /** Set the variable that controls display of the view overlay. Applies to all viewports in the app\n * @public\n */\n public static setViewOverlayDisplay(display: boolean) {\n if (UiFramework.viewOverlayDisplay === display) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetViewOverlayDisplay,\n display\n );\n }\n\n /** Determines whether a ContextMenu is open\n * @alpha\n * */\n public static get isContextMenuOpen(): boolean {\n const contextMenu = document.querySelector(\"div.core-context-menu-opened\");\n return contextMenu !== null && contextMenu !== undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"UiFramework.js","sourceRoot":"","sources":["../../../src/appui-react/UiFramework.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n// cSpell:ignore configurableui clientservices\n\nimport type { Store } from \"redux\";\nimport { Logger, ProcessDetector } from \"@itwin/core-bentley\";\nimport type { Localization } from \"@itwin/core-common\";\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport { IModelApp, SnapMode } from \"@itwin/core-frontend\";\nimport { UiAdmin, UiError, UiEvent } from \"@itwin/appui-abstract\";\nimport type { UiStateStorage } from \"@itwin/core-react\";\nimport { LocalStateStorage, SettingsManager } from \"@itwin/core-react\";\nimport { getObjectClassName } from \"@itwin/core-react\";\nimport { UiIModelComponents } from \"@itwin/imodel-components-react\";\nimport { BackstageManager } from \"./backstage/BackstageManager\";\nimport { InternalChildWindowManager } from \"./childwindow/InternalChildWindowManager\";\nimport { InternalConfigurableUiManager } from \"./configurableui/InternalConfigurableUiManager\";\nimport { ConfigurableUiActionId } from \"./configurableui/state\";\nimport type { FrameworkState } from \"./redux/FrameworkState\";\nimport type {\n CursorMenuData,\n PresentationSelectionScope,\n} from \"./redux/SessionState\";\nimport { SessionStateActionId } from \"./redux/SessionState\";\nimport { StateManager } from \"./redux/StateManager\";\nimport type { HideIsolateEmphasizeActionHandler } from \"./selection/HideIsolateEmphasizeManager\";\nimport { HideIsolateEmphasizeManager } from \"./selection/HideIsolateEmphasizeManager\";\nimport type { ThemeId } from \"./theme/ThemeManager\";\nimport {\n SYSTEM_PREFERRED_COLOR_THEME,\n TOOLBAR_OPACITY_DEFAULT,\n WIDGET_OPACITY_DEFAULT,\n} from \"./theme/ThemeManager\";\nimport * as keyinPaletteTools from \"./tools/KeyinPaletteTools\";\nimport * as openSettingTools from \"./tools/OpenSettingsTool\";\nimport * as restoreLayoutTools from \"./tools/RestoreLayoutTool\";\nimport * as toolSettingTools from \"./tools/ToolSettingsTools\";\nimport {\n InternalUiShowHideManager,\n UiShowHideSettingsProvider,\n} from \"./utils/InternalUiShowHideManager\";\nimport { WidgetManager } from \"./widgets/WidgetManager\";\nimport { InternalFrontstageManager } from \"./frontstage/InternalFrontstageManager\";\nimport { InternalContentViewManager } from \"./content/InternalContentViewManager\";\nimport { InternalModalDialogManager } from \"./dialog/InternalModalDialogManager\";\nimport { InternalModelessDialogManager } from \"./dialog/InternalModelessDialogManager\";\nimport { InternalKeyboardShortcutManager } from \"./keyboardshortcut/InternalKeyboardShortcut\";\nimport { InternalToolSettingsManager } from \"./toolsettings/InternalToolSettingsManager\";\nimport type { FrameworkBackstage } from \"./framework/FrameworkBackstage\";\nimport type { FrameworkChildWindows } from \"./framework/FrameworkChildWindows\";\nimport type { FrameworkControls } from \"./framework/FrameworkControls\";\nimport type { FrameworkFrontstages } from \"./framework/FrameworkFrontstages\";\nimport type { FrameworkToolSettings } from \"./framework/FrameworkToolSettings\";\nimport type { FrameworkContent } from \"./framework/FrameworkContent\";\nimport type { FrameworkDialogs } from \"./framework/FrameworkDialogs\";\nimport type { FrameworkKeyboardShortcuts } from \"./framework/FrameworkKeyboardShortcuts\";\nimport type { FrameworkVisibility } from \"./framework/FrameworkVisibility\";\nimport {\n SyncUiEventDispatcher,\n SyncUiEventId,\n} from \"./syncui/SyncUiEventDispatcher\";\n\n// cSpell:ignore Mobi\n\n/** Interface to be implemented but any classes that wants to load their user settings when the UiStateEntry storage class is set.\n * @public\n */\nexport interface UserSettingsProvider {\n /** Unique provider Id */\n providerId: string;\n /** Function to load settings from settings storage */\n loadUserSettings(storage: UiStateStorage): Promise<void>;\n}\n\n/** UiVisibility Event Args interface.\n * @public\n */\nexport interface UiVisibilityEventArgs {\n visible: boolean;\n}\n\n/** UiVisibility Event class.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class UiVisibilityChangedEvent extends UiEvent<UiVisibilityEventArgs> {}\n\n/** TrackingTime time argument used by our feature tracking manager as an option argument to the TelemetryClient\n * @internal\n */\nexport interface TrackingTime {\n startTime: Date;\n endTime: Date;\n}\n\n/** Main entry point to configure and interact with the features provided by the AppUi-react package.\n * @public\n */\nexport class UiFramework {\n /**\n * Operation on the backstage component.\n * @public\n */\n public static get backstage(): FrameworkBackstage {\n // istanbul ignore next\n if (!UiFramework._backstageManager)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._backstageManager;\n }\n\n /**\n * Manage access to the child windows.\n * @public\n */\n public static get childWindows(): FrameworkChildWindows {\n return this._childWindowManager;\n }\n\n /**\n * Manage registered controls\n * @public\n */\n public static get controls(): FrameworkControls {\n return InternalConfigurableUiManager;\n }\n\n /**\n * Manage access to frontstages and related helper methods.\n * @public\n */\n public static get frontstages(): FrameworkFrontstages {\n return InternalFrontstageManager;\n }\n\n /**\n * Manage access and behavior of the tool settings.\n * @public\n */\n public static get toolSettings(): FrameworkToolSettings {\n return InternalToolSettingsManager;\n }\n\n /**\n * Manage content presented by the frontstages.\n * @public\n */\n public static get content(): FrameworkContent {\n return InternalContentViewManager;\n }\n\n /**\n * Manage displayed dialogs.\n * @public\n */\n public static get dialogs(): FrameworkDialogs {\n return {\n modal: InternalModalDialogManager,\n modeless: InternalModelessDialogManager,\n };\n }\n\n /**\n * Manages global keyboard shortcuts\n *\n * Note: This only manages the list of available shortcuts registered with it. It does not listens to the actual\n * keyboard events. In order for these shortcuts to be called upon a keyboard event, the application can\n * override the `IModelApp.toolAdmin` and assign it [[FrameworkToolAdmin]] or create an event listener\n * and call `UiFramework.keyboardShortcuts.processKey`.\n * @public\n */\n public static get keyboardShortcuts(): FrameworkKeyboardShortcuts {\n return InternalKeyboardShortcutManager;\n }\n\n /**\n * Manages UI visibility (Show/Hide)\n * @public\n */\n public static get visibility(): FrameworkVisibility {\n return InternalUiShowHideManager;\n }\n\n private static _initialized = false;\n private static _store?: Store<any>;\n private static _complaint = \"UiFramework not initialized\";\n private static _frameworkStateKeyInStore: string = \"frameworkState\"; // default name\n private static _backstageManager?: BackstageManager;\n private static _widgetManager?: WidgetManager;\n private static _hideIsolateEmphasizeActionHandler?: HideIsolateEmphasizeActionHandler;\n /** this provides a default state storage handler */\n private static _uiStateStorage: UiStateStorage = new LocalStateStorage();\n private static _settingsManager?: SettingsManager;\n private static _uiSettingsProviderRegistry: Map<\n string,\n UserSettingsProvider\n > = new Map<string, UserSettingsProvider>();\n private static _childWindowManager = new InternalChildWindowManager();\n public static useDefaultPopoutUrl = false;\n\n /** Registers class that will be informed when the UserSettingsStorage location has been set or changed. This allows\n * classes to load any previously saved settings from the new storage location. Common storage locations are the browser's\n * local storage, or the iTwin Product Settings cloud storage available via the SettingsAdmin see `IModelApp.settingsAdmin`.\n * @public\n */\n public static registerUserSettingsProvider(entry: UserSettingsProvider) {\n if (this._uiSettingsProviderRegistry.has(entry.providerId)) return false;\n\n this._uiSettingsProviderRegistry.set(entry.providerId, entry);\n return true;\n }\n\n /** Get Show Ui event.\n * @public\n */\n public static readonly onUiVisibilityChanged = new UiVisibilityChangedEvent();\n\n /**\n * Called by the application to initialize the UiFramework. Also initializes UIIModelComponents, UiComponents, UiCore.\n * @param store The single Redux store created by the host application. If this is `undefined` then it is assumed that the [[StateManager]] is being used to provide the Redux store.\n * @param frameworkStateKey The name of the key used by the app when adding the UiFramework state into the Redux store. If not defined \"frameworkState\" is assumed. This value is ignored if [[StateManager]] is being used. The StateManager use \"frameworkState\".\n */\n public static async initialize(\n store: Store<any> | undefined,\n frameworkStateKey?: string\n ): Promise<void> {\n if (UiFramework._initialized) {\n Logger.logInfo(\n UiFramework.loggerCategory(UiFramework),\n `UiFramework.initialize already called`\n );\n return;\n }\n\n /* if store is undefined then the StateManager class should have been initialized by parent app and the apps default set of reducers registered with it.\n If the app has no reducers to add and does not initialize a StateManager then just initialize the StateManager with the default framework reducer now */\n if (undefined === store && !StateManager.isInitialized(true))\n new StateManager();\n\n UiFramework._store = store;\n // ignore setting _frameworkStateKeyInStore if not using store\n if (frameworkStateKey && store)\n UiFramework._frameworkStateKeyInStore = frameworkStateKey;\n\n // set up namespace and register all tools from package\n const frameworkNamespace = IModelApp.localization?.registerNamespace(\n UiFramework.localizationNamespace\n );\n [\n restoreLayoutTools,\n keyinPaletteTools,\n openSettingTools,\n toolSettingTools,\n ].forEach((tool) =>\n IModelApp.tools.registerModule(tool, this.localizationNamespace)\n );\n\n UiFramework._backstageManager = new BackstageManager();\n UiFramework._hideIsolateEmphasizeActionHandler =\n new HideIsolateEmphasizeManager(); // this allows user to override the default HideIsolateEmphasizeManager implementation.\n UiFramework._widgetManager = new WidgetManager();\n\n // Initialize ui-imodel-components, ui-components, ui-core & ui-abstract\n await UiIModelComponents.initialize();\n\n UiFramework.settingsManager.onSettingsProvidersChanged.addListener(() => {\n SyncUiEventDispatcher.dispatchSyncUiEvent(\n SyncUiEventId.SettingsProvidersChanged\n );\n });\n\n // Initialize the MessagePresenter interface in UiAdmin for Editor notifications\n UiAdmin.messagePresenter = IModelApp.notifications;\n\n UiFramework._initialized = true;\n\n // initialize any standalone settings providers that don't need to have defaults set by iModelApp\n UiShowHideSettingsProvider.initialize();\n\n InternalConfigurableUiManager.initialize();\n\n return frameworkNamespace;\n }\n\n /** Un-registers the UiFramework internationalization service namespace */\n public static terminate() {\n UiFramework._store = undefined;\n UiFramework._frameworkStateKeyInStore = \"frameworkState\";\n if (StateManager.isInitialized(true)) StateManager.clearStore();\n // istanbul ignore next\n IModelApp.localization?.unregisterNamespace(\n UiFramework.localizationNamespace\n );\n UiFramework._backstageManager = undefined;\n UiFramework._widgetManager = undefined;\n UiFramework._hideIsolateEmphasizeActionHandler = undefined;\n UiFramework._settingsManager = undefined;\n\n UiIModelComponents.terminate();\n InternalUiShowHideManager.terminate();\n UiFramework._initialized = false;\n }\n\n /** Determines if UiFramework has been initialized */\n public static get initialized(): boolean {\n return UiFramework._initialized;\n }\n\n /** Property that returns the SettingManager used by AppUI-based applications.\n * @public\n */\n public static get settingsManager() {\n if (undefined === UiFramework._settingsManager)\n UiFramework._settingsManager = new SettingsManager();\n return UiFramework._settingsManager;\n }\n\n /** @public */\n public static get frameworkStateKey(): string {\n return UiFramework._frameworkStateKeyInStore;\n }\n\n /** The UiFramework state maintained by Redux\n * @public\n */\n public static get frameworkState(): FrameworkState | undefined {\n try {\n return UiFramework.store.getState()[UiFramework.frameworkStateKey];\n } catch (_e) {\n return undefined;\n }\n }\n\n /** The Redux store */\n public static get store(): Store<any> {\n if (UiFramework._store) return UiFramework._store;\n\n // istanbul ignore else\n if (!StateManager.isInitialized(true))\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `Error trying to access redux store before either store or StateManager has been initialized.`\n );\n\n // istanbul ignore next\n return StateManager.store;\n }\n\n /** The internationalization service created by the app.\n * @internal\n */\n public static get localization(): Localization {\n // istanbul ignore next\n if (!IModelApp.localization)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `IModelApp.localization has not been defined.`\n );\n return IModelApp.localization;\n }\n\n /** The internationalization service namespace. */\n public static get localizationNamespace(): string {\n return \"UiFramework\";\n }\n\n /** @public */\n public static get hideIsolateEmphasizeActionHandler(): HideIsolateEmphasizeActionHandler {\n // istanbul ignore next\n if (!UiFramework._hideIsolateEmphasizeActionHandler)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._hideIsolateEmphasizeActionHandler;\n }\n\n /** @public */\n public static setHideIsolateEmphasizeActionHandler(\n handler: HideIsolateEmphasizeActionHandler | undefined\n ) {\n // istanbul ignore else\n if (handler) UiFramework._hideIsolateEmphasizeActionHandler = handler;\n else\n UiFramework._hideIsolateEmphasizeActionHandler =\n new HideIsolateEmphasizeManager();\n }\n\n /** @alpha */\n public static get widgetManager(): WidgetManager {\n // istanbul ignore next\n if (!UiFramework._widgetManager)\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n UiFramework._complaint\n );\n return UiFramework._widgetManager;\n }\n\n /** Calls localization.getLocalizedStringWithNamespace with the \"UiFramework\" namespace. Do NOT include the namespace in the key.\n * @internal\n */\n public static translate(key: string | string[]): string {\n return IModelApp.localization.getLocalizedString(key, {\n ns: UiFramework.localizationNamespace,\n });\n }\n\n /** @internal */\n public static get packageName(): string {\n return \"appui-react\";\n }\n\n /** @internal */\n public static loggerCategory(obj: any): string {\n const className = getObjectClassName(obj);\n const category =\n UiFramework.packageName + (className ? `.${className}` : \"\");\n return category;\n }\n\n public static dispatchActionToStore(\n type: string,\n payload: any,\n immediateSync = false\n ) {\n UiFramework.store.dispatch({ type, payload });\n if (immediateSync) SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(type);\n else SyncUiEventDispatcher.dispatchSyncUiEvent(type);\n }\n\n public static setAccudrawSnapMode(snapMode: SnapMode) {\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetSnapMode,\n snapMode,\n true\n );\n }\n\n public static getAccudrawSnapMode(): SnapMode {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.snapMode\n : /* istanbul ignore next */ SnapMode.NearestKeypoint;\n }\n\n /**\n * Returns the stored active selection scope id.\n */\n public static getActiveSelectionScope(): string {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.activeSelectionScope\n : /* istanbul ignore next */ \"element\";\n }\n\n /**\n * This method stores the active selection scope to the supplied scope id, and triggers\n * a `SessionStateActionId.SetSelectionScope` event in the `SyncUiEventDispatcher`.\n * Note: As of 4.0, this method *does not change* the active selection scope in the `Presentation.selection.scopes.activeScope` property.\n * This event should be listened to and the change should typically be applied to\n * `Presentation.selection.scopes.activeScope` property from the `@itwin/presentation-frontend` package.\n */\n public static setActiveSelectionScope(selectionScopeId: string): void {\n // istanbul ignore else\n if (UiFramework.frameworkState) {\n const foundIndex =\n UiFramework.frameworkState.sessionState.availableSelectionScopes.findIndex(\n (selectionScope: PresentationSelectionScope) =>\n selectionScope.id === selectionScopeId\n );\n if (-1 !== foundIndex) {\n const scope =\n UiFramework.frameworkState.sessionState.availableSelectionScopes[\n foundIndex\n ];\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetSelectionScope,\n scope.id\n );\n }\n }\n }\n\n /** @public */\n public static openCursorMenu(menuData: CursorMenuData | undefined): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.UpdateCursorMenu,\n menuData\n );\n }\n\n /** @public */\n public static closeCursorMenu(): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.UpdateCursorMenu,\n undefined\n );\n }\n\n /** @public */\n public static getCursorMenuData(): CursorMenuData | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.cursorMenuData\n : /* istanbul ignore next */ undefined;\n }\n\n public static getActiveIModelId(): string {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.iModelId\n : /* istanbul ignore next */ \"\";\n }\n\n public static setActiveIModelId(iModelId: string): void {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetActiveIModelId,\n iModelId\n );\n }\n\n public static setIModelConnection(\n iModelConnection: IModelConnection | undefined,\n immediateSync = false\n ) {\n const oldConnection = UiFramework.getIModelConnection();\n if (oldConnection === iModelConnection) return;\n\n InternalFrontstageManager.clearFrontstageDefsForIModelId(\n oldConnection?.iModelId\n );\n\n oldConnection && SyncUiEventDispatcher.clearConnectionEvents(oldConnection);\n iModelConnection &&\n SyncUiEventDispatcher.initializeConnectionEvents(iModelConnection);\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetIModelConnection,\n iModelConnection,\n immediateSync\n );\n const itemsSelected = iModelConnection\n ? iModelConnection.selectionSet.elements.size\n : 0;\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetNumItemsSelected,\n itemsSelected\n );\n UiFramework.setActiveIModelId(iModelConnection?.iModelId ?? \"\");\n }\n\n public static getIModelConnection(): IModelConnection | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.iModelConnection\n : /* istanbul ignore next */ undefined;\n }\n\n /** Called by iModelApp to initialize saved UI state from registered UseSettingsProviders\n * @public\n */\n public static async initializeStateFromUserSettingsProviders(\n immediateSync = false\n ) {\n // let any registered providers to load values from the new storage location\n const providerKeys = [...this._uiSettingsProviderRegistry.keys()];\n for await (const key of providerKeys) {\n await this._uiSettingsProviderRegistry\n .get(key)!\n .loadUserSettings(UiFramework._uiStateStorage);\n }\n\n // istanbul ignore next\n if (immediateSync)\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.UiStateStorageChanged\n );\n else\n SyncUiEventDispatcher.dispatchSyncUiEvent(\n SyncUiEventId.UiStateStorageChanged\n );\n }\n\n /** @public */\n public static async setUiStateStorage(\n storage: UiStateStorage,\n immediateSync = false\n ) {\n if (UiFramework._uiStateStorage === storage) return;\n\n UiFramework._uiStateStorage = storage;\n await this.initializeStateFromUserSettingsProviders(immediateSync);\n }\n\n /** The UI Settings Storage is a convenient wrapper around Local Storage to assist in caching state information across user sessions.\n * It was previously used to conflate both the state information across session and the information driven directly from user explicit action,\n * which are now handled with user preferences.\n * @public\n */\n public static getUiStateStorage(): UiStateStorage {\n return UiFramework._uiStateStorage;\n }\n\n public static setDefaultIModelViewportControlId(\n iModelViewportControlId: string,\n immediateSync = false\n ) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultIModelViewportControlId,\n iModelViewportControlId,\n immediateSync\n );\n }\n\n public static getDefaultIModelViewportControlId(): string | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultIModelViewportControlId\n : /* istanbul ignore next */ undefined;\n }\n\n public static setDefaultViewId(viewId: string, immediateSync = false) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultViewId,\n viewId,\n immediateSync\n );\n }\n\n public static getDefaultViewId(): string | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultViewId\n : /* istanbul ignore next */ undefined;\n }\n\n public static setDefaultViewState(\n viewState: ViewState,\n immediateSync = false\n ) {\n UiFramework.dispatchActionToStore(\n SessionStateActionId.SetDefaultViewState,\n viewState,\n immediateSync\n );\n }\n public static getDefaultViewState(): ViewState | undefined {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.defaultViewState\n : /* istanbul ignore next */ undefined;\n }\n\n /**\n * Returns the stored list of available selection scopes. This list should be set by the application\n * by dispatching the `setAvailableSelectionScopes` action.\n * The value for this action typically come from `Presentation.selection.scopes.getSelectionScopes()`\n * method found in the `@itwin/presentation-frontend` package.\n * @public */\n public static getAvailableSelectionScopes(): PresentationSelectionScope[] {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.availableSelectionScopes\n : /* istanbul ignore next */\n [{ id: \"element\", label: \"Element\" } as PresentationSelectionScope];\n }\n\n public static getIsUiVisible() {\n return UiFramework.visibility.isUiVisible;\n }\n\n public static setIsUiVisible(visible: boolean) {\n if (UiFramework.visibility.isUiVisible !== visible) {\n UiFramework.visibility.isUiVisible = visible;\n UiFramework.onUiVisibilityChanged.emit({ visible });\n }\n }\n\n /**\n * Set the theme value used by the [[ThemeManager]] component.\n */\n public static setColorTheme(theme: ThemeId) {\n if (UiFramework.getColorTheme() === theme) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetTheme,\n theme,\n true\n );\n }\n\n public static getColorTheme(): ThemeId {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.theme\n : /* istanbul ignore next */ SYSTEM_PREFERRED_COLOR_THEME;\n }\n\n /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified.\n * @param opacity a value between 0 and 1. The default value is 0.5. IT IS NOT ADVISED TO USE A VALUE BELOW 0.2\n * @public\n */\n public static setToolbarOpacity(opacity: number) {\n if (UiFramework.getToolbarOpacity() === opacity) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetToolbarOpacity,\n opacity,\n true\n );\n }\n\n /** UiFramework.getToolbarOpacity() returns a number between 0 and 1 that is the non-hovered opacity for toolbars.\n * @public\n */\n public static getToolbarOpacity(): number {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.toolbarOpacity\n : /* istanbul ignore next */ TOOLBAR_OPACITY_DEFAULT;\n }\n\n public static setWidgetOpacity(opacity: number) {\n if (UiFramework.getWidgetOpacity() === opacity) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetWidgetOpacity,\n opacity,\n true\n );\n }\n\n public static getWidgetOpacity(): number {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.widgetOpacity\n : /* istanbul ignore next */ WIDGET_OPACITY_DEFAULT;\n }\n\n // eslint-disable-next-line @itwin/prefer-get\n public static isMobile() {\n return ProcessDetector.isMobileBrowser;\n }\n\n public static get showWidgetIcon(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.showWidgetIcon\n : /* istanbul ignore next */ false;\n }\n\n public static setShowWidgetIcon(value: boolean) {\n if (UiFramework.showWidgetIcon === value) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetShowWidgetIcon,\n value,\n true\n );\n }\n /** Animate Tool Settings on appear */\n public static get animateToolSettings(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.animateToolSettings\n : /* istanbul ignore next */ false;\n }\n public static setAnimateToolSettings(value: boolean) {\n if (UiFramework.animateToolSettings === value) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.AnimateToolSettings,\n value,\n true\n );\n }\n\n /** Use Tool Name As Tool Settings Widget Tab Label */\n public static get useToolAsToolSettingsLabel(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState\n .useToolAsToolSettingsLabel\n : /* istanbul ignore next */ false;\n }\n public static setUseToolAsToolSettingsLabel(value: boolean) {\n if (UiFramework.useToolAsToolSettingsLabel === value) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.UseToolAsToolSettingsLabel,\n value,\n true\n );\n }\n\n /** When `true`, panels will close as soon as the mouse leave the panel.\n * When `false` (default), panels will close on next click outside the panel.\n * @public */\n public static get autoCollapseUnpinnedPanels(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState\n .autoCollapseUnpinnedPanels\n : /* istanbul ignore next */ false;\n }\n\n /** Method used to enable the automatic closing of an unpinned widget panel as soon as the\n * mouse leaves the widget panel. The default behavior is to require a mouse click outside\n * the panel before it is closed.\n * @public */\n\n public static setAutoCollapseUnpinnedPanels(value: boolean) {\n if (UiFramework.autoCollapseUnpinnedPanels === value) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.AutoCollapseUnpinnedPanels,\n value,\n true\n );\n }\n\n public static get useDragInteraction(): boolean {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.useDragInteraction\n : false;\n }\n\n public static setUseDragInteraction(useDragInteraction: boolean) {\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetDragInteraction,\n useDragInteraction,\n true\n );\n }\n\n /** Returns the variable controlling whether the overlay is displayed in a Viewport\n * @public\n */\n public static get viewOverlayDisplay() {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.configurableUiState.viewOverlayDisplay\n : /* istanbul ignore next */ true;\n }\n /** Set the variable that controls display of the view overlay. Applies to all viewports in the app\n * @public\n */\n public static setViewOverlayDisplay(display: boolean) {\n if (UiFramework.viewOverlayDisplay === display) return;\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetViewOverlayDisplay,\n display\n );\n }\n\n /** Determines whether a ContextMenu is open\n * @alpha\n * */\n public static get isContextMenuOpen(): boolean {\n const contextMenu = document.querySelector(\"div.core-context-menu-opened\");\n return contextMenu !== null && contextMenu !== undefined;\n }\n}\n"]}
@@ -6,7 +6,8 @@ import * as React from "react";
6
6
  import type { CommonProps, UiStateStorage } from "@itwin/core-react";
7
7
  import { Orientation } from "@itwin/core-react";
8
8
  /** Properties for [[AccuDrawFieldContainer]] component
9
- * @beta */
9
+ * @beta
10
+ */
10
11
  export interface AccuDrawFieldContainerProps extends CommonProps {
11
12
  /** Orientation of the fields */
12
13
  orientation: Orientation;
@@ -16,6 +17,7 @@ export interface AccuDrawFieldContainerProps extends CommonProps {
16
17
  showZOverride?: boolean;
17
18
  }
18
19
  /** AccuDraw Ui Field Container displays [[AccuDrawInputField]] for each field
19
- * @beta */
20
+ * @beta
21
+ */
20
22
  export declare function AccuDrawFieldContainer(props: AccuDrawFieldContainerProps): React.JSX.Element;
21
23
  //# sourceMappingURL=AccuDrawFieldContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawFieldContainer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawFieldContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,+BAA+B,CAAC;AAEvC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,KAAK,EAAE,WAAW,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAehD;WACW;AACX,MAAM,WAAW,2BAA4B,SAAQ,WAAW;IAC9D,gCAAgC;IAChC,WAAW,EAAE,WAAW,CAAC;IACzB,oFAAoF;IACpF,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,gBAAgB;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAcD;WACW;AACX,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,qBA8axE"}
1
+ {"version":3,"file":"AccuDrawFieldContainer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawFieldContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,+BAA+B,CAAC;AAEvC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,KAAK,EAAE,WAAW,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUhD;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,WAAW;IAC9D,gCAAgC;IAChC,WAAW,EAAE,WAAW,CAAC;IACzB,oFAAoF;IACpF,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,gBAAgB;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAcD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,qBAoaxE"}
@@ -25,7 +25,8 @@ const defaultXLabel = "X";
25
25
  const defaultYLabel = "Y";
26
26
  const defaultZLabel = "Z";
27
27
  /** AccuDraw Ui Field Container displays [[AccuDrawInputField]] for each field
28
- * @beta */
28
+ * @beta
29
+ */
29
30
  export function AccuDrawFieldContainer(props) {
30
31
  const { className, style, orientation, uiSettingsStorage, showZOverride, ...otherProps } = props;
31
32
  const [containerIndex] = React.useState(() => ++AccuDrawContainerIndex);
@@ -35,12 +36,12 @@ export function AccuDrawFieldContainer(props) {
35
36
  const angleInputRef = React.useRef(null);
36
37
  const distanceInputRef = React.useRef(null);
37
38
  const focusField = React.useRef(undefined);
38
- const [mode, setMode] = React.useState(CompassMode.Rectangular);
39
- const [xLock, setXLock] = React.useState(false);
40
- const [yLock, setYLock] = React.useState(false);
41
- const [zLock, setZLock] = React.useState(false);
42
- const [angleLock, setAngleLock] = React.useState(false);
43
- const [distanceLock, setDistanceLock] = React.useState(false);
39
+ const [mode, setMode] = React.useState(() => IModelApp.accuDraw.compassMode);
40
+ const [xLock, setXLock] = React.useState(() => IModelApp.accuDraw.getFieldLock(ItemField.X_Item));
41
+ const [yLock, setYLock] = React.useState(() => IModelApp.accuDraw.getFieldLock(ItemField.Y_Item));
42
+ const [zLock, setZLock] = React.useState(() => IModelApp.accuDraw.getFieldLock(ItemField.Z_Item));
43
+ const [angleLock, setAngleLock] = React.useState(() => IModelApp.accuDraw.getFieldLock(ItemField.ANGLE_Item));
44
+ const [distanceLock, setDistanceLock] = React.useState(() => IModelApp.accuDraw.getFieldLock(ItemField.DIST_Item));
44
45
  const [showZ, setShowZ] = React.useState(true);
45
46
  const [xLabel, setXLabel] = React.useState(defaultXLabel);
46
47
  const [yLabel, setYLabel] = React.useState(defaultYLabel);
@@ -79,12 +80,7 @@ export function AccuDrawFieldContainer(props) {
79
80
  return inputRef;
80
81
  };
81
82
  React.useEffect(() => {
82
- setXLock(IModelApp.accuDraw.getFieldLock(ItemField.X_Item));
83
- setYLock(IModelApp.accuDraw.getFieldLock(ItemField.Y_Item));
84
- setZLock(IModelApp.accuDraw.getFieldLock(ItemField.Z_Item));
85
- setAngleLock(IModelApp.accuDraw.getFieldLock(ItemField.ANGLE_Item));
86
- setDistanceLock(IModelApp.accuDraw.getFieldLock(ItemField.DIST_Item));
87
- const handleSetFieldLock = (args) => {
83
+ return FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.addListener((args) => {
88
84
  switch (args.field) {
89
85
  case ItemField.X_Item:
90
86
  setXLock(args.lock);
@@ -102,8 +98,7 @@ export function AccuDrawFieldContainer(props) {
102
98
  setDistanceLock(args.lock);
103
99
  break;
104
100
  }
105
- };
106
- return FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.addListener(handleSetFieldLock);
101
+ });
107
102
  }, []);
108
103
  const setFocusToField = React.useCallback((field) => {
109
104
  const inputRef = getInputRef(field);
@@ -114,26 +109,21 @@ export function AccuDrawFieldContainer(props) {
114
109
  }
115
110
  }, []);
116
111
  React.useEffect(() => {
117
- const handleSetFieldFocus = (args) => {
112
+ return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener((args) => {
118
113
  focusField.current = args.field;
119
114
  setFocusToField(focusField.current);
120
- };
121
- return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(handleSetFieldFocus);
115
+ });
122
116
  }, [setFocusToField]);
123
117
  React.useEffect(() => {
124
- const handleGrabInputFocus = () => {
125
- // istanbul ignore else
118
+ return FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.addListener(() => {
126
119
  if (focusField.current)
127
120
  setFocusToField(focusField.current);
128
- };
129
- return FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.addListener(handleGrabInputFocus);
121
+ });
130
122
  }, [setFocusToField]);
131
123
  React.useEffect(() => {
132
- setMode(IModelApp.accuDraw.compassMode);
133
- const handleSetMode = (args) => {
124
+ return FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.addListener((args) => {
134
125
  setMode(args.mode);
135
- };
136
- return FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.addListener(handleSetMode);
126
+ });
137
127
  }, []);
138
128
  const handleValueChanged = React.useCallback((field, stringValue) => {
139
129
  FrameworkAccuDraw.setFieldValueFromUi(field, stringValue);
@@ -221,9 +211,7 @@ export function AccuDrawFieldContainer(props) {
221
211
  };
222
212
  return FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.addListener(handleAccuDrawUiSettingsChanged);
223
213
  }, []);
224
- const classNames = classnames("uifw-accudraw-field-container", orientation === Orientation.Vertical
225
- ? "uifw-accudraw-field-container-vertical"
226
- : "uifw-accudraw-field-container-horizontal", className);
214
+ const classNames = classnames("uifw-accudraw-field-container", orientation === Orientation.Vertical ? "uifw-vertical" : "uifw-horizontal", className);
227
215
  const delay = 250;
228
216
  const labelCentered = xLabel !== undefined &&
229
217
  xLabel.length === 1 &&
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawFieldContainer.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawFieldContainer.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 AccuDraw\n */\n\nimport \"./AccuDrawFieldContainer.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { ColorDef } from \"@itwin/core-common\";\nimport type {\n ScreenViewport,\n SelectedViewportChangedArgs,\n} from \"@itwin/core-frontend\";\nimport { CompassMode, IModelApp, ItemField } from \"@itwin/core-frontend\";\nimport type { CommonProps, IconSpec, UiStateStorage } from \"@itwin/core-react\";\nimport { Orientation } from \"@itwin/core-react\";\nimport { getCSSColorFromDef } from \"@itwin/imodel-components-react\";\n\nimport { AccuDrawInputField } from \"./AccuDrawInputField\";\nimport type {\n AccuDrawSetCompassModeEventArgs,\n AccuDrawSetFieldFocusEventArgs,\n AccuDrawSetFieldLockEventArgs,\n} from \"./FrameworkAccuDraw\";\nimport { FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\nimport type { AccuDrawUiSettings } from \"./AccuDrawUiSettings\";\nimport angleIconSvg from \"./angle.svg\";\nimport distanceIconSvg from \"./distance.svg\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Properties for [[AccuDrawFieldContainer]] component\n * @beta */\nexport interface AccuDrawFieldContainerProps extends CommonProps {\n /** Orientation of the fields */\n orientation: Orientation;\n /** Optional parameter for persistent UI settings. Defaults to LocalStateStorage. */\n uiSettingsStorage?: UiStateStorage;\n /** @internal */\n showZOverride?: boolean;\n}\n\nlet AccuDrawContainerIndex = 0;\n\nfunction determineShowZ(vp?: ScreenViewport): boolean {\n const showZ =\n vp !== undefined ? /* istanbul ignore next */ vp.view.is3d() : false;\n return showZ;\n}\n\nconst defaultXLabel = \"X\";\nconst defaultYLabel = \"Y\";\nconst defaultZLabel = \"Z\";\n\n/** AccuDraw Ui Field Container displays [[AccuDrawInputField]] for each field\n * @beta */\nexport function AccuDrawFieldContainer(props: AccuDrawFieldContainerProps) {\n const {\n className,\n style,\n orientation,\n uiSettingsStorage,\n showZOverride,\n ...otherProps\n } = props;\n\n const [containerIndex] = React.useState(() => ++AccuDrawContainerIndex);\n const xInputRef = React.useRef<HTMLInputElement>(null);\n const yInputRef = React.useRef<HTMLInputElement>(null);\n const zInputRef = React.useRef<HTMLInputElement>(null);\n const angleInputRef = React.useRef<HTMLInputElement>(null);\n const distanceInputRef = React.useRef<HTMLInputElement>(null);\n const focusField = React.useRef<ItemField | undefined>(undefined);\n const [mode, setMode] = React.useState(CompassMode.Rectangular);\n const [xLock, setXLock] = React.useState(false);\n const [yLock, setYLock] = React.useState(false);\n const [zLock, setZLock] = React.useState(false);\n const [angleLock, setAngleLock] = React.useState(false);\n const [distanceLock, setDistanceLock] = React.useState(false);\n const [showZ, setShowZ] = React.useState(true);\n const [xLabel, setXLabel] = React.useState<string | undefined>(defaultXLabel);\n const [yLabel, setYLabel] = React.useState<string | undefined>(defaultYLabel);\n const [zLabel, setZLabel] = React.useState<string | undefined>(defaultZLabel);\n const [angleLabel, setAngleLabel] = React.useState<string | undefined>(\n undefined\n );\n const [distanceLabel, setDistanceLabel] = React.useState<string | undefined>(\n undefined\n );\n const [xIcon, setXIcon] = React.useState<IconSpec | undefined>(undefined);\n const [yIcon, setYIcon] = React.useState<IconSpec | undefined>(undefined);\n const [zIcon, setZIcon] = React.useState<IconSpec | undefined>(undefined);\n const [angleIcon, setAngleIcon] = React.useState<IconSpec | undefined>(\n angleIconSvg\n );\n const [distanceIcon, setDistanceIcon] = React.useState<IconSpec | undefined>(\n distanceIconSvg\n );\n const [xStyle, setXStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [yStyle, setYStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [zStyle, setZStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [angleStyle, setAngleStyle] = React.useState<\n React.CSSProperties | undefined\n >(undefined);\n const [distanceStyle, setDistanceStyle] = React.useState<\n React.CSSProperties | undefined\n >(undefined);\n\n const getInputRef = (field: ItemField): React.RefObject<HTMLInputElement> => {\n let inputRef: React.RefObject<HTMLInputElement>;\n switch (field) {\n case ItemField.X_Item:\n inputRef = xInputRef;\n break;\n case ItemField.Y_Item:\n inputRef = yInputRef;\n break;\n case ItemField.Z_Item:\n inputRef = zInputRef;\n break;\n case ItemField.ANGLE_Item:\n inputRef = angleInputRef;\n break;\n case ItemField.DIST_Item:\n inputRef = distanceInputRef;\n break;\n }\n return inputRef;\n };\n\n React.useEffect(() => {\n setXLock(IModelApp.accuDraw.getFieldLock(ItemField.X_Item));\n setYLock(IModelApp.accuDraw.getFieldLock(ItemField.Y_Item));\n setZLock(IModelApp.accuDraw.getFieldLock(ItemField.Z_Item));\n setAngleLock(IModelApp.accuDraw.getFieldLock(ItemField.ANGLE_Item));\n setDistanceLock(IModelApp.accuDraw.getFieldLock(ItemField.DIST_Item));\n\n const handleSetFieldLock = (args: AccuDrawSetFieldLockEventArgs) => {\n switch (args.field) {\n case ItemField.X_Item:\n setXLock(args.lock);\n break;\n case ItemField.Y_Item:\n setYLock(args.lock);\n break;\n case ItemField.Z_Item:\n setZLock(args.lock);\n break;\n case ItemField.ANGLE_Item:\n setAngleLock(args.lock);\n break;\n case ItemField.DIST_Item:\n setDistanceLock(args.lock);\n break;\n }\n };\n return FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.addListener(\n handleSetFieldLock\n );\n }, []);\n\n const setFocusToField = React.useCallback((field: ItemField) => {\n const inputRef = getInputRef(field);\n\n // istanbul ignore else\n if (inputRef.current && document.activeElement !== inputRef.current) {\n inputRef.current.focus();\n inputRef.current.select();\n }\n }, []);\n\n React.useEffect(() => {\n const handleSetFieldFocus = (args: AccuDrawSetFieldFocusEventArgs) => {\n focusField.current = args.field;\n setFocusToField(focusField.current);\n };\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(\n handleSetFieldFocus\n );\n }, [setFocusToField]);\n\n React.useEffect(() => {\n const handleGrabInputFocus = () => {\n // istanbul ignore else\n if (focusField.current) setFocusToField(focusField.current);\n };\n return FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.addListener(\n handleGrabInputFocus\n );\n }, [setFocusToField]);\n\n React.useEffect(() => {\n setMode(IModelApp.accuDraw.compassMode);\n\n const handleSetMode = (args: AccuDrawSetCompassModeEventArgs) => {\n setMode(args.mode);\n };\n\n return FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.addListener(\n handleSetMode\n );\n }, []);\n\n const handleValueChanged = React.useCallback(\n (field: ItemField, stringValue: string) => {\n FrameworkAccuDraw.setFieldValueFromUi(field, stringValue);\n },\n []\n );\n\n const handleEscPressed = React.useCallback(() => {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }, []);\n\n React.useEffect(() => {\n setShowZ(\n showZOverride || determineShowZ(IModelApp.viewManager.selectedView)\n );\n\n // istanbul ignore next\n const handleSelectedViewportChanged = (\n args: SelectedViewportChangedArgs\n ) => {\n setShowZ(determineShowZ(args.current));\n };\n\n return IModelApp.viewManager.onSelectedViewportChanged.addListener(\n handleSelectedViewportChanged\n );\n }, [showZOverride]);\n\n React.useEffect(() => {\n const createFieldStyle = (\n inStyle: React.CSSProperties | undefined,\n backgroundColor: ColorDef | string | undefined,\n foregroundColor: ColorDef | string | undefined\n ): React.CSSProperties | undefined => {\n let fieldStyle: React.CSSProperties | undefined;\n let rgbaString = \"\";\n if (inStyle || backgroundColor || foregroundColor) {\n fieldStyle = inStyle ? inStyle : {};\n if (backgroundColor) {\n rgbaString =\n typeof backgroundColor === \"string\"\n ? backgroundColor\n : getCSSColorFromDef(backgroundColor);\n fieldStyle = { ...fieldStyle, backgroundColor: rgbaString };\n }\n if (foregroundColor) {\n rgbaString =\n typeof foregroundColor === \"string\"\n ? foregroundColor\n : getCSSColorFromDef(foregroundColor);\n fieldStyle = { ...fieldStyle, color: rgbaString };\n }\n }\n return fieldStyle;\n };\n\n const processAccuDrawUiSettings = (settings?: AccuDrawUiSettings) => {\n setXStyle(\n settings\n ? createFieldStyle(\n settings.xStyle,\n settings.xBackgroundColor,\n settings.xForegroundColor\n )\n : undefined\n );\n setYStyle(\n settings\n ? createFieldStyle(\n settings.yStyle,\n settings.yBackgroundColor,\n settings.yForegroundColor\n )\n : undefined\n );\n setZStyle(\n settings\n ? createFieldStyle(\n settings.zStyle,\n settings.zBackgroundColor,\n settings.zForegroundColor\n )\n : undefined\n );\n setAngleStyle(\n settings\n ? createFieldStyle(\n settings.angleStyle,\n settings.angleBackgroundColor,\n settings.angleForegroundColor\n )\n : undefined\n );\n setDistanceStyle(\n settings\n ? createFieldStyle(\n settings.distanceStyle,\n settings.distanceBackgroundColor,\n settings.distanceForegroundColor\n )\n : undefined\n );\n\n setXLabel(\n settings && settings.xLabel !== undefined\n ? settings.xLabel\n : defaultXLabel\n );\n setYLabel(\n settings && settings.yLabel !== undefined\n ? settings.yLabel\n : defaultYLabel\n );\n setZLabel(\n settings && settings.zLabel !== undefined\n ? settings.zLabel\n : defaultZLabel\n );\n setAngleLabel(\n settings && settings.angleLabel !== undefined\n ? settings.angleLabel\n : undefined\n );\n setDistanceLabel(\n settings && settings.distanceLabel !== undefined\n ? settings.distanceLabel\n : undefined\n );\n\n setXIcon(\n settings && settings.xIcon !== undefined ? settings.xIcon : undefined\n );\n setYIcon(\n settings && settings.yIcon !== undefined ? settings.yIcon : undefined\n );\n setZIcon(\n settings && settings.zIcon !== undefined ? settings.zIcon : undefined\n );\n setAngleIcon(\n settings && settings.angleIcon !== undefined\n ? settings.angleIcon\n : angleIconSvg\n );\n setDistanceIcon(\n settings && settings.distanceIcon !== undefined\n ? settings.distanceIcon\n : distanceIconSvg\n );\n };\n\n if (FrameworkAccuDraw.uiStateStorage)\n processAccuDrawUiSettings(FrameworkAccuDraw.uiStateStorage);\n\n // istanbul ignore next\n const handleAccuDrawUiSettingsChanged = () => {\n processAccuDrawUiSettings(FrameworkAccuDraw.uiStateStorage);\n };\n\n return FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.addListener(\n handleAccuDrawUiSettingsChanged\n );\n }, []);\n\n const classNames = classnames(\n \"uifw-accudraw-field-container\",\n orientation === Orientation.Vertical\n ? \"uifw-accudraw-field-container-vertical\"\n : \"uifw-accudraw-field-container-horizontal\",\n className\n );\n\n const delay = 250;\n const labelCentered =\n xLabel !== undefined &&\n xLabel.length === 1 &&\n yLabel !== undefined &&\n yLabel.length === 1 &&\n zLabel !== undefined &&\n zLabel.length === 1;\n\n return (\n <div className={classNames} style={style} {...otherProps}>\n {mode === CompassMode.Rectangular && (\n <>\n <AccuDrawInputField\n ref={xInputRef}\n isLocked={xLock}\n className=\"uifw-accudraw-x-value\"\n style={xStyle}\n field={ItemField.X_Item}\n id={`uifw-accudraw-x-${containerIndex}`}\n data-testid=\"uifw-accudraw-x\"\n label={xLabel}\n iconSpec={xIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.X_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n <AccuDrawInputField\n ref={yInputRef}\n isLocked={yLock}\n className=\"uifw-accudraw-y-value\"\n style={yStyle}\n field={ItemField.Y_Item}\n id={`uifw-accudraw-y-${containerIndex}`}\n data-testid=\"uifw-accudraw-y\"\n label={yLabel}\n iconSpec={yIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.Y_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n {showZ && (\n <AccuDrawInputField\n ref={zInputRef}\n isLocked={zLock}\n className=\"uifw-accudraw-z-value\"\n style={zStyle}\n field={ItemField.Z_Item}\n id={`uifw-accudraw-z-${containerIndex}`}\n data-testid=\"uifw-accudraw-z\"\n label={zLabel}\n iconSpec={zIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.Z_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n )}\n </>\n )}\n {mode === CompassMode.Polar && (\n <>\n <AccuDrawInputField\n ref={angleInputRef}\n isLocked={angleLock}\n className=\"uifw-accudraw-angle-value\"\n style={angleStyle}\n field={ItemField.ANGLE_Item}\n id={`uifw-accudraw-angle-${containerIndex}`}\n data-testid=\"uifw-accudraw-angle\"\n label={angleLabel}\n iconSpec={angleIcon}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.ANGLE_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n <AccuDrawInputField\n ref={distanceInputRef}\n isLocked={distanceLock}\n className=\"uifw-accudraw-distance-value\"\n style={distanceStyle}\n field={ItemField.DIST_Item}\n id={`uifw-accudraw-distance-${containerIndex}`}\n data-testid=\"uifw-accudraw-distance\"\n label={distanceLabel}\n iconSpec={distanceIcon}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.DIST_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n </>\n )}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"AccuDrawFieldContainer.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawFieldContainer.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 AccuDraw\n */\n\nimport \"./AccuDrawFieldContainer.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { ColorDef } from \"@itwin/core-common\";\nimport type {\n ScreenViewport,\n SelectedViewportChangedArgs,\n} from \"@itwin/core-frontend\";\nimport { CompassMode, IModelApp, ItemField } from \"@itwin/core-frontend\";\nimport type { CommonProps, IconSpec, UiStateStorage } from \"@itwin/core-react\";\nimport { Orientation } from \"@itwin/core-react\";\nimport { getCSSColorFromDef } from \"@itwin/imodel-components-react\";\n\nimport { AccuDrawInputField } from \"./AccuDrawInputField\";\nimport { FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\nimport type { AccuDrawUiSettings } from \"./AccuDrawUiSettings\";\nimport angleIconSvg from \"./angle.svg\";\nimport distanceIconSvg from \"./distance.svg\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Properties for [[AccuDrawFieldContainer]] component\n * @beta\n */\nexport interface AccuDrawFieldContainerProps extends CommonProps {\n /** Orientation of the fields */\n orientation: Orientation;\n /** Optional parameter for persistent UI settings. Defaults to LocalStateStorage. */\n uiSettingsStorage?: UiStateStorage;\n /** @internal */\n showZOverride?: boolean;\n}\n\nlet AccuDrawContainerIndex = 0;\n\nfunction determineShowZ(vp?: ScreenViewport): boolean {\n const showZ =\n vp !== undefined ? /* istanbul ignore next */ vp.view.is3d() : false;\n return showZ;\n}\n\nconst defaultXLabel = \"X\";\nconst defaultYLabel = \"Y\";\nconst defaultZLabel = \"Z\";\n\n/** AccuDraw Ui Field Container displays [[AccuDrawInputField]] for each field\n * @beta\n */\nexport function AccuDrawFieldContainer(props: AccuDrawFieldContainerProps) {\n const {\n className,\n style,\n orientation,\n uiSettingsStorage,\n showZOverride,\n ...otherProps\n } = props;\n\n const [containerIndex] = React.useState(() => ++AccuDrawContainerIndex);\n const xInputRef = React.useRef<HTMLInputElement>(null);\n const yInputRef = React.useRef<HTMLInputElement>(null);\n const zInputRef = React.useRef<HTMLInputElement>(null);\n const angleInputRef = React.useRef<HTMLInputElement>(null);\n const distanceInputRef = React.useRef<HTMLInputElement>(null);\n const focusField = React.useRef<ItemField | undefined>(undefined);\n const [mode, setMode] = React.useState(() => IModelApp.accuDraw.compassMode);\n const [xLock, setXLock] = React.useState(() =>\n IModelApp.accuDraw.getFieldLock(ItemField.X_Item)\n );\n const [yLock, setYLock] = React.useState(() =>\n IModelApp.accuDraw.getFieldLock(ItemField.Y_Item)\n );\n const [zLock, setZLock] = React.useState(() =>\n IModelApp.accuDraw.getFieldLock(ItemField.Z_Item)\n );\n const [angleLock, setAngleLock] = React.useState(() =>\n IModelApp.accuDraw.getFieldLock(ItemField.ANGLE_Item)\n );\n const [distanceLock, setDistanceLock] = React.useState(() =>\n IModelApp.accuDraw.getFieldLock(ItemField.DIST_Item)\n );\n const [showZ, setShowZ] = React.useState(true);\n const [xLabel, setXLabel] = React.useState<string | undefined>(defaultXLabel);\n const [yLabel, setYLabel] = React.useState<string | undefined>(defaultYLabel);\n const [zLabel, setZLabel] = React.useState<string | undefined>(defaultZLabel);\n const [angleLabel, setAngleLabel] = React.useState<string | undefined>(\n undefined\n );\n const [distanceLabel, setDistanceLabel] = React.useState<string | undefined>(\n undefined\n );\n const [xIcon, setXIcon] = React.useState<IconSpec | undefined>(undefined);\n const [yIcon, setYIcon] = React.useState<IconSpec | undefined>(undefined);\n const [zIcon, setZIcon] = React.useState<IconSpec | undefined>(undefined);\n const [angleIcon, setAngleIcon] = React.useState<IconSpec | undefined>(\n angleIconSvg\n );\n const [distanceIcon, setDistanceIcon] = React.useState<IconSpec | undefined>(\n distanceIconSvg\n );\n const [xStyle, setXStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [yStyle, setYStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [zStyle, setZStyle] = React.useState<React.CSSProperties | undefined>(\n undefined\n );\n const [angleStyle, setAngleStyle] = React.useState<\n React.CSSProperties | undefined\n >(undefined);\n const [distanceStyle, setDistanceStyle] = React.useState<\n React.CSSProperties | undefined\n >(undefined);\n\n const getInputRef = (field: ItemField): React.RefObject<HTMLInputElement> => {\n let inputRef: React.RefObject<HTMLInputElement>;\n switch (field) {\n case ItemField.X_Item:\n inputRef = xInputRef;\n break;\n case ItemField.Y_Item:\n inputRef = yInputRef;\n break;\n case ItemField.Z_Item:\n inputRef = zInputRef;\n break;\n case ItemField.ANGLE_Item:\n inputRef = angleInputRef;\n break;\n case ItemField.DIST_Item:\n inputRef = distanceInputRef;\n break;\n }\n return inputRef;\n };\n\n React.useEffect(() => {\n return FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.addListener((args) => {\n switch (args.field) {\n case ItemField.X_Item:\n setXLock(args.lock);\n break;\n case ItemField.Y_Item:\n setYLock(args.lock);\n break;\n case ItemField.Z_Item:\n setZLock(args.lock);\n break;\n case ItemField.ANGLE_Item:\n setAngleLock(args.lock);\n break;\n case ItemField.DIST_Item:\n setDistanceLock(args.lock);\n break;\n }\n });\n }, []);\n\n const setFocusToField = React.useCallback((field: ItemField) => {\n const inputRef = getInputRef(field);\n\n // istanbul ignore else\n if (inputRef.current && document.activeElement !== inputRef.current) {\n inputRef.current.focus();\n inputRef.current.select();\n }\n }, []);\n\n React.useEffect(() => {\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(\n (args) => {\n focusField.current = args.field;\n setFocusToField(focusField.current);\n }\n );\n }, [setFocusToField]);\n\n React.useEffect(() => {\n return FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.addListener(() => {\n if (focusField.current) setFocusToField(focusField.current);\n });\n }, [setFocusToField]);\n\n React.useEffect(() => {\n return FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.addListener(\n (args) => {\n setMode(args.mode);\n }\n );\n }, []);\n\n const handleValueChanged = React.useCallback(\n (field: ItemField, stringValue: string) => {\n FrameworkAccuDraw.setFieldValueFromUi(field, stringValue);\n },\n []\n );\n\n const handleEscPressed = React.useCallback(() => {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }, []);\n\n React.useEffect(() => {\n setShowZ(\n showZOverride || determineShowZ(IModelApp.viewManager.selectedView)\n );\n\n // istanbul ignore next\n const handleSelectedViewportChanged = (\n args: SelectedViewportChangedArgs\n ) => {\n setShowZ(determineShowZ(args.current));\n };\n\n return IModelApp.viewManager.onSelectedViewportChanged.addListener(\n handleSelectedViewportChanged\n );\n }, [showZOverride]);\n\n React.useEffect(() => {\n const createFieldStyle = (\n inStyle: React.CSSProperties | undefined,\n backgroundColor: ColorDef | string | undefined,\n foregroundColor: ColorDef | string | undefined\n ): React.CSSProperties | undefined => {\n let fieldStyle: React.CSSProperties | undefined;\n let rgbaString = \"\";\n if (inStyle || backgroundColor || foregroundColor) {\n fieldStyle = inStyle ? inStyle : {};\n if (backgroundColor) {\n rgbaString =\n typeof backgroundColor === \"string\"\n ? backgroundColor\n : getCSSColorFromDef(backgroundColor);\n fieldStyle = { ...fieldStyle, backgroundColor: rgbaString };\n }\n if (foregroundColor) {\n rgbaString =\n typeof foregroundColor === \"string\"\n ? foregroundColor\n : getCSSColorFromDef(foregroundColor);\n fieldStyle = { ...fieldStyle, color: rgbaString };\n }\n }\n return fieldStyle;\n };\n\n const processAccuDrawUiSettings = (settings?: AccuDrawUiSettings) => {\n setXStyle(\n settings\n ? createFieldStyle(\n settings.xStyle,\n settings.xBackgroundColor,\n settings.xForegroundColor\n )\n : undefined\n );\n setYStyle(\n settings\n ? createFieldStyle(\n settings.yStyle,\n settings.yBackgroundColor,\n settings.yForegroundColor\n )\n : undefined\n );\n setZStyle(\n settings\n ? createFieldStyle(\n settings.zStyle,\n settings.zBackgroundColor,\n settings.zForegroundColor\n )\n : undefined\n );\n setAngleStyle(\n settings\n ? createFieldStyle(\n settings.angleStyle,\n settings.angleBackgroundColor,\n settings.angleForegroundColor\n )\n : undefined\n );\n setDistanceStyle(\n settings\n ? createFieldStyle(\n settings.distanceStyle,\n settings.distanceBackgroundColor,\n settings.distanceForegroundColor\n )\n : undefined\n );\n\n setXLabel(\n settings && settings.xLabel !== undefined\n ? settings.xLabel\n : defaultXLabel\n );\n setYLabel(\n settings && settings.yLabel !== undefined\n ? settings.yLabel\n : defaultYLabel\n );\n setZLabel(\n settings && settings.zLabel !== undefined\n ? settings.zLabel\n : defaultZLabel\n );\n setAngleLabel(\n settings && settings.angleLabel !== undefined\n ? settings.angleLabel\n : undefined\n );\n setDistanceLabel(\n settings && settings.distanceLabel !== undefined\n ? settings.distanceLabel\n : undefined\n );\n\n setXIcon(\n settings && settings.xIcon !== undefined ? settings.xIcon : undefined\n );\n setYIcon(\n settings && settings.yIcon !== undefined ? settings.yIcon : undefined\n );\n setZIcon(\n settings && settings.zIcon !== undefined ? settings.zIcon : undefined\n );\n setAngleIcon(\n settings && settings.angleIcon !== undefined\n ? settings.angleIcon\n : angleIconSvg\n );\n setDistanceIcon(\n settings && settings.distanceIcon !== undefined\n ? settings.distanceIcon\n : distanceIconSvg\n );\n };\n\n if (FrameworkAccuDraw.uiStateStorage)\n processAccuDrawUiSettings(FrameworkAccuDraw.uiStateStorage);\n\n // istanbul ignore next\n const handleAccuDrawUiSettingsChanged = () => {\n processAccuDrawUiSettings(FrameworkAccuDraw.uiStateStorage);\n };\n\n return FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.addListener(\n handleAccuDrawUiSettingsChanged\n );\n }, []);\n\n const classNames = classnames(\n \"uifw-accudraw-field-container\",\n orientation === Orientation.Vertical ? \"uifw-vertical\" : \"uifw-horizontal\",\n className\n );\n\n const delay = 250;\n const labelCentered =\n xLabel !== undefined &&\n xLabel.length === 1 &&\n yLabel !== undefined &&\n yLabel.length === 1 &&\n zLabel !== undefined &&\n zLabel.length === 1;\n\n return (\n <div className={classNames} style={style} {...otherProps}>\n {mode === CompassMode.Rectangular && (\n <>\n <AccuDrawInputField\n ref={xInputRef}\n isLocked={xLock}\n className=\"uifw-accudraw-x-value\"\n style={xStyle}\n field={ItemField.X_Item}\n id={`uifw-accudraw-x-${containerIndex}`}\n data-testid=\"uifw-accudraw-x\"\n label={xLabel}\n iconSpec={xIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.X_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n <AccuDrawInputField\n ref={yInputRef}\n isLocked={yLock}\n className=\"uifw-accudraw-y-value\"\n style={yStyle}\n field={ItemField.Y_Item}\n id={`uifw-accudraw-y-${containerIndex}`}\n data-testid=\"uifw-accudraw-y\"\n label={yLabel}\n iconSpec={yIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.Y_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n {showZ && (\n <AccuDrawInputField\n ref={zInputRef}\n isLocked={zLock}\n className=\"uifw-accudraw-z-value\"\n style={zStyle}\n field={ItemField.Z_Item}\n id={`uifw-accudraw-z-${containerIndex}`}\n data-testid=\"uifw-accudraw-z\"\n label={zLabel}\n iconSpec={zIcon}\n labelCentered={labelCentered}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.Z_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n )}\n </>\n )}\n {mode === CompassMode.Polar && (\n <>\n <AccuDrawInputField\n ref={angleInputRef}\n isLocked={angleLock}\n className=\"uifw-accudraw-angle-value\"\n style={angleStyle}\n field={ItemField.ANGLE_Item}\n id={`uifw-accudraw-angle-${containerIndex}`}\n data-testid=\"uifw-accudraw-angle\"\n label={angleLabel}\n iconSpec={angleIcon}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.ANGLE_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n <AccuDrawInputField\n ref={distanceInputRef}\n isLocked={distanceLock}\n className=\"uifw-accudraw-distance-value\"\n style={distanceStyle}\n field={ItemField.DIST_Item}\n id={`uifw-accudraw-distance-${containerIndex}`}\n data-testid=\"uifw-accudraw-distance\"\n label={distanceLabel}\n iconSpec={distanceIcon}\n valueChangedDelay={delay}\n onValueChanged={(stringValue) =>\n handleValueChanged(ItemField.DIST_Item, stringValue)\n }\n onEscPressed={handleEscPressed}\n />\n </>\n )}\n </div>\n );\n}\n"]}
@@ -2,26 +2,19 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- @import "~@itwin/core-react/lib/cjs/core-react/inputs/variables";
6
- @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
-
8
5
  .uifw-accudraw-field-container {
9
6
  padding: 6px;
10
7
 
11
- .iui-input {
12
- padding: $uicore-iui-input-padding;
8
+ &.uifw-horizontal {
9
+ max-width: 550px;
10
+ display: flex;
11
+ flex-direction: row;
13
12
  }
14
- }
15
13
 
16
- .uifw-accudraw-field-container-horizontal {
17
- max-width: 550px;
18
- display: flex;
19
- flex-direction: row;
20
- }
21
-
22
- .uifw-accudraw-field-container-vertical {
23
- max-width: 250px;
24
- display: grid;
25
- grid-template-columns: auto 1fr auto;
26
- row-gap: var(--iui-size-2xs);
14
+ &.uifw-vertical {
15
+ max-width: 250px;
16
+ display: grid;
17
+ grid-template-columns: auto 1fr auto;
18
+ row-gap: var(--iui-size-2xs);
19
+ }
27
20
  }
@@ -3,6 +3,7 @@
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  @import "~@itwin/core-react/lib/cjs/core-react/base/base";
6
+ @import "~@itwin/core-react/lib/cjs/core-react/inputs/variables";
6
7
  @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
8
 
8
9
  .uifw-accudraw-input-label {
@@ -31,6 +32,7 @@
31
32
  }
32
33
 
33
34
  .uifw-accudraw-input-field {
35
+ padding: $uicore-iui-input-padding;
34
36
  flex: 1;
35
37
  }
36
38
 
@@ -4,7 +4,8 @@
4
4
  import "./SquareButton.scss";
5
5
  import * as React from "react";
6
6
  import type { Omit } from "@itwin/core-react";
7
- import type { ButtonProps } from "@itwin/itwinui-react";
7
+ import { Button } from "@itwin/itwinui-react";
8
+ type ButtonProps = React.ComponentPropsWithoutRef<typeof Button>;
8
9
  /** @alpha */
9
10
  export interface SquareButtonProps// eslint-disable-line @typescript-eslint/no-empty-interface
10
11
  extends Omit<ButtonProps, "size" | "styleType"> {
@@ -13,4 +14,5 @@ export interface SquareButtonProps// eslint-disable-line @typescript-eslint/no-e
13
14
  export declare class SquareButton extends React.PureComponent<SquareButtonProps> {
14
15
  render(): React.JSX.Element;
15
16
  }
17
+ export {};
16
18
  //# sourceMappingURL=SquareButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SquareButton.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/SquareButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAE7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,aAAa;AACb,MAAM,WAAW,iBAAkB,4DAA4D;AAC7F,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,CAAC;CAAG;AAEpD,aAAa;AACb,qBAAa,YAAa,SAAQ,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC;IACtD,MAAM;CAiBvB"}
1
+ {"version":3,"file":"SquareButton.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/SquareButton.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAE7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,KAAK,WAAW,GAAG,KAAK,CAAC,wBAAwB,CAAC,OAAO,MAAM,CAAC,CAAC;AAEjE,aAAa;AACb,MAAM,WAAW,iBAAkB,4DAA4D;AAC7F,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,CAAC;CAAG;AAEpD,aAAa;AACb,qBAAa,YAAa,SAAQ,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC;IACtD,MAAM;CAavB"}
@@ -14,10 +14,7 @@ export class SquareButton extends React.PureComponent {
14
14
  render() {
15
15
  const { className, style, ...buttonProps } = this.props;
16
16
  const buttonClassNames = classnames("uifw-square-button", className);
17
- const buttonStyle = {
18
- ...style,
19
- };
20
- return (React.createElement(Button, { ...buttonProps, size: "small", className: buttonClassNames, style: buttonStyle }));
17
+ return (React.createElement(Button, { ...buttonProps, size: "small", className: buttonClassNames, style: style }));
21
18
  }
22
19
  }
23
20
  //# sourceMappingURL=SquareButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SquareButton.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/SquareButton.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAC7B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAM9C,aAAa;AACb,MAAM,OAAO,YAAa,SAAQ,KAAK,CAAC,aAAgC;IACtD,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAExD,MAAM,gBAAgB,GAAG,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,WAAW,GAAwB;YACvC,GAAG,KAAK;SACT,CAAC;QAEF,OAAO,CACL,oBAAC,MAAM,OACD,WAAW,EACf,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE,WAAW,GAClB,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 AccuDraw\n */\n\nimport \"./SquareButton.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { Omit } from \"@itwin/core-react\";\nimport type { ButtonProps } from \"@itwin/itwinui-react\";\nimport { Button } from \"@itwin/itwinui-react\";\n\n/** @alpha */\nexport interface SquareButtonProps // eslint-disable-line @typescript-eslint/no-empty-interface\n extends Omit<ButtonProps, \"size\" | \"styleType\"> {}\n\n/** @alpha */\nexport class SquareButton extends React.PureComponent<SquareButtonProps> {\n public override render() {\n const { className, style, ...buttonProps } = this.props;\n\n const buttonClassNames = classnames(\"uifw-square-button\", className);\n const buttonStyle: React.CSSProperties = {\n ...style,\n };\n\n return (\n <Button\n {...buttonProps}\n size=\"small\"\n className={buttonClassNames}\n style={buttonStyle}\n />\n );\n }\n}\n"]}
1
+ {"version":3,"file":"SquareButton.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/SquareButton.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAC7B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAQ9C,aAAa;AACb,MAAM,OAAO,YAAa,SAAQ,KAAK,CAAC,aAAgC;IACtD,MAAM;QACpB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAExD,MAAM,gBAAgB,GAAG,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QACrE,OAAO,CACL,oBAAC,MAAM,OACD,WAAW,EACf,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE,KAAK,GACZ,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 AccuDraw\n */\n\nimport \"./SquareButton.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { Omit } from \"@itwin/core-react\";\nimport { Button } from \"@itwin/itwinui-react\";\n\ntype ButtonProps = React.ComponentPropsWithoutRef<typeof Button>;\n\n/** @alpha */\nexport interface SquareButtonProps // eslint-disable-line @typescript-eslint/no-empty-interface\n extends Omit<ButtonProps, \"size\" | \"styleType\"> {}\n\n/** @alpha */\nexport class SquareButton extends React.PureComponent<SquareButtonProps> {\n public override render() {\n const { className, style, ...buttonProps } = this.props;\n\n const buttonClassNames = classnames(\"uifw-square-button\", className);\n return (\n <Button\n {...buttonProps}\n size=\"small\"\n className={buttonClassNames}\n style={style}\n />\n );\n }\n}\n"]}
@@ -26,7 +26,6 @@ export function BackstageComposerActionItem({ item, }) {
26
26
  }
27
27
  /** @internal */
28
28
  export function BackstageComposerStageLauncher({ item, }) {
29
- var _a;
30
29
  const manager = useBackstageManager();
31
30
  const handleClick = React.useCallback(() => {
32
31
  manager.close();
@@ -35,7 +34,7 @@ export function BackstageComposerStageLauncher({ item, }) {
35
34
  void UiFramework.frontstages.setActiveFrontstage(item.stageId);
36
35
  }, [manager, item.stageId]);
37
36
  const activeFrontstageId = useActiveFrontstageId();
38
- const isActive = ConditionalBooleanValue.getValue((_a = item.isActive) !== null && _a !== void 0 ? _a : item.stageId === activeFrontstageId);
37
+ const isActive = ConditionalBooleanValue.getValue(item.isActive ?? item.stageId === activeFrontstageId);
39
38
  return (React.createElement(NZ_BackstageItem, { itemId: item.id, providerId: isProviderItem(item) ? item.providerId : undefined, itemPriority: item.itemPriority, groupPriority: item.groupPriority, icon: React.createElement(Icon, { iconSpec: item.icon }), isActive: isActive, isDisabled: ConditionalBooleanValue.getValue(item.isDisabled), onClick: handleClick, subtitle: ConditionalStringValue.getValue(item.subtitle), badge: BadgeUtilities.getComponentForBadgeType(item.badge) }, ConditionalStringValue.getValue(item.label)));
40
39
  }
41
40
  /** Item of [[BackstageComposer]].