@itwin/appui-react 4.12.0 → 4.13.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 (1009) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +4 -1
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +13 -14
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/UiFramework.json +1 -1
  7. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/Calculator.js +3 -1
  9. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  11. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  13. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  15. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  16. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  17. package/lib/cjs/appui-react/backstage/BackstageComposer.js +2 -1
  18. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  19. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
  20. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  21. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  22. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  23. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  24. package/lib/cjs/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  25. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  26. package/lib/cjs/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +11 -5
  27. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  28. package/lib/{esm/appui-react/childwindow/PopoutWidget.scss → cjs/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  29. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  30. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  31. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  32. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  33. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  34. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  35. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  36. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  37. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +5 -18
  38. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  39. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  40. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  41. package/lib/cjs/appui-react/content/ContentControl.d.ts +2 -0
  42. package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/content/ContentControl.js +1 -0
  44. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  45. package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -0
  46. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/content/ContentLayout.js +14 -14
  48. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  49. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  50. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  51. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts +2 -2
  52. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/content/FloatingViewportContent.js +2 -3
  54. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  55. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/content/IModelViewport.js +7 -8
  57. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  58. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  59. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  60. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts +5 -5
  61. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  62. package/lib/cjs/appui-react/content/InternalContentViewManager.js +5 -7
  63. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  64. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
  65. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  66. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +2 -0
  67. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/cursor/CursorInformation.js +2 -0
  69. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  70. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  71. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  72. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  73. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  74. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  75. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  76. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  77. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  78. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +4 -24
  79. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  80. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  81. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  82. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  83. package/lib/cjs/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  84. package/lib/cjs/appui-react/dialog/ContentDialog.js +8 -7
  85. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  86. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  87. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  88. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +6 -3
  89. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  90. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  91. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  92. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +1 -2
  93. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  94. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  95. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  96. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js +2 -2
  97. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  98. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  99. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  100. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +1 -2
  101. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  102. package/lib/cjs/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  103. package/lib/cjs/appui-react/dialog/ModelessDialog.js +3 -1
  104. package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
  105. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  107. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  108. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -0
  109. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  110. package/lib/cjs/appui-react/feedback/ElementTooltip.js +6 -2
  111. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  112. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +5 -0
  113. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  114. package/lib/cjs/appui-react/framework/FrameworkContent.js +4 -0
  115. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  116. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  117. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  118. package/lib/cjs/appui-react/framework/FrameworkDialogs.js +4 -0
  119. package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
  120. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  121. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js +8 -0
  123. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  124. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  125. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  126. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js +1 -0
  127. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  128. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  129. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +23 -23
  130. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  131. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  132. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  133. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +45 -50
  134. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  135. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  136. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +7 -5
  137. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  138. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  139. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  140. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  141. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +1 -0
  142. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  143. package/lib/cjs/appui-react/hooks/useActiveStageId.js +2 -1
  144. package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
  145. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  146. package/lib/cjs/appui-react/hooks/useActiveViewport.js +2 -0
  147. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  148. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  149. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  150. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  151. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  152. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  153. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  154. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  155. package/lib/cjs/appui-react/hooks/useUiVisibility.js +1 -0
  156. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  157. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  158. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  159. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  160. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  161. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  163. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  164. package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
  165. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  166. package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
  167. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  168. package/lib/cjs/appui-react/layout/footer/_variables.scss +0 -2
  169. package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
  170. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  171. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
  172. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  173. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  174. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  175. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  176. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  177. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  178. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  179. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  180. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  181. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
  182. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  183. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +2 -2
  184. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  185. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +3 -13
  186. package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +2 -2
  187. package/lib/cjs/appui-react/layout/tool-settings/Setting.js +1 -1
  188. package/lib/cjs/appui-react/layout/tool-settings/Setting.js.map +1 -1
  189. package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -2
  190. package/lib/cjs/appui-react/layout/widget/Button.d.ts +3 -2
  191. package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
  192. package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
  193. package/lib/cjs/appui-react/layout/widget/ContentContainer.js +1 -1
  194. package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
  195. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +3 -3
  196. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  197. package/lib/cjs/appui-react/layout/widget/ContentManager.js +7 -1
  198. package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
  199. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
  200. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  201. package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
  202. package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
  203. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
  204. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  205. package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
  206. package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
  207. package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
  208. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  209. package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
  210. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  211. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  212. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  213. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
  214. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  215. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  216. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  217. package/lib/cjs/appui-react/messages/InputField.js +2 -1
  218. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  219. package/lib/cjs/appui-react/messages/MessageManager.d.ts +12 -0
  220. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  221. package/lib/cjs/appui-react/messages/MessageManager.js +18 -10
  222. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  223. package/lib/cjs/appui-react/messages/MessageRenderer.js +7 -8
  224. package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -1
  225. package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -0
  226. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  227. package/lib/cjs/appui-react/messages/Pointer.js +7 -9
  228. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  229. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  230. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  231. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +1 -0
  232. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  233. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  234. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  235. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  236. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  237. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  238. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  239. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  240. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  241. package/lib/cjs/appui-react/pickers/ListPicker.js +3 -1
  242. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  243. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +2 -0
  244. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  245. package/lib/cjs/appui-react/pickers/ViewSelector.js +8 -13
  246. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  247. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  248. package/lib/cjs/appui-react/popup/CardPopup.js +2 -3
  249. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  250. package/lib/cjs/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  251. package/lib/cjs/appui-react/popup/ComponentPopup.js +1 -1
  252. package/lib/cjs/appui-react/popup/ComponentPopup.js.map +1 -1
  253. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  254. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  255. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  256. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  257. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  258. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +7 -4
  259. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  260. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  261. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
  262. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  263. package/lib/cjs/appui-react/popup/PopupManager.d.ts +5 -1
  264. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  265. package/lib/cjs/appui-react/popup/PopupManager.js +24 -24
  266. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  267. package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
  268. package/lib/cjs/appui-react/popup/PositionPopup.js +1 -0
  269. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  270. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  271. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  272. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  273. package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -3
  274. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  275. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +7 -0
  276. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  277. package/lib/cjs/appui-react/preview/PreviewFeatures.js +2 -1
  278. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  279. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  280. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  281. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  282. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  283. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  284. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  285. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  286. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  287. package/lib/cjs/appui-react/preview/new-toolbars/Item.js +1 -1
  288. package/lib/cjs/appui-react/preview/new-toolbars/Item.js.map +1 -1
  289. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  290. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  291. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  292. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  293. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  294. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  295. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  296. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +40 -0
  297. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  298. package/lib/{esm/appui-react/layout/footer/message-center/_variables.scss → cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  299. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  300. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  301. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +25 -0
  302. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  303. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  304. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  305. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +26 -0
  306. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  307. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  308. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  309. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +45 -0
  310. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  311. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  312. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  313. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  314. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +28 -0
  315. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  316. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  317. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  318. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +18 -0
  319. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  320. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  321. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  322. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  323. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  324. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  325. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +8 -3
  326. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  327. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  328. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +1 -0
  329. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  330. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
  331. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  332. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +15 -25
  333. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  334. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  335. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  336. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -3
  337. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  338. package/lib/cjs/appui-react/statusbar/StatusBar.js +21 -13
  339. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  340. package/lib/cjs/appui-react/statusbar/StatusBar.scss +18 -0
  341. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  342. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -0
  343. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  344. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  345. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +3 -1
  346. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  347. package/lib/cjs/appui-react/statusfields/SelectionScope.js +1 -1
  348. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  349. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +2 -2
  350. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  351. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  352. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js +91 -0
  353. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  354. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  355. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  356. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  357. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js +28 -0
  358. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  359. package/lib/{esm/appui-react/layout/footer/message-center/Message.scss → cjs/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  360. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  361. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +12 -6
  362. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  363. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  364. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  365. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  366. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  367. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  368. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  369. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  370. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  371. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  372. package/lib/cjs/appui-react/syncui/UiSyncEvent.js +2 -0
  373. package/lib/cjs/appui-react/syncui/UiSyncEvent.js.map +1 -1
  374. package/lib/cjs/appui-react/theme/ThemeManager.js +2 -2
  375. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  376. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  377. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  378. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  379. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +2 -1
  380. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  381. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +7 -5
  382. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  383. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  384. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  385. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +10 -17
  386. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  387. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  388. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  389. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  390. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  391. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  392. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  393. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js +2 -1
  394. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  395. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  396. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  397. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  398. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  399. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -4
  400. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  401. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  402. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  403. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  404. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  405. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  406. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  407. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  408. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  409. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  410. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +7 -9
  411. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  412. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  413. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  414. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  415. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  416. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  417. package/lib/cjs/appui-react/uistate/AppUiSettings.js +1 -0
  418. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  419. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  420. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
  421. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  422. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  423. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  424. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  425. package/lib/cjs/appui-react/widget-panels/Content.js +11 -10
  426. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  427. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts +13 -0
  428. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  429. package/lib/cjs/appui-react/widget-panels/DockedBar.js +18 -0
  430. package/lib/cjs/appui-react/widget-panels/DockedBar.js.map +1 -0
  431. package/lib/cjs/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  432. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  433. package/lib/cjs/appui-react/widget-panels/Frontstage.js +15 -18
  434. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  435. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  436. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  437. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts +0 -1
  438. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  439. package/lib/cjs/appui-react/widget-panels/StatusBar.js +2 -5
  440. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  441. package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
  442. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  443. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  444. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  445. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +28 -53
  446. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  447. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +4 -27
  448. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  449. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  450. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  451. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -1
  452. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  453. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  455. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  456. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  457. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  458. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  459. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -0
  460. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  461. package/lib/cjs/appui-react/widgets/WidgetDef.js +10 -11
  462. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  463. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  464. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  465. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +1 -6
  466. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  467. package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -8
  468. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  469. package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
  470. package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
  471. package/lib/cjs/appui-react.d.ts +1 -1
  472. package/lib/cjs/appui-react.d.ts.map +1 -1
  473. package/lib/cjs/appui-react.js +1 -1
  474. package/lib/cjs/appui-react.js.map +1 -1
  475. package/lib/esm/appui-react/UiFramework.d.ts +4 -1
  476. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  477. package/lib/esm/appui-react/UiFramework.js +13 -14
  478. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  479. package/lib/esm/appui-react/UiFramework.json +1 -1
  480. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  481. package/lib/esm/appui-react/accudraw/Calculator.js +3 -1
  482. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  483. package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  484. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  485. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  486. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  487. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  488. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  489. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  490. package/lib/esm/appui-react/backstage/BackstageComposer.js +2 -1
  491. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  492. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
  493. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  494. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  495. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  496. package/lib/esm/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  497. package/lib/esm/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  498. package/lib/esm/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  499. package/lib/esm/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +9 -3
  500. package/lib/esm/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  501. package/lib/{cjs/appui-react/childwindow/PopoutWidget.scss → esm/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  502. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  503. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  504. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  505. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  506. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  507. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  508. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  509. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  510. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +4 -15
  511. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  512. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  513. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  514. package/lib/esm/appui-react/content/ContentControl.d.ts +2 -0
  515. package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
  516. package/lib/esm/appui-react/content/ContentControl.js +1 -0
  517. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  518. package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -0
  519. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  520. package/lib/esm/appui-react/content/ContentLayout.js +14 -14
  521. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  522. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  523. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  524. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts +2 -2
  525. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  526. package/lib/esm/appui-react/content/FloatingViewportContent.js +2 -3
  527. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  528. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  529. package/lib/esm/appui-react/content/IModelViewport.js +7 -8
  530. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  531. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  532. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  533. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts +5 -5
  534. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  535. package/lib/esm/appui-react/content/InternalContentViewManager.js +6 -8
  536. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  537. package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
  538. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  539. package/lib/esm/appui-react/cursor/CursorInformation.d.ts +2 -0
  540. package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  541. package/lib/esm/appui-react/cursor/CursorInformation.js +2 -0
  542. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  543. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  544. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  545. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  546. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  547. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  548. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  549. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  550. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  551. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +5 -23
  552. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  553. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  554. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  555. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  556. package/lib/esm/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  557. package/lib/esm/appui-react/dialog/ContentDialog.js +8 -7
  558. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  559. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  560. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  561. package/lib/esm/appui-react/dialog/DialogManagerBase.js +6 -3
  562. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  563. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  564. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  565. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +2 -3
  566. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  567. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  568. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  569. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js +2 -2
  570. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  571. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  572. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  573. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +2 -3
  574. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  575. package/lib/esm/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  576. package/lib/esm/appui-react/dialog/ModelessDialog.js +3 -1
  577. package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
  578. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  579. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  580. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  581. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -0
  582. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  583. package/lib/esm/appui-react/feedback/ElementTooltip.js +6 -2
  584. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  585. package/lib/esm/appui-react/framework/FrameworkContent.d.ts +5 -0
  586. package/lib/esm/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  587. package/lib/esm/appui-react/framework/FrameworkContent.js +4 -0
  588. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  589. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  590. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  591. package/lib/esm/appui-react/framework/FrameworkDialogs.js +4 -0
  592. package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
  593. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  594. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  595. package/lib/esm/appui-react/framework/FrameworkFrontstages.js +8 -0
  596. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  597. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  598. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  599. package/lib/esm/appui-react/framework/FrameworkToolSettings.js +1 -0
  600. package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  601. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  602. package/lib/esm/appui-react/frontstage/FrontstageDef.js +23 -23
  603. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  604. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  605. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  606. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +46 -51
  607. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  608. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  609. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +7 -5
  610. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  611. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  612. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  613. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  614. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +1 -0
  615. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  616. package/lib/esm/appui-react/hooks/useActiveStageId.js +2 -1
  617. package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
  618. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  619. package/lib/esm/appui-react/hooks/useActiveViewport.js +2 -0
  620. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  621. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  622. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  623. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  624. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  625. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  626. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  627. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  628. package/lib/esm/appui-react/hooks/useUiVisibility.js +1 -0
  629. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  630. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  631. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  632. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  633. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  634. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  635. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  636. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  637. package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
  638. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  639. package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
  640. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  641. package/lib/esm/appui-react/layout/footer/_variables.scss +0 -2
  642. package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
  643. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  644. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
  645. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  646. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  647. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  648. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  649. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  650. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  651. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  652. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  653. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  654. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
  655. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  656. package/lib/esm/appui-react/layout/tool-settings/Docked.js +2 -2
  657. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  658. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +3 -13
  659. package/lib/esm/appui-react/layout/tool-settings/Handle.scss +2 -2
  660. package/lib/esm/appui-react/layout/tool-settings/Setting.js +1 -1
  661. package/lib/esm/appui-react/layout/tool-settings/Setting.js.map +1 -1
  662. package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -2
  663. package/lib/esm/appui-react/layout/widget/Button.d.ts +3 -2
  664. package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
  665. package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
  666. package/lib/esm/appui-react/layout/widget/ContentContainer.js +1 -1
  667. package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
  668. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +3 -3
  669. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  670. package/lib/esm/appui-react/layout/widget/ContentManager.js +7 -1
  671. package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
  672. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
  673. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  674. package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
  675. package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
  676. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
  677. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  678. package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
  679. package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
  680. package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
  681. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  682. package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
  683. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  684. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  685. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  686. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
  687. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  688. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  689. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  690. package/lib/esm/appui-react/messages/InputField.js +2 -1
  691. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  692. package/lib/esm/appui-react/messages/MessageManager.d.ts +12 -0
  693. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  694. package/lib/esm/appui-react/messages/MessageManager.js +18 -10
  695. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  696. package/lib/esm/appui-react/messages/MessageRenderer.js +7 -8
  697. package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -1
  698. package/lib/esm/appui-react/messages/Pointer.d.ts +2 -0
  699. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  700. package/lib/esm/appui-react/messages/Pointer.js +7 -9
  701. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  702. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  703. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  704. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -0
  705. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  706. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  707. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  708. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  709. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  710. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  711. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  712. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  713. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  714. package/lib/esm/appui-react/pickers/ListPicker.js +3 -1
  715. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  716. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +2 -0
  717. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  718. package/lib/esm/appui-react/pickers/ViewSelector.js +9 -14
  719. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  720. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  721. package/lib/esm/appui-react/popup/CardPopup.js +2 -3
  722. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  723. package/lib/esm/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  724. package/lib/esm/appui-react/popup/ComponentPopup.js +1 -1
  725. package/lib/esm/appui-react/popup/ComponentPopup.js.map +1 -1
  726. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  727. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  728. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  729. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  730. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  731. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +7 -4
  732. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  733. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  734. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
  735. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  736. package/lib/esm/appui-react/popup/PopupManager.d.ts +5 -1
  737. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  738. package/lib/esm/appui-react/popup/PopupManager.js +24 -24
  739. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  740. package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
  741. package/lib/esm/appui-react/popup/PositionPopup.js +1 -0
  742. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  743. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  744. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  745. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  746. package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -3
  747. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  748. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +7 -0
  749. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  750. package/lib/esm/appui-react/preview/PreviewFeatures.js +2 -1
  751. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  752. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  753. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  754. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  755. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  756. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  757. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  758. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  759. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  760. package/lib/esm/appui-react/preview/new-toolbars/Item.js +1 -1
  761. package/lib/esm/appui-react/preview/new-toolbars/Item.js.map +1 -1
  762. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  763. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  764. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  765. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  766. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  767. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  768. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  769. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +36 -0
  770. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  771. package/lib/{cjs/appui-react/layout/footer/message-center/_variables.scss → esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  772. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  773. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  774. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +21 -0
  775. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  776. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  777. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  778. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +22 -0
  779. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  780. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  781. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  782. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +41 -0
  783. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  784. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  785. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  786. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  787. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +25 -0
  788. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  789. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  790. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  791. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +14 -0
  792. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  793. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  794. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  795. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  796. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  797. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  798. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +8 -3
  799. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  800. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  801. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +1 -0
  802. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  803. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
  804. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  805. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +14 -23
  806. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  807. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  808. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  809. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -3
  810. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  811. package/lib/esm/appui-react/statusbar/StatusBar.js +21 -13
  812. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  813. package/lib/esm/appui-react/statusbar/StatusBar.scss +18 -0
  814. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  815. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -0
  816. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  817. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  818. package/lib/esm/appui-react/statusfields/ActivityCenter.js +3 -1
  819. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  820. package/lib/esm/appui-react/statusfields/SelectionScope.js +2 -2
  821. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  822. package/lib/esm/appui-react/statusfields/SelectionScope.scss +2 -2
  823. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  824. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  825. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js +87 -0
  826. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  827. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  828. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  829. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  830. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js +24 -0
  831. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  832. package/lib/{cjs/appui-react/layout/footer/message-center/Message.scss → esm/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  833. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  834. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -7
  835. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  836. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  837. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  838. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  839. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  840. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  841. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  842. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  843. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  844. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  845. package/lib/esm/appui-react/syncui/UiSyncEvent.js +2 -0
  846. package/lib/esm/appui-react/syncui/UiSyncEvent.js.map +1 -1
  847. package/lib/esm/appui-react/theme/ThemeManager.js +2 -2
  848. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  849. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  850. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  851. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  852. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +3 -2
  853. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  854. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +7 -5
  855. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  856. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  857. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  858. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +10 -17
  859. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  860. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  861. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  862. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  863. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  864. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  865. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  866. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js +2 -1
  867. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  868. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  869. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  870. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  871. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  872. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -3
  873. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  874. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  875. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  876. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  877. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  878. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  879. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  880. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  881. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  882. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  883. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +7 -9
  884. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  885. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  886. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  887. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  888. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  889. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  890. package/lib/esm/appui-react/uistate/AppUiSettings.js +1 -0
  891. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  892. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  893. package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
  894. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  895. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  896. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  897. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  898. package/lib/esm/appui-react/widget-panels/Content.js +11 -10
  899. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  900. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts +13 -0
  901. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  902. package/lib/esm/appui-react/widget-panels/DockedBar.js +14 -0
  903. package/lib/esm/appui-react/widget-panels/DockedBar.js.map +1 -0
  904. package/lib/esm/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  905. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  906. package/lib/esm/appui-react/widget-panels/Frontstage.js +15 -18
  907. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  908. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  909. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  910. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts +0 -1
  911. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  912. package/lib/esm/appui-react/widget-panels/StatusBar.js +2 -5
  913. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  914. package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
  915. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  916. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  917. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  918. package/lib/esm/appui-react/widget-panels/ToolSettings.js +27 -51
  919. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  920. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +4 -27
  921. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  922. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  923. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  924. package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -1
  925. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  926. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  927. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  928. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  929. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  930. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  931. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  932. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -0
  933. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  934. package/lib/esm/appui-react/widgets/WidgetDef.js +10 -11
  935. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  936. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  937. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  938. package/lib/esm/appui-react/widgets/WidgetManager.d.ts +1 -6
  939. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  940. package/lib/esm/appui-react/widgets/WidgetManager.js +1 -6
  941. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  942. package/lib/esm/appui-react/widgets/useWidget.js +1 -1
  943. package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
  944. package/lib/esm/appui-react.d.ts +1 -1
  945. package/lib/esm/appui-react.d.ts.map +1 -1
  946. package/lib/esm/appui-react.js +1 -1
  947. package/lib/esm/appui-react.js.map +1 -1
  948. package/lib/public/locales/en/UiFramework.json +1 -1
  949. package/package.json +12 -37
  950. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  951. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +0 -1
  952. package/lib/cjs/appui-react/layout/footer/Footer.d.ts +0 -33
  953. package/lib/cjs/appui-react/layout/footer/Footer.d.ts.map +0 -1
  954. package/lib/cjs/appui-react/layout/footer/Footer.js +0 -30
  955. package/lib/cjs/appui-react/layout/footer/Footer.js.map +0 -1
  956. package/lib/cjs/appui-react/layout/footer/Footer.scss +0 -61
  957. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  958. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  959. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js +0 -32
  960. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  961. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  962. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  963. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  964. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js +0 -33
  965. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  966. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  967. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  968. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  969. package/lib/cjs/appui-react/layout/footer/message-center/Message.js +0 -26
  970. package/lib/cjs/appui-react/layout/footer/message-center/Message.js.map +0 -1
  971. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  972. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  973. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js +0 -26
  974. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  975. package/lib/cjs/appui-react/layout/footer/message-center/Tab.scss +0 -60
  976. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +0 -46
  977. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  978. package/lib/cjs/appui-react/statusfields/MessageCenter.js +0 -132
  979. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +0 -1
  980. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  981. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +0 -1
  982. package/lib/esm/appui-react/layout/footer/Footer.d.ts +0 -33
  983. package/lib/esm/appui-react/layout/footer/Footer.d.ts.map +0 -1
  984. package/lib/esm/appui-react/layout/footer/Footer.js +0 -26
  985. package/lib/esm/appui-react/layout/footer/Footer.js.map +0 -1
  986. package/lib/esm/appui-react/layout/footer/Footer.scss +0 -61
  987. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  988. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  989. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js +0 -28
  990. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  991. package/lib/esm/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  992. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  993. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  994. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js +0 -29
  995. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  996. package/lib/esm/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  997. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  998. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  999. package/lib/esm/appui-react/layout/footer/message-center/Message.js +0 -22
  1000. package/lib/esm/appui-react/layout/footer/message-center/Message.js.map +0 -1
  1001. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  1002. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  1003. package/lib/esm/appui-react/layout/footer/message-center/Tab.js +0 -22
  1004. package/lib/esm/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  1005. package/lib/esm/appui-react/layout/footer/message-center/Tab.scss +0 -60
  1006. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +0 -46
  1007. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  1008. package/lib/esm/appui-react/statusfields/MessageCenter.js +0 -128
  1009. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.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 Popup\n */\n\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { RelativePosition } from \"@itwin/appui-abstract\";\nimport type { RequireAtLeastOne } from \"@itwin/core-bentley\";\nimport type { Orientation, SizeProps } from \"@itwin/core-react\";\nimport { DivWithOutsideClick, FocusTrap, Point, Size } from \"@itwin/core-react\";\nimport {\n Direction,\n ToolbarOpacitySetting,\n ToolbarPanelAlignment,\n} from \"@itwin/components-react\";\nimport { CursorPopup } from \"../cursor/cursorpopup/CursorPopup\";\nimport type { PopupPropsBase } from \"./PopupManager\";\nimport { PopupManager } from \"./PopupManager\";\nimport { PositionPopup } from \"./PositionPopup\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport { Toolbar } from \"../toolbar/Toolbar\";\nimport { WrapperContext } from \"../configurableui/ConfigurableUiContent\";\nimport { mapToPlacement, type Placement } from \"../utils/Placement\";\n\n/** Props for a popup toolbar\n * @beta */\nexport type ToolbarPopupProps = Omit<PopupPropsBase, \"el\"> & {\n items: ToolbarItem[];\n orientation: Orientation;\n onCancel: () => void;\n onItemExecuted: (item: any) => void;\n el?: HTMLElement;\n} & RequireAtLeastOne<{\n relativePosition: RelativePosition; // @deprecated in 4.11.x. Please use placement instead.\n placement: Placement;\n }>;\n\n/** @internal */\ninterface ToolbarPopupState {\n size: Size;\n}\n\n/** Popup component for Toolbar\n * @beta\n */\nexport class ToolbarPopup extends React.PureComponent<\n ToolbarPopupProps,\n ToolbarPopupState\n> {\n /** @internal */\n public static override contextType = WrapperContext;\n /** @internal */\n public declare context: React.ContextType<typeof WrapperContext>;\n\n /** @internal */\n public override readonly state = {\n size: new Size(-1, -1),\n };\n\n private _onSizeKnown = (newSize: SizeProps) => {\n // istanbul ignore else\n if (!this.state.size.equals(newSize))\n this.setState({ size: Size.create(newSize) });\n };\n\n private _handleKeyDown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ): void => {\n switch (event.key) {\n case Key.Escape.valueOf():\n this._cancel();\n break;\n }\n };\n\n private _cancel() {\n // istanbul ignore else\n if (this.props.onCancel) {\n this.props.onCancel();\n }\n }\n\n public override render() {\n let point = PopupManager.getPopupPosition(\n this.props.el ?? this.context,\n this.props.pt,\n new Point(),\n this.state.size\n );\n const popupRect = CursorPopup.getPopupRect(\n point,\n this.props.offset,\n this.state.size,\n this.props.placement ?? mapToPlacement(this.props.relativePosition)\n );\n point = new Point(popupRect.left, popupRect.top);\n return (\n <PositionPopup\n key={this.props.id}\n className=\"uifw-no-border\"\n point={point}\n onSizeKnown={this._onSizeKnown}\n >\n <DivWithOutsideClick\n onOutsideClick={this.props.onCancel}\n onKeyDown={this._handleKeyDown}\n >\n <FocusTrap active={true} returnFocusOnDeactivate={true}>\n <Toolbar\n expandsTo={Direction.Bottom}\n panelAlignment={ToolbarPanelAlignment.Start}\n items={this.props.items}\n useDragInteraction={true}\n toolbarOpacitySetting={ToolbarOpacitySetting.Defaults}\n onItemExecuted={this.props.onItemExecuted}\n />\n </FocusTrap>\n </DivWithOutsideClick>\n </PositionPopup>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ToolbarPopup.js","sourceRoot":"","sources":["../../../../src/appui-react/popup/ToolbarPopup.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 Popup\n */\n\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport type { RelativePosition } from \"@itwin/appui-abstract\";\nimport type { RequireAtLeastOne } from \"@itwin/core-bentley\";\nimport type { Orientation, SizeProps } from \"@itwin/core-react\";\nimport { DivWithOutsideClick, FocusTrap, Point, Size } from \"@itwin/core-react\";\nimport {\n Direction,\n ToolbarOpacitySetting,\n ToolbarPanelAlignment,\n} from \"@itwin/components-react\";\nimport { CursorPopup } from \"../cursor/cursorpopup/CursorPopup\";\nimport type { PopupPropsBase } from \"./PopupManager\";\nimport { PopupManager } from \"./PopupManager\";\nimport { PositionPopup } from \"./PositionPopup\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport { Toolbar } from \"../toolbar/Toolbar\";\nimport { WrapperContext } from \"../configurableui/ConfigurableUiContent\";\nimport { mapToPlacement, type Placement } from \"../utils/Placement\";\n\n/** Props for a popup toolbar\n * @beta */\nexport type ToolbarPopupProps = Omit<PopupPropsBase, \"el\"> & {\n items: ToolbarItem[];\n orientation: Orientation;\n onCancel: () => void;\n onItemExecuted: (item: any) => void;\n el?: HTMLElement;\n} & RequireAtLeastOne<{\n relativePosition: RelativePosition; // @deprecated in 4.11.x. Please use placement instead.\n placement: Placement;\n }>;\n\n/** @internal */\ninterface ToolbarPopupState {\n size: Size;\n}\n\n/** Popup component for Toolbar\n * @beta\n */\nexport class ToolbarPopup extends React.PureComponent<\n ToolbarPopupProps,\n ToolbarPopupState\n> {\n /** @internal */\n public static override contextType = WrapperContext;\n /** @internal */\n public declare context: React.ContextType<typeof WrapperContext>;\n\n /** @internal */\n public override readonly state = {\n size: new Size(-1, -1),\n };\n\n private _onSizeKnown = (newSize: SizeProps) => {\n // istanbul ignore else\n if (!this.state.size.equals(newSize))\n this.setState({ size: Size.create(newSize) });\n };\n\n private _handleKeyDown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ): void => {\n switch (event.key) {\n case Key.Escape.valueOf():\n this._cancel();\n break;\n }\n };\n\n private _cancel() {\n // istanbul ignore else\n if (this.props.onCancel) {\n this.props.onCancel();\n }\n }\n\n public override render() {\n let point = PopupManager.getPopupPosition(\n this.props.el ?? this.context,\n this.props.pt,\n new Point(),\n this.state.size\n );\n const popupRect = CursorPopup.getPopupRect(\n point,\n this.props.offset,\n this.state.size,\n this.props.placement ?? mapToPlacement(this.props.relativePosition)\n );\n point = new Point(popupRect.left, popupRect.top);\n return (\n <PositionPopup\n key={this.props.id}\n className=\"uifw-no-border\"\n point={point}\n onSizeKnown={this._onSizeKnown}\n >\n {/* eslint-disable-next-line deprecation/deprecation */}\n <DivWithOutsideClick\n onOutsideClick={this.props.onCancel}\n onKeyDown={this._handleKeyDown}\n >\n <FocusTrap active={true} returnFocusOnDeactivate={true}>\n <Toolbar\n expandsTo={Direction.Bottom}\n panelAlignment={ToolbarPanelAlignment.Start}\n items={this.props.items}\n useDragInteraction={true}\n toolbarOpacitySetting={ToolbarOpacitySetting.Defaults}\n onItemExecuted={this.props.onItemExecuted}\n />\n </FocusTrap>\n </DivWithOutsideClick>\n </PositionPopup>\n );\n }\n}\n"]}
@@ -2,6 +2,7 @@
2
2
  * @module Utilities
3
3
  */
4
4
  import * as React from "react";
5
+ import type { WidgetDef } from "../widgets/WidgetDef";
5
6
  /** List of known preview features. */
6
7
  interface KnownPreviewFeatures {
7
8
  /** If true, the panels and tool settings will always be rendered over the content.
@@ -39,6 +40,12 @@ interface KnownPreviewFeatures {
39
40
  };
40
41
  /** If true, the [[Toolbar]] component will be replaced by a new iTwinUI based toolbar. */
41
42
  newToolbars: boolean;
43
+ /** If `true`, popout widgets will not be rendered in a separate element tree, instead widget content will be re-parented to a popout content container.
44
+ * Alternatively, an array of widget ids can be provided to only re-parent specific widgets.
45
+ * @note Use {@link useTransientState} to save and restore DOM transient state when re-parenting widgets.
46
+ * @note There is a known limitation where iTwinUI v2 popover elements will be rendered in the main window. Prefer using iTwinUI v3 when using this feature.
47
+ */
48
+ reparentPopoutWidgets: boolean | WidgetDef["id"][];
42
49
  }
43
50
  /** List of preview features that can be enabled/disabled.
44
51
  * This list is expected to change over time, the interface is made
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewFeatures.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/preview/PreviewFeatures.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,sCAAsC;AACtC,UAAU,oBAAoB;IAC5B;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;OAGG;IACH,6BAA6B,EAAE,OAAO,CAAC;IACvC;;;OAGG;IACH,0BAA0B,EAAE,OAAO,CAAC;IACpC;;;OAGG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,oBAAoB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,0FAA0F;IAC1F,WAAW,EAAE,OAAO,CAAC;CACtB;AAeD;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,OAAO,CAAC,oBAAoB,CAAC;IACpE,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,CAAC;CAC5B;AAuDD;;GAEG;AACH,wBAAgB,kBAAkB,oBAEjC;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,QAAQ,EACR,QAAQ,GACT,EAAE,4BAA4B,qBAgB9B"}
1
+ {"version":3,"file":"PreviewFeatures.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/preview/PreviewFeatures.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,sCAAsC;AACtC,UAAU,oBAAoB;IAC5B;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;OAGG;IACH,6BAA6B,EAAE,OAAO,CAAC;IACvC;;;OAGG;IACH,0BAA0B,EAAE,OAAO,CAAC;IACpC;;;OAGG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,oBAAoB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,0FAA0F;IAC1F,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;CACpD;AAgBD;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,OAAO,CAAC,oBAAoB,CAAC;IACpE,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,CAAC;CAC5B;AAuDD;;GAEG;AACH,wBAAgB,kBAAkB,oBAEjC;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,QAAQ,EACR,QAAQ,GACT,EAAE,4BAA4B,qBAgB9B"}
@@ -20,6 +20,7 @@ const knownFeaturesObject = {
20
20
  horizontalPanelAlignment: undefined,
21
21
  widgetActionDropdown: undefined,
22
22
  newToolbars: undefined,
23
+ reparentPopoutWidgets: undefined,
23
24
  };
24
25
  /** Trim an object to only contain known feature keys.
25
26
  * @param previewFeatures object potentially containing unknown features
@@ -85,7 +86,7 @@ export function usePreviewFeatures() {
85
86
  export function PreviewFeaturesProvider({ children, features, }) {
86
87
  const setPreviewFeatures = usePreviewFeaturesStore((state) => state.setPreviewFeatures);
87
88
  React.useEffect(() => {
88
- setPreviewFeatures(features !== null && features !== void 0 ? features : {});
89
+ setPreviewFeatures(features ?? {});
89
90
  }, [features, setPreviewFeatures]);
90
91
  // Clear preview features when unmounting.
91
92
  React.useEffect(() => () => {
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewFeatures.js","sourceRoot":"","sources":["../../../../src/appui-react/preview/PreviewFeatures.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAuC7C;;GAEG;AACH,MAAM,mBAAmB,GAAkD;IACzE,kBAAkB,EAAE,SAAS;IAC7B,oBAAoB,EAAE,SAAS;IAC/B,6BAA6B,EAAE,SAAS;IACxC,0BAA0B,EAAE,SAAS;IACrC,wBAAwB,EAAE,SAAS;IACnC,oBAAoB,EAAE,SAAS;IAC/B,WAAW,EAAE,SAAS;CACvB,CAAC;AAYF;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,eAAgC;IAC/D,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,CAAC,OAAO,CACrD,eAAe,CAChB,CAAC,MAAM,CACN,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACjC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SACpB;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACnB;QACD,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,EAAE,EAAE,EAAE,CAAgC,CACxC,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3C,MAAM,CAAC,UAAU,CACf,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,EACnD,2EAA2E,EAC3E;YACE,eAAe;SAChB,CACF,CAAC;KACH;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAOD;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG,MAAM,CAAuB,CAAC,GAAG,EAAE,EAAE;IACnE,OAAO;QACL,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,CAAC,kBAAmC,EAAE,EAAE;YAC1D,MAAM,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;YACpE,GAAG,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,uBAAuB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC;AAUD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,uBAAuB,CAAC,EACtC,QAAQ,EACR,QAAQ,GACqB;IAC7B,MAAM,kBAAkB,GAAG,uBAAuB,CAChD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,kBAAkB,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEnC,0CAA0C;IAC1C,KAAK,CAAC,SAAS,CACb,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,EACD,CAAC,kBAAkB,CAAC,CACrB,CAAC;IACF,OAAO,0CAAG,QAAQ,CAAI,CAAC;AACzB,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 Utilities\n */\n\nimport * as React from \"react\";\nimport { create } from \"zustand\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** List of known preview features. */\ninterface KnownPreviewFeatures {\n /** If true, the panels and tool settings will always be rendered over the content.\n * The content will never change size.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/672\n */\n contentAlwaysMaxSize: boolean;\n /** If true, the floating widget will have a \"maximize\" button. Use `enableMaximizedPanelWidget` to enable the feature for panel widgets.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/673\n */\n enableMaximizedFloatingWidget: boolean;\n /** If true, the panel widget will have a \"maximize\" button. Use `enableMaximizedFloatingWidget` to enable the feature for floating widgets.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/673\n */\n enableMaximizedPanelWidget: boolean;\n /** If true, the active tab of a dragged widget will become active when dropped in a container.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/679\n */\n activateDroppedTab: boolean;\n /** If true, the horizontal panels will have an additional \"Align\" button.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/706\n */\n horizontalPanelAlignment: boolean;\n /** If enabled, a dropdown menu will be rendered for widgets that exceed the specified threshold of title bar buttons.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/723\n */\n widgetActionDropdown: { threshold: number };\n /** If true, the [[Toolbar]] component will be replaced by a new iTwinUI based toolbar. */\n newToolbars: boolean;\n}\n\n/** Object used trim to only known features at runtime.\n * @internal\n */\nconst knownFeaturesObject: Record<keyof KnownPreviewFeatures, undefined> = {\n activateDroppedTab: undefined,\n contentAlwaysMaxSize: undefined,\n enableMaximizedFloatingWidget: undefined,\n enableMaximizedPanelWidget: undefined,\n horizontalPanelAlignment: undefined,\n widgetActionDropdown: undefined,\n newToolbars: undefined,\n};\n\n/** List of preview features that can be enabled/disabled.\n * This list is expected to change over time, the interface is made\n * so that new features can be added or removed without breaking existing code.\n * A console warning will simply appear if unknown features are passed.\n * @beta\n */\nexport interface PreviewFeatures extends Partial<KnownPreviewFeatures> {\n [featureName: string]: any;\n}\n\n/** Trim an object to only contain known feature keys.\n * @param previewFeatures object potentially containing unknown features\n * @returns object containing only known features\n * @internal\n */\nfunction trimToKnownFeaturesOnly(previewFeatures: PreviewFeatures) {\n const knownFeatureKeys = Object.keys(knownFeaturesObject);\n const [knownFeatures, unknownFeatures] = Object.entries(\n previewFeatures\n ).reduce(\n ([known, unknown], [key, value]) => {\n if (knownFeatureKeys.includes(key)) {\n known[key] = value;\n } else {\n unknown.push(key);\n }\n return [known, unknown];\n },\n [{}, []] as [PreviewFeatures, string[]]\n );\n if (Object.keys(unknownFeatures).length > 0) {\n Logger.logWarning(\n UiFramework.loggerCategory(trimToKnownFeaturesOnly),\n `Features used in \"setPreviewFeatures\" are unknown or no longer in preview`,\n {\n unknownFeatures,\n }\n );\n }\n return knownFeatures;\n}\n\ninterface PreviewFeaturesState {\n previewFeatures: PreviewFeatures;\n setPreviewFeatures: (previewFeatures: PreviewFeatures) => void;\n}\n\n/** Preview features store used by `UiFramework.previewFeatures` and `UiFramework.setPreviewFeatures()` APIs to manage the preview features.\n * Use `usePreviewFeatures` hook to access the preview features set from a react component.\n * Use `usePreviewFeaturesStore.getState().previewFeatures` to access the preview features set from a non-react component.\n * Use `usePreviewFeaturesStore.subscribe()` to subscribe to changes to the preview features set from a non-react component.\n * @internal\n */\nconst usePreviewFeaturesStore = create<PreviewFeaturesState>((set) => {\n return {\n previewFeatures: {},\n setPreviewFeatures: (newPreviewFeatures: PreviewFeatures) => {\n const previewFeatures = trimToKnownFeaturesOnly(newPreviewFeatures);\n set({ previewFeatures });\n },\n };\n});\n\n/** Hook to access the preview features set.\n * @internal\n */\nexport function usePreviewFeatures() {\n return usePreviewFeaturesStore((state) => state.previewFeatures);\n}\n\n/** Props for PreviewFeaturesProvider.\n * @beta\n */\nexport interface PreviewFeaturesProviderProps {\n children?: React.ReactNode;\n features?: PreviewFeatures;\n}\n\n/** Set which preview features are enabled. These features are not yet ready for production use nor have\n * a proper API defined yet.\n * The available set of features are defined in the [[PreviewFeatures]] interface.\n *\n * This component should wrap the Provider component.\n *\n * ```tsx\n * <PreviewFeaturesProvider features={{ enableMaximizedFloatingWidget: true }}>\n * <Provider store={UiFramework.store}>\n * [...]\n * <ConfigurableUIContent />\n * [/...]\n * </Provider>\n * </PreviewFeaturesProvider>\n * ```\n * @beta\n */\nexport function PreviewFeaturesProvider({\n children,\n features,\n}: PreviewFeaturesProviderProps) {\n const setPreviewFeatures = usePreviewFeaturesStore(\n (state) => state.setPreviewFeatures\n );\n React.useEffect(() => {\n setPreviewFeatures(features ?? {});\n }, [features, setPreviewFeatures]);\n\n // Clear preview features when unmounting.\n React.useEffect(\n () => () => {\n setPreviewFeatures({});\n },\n [setPreviewFeatures]\n );\n return <>{children}</>;\n}\n"]}
1
+ {"version":3,"file":"PreviewFeatures.js","sourceRoot":"","sources":["../../../../src/appui-react/preview/PreviewFeatures.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA+C7C;;GAEG;AACH,MAAM,mBAAmB,GAAkD;IACzE,kBAAkB,EAAE,SAAS;IAC7B,oBAAoB,EAAE,SAAS;IAC/B,6BAA6B,EAAE,SAAS;IACxC,0BAA0B,EAAE,SAAS;IACrC,wBAAwB,EAAE,SAAS;IACnC,oBAAoB,EAAE,SAAS;IAC/B,WAAW,EAAE,SAAS;IACtB,qBAAqB,EAAE,SAAS;CACjC,CAAC;AAYF;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,eAAgC;IAC/D,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,CAAC,OAAO,CACrD,eAAe,CAChB,CAAC,MAAM,CACN,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACjC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SACpB;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACnB;QACD,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,EAAE,EAAE,EAAE,CAAgC,CACxC,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3C,MAAM,CAAC,UAAU,CACf,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,EACnD,2EAA2E,EAC3E;YACE,eAAe;SAChB,CACF,CAAC;KACH;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAOD;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG,MAAM,CAAuB,CAAC,GAAG,EAAE,EAAE;IACnE,OAAO;QACL,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,CAAC,kBAAmC,EAAE,EAAE;YAC1D,MAAM,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;YACpE,GAAG,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,uBAAuB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC;AAUD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,uBAAuB,CAAC,EACtC,QAAQ,EACR,QAAQ,GACqB;IAC7B,MAAM,kBAAkB,GAAG,uBAAuB,CAChD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,kBAAkB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEnC,0CAA0C;IAC1C,KAAK,CAAC,SAAS,CACb,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,EACD,CAAC,kBAAkB,CAAC,CACrB,CAAC;IACF,OAAO,0CAAG,QAAQ,CAAI,CAAC;AACzB,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 Utilities\n */\n\nimport * as React from \"react\";\nimport { create } from \"zustand\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { useTransientState } from \"../widget-panels/useTransientState\";\nimport type { WidgetDef } from \"../widgets/WidgetDef\";\n\n/** List of known preview features. */\ninterface KnownPreviewFeatures {\n /** If true, the panels and tool settings will always be rendered over the content.\n * The content will never change size.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/672\n */\n contentAlwaysMaxSize: boolean;\n /** If true, the floating widget will have a \"maximize\" button. Use `enableMaximizedPanelWidget` to enable the feature for panel widgets.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/673\n */\n enableMaximizedFloatingWidget: boolean;\n /** If true, the panel widget will have a \"maximize\" button. Use `enableMaximizedFloatingWidget` to enable the feature for floating widgets.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/673\n */\n enableMaximizedPanelWidget: boolean;\n /** If true, the active tab of a dragged widget will become active when dropped in a container.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/679\n */\n activateDroppedTab: boolean;\n /** If true, the horizontal panels will have an additional \"Align\" button.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/706\n */\n horizontalPanelAlignment: boolean;\n /** If enabled, a dropdown menu will be rendered for widgets that exceed the specified threshold of title bar buttons.\n *\n * Discuss or upvote this feature: https://github.com/iTwin/appui/discussions/723\n */\n widgetActionDropdown: { threshold: number };\n /** If true, the [[Toolbar]] component will be replaced by a new iTwinUI based toolbar. */\n newToolbars: boolean;\n /** If `true`, popout widgets will not be rendered in a separate element tree, instead widget content will be re-parented to a popout content container.\n * Alternatively, an array of widget ids can be provided to only re-parent specific widgets.\n * @note Use {@link useTransientState} to save and restore DOM transient state when re-parenting widgets.\n * @note There is a known limitation where iTwinUI v2 popover elements will be rendered in the main window. Prefer using iTwinUI v3 when using this feature.\n */\n reparentPopoutWidgets: boolean | WidgetDef[\"id\"][];\n}\n\n/** Object used trim to only known features at runtime.\n * @internal\n */\nconst knownFeaturesObject: Record<keyof KnownPreviewFeatures, undefined> = {\n activateDroppedTab: undefined,\n contentAlwaysMaxSize: undefined,\n enableMaximizedFloatingWidget: undefined,\n enableMaximizedPanelWidget: undefined,\n horizontalPanelAlignment: undefined,\n widgetActionDropdown: undefined,\n newToolbars: undefined,\n reparentPopoutWidgets: undefined,\n};\n\n/** List of preview features that can be enabled/disabled.\n * This list is expected to change over time, the interface is made\n * so that new features can be added or removed without breaking existing code.\n * A console warning will simply appear if unknown features are passed.\n * @beta\n */\nexport interface PreviewFeatures extends Partial<KnownPreviewFeatures> {\n [featureName: string]: any;\n}\n\n/** Trim an object to only contain known feature keys.\n * @param previewFeatures object potentially containing unknown features\n * @returns object containing only known features\n * @internal\n */\nfunction trimToKnownFeaturesOnly(previewFeatures: PreviewFeatures) {\n const knownFeatureKeys = Object.keys(knownFeaturesObject);\n const [knownFeatures, unknownFeatures] = Object.entries(\n previewFeatures\n ).reduce(\n ([known, unknown], [key, value]) => {\n if (knownFeatureKeys.includes(key)) {\n known[key] = value;\n } else {\n unknown.push(key);\n }\n return [known, unknown];\n },\n [{}, []] as [PreviewFeatures, string[]]\n );\n if (Object.keys(unknownFeatures).length > 0) {\n Logger.logWarning(\n UiFramework.loggerCategory(trimToKnownFeaturesOnly),\n `Features used in \"setPreviewFeatures\" are unknown or no longer in preview`,\n {\n unknownFeatures,\n }\n );\n }\n return knownFeatures;\n}\n\ninterface PreviewFeaturesState {\n previewFeatures: PreviewFeatures;\n setPreviewFeatures: (previewFeatures: PreviewFeatures) => void;\n}\n\n/** Preview features store used by `UiFramework.previewFeatures` and `UiFramework.setPreviewFeatures()` APIs to manage the preview features.\n * Use `usePreviewFeatures` hook to access the preview features set from a react component.\n * Use `usePreviewFeaturesStore.getState().previewFeatures` to access the preview features set from a non-react component.\n * Use `usePreviewFeaturesStore.subscribe()` to subscribe to changes to the preview features set from a non-react component.\n * @internal\n */\nconst usePreviewFeaturesStore = create<PreviewFeaturesState>((set) => {\n return {\n previewFeatures: {},\n setPreviewFeatures: (newPreviewFeatures: PreviewFeatures) => {\n const previewFeatures = trimToKnownFeaturesOnly(newPreviewFeatures);\n set({ previewFeatures });\n },\n };\n});\n\n/** Hook to access the preview features set.\n * @internal\n */\nexport function usePreviewFeatures() {\n return usePreviewFeaturesStore((state) => state.previewFeatures);\n}\n\n/** Props for PreviewFeaturesProvider.\n * @beta\n */\nexport interface PreviewFeaturesProviderProps {\n children?: React.ReactNode;\n features?: PreviewFeatures;\n}\n\n/** Set which preview features are enabled. These features are not yet ready for production use nor have\n * a proper API defined yet.\n * The available set of features are defined in the [[PreviewFeatures]] interface.\n *\n * This component should wrap the Provider component.\n *\n * ```tsx\n * <PreviewFeaturesProvider features={{ enableMaximizedFloatingWidget: true }}>\n * <Provider store={UiFramework.store}>\n * [...]\n * <ConfigurableUIContent />\n * [/...]\n * </Provider>\n * </PreviewFeaturesProvider>\n * ```\n * @beta\n */\nexport function PreviewFeaturesProvider({\n children,\n features,\n}: PreviewFeaturesProviderProps) {\n const setPreviewFeatures = usePreviewFeaturesStore(\n (state) => state.setPreviewFeatures\n );\n React.useEffect(() => {\n setPreviewFeatures(features ?? {});\n }, [features, setPreviewFeatures]);\n\n // Clear preview features when unmounting.\n React.useEffect(\n () => () => {\n setPreviewFeatures({});\n },\n [setPreviewFeatures]\n );\n return <>{children}</>;\n}\n"]}
@@ -24,7 +24,7 @@ export function useIsMaximizedWidget() {
24
24
  export function useMaximizedPanelLayout(side) {
25
25
  const location = useMaximizedPanelWidgetLocation();
26
26
  return {
27
- "uifw-preview-enableMaximizedWidget_panel-layout": (location === null || location === void 0 ? void 0 : location.side) === side,
27
+ "uifw-preview-enableMaximizedWidget_panel-layout": location?.side === side,
28
28
  };
29
29
  }
30
30
  /** @internal */
@@ -48,7 +48,7 @@ export function useMaximizedSection(widgetId) {
48
48
  }
49
49
  function useIsMaximizedPanel(side) {
50
50
  const location = useMaximizedPanelWidgetLocation();
51
- return (location === null || location === void 0 ? void 0 : location.side) === side;
51
+ return location?.side === side;
52
52
  }
53
53
  function useMaximizedPanelWidgetLocation() {
54
54
  const location = useMaximizedWidgetLocation();
@@ -1 +1 @@
1
- {"version":3,"file":"useMaximizedWidget.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/enable-maximized-widget/useMaximizedWidget.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 \"./useMaximizedWidget.scss\";\nimport * as React from \"react\";\nimport { WidgetIdContext } from \"../../layout/widget/Widget\";\nimport { MaximizedWidgetContext } from \"./MaximizedWidget\";\nimport { useLayout } from \"../../layout/base/LayoutStore\";\nimport {\n getWidgetLocation,\n isPanelWidgetLocation,\n} from \"../../layout/state/WidgetLocation\";\nimport type { WidgetState } from \"../../layout/state/WidgetState\";\nimport type { PanelSide } from \"../../layout/widget-panels/PanelTypes\";\nimport { usePreviewFeatures } from \"../PreviewFeatures\";\n\n/** @internal */\nexport function useIsMaximizedWidget() {\n const widgetId = React.useContext(WidgetIdContext);\n const maximizedWidgetId = useMaximizedWidgetId();\n if (maximizedWidgetId === undefined) return false;\n\n return widgetId === maximizedWidgetId;\n}\n\n/** @internal */\nexport function useMaximizedPanelLayout(side: PanelSide) {\n const location = useMaximizedPanelWidgetLocation();\n return {\n \"uifw-preview-enableMaximizedWidget_panel-layout\": location?.side === side,\n };\n}\n\n/** @internal */\nexport function useMaximizedPanel(side: PanelSide) {\n const isMaximized = useIsMaximizedPanel(side);\n if (!isMaximized) return undefined;\n return {\n \"uifw-preview-enableMaximizedWidget_panel\": isMaximized,\n };\n}\n\n/** @internal */\nexport function useMaximizedSection(widgetId: WidgetState[\"id\"]) {\n const location = useMaximizedPanelWidgetLocation();\n if (!location) return undefined;\n\n return {\n \"uifw-preview-enableMaximizedWidget_section\":\n location.widgetId === widgetId,\n \"uifw-preview-enableMaximizedWidget_section-sibling\":\n location.widgetId !== widgetId,\n };\n}\n\nfunction useIsMaximizedPanel(side: PanelSide) {\n const location = useMaximizedPanelWidgetLocation();\n return location?.side === side;\n}\n\nfunction useMaximizedPanelWidgetLocation() {\n const location = useMaximizedWidgetLocation();\n\n if (!location) return undefined;\n if (!isPanelWidgetLocation(location)) return undefined;\n\n return location;\n}\n\nfunction useMaximizedWidgetLocation() {\n const widgetId = useMaximizedWidgetId();\n const location = useLayout((state) => {\n if (!widgetId) return undefined;\n return getWidgetLocation(state, widgetId);\n }, true);\n\n if (!widgetId || !location) return undefined;\n return { ...location, widgetId };\n}\n\nfunction useMaximizedWidgetId() {\n const { maximizedWidget } = React.useContext(MaximizedWidgetContext);\n const preview = usePreviewFeatures();\n const enabled =\n preview.enableMaximizedFloatingWidget || preview.enableMaximizedPanelWidget;\n if (!enabled) return undefined;\n\n return maximizedWidget;\n}\n\n/** @internal */\nexport function useMaximizedFloatingWidget() {\n const isMaximizedWidget = useIsMaximizedWidget();\n if (!isMaximizedWidget)\n return {\n style: {},\n classNames: {},\n };\n\n return {\n style: {\n transform: \"unset\",\n height: \"unset\",\n width: \"unset\",\n \"max-height\": \"unset\",\n \"max-width\": \"unset\",\n },\n classNames: { \"uifw-preview-enableMaximizedWidget_floatingWidget\": true },\n };\n}\n\n/** @internal */\nexport function useMaximizedWidgetTabBarHandle() {\n const isMaximizedWidget = useIsMaximizedWidget();\n return {\n \"uifw-preview-enableMaximizedWidget_widget-tabBar\": isMaximizedWidget,\n };\n}\n"]}
1
+ {"version":3,"file":"useMaximizedWidget.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/enable-maximized-widget/useMaximizedWidget.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 \"./useMaximizedWidget.scss\";\nimport * as React from \"react\";\nimport { WidgetIdContext } from \"../../layout/widget/Widget\";\nimport { MaximizedWidgetContext } from \"./MaximizedWidget\";\nimport { useLayout } from \"../../layout/base/LayoutStore\";\nimport {\n getWidgetLocation,\n isPanelWidgetLocation,\n} from \"../../layout/state/WidgetLocation\";\nimport type { WidgetState } from \"../../layout/state/WidgetState\";\nimport type { PanelSide } from \"../../layout/widget-panels/PanelTypes\";\nimport { usePreviewFeatures } from \"../PreviewFeatures\";\n\n/** @internal */\nexport function useIsMaximizedWidget() {\n const widgetId = React.useContext(WidgetIdContext);\n const maximizedWidgetId = useMaximizedWidgetId();\n if (maximizedWidgetId === undefined) return false;\n\n return widgetId === maximizedWidgetId;\n}\n\n/** @internal */\nexport function useMaximizedPanelLayout(side: PanelSide) {\n const location = useMaximizedPanelWidgetLocation();\n return {\n \"uifw-preview-enableMaximizedWidget_panel-layout\": location?.side === side,\n };\n}\n\n/** @internal */\nexport function useMaximizedPanel(side: PanelSide) {\n const isMaximized = useIsMaximizedPanel(side);\n if (!isMaximized) return undefined;\n return {\n \"uifw-preview-enableMaximizedWidget_panel\": isMaximized,\n };\n}\n\n/** @internal */\nexport function useMaximizedSection(widgetId: WidgetState[\"id\"]) {\n const location = useMaximizedPanelWidgetLocation();\n if (!location) return undefined;\n\n return {\n \"uifw-preview-enableMaximizedWidget_section\":\n location.widgetId === widgetId,\n \"uifw-preview-enableMaximizedWidget_section-sibling\":\n location.widgetId !== widgetId,\n };\n}\n\nfunction useIsMaximizedPanel(side: PanelSide) {\n const location = useMaximizedPanelWidgetLocation();\n return location?.side === side;\n}\n\nfunction useMaximizedPanelWidgetLocation() {\n const location = useMaximizedWidgetLocation();\n\n if (!location) return undefined;\n if (!isPanelWidgetLocation(location)) return undefined;\n\n return location;\n}\n\nfunction useMaximizedWidgetLocation() {\n const widgetId = useMaximizedWidgetId();\n const location = useLayout((state) => {\n if (!widgetId) return undefined;\n return getWidgetLocation(state, widgetId);\n }, true);\n\n if (!widgetId || !location) return undefined;\n return { ...location, widgetId };\n}\n\nfunction useMaximizedWidgetId() {\n const { maximizedWidget } = React.useContext(MaximizedWidgetContext);\n const preview = usePreviewFeatures();\n const enabled =\n preview.enableMaximizedFloatingWidget || preview.enableMaximizedPanelWidget;\n if (!enabled) return undefined;\n\n return maximizedWidget;\n}\n\n/** @internal */\nexport function useMaximizedFloatingWidget() {\n const isMaximizedWidget = useIsMaximizedWidget();\n if (!isMaximizedWidget)\n return {\n style: {},\n classNames: {},\n };\n\n return {\n style: {\n transform: \"unset\",\n height: \"unset\",\n width: \"unset\",\n \"max-height\": \"unset\",\n \"max-width\": \"unset\",\n },\n classNames: { \"uifw-preview-enableMaximizedWidget_floatingWidget\": true },\n };\n}\n\n/** @internal */\nexport function useMaximizedWidgetTabBarHandle() {\n const isMaximizedWidget = useIsMaximizedWidget();\n return {\n \"uifw-preview-enableMaximizedWidget_widget-tabBar\": isMaximizedWidget,\n };\n}\n"]}
@@ -86,7 +86,7 @@ export function PreviewHorizontalPanelAlignButton() {
86
86
  ].map((align) => {
87
87
  return (React.createElement(MenuItem, { key: align, onClick: () => {
88
88
  setAlignment(side, align);
89
- onClose === null || onClose === void 0 ? void 0 : onClose();
89
+ onClose?.();
90
90
  }, icon: getIcon(side, align), isSelected: alignments[side] === align }, capitalize(align)));
91
91
  });
92
92
  const dropdownContext = React.useContext(WidgetActionDropdownContext);
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewHorizontalPanelAlign.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.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 * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { HorizontalAlignment } from \"@itwin/core-react\";\nimport { DropdownMenu, MenuItem } from \"@itwin/itwinui-react\";\nimport {\n isHorizontalPanelSide,\n PanelSideContext,\n} from \"../../layout/widget-panels/Panel\";\nimport type {\n HorizontalPanelSide,\n PanelSide,\n} from \"../../layout/widget-panels/PanelTypes\";\nimport { WidgetActionDropdownContext } from \"../widget-action-dropdown/MoreButton\";\nimport { TabBarButton } from \"../../layout/widget/Button\";\nimport { useMainPanelWidgetId } from \"../../layout/widget/usePanelWidgetId\";\nimport { useIsMaximizedWidget } from \"../enable-maximized-widget/useMaximizedWidget\";\n\n/** Default value used when not provided or disabled. */\nconst defaultAlignments = {\n top: HorizontalAlignment.Justify,\n bottom: HorizontalAlignment.Justify,\n};\n\n/** @internal */\nexport const HorizontalPanelAlignContext = React.createContext<{\n enabled: boolean;\n alignments: {\n [side in HorizontalPanelSide]: HorizontalAlignment;\n };\n setAlignment: (\n panel: PanelSide | undefined,\n alignment: HorizontalAlignment\n ) => void;\n}>({\n enabled: false,\n alignments: defaultAlignments,\n setAlignment: () => {},\n});\n\n/** Preview horizontal panel alignment feature provider.\n * @internal\n */\nexport function PreviewHorizontalPanelAlignFeatureProvider({\n enabled,\n children,\n}: {\n enabled?: boolean;\n children?: React.ReactNode;\n}) {\n const [alignments, setAlignments] = React.useState<{\n [x in HorizontalPanelSide]: HorizontalAlignment;\n }>({\n top: HorizontalAlignment.Justify,\n bottom: HorizontalAlignment.Justify,\n });\n const setAlignment = React.useCallback(\n (panel: PanelSide | undefined, alignment: HorizontalAlignment) => {\n if (!panel || !isHorizontalPanelSide(panel)) return;\n setAlignments((prev) => ({\n ...prev,\n [panel]: alignment,\n }));\n },\n []\n );\n return (\n <HorizontalPanelAlignContext.Provider\n value={{\n enabled: !!enabled,\n alignments: enabled ? alignments : defaultAlignments,\n setAlignment,\n }}\n >\n {children}\n </HorizontalPanelAlignContext.Provider>\n );\n}\n\nfunction SvgSide(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm11 7H1V3h10v6Zm4 4h-3V3h3v10Z\" />\n </svg>\n );\n}\n\nfunction SvgJustify(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm4 7H1V3h3v6Zm1 0V3h6v6H5Zm10 0h-3V3h3v6Z\" />\n </svg>\n );\n}\n\nfunction SvgCenter(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm4 11H1V3h3v10Zm1-4V3h6v6H5Zm10 4h-3V3h3v10Z\" />\n </svg>\n );\n}\n\nfunction getIcon(side: HorizontalPanelSide, alignment: HorizontalAlignment) {\n const scaleY = side === \"top\" ? \"-1\" : \"1\";\n if (alignment === HorizontalAlignment.Justify)\n return <SvgJustify transform={`scale(1, ${scaleY})`} />;\n if (alignment === HorizontalAlignment.Center)\n return <SvgCenter transform={`scale(1, ${scaleY})`} />;\n const scaleX = alignment === HorizontalAlignment.Left ? \"1\" : \"-1\";\n return <SvgSide transform={`scale(${scaleX}, ${scaleY})`} />;\n}\n\nfunction capitalize(s: string) {\n return s.charAt(0).toUpperCase() + s.slice(1);\n}\n\n/** @internal */\nexport function PreviewHorizontalPanelAlignButton() {\n const side = React.useContext(PanelSideContext);\n assert(!!side);\n assert(isHorizontalPanelSide(side));\n const { alignments, setAlignment } = React.useContext(\n HorizontalPanelAlignContext\n );\n const title = \"Align panel\";\n\n const getMenuItems = (onClose?: () => void) =>\n [\n HorizontalAlignment.Justify,\n HorizontalAlignment.Center,\n HorizontalAlignment.Left,\n HorizontalAlignment.Right,\n ].map((align) => {\n return (\n <MenuItem\n key={align}\n onClick={() => {\n setAlignment(side, align);\n onClose?.();\n }}\n icon={getIcon(side, align)}\n isSelected={alignments[side] === align}\n >\n {capitalize(align)}\n </MenuItem>\n );\n });\n const dropdownContext = React.useContext(WidgetActionDropdownContext);\n if (dropdownContext !== undefined) {\n return (\n <MenuItem\n icon={getIcon(side, alignments[side])}\n subMenuItems={getMenuItems()}\n >\n {title}\n </MenuItem>\n );\n }\n return (\n <DropdownMenu menuItems={(close) => getMenuItems(close)}>\n <TabBarButton title={title}>\n {getIcon(side, alignments[side])}\n </TabBarButton>\n </DropdownMenu>\n );\n}\n\n/** @internal */\nexport function useHorizontalPanelAlignButton() {\n const side = React.useContext(PanelSideContext);\n const { enabled } = React.useContext(HorizontalPanelAlignContext);\n const isMainPanelWidget = !!useMainPanelWidgetId();\n const isMaximizedWidget = useIsMaximizedWidget();\n\n if (!side) return false;\n const isHorizontalPanel = isHorizontalPanelSide(side);\n return (\n enabled && isHorizontalPanel && isMainPanelWidget && !isMaximizedWidget\n );\n}\n"]}
1
+ {"version":3,"file":"PreviewHorizontalPanelAlign.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.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 * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { HorizontalAlignment } from \"@itwin/core-react\";\nimport { DropdownMenu, MenuItem } from \"@itwin/itwinui-react\";\nimport {\n isHorizontalPanelSide,\n PanelSideContext,\n} from \"../../layout/widget-panels/Panel\";\nimport type {\n HorizontalPanelSide,\n PanelSide,\n} from \"../../layout/widget-panels/PanelTypes\";\nimport { WidgetActionDropdownContext } from \"../widget-action-dropdown/MoreButton\";\nimport { TabBarButton } from \"../../layout/widget/Button\";\nimport { useMainPanelWidgetId } from \"../../layout/widget/usePanelWidgetId\";\nimport { useIsMaximizedWidget } from \"../enable-maximized-widget/useMaximizedWidget\";\n\n/** Default value used when not provided or disabled. */\nconst defaultAlignments = {\n top: HorizontalAlignment.Justify,\n bottom: HorizontalAlignment.Justify,\n};\n\n/** @internal */\nexport const HorizontalPanelAlignContext = React.createContext<{\n enabled: boolean;\n alignments: {\n [side in HorizontalPanelSide]: HorizontalAlignment;\n };\n setAlignment: (\n panel: PanelSide | undefined,\n alignment: HorizontalAlignment\n ) => void;\n}>({\n enabled: false,\n alignments: defaultAlignments,\n setAlignment: () => {},\n});\n\n/** Preview horizontal panel alignment feature provider.\n * @internal\n */\nexport function PreviewHorizontalPanelAlignFeatureProvider({\n enabled,\n children,\n}: {\n enabled?: boolean;\n children?: React.ReactNode;\n}) {\n const [alignments, setAlignments] = React.useState<{\n [x in HorizontalPanelSide]: HorizontalAlignment;\n }>({\n top: HorizontalAlignment.Justify,\n bottom: HorizontalAlignment.Justify,\n });\n const setAlignment = React.useCallback(\n (panel: PanelSide | undefined, alignment: HorizontalAlignment) => {\n if (!panel || !isHorizontalPanelSide(panel)) return;\n setAlignments((prev) => ({\n ...prev,\n [panel]: alignment,\n }));\n },\n []\n );\n return (\n <HorizontalPanelAlignContext.Provider\n value={{\n enabled: !!enabled,\n alignments: enabled ? alignments : defaultAlignments,\n setAlignment,\n }}\n >\n {children}\n </HorizontalPanelAlignContext.Provider>\n );\n}\n\nfunction SvgSide(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm11 7H1V3h10v6Zm4 4h-3V3h3v10Z\" />\n </svg>\n );\n}\n\nfunction SvgJustify(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm4 7H1V3h3v6Zm1 0V3h6v6H5Zm10 0h-3V3h3v6Z\" />\n </svg>\n );\n}\n\nfunction SvgCenter(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 16 16\"\n fill=\"var(--iui-color-icon-muted, currentColor)\"\n {...props}\n >\n <path d=\"M0 2v12h16V2H0Zm4 11H1V3h3v10Zm1-4V3h6v6H5Zm10 4h-3V3h3v10Z\" />\n </svg>\n );\n}\n\nfunction getIcon(side: HorizontalPanelSide, alignment: HorizontalAlignment) {\n const scaleY = side === \"top\" ? \"-1\" : \"1\";\n if (alignment === HorizontalAlignment.Justify)\n return <SvgJustify transform={`scale(1, ${scaleY})`} />;\n if (alignment === HorizontalAlignment.Center)\n return <SvgCenter transform={`scale(1, ${scaleY})`} />;\n const scaleX = alignment === HorizontalAlignment.Left ? \"1\" : \"-1\";\n return <SvgSide transform={`scale(${scaleX}, ${scaleY})`} />;\n}\n\nfunction capitalize(s: string) {\n return s.charAt(0).toUpperCase() + s.slice(1);\n}\n\n/** @internal */\nexport function PreviewHorizontalPanelAlignButton() {\n const side = React.useContext(PanelSideContext);\n assert(!!side);\n assert(isHorizontalPanelSide(side));\n const { alignments, setAlignment } = React.useContext(\n HorizontalPanelAlignContext\n );\n const title = \"Align panel\";\n\n const getMenuItems = (onClose?: () => void) =>\n [\n HorizontalAlignment.Justify,\n HorizontalAlignment.Center,\n HorizontalAlignment.Left,\n HorizontalAlignment.Right,\n ].map((align) => {\n return (\n <MenuItem\n key={align}\n onClick={() => {\n setAlignment(side, align);\n onClose?.();\n }}\n icon={getIcon(side, align)}\n isSelected={alignments[side] === align}\n >\n {capitalize(align)}\n </MenuItem>\n );\n });\n const dropdownContext = React.useContext(WidgetActionDropdownContext);\n if (dropdownContext !== undefined) {\n return (\n <MenuItem\n icon={getIcon(side, alignments[side])}\n subMenuItems={getMenuItems()}\n >\n {title}\n </MenuItem>\n );\n }\n return (\n <DropdownMenu menuItems={(close) => getMenuItems(close)}>\n <TabBarButton title={title}>\n {getIcon(side, alignments[side])}\n </TabBarButton>\n </DropdownMenu>\n );\n}\n\n/** @internal */\nexport function useHorizontalPanelAlignButton() {\n const side = React.useContext(PanelSideContext);\n const { enabled } = React.useContext(HorizontalPanelAlignContext);\n const isMainPanelWidget = !!useMainPanelWidgetId();\n const isMaximizedWidget = useIsMaximizedWidget();\n\n if (!side) return false;\n const isHorizontalPanel = isHorizontalPanelSide(side);\n return (\n enabled && isHorizontalPanel && isMainPanelWidget && !isMaximizedWidget\n );\n}\n"]}
@@ -25,7 +25,7 @@ export const CustomItem = React.forwardRef(function CustomItem({ item }, ref) {
25
25
  React.createElement(MenuExtraContent, { key: 0 }, item.panelContent),
26
26
  ];
27
27
  }, placement: placement, onVisibleChange: (newVisible) => {
28
- context === null || context === void 0 ? void 0 : context.setPopoverOpen(newVisible);
28
+ context?.setPopoverOpen(newVisible);
29
29
  } },
30
30
  React.createElement(Item, { ref: ref, item: item },
31
31
  React.createElement(ExpandIndicator, null))));
@@ -1 +1 @@
1
- {"version":3,"file":"CustomItem.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/CustomItem.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAO3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG;IAC/B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAEnE,IAAI,eAAe,EAAE;QACnB,OAAO,oBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,OAAO,GAAI,CAAC;KACxE;IACD,OAAO,CACL,oBAAC,YAAY,IACX,SAAS,EAAE,GAAG,EAAE;YACd,OAAO;gBACL,oBAAC,gBAAgB,IAAC,GAAG,EAAE,CAAC,IAAG,IAAI,CAAC,YAAY,CAAoB;aACjE,CAAC;QACJ,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;YAC9B,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,oBAAC,IAAI,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI;YACxB,oBAAC,eAAe,OAAG,CACd,CACM,CAChB,CAAC;AACJ,CAAC,CACF,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { DropdownMenu, MenuExtraContent } from \"@itwin/itwinui-react\";\nimport type { ToolbarCustomItem } from \"../../toolbar/ToolbarItem\";\nimport { ExpandIndicator } from \"./ExpandIndicator\";\nimport { Item } from \"./Item\";\nimport { GroupMenuItem, usePopoverPlacement } from \"./GroupItem\";\nimport { ToolGroupOverflowContext } from \"./OverflowButton\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface CustomItemProps {\n item: ToolbarCustomItem;\n}\n\n/** @internal */\nexport const CustomItem = React.forwardRef<HTMLButtonElement, CustomItemProps>(\n function CustomItem({ item }, ref) {\n const placement = usePopoverPlacement();\n const context = React.useContext(ToolbarContext);\n const overflowContext = React.useContext(ToolGroupOverflowContext);\n\n if (overflowContext) {\n return <GroupMenuItem item={item} onClose={overflowContext.onClose} />;\n }\n return (\n <DropdownMenu\n menuItems={() => {\n return [\n <MenuExtraContent key={0}>{item.panelContent}</MenuExtraContent>,\n ];\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <Item ref={ref} item={item}>\n <ExpandIndicator />\n </Item>\n </DropdownMenu>\n );\n }\n);\n"]}
1
+ {"version":3,"file":"CustomItem.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/CustomItem.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAO3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG;IAC/B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAEnE,IAAI,eAAe,EAAE;QACnB,OAAO,oBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,OAAO,GAAI,CAAC;KACxE;IACD,OAAO,CACL,oBAAC,YAAY,IACX,SAAS,EAAE,GAAG,EAAE;YACd,OAAO;gBACL,oBAAC,gBAAgB,IAAC,GAAG,EAAE,CAAC,IAAG,IAAI,CAAC,YAAY,CAAoB;aACjE,CAAC;QACJ,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;YAC9B,OAAO,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,oBAAC,IAAI,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI;YACxB,oBAAC,eAAe,OAAG,CACd,CACM,CAChB,CAAC;AACJ,CAAC,CACF,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { DropdownMenu, MenuExtraContent } from \"@itwin/itwinui-react\";\nimport type { ToolbarCustomItem } from \"../../toolbar/ToolbarItem\";\nimport { ExpandIndicator } from \"./ExpandIndicator\";\nimport { Item } from \"./Item\";\nimport { GroupMenuItem, usePopoverPlacement } from \"./GroupItem\";\nimport { ToolGroupOverflowContext } from \"./OverflowButton\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface CustomItemProps {\n item: ToolbarCustomItem;\n}\n\n/** @internal */\nexport const CustomItem = React.forwardRef<HTMLButtonElement, CustomItemProps>(\n function CustomItem({ item }, ref) {\n const placement = usePopoverPlacement();\n const context = React.useContext(ToolbarContext);\n const overflowContext = React.useContext(ToolGroupOverflowContext);\n\n if (overflowContext) {\n return <GroupMenuItem item={item} onClose={overflowContext.onClose} />;\n }\n return (\n <DropdownMenu\n menuItems={() => {\n return [\n <MenuExtraContent key={0}>{item.panelContent}</MenuExtraContent>,\n ];\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <Item ref={ref} item={item}>\n <ExpandIndicator />\n </Item>\n </DropdownMenu>\n );\n }\n);\n"]}
@@ -26,7 +26,7 @@ export const GroupItem = React.forwardRef(function GroupItem({ item }, ref) {
26
26
  return (React.createElement(DropdownMenu, { menuItems: (close) => {
27
27
  return toMenuItems(item, close);
28
28
  }, placement: placement, onVisibleChange: (newVisible) => {
29
- context === null || context === void 0 ? void 0 : context.setPopoverOpen(newVisible);
29
+ context?.setPopoverOpen(newVisible);
30
30
  } },
31
31
  React.createElement(Item, { item: item, ref: ref },
32
32
  React.createElement(ExpandIndicator, null))));
@@ -52,7 +52,7 @@ export function GroupMenuItem({ item, onClose }) {
52
52
  return (React.createElement(MenuItem, { startIcon: React.createElement(Icon, { iconSpec: iconSpec }), disabled: isDisabled, subMenuItems: subMenuItems, onClick: () => {
53
53
  if (isToolbarActionItem(item)) {
54
54
  item.execute();
55
- onClose === null || onClose === void 0 ? void 0 : onClose();
55
+ onClose?.();
56
56
  }
57
57
  }, isSelected: isActive },
58
58
  React.createElement(Badge, { badge: item.badge }),
@@ -1 +1 @@
1
- {"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/GroupItem.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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { Icon } from \"@itwin/core-react\";\nimport { DropdownMenu, MenuExtraContent, MenuItem } from \"@itwin/itwinui-react\";\nimport type { ToolbarItem } from \"../../toolbar/ToolbarItem\";\nimport {\n isToolbarActionItem,\n isToolbarCustomItem,\n isToolbarGroupItem,\n type ToolbarGroupItem,\n} from \"../../toolbar/ToolbarItem\";\nimport { useConditionalValue } from \"../../hooks/useConditionalValue\";\nimport { ExpandIndicator } from \"./ExpandIndicator\";\nimport { Item } from \"./Item\";\nimport { Badge } from \"./Badge\";\nimport { ToolGroupOverflowContext } from \"./OverflowButton\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface GroupItemProps {\n item: ToolbarGroupItem;\n}\n\n/** @internal */\nexport const GroupItem = React.forwardRef<HTMLButtonElement, GroupItemProps>(\n function GroupItem({ item }, ref) {\n const placement = usePopoverPlacement();\n const context = React.useContext(ToolbarContext);\n const overflowContext = React.useContext(ToolGroupOverflowContext);\n\n if (overflowContext) {\n return <GroupMenuItem item={item} onClose={overflowContext.onClose} />;\n }\n return (\n <DropdownMenu\n menuItems={(close) => {\n return toMenuItems(item, close);\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <Item item={item} ref={ref}>\n <ExpandIndicator />\n </Item>\n </DropdownMenu>\n );\n }\n);\n\n/** @internal */\nexport function usePopoverPlacement() {\n const context = React.useContext(ToolbarContext);\n if (!context) return undefined;\n\n return `${context.expandsTo}-${context.panelAlignment}` as const;\n}\n\ninterface GroupMenuItemProps {\n item: ToolbarItem;\n onClose?: () => void;\n}\n\n/** @internal */\nexport function GroupMenuItem({ item, onClose }: GroupMenuItemProps) {\n const iconSpec = useConditionalValue(item.icon);\n const label = useConditionalValue(item.label);\n const isDisabled = useConditionalValue(item.isDisabled);\n const isHidden = useConditionalValue(item.isHidden);\n const isActive = useConditionalValue(item.isActive);\n\n if (isHidden) {\n return null;\n }\n\n const subMenuItems = isDisabled ? undefined : toMenuItems(item, onClose);\n return (\n <MenuItem\n startIcon={<Icon iconSpec={iconSpec} />}\n disabled={isDisabled}\n subMenuItems={subMenuItems}\n onClick={() => {\n if (isToolbarActionItem(item)) {\n item.execute();\n onClose?.();\n }\n }}\n isSelected={isActive}\n >\n <Badge badge={item.badge} />\n {label}\n </MenuItem>\n );\n}\n\nfunction toMenuItems(item: ToolbarItem, onClose?: () => void) {\n if (isToolbarGroupItem(item)) {\n return item.items.map((groupItem) => {\n return (\n <GroupMenuItem key={groupItem.id} item={groupItem} onClose={onClose} />\n );\n });\n }\n if (isToolbarCustomItem(item)) {\n return [\n <MenuExtraContent key={item.id}>{item.panelContent}</MenuExtraContent>,\n ];\n }\n return [];\n}\n"]}
1
+ {"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/GroupItem.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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { Icon } from \"@itwin/core-react\";\nimport { DropdownMenu, MenuExtraContent, MenuItem } from \"@itwin/itwinui-react\";\nimport type { ToolbarItem } from \"../../toolbar/ToolbarItem\";\nimport {\n isToolbarActionItem,\n isToolbarCustomItem,\n isToolbarGroupItem,\n type ToolbarGroupItem,\n} from \"../../toolbar/ToolbarItem\";\nimport { useConditionalValue } from \"../../hooks/useConditionalValue\";\nimport { ExpandIndicator } from \"./ExpandIndicator\";\nimport { Item } from \"./Item\";\nimport { Badge } from \"./Badge\";\nimport { ToolGroupOverflowContext } from \"./OverflowButton\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface GroupItemProps {\n item: ToolbarGroupItem;\n}\n\n/** @internal */\nexport const GroupItem = React.forwardRef<HTMLButtonElement, GroupItemProps>(\n function GroupItem({ item }, ref) {\n const placement = usePopoverPlacement();\n const context = React.useContext(ToolbarContext);\n const overflowContext = React.useContext(ToolGroupOverflowContext);\n\n if (overflowContext) {\n return <GroupMenuItem item={item} onClose={overflowContext.onClose} />;\n }\n return (\n <DropdownMenu\n menuItems={(close) => {\n return toMenuItems(item, close);\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <Item item={item} ref={ref}>\n <ExpandIndicator />\n </Item>\n </DropdownMenu>\n );\n }\n);\n\n/** @internal */\nexport function usePopoverPlacement() {\n const context = React.useContext(ToolbarContext);\n if (!context) return undefined;\n\n return `${context.expandsTo}-${context.panelAlignment}` as const;\n}\n\ninterface GroupMenuItemProps {\n item: ToolbarItem;\n onClose?: () => void;\n}\n\n/** @internal */\nexport function GroupMenuItem({ item, onClose }: GroupMenuItemProps) {\n const iconSpec = useConditionalValue(item.icon);\n const label = useConditionalValue(item.label);\n const isDisabled = useConditionalValue(item.isDisabled);\n const isHidden = useConditionalValue(item.isHidden);\n const isActive = useConditionalValue(item.isActive);\n\n if (isHidden) {\n return null;\n }\n\n const subMenuItems = isDisabled ? undefined : toMenuItems(item, onClose);\n return (\n <MenuItem\n startIcon={<Icon iconSpec={iconSpec} />}\n disabled={isDisabled}\n subMenuItems={subMenuItems}\n onClick={() => {\n if (isToolbarActionItem(item)) {\n item.execute();\n onClose?.();\n }\n }}\n isSelected={isActive}\n >\n <Badge badge={item.badge} />\n {label}\n </MenuItem>\n );\n}\n\nfunction toMenuItems(item: ToolbarItem, onClose?: () => void) {\n if (isToolbarGroupItem(item)) {\n return item.items.map((groupItem) => {\n return (\n <GroupMenuItem key={groupItem.id} item={groupItem} onClose={onClose} />\n );\n });\n }\n if (isToolbarCustomItem(item)) {\n return [\n <MenuExtraContent key={item.id}>{item.panelContent}</MenuExtraContent>,\n ];\n }\n return [];\n}\n"]}
@@ -38,7 +38,7 @@ export function useExpandsTo() {
38
38
  export function useLabelProps() {
39
39
  const context = React.useContext(ToolbarContext);
40
40
  const [internalVisible, setInternalVisible] = React.useState(false);
41
- const visible = (context === null || context === void 0 ? void 0 : context.popoverOpen) ? false : internalVisible;
41
+ const visible = context?.popoverOpen ? false : internalVisible;
42
42
  const placement = useExpandsTo();
43
43
  return {
44
44
  placement,
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/Item.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAQ3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,SAAS,IAAI,CAAC,KAAK,EAAE,GAAG;IACtB,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,CACL,oBAAC,UAAU,IACT,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,SAAS,EAAC,YAAY,EACtB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,GAAG,EAAE,GAAG,KACJ,KAAK;QAET,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI;QAC5B,oBAAC,KAAK,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAI;QAC3B,KAAK,CAAC,QAAQ,CACJ,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB;AAChB,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAElB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAC9B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;IAC/D,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,OAAO;QACL,SAAS;QACT,OAAO;QACP,eAAe,EAAE,kBAAkB;KAC3B,CAAC;AACb,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { Icon } from \"@itwin/core-react\";\nimport { IconButton } from \"@itwin/itwinui-react\";\nimport type { ToolbarItem } from \"../../toolbar/ToolbarItem\";\nimport { useConditionalValue } from \"../../hooks/useConditionalValue\";\nimport { Badge } from \"./Badge\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface ItemProps\n extends Partial<React.ComponentProps<typeof IconButton>> {\n item: ToolbarItem;\n}\n\n/** @internal */\nexport const Item = React.forwardRef<HTMLButtonElement, ItemProps>(\n function Item(props, ref) {\n const { item, ...other } = props;\n const label = useConditionalValue(item.label);\n const isDisabled = useConditionalValue(item.isDisabled);\n const isHidden = useConditionalValue(item.isHidden);\n const iconSpec = useConditionalValue(item.icon);\n const labelProps = useLabelProps();\n\n if (isHidden) return null;\n return (\n <IconButton\n className={props.className}\n styleType=\"borderless\"\n disabled={isDisabled}\n isActive={item.isActive}\n label={label}\n labelProps={labelProps}\n style={props.style}\n ref={ref}\n {...other}\n >\n <Icon iconSpec={iconSpec} />\n <Badge badge={item.badge} />\n {props.children}\n </IconButton>\n );\n }\n);\n\n/** @internal */\nexport function useExpandsTo() {\n const context = React.useContext(ToolbarContext);\n assert(!!context);\n\n const { expandsTo } = context;\n return expandsTo;\n}\n\n/** @internal */\nexport function useLabelProps() {\n const context = React.useContext(ToolbarContext);\n const [internalVisible, setInternalVisible] = React.useState(false);\n const visible = context?.popoverOpen ? false : internalVisible;\n const placement = useExpandsTo();\n return {\n placement,\n visible,\n onVisibleChange: setInternalVisible,\n } as const;\n}\n"]}
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/Item.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAQ3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,SAAS,IAAI,CAAC,KAAK,EAAE,GAAG;IACtB,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,CACL,oBAAC,UAAU,IACT,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,SAAS,EAAC,YAAY,EACtB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,GAAG,EAAE,GAAG,KACJ,KAAK;QAET,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI;QAC5B,oBAAC,KAAK,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAI;QAC3B,KAAK,CAAC,QAAQ,CACJ,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB;AAChB,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAElB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAC9B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;IAC/D,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,OAAO;QACL,SAAS;QACT,OAAO;QACP,eAAe,EAAE,kBAAkB;KAC3B,CAAC;AACb,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { assert } from \"@itwin/core-bentley\";\nimport { Icon } from \"@itwin/core-react\";\nimport { IconButton } from \"@itwin/itwinui-react\";\nimport type { ToolbarItem } from \"../../toolbar/ToolbarItem\";\nimport { useConditionalValue } from \"../../hooks/useConditionalValue\";\nimport { Badge } from \"./Badge\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\nexport interface ItemProps\n extends Partial<React.ComponentProps<typeof IconButton>> {\n item: ToolbarItem;\n}\n\n/** @internal */\nexport const Item = React.forwardRef<HTMLButtonElement, ItemProps>(\n function Item(props, ref) {\n const { item, ...other } = props;\n const label = useConditionalValue(item.label);\n const isDisabled = useConditionalValue(item.isDisabled);\n const isHidden = useConditionalValue(item.isHidden);\n const iconSpec = useConditionalValue(item.icon);\n const labelProps = useLabelProps();\n\n if (isHidden) return null;\n return (\n <IconButton\n className={props.className}\n styleType=\"borderless\"\n disabled={isDisabled}\n isActive={item.isActive}\n label={label}\n labelProps={labelProps}\n style={props.style}\n ref={ref}\n {...other}\n >\n <Icon iconSpec={iconSpec} />\n <Badge badge={item.badge} />\n {props.children}\n </IconButton>\n );\n }\n);\n\n/** @internal */\nexport function useExpandsTo() {\n const context = React.useContext(ToolbarContext);\n assert(!!context);\n\n const { expandsTo } = context;\n return expandsTo;\n}\n\n/** @internal */\nexport function useLabelProps() {\n const context = React.useContext(ToolbarContext);\n const [internalVisible, setInternalVisible] = React.useState(false);\n const visible = context?.popoverOpen ? false : internalVisible;\n const placement = useExpandsTo();\n return {\n placement,\n visible,\n onVisibleChange: setInternalVisible,\n } as const;\n}\n"]}
@@ -23,7 +23,7 @@ export const OverflowButton = React.forwardRef(function OverflowButton(props, re
23
23
  React.createElement(OverflowMenu, { key: 0, onClose: close }, props.children),
24
24
  ];
25
25
  }, placement: placement, onVisibleChange: (newVisible) => {
26
- context === null || context === void 0 ? void 0 : context.setPopoverOpen(newVisible);
26
+ context?.setPopoverOpen(newVisible);
27
27
  } },
28
28
  React.createElement(IconButton, { ref: ref, label: "More", labelProps: labelProps, styleType: "borderless" },
29
29
  React.createElement(SvgMore, null))));
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowButton.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/OverflowButton.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAO3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC,aAAa,CAEzD,SAAS,CAAC,CAAC;AAMb,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAG5C,SAAS,cAAc,CAAC,KAAK,EAAE,GAAG;IAClC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAEjD,OAAO,CACL,oBAAC,YAAY,IACX,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,OAAO;gBACL,oBAAC,YAAY,IAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,IACjC,KAAK,CAAC,QAAQ,CACF;aAChB,CAAC;QACJ,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;YAC9B,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAC,MAAM,EACZ,UAAU,EAAE,UAAU,EACtB,SAAS,EAAC,YAAY;YAEtB,oBAAC,OAAO,OAAG,CACA,CACA,CAChB,CAAC;AACJ,CAAC,CAAC,CAAC;AAOH,SAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAqB;IAC5D,OAAO,CACL,oBAAC,wBAAwB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAClD,QAAQ,CACyB,CACrC,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { DropdownMenu, IconButton } from \"@itwin/itwinui-react\";\nimport { SvgMore } from \"@itwin/itwinui-icons-react\";\nimport { useLabelProps } from \"./Item\";\nimport { usePopoverPlacement } from \"./GroupItem\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\ninterface ToolGroupOverflow {\n onClose?: () => void;\n}\n\n/** @internal */\nexport const ToolGroupOverflowContext = React.createContext<\n ToolGroupOverflow | undefined\n>(undefined);\n\ninterface OverflowButtonProps {\n children?: React.ReactNode;\n}\n\n/** @internal */\nexport const OverflowButton = React.forwardRef<\n HTMLButtonElement,\n OverflowButtonProps\n>(function OverflowButton(props, ref) {\n const placement = usePopoverPlacement();\n const labelProps = useLabelProps();\n const context = React.useContext(ToolbarContext);\n\n return (\n <DropdownMenu\n menuItems={(close) => {\n return [\n <OverflowMenu key={0} onClose={close}>\n {props.children}\n </OverflowMenu>,\n ];\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <IconButton\n ref={ref}\n label=\"More\"\n labelProps={labelProps}\n styleType=\"borderless\"\n >\n <SvgMore />\n </IconButton>\n </DropdownMenu>\n );\n});\n\ninterface OverflowMenuProps {\n children?: React.ReactNode;\n onClose?: () => void;\n}\n\nfunction OverflowMenu({ children, onClose }: OverflowMenuProps) {\n return (\n <ToolGroupOverflowContext.Provider value={{ onClose }}>\n {children}\n </ToolGroupOverflowContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"OverflowButton.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/OverflowButton.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAO3C,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC,aAAa,CAEzD,SAAS,CAAC,CAAC;AAMb,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAG5C,SAAS,cAAc,CAAC,KAAK,EAAE,GAAG;IAClC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAEjD,OAAO,CACL,oBAAC,YAAY,IACX,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,OAAO;gBACL,oBAAC,YAAY,IAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,IACjC,KAAK,CAAC,QAAQ,CACF;aAChB,CAAC;QACJ,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;YAC9B,OAAO,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAC,MAAM,EACZ,UAAU,EAAE,UAAU,EACtB,SAAS,EAAC,YAAY;YAEtB,oBAAC,OAAO,OAAG,CACA,CACA,CAChB,CAAC;AACJ,CAAC,CAAC,CAAC;AAOH,SAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAqB;IAC5D,OAAO,CACL,oBAAC,wBAAwB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAClD,QAAQ,CACyB,CACrC,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 Toolbar\n */\n\nimport * as React from \"react\";\nimport { DropdownMenu, IconButton } from \"@itwin/itwinui-react\";\nimport { SvgMore } from \"@itwin/itwinui-icons-react\";\nimport { useLabelProps } from \"./Item\";\nimport { usePopoverPlacement } from \"./GroupItem\";\nimport { ToolbarContext } from \"./Toolbar\";\n\n/** @internal */\ninterface ToolGroupOverflow {\n onClose?: () => void;\n}\n\n/** @internal */\nexport const ToolGroupOverflowContext = React.createContext<\n ToolGroupOverflow | undefined\n>(undefined);\n\ninterface OverflowButtonProps {\n children?: React.ReactNode;\n}\n\n/** @internal */\nexport const OverflowButton = React.forwardRef<\n HTMLButtonElement,\n OverflowButtonProps\n>(function OverflowButton(props, ref) {\n const placement = usePopoverPlacement();\n const labelProps = useLabelProps();\n const context = React.useContext(ToolbarContext);\n\n return (\n <DropdownMenu\n menuItems={(close) => {\n return [\n <OverflowMenu key={0} onClose={close}>\n {props.children}\n </OverflowMenu>,\n ];\n }}\n placement={placement}\n onVisibleChange={(newVisible) => {\n context?.setPopoverOpen(newVisible);\n }}\n >\n <IconButton\n ref={ref}\n label=\"More\"\n labelProps={labelProps}\n styleType=\"borderless\"\n >\n <SvgMore />\n </IconButton>\n </DropdownMenu>\n );\n});\n\ninterface OverflowMenuProps {\n children?: React.ReactNode;\n onClose?: () => void;\n}\n\nfunction OverflowMenu({ children, onClose }: OverflowMenuProps) {\n return (\n <ToolGroupOverflowContext.Provider value={{ onClose }}>\n {children}\n </ToolGroupOverflowContext.Provider>\n );\n}\n"]}
@@ -18,10 +18,9 @@ import { getChildKey } from "../../layout/tool-settings/Docked";
18
18
  import { ToolbarContext } from "./Toolbar";
19
19
  /** @internal */
20
20
  export function ToolGroup({ children, className, ...props }) {
21
- var _a, _b;
22
21
  const context = React.useContext(ToolbarContext);
23
- const expandsTo = (_a = context === null || context === void 0 ? void 0 : context.expandsTo) !== null && _a !== void 0 ? _a : "bottom";
24
- const panelAlignment = (_b = context === null || context === void 0 ? void 0 : context.panelAlignment) !== null && _b !== void 0 ? _b : "start";
22
+ const expandsTo = context?.expandsTo ?? "bottom";
23
+ const panelAlignment = context?.panelAlignment ?? "start";
25
24
  const orientation = getOrientation(expandsTo);
26
25
  const childrenArray = React.Children.toArray(children);
27
26
  const keyToChildMap = childrenArray.reduce((acc, child, index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/ToolGroup.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAQ3C,gBAAgB;AAChB,MAAM,UAAU,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAkB;;IACzE,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,QAAQ,CAAC;IACjD,MAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,mCAAI,OAAO,CAAC;IAC1D,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvD,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3C,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,GAAG,CAAC;IACb,CAAC,EACD,IAAI,GAAG,EAAE,CACV,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAuB,IAAI,GAAG,EAAE,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAoB,IAAI,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC7C,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,CAAC,GAC9D,WAAW,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IAEvE,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxD,OAAO,CACL,6BACE,SAAS,EAAE,UAAU,CACnB,wCAAwC,EACxC,QAAQ,WAAW,EAAE,EACrB,QAAQ,cAAc,EAAE,EACxB,SAAS,CACV,EACD,GAAG,EAAE,YAAY;QAEjB,oBAAC,OAAO,IACN,SAAS,EAAE,UAAU,CACnB,8BAA8B,EAC9B,QAAQ,WAAW,EAAE,CACtB,EACD,GAAG,EAAE,YAAY,KACb,KAAK;YAER,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;gBACrC,IAAI,CAAC,KAAK,CAAC,cAAc,CAA8B,KAAK,CAAC;oBAC3D,OAAO,KAAK,CAAC;gBACf,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;oBAC/B,GAAG,EAAE,CAAC,EAAkB,EAAE,EAAE;wBAC1B,IAAI,CAAC,EAAE,EAAE;4BACP,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;4BAC9B,OAAO;yBACR;wBACD,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjC,CAAC;iBACF,CAAC,CAAC;YACL,CAAC,CAAC;YACD,cAAc,IAAI,CACjB,oBAAC,cAAc,IAAC,GAAG,EAAE,WAAW,IAC7B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CACtB,CAClB,CACO,CACN,CACP,CAAC;AACJ,CAAC;AAED,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;AAClC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;AAChC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;AAIlC,SAAS,cAAc,CACrB,SAAwD;IAExD,QAAQ,SAAS,EAAE;QACjB,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,UAAU,CAAC;QACpB,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC;KACvB;AACH,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 Toolbar\n */\n\nimport \"./ToolGroup.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { Surface } from \"@itwin/itwinui-react\";\nimport { ActionItem } from \"./ActionItem\";\nimport { GroupItem } from \"./GroupItem\";\nimport { CustomItem } from \"./CustomItem\";\nimport { OverflowButton } from \"./OverflowButton\";\nimport { useOverflow } from \"./useOverflow\";\nimport { getChildKey } from \"../../layout/tool-settings/Docked\";\nimport { ToolbarContext } from \"./Toolbar\";\n\ninterface ToolGroupProps extends CommonProps {\n children?: React.ReactNode;\n}\n\ntype Child = ReturnType<typeof React.Children.toArray>[0];\n\n/** @internal */\nexport function ToolGroup({ children, className, ...props }: ToolGroupProps) {\n const context = React.useContext(ToolbarContext);\n const expandsTo = context?.expandsTo ?? \"bottom\";\n const panelAlignment = context?.panelAlignment ?? \"start\";\n const orientation = getOrientation(expandsTo);\n const childrenArray = React.Children.toArray(children);\n\n const keyToChildMap = childrenArray.reduce<Map<string, Child>>(\n (acc, child, index) => {\n const childKey = getChildKey(child, index);\n acc.set(childKey, child);\n return acc;\n },\n new Map()\n );\n const childrenKeys = Array.from(keyToChildMap.keys());\n const itemRefs = React.useRef<Map<string, Element>>(new Map());\n const overflowRef = React.useRef<HTMLButtonElement>(null);\n\n const getItemSize = React.useCallback((item: string) => {\n const element = itemRefs.current.get(item);\n if (!element) return { width: 0, height: 0 };\n return element.getBoundingClientRect();\n }, []);\n const getOverflowSize = React.useCallback(() => {\n const element = overflowRef.current;\n if (!element) return { width: 0, height: 0 };\n return element.getBoundingClientRect();\n }, []);\n\n const [containerRef, componentRef, visibleCount, renderOverflow] =\n useOverflow(childrenKeys, orientation, getItemSize, getOverflowSize);\n\n const keyToChildEntries = Array.from(keyToChildMap.entries());\n const visibleChildren = keyToChildEntries.slice(0, visibleCount);\n const overflown = keyToChildEntries.slice(visibleCount);\n return (\n <div\n className={classnames(\n \"uifw-toolbar-group-toolGroup_container\",\n `uifw-${orientation}`,\n `uifw-${panelAlignment}`,\n className\n )}\n ref={containerRef}\n >\n <Surface\n className={classnames(\n \"uifw-toolbar-group-toolGroup\",\n `uifw-${orientation}`\n )}\n ref={componentRef}\n {...props}\n >\n {visibleChildren.map(([item, child]) => {\n if (!React.isValidElement<{ ref: React.Ref<Element> }>(child))\n return child;\n return React.cloneElement(child, {\n ref: (el: Element | null) => {\n if (!el) {\n itemRefs.current.delete(item);\n return;\n }\n itemRefs.current.set(item, el);\n },\n });\n })}\n {renderOverflow && (\n <OverflowButton ref={overflowRef}>\n {overflown.map(([_, child]) => child)}\n </OverflowButton>\n )}\n </Surface>\n </div>\n );\n}\n\nToolGroup.ActionItem = ActionItem;\nToolGroup.GroupItem = GroupItem;\nToolGroup.CustomItem = CustomItem;\n\ntype ToolbarContextProps = React.ContextType<typeof ToolbarContext>;\n\nfunction getOrientation(\n expandsTo: NonNullable<ToolbarContextProps>[\"expandsTo\"]\n) {\n switch (expandsTo) {\n case \"left\":\n case \"right\":\n return \"vertical\";\n case \"top\":\n case \"bottom\":\n return \"horizontal\";\n }\n}\n"]}
1
+ {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/ToolGroup.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 Toolbar\n */\n\nimport \"./ToolGroup.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { Surface } from \"@itwin/itwinui-react\";\nimport { ActionItem } from \"./ActionItem\";\nimport { GroupItem } from \"./GroupItem\";\nimport { CustomItem } from \"./CustomItem\";\nimport { OverflowButton } from \"./OverflowButton\";\nimport { useOverflow } from \"./useOverflow\";\nimport { getChildKey } from \"../../layout/tool-settings/Docked\";\nimport { ToolbarContext } from \"./Toolbar\";\n\ninterface ToolGroupProps extends CommonProps {\n children?: React.ReactNode;\n}\n\ntype Child = ReturnType<typeof React.Children.toArray>[0];\n\n/** @internal */\nexport function ToolGroup({ children, className, ...props }: ToolGroupProps) {\n const context = React.useContext(ToolbarContext);\n const expandsTo = context?.expandsTo ?? \"bottom\";\n const panelAlignment = context?.panelAlignment ?? \"start\";\n const orientation = getOrientation(expandsTo);\n const childrenArray = React.Children.toArray(children);\n\n const keyToChildMap = childrenArray.reduce<Map<string, Child>>(\n (acc, child, index) => {\n const childKey = getChildKey(child, index);\n acc.set(childKey, child);\n return acc;\n },\n new Map()\n );\n const childrenKeys = Array.from(keyToChildMap.keys());\n const itemRefs = React.useRef<Map<string, Element>>(new Map());\n const overflowRef = React.useRef<HTMLButtonElement>(null);\n\n const getItemSize = React.useCallback((item: string) => {\n const element = itemRefs.current.get(item);\n if (!element) return { width: 0, height: 0 };\n return element.getBoundingClientRect();\n }, []);\n const getOverflowSize = React.useCallback(() => {\n const element = overflowRef.current;\n if (!element) return { width: 0, height: 0 };\n return element.getBoundingClientRect();\n }, []);\n\n const [containerRef, componentRef, visibleCount, renderOverflow] =\n useOverflow(childrenKeys, orientation, getItemSize, getOverflowSize);\n\n const keyToChildEntries = Array.from(keyToChildMap.entries());\n const visibleChildren = keyToChildEntries.slice(0, visibleCount);\n const overflown = keyToChildEntries.slice(visibleCount);\n return (\n <div\n className={classnames(\n \"uifw-toolbar-group-toolGroup_container\",\n `uifw-${orientation}`,\n `uifw-${panelAlignment}`,\n className\n )}\n ref={containerRef}\n >\n <Surface\n className={classnames(\n \"uifw-toolbar-group-toolGroup\",\n `uifw-${orientation}`\n )}\n ref={componentRef}\n {...props}\n >\n {visibleChildren.map(([item, child]) => {\n if (!React.isValidElement<{ ref: React.Ref<Element> }>(child))\n return child;\n return React.cloneElement(child, {\n ref: (el: Element | null) => {\n if (!el) {\n itemRefs.current.delete(item);\n return;\n }\n itemRefs.current.set(item, el);\n },\n });\n })}\n {renderOverflow && (\n <OverflowButton ref={overflowRef}>\n {overflown.map(([_, child]) => child)}\n </OverflowButton>\n )}\n </Surface>\n </div>\n );\n}\n\nToolGroup.ActionItem = ActionItem;\nToolGroup.GroupItem = GroupItem;\nToolGroup.CustomItem = CustomItem;\n\ntype ToolbarContextProps = React.ContextType<typeof ToolbarContext>;\n\nfunction getOrientation(\n expandsTo: NonNullable<ToolbarContextProps>[\"expandsTo\"]\n) {\n switch (expandsTo) {\n case \"left\":\n case \"right\":\n return \"vertical\";\n case \"top\":\n case \"bottom\":\n return \"horizontal\";\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useOverflow.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/useOverflow.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 Toolbar\n */\n\nimport * as React from \"react\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport { useResizeObserver } from \"@itwin/core-react\";\n\ntype Orientation = \"horizontal\" | \"vertical\";\n\n/** @internal */\nexport const useOverflow = <\n TContainer extends HTMLElement,\n TComponent extends HTMLElement\n>(\n allItems: ReadonlyArray<string>,\n orientation: Orientation,\n getItemSize: (item: string) => SizeProps,\n getOverflowSize: () => SizeProps\n) => {\n const [visible, setVisible] = React.useState(allItems.length);\n const [calculate, setCalculate] = React.useState(false);\n const containerSizeRef = React.useRef<SizeProps>();\n const componentSizeRef = React.useRef<SizeProps>();\n\n const [prevOrientation, setPrevOrientation] = React.useState(orientation);\n if (prevOrientation !== orientation) {\n setPrevOrientation(orientation);\n setCalculate(true);\n }\n\n React.useLayoutEffect(() => {\n setCalculate(false);\n if (!calculate) return;\n\n const containerSize = containerSizeRef.current\n ? getLength(containerSizeRef.current, orientation)\n : undefined;\n if (containerSize === undefined) return;\n\n const componentSize = componentSizeRef.current\n ? getLength(componentSizeRef.current, orientation)\n : undefined;\n if (componentSize === undefined) return;\n\n const itemSizes = allItems.map((item) => {\n const size = getItemSize(item);\n return getLength(size, orientation);\n });\n const overflowSize = getLength(getOverflowSize(), orientation);\n\n const otherSize = itemSizes.reduce((acc, size) => acc + size, 0);\n if (otherSize < containerSize) {\n // No overflow.\n setVisible(itemSizes.length);\n return;\n }\n\n let totalSize = overflowSize;\n if (totalSize >= containerSize) {\n // Render only overflow.\n setVisible(0);\n return;\n }\n\n let newVisible = 0;\n for (const size of itemSizes) {\n totalSize += size;\n if (totalSize >= containerSize) {\n break;\n }\n newVisible++;\n }\n setVisible(newVisible);\n }, [calculate, allItems, getItemSize, getOverflowSize, orientation]);\n const containerRoRef = useResizeObserver<TContainer>(\n React.useCallback(\n (width, height) => {\n const length = containerSizeRef.current\n ? getLength(containerSizeRef.current, orientation)\n : undefined;\n containerSizeRef.current = { width, height };\n const newLength = getLength(containerSizeRef.current, orientation);\n\n if (newLength === length) return;\n setCalculate(true);\n },\n [orientation]\n )\n );\n const componentRoRef = useResizeObserver<TComponent>(\n React.useCallback(\n (width, height) => {\n const length = componentSizeRef.current\n ? getLength(componentSizeRef.current, orientation)\n : undefined;\n componentSizeRef.current = { width, height };\n const newLength = getLength(componentSizeRef.current, orientation);\n\n if (newLength === length) return;\n setCalculate(true);\n },\n [orientation]\n )\n );\n\n const overflow = calculate || visible < allItems.length;\n const visibleItems = calculate ? allItems.length : visible;\n return [containerRoRef, componentRoRef, visibleItems, overflow] as const;\n};\n\nfunction getLength(\n size: { width: number; height: number },\n orientation: Orientation\n) {\n return orientation === \"horizontal\" ? size.width : size.height;\n}\n"]}
1
+ {"version":3,"file":"useOverflow.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/new-toolbars/useOverflow.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 Toolbar\n */\n\nimport * as React from \"react\";\nimport type { SizeProps } from \"@itwin/core-react\";\nimport { useResizeObserver } from \"@itwin/core-react\";\n\ntype Orientation = \"horizontal\" | \"vertical\";\n\n/** @internal */\nexport const useOverflow = <\n TContainer extends HTMLElement,\n TComponent extends HTMLElement\n>(\n allItems: ReadonlyArray<string>,\n orientation: Orientation,\n getItemSize: (item: string) => SizeProps,\n getOverflowSize: () => SizeProps\n) => {\n const [visible, setVisible] = React.useState(allItems.length);\n const [calculate, setCalculate] = React.useState(false);\n const containerSizeRef = React.useRef<SizeProps>();\n const componentSizeRef = React.useRef<SizeProps>();\n\n const [prevOrientation, setPrevOrientation] = React.useState(orientation);\n if (prevOrientation !== orientation) {\n setPrevOrientation(orientation);\n setCalculate(true);\n }\n\n React.useLayoutEffect(() => {\n setCalculate(false);\n if (!calculate) return;\n\n const containerSize = containerSizeRef.current\n ? getLength(containerSizeRef.current, orientation)\n : undefined;\n if (containerSize === undefined) return;\n\n const componentSize = componentSizeRef.current\n ? getLength(componentSizeRef.current, orientation)\n : undefined;\n if (componentSize === undefined) return;\n\n const itemSizes = allItems.map((item) => {\n const size = getItemSize(item);\n return getLength(size, orientation);\n });\n const overflowSize = getLength(getOverflowSize(), orientation);\n\n const otherSize = itemSizes.reduce((acc, size) => acc + size, 0);\n if (otherSize < containerSize) {\n // No overflow.\n setVisible(itemSizes.length);\n return;\n }\n\n let totalSize = overflowSize;\n if (totalSize >= containerSize) {\n // Render only overflow.\n setVisible(0);\n return;\n }\n\n let newVisible = 0;\n for (const size of itemSizes) {\n totalSize += size;\n if (totalSize >= containerSize) {\n break;\n }\n newVisible++;\n }\n setVisible(newVisible);\n }, [calculate, allItems, getItemSize, getOverflowSize, orientation]);\n const containerRoRef = useResizeObserver<TContainer>(\n React.useCallback(\n (width: number, height: number) => {\n const length = containerSizeRef.current\n ? getLength(containerSizeRef.current, orientation)\n : undefined;\n containerSizeRef.current = { width, height };\n const newLength = getLength(containerSizeRef.current, orientation);\n\n if (newLength === length) return;\n setCalculate(true);\n },\n [orientation]\n )\n );\n const componentRoRef = useResizeObserver<TComponent>(\n React.useCallback(\n (width: number, height: number) => {\n const length = componentSizeRef.current\n ? getLength(componentSizeRef.current, orientation)\n : undefined;\n componentSizeRef.current = { width, height };\n const newLength = getLength(componentSizeRef.current, orientation);\n\n if (newLength === length) return;\n setCalculate(true);\n },\n [orientation]\n )\n );\n\n const overflow = calculate || visible < allItems.length;\n const visibleItems = calculate ? allItems.length : visible;\n return [containerRoRef, componentRoRef, visibleItems, overflow] as const;\n};\n\nfunction getLength(\n size: { width: number; height: number },\n orientation: Orientation\n) {\n return orientation === \"horizontal\" ? size.width : size.height;\n}\n"]}
@@ -0,0 +1,11 @@
1
+ /** @packageDocumentation
2
+ * @module Widget
3
+ */
4
+ import "./PopoutThemeProvider.scss";
5
+ import * as React from "react";
6
+ /** Theme provider is required to open floating/popover elements in a popout widget window (instead of a main window).
7
+ * @note iTwinUI v2 `ThemeProvider` is not used because of https://github.com/iTwin/appui/issues/612
8
+ * @internal
9
+ */
10
+ export declare function PopoutThemeProvider({ children }: React.PropsWithChildren<{}>): React.JSX.Element;
11
+ //# sourceMappingURL=PopoutThemeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopoutThemeProvider.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,4BAA4B,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,qBAuB5E"}
@@ -0,0 +1,36 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Widget
7
+ */
8
+ import "./PopoutThemeProvider.scss";
9
+ import * as React from "react";
10
+ import { ThemeProvider } from "@itwin/itwinui-react";
11
+ import { TabIdContext } from "../../layout/widget/ContentRenderer";
12
+ import { useLayoutStore } from "../../layout/base/LayoutStore";
13
+ import { getTabLocation, isPopoutTabLocation, } from "../../layout/state/TabLocation";
14
+ import { usePopoutsStore } from "./usePopoutsStore";
15
+ /** Theme provider is required to open floating/popover elements in a popout widget window (instead of a main window).
16
+ * @note iTwinUI v2 `ThemeProvider` is not used because of https://github.com/iTwin/appui/issues/612
17
+ * @internal
18
+ */
19
+ export function PopoutThemeProvider({ children }) {
20
+ const tabId = React.useContext(TabIdContext);
21
+ const layoutStore = useLayoutStore();
22
+ const stateRef = React.useRef(layoutStore.getState());
23
+ React.useEffect(() => layoutStore.subscribe((state) => (stateRef.current = state)), [layoutStore]);
24
+ const popoutContainer = usePopoutsStore((state) => {
25
+ if (!tabId)
26
+ return undefined;
27
+ const tabLocation = getTabLocation(stateRef.current, tabId);
28
+ if (!tabLocation)
29
+ return undefined;
30
+ if (!isPopoutTabLocation(tabLocation))
31
+ return undefined;
32
+ return state.popouts[tabLocation.popoutWidgetId];
33
+ });
34
+ return (React.createElement(ThemeProvider, { portalContainer: popoutContainer ?? undefined, className: "uifw-preview-reparentPopoutWidgets-popoutThemeProvider" }, children));
35
+ }
36
+ //# sourceMappingURL=PopoutThemeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopoutThemeProvider.js","sourceRoot":"","sources":["../../../../../src/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,4BAA4B,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,cAAc,EACd,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAE,QAAQ,EAA+B;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtD,KAAK,CAAC,SAAS,CACb,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,EAClE,CAAC,WAAW,CAAC,CACd,CAAC;IACF,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE;QAChD,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACnC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC;YAAE,OAAO,SAAS,CAAC;QACxD,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,OAAO,CACL,oBAAC,aAAa,IACZ,eAAe,EAAE,eAAe,IAAI,SAAS,EAC7C,SAAS,EAAC,wDAAwD,IAEjE,QAAQ,CACK,CACjB,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 \"./PopoutThemeProvider.scss\";\nimport * as React from \"react\";\nimport { ThemeProvider } from \"@itwin/itwinui-react\";\nimport { TabIdContext } from \"../../layout/widget/ContentRenderer\";\nimport { useLayoutStore } from \"../../layout/base/LayoutStore\";\nimport {\n getTabLocation,\n isPopoutTabLocation,\n} from \"../../layout/state/TabLocation\";\nimport { usePopoutsStore } from \"./usePopoutsStore\";\n\n/** Theme provider is required to open floating/popover elements in a popout widget window (instead of a main window).\n * @note iTwinUI v2 `ThemeProvider` is not used because of https://github.com/iTwin/appui/issues/612\n * @internal\n */\nexport function PopoutThemeProvider({ children }: React.PropsWithChildren<{}>) {\n const tabId = React.useContext(TabIdContext);\n const layoutStore = useLayoutStore();\n const stateRef = React.useRef(layoutStore.getState());\n React.useEffect(\n () => layoutStore.subscribe((state) => (stateRef.current = state)),\n [layoutStore]\n );\n const popoutContainer = usePopoutsStore((state) => {\n if (!tabId) return undefined;\n const tabLocation = getTabLocation(stateRef.current, tabId);\n if (!tabLocation) return undefined;\n if (!isPopoutTabLocation(tabLocation)) return undefined;\n return state.popouts[tabLocation.popoutWidgetId];\n });\n return (\n <ThemeProvider\n portalContainer={popoutContainer ?? undefined}\n className=\"uifw-preview-reparentPopoutWidgets-popoutThemeProvider\"\n >\n {children}\n </ThemeProvider>\n );\n}\n"]}
@@ -2,4 +2,6 @@
2
2
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
3
  * See LICENSE.md in the project root for license terms and full copyright notice.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- $nz-message-horizontal-padding: 8px;
5
+ .uifw-preview-reparentPopoutWidgets-popoutThemeProvider {
6
+ height: 100%;
7
+ }
@@ -0,0 +1,7 @@
1
+ /** @packageDocumentation
2
+ * @module Widget
3
+ */
4
+ import * as React from "react";
5
+ /** @internal */
6
+ export declare function PopoutWidget(): React.ReactPortal | null;
7
+ //# sourceMappingURL=PopoutWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopoutWidget.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/preview/reparent-popout-widgets/PopoutWidget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,gBAAgB;AAChB,wBAAgB,YAAY,6BAO3B"}