@itwin/appui-react 3.0.0-dev.99 → 3.1.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (929) hide show
  1. package/CHANGELOG.md +80 -1
  2. package/LICENSE.md +1 -1
  3. package/README.md +3 -3
  4. package/lib/cjs/appui-react/UiFramework.d.ts +37 -22
  5. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  6. package/lib/cjs/appui-react/UiFramework.js +53 -38
  7. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +3 -3
  9. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +3 -3
  11. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +1 -1
  13. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/Calculator.js +1 -1
  15. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +4 -4
  17. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  18. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +5 -4
  19. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  20. package/lib/cjs/appui-react/backstage/Backstage.d.ts +0 -2
  21. package/lib/cjs/appui-react/backstage/Backstage.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/backstage/Backstage.js.map +1 -1
  23. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +2 -0
  24. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  25. package/lib/cjs/appui-react/backstage/BackstageComposer.js +26 -8
  26. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  27. package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts +2 -2
  28. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -1
  29. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  30. package/lib/cjs/appui-react/backstage/BackstageItemProps.d.ts +3 -3
  31. package/lib/cjs/appui-react/backstage/BackstageItemProps.js +1 -1
  32. package/lib/cjs/appui-react/backstage/BackstageItemProps.js.map +1 -1
  33. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
  34. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js +3 -3
  35. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  36. package/lib/cjs/appui-react/backstage/CommandLaunch.d.ts +2 -0
  37. package/lib/cjs/appui-react/backstage/CommandLaunch.d.ts.map +1 -1
  38. package/lib/cjs/appui-react/backstage/CommandLaunch.js +1 -0
  39. package/lib/cjs/appui-react/backstage/CommandLaunch.js.map +1 -1
  40. package/lib/cjs/appui-react/backstage/FrontstageLaunch.d.ts +4 -0
  41. package/lib/cjs/appui-react/backstage/FrontstageLaunch.d.ts.map +1 -1
  42. package/lib/cjs/appui-react/backstage/FrontstageLaunch.js +5 -6
  43. package/lib/cjs/appui-react/backstage/FrontstageLaunch.js.map +1 -1
  44. package/lib/cjs/appui-react/backstage/Separator.d.ts +1 -0
  45. package/lib/cjs/appui-react/backstage/Separator.d.ts.map +1 -1
  46. package/lib/cjs/appui-react/backstage/Separator.js +3 -2
  47. package/lib/cjs/appui-react/backstage/Separator.js.map +1 -1
  48. package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts +1 -1
  49. package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
  50. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +4 -5
  51. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  52. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  54. package/lib/cjs/appui-react/configurableui/state.d.ts +10 -3
  55. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/configurableui/state.js +15 -2
  57. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  58. package/lib/cjs/appui-react/content/ContentControl.d.ts +1 -1
  59. package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
  60. package/lib/cjs/appui-react/content/ContentControl.js +2 -2
  61. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  62. package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -2
  63. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/content/ContentLayout.js +4 -3
  65. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  66. package/lib/cjs/appui-react/content/ContentViewManager.d.ts +1 -1
  67. package/lib/cjs/appui-react/content/ContentViewManager.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/content/ContentViewManager.js +3 -3
  69. package/lib/cjs/appui-react/content/ContentViewManager.js.map +1 -1
  70. package/lib/cjs/appui-react/content/IModelViewport.d.ts +13 -1
  71. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  72. package/lib/cjs/appui-react/content/IModelViewport.js +18 -5
  73. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  74. package/lib/cjs/appui-react/content/{SavedViewLayout.d.ts → StageContentLayout.d.ts} +11 -11
  75. package/lib/cjs/appui-react/content/StageContentLayout.d.ts.map +1 -0
  76. package/lib/cjs/appui-react/content/{SavedViewLayout.js → StageContentLayout.js} +19 -17
  77. package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -0
  78. package/lib/cjs/appui-react/content/{SavedView.d.ts → ViewStateHelper.d.ts} +7 -7
  79. package/lib/cjs/appui-react/content/ViewStateHelper.d.ts.map +1 -0
  80. package/lib/cjs/appui-react/content/{SavedView.js → ViewStateHelper.js} +4 -4
  81. package/lib/cjs/appui-react/content/ViewStateHelper.js.map +1 -0
  82. package/lib/cjs/appui-react/content/split-pane/Pane.d.ts +21 -0
  83. package/lib/cjs/appui-react/content/split-pane/Pane.d.ts.map +1 -0
  84. package/lib/cjs/appui-react/content/split-pane/Pane.js +43 -0
  85. package/lib/cjs/appui-react/content/split-pane/Pane.js.map +1 -0
  86. package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts +23 -0
  87. package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts.map +1 -0
  88. package/lib/cjs/appui-react/content/split-pane/Resizer.js +39 -0
  89. package/lib/cjs/appui-react/content/split-pane/Resizer.js.map +1 -0
  90. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts +70 -0
  91. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts.map +1 -0
  92. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +243 -0
  93. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -0
  94. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +1 -2
  95. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  96. package/lib/cjs/appui-react/cursor/CursorInformation.js +1 -1
  97. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  98. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  99. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  100. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +2 -2
  101. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  102. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +3 -3
  103. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  104. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +1 -1
  105. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -2
  107. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  108. package/lib/cjs/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  109. package/lib/cjs/appui-react/dialog/StandardMessageBox.js +3 -0
  110. package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
  111. package/lib/cjs/appui-react/dragdrop/ZoneTargets.d.ts.map +1 -1
  112. package/lib/cjs/appui-react/dragdrop/ZoneTargets.js +8 -4
  113. package/lib/cjs/appui-react/dragdrop/ZoneTargets.js.map +1 -1
  114. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -2
  115. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  116. package/lib/cjs/appui-react/feedback/ElementTooltip.js +4 -2
  117. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  118. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +1 -0
  119. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  120. package/lib/cjs/appui-react/frontstage/Frontstage.js +32 -13
  121. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  122. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
  123. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  124. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +15 -1
  125. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  126. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +15 -2
  127. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  128. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +138 -3
  129. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  130. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  131. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +2 -1
  132. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  133. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
  134. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  136. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  137. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  138. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  139. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  140. package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts +12 -9
  141. package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
  142. package/lib/cjs/appui-react/hooks/useFrameworkVersion.js +19 -21
  143. package/lib/cjs/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  144. package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts +1 -1
  145. package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts.map +1 -1
  146. package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.js +6 -7
  147. package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
  148. package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts +3 -3
  149. package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +1 -1
  151. package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
  152. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts +0 -5
  153. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
  154. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  155. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +1 -1
  156. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  157. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +81 -68
  158. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  159. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  160. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  161. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +2 -1
  162. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  163. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +1 -1
  164. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  165. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.d.ts +5 -5
  166. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.d.ts.map +1 -1
  167. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.js +3 -2
  168. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
  169. package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts +1 -1
  170. package/lib/cjs/appui-react/messages/AppNotificationManager.js +1 -1
  171. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  172. package/lib/cjs/appui-react/messages/MessageManager.d.ts +1 -2
  173. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  174. package/lib/cjs/appui-react/messages/MessageManager.js +15 -9
  175. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  176. package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -2
  177. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  178. package/lib/cjs/appui-react/messages/Pointer.js +4 -3
  179. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  180. package/lib/cjs/appui-react/messages/ToastMessage.js +2 -1
  181. package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
  182. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +1 -1
  183. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  184. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +2 -2
  185. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  186. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -1
  187. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  188. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +2 -1
  189. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  190. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +6 -4
  191. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  192. package/lib/cjs/appui-react/pickers/ListPicker.d.ts +3 -0
  193. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  194. package/lib/cjs/appui-react/pickers/ListPicker.js +24 -9
  195. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  196. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +1 -1
  197. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  198. package/lib/cjs/appui-react/pickers/ViewSelector.js +9 -9
  199. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  200. package/lib/cjs/appui-react/popup/CardPopup.d.ts +7 -4
  201. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  202. package/lib/cjs/appui-react/popup/CardPopup.js +3 -2
  203. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  204. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts +3 -2
  205. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  206. package/lib/cjs/appui-react/popup/InputEditorPopup.js +1 -1
  207. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  208. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +6 -6
  209. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  210. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts +3 -2
  211. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  212. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
  213. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  214. package/lib/cjs/appui-react/popup/PopupManager.d.ts +10 -10
  215. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  216. package/lib/cjs/appui-react/popup/PopupManager.js +4 -4
  217. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  218. package/lib/cjs/appui-react/popup/PositionPopup.d.ts +5 -3
  219. package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
  220. package/lib/cjs/appui-react/popup/PositionPopup.js +3 -2
  221. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  222. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts +3 -2
  223. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  224. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +1 -1
  225. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  226. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts +4 -3
  227. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  228. package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -2
  229. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  230. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  231. package/lib/cjs/appui-react/redux/SessionState.d.ts +0 -6
  232. package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
  233. package/lib/cjs/appui-react/redux/SessionState.js +0 -8
  234. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  235. package/lib/cjs/appui-react/redux/StateManager.d.ts +1 -1
  236. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  237. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js +7 -7
  238. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  239. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
  240. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
  241. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  242. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  243. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +28 -19
  244. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  245. package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
  246. package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
  247. package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
  248. package/lib/cjs/appui-react/shared/ItemDefBase.d.ts +2 -2
  249. package/lib/cjs/appui-react/shared/ItemDefBase.d.ts.map +1 -1
  250. package/lib/cjs/appui-react/shared/ItemDefBase.js +1 -1
  251. package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
  252. package/lib/cjs/appui-react/shared/ItemProps.d.ts +2 -2
  253. package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
  254. package/lib/cjs/appui-react/shared/ToolItemDef.d.ts +1 -1
  255. package/lib/cjs/appui-react/shared/ToolItemDef.d.ts.map +1 -1
  256. package/lib/cjs/appui-react/shared/ToolItemDef.js +2 -2
  257. package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
  258. package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.d.ts.map +1 -1
  259. package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.js +1 -0
  260. package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
  261. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +2 -2
  262. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  263. package/lib/cjs/appui-react/stagepanels/StagePanel.js +1 -0
  264. package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
  265. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +26 -2
  266. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  267. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +24 -3
  268. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  269. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.d.ts +2 -2
  270. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.d.ts.map +1 -1
  271. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.js +2 -1
  272. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
  273. package/lib/cjs/appui-react/statusbar/StatusBar.js +2 -1
  274. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  275. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  276. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +17 -5
  277. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  278. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
  279. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +1 -1
  280. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  281. package/lib/cjs/appui-react/statusfields/Indicator.d.ts +15 -14
  282. package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
  283. package/lib/cjs/appui-react/statusfields/Indicator.js +23 -21
  284. package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
  285. package/lib/cjs/appui-react/statusfields/Indicator.scss +29 -18
  286. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  287. package/lib/cjs/appui-react/statusfields/MessageCenter.js +2 -1
  288. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  289. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts +1 -0
  290. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  291. package/lib/cjs/appui-react/statusfields/SelectionScope.js +6 -4
  292. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  293. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +13 -3
  294. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +2 -10
  295. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  296. package/lib/cjs/appui-react/statusfields/SnapMode.js +4 -34
  297. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  298. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts +0 -6
  299. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  300. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +1 -25
  301. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  302. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +7 -7
  303. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  304. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -12
  305. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  306. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -3
  307. package/lib/cjs/appui-react/syncui/BooleanListener.d.ts +2 -2
  308. package/lib/cjs/appui-react/syncui/BooleanListener.d.ts.map +1 -1
  309. package/lib/cjs/appui-react/syncui/BooleanListener.js +2 -1
  310. package/lib/cjs/appui-react/syncui/BooleanListener.js.map +1 -1
  311. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts +8 -18
  312. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  313. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +30 -103
  314. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  315. package/lib/cjs/appui-react/toolbar/ActionButtonItem.js +2 -1
  316. package/lib/cjs/appui-react/toolbar/ActionButtonItem.js.map +1 -1
  317. package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
  318. package/lib/cjs/appui-react/toolbar/ActionItemButton.js +2 -1
  319. package/lib/cjs/appui-react/toolbar/ActionItemButton.js.map +1 -1
  320. package/lib/cjs/appui-react/toolbar/GroupButtonItem.js +24 -20
  321. package/lib/cjs/appui-react/toolbar/GroupButtonItem.js.map +1 -1
  322. package/lib/cjs/appui-react/toolbar/GroupItem.d.ts.map +1 -1
  323. package/lib/cjs/appui-react/toolbar/GroupItem.js +33 -29
  324. package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
  325. package/lib/cjs/appui-react/toolbar/ToolButton.js +3 -2
  326. package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
  327. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  328. package/lib/cjs/appui-react/toolbar/Toolbar.js +3 -2
  329. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  330. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  331. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +22 -20
  332. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  333. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
  334. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +4 -4
  335. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  336. package/lib/cjs/appui-react/tools/MarkupToolDefinitions.d.ts +2 -2
  337. package/lib/cjs/appui-react/tools/MarkupToolDefinitions.js +2 -2
  338. package/lib/cjs/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
  339. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +8 -10
  340. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  341. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +17 -36
  342. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  343. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +7 -9
  344. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  345. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +12 -20
  346. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  347. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +7 -9
  348. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  349. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +39 -50
  350. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  351. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +4 -4
  352. package/lib/{esm/appui-react/uisettings → cjs/appui-react/uistate}/AppUiSettings.d.ts +11 -9
  353. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -0
  354. package/lib/cjs/appui-react/{uisettings → uistate}/AppUiSettings.js +12 -8
  355. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -0
  356. package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts +15 -0
  357. package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -0
  358. package/lib/cjs/appui-react/uistate/UserSettingsStorage.js +59 -0
  359. package/lib/cjs/appui-react/uistate/UserSettingsStorage.js.map +1 -0
  360. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts +20 -0
  361. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -0
  362. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +38 -0
  363. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -0
  364. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts +5 -5
  365. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  366. package/lib/cjs/appui-react/utils/UiShowHideManager.js +8 -8
  367. package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
  368. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  369. package/lib/cjs/appui-react/widget-panels/Content.js +1 -4
  370. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  371. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +98 -8
  372. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  373. package/lib/cjs/appui-react/widget-panels/Frontstage.js +83 -93
  374. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  375. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  376. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  377. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts +22 -0
  378. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -0
  379. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +56 -0
  380. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -0
  381. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  382. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +1 -0
  383. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  384. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  385. package/lib/cjs/appui-react/widgets/BasicToolWidget.js +3 -1
  386. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  387. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts +9 -0
  388. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  389. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +10 -0
  390. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  391. package/lib/cjs/appui-react/widgets/NavigationWidget.d.ts.map +1 -1
  392. package/lib/cjs/appui-react/widgets/NavigationWidget.js +2 -1
  393. package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
  394. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +1 -0
  395. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  396. package/lib/cjs/appui-react/widgets/StableWidgetDef.d.ts +1 -1
  397. package/lib/cjs/appui-react/widgets/StableWidgetDef.js +1 -1
  398. package/lib/cjs/appui-react/widgets/StableWidgetDef.js.map +1 -1
  399. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js +2 -1
  400. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  401. package/lib/cjs/appui-react/widgets/ToolWidget.js +3 -2
  402. package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
  403. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts +0 -12
  404. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
  405. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js +1 -36
  406. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  407. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.d.ts +1 -0
  408. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.d.ts.map +1 -1
  409. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js +5 -2
  410. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  411. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts +0 -1
  412. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  413. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
  414. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  415. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -3
  416. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  417. package/lib/cjs/appui-react/widgets/WidgetDef.js +18 -7
  418. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  419. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  420. package/lib/cjs/appui-react/widgets/WidgetHost.js +1 -0
  421. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  422. package/lib/cjs/appui-react/widgets/WidgetStack.d.ts.map +1 -1
  423. package/lib/cjs/appui-react/widgets/WidgetStack.js +2 -0
  424. package/lib/cjs/appui-react/widgets/WidgetStack.js.map +1 -1
  425. package/lib/cjs/appui-react/zones/FrameworkZone.js.map +1 -1
  426. package/lib/cjs/appui-react/zones/StatusBarZone.js.map +1 -1
  427. package/lib/cjs/appui-react/zones/Zone.d.ts +1 -1
  428. package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
  429. package/lib/cjs/appui-react/zones/Zone.js +2 -1
  430. package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
  431. package/lib/cjs/appui-react/zones/ZoneDef.d.ts +4 -4
  432. package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
  433. package/lib/cjs/appui-react/zones/ZoneDef.js +5 -4
  434. package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
  435. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.d.ts +1 -2
  436. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.d.ts.map +1 -1
  437. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.js +3 -2
  438. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
  439. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
  440. package/lib/cjs/appui-react.d.ts +15 -18
  441. package/lib/cjs/appui-react.d.ts.map +1 -1
  442. package/lib/cjs/appui-react.js +15 -18
  443. package/lib/cjs/appui-react.js.map +1 -1
  444. package/lib/esm/appui-react/UiFramework.d.ts +37 -22
  445. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  446. package/lib/esm/appui-react/UiFramework.js +52 -37
  447. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  448. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +3 -3
  449. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  450. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +3 -3
  451. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  452. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +1 -1
  453. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  454. package/lib/esm/appui-react/accudraw/Calculator.js +1 -1
  455. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  456. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +4 -4
  457. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  458. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +6 -5
  459. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  460. package/lib/esm/appui-react/backstage/Backstage.d.ts +0 -2
  461. package/lib/esm/appui-react/backstage/Backstage.d.ts.map +1 -1
  462. package/lib/esm/appui-react/backstage/Backstage.js.map +1 -1
  463. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +2 -0
  464. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  465. package/lib/esm/appui-react/backstage/BackstageComposer.js +27 -9
  466. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  467. package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts +2 -2
  468. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -1
  469. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  470. package/lib/esm/appui-react/backstage/BackstageItemProps.d.ts +3 -3
  471. package/lib/esm/appui-react/backstage/BackstageItemProps.js +1 -1
  472. package/lib/esm/appui-react/backstage/BackstageItemProps.js.map +1 -1
  473. package/lib/esm/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
  474. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js +3 -3
  475. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  476. package/lib/esm/appui-react/backstage/CommandLaunch.d.ts +2 -0
  477. package/lib/esm/appui-react/backstage/CommandLaunch.d.ts.map +1 -1
  478. package/lib/esm/appui-react/backstage/CommandLaunch.js +1 -0
  479. package/lib/esm/appui-react/backstage/CommandLaunch.js.map +1 -1
  480. package/lib/esm/appui-react/backstage/FrontstageLaunch.d.ts +4 -0
  481. package/lib/esm/appui-react/backstage/FrontstageLaunch.d.ts.map +1 -1
  482. package/lib/esm/appui-react/backstage/FrontstageLaunch.js +5 -6
  483. package/lib/esm/appui-react/backstage/FrontstageLaunch.js.map +1 -1
  484. package/lib/esm/appui-react/backstage/Separator.d.ts +1 -0
  485. package/lib/esm/appui-react/backstage/Separator.d.ts.map +1 -1
  486. package/lib/esm/appui-react/backstage/Separator.js +3 -2
  487. package/lib/esm/appui-react/backstage/Separator.js.map +1 -1
  488. package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts +1 -1
  489. package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
  490. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +4 -5
  491. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  492. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  493. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  494. package/lib/esm/appui-react/configurableui/state.d.ts +10 -3
  495. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  496. package/lib/esm/appui-react/configurableui/state.js +15 -2
  497. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  498. package/lib/esm/appui-react/content/ContentControl.d.ts +1 -1
  499. package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
  500. package/lib/esm/appui-react/content/ContentControl.js +1 -1
  501. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  502. package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -2
  503. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  504. package/lib/esm/appui-react/content/ContentLayout.js +3 -2
  505. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  506. package/lib/esm/appui-react/content/ContentViewManager.d.ts +1 -1
  507. package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +1 -1
  508. package/lib/esm/appui-react/content/ContentViewManager.js +1 -1
  509. package/lib/esm/appui-react/content/ContentViewManager.js.map +1 -1
  510. package/lib/esm/appui-react/content/IModelViewport.d.ts +13 -1
  511. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  512. package/lib/esm/appui-react/content/IModelViewport.js +16 -4
  513. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  514. package/lib/esm/appui-react/content/{SavedViewLayout.d.ts → StageContentLayout.d.ts} +11 -11
  515. package/lib/esm/appui-react/content/StageContentLayout.d.ts.map +1 -0
  516. package/lib/esm/appui-react/content/{SavedViewLayout.js → StageContentLayout.js} +17 -15
  517. package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -0
  518. package/lib/esm/appui-react/content/{SavedView.d.ts → ViewStateHelper.d.ts} +7 -7
  519. package/lib/esm/appui-react/content/ViewStateHelper.d.ts.map +1 -0
  520. package/lib/esm/appui-react/content/{SavedView.js → ViewStateHelper.js} +2 -2
  521. package/lib/esm/appui-react/content/ViewStateHelper.js.map +1 -0
  522. package/lib/esm/appui-react/content/split-pane/Pane.d.ts +21 -0
  523. package/lib/esm/appui-react/content/split-pane/Pane.d.ts.map +1 -0
  524. package/lib/esm/appui-react/content/split-pane/Pane.js +39 -0
  525. package/lib/esm/appui-react/content/split-pane/Pane.js.map +1 -0
  526. package/lib/esm/appui-react/content/split-pane/Resizer.d.ts +23 -0
  527. package/lib/esm/appui-react/content/split-pane/Resizer.d.ts.map +1 -0
  528. package/lib/esm/appui-react/content/split-pane/Resizer.js +35 -0
  529. package/lib/esm/appui-react/content/split-pane/Resizer.js.map +1 -0
  530. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts +70 -0
  531. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts.map +1 -0
  532. package/lib/esm/appui-react/content/split-pane/SplitPane.js +239 -0
  533. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -0
  534. package/lib/esm/appui-react/cursor/CursorInformation.d.ts +1 -2
  535. package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  536. package/lib/esm/appui-react/cursor/CursorInformation.js +2 -2
  537. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  538. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  539. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  540. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +2 -2
  541. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  542. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +2 -2
  543. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  544. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +1 -1
  545. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  546. package/lib/esm/appui-react/dialog/DialogManagerBase.js +1 -1
  547. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  548. package/lib/esm/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  549. package/lib/esm/appui-react/dialog/StandardMessageBox.js +3 -0
  550. package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
  551. package/lib/esm/appui-react/dragdrop/ZoneTargets.d.ts.map +1 -1
  552. package/lib/esm/appui-react/dragdrop/ZoneTargets.js +8 -4
  553. package/lib/esm/appui-react/dragdrop/ZoneTargets.js.map +1 -1
  554. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -2
  555. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  556. package/lib/esm/appui-react/feedback/ElementTooltip.js +4 -2
  557. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  558. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +1 -0
  559. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  560. package/lib/esm/appui-react/frontstage/Frontstage.js +32 -13
  561. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  562. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
  563. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  564. package/lib/esm/appui-react/frontstage/FrontstageComposer.js +15 -1
  565. package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  566. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +15 -2
  567. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  568. package/lib/esm/appui-react/frontstage/FrontstageDef.js +140 -5
  569. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  570. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  571. package/lib/esm/appui-react/frontstage/FrontstageManager.js +2 -1
  572. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  573. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
  574. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  575. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  576. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  577. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  578. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  579. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  580. package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts +12 -9
  581. package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
  582. package/lib/esm/appui-react/hooks/useFrameworkVersion.js +19 -21
  583. package/lib/esm/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  584. package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts +1 -1
  585. package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts.map +1 -1
  586. package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.js +6 -7
  587. package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
  588. package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts +3 -3
  589. package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
  590. package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +1 -1
  591. package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
  592. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts +0 -5
  593. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
  594. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  595. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +1 -1
  596. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  597. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +83 -70
  598. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  599. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  600. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  601. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +2 -1
  602. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  603. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -2
  604. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  605. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.d.ts +5 -5
  606. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.d.ts.map +1 -1
  607. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.js +3 -2
  608. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
  609. package/lib/esm/appui-react/messages/AppNotificationManager.d.ts +1 -1
  610. package/lib/esm/appui-react/messages/AppNotificationManager.js +1 -1
  611. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  612. package/lib/esm/appui-react/messages/MessageManager.d.ts +1 -2
  613. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  614. package/lib/esm/appui-react/messages/MessageManager.js +9 -3
  615. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  616. package/lib/esm/appui-react/messages/Pointer.d.ts +2 -2
  617. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  618. package/lib/esm/appui-react/messages/Pointer.js +4 -3
  619. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  620. package/lib/esm/appui-react/messages/ToastMessage.js +2 -1
  621. package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
  622. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +1 -1
  623. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  624. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -1
  625. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  626. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -1
  627. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  628. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +2 -1
  629. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  630. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +6 -4
  631. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  632. package/lib/esm/appui-react/pickers/ListPicker.d.ts +3 -0
  633. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  634. package/lib/esm/appui-react/pickers/ListPicker.js +23 -9
  635. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  636. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +1 -1
  637. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  638. package/lib/esm/appui-react/pickers/ViewSelector.js +7 -7
  639. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  640. package/lib/esm/appui-react/popup/CardPopup.d.ts +7 -4
  641. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  642. package/lib/esm/appui-react/popup/CardPopup.js +3 -2
  643. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  644. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts +3 -2
  645. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  646. package/lib/esm/appui-react/popup/InputEditorPopup.js +1 -1
  647. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  648. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +7 -7
  649. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  650. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts +3 -2
  651. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  652. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
  653. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  654. package/lib/esm/appui-react/popup/PopupManager.d.ts +10 -10
  655. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  656. package/lib/esm/appui-react/popup/PopupManager.js +5 -5
  657. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  658. package/lib/esm/appui-react/popup/PositionPopup.d.ts +5 -3
  659. package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
  660. package/lib/esm/appui-react/popup/PositionPopup.js +3 -2
  661. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  662. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts +3 -2
  663. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  664. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +1 -1
  665. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  666. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts +4 -3
  667. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  668. package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -2
  669. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  670. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  671. package/lib/esm/appui-react/redux/SessionState.d.ts +0 -6
  672. package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
  673. package/lib/esm/appui-react/redux/SessionState.js +0 -8
  674. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  675. package/lib/esm/appui-react/redux/StateManager.d.ts +1 -1
  676. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  677. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js +7 -7
  678. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  679. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
  680. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
  681. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  682. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  683. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +28 -19
  684. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  685. package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
  686. package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
  687. package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
  688. package/lib/esm/appui-react/shared/ItemDefBase.d.ts +2 -2
  689. package/lib/esm/appui-react/shared/ItemDefBase.d.ts.map +1 -1
  690. package/lib/esm/appui-react/shared/ItemDefBase.js +1 -1
  691. package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
  692. package/lib/esm/appui-react/shared/ItemProps.d.ts +2 -2
  693. package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
  694. package/lib/esm/appui-react/shared/ToolItemDef.d.ts +1 -1
  695. package/lib/esm/appui-react/shared/ToolItemDef.d.ts.map +1 -1
  696. package/lib/esm/appui-react/shared/ToolItemDef.js +2 -2
  697. package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
  698. package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.d.ts.map +1 -1
  699. package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.js +1 -0
  700. package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
  701. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +2 -2
  702. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  703. package/lib/esm/appui-react/stagepanels/StagePanel.js +1 -0
  704. package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
  705. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +26 -2
  706. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  707. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +24 -3
  708. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  709. package/lib/esm/appui-react/stagepanels/StagePanelHeader.d.ts +2 -2
  710. package/lib/esm/appui-react/stagepanels/StagePanelHeader.d.ts.map +1 -1
  711. package/lib/esm/appui-react/stagepanels/StagePanelHeader.js +2 -1
  712. package/lib/esm/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
  713. package/lib/esm/appui-react/statusbar/StatusBar.js +2 -1
  714. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  715. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  716. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +17 -5
  717. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  718. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
  719. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +1 -1
  720. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  721. package/lib/esm/appui-react/statusfields/Indicator.d.ts +15 -14
  722. package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
  723. package/lib/esm/appui-react/statusfields/Indicator.js +23 -21
  724. package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
  725. package/lib/esm/appui-react/statusfields/Indicator.scss +29 -18
  726. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  727. package/lib/esm/appui-react/statusfields/MessageCenter.js +2 -1
  728. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  729. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts +1 -0
  730. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  731. package/lib/esm/appui-react/statusfields/SelectionScope.js +6 -4
  732. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  733. package/lib/esm/appui-react/statusfields/SelectionScope.scss +13 -3
  734. package/lib/esm/appui-react/statusfields/SnapMode.d.ts +2 -10
  735. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  736. package/lib/esm/appui-react/statusfields/SnapMode.js +5 -35
  737. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  738. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts +0 -6
  739. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  740. package/lib/esm/appui-react/statusfields/ViewAttributes.js +2 -26
  741. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  742. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +7 -7
  743. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  744. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +14 -13
  745. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  746. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -3
  747. package/lib/esm/appui-react/syncui/BooleanListener.d.ts +2 -2
  748. package/lib/esm/appui-react/syncui/BooleanListener.d.ts.map +1 -1
  749. package/lib/esm/appui-react/syncui/BooleanListener.js +2 -1
  750. package/lib/esm/appui-react/syncui/BooleanListener.js.map +1 -1
  751. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts +8 -18
  752. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  753. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +29 -101
  754. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  755. package/lib/esm/appui-react/toolbar/ActionButtonItem.js +2 -1
  756. package/lib/esm/appui-react/toolbar/ActionButtonItem.js.map +1 -1
  757. package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
  758. package/lib/esm/appui-react/toolbar/ActionItemButton.js +2 -1
  759. package/lib/esm/appui-react/toolbar/ActionItemButton.js.map +1 -1
  760. package/lib/esm/appui-react/toolbar/GroupButtonItem.js +24 -20
  761. package/lib/esm/appui-react/toolbar/GroupButtonItem.js.map +1 -1
  762. package/lib/esm/appui-react/toolbar/GroupItem.d.ts.map +1 -1
  763. package/lib/esm/appui-react/toolbar/GroupItem.js +33 -29
  764. package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
  765. package/lib/esm/appui-react/toolbar/ToolButton.js +3 -2
  766. package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
  767. package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  768. package/lib/esm/appui-react/toolbar/Toolbar.js +3 -2
  769. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  770. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  771. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +22 -20
  772. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  773. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
  774. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +4 -4
  775. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  776. package/lib/esm/appui-react/tools/MarkupToolDefinitions.d.ts +2 -2
  777. package/lib/esm/appui-react/tools/MarkupToolDefinitions.js +2 -2
  778. package/lib/esm/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
  779. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +8 -10
  780. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  781. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +18 -37
  782. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  783. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +7 -9
  784. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  785. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +13 -21
  786. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  787. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +7 -9
  788. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  789. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +40 -51
  790. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  791. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +4 -4
  792. package/lib/{cjs/appui-react/uisettings → esm/appui-react/uistate}/AppUiSettings.d.ts +11 -9
  793. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -0
  794. package/lib/esm/appui-react/{uisettings → uistate}/AppUiSettings.js +13 -9
  795. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -0
  796. package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts +15 -0
  797. package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -0
  798. package/lib/esm/appui-react/uistate/UserSettingsStorage.js +55 -0
  799. package/lib/esm/appui-react/uistate/UserSettingsStorage.js.map +1 -0
  800. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts +20 -0
  801. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -0
  802. package/lib/esm/appui-react/uistate/useUiStateStorage.js +33 -0
  803. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -0
  804. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts +5 -5
  805. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  806. package/lib/esm/appui-react/utils/UiShowHideManager.js +9 -9
  807. package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
  808. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  809. package/lib/esm/appui-react/widget-panels/Content.js +1 -4
  810. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  811. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +98 -8
  812. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  813. package/lib/esm/appui-react/widget-panels/Frontstage.js +83 -92
  814. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  815. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  816. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  817. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts +22 -0
  818. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -0
  819. package/lib/esm/appui-react/widgets/BackstageAppButton.js +52 -0
  820. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -0
  821. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  822. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +1 -0
  823. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  824. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  825. package/lib/esm/appui-react/widgets/BasicToolWidget.js +3 -1
  826. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  827. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts +9 -0
  828. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  829. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +10 -0
  830. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  831. package/lib/esm/appui-react/widgets/NavigationWidget.d.ts.map +1 -1
  832. package/lib/esm/appui-react/widgets/NavigationWidget.js +2 -1
  833. package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
  834. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +1 -0
  835. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  836. package/lib/esm/appui-react/widgets/StableWidgetDef.d.ts +1 -1
  837. package/lib/esm/appui-react/widgets/StableWidgetDef.js +1 -1
  838. package/lib/esm/appui-react/widgets/StableWidgetDef.js.map +1 -1
  839. package/lib/esm/appui-react/widgets/ToolSettingsContent.js +2 -1
  840. package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  841. package/lib/esm/appui-react/widgets/ToolWidget.js +3 -2
  842. package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
  843. package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts +0 -12
  844. package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
  845. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js +2 -36
  846. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  847. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.d.ts +1 -0
  848. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.d.ts.map +1 -1
  849. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js +5 -2
  850. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  851. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts +0 -1
  852. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  853. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
  854. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  855. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -3
  856. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  857. package/lib/esm/appui-react/widgets/WidgetDef.js +18 -7
  858. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  859. package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  860. package/lib/esm/appui-react/widgets/WidgetHost.js +1 -0
  861. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  862. package/lib/esm/appui-react/widgets/WidgetStack.d.ts.map +1 -1
  863. package/lib/esm/appui-react/widgets/WidgetStack.js +2 -0
  864. package/lib/esm/appui-react/widgets/WidgetStack.js.map +1 -1
  865. package/lib/esm/appui-react/zones/FrameworkZone.js.map +1 -1
  866. package/lib/esm/appui-react/zones/StatusBarZone.js.map +1 -1
  867. package/lib/esm/appui-react/zones/Zone.d.ts +1 -1
  868. package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
  869. package/lib/esm/appui-react/zones/Zone.js +2 -1
  870. package/lib/esm/appui-react/zones/Zone.js.map +1 -1
  871. package/lib/esm/appui-react/zones/ZoneDef.d.ts +4 -4
  872. package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
  873. package/lib/esm/appui-react/zones/ZoneDef.js +5 -4
  874. package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
  875. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.d.ts +1 -2
  876. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.d.ts.map +1 -1
  877. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.js +2 -1
  878. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
  879. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
  880. package/lib/esm/appui-react.d.ts +15 -18
  881. package/lib/esm/appui-react.d.ts.map +1 -1
  882. package/lib/esm/appui-react.js +15 -18
  883. package/lib/esm/appui-react.js.map +1 -1
  884. package/lib/public/locales/en/UiFramework.json +9 -2
  885. package/package.json +46 -53
  886. package/lib/cjs/appui-react/UserInfo.d.ts +0 -58
  887. package/lib/cjs/appui-react/UserInfo.d.ts.map +0 -1
  888. package/lib/cjs/appui-react/UserInfo.js +0 -34
  889. package/lib/cjs/appui-react/UserInfo.js.map +0 -1
  890. package/lib/cjs/appui-react/content/SavedView.d.ts.map +0 -1
  891. package/lib/cjs/appui-react/content/SavedView.js.map +0 -1
  892. package/lib/cjs/appui-react/content/SavedViewLayout.d.ts.map +0 -1
  893. package/lib/cjs/appui-react/content/SavedViewLayout.js.map +0 -1
  894. package/lib/cjs/appui-react/stagepanels/StagePanelEnums.d.ts +0 -25
  895. package/lib/cjs/appui-react/stagepanels/StagePanelEnums.d.ts.map +0 -1
  896. package/lib/cjs/appui-react/stagepanels/StagePanelEnums.js +0 -34
  897. package/lib/cjs/appui-react/stagepanels/StagePanelEnums.js.map +0 -1
  898. package/lib/cjs/appui-react/uisettings/AppUiSettings.d.ts.map +0 -1
  899. package/lib/cjs/appui-react/uisettings/AppUiSettings.js.map +0 -1
  900. package/lib/cjs/appui-react/uisettings/UserSettingsStorage.d.ts +0 -23
  901. package/lib/cjs/appui-react/uisettings/UserSettingsStorage.d.ts.map +0 -1
  902. package/lib/cjs/appui-react/uisettings/UserSettingsStorage.js +0 -74
  903. package/lib/cjs/appui-react/uisettings/UserSettingsStorage.js.map +0 -1
  904. package/lib/cjs/appui-react/uisettings/useUiSettings.d.ts +0 -21
  905. package/lib/cjs/appui-react/uisettings/useUiSettings.d.ts.map +0 -1
  906. package/lib/cjs/appui-react/uisettings/useUiSettings.js +0 -28
  907. package/lib/cjs/appui-react/uisettings/useUiSettings.js.map +0 -1
  908. package/lib/esm/appui-react/UserInfo.d.ts +0 -58
  909. package/lib/esm/appui-react/UserInfo.d.ts.map +0 -1
  910. package/lib/esm/appui-react/UserInfo.js +0 -30
  911. package/lib/esm/appui-react/UserInfo.js.map +0 -1
  912. package/lib/esm/appui-react/content/SavedView.d.ts.map +0 -1
  913. package/lib/esm/appui-react/content/SavedView.js.map +0 -1
  914. package/lib/esm/appui-react/content/SavedViewLayout.d.ts.map +0 -1
  915. package/lib/esm/appui-react/content/SavedViewLayout.js.map +0 -1
  916. package/lib/esm/appui-react/stagepanels/StagePanelEnums.d.ts +0 -25
  917. package/lib/esm/appui-react/stagepanels/StagePanelEnums.d.ts.map +0 -1
  918. package/lib/esm/appui-react/stagepanels/StagePanelEnums.js +0 -31
  919. package/lib/esm/appui-react/stagepanels/StagePanelEnums.js.map +0 -1
  920. package/lib/esm/appui-react/uisettings/AppUiSettings.d.ts.map +0 -1
  921. package/lib/esm/appui-react/uisettings/AppUiSettings.js.map +0 -1
  922. package/lib/esm/appui-react/uisettings/UserSettingsStorage.d.ts +0 -23
  923. package/lib/esm/appui-react/uisettings/UserSettingsStorage.d.ts.map +0 -1
  924. package/lib/esm/appui-react/uisettings/UserSettingsStorage.js +0 -68
  925. package/lib/esm/appui-react/uisettings/UserSettingsStorage.js.map +0 -1
  926. package/lib/esm/appui-react/uisettings/useUiSettings.d.ts +0 -21
  927. package/lib/esm/appui-react/uisettings/useUiSettings.d.ts.map +0 -1
  928. package/lib/esm/appui-react/uisettings/useUiSettings.js +0 -23
  929. package/lib/esm/appui-react/uisettings/useUiSettings.js.map +0 -1
@@ -79,16 +79,17 @@ class FrameworkAccuDraw extends core_frontend_1.AccuDraw {
79
79
  static get displayNotifications() { return FrameworkAccuDraw._displayNotifications; }
80
80
  static set displayNotifications(v) {
81
81
  FrameworkAccuDraw._displayNotifications = v;
82
- void UiFramework_1.UiFramework.getUiSettingsStorage().saveSetting(this._settingsNamespace, this._notificationsKey, v);
82
+ UiFramework_1.UiFramework.getUiStateStorage().saveSetting(this._settingsNamespace, this._notificationsKey, v); // eslint-disable-line @typescript-eslint/no-floating-promises
83
83
  }
84
+ /* @internal */
84
85
  async loadUserSettings(storage) {
85
86
  const result = await storage.getSetting(FrameworkAccuDraw._settingsNamespace, FrameworkAccuDraw._notificationsKey);
86
- if (result.status === core_react_1.UiSettingsStatus.Success)
87
+ if (result.status === core_react_1.UiStateStorageStatus.Success)
87
88
  FrameworkAccuDraw._displayNotifications = result.setting;
88
89
  }
89
90
  /** AccuDraw User Interface settings */
90
- static get uiSettings() { return FrameworkAccuDraw._uiSettings; }
91
- static set uiSettings(v) {
91
+ static get uiStateStorage() { return FrameworkAccuDraw._uiSettings; }
92
+ static set uiStateStorage(v) {
92
93
  FrameworkAccuDraw._uiSettings = v;
93
94
  FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.emit({});
94
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FrameworkAccuDraw.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/FrameworkAccuDraw.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport { BeUiEvent } from \"@itwin/core-bentley\";\r\nimport {\r\n AccuDraw, BeButtonEvent, CompassMode, IModelApp, ItemField,\r\n NotifyMessageDetails, OutputMessagePriority, QuantityType, RotationMode,\r\n} from \"@itwin/core-frontend\";\r\nimport { ConditionalBooleanValue } from \"@itwin/appui-abstract\";\r\nimport { UiSettings, UiSettingsStatus } from \"@itwin/core-react\";\r\nimport { UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\nimport { SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { AccuDrawUiSettings } from \"./AccuDrawUiSettings\";\r\n\r\n// cspell:ignore dont\r\n\r\nconst compassModeToKeyMap = new Map<CompassMode, string>([\r\n [CompassMode.Polar, \"polar\"],\r\n [CompassMode.Rectangular, \"rectangular\"],\r\n]);\r\n\r\nconst rotationModeToKeyMap = new Map<RotationMode, string>([\r\n [RotationMode.Top, \"top\"],\r\n [RotationMode.Front, \"front\"],\r\n [RotationMode.Side, \"side\"],\r\n [RotationMode.View, \"view\"],\r\n [RotationMode.ACS, \"ACS\"],\r\n [RotationMode.Context, \"context\"],\r\n]);\r\n\r\n/** Arguments for [[AccuDrawSetFieldFocusEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldFocusEventArgs {\r\n field: ItemField;\r\n}\r\n\r\n/** AccuDraw Set Field Focus event\r\n * @beta */\r\nexport class AccuDrawSetFieldFocusEvent extends BeUiEvent<AccuDrawSetFieldFocusEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldValueToUiEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldValueToUiEventArgs {\r\n field: ItemField;\r\n value: number;\r\n formattedValue: string;\r\n}\r\n\r\n/** AccuDraw Set Field Value to Ui event\r\n * @beta */\r\nexport class AccuDrawSetFieldValueToUiEvent extends BeUiEvent<AccuDrawSetFieldValueToUiEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldValueFromUiEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldValueFromUiEventArgs {\r\n field: ItemField;\r\n stringValue: string;\r\n}\r\n\r\n/** AccuDraw Set Field Value from Ui event\r\n * @beta */\r\nexport class AccuDrawSetFieldValueFromUiEvent extends BeUiEvent<AccuDrawSetFieldValueFromUiEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldLockEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldLockEventArgs {\r\n field: ItemField;\r\n lock: boolean;\r\n}\r\n\r\n/** AccuDraw Set Field Lock event\r\n * @beta */\r\nexport class AccuDrawSetFieldLockEvent extends BeUiEvent<AccuDrawSetFieldLockEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetCompassModeEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetCompassModeEventArgs {\r\n mode: CompassMode;\r\n}\r\n\r\n/** AccuDraw Set Compass Mode event\r\n * @beta */\r\nexport class AccuDrawSetCompassModeEvent extends BeUiEvent<AccuDrawSetCompassModeEventArgs> { }\r\n\r\n/** AccuDraw Grab Input Focus event\r\n * @beta */\r\nexport class AccuDrawGrabInputFocusEvent extends BeUiEvent<{}> { }\r\n\r\n/** AccuDraw Ui Settings Changed event\r\n * @beta */\r\nexport class AccuDrawUiSettingsChangedEvent extends BeUiEvent<{}> { }\r\n\r\n/** Implementation of AccuDraw that sends events for UI and status changes\r\n * @beta\r\n */\r\nexport class FrameworkAccuDraw extends AccuDraw implements UserSettingsProvider {\r\n private static _displayNotifications = false;\r\n private static _uiSettings: AccuDrawUiSettings | undefined;\r\n private static _settingsNamespace = \"AppUiSettings\";\r\n private static _notificationsKey = \"AccuDrawNotifications\";\r\n public readonly providerId = \"FrameworkAccuDraw\";\r\n\r\n /** AccuDraw Set Field Focus event. */\r\n public static readonly onAccuDrawSetFieldFocusEvent = new AccuDrawSetFieldFocusEvent();\r\n /** AccuDraw Set Field Value to Ui event. */\r\n public static readonly onAccuDrawSetFieldValueToUiEvent = new AccuDrawSetFieldValueToUiEvent();\r\n /** AccuDraw Set Field Value from Ui event. */\r\n public static readonly onAccuDrawSetFieldValueFromUiEvent = new AccuDrawSetFieldValueFromUiEvent();\r\n /** AccuDraw Set Field Lock event. */\r\n public static readonly onAccuDrawSetFieldLockEvent = new AccuDrawSetFieldLockEvent();\r\n /** AccuDraw Set Mode event. */\r\n public static readonly onAccuDrawSetCompassModeEvent = new AccuDrawSetCompassModeEvent();\r\n /** AccuDraw Grab Input Focus event. */\r\n public static readonly onAccuDrawGrabInputFocusEvent = new AccuDrawGrabInputFocusEvent();\r\n\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Top */\r\n public static readonly isTopRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Top, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Front */\r\n public static readonly isFrontRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Front, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Side */\r\n public static readonly isSideRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Side, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.View */\r\n public static readonly isViewRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.View, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.ACS */\r\n public static readonly isACSRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.ACS, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Context */\r\n public static readonly isContextRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Context, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.compassMode === CompassMode.Polar */\r\n public static readonly isPolarModeConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.compassMode === CompassMode.Polar, [SyncUiEventId.AccuDrawCompassModeChanged]);\r\n /** Determines if AccuDraw.compassMode === CompassMode.Rectangular */\r\n public static readonly isRectangularModeConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.compassMode === CompassMode.Rectangular, [SyncUiEventId.AccuDrawCompassModeChanged]);\r\n\r\n /** AccuDraw Grab Input Focus event. */\r\n public static readonly onAccuDrawUiSettingsChangedEvent = new AccuDrawUiSettingsChangedEvent();\r\n\r\n /** Determines if notifications should be displayed for AccuDraw changes */\r\n public static get displayNotifications(): boolean { return FrameworkAccuDraw._displayNotifications; }\r\n public static set displayNotifications(v: boolean) {\r\n FrameworkAccuDraw._displayNotifications = v;\r\n void UiFramework.getUiSettingsStorage().saveSetting(this._settingsNamespace, this._notificationsKey, v);\r\n }\r\n\r\n public async loadUserSettings(storage: UiSettings): Promise<void> {\r\n const result = await storage.getSetting(FrameworkAccuDraw._settingsNamespace, FrameworkAccuDraw._notificationsKey);\r\n if (result.status === UiSettingsStatus.Success)\r\n FrameworkAccuDraw._displayNotifications = result.setting;\r\n }\r\n\r\n /** AccuDraw User Interface settings */\r\n public static get uiSettings(): AccuDrawUiSettings | undefined { return FrameworkAccuDraw._uiSettings; }\r\n public static set uiSettings(v: AccuDrawUiSettings | undefined) {\r\n FrameworkAccuDraw._uiSettings = v;\r\n FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.emit({});\r\n }\r\n\r\n constructor() {\r\n super();\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueFromUiEvent.addListener(this.handleSetFieldValueFromUiEvent);\r\n UiFramework.registerUserSettingsProvider(this);\r\n }\r\n\r\n private handleSetFieldValueFromUiEvent = async (args: AccuDrawSetFieldValueFromUiEventArgs) => {\r\n return this.processFieldInput(args.field, args.stringValue, false);\r\n };\r\n\r\n /** @internal */\r\n public override onCompassModeChange(): void {\r\n FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.emit({ mode: this.compassMode });\r\n SyncUiEventDispatcher.dispatchSyncUiEvent(SyncUiEventId.AccuDrawCompassModeChanged);\r\n\r\n this.outputCompassModeMessage();\r\n }\r\n\r\n /** @internal */\r\n public override onRotationModeChange(): void {\r\n SyncUiEventDispatcher.dispatchSyncUiEvent(SyncUiEventId.AccuDrawRotationChanged);\r\n\r\n this.outputRotationMessage();\r\n }\r\n\r\n /** @internal */\r\n public override onFieldLockChange(index: ItemField): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.emit({ field: index, lock: this.getFieldLock(index) });\r\n }\r\n\r\n /** @internal */\r\n public override onFieldValueChange(index: ItemField): void {\r\n const value = this.getValueByIndex(index);\r\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(index);\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.emit({ field: index, value, formattedValue });\r\n }\r\n\r\n private fieldValuesChanged(): void {\r\n this.onFieldValueChange(ItemField.X_Item);\r\n this.onFieldValueChange(ItemField.Y_Item);\r\n this.onFieldValueChange(ItemField.Z_Item);\r\n this.onFieldValueChange(ItemField.ANGLE_Item);\r\n this.onFieldValueChange(ItemField.DIST_Item);\r\n }\r\n\r\n /** @internal */\r\n public override setFocusItem(index: ItemField): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.emit({ field: index });\r\n }\r\n\r\n /** Implemented by sub-classes to update ui fields to show current deltas or coordinates when inactive.\r\n * Should also choose active x or y input field in rectangular mode based on cursor position when\r\n * axis isn't locked to support \"smart lock\".\r\n * @internal\r\n */\r\n public override onMotion(_ev: BeButtonEvent): void {\r\n if (!this.isEnabled || this.isDeactivated || UiFramework.isContextMenuOpen)\r\n return;\r\n\r\n this.fieldValuesChanged();\r\n\r\n if (!this.dontMoveFocus)\r\n this.setFocusItem(this.newFocus);\r\n }\r\n\r\n /** Determine if the AccuDraw UI has focus\r\n * @internal\r\n */\r\n public override get hasInputFocus(): boolean {\r\n let hasFocus = false;\r\n const el = document.querySelector(\"div.uifw-accudraw-field-container\");\r\n if (el)\r\n hasFocus = el.contains(document.activeElement);\r\n return hasFocus;\r\n }\r\n\r\n /** Implement this method to set focus to the AccuDraw UI.\r\n * @internal\r\n */\r\n public override grabInputFocus(): void {\r\n FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.emit({});\r\n }\r\n\r\n /** Gets the display value for an AccuDraw field */\r\n public static getFieldDisplayValue(index: ItemField): string {\r\n const value = IModelApp.accuDraw.getValueByIndex(index);\r\n let formattedValue = value.toString();\r\n\r\n const formatterSpec = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(ItemField.ANGLE_Item === index ? QuantityType.Angle : QuantityType.Length);\r\n // istanbul ignore else\r\n if (formatterSpec)\r\n formattedValue = IModelApp.quantityFormatter.formatQuantity(value, formatterSpec);\r\n\r\n return formattedValue;\r\n }\r\n\r\n /** AccuDraw Set Field Value from Ui. */\r\n public static setFieldValueFromUi(field: ItemField, stringValue: string): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueFromUiEvent.emit({ field, stringValue });\r\n }\r\n\r\n private outputInfoMessage(message: string): void {\r\n // istanbul ignore else\r\n if (FrameworkAccuDraw.displayNotifications)\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Info, message));\r\n }\r\n\r\n private outputCompassModeMessage(): void {\r\n if (FrameworkAccuDraw.displayNotifications) {\r\n let modeKey = compassModeToKeyMap.get(this.compassMode);\r\n // istanbul ignore if\r\n if (modeKey === undefined)\r\n modeKey = \"polar\";\r\n const modeString = UiFramework.translate(`accuDraw.compassMode.${modeKey}`);\r\n const modeMessage = UiFramework.localization.getLocalizedStringWithNamespace(UiFramework.localizationNamespace, \"accuDraw.compassModeSet\", { modeString });\r\n this.outputInfoMessage(modeMessage);\r\n }\r\n }\r\n\r\n private outputRotationMessage(): void {\r\n if (FrameworkAccuDraw.displayNotifications) {\r\n let rotationKey = rotationModeToKeyMap.get(this.rotationMode);\r\n // istanbul ignore if\r\n if (rotationKey === undefined)\r\n rotationKey = \"top\";\r\n const rotationString = UiFramework.translate(`accuDraw.rotation.${rotationKey}`);\r\n const rotationMessage = UiFramework.localization.getLocalizedStringWithNamespace(UiFramework.localizationNamespace, \"accuDraw.rotationSet\", { rotationString });\r\n this.outputInfoMessage(rotationMessage);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"FrameworkAccuDraw.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/FrameworkAccuDraw.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccuDraw\r\n */\r\n\r\nimport { BeUiEvent } from \"@itwin/core-bentley\";\r\nimport {\r\n AccuDraw, BeButtonEvent, CompassMode, IModelApp, ItemField,\r\n NotifyMessageDetails, OutputMessagePriority, QuantityType, RotationMode,\r\n} from \"@itwin/core-frontend\";\r\nimport { ConditionalBooleanValue } from \"@itwin/appui-abstract\";\r\nimport { UiStateStorage, UiStateStorageStatus } from \"@itwin/core-react\";\r\nimport { UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\nimport { SyncUiEventDispatcher, SyncUiEventId } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { AccuDrawUiSettings } from \"./AccuDrawUiSettings\";\r\n\r\n// cspell:ignore dont\r\n\r\nconst compassModeToKeyMap = new Map<CompassMode, string>([\r\n [CompassMode.Polar, \"polar\"],\r\n [CompassMode.Rectangular, \"rectangular\"],\r\n]);\r\n\r\nconst rotationModeToKeyMap = new Map<RotationMode, string>([\r\n [RotationMode.Top, \"top\"],\r\n [RotationMode.Front, \"front\"],\r\n [RotationMode.Side, \"side\"],\r\n [RotationMode.View, \"view\"],\r\n [RotationMode.ACS, \"ACS\"],\r\n [RotationMode.Context, \"context\"],\r\n]);\r\n\r\n/** Arguments for [[AccuDrawSetFieldFocusEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldFocusEventArgs {\r\n field: ItemField;\r\n}\r\n\r\n/** AccuDraw Set Field Focus event\r\n * @beta */\r\nexport class AccuDrawSetFieldFocusEvent extends BeUiEvent<AccuDrawSetFieldFocusEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldValueToUiEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldValueToUiEventArgs {\r\n field: ItemField;\r\n value: number;\r\n formattedValue: string;\r\n}\r\n\r\n/** AccuDraw Set Field Value to Ui event\r\n * @beta */\r\nexport class AccuDrawSetFieldValueToUiEvent extends BeUiEvent<AccuDrawSetFieldValueToUiEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldValueFromUiEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldValueFromUiEventArgs {\r\n field: ItemField;\r\n stringValue: string;\r\n}\r\n\r\n/** AccuDraw Set Field Value from Ui event\r\n * @beta */\r\nexport class AccuDrawSetFieldValueFromUiEvent extends BeUiEvent<AccuDrawSetFieldValueFromUiEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetFieldLockEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetFieldLockEventArgs {\r\n field: ItemField;\r\n lock: boolean;\r\n}\r\n\r\n/** AccuDraw Set Field Lock event\r\n * @beta */\r\nexport class AccuDrawSetFieldLockEvent extends BeUiEvent<AccuDrawSetFieldLockEventArgs> { }\r\n\r\n/** Arguments for [[AccuDrawSetCompassModeEvent]]\r\n * @beta */\r\nexport interface AccuDrawSetCompassModeEventArgs {\r\n mode: CompassMode;\r\n}\r\n\r\n/** AccuDraw Set Compass Mode event\r\n * @beta */\r\nexport class AccuDrawSetCompassModeEvent extends BeUiEvent<AccuDrawSetCompassModeEventArgs> { }\r\n\r\n/** AccuDraw Grab Input Focus event\r\n * @beta */\r\nexport class AccuDrawGrabInputFocusEvent extends BeUiEvent<{}> { }\r\n\r\n/** AccuDraw Ui Settings Changed event\r\n * @beta */\r\nexport class AccuDrawUiSettingsChangedEvent extends BeUiEvent<{}> { }\r\n\r\n/** Implementation of AccuDraw that sends events for UI and status changes\r\n * @beta\r\n */\r\nexport class FrameworkAccuDraw extends AccuDraw implements UserSettingsProvider {\r\n private static _displayNotifications = false;\r\n private static _uiSettings: AccuDrawUiSettings | undefined;\r\n private static _settingsNamespace = \"AppUiSettings\";\r\n private static _notificationsKey = \"AccuDrawNotifications\";\r\n public readonly providerId = \"FrameworkAccuDraw\";\r\n\r\n /** AccuDraw Set Field Focus event. */\r\n public static readonly onAccuDrawSetFieldFocusEvent = new AccuDrawSetFieldFocusEvent();\r\n /** AccuDraw Set Field Value to Ui event. */\r\n public static readonly onAccuDrawSetFieldValueToUiEvent = new AccuDrawSetFieldValueToUiEvent();\r\n /** AccuDraw Set Field Value from Ui event. */\r\n public static readonly onAccuDrawSetFieldValueFromUiEvent = new AccuDrawSetFieldValueFromUiEvent();\r\n /** AccuDraw Set Field Lock event. */\r\n public static readonly onAccuDrawSetFieldLockEvent = new AccuDrawSetFieldLockEvent();\r\n /** AccuDraw Set Mode event. */\r\n public static readonly onAccuDrawSetCompassModeEvent = new AccuDrawSetCompassModeEvent();\r\n /** AccuDraw Grab Input Focus event. */\r\n public static readonly onAccuDrawGrabInputFocusEvent = new AccuDrawGrabInputFocusEvent();\r\n\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Top */\r\n public static readonly isTopRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Top, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Front */\r\n public static readonly isFrontRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Front, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Side */\r\n public static readonly isSideRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Side, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.View */\r\n public static readonly isViewRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.View, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.ACS */\r\n public static readonly isACSRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.ACS, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.rotationMode === RotationMode.Context */\r\n public static readonly isContextRotationConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.rotationMode === RotationMode.Context, [SyncUiEventId.AccuDrawRotationChanged]);\r\n /** Determines if AccuDraw.compassMode === CompassMode.Polar */\r\n public static readonly isPolarModeConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.compassMode === CompassMode.Polar, [SyncUiEventId.AccuDrawCompassModeChanged]);\r\n /** Determines if AccuDraw.compassMode === CompassMode.Rectangular */\r\n public static readonly isRectangularModeConditional = new ConditionalBooleanValue(() => IModelApp.accuDraw.compassMode === CompassMode.Rectangular, [SyncUiEventId.AccuDrawCompassModeChanged]);\r\n\r\n /** AccuDraw Grab Input Focus event. */\r\n public static readonly onAccuDrawUiSettingsChangedEvent = new AccuDrawUiSettingsChangedEvent();\r\n\r\n /** Determines if notifications should be displayed for AccuDraw changes */\r\n public static get displayNotifications(): boolean { return FrameworkAccuDraw._displayNotifications; }\r\n public static set displayNotifications(v: boolean) {\r\n FrameworkAccuDraw._displayNotifications = v;\r\n UiFramework.getUiStateStorage().saveSetting(this._settingsNamespace, this._notificationsKey, v); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n }\r\n\r\n /* @internal */\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n const result = await storage.getSetting(FrameworkAccuDraw._settingsNamespace, FrameworkAccuDraw._notificationsKey);\r\n if (result.status === UiStateStorageStatus.Success)\r\n FrameworkAccuDraw._displayNotifications = result.setting;\r\n }\r\n\r\n /** AccuDraw User Interface settings */\r\n public static get uiStateStorage(): AccuDrawUiSettings | undefined { return FrameworkAccuDraw._uiSettings; }\r\n public static set uiStateStorage(v: AccuDrawUiSettings | undefined) {\r\n FrameworkAccuDraw._uiSettings = v;\r\n FrameworkAccuDraw.onAccuDrawUiSettingsChangedEvent.emit({});\r\n }\r\n\r\n constructor() {\r\n super();\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueFromUiEvent.addListener(this.handleSetFieldValueFromUiEvent);\r\n UiFramework.registerUserSettingsProvider(this);\r\n }\r\n\r\n private handleSetFieldValueFromUiEvent = async (args: AccuDrawSetFieldValueFromUiEventArgs) => {\r\n return this.processFieldInput(args.field, args.stringValue, false);\r\n };\r\n\r\n /** @internal */\r\n public override onCompassModeChange(): void {\r\n FrameworkAccuDraw.onAccuDrawSetCompassModeEvent.emit({ mode: this.compassMode });\r\n SyncUiEventDispatcher.dispatchSyncUiEvent(SyncUiEventId.AccuDrawCompassModeChanged);\r\n\r\n this.outputCompassModeMessage();\r\n }\r\n\r\n /** @internal */\r\n public override onRotationModeChange(): void {\r\n SyncUiEventDispatcher.dispatchSyncUiEvent(SyncUiEventId.AccuDrawRotationChanged);\r\n\r\n this.outputRotationMessage();\r\n }\r\n\r\n /** @internal */\r\n public override onFieldLockChange(index: ItemField): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldLockEvent.emit({ field: index, lock: this.getFieldLock(index) });\r\n }\r\n\r\n /** @internal */\r\n public override onFieldValueChange(index: ItemField): void {\r\n const value = this.getValueByIndex(index);\r\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(index);\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.emit({ field: index, value, formattedValue });\r\n }\r\n\r\n private fieldValuesChanged(): void {\r\n this.onFieldValueChange(ItemField.X_Item);\r\n this.onFieldValueChange(ItemField.Y_Item);\r\n this.onFieldValueChange(ItemField.Z_Item);\r\n this.onFieldValueChange(ItemField.ANGLE_Item);\r\n this.onFieldValueChange(ItemField.DIST_Item);\r\n }\r\n\r\n /** @internal */\r\n public override setFocusItem(index: ItemField): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.emit({ field: index });\r\n }\r\n\r\n /** Implemented by sub-classes to update ui fields to show current deltas or coordinates when inactive.\r\n * Should also choose active x or y input field in rectangular mode based on cursor position when\r\n * axis isn't locked to support \"smart lock\".\r\n * @internal\r\n */\r\n public override onMotion(_ev: BeButtonEvent): void {\r\n if (!this.isEnabled || this.isDeactivated || UiFramework.isContextMenuOpen)\r\n return;\r\n\r\n this.fieldValuesChanged();\r\n\r\n if (!this.dontMoveFocus)\r\n this.setFocusItem(this.newFocus);\r\n }\r\n\r\n /** Determine if the AccuDraw UI has focus\r\n * @internal\r\n */\r\n public override get hasInputFocus(): boolean {\r\n let hasFocus = false;\r\n const el = document.querySelector(\"div.uifw-accudraw-field-container\");\r\n if (el)\r\n hasFocus = el.contains(document.activeElement);\r\n return hasFocus;\r\n }\r\n\r\n /** Implement this method to set focus to the AccuDraw UI.\r\n * @internal\r\n */\r\n public override grabInputFocus(): void {\r\n FrameworkAccuDraw.onAccuDrawGrabInputFocusEvent.emit({});\r\n }\r\n\r\n /** Gets the display value for an AccuDraw field */\r\n public static getFieldDisplayValue(index: ItemField): string {\r\n const value = IModelApp.accuDraw.getValueByIndex(index);\r\n let formattedValue = value.toString();\r\n\r\n const formatterSpec = IModelApp.quantityFormatter.findFormatterSpecByQuantityType(ItemField.ANGLE_Item === index ? QuantityType.Angle : QuantityType.Length);\r\n // istanbul ignore else\r\n if (formatterSpec)\r\n formattedValue = IModelApp.quantityFormatter.formatQuantity(value, formatterSpec);\r\n\r\n return formattedValue;\r\n }\r\n\r\n /** AccuDraw Set Field Value from Ui. */\r\n public static setFieldValueFromUi(field: ItemField, stringValue: string): void {\r\n FrameworkAccuDraw.onAccuDrawSetFieldValueFromUiEvent.emit({ field, stringValue });\r\n }\r\n\r\n private outputInfoMessage(message: string): void {\r\n // istanbul ignore else\r\n if (FrameworkAccuDraw.displayNotifications)\r\n IModelApp.notifications.outputMessage(new NotifyMessageDetails(OutputMessagePriority.Info, message));\r\n }\r\n\r\n private outputCompassModeMessage(): void {\r\n if (FrameworkAccuDraw.displayNotifications) {\r\n let modeKey = compassModeToKeyMap.get(this.compassMode);\r\n // istanbul ignore if\r\n if (modeKey === undefined)\r\n modeKey = \"polar\";\r\n const modeString = UiFramework.translate(`accuDraw.compassMode.${modeKey}`);\r\n const modeMessage = UiFramework.localization.getLocalizedStringWithNamespace(UiFramework.localizationNamespace, \"accuDraw.compassModeSet\", { modeString });\r\n this.outputInfoMessage(modeMessage);\r\n }\r\n }\r\n\r\n private outputRotationMessage(): void {\r\n if (FrameworkAccuDraw.displayNotifications) {\r\n let rotationKey = rotationModeToKeyMap.get(this.rotationMode);\r\n // istanbul ignore if\r\n if (rotationKey === undefined)\r\n rotationKey = \"top\";\r\n const rotationString = UiFramework.translate(`accuDraw.rotation.${rotationKey}`);\r\n const rotationMessage = UiFramework.localization.getLocalizedStringWithNamespace(UiFramework.localizationNamespace, \"accuDraw.rotationSet\", { rotationString });\r\n this.outputInfoMessage(rotationMessage);\r\n }\r\n }\r\n}\r\n"]}
@@ -3,7 +3,6 @@
3
3
  */
4
4
  import * as React from "react";
5
5
  import { CommonProps, IconSpec, UiEvent } from "@itwin/core-react";
6
- import { UserInfo } from "../UserInfo";
7
6
  /** [[BackstageEvent]] arguments.
8
7
  * @public
9
8
  * @deprecated use [BackstageComposer]($appui-react) instead.
@@ -21,7 +20,6 @@ export declare class BackstageEvent extends UiEvent<BackstageEventArgs> {
21
20
  * @deprecated use [BackstageComposer]($appui-react) instead.
22
21
  */
23
22
  export interface BackstageProps extends CommonProps {
24
- userInfo?: UserInfo;
25
23
  isVisible?: boolean;
26
24
  showOverlay?: boolean;
27
25
  onClose?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"Backstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/Backstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAInE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKvC;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,OAAO,CAAC,kBAAkB,CAAC;CAAI;AAEnE;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAE5E,gBAAuB,gBAAgB,iBAAwB;IAC/D,OAAc,kBAAkB,EAAE,OAAO,CAAC;IAE1C,0BAA0B;WACZ,IAAI,IAAI,IAAI;IAI1B,0BAA0B;WACZ,IAAI,IAAI,IAAI;IAI1B,mGAAmG;WACrF,yBAAyB,CAAC,gBAAgB,CAAC,EAAE,QAAQ;IAInE,yCAAyC;IACzC,WAAkB,sBAAsB,sDAEvC;IAED,gBAAgB;IAChB,SAAyB,KAAK,EAAE,cAAc,CAAC;gBAEnC,KAAK,EAAE,cAAc;IASjB,iBAAiB;IAIjB,oBAAoB;IAIpC,OAAO,CAAC,qBAAqB,CAE3B;IAEc,kBAAkB,CAAC,SAAS,EAAE,cAAc;IAK5D,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,QAAQ,CAMd;IAEc,MAAM,IAAI,KAAK,CAAC,SAAS;CA0B1C"}
1
+ {"version":3,"file":"Backstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/Backstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAQnE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,OAAO,CAAC,kBAAkB,CAAC;CAAI;AAEnE;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAE5E,gBAAuB,gBAAgB,iBAAwB;IAC/D,OAAc,kBAAkB,EAAE,OAAO,CAAC;IAE1C,0BAA0B;WACZ,IAAI,IAAI,IAAI;IAI1B,0BAA0B;WACZ,IAAI,IAAI,IAAI;IAI1B,mGAAmG;WACrF,yBAAyB,CAAC,gBAAgB,CAAC,EAAE,QAAQ;IAInE,yCAAyC;IACzC,WAAkB,sBAAsB,sDAEvC;IAED,gBAAgB;IAChB,SAAyB,KAAK,EAAE,cAAc,CAAC;gBAEnC,KAAK,EAAE,cAAc;IASjB,iBAAiB;IAIjB,oBAAoB;IAIpC,OAAO,CAAC,qBAAqB,CAE3B;IAEc,kBAAkB,CAAC,SAAS,EAAE,cAAc;IAK5D,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,QAAQ,CAMd;IAEc,MAAM,IAAI,KAAK,CAAC,SAAS;CA0B1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"Backstage.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/Backstage.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, IconSpec, UiEvent } from \"@itwin/core-react\";\r\nimport { Backstage as NZ_Backstage } from \"@itwin/appui-layout-react\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UserInfo } from \"../UserInfo\";\r\nimport { BackstageManager } from \"./BackstageManager\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/** [[BackstageEvent]] arguments.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport interface BackstageEventArgs {\r\n isVisible: boolean;\r\n}\r\n\r\n/** Backstage Event class.\r\n * @public\r\n */\r\nexport class BackstageEvent extends UiEvent<BackstageEventArgs> { } // eslint-disable-line deprecation/deprecation\r\n\r\n/** Properties for the [[Backstage]] React component.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport interface BackstageProps extends CommonProps {\r\n userInfo?: UserInfo;\r\n isVisible?: boolean;\r\n showOverlay?: boolean;\r\n onClose?: () => void;\r\n header?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[Backstage]] React component.\r\n * @internal\r\n */\r\ninterface BackstageState {\r\n isVisible: boolean;\r\n}\r\n\r\n/** Backstage React component.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport class Backstage extends React.Component<BackstageProps, BackstageState> { // eslint-disable-line deprecation/deprecation\r\n\r\n public static readonly onBackstageEvent = new BackstageEvent();\r\n public static isBackstageVisible: boolean;\r\n\r\n /** Shows the Backstage */\r\n public static show(): void {\r\n UiFramework.backstageManager.open();\r\n }\r\n\r\n /** Hides the Backstage */\r\n public static hide(): void {\r\n UiFramework.backstageManager.close();\r\n }\r\n\r\n /** Get CommandItemDef that will toggle display of Backstage and allow iconSpec to be overridden */\r\n public static getBackstageToggleCommand(overrideIconSpec?: IconSpec) {\r\n return BackstageManager.getBackstageToggleCommand(overrideIconSpec);\r\n }\r\n\r\n /** Command that toggles the Backstage */\r\n public static get backstageToggleCommand() {\r\n return this.getBackstageToggleCommand();\r\n }\r\n\r\n /** @internal */\r\n public override readonly state: BackstageState;\r\n\r\n constructor(props: BackstageProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.setIsOpen(!!this.props.isVisible);\r\n this.state = {\r\n isVisible: UiFramework.backstageManager.isOpen,\r\n };\r\n }\r\n\r\n public override componentDidMount() {\r\n Backstage.onBackstageEvent.addListener(this._handleBackstageEvent); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentWillUnmount() {\r\n Backstage.onBackstageEvent.removeListener(this._handleBackstageEvent); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n private _handleBackstageEvent = (args: BackstageEventArgs) => { // eslint-disable-line deprecation/deprecation\r\n this.setState({ isVisible: args.isVisible });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: BackstageProps) { // eslint-disable-line deprecation/deprecation\r\n if (this.props.isVisible !== prevProps.isVisible)\r\n this.setIsOpen(!!this.props.isVisible);\r\n }\r\n\r\n private setIsOpen(isOpen: boolean) {\r\n if (isOpen) {\r\n UiFramework.backstageManager.open();\r\n } else {\r\n UiFramework.backstageManager.close();\r\n }\r\n }\r\n\r\n private _onClose = () => {\r\n Backstage.hide(); // eslint-disable-line deprecation/deprecation\r\n\r\n /* istanbul ignore else */\r\n if (this.props.onClose)\r\n this.props.onClose();\r\n };\r\n\r\n public override render(): React.ReactNode {\r\n Backstage.isBackstageVisible = this.state.isVisible; // eslint-disable-line deprecation/deprecation\r\n\r\n let header: React.ReactNode = null;\r\n\r\n if (this.props.header)\r\n header = this.props.header;\r\n\r\n return (\r\n <SafeAreaContext.Consumer>\r\n {(safeAreaInsets) => (\r\n <NZ_Backstage\r\n className={this.props.className}\r\n header={header}\r\n isOpen={this.state.isVisible}\r\n onClose={this._onClose}\r\n safeAreaInsets={safeAreaInsets}\r\n showOverlay={this.props.showOverlay}\r\n style={this.props.style}\r\n >\r\n {this.props.children}\r\n </NZ_Backstage>\r\n )}\r\n </SafeAreaContext.Consumer>\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Backstage.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/Backstage.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, IconSpec, UiEvent } from \"@itwin/core-react\";\r\nimport { Backstage as NZ_Backstage } from \"@itwin/appui-layout-react\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { BackstageManager } from \"./BackstageManager\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/** [[BackstageEvent]] arguments.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport interface BackstageEventArgs {\r\n isVisible: boolean;\r\n}\r\n\r\n/** Backstage Event class.\r\n * @public\r\n */\r\nexport class BackstageEvent extends UiEvent<BackstageEventArgs> { } // eslint-disable-line deprecation/deprecation\r\n\r\n/** Properties for the [[Backstage]] React component.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport interface BackstageProps extends CommonProps {\r\n isVisible?: boolean;\r\n showOverlay?: boolean;\r\n onClose?: () => void;\r\n header?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[Backstage]] React component.\r\n * @internal\r\n */\r\ninterface BackstageState {\r\n isVisible: boolean;\r\n}\r\n\r\n/** Backstage React component.\r\n * @public\r\n * @deprecated use [BackstageComposer]($appui-react) instead.\r\n */\r\nexport class Backstage extends React.Component<BackstageProps, BackstageState> { // eslint-disable-line deprecation/deprecation\r\n\r\n public static readonly onBackstageEvent = new BackstageEvent();\r\n public static isBackstageVisible: boolean;\r\n\r\n /** Shows the Backstage */\r\n public static show(): void {\r\n UiFramework.backstageManager.open();\r\n }\r\n\r\n /** Hides the Backstage */\r\n public static hide(): void {\r\n UiFramework.backstageManager.close();\r\n }\r\n\r\n /** Get CommandItemDef that will toggle display of Backstage and allow iconSpec to be overridden */\r\n public static getBackstageToggleCommand(overrideIconSpec?: IconSpec) {\r\n return BackstageManager.getBackstageToggleCommand(overrideIconSpec);\r\n }\r\n\r\n /** Command that toggles the Backstage */\r\n public static get backstageToggleCommand() {\r\n return this.getBackstageToggleCommand();\r\n }\r\n\r\n /** @internal */\r\n public override readonly state: BackstageState;\r\n\r\n constructor(props: BackstageProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.setIsOpen(!!this.props.isVisible);\r\n this.state = {\r\n isVisible: UiFramework.backstageManager.isOpen,\r\n };\r\n }\r\n\r\n public override componentDidMount() {\r\n Backstage.onBackstageEvent.addListener(this._handleBackstageEvent); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentWillUnmount() {\r\n Backstage.onBackstageEvent.removeListener(this._handleBackstageEvent); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n private _handleBackstageEvent = (args: BackstageEventArgs) => { // eslint-disable-line deprecation/deprecation\r\n this.setState({ isVisible: args.isVisible });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: BackstageProps) { // eslint-disable-line deprecation/deprecation\r\n if (this.props.isVisible !== prevProps.isVisible)\r\n this.setIsOpen(!!this.props.isVisible);\r\n }\r\n\r\n private setIsOpen(isOpen: boolean) {\r\n if (isOpen) {\r\n UiFramework.backstageManager.open();\r\n } else {\r\n UiFramework.backstageManager.close();\r\n }\r\n }\r\n\r\n private _onClose = () => {\r\n Backstage.hide(); // eslint-disable-line deprecation/deprecation\r\n\r\n /* istanbul ignore else */\r\n if (this.props.onClose)\r\n this.props.onClose();\r\n };\r\n\r\n public override render(): React.ReactNode {\r\n Backstage.isBackstageVisible = this.state.isVisible; // eslint-disable-line deprecation/deprecation\r\n\r\n let header: React.ReactNode = null;\r\n\r\n if (this.props.header)\r\n header = this.props.header;\r\n\r\n return (\r\n <SafeAreaContext.Consumer>\r\n {(safeAreaInsets) => (\r\n <NZ_Backstage\r\n className={this.props.className}\r\n header={header}\r\n isOpen={this.state.isVisible}\r\n onClose={this._onClose}\r\n safeAreaInsets={safeAreaInsets}\r\n showOverlay={this.props.showOverlay}\r\n style={this.props.style}\r\n >\r\n {this.props.children}\r\n </NZ_Backstage>\r\n )}\r\n </SafeAreaContext.Consumer>\r\n );\r\n }\r\n}\r\n"]}
@@ -18,6 +18,8 @@ export interface BackstageComposerProps extends CommonProps {
18
18
  readonly showOverlay?: boolean;
19
19
  /** List of backstage items to show */
20
20
  readonly items: BackstageItem[];
21
+ /** If true and only one stage launcher item is found, do not show entry in backstage */
22
+ readonly hideSoloStageEntry?: boolean;
21
23
  }
22
24
  /** Backstage component composed from [[BackstageManager]] items.
23
25
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"BackstageComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAkD,MAAM,uBAAuB,CAAC;AACtG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAkDhD,gBAAgB;AAChB,oBAAY,YAAY,GAAG,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvE,gBAAgB;AAChB,eAAO,MAAM,eAAe,UAAW,cAAc,aAAa,CAAC,iBA+BlE,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,gGAAgG;IAChG,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,eA0D9D"}
1
+ {"version":3,"file":"BackstageComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAoF,MAAM,uBAAuB,CAAC;AACxI,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAsEhD,gBAAgB;AAChB,oBAAY,YAAY,GAAG,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvE,gBAAgB;AAChB,eAAO,MAAM,eAAe,UAAW,cAAc,aAAa,CAAC,iBA+BlE,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,gGAAgG;IAChG,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC;IAChC,wFAAwF;IACxF,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,eA0D9D"}
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BackstageComposer = exports.useGroupedItems = void 0;
11
11
  const React = require("react");
12
12
  const appui_abstract_1 = require("@itwin/appui-abstract");
13
- const appui_layout_react_1 = require("@itwin/appui-layout-react"); // eslint-disable-line sort-imports
13
+ const appui_layout_react_1 = require("@itwin/appui-layout-react");
14
14
  const SafeAreaContext_1 = require("../safearea/SafeAreaContext");
15
15
  const SyncUiEventDispatcher_1 = require("../syncui/SyncUiEventDispatcher");
16
16
  const BackstageComposerItem_1 = require("./BackstageComposerItem");
@@ -43,12 +43,30 @@ function useBackstageItemSyncEffect(itemsManager, syncIdsOfInterest) {
43
43
  }, [itemsManager, itemsManager.items, syncIdsOfInterest]);
44
44
  }
45
45
  /** local function to combine items from Stage and from Extensions */
46
- function combineItems(stageItems, addonItems) {
47
- const items = [];
48
- if (stageItems.length)
49
- items.push(...stageItems);
50
- if (addonItems.length)
51
- items.push(...addonItems);
46
+ function combineItems(stageItems, addonItems, hideSoloStageEntry) {
47
+ let items = [];
48
+ if (stageItems.length) {
49
+ // Walk through each and ensure no duplicate ids are added.
50
+ stageItems.forEach((srcItem) => {
51
+ if (-1 === items.findIndex((item) => item.id === srcItem.id)) {
52
+ items.push(srcItem);
53
+ }
54
+ });
55
+ }
56
+ if (addonItems.length) {
57
+ // Walk through each and ensure no duplicate ids are added.
58
+ addonItems.forEach((srcItem) => {
59
+ if (-1 === items.findIndex((item) => item.id === srcItem.id)) {
60
+ items.push(srcItem);
61
+ }
62
+ });
63
+ }
64
+ if (hideSoloStageEntry) {
65
+ // per user request don't show stage launcher if only one stage is available
66
+ const numberOfFrontstageItems = items.reduce((accumulator, item) => accumulator + ((0, appui_abstract_1.isStageLauncher)(item) ? 1 : 0), 0);
67
+ if (1 === numberOfFrontstageItems)
68
+ items = items.filter((item) => !(0, appui_abstract_1.isStageLauncher)(item));
69
+ }
52
70
  return items;
53
71
  }
54
72
  /** @internal */
@@ -110,7 +128,7 @@ function BackstageComposer(props) {
110
128
  const addonItems = (0, useUiItemsProviderBackstageItems_1.useUiItemsProviderBackstageItems)(addonItemsManager);
111
129
  const addonSyncIdsOfInterest = React.useMemo(() => appui_abstract_1.BackstageItemsManager.getSyncIdsOfInterest(addonItems), [addonItems]);
112
130
  useBackstageItemSyncEffect(addonItemsManager, addonSyncIdsOfInterest);
113
- const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems), [defaultItems, addonItems]);
131
+ const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems, !!props.hideSoloStageEntry), [defaultItems, addonItems, props.hideSoloStageEntry]);
114
132
  const groups = (0, exports.useGroupedItems)(combinedBackstageItems);
115
133
  return (React.createElement(appui_layout_react_1.Backstage, { className: props.className, header: props.header, isOpen: isOpen, onClose: handleClose, safeAreaInsets: safeAreaInsets, showOverlay: props.showOverlay, style: props.style }, groups.map((group, groupIndex) => (group.map((item, itemIndex) => {
116
134
  const composerItem = (React.createElement(BackstageComposerItem_1.BackstageComposerItem, { item: item, key: item.id }));
@@ -1 +1 @@
1
- {"version":3,"file":"BackstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BackstageItem, BackstageItemsManager, ConditionalBooleanValue } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Backstage as NZ_Backstage, BackstageSeparator } from \"@itwin/appui-layout-react\"; // eslint-disable-line sort-imports\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { SyncUiEventArgs, SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { BackstageComposerItem } from \"./BackstageComposerItem\";\r\nimport { useBackstageManager, useIsBackstageOpen } from \"./BackstageManager\";\r\nimport { useDefaultBackstageItems } from \"./useDefaultBackstageItems\";\r\nimport { useUiItemsProviderBackstageItems } from \"./useUiItemsProviderBackstageItems\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/** Private function to set up sync event monitoring of backstage items */\r\nfunction useBackstageItemSyncEffect(itemsManager: BackstageItemsManager, syncIdsOfInterest: string[]) {\r\n const isInitialMount = React.useRef(true);\r\n\r\n React.useEffect(() => {\r\n const handleSyncUiEvent = (args: SyncUiEventArgs) => {\r\n if (0 === syncIdsOfInterest.length)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (syncIdsOfInterest.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // process each item that has interest\r\n itemsManager.refreshAffectedItems(args.eventIds);\r\n }\r\n };\r\n\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n // initialize the display state of any items with syncIds/condition defined\r\n itemsManager.refreshAffectedItems(new Set(syncIdsOfInterest));\r\n }\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(handleSyncUiEvent);\r\n return () => {\r\n SyncUiEventDispatcher.onSyncUiEvent.removeListener(handleSyncUiEvent);\r\n };\r\n }, [itemsManager, itemsManager.items, syncIdsOfInterest]);\r\n}\r\n\r\n/** local function to combine items from Stage and from Extensions */\r\nfunction combineItems(stageItems: ReadonlyArray<BackstageItem>, addonItems: ReadonlyArray<BackstageItem>) {\r\n const items: BackstageItem[] = [];\r\n if (stageItems.length)\r\n items.push(...stageItems);\r\n if (addonItems.length)\r\n items.push(...addonItems);\r\n return items;\r\n}\r\n\r\n/** @internal */\r\nexport type GroupedItems = ReadonlyArray<ReadonlyArray<BackstageItem>>;\r\n\r\n/** @internal */\r\nexport const useGroupedItems = (items: ReadonlyArray<BackstageItem>): GroupedItems => {\r\n return React.useMemo(() => {\r\n const grouped = items.reduce<GroupedItems>((acc, item) => {\r\n if (ConditionalBooleanValue.getValue(item.isHidden))\r\n return acc;\r\n const groupIndex = acc.findIndex((group) => group[0].groupPriority === item.groupPriority);\r\n if (groupIndex >= 0)\r\n return [\r\n ...acc.slice(0, groupIndex),\r\n [\r\n ...acc[groupIndex],\r\n item,\r\n ],\r\n ...acc.slice(groupIndex + 1),\r\n ];\r\n return [\r\n ...acc,\r\n [\r\n item,\r\n ],\r\n ];\r\n }, []);\r\n const sortedGroups = grouped.reduce<GroupedItems>((acc, group) => {\r\n const sortedGroup = [...group].sort((a, b) => a.itemPriority - b.itemPriority);\r\n return [\r\n ...acc,\r\n sortedGroup,\r\n ];\r\n }, []);\r\n return [...sortedGroups].sort((a, b) => a[0].groupPriority - b[0].groupPriority);\r\n }, [items]);\r\n};\r\n\r\n/** Props of [[BackstageComposer]] component.\r\n * @public\r\n */\r\nexport interface BackstageComposerProps extends CommonProps {\r\n /** React node for an optional header item */\r\n readonly header?: React.ReactNode;\r\n /** Indicates whether to place an overlay over the frontstage when the backstage is displayed */\r\n readonly showOverlay?: boolean;\r\n /** List of backstage items to show */\r\n readonly items: BackstageItem[];\r\n}\r\n\r\n/** Backstage component composed from [[BackstageManager]] items.\r\n * @public\r\n */\r\nexport function BackstageComposer(props: BackstageComposerProps) {\r\n const [defaultItemsManager, setDefaultItemsManager] = React.useState(new BackstageItemsManager(props.items));\r\n const initialItems = React.useRef(props.items);\r\n\r\n React.useEffect(() => {\r\n if (initialItems.current !== props.items) {\r\n initialItems.current = props.items;\r\n setDefaultItemsManager(new BackstageItemsManager(props.items));\r\n }\r\n }, [props.items]);\r\n\r\n const manager = useBackstageManager();\r\n const isOpen = useIsBackstageOpen(manager);\r\n const safeAreaInsets = React.useContext(SafeAreaContext);\r\n const handleClose = React.useCallback(() => {\r\n manager.close();\r\n }, [manager]);\r\n\r\n const defaultItems = useDefaultBackstageItems(defaultItemsManager);\r\n const syncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(defaultItems), [defaultItems]);\r\n useBackstageItemSyncEffect(defaultItemsManager, syncIdsOfInterest);\r\n\r\n const [addonItemsManager] = React.useState(new BackstageItemsManager());\r\n const addonItems = useUiItemsProviderBackstageItems(addonItemsManager);\r\n const addonSyncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(addonItems), [addonItems]);\r\n useBackstageItemSyncEffect(addonItemsManager, addonSyncIdsOfInterest);\r\n\r\n const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems), [defaultItems, addonItems]);\r\n const groups = useGroupedItems(combinedBackstageItems);\r\n\r\n return (\r\n <NZ_Backstage\r\n className={props.className}\r\n header={props.header}\r\n isOpen={isOpen}\r\n onClose={handleClose}\r\n safeAreaInsets={safeAreaInsets}\r\n showOverlay={props.showOverlay}\r\n style={props.style}\r\n >\r\n {groups.map((group, groupIndex) => (\r\n group.map((item, itemIndex) => {\r\n const composerItem = (\r\n <BackstageComposerItem\r\n item={item}\r\n key={item.id}\r\n />\r\n );\r\n return itemIndex === 0 && groupIndex > 0 ? (\r\n <React.Fragment key={groupIndex}>\r\n <BackstageSeparator />\r\n {composerItem}\r\n </React.Fragment>\r\n ) : composerItem;\r\n })\r\n ))}\r\n </NZ_Backstage>\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"BackstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BackstageItem, BackstageItemsManager, ConditionalBooleanValue, isStageLauncher, UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { BackstageSeparator, Backstage as NZ_Backstage } from \"@itwin/appui-layout-react\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { BackstageComposerItem } from \"./BackstageComposerItem\";\r\nimport { useBackstageManager, useIsBackstageOpen } from \"./BackstageManager\";\r\nimport { useDefaultBackstageItems } from \"./useDefaultBackstageItems\";\r\nimport { useUiItemsProviderBackstageItems } from \"./useUiItemsProviderBackstageItems\";\r\n\r\n// cSpell:ignore safearea\r\n\r\n/** Private function to set up sync event monitoring of backstage items */\r\nfunction useBackstageItemSyncEffect(itemsManager: BackstageItemsManager, syncIdsOfInterest: string[]) {\r\n const isInitialMount = React.useRef(true);\r\n\r\n React.useEffect(() => {\r\n const handleSyncUiEvent = (args: UiSyncEventArgs) => {\r\n if (0 === syncIdsOfInterest.length)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (syncIdsOfInterest.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // process each item that has interest\r\n itemsManager.refreshAffectedItems(args.eventIds);\r\n }\r\n };\r\n\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n // initialize the display state of any items with syncIds/condition defined\r\n itemsManager.refreshAffectedItems(new Set(syncIdsOfInterest));\r\n }\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(handleSyncUiEvent);\r\n return () => {\r\n SyncUiEventDispatcher.onSyncUiEvent.removeListener(handleSyncUiEvent);\r\n };\r\n }, [itemsManager, itemsManager.items, syncIdsOfInterest]);\r\n}\r\n\r\n/** local function to combine items from Stage and from Extensions */\r\nfunction combineItems(stageItems: ReadonlyArray<BackstageItem>, addonItems: ReadonlyArray<BackstageItem>, hideSoloStageEntry: boolean) {\r\n let items: BackstageItem[] = [];\r\n if (stageItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n stageItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n if (addonItems.length) {\r\n // Walk through each and ensure no duplicate ids are added.\r\n addonItems.forEach((srcItem) => {\r\n if (-1 === items.findIndex((item) => item.id === srcItem.id)) {\r\n items.push(srcItem);\r\n }\r\n });\r\n }\r\n\r\n if (hideSoloStageEntry) {\r\n // per user request don't show stage launcher if only one stage is available\r\n const numberOfFrontstageItems = items.reduce((accumulator, item) => accumulator + (isStageLauncher(item) ? 1 : 0), 0);\r\n if (1 === numberOfFrontstageItems)\r\n items = items.filter((item) => !isStageLauncher(item));\r\n }\r\n\r\n return items;\r\n}\r\n\r\n/** @internal */\r\nexport type GroupedItems = ReadonlyArray<ReadonlyArray<BackstageItem>>;\r\n\r\n/** @internal */\r\nexport const useGroupedItems = (items: ReadonlyArray<BackstageItem>): GroupedItems => {\r\n return React.useMemo(() => {\r\n const grouped = items.reduce<GroupedItems>((acc, item) => {\r\n if (ConditionalBooleanValue.getValue(item.isHidden))\r\n return acc;\r\n const groupIndex = acc.findIndex((group) => group[0].groupPriority === item.groupPriority);\r\n if (groupIndex >= 0)\r\n return [\r\n ...acc.slice(0, groupIndex),\r\n [\r\n ...acc[groupIndex],\r\n item,\r\n ],\r\n ...acc.slice(groupIndex + 1),\r\n ];\r\n return [\r\n ...acc,\r\n [\r\n item,\r\n ],\r\n ];\r\n }, []);\r\n const sortedGroups = grouped.reduce<GroupedItems>((acc, group) => {\r\n const sortedGroup = [...group].sort((a, b) => a.itemPriority - b.itemPriority);\r\n return [\r\n ...acc,\r\n sortedGroup,\r\n ];\r\n }, []);\r\n return [...sortedGroups].sort((a, b) => a[0].groupPriority - b[0].groupPriority);\r\n }, [items]);\r\n};\r\n\r\n/** Props of [[BackstageComposer]] component.\r\n * @public\r\n */\r\nexport interface BackstageComposerProps extends CommonProps {\r\n /** React node for an optional header item */\r\n readonly header?: React.ReactNode;\r\n /** Indicates whether to place an overlay over the frontstage when the backstage is displayed */\r\n readonly showOverlay?: boolean;\r\n /** List of backstage items to show */\r\n readonly items: BackstageItem[];\r\n /** If true and only one stage launcher item is found, do not show entry in backstage */\r\n readonly hideSoloStageEntry?: boolean;\r\n}\r\n\r\n/** Backstage component composed from [[BackstageManager]] items.\r\n * @public\r\n */\r\nexport function BackstageComposer(props: BackstageComposerProps) {\r\n const [defaultItemsManager, setDefaultItemsManager] = React.useState(new BackstageItemsManager(props.items));\r\n const initialItems = React.useRef(props.items);\r\n\r\n React.useEffect(() => {\r\n if (initialItems.current !== props.items) {\r\n initialItems.current = props.items;\r\n setDefaultItemsManager(new BackstageItemsManager(props.items));\r\n }\r\n }, [props.items]);\r\n\r\n const manager = useBackstageManager();\r\n const isOpen = useIsBackstageOpen(manager);\r\n const safeAreaInsets = React.useContext(SafeAreaContext);\r\n const handleClose = React.useCallback(() => {\r\n manager.close();\r\n }, [manager]);\r\n\r\n const defaultItems = useDefaultBackstageItems(defaultItemsManager);\r\n const syncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(defaultItems), [defaultItems]);\r\n useBackstageItemSyncEffect(defaultItemsManager, syncIdsOfInterest);\r\n\r\n const [addonItemsManager] = React.useState(new BackstageItemsManager());\r\n const addonItems = useUiItemsProviderBackstageItems(addonItemsManager);\r\n const addonSyncIdsOfInterest = React.useMemo(() => BackstageItemsManager.getSyncIdsOfInterest(addonItems), [addonItems]);\r\n useBackstageItemSyncEffect(addonItemsManager, addonSyncIdsOfInterest);\r\n\r\n const combinedBackstageItems = React.useMemo(() => combineItems(defaultItems, addonItems, !!props.hideSoloStageEntry), [defaultItems, addonItems, props.hideSoloStageEntry]);\r\n const groups = useGroupedItems(combinedBackstageItems);\r\n\r\n return (\r\n <NZ_Backstage\r\n className={props.className}\r\n header={props.header}\r\n isOpen={isOpen}\r\n onClose={handleClose}\r\n safeAreaInsets={safeAreaInsets}\r\n showOverlay={props.showOverlay}\r\n style={props.style}\r\n >\r\n {groups.map((group, groupIndex) => (\r\n group.map((item, itemIndex) => {\r\n const composerItem = (\r\n <BackstageComposerItem\r\n item={item}\r\n key={item.id}\r\n />\r\n );\r\n return itemIndex === 0 && groupIndex > 0 ? (\r\n <React.Fragment key={groupIndex}>\r\n <BackstageSeparator />\r\n {composerItem}\r\n </React.Fragment>\r\n ) : composerItem;\r\n })\r\n ))}\r\n </NZ_Backstage>\r\n );\r\n}\r\n"]}
@@ -16,14 +16,14 @@ export interface BackstageComposerStageLauncherProps {
16
16
  /** @internal */
17
17
  export declare function BackstageComposerStageLauncher({ item }: BackstageComposerStageLauncherProps): JSX.Element;
18
18
  /** Props of [[BackstageComposerItem]] component.
19
- * @beta
19
+ * @internal
20
20
  */
21
21
  export interface BackstageComposerItemProps {
22
22
  /** Backstage item to render */
23
23
  readonly item: BackstageItem;
24
24
  }
25
25
  /** Item of [[BackstageComposer]].
26
- * @beta
26
+ * @internal
27
27
  */
28
28
  export declare function BackstageComposerItem({ item }: BackstageComposerItemProps): JSX.Element;
29
29
  //# sourceMappingURL=BackstageComposerItem.d.ts.map
@@ -42,7 +42,7 @@ function BackstageComposerStageLauncher({ item }) {
42
42
  }
43
43
  exports.BackstageComposerStageLauncher = BackstageComposerStageLauncher;
44
44
  /** Item of [[BackstageComposer]].
45
- * @beta
45
+ * @internal
46
46
  */
47
47
  function BackstageComposerItem({ item }) {
48
48
  if ((0, appui_abstract_1.isStageLauncher)(item)) {
@@ -1 +1 @@
1
- {"version":3,"file":"BackstageComposerItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport {\r\n BackstageActionItem, BackstageItem, BackstageStageLauncher, ConditionalBooleanValue, ConditionalStringValue, isStageLauncher,\r\n} from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, Icon } from \"@itwin/core-react\";\r\nimport { BackstageItem as NZ_BackstageItem } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageId } from \"../frontstage/Frontstage\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { useBackstageManager } from \"./BackstageManager\";\r\n\r\n/** @internal */\r\nexport interface BackstageComposerActionItemProps {\r\n readonly item: BackstageActionItem;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerActionItem({ item }: BackstageComposerActionItemProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n item.execute();\r\n }, [manager, item]);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n icon={<Icon iconSpec={ConditionalStringValue.getValue(item.icon)} />}\r\n isActive={ConditionalBooleanValue.getValue(item.isActive)}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badgeType)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport interface BackstageComposerStageLauncherProps {\r\n readonly item: BackstageStageLauncher;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerStageLauncher({ item }: BackstageComposerStageLauncherProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n if (!FrontstageManager.hasFrontstage(item.stageId))\r\n return Logger.logError(\"BackstageComposerStageLauncher\", `Frontstage with id '${item.stageId}' not found`);\r\n void FrontstageManager.setActiveFrontstage(item.stageId);\r\n }, [manager, item.stageId]);\r\n const activeFrontstageId = useActiveFrontstageId();\r\n const isActive = ConditionalBooleanValue.getValue(item.isActive ?? item.stageId === activeFrontstageId);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n icon={<Icon iconSpec={ConditionalStringValue.getValue(item.icon)} />}\r\n isActive={isActive}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badgeType)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** Props of [[BackstageComposerItem]] component.\r\n * @beta\r\n */\r\nexport interface BackstageComposerItemProps {\r\n /** Backstage item to render */\r\n readonly item: BackstageItem;\r\n}\r\n\r\n/** Item of [[BackstageComposer]].\r\n * @beta\r\n */\r\nexport function BackstageComposerItem({ item }: BackstageComposerItemProps) {\r\n if (isStageLauncher(item)) {\r\n return (\r\n <BackstageComposerStageLauncher\r\n item={item}\r\n />\r\n );\r\n }\r\n return (\r\n <BackstageComposerActionItem\r\n item={item}\r\n />\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"BackstageComposerItem.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageComposerItem.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport {\r\n BackstageActionItem, BackstageItem, BackstageStageLauncher, ConditionalBooleanValue, ConditionalStringValue, isStageLauncher,\r\n} from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, Icon } from \"@itwin/core-react\";\r\nimport { BackstageItem as NZ_BackstageItem } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageId } from \"../frontstage/Frontstage\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { useBackstageManager } from \"./BackstageManager\";\r\n\r\n/** @internal */\r\nexport interface BackstageComposerActionItemProps {\r\n readonly item: BackstageActionItem;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerActionItem({ item }: BackstageComposerActionItemProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n item.execute();\r\n }, [manager, item]);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n icon={<Icon iconSpec={ConditionalStringValue.getValue(item.icon)} />}\r\n isActive={ConditionalBooleanValue.getValue(item.isActive)}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badgeType)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport interface BackstageComposerStageLauncherProps {\r\n readonly item: BackstageStageLauncher;\r\n}\r\n\r\n/** @internal */\r\nexport function BackstageComposerStageLauncher({ item }: BackstageComposerStageLauncherProps) {\r\n const manager = useBackstageManager();\r\n const handleClick = React.useCallback(() => {\r\n manager.close();\r\n if (!FrontstageManager.hasFrontstage(item.stageId))\r\n return Logger.logError(\"BackstageComposerStageLauncher\", `Frontstage with id '${item.stageId}' not found`);\r\n void FrontstageManager.setActiveFrontstage(item.stageId);\r\n }, [manager, item.stageId]);\r\n const activeFrontstageId = useActiveFrontstageId();\r\n const isActive = ConditionalBooleanValue.getValue(item.isActive ?? item.stageId === activeFrontstageId);\r\n return (\r\n <NZ_BackstageItem\r\n itemId={item.id}\r\n icon={<Icon iconSpec={ConditionalStringValue.getValue(item.icon)} />}\r\n isActive={isActive}\r\n isDisabled={ConditionalBooleanValue.getValue(item.isDisabled)}\r\n onClick={handleClick}\r\n subtitle={ConditionalStringValue.getValue(item.subtitle)}\r\n badge={BadgeUtilities.getComponentForBadgeType(item.badgeType)}\r\n >\r\n {ConditionalStringValue.getValue(item.label)}\r\n </NZ_BackstageItem>\r\n );\r\n}\r\n\r\n/** Props of [[BackstageComposerItem]] component.\r\n * @internal\r\n */\r\nexport interface BackstageComposerItemProps {\r\n /** Backstage item to render */\r\n readonly item: BackstageItem;\r\n}\r\n\r\n/** Item of [[BackstageComposer]].\r\n * @internal\r\n */\r\nexport function BackstageComposerItem({ item }: BackstageComposerItemProps) {\r\n if (isStageLauncher(item)) {\r\n return (\r\n <BackstageComposerStageLauncher\r\n item={item}\r\n />\r\n );\r\n }\r\n return (\r\n <BackstageComposerActionItem\r\n item={item}\r\n />\r\n );\r\n}\r\n"]}
@@ -5,7 +5,7 @@ import { StringGetter } from "@itwin/appui-abstract";
5
5
  import { IconProps, IconSpec } from "@itwin/core-react";
6
6
  /** Base properties for a [[Backstage]] item.
7
7
  * @public
8
- * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead
8
+ * @deprecated Use [BackstageItem]($appui-abstract) instead
9
9
  */
10
10
  export interface BackstageItemProps extends IconProps {
11
11
  /** if set, component will be enabled - defaults to true */
@@ -31,7 +31,7 @@ export interface BackstageItemProps extends IconProps {
31
31
  }
32
32
  /** Properties that define the state of a Backstage items.
33
33
  * @public
34
- * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead
34
+ * @deprecated Use [BackstageItem]($appui-abstract) instead
35
35
  */
36
36
  export interface BackstageItemState {
37
37
  isEnabled: boolean;
@@ -43,7 +43,7 @@ export interface BackstageItemState {
43
43
  }
44
44
  /** Helper method to set backstage item state from props.
45
45
  * @public
46
- * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead
46
+ * @deprecated Use [BackstageItem]($appui-abstract) instead
47
47
  */
48
48
  export declare const getBackstageItemStateFromProps: (props: BackstageItemProps) => BackstageItemState;
49
49
  //# sourceMappingURL=BackstageItemProps.d.ts.map
@@ -11,7 +11,7 @@ exports.getBackstageItemStateFromProps = void 0;
11
11
  const BackstageItemUtilities_1 = require("./BackstageItemUtilities");
12
12
  /** Helper method to set backstage item state from props.
13
13
  * @public
14
- * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead
14
+ * @deprecated Use [BackstageItem]($appui-abstract) instead
15
15
  */
16
16
  // istanbul ignore next
17
17
  const getBackstageItemStateFromProps = (props) => {
@@ -1 +1 @@
1
- {"version":3,"file":"BackstageItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemProps.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,qEAAkE;AA0ClE;;;GAGG;AACH,uBAAuB;AAChB,MAAM,8BAA8B,GAAG,CAAC,KAAyB,EAAsB,EAAE;IAC9F,mDAAmD;IACnD,OAAO,+CAAsB,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC;AAHW,QAAA,8BAA8B,kCAGzC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport { StringGetter } from \"@itwin/appui-abstract\";\r\nimport { IconProps, IconSpec } from \"@itwin/core-react\";\r\nimport { BackstageItemUtilities } from \"./BackstageItemUtilities\";\r\n\r\n/** Base properties for a [[Backstage]] item.\r\n * @public\r\n * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\nexport interface BackstageItemProps extends IconProps {\r\n /** if set, component will be enabled - defaults to true */\r\n isEnabled?: boolean;\r\n /** if set, component will be shown with as the active item - defaults to false */\r\n isActive?: boolean;\r\n /** optional function to set state of backstage item */\r\n stateFunc?: (state: Readonly<BackstageItemState>) => BackstageItemState; // eslint-disable-line deprecation/deprecation\r\n /** optional SyncUi event ids that will trigger the state function to run. */\r\n stateSyncIds?: string[];\r\n /** if set, it is used to explicitly set the label shown by a component. */\r\n label?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n labelKey?: string;\r\n /** if set, it is used to explicitly set the description shown by a component. */\r\n description?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */\r\n descriptionKey?: string;\r\n /** used to explicitly set the tooltip shown by a component. */\r\n tooltip?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n tooltipKey?: string;\r\n}\r\n\r\n/** Properties that define the state of a Backstage items.\r\n * @public\r\n * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\nexport interface BackstageItemState {\r\n isEnabled: boolean;\r\n label: string;\r\n subtitle: string;\r\n tooltip: string;\r\n iconSpec: IconSpec;\r\n isActive?: boolean;\r\n}\r\n\r\n/** Helper method to set backstage item state from props.\r\n * @public\r\n * @deprecated - use [BackstageItem]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\n// istanbul ignore next\r\nexport const getBackstageItemStateFromProps = (props: BackstageItemProps): BackstageItemState => { // eslint-disable-line deprecation/deprecation\r\n // eslint-disable-next-line deprecation/deprecation\r\n return BackstageItemUtilities.getBackstageItemStateFromProps(props);\r\n};\r\n"]}
1
+ {"version":3,"file":"BackstageItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemProps.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,qEAAkE;AA0ClE;;;GAGG;AACH,uBAAuB;AAChB,MAAM,8BAA8B,GAAG,CAAC,KAAyB,EAAsB,EAAE;IAC9F,mDAAmD;IACnD,OAAO,+CAAsB,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC;AAHW,QAAA,8BAA8B,kCAGzC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport { StringGetter } from \"@itwin/appui-abstract\";\r\nimport { IconProps, IconSpec } from \"@itwin/core-react\";\r\nimport { BackstageItemUtilities } from \"./BackstageItemUtilities\";\r\n\r\n/** Base properties for a [[Backstage]] item.\r\n * @public\r\n * @deprecated Use [BackstageItem]($appui-abstract) instead\r\n */\r\nexport interface BackstageItemProps extends IconProps {\r\n /** if set, component will be enabled - defaults to true */\r\n isEnabled?: boolean;\r\n /** if set, component will be shown with as the active item - defaults to false */\r\n isActive?: boolean;\r\n /** optional function to set state of backstage item */\r\n stateFunc?: (state: Readonly<BackstageItemState>) => BackstageItemState; // eslint-disable-line deprecation/deprecation\r\n /** optional SyncUi event ids that will trigger the state function to run. */\r\n stateSyncIds?: string[];\r\n /** if set, it is used to explicitly set the label shown by a component. */\r\n label?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n labelKey?: string;\r\n /** if set, it is used to explicitly set the description shown by a component. */\r\n description?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */\r\n descriptionKey?: string;\r\n /** used to explicitly set the tooltip shown by a component. */\r\n tooltip?: string | StringGetter;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n tooltipKey?: string;\r\n}\r\n\r\n/** Properties that define the state of a Backstage items.\r\n * @public\r\n * @deprecated Use [BackstageItem]($appui-abstract) instead\r\n */\r\nexport interface BackstageItemState {\r\n isEnabled: boolean;\r\n label: string;\r\n subtitle: string;\r\n tooltip: string;\r\n iconSpec: IconSpec;\r\n isActive?: boolean;\r\n}\r\n\r\n/** Helper method to set backstage item state from props.\r\n * @public\r\n * @deprecated Use [BackstageItem]($appui-abstract) instead\r\n */\r\n// istanbul ignore next\r\nexport const getBackstageItemStateFromProps = (props: BackstageItemProps): BackstageItemState => { // eslint-disable-line deprecation/deprecation\r\n // eslint-disable-next-line deprecation/deprecation\r\n return BackstageItemUtilities.getBackstageItemStateFromProps(props);\r\n};\r\n"]}
@@ -5,7 +5,7 @@ import { BackstageActionItem as UIA_BackstageActionItem, BackstageStageLauncher
5
5
  import { BackstageItemProps, BackstageItemState } from "./BackstageItemProps";
6
6
  /** Used to specify the item type added to the backstage menu.
7
7
  * @beta
8
- * @deprecated Use [BackstageItemType]($appui-abstract) in bentley/appui-abstract instead
8
+ * @deprecated Use [BackstageItemType]($appui-abstract) instead
9
9
  */
10
10
  export declare enum BackstageItemType {
11
11
  /** Item that executes an action function */
@@ -15,14 +15,14 @@ export declare enum BackstageItemType {
15
15
  }
16
16
  /** Describes the data needed to insert an action button into the backstage menu.
17
17
  * @beta
18
- * @deprecated Use [BackstageActionItem]($appui-abstract) in bentley/appui-abstract instead
18
+ * @deprecated Use [BackstageActionItem]($appui-abstract) instead
19
19
  */
20
20
  export interface BackstageActionItem extends UIA_BackstageActionItem {
21
21
  readonly type: BackstageItemType.ActionItem;
22
22
  }
23
23
  /** Describes the data needed to insert an action button into the backstage menu.
24
24
  * @beta
25
- * @deprecated Use [BackstageStageLauncher]($appui-abstract) in bentley/appui-abstract instead
25
+ * @deprecated Use [BackstageStageLauncher]($appui-abstract) instead
26
26
  */
27
27
  export interface BackstageStageLauncher extends UIA_BackstageStageLauncher {
28
28
  readonly type: BackstageItemType.StageLauncher;
@@ -33,12 +33,12 @@ export interface BackstageStageLauncher extends UIA_BackstageStageLauncher {
33
33
  export declare class BackstageItemUtilities {
34
34
  /** Creates a stage launcher backstage item
35
35
  * @beta
36
- * @deprecated Use BackstageItemUtilities.createStageLauncher in bentley/appui-abstract instead
36
+ * @deprecated Use [BackstageItemUtilities.createStageLauncher]($appui-abstract) instead
37
37
  */
38
38
  static createStageLauncher: (frontstageId: string, groupPriority: number, itemPriority: number, label: string, subtitle?: string | undefined, iconSpec?: string | undefined, overrides?: Partial<BackstageStageLauncher> | undefined) => BackstageStageLauncher;
39
39
  /** Creates an action backstage item
40
40
  * @beta
41
- * @deprecated Use BackstageItemUtilities.createActionItem in bentley/appui-abstract instead
41
+ * @deprecated Use [BackstageItemUtilities.createActionItem]($appui-abstract) instead
42
42
  */
43
43
  static createActionItem: (itemId: string, groupPriority: number, itemPriority: number, execute: () => void, label: string, subtitle?: string | undefined, iconSpec?: string | undefined, overrides?: Partial<BackstageActionItem> | undefined) => BackstageActionItem;
44
44
  /** Helper method to set backstage item state from props */
@@ -11,7 +11,7 @@ exports.BackstageItemUtilities = exports.BackstageItemType = void 0;
11
11
  const PropsHelper_1 = require("../utils/PropsHelper");
12
12
  /** Used to specify the item type added to the backstage menu.
13
13
  * @beta
14
- * @deprecated Use [BackstageItemType]($appui-abstract) in bentley/appui-abstract instead
14
+ * @deprecated Use [BackstageItemType]($appui-abstract) instead
15
15
  */
16
16
  var BackstageItemType;
17
17
  (function (BackstageItemType) {
@@ -28,7 +28,7 @@ class BackstageItemUtilities {
28
28
  exports.BackstageItemUtilities = BackstageItemUtilities;
29
29
  /** Creates a stage launcher backstage item
30
30
  * @beta
31
- * @deprecated Use BackstageItemUtilities.createStageLauncher in bentley/appui-abstract instead
31
+ * @deprecated Use [BackstageItemUtilities.createStageLauncher]($appui-abstract) instead
32
32
  */
33
33
  BackstageItemUtilities.createStageLauncher = (frontstageId, groupPriority, itemPriority, label, subtitle, iconSpec, overrides) => ({
34
34
  groupPriority,
@@ -43,7 +43,7 @@ BackstageItemUtilities.createStageLauncher = (frontstageId, groupPriority, itemP
43
43
  });
44
44
  /** Creates an action backstage item
45
45
  * @beta
46
- * @deprecated Use BackstageItemUtilities.createActionItem in bentley/appui-abstract instead
46
+ * @deprecated Use [BackstageItemUtilities.createActionItem]($appui-abstract) instead
47
47
  */
48
48
  BackstageItemUtilities.createActionItem = (itemId, groupPriority, itemPriority, execute, label, subtitle, iconSpec, overrides) => ({
49
49
  execute,
@@ -1 +1 @@
1
- {"version":3,"file":"BackstageItemUtilities.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemUtilities.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,sDAAmD;AAGnD;;;GAGG;AACH,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,4CAA4C;IAC5C,qEAAc,CAAA;IACd,kCAAkC;IAClC,2EAAiB,CAAA;AACnB,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAkBD;;GAEG;AACH,MAAa,sBAAsB;;AAAnC,wDAgDC;AA/CC;;;GAGG;AACW,0CAAmB,GAAG,CAAC,YAAoB,EAAE,aAAqB,EAAE,YAAoB,EAAE,KAAa,EAAE,QAAiB,EAAE,QAAiB,EAAE,SAA2C,EAA0B,EAAE,CAAC,CAAC;IACpO,aAAa;IACb,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,YAAY;IAChB,YAAY;IACZ,IAAI,EAAE,iBAAiB,CAAC,aAAa;IACrC,KAAK;IACL,OAAO,EAAE,YAAY;IACrB,QAAQ;IACR,GAAG,SAAS;CACb,CAAC,CAAC;AAEH;;;GAGG;AACW,uCAAgB,GAAG,CAAC,MAAc,EAAE,aAAqB,EAAE,YAAoB,EAAE,OAAmB,EAAE,KAAa,EAAE,QAAiB,EAAE,QAAiB,EAAE,SAAwC,EAAuB,EAAE,CAAC,CAAC;IAC1O,OAAO;IACP,aAAa;IACb,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,MAAM;IACV,YAAY;IACZ,IAAI,EAAE,iBAAiB,CAAC,UAAU;IAClC,KAAK;IACL,QAAQ;IACR,GAAG,SAAS;CACb,CAAC,CAAC;AAEH,2DAA2D;AAC7C,qDAA8B,GAAG,CAAC,KAAyB,EAAsB,EAAE;IAC/F,MAAM,SAAS,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAE/E,OAAO;QACL,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAA,KAAK;QAC5F,KAAK,EAAE,yBAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC/C,QAAQ,EAAE,yBAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC;QACrD,OAAO,EAAE,yBAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,SAAS,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;KAChE,CAAC;AACJ,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport { BackstageActionItem as UIA_BackstageActionItem, BackstageStageLauncher as UIA_BackstageStageLauncher } from \"@itwin/appui-abstract\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { BackstageItemProps, BackstageItemState } from \"./BackstageItemProps\";\r\n\r\n/** Used to specify the item type added to the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageItemType]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\nexport enum BackstageItemType {\r\n /** Item that executes an action function */\r\n ActionItem = 1,\r\n /** Item that activate a stage. */\r\n StageLauncher = 2,\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageActionItem]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\nexport interface BackstageActionItem extends UIA_BackstageActionItem {\r\n readonly type: BackstageItemType.ActionItem; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageStageLauncher]($appui-abstract) in bentley/appui-abstract instead\r\n */\r\nexport interface BackstageStageLauncher extends UIA_BackstageStageLauncher {\r\n readonly type: BackstageItemType.StageLauncher; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Utilities for creating and maintaining backstage items\r\n * @beta @deprecated\r\n */\r\nexport class BackstageItemUtilities {\r\n /** Creates a stage launcher backstage item\r\n * @beta\r\n * @deprecated Use BackstageItemUtilities.createStageLauncher in bentley/appui-abstract instead\r\n */\r\n public static createStageLauncher = (frontstageId: string, groupPriority: number, itemPriority: number, label: string, subtitle?: string, iconSpec?: string, overrides?: Partial<BackstageStageLauncher>): BackstageStageLauncher => ({ // eslint-disable-line deprecation/deprecation\r\n groupPriority,\r\n icon: iconSpec,\r\n id: frontstageId,\r\n itemPriority,\r\n type: BackstageItemType.StageLauncher, // eslint-disable-line deprecation/deprecation\r\n label,\r\n stageId: frontstageId,\r\n subtitle,\r\n ...overrides,\r\n });\r\n\r\n /** Creates an action backstage item\r\n * @beta\r\n * @deprecated Use BackstageItemUtilities.createActionItem in bentley/appui-abstract instead\r\n */\r\n public static createActionItem = (itemId: string, groupPriority: number, itemPriority: number, execute: () => void, label: string, subtitle?: string, iconSpec?: string, overrides?: Partial<BackstageActionItem>): BackstageActionItem => ({ // eslint-disable-line deprecation/deprecation\r\n execute,\r\n groupPriority,\r\n icon: iconSpec,\r\n id: itemId,\r\n itemPriority,\r\n type: BackstageItemType.ActionItem, // eslint-disable-line deprecation/deprecation\r\n label,\r\n subtitle,\r\n ...overrides,\r\n });\r\n\r\n /** Helper method to set backstage item state from props */\r\n public static getBackstageItemStateFromProps = (props: BackstageItemProps): BackstageItemState => { // eslint-disable-line deprecation/deprecation\r\n const labelSpec = PropsHelper.getStringSpec(props.label, props.labelKey);\r\n const subtitleSpec = PropsHelper.getStringSpec(props.description, props.descriptionKey);\r\n const tooltipSpec = PropsHelper.getStringSpec(props.tooltip, props.tooltipKey);\r\n\r\n return {\r\n isEnabled: undefined !== props.isEnabled ? props.isEnabled : /* istanbul ignore next */false,\r\n label: PropsHelper.getStringFromSpec(labelSpec),\r\n subtitle: PropsHelper.getStringFromSpec(subtitleSpec),\r\n tooltip: PropsHelper.getStringFromSpec(tooltipSpec),\r\n iconSpec: props.iconSpec,\r\n isActive: undefined !== props.isActive ? props.isActive : false,\r\n };\r\n };\r\n}\r\n"]}
1
+ {"version":3,"file":"BackstageItemUtilities.js","sourceRoot":"","sources":["../../../../src/appui-react/backstage/BackstageItemUtilities.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,sDAAmD;AAGnD;;;GAGG;AACH,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,4CAA4C;IAC5C,qEAAc,CAAA;IACd,kCAAkC;IAClC,2EAAiB,CAAA;AACnB,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAkBD;;GAEG;AACH,MAAa,sBAAsB;;AAAnC,wDAgDC;AA/CC;;;GAGG;AACW,0CAAmB,GAAG,CAAC,YAAoB,EAAE,aAAqB,EAAE,YAAoB,EAAE,KAAa,EAAE,QAAiB,EAAE,QAAiB,EAAE,SAA2C,EAA0B,EAAE,CAAC,CAAC;IACpO,aAAa;IACb,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,YAAY;IAChB,YAAY;IACZ,IAAI,EAAE,iBAAiB,CAAC,aAAa;IACrC,KAAK;IACL,OAAO,EAAE,YAAY;IACrB,QAAQ;IACR,GAAG,SAAS;CACb,CAAC,CAAC;AAEH;;;GAGG;AACW,uCAAgB,GAAG,CAAC,MAAc,EAAE,aAAqB,EAAE,YAAoB,EAAE,OAAmB,EAAE,KAAa,EAAE,QAAiB,EAAE,QAAiB,EAAE,SAAwC,EAAuB,EAAE,CAAC,CAAC;IAC1O,OAAO;IACP,aAAa;IACb,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,MAAM;IACV,YAAY;IACZ,IAAI,EAAE,iBAAiB,CAAC,UAAU;IAClC,KAAK;IACL,QAAQ;IACR,GAAG,SAAS;CACb,CAAC,CAAC;AAEH,2DAA2D;AAC7C,qDAA8B,GAAG,CAAC,KAAyB,EAAsB,EAAE;IAC/F,MAAM,SAAS,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,yBAAW,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAE/E,OAAO;QACL,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAA,KAAK;QAC5F,KAAK,EAAE,yBAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC/C,QAAQ,EAAE,yBAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC;QACrD,OAAO,EAAE,yBAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,SAAS,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;KAChE,CAAC;AACJ,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Backstage\r\n */\r\n\r\nimport { BackstageActionItem as UIA_BackstageActionItem, BackstageStageLauncher as UIA_BackstageStageLauncher } from \"@itwin/appui-abstract\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { BackstageItemProps, BackstageItemState } from \"./BackstageItemProps\";\r\n\r\n/** Used to specify the item type added to the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageItemType]($appui-abstract) instead\r\n */\r\nexport enum BackstageItemType {\r\n /** Item that executes an action function */\r\n ActionItem = 1,\r\n /** Item that activate a stage. */\r\n StageLauncher = 2,\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageActionItem]($appui-abstract) instead\r\n */\r\nexport interface BackstageActionItem extends UIA_BackstageActionItem {\r\n readonly type: BackstageItemType.ActionItem; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Describes the data needed to insert an action button into the backstage menu.\r\n * @beta\r\n * @deprecated Use [BackstageStageLauncher]($appui-abstract) instead\r\n */\r\nexport interface BackstageStageLauncher extends UIA_BackstageStageLauncher {\r\n readonly type: BackstageItemType.StageLauncher; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Utilities for creating and maintaining backstage items\r\n * @beta @deprecated\r\n */\r\nexport class BackstageItemUtilities {\r\n /** Creates a stage launcher backstage item\r\n * @beta\r\n * @deprecated Use [BackstageItemUtilities.createStageLauncher]($appui-abstract) instead\r\n */\r\n public static createStageLauncher = (frontstageId: string, groupPriority: number, itemPriority: number, label: string, subtitle?: string, iconSpec?: string, overrides?: Partial<BackstageStageLauncher>): BackstageStageLauncher => ({ // eslint-disable-line deprecation/deprecation\r\n groupPriority,\r\n icon: iconSpec,\r\n id: frontstageId,\r\n itemPriority,\r\n type: BackstageItemType.StageLauncher, // eslint-disable-line deprecation/deprecation\r\n label,\r\n stageId: frontstageId,\r\n subtitle,\r\n ...overrides,\r\n });\r\n\r\n /** Creates an action backstage item\r\n * @beta\r\n * @deprecated Use [BackstageItemUtilities.createActionItem]($appui-abstract) instead\r\n */\r\n public static createActionItem = (itemId: string, groupPriority: number, itemPriority: number, execute: () => void, label: string, subtitle?: string, iconSpec?: string, overrides?: Partial<BackstageActionItem>): BackstageActionItem => ({ // eslint-disable-line deprecation/deprecation\r\n execute,\r\n groupPriority,\r\n icon: iconSpec,\r\n id: itemId,\r\n itemPriority,\r\n type: BackstageItemType.ActionItem, // eslint-disable-line deprecation/deprecation\r\n label,\r\n subtitle,\r\n ...overrides,\r\n });\r\n\r\n /** Helper method to set backstage item state from props */\r\n public static getBackstageItemStateFromProps = (props: BackstageItemProps): BackstageItemState => { // eslint-disable-line deprecation/deprecation\r\n const labelSpec = PropsHelper.getStringSpec(props.label, props.labelKey);\r\n const subtitleSpec = PropsHelper.getStringSpec(props.description, props.descriptionKey);\r\n const tooltipSpec = PropsHelper.getStringSpec(props.tooltip, props.tooltipKey);\r\n\r\n return {\r\n isEnabled: undefined !== props.isEnabled ? props.isEnabled : /* istanbul ignore next */false,\r\n label: PropsHelper.getStringFromSpec(labelSpec),\r\n subtitle: PropsHelper.getStringFromSpec(subtitleSpec),\r\n tooltip: PropsHelper.getStringFromSpec(tooltipSpec),\r\n iconSpec: props.iconSpec,\r\n isActive: undefined !== props.isActive ? props.isActive : false,\r\n };\r\n };\r\n}\r\n"]}
@@ -6,6 +6,7 @@ import { CommandHandler } from "@itwin/appui-abstract";
6
6
  import { BackstageItemProps, BackstageItemState } from "./BackstageItemProps";
7
7
  /** Properties for a [[CommandLaunchBackstageItem]] component
8
8
  * @public
9
+ * @deprecated Use [BackstageActionItem]($appui-abstract) instead.
9
10
  */
10
11
  export interface CommandLaunchBackstageItemProps extends BackstageItemProps, CommandHandler {
11
12
  /** Unique Id for this backstage item. */
@@ -13,6 +14,7 @@ export interface CommandLaunchBackstageItemProps extends BackstageItemProps, Com
13
14
  }
14
15
  /** Backstage item that launches a Command
15
16
  * @public
17
+ * @deprecated Use [BackstageActionItem]($appui-abstract) instead.
16
18
  */
17
19
  export declare class CommandLaunchBackstageItem extends React.PureComponent<CommandLaunchBackstageItemProps, BackstageItemState> {
18
20
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"CommandLaunch.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/CommandLaunch.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAOvD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAQ9E;;GAEG;AACH,MAAM,WAAW,+BAAgC,SAAQ,kBAAkB,EAAE,cAAc;IACzF,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,KAAK,CAAC,aAAa,CAAC,+BAA+B,EAAE,kBAAkB,CAAC;IAEtH,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC7D,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,KAAK,EAAE,+BAA+B;IAUlC,iBAAiB;IAKjB,oBAAoB;IAOpC,OAAO,CAAC,kBAAkB,CAexB;IAEK,OAAO,QAAO,IAAI,CAUvB;IAIc,kBAAkB,CAAC,UAAU,EAAE,+BAA+B;IAQ9D,MAAM,IAAI,KAAK,CAAC,SAAS;CAa1C"}
1
+ {"version":3,"file":"CommandLaunch.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/backstage/CommandLaunch.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAOxE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAQ9E;;;GAGG;AACH,MAAM,WAAW,+BAAgC,SAAQ,kBAAkB,EAAE,cAAc;IACzF,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,KAAK,CAAC,aAAa,CAAC,+BAA+B,EAAE,kBAAkB,CAAC;IAEtH,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC7D,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,KAAK,EAAE,+BAA+B;IAUlC,iBAAiB;IAKjB,oBAAoB;IAOpC,OAAO,CAAC,kBAAkB,CAexB;IAEK,OAAO,QAAO,IAAI,CAUvB;IAIc,kBAAkB,CAAC,UAAU,EAAE,+BAA+B;IAQ9D,MAAM,IAAI,KAAK,CAAC,SAAS;CAa1C"}
@@ -22,6 +22,7 @@ const BackstageItemUtilities_1 = require("./BackstageItemUtilities");
22
22
  const BackstageItem = (0, SafeAreaContext_1.withSafeArea)(appui_layout_react_1.BackstageItem);
23
23
  /** Backstage item that launches a Command
24
24
  * @public
25
+ * @deprecated Use [BackstageActionItem]($appui-abstract) instead.
25
26
  */
26
27
  class CommandLaunchBackstageItem extends React.PureComponent {
27
28
  constructor(props) {