@itwin/appui-react 3.3.0-dev.7 → 3.3.0-dev.72

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 (273) hide show
  1. package/CHANGELOG.md +48 -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 -1
  12. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  13. package/lib/cjs/appui-react/configurableui/state.js +6 -0
  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/ContentViewManager.d.ts.map +1 -1
  19. package/lib/cjs/appui-react/content/ContentViewManager.js +6 -2
  20. package/lib/cjs/appui-react/content/ContentViewManager.js.map +1 -1
  21. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  22. package/lib/cjs/appui-react/feedback/ElementTooltip.js +1 -0
  23. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  24. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  25. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +14 -3
  26. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  27. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  28. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +2 -0
  29. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  30. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +2 -0
  31. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  32. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +4 -3
  33. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  34. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
  35. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
  36. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  37. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +40 -27
  38. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  39. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +26 -0
  40. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  41. package/lib/cjs/appui-react/messages/ActivityMessage.js +64 -5
  42. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  43. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts +1 -1
  44. package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  45. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js +3 -11
  46. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  47. package/lib/cjs/appui-react/messages/MessageManager.d.ts +17 -0
  48. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/messages/MessageManager.js +44 -0
  50. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  51. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts +2 -1
  52. package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js +33 -28
  54. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  55. package/lib/cjs/appui-react/messages/StatusMessagesContainer.d.ts +1 -0
  56. package/lib/cjs/appui-react/messages/StatusMessagesContainer.d.ts.map +1 -1
  57. package/lib/cjs/appui-react/messages/StatusMessagesContainer.js +1 -0
  58. package/lib/cjs/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  59. package/lib/cjs/appui-react/messages/StickyMessage.d.ts +1 -0
  60. package/lib/cjs/appui-react/messages/StickyMessage.d.ts.map +1 -1
  61. package/lib/cjs/appui-react/messages/StickyMessage.js +8 -6
  62. package/lib/cjs/appui-react/messages/StickyMessage.js.map +1 -1
  63. package/lib/cjs/appui-react/messages/ToastMessage.d.ts +1 -0
  64. package/lib/cjs/appui-react/messages/ToastMessage.d.ts.map +1 -1
  65. package/lib/cjs/appui-react/messages/ToastMessage.js +7 -5
  66. package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
  67. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  68. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  69. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +13 -10
  70. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  71. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  72. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  73. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +12 -3
  74. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  75. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +2 -0
  76. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  77. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +2 -8
  78. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  79. package/lib/cjs/appui-react/statusbar/StatusBar.js +26 -24
  80. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  81. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts +6 -2
  82. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  83. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  84. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +1 -1
  85. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  86. package/lib/cjs/appui-react/statusfields/MessageCenter.js +22 -10
  87. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  88. package/lib/cjs/appui-react/statusfields/SelectionScope.js +1 -1
  89. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  90. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +0 -1
  91. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  92. package/lib/cjs/appui-react/statusfields/SnapMode.js +0 -2
  93. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  94. package/lib/cjs/appui-react/statusfields/StatusFieldProps.d.ts +8 -4
  95. package/lib/cjs/appui-react/statusfields/StatusFieldProps.d.ts.map +1 -1
  96. package/lib/cjs/appui-react/statusfields/StatusFieldProps.js +0 -7
  97. package/lib/cjs/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  98. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  99. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +1 -0
  100. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  101. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -0
  102. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  103. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -9
  104. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  105. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +19 -16
  107. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  108. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +2 -0
  109. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  110. package/lib/cjs/appui-react/uistate/AppUiSettings.js +4 -0
  111. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  112. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  113. package/lib/cjs/appui-react/widget-panels/Content.js +10 -0
  114. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  115. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +9 -1
  116. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  117. package/lib/cjs/appui-react/widget-panels/Frontstage.js +110 -14
  118. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  119. package/lib/cjs/appui-react/widget-panels/useTransientState.d.ts +8 -0
  120. package/lib/cjs/appui-react/widget-panels/useTransientState.d.ts.map +1 -0
  121. package/lib/cjs/appui-react/widget-panels/useTransientState.js +19 -0
  122. package/lib/cjs/appui-react/widget-panels/useTransientState.js.map +1 -0
  123. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.d.ts.map +1 -1
  124. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +1 -0
  125. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  126. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +4 -0
  127. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  128. package/lib/cjs/appui-react/widgets/WidgetDef.js +9 -2
  129. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  130. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  131. package/lib/cjs/appui-react/widgets/WidgetHost.js +3 -1
  132. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  133. package/lib/cjs/appui-react.d.ts +1 -0
  134. package/lib/cjs/appui-react.d.ts.map +1 -1
  135. package/lib/cjs/appui-react.js +1 -0
  136. package/lib/cjs/appui-react.js.map +1 -1
  137. package/lib/esm/appui-react/UiFramework.d.ts +3 -0
  138. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  139. package/lib/esm/appui-react/UiFramework.js +9 -0
  140. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  141. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +2 -2
  142. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  143. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  144. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  145. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  146. package/lib/esm/appui-react/configurableui/state.d.ts +4 -1
  147. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  148. package/lib/esm/appui-react/configurableui/state.js +6 -0
  149. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  150. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  151. package/lib/esm/appui-react/content/ContentGroup.js +0 -2
  152. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  153. package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +1 -1
  154. package/lib/esm/appui-react/content/ContentViewManager.js +6 -2
  155. package/lib/esm/appui-react/content/ContentViewManager.js.map +1 -1
  156. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  157. package/lib/esm/appui-react/feedback/ElementTooltip.js +1 -0
  158. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  159. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  160. package/lib/esm/appui-react/frontstage/FrontstageDef.js +14 -3
  161. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  162. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
  163. package/lib/esm/appui-react/frontstage/FrontstageManager.js +2 -0
  164. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  165. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +2 -0
  166. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  167. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +4 -3
  168. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  169. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
  170. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
  171. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
  172. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +40 -27
  173. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  174. package/lib/esm/appui-react/messages/ActivityMessage.d.ts +26 -0
  175. package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +1 -1
  176. package/lib/esm/appui-react/messages/ActivityMessage.js +63 -7
  177. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  178. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts +1 -1
  179. package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
  180. package/lib/esm/appui-react/messages/ActivityMessagePopup.js +4 -12
  181. package/lib/esm/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  182. package/lib/esm/appui-react/messages/MessageManager.d.ts +17 -0
  183. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  184. package/lib/esm/appui-react/messages/MessageManager.js +44 -0
  185. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  186. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts +2 -1
  187. package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
  188. package/lib/esm/appui-react/messages/StatusMessageRenderer.js +33 -28
  189. package/lib/esm/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  190. package/lib/esm/appui-react/messages/StatusMessagesContainer.d.ts +1 -0
  191. package/lib/esm/appui-react/messages/StatusMessagesContainer.d.ts.map +1 -1
  192. package/lib/esm/appui-react/messages/StatusMessagesContainer.js +1 -0
  193. package/lib/esm/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  194. package/lib/esm/appui-react/messages/StickyMessage.d.ts +1 -0
  195. package/lib/esm/appui-react/messages/StickyMessage.d.ts.map +1 -1
  196. package/lib/esm/appui-react/messages/StickyMessage.js +9 -7
  197. package/lib/esm/appui-react/messages/StickyMessage.js.map +1 -1
  198. package/lib/esm/appui-react/messages/ToastMessage.d.ts +1 -0
  199. package/lib/esm/appui-react/messages/ToastMessage.d.ts.map +1 -1
  200. package/lib/esm/appui-react/messages/ToastMessage.js +8 -6
  201. package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
  202. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  203. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  204. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +13 -10
  205. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  206. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  207. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  208. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +12 -3
  209. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  210. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +2 -0
  211. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  212. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +2 -8
  213. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  214. package/lib/esm/appui-react/statusbar/StatusBar.js +26 -24
  215. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  216. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts +6 -2
  217. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  218. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  219. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +1 -1
  220. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  221. package/lib/esm/appui-react/statusfields/MessageCenter.js +22 -10
  222. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  223. package/lib/esm/appui-react/statusfields/SelectionScope.js +1 -1
  224. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  225. package/lib/esm/appui-react/statusfields/SnapMode.d.ts +0 -1
  226. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  227. package/lib/esm/appui-react/statusfields/SnapMode.js +0 -2
  228. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  229. package/lib/esm/appui-react/statusfields/StatusFieldProps.d.ts +8 -4
  230. package/lib/esm/appui-react/statusfields/StatusFieldProps.d.ts.map +1 -1
  231. package/lib/esm/appui-react/statusfields/StatusFieldProps.js +0 -7
  232. package/lib/esm/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  233. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  234. package/lib/esm/appui-react/statusfields/ViewAttributes.js +1 -0
  235. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  236. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +1 -0
  237. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  238. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -9
  239. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  240. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  241. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +19 -16
  242. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  243. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +2 -0
  244. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  245. package/lib/esm/appui-react/uistate/AppUiSettings.js +4 -0
  246. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  247. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  248. package/lib/esm/appui-react/widget-panels/Content.js +10 -0
  249. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  250. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +9 -1
  251. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  252. package/lib/esm/appui-react/widget-panels/Frontstage.js +111 -15
  253. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  254. package/lib/esm/appui-react/widget-panels/useTransientState.d.ts +8 -0
  255. package/lib/esm/appui-react/widget-panels/useTransientState.d.ts.map +1 -0
  256. package/lib/esm/appui-react/widget-panels/useTransientState.js +15 -0
  257. package/lib/esm/appui-react/widget-panels/useTransientState.js.map +1 -0
  258. package/lib/esm/appui-react/widget-panels/useWidgetDirection.d.ts.map +1 -1
  259. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +1 -0
  260. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  261. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +4 -0
  262. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  263. package/lib/esm/appui-react/widgets/WidgetDef.js +9 -2
  264. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  265. package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
  266. package/lib/esm/appui-react/widgets/WidgetHost.js +3 -1
  267. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  268. package/lib/esm/appui-react.d.ts +1 -0
  269. package/lib/esm/appui-react.d.ts.map +1 -1
  270. package/lib/esm/appui-react.js +1 -0
  271. package/lib/esm/appui-react.js.map +1 -1
  272. package/lib/public/locales/en/UiFramework.json +6 -1
  273. package/package.json +37 -37
@@ -1 +1 @@
1
- {"version":3,"file":"Content.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Content.tsx"],"names":[],"mappings":";;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,+BAA+B;AAC/B,0DAAuD;AACvD,kEAAkF;AAClF,yDAAkE;AAElE,uEAAoE;AAGpE,gBAAgB;AAChB,SAAgB,aAAa;;IAC3B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,mCAAI,SAAS,CAAC;IACxD,OAAO,CACL,oBAAC,4CAAuB,IACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,0CAAE,UAAU,IAE3C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CACM,CAC3B,CAAC;AACJ,CAAC;AAZD,sCAYC;AAED,gBAAgB;AAChB,SAAgB,YAAY;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,iCAAY,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAA,mCAAsB,GAAE,CAAC;IAC5C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAEzF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,CAAC,IAA6C,EAAE,EAAE;YACjE,uBAAuB;YACvB,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,oBAAoB;gBAClH,OAAO;YACT,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC;QACF,OAAO,qCAAiB,CAAC,qCAAqC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvF,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,uBAAuB;QACvB,MAAM,gBAAgB,GAAG,GAAG,EAAE;YAC5B,YAAY,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,OAAO,+BAAc,CAAC,2BAA2B,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAClF,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,OAAO,SAAS,CAAC;AACnB,CAAC;AAzBD,oCAyBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\nimport * as React from \"react\";\r\nimport { UiItemsManager } from \"@itwin/appui-abstract\";\r\nimport { ScrollableWidgetContent, TabIdContext } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { FrontstageNineZoneStateChangedEventArgs } from \"../frontstage/FrontstageDef\";\r\n\r\n/** @internal */\r\nexport function WidgetContent() {\r\n const widget = useWidgetDef();\r\n // istanbul ignore next\r\n const itemId = widget?.id ?? widget?.label ?? \"unknown\";\r\n return (\r\n <ScrollableWidgetContent\r\n itemId={itemId}\r\n providerId={widget?.initialProps?.providerId}\r\n >\r\n {widget?.reactNode}\r\n </ScrollableWidgetContent>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useWidgetDef(): WidgetDef | undefined {\r\n const tabId = React.useContext(TabIdContext);\r\n const frontstage = useActiveFrontstageDef();\r\n const [widgetDef, setWidgetDef] = React.useState(() => frontstage?.findWidgetDef(tabId));\r\n\r\n React.useEffect(() => {\r\n const listener = (args: FrontstageNineZoneStateChangedEventArgs) => {\r\n // istanbul ignore next\r\n if (args.frontstageDef !== frontstage || !frontstage || frontstage.isStageClosing || frontstage.isApplicationClosing)\r\n return;\r\n setWidgetDef(frontstage.findWidgetDef(tabId));\r\n };\r\n return FrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(listener);\r\n }, [frontstage, tabId]);\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handlerActivated = () => {\r\n setWidgetDef(frontstage?.findWidgetDef(tabId));\r\n };\r\n\r\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(handlerActivated);\r\n }, [frontstage, tabId]);\r\n\r\n return widgetDef;\r\n}\r\n"]}
1
+ {"version":3,"file":"Content.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Content.tsx"],"names":[],"mappings":";;;AAAA;;;+FAG+F;AAC/F;;GAEG;AACH,+BAA+B;AAC/B,0DAAuD;AACvD,kEAAkF;AAClF,yDAAkE;AAElE,uEAAoE;AAEpE,2DAAwD;AAExD,gBAAgB;AAChB,SAAgB,aAAa;;IAC3B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,mCAAI,SAAS,CAAC;IACxD,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACpC,uBAAuB;QACvB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,kBAAkB,EAAE,CAAC;IAC/B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACvC,uBAAuB;QACvB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,qBAAqB,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,IAAA,qCAAiB,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrC,OAAO,CACL,oBAAC,4CAAuB,IACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,0CAAE,UAAU,IAE3C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CACM,CAC3B,CAAC;AACJ,CAAC;AArBD,sCAqBC;AAED,gBAAgB;AAChB,SAAgB,YAAY;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,iCAAY,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAA,mCAAsB,GAAE,CAAC;IAC5C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAEzF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,CAAC,IAA6C,EAAE,EAAE;YACjE,uBAAuB;YACvB,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,oBAAoB;gBAClH,OAAO;YACT,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC;QACF,OAAO,qCAAiB,CAAC,qCAAqC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvF,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,uBAAuB;QACvB,MAAM,gBAAgB,GAAG,GAAG,EAAE;YAC5B,YAAY,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,OAAO,+BAAc,CAAC,2BAA2B,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAClF,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,OAAO,SAAS,CAAC;AACnB,CAAC;AAzBD,oCAyBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\nimport * as React from \"react\";\r\nimport { UiItemsManager } from \"@itwin/appui-abstract\";\r\nimport { ScrollableWidgetContent, TabIdContext } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { FrontstageNineZoneStateChangedEventArgs } from \"../frontstage/FrontstageDef\";\r\nimport { useTransientState } from \"./useTransientState\";\r\n\r\n/** @internal */\r\nexport function WidgetContent() {\r\n const widget = useWidgetDef();\r\n // istanbul ignore next\r\n const itemId = widget?.id ?? widget?.label ?? \"unknown\";\r\n const onSave = React.useCallback(() => {\r\n // istanbul ignore next\r\n widget?.saveTransientState();\r\n }, [widget]);\r\n const onRestore = React.useCallback(() => {\r\n // istanbul ignore next\r\n widget?.restoreTransientState();\r\n }, [widget]);\r\n useTransientState(onSave, onRestore);\r\n return (\r\n <ScrollableWidgetContent\r\n itemId={itemId}\r\n providerId={widget?.initialProps?.providerId}\r\n >\r\n {widget?.reactNode}\r\n </ScrollableWidgetContent>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useWidgetDef(): WidgetDef | undefined {\r\n const tabId = React.useContext(TabIdContext);\r\n const frontstage = useActiveFrontstageDef();\r\n const [widgetDef, setWidgetDef] = React.useState(() => frontstage?.findWidgetDef(tabId));\r\n\r\n React.useEffect(() => {\r\n const listener = (args: FrontstageNineZoneStateChangedEventArgs) => {\r\n // istanbul ignore next\r\n if (args.frontstageDef !== frontstage || !frontstage || frontstage.isStageClosing || frontstage.isApplicationClosing)\r\n return;\r\n setWidgetDef(frontstage.findWidgetDef(tabId));\r\n };\r\n return FrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(listener);\r\n }, [frontstage, tabId]);\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handlerActivated = () => {\r\n setWidgetDef(frontstage?.findWidgetDef(tabId));\r\n };\r\n\r\n return UiItemsManager.onUiProviderRegisteredEvent.addListener(handlerActivated);\r\n }, [frontstage, tabId]);\r\n\r\n return widgetDef;\r\n}\r\n"]}
@@ -114,6 +114,7 @@ export declare const setWidgetState: (base: {
114
114
  readonly side: PanelSide;
115
115
  };
116
116
  readonly userSized?: boolean | undefined;
117
+ readonly hidden?: boolean | undefined;
117
118
  };
118
119
  };
119
120
  readonly allIds: readonly string[];
@@ -235,6 +236,7 @@ export declare const setWidgetState: (base: {
235
236
  readonly canPopout?: boolean | undefined;
236
237
  readonly userSized?: boolean | undefined;
237
238
  readonly isFloatingStateWindowResizable?: boolean | undefined;
239
+ readonly hideWithUiWhenFloating?: boolean | undefined;
238
240
  };
239
241
  };
240
242
  readonly toolSettings: {
@@ -286,6 +288,7 @@ export declare const showWidget: (base: {
286
288
  readonly side: PanelSide;
287
289
  };
288
290
  readonly userSized?: boolean | undefined;
291
+ readonly hidden?: boolean | undefined;
289
292
  };
290
293
  };
291
294
  readonly allIds: readonly string[];
@@ -407,6 +410,7 @@ export declare const showWidget: (base: {
407
410
  readonly canPopout?: boolean | undefined;
408
411
  readonly userSized?: boolean | undefined;
409
412
  readonly isFloatingStateWindowResizable?: boolean | undefined;
413
+ readonly hideWithUiWhenFloating?: boolean | undefined;
410
414
  };
411
415
  };
412
416
  readonly toolSettings: {
@@ -458,6 +462,7 @@ export declare const expandWidget: (base: {
458
462
  readonly side: PanelSide;
459
463
  };
460
464
  readonly userSized?: boolean | undefined;
465
+ readonly hidden?: boolean | undefined;
461
466
  };
462
467
  };
463
468
  readonly allIds: readonly string[];
@@ -579,6 +584,7 @@ export declare const expandWidget: (base: {
579
584
  readonly canPopout?: boolean | undefined;
580
585
  readonly userSized?: boolean | undefined;
581
586
  readonly isFloatingStateWindowResizable?: boolean | undefined;
587
+ readonly hideWithUiWhenFloating?: boolean | undefined;
582
588
  };
583
589
  };
584
590
  readonly toolSettings: {
@@ -630,6 +636,7 @@ export declare const setWidgetLabel: (base: {
630
636
  readonly side: PanelSide;
631
637
  };
632
638
  readonly userSized?: boolean | undefined;
639
+ readonly hidden?: boolean | undefined;
633
640
  };
634
641
  };
635
642
  readonly allIds: readonly string[];
@@ -751,6 +758,7 @@ export declare const setWidgetLabel: (base: {
751
758
  readonly canPopout?: boolean | undefined;
752
759
  readonly userSized?: boolean | undefined;
753
760
  readonly isFloatingStateWindowResizable?: boolean | undefined;
761
+ readonly hideWithUiWhenFloating?: boolean | undefined;
754
762
  };
755
763
  };
756
764
  readonly toolSettings: {
@@ -781,7 +789,7 @@ export declare const FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
781
789
  /** @internal */
782
790
  export declare function getFrontstageStateSettingName(frontstageId: WidgetPanelsFrontstageState["id"]): string;
783
791
  /** @internal */
784
- export declare function useFrontstageManager(frontstageDef: FrontstageDef): void;
792
+ export declare function useFrontstageManager(frontstageDef: FrontstageDef, useToolAsToolSettingsLabel?: boolean): void;
785
793
  /** @internal */
786
794
  export declare function useItemsManager(frontstageDef: FrontstageDef): void;
787
795
  /** @internal */
@@ -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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"}
@@ -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)();
@@ -667,6 +674,20 @@ function restoreNineZoneState(frontstageDef, saved) {
667
674
  return restored;
668
675
  }
669
676
  exports.restoreNineZoneState = restoreNineZoneState;
677
+ /**
678
+ * Checks to see whether a widget id is one of our generated uuids
679
+ * @param uuid the string value to test
680
+ * @returns boolean
681
+ */
682
+ function isUUID(uuid) {
683
+ const s = `${uuid}`;
684
+ 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}$");
685
+ // istanbul ignore else
686
+ if (result === null) {
687
+ return false;
688
+ }
689
+ return true;
690
+ }
670
691
  /** Prepares NineZoneState to be saved.
671
692
  * @note Removes toolSettings tab.
672
693
  * @note Removes tab labels and iconSpec.
@@ -681,6 +702,9 @@ function packNineZoneState(state) {
681
702
  for (const [, tab] of Object.entries(state.tabs)) {
682
703
  if (tab.id === appui_layout_react_1.toolSettingsTabId)
683
704
  continue;
705
+ // istanbul ignore else
706
+ if (isUUID(tab.id))
707
+ continue;
684
708
  draft.tabs[tab.id] = {
685
709
  id: tab.id,
686
710
  preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
@@ -690,6 +714,18 @@ function packNineZoneState(state) {
690
714
  };
691
715
  }
692
716
  });
717
+ packed = (0, immer_1.default)(packed, (draft) => {
718
+ for (const [, floatingWidget] of Object.entries(state.floatingWidgets.byId)) {
719
+ const widgetId = floatingWidget.id;
720
+ // istanbul ignore else
721
+ if (isUUID(widgetId)) {
722
+ const idIndex = draft.floatingWidgets.allIds.indexOf(widgetId);
723
+ draft.floatingWidgets.allIds.splice(idIndex, 1);
724
+ delete draft.floatingWidgets.byId[widgetId];
725
+ delete draft.widgets[widgetId];
726
+ }
727
+ }
728
+ });
693
729
  return packed;
694
730
  }
695
731
  exports.packNineZoneState = packNineZoneState;
@@ -701,12 +737,14 @@ function isPanelCollapsed(zoneStates, panelStates) {
701
737
  }
702
738
  exports.isPanelCollapsed = isPanelCollapsed;
703
739
  function addRemovedTab(nineZone, widgetDef) {
740
+ var _a, _b;
704
741
  const newTab = (0, appui_layout_react_1.createTabState)(widgetDef.id, {
705
742
  label: getWidgetLabel(widgetDef.label),
706
743
  canPopout: widgetDef.canPopout,
707
744
  iconSpec: widgetDef.iconSpec,
708
745
  preferredPanelWidgetSize: widgetDef.preferredPanelSize,
709
746
  isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
747
+ hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
710
748
  });
711
749
  nineZone.tabs[newTab.id] = newTab;
712
750
  if (widgetDef.tabLocation.widgetId in nineZone.widgets) {
@@ -715,6 +753,18 @@ function addRemovedTab(nineZone, widgetDef) {
715
753
  const newTabWidget = nineZone.widgets[widgetId];
716
754
  newTabWidget.tabs.splice(widgetDef.tabLocation.tabIndex, 0, newTab.id);
717
755
  }
756
+ else if (widgetDef.tabLocation.floating) {
757
+ const id = widgetDef.tabLocation.widgetId;
758
+ if (id in nineZone.floatingWidgets.byId) {
759
+ nineZone.floatingWidgets.allIds.push(id);
760
+ nineZone.floatingWidgets.byId[id].hidden = false;
761
+ (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);
762
+ }
763
+ else {
764
+ const home = { side: widgetDef.tabLocation.side, widgetId: widgetDef.floatingContainerId, widgetIndex: 0 };
765
+ (0, appui_layout_react_1.addWidgetTabToDraftFloatingPanel)(nineZone, (_b = widgetDef.floatingContainerId) !== null && _b !== void 0 ? _b : widgetDef.id, widgetDef.id, home, newTab);
766
+ }
767
+ }
718
768
  else {
719
769
  const newTabPanel = nineZone.panels[widgetDef.tabLocation.side];
720
770
  if (newTabPanel.maxWidgetCount === newTabPanel.widgets.length) {
@@ -734,7 +784,7 @@ function addRemovedTab(nineZone, widgetDef) {
734
784
  }
735
785
  /** @internal */
736
786
  exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
737
- var _a;
787
+ var _a, _b;
738
788
  if (state === appui_abstract_1.WidgetState.Open) {
739
789
  const id = widgetDef.id;
740
790
  let location = (0, appui_layout_react_1.findTab)(nineZone, id);
@@ -743,6 +793,9 @@ exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
743
793
  location = (0, appui_layout_react_1.findTab)(nineZone, id);
744
794
  (0, core_bentley_1.assert)(!!location);
745
795
  }
796
+ if (!!widgetDef.tabLocation.floating) {
797
+ nineZone.floatingWidgets.byId[(_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : widgetDef.id].hidden = false;
798
+ }
746
799
  const widget = nineZone.widgets[location.widgetId];
747
800
  widget.minimized = false;
748
801
  widget.activeTabId = id;
@@ -753,7 +806,7 @@ exports.setWidgetState = (0, immer_1.default)((nineZone, widgetDef, state) => {
753
806
  panel.collapsed && (panel.collapsed = false);
754
807
  // istanbul ignore next
755
808
  if (undefined === panel.size || 0 === panel.size) {
756
- panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
809
+ panel.size = (_b = panel.minSize) !== null && _b !== void 0 ? _b : 200;
757
810
  }
758
811
  }
759
812
  }
@@ -781,16 +834,31 @@ function hideWidget(state, widgetDef) {
781
834
  const location = (0, appui_layout_react_1.findTab)(state, widgetDef.id);
782
835
  if (!location)
783
836
  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
- };
837
+ if ((0, appui_layout_react_1.isFloatingLocation)(location)) {
838
+ const widget = state.floatingWidgets.byId[location.widgetId];
839
+ widgetDef.setFloatingContainerId(location.floatingWidgetId);
840
+ widgetDef.tabLocation = {
841
+ side: widget.home.side,
842
+ tabIndex: widget.home.widgetIndex,
843
+ widgetId: widgetDef.id,
844
+ widgetIndex: widget.home.widgetIndex,
845
+ floating: true,
846
+ };
847
+ }
848
+ else
849
+ // istanbul ignore else
850
+ if (!(0, appui_layout_react_1.isPopoutLocation)(location)) {
851
+ const widgetId = location.widgetId;
852
+ const side = "side" in location ? location.side : "left";
853
+ const widgetIndex = "side" in location ? state.panels[side].widgets.indexOf(widgetId) : 0;
854
+ const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
855
+ widgetDef.tabLocation = {
856
+ side,
857
+ tabIndex,
858
+ widgetId,
859
+ widgetIndex,
860
+ };
861
+ }
794
862
  (0, appui_layout_react_1.removeTab)(state, widgetDef.id);
795
863
  }
796
864
  /** @internal */
@@ -931,7 +999,7 @@ const createListener = (frontstageDef, listener) => {
931
999
  };
932
1000
  };
933
1001
  /** @internal */
934
- function useFrontstageManager(frontstageDef) {
1002
+ function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
935
1003
  React.useEffect(() => {
936
1004
  const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
937
1005
  (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
@@ -992,6 +1060,34 @@ function useFrontstageManager(frontstageDef) {
992
1060
  FrontstageManager_1.FrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
993
1061
  };
994
1062
  }, [frontstageDef]);
1063
+ const defaultLabel = React.useMemo(() => UiFramework_1.UiFramework.translate("widget.labels.toolSettings"), []);
1064
+ React.useEffect(() => {
1065
+ const updateLabel = createListener(frontstageDef, () => {
1066
+ var _a;
1067
+ const toolId = FrontstageManager_1.FrontstageManager.activeToolId;
1068
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1069
+ const label = useToolAsToolSettingsLabel ?
1070
+ ((_a = core_frontend_1.IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1071
+ frontstageDef.nineZoneState = (0, exports.setWidgetLabel)(frontstageDef.nineZoneState, appui_layout_react_1.toolSettingsTabId, label);
1072
+ });
1073
+ // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1074
+ updateLabel();
1075
+ // If useTool... is true, listen for events to keep up the label up to date.
1076
+ if (useToolAsToolSettingsLabel) {
1077
+ FrontstageManager_1.FrontstageManager.onFrontstageReadyEvent.addListener(updateLabel);
1078
+ FrontstageManager_1.FrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1079
+ FrontstageManager_1.FrontstageManager.onToolActivatedEvent.addListener(updateLabel);
1080
+ FrontstageManager_1.FrontstageManager.onToolSettingsReloadEvent.addListener(updateLabel);
1081
+ }
1082
+ return () => {
1083
+ if (useToolAsToolSettingsLabel) {
1084
+ FrontstageManager_1.FrontstageManager.onFrontstageReadyEvent.removeListener(updateLabel);
1085
+ FrontstageManager_1.FrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1086
+ FrontstageManager_1.FrontstageManager.onToolActivatedEvent.removeListener(updateLabel);
1087
+ FrontstageManager_1.FrontstageManager.onToolSettingsReloadEvent.removeListener(updateLabel);
1088
+ }
1089
+ };
1090
+ }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
995
1091
  }
996
1092
  exports.useFrontstageManager = useFrontstageManager;
997
1093
  /** @internal */