@itwin/appui-react 3.3.0-dev.9 → 3.4.0-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +3 -0
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +9 -0
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +2 -2
  7. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  8. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  9. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  10. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  11. package/lib/cjs/appui-react/configurableui/state.d.ts +4 -3
  12. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  13. package/lib/cjs/appui-react/configurableui/state.js +6 -1
  14. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  15. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  16. package/lib/cjs/appui-react/content/ContentGroup.js +0 -2
  17. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  18. package/lib/cjs/appui-react/content/ContentLayout.d.ts +4 -1
  19. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  20. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  21. package/lib/cjs/appui-react/content/ContentViewManager.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/content/ContentViewManager.js +6 -2
  23. package/lib/cjs/appui-react/content/ContentViewManager.js.map +1 -1
  24. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  25. package/lib/cjs/appui-react/feedback/ElementTooltip.js +1 -0
  26. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  27. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +3 -1
  28. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/frontstage/Frontstage.js +1 -1
  30. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  31. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  32. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +14 -3
  33. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  34. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +2 -0
  35. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  36. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +4 -3
  37. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  38. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
  39. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
  40. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  41. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +49 -44
  42. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  43. package/lib/cjs/appui-react/imodel-components/models-tree/Utils.d.ts +10 -0
  44. package/lib/cjs/appui-react/imodel-components/models-tree/Utils.d.ts.map +1 -0
  45. package/lib/cjs/appui-react/imodel-components/models-tree/Utils.js +23 -0
  46. package/lib/cjs/appui-react/imodel-components/models-tree/Utils.js.map +1 -0
  47. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +26 -0
  48. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/messages/ActivityMessage.js +64 -5
  50. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  51. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts +1 -1
  52. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js +3 -11
  54. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  55. package/lib/cjs/appui-react/messages/MessageManager.d.ts +17 -0
  56. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  57. package/lib/cjs/appui-react/messages/MessageManager.js +44 -0
  58. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  59. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts +2 -1
  60. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  61. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js +33 -28
  62. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  63. package/lib/cjs/appui-react/messages/StatusMessagesContainer.d.ts +1 -0
  64. package/lib/cjs/appui-react/messages/StatusMessagesContainer.d.ts.map +1 -1
  65. package/lib/cjs/appui-react/messages/StatusMessagesContainer.js +1 -0
  66. package/lib/cjs/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  67. package/lib/cjs/appui-react/messages/StickyMessage.d.ts +1 -0
  68. package/lib/cjs/appui-react/messages/StickyMessage.d.ts.map +1 -1
  69. package/lib/cjs/appui-react/messages/StickyMessage.js +8 -6
  70. package/lib/cjs/appui-react/messages/StickyMessage.js.map +1 -1
  71. package/lib/cjs/appui-react/messages/ToastMessage.d.ts +1 -0
  72. package/lib/cjs/appui-react/messages/ToastMessage.d.ts.map +1 -1
  73. package/lib/cjs/appui-react/messages/ToastMessage.js +7 -5
  74. package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
  75. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  76. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  77. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +13 -10
  78. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  79. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  80. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.d.ts.map +1 -1
  81. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js +4 -1
  82. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  83. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  84. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +12 -3
  85. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  86. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +2 -0
  87. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  88. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +6 -9
  89. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  90. package/lib/cjs/appui-react/statusbar/StatusBar.js +38 -28
  91. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  92. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  93. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -0
  94. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  95. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts +9 -3
  96. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  97. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  98. package/lib/cjs/appui-react/statusbar/withMessageCenterFieldProps.d.ts +1 -1
  99. package/lib/cjs/appui-react/statusbar/withMessageCenterFieldProps.js +1 -1
  100. package/lib/cjs/appui-react/statusbar/withMessageCenterFieldProps.js.map +1 -1
  101. package/lib/cjs/appui-react/statusbar/withStatusFieldProps.d.ts +1 -0
  102. package/lib/cjs/appui-react/statusbar/withStatusFieldProps.d.ts.map +1 -1
  103. package/lib/cjs/appui-react/statusbar/withStatusFieldProps.js +1 -0
  104. package/lib/cjs/appui-react/statusbar/withStatusFieldProps.js.map +1 -1
  105. package/lib/cjs/appui-react/statusfields/ConditionalField.d.ts +4 -1
  106. package/lib/cjs/appui-react/statusfields/ConditionalField.d.ts.map +1 -1
  107. package/lib/cjs/appui-react/statusfields/ConditionalField.js +4 -1
  108. package/lib/cjs/appui-react/statusfields/ConditionalField.js.map +1 -1
  109. package/lib/cjs/appui-react/statusfields/FooterModeField.d.ts +2 -3
  110. package/lib/cjs/appui-react/statusfields/FooterModeField.d.ts.map +1 -1
  111. package/lib/cjs/appui-react/statusfields/FooterModeField.js +9 -8
  112. package/lib/cjs/appui-react/statusfields/FooterModeField.js.map +1 -1
  113. package/lib/cjs/appui-react/statusfields/Indicator.d.ts +3 -1
  114. package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
  115. package/lib/cjs/appui-react/statusfields/Indicator.js +1 -0
  116. package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
  117. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +4 -2
  118. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  119. package/lib/cjs/appui-react/statusfields/MessageCenter.js +33 -15
  120. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  121. package/lib/cjs/appui-react/statusfields/PromptField.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/statusfields/PromptField.js +4 -1
  123. package/lib/cjs/appui-react/statusfields/PromptField.js.map +1 -1
  124. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  125. package/lib/cjs/appui-react/statusfields/SectionsField.js +4 -1
  126. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  127. package/lib/cjs/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
  128. package/lib/cjs/appui-react/statusfields/SelectionInfo.js +4 -1
  129. package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
  130. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  131. package/lib/cjs/appui-react/statusfields/SelectionScope.js +6 -3
  132. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  133. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +0 -1
  134. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/statusfields/SnapMode.js +0 -2
  136. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  137. package/lib/cjs/appui-react/statusfields/StatusFieldProps.d.ts +12 -6
  138. package/lib/cjs/appui-react/statusfields/StatusFieldProps.d.ts.map +1 -1
  139. package/lib/cjs/appui-react/statusfields/StatusFieldProps.js +0 -7
  140. package/lib/cjs/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  141. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  142. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +5 -1
  143. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  144. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  145. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +4 -1
  146. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  147. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -0
  148. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  149. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +14 -10
  150. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  151. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  152. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +19 -16
  153. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  154. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  155. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +1 -0
  156. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  157. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  158. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +1 -0
  159. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  160. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  161. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +7 -2
  162. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  163. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  164. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +7 -2
  165. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  166. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +2 -0
  167. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  168. package/lib/cjs/appui-react/uistate/AppUiSettings.js +4 -0
  169. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  170. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  171. package/lib/cjs/appui-react/widget-panels/Content.js +10 -0
  172. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  173. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +9 -1
  174. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  175. package/lib/cjs/appui-react/widget-panels/Frontstage.js +131 -34
  176. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  177. package/lib/cjs/appui-react/widget-panels/useTransientState.d.ts +8 -0
  178. package/lib/cjs/appui-react/widget-panels/useTransientState.d.ts.map +1 -0
  179. package/lib/cjs/appui-react/widget-panels/useTransientState.js +19 -0
  180. package/lib/cjs/appui-react/widget-panels/useTransientState.js.map +1 -0
  181. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.d.ts.map +1 -1
  182. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +1 -0
  183. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  184. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +4 -0
  185. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  186. package/lib/cjs/appui-react/widgets/WidgetDef.js +9 -2
  187. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  188. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  189. package/lib/cjs/appui-react/widgets/WidgetHost.js +3 -1
  190. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  191. package/lib/cjs/appui-react.d.ts +1 -0
  192. package/lib/cjs/appui-react.d.ts.map +1 -1
  193. package/lib/cjs/appui-react.js +1 -0
  194. package/lib/cjs/appui-react.js.map +1 -1
  195. package/lib/esm/appui-react/UiFramework.d.ts +3 -0
  196. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  197. package/lib/esm/appui-react/UiFramework.js +9 -0
  198. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  199. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +2 -2
  200. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  201. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  202. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  203. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  204. package/lib/esm/appui-react/configurableui/state.d.ts +4 -3
  205. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  206. package/lib/esm/appui-react/configurableui/state.js +6 -1
  207. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  208. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  209. package/lib/esm/appui-react/content/ContentGroup.js +0 -2
  210. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  211. package/lib/esm/appui-react/content/ContentLayout.d.ts +4 -1
  212. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  213. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  214. package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +1 -1
  215. package/lib/esm/appui-react/content/ContentViewManager.js +6 -2
  216. package/lib/esm/appui-react/content/ContentViewManager.js.map +1 -1
  217. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  218. package/lib/esm/appui-react/feedback/ElementTooltip.js +1 -0
  219. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  220. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +3 -1
  221. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  222. package/lib/esm/appui-react/frontstage/Frontstage.js +1 -1
  223. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  224. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  225. package/lib/esm/appui-react/frontstage/FrontstageDef.js +14 -3
  226. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  227. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +2 -0
  228. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  229. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +4 -3
  230. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  231. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
  232. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
  233. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  234. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +47 -42
  235. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  236. package/lib/esm/appui-react/imodel-components/models-tree/Utils.d.ts +10 -0
  237. package/lib/esm/appui-react/imodel-components/models-tree/Utils.d.ts.map +1 -0
  238. package/lib/esm/appui-react/imodel-components/models-tree/Utils.js +19 -0
  239. package/lib/esm/appui-react/imodel-components/models-tree/Utils.js.map +1 -0
  240. package/lib/esm/appui-react/messages/ActivityMessage.d.ts +26 -0
  241. package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  242. package/lib/esm/appui-react/messages/ActivityMessage.js +63 -7
  243. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  244. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts +1 -1
  245. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  246. package/lib/esm/appui-react/messages/ActivityMessagePopup.js +4 -12
  247. package/lib/esm/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  248. package/lib/esm/appui-react/messages/MessageManager.d.ts +17 -0
  249. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  250. package/lib/esm/appui-react/messages/MessageManager.js +44 -0
  251. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  252. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts +2 -1
  253. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  254. package/lib/esm/appui-react/messages/StatusMessageRenderer.js +33 -28
  255. package/lib/esm/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  256. package/lib/esm/appui-react/messages/StatusMessagesContainer.d.ts +1 -0
  257. package/lib/esm/appui-react/messages/StatusMessagesContainer.d.ts.map +1 -1
  258. package/lib/esm/appui-react/messages/StatusMessagesContainer.js +1 -0
  259. package/lib/esm/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  260. package/lib/esm/appui-react/messages/StickyMessage.d.ts +1 -0
  261. package/lib/esm/appui-react/messages/StickyMessage.d.ts.map +1 -1
  262. package/lib/esm/appui-react/messages/StickyMessage.js +9 -7
  263. package/lib/esm/appui-react/messages/StickyMessage.js.map +1 -1
  264. package/lib/esm/appui-react/messages/ToastMessage.d.ts +1 -0
  265. package/lib/esm/appui-react/messages/ToastMessage.d.ts.map +1 -1
  266. package/lib/esm/appui-react/messages/ToastMessage.js +8 -6
  267. package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
  268. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  269. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  270. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +13 -10
  271. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  272. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  273. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.d.ts.map +1 -1
  274. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js +4 -1
  275. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  276. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  277. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +12 -3
  278. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  279. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +2 -0
  280. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  281. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +6 -9
  282. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  283. package/lib/esm/appui-react/statusbar/StatusBar.js +38 -28
  284. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  285. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  286. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -0
  287. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  288. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts +9 -3
  289. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  290. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  291. package/lib/esm/appui-react/statusbar/withMessageCenterFieldProps.d.ts +1 -1
  292. package/lib/esm/appui-react/statusbar/withMessageCenterFieldProps.js +1 -1
  293. package/lib/esm/appui-react/statusbar/withMessageCenterFieldProps.js.map +1 -1
  294. package/lib/esm/appui-react/statusbar/withStatusFieldProps.d.ts +1 -0
  295. package/lib/esm/appui-react/statusbar/withStatusFieldProps.d.ts.map +1 -1
  296. package/lib/esm/appui-react/statusbar/withStatusFieldProps.js +1 -0
  297. package/lib/esm/appui-react/statusbar/withStatusFieldProps.js.map +1 -1
  298. package/lib/esm/appui-react/statusfields/ConditionalField.d.ts +4 -1
  299. package/lib/esm/appui-react/statusfields/ConditionalField.d.ts.map +1 -1
  300. package/lib/esm/appui-react/statusfields/ConditionalField.js +4 -1
  301. package/lib/esm/appui-react/statusfields/ConditionalField.js.map +1 -1
  302. package/lib/esm/appui-react/statusfields/FooterModeField.d.ts +2 -3
  303. package/lib/esm/appui-react/statusfields/FooterModeField.d.ts.map +1 -1
  304. package/lib/esm/appui-react/statusfields/FooterModeField.js +9 -8
  305. package/lib/esm/appui-react/statusfields/FooterModeField.js.map +1 -1
  306. package/lib/esm/appui-react/statusfields/Indicator.d.ts +3 -1
  307. package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
  308. package/lib/esm/appui-react/statusfields/Indicator.js +1 -0
  309. package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
  310. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +4 -2
  311. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  312. package/lib/esm/appui-react/statusfields/MessageCenter.js +33 -15
  313. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  314. package/lib/esm/appui-react/statusfields/PromptField.d.ts.map +1 -1
  315. package/lib/esm/appui-react/statusfields/PromptField.js +4 -1
  316. package/lib/esm/appui-react/statusfields/PromptField.js.map +1 -1
  317. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  318. package/lib/esm/appui-react/statusfields/SectionsField.js +4 -1
  319. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  320. package/lib/esm/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
  321. package/lib/esm/appui-react/statusfields/SelectionInfo.js +4 -1
  322. package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
  323. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  324. package/lib/esm/appui-react/statusfields/SelectionScope.js +6 -3
  325. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  326. package/lib/esm/appui-react/statusfields/SnapMode.d.ts +0 -1
  327. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  328. package/lib/esm/appui-react/statusfields/SnapMode.js +0 -2
  329. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  330. package/lib/esm/appui-react/statusfields/StatusFieldProps.d.ts +12 -6
  331. package/lib/esm/appui-react/statusfields/StatusFieldProps.d.ts.map +1 -1
  332. package/lib/esm/appui-react/statusfields/StatusFieldProps.js +0 -7
  333. package/lib/esm/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  334. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  335. package/lib/esm/appui-react/statusfields/ViewAttributes.js +5 -1
  336. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  337. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
  338. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +4 -1
  339. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  340. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -0
  341. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  342. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +14 -10
  343. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  344. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  345. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +19 -16
  346. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  347. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  348. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +1 -0
  349. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  350. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  351. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +1 -0
  352. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  353. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  354. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +7 -2
  355. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  356. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  357. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +7 -2
  358. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  359. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +2 -0
  360. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  361. package/lib/esm/appui-react/uistate/AppUiSettings.js +4 -0
  362. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  363. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  364. package/lib/esm/appui-react/widget-panels/Content.js +10 -0
  365. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  366. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +9 -1
  367. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  368. package/lib/esm/appui-react/widget-panels/Frontstage.js +132 -35
  369. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  370. package/lib/esm/appui-react/widget-panels/useTransientState.d.ts +8 -0
  371. package/lib/esm/appui-react/widget-panels/useTransientState.d.ts.map +1 -0
  372. package/lib/esm/appui-react/widget-panels/useTransientState.js +15 -0
  373. package/lib/esm/appui-react/widget-panels/useTransientState.js.map +1 -0
  374. package/lib/esm/appui-react/widget-panels/useWidgetDirection.d.ts.map +1 -1
  375. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +1 -0
  376. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  377. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +4 -0
  378. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  379. package/lib/esm/appui-react/widgets/WidgetDef.js +9 -2
  380. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  381. package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  382. package/lib/esm/appui-react/widgets/WidgetHost.js +3 -1
  383. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  384. package/lib/esm/appui-react.d.ts +1 -0
  385. package/lib/esm/appui-react.d.ts.map +1 -1
  386. package/lib/esm/appui-react.js +1 -0
  387. package/lib/esm/appui-react.js.map +1 -1
  388. package/lib/public/locales/en/UiFramework.json +6 -1
  389. package/package.json +37 -37
@@ -34,6 +34,7 @@ const ToolSettings_1 = require("./ToolSettings");
34
34
  const useEscapeSetFocusToHome_1 = require("../hooks/useEscapeSetFocusToHome");
35
35
  const react_redux_1 = require("react-redux");
36
36
  const useUiVisibility_1 = require("../hooks/useUiVisibility");
37
+ const core_frontend_1 = require("@itwin/core-frontend");
37
38
  const panelZoneKeys = ["start", "end"];
38
39
  const WidgetInternals = React.memo(function WidgetInternals() {
39
40
  const activeModalFrontstageInfo = (0, ModalFrontstageComposer_1.useActiveModalFrontstageInfo)();
@@ -184,7 +185,6 @@ function ActiveFrontstageDefProvider({ frontstageDef }) {
184
185
  useUpdateNineZoneSize(frontstageDef);
185
186
  useSavedFrontstageState(frontstageDef);
186
187
  useSaveFrontstageSettings(frontstageDef);
187
- useFrontstageManager(frontstageDef);
188
188
  useItemsManager(frontstageDef);
189
189
  const labels = useLabels();
190
190
  const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
@@ -200,6 +200,11 @@ function ActiveFrontstageDefProvider({ frontstageDef }) {
200
200
  const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
201
201
  return !!frameworkState.configurableUiState.animateToolSettings;
202
202
  });
203
+ const useToolAsToolSettingsLabel = (0, react_redux_1.useSelector)((state) => {
204
+ const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
205
+ return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;
206
+ });
207
+ useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);
203
208
  const handleKeyDown = (0, useEscapeSetFocusToHome_1.useEscapeSetFocusToHome)();
204
209
  return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
205
210
  React.createElement(appui_layout_react_1.NineZone, { dispatch: dispatch, labels: labels, state: nineZone, tab: tabElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
@@ -235,6 +240,7 @@ function addWidgets(state, widgets, side, widgetId) {
235
240
  preferredFloatingWidgetSize: widget.defaultFloatingSize,
236
241
  canPopout: widget.canPopout,
237
242
  isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
243
+ hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
238
244
  });
239
245
  tabs.push(widget.id);
240
246
  }
@@ -275,6 +281,7 @@ function appendWidgets(state, widgetDefs, side, preferredWidgetIndex) {
275
281
  preferredPopoutWidgetSize,
276
282
  userSized,
277
283
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
284
+ hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
278
285
  });
279
286
  if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === appui_abstract_1.WidgetState.Floating) {
280
287
  const floatingContainerId = (_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : (0, appui_layout_react_1.getUniqueId)();
@@ -312,24 +319,24 @@ function processPopoutWidgets(initialState, frontstageDef) {
312
319
  function addMissingWidgets(frontstageDef, initialState) {
313
320
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
314
321
  let state = initialState;
315
- state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.centerLeft) === null || _a === void 0 ? void 0 : _a.widgetDefs, initialState), "left", 0);
316
- state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.panelZones.start.widgetDefs, initialState), "left", 0);
317
- state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.bottomLeft) === null || _c === void 0 ? void 0 : _c.widgetDefs, initialState), "left", 1);
318
- state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelWidgetDefs, initialState), "left", 1);
319
- state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelZones.end.widgetDefs, initialState), "left", 1);
320
- state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.centerRight) === null || _f === void 0 ? void 0 : _f.widgetDefs, initialState), "right", 0);
321
- state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.rightPanel) === null || _g === void 0 ? void 0 : _g.panelZones.start.widgetDefs, initialState), "right", 0);
322
- state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomRight) === null || _h === void 0 ? void 0 : _h.widgetDefs, initialState), "right", 1);
323
- state = appendWidgets(state, determineNewWidgets((_j = frontstageDef.rightPanel) === null || _j === void 0 ? void 0 : _j.panelWidgetDefs, initialState), "right", 1);
324
- state = appendWidgets(state, determineNewWidgets((_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelZones.end.widgetDefs, initialState), "right", 1);
325
- state = appendWidgets(state, determineNewWidgets((_l = frontstageDef.topPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs, initialState), "top", 0);
326
- state = appendWidgets(state, determineNewWidgets((_m = frontstageDef.topPanel) === null || _m === void 0 ? void 0 : _m.panelZones.start.widgetDefs, initialState), "top", 0);
327
- state = appendWidgets(state, determineNewWidgets((_o = frontstageDef.topMostPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs, initialState), "top", 1); // eslint-disable-line deprecation/deprecation
328
- state = appendWidgets(state, determineNewWidgets((_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.end.widgetDefs, initialState), "top", 1);
329
- state = appendWidgets(state, determineNewWidgets((_q = frontstageDef.bottomPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs, initialState), "bottom", 0);
330
- state = appendWidgets(state, determineNewWidgets((_r = frontstageDef.bottomPanel) === null || _r === void 0 ? void 0 : _r.panelZones.start.widgetDefs, initialState), "bottom", 0);
331
- state = appendWidgets(state, determineNewWidgets((_s = frontstageDef.bottomMostPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs, initialState), "bottom", 1); // eslint-disable-line deprecation/deprecation
332
- state = appendWidgets(state, determineNewWidgets((_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.end.widgetDefs, initialState), "bottom", 1);
322
+ state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.centerLeft) === null || _a === void 0 ? void 0 : _a.widgetDefs, state), "left", 0);
323
+ state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.panelZones.start.widgetDefs, state), "left", 0);
324
+ state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.bottomLeft) === null || _c === void 0 ? void 0 : _c.widgetDefs, state), "left", 1);
325
+ state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.leftPanel) === null || _d === void 0 ? void 0 : _d.panelWidgetDefs, state), "left", 1);
326
+ state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.leftPanel) === null || _e === void 0 ? void 0 : _e.panelZones.end.widgetDefs, state), "left", 1);
327
+ state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.centerRight) === null || _f === void 0 ? void 0 : _f.widgetDefs, state), "right", 0);
328
+ state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.rightPanel) === null || _g === void 0 ? void 0 : _g.panelZones.start.widgetDefs, state), "right", 0);
329
+ state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomRight) === null || _h === void 0 ? void 0 : _h.widgetDefs, state), "right", 1);
330
+ state = appendWidgets(state, determineNewWidgets((_j = frontstageDef.rightPanel) === null || _j === void 0 ? void 0 : _j.panelWidgetDefs, state), "right", 1);
331
+ state = appendWidgets(state, determineNewWidgets((_k = frontstageDef.rightPanel) === null || _k === void 0 ? void 0 : _k.panelZones.end.widgetDefs, state), "right", 1);
332
+ state = appendWidgets(state, determineNewWidgets((_l = frontstageDef.topPanel) === null || _l === void 0 ? void 0 : _l.panelWidgetDefs, state), "top", 0);
333
+ state = appendWidgets(state, determineNewWidgets((_m = frontstageDef.topPanel) === null || _m === void 0 ? void 0 : _m.panelZones.start.widgetDefs, state), "top", 0);
334
+ state = appendWidgets(state, determineNewWidgets((_o = frontstageDef.topMostPanel) === null || _o === void 0 ? void 0 : _o.panelWidgetDefs, state), "top", 1); // eslint-disable-line deprecation/deprecation
335
+ state = appendWidgets(state, determineNewWidgets((_p = frontstageDef.topPanel) === null || _p === void 0 ? void 0 : _p.panelZones.end.widgetDefs, state), "top", 1);
336
+ state = appendWidgets(state, determineNewWidgets((_q = frontstageDef.bottomPanel) === null || _q === void 0 ? void 0 : _q.panelWidgetDefs, state), "bottom", 0);
337
+ state = appendWidgets(state, determineNewWidgets((_r = frontstageDef.bottomPanel) === null || _r === void 0 ? void 0 : _r.panelZones.start.widgetDefs, state), "bottom", 0);
338
+ state = appendWidgets(state, determineNewWidgets((_s = frontstageDef.bottomMostPanel) === null || _s === void 0 ? void 0 : _s.panelWidgetDefs, state), "bottom", 1); // eslint-disable-line deprecation/deprecation
339
+ state = appendWidgets(state, determineNewWidgets((_t = frontstageDef.bottomPanel) === null || _t === void 0 ? void 0 : _t.panelZones.end.widgetDefs, state), "bottom", 1);
333
340
  return state;
334
341
  }
335
342
  exports.addMissingWidgets = addMissingWidgets;
@@ -502,10 +509,10 @@ exports.getPanelZoneWidgets = getPanelZoneWidgets;
502
509
  function addPanelWidgets(state, frontstageDef, side) {
503
510
  const start = getWidgetId(side, "start");
504
511
  const startWidgets = getPanelZoneWidgets(frontstageDef, start);
505
- state = addWidgets(state, startWidgets, side, start);
512
+ state = addWidgets(state, determineNewWidgets(startWidgets, state), side, start);
506
513
  const end = getWidgetId(side, "end");
507
514
  const endWidgets = getPanelZoneWidgets(frontstageDef, end);
508
- state = addWidgets(state, endWidgets, side, end);
515
+ state = addWidgets(state, determineNewWidgets(endWidgets, state), side, end);
509
516
  return state;
510
517
  }
511
518
  exports.addPanelWidgets = addPanelWidgets;
@@ -623,6 +630,7 @@ function restoreNineZoneState(frontstageDef, saved) {
623
630
  draft.tabs[tab.id] = {
624
631
  ...tab,
625
632
  label: getWidgetLabel((_a = widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.label) !== null && _a !== void 0 ? _a : "undefined"),
633
+ hideWithUiWhenFloating: widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.hideWithUiWhenFloating,
626
634
  iconSpec: widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.iconSpec,
627
635
  canPopout: widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.canPopout,
628
636
  isFloatingStateWindowResizable: widgetDef === null || widgetDef === void 0 ? void 0 : widgetDef.isFloatingStateWindowResizable,
@@ -667,6 +675,20 @@ function restoreNineZoneState(frontstageDef, saved) {
667
675
  return restored;
668
676
  }
669
677
  exports.restoreNineZoneState = restoreNineZoneState;
678
+ /**
679
+ * Checks to see whether a widget id is one of our generated uuids
680
+ * @param uuid the string value to test
681
+ * @returns boolean
682
+ */
683
+ function isUUID(uuid) {
684
+ const s = `${uuid}`;
685
+ const result = s.match("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$");
686
+ // istanbul ignore else
687
+ if (result === null) {
688
+ return false;
689
+ }
690
+ return true;
691
+ }
670
692
  /** Prepares NineZoneState to be saved.
671
693
  * @note Removes toolSettings tab.
672
694
  * @note Removes tab labels and iconSpec.
@@ -681,6 +703,9 @@ function packNineZoneState(state) {
681
703
  for (const [, tab] of Object.entries(state.tabs)) {
682
704
  if (tab.id === appui_layout_react_1.toolSettingsTabId)
683
705
  continue;
706
+ // istanbul ignore else
707
+ if (isUUID(tab.id))
708
+ continue;
684
709
  draft.tabs[tab.id] = {
685
710
  id: tab.id,
686
711
  preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
@@ -690,6 +715,18 @@ function packNineZoneState(state) {
690
715
  };
691
716
  }
692
717
  });
718
+ packed = (0, immer_1.default)(packed, (draft) => {
719
+ for (const [, floatingWidget] of Object.entries(state.floatingWidgets.byId)) {
720
+ const widgetId = floatingWidget.id;
721
+ // istanbul ignore else
722
+ if (isUUID(widgetId)) {
723
+ const idIndex = draft.floatingWidgets.allIds.indexOf(widgetId);
724
+ draft.floatingWidgets.allIds.splice(idIndex, 1);
725
+ delete draft.floatingWidgets.byId[widgetId];
726
+ delete draft.widgets[widgetId];
727
+ }
728
+ }
729
+ });
693
730
  return packed;
694
731
  }
695
732
  exports.packNineZoneState = packNineZoneState;
@@ -701,12 +738,14 @@ function isPanelCollapsed(zoneStates, panelStates) {
701
738
  }
702
739
  exports.isPanelCollapsed = isPanelCollapsed;
703
740
  function addRemovedTab(nineZone, widgetDef) {
741
+ var _a, _b;
704
742
  const newTab = (0, appui_layout_react_1.createTabState)(widgetDef.id, {
705
743
  label: getWidgetLabel(widgetDef.label),
706
744
  canPopout: widgetDef.canPopout,
707
745
  iconSpec: widgetDef.iconSpec,
708
746
  preferredPanelWidgetSize: widgetDef.preferredPanelSize,
709
747
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
748
+ hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
710
749
  });
711
750
  nineZone.tabs[newTab.id] = newTab;
712
751
  if (widgetDef.tabLocation.widgetId in nineZone.widgets) {
@@ -715,6 +754,18 @@ function addRemovedTab(nineZone, widgetDef) {
715
754
  const newTabWidget = nineZone.widgets[widgetId];
716
755
  newTabWidget.tabs.splice(widgetDef.tabLocation.tabIndex, 0, newTab.id);
717
756
  }
757
+ else if (widgetDef.tabLocation.floating) {
758
+ const id = widgetDef.tabLocation.widgetId;
759
+ if (id in nineZone.floatingWidgets.byId) {
760
+ nineZone.floatingWidgets.allIds.push(id);
761
+ nineZone.floatingWidgets.byId[id].hidden = false;
762
+ (0, appui_layout_react_1.addWidgetTabToDraftFloatingPanel)(nineZone, (_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : widgetDef.id, widgetDef.id, nineZone.floatingWidgets.byId[id].home, newTab);
763
+ }
764
+ else {
765
+ const home = { side: widgetDef.tabLocation.side, widgetId: widgetDef.floatingContainerId, widgetIndex: 0 };
766
+ (0, appui_layout_react_1.addWidgetTabToDraftFloatingPanel)(nineZone, (_b = widgetDef.floatingContainerId) !== null && _b !== void 0 ? _b : widgetDef.id, widgetDef.id, home, newTab);
767
+ }
768
+ }
718
769
  else {
719
770
  const newTabPanel = nineZone.panels[widgetDef.tabLocation.side];
720
771
  if (newTabPanel.maxWidgetCount === newTabPanel.widgets.length) {
@@ -734,7 +785,7 @@ function addRemovedTab(nineZone, widgetDef) {
734
785
  }
735
786
  /** @internal */
736
787
  exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
737
- var _a;
788
+ var _a, _b;
738
789
  if (state === appui_abstract_1.WidgetState.Open) {
739
790
  const id = widgetDef.id;
740
791
  let location = (0, appui_layout_react_1.findTab)(nineZone, id);
@@ -743,6 +794,9 @@ exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
743
794
  location = (0, appui_layout_react_1.findTab)(nineZone, id);
744
795
  (0, core_bentley_1.assert)(!!location);
745
796
  }
797
+ if (!!widgetDef.tabLocation.floating) {
798
+ nineZone.floatingWidgets.byId[(_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : widgetDef.id].hidden = false;
799
+ }
746
800
  const widget = nineZone.widgets[location.widgetId];
747
801
  widget.minimized = false;
748
802
  widget.activeTabId = id;
@@ -753,7 +807,7 @@ exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
753
807
  panel.collapsed && (panel.collapsed = false);
754
808
  // istanbul ignore next
755
809
  if (undefined === panel.size || 0 === panel.size) {
756
- panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
810
+ panel.size = (_b = panel.minSize) !== null && _b !== void 0 ? _b : 200;
757
811
  }
758
812
  }
759
813
  }
@@ -781,16 +835,31 @@ function hideWidget(state, widgetDef) {
781
835
  const location = (0, appui_layout_react_1.findTab)(state, widgetDef.id);
782
836
  if (!location)
783
837
  return;
784
- const widgetId = location.widgetId;
785
- const side = "side" in location ? location.side : "left";
786
- const widgetIndex = "side" in location ? state.panels[side].widgets.indexOf(widgetId) : 0;
787
- const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
788
- widgetDef.tabLocation = {
789
- side,
790
- tabIndex,
791
- widgetId,
792
- widgetIndex,
793
- };
838
+ if ((0, appui_layout_react_1.isFloatingLocation)(location)) {
839
+ const widget = state.floatingWidgets.byId[location.widgetId];
840
+ widgetDef.setFloatingContainerId(location.floatingWidgetId);
841
+ widgetDef.tabLocation = {
842
+ side: widget.home.side,
843
+ tabIndex: widget.home.widgetIndex,
844
+ widgetId: widgetDef.id,
845
+ widgetIndex: widget.home.widgetIndex,
846
+ floating: true,
847
+ };
848
+ }
849
+ else
850
+ // istanbul ignore else
851
+ if (!(0, appui_layout_react_1.isPopoutLocation)(location)) {
852
+ const widgetId = location.widgetId;
853
+ const side = "side" in location ? location.side : "left";
854
+ const widgetIndex = "side" in location ? state.panels[side].widgets.indexOf(widgetId) : 0;
855
+ const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
856
+ widgetDef.tabLocation = {
857
+ side,
858
+ tabIndex,
859
+ widgetId,
860
+ widgetIndex,
861
+ };
862
+ }
794
863
  (0, appui_layout_react_1.removeTab)(state, widgetDef.id);
795
864
  }
796
865
  /** @internal */
@@ -931,7 +1000,7 @@ const createListener = (frontstageDef, listener) => {
931
1000
  };
932
1001
  };
933
1002
  /** @internal */
934
- function useFrontstageManager(frontstageDef) {
1003
+ function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
935
1004
  React.useEffect(() => {
936
1005
  const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
937
1006
  (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
@@ -992,6 +1061,34 @@ function useFrontstageManager(frontstageDef) {
992
1061
  FrontstageManager_1.FrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
993
1062
  };
994
1063
  }, [frontstageDef]);
1064
+ const defaultLabel = React.useMemo(() => UiFramework_1.UiFramework.translate("widget.labels.toolSettings"), []);
1065
+ React.useEffect(() => {
1066
+ const updateLabel = createListener(frontstageDef, () => {
1067
+ var _a;
1068
+ const toolId = FrontstageManager_1.FrontstageManager.activeToolId;
1069
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1070
+ const label = useToolAsToolSettingsLabel ?
1071
+ ((_a = core_frontend_1.IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1072
+ frontstageDef.nineZoneState = (0, exports.setWidgetLabel)(frontstageDef.nineZoneState, appui_layout_react_1.toolSettingsTabId, label);
1073
+ });
1074
+ // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1075
+ updateLabel();
1076
+ // If useTool... is true, listen for events to keep up the label up to date.
1077
+ if (useToolAsToolSettingsLabel) {
1078
+ FrontstageManager_1.FrontstageManager.onFrontstageReadyEvent.addListener(updateLabel);
1079
+ FrontstageManager_1.FrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1080
+ FrontstageManager_1.FrontstageManager.onToolActivatedEvent.addListener(updateLabel);
1081
+ FrontstageManager_1.FrontstageManager.onToolSettingsReloadEvent.addListener(updateLabel);
1082
+ }
1083
+ return () => {
1084
+ if (useToolAsToolSettingsLabel) {
1085
+ FrontstageManager_1.FrontstageManager.onFrontstageReadyEvent.removeListener(updateLabel);
1086
+ FrontstageManager_1.FrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1087
+ FrontstageManager_1.FrontstageManager.onToolActivatedEvent.removeListener(updateLabel);
1088
+ FrontstageManager_1.FrontstageManager.onToolSettingsReloadEvent.removeListener(updateLabel);
1089
+ }
1090
+ };
1091
+ }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
995
1092
  }
996
1093
  exports.useFrontstageManager = useFrontstageManager;
997
1094
  /** @internal */