@itwin/appui-react 4.13.3 → 4.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1192) hide show
  1. package/CHANGELOG.md +8 -3
  2. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  3. package/lib/cjs/appui-react/UiFramework.js +17 -30
  4. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  5. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.d.ts.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js +0 -1
  7. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  11. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  13. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +0 -6
  14. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  15. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.d.ts.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js +0 -1
  17. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  18. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  19. package/lib/cjs/appui-react/accudraw/Calculator.js +0 -2
  20. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  21. package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js +0 -1
  23. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  24. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  25. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +0 -2
  26. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  27. package/lib/cjs/appui-react/accudraw/MenuButton.d.ts.map +1 -1
  28. package/lib/cjs/appui-react/accudraw/MenuButton.js +0 -4
  29. package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
  30. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.d.ts.map +1 -1
  31. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js +0 -1
  32. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  33. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  34. package/lib/cjs/appui-react/backstage/BackstageComposer.js +0 -1
  35. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  36. package/lib/cjs/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -1
  37. package/lib/cjs/appui-react/backstage/BackstageItemsManager.js +2 -10
  38. package/lib/cjs/appui-react/backstage/BackstageItemsManager.js.map +1 -1
  39. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  40. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js +1 -2
  41. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  42. package/lib/cjs/appui-react/childwindow/CopyStyles.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/childwindow/CopyStyles.js +0 -2
  44. package/lib/cjs/appui-react/childwindow/CopyStyles.js.map +1 -1
  45. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  46. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +2 -6
  47. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  48. package/lib/cjs/appui-react/configurableui/ActivityTracker.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/configurableui/ActivityTracker.js +0 -2
  50. package/lib/cjs/appui-react/configurableui/ActivityTracker.js.map +1 -1
  51. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.scss +0 -1
  52. package/lib/cjs/appui-react/configurableui/TimeTracker.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/configurableui/TimeTracker.js +0 -2
  54. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  55. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/configurableui/state.js +2 -6
  57. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  58. package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
  59. package/lib/cjs/appui-react/content/ContentControl.js +0 -1
  60. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  61. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  62. package/lib/cjs/appui-react/content/ContentLayout.js +0 -9
  63. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  64. package/lib/cjs/appui-react/content/DefaultViewOverlay.d.ts.map +1 -1
  65. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +0 -1
  66. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  67. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/content/IModelViewport.js +0 -2
  69. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  70. package/lib/cjs/appui-react/content/InternalContentLayoutManager.d.ts.map +1 -1
  71. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +0 -1
  72. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  73. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  74. package/lib/cjs/appui-react/content/InternalContentViewManager.js +1 -12
  75. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  76. package/lib/cjs/appui-react/content/StageContentLayout.d.ts.map +1 -1
  77. package/lib/cjs/appui-react/content/StageContentLayout.js +0 -2
  78. package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -1
  79. package/lib/cjs/appui-react/content/ViewStateHelper.d.ts.map +1 -1
  80. package/lib/cjs/appui-react/content/ViewStateHelper.js +0 -1
  81. package/lib/cjs/appui-react/content/ViewStateHelper.js.map +1 -1
  82. package/lib/cjs/appui-react/content/ViewportContentControl.d.ts.map +1 -1
  83. package/lib/cjs/appui-react/content/ViewportContentControl.js +0 -5
  84. package/lib/cjs/appui-react/content/ViewportContentControl.js.map +1 -1
  85. package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts.map +1 -1
  86. package/lib/cjs/appui-react/content/split-pane/Resizer.js +0 -2
  87. package/lib/cjs/appui-react/content/split-pane/Resizer.js.map +1 -1
  88. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts.map +1 -1
  89. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +0 -22
  90. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  91. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  92. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +0 -3
  93. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  94. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  95. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +0 -5
  96. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  97. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  98. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +0 -1
  99. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  100. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  101. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +0 -1
  102. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  103. package/lib/cjs/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  104. package/lib/cjs/appui-react/dialog/ContentDialog.js +0 -4
  105. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  106. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  107. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +0 -2
  108. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  109. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  110. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +0 -4
  111. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  112. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  113. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +0 -3
  114. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  115. package/lib/cjs/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  116. package/lib/cjs/appui-react/dialog/StandardMessageBox.js +0 -2
  117. package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
  118. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  119. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +0 -1
  120. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  121. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/feedback/ElementTooltip.js +0 -8
  123. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  124. package/lib/cjs/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
  125. package/lib/cjs/appui-react/feedback/ValidationTextbox.js +1 -5
  126. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  127. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +1 -1
  128. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  129. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +2 -24
  130. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  131. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  132. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +0 -12
  133. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  134. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +0 -2
  136. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  137. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  138. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +0 -1
  139. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  140. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  141. package/lib/cjs/appui-react/hooks/useActiveViewport.js +0 -2
  142. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  143. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.d.ts.map +1 -1
  144. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +0 -2
  145. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  146. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.d.ts.map +1 -1
  147. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js +0 -1
  148. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  149. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +0 -2
  151. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  152. package/lib/cjs/appui-react/hooks/useSolarDataProvider.d.ts.map +1 -1
  153. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +0 -2
  154. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  155. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  156. package/lib/cjs/appui-react/hooks/useUiVisibility.js +0 -1
  157. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  158. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  159. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js +0 -3
  160. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  161. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +0 -2
  163. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  164. package/lib/cjs/appui-react/keyins/Keyins.d.ts.map +1 -1
  165. package/lib/cjs/appui-react/keyins/Keyins.js +0 -3
  166. package/lib/cjs/appui-react/keyins/Keyins.js.map +1 -1
  167. package/lib/cjs/appui-react/layout/base/DragManager.d.ts.map +1 -1
  168. package/lib/cjs/appui-react/layout/base/DragManager.js +0 -2
  169. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  170. package/lib/cjs/appui-react/layout/base/NineZone.d.ts.map +1 -1
  171. package/lib/cjs/appui-react/layout/base/NineZone.js +0 -1
  172. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  173. package/lib/cjs/appui-react/layout/footer/snap-mode/Panel.scss +0 -2
  174. package/lib/cjs/appui-react/layout/footer/tool-assistance/Dialog.scss +1 -2
  175. package/lib/cjs/appui-react/layout/footer/tool-assistance/Instruction.scss +0 -2
  176. package/lib/cjs/appui-react/layout/outline/SectionOutline.js +0 -2
  177. package/lib/cjs/appui-react/layout/outline/SectionOutline.js.map +1 -1
  178. package/lib/cjs/appui-react/layout/outline/TabOutline.js +0 -1
  179. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  180. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +0 -1
  181. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  182. package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts +7 -1
  183. package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
  184. package/lib/cjs/appui-react/layout/state/NineZoneAction.js.map +1 -1
  185. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
  186. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +6 -8
  187. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  188. package/lib/cjs/appui-react/layout/state/WidgetLocation.d.ts.map +1 -1
  189. package/lib/cjs/appui-react/layout/state/WidgetLocation.js +0 -1
  190. package/lib/cjs/appui-react/layout/state/WidgetLocation.js.map +1 -1
  191. package/lib/cjs/appui-react/layout/target/MergeTarget.d.ts.map +1 -1
  192. package/lib/cjs/appui-react/layout/target/MergeTarget.js +1 -6
  193. package/lib/cjs/appui-react/layout/target/MergeTarget.js.map +1 -1
  194. package/lib/cjs/appui-react/layout/target/PanelTarget.d.ts.map +1 -1
  195. package/lib/cjs/appui-react/layout/target/PanelTarget.js +1 -8
  196. package/lib/cjs/appui-react/layout/target/PanelTarget.js.map +1 -1
  197. package/lib/cjs/appui-react/layout/target/SectionTarget.d.ts.map +1 -1
  198. package/lib/cjs/appui-react/layout/target/SectionTarget.js +1 -5
  199. package/lib/cjs/appui-react/layout/target/SectionTarget.js.map +1 -1
  200. package/lib/cjs/appui-react/layout/target/TabTarget.d.ts.map +1 -1
  201. package/lib/cjs/appui-react/layout/target/TabTarget.js +1 -6
  202. package/lib/cjs/appui-react/layout/target/TabTarget.js.map +1 -1
  203. package/lib/cjs/appui-react/layout/target/TitleBarTarget.d.ts.map +1 -1
  204. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -4
  205. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  206. package/lib/cjs/appui-react/layout/target/useAllowedSideTarget.d.ts.map +1 -1
  207. package/lib/cjs/appui-react/layout/target/useAllowedSideTarget.js +0 -1
  208. package/lib/cjs/appui-react/layout/target/useAllowedSideTarget.js.map +1 -1
  209. package/lib/cjs/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  210. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +0 -1
  211. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  212. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts +1 -1
  213. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  214. package/lib/cjs/appui-react/layout/widget/Buttons.js +10 -0
  215. package/lib/cjs/appui-react/layout/widget/Buttons.js.map +1 -1
  216. package/lib/cjs/appui-react/layout/widget/Dock.js +2 -2
  217. package/lib/cjs/appui-react/layout/widget/Dock.js.map +1 -1
  218. package/lib/cjs/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  219. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +0 -1
  220. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  221. package/lib/cjs/appui-react/layout/widget/MenuTab.d.ts.map +1 -1
  222. package/lib/cjs/appui-react/layout/widget/MenuTab.js +1 -3
  223. package/lib/cjs/appui-react/layout/widget/MenuTab.js.map +1 -1
  224. package/lib/cjs/appui-react/layout/widget/NavigationArea.scss +0 -1
  225. package/lib/cjs/appui-react/layout/widget/PinToggle.js +3 -3
  226. package/lib/cjs/appui-react/layout/widget/PinToggle.js.map +1 -1
  227. package/lib/cjs/appui-react/layout/widget/PopoutToggle.js +2 -2
  228. package/lib/cjs/appui-react/layout/widget/PopoutToggle.js.map +1 -1
  229. package/lib/cjs/appui-react/layout/widget/SendBack.js +2 -2
  230. package/lib/cjs/appui-react/layout/widget/SendBack.js.map +1 -1
  231. package/lib/cjs/appui-react/layout/widget/Tab.d.ts.map +1 -1
  232. package/lib/cjs/appui-react/layout/widget/Tab.js +1 -5
  233. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  234. package/lib/cjs/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  235. package/lib/cjs/appui-react/layout/widget/TabBar.js +0 -1
  236. package/lib/cjs/appui-react/layout/widget/TabBar.js.map +1 -1
  237. package/lib/cjs/appui-react/layout/widget/Widget.d.ts.map +1 -1
  238. package/lib/cjs/appui-react/layout/widget/Widget.js +0 -4
  239. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  240. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  241. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +0 -1
  242. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  243. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.d.ts.map +1 -1
  244. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +0 -2
  245. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  246. package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts.map +1 -1
  247. package/lib/cjs/appui-react/messages/AppNotificationManager.js +1 -4
  248. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  249. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  250. package/lib/cjs/appui-react/messages/Pointer.js +0 -4
  251. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  252. package/lib/cjs/appui-react/messages/StatusMessageManager.d.ts.map +1 -1
  253. package/lib/cjs/appui-react/messages/StatusMessageManager.js +0 -1
  254. package/lib/cjs/appui-react/messages/StatusMessageManager.js.map +1 -1
  255. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  256. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.d.ts.map +1 -1
  257. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js +0 -1
  258. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  259. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.d.ts.map +1 -1
  260. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js +0 -1
  261. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  262. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  263. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +5 -21
  264. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  265. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  266. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +0 -2
  267. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  268. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  269. package/lib/cjs/appui-react/pickers/ListPicker.js +2 -9
  270. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  271. package/lib/cjs/appui-react/pickers/ListPicker.scss +0 -1
  272. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  273. package/lib/cjs/appui-react/pickers/ViewSelector.js +0 -8
  274. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  275. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  276. package/lib/cjs/appui-react/popup/CardPopup.js +0 -3
  277. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  278. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  279. package/lib/cjs/appui-react/popup/HTMLElementPopup.js +0 -1
  280. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  281. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  282. package/lib/cjs/appui-react/popup/InputEditorPopup.js +0 -2
  283. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  284. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  285. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +0 -20
  286. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  287. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  288. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +0 -2
  289. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  290. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  291. package/lib/cjs/appui-react/popup/PopupManager.js +1 -5
  292. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  293. package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
  294. package/lib/cjs/appui-react/popup/PositionPopup.js +0 -2
  295. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  296. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  297. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +0 -2
  298. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  299. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  300. package/lib/cjs/appui-react/popup/ToolbarPopup.js +0 -2
  301. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  302. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +12 -7
  303. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  304. package/lib/cjs/appui-react/preview/PreviewFeatures.js +1 -0
  305. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  306. package/lib/cjs/appui-react/preview/control-widget-visibility/AddWidgetButton.d.ts +15 -0
  307. package/lib/cjs/appui-react/preview/control-widget-visibility/AddWidgetButton.d.ts.map +1 -0
  308. package/lib/cjs/appui-react/preview/control-widget-visibility/AddWidgetButton.js +89 -0
  309. package/lib/cjs/appui-react/preview/control-widget-visibility/AddWidgetButton.js.map +1 -0
  310. package/lib/cjs/appui-react/preview/control-widget-visibility/CloseWidgetButton.d.ts +9 -0
  311. package/lib/cjs/appui-react/preview/control-widget-visibility/CloseWidgetButton.d.ts.map +1 -0
  312. package/lib/cjs/appui-react/preview/control-widget-visibility/CloseWidgetButton.js +39 -0
  313. package/lib/cjs/appui-react/preview/control-widget-visibility/CloseWidgetButton.js.map +1 -0
  314. package/lib/cjs/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts +10 -0
  315. package/lib/cjs/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts.map +1 -0
  316. package/lib/cjs/appui-react/preview/control-widget-visibility/NavigationWidget.js +54 -0
  317. package/lib/cjs/appui-react/preview/control-widget-visibility/NavigationWidget.js.map +1 -0
  318. package/lib/cjs/appui-react/{layout/base/Ellipsis.scss → preview/control-widget-visibility/NavigationWidget.scss} +10 -13
  319. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +4 -4
  320. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -1
  321. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +3 -3
  322. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  323. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  324. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.d.ts.map +1 -1
  325. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js +5 -2
  326. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  327. package/lib/cjs/appui-react/redux/ReducerRegistry.d.ts.map +1 -1
  328. package/lib/cjs/appui-react/redux/ReducerRegistry.js +0 -2
  329. package/lib/cjs/appui-react/redux/ReducerRegistry.js.map +1 -1
  330. package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
  331. package/lib/cjs/appui-react/redux/SessionState.js +5 -20
  332. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  333. package/lib/cjs/appui-react/redux/StateManager.d.ts.map +1 -1
  334. package/lib/cjs/appui-react/redux/StateManager.js +0 -1
  335. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  336. package/lib/cjs/appui-react/redux/connectIModel.d.ts.map +1 -1
  337. package/lib/cjs/appui-react/redux/connectIModel.js +0 -5
  338. package/lib/cjs/appui-react/redux/connectIModel.js.map +1 -1
  339. package/lib/cjs/appui-react/redux/redux-ts.d.ts.map +1 -1
  340. package/lib/cjs/appui-react/redux/redux-ts.js +1 -3
  341. package/lib/cjs/appui-react/redux/redux-ts.js.map +1 -1
  342. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.d.ts.map +1 -1
  343. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js +0 -3
  344. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  345. package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  346. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +0 -7
  347. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  348. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  349. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +0 -7
  350. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  351. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  352. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +0 -3
  353. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  354. package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  355. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +0 -1
  356. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  357. package/lib/cjs/appui-react/shared/MenuItem.d.ts.map +1 -1
  358. package/lib/cjs/appui-react/shared/MenuItem.js +0 -4
  359. package/lib/cjs/appui-react/shared/MenuItem.js.map +1 -1
  360. package/lib/cjs/appui-react/statusbar/Field.d.ts +2 -0
  361. package/lib/cjs/appui-react/statusbar/Field.d.ts.map +1 -1
  362. package/lib/cjs/appui-react/statusbar/Field.js +4 -2
  363. package/lib/cjs/appui-react/statusbar/Field.js.map +1 -1
  364. package/lib/cjs/appui-react/statusbar/Field.scss +4 -93
  365. package/lib/cjs/appui-react/statusbar/Indicator.d.ts +2 -0
  366. package/lib/cjs/appui-react/statusbar/Indicator.d.ts.map +1 -1
  367. package/lib/cjs/appui-react/statusbar/Indicator.js +8 -3
  368. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  369. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts +2 -0
  370. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
  371. package/lib/cjs/appui-react/statusbar/LabelIndicator.js +8 -4
  372. package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -1
  373. package/lib/cjs/appui-react/statusbar/LabelIndicator.scss +1 -26
  374. package/lib/cjs/appui-react/statusbar/Overflow.d.ts +4 -4
  375. package/lib/cjs/appui-react/statusbar/Overflow.d.ts.map +1 -1
  376. package/lib/cjs/appui-react/statusbar/Overflow.js +12 -12
  377. package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
  378. package/lib/cjs/appui-react/statusbar/Overflow.scss +6 -19
  379. package/lib/cjs/appui-react/statusbar/Separator.js +1 -1
  380. package/lib/cjs/appui-react/statusbar/Separator.js.map +1 -1
  381. package/lib/cjs/appui-react/statusbar/Separator.scss +3 -4
  382. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +4 -0
  383. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  384. package/lib/cjs/appui-react/statusbar/StatusBar.js +6 -0
  385. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  386. package/lib/cjs/appui-react/statusbar/StatusBar.scss +29 -0
  387. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  388. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +44 -27
  389. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  390. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -1
  391. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +2 -9
  392. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  393. package/lib/cjs/appui-react/statusbar/dialog/Button.js +2 -2
  394. package/lib/cjs/appui-react/statusbar/dialog/Button.js.map +1 -1
  395. package/lib/cjs/appui-react/statusbar/popup/ExpandIndicator.d.ts +8 -0
  396. package/lib/cjs/appui-react/statusbar/popup/ExpandIndicator.d.ts.map +1 -0
  397. package/lib/cjs/appui-react/statusbar/popup/ExpandIndicator.js +18 -0
  398. package/lib/cjs/appui-react/statusbar/popup/ExpandIndicator.js.map +1 -0
  399. package/lib/cjs/appui-react/{layout/footer/dialog/Button.scss → statusbar/popup/ExpandIndicator.scss} +10 -16
  400. package/lib/cjs/appui-react/statusbar/popup/Popup.d.ts +1 -0
  401. package/lib/cjs/appui-react/statusbar/popup/Popup.d.ts.map +1 -1
  402. package/lib/cjs/appui-react/statusbar/popup/Popup.js +1 -0
  403. package/lib/cjs/appui-react/statusbar/popup/Popup.js.map +1 -1
  404. package/lib/cjs/appui-react/statusbar/popup/StatusBarPopover.d.ts +25 -0
  405. package/lib/cjs/appui-react/statusbar/popup/StatusBarPopover.d.ts.map +1 -0
  406. package/lib/cjs/appui-react/statusbar/popup/StatusBarPopover.js +34 -0
  407. package/lib/cjs/appui-react/statusbar/popup/StatusBarPopover.js.map +1 -0
  408. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  409. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +0 -2
  410. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  411. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  412. package/lib/cjs/appui-react/statusfields/SectionsField.js +13 -22
  413. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  414. package/lib/cjs/appui-react/statusfields/SelectionCount.d.ts.map +1 -1
  415. package/lib/cjs/appui-react/statusfields/SelectionCount.js +1 -6
  416. package/lib/cjs/appui-react/statusfields/SelectionCount.js.map +1 -1
  417. package/lib/cjs/appui-react/statusfields/SelectionCount.scss +4 -2
  418. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  419. package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -8
  420. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  421. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +7 -32
  422. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  423. package/lib/cjs/appui-react/statusfields/SnapMode.js +6 -5
  424. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  425. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  426. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +6 -5
  427. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  428. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -1
  429. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js +6 -5
  430. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -1
  431. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.scss +0 -1
  432. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.scss +0 -2
  433. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  434. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -9
  435. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  436. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -5
  437. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  438. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +16 -48
  439. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  440. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -27
  441. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  442. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js +0 -11
  443. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  444. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  445. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +0 -6
  446. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  447. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  448. package/lib/cjs/appui-react/theme/ThemeManager.js +0 -1
  449. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  450. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.d.ts.map +1 -1
  451. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js +0 -6
  452. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  453. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js +0 -1
  455. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  456. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.d.ts.map +1 -1
  457. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +0 -1
  458. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  459. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  460. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +3 -8
  461. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  462. package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  463. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +0 -1
  464. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  465. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -1
  466. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js +4 -18
  467. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  468. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  469. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +0 -1
  470. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  471. package/lib/cjs/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  472. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js +0 -2
  473. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  474. package/lib/cjs/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  475. package/lib/cjs/appui-react/tools/OpenSettingsTool.js +0 -2
  476. package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
  477. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  478. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +0 -2
  479. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  480. package/lib/cjs/appui-react/tools/ToolSettingsTools.d.ts.map +1 -1
  481. package/lib/cjs/appui-react/tools/ToolSettingsTools.js +0 -1
  482. package/lib/cjs/appui-react/tools/ToolSettingsTools.js.map +1 -1
  483. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts.map +1 -1
  484. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +0 -2
  485. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  486. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  487. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +0 -8
  488. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  489. package/lib/cjs/appui-react/toolsettings/ToolInformation.d.ts.map +1 -1
  490. package/lib/cjs/appui-react/toolsettings/ToolInformation.js +0 -1
  491. package/lib/cjs/appui-react/toolsettings/ToolInformation.js.map +1 -1
  492. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  493. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +1 -3
  494. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  495. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +1 -1
  496. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  497. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  498. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +0 -1
  499. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  500. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  501. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +0 -1
  502. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  503. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  504. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +0 -12
  505. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  506. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  507. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +3 -10
  508. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  509. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  510. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +0 -1
  511. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  512. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  513. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +0 -1
  514. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  515. package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
  516. package/lib/cjs/appui-react/utils/PropsHelper.js +0 -2
  517. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  518. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.d.ts.map +1 -1
  519. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js +0 -6
  520. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  521. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  522. package/lib/cjs/appui-react/widget-panels/Content.js +7 -16
  523. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  524. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +1 -4
  525. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  526. package/lib/cjs/appui-react/widget-panels/Frontstage.js +3 -79
  527. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  528. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.d.ts.map +1 -1
  529. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +1 -3
  530. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  531. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  532. package/lib/cjs/appui-react/widget-panels/StatusBar.js +3 -1
  533. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  534. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  535. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  536. package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  537. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -1
  538. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  539. package/lib/cjs/appui-react/widget-panels/useSaveFrontstageSettings.d.ts +8 -0
  540. package/lib/cjs/appui-react/widget-panels/useSaveFrontstageSettings.d.ts.map +1 -0
  541. package/lib/cjs/appui-react/widget-panels/useSaveFrontstageSettings.js +55 -0
  542. package/lib/cjs/appui-react/widget-panels/useSaveFrontstageSettings.js.map +1 -0
  543. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  544. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +0 -1
  545. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  546. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  547. package/lib/cjs/appui-react/widgets/BasicToolWidget.js +0 -1
  548. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  549. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  550. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +0 -1
  551. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  552. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  553. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +5 -19
  554. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  555. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  556. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +0 -1
  557. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  558. package/lib/cjs/appui-react/widgets/Widget.d.ts +3 -1
  559. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
  560. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  561. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  562. package/lib/cjs/appui-react/widgets/WidgetDef.js +0 -5
  563. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  564. package/lib/cjs/appui-react.d.ts +1 -0
  565. package/lib/cjs/appui-react.d.ts.map +1 -1
  566. package/lib/cjs/appui-react.js +1 -0
  567. package/lib/cjs/appui-react.js.map +1 -1
  568. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  569. package/lib/esm/appui-react/UiFramework.js +17 -30
  570. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  571. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.d.ts.map +1 -1
  572. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js +0 -1
  573. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  574. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  575. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +1 -1
  576. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  577. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts +1 -1
  578. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  579. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +0 -6
  580. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  581. package/lib/esm/appui-react/accudraw/AccuDrawWidget.d.ts.map +1 -1
  582. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js +0 -1
  583. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  584. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  585. package/lib/esm/appui-react/accudraw/Calculator.js +0 -2
  586. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  587. package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  588. package/lib/esm/appui-react/accudraw/CalculatorPopup.js +0 -1
  589. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  590. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  591. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +0 -2
  592. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  593. package/lib/esm/appui-react/accudraw/MenuButton.d.ts.map +1 -1
  594. package/lib/esm/appui-react/accudraw/MenuButton.js +0 -4
  595. package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
  596. package/lib/esm/appui-react/accudraw/MenuButtonPopup.d.ts.map +1 -1
  597. package/lib/esm/appui-react/accudraw/MenuButtonPopup.js +0 -1
  598. package/lib/esm/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  599. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  600. package/lib/esm/appui-react/backstage/BackstageComposer.js +0 -1
  601. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  602. package/lib/esm/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -1
  603. package/lib/esm/appui-react/backstage/BackstageItemsManager.js +2 -10
  604. package/lib/esm/appui-react/backstage/BackstageItemsManager.js.map +1 -1
  605. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  606. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js +1 -2
  607. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  608. package/lib/esm/appui-react/childwindow/CopyStyles.d.ts.map +1 -1
  609. package/lib/esm/appui-react/childwindow/CopyStyles.js +0 -2
  610. package/lib/esm/appui-react/childwindow/CopyStyles.js.map +1 -1
  611. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  612. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +2 -6
  613. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  614. package/lib/esm/appui-react/configurableui/ActivityTracker.d.ts.map +1 -1
  615. package/lib/esm/appui-react/configurableui/ActivityTracker.js +0 -2
  616. package/lib/esm/appui-react/configurableui/ActivityTracker.js.map +1 -1
  617. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.scss +0 -1
  618. package/lib/esm/appui-react/configurableui/TimeTracker.d.ts.map +1 -1
  619. package/lib/esm/appui-react/configurableui/TimeTracker.js +0 -2
  620. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  621. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  622. package/lib/esm/appui-react/configurableui/state.js +2 -6
  623. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  624. package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
  625. package/lib/esm/appui-react/content/ContentControl.js +0 -1
  626. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  627. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  628. package/lib/esm/appui-react/content/ContentLayout.js +0 -9
  629. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  630. package/lib/esm/appui-react/content/DefaultViewOverlay.d.ts.map +1 -1
  631. package/lib/esm/appui-react/content/DefaultViewOverlay.js +0 -1
  632. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  633. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  634. package/lib/esm/appui-react/content/IModelViewport.js +0 -2
  635. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  636. package/lib/esm/appui-react/content/InternalContentLayoutManager.d.ts.map +1 -1
  637. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +0 -1
  638. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  639. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  640. package/lib/esm/appui-react/content/InternalContentViewManager.js +1 -12
  641. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  642. package/lib/esm/appui-react/content/StageContentLayout.d.ts.map +1 -1
  643. package/lib/esm/appui-react/content/StageContentLayout.js +0 -2
  644. package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -1
  645. package/lib/esm/appui-react/content/ViewStateHelper.d.ts.map +1 -1
  646. package/lib/esm/appui-react/content/ViewStateHelper.js +0 -1
  647. package/lib/esm/appui-react/content/ViewStateHelper.js.map +1 -1
  648. package/lib/esm/appui-react/content/ViewportContentControl.d.ts.map +1 -1
  649. package/lib/esm/appui-react/content/ViewportContentControl.js +0 -5
  650. package/lib/esm/appui-react/content/ViewportContentControl.js.map +1 -1
  651. package/lib/esm/appui-react/content/split-pane/Resizer.d.ts.map +1 -1
  652. package/lib/esm/appui-react/content/split-pane/Resizer.js +0 -2
  653. package/lib/esm/appui-react/content/split-pane/Resizer.js.map +1 -1
  654. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts.map +1 -1
  655. package/lib/esm/appui-react/content/split-pane/SplitPane.js +0 -22
  656. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  657. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  658. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +0 -3
  659. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  660. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  661. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +0 -5
  662. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  663. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  664. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +0 -1
  665. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  666. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  667. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +0 -1
  668. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  669. package/lib/esm/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  670. package/lib/esm/appui-react/dialog/ContentDialog.js +0 -4
  671. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  672. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  673. package/lib/esm/appui-react/dialog/DialogManagerBase.js +0 -2
  674. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  675. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  676. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +0 -4
  677. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  678. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  679. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +0 -3
  680. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  681. package/lib/esm/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
  682. package/lib/esm/appui-react/dialog/StandardMessageBox.js +0 -2
  683. package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
  684. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  685. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +0 -1
  686. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  687. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  688. package/lib/esm/appui-react/feedback/ElementTooltip.js +0 -8
  689. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  690. package/lib/esm/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
  691. package/lib/esm/appui-react/feedback/ValidationTextbox.js +1 -5
  692. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  693. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +1 -1
  694. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  695. package/lib/esm/appui-react/frontstage/FrontstageDef.js +2 -24
  696. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  697. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  698. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +0 -12
  699. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  700. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  701. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +0 -2
  702. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  703. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  704. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +0 -1
  705. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  706. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  707. package/lib/esm/appui-react/hooks/useActiveViewport.js +0 -2
  708. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  709. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.d.ts.map +1 -1
  710. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +0 -2
  711. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  712. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.d.ts.map +1 -1
  713. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js +0 -1
  714. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  715. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.d.ts.map +1 -1
  716. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +0 -2
  717. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  718. package/lib/esm/appui-react/hooks/useSolarDataProvider.d.ts.map +1 -1
  719. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +0 -2
  720. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  721. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  722. package/lib/esm/appui-react/hooks/useUiVisibility.js +0 -1
  723. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  724. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  725. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js +0 -3
  726. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  727. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  728. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +0 -2
  729. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  730. package/lib/esm/appui-react/keyins/Keyins.d.ts.map +1 -1
  731. package/lib/esm/appui-react/keyins/Keyins.js +0 -3
  732. package/lib/esm/appui-react/keyins/Keyins.js.map +1 -1
  733. package/lib/esm/appui-react/layout/base/DragManager.d.ts.map +1 -1
  734. package/lib/esm/appui-react/layout/base/DragManager.js +0 -2
  735. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  736. package/lib/esm/appui-react/layout/base/NineZone.d.ts.map +1 -1
  737. package/lib/esm/appui-react/layout/base/NineZone.js +0 -1
  738. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  739. package/lib/esm/appui-react/layout/footer/snap-mode/Panel.scss +0 -2
  740. package/lib/esm/appui-react/layout/footer/tool-assistance/Dialog.scss +1 -2
  741. package/lib/esm/appui-react/layout/footer/tool-assistance/Instruction.scss +0 -2
  742. package/lib/esm/appui-react/layout/outline/SectionOutline.js +0 -2
  743. package/lib/esm/appui-react/layout/outline/SectionOutline.js.map +1 -1
  744. package/lib/esm/appui-react/layout/outline/TabOutline.js +0 -1
  745. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  746. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +0 -1
  747. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  748. package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts +7 -1
  749. package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
  750. package/lib/esm/appui-react/layout/state/NineZoneAction.js.map +1 -1
  751. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
  752. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +6 -8
  753. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  754. package/lib/esm/appui-react/layout/state/WidgetLocation.d.ts.map +1 -1
  755. package/lib/esm/appui-react/layout/state/WidgetLocation.js +0 -1
  756. package/lib/esm/appui-react/layout/state/WidgetLocation.js.map +1 -1
  757. package/lib/esm/appui-react/layout/target/MergeTarget.d.ts.map +1 -1
  758. package/lib/esm/appui-react/layout/target/MergeTarget.js +1 -6
  759. package/lib/esm/appui-react/layout/target/MergeTarget.js.map +1 -1
  760. package/lib/esm/appui-react/layout/target/PanelTarget.d.ts.map +1 -1
  761. package/lib/esm/appui-react/layout/target/PanelTarget.js +1 -8
  762. package/lib/esm/appui-react/layout/target/PanelTarget.js.map +1 -1
  763. package/lib/esm/appui-react/layout/target/SectionTarget.d.ts.map +1 -1
  764. package/lib/esm/appui-react/layout/target/SectionTarget.js +1 -5
  765. package/lib/esm/appui-react/layout/target/SectionTarget.js.map +1 -1
  766. package/lib/esm/appui-react/layout/target/TabTarget.d.ts.map +1 -1
  767. package/lib/esm/appui-react/layout/target/TabTarget.js +1 -6
  768. package/lib/esm/appui-react/layout/target/TabTarget.js.map +1 -1
  769. package/lib/esm/appui-react/layout/target/TitleBarTarget.d.ts.map +1 -1
  770. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -4
  771. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  772. package/lib/esm/appui-react/layout/target/useAllowedSideTarget.d.ts.map +1 -1
  773. package/lib/esm/appui-react/layout/target/useAllowedSideTarget.js +0 -1
  774. package/lib/esm/appui-react/layout/target/useAllowedSideTarget.js.map +1 -1
  775. package/lib/esm/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  776. package/lib/esm/appui-react/layout/tool-settings/Docked.js +0 -1
  777. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  778. package/lib/esm/appui-react/layout/widget/Buttons.d.ts +1 -1
  779. package/lib/esm/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  780. package/lib/esm/appui-react/layout/widget/Buttons.js +10 -0
  781. package/lib/esm/appui-react/layout/widget/Buttons.js.map +1 -1
  782. package/lib/esm/appui-react/layout/widget/Dock.js +2 -2
  783. package/lib/esm/appui-react/layout/widget/Dock.js.map +1 -1
  784. package/lib/esm/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  785. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +0 -1
  786. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  787. package/lib/esm/appui-react/layout/widget/MenuTab.d.ts.map +1 -1
  788. package/lib/esm/appui-react/layout/widget/MenuTab.js +1 -3
  789. package/lib/esm/appui-react/layout/widget/MenuTab.js.map +1 -1
  790. package/lib/esm/appui-react/layout/widget/NavigationArea.scss +0 -1
  791. package/lib/esm/appui-react/layout/widget/PinToggle.js +3 -3
  792. package/lib/esm/appui-react/layout/widget/PinToggle.js.map +1 -1
  793. package/lib/esm/appui-react/layout/widget/PopoutToggle.js +2 -2
  794. package/lib/esm/appui-react/layout/widget/PopoutToggle.js.map +1 -1
  795. package/lib/esm/appui-react/layout/widget/SendBack.js +2 -2
  796. package/lib/esm/appui-react/layout/widget/SendBack.js.map +1 -1
  797. package/lib/esm/appui-react/layout/widget/Tab.d.ts.map +1 -1
  798. package/lib/esm/appui-react/layout/widget/Tab.js +1 -5
  799. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  800. package/lib/esm/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  801. package/lib/esm/appui-react/layout/widget/TabBar.js +0 -1
  802. package/lib/esm/appui-react/layout/widget/TabBar.js.map +1 -1
  803. package/lib/esm/appui-react/layout/widget/Widget.d.ts.map +1 -1
  804. package/lib/esm/appui-react/layout/widget/Widget.js +0 -4
  805. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  806. package/lib/esm/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  807. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +0 -1
  808. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  809. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.d.ts.map +1 -1
  810. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +0 -2
  811. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  812. package/lib/esm/appui-react/messages/AppNotificationManager.d.ts.map +1 -1
  813. package/lib/esm/appui-react/messages/AppNotificationManager.js +1 -4
  814. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  815. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  816. package/lib/esm/appui-react/messages/Pointer.js +0 -4
  817. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  818. package/lib/esm/appui-react/messages/StatusMessageManager.d.ts.map +1 -1
  819. package/lib/esm/appui-react/messages/StatusMessageManager.js +0 -1
  820. package/lib/esm/appui-react/messages/StatusMessageManager.js.map +1 -1
  821. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  822. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.d.ts.map +1 -1
  823. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js +0 -1
  824. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  825. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.d.ts.map +1 -1
  826. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js +0 -1
  827. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  828. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  829. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +5 -21
  830. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  831. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  832. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +0 -2
  833. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  834. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  835. package/lib/esm/appui-react/pickers/ListPicker.js +2 -9
  836. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  837. package/lib/esm/appui-react/pickers/ListPicker.scss +0 -1
  838. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  839. package/lib/esm/appui-react/pickers/ViewSelector.js +0 -8
  840. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  841. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  842. package/lib/esm/appui-react/popup/CardPopup.js +0 -3
  843. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  844. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  845. package/lib/esm/appui-react/popup/HTMLElementPopup.js +0 -1
  846. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  847. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  848. package/lib/esm/appui-react/popup/InputEditorPopup.js +0 -2
  849. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  850. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  851. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +0 -20
  852. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  853. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  854. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +0 -2
  855. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  856. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  857. package/lib/esm/appui-react/popup/PopupManager.js +1 -5
  858. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  859. package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
  860. package/lib/esm/appui-react/popup/PositionPopup.js +0 -2
  861. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  862. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  863. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +0 -2
  864. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  865. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  866. package/lib/esm/appui-react/popup/ToolbarPopup.js +0 -2
  867. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  868. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +12 -7
  869. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  870. package/lib/esm/appui-react/preview/PreviewFeatures.js +1 -0
  871. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  872. package/lib/esm/appui-react/preview/control-widget-visibility/AddWidgetButton.d.ts +15 -0
  873. package/lib/esm/appui-react/preview/control-widget-visibility/AddWidgetButton.d.ts.map +1 -0
  874. package/lib/esm/appui-react/preview/control-widget-visibility/AddWidgetButton.js +83 -0
  875. package/lib/esm/appui-react/preview/control-widget-visibility/AddWidgetButton.js.map +1 -0
  876. package/lib/esm/appui-react/preview/control-widget-visibility/CloseWidgetButton.d.ts +9 -0
  877. package/lib/esm/appui-react/preview/control-widget-visibility/CloseWidgetButton.d.ts.map +1 -0
  878. package/lib/esm/appui-react/preview/control-widget-visibility/CloseWidgetButton.js +34 -0
  879. package/lib/esm/appui-react/preview/control-widget-visibility/CloseWidgetButton.js.map +1 -0
  880. package/lib/esm/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts +10 -0
  881. package/lib/esm/appui-react/preview/control-widget-visibility/NavigationWidget.d.ts.map +1 -0
  882. package/lib/esm/appui-react/preview/control-widget-visibility/NavigationWidget.js +50 -0
  883. package/lib/esm/appui-react/preview/control-widget-visibility/NavigationWidget.js.map +1 -0
  884. package/lib/esm/appui-react/{layout/base/Ellipsis.scss → preview/control-widget-visibility/NavigationWidget.scss} +10 -13
  885. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +4 -4
  886. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -1
  887. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +3 -3
  888. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  889. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  890. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.d.ts.map +1 -1
  891. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js +5 -2
  892. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  893. package/lib/esm/appui-react/redux/ReducerRegistry.d.ts.map +1 -1
  894. package/lib/esm/appui-react/redux/ReducerRegistry.js +0 -2
  895. package/lib/esm/appui-react/redux/ReducerRegistry.js.map +1 -1
  896. package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
  897. package/lib/esm/appui-react/redux/SessionState.js +5 -20
  898. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  899. package/lib/esm/appui-react/redux/StateManager.d.ts.map +1 -1
  900. package/lib/esm/appui-react/redux/StateManager.js +0 -1
  901. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  902. package/lib/esm/appui-react/redux/connectIModel.d.ts.map +1 -1
  903. package/lib/esm/appui-react/redux/connectIModel.js +0 -5
  904. package/lib/esm/appui-react/redux/connectIModel.js.map +1 -1
  905. package/lib/esm/appui-react/redux/redux-ts.d.ts.map +1 -1
  906. package/lib/esm/appui-react/redux/redux-ts.js +1 -3
  907. package/lib/esm/appui-react/redux/redux-ts.js.map +1 -1
  908. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.d.ts.map +1 -1
  909. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js +0 -3
  910. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  911. package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  912. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +0 -7
  913. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  914. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  915. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +0 -7
  916. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  917. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  918. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +0 -3
  919. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  920. package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
  921. package/lib/esm/appui-react/shared/ActionButtonItemDef.js +0 -1
  922. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  923. package/lib/esm/appui-react/shared/MenuItem.d.ts.map +1 -1
  924. package/lib/esm/appui-react/shared/MenuItem.js +0 -4
  925. package/lib/esm/appui-react/shared/MenuItem.js.map +1 -1
  926. package/lib/esm/appui-react/statusbar/Field.d.ts +2 -0
  927. package/lib/esm/appui-react/statusbar/Field.d.ts.map +1 -1
  928. package/lib/esm/appui-react/statusbar/Field.js +4 -2
  929. package/lib/esm/appui-react/statusbar/Field.js.map +1 -1
  930. package/lib/esm/appui-react/statusbar/Field.scss +4 -93
  931. package/lib/esm/appui-react/statusbar/Indicator.d.ts +2 -0
  932. package/lib/esm/appui-react/statusbar/Indicator.d.ts.map +1 -1
  933. package/lib/esm/appui-react/statusbar/Indicator.js +8 -3
  934. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  935. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts +2 -0
  936. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
  937. package/lib/esm/appui-react/statusbar/LabelIndicator.js +8 -4
  938. package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -1
  939. package/lib/esm/appui-react/statusbar/LabelIndicator.scss +1 -26
  940. package/lib/esm/appui-react/statusbar/Overflow.d.ts +4 -4
  941. package/lib/esm/appui-react/statusbar/Overflow.d.ts.map +1 -1
  942. package/lib/esm/appui-react/statusbar/Overflow.js +12 -13
  943. package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
  944. package/lib/esm/appui-react/statusbar/Overflow.scss +6 -19
  945. package/lib/esm/appui-react/statusbar/Separator.js +1 -1
  946. package/lib/esm/appui-react/statusbar/Separator.js.map +1 -1
  947. package/lib/esm/appui-react/statusbar/Separator.scss +3 -4
  948. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +4 -0
  949. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  950. package/lib/esm/appui-react/statusbar/StatusBar.js +6 -0
  951. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  952. package/lib/esm/appui-react/statusbar/StatusBar.scss +29 -0
  953. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  954. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +44 -27
  955. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  956. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -1
  957. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +2 -9
  958. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  959. package/lib/esm/appui-react/statusbar/dialog/Button.js +2 -2
  960. package/lib/esm/appui-react/statusbar/dialog/Button.js.map +1 -1
  961. package/lib/esm/appui-react/statusbar/popup/ExpandIndicator.d.ts +8 -0
  962. package/lib/esm/appui-react/statusbar/popup/ExpandIndicator.d.ts.map +1 -0
  963. package/lib/esm/appui-react/statusbar/popup/ExpandIndicator.js +14 -0
  964. package/lib/esm/appui-react/statusbar/popup/ExpandIndicator.js.map +1 -0
  965. package/lib/esm/appui-react/{layout/footer/dialog/Button.scss → statusbar/popup/ExpandIndicator.scss} +10 -16
  966. package/lib/esm/appui-react/statusbar/popup/Popup.d.ts +1 -0
  967. package/lib/esm/appui-react/statusbar/popup/Popup.d.ts.map +1 -1
  968. package/lib/esm/appui-react/statusbar/popup/Popup.js +1 -0
  969. package/lib/esm/appui-react/statusbar/popup/Popup.js.map +1 -1
  970. package/lib/esm/appui-react/statusbar/popup/StatusBarPopover.d.ts +25 -0
  971. package/lib/esm/appui-react/statusbar/popup/StatusBarPopover.d.ts.map +1 -0
  972. package/lib/esm/appui-react/statusbar/popup/StatusBarPopover.js +30 -0
  973. package/lib/esm/appui-react/statusbar/popup/StatusBarPopover.js.map +1 -0
  974. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  975. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +0 -2
  976. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  977. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  978. package/lib/esm/appui-react/statusfields/SectionsField.js +14 -23
  979. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  980. package/lib/esm/appui-react/statusfields/SelectionCount.d.ts.map +1 -1
  981. package/lib/esm/appui-react/statusfields/SelectionCount.js +1 -6
  982. package/lib/esm/appui-react/statusfields/SelectionCount.js.map +1 -1
  983. package/lib/esm/appui-react/statusfields/SelectionCount.scss +4 -2
  984. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  985. package/lib/esm/appui-react/statusfields/SelectionScope.js +3 -9
  986. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  987. package/lib/esm/appui-react/statusfields/SelectionScope.scss +7 -32
  988. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  989. package/lib/esm/appui-react/statusfields/SnapMode.js +6 -5
  990. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  991. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  992. package/lib/esm/appui-react/statusfields/ViewAttributes.js +7 -6
  993. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  994. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -1
  995. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js +7 -6
  996. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -1
  997. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.scss +0 -1
  998. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.scss +0 -2
  999. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  1000. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -9
  1001. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  1002. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -5
  1003. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  1004. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +17 -49
  1005. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  1006. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -27
  1007. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  1008. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js +0 -11
  1009. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  1010. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  1011. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +0 -6
  1012. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  1013. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  1014. package/lib/esm/appui-react/theme/ThemeManager.js +0 -1
  1015. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  1016. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.d.ts.map +1 -1
  1017. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js +0 -6
  1018. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  1019. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.d.ts.map +1 -1
  1020. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js +0 -1
  1021. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  1022. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.d.ts.map +1 -1
  1023. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +0 -1
  1024. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  1025. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  1026. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +3 -8
  1027. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  1028. package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  1029. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +0 -1
  1030. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  1031. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -1
  1032. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js +4 -18
  1033. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  1034. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  1035. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +0 -1
  1036. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  1037. package/lib/esm/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  1038. package/lib/esm/appui-react/tools/KeyinPaletteTools.js +0 -2
  1039. package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  1040. package/lib/esm/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  1041. package/lib/esm/appui-react/tools/OpenSettingsTool.js +0 -2
  1042. package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
  1043. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  1044. package/lib/esm/appui-react/tools/RestoreLayoutTool.js +0 -2
  1045. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  1046. package/lib/esm/appui-react/tools/ToolSettingsTools.d.ts.map +1 -1
  1047. package/lib/esm/appui-react/tools/ToolSettingsTools.js +0 -1
  1048. package/lib/esm/appui-react/tools/ToolSettingsTools.js.map +1 -1
  1049. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts.map +1 -1
  1050. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +0 -2
  1051. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  1052. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  1053. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +0 -8
  1054. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  1055. package/lib/esm/appui-react/toolsettings/ToolInformation.d.ts.map +1 -1
  1056. package/lib/esm/appui-react/toolsettings/ToolInformation.js +0 -1
  1057. package/lib/esm/appui-react/toolsettings/ToolInformation.js.map +1 -1
  1058. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  1059. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +1 -3
  1060. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  1061. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +1 -1
  1062. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  1063. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  1064. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +0 -1
  1065. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  1066. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  1067. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +0 -1
  1068. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  1069. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  1070. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +0 -12
  1071. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  1072. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  1073. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +3 -10
  1074. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  1075. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  1076. package/lib/esm/appui-react/uistate/useUiStateStorage.js +0 -1
  1077. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  1078. package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  1079. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +0 -1
  1080. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  1081. package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
  1082. package/lib/esm/appui-react/utils/PropsHelper.js +0 -2
  1083. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  1084. package/lib/esm/appui-react/utils/ToolbarButtonHelper.d.ts.map +1 -1
  1085. package/lib/esm/appui-react/utils/ToolbarButtonHelper.js +0 -6
  1086. package/lib/esm/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  1087. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  1088. package/lib/esm/appui-react/widget-panels/Content.js +7 -16
  1089. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  1090. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +1 -4
  1091. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  1092. package/lib/esm/appui-react/widget-panels/Frontstage.js +1 -76
  1093. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  1094. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.d.ts.map +1 -1
  1095. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +1 -3
  1096. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  1097. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  1098. package/lib/esm/appui-react/widget-panels/StatusBar.js +3 -1
  1099. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  1100. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  1101. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  1102. package/lib/esm/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
  1103. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -1
  1104. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  1105. package/lib/esm/appui-react/widget-panels/useSaveFrontstageSettings.d.ts +8 -0
  1106. package/lib/esm/appui-react/widget-panels/useSaveFrontstageSettings.d.ts.map +1 -0
  1107. package/lib/esm/appui-react/widget-panels/useSaveFrontstageSettings.js +51 -0
  1108. package/lib/esm/appui-react/widget-panels/useSaveFrontstageSettings.js.map +1 -0
  1109. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  1110. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +0 -1
  1111. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  1112. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  1113. package/lib/esm/appui-react/widgets/BasicToolWidget.js +0 -1
  1114. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  1115. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  1116. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +0 -1
  1117. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  1118. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  1119. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +5 -19
  1120. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  1121. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  1122. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +0 -1
  1123. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  1124. package/lib/esm/appui-react/widgets/Widget.d.ts +3 -1
  1125. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
  1126. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  1127. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  1128. package/lib/esm/appui-react/widgets/WidgetDef.js +0 -5
  1129. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  1130. package/lib/esm/appui-react.d.ts +1 -0
  1131. package/lib/esm/appui-react.d.ts.map +1 -1
  1132. package/lib/esm/appui-react.js +1 -0
  1133. package/lib/esm/appui-react.js.map +1 -1
  1134. package/package.json +15 -17
  1135. package/lib/cjs/appui-react/layout/base/Ellipsis.d.ts +0 -11
  1136. package/lib/cjs/appui-react/layout/base/Ellipsis.d.ts.map +0 -1
  1137. package/lib/cjs/appui-react/layout/base/Ellipsis.js +0 -25
  1138. package/lib/cjs/appui-react/layout/base/Ellipsis.js.map +0 -1
  1139. package/lib/cjs/appui-react/layout/footer/Indicator.d.ts +0 -23
  1140. package/lib/cjs/appui-react/layout/footer/Indicator.d.ts.map +0 -1
  1141. package/lib/cjs/appui-react/layout/footer/Indicator.js +0 -23
  1142. package/lib/cjs/appui-react/layout/footer/Indicator.js.map +0 -1
  1143. package/lib/cjs/appui-react/layout/footer/Indicator.scss +0 -39
  1144. package/lib/cjs/appui-react/layout/footer/_variables.scss +0 -41
  1145. package/lib/cjs/appui-react/layout/footer/dialog/Button.d.ts +0 -23
  1146. package/lib/cjs/appui-react/layout/footer/dialog/Button.d.ts.map +0 -1
  1147. package/lib/cjs/appui-react/layout/footer/dialog/Button.js +0 -25
  1148. package/lib/cjs/appui-react/layout/footer/dialog/Button.js.map +0 -1
  1149. package/lib/cjs/appui-react/layout/footer/snap-mode/Indicator.d.ts +0 -27
  1150. package/lib/cjs/appui-react/layout/footer/snap-mode/Indicator.d.ts.map +0 -1
  1151. package/lib/cjs/appui-react/layout/footer/snap-mode/Indicator.js +0 -29
  1152. package/lib/cjs/appui-react/layout/footer/snap-mode/Indicator.js.map +0 -1
  1153. package/lib/cjs/appui-react/layout/footer/snap-mode/Indicator.scss +0 -44
  1154. package/lib/cjs/appui-react/layout/footer/tool-assistance/Indicator.d.ts +0 -27
  1155. package/lib/cjs/appui-react/layout/footer/tool-assistance/Indicator.d.ts.map +0 -1
  1156. package/lib/cjs/appui-react/layout/footer/tool-assistance/Indicator.js +0 -30
  1157. package/lib/cjs/appui-react/layout/footer/tool-assistance/Indicator.js.map +0 -1
  1158. package/lib/cjs/appui-react/layout/footer/tool-assistance/Indicator.scss +0 -80
  1159. package/lib/cjs/appui-react/statusbar/OverflowPanel.d.ts +0 -21
  1160. package/lib/cjs/appui-react/statusbar/OverflowPanel.d.ts.map +0 -1
  1161. package/lib/cjs/appui-react/statusbar/OverflowPanel.js +0 -23
  1162. package/lib/cjs/appui-react/statusbar/OverflowPanel.js.map +0 -1
  1163. package/lib/cjs/appui-react/statusbar/OverflowPanel.scss +0 -23
  1164. package/lib/esm/appui-react/layout/base/Ellipsis.d.ts +0 -11
  1165. package/lib/esm/appui-react/layout/base/Ellipsis.d.ts.map +0 -1
  1166. package/lib/esm/appui-react/layout/base/Ellipsis.js +0 -21
  1167. package/lib/esm/appui-react/layout/base/Ellipsis.js.map +0 -1
  1168. package/lib/esm/appui-react/layout/footer/Indicator.d.ts +0 -23
  1169. package/lib/esm/appui-react/layout/footer/Indicator.d.ts.map +0 -1
  1170. package/lib/esm/appui-react/layout/footer/Indicator.js +0 -20
  1171. package/lib/esm/appui-react/layout/footer/Indicator.js.map +0 -1
  1172. package/lib/esm/appui-react/layout/footer/Indicator.scss +0 -39
  1173. package/lib/esm/appui-react/layout/footer/_variables.scss +0 -41
  1174. package/lib/esm/appui-react/layout/footer/dialog/Button.d.ts +0 -23
  1175. package/lib/esm/appui-react/layout/footer/dialog/Button.d.ts.map +0 -1
  1176. package/lib/esm/appui-react/layout/footer/dialog/Button.js +0 -21
  1177. package/lib/esm/appui-react/layout/footer/dialog/Button.js.map +0 -1
  1178. package/lib/esm/appui-react/layout/footer/snap-mode/Indicator.d.ts +0 -27
  1179. package/lib/esm/appui-react/layout/footer/snap-mode/Indicator.d.ts.map +0 -1
  1180. package/lib/esm/appui-react/layout/footer/snap-mode/Indicator.js +0 -25
  1181. package/lib/esm/appui-react/layout/footer/snap-mode/Indicator.js.map +0 -1
  1182. package/lib/esm/appui-react/layout/footer/snap-mode/Indicator.scss +0 -44
  1183. package/lib/esm/appui-react/layout/footer/tool-assistance/Indicator.d.ts +0 -27
  1184. package/lib/esm/appui-react/layout/footer/tool-assistance/Indicator.d.ts.map +0 -1
  1185. package/lib/esm/appui-react/layout/footer/tool-assistance/Indicator.js +0 -26
  1186. package/lib/esm/appui-react/layout/footer/tool-assistance/Indicator.js.map +0 -1
  1187. package/lib/esm/appui-react/layout/footer/tool-assistance/Indicator.scss +0 -80
  1188. package/lib/esm/appui-react/statusbar/OverflowPanel.d.ts +0 -21
  1189. package/lib/esm/appui-react/statusbar/OverflowPanel.d.ts.map +0 -1
  1190. package/lib/esm/appui-react/statusbar/OverflowPanel.js +0 -19
  1191. package/lib/esm/appui-react/statusbar/OverflowPanel.js.map +0 -1
  1192. package/lib/esm/appui-react/statusbar/OverflowPanel.scss +0 -23
@@ -5,7 +5,6 @@ import type { UiStateStorageResult } from "@itwin/core-react";
5
5
  import { UiStateStorageStatus } from "@itwin/core-react";
6
6
  import * as React from "react";
7
7
  import type { FrontstageDef } from "../frontstage/FrontstageDef";
8
- import type { LayoutStore } from "../layout/base/LayoutStore";
9
8
  import type { NineZoneDispatch, NineZoneLabels } from "../layout/base/NineZone";
10
9
  import type { NineZoneState } from "../layout/state/NineZoneState";
11
10
  import { StagePanelLocation } from "../stagepanels/StagePanelLocation";
@@ -13,7 +12,7 @@ import { StagePanelSection } from "../stagepanels/StagePanelSection";
13
12
  import type { WidgetDef } from "../widgets/WidgetDef";
14
13
  import "./Frontstage.scss";
15
14
  /** @internal */
16
- export declare function useLayoutStore(frontstageDef: FrontstageDef | undefined): LayoutStore;
15
+ export declare function useLayoutStore(frontstageDef: FrontstageDef | undefined): import("../layout/base/LayoutStore").LayoutStore;
17
16
  /** Update in-memory NineZoneState of newly activated frontstage with up to date size.
18
17
  * @internal
19
18
  */
@@ -79,8 +78,6 @@ export interface WidgetPanelsFrontstageState {
79
78
  /** @internal */
80
79
  export declare function useSavedFrontstageState(frontstageDef: FrontstageDef): void;
81
80
  /** @internal */
82
- export declare function useSaveFrontstageSettings(frontstageDef: FrontstageDef, store: LayoutStore): void;
83
- /** @internal */
84
81
  export declare const FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
85
82
  /** @internal */
86
83
  export declare function getFrontstageStateSettingName(frontstageId: WidgetPanelsFrontstageState["id"]): string;
@@ -1 +1 @@
1
- {"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.tsx"],"names":[],"mappings":"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"}
@@ -5,7 +5,6 @@
5
5
  /** @packageDocumentation
6
6
  * @module Frontstage
7
7
  */
8
- // cSpell:ignore popout
9
8
  import { ToolbarPopupAutoHideContext } from "@itwin/components-react";
10
9
  import { assert, Logger, ProcessDetector } from "@itwin/core-bentley";
11
10
  import { IModelApp } from "@itwin/core-frontend";
@@ -52,6 +51,7 @@ import { useCursor } from "../layout/widget-panels/CursorOverlay";
52
51
  import { WidgetPanelExpanders } from "../layout/widget-panels/Expander";
53
52
  import { useTranslation } from "../hooks/useTranslation";
54
53
  import { PopoutWidgets } from "../preview/reparent-popout-widgets/PopoutWidgets";
54
+ import { useSaveFrontstageSettings } from "./useSaveFrontstageSettings";
55
55
  function WidgetPanelsFrontstageComponent() {
56
56
  const activeModalFrontstageInfo = useActiveModalFrontstageInfo();
57
57
  const uiIsVisible = useUiVisibility();
@@ -443,7 +443,6 @@ export function restoreNineZoneState(frontstageDef, packed) {
443
443
  frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (draft) => {
444
444
  // remove center panel section if one is found in left or right panels
445
445
  const oldLeftMiddleIndex = packed.panels.left.widgets.findIndex((value) => value === "leftMiddle");
446
- // istanbul ignore next
447
446
  if (-1 !== oldLeftMiddleIndex) {
448
447
  draft.panels.left.widgets = packed.panels.left.widgets.filter((value) => value !== "leftMiddle");
449
448
  if ("leftEnd" in draft.widgets) {
@@ -455,7 +454,6 @@ export function restoreNineZoneState(frontstageDef, packed) {
455
454
  }
456
455
  }
457
456
  const oldRightMiddleIndex = packed.panels.right.widgets.findIndex((value) => value === "rightMiddle");
458
- // istanbul ignore next
459
457
  if (-1 !== oldRightMiddleIndex) {
460
458
  draft.panels.right.widgets = packed.panels.right.widgets.filter((value) => value !== "rightMiddle");
461
459
  if ("rightEnd" in draft.widgets) {
@@ -539,84 +537,11 @@ export function useSavedFrontstageState(frontstageDef) {
539
537
  }, [frontstageDef]);
540
538
  }
541
539
  /** @internal */
542
- export function useSaveFrontstageSettings(frontstageDef, store) {
543
- const uiSettingsStorage = useUiStateStorageHandler();
544
- const pendingSave = React.useRef(() => { });
545
- const saveSetting = React.useMemo(() => {
546
- const debounced = debounce(async (frontstage, state) => {
547
- const id = frontstage.id;
548
- const setting = {
549
- id,
550
- version: frontstage.version,
551
- stateVersion,
552
- nineZone: packNineZoneState(state),
553
- };
554
- await uiSettingsStorage.saveSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
555
- }, 1000);
556
- const save = (frontstage, state) => {
557
- if (state.draggedTab)
558
- return;
559
- debounced(frontstage, state);
560
- };
561
- save.cancel = debounced.cancel;
562
- pendingSave.current = debounced.immediate;
563
- return save;
564
- }, [uiSettingsStorage]);
565
- React.useEffect(() => {
566
- return () => {
567
- pendingSave.current();
568
- };
569
- }, [frontstageDef]);
570
- React.useEffect(() => {
571
- return () => {
572
- saveSetting.cancel();
573
- };
574
- }, [saveSetting]);
575
- React.useEffect(() => {
576
- saveSetting(frontstageDef, store.getState());
577
- }, [saveSetting, frontstageDef, store]);
578
- React.useEffect(() => {
579
- return store.subscribe(() => {
580
- saveSetting(frontstageDef, store.getState());
581
- });
582
- }, [saveSetting, frontstageDef, store]);
583
- }
584
- /** @internal */
585
540
  export const FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
586
541
  /** @internal */
587
542
  export function getFrontstageStateSettingName(frontstageId) {
588
543
  return `frontstageState[${frontstageId}]`;
589
544
  }
590
- // istanbul ignore next
591
- function debounce(func, duration) {
592
- let timeout;
593
- let handler;
594
- const debounced = (...args) => {
595
- handler = () => {
596
- timeout = undefined;
597
- return func(...args);
598
- };
599
- window.clearTimeout(timeout);
600
- timeout = window.setTimeout(handler, duration);
601
- };
602
- /**
603
- * Will cancel the timeout without running the function.
604
- */
605
- debounced.cancel = () => {
606
- window.clearTimeout(timeout);
607
- timeout = undefined;
608
- };
609
- /**
610
- * If not already ran, will run the function immediately and remove the timeout.
611
- */
612
- debounced.immediate = () => {
613
- if (timeout === undefined)
614
- return;
615
- debounced.cancel();
616
- handler?.();
617
- };
618
- return debounced;
619
- }
620
545
  /** @internal */
621
546
  export function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
622
547
  const { translate } = useTranslation();
@@ -1 +1 @@
1
- {"version":3,"file":"Frontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.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 Frontstage\n */\n\n// cSpell:ignore popout\n\nimport { ToolbarPopupAutoHideContext } from \"@itwin/components-react\";\nimport { assert, Logger, ProcessDetector } from \"@itwin/core-bentley\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { UiStateStorageResult } from \"@itwin/core-react\";\nimport { Size, UiStateStorageStatus } from \"@itwin/core-react\";\nimport produce from \"immer\";\nimport * as React from \"react\";\nimport { unstable_batchedUpdates } from \"react-dom\";\nimport { useSelector } from \"react-redux\";\nimport type { FrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\nimport { useEscapeSetFocusToHome } from \"../hooks/useEscapeSetFocusToHome\";\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\nimport type { LayoutStore } from \"../layout/base/LayoutStore\";\nimport { createLayoutStore } from \"../layout/base/LayoutStore\";\nimport type { NineZoneDispatch, NineZoneLabels } from \"../layout/base/NineZone\";\nimport { getUniqueId, NineZone } from \"../layout/base/NineZone\";\nimport { activateDroppedTab } from \"../preview/activate-dropped-tab/activateDroppedTab\";\nimport type { NineZoneState } from \"../layout/state/NineZoneState\";\nimport { createNineZoneState } from \"../layout/state/NineZoneState\";\nimport { NineZoneStateReducer } from \"../layout/state/NineZoneStateReducer\";\nimport { getWidgetPanelSectionId } from \"../layout/state/PanelState\";\nimport type { TabState } from \"../layout/state/TabState\";\nimport { FloatingWidgets } from \"../layout/widget/FloatingWidgets\";\nimport { PreviewHorizontalPanelAlignFeatureProvider } from \"../preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign\";\nimport { usePreviewFeatures } from \"../preview/PreviewFeatures\";\nimport type { FrameworkState } from \"../redux/FrameworkState\";\nimport type { FrameworkRootState } from \"../redux/StateManager\";\nimport { toPanelSide } from \"../stagepanels/StagePanelDef\";\nimport { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport { StagePanelSection } from \"../stagepanels/StagePanelSection\";\nimport { StagePanelState } from \"../stagepanels/StagePanelState\";\nimport { UiItemsManager } from \"../ui-items-provider/UiItemsManager\";\nimport { UiFramework } from \"../UiFramework\";\nimport { useUiStateStorageHandler } from \"../uistate/useUiStateStorage\";\nimport type { WidgetDef } from \"../widgets/WidgetDef\";\nimport { WidgetState } from \"../widgets/WidgetState\";\nimport { WidgetContent } from \"./Content\";\nimport { FloatingWidget } from \"./FloatingWidget\";\nimport \"./Frontstage.scss\";\nimport { WidgetPanelsFrontstageContent } from \"./FrontstageContent\";\nimport {\n ModalFrontstageComposer,\n useActiveModalFrontstageInfo,\n} from \"./ModalFrontstageComposer\";\nimport { WidgetPanelsStatusBar } from \"./StatusBar\";\nimport { WidgetPanelsTab } from \"./Tab\";\nimport { WidgetPanelsToolbars } from \"./Toolbars\";\nimport { ToolSettingsContent, WidgetPanelsToolSettings } from \"./ToolSettings\";\nimport { MaximizedWidgetProvider } from \"../preview/enable-maximized-widget/MaximizedWidget\";\nimport { StandardLayout } from \"../layout/StandardLayout\";\nimport { WidgetPanelProvider } from \"../layout/widget-panels/Panel\";\nimport { WidgetContentRenderers } from \"../layout/widget/ContentRenderer\";\nimport { useCursor } from \"../layout/widget-panels/CursorOverlay\";\nimport { WidgetPanelExpanders } from \"../layout/widget-panels/Expander\";\nimport { useTranslation } from \"../hooks/useTranslation\";\nimport { PopoutWidgets } from \"../preview/reparent-popout-widgets/PopoutWidgets\";\n\nfunction WidgetPanelsFrontstageComponent() {\n const activeModalFrontstageInfo = useActiveModalFrontstageInfo();\n const uiIsVisible = useUiVisibility();\n const previewFeatures = usePreviewFeatures();\n useCursor();\n\n return (\n <MaximizedWidgetProvider>\n <PreviewHorizontalPanelAlignFeatureProvider\n enabled={previewFeatures.horizontalPanelAlignment}\n >\n <ToolbarPopupAutoHideContext.Provider value={!uiIsVisible}>\n <ModalFrontstageComposer stageInfo={activeModalFrontstageInfo} />\n <StandardLayout\n centerContent={\n <>\n <WidgetPanelsToolbars />\n <WidgetPanelExpanders />\n </>\n }\n toolSettings={<WidgetPanelsToolSettings />}\n statusBar={<WidgetPanelsStatusBar />}\n topPanel={<WidgetPanelProvider side=\"top\" />}\n leftPanel={<WidgetPanelProvider side=\"left\" />}\n rightPanel={<WidgetPanelProvider side=\"right\" />}\n bottomPanel={<WidgetPanelProvider side=\"bottom\" />}\n >\n <WidgetPanelsFrontstageContent />\n </StandardLayout>\n <WidgetContentRenderers />\n <FloatingWidgets />\n <PopoutWidgets />\n </ToolbarPopupAutoHideContext.Provider>\n </PreviewHorizontalPanelAlignFeatureProvider>\n </MaximizedWidgetProvider>\n );\n}\n\nconst widgetContent = <WidgetContent />;\nconst toolSettingsContent = <ToolSettingsContent />;\nconst widgetPanelsFrontstage = <WidgetPanelsFrontstageComponent />;\n\n/** @internal */\nexport function useLayoutStore(frontstageDef: FrontstageDef | undefined) {\n const layoutStore = React.useMemo(\n () => createLayoutStore(frontstageDef?.nineZoneState),\n [frontstageDef]\n );\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n (args) => {\n if (args.frontstageDef !== frontstageDef) return;\n unstable_batchedUpdates(() => {\n // https://github.com/pmndrs/zustand/blob/main/docs/guides/event-handler-in-pre-react-18.md\n layoutStore.setState(args.state || defaultNineZone);\n });\n }\n );\n }, [frontstageDef, layoutStore]);\n return layoutStore;\n}\n\n/** Update in-memory NineZoneState of newly activated frontstage with up to date size.\n * @internal\n */\nexport function useUpdateNineZoneSize(frontstageDef: FrontstageDef) {\n React.useEffect(() => {\n const size = InternalFrontstageManager.nineZoneSize;\n if (!size) return;\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size: {\n height: size.height,\n width: size.width,\n },\n });\n }, [frontstageDef]);\n}\n\nconst log =\n (reducer: typeof NineZoneStateReducer): typeof NineZoneStateReducer =>\n (state, action) => {\n Logger.logTrace(\"appui-react:reducer\", `action ${action.type}`, () => ({\n action,\n state,\n }));\n return reducer(state, action);\n };\n\n/** @internal */\nexport function useNineZoneDispatch(frontstageDef: FrontstageDef) {\n const features = usePreviewFeatures();\n\n const reducer = React.useMemo(() => {\n let nineZoneStateReducer = log(NineZoneStateReducer);\n\n nineZoneStateReducer = features.activateDroppedTab\n ? activateDroppedTab(nineZoneStateReducer)\n : nineZoneStateReducer;\n return nineZoneStateReducer;\n }, [features.activateDroppedTab]);\n\n return React.useCallback<NineZoneDispatch>(\n (action) => {\n if (action.type === \"RESIZE\") {\n InternalFrontstageManager.nineZoneSize = Size.create(action.size);\n }\n\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n frontstageDef.nineZoneState = reducer(state, action);\n },\n [frontstageDef, reducer]\n );\n}\n\n/** @internal */\nexport function WidgetPanelsFrontstage() {\n const frontstageDef = useActiveFrontstageDef();\n\n React.useEffect(() => {\n const triggerWidowCloseProcessing = () => {\n frontstageDef && frontstageDef.setIsApplicationClosing(true);\n };\n window.addEventListener(\"unload\", triggerWidowCloseProcessing);\n return () => {\n window.removeEventListener(\"unload\", triggerWidowCloseProcessing);\n };\n }, [frontstageDef]);\n\n if (!frontstageDef) return null;\n return <ActiveFrontstageDefProvider frontstageDef={frontstageDef} />;\n}\n\nconst defaultNineZone = createNineZoneState();\nconst tabElement = <WidgetPanelsTab />;\nconst floatingWidgetElement = <FloatingWidget />;\n\ninterface ActiveFrontstageDefProviderProps {\n frontstageDef: FrontstageDef;\n}\n\n/** @internal */\nexport function ActiveFrontstageDefProvider({\n frontstageDef,\n}: ActiveFrontstageDefProviderProps) {\n const dispatch = useNineZoneDispatch(frontstageDef);\n frontstageDef.dispatch = dispatch;\n const layout = useLayoutStore(frontstageDef);\n useUpdateNineZoneSize(frontstageDef);\n useSavedFrontstageState(frontstageDef);\n useSaveFrontstageSettings(frontstageDef, layout);\n useItemsManager(frontstageDef);\n const labels = useLabels();\n const uiIsVisible = useUiVisibility();\n const showWidgetIcon = useSelector((state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.showWidgetIcon;\n });\n const autoCollapseUnpinnedPanels = useSelector(\n (state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;\n }\n );\n const animateToolSettings = useSelector((state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.animateToolSettings;\n });\n const useToolAsToolSettingsLabel = useSelector(\n (state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;\n }\n );\n useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);\n\n const handleKeyDown = useEscapeSetFocusToHome();\n\n return (\n <div\n className=\"uifw-widgetPanels-frontstage\"\n onKeyDown={handleKeyDown}\n role=\"presentation\"\n >\n <NineZone\n dispatch={dispatch}\n labels={labels}\n layout={layout}\n tab={tabElement}\n floatingWidget={floatingWidgetElement}\n showWidgetIcon={showWidgetIcon}\n autoCollapseUnpinnedPanels={autoCollapseUnpinnedPanels}\n toolSettingsContent={toolSettingsContent}\n widgetContent={widgetContent}\n animateDockedToolSettings={animateToolSettings}\n uiIsVisible={uiIsVisible}\n >\n {widgetPanelsFrontstage}\n </NineZone>\n </div>\n );\n}\n\n/** @internal */\nexport function useLabels(): NineZoneLabels {\n const { translate } = useTranslation();\n\n return {\n dockToolSettingsTitle: translate(\"widget.tooltips.dockToolSettings\"),\n moreWidgetsTitle: translate(\"widget.tooltips.moreWidgets\"),\n moreToolSettingsTitle: translate(\"widget.tooltips.moreToolSettings\"),\n pinPanelTitle: translate(\"widget.tooltips.pinPanel\"),\n resizeGripTitle: translate(\"widget.tooltips.resizeGrip\"),\n sendWidgetHomeTitle: translate(\"widget.tooltips.sendHome\"),\n toolSettingsHandleTitle: translate(\"widget.tooltips.toolSettingsHandle\"),\n unpinPanelTitle: translate(\"widget.tooltips.unpinPanel\"),\n popoutActiveTab: translate(\"widget.tooltips.popoutActiveTab\"),\n };\n}\n\nfunction toTabArgs(widget: WidgetDef) {\n const label = getWidgetLabel(widget.label);\n const args = {\n allowedPanelTargets: widget.allowedPanelTargets?.map((location) =>\n toPanelSide(location)\n ),\n hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,\n canPopout: widget.canPopout,\n iconSpec: widget.iconSpec,\n isFloatingWidgetResizable: widget.isFloatingStateWindowResizable,\n label,\n preferredFloatingWidgetSize: widget.defaultFloatingSize,\n preferredPanelWidgetSize: widget.preferredPanelSize,\n };\n return args satisfies Pick<TabState, keyof typeof args>;\n}\n\nfunction addWidgetDef(\n frontstageDef: FrontstageDef,\n widgetDef: WidgetDef,\n location: StagePanelLocation,\n section: StagePanelSection\n) {\n const side = toPanelSide(location);\n\n const isFloatingWidget =\n widgetDef.isFloatingStateSupported &&\n widgetDef.defaultState === WidgetState.Floating;\n const floatingWidgetId = widgetDef.floatingContainerId\n ? widgetDef.floatingContainerId\n : getUniqueId();\n const userSized = !!widgetDef.defaultFloatingSize;\n\n frontstageDef.dispatch({\n type: \"WIDGET_DEF_ADD\",\n id: widgetDef.id,\n overrides: {\n ...toTabArgs(widgetDef),\n userSized,\n },\n location: isFloatingWidget ? \"floating\" : \"panel\",\n floatingWidget: {\n id: floatingWidgetId,\n preferredPosition: widgetDef.defaultFloatingPosition,\n },\n panelSection: {\n id: getWidgetPanelSectionId(side, section),\n side,\n index: section,\n },\n });\n\n // Hide widget if `defaultState` is `Hidden` or `Unloaded`.\n hideWidgetDef(frontstageDef, widgetDef);\n}\n\n/** Adds missing widgets to the layout.\n * @internal\n */\nexport function addPanelSectionWidgetDefs(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation,\n section: StagePanelSection\n) {\n const panelDef = frontstageDef.getStagePanelDef(location);\n if (!panelDef) return;\n const sectionDef = panelDef.getPanelSectionDef(section);\n const widgetDefs = determineNewWidgets(frontstageDef, sectionDef.widgetDefs);\n for (const widgetDef of widgetDefs) {\n addWidgetDef(frontstageDef, widgetDef, location, section);\n }\n}\n\nfunction processPopoutWidgets(frontstageDef: FrontstageDef) {\n // Electron reopens popout windows w/o user interaction.\n if (ProcessDetector.isElectronAppFrontend) {\n return;\n }\n\n assert(!!frontstageDef.nineZoneState);\n const state = frontstageDef.nineZoneState;\n for (const id of state.popoutWidgets.allIds) {\n frontstageDef.dispatch({\n type: \"POPOUT_WIDGET_SEND_BACK\",\n id,\n });\n }\n}\n\n/** Adds frontstageDef widgets that are missing in NineZoneState.\n * @internal\n */\nexport function addFrontstageWidgetDefs(frontstageDef: FrontstageDef) {\n [\n StagePanelLocation.Left,\n StagePanelLocation.Right,\n StagePanelLocation.Top,\n StagePanelLocation.Bottom,\n ].forEach((location) =>\n [StagePanelSection.Start, StagePanelSection.End].forEach((section) =>\n addPanelSectionWidgetDefs(frontstageDef, location, section)\n )\n );\n\n const toolSettingsWidgetDefs = determineNewWidgets(\n frontstageDef,\n frontstageDef.toolSettings ? [frontstageDef.toolSettings] : undefined\n );\n for (const toolSettingsWidgetDef of toolSettingsWidgetDefs) {\n frontstageDef.dispatch({\n type: \"WIDGET_DEF_ADD_TOOL_SETTINGS\",\n id: toolSettingsWidgetDef.id,\n overrides: toTabArgs(toolSettingsWidgetDef),\n });\n }\n}\n\n/** Hide widgets with `Hidden` or `Unloaded` defaultState. */\nfunction hideWidgetDefs(frontstageDef: FrontstageDef) {\n assert(!!frontstageDef.nineZoneState);\n const state = frontstageDef.nineZoneState;\n const tabs = Object.values(state.tabs);\n for (const tab of tabs) {\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (!widgetDef) continue;\n\n hideWidgetDef(frontstageDef, widgetDef);\n }\n}\n\n/** Hide widget with `Hidden` or `Unloaded` defaultState. */\nfunction hideWidgetDef(frontstageDef: FrontstageDef, widgetDef: WidgetDef) {\n if (widgetDef.defaultState === WidgetState.Hidden) {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_HIDE\",\n id: widgetDef.id,\n });\n }\n\n if (widgetDef.defaultState === WidgetState.Unloaded) {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UNLOAD\",\n id: widgetDef.id,\n });\n }\n}\n\n/** Removes NineZoneState widgets that are missing in frontstageDef.\n * @internal\n */\nfunction removeMissingWidgets(frontstageDef: FrontstageDef) {\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n const toolSettingsTabId = state.toolSettings?.tabId;\n for (const [, tab] of Object.entries(state.tabs)) {\n if (tab.id === toolSettingsTabId) continue;\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (widgetDef) continue;\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_REMOVE\",\n id: tab.id,\n });\n }\n}\n\nfunction getWidgetLabel(label: string) {\n return label === \"\" ? \"Widget\" : label;\n}\n\ntype PanelSectionId = `${Lowercase<\n keyof typeof StagePanelLocation\n>}${keyof typeof StagePanelSection}`;\n\n/** @internal */\nexport function getPanelSectionId(\n location: StagePanelLocation,\n section: StagePanelSection\n): PanelSectionId {\n return `${StagePanelLocation[location].toLowerCase()}${\n StagePanelSection[section]\n }` as PanelSectionId;\n}\n\n/** @internal */\nexport function getPanelSectionWidgets(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation,\n section: StagePanelSection\n): ReadonlyArray<WidgetDef> {\n const stagePanel = frontstageDef.getStagePanelDef(location);\n const panelSection = stagePanel?.getPanelSectionDef(section);\n return panelSection?.widgetDefs || [];\n}\n\n/** @internal */\nexport function isFrontstageStateSettingResult(\n settingsResult: UiStateStorageResult\n): settingsResult is {\n status: UiStateStorageStatus.Success;\n setting: WidgetPanelsFrontstageState;\n} {\n if (settingsResult.status === UiStateStorageStatus.Success) return true;\n return false;\n}\n\n/** @internal */\nexport function initializePanel(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation\n) {\n const side = toPanelSide(location);\n\n const panelDef = frontstageDef.getStagePanelDef(location);\n if (!panelDef) return;\n\n // eslint-disable-next-line deprecation/deprecation\n const size = panelDef.initialConfig?.sizeSpec ?? panelDef.initialConfig?.size;\n size !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_SIZE\",\n side,\n size,\n });\n\n frontstageDef.dispatch({\n type: \"PANEL_SET_PINNED\",\n side,\n pinned: panelDef.defaultPinned,\n });\n\n frontstageDef.dispatch({\n type: \"PANEL_SET_RESIZABLE\",\n side,\n resizable: panelDef.defaultResizable,\n });\n\n const minSize =\n panelDef.initialConfig?.minSizeSpec ?? panelDef.initialConfig?.minSize; // eslint-disable-line deprecation/deprecation\n minSize !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_MIN_SIZE\",\n side,\n minSize,\n });\n\n const maxSize =\n panelDef.initialConfig?.maxSizeSpec ?? panelDef.initialConfig?.maxSize; // eslint-disable-line deprecation/deprecation\n maxSize !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_MAX_SIZE\",\n side,\n maxSize,\n });\n\n const collapsed = panelDef.defaultState !== StagePanelState.Open;\n frontstageDef.dispatch({\n type: \"PANEL_SET_COLLAPSED\",\n side,\n collapsed,\n });\n}\n\n/** @internal */\nexport const stateVersion = 17; // this needs to be bumped when NineZoneState is changed (to recreate the layout).\n\n/** @internal */\nexport function initializeNineZoneState(frontstageDef: FrontstageDef) {\n frontstageDef.batch(() => {\n frontstageDef.nineZoneState = defaultNineZone;\n\n const size = InternalFrontstageManager.nineZoneSize;\n size &&\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size,\n });\n\n addFrontstageWidgetDefs(frontstageDef);\n\n initializePanel(frontstageDef, StagePanelLocation.Left);\n initializePanel(frontstageDef, StagePanelLocation.Right);\n initializePanel(frontstageDef, StagePanelLocation.Top);\n initializePanel(frontstageDef, StagePanelLocation.Bottom);\n });\n}\n\n/** Converts from saved NineZoneState to NineZoneState.\n * @note Restores toolSettings tab.\n * @note Restores tab labels.\n * @internal\n */\nexport function restoreNineZoneState(\n frontstageDef: FrontstageDef,\n packed: NineZoneState\n) {\n frontstageDef.batch(() => {\n frontstageDef.nineZoneState = packed;\n\n for (const [, tab] of Object.entries(packed.tabs)) {\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (!widgetDef) {\n Logger.logInfo(\n UiFramework.loggerCategory(restoreNineZoneState),\n \"WidgetDef is not found for saved tab.\",\n {\n frontstageId: frontstageDef.id,\n tabId: tab.id,\n }\n );\n frontstageDef.dispatch({ type: \"WIDGET_TAB_REMOVE\", id: tab.id });\n continue;\n }\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UPDATE\",\n id: tab.id,\n overrides: toTabArgs(widgetDef),\n });\n }\n\n frontstageDef.nineZoneState = produce(\n frontstageDef.nineZoneState,\n (draft) => {\n // remove center panel section if one is found in left or right panels\n const oldLeftMiddleIndex = packed.panels.left.widgets.findIndex(\n (value) => value === \"leftMiddle\"\n );\n // istanbul ignore next\n if (-1 !== oldLeftMiddleIndex) {\n draft.panels.left.widgets = packed.panels.left.widgets.filter(\n (value) => value !== \"leftMiddle\"\n );\n if (\"leftEnd\" in draft.widgets) {\n draft.widgets.leftMiddle.tabs.forEach((tab) =>\n draft.widgets.leftEnd.tabs.push(tab)\n );\n } else {\n draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };\n delete draft.widgets.leftMiddle;\n }\n }\n\n const oldRightMiddleIndex = packed.panels.right.widgets.findIndex(\n (value) => value === \"rightMiddle\"\n );\n // istanbul ignore next\n if (-1 !== oldRightMiddleIndex) {\n draft.panels.right.widgets = packed.panels.right.widgets.filter(\n (value) => value !== \"rightMiddle\"\n );\n if (\"rightEnd\" in draft.widgets) {\n draft.widgets.rightMiddle.tabs.forEach((tab) =>\n draft.widgets.rightEnd.tabs.push(tab)\n );\n } else {\n draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };\n delete draft.widgets.rightMiddle;\n }\n }\n\n return;\n }\n );\n\n if (\n InternalFrontstageManager.nineZoneSize &&\n (0 !== InternalFrontstageManager.nineZoneSize.height ||\n 0 !== InternalFrontstageManager.nineZoneSize.width)\n ) {\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size: {\n height: InternalFrontstageManager.nineZoneSize.height,\n width: InternalFrontstageManager.nineZoneSize.width,\n },\n });\n }\n\n addFrontstageWidgetDefs(frontstageDef);\n hideWidgetDefs(frontstageDef);\n processPopoutWidgets(frontstageDef);\n });\n}\n\n/** Prepares NineZoneState to be saved.\n * @note Removes toolSettings tab.\n * @note Removes tab labels and iconSpec.\n * @internal\n */\nexport function packNineZoneState(state: NineZoneState): NineZoneState {\n let packed = state;\n packed = produce(packed, (draft) => {\n for (const [, tab] of Object.entries(draft.tabs)) {\n tab.label = \"\";\n delete tab.iconSpec;\n }\n });\n return packed;\n}\n\n/** FrontstageState is saved in UiStateStorage.\n * @internal\n */\nexport interface WidgetPanelsFrontstageState {\n nineZone: NineZoneState;\n id: FrontstageDef[\"id\"];\n /** Frontstage version used to create the frontstage state. Allows to invalidate the layout from the frontstage. */\n version: number;\n /** Platform provided frontstage version. Allows to invalidate the layout from the platform. */\n stateVersion: number;\n}\n\n/** @internal */\nexport function useSavedFrontstageState(frontstageDef: FrontstageDef) {\n const uiStateStorage = useUiStateStorageHandler();\n const uiStateStorageRef = React.useRef(uiStateStorage);\n const isMountedRef = React.useRef(false);\n React.useEffect(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n };\n }, []);\n React.useEffect(() => {\n uiStateStorageRef.current = uiStateStorage;\n }, [uiStateStorage]);\n React.useEffect(() => {\n async function fetchFrontstageState() {\n // Switching to previously initialized frontstage.\n if (frontstageDef.nineZoneState) {\n processPopoutWidgets(frontstageDef);\n return;\n }\n\n const id = frontstageDef.id;\n const version = frontstageDef.version;\n const settingResult = await uiStateStorageRef.current.getSetting(\n FRONTSTAGE_SETTINGS_NAMESPACE,\n getFrontstageStateSettingName(id)\n );\n if (!isMountedRef.current) return;\n\n if (isFrontstageStateSettingResult(settingResult)) {\n const setting = settingResult.setting;\n if (\n setting.version === version &&\n setting.stateVersion === stateVersion\n ) {\n restoreNineZoneState(frontstageDef, setting.nineZone);\n return;\n }\n }\n initializeNineZoneState(frontstageDef);\n }\n void fetchFrontstageState();\n }, [frontstageDef]);\n}\n\n/** @internal */\nexport function useSaveFrontstageSettings(\n frontstageDef: FrontstageDef,\n store: LayoutStore\n) {\n const uiSettingsStorage = useUiStateStorageHandler();\n const pendingSave = React.useRef(() => {});\n const saveSetting = React.useMemo(() => {\n const debounced = debounce(\n async (frontstage: FrontstageDef, state: NineZoneState) => {\n const id = frontstage.id;\n const setting: WidgetPanelsFrontstageState = {\n id,\n version: frontstage.version,\n stateVersion,\n nineZone: packNineZoneState(state),\n };\n await uiSettingsStorage.saveSetting(\n FRONTSTAGE_SETTINGS_NAMESPACE,\n getFrontstageStateSettingName(id),\n setting\n );\n },\n 1000\n );\n\n const save = (frontstage: FrontstageDef, state: NineZoneState) => {\n if (state.draggedTab) return;\n debounced(frontstage, state);\n };\n save.cancel = debounced.cancel;\n pendingSave.current = debounced.immediate;\n return save;\n }, [uiSettingsStorage]);\n React.useEffect(() => {\n return () => {\n pendingSave.current();\n };\n }, [frontstageDef]);\n React.useEffect(() => {\n return () => {\n saveSetting.cancel();\n };\n }, [saveSetting]);\n\n React.useEffect(() => {\n saveSetting(frontstageDef, store.getState());\n }, [saveSetting, frontstageDef, store]);\n React.useEffect(() => {\n return store.subscribe(() => {\n saveSetting(frontstageDef, store.getState());\n });\n }, [saveSetting, frontstageDef, store]);\n}\n\n/** @internal */\nexport const FRONTSTAGE_SETTINGS_NAMESPACE = \"uifw-frontstageSettings\";\n\n/** @internal */\nexport function getFrontstageStateSettingName(\n frontstageId: WidgetPanelsFrontstageState[\"id\"]\n) {\n return `frontstageState[${frontstageId}]`;\n}\n\n// istanbul ignore next\nfunction debounce<T extends (...args: any[]) => any>(\n func: T,\n duration: number\n) {\n let timeout: number | undefined;\n let handler: () => any;\n const debounced = (...args: Parameters<T>) => {\n handler = () => {\n timeout = undefined;\n return func(...args);\n };\n window.clearTimeout(timeout);\n timeout = window.setTimeout(handler, duration);\n };\n /**\n * Will cancel the timeout without running the function.\n */\n debounced.cancel = () => {\n window.clearTimeout(timeout);\n timeout = undefined;\n };\n /**\n * If not already ran, will run the function immediately and remove the timeout.\n */\n debounced.immediate = () => {\n if (timeout === undefined) return;\n debounced.cancel();\n handler?.();\n };\n return debounced;\n}\n\n/** @internal */\nexport function useFrontstageManager(\n frontstageDef: FrontstageDef,\n useToolAsToolSettingsLabel?: boolean\n) {\n const { translate } = useTranslation();\n const uiSettingsStorage = useUiStateStorageHandler();\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(\n (args) => {\n // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending\n void uiSettingsStorage.deleteSetting(\n FRONTSTAGE_SETTINGS_NAMESPACE,\n getFrontstageStateSettingName(args.frontstageDef.id)\n );\n if (frontstageDef.id === args.frontstageDef.id) {\n initializeNineZoneState(frontstageDef);\n return;\n }\n\n args.frontstageDef.nineZoneState = undefined;\n }\n );\n }, [uiSettingsStorage, frontstageDef]);\n\n const defaultLabel = translate(\"widget.labels.toolSettings\");\n\n React.useEffect(() => {\n const updateLabel = () => {\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n const toolSettingsTabId = state.toolSettings?.tabId;\n if (!toolSettingsTabId) return;\n\n const toolId = UiFramework.frontstages.activeToolId;\n const label = useToolAsToolSettingsLabel\n ? IModelApp.tools.find(toolId)?.flyover || defaultLabel\n : defaultLabel;\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SET_LABEL\",\n id: toolSettingsTabId,\n label,\n });\n };\n // Whenever the frontstageDef or the useTool... changes, keep the label up to date.\n updateLabel();\n\n const removeListenerFuncs: (() => void)[] = [];\n // If useTool... is true, listen for events to keep up the label up to date.\n if (useToolAsToolSettingsLabel) {\n removeListenerFuncs.push(\n UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel),\n InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(\n updateLabel\n ),\n UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel),\n UiFramework.frontstages.onToolSettingsReloadEvent.addListener(\n updateLabel\n )\n );\n }\n return () => {\n removeListenerFuncs.forEach((removeListener) => removeListener());\n };\n }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);\n}\n\nfunction refreshNineZoneState(frontstageDef: FrontstageDef) {\n // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.\n frontstageDef.updateWidgetDefs();\n frontstageDef.batch(() => {\n addFrontstageWidgetDefs(frontstageDef);\n removeMissingWidgets(frontstageDef);\n });\n}\n\n/** @internal */\nexport function useItemsManager(frontstageDef: FrontstageDef) {\n React.useEffect(() => {\n // Not initialized yet.\n if (!frontstageDef.nineZoneState) return;\n\n // Need to refresh because UiItemsProvider may have added something while another frontstage was active.\n refreshNineZoneState(frontstageDef);\n }, [frontstageDef]);\n React.useEffect(() => {\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {\n refreshNineZoneState(frontstageDef);\n });\n }, [frontstageDef]);\n}\n\nfunction determineNewWidgets(\n frontstageDef: FrontstageDef,\n defs: readonly WidgetDef[] | undefined\n) {\n const state = frontstageDef.nineZoneState;\n assert(!!state);\n defs = defs || [];\n const uniqueDefs = defs.filter((def, index, array) => {\n return index === array.findIndex((def1) => def.id === def1.id);\n });\n return uniqueDefs.filter((def) => !(def.id in state.tabs));\n}\n"]}
1
+ {"version":3,"file":"Frontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Frontstage.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 Frontstage\n */\n\nimport { ToolbarPopupAutoHideContext } from \"@itwin/components-react\";\nimport { assert, Logger, ProcessDetector } from \"@itwin/core-bentley\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { UiStateStorageResult } from \"@itwin/core-react\";\nimport { Size, UiStateStorageStatus } from \"@itwin/core-react\";\nimport produce from \"immer\";\nimport * as React from \"react\";\nimport { unstable_batchedUpdates } from \"react-dom\";\nimport { useSelector } from \"react-redux\";\nimport type { FrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\nimport { useEscapeSetFocusToHome } from \"../hooks/useEscapeSetFocusToHome\";\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\nimport { createLayoutStore } from \"../layout/base/LayoutStore\";\nimport type { NineZoneDispatch, NineZoneLabels } from \"../layout/base/NineZone\";\nimport { getUniqueId, NineZone } from \"../layout/base/NineZone\";\nimport { activateDroppedTab } from \"../preview/activate-dropped-tab/activateDroppedTab\";\nimport type { NineZoneState } from \"../layout/state/NineZoneState\";\nimport { createNineZoneState } from \"../layout/state/NineZoneState\";\nimport { NineZoneStateReducer } from \"../layout/state/NineZoneStateReducer\";\nimport { getWidgetPanelSectionId } from \"../layout/state/PanelState\";\nimport type { TabState } from \"../layout/state/TabState\";\nimport { FloatingWidgets } from \"../layout/widget/FloatingWidgets\";\nimport { PreviewHorizontalPanelAlignFeatureProvider } from \"../preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign\";\nimport { usePreviewFeatures } from \"../preview/PreviewFeatures\";\nimport type { FrameworkState } from \"../redux/FrameworkState\";\nimport type { FrameworkRootState } from \"../redux/StateManager\";\nimport { toPanelSide } from \"../stagepanels/StagePanelDef\";\nimport { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport { StagePanelSection } from \"../stagepanels/StagePanelSection\";\nimport { StagePanelState } from \"../stagepanels/StagePanelState\";\nimport { UiItemsManager } from \"../ui-items-provider/UiItemsManager\";\nimport { UiFramework } from \"../UiFramework\";\nimport { useUiStateStorageHandler } from \"../uistate/useUiStateStorage\";\nimport type { WidgetDef } from \"../widgets/WidgetDef\";\nimport { WidgetState } from \"../widgets/WidgetState\";\nimport { WidgetContent } from \"./Content\";\nimport { FloatingWidget } from \"./FloatingWidget\";\nimport \"./Frontstage.scss\";\nimport { WidgetPanelsFrontstageContent } from \"./FrontstageContent\";\nimport {\n ModalFrontstageComposer,\n useActiveModalFrontstageInfo,\n} from \"./ModalFrontstageComposer\";\nimport { WidgetPanelsStatusBar } from \"./StatusBar\";\nimport { WidgetPanelsTab } from \"./Tab\";\nimport { WidgetPanelsToolbars } from \"./Toolbars\";\nimport { ToolSettingsContent, WidgetPanelsToolSettings } from \"./ToolSettings\";\nimport { MaximizedWidgetProvider } from \"../preview/enable-maximized-widget/MaximizedWidget\";\nimport { StandardLayout } from \"../layout/StandardLayout\";\nimport { WidgetPanelProvider } from \"../layout/widget-panels/Panel\";\nimport { WidgetContentRenderers } from \"../layout/widget/ContentRenderer\";\nimport { useCursor } from \"../layout/widget-panels/CursorOverlay\";\nimport { WidgetPanelExpanders } from \"../layout/widget-panels/Expander\";\nimport { useTranslation } from \"../hooks/useTranslation\";\nimport { PopoutWidgets } from \"../preview/reparent-popout-widgets/PopoutWidgets\";\nimport { useSaveFrontstageSettings } from \"./useSaveFrontstageSettings\";\n\nfunction WidgetPanelsFrontstageComponent() {\n const activeModalFrontstageInfo = useActiveModalFrontstageInfo();\n const uiIsVisible = useUiVisibility();\n const previewFeatures = usePreviewFeatures();\n useCursor();\n\n return (\n <MaximizedWidgetProvider>\n <PreviewHorizontalPanelAlignFeatureProvider\n enabled={previewFeatures.horizontalPanelAlignment}\n >\n <ToolbarPopupAutoHideContext.Provider value={!uiIsVisible}>\n <ModalFrontstageComposer stageInfo={activeModalFrontstageInfo} />\n <StandardLayout\n centerContent={\n <>\n <WidgetPanelsToolbars />\n <WidgetPanelExpanders />\n </>\n }\n toolSettings={<WidgetPanelsToolSettings />}\n statusBar={<WidgetPanelsStatusBar />}\n topPanel={<WidgetPanelProvider side=\"top\" />}\n leftPanel={<WidgetPanelProvider side=\"left\" />}\n rightPanel={<WidgetPanelProvider side=\"right\" />}\n bottomPanel={<WidgetPanelProvider side=\"bottom\" />}\n >\n <WidgetPanelsFrontstageContent />\n </StandardLayout>\n <WidgetContentRenderers />\n <FloatingWidgets />\n <PopoutWidgets />\n </ToolbarPopupAutoHideContext.Provider>\n </PreviewHorizontalPanelAlignFeatureProvider>\n </MaximizedWidgetProvider>\n );\n}\n\nconst widgetContent = <WidgetContent />;\nconst toolSettingsContent = <ToolSettingsContent />;\nconst widgetPanelsFrontstage = <WidgetPanelsFrontstageComponent />;\n\n/** @internal */\nexport function useLayoutStore(frontstageDef: FrontstageDef | undefined) {\n const layoutStore = React.useMemo(\n () => createLayoutStore(frontstageDef?.nineZoneState),\n [frontstageDef]\n );\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n (args) => {\n if (args.frontstageDef !== frontstageDef) return;\n unstable_batchedUpdates(() => {\n // https://github.com/pmndrs/zustand/blob/main/docs/guides/event-handler-in-pre-react-18.md\n layoutStore.setState(args.state || defaultNineZone);\n });\n }\n );\n }, [frontstageDef, layoutStore]);\n return layoutStore;\n}\n\n/** Update in-memory NineZoneState of newly activated frontstage with up to date size.\n * @internal\n */\nexport function useUpdateNineZoneSize(frontstageDef: FrontstageDef) {\n React.useEffect(() => {\n const size = InternalFrontstageManager.nineZoneSize;\n if (!size) return;\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size: {\n height: size.height,\n width: size.width,\n },\n });\n }, [frontstageDef]);\n}\n\nconst log =\n (reducer: typeof NineZoneStateReducer): typeof NineZoneStateReducer =>\n (state, action) => {\n Logger.logTrace(\"appui-react:reducer\", `action ${action.type}`, () => ({\n action,\n state,\n }));\n return reducer(state, action);\n };\n\n/** @internal */\nexport function useNineZoneDispatch(frontstageDef: FrontstageDef) {\n const features = usePreviewFeatures();\n\n const reducer = React.useMemo(() => {\n let nineZoneStateReducer = log(NineZoneStateReducer);\n\n nineZoneStateReducer = features.activateDroppedTab\n ? activateDroppedTab(nineZoneStateReducer)\n : nineZoneStateReducer;\n return nineZoneStateReducer;\n }, [features.activateDroppedTab]);\n\n return React.useCallback<NineZoneDispatch>(\n (action) => {\n if (action.type === \"RESIZE\") {\n InternalFrontstageManager.nineZoneSize = Size.create(action.size);\n }\n\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n frontstageDef.nineZoneState = reducer(state, action);\n },\n [frontstageDef, reducer]\n );\n}\n\n/** @internal */\nexport function WidgetPanelsFrontstage() {\n const frontstageDef = useActiveFrontstageDef();\n\n React.useEffect(() => {\n const triggerWidowCloseProcessing = () => {\n frontstageDef && frontstageDef.setIsApplicationClosing(true);\n };\n window.addEventListener(\"unload\", triggerWidowCloseProcessing);\n return () => {\n window.removeEventListener(\"unload\", triggerWidowCloseProcessing);\n };\n }, [frontstageDef]);\n\n if (!frontstageDef) return null;\n return <ActiveFrontstageDefProvider frontstageDef={frontstageDef} />;\n}\n\nconst defaultNineZone = createNineZoneState();\nconst tabElement = <WidgetPanelsTab />;\nconst floatingWidgetElement = <FloatingWidget />;\n\ninterface ActiveFrontstageDefProviderProps {\n frontstageDef: FrontstageDef;\n}\n\n/** @internal */\nexport function ActiveFrontstageDefProvider({\n frontstageDef,\n}: ActiveFrontstageDefProviderProps) {\n const dispatch = useNineZoneDispatch(frontstageDef);\n frontstageDef.dispatch = dispatch;\n const layout = useLayoutStore(frontstageDef);\n useUpdateNineZoneSize(frontstageDef);\n useSavedFrontstageState(frontstageDef);\n useSaveFrontstageSettings(frontstageDef, layout);\n useItemsManager(frontstageDef);\n const labels = useLabels();\n const uiIsVisible = useUiVisibility();\n const showWidgetIcon = useSelector((state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.showWidgetIcon;\n });\n const autoCollapseUnpinnedPanels = useSelector(\n (state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;\n }\n );\n const animateToolSettings = useSelector((state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.animateToolSettings;\n });\n const useToolAsToolSettingsLabel = useSelector(\n (state: FrameworkRootState) => {\n const frameworkState: FrameworkState = (state as any)[\n UiFramework.frameworkStateKey\n ];\n return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;\n }\n );\n useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);\n\n const handleKeyDown = useEscapeSetFocusToHome();\n\n return (\n <div\n className=\"uifw-widgetPanels-frontstage\"\n onKeyDown={handleKeyDown}\n role=\"presentation\"\n >\n <NineZone\n dispatch={dispatch}\n labels={labels}\n layout={layout}\n tab={tabElement}\n floatingWidget={floatingWidgetElement}\n showWidgetIcon={showWidgetIcon}\n autoCollapseUnpinnedPanels={autoCollapseUnpinnedPanels}\n toolSettingsContent={toolSettingsContent}\n widgetContent={widgetContent}\n animateDockedToolSettings={animateToolSettings}\n uiIsVisible={uiIsVisible}\n >\n {widgetPanelsFrontstage}\n </NineZone>\n </div>\n );\n}\n\n/** @internal */\nexport function useLabels(): NineZoneLabels {\n const { translate } = useTranslation();\n\n return {\n dockToolSettingsTitle: translate(\"widget.tooltips.dockToolSettings\"),\n moreWidgetsTitle: translate(\"widget.tooltips.moreWidgets\"),\n moreToolSettingsTitle: translate(\"widget.tooltips.moreToolSettings\"),\n pinPanelTitle: translate(\"widget.tooltips.pinPanel\"),\n resizeGripTitle: translate(\"widget.tooltips.resizeGrip\"),\n sendWidgetHomeTitle: translate(\"widget.tooltips.sendHome\"),\n toolSettingsHandleTitle: translate(\"widget.tooltips.toolSettingsHandle\"),\n unpinPanelTitle: translate(\"widget.tooltips.unpinPanel\"),\n popoutActiveTab: translate(\"widget.tooltips.popoutActiveTab\"),\n };\n}\n\nfunction toTabArgs(widget: WidgetDef) {\n const label = getWidgetLabel(widget.label);\n const args = {\n allowedPanelTargets: widget.allowedPanelTargets?.map((location) =>\n toPanelSide(location)\n ),\n hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,\n canPopout: widget.canPopout,\n iconSpec: widget.iconSpec,\n isFloatingWidgetResizable: widget.isFloatingStateWindowResizable,\n label,\n preferredFloatingWidgetSize: widget.defaultFloatingSize,\n preferredPanelWidgetSize: widget.preferredPanelSize,\n };\n return args satisfies Pick<TabState, keyof typeof args>;\n}\n\nfunction addWidgetDef(\n frontstageDef: FrontstageDef,\n widgetDef: WidgetDef,\n location: StagePanelLocation,\n section: StagePanelSection\n) {\n const side = toPanelSide(location);\n\n const isFloatingWidget =\n widgetDef.isFloatingStateSupported &&\n widgetDef.defaultState === WidgetState.Floating;\n const floatingWidgetId = widgetDef.floatingContainerId\n ? widgetDef.floatingContainerId\n : getUniqueId();\n const userSized = !!widgetDef.defaultFloatingSize;\n\n frontstageDef.dispatch({\n type: \"WIDGET_DEF_ADD\",\n id: widgetDef.id,\n overrides: {\n ...toTabArgs(widgetDef),\n userSized,\n },\n location: isFloatingWidget ? \"floating\" : \"panel\",\n floatingWidget: {\n id: floatingWidgetId,\n preferredPosition: widgetDef.defaultFloatingPosition,\n },\n panelSection: {\n id: getWidgetPanelSectionId(side, section),\n side,\n index: section,\n },\n });\n\n // Hide widget if `defaultState` is `Hidden` or `Unloaded`.\n hideWidgetDef(frontstageDef, widgetDef);\n}\n\n/** Adds missing widgets to the layout.\n * @internal\n */\nexport function addPanelSectionWidgetDefs(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation,\n section: StagePanelSection\n) {\n const panelDef = frontstageDef.getStagePanelDef(location);\n if (!panelDef) return;\n const sectionDef = panelDef.getPanelSectionDef(section);\n const widgetDefs = determineNewWidgets(frontstageDef, sectionDef.widgetDefs);\n for (const widgetDef of widgetDefs) {\n addWidgetDef(frontstageDef, widgetDef, location, section);\n }\n}\n\nfunction processPopoutWidgets(frontstageDef: FrontstageDef) {\n // Electron reopens popout windows w/o user interaction.\n if (ProcessDetector.isElectronAppFrontend) {\n return;\n }\n\n assert(!!frontstageDef.nineZoneState);\n const state = frontstageDef.nineZoneState;\n for (const id of state.popoutWidgets.allIds) {\n frontstageDef.dispatch({\n type: \"POPOUT_WIDGET_SEND_BACK\",\n id,\n });\n }\n}\n\n/** Adds frontstageDef widgets that are missing in NineZoneState.\n * @internal\n */\nexport function addFrontstageWidgetDefs(frontstageDef: FrontstageDef) {\n [\n StagePanelLocation.Left,\n StagePanelLocation.Right,\n StagePanelLocation.Top,\n StagePanelLocation.Bottom,\n ].forEach((location) =>\n [StagePanelSection.Start, StagePanelSection.End].forEach((section) =>\n addPanelSectionWidgetDefs(frontstageDef, location, section)\n )\n );\n\n const toolSettingsWidgetDefs = determineNewWidgets(\n frontstageDef,\n frontstageDef.toolSettings ? [frontstageDef.toolSettings] : undefined\n );\n for (const toolSettingsWidgetDef of toolSettingsWidgetDefs) {\n frontstageDef.dispatch({\n type: \"WIDGET_DEF_ADD_TOOL_SETTINGS\",\n id: toolSettingsWidgetDef.id,\n overrides: toTabArgs(toolSettingsWidgetDef),\n });\n }\n}\n\n/** Hide widgets with `Hidden` or `Unloaded` defaultState. */\nfunction hideWidgetDefs(frontstageDef: FrontstageDef) {\n assert(!!frontstageDef.nineZoneState);\n const state = frontstageDef.nineZoneState;\n const tabs = Object.values(state.tabs);\n for (const tab of tabs) {\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (!widgetDef) continue;\n\n hideWidgetDef(frontstageDef, widgetDef);\n }\n}\n\n/** Hide widget with `Hidden` or `Unloaded` defaultState. */\nfunction hideWidgetDef(frontstageDef: FrontstageDef, widgetDef: WidgetDef) {\n if (widgetDef.defaultState === WidgetState.Hidden) {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_HIDE\",\n id: widgetDef.id,\n });\n }\n\n if (widgetDef.defaultState === WidgetState.Unloaded) {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UNLOAD\",\n id: widgetDef.id,\n });\n }\n}\n\n/** Removes NineZoneState widgets that are missing in frontstageDef.\n * @internal\n */\nfunction removeMissingWidgets(frontstageDef: FrontstageDef) {\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n const toolSettingsTabId = state.toolSettings?.tabId;\n for (const [, tab] of Object.entries(state.tabs)) {\n if (tab.id === toolSettingsTabId) continue;\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (widgetDef) continue;\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_REMOVE\",\n id: tab.id,\n });\n }\n}\n\nfunction getWidgetLabel(label: string) {\n return label === \"\" ? \"Widget\" : label;\n}\n\ntype PanelSectionId = `${Lowercase<\n keyof typeof StagePanelLocation\n>}${keyof typeof StagePanelSection}`;\n\n/** @internal */\nexport function getPanelSectionId(\n location: StagePanelLocation,\n section: StagePanelSection\n): PanelSectionId {\n return `${StagePanelLocation[location].toLowerCase()}${\n StagePanelSection[section]\n }` as PanelSectionId;\n}\n\n/** @internal */\nexport function getPanelSectionWidgets(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation,\n section: StagePanelSection\n): ReadonlyArray<WidgetDef> {\n const stagePanel = frontstageDef.getStagePanelDef(location);\n const panelSection = stagePanel?.getPanelSectionDef(section);\n return panelSection?.widgetDefs || [];\n}\n\n/** @internal */\nexport function isFrontstageStateSettingResult(\n settingsResult: UiStateStorageResult\n): settingsResult is {\n status: UiStateStorageStatus.Success;\n setting: WidgetPanelsFrontstageState;\n} {\n if (settingsResult.status === UiStateStorageStatus.Success) return true;\n return false;\n}\n\n/** @internal */\nexport function initializePanel(\n frontstageDef: FrontstageDef,\n location: StagePanelLocation\n) {\n const side = toPanelSide(location);\n\n const panelDef = frontstageDef.getStagePanelDef(location);\n if (!panelDef) return;\n\n // eslint-disable-next-line deprecation/deprecation\n const size = panelDef.initialConfig?.sizeSpec ?? panelDef.initialConfig?.size;\n size !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_SIZE\",\n side,\n size,\n });\n\n frontstageDef.dispatch({\n type: \"PANEL_SET_PINNED\",\n side,\n pinned: panelDef.defaultPinned,\n });\n\n frontstageDef.dispatch({\n type: \"PANEL_SET_RESIZABLE\",\n side,\n resizable: panelDef.defaultResizable,\n });\n\n const minSize =\n panelDef.initialConfig?.minSizeSpec ?? panelDef.initialConfig?.minSize; // eslint-disable-line deprecation/deprecation\n minSize !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_MIN_SIZE\",\n side,\n minSize,\n });\n\n const maxSize =\n panelDef.initialConfig?.maxSizeSpec ?? panelDef.initialConfig?.maxSize; // eslint-disable-line deprecation/deprecation\n maxSize !== undefined &&\n frontstageDef.dispatch({\n type: \"PANEL_SET_MAX_SIZE\",\n side,\n maxSize,\n });\n\n const collapsed = panelDef.defaultState !== StagePanelState.Open;\n frontstageDef.dispatch({\n type: \"PANEL_SET_COLLAPSED\",\n side,\n collapsed,\n });\n}\n\n/** @internal */\nexport const stateVersion = 17; // this needs to be bumped when NineZoneState is changed (to recreate the layout).\n\n/** @internal */\nexport function initializeNineZoneState(frontstageDef: FrontstageDef) {\n frontstageDef.batch(() => {\n frontstageDef.nineZoneState = defaultNineZone;\n\n const size = InternalFrontstageManager.nineZoneSize;\n size &&\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size,\n });\n\n addFrontstageWidgetDefs(frontstageDef);\n\n initializePanel(frontstageDef, StagePanelLocation.Left);\n initializePanel(frontstageDef, StagePanelLocation.Right);\n initializePanel(frontstageDef, StagePanelLocation.Top);\n initializePanel(frontstageDef, StagePanelLocation.Bottom);\n });\n}\n\n/** Converts from saved NineZoneState to NineZoneState.\n * @note Restores toolSettings tab.\n * @note Restores tab labels.\n * @internal\n */\nexport function restoreNineZoneState(\n frontstageDef: FrontstageDef,\n packed: NineZoneState\n) {\n frontstageDef.batch(() => {\n frontstageDef.nineZoneState = packed;\n\n for (const [, tab] of Object.entries(packed.tabs)) {\n const widgetDef = frontstageDef.findWidgetDef(tab.id);\n if (!widgetDef) {\n Logger.logInfo(\n UiFramework.loggerCategory(restoreNineZoneState),\n \"WidgetDef is not found for saved tab.\",\n {\n frontstageId: frontstageDef.id,\n tabId: tab.id,\n }\n );\n frontstageDef.dispatch({ type: \"WIDGET_TAB_REMOVE\", id: tab.id });\n continue;\n }\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UPDATE\",\n id: tab.id,\n overrides: toTabArgs(widgetDef),\n });\n }\n\n frontstageDef.nineZoneState = produce(\n frontstageDef.nineZoneState,\n (draft) => {\n // remove center panel section if one is found in left or right panels\n const oldLeftMiddleIndex = packed.panels.left.widgets.findIndex(\n (value) => value === \"leftMiddle\"\n );\n if (-1 !== oldLeftMiddleIndex) {\n draft.panels.left.widgets = packed.panels.left.widgets.filter(\n (value) => value !== \"leftMiddle\"\n );\n if (\"leftEnd\" in draft.widgets) {\n draft.widgets.leftMiddle.tabs.forEach((tab) =>\n draft.widgets.leftEnd.tabs.push(tab)\n );\n } else {\n draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };\n delete draft.widgets.leftMiddle;\n }\n }\n\n const oldRightMiddleIndex = packed.panels.right.widgets.findIndex(\n (value) => value === \"rightMiddle\"\n );\n if (-1 !== oldRightMiddleIndex) {\n draft.panels.right.widgets = packed.panels.right.widgets.filter(\n (value) => value !== \"rightMiddle\"\n );\n if (\"rightEnd\" in draft.widgets) {\n draft.widgets.rightMiddle.tabs.forEach((tab) =>\n draft.widgets.rightEnd.tabs.push(tab)\n );\n } else {\n draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };\n delete draft.widgets.rightMiddle;\n }\n }\n\n return;\n }\n );\n\n if (\n InternalFrontstageManager.nineZoneSize &&\n (0 !== InternalFrontstageManager.nineZoneSize.height ||\n 0 !== InternalFrontstageManager.nineZoneSize.width)\n ) {\n frontstageDef.dispatch({\n type: \"RESIZE\",\n size: {\n height: InternalFrontstageManager.nineZoneSize.height,\n width: InternalFrontstageManager.nineZoneSize.width,\n },\n });\n }\n\n addFrontstageWidgetDefs(frontstageDef);\n hideWidgetDefs(frontstageDef);\n processPopoutWidgets(frontstageDef);\n });\n}\n\n/** Prepares NineZoneState to be saved.\n * @note Removes toolSettings tab.\n * @note Removes tab labels and iconSpec.\n * @internal\n */\nexport function packNineZoneState(state: NineZoneState): NineZoneState {\n let packed = state;\n packed = produce(packed, (draft) => {\n for (const [, tab] of Object.entries(draft.tabs)) {\n tab.label = \"\";\n delete tab.iconSpec;\n }\n });\n return packed;\n}\n\n/** FrontstageState is saved in UiStateStorage.\n * @internal\n */\nexport interface WidgetPanelsFrontstageState {\n nineZone: NineZoneState;\n id: FrontstageDef[\"id\"];\n /** Frontstage version used to create the frontstage state. Allows to invalidate the layout from the frontstage. */\n version: number;\n /** Platform provided frontstage version. Allows to invalidate the layout from the platform. */\n stateVersion: number;\n}\n\n/** @internal */\nexport function useSavedFrontstageState(frontstageDef: FrontstageDef) {\n const uiStateStorage = useUiStateStorageHandler();\n const uiStateStorageRef = React.useRef(uiStateStorage);\n const isMountedRef = React.useRef(false);\n React.useEffect(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n };\n }, []);\n React.useEffect(() => {\n uiStateStorageRef.current = uiStateStorage;\n }, [uiStateStorage]);\n React.useEffect(() => {\n async function fetchFrontstageState() {\n // Switching to previously initialized frontstage.\n if (frontstageDef.nineZoneState) {\n processPopoutWidgets(frontstageDef);\n return;\n }\n\n const id = frontstageDef.id;\n const version = frontstageDef.version;\n const settingResult = await uiStateStorageRef.current.getSetting(\n FRONTSTAGE_SETTINGS_NAMESPACE,\n getFrontstageStateSettingName(id)\n );\n if (!isMountedRef.current) return;\n\n if (isFrontstageStateSettingResult(settingResult)) {\n const setting = settingResult.setting;\n if (\n setting.version === version &&\n setting.stateVersion === stateVersion\n ) {\n restoreNineZoneState(frontstageDef, setting.nineZone);\n return;\n }\n }\n initializeNineZoneState(frontstageDef);\n }\n void fetchFrontstageState();\n }, [frontstageDef]);\n}\n\n/** @internal */\nexport const FRONTSTAGE_SETTINGS_NAMESPACE = \"uifw-frontstageSettings\";\n\n/** @internal */\nexport function getFrontstageStateSettingName(\n frontstageId: WidgetPanelsFrontstageState[\"id\"]\n) {\n return `frontstageState[${frontstageId}]`;\n}\n\n/** @internal */\nexport function useFrontstageManager(\n frontstageDef: FrontstageDef,\n useToolAsToolSettingsLabel?: boolean\n) {\n const { translate } = useTranslation();\n const uiSettingsStorage = useUiStateStorageHandler();\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(\n (args) => {\n // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending\n void uiSettingsStorage.deleteSetting(\n FRONTSTAGE_SETTINGS_NAMESPACE,\n getFrontstageStateSettingName(args.frontstageDef.id)\n );\n if (frontstageDef.id === args.frontstageDef.id) {\n initializeNineZoneState(frontstageDef);\n return;\n }\n\n args.frontstageDef.nineZoneState = undefined;\n }\n );\n }, [uiSettingsStorage, frontstageDef]);\n\n const defaultLabel = translate(\"widget.labels.toolSettings\");\n\n React.useEffect(() => {\n const updateLabel = () => {\n const state = frontstageDef.nineZoneState;\n if (!state) return;\n const toolSettingsTabId = state.toolSettings?.tabId;\n if (!toolSettingsTabId) return;\n\n const toolId = UiFramework.frontstages.activeToolId;\n const label = useToolAsToolSettingsLabel\n ? IModelApp.tools.find(toolId)?.flyover || defaultLabel\n : defaultLabel;\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SET_LABEL\",\n id: toolSettingsTabId,\n label,\n });\n };\n // Whenever the frontstageDef or the useTool... changes, keep the label up to date.\n updateLabel();\n\n const removeListenerFuncs: (() => void)[] = [];\n // If useTool... is true, listen for events to keep up the label up to date.\n if (useToolAsToolSettingsLabel) {\n removeListenerFuncs.push(\n UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel),\n InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(\n updateLabel\n ),\n UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel),\n UiFramework.frontstages.onToolSettingsReloadEvent.addListener(\n updateLabel\n )\n );\n }\n return () => {\n removeListenerFuncs.forEach((removeListener) => removeListener());\n };\n }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);\n}\n\nfunction refreshNineZoneState(frontstageDef: FrontstageDef) {\n // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.\n frontstageDef.updateWidgetDefs();\n frontstageDef.batch(() => {\n addFrontstageWidgetDefs(frontstageDef);\n removeMissingWidgets(frontstageDef);\n });\n}\n\n/** @internal */\nexport function useItemsManager(frontstageDef: FrontstageDef) {\n React.useEffect(() => {\n // Not initialized yet.\n if (!frontstageDef.nineZoneState) return;\n\n // Need to refresh because UiItemsProvider may have added something while another frontstage was active.\n refreshNineZoneState(frontstageDef);\n }, [frontstageDef]);\n React.useEffect(() => {\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {\n refreshNineZoneState(frontstageDef);\n });\n }, [frontstageDef]);\n}\n\nfunction determineNewWidgets(\n frontstageDef: FrontstageDef,\n defs: readonly WidgetDef[] | undefined\n) {\n const state = frontstageDef.nineZoneState;\n assert(!!state);\n defs = defs || [];\n const uniqueDefs = defs.filter((def, index, array) => {\n return index === array.findIndex((def1) => def.id === def1.id);\n });\n return uniqueDefs.filter((def) => !(def.id in state.tabs));\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ModalFrontstageComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ModalFrontstageComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAI3C,gBAAgB;AAChB,wBAAgB,4BAA4B,oCAuB3C;AAED,gBAAgB;AAChB,wBAAgB,uBAAuB,CAAC,EACtC,SAAS,GACV,EAAE;IACD,SAAS,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC5C,4BAqBA"}
1
+ {"version":3,"file":"ModalFrontstageComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ModalFrontstageComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAI3C,gBAAgB;AAChB,wBAAgB,4BAA4B,oCAuB3C;AAED,gBAAgB;AAChB,wBAAgB,uBAAuB,CAAC,EACtC,SAAS,GACV,EAAE;IACD,SAAS,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC5C,4BAmBA"}
@@ -27,9 +27,7 @@ export function useActiveModalFrontstageInfo() {
27
27
  }
28
28
  /** @internal */
29
29
  export function ModalFrontstageComposer({ stageInfo, }) {
30
- const handleCloseModal = React.useCallback(
31
- /* istanbul ignore next */ () => UiFramework.frontstages.closeModalFrontstage(), []);
32
- // istanbul ignore next
30
+ const handleCloseModal = React.useCallback(() => UiFramework.frontstages.closeModalFrontstage(), []);
33
31
  if (!stageInfo)
34
32
  return null;
35
33
  const { title, content, appBarRight } = stageInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"ModalFrontstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ModalFrontstageComposer.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,gBAAgB;AAChB,MAAM,UAAU,4BAA4B;IAC1C,MAAM,CAAC,yBAAyB,EAAE,4BAA4B,CAAC,GAC7D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAChE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,iCAAiC,GAAG,CACxC,IAAqC,CAAC,8CAA8C;UACpF,EAAE;YACF,4BAA4B,CAC1B,IAAI,CAAC,oBAAoB,KAAK,CAAC;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,qBAAqB,CAClD,CAAC;QACJ,CAAC,CAAC;QACF,WAAW,CAAC,WAAW,CAAC,6BAA6B,CAAC,WAAW,CAC/D,iCAAiC,CAClC,CAAC;QACF,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,WAAW,CAAC,6BAA6B,CAAC,cAAc,CAClE,iCAAiC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACnC,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CAAC,EACtC,SAAS,GAGV;IACC,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW;IACxC,0BAA0B,CAAC,GAAG,EAAE,CAC9B,WAAW,CAAC,WAAW,CAAC,oBAAoB,EAAE,EAChD,EAAE,CACH,CAAC;IACF,uBAAuB;IACvB,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAElD,OAAO,CACL,oBAAC,eAAe,IACd,MAAM,EAAE,IAAI,EACZ,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,WAAW,IAEvB,OAAO,CACQ,CACnB,CAAC;AACJ,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 Frontstage\n */\nimport * as React from \"react\";\nimport type {\n ModalFrontstageChangedEventArgs,\n ModalFrontstageInfo,\n} from \"../framework/FrameworkFrontstages\";\nimport { ModalFrontstage } from \"../frontstage/ModalFrontstage\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** @internal */\nexport function useActiveModalFrontstageInfo() {\n const [activeModalFrontstageInfo, setActiveModalFrontstageInfo] =\n React.useState(UiFramework.frontstages.activeModalFrontstage);\n React.useEffect(() => {\n const handleModalFrontstageChangedEvent = (\n args: ModalFrontstageChangedEventArgs // eslint-disable-line deprecation/deprecation\n ) => {\n setActiveModalFrontstageInfo(\n args.modalFrontstageCount === 0\n ? undefined\n : UiFramework.frontstages.activeModalFrontstage\n );\n };\n UiFramework.frontstages.onModalFrontstageChangedEvent.addListener(\n handleModalFrontstageChangedEvent\n );\n return () => {\n UiFramework.frontstages.onModalFrontstageChangedEvent.removeListener(\n handleModalFrontstageChangedEvent\n );\n };\n }, [setActiveModalFrontstageInfo]);\n return activeModalFrontstageInfo;\n}\n\n/** @internal */\nexport function ModalFrontstageComposer({\n stageInfo,\n}: {\n stageInfo: ModalFrontstageInfo | undefined;\n}) {\n const handleCloseModal = React.useCallback(\n /* istanbul ignore next */ () =>\n UiFramework.frontstages.closeModalFrontstage(),\n []\n );\n // istanbul ignore next\n if (!stageInfo) return null;\n\n const { title, content, appBarRight } = stageInfo;\n\n return (\n <ModalFrontstage\n isOpen={true}\n title={title}\n closeModal={handleCloseModal}\n appBarRight={appBarRight}\n >\n {content}\n </ModalFrontstage>\n );\n}\n"]}
1
+ {"version":3,"file":"ModalFrontstageComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ModalFrontstageComposer.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,gBAAgB;AAChB,MAAM,UAAU,4BAA4B;IAC1C,MAAM,CAAC,yBAAyB,EAAE,4BAA4B,CAAC,GAC7D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAChE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,iCAAiC,GAAG,CACxC,IAAqC,CAAC,8CAA8C;UACpF,EAAE;YACF,4BAA4B,CAC1B,IAAI,CAAC,oBAAoB,KAAK,CAAC;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,qBAAqB,CAClD,CAAC;QACJ,CAAC,CAAC;QACF,WAAW,CAAC,WAAW,CAAC,6BAA6B,CAAC,WAAW,CAC/D,iCAAiC,CAClC,CAAC;QACF,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,WAAW,CAAC,6BAA6B,CAAC,cAAc,CAClE,iCAAiC,CAClC,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACnC,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,uBAAuB,CAAC,EACtC,SAAS,GAGV;IACC,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CACxC,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,oBAAoB,EAAE,EACpD,EAAE,CACH,CAAC;IACF,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IAElD,OAAO,CACL,oBAAC,eAAe,IACd,MAAM,EAAE,IAAI,EACZ,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,WAAW,IAEvB,OAAO,CACQ,CACnB,CAAC;AACJ,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 Frontstage\n */\nimport * as React from \"react\";\nimport type {\n ModalFrontstageChangedEventArgs,\n ModalFrontstageInfo,\n} from \"../framework/FrameworkFrontstages\";\nimport { ModalFrontstage } from \"../frontstage/ModalFrontstage\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** @internal */\nexport function useActiveModalFrontstageInfo() {\n const [activeModalFrontstageInfo, setActiveModalFrontstageInfo] =\n React.useState(UiFramework.frontstages.activeModalFrontstage);\n React.useEffect(() => {\n const handleModalFrontstageChangedEvent = (\n args: ModalFrontstageChangedEventArgs // eslint-disable-line deprecation/deprecation\n ) => {\n setActiveModalFrontstageInfo(\n args.modalFrontstageCount === 0\n ? undefined\n : UiFramework.frontstages.activeModalFrontstage\n );\n };\n UiFramework.frontstages.onModalFrontstageChangedEvent.addListener(\n handleModalFrontstageChangedEvent\n );\n return () => {\n UiFramework.frontstages.onModalFrontstageChangedEvent.removeListener(\n handleModalFrontstageChangedEvent\n );\n };\n }, [setActiveModalFrontstageInfo]);\n return activeModalFrontstageInfo;\n}\n\n/** @internal */\nexport function ModalFrontstageComposer({\n stageInfo,\n}: {\n stageInfo: ModalFrontstageInfo | undefined;\n}) {\n const handleCloseModal = React.useCallback(\n () => UiFramework.frontstages.closeModalFrontstage(),\n []\n );\n if (!stageInfo) return null;\n\n const { title, content, appBarRight } = stageInfo;\n\n return (\n <ModalFrontstage\n isOpen={true}\n title={title}\n closeModal={handleCloseModal}\n appBarRight={appBarRight}\n >\n {content}\n </ModalFrontstage>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,4BAgBvD"}
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,4BAiBvD"}
@@ -19,6 +19,8 @@ export function WidgetPanelsStatusBar(props) {
19
19
  const widgetControl = content === undefined
20
20
  ? widgetDef.getWidgetControl(ConfigurableUiControlType.StatusBarWidget)
21
21
  : undefined;
22
- return (React.createElement(StatusBar, { ...props, widgetControl: widgetControl }, content));
22
+ return (
23
+ // eslint-disable-next-line deprecation/deprecation
24
+ React.createElement(StatusBar, { ...props, widgetControl: widgetControl }, content));
23
25
  }
24
26
  //# sourceMappingURL=StatusBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,gBAAgB;AAChB,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,CAAC;IAC3C,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC;IACpC,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS;QACnB,CAAC,CAAE,SAAS,CAAC,gBAAgB,CACzB,yBAAyB,CAAC,eAAe,CACH;QAC1C,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,CACL,oBAAC,SAAS,OAAK,KAAK,EAAE,aAAa,EAAE,aAAa,IAC/C,OAAO,CACE,CACb,CAAC;AACJ,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 StatusBar\n */\n\nimport * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\nimport { StatusBar } from \"../statusbar/StatusBar\";\nimport type { StatusBarWidgetControl } from \"../statusbar/StatusBarWidgetControl\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\n\n/** @internal */\nexport function WidgetPanelsStatusBar(props: CommonProps) {\n const frontstageDef = useActiveFrontstageDef();\n const widgetDef = frontstageDef?.statusBar;\n if (!widgetDef) return null;\n const content = widgetDef.reactNode;\n const widgetControl =\n content === undefined\n ? (widgetDef.getWidgetControl(\n ConfigurableUiControlType.StatusBarWidget\n ) as StatusBarWidgetControl | undefined)\n : undefined;\n return (\n <StatusBar {...props} widgetControl={widgetControl}>\n {content}\n </StatusBar>\n );\n}\n"]}
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/StatusBar.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,gBAAgB;AAChB,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,CAAC;IAC3C,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC;IACpC,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS;QACnB,CAAC,CAAE,SAAS,CAAC,gBAAgB,CACzB,yBAAyB,CAAC,eAAe,CACH;QAC1C,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO;IACL,mDAAmD;IACnD,oBAAC,SAAS,OAAK,KAAK,EAAE,aAAa,EAAE,aAAa,IAC/C,OAAO,CACE,CACb,CAAC;AACJ,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 StatusBar\n */\n\nimport * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\nimport { StatusBar } from \"../statusbar/StatusBar\";\nimport type { StatusBarWidgetControl } from \"../statusbar/StatusBarWidgetControl\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\n\n/** @internal */\nexport function WidgetPanelsStatusBar(props: CommonProps) {\n const frontstageDef = useActiveFrontstageDef();\n const widgetDef = frontstageDef?.statusBar;\n if (!widgetDef) return null;\n const content = widgetDef.reactNode;\n const widgetControl =\n content === undefined\n ? (widgetDef.getWidgetControl(\n ConfigurableUiControlType.StatusBarWidget\n ) as StatusBarWidgetControl | undefined)\n : undefined;\n return (\n // eslint-disable-next-line deprecation/deprecation\n <StatusBar {...props} widgetControl={widgetControl}>\n {content}\n </StatusBar>\n );\n}\n"]}
@@ -21,7 +21,7 @@ export declare function ToolSettingsDockedContent(): React.JSX.Element;
21
21
  /** @internal */
22
22
  export declare function useHorizontalToolSettingEntries(): ToolSettingsEntry[] | undefined;
23
23
  /** @internal */
24
- export declare function useToolSettingsNode(): string | number | boolean | {} | React.ReactElement<any, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | React.ReactPortal | null | undefined;
24
+ export declare function useToolSettingsNode(): string | number | boolean | React.ReactElement<any, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | React.ReactPortal | null | undefined;
25
25
  /** @internal */
26
26
  export declare function ToolSettingsContent(): React.JSX.Element | null;
27
27
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"ToolSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ToolSettings.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,qBAAqB,CAAC;AAM7B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAEhC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAeD;;eAEe;AACf,wBAAgB,iCAAiC,YAMhD;AAED,gBAAgB;AAChB,wBAAgB,wBAAwB,6BAGvC;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,sBAsCxC;AAED,gBAAgB;AAChB,wBAAgB,+BAA+B,oCA2B9C;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,2KAuBlC;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,6BAKlC;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,sBAoBxC"}
1
+ {"version":3,"file":"ToolSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ToolSettings.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,qBAAqB,CAAC;AAM7B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAEhC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAeD;;eAEe;AACf,wBAAgB,iCAAiC,YAMhD;AAED,gBAAgB;AAChB,wBAAgB,wBAAwB,6BAGvC;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,sBAsCxC;AAED,gBAAgB;AAChB,wBAAgB,+BAA+B,oCA2B9C;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,sKAuBlC;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,6BAKlC;AAED,gBAAgB;AAChB,wBAAgB,yBAAyB,sBAoBxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,gBAAgB;AAChB,wBAAgB,oBAAoB,sBAUnC"}
1
+ {"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,gBAAgB;AAChB,wBAAgB,oBAAoB,sBAUnC"}
@@ -8,6 +8,7 @@
8
8
  import "./Toolbars.scss";
9
9
  import * as React from "react";
10
10
  import { useActiveFrontstageDef } from "../frontstage/FrontstageDef";
11
+ import { NavigationWidget } from "../preview/control-widget-visibility/NavigationWidget";
11
12
  /** @internal */
12
13
  export function WidgetPanelsToolbars() {
13
14
  const frontstageDef = useActiveFrontstageDef();
@@ -15,6 +16,6 @@ export function WidgetPanelsToolbars() {
15
16
  const navigation = frontstageDef?.viewNavigation?.reactNode;
16
17
  return (React.createElement("div", { className: "uifw-widgetPanels-toolbars" },
17
18
  tools,
18
- navigation));
19
+ React.createElement(NavigationWidget, null, navigation)));
19
20
  }
20
21
  //# sourceMappingURL=Toolbars.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,gBAAgB;AAChB,MAAM,UAAU,oBAAoB;IAClC,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,aAAa,EAAE,mBAAmB,EAAE,SAAS,CAAC;IAC5D,MAAM,UAAU,GAAG,aAAa,EAAE,cAAc,EAAE,SAAS,CAAC;IAC5D,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACxC,KAAK;QACL,UAAU,CACP,CACP,CAAC;AACJ,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 Item\n */\n\nimport \"./Toolbars.scss\";\nimport * as React from \"react\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\n\n/** @internal */\nexport function WidgetPanelsToolbars() {\n const frontstageDef = useActiveFrontstageDef();\n const tools = frontstageDef?.contentManipulation?.reactNode;\n const navigation = frontstageDef?.viewNavigation?.reactNode;\n return (\n <div className=\"uifw-widgetPanels-toolbars\">\n {tools}\n {navigation}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uDAAuD,CAAC;AAEzF,gBAAgB;AAChB,MAAM,UAAU,oBAAoB;IAClC,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,aAAa,EAAE,mBAAmB,EAAE,SAAS,CAAC;IAC5D,MAAM,UAAU,GAAG,aAAa,EAAE,cAAc,EAAE,SAAS,CAAC;IAC5D,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACxC,KAAK;QACN,oBAAC,gBAAgB,QAAE,UAAU,CAAoB,CAC7C,CACP,CAAC;AACJ,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 Item\n */\n\nimport \"./Toolbars.scss\";\nimport * as React from \"react\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { NavigationWidget } from \"../preview/control-widget-visibility/NavigationWidget\";\n\n/** @internal */\nexport function WidgetPanelsToolbars() {\n const frontstageDef = useActiveFrontstageDef();\n const tools = frontstageDef?.contentManipulation?.reactNode;\n const navigation = frontstageDef?.viewNavigation?.reactNode;\n return (\n <div className=\"uifw-widgetPanels-toolbars\">\n {tools}\n <NavigationWidget>{navigation}</NavigationWidget>\n </div>\n );\n}\n"]}
@@ -0,0 +1,8 @@
1
+ /** @packageDocumentation
2
+ * @module Frontstage
3
+ */
4
+ import type { FrontstageDef } from "../frontstage/FrontstageDef";
5
+ import type { LayoutStore } from "../layout/base/LayoutStore";
6
+ /** @internal */
7
+ export declare function useSaveFrontstageSettings(frontstageDef: FrontstageDef, store: LayoutStore): void;
8
+ //# sourceMappingURL=useSaveFrontstageSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSaveFrontstageSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/useSaveFrontstageSettings.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAkB9D,gBAAgB;AAChB,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,WAAW,QA6CnB"}
@@ -0,0 +1,51 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Frontstage
7
+ */
8
+ import * as React from "react";
9
+ import { useUiStateStorageHandler } from "../uistate/useUiStateStorage";
10
+ import { FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName, packNineZoneState, stateVersion, } from "./Frontstage";
11
+ import { debounce } from "lodash";
12
+ /** @internal */
13
+ export function useSaveFrontstageSettings(frontstageDef, store) {
14
+ const uiSettingsStorage = useUiStateStorageHandler();
15
+ const saveSettingRef = React.useRef(undefined);
16
+ const save = React.useCallback(async (frontstage, state) => {
17
+ if (!saveSettingRef.current)
18
+ return;
19
+ if (state.draggedTab)
20
+ return;
21
+ return saveSettingRef.current(frontstage, state);
22
+ }, []);
23
+ React.useEffect(() => {
24
+ const saveSetting = (saveSettingRef.current = debounce(async (frontstage, state) => {
25
+ const id = frontstage.id;
26
+ const setting = {
27
+ id,
28
+ version: frontstage.version,
29
+ stateVersion,
30
+ nineZone: packNineZoneState(state),
31
+ };
32
+ await uiSettingsStorage.saveSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
33
+ }, 1000));
34
+ return () => {
35
+ saveSettingRef.current = undefined;
36
+ saveSetting.cancel();
37
+ };
38
+ }, [uiSettingsStorage]);
39
+ React.useEffect(() => {
40
+ return () => {
41
+ // Save pending frontstage changes when changing frontstage.
42
+ void saveSettingRef.current?.flush();
43
+ };
44
+ }, [frontstageDef]);
45
+ React.useEffect(() => {
46
+ return store.subscribe(() => {
47
+ void save(frontstageDef, store.getState());
48
+ });
49
+ }, [save, frontstageDef, store]);
50
+ }
51
+ //# sourceMappingURL=useSaveFrontstageSettings.js.map