@itwin/appui-react 3.2.0-dev.9 → 3.2.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 (295) hide show
  1. package/CHANGELOG.md +54 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +10 -0
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +22 -0
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +4 -4
  7. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js +6 -6
  11. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  13. package/lib/cjs/appui-react/accudraw/Calculator.js +3 -2
  14. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  15. package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
  16. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +4 -2
  17. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  18. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +2 -2
  19. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  20. package/lib/cjs/appui-react/configurableui/state.d.ts +9 -1
  21. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/configurableui/state.js +13 -0
  23. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  24. package/lib/cjs/appui-react/content/ContentGroup.d.ts +1 -1
  25. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  26. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  27. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +1 -0
  28. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/feedback/ElementTooltip.js +16 -0
  30. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  31. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -0
  32. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  33. package/lib/cjs/appui-react/frontstage/Frontstage.js +9 -1
  34. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  35. package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  36. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +2 -0
  37. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  38. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  39. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +18 -9
  40. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  41. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -2
  42. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  43. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
  44. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  45. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +2 -2
  46. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  47. package/lib/cjs/appui-react/imodel-components/VisibilityTreeBase.scss +3 -3
  48. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -1
  49. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  50. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  51. package/lib/cjs/appui-react/redux/StateManager.d.ts.map +1 -1
  52. package/lib/cjs/appui-react/redux/StateManager.js +1 -0
  53. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  54. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  55. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +25 -5
  56. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  57. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +1 -1
  58. package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  59. package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
  60. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -4
  61. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  62. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +6 -10
  63. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  64. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -1
  65. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  66. package/lib/cjs/appui-react/statusfields/Indicator.d.ts +3 -3
  67. package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
  69. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
  70. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  71. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  72. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +35 -33
  73. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  74. package/lib/cjs/appui-react/theme/ThemeManager.js +1 -1
  75. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  76. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts +1 -0
  77. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  78. package/lib/cjs/appui-react/toolbar/Toolbar.js +8 -3
  79. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  80. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +5 -26
  81. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  82. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +16 -16
  83. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  84. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -0
  85. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -0
  86. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +96 -0
  87. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -0
  88. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +1 -18
  89. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  90. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  91. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +33 -0
  92. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -0
  93. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +51 -0
  94. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -0
  95. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +3 -18
  96. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  97. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +4 -3
  98. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  99. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +31 -0
  100. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -0
  101. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +79 -0
  102. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -0
  103. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +5 -0
  104. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  105. package/lib/cjs/appui-react/uistate/AppUiSettings.js +8 -0
  106. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  107. package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
  108. package/lib/cjs/appui-react/uistate/UserSettingsStorage.js +3 -0
  109. package/lib/cjs/appui-react/uistate/UserSettingsStorage.js.map +1 -1
  110. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  111. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
  112. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  113. package/lib/cjs/appui-react/utils/PropsHelper.d.ts +3 -1
  114. package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
  115. package/lib/cjs/appui-react/utils/PropsHelper.js +10 -0
  116. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  117. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  118. package/lib/cjs/appui-react/utils/UiShowHideManager.js +1 -0
  119. package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
  120. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +17 -1
  121. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/widget-panels/Frontstage.js +143 -129
  123. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  124. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  125. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +15 -2
  126. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  127. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +17 -1
  128. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +3 -3
  129. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  130. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +1 -1
  131. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  132. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  133. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +8 -1
  134. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/widgets/WidgetDef.js +14 -4
  136. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  137. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts +1 -1
  138. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  139. package/lib/cjs/appui-react/widgets/WidgetHost.js +106 -7
  140. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  141. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  142. package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -1
  143. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  144. package/lib/cjs/appui-react.d.ts +3 -0
  145. package/lib/cjs/appui-react.d.ts.map +1 -1
  146. package/lib/cjs/appui-react.js +3 -0
  147. package/lib/cjs/appui-react.js.map +1 -1
  148. package/lib/esm/appui-react/UiFramework.d.ts +10 -0
  149. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  150. package/lib/esm/appui-react/UiFramework.js +22 -0
  151. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  152. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +4 -4
  153. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  154. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +1 -1
  155. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  156. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js +6 -6
  157. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  158. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  159. package/lib/esm/appui-react/accudraw/Calculator.js +5 -4
  160. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  161. package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
  162. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +5 -3
  163. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  164. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +2 -2
  165. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  166. package/lib/esm/appui-react/configurableui/state.d.ts +9 -1
  167. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  168. package/lib/esm/appui-react/configurableui/state.js +13 -0
  169. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  170. package/lib/esm/appui-react/content/ContentGroup.d.ts +1 -1
  171. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  172. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  173. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +1 -0
  174. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  175. package/lib/esm/appui-react/feedback/ElementTooltip.js +16 -0
  176. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  177. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -0
  178. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  179. package/lib/esm/appui-react/frontstage/Frontstage.js +7 -0
  180. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  181. package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
  182. package/lib/esm/appui-react/frontstage/FrontstageComposer.js +2 -0
  183. package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  184. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  185. package/lib/esm/appui-react/frontstage/FrontstageDef.js +18 -9
  186. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  187. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -2
  188. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  189. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
  190. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  191. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +2 -2
  192. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  193. package/lib/esm/appui-react/imodel-components/VisibilityTreeBase.scss +3 -3
  194. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -1
  195. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  196. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  197. package/lib/esm/appui-react/redux/StateManager.d.ts.map +1 -1
  198. package/lib/esm/appui-react/redux/StateManager.js +1 -0
  199. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  200. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  201. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +25 -5
  202. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  203. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +1 -1
  204. package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
  205. package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
  206. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -4
  207. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  208. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +6 -10
  209. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  210. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -1
  211. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  212. package/lib/esm/appui-react/statusfields/Indicator.d.ts +3 -3
  213. package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
  214. package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
  215. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
  216. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  217. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  218. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +20 -18
  219. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  220. package/lib/esm/appui-react/theme/ThemeManager.js +1 -1
  221. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  222. package/lib/esm/appui-react/toolbar/Toolbar.d.ts +1 -0
  223. package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  224. package/lib/esm/appui-react/toolbar/Toolbar.js +8 -3
  225. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  226. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +5 -26
  227. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  228. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +17 -17
  229. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  230. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -0
  231. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -0
  232. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +92 -0
  233. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -0
  234. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +1 -18
  235. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  236. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  237. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +33 -0
  238. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -0
  239. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +47 -0
  240. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -0
  241. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +3 -18
  242. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  243. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +4 -3
  244. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  245. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +31 -0
  246. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -0
  247. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +75 -0
  248. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -0
  249. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +5 -0
  250. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  251. package/lib/esm/appui-react/uistate/AppUiSettings.js +8 -0
  252. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  253. package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
  254. package/lib/esm/appui-react/uistate/UserSettingsStorage.js +3 -0
  255. package/lib/esm/appui-react/uistate/UserSettingsStorage.js.map +1 -1
  256. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  257. package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
  258. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  259. package/lib/esm/appui-react/utils/PropsHelper.d.ts +3 -1
  260. package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
  261. package/lib/esm/appui-react/utils/PropsHelper.js +11 -1
  262. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  263. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
  264. package/lib/esm/appui-react/utils/UiShowHideManager.js +1 -0
  265. package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
  266. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +17 -1
  267. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  268. package/lib/esm/appui-react/widget-panels/Frontstage.js +144 -130
  269. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  270. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  271. package/lib/esm/appui-react/widget-panels/ToolSettings.js +15 -2
  272. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  273. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +17 -1
  274. package/lib/esm/appui-react/widgets/BackstageAppButton.js +3 -3
  275. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  276. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +1 -1
  277. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  278. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  279. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +8 -1
  280. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  281. package/lib/esm/appui-react/widgets/WidgetDef.js +14 -4
  282. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  283. package/lib/esm/appui-react/widgets/WidgetHost.d.ts +1 -1
  284. package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  285. package/lib/esm/appui-react/widgets/WidgetHost.js +106 -7
  286. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  287. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  288. package/lib/esm/appui-react/widgets/WidgetManager.js +2 -1
  289. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  290. package/lib/esm/appui-react.d.ts +3 -0
  291. package/lib/esm/appui-react.d.ts.map +1 -1
  292. package/lib/esm/appui-react.js +3 -0
  293. package/lib/esm/appui-react.js.map +1 -1
  294. package/lib/public/locales/en/UiFramework.json +7 -2
  295. package/package.json +37 -37
@@ -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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"}
@@ -14,7 +14,7 @@ import { assert, Logger, ProcessDetector } from "@itwin/core-bentley";
14
14
  import { StagePanelLocation, UiItemsManager, WidgetState } from "@itwin/appui-abstract";
15
15
  import { Size, UiStateStorageStatus } from "@itwin/core-react";
16
16
  import { ToolbarPopupAutoHideContext } from "@itwin/components-react";
17
- import { addPanelWidget, addTab, addWidgetTabToFloatingPanel, convertAllPopupWidgetContainersToFloating, createNineZoneState, createTabsState, createTabState, createWidgetState, findTab, findWidget, floatingWidgetBringToFront, FloatingWidgets, getUniqueId, isFloatingLocation, isHorizontalPanelSide, NineZone, NineZoneStateReducer, panelSides, removeTab, toolSettingsTabId, WidgetPanels, } from "@itwin/appui-layout-react";
17
+ import { addPanelWidget, addTab, addWidgetTabToFloatingPanel, addWidgetTabToPanelSection, convertAllPopupWidgetContainersToFloating, createNineZoneState, createTabsState, createTabState, createWidgetState, findTab, findWidget, floatingWidgetBringToFront, FloatingWidgets, getUniqueId, getWidgetPanelSectionId, isFloatingLocation, isHorizontalPanelSide, NineZone, NineZoneStateReducer, panelSides, removeTab, toolSettingsTabId, WidgetPanels, } from "@itwin/appui-layout-react";
18
18
  import { useActiveFrontstageDef } from "../frontstage/Frontstage";
19
19
  import { FrontstageManager } from "../frontstage/FrontstageManager";
20
20
  import { StagePanelState } from "../stagepanels/StagePanelDef";
@@ -31,20 +31,24 @@ import { ToolSettingsContent, WidgetPanelsToolSettings } from "./ToolSettings";
31
31
  import { useEscapeSetFocusToHome } from "../hooks/useEscapeSetFocusToHome";
32
32
  import { useSelector } from "react-redux";
33
33
  import { useUiVisibility } from "../hooks/useUiVisibility";
34
- const panelZoneKeys = ["start", "middle", "end"];
35
- // istanbul ignore next
36
- const WidgetPanelsFrontstageComponent = React.memo(function WidgetPanelsFrontstageComponent() {
34
+ const panelZoneKeys = ["start", "end"];
35
+ const WidgetInternals = React.memo(function WidgetInternals() {
37
36
  const activeModalFrontstageInfo = useActiveModalFrontstageInfo();
38
37
  const uiIsVisible = useUiVisibility();
39
38
  return (React.createElement(React.Fragment, null,
40
39
  React.createElement(ToolbarPopupAutoHideContext.Provider, { value: !uiIsVisible },
41
40
  React.createElement(ModalFrontstageComposer, { stageInfo: activeModalFrontstageInfo }),
42
- React.createElement(WidgetPanelsToolSettings, null),
43
41
  React.createElement(WidgetPanels, { className: "uifw-widgetPanels", centerContent: React.createElement(WidgetPanelsToolbars, null) },
44
42
  React.createElement(WidgetPanelsFrontstageContent, null)),
45
43
  React.createElement(WidgetPanelsStatusBar, null),
46
44
  React.createElement(FloatingWidgets, null))));
47
45
  });
46
+ // istanbul ignore next
47
+ const WidgetPanelsFrontstageComponent = React.memo(function WidgetPanelsFrontstageComponent() {
48
+ return (React.createElement(React.Fragment, null,
49
+ React.createElement(WidgetPanelsToolSettings, null),
50
+ React.createElement(WidgetInternals, null)));
51
+ });
48
52
  const widgetContent = React.createElement(WidgetContent, null);
49
53
  const toolSettingsContent = React.createElement(ToolSettingsContent, null);
50
54
  const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
@@ -155,9 +159,9 @@ export const WidgetPanelsFrontstage = React.memo(function WidgetPanelsFrontstage
155
159
  frontstageDef && frontstageDef.setIsApplicationClosing(true);
156
160
  };
157
161
  frontstageDef && frontstageDef.setIsApplicationClosing(false);
158
- window.addEventListener("beforeunload", triggerWidowCloseProcessing);
162
+ window.addEventListener("unload", triggerWidowCloseProcessing);
159
163
  return () => {
160
- window.removeEventListener("beforeunload", triggerWidowCloseProcessing);
164
+ window.removeEventListener("unload", triggerWidowCloseProcessing);
161
165
  };
162
166
  }, [frontstageDef]);
163
167
  if (!frontstageDef)
@@ -177,13 +181,22 @@ export function ActiveFrontstageDefProvider({ frontstageDef }) {
177
181
  useFrontstageManager(frontstageDef);
178
182
  useItemsManager(frontstageDef);
179
183
  const labels = useLabels();
184
+ const uiIsVisible = useUiVisibility();
180
185
  const showWidgetIcon = useSelector((state) => {
181
186
  const frameworkState = state[UiFramework.frameworkStateKey];
182
187
  return !!frameworkState.configurableUiState.showWidgetIcon;
183
188
  });
189
+ const autoCollapseUnpinnedPanels = useSelector((state) => {
190
+ const frameworkState = state[UiFramework.frameworkStateKey];
191
+ return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;
192
+ });
193
+ const animateToolSettings = useSelector((state) => {
194
+ const frameworkState = state[UiFramework.frameworkStateKey];
195
+ return !!frameworkState.configurableUiState.animateToolSettings;
196
+ });
184
197
  const handleKeyDown = useEscapeSetFocusToHome();
185
198
  return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
186
- React.createElement(NineZone, { dispatch: dispatch, labels: labels, state: nineZone, tab: tabElement, showWidgetIcon: showWidgetIcon, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent }, widgetPanelsFrontstage)));
199
+ React.createElement(NineZone, { dispatch: dispatch, labels: labels, state: nineZone, tab: tabElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
187
200
  }
188
201
  /** @internal */
189
202
  export function useLabels() {
@@ -211,6 +224,7 @@ export function addWidgets(state, widgets, side, widgetId) {
211
224
  label,
212
225
  iconSpec: widget.iconSpec,
213
226
  preferredPanelWidgetSize: widget.preferredPanelSize,
227
+ preferredFloatingWidgetSize: widget.defaultFloatingSize,
214
228
  canPopout: widget.canPopout,
215
229
  isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
216
230
  });
@@ -233,15 +247,16 @@ export function appendWidgets(state, widgetDefs, side, preferredWidgetIndex) {
233
247
  var _a;
234
248
  if (widgetDefs.length === 0)
235
249
  return state;
236
- // Add new tabs.
237
- const tabs = new Array();
250
+ // Add missing widget tabs.
238
251
  for (const widgetDef of widgetDefs) {
239
252
  const label = getWidgetLabel(widgetDef.label);
240
253
  const saveTab = state.tabs[widgetDef.id];
241
254
  const preferredPanelWidgetSize = saveTab ? saveTab.preferredPanelWidgetSize : widgetDef.preferredPanelSize;
242
- const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : undefined;
255
+ const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : widgetDef.defaultFloatingSize;
243
256
  const preferredPopoutWidgetSize = saveTab ? saveTab.preferredPopoutWidgetSize : undefined;
244
- const userSized = saveTab ? saveTab.userSized : undefined;
257
+ // if a defaultFloatingSize is specified then this mean the widget can't determine its intrinsic size and must be explicitly sized
258
+ const userSized = saveTab ? (saveTab.userSized || !!widgetDef.defaultFloatingSize && !!saveTab.preferredFloatingWidgetSize)
259
+ : !!widgetDef.defaultFloatingSize;
245
260
  state = addTab(state, widgetDef.id, {
246
261
  label,
247
262
  iconSpec: widgetDef.iconSpec,
@@ -260,29 +275,8 @@ export function appendWidgets(state, widgetDefs, side, preferredWidgetIndex) {
260
275
  state = addWidgetTabToFloatingPanel(state, floatingContainerId, widgetDef.id, homePanelInfo, preferredFloatingWidgetSize, preferredPosition, userSized, widgetDef.isFloatingStateWindowResizable);
261
276
  }
262
277
  else {
263
- tabs.push(widgetDef.id);
264
- }
265
- }
266
- if (tabs.length) {
267
- const panel = state.panels[side];
268
- preferredWidgetIndex = preferredWidgetIndex >= panel.maxWidgetCount ? panel.maxWidgetCount - 1 : preferredWidgetIndex;
269
- if (preferredWidgetIndex < panel.widgets.length) {
270
- // Append tabs to existing widget.
271
- const widgetId = panel.widgets[preferredWidgetIndex];
272
- state = produce(state, (draft) => {
273
- const widget = draft.widgets[widgetId];
274
- for (const tab of tabs) {
275
- widget.tabs.push(tab);
276
- }
277
- });
278
- }
279
- else {
280
- const newWidgetId = getNextAvailablePanelWidgetId(panel);
281
- const widget = createWidgetState(newWidgetId, tabs);
282
- state = produce(state, (draft) => {
283
- draft.panels[side].widgets.push(widget.id);
284
- draft.widgets[widget.id] = castDraft(widget);
285
- });
278
+ const widgetPanelSectionId = getWidgetPanelSectionId(side, preferredWidgetIndex);
279
+ state = addWidgetTabToPanelSection(state, side, widgetPanelSectionId, widgetDef.id);
286
280
  }
287
281
  }
288
282
  return state;
@@ -306,28 +300,26 @@ function processPopoutWidgets(initialState, frontstageDef) {
306
300
  * @internal
307
301
  */
308
302
  export function addMissingWidgets(frontstageDef, initialState) {
309
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
303
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
310
304
  let state = initialState;
311
305
  state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.centerLeft) === null || _a === void 0 ? void 0 : _a.widgetDefs, initialState), "left", 0);
312
306
  state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.panelZones.start.widgetDefs, initialState), "left", 0);
313
307
  state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.bottomLeft) === null || _c === void 0 ? void 0 : _c.widgetDefs, initialState), "left", 1);
314
- state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelZones.middle.widgetDefs, initialState), "left", 1);
315
- state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelWidgetDefs, initialState), "left", 2);
316
- state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.leftPanel) === null || _f === void 0 ? void 0 : _f.panelZones.end.widgetDefs, initialState), "left", 2);
317
- state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.centerRight) === null || _g === void 0 ? void 0 : _g.widgetDefs, initialState), "right", 0);
318
- state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.rightPanel) === null || _h === void 0 ? void 0 : _h.panelZones.start.widgetDefs, initialState), "right", 0);
319
- state = appendWidgets(state, determineNewWidgets((_j = frontstageDef.bottomRight) === null || _j === void 0 ? void 0 : _j.widgetDefs, initialState), "right", 1);
320
- state = appendWidgets(state, determineNewWidgets((_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelZones.middle.widgetDefs, initialState), "right", 1);
321
- state = appendWidgets(state, determineNewWidgets((_l = frontstageDef.rightPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs, initialState), "right", 2);
322
- state = appendWidgets(state, determineNewWidgets((_m = frontstageDef.rightPanel) === null || _m === void 0 ? void 0 : _m.panelZones.end.widgetDefs, initialState), "right", 2);
323
- state = appendWidgets(state, determineNewWidgets((_o = frontstageDef.topPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs, initialState), "top", 0);
324
- state = appendWidgets(state, determineNewWidgets((_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.start.widgetDefs, initialState), "top", 0);
325
- state = appendWidgets(state, determineNewWidgets((_q = frontstageDef.topMostPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs, initialState), "top", 1); // eslint-disable-line deprecation/deprecation
326
- state = appendWidgets(state, determineNewWidgets((_r = frontstageDef.topPanel) === null || _r === void 0 ? void 0 : _r.panelZones.end.widgetDefs, initialState), "top", 1);
327
- state = appendWidgets(state, determineNewWidgets((_s = frontstageDef.bottomPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs, initialState), "bottom", 0);
328
- state = appendWidgets(state, determineNewWidgets((_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.start.widgetDefs, initialState), "bottom", 0);
329
- state = appendWidgets(state, determineNewWidgets((_u = frontstageDef.bottomMostPanel) === null || _u === void 0 ? void 0 : _u.panelWidgetDefs, initialState), "bottom", 1); // eslint-disable-line deprecation/deprecation
330
- state = appendWidgets(state, determineNewWidgets((_v = frontstageDef.bottomPanel) === null || _v === void 0 ? void 0 : _v.panelZones.end.widgetDefs, initialState), "bottom", 1);
308
+ state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelWidgetDefs, initialState), "left", 1);
309
+ state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelZones.end.widgetDefs, initialState), "left", 1);
310
+ state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.centerRight) === null || _f === void 0 ? void 0 : _f.widgetDefs, initialState), "right", 0);
311
+ state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.rightPanel) === null || _g === void 0 ? void 0 : _g.panelZones.start.widgetDefs, initialState), "right", 0);
312
+ state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomRight) === null || _h === void 0 ? void 0 : _h.widgetDefs, initialState), "right", 1);
313
+ state = appendWidgets(state, determineNewWidgets((_j = frontstageDef.rightPanel) === null || _j === void 0 ? void 0 : _j.panelWidgetDefs, initialState), "right", 1);
314
+ state = appendWidgets(state, determineNewWidgets((_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelZones.end.widgetDefs, initialState), "right", 1);
315
+ state = appendWidgets(state, determineNewWidgets((_l = frontstageDef.topPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs, initialState), "top", 0);
316
+ state = appendWidgets(state, determineNewWidgets((_m = frontstageDef.topPanel) === null || _m === void 0 ? void 0 : _m.panelZones.start.widgetDefs, initialState), "top", 0);
317
+ state = appendWidgets(state, determineNewWidgets((_o = frontstageDef.topMostPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs, initialState), "top", 1); // eslint-disable-line deprecation/deprecation
318
+ state = appendWidgets(state, determineNewWidgets((_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.end.widgetDefs, initialState), "top", 1);
319
+ state = appendWidgets(state, determineNewWidgets((_q = frontstageDef.bottomPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs, initialState), "bottom", 0);
320
+ state = appendWidgets(state, determineNewWidgets((_r = frontstageDef.bottomPanel) === null || _r === void 0 ? void 0 : _r.panelZones.start.widgetDefs, initialState), "bottom", 0);
321
+ state = appendWidgets(state, determineNewWidgets((_s = frontstageDef.bottomMostPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs, initialState), "bottom", 1); // eslint-disable-line deprecation/deprecation
322
+ state = appendWidgets(state, determineNewWidgets((_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.end.widgetDefs, initialState), "bottom", 1);
331
323
  return state;
332
324
  }
333
325
  /** Removes widgets with Hidden defaultState. */
@@ -383,18 +375,12 @@ export function getWidgetId(side, key) {
383
375
  if (key === "start") {
384
376
  return "leftStart";
385
377
  }
386
- else if (key === "middle") {
387
- return "leftMiddle";
388
- }
389
378
  return "leftEnd";
390
379
  }
391
380
  case "right": {
392
381
  if (key === "start") {
393
382
  return "rightStart";
394
383
  }
395
- else if (key === "middle") {
396
- return "rightMiddle";
397
- }
398
384
  return "rightEnd";
399
385
  }
400
386
  case "top": {
@@ -411,74 +397,90 @@ export function getWidgetId(side, key) {
411
397
  }
412
398
  }
413
399
  /** @internal */
414
- function getNextAvailablePanelWidgetId(panel) {
415
- const index = panel.widgets.length;
416
- return getWidgetId(panel.side, panelZoneKeys[index]);
417
- }
418
- function isVerticalPanelSide(side) { return !isHorizontalPanelSide(side); }
419
- /** @internal */
420
400
  export function getPanelZoneWidgets(frontstageDef, panelZone) {
421
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
401
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
422
402
  switch (panelZone) {
423
403
  case "leftStart": {
424
- return [
425
- ...((_a = frontstageDef.centerLeft) === null || _a === void 0 ? void 0 : _a.widgetDefs) || [],
426
- ...((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.panelZones.start.widgetDefs) || [],
427
- ];
428
- }
429
- case "leftMiddle": {
430
- return [
431
- ...((_c = frontstageDef.bottomLeft) === null || _c === void 0 ? void 0 : _c.widgetDefs) || [],
432
- ...((_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelZones.middle.widgetDefs) || [],
433
- ];
404
+ const outArray = [...((_a = frontstageDef.centerLeft) === null || _a === void 0 ? void 0 : _a.widgetDefs) || []];
405
+ (_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.panelZones.start.widgetDefs.forEach((widgetDef) => {
406
+ // istanbul ignore else
407
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
408
+ outArray.push(widgetDef);
409
+ });
410
+ return outArray;
434
411
  }
435
412
  case "leftEnd": {
436
- return [
437
- ...((_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelWidgetDefs) || [],
438
- ...((_f = frontstageDef.leftPanel) === null || _f === void 0 ? void 0 : _f.panelZones.end.widgetDefs) || [],
439
- ];
413
+ const outArray = [...((_c = frontstageDef.bottomLeft) === null || _c === void 0 ? void 0 : _c.widgetDefs) || []];
414
+ (_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelZones.end.widgetDefs.forEach((widgetDef) => {
415
+ // istanbul ignore else
416
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
417
+ outArray.push(widgetDef);
418
+ });
419
+ (_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelWidgetDefs.forEach((widgetDef) => {
420
+ // istanbul ignore else
421
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
422
+ outArray.push(widgetDef);
423
+ });
424
+ return outArray;
440
425
  }
441
426
  case "rightStart": {
442
- return [
443
- ...((_g = frontstageDef.centerRight) === null || _g === void 0 ? void 0 : _g.widgetDefs) || [],
444
- ...((_h = frontstageDef.rightPanel) === null || _h === void 0 ? void 0 : _h.panelZones.start.widgetDefs) || [],
445
- ];
446
- }
447
- case "rightMiddle": {
448
- return [
449
- ...((_j = frontstageDef.bottomRight) === null || _j === void 0 ? void 0 : _j.widgetDefs) || [],
450
- ...((_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelZones.middle.widgetDefs) || [],
451
- ];
427
+ const outArray = [...((_f = frontstageDef.centerRight) === null || _f === void 0 ? void 0 : _f.widgetDefs) || []];
428
+ (_g = frontstageDef.rightPanel) === null || _g === void 0 ? void 0 : _g.panelZones.start.widgetDefs.forEach((widgetDef) => {
429
+ // istanbul ignore else
430
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
431
+ outArray.push(widgetDef);
432
+ });
433
+ return outArray;
452
434
  }
453
435
  case "rightEnd": {
454
- return [
455
- ...((_l = frontstageDef.rightPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs) || [],
456
- ...((_m = frontstageDef.rightPanel) === null || _m === void 0 ? void 0 : _m.panelZones.end.widgetDefs) || [],
457
- ];
436
+ const outArray = [...((_h = frontstageDef.bottomRight) === null || _h === void 0 ? void 0 : _h.widgetDefs) || []];
437
+ (_j = frontstageDef.rightPanel) === null || _j === void 0 ? void 0 : _j.panelZones.end.widgetDefs.forEach((widgetDef) => {
438
+ // istanbul ignore else
439
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
440
+ outArray.push(widgetDef);
441
+ });
442
+ (_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelWidgetDefs.forEach((widgetDef) => {
443
+ // istanbul ignore else
444
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
445
+ outArray.push(widgetDef);
446
+ });
447
+ return outArray;
458
448
  }
459
449
  case "topStart": {
460
- return [
461
- ...((_o = frontstageDef.topPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs) || [],
462
- ...((_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.start.widgetDefs) || [],
463
- ];
450
+ const outArray = [...((_l = frontstageDef.topPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs) || []];
451
+ (_m = frontstageDef.topPanel) === null || _m === void 0 ? void 0 : _m.panelZones.start.widgetDefs.forEach((widgetDef) => {
452
+ // istanbul ignore else
453
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
454
+ outArray.push(widgetDef);
455
+ });
456
+ return outArray;
464
457
  }
465
458
  case "topEnd": {
466
- return [
467
- ...((_q = frontstageDef.topMostPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs) || [],
468
- ...((_r = frontstageDef.topPanel) === null || _r === void 0 ? void 0 : _r.panelZones.end.widgetDefs) || [],
469
- ];
459
+ const outArray = [...((_o = frontstageDef.topMostPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs) || []]; // eslint-disable-line deprecation/deprecation
460
+ (_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.end.widgetDefs.forEach((widgetDef) => {
461
+ // istanbul ignore else
462
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
463
+ outArray.push(widgetDef);
464
+ });
465
+ return outArray;
470
466
  }
471
467
  case "bottomStart": {
472
- return [
473
- ...((_s = frontstageDef.bottomPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs) || [],
474
- ...((_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.start.widgetDefs) || [],
475
- ];
468
+ const outArray = [...((_q = frontstageDef.bottomPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs) || []];
469
+ (_r = frontstageDef.bottomPanel) === null || _r === void 0 ? void 0 : _r.panelZones.start.widgetDefs.forEach((widgetDef) => {
470
+ // istanbul ignore else
471
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
472
+ outArray.push(widgetDef);
473
+ });
474
+ return outArray;
476
475
  }
477
476
  case "bottomEnd": {
478
- return [
479
- ...((_u = frontstageDef.bottomMostPanel) === null || _u === void 0 ? void 0 : _u.panelWidgetDefs) || [],
480
- ...((_v = frontstageDef.bottomPanel) === null || _v === void 0 ? void 0 : _v.panelZones.end.widgetDefs) || [],
481
- ];
477
+ const outArray = [...((_s = frontstageDef.bottomMostPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs) || []]; // eslint-disable-line deprecation/deprecation
478
+ (_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.end.widgetDefs.forEach((widgetDef) => {
479
+ // istanbul ignore else
480
+ if (undefined === outArray.find((widget) => widget.id === widgetDef.id))
481
+ outArray.push(widgetDef);
482
+ });
483
+ return outArray;
482
484
  }
483
485
  }
484
486
  }
@@ -487,11 +489,6 @@ export function addPanelWidgets(state, frontstageDef, side) {
487
489
  const start = getWidgetId(side, "start");
488
490
  const startWidgets = getPanelZoneWidgets(frontstageDef, start);
489
491
  state = addWidgets(state, startWidgets, side, start);
490
- if (isVerticalPanelSide(side)) {
491
- const middle = getWidgetId(side, "middle");
492
- const middleWidgets = getPanelZoneWidgets(frontstageDef, middle);
493
- state = addWidgets(state, middleWidgets, side, middle);
494
- }
495
492
  const end = getWidgetId(side, "end");
496
493
  const endWidgets = getPanelZoneWidgets(frontstageDef, end);
497
494
  state = addWidgets(state, endWidgets, side, end);
@@ -529,7 +526,7 @@ function getPanelMaxSize(maxSizeSpec, panel, nineZoneSize) {
529
526
  const size = isHorizontalPanelSide(panel) ? nineZoneSize.height : nineZoneSize.width;
530
527
  return maxSizeSpec.percentage / 100 * size;
531
528
  }
532
- const stateVersion = 11; // this needs to be bumped when NineZoneState is changed (to recreate layout).
529
+ const stateVersion = 12; // this needs to be bumped when NineZoneState is changed (to recreate layout).
533
530
  /** @internal */
534
531
  export function initializeNineZoneState(frontstageDef) {
535
532
  let nineZone = defaultNineZone;
@@ -613,6 +610,31 @@ export function restoreNineZoneState(frontstageDef, saved) {
613
610
  isFloatingStateWindowResizable: widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.isFloatingStateWindowResizable,
614
611
  };
615
612
  }
613
+ // remove center panel section if one is found in left or right panels
614
+ const oldLeftMiddleIndex = saved.panels.left.widgets.findIndex((value) => value === "leftMiddle");
615
+ // istanbul ignore next
616
+ if (-1 !== oldLeftMiddleIndex) {
617
+ draft.panels.left.widgets = saved.panels.left.widgets.filter((value) => value !== "leftMiddle");
618
+ if ("leftEnd" in draft.widgets) {
619
+ draft.widgets.leftMiddle.tabs.forEach((tab) => draft.widgets.leftEnd.tabs.push(tab));
620
+ }
621
+ else {
622
+ draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };
623
+ delete draft.widgets.leftMiddle;
624
+ }
625
+ }
626
+ const oldRightMiddleIndex = saved.panels.right.widgets.findIndex((value) => value === "rightMiddle");
627
+ // istanbul ignore next
628
+ if (-1 !== oldRightMiddleIndex) {
629
+ draft.panels.right.widgets = saved.panels.right.widgets.filter((value) => value !== "rightMiddle");
630
+ if ("rightEnd" in draft.widgets) {
631
+ draft.widgets.rightMiddle.tabs.forEach((tab) => draft.widgets.rightEnd.tabs.push(tab));
632
+ }
633
+ else {
634
+ draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };
635
+ delete draft.widgets.rightMiddle;
636
+ }
637
+ }
616
638
  return;
617
639
  });
618
640
  if (FrontstageManager.nineZoneSize && (0 !== FrontstageManager.nineZoneSize.height || 0 !== FrontstageManager.nineZoneSize.width)) {
@@ -661,6 +683,7 @@ function addRemovedTab(nineZone, widgetDef) {
661
683
  const newTab = createTabState(widgetDef.id, {
662
684
  label: getWidgetLabel(widgetDef.label),
663
685
  canPopout: widgetDef.canPopout,
686
+ iconSpec: widgetDef.iconSpec,
664
687
  preferredPanelWidgetSize: widgetDef.preferredPanelSize,
665
688
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
666
689
  });
@@ -721,20 +744,11 @@ export const setWidgetState = produce((nineZone, widgetDef, state) => {
721
744
  location = findTab(nineZone, id);
722
745
  assert(!!location);
723
746
  }
724
- const widget = nineZone.widgets[location.widgetId];
725
- if (id !== widget.activeTabId)
726
- return;
727
- const minimized = widget.minimized;
728
- widget.minimized = true;
729
- if ("side" in location) {
730
- const panel = nineZone.panels[location.side];
731
- const maximized = panel.widgets.find((wId) => {
732
- const w = nineZone.widgets[wId];
733
- return !w.minimized;
734
- });
735
- if (maximized === undefined)
736
- widget.minimized = minimized;
737
- return;
747
+ if (isFloatingLocation(location)) {
748
+ const widget = nineZone.widgets[location.widgetId];
749
+ if (id !== widget.activeTabId)
750
+ return;
751
+ widget.minimized = true;
738
752
  }
739
753
  }
740
754
  else if (state === WidgetState.Hidden) {