@itwin/appui-react 4.6.4 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (405) hide show
  1. package/CHANGELOG.md +19 -3
  2. package/lib/cjs/appui-react/UiFramework.d.ts +29 -14
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +28 -15
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  7. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +4 -7
  8. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +3 -3
  11. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts +8 -0
  13. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js +8 -0
  15. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.d.ts.map +1 -1
  17. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js +3 -4
  18. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  19. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  20. package/lib/cjs/appui-react/accudraw/Calculator.js +11 -12
  21. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  22. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +9 -1
  23. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  24. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +9 -1
  25. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  26. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +2 -2
  27. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  28. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +16 -11
  29. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  30. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts +2 -4
  31. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts.map +1 -1
  32. package/lib/cjs/appui-react/childwindow/PopoutWidget.js +6 -3
  33. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +1 -1
  34. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  35. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +3 -1
  36. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  37. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  38. package/lib/cjs/appui-react/configurableui/state.js +5 -2
  39. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  40. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  41. package/lib/cjs/appui-react/content/IModelViewport.js +2 -0
  42. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  43. package/lib/cjs/appui-react/feedback/ValidationTextbox.js +3 -3
  44. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  45. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +2 -2
  46. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  48. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +6 -8
  49. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  50. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +26 -16
  51. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  52. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +1 -1
  54. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  55. package/lib/cjs/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js +1 -2
  57. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  58. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js +2 -2
  59. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  60. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  61. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js +42 -2
  62. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  63. package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts +9 -3
  64. package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts.map +1 -1
  65. package/lib/cjs/appui-react/messages/AppNotificationManager.js +9 -3
  66. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  67. package/lib/cjs/appui-react/messages/MessageManager.d.ts +10 -0
  68. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  69. package/lib/cjs/appui-react/messages/MessageManager.js +51 -6
  70. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  71. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  72. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +1 -3
  73. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  74. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +0 -15
  75. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  76. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +8 -8
  77. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  78. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +1 -1
  79. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  80. package/lib/cjs/appui-react/pickers/ViewSelector.js +2 -3
  81. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  82. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  83. package/lib/cjs/appui-react/popup/CardPopup.js +2 -2
  84. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  85. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  86. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +7 -6
  87. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  88. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  89. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +2 -2
  90. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  91. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  92. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +2 -2
  93. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  94. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  95. package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -2
  96. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  97. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +47 -0
  98. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -0
  99. package/lib/cjs/appui-react/preview/PreviewFeatures.js +95 -0
  100. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -0
  101. package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts +9 -2
  102. package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
  103. package/lib/cjs/appui-react/safearea/SafeAreaContext.js +9 -2
  104. package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
  105. package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +10 -10
  107. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  108. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts +2 -3
  109. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  110. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +9 -6
  111. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  112. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -28
  113. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  114. package/lib/cjs/appui-react/statusbar/StatusBar.js +1 -69
  115. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  116. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  117. package/lib/cjs/appui-react/statusfields/MessageCenter.js +1 -3
  118. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  119. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  120. package/lib/cjs/appui-react/statusfields/SectionsField.js +1 -3
  121. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  122. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts +4 -7
  123. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  124. package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -7
  125. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  126. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  127. package/lib/cjs/appui-react/statusfields/SnapMode.js +8 -10
  128. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  129. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  130. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +8 -4
  131. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  132. package/lib/cjs/appui-react/theme/ThemeManager.d.ts +38 -7
  133. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  134. package/lib/cjs/appui-react/theme/ThemeManager.js +52 -11
  135. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  136. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  137. package/lib/cjs/appui-react/toolbar/Toolbar.js +12 -1
  138. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  139. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts +21 -0
  140. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  141. package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
  142. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  143. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +7 -7
  144. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  145. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.d.ts +10 -1
  146. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  147. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js +12 -4
  148. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  149. package/lib/cjs/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js +1 -2
  151. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  152. package/lib/cjs/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  153. package/lib/cjs/appui-react/tools/OpenSettingsTool.js +1 -2
  154. package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
  155. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  156. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +2 -3
  157. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  158. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +15 -0
  159. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -1
  160. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +133 -105
  161. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  162. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +10 -4
  163. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  164. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +80 -65
  165. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  166. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts +30 -4
  167. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts.map +1 -1
  168. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  169. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +11 -2
  170. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  171. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +9 -1
  172. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  173. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +5 -4
  174. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  175. package/lib/cjs/appui-react/uistate/AppUiSettings.js +2 -2
  176. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  177. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts +10 -1
  178. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  179. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +10 -1
  180. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  181. package/lib/cjs/appui-react/utils/matchesWords.d.ts +22 -0
  182. package/lib/cjs/appui-react/utils/matchesWords.d.ts.map +1 -0
  183. package/lib/cjs/appui-react/utils/matchesWords.js +103 -0
  184. package/lib/cjs/appui-react/utils/matchesWords.js.map +1 -0
  185. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  186. package/lib/cjs/appui-react/widget-panels/Frontstage.js +25 -13
  187. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  188. package/lib/cjs/appui-react/widget-panels/Frontstage.scss +19 -0
  189. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +4 -1
  190. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  191. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +11 -5
  192. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  193. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  194. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -7
  195. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  196. package/lib/cjs/appui-react/widgets/Widget.d.ts +23 -1
  197. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
  198. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  199. package/lib/cjs/appui-react.d.ts +1 -0
  200. package/lib/cjs/appui-react.d.ts.map +1 -1
  201. package/lib/cjs/appui-react.js +3 -0
  202. package/lib/cjs/appui-react.js.map +1 -1
  203. package/lib/esm/appui-react/UiFramework.d.ts +29 -14
  204. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  205. package/lib/esm/appui-react/UiFramework.js +29 -16
  206. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  207. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  208. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +4 -7
  209. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  210. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  211. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +3 -3
  212. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  213. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts +8 -0
  214. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts.map +1 -1
  215. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js +8 -0
  216. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  217. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.d.ts.map +1 -1
  218. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js +3 -4
  219. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  220. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  221. package/lib/esm/appui-react/accudraw/Calculator.js +11 -12
  222. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  223. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +9 -1
  224. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  225. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +9 -1
  226. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  227. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +2 -2
  228. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  229. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +16 -11
  230. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  231. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts +2 -4
  232. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts.map +1 -1
  233. package/lib/esm/appui-react/childwindow/PopoutWidget.js +6 -3
  234. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +1 -1
  235. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  236. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +3 -1
  237. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  238. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  239. package/lib/esm/appui-react/configurableui/state.js +5 -2
  240. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  241. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  242. package/lib/esm/appui-react/content/IModelViewport.js +2 -0
  243. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  244. package/lib/esm/appui-react/feedback/ValidationTextbox.js +3 -3
  245. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  246. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +2 -2
  247. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.d.ts.map +1 -1
  248. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  249. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +6 -8
  250. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  251. package/lib/esm/appui-react/frontstage/FrontstageDef.js +27 -17
  252. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  253. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  254. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -2
  255. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  256. package/lib/esm/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
  257. package/lib/esm/appui-react/frontstage/NestedFrontstage.js +1 -2
  258. package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  259. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js +2 -2
  260. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  261. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  262. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js +41 -1
  263. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  264. package/lib/esm/appui-react/messages/AppNotificationManager.d.ts +9 -3
  265. package/lib/esm/appui-react/messages/AppNotificationManager.d.ts.map +1 -1
  266. package/lib/esm/appui-react/messages/AppNotificationManager.js +9 -3
  267. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  268. package/lib/esm/appui-react/messages/MessageManager.d.ts +10 -0
  269. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  270. package/lib/esm/appui-react/messages/MessageManager.js +52 -7
  271. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  272. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  273. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +1 -3
  274. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  275. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +0 -15
  276. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  277. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +9 -9
  278. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  279. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +1 -1
  280. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  281. package/lib/esm/appui-react/pickers/ViewSelector.js +2 -3
  282. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  283. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  284. package/lib/esm/appui-react/popup/CardPopup.js +2 -2
  285. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  286. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  287. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +6 -5
  288. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  289. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  290. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +2 -2
  291. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  292. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  293. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +2 -2
  294. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  295. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  296. package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -2
  297. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  298. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +47 -0
  299. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -0
  300. package/lib/esm/appui-react/preview/PreviewFeatures.js +90 -0
  301. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -0
  302. package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts +9 -2
  303. package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
  304. package/lib/esm/appui-react/safearea/SafeAreaContext.js +9 -2
  305. package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
  306. package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  307. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +11 -11
  308. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  309. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts +2 -3
  310. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  311. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +9 -6
  312. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  313. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -28
  314. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  315. package/lib/esm/appui-react/statusbar/StatusBar.js +1 -69
  316. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  317. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  318. package/lib/esm/appui-react/statusfields/MessageCenter.js +2 -4
  319. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  320. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  321. package/lib/esm/appui-react/statusfields/SectionsField.js +1 -3
  322. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  323. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts +4 -7
  324. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  325. package/lib/esm/appui-react/statusfields/SelectionScope.js +2 -7
  326. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  327. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  328. package/lib/esm/appui-react/statusfields/SnapMode.js +8 -10
  329. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  330. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  331. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +8 -4
  332. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  333. package/lib/esm/appui-react/theme/ThemeManager.d.ts +38 -7
  334. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  335. package/lib/esm/appui-react/theme/ThemeManager.js +51 -10
  336. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  337. package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  338. package/lib/esm/appui-react/toolbar/Toolbar.js +11 -0
  339. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  340. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts +21 -0
  341. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  342. package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
  343. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  344. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +8 -8
  345. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  346. package/lib/esm/appui-react/tools/FrameworkToolAdmin.d.ts +10 -1
  347. package/lib/esm/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  348. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js +12 -4
  349. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  350. package/lib/esm/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  351. package/lib/esm/appui-react/tools/KeyinPaletteTools.js +1 -2
  352. package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  353. package/lib/esm/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  354. package/lib/esm/appui-react/tools/OpenSettingsTool.js +1 -2
  355. package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
  356. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  357. package/lib/esm/appui-react/tools/RestoreLayoutTool.js +2 -3
  358. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  359. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +15 -0
  360. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -1
  361. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +131 -104
  362. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  363. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +10 -4
  364. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  365. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +81 -66
  366. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  367. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts +30 -4
  368. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts.map +1 -1
  369. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  370. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +11 -2
  371. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  372. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +9 -1
  373. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  374. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +5 -4
  375. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  376. package/lib/esm/appui-react/uistate/AppUiSettings.js +2 -2
  377. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  378. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts +10 -1
  379. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  380. package/lib/esm/appui-react/uistate/useUiStateStorage.js +10 -1
  381. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  382. package/lib/esm/appui-react/utils/matchesWords.d.ts +22 -0
  383. package/lib/esm/appui-react/utils/matchesWords.d.ts.map +1 -0
  384. package/lib/esm/appui-react/utils/matchesWords.js +99 -0
  385. package/lib/esm/appui-react/utils/matchesWords.js.map +1 -0
  386. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  387. package/lib/esm/appui-react/widget-panels/Frontstage.js +27 -15
  388. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  389. package/lib/esm/appui-react/widget-panels/Frontstage.scss +19 -0
  390. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +4 -1
  391. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  392. package/lib/esm/appui-react/widget-panels/ToolSettings.js +9 -4
  393. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  394. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  395. package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -7
  396. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  397. package/lib/esm/appui-react/widgets/Widget.d.ts +23 -1
  398. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
  399. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  400. package/lib/esm/appui-react.d.ts +1 -0
  401. package/lib/esm/appui-react.d.ts.map +1 -1
  402. package/lib/esm/appui-react.js +1 -0
  403. package/lib/esm/appui-react.js.map +1 -1
  404. package/lib/public/locales/en/UiFramework.json +6 -4
  405. package/package.json +13 -11
package/CHANGELOG.md CHANGED
@@ -1,16 +1,32 @@
1
1
  # Change Log - @itwin/appui-react
2
2
 
3
- This log was last generated on Mon, 20 Nov 2023 19:07:50 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 01 Dec 2023 20:01:16 GMT and should not be manually modified.
4
4
 
5
- ## 4.6.4
6
- Mon, 20 Nov 2023 19:07:50 GMT
5
+ ## 4.7.0
6
+ Fri, 01 Dec 2023 20:01:16 GMT
7
7
 
8
8
  ### Updates
9
9
 
10
+ - No longer use deprecated appui-abstract types: getObjectClassName, KeyboardKey, SpecialKey, matches; use icon path directly instead of IconSpecUtilities
11
+ - Add alternative provider methods to UiItemsProvider.
10
12
  - Hidden widget will now open to default position and size of CanFloat property when set to floating
13
+ - Widgets no longer disappear when popped out and window.open fails
14
+ - Popout widgets will now contain a ContentContainer instead of a DOM node. This enables work to be saved when a widget is popped out.
15
+ - Popout widgets will now popout to preferredFloatingWidgetSize. Will popout to container size if preferredFloatingWidgetSize is not set
16
+ - `AppNotificationManager` no longer requires `StatusBar` to be displayed to show messages.
17
+ - Fix error when `HTMLElement` used in `NotifyMessageDetails` messages.
11
18
  - Fixed an issue where frontstage state changes would be lost when it is closed too soon after the change.
19
+ - Added PreviewFeatures and penelsAlwaysOverContent first preview
20
+ - Added `enableMaximizedFloatingWidget` preview features
21
+ - Fix frontstage settings save.
22
+ - Update active selection scope related documentation.
23
+ - Improve keyboard shortcuts related documentation.
24
+ - Provide union type values for Theme so IDE can suggest values.
25
+ - Add High contrast theme support and clarify ThemeManager scope
26
+ - Remove remaining UI 2.0 mention in docs
12
27
  - Remove unneeded `changeView` call on `FloatingViewportComponent`
13
28
  - Refresh tool setting values when undocking
29
+ - Fixed reference error in case `applicationData` is not provided for `IModelViewportControl`.
14
30
 
15
31
  ## 4.6.3
16
32
  Wed, 25 Oct 2023 09:39:22 GMT
@@ -11,6 +11,7 @@ import { SettingsManager } from "@itwin/core-react";
11
11
  import type { FrameworkState } from "./redux/FrameworkState";
12
12
  import type { CursorMenuData, PresentationSelectionScope } from "./redux/SessionState";
13
13
  import type { HideIsolateEmphasizeActionHandler } from "./selection/HideIsolateEmphasizeManager";
14
+ import type { ThemeId } from "./theme/ThemeManager";
14
15
  import { WidgetManager } from "./widgets/WidgetManager";
15
16
  import type { FrameworkBackstage } from "./framework/FrameworkBackstage";
16
17
  import type { FrameworkChildWindows } from "./framework/FrameworkChildWindows";
@@ -48,8 +49,7 @@ export interface TrackingTime {
48
49
  startTime: Date;
49
50
  endTime: Date;
50
51
  }
51
- /**
52
- * Manages the Redux store, localization service and iModel, Project and Login services for the ui-framework package.
52
+ /** Main entry point to configure and interact with the features provided by the AppUi-react package.
53
53
  * @public
54
54
  */
55
55
  export declare class UiFramework {
@@ -90,6 +90,11 @@ export declare class UiFramework {
90
90
  static get dialogs(): FrameworkDialogs;
91
91
  /**
92
92
  * Manages global keyboard shortcuts
93
+ *
94
+ * Note: This only manages the list of available shortcuts registered with it. It does not listens to the actual
95
+ * keyboard events. In order for these shortcuts to be called upon a keyboard event, the application can
96
+ * override the `IModelApp.toolAdmin` and assign it [[FrameworkToolAdmin]] or create an event listener
97
+ * and call `UiFramework.keyboardShortcuts.processKey`.
93
98
  * @public
94
99
  */
95
100
  static get keyboardShortcuts(): FrameworkKeyboardShortcuts;
@@ -127,14 +132,6 @@ export declare class UiFramework {
127
132
  * @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".
128
133
  */
129
134
  static initialize(store: Store<any> | undefined, frameworkStateKey?: string): Promise<void>;
130
- /**
131
- * Called by the application to initialize the UiFramework. Also initializes UIIModelComponents, UiComponents, UiCore.
132
- * @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.
133
- * @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".
134
- *
135
- * @internal
136
- */
137
- static initializeEx(store: Store<any> | undefined, frameworkStateKey?: string): Promise<void>;
138
135
  /** Un-registers the UiFramework internationalization service namespace */
139
136
  static terminate(): void;
140
137
  /** Determines if UiFramework has been initialized */
@@ -174,7 +171,17 @@ export declare class UiFramework {
174
171
  static dispatchActionToStore(type: string, payload: any, immediateSync?: boolean): void;
175
172
  static setAccudrawSnapMode(snapMode: SnapMode): void;
176
173
  static getAccudrawSnapMode(): SnapMode;
174
+ /**
175
+ * Returns the stored active selection scope id.
176
+ */
177
177
  static getActiveSelectionScope(): string;
178
+ /**
179
+ * This method stores the active selection scope to the supplied scope id, and triggers
180
+ * a `SessionStateActionId.SetSelectionScope` event in the `SyncUiEventDispatcher`.
181
+ * Note: As of 4.0, this method *does not change* the active selection scope in the `Presentation.selection.scopes.activeScope` property.
182
+ * This event should be listened to and the change should typically be applied to
183
+ * `Presentation.selection.scopes.activeScope` property from the `@itwin/presentation-frontend` package.
184
+ */
178
185
  static setActiveSelectionScope(selectionScopeId: string): void;
179
186
  /** @public */
180
187
  static openCursorMenu(menuData: CursorMenuData | undefined): void;
@@ -204,13 +211,21 @@ export declare class UiFramework {
204
211
  static getDefaultViewId(): string | undefined;
205
212
  static setDefaultViewState(viewState: ViewState, immediateSync?: boolean): void;
206
213
  static getDefaultViewState(): ViewState | undefined;
207
- /** @public */
214
+ /**
215
+ * Returns the stored list of available selection scopes. This list should be set by the application
216
+ * by dispatching the `setAvailableSelectionScopes` action.
217
+ * The value for this action typically come from `Presentation.selection.scopes.getSelectionScopes()`
218
+ * method found in the `@itwin/presentation-frontend` package.
219
+ * @public */
208
220
  static getAvailableSelectionScopes(): PresentationSelectionScope[];
209
221
  static getIsUiVisible(): boolean;
210
222
  static setIsUiVisible(visible: boolean): void;
211
- static setColorTheme(theme: string): void;
212
- static getColorTheme(): string;
213
- /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified. Used by UI 2.0 and later.
223
+ /**
224
+ * Set the theme value used by the [[ThemeManager]] component.
225
+ */
226
+ static setColorTheme(theme: ThemeId): void;
227
+ static getColorTheme(): ThemeId;
228
+ /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified.
214
229
  * @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
215
230
  * @public
216
231
  */
@@ -1 +1 @@
1
- {"version":3,"file":"UiFramework.d.ts","sourceRoot":"","sources":["../../../src/appui-react/UiFramework.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiFramework.d.ts","sourceRoot":"","sources":["../../../src/appui-react/UiFramework.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ const core_bentley_1 = require("@itwin/core-bentley");
12
12
  const core_frontend_1 = require("@itwin/core-frontend");
13
13
  const appui_abstract_1 = require("@itwin/appui-abstract");
14
14
  const core_react_1 = require("@itwin/core-react");
15
+ const core_react_2 = require("@itwin/core-react");
15
16
  const imodel_components_react_1 = require("@itwin/imodel-components-react");
16
17
  const BackstageManager_1 = require("./backstage/BackstageManager");
17
18
  const InternalChildWindowManager_1 = require("./childwindow/InternalChildWindowManager");
@@ -40,8 +41,7 @@ const SyncUiEventDispatcher_1 = require("./syncui/SyncUiEventDispatcher");
40
41
  class UiVisibilityChangedEvent extends appui_abstract_1.UiEvent {
41
42
  }
42
43
  exports.UiVisibilityChangedEvent = UiVisibilityChangedEvent;
43
- /**
44
- * Manages the Redux store, localization service and iModel, Project and Login services for the ui-framework package.
44
+ /** Main entry point to configure and interact with the features provided by the AppUi-react package.
45
45
  * @public
46
46
  */
47
47
  class UiFramework {
@@ -102,6 +102,11 @@ class UiFramework {
102
102
  }
103
103
  /**
104
104
  * Manages global keyboard shortcuts
105
+ *
106
+ * Note: This only manages the list of available shortcuts registered with it. It does not listens to the actual
107
+ * keyboard events. In order for these shortcuts to be called upon a keyboard event, the application can
108
+ * override the `IModelApp.toolAdmin` and assign it [[FrameworkToolAdmin]] or create an event listener
109
+ * and call `UiFramework.keyboardShortcuts.processKey`.
105
110
  * @public
106
111
  */
107
112
  static get keyboardShortcuts() {
@@ -131,16 +136,6 @@ class UiFramework {
131
136
  * @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".
132
137
  */
133
138
  static async initialize(store, frameworkStateKey) {
134
- return this.initializeEx(store, frameworkStateKey);
135
- }
136
- /**
137
- * Called by the application to initialize the UiFramework. Also initializes UIIModelComponents, UiComponents, UiCore.
138
- * @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.
139
- * @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".
140
- *
141
- * @internal
142
- */
143
- static async initializeEx(store, frameworkStateKey) {
144
139
  if (UiFramework._initialized) {
145
140
  core_bentley_1.Logger.logInfo(UiFramework.loggerCategory(UiFramework), `UiFramework.initialize already called`);
146
141
  return;
@@ -281,7 +276,7 @@ class UiFramework {
281
276
  }
282
277
  /** @internal */
283
278
  static loggerCategory(obj) {
284
- const className = (0, appui_abstract_1.getClassName)(obj);
279
+ const className = (0, core_react_2.getObjectClassName)(obj);
285
280
  const category = UiFramework.packageName + (className ? `.${className}` : "");
286
281
  return category;
287
282
  }
@@ -300,11 +295,21 @@ class UiFramework {
300
295
  ? UiFramework.frameworkState.configurableUiState.snapMode
301
296
  : /* istanbul ignore next */ core_frontend_1.SnapMode.NearestKeypoint;
302
297
  }
298
+ /**
299
+ * Returns the stored active selection scope id.
300
+ */
303
301
  static getActiveSelectionScope() {
304
302
  return UiFramework.frameworkState
305
303
  ? UiFramework.frameworkState.sessionState.activeSelectionScope
306
304
  : /* istanbul ignore next */ "element";
307
305
  }
306
+ /**
307
+ * This method stores the active selection scope to the supplied scope id, and triggers
308
+ * a `SessionStateActionId.SetSelectionScope` event in the `SyncUiEventDispatcher`.
309
+ * Note: As of 4.0, this method *does not change* the active selection scope in the `Presentation.selection.scopes.activeScope` property.
310
+ * This event should be listened to and the change should typically be applied to
311
+ * `Presentation.selection.scopes.activeScope` property from the `@itwin/presentation-frontend` package.
312
+ */
308
313
  static setActiveSelectionScope(selectionScopeId) {
309
314
  // istanbul ignore else
310
315
  if (UiFramework.frameworkState) {
@@ -413,7 +418,12 @@ class UiFramework {
413
418
  ? UiFramework.frameworkState.sessionState.defaultViewState
414
419
  : /* istanbul ignore next */ undefined;
415
420
  }
416
- /** @public */
421
+ /**
422
+ * Returns the stored list of available selection scopes. This list should be set by the application
423
+ * by dispatching the `setAvailableSelectionScopes` action.
424
+ * The value for this action typically come from `Presentation.selection.scopes.getSelectionScopes()`
425
+ * method found in the `@itwin/presentation-frontend` package.
426
+ * @public */
417
427
  static getAvailableSelectionScopes() {
418
428
  return UiFramework.frameworkState
419
429
  ? UiFramework.frameworkState.sessionState.availableSelectionScopes
@@ -429,6 +439,9 @@ class UiFramework {
429
439
  UiFramework.onUiVisibilityChanged.emit({ visible });
430
440
  }
431
441
  }
442
+ /**
443
+ * Set the theme value used by the [[ThemeManager]] component.
444
+ */
432
445
  static setColorTheme(theme) {
433
446
  if (UiFramework.getColorTheme() === theme)
434
447
  return;
@@ -439,7 +452,7 @@ class UiFramework {
439
452
  ? UiFramework.frameworkState.configurableUiState.theme
440
453
  : /* istanbul ignore next */ ThemeManager_1.SYSTEM_PREFERRED_COLOR_THEME;
441
454
  }
442
- /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified. Used by UI 2.0 and later.
455
+ /** UiFramework.setToolbarOpacity() sets the non-hovered opacity to the value specified.
443
456
  * @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
444
457
  * @public
445
458
  */
@@ -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 { getClassName, UiAdmin, UiError, UiEvent } from \"@itwin/appui-abstract\";\nimport type { UiStateStorage } from \"@itwin/core-react\";\nimport { LocalStateStorage, SettingsManager } 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 {\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 */\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/**\n * Manages the Redux store, localization service and iModel, Project and Login services for the ui-framework 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 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 * @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 return this.initializeEx(store, frameworkStateKey);\n }\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 * @internal\n */\n public static async initializeEx(\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 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 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 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 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 = getClassName(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 public static getActiveSelectionScope(): string {\n return UiFramework.frameworkState\n ? UiFramework.frameworkState.sessionState.activeSelectionScope\n : /* istanbul ignore next */ \"element\";\n }\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 /** @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 public static setColorTheme(theme: string) {\n if (UiFramework.getColorTheme() === theme) return;\n\n UiFramework.dispatchActionToStore(\n ConfigurableUiActionId.SetTheme,\n theme,\n true\n );\n }\n\n public static getColorTheme(): string {\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. Used by UI 2.0 and later.\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 */\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 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 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 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 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 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 +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;AAUvC,OAAO,KAAK,EAAE,WAAW,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAgBhD;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;AAkBD;WACW;AACX,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,eA8axE"}
1
+ {"version":3,"file":"AccuDrawFieldContainer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawFieldContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,+BAA+B,CAAC;AASvC,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,eA8axE"}
@@ -12,7 +12,6 @@ require("./AccuDrawFieldContainer.scss");
12
12
  const classnames_1 = require("classnames");
13
13
  const React = require("react");
14
14
  const core_frontend_1 = require("@itwin/core-frontend");
15
- const appui_abstract_1 = require("@itwin/appui-abstract");
16
15
  const core_react_1 = require("@itwin/core-react");
17
16
  const imodel_components_react_1 = require("@itwin/imodel-components-react");
18
17
  const AccuDrawInputField_1 = require("./AccuDrawInputField");
@@ -28,8 +27,6 @@ function determineShowZ(vp) {
28
27
  const defaultXLabel = "X";
29
28
  const defaultYLabel = "Y";
30
29
  const defaultZLabel = "Z";
31
- const defaultAngleIcon = appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(angle_svg_1.default);
32
- const defaultDistanceIcon = appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(distance_svg_1.default);
33
30
  /** AccuDraw Ui Field Container displays [[AccuDrawInputField]] for each field
34
31
  * @beta */
35
32
  function AccuDrawFieldContainer(props) {
@@ -56,8 +53,8 @@ function AccuDrawFieldContainer(props) {
56
53
  const [xIcon, setXIcon] = React.useState(undefined);
57
54
  const [yIcon, setYIcon] = React.useState(undefined);
58
55
  const [zIcon, setZIcon] = React.useState(undefined);
59
- const [angleIcon, setAngleIcon] = React.useState(defaultAngleIcon);
60
- const [distanceIcon, setDistanceIcon] = React.useState(defaultDistanceIcon);
56
+ const [angleIcon, setAngleIcon] = React.useState(angle_svg_1.default);
57
+ const [distanceIcon, setDistanceIcon] = React.useState(distance_svg_1.default);
61
58
  const [xStyle, setXStyle] = React.useState(undefined);
62
59
  const [yStyle, setYStyle] = React.useState(undefined);
63
60
  const [zStyle, setZStyle] = React.useState(undefined);
@@ -214,10 +211,10 @@ function AccuDrawFieldContainer(props) {
214
211
  setZIcon(settings && settings.zIcon !== undefined ? settings.zIcon : undefined);
215
212
  setAngleIcon(settings && settings.angleIcon !== undefined
216
213
  ? settings.angleIcon
217
- : defaultAngleIcon);
214
+ : angle_svg_1.default);
218
215
  setDistanceIcon(settings && settings.distanceIcon !== undefined
219
216
  ? settings.distanceIcon
220
- : defaultDistanceIcon);
217
+ : distance_svg_1.default);
221
218
  };
222
219
  if (FrameworkAccuDraw_1.FrameworkAccuDraw.uiStateStorage)
223
220
  processAccuDrawUiSettings(FrameworkAccuDraw_1.FrameworkAccuDraw.uiStateStorage);