@itwin/appui-react 4.6.0 → 4.6.2

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 (214) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/lib/cjs/appui-react/UiFramework.js +4 -7
  3. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  4. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
  5. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  6. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +1 -0
  7. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  8. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +18 -2
  9. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  10. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  11. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  12. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  13. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  14. package/lib/cjs/appui-react/content/ContentLayout.js +9 -12
  15. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  16. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  17. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  18. package/lib/cjs/appui-react/content/FloatingViewportContent.js +1 -2
  19. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  20. package/lib/cjs/appui-react/content/IModelViewport.js +3 -6
  21. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  22. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  23. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  24. package/lib/cjs/appui-react/content/InternalContentViewManager.js +1 -1
  25. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  26. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
  27. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  28. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  29. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  30. package/lib/cjs/appui-react/dialog/ContentDialog.js +3 -6
  31. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  32. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -3
  33. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  34. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  35. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +33 -51
  36. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  37. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -3
  38. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  39. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  40. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  41. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  42. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  43. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  44. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  45. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  46. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  47. package/lib/cjs/appui-react/messages/ActivityMessage.js +5 -7
  48. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  49. package/lib/cjs/appui-react/pickers/ViewSelector.js +5 -6
  50. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  51. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -2
  52. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  53. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  54. package/lib/cjs/appui-react/popup/PopupManager.js +3 -2
  55. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  56. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  57. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  58. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
  59. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  60. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +11 -16
  61. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  62. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  63. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  64. package/lib/cjs/appui-react/statusbar/StatusBar.js +3 -5
  65. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  66. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +1 -1
  67. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  68. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +6 -4
  69. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  70. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  71. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  72. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +10 -17
  73. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  74. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
  75. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  76. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +12 -14
  77. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  78. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  79. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  80. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  81. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  82. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  83. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  84. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  85. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  86. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +1 -1
  87. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  88. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  89. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  90. package/lib/cjs/appui-react/widget-panels/Content.js +8 -9
  91. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  92. package/lib/cjs/appui-react/widget-panels/Frontstage.js +34 -32
  93. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  94. package/lib/cjs/appui-react/widget-panels/StatusBar.js +1 -1
  95. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  96. package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
  97. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  98. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +13 -19
  99. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  100. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  101. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  102. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  103. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  104. package/lib/cjs/appui-react/widgets/WidgetDef.js +5 -6
  105. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  106. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  107. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  108. package/lib/esm/appui-react/UiFramework.js +4 -7
  109. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  110. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
  111. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  112. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +1 -0
  113. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  114. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +18 -2
  115. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  116. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
  117. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  118. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  119. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  120. package/lib/esm/appui-react/content/ContentLayout.js +9 -12
  121. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  122. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  123. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  124. package/lib/esm/appui-react/content/FloatingViewportContent.js +1 -2
  125. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  126. package/lib/esm/appui-react/content/IModelViewport.js +3 -6
  127. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  128. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  129. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  130. package/lib/esm/appui-react/content/InternalContentViewManager.js +1 -1
  131. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  132. package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
  133. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  134. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
  135. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  136. package/lib/esm/appui-react/dialog/ContentDialog.js +3 -6
  137. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  138. package/lib/esm/appui-react/dialog/DialogManagerBase.js +2 -3
  139. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  140. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  141. package/lib/esm/appui-react/frontstage/FrontstageDef.js +33 -51
  142. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  143. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -3
  144. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  145. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  146. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  147. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  148. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  149. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  150. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  151. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  152. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  153. package/lib/esm/appui-react/messages/ActivityMessage.js +5 -7
  154. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  155. package/lib/esm/appui-react/pickers/ViewSelector.js +5 -6
  156. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  157. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -2
  158. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  159. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  160. package/lib/esm/appui-react/popup/PopupManager.js +3 -2
  161. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  162. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  163. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  164. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
  165. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  166. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +11 -16
  167. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  168. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  169. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  170. package/lib/esm/appui-react/statusbar/StatusBar.js +3 -5
  171. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  172. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +1 -1
  173. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  174. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +6 -4
  175. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  176. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  177. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  178. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +10 -17
  179. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  180. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
  181. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  182. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +12 -14
  183. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  184. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  185. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  186. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
  187. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  188. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +8 -14
  189. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  190. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
  191. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  192. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +1 -1
  193. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  194. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  195. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  196. package/lib/esm/appui-react/widget-panels/Content.js +8 -9
  197. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  198. package/lib/esm/appui-react/widget-panels/Frontstage.js +34 -32
  199. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  200. package/lib/esm/appui-react/widget-panels/StatusBar.js +1 -1
  201. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  202. package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
  203. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  204. package/lib/esm/appui-react/widget-panels/ToolSettings.js +13 -19
  205. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  206. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  207. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  208. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +2 -2
  209. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  210. package/lib/esm/appui-react/widgets/WidgetDef.js +5 -6
  211. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  212. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  213. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  214. package/package.json +9 -9
@@ -30,13 +30,13 @@ class UiShowHideSettingsProvider {
30
30
  InternalUiShowHideManager.setSnapWidgetOpacity(result.setting);
31
31
  }
32
32
  static async storeAutoHideUi(v, storage) {
33
- void (storage !== null && storage !== void 0 ? storage : UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._autoHideUiKey, v);
33
+ void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._autoHideUiKey, v);
34
34
  }
35
35
  static async storeUseProximityOpacity(v, storage) {
36
- void (storage !== null && storage !== void 0 ? storage : UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._useProximityOpacityKey, v);
36
+ void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._useProximityOpacityKey, v);
37
37
  }
38
38
  static async storeSnapWidgetOpacity(v, storage) {
39
- void (storage !== null && storage !== void 0 ? storage : UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._snapWidgetOpacityKey, v);
39
+ void (storage ?? UiFramework.getUiStateStorage()).saveSetting(this._settingsNamespace, this._snapWidgetOpacityKey, v);
40
40
  }
41
41
  }
42
42
  UiShowHideSettingsProvider._settingsNamespace = "AppUiSettings";
@@ -1 +1 @@
1
- {"version":3,"file":"InternalUiShowHideManager.js","sourceRoot":"","sources":["../../../../src/appui-react/utils/InternalUiShowHideManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\nimport type { UiStateStorage } from \"@itwin/core-react\";\nimport { UiStateStorageStatus } from \"@itwin/core-react\";\nimport {\n SyncUiEventDispatcher,\n SyncUiEventId,\n} from \"../syncui/SyncUiEventDispatcher\";\nimport type { UserSettingsProvider } from \"../UiFramework\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Class that maintain UiShowHide user settings between sessions\n * @internal\n */\nexport class UiShowHideSettingsProvider implements UserSettingsProvider {\n private static _settingsNamespace = \"AppUiSettings\";\n private static _autoHideUiKey = \"AutoHideUi\";\n private static _useProximityOpacityKey = \"UseProximityOpacity\";\n private static _snapWidgetOpacityKey = \"SnapWidgetOpacity\";\n public readonly providerId = \"UiShowHideSettingsProvider\";\n\n public static initialize() {\n UiFramework.registerUserSettingsProvider(new UiShowHideSettingsProvider());\n }\n\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\n let result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._autoHideUiKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setAutoHideUi(result.setting);\n\n result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._useProximityOpacityKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setUseProximityOpacity(result.setting);\n\n result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._snapWidgetOpacityKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setSnapWidgetOpacity(result.setting);\n }\n\n public static async storeAutoHideUi(v: boolean, storage?: UiStateStorage) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._autoHideUiKey,\n v\n );\n }\n\n public static async storeUseProximityOpacity(\n v: boolean,\n storage?: UiStateStorage\n ) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._useProximityOpacityKey,\n v\n );\n }\n\n public static async storeSnapWidgetOpacity(\n v: boolean,\n storage?: UiStateStorage\n ) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._snapWidgetOpacityKey,\n v\n );\n }\n}\n\n/** The default inactivity time.\n * @internal\n */\nexport const INACTIVITY_TIME_DEFAULT = 3500; /** Wait 3.5 seconds */\n\n/** Maintains Ui Show/Hide state. The `Ui` includes widgets, panels and the status bar.\n * @internal\n */\nexport class InternalUiShowHideManager {\n private static _isUiVisible: boolean = true;\n private static _autoHideUi: boolean = true;\n private static _showHidePanels: boolean = false;\n private static _showHideFooter: boolean = false;\n private static _inactivityTime: number = INACTIVITY_TIME_DEFAULT;\n private static _timeout: NodeJS.Timeout;\n private static _useProximityOpacity: boolean = false;\n private static _snapWidgetOpacity: boolean = false;\n\n /** Determines if the Ui is visible */\n public static get isUiVisible() {\n return InternalUiShowHideManager._isUiVisible;\n }\n public static set isUiVisible(visible: boolean) {\n InternalUiShowHideManager._isUiVisible = visible;\n }\n\n /** @public */\n public static setAutoHideUi(value: boolean) {\n InternalUiShowHideManager._autoHideUi = value;\n }\n\n /** @internal */\n public static setUseProximityOpacity(value: boolean) {\n InternalUiShowHideManager._useProximityOpacity = value;\n }\n\n /** @internal */\n public static setSnapWidgetOpacity(value: boolean) {\n InternalUiShowHideManager._snapWidgetOpacity = value;\n }\n\n /** Determines whether the `auto-hide Ui` feature is on. Defaults to false.\n * When true, the Ui automatically hides after a few seconds of inactivity.\n */\n public static get autoHideUi(): boolean {\n return InternalUiShowHideManager._autoHideUi;\n }\n\n public static set autoHideUi(autoHide: boolean) {\n void UiShowHideSettingsProvider.storeAutoHideUi(autoHide);\n InternalUiShowHideManager._autoHideUi = autoHide;\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n }\n /** Determines whether the widget panels are shown and hidden. Defaults to false. */\n public static get showHidePanels(): boolean {\n return InternalUiShowHideManager._showHidePanels;\n }\n public static set showHidePanels(showHide: boolean) {\n InternalUiShowHideManager._showHidePanels = showHide;\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines whether the status bar is shown and hidden. Defaults to false. */\n public static get showHideFooter(): boolean {\n return InternalUiShowHideManager._showHideFooter;\n }\n public static set showHideFooter(showHide: boolean) {\n InternalUiShowHideManager._showHideFooter = showHide;\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines the amount of inactivity time before the Ui is hidden. Defaults to 3.5 seconds. */\n public static get inactivityTime(): number {\n return InternalUiShowHideManager._inactivityTime;\n }\n public static set inactivityTime(time: number) {\n InternalUiShowHideManager._inactivityTime = time;\n }\n\n /** Determines whether the proximity of the mouse should alter the opacity of a toolbar. Defaults to true. */\n public static get useProximityOpacity(): boolean {\n return InternalUiShowHideManager._useProximityOpacity;\n }\n public static set useProximityOpacity(value: boolean) {\n InternalUiShowHideManager._useProximityOpacity = value;\n void UiShowHideSettingsProvider.storeUseProximityOpacity(value);\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines whether the opacity of a toolbar should snap. Defaults to false. */\n public static get snapWidgetOpacity(): boolean {\n return InternalUiShowHideManager._snapWidgetOpacity;\n }\n public static set snapWidgetOpacity(value: boolean) {\n InternalUiShowHideManager._snapWidgetOpacity = value;\n void UiShowHideSettingsProvider.storeSnapWidgetOpacity(value);\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Handler for when a Frontstage is ready */\n public static handleFrontstageReady() {\n // istanbul ignore next\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndResetTimer();\n }\n\n /** Handler for when the mouse moves over the content area */\n public static handleContentMouseMove(\n _event?: React.MouseEvent<HTMLElement, MouseEvent>\n ) {\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndResetTimer();\n }\n\n /** Handler for when the mouse enters a widget */\n public static handleWidgetMouseEnter(\n _event?: React.MouseEvent<HTMLElement, MouseEvent>\n ) {\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndCancelTimer();\n }\n\n /** Shows the Ui and resets the inactivity timer */\n public static showUiAndResetTimer() {\n setTimeout(() => {\n InternalUiShowHideManager.showUi();\n InternalUiShowHideManager.resetTimer();\n });\n }\n\n /** Shows the Ui and cancels the inactivity timer */\n public static showUiAndCancelTimer() {\n setTimeout(() => {\n InternalUiShowHideManager.showUi();\n InternalUiShowHideManager.cancelTimer();\n });\n }\n\n private static cancelTimer() {\n clearTimeout(InternalUiShowHideManager._timeout);\n }\n\n private static resetTimer() {\n InternalUiShowHideManager.cancelTimer();\n InternalUiShowHideManager._timeout = setTimeout(\n InternalUiShowHideManager.hideUi,\n InternalUiShowHideManager._inactivityTime\n );\n }\n\n private static showUi() {\n UiFramework.setIsUiVisible(true);\n }\n\n private static hideUi() {\n UiFramework.setIsUiVisible(false);\n }\n\n /** @internal */\n public static terminate() {\n InternalUiShowHideManager.cancelTimer();\n // Ensure that next use will have default values for tests.\n InternalUiShowHideManager._isUiVisible = true;\n InternalUiShowHideManager._autoHideUi = true;\n InternalUiShowHideManager._showHidePanels = false;\n InternalUiShowHideManager._showHideFooter = false;\n InternalUiShowHideManager._inactivityTime = INACTIVITY_TIME_DEFAULT;\n InternalUiShowHideManager._useProximityOpacity = false;\n InternalUiShowHideManager._snapWidgetOpacity = false;\n }\n}\n"]}
1
+ {"version":3,"file":"InternalUiShowHideManager.js","sourceRoot":"","sources":["../../../../src/appui-react/utils/InternalUiShowHideManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\nimport type { UiStateStorage } from \"@itwin/core-react\";\nimport { UiStateStorageStatus } from \"@itwin/core-react\";\nimport {\n SyncUiEventDispatcher,\n SyncUiEventId,\n} from \"../syncui/SyncUiEventDispatcher\";\nimport type { UserSettingsProvider } from \"../UiFramework\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Class that maintain UiShowHide user settings between sessions\n * @internal\n */\nexport class UiShowHideSettingsProvider implements UserSettingsProvider {\n private static _settingsNamespace = \"AppUiSettings\";\n private static _autoHideUiKey = \"AutoHideUi\";\n private static _useProximityOpacityKey = \"UseProximityOpacity\";\n private static _snapWidgetOpacityKey = \"SnapWidgetOpacity\";\n public readonly providerId = \"UiShowHideSettingsProvider\";\n\n public static initialize() {\n UiFramework.registerUserSettingsProvider(new UiShowHideSettingsProvider());\n }\n\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\n let result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._autoHideUiKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setAutoHideUi(result.setting);\n\n result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._useProximityOpacityKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setUseProximityOpacity(result.setting);\n\n result = await storage.getSetting(\n UiShowHideSettingsProvider._settingsNamespace,\n UiShowHideSettingsProvider._snapWidgetOpacityKey\n );\n if (result.status === UiStateStorageStatus.Success)\n InternalUiShowHideManager.setSnapWidgetOpacity(result.setting);\n }\n\n public static async storeAutoHideUi(v: boolean, storage?: UiStateStorage) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._autoHideUiKey,\n v\n );\n }\n\n public static async storeUseProximityOpacity(\n v: boolean,\n storage?: UiStateStorage\n ) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._useProximityOpacityKey,\n v\n );\n }\n\n public static async storeSnapWidgetOpacity(\n v: boolean,\n storage?: UiStateStorage\n ) {\n void (storage ?? UiFramework.getUiStateStorage()).saveSetting(\n this._settingsNamespace,\n this._snapWidgetOpacityKey,\n v\n );\n }\n}\n\n/** The default inactivity time.\n * @internal\n */\nexport const INACTIVITY_TIME_DEFAULT = 3500; /** Wait 3.5 seconds */\n\n/** Maintains Ui Show/Hide state. The `Ui` includes widgets, panels and the status bar.\n * @internal\n */\nexport class InternalUiShowHideManager {\n private static _isUiVisible: boolean = true;\n private static _autoHideUi: boolean = true;\n private static _showHidePanels: boolean = false;\n private static _showHideFooter: boolean = false;\n private static _inactivityTime: number = INACTIVITY_TIME_DEFAULT;\n private static _timeout: NodeJS.Timeout;\n private static _useProximityOpacity: boolean = false;\n private static _snapWidgetOpacity: boolean = false;\n\n /** Determines if the Ui is visible */\n public static get isUiVisible() {\n return InternalUiShowHideManager._isUiVisible;\n }\n public static set isUiVisible(visible: boolean) {\n InternalUiShowHideManager._isUiVisible = visible;\n }\n\n /** @public */\n public static setAutoHideUi(value: boolean) {\n InternalUiShowHideManager._autoHideUi = value;\n }\n\n /** @internal */\n public static setUseProximityOpacity(value: boolean) {\n InternalUiShowHideManager._useProximityOpacity = value;\n }\n\n /** @internal */\n public static setSnapWidgetOpacity(value: boolean) {\n InternalUiShowHideManager._snapWidgetOpacity = value;\n }\n\n /** Determines whether the `auto-hide Ui` feature is on. Defaults to false.\n * When true, the Ui automatically hides after a few seconds of inactivity.\n */\n public static get autoHideUi(): boolean {\n return InternalUiShowHideManager._autoHideUi;\n }\n\n public static set autoHideUi(autoHide: boolean) {\n void UiShowHideSettingsProvider.storeAutoHideUi(autoHide);\n InternalUiShowHideManager._autoHideUi = autoHide;\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n }\n /** Determines whether the widget panels are shown and hidden. Defaults to false. */\n public static get showHidePanels(): boolean {\n return InternalUiShowHideManager._showHidePanels;\n }\n public static set showHidePanels(showHide: boolean) {\n InternalUiShowHideManager._showHidePanels = showHide;\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines whether the status bar is shown and hidden. Defaults to false. */\n public static get showHideFooter(): boolean {\n return InternalUiShowHideManager._showHideFooter;\n }\n public static set showHideFooter(showHide: boolean) {\n InternalUiShowHideManager._showHideFooter = showHide;\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines the amount of inactivity time before the Ui is hidden. Defaults to 3.5 seconds. */\n public static get inactivityTime(): number {\n return InternalUiShowHideManager._inactivityTime;\n }\n public static set inactivityTime(time: number) {\n InternalUiShowHideManager._inactivityTime = time;\n }\n\n /** Determines whether the proximity of the mouse should alter the opacity of a toolbar. Defaults to true. */\n public static get useProximityOpacity(): boolean {\n return InternalUiShowHideManager._useProximityOpacity;\n }\n public static set useProximityOpacity(value: boolean) {\n InternalUiShowHideManager._useProximityOpacity = value;\n void UiShowHideSettingsProvider.storeUseProximityOpacity(value);\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Determines whether the opacity of a toolbar should snap. Defaults to false. */\n public static get snapWidgetOpacity(): boolean {\n return InternalUiShowHideManager._snapWidgetOpacity;\n }\n public static set snapWidgetOpacity(value: boolean) {\n InternalUiShowHideManager._snapWidgetOpacity = value;\n void UiShowHideSettingsProvider.storeSnapWidgetOpacity(value);\n SyncUiEventDispatcher.dispatchImmediateSyncUiEvent(\n SyncUiEventId.ShowHideManagerSettingChange\n );\n UiFramework.onUiVisibilityChanged.emit({\n visible: UiFramework.getIsUiVisible(),\n });\n }\n\n /** Handler for when a Frontstage is ready */\n public static handleFrontstageReady() {\n // istanbul ignore next\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndResetTimer();\n }\n\n /** Handler for when the mouse moves over the content area */\n public static handleContentMouseMove(\n _event?: React.MouseEvent<HTMLElement, MouseEvent>\n ) {\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndResetTimer();\n }\n\n /** Handler for when the mouse enters a widget */\n public static handleWidgetMouseEnter(\n _event?: React.MouseEvent<HTMLElement, MouseEvent>\n ) {\n if (!InternalUiShowHideManager._autoHideUi) return;\n\n InternalUiShowHideManager.showUiAndCancelTimer();\n }\n\n /** Shows the Ui and resets the inactivity timer */\n public static showUiAndResetTimer() {\n setTimeout(() => {\n InternalUiShowHideManager.showUi();\n InternalUiShowHideManager.resetTimer();\n });\n }\n\n /** Shows the Ui and cancels the inactivity timer */\n public static showUiAndCancelTimer() {\n setTimeout(() => {\n InternalUiShowHideManager.showUi();\n InternalUiShowHideManager.cancelTimer();\n });\n }\n\n private static cancelTimer() {\n clearTimeout(InternalUiShowHideManager._timeout);\n }\n\n private static resetTimer() {\n InternalUiShowHideManager.cancelTimer();\n InternalUiShowHideManager._timeout = setTimeout(\n InternalUiShowHideManager.hideUi,\n InternalUiShowHideManager._inactivityTime\n );\n }\n\n private static showUi() {\n UiFramework.setIsUiVisible(true);\n }\n\n private static hideUi() {\n UiFramework.setIsUiVisible(false);\n }\n\n /** @internal */\n public static terminate() {\n InternalUiShowHideManager.cancelTimer();\n // Ensure that next use will have default values for tests.\n InternalUiShowHideManager._isUiVisible = true;\n InternalUiShowHideManager._autoHideUi = true;\n InternalUiShowHideManager._showHidePanels = false;\n InternalUiShowHideManager._showHideFooter = false;\n InternalUiShowHideManager._inactivityTime = INACTIVITY_TIME_DEFAULT;\n InternalUiShowHideManager._useProximityOpacity = false;\n InternalUiShowHideManager._snapWidgetOpacity = false;\n }\n}\n"]}
@@ -24,31 +24,30 @@ function WidgetFallback() {
24
24
  }
25
25
  /** @internal */
26
26
  export function WidgetContent() {
27
- var _a, _b;
28
27
  const widget = useWidgetDef();
29
28
  // istanbul ignore next
30
- const itemId = (_b = (_a = widget === null || widget === void 0 ? void 0 : widget.id) !== null && _a !== void 0 ? _a : widget === null || widget === void 0 ? void 0 : widget.label) !== null && _b !== void 0 ? _b : "unknown";
29
+ const itemId = widget?.id ?? widget?.label ?? "unknown";
31
30
  const onSave = React.useCallback(() => {
32
31
  // istanbul ignore next
33
- widget === null || widget === void 0 ? void 0 : widget.saveTransientState();
32
+ widget?.saveTransientState();
34
33
  }, [widget]);
35
34
  const onRestore = React.useCallback(() => {
36
35
  // istanbul ignore next
37
- widget === null || widget === void 0 ? void 0 : widget.restoreTransientState();
36
+ widget?.restoreTransientState();
38
37
  }, [widget]);
39
38
  useTransientState(onSave, onRestore);
40
- const providerId = (widget === null || widget === void 0 ? void 0 : widget.initialConfig) && isProviderItem(widget === null || widget === void 0 ? void 0 : widget.initialConfig)
41
- ? widget === null || widget === void 0 ? void 0 : widget.initialConfig.providerId
39
+ const providerId = widget?.initialConfig && isProviderItem(widget?.initialConfig)
40
+ ? widget?.initialConfig.providerId
42
41
  : undefined;
43
42
  return (React.createElement(ScrollableWidgetContent, { itemId: itemId, providerId: providerId },
44
- React.createElement(ErrorBoundary, { FallbackComponent: WidgetFallback }, widget === null || widget === void 0 ? void 0 : widget.reactNode)));
43
+ React.createElement(ErrorBoundary, { FallbackComponent: WidgetFallback }, widget?.reactNode)));
45
44
  }
46
45
  /** @internal */
47
46
  export function useWidgetDef() {
48
47
  const tabId = React.useContext(TabIdContext);
49
48
  assert(!!tabId);
50
49
  const frontstage = useActiveFrontstageDef();
51
- const [widgetDef, setWidgetDef] = React.useState(() => frontstage === null || frontstage === void 0 ? void 0 : frontstage.findWidgetDef(tabId));
50
+ const [widgetDef, setWidgetDef] = React.useState(() => frontstage?.findWidgetDef(tabId));
52
51
  React.useEffect(() => {
53
52
  return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
54
53
  if (args.frontstageDef !== frontstage ||
@@ -61,7 +60,7 @@ export function useWidgetDef() {
61
60
  }, [frontstage, tabId]);
62
61
  React.useEffect(() => {
63
62
  return UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {
64
- setWidgetDef(frontstage === null || frontstage === void 0 ? void 0 : frontstage.findWidgetDef(tabId));
63
+ setWidgetDef(frontstage?.findWidgetDef(tabId));
65
64
  });
66
65
  }, [frontstage, tabId]);
67
66
  return widgetDef;
@@ -1 +1 @@
1
- {"version":3,"file":"Content.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Content.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,YAAY,GACb,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,SAAS,cAAc;IACrB,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CACxC,kCAAkC,CACnC,CAAC;IACF,OAAO,CACL,6BAAK,IAAI,EAAC,OAAO,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE;QAC/D,oBAAC,aAAa,IAAC,GAAG,EAAE,oBAAC,QAAQ,OAAG,EAAE,OAAO,EAAE,YAAY,GAAI,CACvD,CACP,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,aAAa;;IAC3B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,mCAAI,SAAS,CAAC;IACxD,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACpC,uBAAuB;QACvB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,kBAAkB,EAAE,CAAC;IAC/B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACvC,uBAAuB;QACvB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,qBAAqB,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrC,MAAM,UAAU,GACd,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,KAAI,cAAc,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAC;QAC5D,CAAC,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAC,UAAU;QAClC,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,CACL,oBAAC,uBAAuB,IAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU;QAC7D,oBAAC,aAAa,IAAC,iBAAiB,EAAE,cAAc,IAC7C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CACJ,CACQ,CAC3B,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,YAAY;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEhB,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAC;IAC5C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CACpD,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CACjC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,yBAAyB,CAAC,qCAAqC,CAAC,WAAW,CAChF,CAAC,IAAI,EAAE,EAAE;YACP,IACE,IAAI,CAAC,aAAa,KAAK,UAAU;gBACjC,CAAC,UAAU;gBACX,UAAU,CAAC,cAAc;gBACzB,UAAU,CAAC,oBAAoB;gBAE/B,OAAO;YACT,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,cAAc,CAAC,2BAA2B,CAAC,WAAW,CAAC,GAAG,EAAE;YACjE,YAAY,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\nimport * as React from \"react\";\nimport {\n ScrollableWidgetContent,\n TabIdContext,\n} from \"@itwin/appui-layout-react\";\nimport type { WidgetDef } from \"../widgets/WidgetDef\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { useTransientState } from \"./useTransientState\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { UiItemsManager } from \"../ui-items-provider/UiItemsManager\";\nimport { isProviderItem } from \"../ui-items-provider/isProviderItem\";\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { SvgError } from \"@itwin/itwinui-illustrations-react\";\nimport { NonIdealState } from \"@itwin/itwinui-react\";\nimport { UiFramework } from \"../UiFramework\";\n\nfunction WidgetFallback() {\n const errorMessage = UiFramework.translate(\n \"widget.errorMessage.unknownError\"\n );\n return (\n <div role=\"alert\" style={{ position: \"relative\", minHeight: 400 }}>\n <NonIdealState svg={<SvgError />} heading={errorMessage} />\n </div>\n );\n}\n\n/** @internal */\nexport function WidgetContent() {\n const widget = useWidgetDef();\n // istanbul ignore next\n const itemId = widget?.id ?? widget?.label ?? \"unknown\";\n const onSave = React.useCallback(() => {\n // istanbul ignore next\n widget?.saveTransientState();\n }, [widget]);\n const onRestore = React.useCallback(() => {\n // istanbul ignore next\n widget?.restoreTransientState();\n }, [widget]);\n useTransientState(onSave, onRestore);\n const providerId =\n widget?.initialConfig && isProviderItem(widget?.initialConfig)\n ? widget?.initialConfig.providerId\n : undefined;\n return (\n <ScrollableWidgetContent itemId={itemId} providerId={providerId}>\n <ErrorBoundary FallbackComponent={WidgetFallback}>\n {widget?.reactNode}\n </ErrorBoundary>\n </ScrollableWidgetContent>\n );\n}\n\n/** @internal */\nexport function useWidgetDef(): WidgetDef | undefined {\n const tabId = React.useContext(TabIdContext);\n assert(!!tabId);\n\n const frontstage = useActiveFrontstageDef();\n const [widgetDef, setWidgetDef] = React.useState(() =>\n frontstage?.findWidgetDef(tabId)\n );\n\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n (args) => {\n if (\n args.frontstageDef !== frontstage ||\n !frontstage ||\n frontstage.isStageClosing ||\n frontstage.isApplicationClosing\n )\n return;\n setWidgetDef(frontstage.findWidgetDef(tabId));\n }\n );\n }, [frontstage, tabId]);\n\n React.useEffect(() => {\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {\n setWidgetDef(frontstage?.findWidgetDef(tabId));\n });\n }, [frontstage, tabId]);\n\n return widgetDef;\n}\n"]}
1
+ {"version":3,"file":"Content.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Content.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\nimport * as React from \"react\";\nimport {\n ScrollableWidgetContent,\n TabIdContext,\n} from \"@itwin/appui-layout-react\";\nimport type { WidgetDef } from \"../widgets/WidgetDef\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { useTransientState } from \"./useTransientState\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { UiItemsManager } from \"../ui-items-provider/UiItemsManager\";\nimport { isProviderItem } from \"../ui-items-provider/isProviderItem\";\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { SvgError } from \"@itwin/itwinui-illustrations-react\";\nimport { NonIdealState } from \"@itwin/itwinui-react\";\nimport { UiFramework } from \"../UiFramework\";\n\nfunction WidgetFallback() {\n const errorMessage = UiFramework.translate(\n \"widget.errorMessage.unknownError\"\n );\n return (\n <div role=\"alert\" style={{ position: \"relative\", minHeight: 400 }}>\n <NonIdealState svg={<SvgError />} heading={errorMessage} />\n </div>\n );\n}\n\n/** @internal */\nexport function WidgetContent() {\n const widget = useWidgetDef();\n // istanbul ignore next\n const itemId = widget?.id ?? widget?.label ?? \"unknown\";\n const onSave = React.useCallback(() => {\n // istanbul ignore next\n widget?.saveTransientState();\n }, [widget]);\n const onRestore = React.useCallback(() => {\n // istanbul ignore next\n widget?.restoreTransientState();\n }, [widget]);\n useTransientState(onSave, onRestore);\n const providerId =\n widget?.initialConfig && isProviderItem(widget?.initialConfig)\n ? widget?.initialConfig.providerId\n : undefined;\n return (\n <ScrollableWidgetContent itemId={itemId} providerId={providerId}>\n <ErrorBoundary FallbackComponent={WidgetFallback}>\n {widget?.reactNode}\n </ErrorBoundary>\n </ScrollableWidgetContent>\n );\n}\n\n/** @internal */\nexport function useWidgetDef(): WidgetDef | undefined {\n const tabId = React.useContext(TabIdContext);\n assert(!!tabId);\n\n const frontstage = useActiveFrontstageDef();\n const [widgetDef, setWidgetDef] = React.useState(() =>\n frontstage?.findWidgetDef(tabId)\n );\n\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n (args) => {\n if (\n args.frontstageDef !== frontstage ||\n !frontstage ||\n frontstage.isStageClosing ||\n frontstage.isApplicationClosing\n )\n return;\n setWidgetDef(frontstage.findWidgetDef(tabId));\n }\n );\n }, [frontstage, tabId]);\n\n React.useEffect(() => {\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {\n setWidgetDef(frontstage?.findWidgetDef(tabId));\n });\n }, [frontstage, tabId]);\n\n return widgetDef;\n}\n"]}
@@ -52,7 +52,7 @@ const toolSettingsContent = React.createElement(ToolSettingsContent, null);
52
52
  const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
53
53
  /** @internal */
54
54
  export function useLayoutStore(frontstageDef) {
55
- const layoutStore = React.useMemo(() => createLayoutStore(frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.nineZoneState), [frontstageDef]);
55
+ const layoutStore = React.useMemo(() => createLayoutStore(frontstageDef?.nineZoneState), [frontstageDef]);
56
56
  React.useEffect(() => {
57
57
  return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
58
58
  if (args.frontstageDef !== frontstageDef)
@@ -152,10 +152,9 @@ export function useLabels() {
152
152
  }), []);
153
153
  }
154
154
  function toTabArgs(widget) {
155
- var _a;
156
155
  const label = getWidgetLabel(widget.label);
157
156
  const args = {
158
- allowedPanelTargets: (_a = widget.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((location) => toPanelSide(location)),
157
+ allowedPanelTargets: widget.allowedPanelTargets?.map((location) => toPanelSide(location)),
159
158
  hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
160
159
  canPopout: widget.canPopout,
161
160
  iconSpec: widget.iconSpec,
@@ -179,7 +178,7 @@ export function addWidgets(state, widgets, side, widgetId) {
179
178
  const activeWidget = visibleWidgets.find((widget) => widget.isActive);
180
179
  const minimized = false;
181
180
  // istanbul ignore else
182
- if ((activeWidget === null || activeWidget === void 0 ? void 0 : activeWidget.defaultState) !== WidgetState.Floating) {
181
+ if (activeWidget?.defaultState !== WidgetState.Floating) {
183
182
  state = addPanelWidget(state, side, widgetId, tabs, {
184
183
  activeTabId: activeWidget ? activeWidget.id : tabs[0],
185
184
  minimized,
@@ -238,7 +237,7 @@ export function appendWidgets(state, widgetDefs, location, section) {
238
237
  width: 300,
239
238
  ...tab.preferredFloatingWidgetSize,
240
239
  };
241
- const preferredPoint = preferredPosition !== null && preferredPosition !== void 0 ? preferredPosition : {
240
+ const preferredPoint = preferredPosition ?? {
242
241
  x: (state.size.width - size.width) / 2,
243
242
  y: (state.size.height - size.height) / 2,
244
243
  };
@@ -300,16 +299,23 @@ function processPopoutWidgets(state) {
300
299
  * @internal
301
300
  */
302
301
  export function addMissingWidgets(frontstageDef, initialState) {
303
- var _a, _b, _c, _d, _e, _f, _g, _h;
304
302
  let state = initialState;
305
- state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.Start);
306
- state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.End);
307
- state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.rightPanel) === null || _c === void 0 ? void 0 : _c.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.Start);
308
- state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.rightPanel) === null || _d === void 0 ? void 0 : _d.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.End);
309
- state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.topPanel) === null || _e === void 0 ? void 0 : _e.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.Start);
310
- state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.topPanel) === null || _f === void 0 ? void 0 : _f.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.End);
311
- state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.bottomPanel) === null || _g === void 0 ? void 0 : _g.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.Start);
312
- state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomPanel) === null || _h === void 0 ? void 0 : _h.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.End);
303
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.leftPanel?.getPanelSectionDef(StagePanelSection.Start)
304
+ .widgetDefs, state), StagePanelLocation.Left, StagePanelSection.Start);
305
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.leftPanel?.getPanelSectionDef(StagePanelSection.End)
306
+ .widgetDefs, state), StagePanelLocation.Left, StagePanelSection.End);
307
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.rightPanel?.getPanelSectionDef(StagePanelSection.Start)
308
+ .widgetDefs, state), StagePanelLocation.Right, StagePanelSection.Start);
309
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.rightPanel?.getPanelSectionDef(StagePanelSection.End)
310
+ .widgetDefs, state), StagePanelLocation.Right, StagePanelSection.End);
311
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.topPanel?.getPanelSectionDef(StagePanelSection.Start)
312
+ .widgetDefs, state), StagePanelLocation.Top, StagePanelSection.Start);
313
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.topPanel?.getPanelSectionDef(StagePanelSection.End)
314
+ .widgetDefs, state), StagePanelLocation.Top, StagePanelSection.End);
315
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.bottomPanel?.getPanelSectionDef(StagePanelSection.Start)
316
+ .widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.Start);
317
+ state = appendWidgets(state, determineNewWidgets(frontstageDef.bottomPanel?.getPanelSectionDef(StagePanelSection.End)
318
+ .widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.End);
313
319
  if (frontstageDef.toolSettings) {
314
320
  const newToolSettingsWidgets = determineNewWidgets([frontstageDef.toolSettings], state);
315
321
  for (const newToolSettingsWidget of newToolSettingsWidgets) {
@@ -338,8 +344,7 @@ function hideWidgets(state, frontstageDef) {
338
344
  * @internal
339
345
  */
340
346
  function removeMissingWidgets(frontstageDef, state) {
341
- var _a;
342
- const toolSettingsTabId = (_a = state.toolSettings) === null || _a === void 0 ? void 0 : _a.tabId;
347
+ const toolSettingsTabId = state.toolSettings?.tabId;
343
348
  for (const [, tab] of Object.entries(state.tabs)) {
344
349
  if (tab.id === toolSettingsTabId)
345
350
  continue;
@@ -385,8 +390,8 @@ export function getWidgetId(location, section) {
385
390
  /** @internal */
386
391
  export function getPanelSectionWidgets(frontstageDef, location, section) {
387
392
  const stagePanel = frontstageDef.getStagePanelDef(location);
388
- const panelSection = stagePanel === null || stagePanel === void 0 ? void 0 : stagePanel.getPanelSectionDef(section);
389
- return (panelSection === null || panelSection === void 0 ? void 0 : panelSection.widgetDefs) || [];
393
+ const panelSection = stagePanel?.getPanelSectionDef(section);
394
+ return panelSection?.widgetDefs || [];
390
395
  }
391
396
  /** @internal */
392
397
  export function addPanelWidgets(state, frontstageDef, location) {
@@ -411,14 +416,13 @@ export function initializePanel(state, frontstageDef, location) {
411
416
  state = addPanelWidgets(state, frontstageDef, location);
412
417
  const panelDef = frontstageDef.getStagePanelDef(location);
413
418
  state = produce(state, (draft) => {
414
- var _a, _b, _c, _d, _e, _f;
415
419
  const panel = draft.panels[side];
416
- panel.minSize = (_b = (_a = panelDef === null || panelDef === void 0 ? void 0 : panelDef.initialConfig) === null || _a === void 0 ? void 0 : _a.minSize) !== null && _b !== void 0 ? _b : panel.minSize;
417
- panel.pinned = (_c = panelDef === null || panelDef === void 0 ? void 0 : panelDef.pinned) !== null && _c !== void 0 ? _c : panel.pinned;
418
- panel.resizable = (_d = panelDef === null || panelDef === void 0 ? void 0 : panelDef.resizable) !== null && _d !== void 0 ? _d : panel.resizable;
419
- panel.maxSize = (_f = (_e = panelDef === null || panelDef === void 0 ? void 0 : panelDef.initialConfig) === null || _e === void 0 ? void 0 : _e.maxSize) !== null && _f !== void 0 ? _f : panel.maxSize;
420
+ panel.minSize = panelDef?.initialConfig?.minSize ?? panel.minSize;
421
+ panel.pinned = panelDef?.pinned ?? panel.pinned;
422
+ panel.resizable = panelDef?.resizable ?? panel.resizable;
423
+ panel.maxSize = panelDef?.initialConfig?.maxSize ?? panel.maxSize;
420
424
  });
421
- if ((panelDef === null || panelDef === void 0 ? void 0 : panelDef.size) !== undefined) {
425
+ if (panelDef?.size !== undefined) {
422
426
  state = NineZoneStateReducer(state, {
423
427
  type: "PANEL_SET_SIZE",
424
428
  side,
@@ -446,7 +450,6 @@ export function initializeNineZoneState(frontstageDef) {
446
450
  nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Top);
447
451
  nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Bottom);
448
452
  nineZone = produce(nineZone, (draft) => {
449
- var _a, _b, _c, _d;
450
453
  for (const [, panel] of Object.entries(draft.panels)) {
451
454
  const expanded = panel.widgets.find((widgetId) => draft.widgets[widgetId].minimized === false);
452
455
  const firstWidget = panel.widgets.length > 0 ? draft.widgets[panel.widgets[0]] : undefined;
@@ -455,10 +458,10 @@ export function initializeNineZoneState(frontstageDef) {
455
458
  firstWidget.minimized = false;
456
459
  }
457
460
  }
458
- draft.panels.left.collapsed = isPanelCollapsed((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.panelState);
459
- draft.panels.right.collapsed = isPanelCollapsed((_b = frontstageDef.rightPanel) === null || _b === void 0 ? void 0 : _b.panelState);
460
- draft.panels.top.collapsed = isPanelCollapsed((_c = frontstageDef.topPanel) === null || _c === void 0 ? void 0 : _c.panelState);
461
- draft.panels.bottom.collapsed = isPanelCollapsed((_d = frontstageDef.bottomPanel) === null || _d === void 0 ? void 0 : _d.panelState);
461
+ draft.panels.left.collapsed = isPanelCollapsed(frontstageDef.leftPanel?.panelState);
462
+ draft.panels.right.collapsed = isPanelCollapsed(frontstageDef.rightPanel?.panelState);
463
+ draft.panels.top.collapsed = isPanelCollapsed(frontstageDef.topPanel?.panelState);
464
+ draft.panels.bottom.collapsed = isPanelCollapsed(frontstageDef.bottomPanel?.panelState);
462
465
  });
463
466
  nineZone = addMissingWidgets(frontstageDef, nineZone);
464
467
  const toolSettingsWidgetDef = frontstageDef.toolSettings;
@@ -721,16 +724,15 @@ export function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel)
721
724
  const defaultLabel = React.useMemo(() => UiFramework.translate("widget.labels.toolSettings"), []);
722
725
  React.useEffect(() => {
723
726
  const updateLabel = () => {
724
- var _a, _b;
725
727
  const state = frontstageDef.nineZoneState;
726
728
  if (!state)
727
729
  return;
728
- const toolSettingsTabId = (_a = state.toolSettings) === null || _a === void 0 ? void 0 : _a.tabId;
730
+ const toolSettingsTabId = state.toolSettings?.tabId;
729
731
  if (!toolSettingsTabId)
730
732
  return;
731
733
  const toolId = UiFramework.frontstages.activeToolId;
732
734
  const label = useToolAsToolSettingsLabel
733
- ? ((_b = IModelApp.tools.find(toolId)) === null || _b === void 0 ? void 0 : _b.flyover) || defaultLabel
735
+ ? IModelApp.tools.find(toolId)?.flyover || defaultLabel
734
736
  : defaultLabel;
735
737
  frontstageDef.dispatch({
736
738
  type: "WIDGET_TAB_SET_LABEL",