@itwin/appui-react 4.10.0-dev.1 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1183) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +181 -10
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +301 -21
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.d.ts.map +1 -1
  7. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js +3 -2
  8. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +50 -33
  11. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts +1 -1
  13. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +7 -9
  15. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.d.ts +7 -6
  17. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.d.ts.map +1 -1
  18. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js +9 -0
  19. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  20. package/lib/cjs/appui-react/accudraw/Calculator.js +9 -9
  21. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  22. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  23. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +10 -10
  24. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  25. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +2 -1
  26. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  27. package/lib/cjs/appui-react/backstage/BackstageItem.d.ts +2 -2
  28. package/lib/cjs/appui-react/backstage/BackstageItem.d.ts.map +1 -1
  29. package/lib/cjs/appui-react/backstage/BackstageItem.js.map +1 -1
  30. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +1 -1
  31. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  32. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts +5 -0
  33. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  34. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +24 -17
  35. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  36. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.scss +12 -10
  37. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -0
  38. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  39. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +7 -1
  40. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  41. package/lib/cjs/appui-react/configurableui/TimeTracker.js +2 -1
  42. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  43. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  44. package/lib/cjs/appui-react/content/ContentGroup.js +2 -2
  45. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  46. package/lib/cjs/appui-react/content/ContentLayout.js +12 -9
  47. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  48. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +4 -3
  49. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  50. package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +14 -19
  51. package/lib/cjs/appui-react/content/FloatingViewportContent.js +2 -1
  52. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  53. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  54. package/lib/cjs/appui-react/content/IModelViewport.js +10 -11
  55. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  56. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +2 -1
  57. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  58. package/lib/cjs/appui-react/content/InternalContentViewManager.js +2 -2
  59. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  60. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +12 -10
  61. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  62. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts +2 -2
  63. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +3 -2
  65. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  66. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts +8 -4
  67. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +102 -50
  69. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  70. package/lib/cjs/appui-react/dialog/ContentDialog.js +6 -3
  71. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  72. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +3 -2
  73. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  74. package/lib/cjs/appui-react/feedback/ValidationTextbox.js +2 -2
  75. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  76. package/lib/cjs/appui-react/framework/FrameworkVisibility.d.ts +4 -2
  77. package/lib/cjs/appui-react/framework/FrameworkVisibility.d.ts.map +1 -1
  78. package/lib/cjs/appui-react/framework/FrameworkVisibility.js.map +1 -1
  79. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +0 -5
  80. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  81. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +20 -77
  82. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  83. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  84. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +1 -3
  85. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  86. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts +0 -1
  87. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  88. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js +1 -2
  89. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  90. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  91. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +7 -6
  92. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  93. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +2 -1
  94. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  95. package/lib/cjs/appui-react/hooks/useActiveToolId.d.ts +6 -0
  96. package/lib/cjs/appui-react/hooks/useActiveToolId.d.ts.map +1 -0
  97. package/lib/cjs/appui-react/hooks/useActiveToolId.js +24 -0
  98. package/lib/cjs/appui-react/hooks/useActiveToolId.js.map +1 -0
  99. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +11 -7
  100. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  101. package/lib/cjs/appui-react/hooks/useConditionalValue.d.ts +15 -0
  102. package/lib/cjs/appui-react/hooks/useConditionalValue.d.ts.map +1 -0
  103. package/lib/cjs/appui-react/hooks/useConditionalValue.js +43 -0
  104. package/lib/cjs/appui-react/hooks/useConditionalValue.js.map +1 -0
  105. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js +1 -1
  106. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  107. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +11 -7
  108. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  109. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +13 -8
  110. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  111. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  112. package/lib/cjs/appui-react/keyins/Keyins.d.ts +35 -0
  113. package/lib/cjs/appui-react/keyins/Keyins.d.ts.map +1 -0
  114. package/lib/cjs/appui-react/keyins/Keyins.js +54 -0
  115. package/lib/cjs/appui-react/keyins/Keyins.js.map +1 -0
  116. package/lib/cjs/appui-react/layers.scss +11 -0
  117. package/lib/cjs/appui-react/layout/StandardLayout.d.ts +24 -0
  118. package/lib/cjs/appui-react/layout/StandardLayout.d.ts.map +1 -0
  119. package/lib/cjs/appui-react/layout/StandardLayout.js +56 -0
  120. package/lib/cjs/appui-react/layout/StandardLayout.js.map +1 -0
  121. package/lib/cjs/appui-react/layout/StandardLayout.scss +94 -0
  122. package/lib/cjs/appui-react/layout/_widgetopacity.scss +3 -1
  123. package/lib/cjs/appui-react/layout/backstage/Backstage.js +1 -1
  124. package/lib/cjs/appui-react/layout/backstage/Backstage.js.map +1 -1
  125. package/lib/cjs/appui-react/layout/base/DragManager.js +2 -1
  126. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  127. package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
  128. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  129. package/lib/cjs/appui-react/layout/base/SafeAreaInsets.js +4 -4
  130. package/lib/cjs/appui-react/layout/base/SafeAreaInsets.js.map +1 -1
  131. package/lib/cjs/appui-react/layout/base/usePointerCaptor.d.ts.map +1 -1
  132. package/lib/cjs/appui-react/layout/base/usePointerCaptor.js +3 -0
  133. package/lib/cjs/appui-react/layout/base/usePointerCaptor.js.map +1 -1
  134. package/lib/cjs/appui-react/layout/outline/PanelOutline.scss +1 -10
  135. package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
  136. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  137. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
  138. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  139. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +14 -12
  140. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  141. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +2 -1
  142. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  143. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  144. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js +1 -0
  145. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  146. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.d.ts.map +1 -1
  147. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +8 -2
  148. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  149. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.js +6 -0
  151. package/lib/cjs/appui-react/layout/state/internal/ToolSettingsStateHelpers.js.map +1 -1
  152. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.d.ts.map +1 -1
  153. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +6 -4
  154. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  155. package/lib/cjs/appui-react/layout/target/PanelTargets.scss +2 -0
  156. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
  157. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  158. package/lib/cjs/appui-react/layout/tool-settings/Docked.d.ts +12 -6
  159. package/lib/cjs/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  160. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +52 -21
  161. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  162. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +15 -23
  163. package/lib/cjs/appui-react/layout/tool-settings/Handle.d.ts.map +1 -1
  164. package/lib/cjs/appui-react/layout/tool-settings/Handle.js +3 -1
  165. package/lib/cjs/appui-react/layout/tool-settings/Handle.js.map +1 -1
  166. package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +6 -12
  167. package/lib/cjs/appui-react/layout/tool-settings/Overflow.d.ts.map +1 -1
  168. package/lib/cjs/appui-react/layout/tool-settings/Overflow.js +4 -5
  169. package/lib/cjs/appui-react/layout/tool-settings/Overflow.js.map +1 -1
  170. package/lib/cjs/appui-react/layout/tool-settings/Overflow.scss +0 -15
  171. package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -12
  172. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts +4 -4
  173. package/lib/cjs/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  174. package/lib/cjs/appui-react/layout/widget/Buttons.js +8 -31
  175. package/lib/cjs/appui-react/layout/widget/Buttons.js.map +1 -1
  176. package/lib/cjs/appui-react/layout/widget/Content.d.ts.map +1 -1
  177. package/lib/cjs/appui-react/layout/widget/Content.js +5 -5
  178. package/lib/cjs/appui-react/layout/widget/Content.js.map +1 -1
  179. package/lib/cjs/appui-react/layout/widget/ContentContainer.d.ts.map +1 -1
  180. package/lib/cjs/appui-react/layout/widget/ContentContainer.js +2 -0
  181. package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
  182. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +1 -1
  183. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  184. package/lib/cjs/appui-react/layout/widget/ContentManager.js +1 -1
  185. package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
  186. package/lib/cjs/appui-react/layout/widget/ContentRenderer.d.ts.map +1 -1
  187. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +8 -2
  188. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  189. package/lib/cjs/appui-react/layout/widget/Dock.d.ts +2 -0
  190. package/lib/cjs/appui-react/layout/widget/Dock.d.ts.map +1 -1
  191. package/lib/cjs/appui-react/layout/widget/Dock.js +10 -1
  192. package/lib/cjs/appui-react/layout/widget/Dock.js.map +1 -1
  193. package/lib/cjs/appui-react/layout/widget/FloatingTab.js +6 -5
  194. package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
  195. package/lib/cjs/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  196. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +19 -19
  197. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  198. package/lib/cjs/appui-react/layout/widget/FloatingWidget.scss +92 -105
  199. package/lib/cjs/appui-react/layout/widget/NavigationArea.scss +4 -1
  200. package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
  201. package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
  202. package/lib/cjs/appui-react/layout/widget/PinToggle.d.ts +2 -0
  203. package/lib/cjs/appui-react/layout/widget/PinToggle.d.ts.map +1 -1
  204. package/lib/cjs/appui-react/layout/widget/PinToggle.js +10 -1
  205. package/lib/cjs/appui-react/layout/widget/PinToggle.js.map +1 -1
  206. package/lib/cjs/appui-react/layout/widget/SendBack.d.ts.map +1 -1
  207. package/lib/cjs/appui-react/layout/widget/SendBack.js +4 -5
  208. package/lib/cjs/appui-react/layout/widget/SendBack.js.map +1 -1
  209. package/lib/cjs/appui-react/layout/widget/Tab.d.ts.map +1 -1
  210. package/lib/cjs/appui-react/layout/widget/Tab.js +9 -14
  211. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  212. package/lib/cjs/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  213. package/lib/cjs/appui-react/layout/widget/TabBar.js +4 -1
  214. package/lib/cjs/appui-react/layout/widget/TabBar.js.map +1 -1
  215. package/lib/cjs/appui-react/layout/widget/TabBar.scss +17 -19
  216. package/lib/cjs/appui-react/layout/widget/ToolsArea.scss +2 -0
  217. package/lib/cjs/appui-react/layout/widget/Widget.d.ts.map +1 -1
  218. package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
  219. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  220. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  221. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  222. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.d.ts +8 -0
  223. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.d.ts.map +1 -0
  224. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.js +39 -0
  225. package/lib/cjs/appui-react/layout/widget/usePanelWidgetId.js.map +1 -0
  226. package/lib/cjs/appui-react/layout/widget-panels/Grip.d.ts +1 -1
  227. package/lib/cjs/appui-react/layout/widget-panels/Grip.d.ts.map +1 -1
  228. package/lib/cjs/appui-react/layout/widget-panels/Grip.js +4 -0
  229. package/lib/cjs/appui-react/layout/widget-panels/Grip.js.map +1 -1
  230. package/lib/cjs/appui-react/layout/widget-panels/Grip.scss +106 -104
  231. package/lib/cjs/appui-react/layout/widget-panels/Panel.d.ts +1 -1
  232. package/lib/cjs/appui-react/layout/widget-panels/Panel.d.ts.map +1 -1
  233. package/lib/cjs/appui-react/layout/widget-panels/Panel.js +10 -16
  234. package/lib/cjs/appui-react/layout/widget-panels/Panel.js.map +1 -1
  235. package/lib/cjs/appui-react/layout/widget-panels/Panel.scss +175 -243
  236. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.d.ts +1 -0
  237. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  238. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +42 -35
  239. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  240. package/lib/cjs/appui-react/layout/widget-panels/{Panels.scss → PanelSections.scss} +1 -11
  241. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.d.ts +1 -1
  242. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +2 -1
  243. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  244. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts +7 -0
  245. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts.map +1 -0
  246. package/lib/cjs/appui-react/layout/widget-panels/{AppContent.js → usePanelsAutoCollapse.js} +3 -26
  247. package/lib/cjs/appui-react/layout/widget-panels/usePanelsAutoCollapse.js.map +1 -0
  248. package/lib/cjs/appui-react/messages/AppNotificationManager.js +1 -1
  249. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  250. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  251. package/lib/cjs/appui-react/messages/MessageManager.js +6 -7
  252. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  253. package/lib/cjs/appui-react/messages/MessageRenderer.js +16 -10
  254. package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -1
  255. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
  256. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  257. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +2 -6
  258. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  259. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  260. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +1 -1
  261. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  262. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +0 -1
  263. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  264. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +2 -3
  265. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  266. package/lib/cjs/appui-react/pickers/ViewSelector.js +6 -5
  267. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  268. package/lib/cjs/appui-react/popup/CardPopup.d.ts +21 -9
  269. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  270. package/lib/cjs/appui-react/popup/CardPopup.js +13 -6
  271. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  272. package/lib/cjs/appui-react/popup/ComponentPopup.d.ts +18 -0
  273. package/lib/cjs/appui-react/popup/ComponentPopup.d.ts.map +1 -0
  274. package/lib/cjs/appui-react/popup/ComponentPopup.js +35 -0
  275. package/lib/cjs/appui-react/popup/ComponentPopup.js.map +1 -0
  276. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts +4 -1
  277. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  278. package/lib/cjs/appui-react/popup/HTMLElementPopup.js +1 -0
  279. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  280. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts +4 -4
  281. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  282. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  283. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts +1 -1
  284. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  285. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +25 -16
  286. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  287. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts +4 -2
  288. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  289. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +10 -4
  290. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  291. package/lib/cjs/appui-react/popup/PopupManager.d.ts +45 -9
  292. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  293. package/lib/cjs/appui-react/popup/PopupManager.js +85 -13
  294. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  295. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +1 -1
  296. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  297. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts +16 -6
  298. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  299. package/lib/cjs/appui-react/popup/ToolbarPopup.js +8 -3
  300. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  301. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +9 -2
  302. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  303. package/lib/cjs/appui-react/preview/PreviewFeatures.js +3 -2
  304. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  305. package/lib/cjs/appui-react/preview/activate-dropped-tab/activateDroppedTab.d.ts +6 -0
  306. package/lib/cjs/appui-react/preview/activate-dropped-tab/activateDroppedTab.d.ts.map +1 -0
  307. package/lib/cjs/appui-react/{layout/state → preview/activate-dropped-tab}/activateDroppedTab.js +5 -4
  308. package/lib/cjs/appui-react/preview/activate-dropped-tab/activateDroppedTab.js.map +1 -0
  309. package/lib/cjs/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.d.ts +6 -0
  310. package/lib/cjs/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.d.ts.map +1 -0
  311. package/lib/cjs/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.js +18 -0
  312. package/lib/cjs/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.js.map +1 -0
  313. package/lib/cjs/appui-react/{layout/widget-panels/CenterContent.scss → preview/content-always-max-size/useContentAlwaysMaxSize.scss} +5 -2
  314. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts +9 -0
  315. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts.map +1 -0
  316. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +51 -0
  317. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -0
  318. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts +18 -0
  319. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts.map +1 -0
  320. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.js +27 -0
  321. package/lib/cjs/appui-react/preview/enable-maximized-widget/MaximizedWidget.js.map +1 -0
  322. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts +50 -0
  323. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts.map +1 -0
  324. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +115 -0
  325. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -0
  326. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.scss +36 -0
  327. package/lib/cjs/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.d.ts +4 -6
  328. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts.map +1 -0
  329. package/lib/cjs/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.js +18 -22
  330. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -0
  331. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts +19 -0
  332. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts.map +1 -0
  333. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js +30 -0
  334. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js.map +1 -0
  335. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.scss +49 -0
  336. package/lib/cjs/appui-react/preview/new-toolbars/ActionItem.d.ts +12 -0
  337. package/lib/cjs/appui-react/preview/new-toolbars/ActionItem.d.ts.map +1 -0
  338. package/lib/cjs/appui-react/preview/new-toolbars/ActionItem.js +25 -0
  339. package/lib/cjs/appui-react/preview/new-toolbars/ActionItem.js.map +1 -0
  340. package/lib/cjs/appui-react/preview/new-toolbars/Badge.d.ts +9 -0
  341. package/lib/cjs/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -0
  342. package/lib/cjs/appui-react/preview/new-toolbars/Badge.js +20 -0
  343. package/lib/cjs/appui-react/preview/new-toolbars/Badge.js.map +1 -0
  344. package/lib/cjs/appui-react/preview/new-toolbars/Badge.scss +13 -0
  345. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.d.ts +12 -0
  346. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.d.ts.map +1 -0
  347. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js +36 -0
  348. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js.map +1 -0
  349. package/lib/cjs/appui-react/preview/new-toolbars/ExpandIndicator.d.ts +5 -0
  350. package/lib/cjs/appui-react/preview/new-toolbars/ExpandIndicator.d.ts.map +1 -0
  351. package/lib/cjs/appui-react/{statusbar/Popup.js → preview/new-toolbars/ExpandIndicator.js} +8 -13
  352. package/lib/cjs/appui-react/preview/new-toolbars/ExpandIndicator.js.map +1 -0
  353. package/lib/cjs/appui-react/preview/new-toolbars/ExpandIndicator.scss +17 -0
  354. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.d.ts +22 -0
  355. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.d.ts.map +1 -0
  356. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js +79 -0
  357. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js.map +1 -0
  358. package/lib/cjs/appui-react/preview/new-toolbars/Item.d.ts +21 -0
  359. package/lib/cjs/appui-react/preview/new-toolbars/Item.d.ts.map +1 -0
  360. package/lib/cjs/appui-react/preview/new-toolbars/Item.js +54 -0
  361. package/lib/cjs/appui-react/preview/new-toolbars/Item.js.map +1 -0
  362. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.d.ts +17 -0
  363. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.d.ts.map +1 -0
  364. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js +37 -0
  365. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -0
  366. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.d.ts +18 -0
  367. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.d.ts.map +1 -0
  368. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js +85 -0
  369. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -0
  370. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.scss +43 -0
  371. package/lib/cjs/appui-react/preview/new-toolbars/Toolbar.d.ts +23 -0
  372. package/lib/cjs/appui-react/preview/new-toolbars/Toolbar.d.ts.map +1 -0
  373. package/lib/cjs/appui-react/preview/new-toolbars/Toolbar.js +40 -0
  374. package/lib/cjs/appui-react/preview/new-toolbars/Toolbar.js.map +1 -0
  375. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.d.ts +9 -0
  376. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.d.ts.map +1 -0
  377. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js +93 -0
  378. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js.map +1 -0
  379. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  380. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js +1 -1
  381. package/lib/cjs/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  382. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +3 -2
  383. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  384. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +7 -6
  385. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  386. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
  387. package/lib/cjs/appui-react/redux/SessionState.d.ts +17 -5
  388. package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
  389. package/lib/cjs/appui-react/redux/SessionState.js +8 -1
  390. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  391. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  392. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  393. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  394. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +6 -8
  395. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  396. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
  397. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +7 -7
  398. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  399. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  400. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +40 -46
  401. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  402. package/lib/cjs/appui-react/shared/ConditionalValue.d.ts +17 -0
  403. package/lib/cjs/appui-react/shared/ConditionalValue.d.ts.map +1 -0
  404. package/lib/cjs/appui-react/shared/ConditionalValue.js +16 -0
  405. package/lib/cjs/appui-react/shared/ConditionalValue.js.map +1 -0
  406. package/lib/cjs/appui-react/shared/ItemDefBase.d.ts +2 -2
  407. package/lib/cjs/appui-react/shared/ItemDefBase.d.ts.map +1 -1
  408. package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
  409. package/lib/cjs/appui-react/shared/ItemProps.d.ts +13 -2
  410. package/lib/cjs/appui-react/shared/ItemProps.d.ts.map +1 -1
  411. package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
  412. package/lib/cjs/appui-react/shared/MenuItem.d.ts +21 -2
  413. package/lib/cjs/appui-react/shared/MenuItem.d.ts.map +1 -1
  414. package/lib/cjs/appui-react/shared/MenuItem.js.map +1 -1
  415. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +16 -11
  416. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  417. package/lib/cjs/appui-react/statusbar/Indicator.js +2 -1
  418. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  419. package/lib/cjs/appui-react/statusbar/Overflow.d.ts.map +1 -1
  420. package/lib/cjs/appui-react/statusbar/Overflow.js +3 -3
  421. package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
  422. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -1
  423. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  424. package/lib/cjs/appui-react/statusbar/StatusBar.js +6 -4
  425. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  426. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -1
  427. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  428. package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts +2 -2
  429. package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
  430. package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
  431. package/lib/{esm/appui-react/statusbar → cjs/appui-react/statusbar/popup}/Popup.d.ts +2 -1
  432. package/lib/cjs/appui-react/statusbar/popup/Popup.d.ts.map +1 -0
  433. package/lib/cjs/appui-react/{layout/footer → statusbar/popup}/Popup.js +10 -11
  434. package/lib/cjs/appui-react/statusbar/popup/Popup.js.map +1 -0
  435. package/lib/cjs/appui-react/{layout/footer → statusbar/popup}/Popup.scss +1 -7
  436. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  437. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +5 -4
  438. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  439. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +0 -1
  440. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  441. package/lib/cjs/appui-react/statusfields/MessageCenter.js +4 -4
  442. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  443. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  444. package/lib/cjs/appui-react/statusfields/SectionsField.js +7 -10
  445. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  446. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  447. package/lib/cjs/appui-react/statusfields/SelectionScope.js +4 -4
  448. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  449. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  450. package/lib/cjs/appui-react/statusfields/SnapMode.js +14 -12
  451. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  452. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts +0 -2
  453. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +12 -20
  455. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  456. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  457. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +2 -2
  458. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  459. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  460. package/lib/cjs/appui-react/theme/ThemeManager.js +3 -2
  461. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  462. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.d.ts.map +1 -1
  463. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +2 -3
  464. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  465. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts +4 -3
  466. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  467. package/lib/cjs/appui-react/toolbar/Toolbar.js +28 -4
  468. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  469. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts +4 -2
  470. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  471. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +15 -12
  472. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  473. package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  474. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +5 -6
  475. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  476. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts +2 -2
  477. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  478. package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
  479. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +4 -3
  480. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  481. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  482. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +18 -11
  483. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  484. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  485. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js +2 -1
  486. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  487. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +2 -3
  488. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  489. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +22 -20
  490. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  491. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js +3 -3
  492. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  493. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +10 -9
  494. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  495. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -1
  496. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  497. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +14 -8
  498. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  499. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +47 -38
  500. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  501. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +102 -143
  502. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  503. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +1 -1
  504. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  505. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +0 -7
  506. package/lib/cjs/appui-react/useTranslation.d.ts +10 -0
  507. package/lib/cjs/appui-react/useTranslation.d.ts.map +1 -0
  508. package/lib/cjs/appui-react/useTranslation.js +20 -0
  509. package/lib/cjs/appui-react/useTranslation.js.map +1 -0
  510. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  511. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  512. package/lib/cjs/appui-react/utils/Placement.d.ts +35 -0
  513. package/lib/cjs/appui-react/utils/Placement.d.ts.map +1 -0
  514. package/lib/cjs/appui-react/utils/Placement.js +62 -0
  515. package/lib/cjs/appui-react/utils/Placement.js.map +1 -0
  516. package/lib/cjs/appui-react/utils/PropsHelper.js +4 -4
  517. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  518. package/lib/cjs/appui-react/utils/matchesWords.js +4 -4
  519. package/lib/cjs/appui-react/utils/matchesWords.js.map +1 -1
  520. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  521. package/lib/cjs/appui-react/widget-panels/Content.js +12 -11
  522. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  523. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  524. package/lib/cjs/appui-react/widget-panels/Frontstage.js +43 -39
  525. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  526. package/lib/cjs/appui-react/widget-panels/Frontstage.scss +0 -23
  527. package/lib/cjs/appui-react/widget-panels/StatusBar.js +1 -1
  528. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  529. package/lib/cjs/appui-react/widget-panels/Tab.d.ts +1 -1
  530. package/lib/cjs/appui-react/widget-panels/Tab.d.ts.map +1 -1
  531. package/lib/cjs/appui-react/widget-panels/Tab.js +3 -4
  532. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  533. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  534. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  535. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +55 -68
  536. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  537. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +0 -6
  538. package/lib/cjs/appui-react/widget-panels/Toolbars.js +3 -2
  539. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  540. package/lib/cjs/appui-react/widget-panels/Toolbars.scss +3 -1
  541. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  542. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +3 -1
  543. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  544. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  545. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +5 -3
  546. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  547. package/lib/cjs/appui-react/widgets/Widget.d.ts +2 -2
  548. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
  549. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  550. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +9 -4
  551. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  552. package/lib/cjs/appui-react/widgets/WidgetDef.js +61 -18
  553. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  554. package/lib/cjs/appui-react/widgets/WidgetHost.js +3 -2
  555. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  556. package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
  557. package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
  558. package/lib/cjs/appui-react.d.ts +4 -1
  559. package/lib/cjs/appui-react.d.ts.map +1 -1
  560. package/lib/cjs/appui-react.js +4 -3
  561. package/lib/cjs/appui-react.js.map +1 -1
  562. package/lib/esm/appui-react/UiFramework.d.ts +181 -10
  563. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  564. package/lib/esm/appui-react/UiFramework.js +301 -21
  565. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  566. package/lib/esm/appui-react/accudraw/AccuDrawDialog.d.ts.map +1 -1
  567. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js +3 -2
  568. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  569. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  570. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +50 -33
  571. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  572. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts +1 -1
  573. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  574. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +7 -9
  575. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  576. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.d.ts +7 -6
  577. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.d.ts.map +1 -1
  578. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js +9 -0
  579. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  580. package/lib/esm/appui-react/accudraw/Calculator.js +9 -9
  581. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  582. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  583. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +10 -10
  584. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  585. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +2 -1
  586. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  587. package/lib/esm/appui-react/backstage/BackstageItem.d.ts +2 -2
  588. package/lib/esm/appui-react/backstage/BackstageItem.d.ts.map +1 -1
  589. package/lib/esm/appui-react/backstage/BackstageItem.js.map +1 -1
  590. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +1 -1
  591. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  592. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts +5 -0
  593. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  594. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +23 -16
  595. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  596. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.scss +12 -10
  597. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -0
  598. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  599. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +7 -1
  600. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  601. package/lib/esm/appui-react/configurableui/TimeTracker.js +2 -1
  602. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  603. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  604. package/lib/esm/appui-react/content/ContentGroup.js +2 -2
  605. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  606. package/lib/esm/appui-react/content/ContentLayout.js +12 -9
  607. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  608. package/lib/esm/appui-react/content/DefaultViewOverlay.js +4 -3
  609. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  610. package/lib/esm/appui-react/content/DefaultViewOverlay.scss +14 -19
  611. package/lib/esm/appui-react/content/FloatingViewportContent.js +2 -1
  612. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  613. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  614. package/lib/esm/appui-react/content/IModelViewport.js +10 -11
  615. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  616. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +2 -1
  617. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  618. package/lib/esm/appui-react/content/InternalContentViewManager.js +2 -2
  619. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  620. package/lib/esm/appui-react/content/split-pane/SplitPane.js +12 -10
  621. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  622. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts +2 -2
  623. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  624. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +3 -2
  625. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  626. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts +8 -4
  627. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  628. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +102 -50
  629. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  630. package/lib/esm/appui-react/dialog/ContentDialog.js +6 -3
  631. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  632. package/lib/esm/appui-react/dialog/DialogManagerBase.js +3 -2
  633. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  634. package/lib/esm/appui-react/feedback/ValidationTextbox.js +2 -2
  635. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  636. package/lib/esm/appui-react/framework/FrameworkVisibility.d.ts +4 -2
  637. package/lib/esm/appui-react/framework/FrameworkVisibility.d.ts.map +1 -1
  638. package/lib/esm/appui-react/framework/FrameworkVisibility.js.map +1 -1
  639. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +0 -5
  640. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  641. package/lib/esm/appui-react/frontstage/FrontstageDef.js +21 -78
  642. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  643. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  644. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +1 -3
  645. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  646. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts +0 -1
  647. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  648. package/lib/esm/appui-react/frontstage/ModalFrontstage.js +1 -2
  649. package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  650. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  651. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +7 -6
  652. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  653. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +2 -1
  654. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  655. package/lib/esm/appui-react/hooks/useActiveToolId.d.ts +6 -0
  656. package/lib/esm/appui-react/hooks/useActiveToolId.d.ts.map +1 -0
  657. package/lib/esm/appui-react/hooks/useActiveToolId.js +20 -0
  658. package/lib/esm/appui-react/hooks/useActiveToolId.js.map +1 -0
  659. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +11 -7
  660. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  661. package/lib/esm/appui-react/hooks/useConditionalValue.d.ts +15 -0
  662. package/lib/esm/appui-react/hooks/useConditionalValue.d.ts.map +1 -0
  663. package/lib/esm/appui-react/hooks/useConditionalValue.js +39 -0
  664. package/lib/esm/appui-react/hooks/useConditionalValue.js.map +1 -0
  665. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js +1 -1
  666. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  667. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +11 -7
  668. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  669. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +13 -8
  670. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  671. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  672. package/lib/esm/appui-react/keyins/Keyins.d.ts +35 -0
  673. package/lib/esm/appui-react/keyins/Keyins.d.ts.map +1 -0
  674. package/lib/esm/appui-react/keyins/Keyins.js +50 -0
  675. package/lib/esm/appui-react/keyins/Keyins.js.map +1 -0
  676. package/lib/esm/appui-react/layers.scss +11 -0
  677. package/lib/esm/appui-react/layout/StandardLayout.d.ts +24 -0
  678. package/lib/esm/appui-react/layout/StandardLayout.d.ts.map +1 -0
  679. package/lib/esm/appui-react/layout/StandardLayout.js +52 -0
  680. package/lib/esm/appui-react/layout/StandardLayout.js.map +1 -0
  681. package/lib/esm/appui-react/layout/StandardLayout.scss +94 -0
  682. package/lib/esm/appui-react/layout/_widgetopacity.scss +3 -1
  683. package/lib/esm/appui-react/layout/backstage/Backstage.js +1 -1
  684. package/lib/esm/appui-react/layout/backstage/Backstage.js.map +1 -1
  685. package/lib/esm/appui-react/layout/base/DragManager.js +2 -1
  686. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  687. package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
  688. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  689. package/lib/esm/appui-react/layout/base/SafeAreaInsets.js +4 -4
  690. package/lib/esm/appui-react/layout/base/SafeAreaInsets.js.map +1 -1
  691. package/lib/esm/appui-react/layout/base/usePointerCaptor.d.ts.map +1 -1
  692. package/lib/esm/appui-react/layout/base/usePointerCaptor.js +3 -0
  693. package/lib/esm/appui-react/layout/base/usePointerCaptor.js.map +1 -1
  694. package/lib/esm/appui-react/layout/outline/PanelOutline.scss +1 -10
  695. package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
  696. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  697. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
  698. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  699. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +14 -12
  700. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  701. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +2 -1
  702. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  703. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  704. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js +1 -0
  705. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  706. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.d.ts.map +1 -1
  707. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +8 -2
  708. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  709. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.d.ts.map +1 -1
  710. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.js +6 -0
  711. package/lib/esm/appui-react/layout/state/internal/ToolSettingsStateHelpers.js.map +1 -1
  712. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.d.ts.map +1 -1
  713. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +6 -4
  714. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  715. package/lib/esm/appui-react/layout/target/PanelTargets.scss +2 -0
  716. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
  717. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  718. package/lib/esm/appui-react/layout/tool-settings/Docked.d.ts +12 -6
  719. package/lib/esm/appui-react/layout/tool-settings/Docked.d.ts.map +1 -1
  720. package/lib/esm/appui-react/layout/tool-settings/Docked.js +53 -22
  721. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  722. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +15 -23
  723. package/lib/esm/appui-react/layout/tool-settings/Handle.d.ts.map +1 -1
  724. package/lib/esm/appui-react/layout/tool-settings/Handle.js +3 -1
  725. package/lib/esm/appui-react/layout/tool-settings/Handle.js.map +1 -1
  726. package/lib/esm/appui-react/layout/tool-settings/Handle.scss +6 -12
  727. package/lib/esm/appui-react/layout/tool-settings/Overflow.d.ts.map +1 -1
  728. package/lib/esm/appui-react/layout/tool-settings/Overflow.js +4 -5
  729. package/lib/esm/appui-react/layout/tool-settings/Overflow.js.map +1 -1
  730. package/lib/esm/appui-react/layout/tool-settings/Overflow.scss +0 -15
  731. package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -12
  732. package/lib/esm/appui-react/layout/widget/Buttons.d.ts +4 -4
  733. package/lib/esm/appui-react/layout/widget/Buttons.d.ts.map +1 -1
  734. package/lib/esm/appui-react/layout/widget/Buttons.js +8 -30
  735. package/lib/esm/appui-react/layout/widget/Buttons.js.map +1 -1
  736. package/lib/esm/appui-react/layout/widget/Content.d.ts.map +1 -1
  737. package/lib/esm/appui-react/layout/widget/Content.js +5 -5
  738. package/lib/esm/appui-react/layout/widget/Content.js.map +1 -1
  739. package/lib/esm/appui-react/layout/widget/ContentContainer.d.ts.map +1 -1
  740. package/lib/esm/appui-react/layout/widget/ContentContainer.js +2 -0
  741. package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
  742. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +1 -1
  743. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  744. package/lib/esm/appui-react/layout/widget/ContentManager.js +1 -1
  745. package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
  746. package/lib/esm/appui-react/layout/widget/ContentRenderer.d.ts.map +1 -1
  747. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +8 -2
  748. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  749. package/lib/esm/appui-react/layout/widget/Dock.d.ts +2 -0
  750. package/lib/esm/appui-react/layout/widget/Dock.d.ts.map +1 -1
  751. package/lib/esm/appui-react/layout/widget/Dock.js +8 -0
  752. package/lib/esm/appui-react/layout/widget/Dock.js.map +1 -1
  753. package/lib/esm/appui-react/layout/widget/FloatingTab.js +6 -5
  754. package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
  755. package/lib/esm/appui-react/layout/widget/FloatingWidget.d.ts.map +1 -1
  756. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +19 -19
  757. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  758. package/lib/esm/appui-react/layout/widget/FloatingWidget.scss +92 -105
  759. package/lib/esm/appui-react/layout/widget/NavigationArea.scss +4 -1
  760. package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
  761. package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
  762. package/lib/esm/appui-react/layout/widget/PinToggle.d.ts +2 -0
  763. package/lib/esm/appui-react/layout/widget/PinToggle.d.ts.map +1 -1
  764. package/lib/esm/appui-react/layout/widget/PinToggle.js +8 -0
  765. package/lib/esm/appui-react/layout/widget/PinToggle.js.map +1 -1
  766. package/lib/esm/appui-react/layout/widget/SendBack.d.ts.map +1 -1
  767. package/lib/esm/appui-react/layout/widget/SendBack.js +4 -5
  768. package/lib/esm/appui-react/layout/widget/SendBack.js.map +1 -1
  769. package/lib/esm/appui-react/layout/widget/Tab.d.ts.map +1 -1
  770. package/lib/esm/appui-react/layout/widget/Tab.js +9 -14
  771. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  772. package/lib/esm/appui-react/layout/widget/TabBar.d.ts.map +1 -1
  773. package/lib/esm/appui-react/layout/widget/TabBar.js +4 -1
  774. package/lib/esm/appui-react/layout/widget/TabBar.js.map +1 -1
  775. package/lib/esm/appui-react/layout/widget/TabBar.scss +17 -19
  776. package/lib/esm/appui-react/layout/widget/ToolsArea.scss +2 -0
  777. package/lib/esm/appui-react/layout/widget/Widget.d.ts.map +1 -1
  778. package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
  779. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  780. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  781. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  782. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.d.ts +8 -0
  783. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.d.ts.map +1 -0
  784. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.js +34 -0
  785. package/lib/esm/appui-react/layout/widget/usePanelWidgetId.js.map +1 -0
  786. package/lib/esm/appui-react/layout/widget-panels/Grip.d.ts +1 -1
  787. package/lib/esm/appui-react/layout/widget-panels/Grip.d.ts.map +1 -1
  788. package/lib/esm/appui-react/layout/widget-panels/Grip.js +4 -0
  789. package/lib/esm/appui-react/layout/widget-panels/Grip.js.map +1 -1
  790. package/lib/esm/appui-react/layout/widget-panels/Grip.scss +106 -104
  791. package/lib/esm/appui-react/layout/widget-panels/Panel.d.ts +1 -1
  792. package/lib/esm/appui-react/layout/widget-panels/Panel.d.ts.map +1 -1
  793. package/lib/esm/appui-react/layout/widget-panels/Panel.js +10 -16
  794. package/lib/esm/appui-react/layout/widget-panels/Panel.js.map +1 -1
  795. package/lib/esm/appui-react/layout/widget-panels/Panel.scss +175 -243
  796. package/lib/esm/appui-react/layout/widget-panels/PanelSections.d.ts +1 -0
  797. package/lib/esm/appui-react/layout/widget-panels/PanelSections.d.ts.map +1 -1
  798. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +41 -34
  799. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  800. package/lib/esm/appui-react/layout/widget-panels/{Panels.scss → PanelSections.scss} +1 -11
  801. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.d.ts +1 -1
  802. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +2 -1
  803. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  804. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts +7 -0
  805. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.d.ts.map +1 -0
  806. package/lib/esm/appui-react/layout/widget-panels/{AppContent.js → usePanelsAutoCollapse.js} +3 -25
  807. package/lib/esm/appui-react/layout/widget-panels/usePanelsAutoCollapse.js.map +1 -0
  808. package/lib/esm/appui-react/messages/AppNotificationManager.js +1 -1
  809. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  810. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  811. package/lib/esm/appui-react/messages/MessageManager.js +6 -7
  812. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  813. package/lib/esm/appui-react/messages/MessageRenderer.js +17 -11
  814. package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -1
  815. package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
  816. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  817. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +2 -6
  818. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  819. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  820. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +2 -2
  821. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  822. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +0 -1
  823. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  824. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +2 -3
  825. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  826. package/lib/esm/appui-react/pickers/ViewSelector.js +6 -5
  827. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  828. package/lib/esm/appui-react/popup/CardPopup.d.ts +21 -9
  829. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  830. package/lib/esm/appui-react/popup/CardPopup.js +16 -8
  831. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  832. package/lib/esm/appui-react/popup/ComponentPopup.d.ts +18 -0
  833. package/lib/esm/appui-react/popup/ComponentPopup.d.ts.map +1 -0
  834. package/lib/esm/appui-react/popup/ComponentPopup.js +31 -0
  835. package/lib/esm/appui-react/popup/ComponentPopup.js.map +1 -0
  836. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts +4 -1
  837. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  838. package/lib/esm/appui-react/popup/HTMLElementPopup.js +1 -0
  839. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  840. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts +4 -4
  841. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  842. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  843. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts +1 -1
  844. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  845. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +25 -16
  846. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  847. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts +4 -2
  848. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  849. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +10 -4
  850. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  851. package/lib/esm/appui-react/popup/PopupManager.d.ts +45 -9
  852. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  853. package/lib/esm/appui-react/popup/PopupManager.js +87 -14
  854. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  855. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +1 -1
  856. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  857. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts +16 -6
  858. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  859. package/lib/esm/appui-react/popup/ToolbarPopup.js +10 -4
  860. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  861. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +9 -2
  862. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  863. package/lib/esm/appui-react/preview/PreviewFeatures.js +3 -2
  864. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  865. package/lib/esm/appui-react/preview/activate-dropped-tab/activateDroppedTab.d.ts +6 -0
  866. package/lib/esm/appui-react/preview/activate-dropped-tab/activateDroppedTab.d.ts.map +1 -0
  867. package/lib/esm/appui-react/{layout/state → preview/activate-dropped-tab}/activateDroppedTab.js +5 -4
  868. package/lib/esm/appui-react/preview/activate-dropped-tab/activateDroppedTab.js.map +1 -0
  869. package/lib/esm/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.d.ts +6 -0
  870. package/lib/esm/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.d.ts.map +1 -0
  871. package/lib/esm/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.js +14 -0
  872. package/lib/esm/appui-react/preview/content-always-max-size/useContentAlwaysMaxSize.js.map +1 -0
  873. package/lib/esm/appui-react/{layout/widget-panels/CenterContent.scss → preview/content-always-max-size/useContentAlwaysMaxSize.scss} +5 -2
  874. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts +9 -0
  875. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.d.ts.map +1 -0
  876. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +46 -0
  877. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -0
  878. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts +18 -0
  879. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.d.ts.map +1 -0
  880. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.js +23 -0
  881. package/lib/esm/appui-react/preview/enable-maximized-widget/MaximizedWidget.js.map +1 -0
  882. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts +50 -0
  883. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.d.ts.map +1 -0
  884. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +106 -0
  885. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -0
  886. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.scss +36 -0
  887. package/lib/esm/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.d.ts +4 -6
  888. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.d.ts.map +1 -0
  889. package/lib/esm/appui-react/{layout/widget → preview/horizontal-panel-alignment}/PreviewHorizontalPanelAlign.js +16 -19
  890. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -0
  891. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts +19 -0
  892. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.d.ts.map +1 -0
  893. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js +26 -0
  894. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.js.map +1 -0
  895. package/lib/esm/appui-react/preview/horizontal-panel-alignment/useHorizontalPanelAlignment.scss +49 -0
  896. package/lib/esm/appui-react/preview/new-toolbars/ActionItem.d.ts +12 -0
  897. package/lib/esm/appui-react/preview/new-toolbars/ActionItem.d.ts.map +1 -0
  898. package/lib/esm/appui-react/preview/new-toolbars/ActionItem.js +22 -0
  899. package/lib/esm/appui-react/preview/new-toolbars/ActionItem.js.map +1 -0
  900. package/lib/esm/appui-react/preview/new-toolbars/Badge.d.ts +9 -0
  901. package/lib/esm/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -0
  902. package/lib/esm/appui-react/preview/new-toolbars/Badge.js +16 -0
  903. package/lib/esm/appui-react/preview/new-toolbars/Badge.js.map +1 -0
  904. package/lib/esm/appui-react/preview/new-toolbars/Badge.scss +13 -0
  905. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.d.ts +12 -0
  906. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.d.ts.map +1 -0
  907. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js +33 -0
  908. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js.map +1 -0
  909. package/lib/esm/appui-react/preview/new-toolbars/ExpandIndicator.d.ts +5 -0
  910. package/lib/esm/appui-react/preview/new-toolbars/ExpandIndicator.d.ts.map +1 -0
  911. package/lib/esm/appui-react/{statusbar/Popup.js → preview/new-toolbars/ExpandIndicator.js} +5 -10
  912. package/lib/esm/appui-react/preview/new-toolbars/ExpandIndicator.js.map +1 -0
  913. package/lib/esm/appui-react/preview/new-toolbars/ExpandIndicator.scss +17 -0
  914. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.d.ts +22 -0
  915. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.d.ts.map +1 -0
  916. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js +74 -0
  917. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js.map +1 -0
  918. package/lib/esm/appui-react/preview/new-toolbars/Item.d.ts +21 -0
  919. package/lib/esm/appui-react/preview/new-toolbars/Item.d.ts.map +1 -0
  920. package/lib/esm/appui-react/preview/new-toolbars/Item.js +49 -0
  921. package/lib/esm/appui-react/preview/new-toolbars/Item.js.map +1 -0
  922. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.d.ts +17 -0
  923. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.d.ts.map +1 -0
  924. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js +34 -0
  925. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -0
  926. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.d.ts +18 -0
  927. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.d.ts.map +1 -0
  928. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js +81 -0
  929. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -0
  930. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.scss +43 -0
  931. package/lib/esm/appui-react/preview/new-toolbars/Toolbar.d.ts +23 -0
  932. package/lib/esm/appui-react/preview/new-toolbars/Toolbar.d.ts.map +1 -0
  933. package/lib/esm/appui-react/preview/new-toolbars/Toolbar.js +36 -0
  934. package/lib/esm/appui-react/preview/new-toolbars/Toolbar.js.map +1 -0
  935. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.d.ts +9 -0
  936. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.d.ts.map +1 -0
  937. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js +89 -0
  938. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js.map +1 -0
  939. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.d.ts +1 -1
  940. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js +1 -1
  941. package/lib/esm/appui-react/preview/widget-action-dropdown/Button.js.map +1 -1
  942. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +3 -2
  943. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
  944. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +7 -6
  945. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  946. package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
  947. package/lib/esm/appui-react/redux/SessionState.d.ts +17 -5
  948. package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
  949. package/lib/esm/appui-react/redux/SessionState.js +8 -1
  950. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  951. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  952. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  953. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  954. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +6 -8
  955. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  956. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
  957. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +7 -7
  958. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  959. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  960. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +40 -46
  961. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  962. package/lib/esm/appui-react/shared/ConditionalValue.d.ts +17 -0
  963. package/lib/esm/appui-react/shared/ConditionalValue.d.ts.map +1 -0
  964. package/lib/esm/appui-react/shared/ConditionalValue.js +13 -0
  965. package/lib/esm/appui-react/shared/ConditionalValue.js.map +1 -0
  966. package/lib/esm/appui-react/shared/ItemDefBase.d.ts +2 -2
  967. package/lib/esm/appui-react/shared/ItemDefBase.d.ts.map +1 -1
  968. package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
  969. package/lib/esm/appui-react/shared/ItemProps.d.ts +13 -2
  970. package/lib/esm/appui-react/shared/ItemProps.d.ts.map +1 -1
  971. package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
  972. package/lib/esm/appui-react/shared/MenuItem.d.ts +21 -2
  973. package/lib/esm/appui-react/shared/MenuItem.d.ts.map +1 -1
  974. package/lib/esm/appui-react/shared/MenuItem.js.map +1 -1
  975. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +16 -11
  976. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  977. package/lib/esm/appui-react/statusbar/Indicator.js +2 -1
  978. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  979. package/lib/esm/appui-react/statusbar/Overflow.d.ts.map +1 -1
  980. package/lib/esm/appui-react/statusbar/Overflow.js +3 -3
  981. package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
  982. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -1
  983. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  984. package/lib/esm/appui-react/statusbar/StatusBar.js +6 -4
  985. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  986. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -1
  987. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  988. package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts +2 -2
  989. package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
  990. package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
  991. package/lib/{cjs/appui-react/statusbar → esm/appui-react/statusbar/popup}/Popup.d.ts +2 -1
  992. package/lib/esm/appui-react/statusbar/popup/Popup.d.ts.map +1 -0
  993. package/lib/esm/appui-react/{layout/footer → statusbar/popup}/Popup.js +8 -9
  994. package/lib/esm/appui-react/statusbar/popup/Popup.js.map +1 -0
  995. package/lib/esm/appui-react/{layout/footer → statusbar/popup}/Popup.scss +1 -7
  996. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  997. package/lib/esm/appui-react/statusfields/ActivityCenter.js +5 -4
  998. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  999. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +0 -1
  1000. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  1001. package/lib/esm/appui-react/statusfields/MessageCenter.js +4 -4
  1002. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  1003. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  1004. package/lib/esm/appui-react/statusfields/SectionsField.js +7 -10
  1005. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  1006. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  1007. package/lib/esm/appui-react/statusfields/SelectionScope.js +4 -4
  1008. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  1009. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  1010. package/lib/esm/appui-react/statusfields/SnapMode.js +14 -12
  1011. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  1012. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts +0 -2
  1013. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  1014. package/lib/esm/appui-react/statusfields/ViewAttributes.js +12 -20
  1015. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  1016. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  1017. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +3 -3
  1018. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  1019. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  1020. package/lib/esm/appui-react/theme/ThemeManager.js +3 -2
  1021. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  1022. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.d.ts.map +1 -1
  1023. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +2 -3
  1024. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  1025. package/lib/esm/appui-react/toolbar/Toolbar.d.ts +4 -3
  1026. package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
  1027. package/lib/esm/appui-react/toolbar/Toolbar.js +29 -5
  1028. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  1029. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts +4 -2
  1030. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  1031. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +15 -12
  1032. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  1033. package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  1034. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +5 -6
  1035. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  1036. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts +2 -2
  1037. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  1038. package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
  1039. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +4 -3
  1040. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  1041. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  1042. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +18 -11
  1043. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  1044. package/lib/esm/appui-react/tools/FrameworkToolAdmin.d.ts.map +1 -1
  1045. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js +2 -1
  1046. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  1047. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +2 -3
  1048. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  1049. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +22 -20
  1050. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  1051. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js +3 -3
  1052. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  1053. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +10 -9
  1054. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  1055. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -1
  1056. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  1057. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +14 -8
  1058. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  1059. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +47 -38
  1060. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  1061. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +100 -141
  1062. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  1063. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +1 -1
  1064. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  1065. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +0 -7
  1066. package/lib/esm/appui-react/useTranslation.d.ts +10 -0
  1067. package/lib/esm/appui-react/useTranslation.d.ts.map +1 -0
  1068. package/lib/esm/appui-react/useTranslation.js +16 -0
  1069. package/lib/esm/appui-react/useTranslation.js.map +1 -0
  1070. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  1071. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  1072. package/lib/esm/appui-react/utils/Placement.d.ts +35 -0
  1073. package/lib/esm/appui-react/utils/Placement.d.ts.map +1 -0
  1074. package/lib/esm/appui-react/utils/Placement.js +57 -0
  1075. package/lib/esm/appui-react/utils/Placement.js.map +1 -0
  1076. package/lib/esm/appui-react/utils/PropsHelper.js +4 -4
  1077. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  1078. package/lib/esm/appui-react/utils/matchesWords.js +4 -4
  1079. package/lib/esm/appui-react/utils/matchesWords.js.map +1 -1
  1080. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  1081. package/lib/esm/appui-react/widget-panels/Content.js +12 -11
  1082. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  1083. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  1084. package/lib/esm/appui-react/widget-panels/Frontstage.js +45 -41
  1085. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  1086. package/lib/esm/appui-react/widget-panels/Frontstage.scss +0 -23
  1087. package/lib/esm/appui-react/widget-panels/StatusBar.js +1 -1
  1088. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  1089. package/lib/esm/appui-react/widget-panels/Tab.d.ts +1 -1
  1090. package/lib/esm/appui-react/widget-panels/Tab.d.ts.map +1 -1
  1091. package/lib/esm/appui-react/widget-panels/Tab.js +2 -3
  1092. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  1093. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +1 -1
  1094. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  1095. package/lib/esm/appui-react/widget-panels/ToolSettings.js +53 -66
  1096. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  1097. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +0 -6
  1098. package/lib/esm/appui-react/widget-panels/Toolbars.js +3 -2
  1099. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  1100. package/lib/esm/appui-react/widget-panels/Toolbars.scss +3 -1
  1101. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  1102. package/lib/esm/appui-react/widgets/BackstageAppButton.js +3 -1
  1103. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  1104. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  1105. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +5 -3
  1106. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  1107. package/lib/esm/appui-react/widgets/Widget.d.ts +2 -2
  1108. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
  1109. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  1110. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +9 -4
  1111. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  1112. package/lib/esm/appui-react/widgets/WidgetDef.js +59 -17
  1113. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  1114. package/lib/esm/appui-react/widgets/WidgetHost.js +3 -2
  1115. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  1116. package/lib/esm/appui-react/widgets/useWidget.js +1 -1
  1117. package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
  1118. package/lib/esm/appui-react.d.ts +4 -1
  1119. package/lib/esm/appui-react.d.ts.map +1 -1
  1120. package/lib/esm/appui-react.js +4 -1
  1121. package/lib/esm/appui-react.js.map +1 -1
  1122. package/lib/public/locales/en/UiFramework.json +8 -2
  1123. package/package.json +22 -20
  1124. package/lib/cjs/appui-react/layout/footer/Popup.d.ts +0 -12
  1125. package/lib/cjs/appui-react/layout/footer/Popup.d.ts.map +0 -1
  1126. package/lib/cjs/appui-react/layout/footer/Popup.js.map +0 -1
  1127. package/lib/cjs/appui-react/layout/state/activateDroppedTab.d.ts +0 -5
  1128. package/lib/cjs/appui-react/layout/state/activateDroppedTab.d.ts.map +0 -1
  1129. package/lib/cjs/appui-react/layout/state/activateDroppedTab.js.map +0 -1
  1130. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.d.ts.map +0 -1
  1131. package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +0 -1
  1132. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.d.ts +0 -30
  1133. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.d.ts.map +0 -1
  1134. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.js +0 -65
  1135. package/lib/cjs/appui-react/layout/widget/PreviewMaximizeToggle.js.map +0 -1
  1136. package/lib/cjs/appui-react/layout/widget-panels/AppContent.d.ts +0 -11
  1137. package/lib/cjs/appui-react/layout/widget-panels/AppContent.d.ts.map +0 -1
  1138. package/lib/cjs/appui-react/layout/widget-panels/AppContent.js.map +0 -1
  1139. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.d.ts +0 -10
  1140. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.d.ts.map +0 -1
  1141. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.js +0 -23
  1142. package/lib/cjs/appui-react/layout/widget-panels/CenterContent.js.map +0 -1
  1143. package/lib/cjs/appui-react/layout/widget-panels/Content.d.ts +0 -21
  1144. package/lib/cjs/appui-react/layout/widget-panels/Content.d.ts.map +0 -1
  1145. package/lib/cjs/appui-react/layout/widget-panels/Content.js +0 -21
  1146. package/lib/cjs/appui-react/layout/widget-panels/Content.js.map +0 -1
  1147. package/lib/cjs/appui-react/layout/widget-panels/Content.scss +0 -37
  1148. package/lib/cjs/appui-react/layout/widget-panels/Panels.d.ts +0 -24
  1149. package/lib/cjs/appui-react/layout/widget-panels/Panels.d.ts.map +0 -1
  1150. package/lib/cjs/appui-react/layout/widget-panels/Panels.js +0 -48
  1151. package/lib/cjs/appui-react/layout/widget-panels/Panels.js.map +0 -1
  1152. package/lib/cjs/appui-react/statusbar/Popup.d.ts.map +0 -1
  1153. package/lib/cjs/appui-react/statusbar/Popup.js.map +0 -1
  1154. package/lib/esm/appui-react/layout/footer/Popup.d.ts +0 -12
  1155. package/lib/esm/appui-react/layout/footer/Popup.d.ts.map +0 -1
  1156. package/lib/esm/appui-react/layout/footer/Popup.js.map +0 -1
  1157. package/lib/esm/appui-react/layout/state/activateDroppedTab.d.ts +0 -5
  1158. package/lib/esm/appui-react/layout/state/activateDroppedTab.d.ts.map +0 -1
  1159. package/lib/esm/appui-react/layout/state/activateDroppedTab.js.map +0 -1
  1160. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.d.ts.map +0 -1
  1161. package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +0 -1
  1162. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.d.ts +0 -30
  1163. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.d.ts.map +0 -1
  1164. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.js +0 -58
  1165. package/lib/esm/appui-react/layout/widget/PreviewMaximizeToggle.js.map +0 -1
  1166. package/lib/esm/appui-react/layout/widget-panels/AppContent.d.ts +0 -11
  1167. package/lib/esm/appui-react/layout/widget-panels/AppContent.d.ts.map +0 -1
  1168. package/lib/esm/appui-react/layout/widget-panels/AppContent.js.map +0 -1
  1169. package/lib/esm/appui-react/layout/widget-panels/CenterContent.d.ts +0 -10
  1170. package/lib/esm/appui-react/layout/widget-panels/CenterContent.d.ts.map +0 -1
  1171. package/lib/esm/appui-react/layout/widget-panels/CenterContent.js +0 -19
  1172. package/lib/esm/appui-react/layout/widget-panels/CenterContent.js.map +0 -1
  1173. package/lib/esm/appui-react/layout/widget-panels/Content.d.ts +0 -21
  1174. package/lib/esm/appui-react/layout/widget-panels/Content.d.ts.map +0 -1
  1175. package/lib/esm/appui-react/layout/widget-panels/Content.js +0 -18
  1176. package/lib/esm/appui-react/layout/widget-panels/Content.js.map +0 -1
  1177. package/lib/esm/appui-react/layout/widget-panels/Content.scss +0 -37
  1178. package/lib/esm/appui-react/layout/widget-panels/Panels.d.ts +0 -24
  1179. package/lib/esm/appui-react/layout/widget-panels/Panels.d.ts.map +0 -1
  1180. package/lib/esm/appui-react/layout/widget-panels/Panels.js +0 -44
  1181. package/lib/esm/appui-react/layout/widget-panels/Panels.js.map +0 -1
  1182. package/lib/esm/appui-react/statusbar/Popup.d.ts.map +0 -1
  1183. package/lib/esm/appui-react/statusbar/Popup.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ContentManager.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAQ9C,gBAAgB;AAChB,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC9E,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CACxC,IAAI,OAAO,EAAmC,CAC/C,CAAC;IACF,MAAM,wBAAwB,GAAG,KAAK,CAAC,MAAM,CAC3C,IAAI,OAAO,EAAmC,CAC/C,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAGpC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACnB,SAAS,KAAK,IAAI,IAAI,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACtE,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,mBAAmB,CAAC,CACtB,CAAC;IACF,MAAM,gCAAgC,GACpC,KAAK,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,CAAC;QACL,YAAY;QACZ,oBAAoB,EAAE,qBAAqB,CAAC,OAAO;QACnD,uBAAuB,EAAE,wBAAwB,CAAC,OAAO;KAC1D,CAAC,EACF,CAAC,YAAY,CAAC,CACf,CAAC;IACJ,OAAO,CACL,oBAAC,2BAA2B,CAAC,QAAQ,IACnC,KAAK,EAAE,gCAAgC,IAEtC,KAAK,CAAC,QAAQ,CACsB,CACxC,CAAC;AACJ,CAAC;AAOD,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAkB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAClE,UAAU,EAAE,EAAE;IACd,YAAY,EAAE,CAAC,KAAqB,EAAE,SAAyB,EAAE,EAAE;QACjE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACZ,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC,CAAC,CAAC;AASJ,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GACtC,KAAK,CAAC,aAAa,CAAkC,IAAK,CAAC,CAAC;AAC9D,2BAA2B,CAAC,WAAW,GAAG,gCAAgC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport produce, { castDraft } from \"immer\";\nimport * as React from \"react\";\nimport { create } from \"zustand\";\nimport { BeEvent } from \"@itwin/core-bentley\";\nimport type { TabState } from \"../state/TabState\";\n\n/** @internal */\nexport interface WidgetContentManagerProps {\n children?: React.ReactNode;\n}\n\n/** @internal */\nexport function WidgetContentManager(props: WidgetContentManagerProps) {\n const setContentContainer = useContainersStore((state) => state.setContainer);\n const saveTransientStateRef = React.useRef(\n new BeEvent<(tabId: TabState[\"id\"]) => void>()\n );\n const restoreTransientStateRef = React.useRef(\n new BeEvent<(tabId: TabState[\"id\"]) => void>()\n );\n const setContainer = React.useCallback<\n WidgetContentManagerContextArgs[\"setContainer\"]\n >(\n (tabId, container) => {\n container === null && saveTransientStateRef.current.raiseEvent(tabId);\n setContentContainer(tabId, container);\n },\n [setContentContainer]\n );\n const widgetContentManagerContextValue =\n React.useMemo<WidgetContentManagerContextArgs>(\n () => ({\n setContainer,\n onSaveTransientState: saveTransientStateRef.current,\n onRestoreTransientState: restoreTransientStateRef.current,\n }),\n [setContainer]\n );\n return (\n <WidgetContentManagerContext.Provider\n value={widgetContentManagerContextValue}\n >\n {props.children}\n </WidgetContentManagerContext.Provider>\n );\n}\n\ninterface ContainersStore {\n setContainer: (tabId: TabState[\"id\"], container: Element | null) => void;\n containers: { readonly [id in TabState[\"id\"]]: Element | null };\n}\n\n/** @internal */\nexport const useContainersStore = create<ContainersStore>((set) => ({\n containers: {},\n setContainer: (tabId: TabState[\"id\"], container: Element | null) => {\n set((state) =>\n produce(state, (draft) => {\n draft.containers[tabId] = castDraft(container);\n })\n );\n },\n}));\n\n/** @internal */\nexport interface WidgetContentManagerContextArgs {\n setContainer(tabId: TabState[\"id\"], container: Element | null): void;\n onSaveTransientState: BeEvent<(tabId: TabState[\"id\"]) => void>;\n onRestoreTransientState: BeEvent<(tabId: TabState[\"id\"]) => void>;\n}\n\n/** @internal */\nexport const WidgetContentManagerContext =\n React.createContext<WidgetContentManagerContextArgs>(null!);\nWidgetContentManagerContext.displayName = \"nz:WidgetContentManagerContext\";\n"]}
1
+ {"version":3,"file":"ContentManager.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentManager.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAQ9C,gBAAgB;AAChB,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC9E,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CACxC,IAAI,OAAO,EAAmC,CAC/C,CAAC;IACF,MAAM,wBAAwB,GAAG,KAAK,CAAC,MAAM,CAC3C,IAAI,OAAO,EAAmC,CAC/C,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAGpC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACnB,SAAS,KAAK,IAAI,IAAI,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACtE,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,mBAAmB,CAAC,CACtB,CAAC;IACF,MAAM,gCAAgC,GACpC,KAAK,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,CAAC;QACL,YAAY;QACZ,oBAAoB,EAAE,qBAAqB,CAAC,OAAO;QACnD,uBAAuB,EAAE,wBAAwB,CAAC,OAAO;KAC1D,CAAC,EACF,CAAC,YAAY,CAAC,CACf,CAAC;IACJ,OAAO,CACL,oBAAC,2BAA2B,CAAC,QAAQ,IACnC,KAAK,EAAE,gCAAgC,IAEtC,KAAK,CAAC,QAAQ,CACsB,CACxC,CAAC;AACJ,CAAC;AAOD,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAkB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAClE,UAAU,EAAE,EAAE;IACd,YAAY,EAAE,CAAC,KAAqB,EAAE,SAAyB,EAAE,EAAE;QACjE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACZ,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC,CAAC,CAAC;AASJ,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAC,aAAa,CAE5D,SAAS,CAAC,CAAC;AACb,2BAA2B,CAAC,WAAW,GAAG,gCAAgC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport produce, { castDraft } from \"immer\";\nimport * as React from \"react\";\nimport { create } from \"zustand\";\nimport { BeEvent } from \"@itwin/core-bentley\";\nimport type { TabState } from \"../state/TabState\";\n\n/** @internal */\nexport interface WidgetContentManagerProps {\n children?: React.ReactNode;\n}\n\n/** @internal */\nexport function WidgetContentManager(props: WidgetContentManagerProps) {\n const setContentContainer = useContainersStore((state) => state.setContainer);\n const saveTransientStateRef = React.useRef(\n new BeEvent<(tabId: TabState[\"id\"]) => void>()\n );\n const restoreTransientStateRef = React.useRef(\n new BeEvent<(tabId: TabState[\"id\"]) => void>()\n );\n const setContainer = React.useCallback<\n WidgetContentManagerContextArgs[\"setContainer\"]\n >(\n (tabId, container) => {\n container === null && saveTransientStateRef.current.raiseEvent(tabId);\n setContentContainer(tabId, container);\n },\n [setContentContainer]\n );\n const widgetContentManagerContextValue =\n React.useMemo<WidgetContentManagerContextArgs>(\n () => ({\n setContainer,\n onSaveTransientState: saveTransientStateRef.current,\n onRestoreTransientState: restoreTransientStateRef.current,\n }),\n [setContainer]\n );\n return (\n <WidgetContentManagerContext.Provider\n value={widgetContentManagerContextValue}\n >\n {props.children}\n </WidgetContentManagerContext.Provider>\n );\n}\n\ninterface ContainersStore {\n setContainer: (tabId: TabState[\"id\"], container: Element | null) => void;\n containers: { readonly [id in TabState[\"id\"]]: Element | null };\n}\n\n/** @internal */\nexport const useContainersStore = create<ContainersStore>((set) => ({\n containers: {},\n setContainer: (tabId: TabState[\"id\"], container: Element | null) => {\n set((state) =>\n produce(state, (draft) => {\n draft.containers[tabId] = castDraft(container);\n })\n );\n },\n}));\n\n/** @internal */\nexport interface WidgetContentManagerContextArgs {\n setContainer(tabId: TabState[\"id\"], container: Element | null): void;\n onSaveTransientState: BeEvent<(tabId: TabState[\"id\"]) => void>;\n onRestoreTransientState: BeEvent<(tabId: TabState[\"id\"]) => void>;\n}\n\n/** @internal */\nexport const WidgetContentManagerContext = React.createContext<\n WidgetContentManagerContextArgs | undefined\n>(undefined);\nWidgetContentManagerContext.displayName = \"nz:WidgetContentManagerContext\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentRenderer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAOlD,gBAAgB;AAChB,wBAAgB,sBAAsB,sBAoBrC;AAED,UAAU,0BAA0B;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,qBAuCtE;AAED,gBAAgB;AAChB,eAAO,MAAM,YAAY,mCAExB,CAAC;AAGF,gBAAgB;AAChB,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,IAAI,EACnB,SAAS,CAAC,EAAE,MAAM,IAAI,QAavB"}
1
+ {"version":3,"file":"ContentRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentRenderer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAOlD,gBAAgB;AAChB,wBAAgB,sBAAsB,sBAoBrC;AAED,UAAU,0BAA0B;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,qBAyCtE;AAED,gBAAgB;AAChB,eAAO,MAAM,YAAY,mCAExB,CAAC;AAGF,gBAAgB;AAChB,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,IAAI,EACnB,SAAS,CAAC,EAAE,MAAM,IAAI,QAiBvB"}
@@ -18,7 +18,7 @@ export function WidgetContentRenderers() {
18
18
  const tabIds = useLayout((state) => {
19
19
  return Object.keys(state.tabs);
20
20
  }, true);
21
- const toolSettingsTabId = useLayout((state) => state.toolSettings?.tabId);
21
+ const toolSettingsTabId = useLayout((state) => { var _a; return (_a = state.toolSettings) === null || _a === void 0 ? void 0 : _a.tabId; });
22
22
  return (React.createElement(React.Fragment, null, tabIds.map((tabId) => {
23
23
  const children = tabId === toolSettingsTabId ? toolSettingsContent : widgetContent;
24
24
  return (React.createElement(WidgetContentRenderer, { key: tabId, tabId: tabId }, children));
@@ -35,6 +35,8 @@ export function WidgetContentRenderer(props) {
35
35
  container.current.classList.add("nz-widget-contentRenderer");
36
36
  }
37
37
  React.useLayoutEffect(() => {
38
+ if (!widgetContentManager)
39
+ return;
38
40
  const parent = renderTo;
39
41
  if (parent) {
40
42
  while (parent.firstChild) {
@@ -44,7 +46,7 @@ export function WidgetContentRenderer(props) {
44
46
  widgetContentManager.onRestoreTransientState.raiseEvent(props.tabId);
45
47
  }
46
48
  return () => {
47
- for (const child of parent?.children || []) {
49
+ for (const child of (parent === null || parent === void 0 ? void 0 : parent.children) || []) {
48
50
  if (child === container.current) {
49
51
  parent.removeChild(child);
50
52
  return;
@@ -62,11 +64,15 @@ TabIdContext.displayName = "nz:TabIdContext";
62
64
  export function useTabTransientState(tabId, onSave, onRestore) {
63
65
  const widgetContentManager = React.useContext(WidgetContentManagerContext);
64
66
  React.useEffect(() => {
67
+ if (!widgetContentManager)
68
+ return;
65
69
  return widgetContentManager.onSaveTransientState.addListener((id) => {
66
70
  tabId === id && onSave && onSave();
67
71
  });
68
72
  }, [widgetContentManager, onSave, tabId]);
69
73
  React.useEffect(() => {
74
+ if (!widgetContentManager)
75
+ return;
70
76
  return widgetContentManager.onRestoreTransientState.addListener((id) => {
71
77
  tabId === id && onRestore && onRestore();
72
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRenderer.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./ContentRenderer.scss\";\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport {\n ToolSettingsNodeContext,\n WidgetContentNodeContext,\n} from \"../base/NineZone\";\nimport type { TabState } from \"../state/TabState\";\nimport {\n useContainersStore,\n WidgetContentManagerContext,\n} from \"./ContentManager\";\nimport { useLayout } from \"../base/LayoutStore\";\n\n/** @internal */\nexport function WidgetContentRenderers() {\n const widgetContent = React.useContext(WidgetContentNodeContext);\n const toolSettingsContent = React.useContext(ToolSettingsNodeContext);\n const tabIds = useLayout((state) => {\n return Object.keys(state.tabs);\n }, true);\n const toolSettingsTabId = useLayout((state) => state.toolSettings?.tabId);\n return (\n <>\n {tabIds.map((tabId) => {\n const children =\n tabId === toolSettingsTabId ? toolSettingsContent : widgetContent;\n return (\n <WidgetContentRenderer key={tabId} tabId={tabId}>\n {children}\n </WidgetContentRenderer>\n );\n })}\n </>\n );\n}\n\ninterface WidgetContentRendererProps {\n children?: React.ReactNode;\n tabId: TabState[\"id\"];\n}\n\n/** @internal */\nexport function WidgetContentRenderer(props: WidgetContentRendererProps) {\n const renderTo = useContainersStore((state) => state.containers[props.tabId]);\n const unloaded = useLayout((state) => !!state.tabs[props.tabId].unloaded);\n const widgetContentManager = React.useContext(WidgetContentManagerContext);\n const container = React.useRef<HTMLDivElement>(undefined!);\n if (!container.current) {\n container.current = document.createElement(\"div\");\n container.current.classList.add(\"nz-widget-contentRenderer\");\n }\n React.useLayoutEffect(() => {\n const parent = renderTo;\n if (parent) {\n while (parent.firstChild) {\n parent.removeChild(parent.firstChild);\n }\n\n parent.appendChild(container.current);\n widgetContentManager.onRestoreTransientState.raiseEvent(props.tabId);\n }\n return () => {\n for (const child of parent?.children || []) {\n if (child === container.current) {\n parent!.removeChild(child);\n return;\n }\n }\n };\n }, [renderTo, widgetContentManager, props.tabId]);\n return ReactDOM.createPortal(\n <div\n style={{ height: \"100%\", width: \"100%\" }}\n id={`content-container:${props.tabId}`}\n >\n <TabIdContext.Provider value={props.tabId}>\n {unloaded ? null : props.children}\n </TabIdContext.Provider>\n </div>,\n container.current\n );\n}\n\n/** @internal */\nexport const TabIdContext = React.createContext<TabState[\"id\"] | undefined>(\n undefined\n);\nTabIdContext.displayName = \"nz:TabIdContext\";\n\n/** @internal */\nexport function useTabTransientState(\n tabId: string,\n onSave?: () => void,\n onRestore?: () => void\n) {\n const widgetContentManager = React.useContext(WidgetContentManagerContext);\n React.useEffect(() => {\n return widgetContentManager.onSaveTransientState.addListener((id) => {\n tabId === id && onSave && onSave();\n });\n }, [widgetContentManager, onSave, tabId]);\n React.useEffect(() => {\n return widgetContentManager.onRestoreTransientState.addListener((id) => {\n tabId === id && onRestore && onRestore();\n });\n }, [widgetContentManager, onRestore, tabId]);\n}\n"]}
1
+ {"version":3,"file":"ContentRenderer.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/ContentRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./ContentRenderer.scss\";\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport {\n ToolSettingsNodeContext,\n WidgetContentNodeContext,\n} from \"../base/NineZone\";\nimport type { TabState } from \"../state/TabState\";\nimport {\n useContainersStore,\n WidgetContentManagerContext,\n} from \"./ContentManager\";\nimport { useLayout } from \"../base/LayoutStore\";\n\n/** @internal */\nexport function WidgetContentRenderers() {\n const widgetContent = React.useContext(WidgetContentNodeContext);\n const toolSettingsContent = React.useContext(ToolSettingsNodeContext);\n const tabIds = useLayout((state) => {\n return Object.keys(state.tabs);\n }, true);\n const toolSettingsTabId = useLayout((state) => state.toolSettings?.tabId);\n return (\n <>\n {tabIds.map((tabId) => {\n const children =\n tabId === toolSettingsTabId ? toolSettingsContent : widgetContent;\n return (\n <WidgetContentRenderer key={tabId} tabId={tabId}>\n {children}\n </WidgetContentRenderer>\n );\n })}\n </>\n );\n}\n\ninterface WidgetContentRendererProps {\n children?: React.ReactNode;\n tabId: TabState[\"id\"];\n}\n\n/** @internal */\nexport function WidgetContentRenderer(props: WidgetContentRendererProps) {\n const renderTo = useContainersStore((state) => state.containers[props.tabId]);\n const unloaded = useLayout((state) => !!state.tabs[props.tabId].unloaded);\n const widgetContentManager = React.useContext(WidgetContentManagerContext);\n const container = React.useRef<HTMLDivElement>(undefined!);\n if (!container.current) {\n container.current = document.createElement(\"div\");\n container.current.classList.add(\"nz-widget-contentRenderer\");\n }\n React.useLayoutEffect(() => {\n if (!widgetContentManager) return;\n\n const parent = renderTo;\n if (parent) {\n while (parent.firstChild) {\n parent.removeChild(parent.firstChild);\n }\n\n parent.appendChild(container.current);\n widgetContentManager.onRestoreTransientState.raiseEvent(props.tabId);\n }\n return () => {\n for (const child of parent?.children || []) {\n if (child === container.current) {\n parent!.removeChild(child);\n return;\n }\n }\n };\n }, [renderTo, widgetContentManager, props.tabId]);\n return ReactDOM.createPortal(\n <div\n style={{ height: \"100%\", width: \"100%\" }}\n id={`content-container:${props.tabId}`}\n >\n <TabIdContext.Provider value={props.tabId}>\n {unloaded ? null : props.children}\n </TabIdContext.Provider>\n </div>,\n container.current\n );\n}\n\n/** @internal */\nexport const TabIdContext = React.createContext<TabState[\"id\"] | undefined>(\n undefined\n);\nTabIdContext.displayName = \"nz:TabIdContext\";\n\n/** @internal */\nexport function useTabTransientState(\n tabId: string,\n onSave?: () => void,\n onRestore?: () => void\n) {\n const widgetContentManager = React.useContext(WidgetContentManagerContext);\n React.useEffect(() => {\n if (!widgetContentManager) return;\n\n return widgetContentManager.onSaveTransientState.addListener((id) => {\n tabId === id && onSave && onSave();\n });\n }, [widgetContentManager, onSave, tabId]);\n React.useEffect(() => {\n if (!widgetContentManager) return;\n\n return widgetContentManager.onRestoreTransientState.addListener((id) => {\n tabId === id && onRestore && onRestore();\n });\n }, [widgetContentManager, onRestore, tabId]);\n}\n"]}
@@ -4,4 +4,6 @@
4
4
  import * as React from "react";
5
5
  /** @internal */
6
6
  export declare function Dock(): React.JSX.Element;
7
+ /** @internal */
8
+ export declare function useDock(): boolean;
7
9
  //# sourceMappingURL=Dock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dock.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/Dock.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,gBAAgB;AAChB,wBAAgB,IAAI,sBAcnB"}
1
+ {"version":3,"file":"Dock.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/Dock.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,gBAAgB;AAChB,wBAAgB,IAAI,sBAcnB;AAED,gBAAgB;AAChB,wBAAgB,OAAO,YAItB"}
@@ -9,6 +9,8 @@ import * as React from "react";
9
9
  import { SvgDockTop } from "@itwin/itwinui-icons-react";
10
10
  import { NineZoneDispatchContext, useLabel } from "../base/NineZone";
11
11
  import { ActionButton } from "../../preview/widget-action-dropdown/Button";
12
+ import { useIsToolSettingsTab } from "./useIsToolSettingsTab";
13
+ import { useIsMaximizedWidget } from "../../preview/enable-maximized-widget/useMaximizedWidget";
12
14
  /** @internal */
13
15
  export function Dock() {
14
16
  const dispatch = React.useContext(NineZoneDispatchContext);
@@ -19,4 +21,10 @@ export function Dock() {
19
21
  });
20
22
  } }));
21
23
  }
24
+ /** @internal */
25
+ export function useDock() {
26
+ const isToolSettings = useIsToolSettingsTab();
27
+ const isMaximizedWidget = useIsMaximizedWidget();
28
+ return isToolSettings && !isMaximizedWidget;
29
+ }
22
30
  //# sourceMappingURL=Dock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dock.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/Dock.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,gBAAgB;AAChB,MAAM,UAAU,IAAI;IAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAChD,OAAO,CACL,oBAAC,YAAY,IACX,IAAI,EAAE,oBAAC,UAAU,OAAG,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,GAAG,EAAE;YACZ,QAAQ,CAAC;gBACP,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CAAC;QACL,CAAC,GACD,CACH,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport * as React from \"react\";\nimport { SvgDockTop } from \"@itwin/itwinui-icons-react\";\nimport { NineZoneDispatchContext, useLabel } from \"../base/NineZone\";\nimport { ActionButton } from \"../../preview/widget-action-dropdown/Button\";\n\n/** @internal */\nexport function Dock() {\n const dispatch = React.useContext(NineZoneDispatchContext);\n const title = useLabel(\"dockToolSettingsTitle\");\n return (\n <ActionButton\n icon={<SvgDockTop />}\n title={title}\n onClick={() => {\n dispatch({\n type: \"TOOL_SETTINGS_DOCK\",\n });\n }}\n />\n );\n}\n"]}
1
+ {"version":3,"file":"Dock.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/Dock.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAC;AAEhG,gBAAgB;AAChB,MAAM,UAAU,IAAI;IAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAChD,OAAO,CACL,oBAAC,YAAY,IACX,IAAI,EAAE,oBAAC,UAAU,OAAG,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,GAAG,EAAE;YACZ,QAAQ,CAAC;gBACP,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CAAC;QACL,CAAC,GACD,CACH,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,OAAO;IACrB,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;IAC9C,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;IACjD,OAAO,cAAc,IAAI,CAAC,iBAAiB,CAAC;AAC9C,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport * as React from \"react\";\nimport { SvgDockTop } from \"@itwin/itwinui-icons-react\";\nimport { NineZoneDispatchContext, useLabel } from \"../base/NineZone\";\nimport { ActionButton } from \"../../preview/widget-action-dropdown/Button\";\nimport { useIsToolSettingsTab } from \"./useIsToolSettingsTab\";\nimport { useIsMaximizedWidget } from \"../../preview/enable-maximized-widget/useMaximizedWidget\";\n\n/** @internal */\nexport function Dock() {\n const dispatch = React.useContext(NineZoneDispatchContext);\n const title = useLabel(\"dockToolSettingsTitle\");\n return (\n <ActionButton\n icon={<SvgDockTop />}\n title={title}\n onClick={() => {\n dispatch({\n type: \"TOOL_SETTINGS_DOCK\",\n });\n }}\n />\n );\n}\n\n/** @internal */\nexport function useDock() {\n const isToolSettings = useIsToolSettingsTab();\n const isMaximizedWidget = useIsMaximizedWidget();\n return isToolSettings && !isMaximizedWidget;\n}\n"]}
@@ -19,16 +19,17 @@ export function FloatingTab() {
19
19
  const { id, position } = useLayout((state) => {
20
20
  const draggedTab = state.draggedTab;
21
21
  return {
22
- id: draggedTab?.tabId,
23
- position: draggedTab?.position,
22
+ id: draggedTab === null || draggedTab === void 0 ? void 0 : draggedTab.tabId,
23
+ position: draggedTab === null || draggedTab === void 0 ? void 0 : draggedTab.position,
24
24
  };
25
25
  }, true);
26
26
  const { iconSpec, label } = useLayout((state) => {
27
- const tabId = state.draggedTab?.tabId;
27
+ var _a;
28
+ const tabId = (_a = state.draggedTab) === null || _a === void 0 ? void 0 : _a.tabId;
28
29
  const tab = tabId ? state.tabs[tabId] : undefined;
29
30
  return {
30
- iconSpec: tab?.iconSpec,
31
- label: tab?.label,
31
+ iconSpec: tab === null || tab === void 0 ? void 0 : tab.iconSpec,
32
+ label: tab === null || tab === void 0 ? void 0 : tab.label,
32
33
  };
33
34
  }, true);
34
35
  const dispatch = React.useContext(NineZoneDispatchContext);
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingTab.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingTab.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,oBAAoB,CAAC;AAC5B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,UAAU,EAAE,KAAK;YACrB,QAAQ,EAAE,UAAU,EAAE,QAAQ;SAC/B,CAAC;IACJ,CAAC,EAAE,IAAI,CAAC,CAAC;IACT,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;QACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,OAAO;YACL,QAAQ,EAAE,GAAG,EAAE,QAAQ;YACvB,KAAK,EAAE,GAAG,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAC9B,CAAC,MAAM,EAAE,EAAE;QACT,EAAE;YACA,QAAQ,CAAC;gBACP,IAAI,EAAE,iBAAiB;gBACvB,MAAM;aACP,CAAC,CAAC;IACP,CAAC,EACD,CAAC,QAAQ,EAAE,EAAE,CAAC,CACf,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CACjC,CAAC,MAAM,EAAE,EAAE;QACT,EAAE;YACA,QAAQ,CAAC;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,EAAE;gBACF,MAAM;aACP,CAAC,CAAC;IACP,CAAC,EACD,CAAC,QAAQ,EAAE,EAAE,CAAC,CACf,CAAC;IACF,UAAU,CAAC;QACT,KAAK,EAAE,EAAE,IAAI,EAAE;QACf,MAAM;QACN,SAAS;KACV,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,QAAQ,IAAI;QACxB,SAAS,EAAE,aAAa,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,KAAK;KACzD,CAAC;IACF,MAAM,SAAS,GAAG,UAAU,CAC1B,uBAAuB,EACvB,CAAC,QAAQ,IAAI,WAAW,CACzB,CAAC;IACF,OAAO,CACL,6BAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK;QACpC,cAAc,IAAI,QAAQ,IAAI,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI;QAC3D,kCAAO,KAAK,CAAQ,CAChB,CACP,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./FloatingTab.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Icon } from \"@itwin/core-react\";\nimport type { UseDragTabArgs } from \"../base/DragManager\";\nimport { useDragTab } from \"../base/DragManager\";\nimport {\n NineZoneDispatchContext,\n ShowWidgetIconContext,\n} from \"../base/NineZone\";\nimport { useLayout } from \"../base/LayoutStore\";\n\n/** Component that displays a floating tab.\n * @internal\n */\nexport function FloatingTab() {\n const { id, position } = useLayout((state) => {\n const draggedTab = state.draggedTab;\n return {\n id: draggedTab?.tabId,\n position: draggedTab?.position,\n };\n }, true);\n const { iconSpec, label } = useLayout((state) => {\n const tabId = state.draggedTab?.tabId;\n const tab = tabId ? state.tabs[tabId] : undefined;\n return {\n iconSpec: tab?.iconSpec,\n label: tab?.label,\n };\n }, true);\n\n const dispatch = React.useContext(NineZoneDispatchContext);\n const onDrag = React.useCallback<NonNullable<UseDragTabArgs[\"onDrag\"]>>(\n (dragBy) => {\n id &&\n dispatch({\n type: \"WIDGET_TAB_DRAG\",\n dragBy,\n });\n },\n [dispatch, id]\n );\n const onDragEnd = React.useCallback<NonNullable<UseDragTabArgs[\"onDragEnd\"]>>(\n (target) => {\n id &&\n dispatch({\n type: \"WIDGET_TAB_DRAG_END\",\n id,\n target,\n });\n },\n [dispatch, id]\n );\n useDragTab({\n tabId: id || \"\",\n onDrag,\n onDragEnd,\n });\n const showWidgetIcon = React.useContext(ShowWidgetIconContext);\n const style = position && {\n transform: `translate(${position.x}px, ${position.y}px)`,\n };\n const className = classnames(\n \"nz-widget-floatingTab\",\n !position && \"nz-hidden\"\n );\n return (\n <div className={className} style={style}>\n {showWidgetIcon && iconSpec && <Icon iconSpec={iconSpec} />}\n <span>{label}</span>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"FloatingTab.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingTab.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,oBAAoB,CAAC;AAC5B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK;YACrB,QAAQ,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ;SAC/B,CAAC;IACJ,CAAC,EAAE,IAAI,CAAC,CAAC;IACT,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;;QAC9C,MAAM,KAAK,GAAG,MAAA,KAAK,CAAC,UAAU,0CAAE,KAAK,CAAC;QACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,OAAO;YACL,QAAQ,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ;YACvB,KAAK,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK;SAClB,CAAC;IACJ,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAC9B,CAAC,MAAM,EAAE,EAAE;QACT,EAAE;YACA,QAAQ,CAAC;gBACP,IAAI,EAAE,iBAAiB;gBACvB,MAAM;aACP,CAAC,CAAC;IACP,CAAC,EACD,CAAC,QAAQ,EAAE,EAAE,CAAC,CACf,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CACjC,CAAC,MAAM,EAAE,EAAE;QACT,EAAE;YACA,QAAQ,CAAC;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,EAAE;gBACF,MAAM;aACP,CAAC,CAAC;IACP,CAAC,EACD,CAAC,QAAQ,EAAE,EAAE,CAAC,CACf,CAAC;IACF,UAAU,CAAC;QACT,KAAK,EAAE,EAAE,IAAI,EAAE;QACf,MAAM;QACN,SAAS;KACV,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,QAAQ,IAAI;QACxB,SAAS,EAAE,aAAa,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,KAAK;KACzD,CAAC;IACF,MAAM,SAAS,GAAG,UAAU,CAC1B,uBAAuB,EACvB,CAAC,QAAQ,IAAI,WAAW,CACzB,CAAC;IACF,OAAO,CACL,6BAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK;QACpC,cAAc,IAAI,QAAQ,IAAI,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI;QAC3D,kCAAO,KAAK,CAAQ,CAChB,CACP,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./FloatingTab.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Icon } from \"@itwin/core-react\";\nimport type { UseDragTabArgs } from \"../base/DragManager\";\nimport { useDragTab } from \"../base/DragManager\";\nimport {\n NineZoneDispatchContext,\n ShowWidgetIconContext,\n} from \"../base/NineZone\";\nimport { useLayout } from \"../base/LayoutStore\";\n\n/** Component that displays a floating tab.\n * @internal\n */\nexport function FloatingTab() {\n const { id, position } = useLayout((state) => {\n const draggedTab = state.draggedTab;\n return {\n id: draggedTab?.tabId,\n position: draggedTab?.position,\n };\n }, true);\n const { iconSpec, label } = useLayout((state) => {\n const tabId = state.draggedTab?.tabId;\n const tab = tabId ? state.tabs[tabId] : undefined;\n return {\n iconSpec: tab?.iconSpec,\n label: tab?.label,\n };\n }, true);\n\n const dispatch = React.useContext(NineZoneDispatchContext);\n const onDrag = React.useCallback<NonNullable<UseDragTabArgs[\"onDrag\"]>>(\n (dragBy) => {\n id &&\n dispatch({\n type: \"WIDGET_TAB_DRAG\",\n dragBy,\n });\n },\n [dispatch, id]\n );\n const onDragEnd = React.useCallback<NonNullable<UseDragTabArgs[\"onDragEnd\"]>>(\n (target) => {\n id &&\n dispatch({\n type: \"WIDGET_TAB_DRAG_END\",\n id,\n target,\n });\n },\n [dispatch, id]\n );\n useDragTab({\n tabId: id || \"\",\n onDrag,\n onDragEnd,\n });\n const showWidgetIcon = React.useContext(ShowWidgetIconContext);\n const style = position && {\n transform: `translate(${position.x}px, ${position.y}px)`,\n };\n const className = classnames(\n \"nz-widget-floatingTab\",\n !position && \"nz-hidden\"\n );\n return (\n <div className={className} style={style}>\n {showWidgetIcon && iconSpec && <Icon iconSpec={iconSpec} />}\n <span>{label}</span>\n </div>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingWidget.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingWidget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAEL,SAAS,EAGV,MAAM,mBAAmB,CAAC;AAa3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAUhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAGpE,KAAK,wBAAwB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AACpE,KAAK,0BAA0B,GAC3B,SAAS,GACT,UAAU,GACV,YAAY,GACZ,aAAa,CAAC;AAElB,gBAAgB;AAChB,MAAM,MAAM,0BAA0B,GAClC,wBAAwB,GACxB,0BAA0B,CAAC;AAE/B,gBAAgB;AAChB,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,qBAGxE;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IAC1E,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAC3E;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,qBA4FxD;AAuKD,gBAAgB;AAChB,wBAAgB,WAAW,CAAC,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,KAAK,aAmB5E;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAS3E;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,IAAI,OAAO,CAYhD"}
1
+ {"version":3,"file":"FloatingWidget.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingWidget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAEL,SAAS,EAGV,MAAM,mBAAmB,CAAC;AAa3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAUhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAMpE,KAAK,wBAAwB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AACpE,KAAK,0BAA0B,GAC3B,SAAS,GACT,UAAU,GACV,YAAY,GACZ,aAAa,CAAC;AAElB,gBAAgB;AAChB,MAAM,MAAM,0BAA0B,GAClC,wBAAwB,GACxB,0BAA0B,CAAC;AAE/B,gBAAgB;AAChB,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,qBAGxE;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IAC1E,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAC3E;AAED,gBAAgB;AAChB,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,qBAwFxD;AAqKD,gBAAgB;AAChB,wBAAgB,WAAW,CAAC,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,KAAK,aAmB5E;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAS3E;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,IAAI,OAAO,CAYhD"}
@@ -20,7 +20,7 @@ import { WidgetTarget } from "../target/WidgetTarget";
20
20
  import { WidgetOutline } from "../outline/WidgetOutline";
21
21
  import { useLayout } from "../base/LayoutStore";
22
22
  import { getWidgetState } from "../state/internal/WidgetStateHelpers";
23
- import { usePreviewMaximizedWidget } from "./PreviewMaximizeToggle";
23
+ import { useIsMaximizedWidget, useMaximizedFloatingWidget, } from "../../preview/enable-maximized-widget/useMaximizedWidget";
24
24
  /** @internal */
25
25
  export function FloatingWidgetProvider(props) {
26
26
  const floatingWidget = React.useContext(FloatingWidgetNodeContext);
@@ -39,17 +39,12 @@ export function FloatingWidget(props) {
39
39
  }), [id]);
40
40
  const dragged = useIsDraggedItem(item);
41
41
  const ref = useHandleAutoSize(dragged);
42
- const { enabled: enableMaximizedFloatingWidget, maximizedWidget } = usePreviewMaximizedWidget();
43
- // istanbul ignore next (preview)
44
- const previewMaximizedWidgetSectionsClass = maximizedWidget === id &&
45
- enableMaximizedFloatingWidget &&
46
- "preview-enableMaximizedFloatingWidget-maximized";
47
- const className = classnames("nz-widget-floatingWidget", dragged && "nz-dragged", isToolSettingsTab && "nz-floating-toolSettings", minimized && "nz-minimized", hideFloatingWidget && "nz-hidden", previewMaximizedWidgetSectionsClass);
42
+ const maximizedWidget = useMaximizedFloatingWidget();
43
+ const className = classnames("nz-widget-floatingWidget", dragged && "nz-dragged", isToolSettingsTab && "nz-floating-toolSettings", minimized && "nz-minimized", hideFloatingWidget && "nz-hidden", maximizedWidget.classNames);
48
44
  const style = React.useMemo(() => {
49
45
  const boundsRect = Rectangle.create(bounds);
50
46
  const { height, width } = boundsRect.getSize();
51
47
  const position = boundsRect.topLeft();
52
- // istanbul ignore next
53
48
  return {
54
49
  transform: `translate(${position.x}px, ${position.y}px)`,
55
50
  height: minimized || autoSized ? undefined : height,
@@ -70,7 +65,10 @@ export function FloatingWidget(props) {
70
65
  React.createElement(FloatingWidgetHandle, { handle: "topRight" }),
71
66
  React.createElement(FloatingWidgetHandle, { handle: "bottomLeft" }),
72
67
  React.createElement(FloatingWidgetHandle, { handle: "bottomRight" }))), [resizable]);
73
- return (React.createElement(Widget, { className: className, widgetId: id, style: style, ref: ref, onMouseEnter: props.onMouseEnter, onMouseLeave: props.onMouseLeave },
68
+ return (React.createElement(Widget, { className: className, widgetId: id, style: {
69
+ ...style,
70
+ ...maximizedWidget.style,
71
+ }, ref: ref, onMouseEnter: props.onMouseEnter, onMouseLeave: props.onMouseLeave },
74
72
  React.createElement(WidgetTabBar, { separator: !minimized }),
75
73
  content,
76
74
  handles));
@@ -79,6 +77,7 @@ function useFloatingWidgetState() {
79
77
  const id = useFloatingWidgetId();
80
78
  assert(!!id);
81
79
  return useLayout((state) => {
80
+ var _a;
82
81
  const widget = getWidgetState(state, id);
83
82
  const floatingWidget = state.floatingWidgets.byId[id];
84
83
  const tabs = widget.tabs;
@@ -86,7 +85,7 @@ function useFloatingWidgetState() {
86
85
  const activeTab = state.tabs[activeTabId];
87
86
  const userSized = floatingWidget.userSized;
88
87
  const singleTab = 1 === tabs.length;
89
- const toolSettingsTabId = state.toolSettings?.tabId;
88
+ const toolSettingsTabId = (_a = state.toolSettings) === null || _a === void 0 ? void 0 : _a.tabId;
90
89
  const isToolSettingsTab = widget.tabs[0] === toolSettingsTabId;
91
90
  const resizable = !!floatingWidget.resizable && !isToolSettingsTab;
92
91
  const autoSized = singleTab && !userSized;
@@ -109,8 +108,7 @@ function useHandleAutoSize(dragged) {
109
108
  const id = useFloatingWidgetId();
110
109
  assert(!!id);
111
110
  const userSized = useLayout((state) => state.floatingWidgets.byId[id].userSized);
112
- const { enabled: enableMaximizedFloatingWidget, maximizedWidget } = usePreviewMaximizedWidget();
113
- const maximized = enableMaximizedFloatingWidget && maximizedWidget === id;
111
+ const maximizedWidget = useIsMaximizedWidget();
114
112
  const updatePosition = React.useRef(true);
115
113
  const ref = React.useRef(null);
116
114
  React.useLayoutEffect(() => {
@@ -118,8 +116,7 @@ function useHandleAutoSize(dragged) {
118
116
  return;
119
117
  if (!dragged)
120
118
  return;
121
- // istanbul ignore next (preview)
122
- if (maximized)
119
+ if (maximizedWidget)
123
120
  return;
124
121
  if (!dragManager.draggedItem)
125
122
  return;
@@ -148,14 +145,13 @@ function useHandleAutoSize(dragged) {
148
145
  userSized: true,
149
146
  });
150
147
  updatePosition.current = false;
151
- }, [dragged, dragManager, dispatch, id, measureNz, maximized]);
148
+ }, [dragged, dragManager, dispatch, id, measureNz, maximizedWidget]);
152
149
  const handleResize = React.useCallback(() => {
153
150
  if (!ref.current)
154
151
  return;
155
152
  if (dragged)
156
153
  return;
157
- // istanbul ignore next (preview)
158
- if (maximized)
154
+ if (maximizedWidget)
159
155
  return;
160
156
  if (userSized)
161
157
  return;
@@ -168,7 +164,7 @@ function useHandleAutoSize(dragged) {
168
164
  id,
169
165
  bounds,
170
166
  });
171
- }, [dispatch, dragged, id, userSized, measureNz, maximized]);
167
+ }, [dispatch, dragged, id, userSized, measureNz, maximizedWidget]);
172
168
  const roRef = useResizeObserver(handleResize);
173
169
  const refs = useRefs(ref, roRef);
174
170
  return refs;
@@ -215,7 +211,10 @@ function FloatingWidgetHandle(props) {
215
211
  const pointerCaptorRef = usePointerCaptor(handlePointerDown);
216
212
  const ref = React.useRef(null);
217
213
  const refs = useRefs(ref, pointerCaptorRef);
214
+ const isMaximized = useIsMaximizedWidget();
218
215
  const className = classnames("nz-widget-floatingWidget_handle", `nz-${handle}`);
216
+ if (isMaximized)
217
+ return null;
219
218
  return React.createElement("div", { className: className, ref: refs });
220
219
  }
221
220
  /** @internal */
@@ -255,10 +254,11 @@ export function useFloatingWidgetId() {
255
254
  export function useWidgetAllowedToDock() {
256
255
  const id = useFloatingWidgetId();
257
256
  return useLayout((state) => {
257
+ var _a;
258
258
  if (id) {
259
259
  const widget = getWidgetState(state, id);
260
260
  const activeTab = state.tabs[widget.activeTabId];
261
- if (activeTab.allowedPanelTargets?.length === 0) {
261
+ if (((_a = activeTab.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.length) === 0) {
262
262
  return false;
263
263
  }
264
264
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingWidget.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./FloatingWidget.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport {\n Point,\n Rectangle,\n useRefs,\n useResizeObserver,\n} from \"@itwin/core-react\";\nimport type { UseDragResizeHandleArgs } from \"../base/DragManager\";\nimport {\n DragManagerContext,\n useDragResizeHandle,\n useIsDraggedItem,\n} from \"../base/DragManager\";\nimport {\n FloatingWidgetNodeContext,\n MeasureContext,\n NineZoneDispatchContext,\n UiIsVisibleContext,\n} from \"../base/NineZone\";\nimport type { FloatingWidgetState } from \"../state/WidgetState\";\nimport { WidgetContentContainer } from \"./ContentContainer\";\nimport { WidgetTabBar } from \"./TabBar\";\nimport { Widget, WidgetIdContext, WidgetProvider } from \"./Widget\";\nimport type { PointerCaptorArgs } from \"../base/usePointerCaptor\";\nimport { usePointerCaptor } from \"../base/usePointerCaptor\";\nimport { WidgetTarget } from \"../target/WidgetTarget\";\nimport { WidgetOutline } from \"../outline/WidgetOutline\";\nimport { useLayout } from \"../base/LayoutStore\";\nimport { getWidgetState } from \"../state/internal/WidgetStateHelpers\";\nimport type { XAndY } from \"../state/internal/NineZoneStateHelpers\";\nimport { usePreviewMaximizedWidget } from \"./PreviewMaximizeToggle\";\n\ntype FloatingWidgetEdgeHandle = \"left\" | \"right\" | \"top\" | \"bottom\";\ntype FloatingWidgetCornerHandle =\n | \"topLeft\"\n | \"topRight\"\n | \"bottomLeft\"\n | \"bottomRight\";\n\n/** @internal */\nexport type FloatingWidgetResizeHandle =\n | FloatingWidgetEdgeHandle\n | FloatingWidgetCornerHandle;\n\n/** @internal */\nexport interface FloatingWidgetProviderProps {\n id: FloatingWidgetState[\"id\"];\n}\n\n/** @internal */\nexport function FloatingWidgetProvider(props: FloatingWidgetProviderProps) {\n const floatingWidget = React.useContext(FloatingWidgetNodeContext);\n return <WidgetProvider id={props.id}>{floatingWidget}</WidgetProvider>;\n}\n\n/** @internal */\nexport interface FloatingWidgetProps {\n onMouseEnter?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseLeave?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\n/** @internal */\nexport function FloatingWidget(props: FloatingWidgetProps) {\n const uiIsVisible = React.useContext(UiIsVisibleContext);\n const id = useFloatingWidgetId();\n assert(!!id);\n const {\n autoSized,\n bounds,\n hideWithUiWhenFloating,\n isToolSettingsTab,\n minimized,\n resizable,\n } = useFloatingWidgetState();\n const hideFloatingWidget = !uiIsVisible && hideWithUiWhenFloating;\n\n const item = React.useMemo(\n () => ({\n id,\n type: \"widget\" as const,\n }),\n [id]\n );\n const dragged = useIsDraggedItem(item);\n const ref = useHandleAutoSize(dragged);\n const { enabled: enableMaximizedFloatingWidget, maximizedWidget } =\n usePreviewMaximizedWidget();\n // istanbul ignore next (preview)\n const previewMaximizedWidgetSectionsClass =\n maximizedWidget === id &&\n enableMaximizedFloatingWidget &&\n \"preview-enableMaximizedFloatingWidget-maximized\";\n\n const className = classnames(\n \"nz-widget-floatingWidget\",\n dragged && \"nz-dragged\",\n isToolSettingsTab && \"nz-floating-toolSettings\",\n minimized && \"nz-minimized\",\n hideFloatingWidget && \"nz-hidden\",\n previewMaximizedWidgetSectionsClass\n );\n const style = React.useMemo(() => {\n const boundsRect = Rectangle.create(bounds);\n const { height, width } = boundsRect.getSize();\n const position = boundsRect.topLeft();\n // istanbul ignore next\n return {\n transform: `translate(${position.x}px, ${position.y}px)`,\n height: minimized || autoSized ? undefined : height,\n width: autoSized ? undefined : width,\n maxHeight: autoSized ? \"60%\" : undefined,\n maxWidth: autoSized ? \"60%\" : undefined,\n };\n }, [autoSized, bounds, minimized]);\n\n const content = React.useMemo(\n () => (\n <WidgetContentContainer>\n <WidgetTarget />\n <WidgetOutline />\n </WidgetContentContainer>\n ),\n []\n );\n const handles = React.useMemo(\n () =>\n resizable && (\n <>\n <FloatingWidgetHandle handle=\"left\" />\n <FloatingWidgetHandle handle=\"top\" />\n <FloatingWidgetHandle handle=\"right\" />\n <FloatingWidgetHandle handle=\"bottom\" />\n <FloatingWidgetHandle handle=\"topLeft\" />\n <FloatingWidgetHandle handle=\"topRight\" />\n <FloatingWidgetHandle handle=\"bottomLeft\" />\n <FloatingWidgetHandle handle=\"bottomRight\" />\n </>\n ),\n [resizable]\n );\n return (\n <Widget\n className={className}\n widgetId={id}\n style={style}\n ref={ref}\n onMouseEnter={props.onMouseEnter}\n onMouseLeave={props.onMouseLeave}\n >\n <WidgetTabBar separator={!minimized} />\n {content}\n {handles}\n </Widget>\n );\n}\n\nfunction useFloatingWidgetState() {\n const id = useFloatingWidgetId();\n assert(!!id);\n return useLayout((state) => {\n const widget = getWidgetState(state, id);\n const floatingWidget = state.floatingWidgets.byId[id];\n const tabs = widget.tabs;\n const activeTabId = widget.activeTabId;\n const activeTab = state.tabs[activeTabId];\n const userSized = floatingWidget.userSized;\n const singleTab = 1 === tabs.length;\n\n const toolSettingsTabId = state.toolSettings?.tabId;\n const isToolSettingsTab = widget.tabs[0] === toolSettingsTabId;\n const resizable = !!floatingWidget.resizable && !isToolSettingsTab;\n const autoSized = singleTab && !userSized;\n return {\n autoSized,\n bounds: floatingWidget.bounds,\n hideWithUiWhenFloating: activeTab.hideWithUiWhenFloating,\n isToolSettingsTab,\n minimized: widget.minimized,\n resizable,\n };\n }, true);\n}\n\n// Re-adjust bounds so that widget is behind pointer when auto-sized.\n// istanbul ignore next\nfunction useHandleAutoSize(dragged: boolean) {\n const dragManager = React.useContext(DragManagerContext);\n const dispatch = React.useContext(NineZoneDispatchContext);\n const measureNz = React.useContext(MeasureContext);\n const id = useFloatingWidgetId();\n assert(!!id);\n const userSized = useLayout(\n (state) => state.floatingWidgets.byId[id].userSized\n );\n const { enabled: enableMaximizedFloatingWidget, maximizedWidget } =\n usePreviewMaximizedWidget();\n const maximized = enableMaximizedFloatingWidget && maximizedWidget === id;\n\n const updatePosition = React.useRef(true);\n const ref = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(() => {\n if (!updatePosition.current) return;\n if (!dragged) return;\n // istanbul ignore next (preview)\n if (maximized) return;\n if (!dragManager.draggedItem) return;\n if (!ref.current) return;\n\n let bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const nzBounds = measureNz();\n const pointerPosition = dragManager.draggedItem.info.pointerPosition;\n\n if (bounds.containsPoint(pointerPosition)) return;\n\n // Pointer is outside of tab area. Need to re-adjust widget bounds so that tab is behind pointer\n if (pointerPosition.x > bounds.right) {\n const offset = pointerPosition.x - bounds.right + 20;\n bounds = bounds.offsetX(offset);\n }\n\n // Adjust bounds to be relative to 9z origin\n bounds = bounds.offset({ x: -nzBounds.left, y: -nzBounds.top });\n\n dispatch({\n type: \"FLOATING_WIDGET_SET_BOUNDS\",\n id,\n bounds: bounds.toProps(),\n });\n dispatch({\n type: \"FLOATING_WIDGET_SET_USER_SIZED\",\n id,\n userSized: true,\n });\n updatePosition.current = false;\n }, [dragged, dragManager, dispatch, id, measureNz, maximized]);\n const handleResize = React.useCallback(() => {\n if (!ref.current) return;\n if (dragged) return;\n // istanbul ignore next (preview)\n if (maximized) return;\n if (userSized) return;\n\n let bounds = Rectangle.create(ref.current.getBoundingClientRect());\n\n // Adjust bounds to be relative to 9z origin\n const nzBounds = measureNz();\n bounds = bounds.offset({ x: -nzBounds.left, y: -nzBounds.top });\n\n dispatch({\n type: \"FLOATING_WIDGET_SET_BOUNDS\",\n id,\n bounds,\n });\n }, [dispatch, dragged, id, userSized, measureNz, maximized]);\n const roRef = useResizeObserver(handleResize);\n const refs = useRefs(ref, roRef);\n return refs;\n}\n\ninterface FloatingWidgetHandleProps {\n handle: FloatingWidgetResizeHandle;\n}\n\nfunction FloatingWidgetHandle(props: FloatingWidgetHandleProps) {\n const dispatch = React.useContext(NineZoneDispatchContext);\n const id = useFloatingWidgetId();\n const { handle } = props;\n const relativePosition = React.useRef<Point>(new Point());\n assert(id !== undefined);\n const onDrag = React.useCallback<\n NonNullable<UseDragResizeHandleArgs[\"onDrag\"]>\n >(\n (pointerPosition) => {\n assert(!!ref.current);\n const bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const newRelativePosition = bounds.topLeft().getOffsetTo(pointerPosition);\n const offset = relativePosition.current.getOffsetTo(newRelativePosition);\n const resizeBy = getResizeBy(handle, offset);\n dispatch({\n type: \"FLOATING_WIDGET_RESIZE\",\n id,\n resizeBy,\n });\n },\n [dispatch, handle, id]\n );\n const handleDragStart = useDragResizeHandle({\n handle,\n widgetId: id,\n onDrag,\n });\n const handlePointerDown = React.useCallback(\n (args: PointerCaptorArgs) => {\n assert(!!ref.current);\n const bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const initialPointerPosition = new Point(args.clientX, args.clientY);\n relativePosition.current = bounds\n .topLeft()\n .getOffsetTo(initialPointerPosition);\n handleDragStart({\n initialPointerPosition,\n pointerPosition: initialPointerPosition,\n });\n dispatch({\n type: \"FLOATING_WIDGET_BRING_TO_FRONT\",\n id,\n });\n },\n [dispatch, handleDragStart, id]\n );\n const pointerCaptorRef = usePointerCaptor(handlePointerDown);\n const ref = React.useRef<HTMLDivElement>(null);\n const refs = useRefs(ref, pointerCaptorRef);\n const className = classnames(\n \"nz-widget-floatingWidget_handle\",\n `nz-${handle}`\n );\n return <div className={className} ref={refs} />;\n}\n\n/** @internal */\nexport function getResizeBy(handle: FloatingWidgetResizeHandle, offset: XAndY) {\n switch (handle) {\n case \"left\":\n return new Rectangle(-offset.x);\n case \"top\":\n return new Rectangle(0, -offset.y);\n case \"right\":\n return new Rectangle(0, 0, offset.x);\n case \"bottom\":\n return new Rectangle(0, 0, 0, offset.y);\n case \"topLeft\":\n return new Rectangle(-offset.x, -offset.y);\n case \"topRight\":\n return new Rectangle(0, -offset.y, offset.x);\n case \"bottomLeft\":\n return new Rectangle(-offset.x, 0, 0, offset.y);\n case \"bottomRight\":\n return new Rectangle(0, 0, offset.x, offset.y);\n }\n}\n\n/** @internal */\nexport function useFloatingWidgetId(): FloatingWidgetState[\"id\"] | undefined {\n const widgetId = React.useContext(WidgetIdContext);\n return useLayout((state) => {\n if (!widgetId) return undefined;\n const floatingWidget = state.floatingWidgets.byId[widgetId];\n if (!floatingWidget) return undefined;\n\n return widgetId;\n });\n}\n\n/** @internal */\nexport function useWidgetAllowedToDock(): boolean {\n const id = useFloatingWidgetId();\n return useLayout((state) => {\n if (id) {\n const widget = getWidgetState(state, id);\n const activeTab = state.tabs[widget.activeTabId];\n if (activeTab.allowedPanelTargets?.length === 0) {\n return false;\n }\n }\n return true;\n });\n}\n"]}
1
+ {"version":3,"file":"FloatingWidget.js","sourceRoot":"","sources":["../../../../../src/appui-react/layout/widget/FloatingWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport \"./FloatingWidget.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport {\n Point,\n Rectangle,\n useRefs,\n useResizeObserver,\n} from \"@itwin/core-react\";\nimport type { UseDragResizeHandleArgs } from \"../base/DragManager\";\nimport {\n DragManagerContext,\n useDragResizeHandle,\n useIsDraggedItem,\n} from \"../base/DragManager\";\nimport {\n FloatingWidgetNodeContext,\n MeasureContext,\n NineZoneDispatchContext,\n UiIsVisibleContext,\n} from \"../base/NineZone\";\nimport type { FloatingWidgetState } from \"../state/WidgetState\";\nimport { WidgetContentContainer } from \"./ContentContainer\";\nimport { WidgetTabBar } from \"./TabBar\";\nimport { Widget, WidgetIdContext, WidgetProvider } from \"./Widget\";\nimport type { PointerCaptorArgs } from \"../base/usePointerCaptor\";\nimport { usePointerCaptor } from \"../base/usePointerCaptor\";\nimport { WidgetTarget } from \"../target/WidgetTarget\";\nimport { WidgetOutline } from \"../outline/WidgetOutline\";\nimport { useLayout } from \"../base/LayoutStore\";\nimport { getWidgetState } from \"../state/internal/WidgetStateHelpers\";\nimport type { XAndY } from \"../state/internal/NineZoneStateHelpers\";\nimport {\n useIsMaximizedWidget,\n useMaximizedFloatingWidget,\n} from \"../../preview/enable-maximized-widget/useMaximizedWidget\";\n\ntype FloatingWidgetEdgeHandle = \"left\" | \"right\" | \"top\" | \"bottom\";\ntype FloatingWidgetCornerHandle =\n | \"topLeft\"\n | \"topRight\"\n | \"bottomLeft\"\n | \"bottomRight\";\n\n/** @internal */\nexport type FloatingWidgetResizeHandle =\n | FloatingWidgetEdgeHandle\n | FloatingWidgetCornerHandle;\n\n/** @internal */\nexport interface FloatingWidgetProviderProps {\n id: FloatingWidgetState[\"id\"];\n}\n\n/** @internal */\nexport function FloatingWidgetProvider(props: FloatingWidgetProviderProps) {\n const floatingWidget = React.useContext(FloatingWidgetNodeContext);\n return <WidgetProvider id={props.id}>{floatingWidget}</WidgetProvider>;\n}\n\n/** @internal */\nexport interface FloatingWidgetProps {\n onMouseEnter?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseLeave?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\n/** @internal */\nexport function FloatingWidget(props: FloatingWidgetProps) {\n const uiIsVisible = React.useContext(UiIsVisibleContext);\n const id = useFloatingWidgetId();\n assert(!!id);\n const {\n autoSized,\n bounds,\n hideWithUiWhenFloating,\n isToolSettingsTab,\n minimized,\n resizable,\n } = useFloatingWidgetState();\n const hideFloatingWidget = !uiIsVisible && hideWithUiWhenFloating;\n\n const item = React.useMemo(\n () => ({\n id,\n type: \"widget\" as const,\n }),\n [id]\n );\n const dragged = useIsDraggedItem(item);\n const ref = useHandleAutoSize(dragged);\n const maximizedWidget = useMaximizedFloatingWidget();\n\n const className = classnames(\n \"nz-widget-floatingWidget\",\n dragged && \"nz-dragged\",\n isToolSettingsTab && \"nz-floating-toolSettings\",\n minimized && \"nz-minimized\",\n hideFloatingWidget && \"nz-hidden\",\n maximizedWidget.classNames\n );\n const style = React.useMemo(() => {\n const boundsRect = Rectangle.create(bounds);\n const { height, width } = boundsRect.getSize();\n const position = boundsRect.topLeft();\n return {\n transform: `translate(${position.x}px, ${position.y}px)`,\n height: minimized || autoSized ? undefined : height,\n width: autoSized ? undefined : width,\n maxHeight: autoSized ? \"60%\" : undefined,\n maxWidth: autoSized ? \"60%\" : undefined,\n };\n }, [autoSized, bounds, minimized]);\n\n const content = React.useMemo(\n () => (\n <WidgetContentContainer>\n <WidgetTarget />\n <WidgetOutline />\n </WidgetContentContainer>\n ),\n []\n );\n const handles = React.useMemo(\n () =>\n resizable && (\n <>\n <FloatingWidgetHandle handle=\"left\" />\n <FloatingWidgetHandle handle=\"top\" />\n <FloatingWidgetHandle handle=\"right\" />\n <FloatingWidgetHandle handle=\"bottom\" />\n <FloatingWidgetHandle handle=\"topLeft\" />\n <FloatingWidgetHandle handle=\"topRight\" />\n <FloatingWidgetHandle handle=\"bottomLeft\" />\n <FloatingWidgetHandle handle=\"bottomRight\" />\n </>\n ),\n [resizable]\n );\n return (\n <Widget\n className={className}\n widgetId={id}\n style={{\n ...style,\n ...maximizedWidget.style,\n }}\n ref={ref}\n onMouseEnter={props.onMouseEnter}\n onMouseLeave={props.onMouseLeave}\n >\n <WidgetTabBar separator={!minimized} />\n {content}\n {handles}\n </Widget>\n );\n}\n\nfunction useFloatingWidgetState() {\n const id = useFloatingWidgetId();\n assert(!!id);\n return useLayout((state) => {\n const widget = getWidgetState(state, id);\n const floatingWidget = state.floatingWidgets.byId[id];\n const tabs = widget.tabs;\n const activeTabId = widget.activeTabId;\n const activeTab = state.tabs[activeTabId];\n const userSized = floatingWidget.userSized;\n const singleTab = 1 === tabs.length;\n\n const toolSettingsTabId = state.toolSettings?.tabId;\n const isToolSettingsTab = widget.tabs[0] === toolSettingsTabId;\n const resizable = !!floatingWidget.resizable && !isToolSettingsTab;\n const autoSized = singleTab && !userSized;\n return {\n autoSized,\n bounds: floatingWidget.bounds,\n hideWithUiWhenFloating: activeTab.hideWithUiWhenFloating,\n isToolSettingsTab,\n minimized: widget.minimized,\n resizable,\n };\n }, true);\n}\n\n// Re-adjust bounds so that widget is behind pointer when auto-sized.\n// istanbul ignore next\nfunction useHandleAutoSize(dragged: boolean) {\n const dragManager = React.useContext(DragManagerContext);\n const dispatch = React.useContext(NineZoneDispatchContext);\n const measureNz = React.useContext(MeasureContext);\n const id = useFloatingWidgetId();\n assert(!!id);\n const userSized = useLayout(\n (state) => state.floatingWidgets.byId[id].userSized\n );\n const maximizedWidget = useIsMaximizedWidget();\n\n const updatePosition = React.useRef(true);\n const ref = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(() => {\n if (!updatePosition.current) return;\n if (!dragged) return;\n if (maximizedWidget) return;\n if (!dragManager.draggedItem) return;\n if (!ref.current) return;\n\n let bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const nzBounds = measureNz();\n const pointerPosition = dragManager.draggedItem.info.pointerPosition;\n\n if (bounds.containsPoint(pointerPosition)) return;\n\n // Pointer is outside of tab area. Need to re-adjust widget bounds so that tab is behind pointer\n if (pointerPosition.x > bounds.right) {\n const offset = pointerPosition.x - bounds.right + 20;\n bounds = bounds.offsetX(offset);\n }\n\n // Adjust bounds to be relative to 9z origin\n bounds = bounds.offset({ x: -nzBounds.left, y: -nzBounds.top });\n\n dispatch({\n type: \"FLOATING_WIDGET_SET_BOUNDS\",\n id,\n bounds: bounds.toProps(),\n });\n dispatch({\n type: \"FLOATING_WIDGET_SET_USER_SIZED\",\n id,\n userSized: true,\n });\n updatePosition.current = false;\n }, [dragged, dragManager, dispatch, id, measureNz, maximizedWidget]);\n const handleResize = React.useCallback(() => {\n if (!ref.current) return;\n if (dragged) return;\n if (maximizedWidget) return;\n if (userSized) return;\n\n let bounds = Rectangle.create(ref.current.getBoundingClientRect());\n\n // Adjust bounds to be relative to 9z origin\n const nzBounds = measureNz();\n bounds = bounds.offset({ x: -nzBounds.left, y: -nzBounds.top });\n\n dispatch({\n type: \"FLOATING_WIDGET_SET_BOUNDS\",\n id,\n bounds,\n });\n }, [dispatch, dragged, id, userSized, measureNz, maximizedWidget]);\n const roRef = useResizeObserver(handleResize);\n const refs = useRefs(ref, roRef);\n return refs;\n}\n\ninterface FloatingWidgetHandleProps {\n handle: FloatingWidgetResizeHandle;\n}\n\nfunction FloatingWidgetHandle(props: FloatingWidgetHandleProps) {\n const dispatch = React.useContext(NineZoneDispatchContext);\n const id = useFloatingWidgetId();\n const { handle } = props;\n const relativePosition = React.useRef<Point>(new Point());\n assert(id !== undefined);\n const onDrag = React.useCallback<\n NonNullable<UseDragResizeHandleArgs[\"onDrag\"]>\n >(\n (pointerPosition) => {\n assert(!!ref.current);\n const bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const newRelativePosition = bounds.topLeft().getOffsetTo(pointerPosition);\n const offset = relativePosition.current.getOffsetTo(newRelativePosition);\n const resizeBy = getResizeBy(handle, offset);\n dispatch({\n type: \"FLOATING_WIDGET_RESIZE\",\n id,\n resizeBy,\n });\n },\n [dispatch, handle, id]\n );\n const handleDragStart = useDragResizeHandle({\n handle,\n widgetId: id,\n onDrag,\n });\n const handlePointerDown = React.useCallback(\n (args: PointerCaptorArgs) => {\n assert(!!ref.current);\n const bounds = Rectangle.create(ref.current.getBoundingClientRect());\n const initialPointerPosition = new Point(args.clientX, args.clientY);\n relativePosition.current = bounds\n .topLeft()\n .getOffsetTo(initialPointerPosition);\n handleDragStart({\n initialPointerPosition,\n pointerPosition: initialPointerPosition,\n });\n dispatch({\n type: \"FLOATING_WIDGET_BRING_TO_FRONT\",\n id,\n });\n },\n [dispatch, handleDragStart, id]\n );\n const pointerCaptorRef = usePointerCaptor(handlePointerDown);\n const ref = React.useRef<HTMLDivElement>(null);\n const refs = useRefs(ref, pointerCaptorRef);\n const isMaximized = useIsMaximizedWidget();\n const className = classnames(\n \"nz-widget-floatingWidget_handle\",\n `nz-${handle}`\n );\n if (isMaximized) return null;\n return <div className={className} ref={refs} />;\n}\n\n/** @internal */\nexport function getResizeBy(handle: FloatingWidgetResizeHandle, offset: XAndY) {\n switch (handle) {\n case \"left\":\n return new Rectangle(-offset.x);\n case \"top\":\n return new Rectangle(0, -offset.y);\n case \"right\":\n return new Rectangle(0, 0, offset.x);\n case \"bottom\":\n return new Rectangle(0, 0, 0, offset.y);\n case \"topLeft\":\n return new Rectangle(-offset.x, -offset.y);\n case \"topRight\":\n return new Rectangle(0, -offset.y, offset.x);\n case \"bottomLeft\":\n return new Rectangle(-offset.x, 0, 0, offset.y);\n case \"bottomRight\":\n return new Rectangle(0, 0, offset.x, offset.y);\n }\n}\n\n/** @internal */\nexport function useFloatingWidgetId(): FloatingWidgetState[\"id\"] | undefined {\n const widgetId = React.useContext(WidgetIdContext);\n return useLayout((state) => {\n if (!widgetId) return undefined;\n const floatingWidget = state.floatingWidgets.byId[widgetId];\n if (!floatingWidget) return undefined;\n\n return widgetId;\n });\n}\n\n/** @internal */\nexport function useWidgetAllowedToDock(): boolean {\n const id = useFloatingWidgetId();\n return useLayout((state) => {\n if (id) {\n const widget = getWidgetState(state, id);\n const activeTab = state.tabs[widget.activeTabId];\n if (activeTab.allowedPanelTargets?.length === 0) {\n return false;\n }\n }\n return true;\n });\n}\n"]}