@itwin/appui-react 4.0.0-dev.9 → 4.0.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 (1718) hide show
  1. package/CHANGELOG.md +226 -1
  2. package/README.md +2 -2
  3. package/lib/cjs/appui-react/UiFramework.d.ts +261 -269
  4. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  5. package/lib/cjs/appui-react/UiFramework.js +545 -557
  6. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  7. package/lib/cjs/appui-react/_variables.scss +4 -5
  8. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.d.ts +27 -27
  9. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js +74 -74
  10. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.d.ts +21 -21
  11. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js +39 -39
  12. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +19 -19
  13. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +216 -216
  14. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts +42 -42
  15. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +123 -122
  16. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  17. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +4 -10
  18. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts +12 -12
  19. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js +110 -110
  20. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.d.ts +18 -18
  21. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js +64 -64
  22. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  23. package/lib/cjs/appui-react/accudraw/AccuDrawUiSettings.d.ts +61 -61
  24. package/lib/cjs/appui-react/accudraw/AccuDrawUiSettings.js +9 -9
  25. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.d.ts +18 -18
  26. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js +44 -44
  27. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  28. package/lib/cjs/appui-react/accudraw/Calculator.d.ts +46 -46
  29. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  30. package/lib/cjs/appui-react/accudraw/Calculator.js +218 -217
  31. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  32. package/lib/cjs/appui-react/accudraw/Calculator.scss +12 -14
  33. package/lib/cjs/appui-react/accudraw/CalculatorEngine.d.ts +41 -41
  34. package/lib/cjs/appui-react/accudraw/CalculatorEngine.js +195 -195
  35. package/lib/cjs/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  36. package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts +31 -31
  37. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js +41 -41
  38. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +147 -147
  39. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +231 -231
  40. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  41. package/lib/cjs/appui-react/accudraw/MenuButton.d.ts +30 -30
  42. package/lib/cjs/appui-react/accudraw/MenuButton.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/accudraw/MenuButton.js +67 -66
  44. package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
  45. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.d.ts +27 -27
  46. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js +37 -37
  47. package/lib/cjs/appui-react/accudraw/SquareButton.d.ts +14 -14
  48. package/lib/cjs/appui-react/accudraw/SquareButton.js +26 -26
  49. package/lib/cjs/appui-react/accudraw/SquareButton.scss +10 -25
  50. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +27 -27
  51. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  52. package/lib/cjs/appui-react/backstage/BackstageComposer.js +139 -142
  53. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  54. package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts +28 -29
  55. package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +55 -55
  57. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  58. package/lib/cjs/appui-react/backstage/BackstageItem.d.ts +59 -28
  59. package/lib/cjs/appui-react/backstage/BackstageItem.d.ts.map +1 -1
  60. package/lib/cjs/appui-react/backstage/BackstageItem.js +24 -25
  61. package/lib/cjs/appui-react/backstage/BackstageItem.js.map +1 -1
  62. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.d.ts +14 -13
  63. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js +44 -44
  65. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  66. package/lib/cjs/appui-react/backstage/BackstageItemsManager.d.ts +39 -0
  67. package/lib/cjs/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -0
  68. package/lib/cjs/appui-react/backstage/BackstageItemsManager.js +130 -0
  69. package/lib/cjs/appui-react/backstage/BackstageItemsManager.js.map +1 -0
  70. package/lib/cjs/appui-react/backstage/BackstageManager.d.ts +35 -35
  71. package/lib/cjs/appui-react/backstage/BackstageManager.js +77 -77
  72. package/lib/cjs/appui-react/backstage/InternalBackstageManager.d.ts +22 -22
  73. package/lib/cjs/appui-react/backstage/InternalBackstageManager.js +55 -55
  74. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.d.ts +9 -8
  75. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.d.ts.map +1 -1
  76. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js +32 -36
  77. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  78. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +9 -9
  79. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  80. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js +41 -45
  81. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  82. package/lib/cjs/appui-react/childwindow/CopyStyles.d.ts +7 -7
  83. package/lib/cjs/appui-react/childwindow/CopyStyles.js +42 -42
  84. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +71 -71
  85. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  86. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +208 -208
  87. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  88. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts +15 -15
  89. package/lib/cjs/appui-react/childwindow/PopoutWidget.js +19 -19
  90. package/lib/cjs/appui-react/configurableui/ActivityTracker.d.ts +29 -29
  91. package/lib/cjs/appui-react/configurableui/ActivityTracker.js +71 -71
  92. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts +21 -21
  93. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +59 -59
  94. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.d.ts +95 -95
  95. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.d.ts.map +1 -1
  96. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js +95 -95
  97. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  98. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +81 -81
  99. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +154 -154
  100. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  101. package/lib/cjs/appui-react/configurableui/TimeTracker.d.ts +33 -33
  102. package/lib/cjs/appui-react/configurableui/TimeTracker.js +81 -81
  103. package/lib/cjs/appui-react/configurableui/configurableui.scss +0 -4
  104. package/lib/cjs/appui-react/configurableui/state.d.ts +61 -61
  105. package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/configurableui/state.js +111 -111
  107. package/lib/cjs/appui-react/content/ContentControl.d.ts +64 -64
  108. package/lib/cjs/appui-react/content/ContentControl.js +78 -78
  109. package/lib/cjs/appui-react/content/ContentGroup.d.ts +93 -93
  110. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  111. package/lib/cjs/appui-react/content/ContentGroup.js +174 -174
  112. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  113. package/lib/cjs/appui-react/content/ContentLayout.d.ts +90 -90
  114. package/lib/cjs/appui-react/content/ContentLayout.js +372 -372
  115. package/lib/cjs/appui-react/content/ContentLayout.scss +4 -4
  116. package/lib/cjs/appui-react/content/DefaultViewOverlay.d.ts +22 -22
  117. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +50 -50
  118. package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +10 -7
  119. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts +31 -27
  120. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  121. package/lib/cjs/appui-react/content/FloatingViewportContent.js +79 -82
  122. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  123. package/lib/cjs/appui-react/content/IModelViewport.d.ts +80 -80
  124. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  125. package/lib/cjs/appui-react/content/IModelViewport.js +150 -154
  126. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  127. package/lib/cjs/appui-react/content/InternalContentLayoutManager.d.ts +47 -47
  128. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +95 -95
  129. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  130. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts +79 -79
  131. package/lib/cjs/appui-react/content/InternalContentViewManager.js +209 -209
  132. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  133. package/lib/cjs/appui-react/content/StageContentLayout.d.ts +35 -35
  134. package/lib/cjs/appui-react/content/StageContentLayout.js +66 -66
  135. package/lib/cjs/appui-react/content/ViewStateHelper.d.ts +25 -25
  136. package/lib/cjs/appui-react/content/ViewStateHelper.js +50 -50
  137. package/lib/cjs/appui-react/content/ViewportContentControl.d.ts +61 -61
  138. package/lib/cjs/appui-react/content/ViewportContentControl.js +131 -131
  139. package/lib/cjs/appui-react/content/split-pane/Pane.d.ts +20 -20
  140. package/lib/cjs/appui-react/content/split-pane/Pane.js +42 -42
  141. package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts +22 -22
  142. package/lib/cjs/appui-react/content/split-pane/Resizer.js +38 -38
  143. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts +69 -69
  144. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +242 -242
  145. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +68 -68
  146. package/lib/cjs/appui-react/cursor/CursorInformation.js +144 -144
  147. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  148. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts +32 -32
  149. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +76 -76
  150. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts +58 -58
  151. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +150 -150
  152. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  153. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.scss +3 -3
  154. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +114 -114
  155. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +325 -325
  156. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  157. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts +22 -22
  158. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  159. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +64 -63
  160. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  161. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.scss +1 -1
  162. package/lib/cjs/appui-react/dialog/ContentDialog.d.ts +23 -23
  163. package/lib/cjs/appui-react/dialog/ContentDialog.js +70 -70
  164. package/lib/cjs/appui-react/dialog/ContentDialogManager.d.ts +12 -51
  165. package/lib/cjs/appui-react/dialog/ContentDialogManager.d.ts.map +1 -1
  166. package/lib/cjs/appui-react/dialog/ContentDialogManager.js +25 -85
  167. package/lib/cjs/appui-react/dialog/ContentDialogManager.js.map +1 -1
  168. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +84 -84
  169. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +141 -141
  170. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  171. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts +47 -47
  172. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +131 -131
  173. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  174. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts +35 -35
  175. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js +54 -54
  176. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  177. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts +45 -45
  178. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +119 -119
  179. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  180. package/lib/cjs/appui-react/dialog/ModalDialogManager.d.ts +12 -42
  181. package/lib/cjs/appui-react/dialog/ModalDialogManager.d.ts.map +1 -1
  182. package/lib/cjs/appui-react/dialog/ModalDialogManager.js +25 -68
  183. package/lib/cjs/appui-react/dialog/ModalDialogManager.js.map +1 -1
  184. package/lib/cjs/appui-react/dialog/ModelessDialog.d.ts +21 -21
  185. package/lib/cjs/appui-react/dialog/ModelessDialog.js +30 -30
  186. package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts +12 -51
  187. package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
  188. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js +26 -85
  189. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  190. package/lib/cjs/appui-react/dialog/StandardMessageBox.d.ts +42 -42
  191. package/lib/cjs/appui-react/dialog/StandardMessageBox.js +93 -93
  192. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts +38 -38
  193. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +81 -81
  194. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +61 -61
  195. package/lib/cjs/appui-react/feedback/ElementTooltip.js +131 -131
  196. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  197. package/lib/cjs/appui-react/feedback/ValidationTextbox.d.ts +73 -73
  198. package/lib/cjs/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
  199. package/lib/cjs/appui-react/feedback/ValidationTextbox.js +115 -114
  200. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  201. package/lib/cjs/appui-react/feedback/ValidationTextbox.scss +4 -8
  202. package/lib/cjs/appui-react/framework/FrameworkBackstage.d.ts +43 -43
  203. package/lib/cjs/appui-react/framework/FrameworkBackstage.js +9 -9
  204. package/lib/cjs/appui-react/framework/FrameworkChildWindows.d.ts +75 -75
  205. package/lib/cjs/appui-react/framework/FrameworkChildWindows.d.ts.map +1 -1
  206. package/lib/cjs/appui-react/framework/FrameworkChildWindows.js +9 -9
  207. package/lib/cjs/appui-react/framework/FrameworkChildWindows.js.map +1 -1
  208. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +154 -154
  209. package/lib/cjs/appui-react/framework/FrameworkContent.js +30 -30
  210. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  211. package/lib/cjs/appui-react/framework/FrameworkControls.d.ts +42 -42
  212. package/lib/cjs/appui-react/framework/FrameworkControls.js +2 -2
  213. package/lib/cjs/appui-react/framework/FrameworkControls.js.map +1 -1
  214. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +78 -78
  215. package/lib/cjs/appui-react/framework/FrameworkDialogs.js +23 -23
  216. package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
  217. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +289 -285
  218. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  219. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js +63 -63
  220. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  221. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +99 -99
  222. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js +2 -2
  223. package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  224. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +51 -51
  225. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js +17 -17
  226. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  227. package/lib/cjs/appui-react/framework/FrameworkVisibility.d.ts +36 -36
  228. package/lib/cjs/appui-react/framework/FrameworkVisibility.js +2 -2
  229. package/lib/cjs/appui-react/framework/FrameworkVisibility.js.map +1 -1
  230. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts +44 -39
  231. package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -1
  232. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js +9 -9
  233. package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -1
  234. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +207 -205
  235. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  236. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +850 -825
  237. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  238. package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts +13 -13
  239. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js +16 -16
  240. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +238 -234
  241. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  242. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +512 -508
  243. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  244. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts +34 -34
  245. package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  246. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js +46 -44
  247. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  248. package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +9 -12
  249. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts +21 -21
  250. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  251. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +87 -87
  252. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  253. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.scss +1 -3
  254. package/lib/cjs/appui-react/frontstage/NestedFrontstage.d.ts +13 -12
  255. package/lib/cjs/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
  256. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js +33 -30
  257. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  258. package/lib/cjs/appui-react/frontstage/StageUsage.d.ts +15 -14
  259. package/lib/cjs/appui-react/frontstage/StageUsage.d.ts.map +1 -1
  260. package/lib/cjs/appui-react/frontstage/StageUsage.js +23 -16
  261. package/lib/cjs/appui-react/frontstage/StageUsage.js.map +1 -1
  262. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +70 -65
  263. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  264. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +79 -78
  265. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  266. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts +10 -10
  267. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +37 -37
  268. package/lib/cjs/appui-react/hooks/useActiveStageId.d.ts +7 -7
  269. package/lib/cjs/appui-react/hooks/useActiveStageId.js +29 -29
  270. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts +8 -8
  271. package/lib/cjs/appui-react/hooks/useActiveViewport.js +46 -46
  272. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.d.ts +9 -9
  273. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +71 -71
  274. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.d.ts +8 -8
  275. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.d.ts.map +1 -1
  276. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js +26 -30
  277. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  278. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.d.ts +12 -12
  279. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js +30 -30
  280. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.d.ts +9 -9
  281. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +71 -71
  282. package/lib/cjs/appui-react/hooks/useSolarDataProvider.d.ts +9 -9
  283. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +65 -65
  284. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts +5 -5
  285. package/lib/cjs/appui-react/hooks/useUiVisibility.js +26 -26
  286. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts +39 -39
  287. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +111 -111
  288. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  289. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts +64 -96
  290. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  291. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js +176 -230
  292. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  293. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +38 -38
  294. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +95 -95
  295. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  296. package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +9 -9
  297. package/lib/cjs/appui-react/messages/ActivityMessage.js +79 -79
  298. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  299. package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts +74 -74
  300. package/lib/cjs/appui-react/messages/AppNotificationManager.js +125 -125
  301. package/lib/cjs/appui-react/messages/HollowIcon.d.ts +9 -9
  302. package/lib/cjs/appui-react/messages/HollowIcon.js +20 -20
  303. package/lib/cjs/appui-react/messages/InputField.d.ts +37 -37
  304. package/lib/cjs/appui-react/messages/InputField.d.ts.map +1 -1
  305. package/lib/cjs/appui-react/messages/InputField.js +92 -91
  306. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  307. package/lib/cjs/appui-react/messages/InputField.scss +8 -8
  308. package/lib/cjs/appui-react/messages/MessageLabel.d.ts +12 -12
  309. package/lib/cjs/appui-react/messages/MessageLabel.js +21 -21
  310. package/lib/cjs/appui-react/messages/MessageManager.d.ts +253 -244
  311. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  312. package/lib/cjs/appui-react/messages/MessageManager.js +465 -441
  313. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  314. package/lib/cjs/appui-react/messages/MessageSpan.d.ts +14 -14
  315. package/lib/cjs/appui-react/messages/MessageSpan.js +22 -22
  316. package/lib/cjs/appui-react/messages/Pointer.d.ts +69 -69
  317. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  318. package/lib/cjs/appui-react/messages/Pointer.js +173 -173
  319. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  320. package/lib/cjs/appui-react/messages/Pointer.scss +6 -6
  321. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.d.ts +62 -62
  322. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.d.ts.map +1 -1
  323. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.js +68 -68
  324. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  325. package/lib/cjs/appui-react/messages/StatusMessageManager.d.ts +24 -24
  326. package/lib/cjs/appui-react/messages/StatusMessageManager.js +55 -55
  327. package/lib/cjs/appui-react/messages/getToastCategory.d.ts +6 -6
  328. package/lib/cjs/appui-react/messages/getToastCategory.js +27 -27
  329. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.d.ts +13 -13
  330. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js +26 -26
  331. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  332. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.d.ts +13 -13
  333. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js +26 -26
  334. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  335. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +33 -33
  336. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +34 -34
  337. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts +71 -71
  338. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  339. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +187 -184
  340. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  341. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +1 -21
  342. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +117 -117
  343. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  344. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +151 -149
  345. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  346. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +44 -44
  347. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  348. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +113 -104
  349. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  350. package/lib/cjs/appui-react/pickers/ListPicker.d.ts +114 -111
  351. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  352. package/lib/cjs/appui-react/pickers/ListPicker.js +197 -194
  353. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  354. package/lib/cjs/appui-react/pickers/ListPicker.scss +12 -5
  355. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +95 -90
  356. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  357. package/lib/cjs/appui-react/pickers/ViewSelector.js +267 -250
  358. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  359. package/lib/cjs/appui-react/popup/CardPopup.d.ts +48 -48
  360. package/lib/cjs/appui-react/popup/CardPopup.js +90 -89
  361. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  362. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts +30 -30
  363. package/lib/cjs/appui-react/popup/HTMLElementPopup.js +42 -42
  364. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts +38 -38
  365. package/lib/cjs/appui-react/popup/InputEditorPopup.js +57 -57
  366. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts +19 -19
  367. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +253 -253
  368. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  369. package/lib/cjs/appui-react/popup/KeyinPalettePanel.scss +1 -1
  370. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts +19 -19
  371. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +47 -47
  372. package/lib/cjs/appui-react/popup/PopupManager.d.ts +105 -105
  373. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  374. package/lib/cjs/appui-react/popup/PopupManager.js +232 -232
  375. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  376. package/lib/cjs/appui-react/popup/PositionPopup.d.ts +28 -28
  377. package/lib/cjs/appui-react/popup/PositionPopup.js +48 -48
  378. package/lib/cjs/appui-react/popup/PositionPopup.scss +1 -1
  379. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts +33 -33
  380. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +56 -56
  381. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts +35 -34
  382. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  383. package/lib/cjs/appui-react/popup/ToolbarPopup.js +58 -57
  384. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  385. package/lib/cjs/appui-react/redux/FrameworkState.d.ts +22 -22
  386. package/lib/cjs/appui-react/redux/FrameworkState.js +20 -20
  387. package/lib/cjs/appui-react/redux/ReducerRegistry.d.ts +36 -36
  388. package/lib/cjs/appui-react/redux/ReducerRegistry.js +60 -60
  389. package/lib/cjs/appui-react/redux/SessionState.d.ts +103 -103
  390. package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
  391. package/lib/cjs/appui-react/redux/SessionState.js +130 -130
  392. package/lib/cjs/appui-react/redux/StateManager.d.ts +43 -43
  393. package/lib/cjs/appui-react/redux/StateManager.js +97 -97
  394. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  395. package/lib/cjs/appui-react/redux/connectIModel.d.ts +26 -26
  396. package/lib/cjs/appui-react/redux/connectIModel.js +94 -94
  397. package/lib/cjs/appui-react/redux/redux-ts.d.ts +197 -197
  398. package/lib/cjs/appui-react/redux/redux-ts.d.ts.map +1 -1
  399. package/lib/cjs/appui-react/redux/redux-ts.js +36 -36
  400. package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts +10 -10
  401. package/lib/cjs/appui-react/safearea/SafeAreaContext.js +16 -16
  402. package/lib/cjs/appui-react/safearea/SafeAreaHelpers.d.ts +7 -7
  403. package/lib/cjs/appui-react/safearea/SafeAreaHelpers.js +15 -15
  404. package/lib/cjs/appui-react/safearea/SafeAreaInsets.d.ts +13 -13
  405. package/lib/cjs/appui-react/safearea/SafeAreaInsets.js +21 -21
  406. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.d.ts +265 -306
  407. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.d.ts.map +1 -1
  408. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js +548 -695
  409. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  410. package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts +54 -54
  411. package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  412. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +209 -199
  413. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  414. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts +26 -26
  415. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  416. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +200 -201
  417. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  418. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +2 -2
  419. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts +17 -17
  420. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +53 -53
  421. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts +27 -27
  422. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +192 -192
  423. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.scss +3 -4
  424. package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts +28 -28
  425. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +48 -48
  426. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  427. package/lib/cjs/appui-react/shared/AnyItemDef.d.ts +11 -11
  428. package/lib/cjs/appui-react/shared/AnyItemDef.d.ts.map +1 -1
  429. package/lib/cjs/appui-react/shared/AnyItemDef.js +9 -9
  430. package/lib/cjs/appui-react/shared/AnyToolbarItemDef.d.ts +9 -9
  431. package/lib/cjs/appui-react/shared/AnyToolbarItemDef.d.ts.map +1 -1
  432. package/lib/cjs/appui-react/shared/AnyToolbarItemDef.js +9 -9
  433. package/lib/cjs/appui-react/shared/CommandItemDef.d.ts +16 -16
  434. package/lib/cjs/appui-react/shared/CommandItemDef.js +35 -35
  435. package/lib/cjs/appui-react/shared/CommandItemDef.js.map +1 -1
  436. package/lib/cjs/appui-react/shared/CustomItemDef.d.ts +17 -17
  437. package/lib/cjs/appui-react/shared/CustomItemDef.js +32 -32
  438. package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
  439. package/lib/cjs/appui-react/shared/CustomItemProps.d.ts +12 -12
  440. package/lib/cjs/appui-react/shared/CustomItemProps.js +9 -9
  441. package/lib/cjs/appui-react/shared/GroupItemProps.d.ts +19 -19
  442. package/lib/cjs/appui-react/shared/GroupItemProps.js +9 -9
  443. package/lib/cjs/appui-react/shared/ItemDefBase.d.ts +58 -58
  444. package/lib/cjs/appui-react/shared/ItemDefBase.js +78 -78
  445. package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
  446. package/lib/cjs/appui-react/shared/ItemMap.d.ts +21 -21
  447. package/lib/cjs/appui-react/shared/ItemMap.js +51 -51
  448. package/lib/cjs/appui-react/shared/ItemProps.d.ts +48 -48
  449. package/lib/cjs/appui-react/shared/ItemProps.d.ts.map +1 -1
  450. package/lib/cjs/appui-react/shared/ItemProps.js +9 -9
  451. package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
  452. package/lib/cjs/appui-react/shared/MenuItem.d.ts +36 -36
  453. package/lib/cjs/appui-react/shared/MenuItem.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/shared/MenuItem.js +112 -112
  455. package/lib/cjs/appui-react/shared/SelectionScope.d.ts +13 -13
  456. package/lib/cjs/appui-react/shared/SelectionScope.js +21 -21
  457. package/lib/cjs/appui-react/shared/ToolItemDef.d.ts +17 -17
  458. package/lib/cjs/appui-react/shared/ToolItemDef.d.ts.map +1 -1
  459. package/lib/cjs/appui-react/shared/ToolItemDef.js +39 -39
  460. package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
  461. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +44 -44
  462. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
  463. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js +9 -9
  464. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +108 -265
  465. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  466. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +248 -220
  467. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  468. package/lib/cjs/appui-react/stagepanels/StagePanelLocation.d.ts +12 -12
  469. package/lib/cjs/appui-react/stagepanels/StagePanelLocation.d.ts.map +1 -1
  470. package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js +20 -15
  471. package/lib/cjs/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
  472. package/lib/cjs/appui-react/stagepanels/StagePanelSection.d.ts +10 -12
  473. package/lib/cjs/appui-react/stagepanels/StagePanelSection.d.ts.map +1 -1
  474. package/lib/cjs/appui-react/stagepanels/StagePanelSection.js +18 -15
  475. package/lib/cjs/appui-react/stagepanels/StagePanelSection.js.map +1 -1
  476. package/lib/cjs/appui-react/statusbar/Field.d.ts +22 -0
  477. package/lib/cjs/appui-react/statusbar/Field.d.ts.map +1 -0
  478. package/lib/cjs/appui-react/statusbar/Field.js +26 -0
  479. package/lib/cjs/appui-react/statusbar/Field.js.map +1 -0
  480. package/lib/{esm/appui-react/statusbar/Indicator.scss → cjs/appui-react/statusbar/Field.scss} +16 -17
  481. package/lib/cjs/appui-react/statusbar/Indicator.d.ts +24 -25
  482. package/lib/cjs/appui-react/statusbar/Indicator.d.ts.map +1 -1
  483. package/lib/cjs/appui-react/statusbar/Indicator.js +29 -35
  484. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  485. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts +23 -23
  486. package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
  487. package/lib/cjs/appui-react/statusbar/LabelIndicator.js +28 -29
  488. package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -1
  489. package/lib/cjs/appui-react/statusbar/Overflow.d.ts +19 -19
  490. package/lib/cjs/appui-react/statusbar/Overflow.js +29 -29
  491. package/lib/cjs/appui-react/statusbar/OverflowPanel.d.ts +20 -20
  492. package/lib/cjs/appui-react/statusbar/OverflowPanel.js +22 -22
  493. package/lib/cjs/appui-react/statusbar/Popup.d.ts +10 -0
  494. package/lib/cjs/appui-react/statusbar/Popup.d.ts.map +1 -0
  495. package/lib/cjs/appui-react/statusbar/Popup.js +20 -0
  496. package/lib/cjs/appui-react/statusbar/Popup.js.map +1 -0
  497. package/lib/cjs/appui-react/statusbar/Separator.d.ts +10 -10
  498. package/lib/cjs/appui-react/statusbar/Separator.js +21 -21
  499. package/lib/cjs/appui-react/statusbar/Separator.scss +1 -3
  500. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +77 -62
  501. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  502. package/lib/cjs/appui-react/statusbar/StatusBar.js +145 -129
  503. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  504. package/lib/cjs/appui-react/statusbar/StatusBar.scss +1 -3
  505. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts +46 -46
  506. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  507. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +282 -283
  508. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  509. package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts +98 -66
  510. package/lib/cjs/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
  511. package/lib/cjs/appui-react/statusbar/StatusBarItem.js +61 -48
  512. package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
  513. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.d.ts +24 -32
  514. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.d.ts.map +1 -1
  515. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js +60 -52
  516. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  517. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts +40 -0
  518. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -0
  519. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +135 -0
  520. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -0
  521. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts +20 -20
  522. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  523. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js +23 -23
  524. package/lib/cjs/appui-react/statusbar/dialog/Button.d.ts +20 -20
  525. package/lib/cjs/appui-react/statusbar/dialog/Button.js +19 -19
  526. package/lib/cjs/appui-react/statusbar/dialog/Dialog.d.ts +29 -29
  527. package/lib/cjs/appui-react/statusbar/dialog/Dialog.js +30 -30
  528. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.d.ts +18 -18
  529. package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js +19 -19
  530. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts +9 -8
  531. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
  532. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js +32 -37
  533. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  534. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +9 -9
  535. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  536. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +50 -50
  537. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  538. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts +9 -9
  539. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  540. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +61 -59
  541. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  542. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +46 -46
  543. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  544. package/lib/cjs/appui-react/statusfields/MessageCenter.js +126 -123
  545. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  546. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts +16 -16
  547. package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  548. package/lib/cjs/appui-react/statusfields/SectionsField.js +80 -77
  549. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  550. package/lib/cjs/appui-react/statusfields/SectionsField.scss +3 -4
  551. package/lib/cjs/appui-react/statusfields/SelectionInfo.d.ts +26 -26
  552. package/lib/cjs/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
  553. package/lib/cjs/appui-react/statusfields/SelectionInfo.js +48 -47
  554. package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
  555. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts +30 -37
  556. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  557. package/lib/cjs/appui-react/statusfields/SelectionScope.js +59 -66
  558. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  559. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +1 -1
  560. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +22 -41
  561. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  562. package/lib/cjs/appui-react/statusfields/SnapMode.js +97 -88
  563. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  564. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts +30 -30
  565. package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  566. package/lib/cjs/appui-react/statusfields/ViewAttributes.js +93 -92
  567. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  568. package/lib/cjs/appui-react/statusfields/ViewAttributes.scss +0 -4
  569. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts +31 -31
  570. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +91 -91
  571. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +95 -95
  572. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  573. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +443 -442
  574. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  575. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +12 -12
  576. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts +81 -79
  577. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  578. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +204 -222
  579. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  580. package/lib/cjs/appui-react/theme/ThemeManager.d.ts +55 -55
  581. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  582. package/lib/cjs/appui-react/theme/ThemeManager.js +96 -97
  583. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  584. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.d.ts +15 -15
  585. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js +52 -52
  586. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.d.ts +15 -15
  587. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js +58 -58
  588. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.d.ts +19 -19
  589. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +65 -65
  590. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  591. package/lib/cjs/appui-react/toolbar/DragInteraction.d.ts +8 -8
  592. package/lib/cjs/appui-react/toolbar/DragInteraction.js +15 -15
  593. package/lib/cjs/appui-react/toolbar/GroupItem.d.ts +37 -37
  594. package/lib/cjs/appui-react/toolbar/GroupItem.js +76 -76
  595. package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
  596. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts +32 -0
  597. package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -0
  598. package/lib/cjs/appui-react/toolbar/Toolbar.js +26 -0
  599. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -0
  600. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts +19 -20
  601. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  602. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +220 -224
  603. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  604. package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts +22 -26
  605. package/lib/cjs/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  606. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +128 -138
  607. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  608. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts +103 -52
  609. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  610. package/lib/cjs/appui-react/toolbar/ToolbarItem.js +51 -40
  611. package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
  612. package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.d.ts +15 -13
  613. package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.d.ts.map +1 -1
  614. package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js +52 -27
  615. package/lib/cjs/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
  616. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts +46 -0
  617. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -0
  618. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js +248 -0
  619. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -0
  620. package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.d.ts +34 -0
  621. package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -0
  622. package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.js +26 -0
  623. package/lib/cjs/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -0
  624. package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.d.ts +8 -0
  625. package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.d.ts.map +1 -0
  626. package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js +26 -0
  627. package/lib/cjs/appui-react/toolbar/toUIAToolbarItem.js.map +1 -0
  628. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.d.ts +9 -8
  629. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.d.ts.map +1 -1
  630. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js +32 -36
  631. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  632. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts +9 -9
  633. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
  634. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +48 -52
  635. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  636. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +36 -36
  637. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  638. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +372 -367
  639. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  640. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.d.ts +11 -11
  641. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js +30 -30
  642. package/lib/cjs/appui-react/tools/KeyinPaletteTools.d.ts +16 -16
  643. package/lib/cjs/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  644. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js +32 -30
  645. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  646. package/lib/cjs/appui-react/tools/OpenSettingsTool.d.ts +16 -16
  647. package/lib/cjs/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  648. package/lib/cjs/appui-react/tools/OpenSettingsTool.js +34 -32
  649. package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
  650. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts +26 -26
  651. package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  652. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +62 -60
  653. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  654. package/lib/cjs/appui-react/tools/ToolSettingsTools.d.ts +22 -22
  655. package/lib/cjs/appui-react/tools/ToolSettingsTools.js +46 -46
  656. package/lib/cjs/appui-react/tools/ToolSettingsTools.js.map +1 -1
  657. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts +25 -25
  658. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts.map +1 -1
  659. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +74 -72
  660. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  661. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts +49 -49
  662. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +123 -123
  663. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  664. package/lib/cjs/appui-react/toolsettings/ToolInformation.d.ts +14 -14
  665. package/lib/cjs/appui-react/toolsettings/ToolInformation.js +43 -43
  666. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.d.ts +35 -35
  667. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js +38 -38
  668. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +34 -0
  669. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -0
  670. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +502 -0
  671. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -0
  672. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +27 -10
  673. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
  674. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js +73 -19
  675. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  676. package/lib/cjs/appui-react/ui-items-provider/ProviderItem.d.ts +9 -8
  677. package/lib/cjs/appui-react/ui-items-provider/ProviderItem.d.ts.map +1 -1
  678. package/lib/cjs/appui-react/ui-items-provider/ProviderItem.js +9 -9
  679. package/lib/cjs/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
  680. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +64 -62
  681. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  682. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +47 -103
  683. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  684. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -36
  685. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  686. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +87 -86
  687. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  688. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +25 -24
  689. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  690. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +41 -67
  691. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  692. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +34 -33
  693. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  694. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +52 -52
  695. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  696. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +25 -24
  697. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  698. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +41 -77
  699. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  700. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +32 -31
  701. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  702. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +62 -69
  703. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  704. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +93 -23
  705. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  706. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +204 -18
  707. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  708. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts +26 -8
  709. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.d.ts.map +1 -1
  710. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.js +9 -9
  711. package/lib/cjs/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  712. package/lib/cjs/appui-react/ui-items-provider/isProviderItem.d.ts +7 -0
  713. package/lib/cjs/appui-react/ui-items-provider/isProviderItem.d.ts.map +1 -0
  714. package/lib/{esm/appui-react/content/FloatingViewportContent.css → cjs/appui-react/ui-items-provider/isProviderItem.js} +16 -9
  715. package/lib/cjs/appui-react/ui-items-provider/isProviderItem.js.map +1 -0
  716. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +201 -201
  717. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +344 -344
  718. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts +27 -27
  719. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +206 -206
  720. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts +27 -27
  721. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +53 -53
  722. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +2 -3
  723. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +49 -49
  724. package/lib/cjs/appui-react/uistate/AppUiSettings.js +89 -89
  725. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  726. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts +19 -19
  727. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +38 -38
  728. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  729. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts +83 -83
  730. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  731. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +197 -197
  732. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  733. package/lib/cjs/appui-react/utils/PropsHelper.d.ts +21 -20
  734. package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
  735. package/lib/cjs/appui-react/utils/PropsHelper.js +67 -66
  736. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  737. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.d.ts +17 -17
  738. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js +60 -60
  739. package/lib/cjs/appui-react/utils/ViewUtilities.d.ts +66 -66
  740. package/lib/cjs/appui-react/utils/ViewUtilities.js +98 -98
  741. package/lib/cjs/appui-react/widget-panels/Content.d.ts +6 -6
  742. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  743. package/lib/cjs/appui-react/widget-panels/Content.js +58 -60
  744. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  745. package/lib/cjs/appui-react/widget-panels/FloatingWidget.d.ts +6 -6
  746. package/lib/cjs/appui-react/widget-panels/FloatingWidget.js +18 -18
  747. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +125 -125
  748. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  749. package/lib/cjs/appui-react/widget-panels/Frontstage.js +1092 -1089
  750. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  751. package/lib/cjs/appui-react/widget-panels/FrontstageContent.d.ts +3 -3
  752. package/lib/cjs/appui-react/widget-panels/FrontstageContent.js +21 -21
  753. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.d.ts +8 -8
  754. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +38 -38
  755. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts +8 -8
  756. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  757. package/lib/cjs/appui-react/widget-panels/StatusBar.js +28 -27
  758. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  759. package/lib/cjs/appui-react/widget-panels/Tab.d.ts +10 -10
  760. package/lib/cjs/appui-react/widget-panels/Tab.js +34 -34
  761. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +37 -37
  762. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +156 -156
  763. package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts +7 -7
  764. package/lib/cjs/appui-react/widget-panels/Toolbars.js +24 -24
  765. package/lib/cjs/appui-react/widget-panels/useTransientState.d.ts +7 -7
  766. package/lib/cjs/appui-react/widget-panels/useTransientState.js +18 -18
  767. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.d.ts +8 -8
  768. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +29 -29
  769. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts +22 -21
  770. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  771. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +51 -51
  772. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  773. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts +19 -19
  774. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  775. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +60 -60
  776. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  777. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +23 -23
  778. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  779. package/lib/cjs/appui-react/widgets/BasicToolWidget.js +61 -61
  780. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  781. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts +37 -37
  782. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +48 -48
  783. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  784. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts +38 -38
  785. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +105 -105
  786. package/lib/cjs/appui-react/widgets/StableWidgetDef.d.ts +8 -8
  787. package/lib/cjs/appui-react/widgets/StableWidgetDef.js +29 -29
  788. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +27 -27
  789. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js +42 -42
  790. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  791. package/lib/cjs/appui-react/widgets/ToolSettingsContent.d.ts +10 -10
  792. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js +15 -15
  793. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  794. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts +23 -23
  795. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js +34 -34
  796. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts +26 -26
  797. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +36 -36
  798. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  799. package/lib/cjs/appui-react/widgets/Widget.d.ts +39 -0
  800. package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -0
  801. package/lib/cjs/appui-react/widgets/{WidgetProps.js → Widget.js} +10 -10
  802. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -0
  803. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +15 -25
  804. package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -1
  805. package/lib/cjs/appui-react/widgets/WidgetConfig.js +9 -9
  806. package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -1
  807. package/lib/cjs/appui-react/widgets/WidgetControl.d.ts +33 -33
  808. package/lib/cjs/appui-react/widgets/WidgetControl.d.ts.map +1 -1
  809. package/lib/cjs/appui-react/widgets/WidgetControl.js +44 -44
  810. package/lib/cjs/appui-react/widgets/WidgetControl.js.map +1 -1
  811. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +170 -168
  812. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  813. package/lib/cjs/appui-react/widgets/WidgetDef.js +311 -323
  814. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  815. package/lib/cjs/appui-react/widgets/WidgetHost.d.ts +41 -41
  816. package/lib/cjs/appui-react/widgets/WidgetHost.js +90 -90
  817. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +55 -55
  818. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  819. package/lib/cjs/appui-react/widgets/WidgetManager.js +106 -119
  820. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  821. package/lib/cjs/appui-react/widgets/WidgetState.d.ts +13 -12
  822. package/lib/cjs/appui-react/widgets/WidgetState.d.ts.map +1 -1
  823. package/lib/cjs/appui-react/widgets/WidgetState.js +21 -15
  824. package/lib/cjs/appui-react/widgets/WidgetState.js.map +1 -1
  825. package/lib/cjs/appui-react.d.ts +336 -341
  826. package/lib/cjs/appui-react.d.ts.map +1 -1
  827. package/lib/cjs/appui-react.js +357 -358
  828. package/lib/cjs/appui-react.js.map +1 -1
  829. package/lib/esm/appui-react/UiFramework.d.ts +261 -269
  830. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  831. package/lib/esm/appui-react/UiFramework.js +541 -552
  832. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  833. package/lib/esm/appui-react/_variables.scss +4 -5
  834. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.d.ts +27 -27
  835. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js +70 -70
  836. package/lib/esm/appui-react/accudraw/AccuDrawDialog.d.ts +21 -21
  837. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js +35 -35
  838. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +19 -19
  839. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +212 -212
  840. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts +42 -42
  841. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +120 -119
  842. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  843. package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +4 -10
  844. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.d.ts +12 -12
  845. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js +106 -106
  846. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.d.ts +18 -18
  847. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js +61 -60
  848. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  849. package/lib/esm/appui-react/accudraw/AccuDrawUiSettings.d.ts +61 -61
  850. package/lib/esm/appui-react/accudraw/AccuDrawUiSettings.js +8 -8
  851. package/lib/esm/appui-react/accudraw/AccuDrawWidget.d.ts +18 -18
  852. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js +40 -39
  853. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  854. package/lib/esm/appui-react/accudraw/Calculator.d.ts +46 -46
  855. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  856. package/lib/esm/appui-react/accudraw/Calculator.js +215 -213
  857. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  858. package/lib/esm/appui-react/accudraw/Calculator.scss +12 -14
  859. package/lib/esm/appui-react/accudraw/CalculatorEngine.d.ts +41 -41
  860. package/lib/esm/appui-react/accudraw/CalculatorEngine.js +191 -191
  861. package/lib/esm/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  862. package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts +31 -31
  863. package/lib/esm/appui-react/accudraw/CalculatorPopup.js +37 -37
  864. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +147 -147
  865. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +221 -220
  866. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  867. package/lib/esm/appui-react/accudraw/MenuButton.d.ts +30 -30
  868. package/lib/esm/appui-react/accudraw/MenuButton.d.ts.map +1 -1
  869. package/lib/esm/appui-react/accudraw/MenuButton.js +63 -62
  870. package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
  871. package/lib/esm/appui-react/accudraw/MenuButtonPopup.d.ts +27 -27
  872. package/lib/esm/appui-react/accudraw/MenuButtonPopup.js +33 -33
  873. package/lib/esm/appui-react/accudraw/SquareButton.d.ts +14 -14
  874. package/lib/esm/appui-react/accudraw/SquareButton.js +22 -22
  875. package/lib/esm/appui-react/accudraw/SquareButton.scss +10 -25
  876. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +27 -27
  877. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  878. package/lib/esm/appui-react/backstage/BackstageComposer.js +134 -137
  879. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  880. package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts +28 -29
  881. package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
  882. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +49 -49
  883. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  884. package/lib/esm/appui-react/backstage/BackstageItem.d.ts +59 -28
  885. package/lib/esm/appui-react/backstage/BackstageItem.d.ts.map +1 -1
  886. package/lib/esm/appui-react/backstage/BackstageItem.js +19 -20
  887. package/lib/esm/appui-react/backstage/BackstageItem.js.map +1 -1
  888. package/lib/esm/appui-react/backstage/BackstageItemUtilities.d.ts +14 -13
  889. package/lib/esm/appui-react/backstage/BackstageItemUtilities.d.ts.map +1 -1
  890. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js +41 -41
  891. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  892. package/lib/esm/appui-react/backstage/BackstageItemsManager.d.ts +39 -0
  893. package/lib/esm/appui-react/backstage/BackstageItemsManager.d.ts.map +1 -0
  894. package/lib/esm/appui-react/backstage/BackstageItemsManager.js +126 -0
  895. package/lib/esm/appui-react/backstage/BackstageItemsManager.js.map +1 -0
  896. package/lib/esm/appui-react/backstage/BackstageManager.d.ts +35 -35
  897. package/lib/esm/appui-react/backstage/BackstageManager.js +71 -71
  898. package/lib/esm/appui-react/backstage/InternalBackstageManager.d.ts +22 -22
  899. package/lib/esm/appui-react/backstage/InternalBackstageManager.js +51 -51
  900. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.d.ts +9 -8
  901. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.d.ts.map +1 -1
  902. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js +28 -32
  903. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  904. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +9 -9
  905. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  906. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js +37 -41
  907. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  908. package/lib/esm/appui-react/childwindow/CopyStyles.d.ts +7 -7
  909. package/lib/esm/appui-react/childwindow/CopyStyles.js +38 -38
  910. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +71 -71
  911. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  912. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +204 -204
  913. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  914. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts +15 -15
  915. package/lib/esm/appui-react/childwindow/PopoutWidget.js +15 -15
  916. package/lib/esm/appui-react/configurableui/ActivityTracker.d.ts +29 -29
  917. package/lib/esm/appui-react/configurableui/ActivityTracker.js +67 -67
  918. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts +21 -21
  919. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +55 -55
  920. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.d.ts +95 -95
  921. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.d.ts.map +1 -1
  922. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js +89 -89
  923. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  924. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +81 -81
  925. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +149 -148
  926. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  927. package/lib/esm/appui-react/configurableui/TimeTracker.d.ts +33 -33
  928. package/lib/esm/appui-react/configurableui/TimeTracker.js +77 -77
  929. package/lib/esm/appui-react/configurableui/configurableui.scss +0 -4
  930. package/lib/esm/appui-react/configurableui/state.d.ts +61 -61
  931. package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
  932. package/lib/esm/appui-react/configurableui/state.js +107 -107
  933. package/lib/esm/appui-react/content/ContentControl.d.ts +64 -64
  934. package/lib/esm/appui-react/content/ContentControl.js +72 -72
  935. package/lib/esm/appui-react/content/ContentGroup.d.ts +93 -93
  936. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  937. package/lib/esm/appui-react/content/ContentGroup.js +170 -169
  938. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  939. package/lib/esm/appui-react/content/ContentLayout.d.ts +90 -90
  940. package/lib/esm/appui-react/content/ContentLayout.js +365 -365
  941. package/lib/esm/appui-react/content/ContentLayout.scss +4 -4
  942. package/lib/esm/appui-react/content/DefaultViewOverlay.d.ts +22 -22
  943. package/lib/esm/appui-react/content/DefaultViewOverlay.js +46 -46
  944. package/lib/esm/appui-react/content/DefaultViewOverlay.scss +10 -7
  945. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts +31 -27
  946. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  947. package/lib/esm/appui-react/content/FloatingViewportContent.js +73 -78
  948. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  949. package/lib/esm/appui-react/content/IModelViewport.d.ts +80 -80
  950. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  951. package/lib/esm/appui-react/content/IModelViewport.js +145 -149
  952. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  953. package/lib/esm/appui-react/content/InternalContentLayoutManager.d.ts +47 -47
  954. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +92 -91
  955. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  956. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts +79 -79
  957. package/lib/esm/appui-react/content/InternalContentViewManager.js +206 -205
  958. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  959. package/lib/esm/appui-react/content/StageContentLayout.d.ts +35 -35
  960. package/lib/esm/appui-react/content/StageContentLayout.js +62 -62
  961. package/lib/esm/appui-react/content/ViewStateHelper.d.ts +25 -25
  962. package/lib/esm/appui-react/content/ViewStateHelper.js +46 -46
  963. package/lib/esm/appui-react/content/ViewportContentControl.d.ts +61 -61
  964. package/lib/esm/appui-react/content/ViewportContentControl.js +126 -126
  965. package/lib/esm/appui-react/content/split-pane/Pane.d.ts +20 -20
  966. package/lib/esm/appui-react/content/split-pane/Pane.js +38 -38
  967. package/lib/esm/appui-react/content/split-pane/Resizer.d.ts +22 -22
  968. package/lib/esm/appui-react/content/split-pane/Resizer.js +34 -34
  969. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts +69 -69
  970. package/lib/esm/appui-react/content/split-pane/SplitPane.js +238 -238
  971. package/lib/esm/appui-react/cursor/CursorInformation.d.ts +68 -68
  972. package/lib/esm/appui-react/cursor/CursorInformation.js +140 -139
  973. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  974. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts +32 -32
  975. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +72 -72
  976. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts +58 -58
  977. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +146 -145
  978. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  979. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.scss +3 -3
  980. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +114 -114
  981. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +319 -318
  982. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  983. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts +22 -22
  984. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  985. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +60 -59
  986. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  987. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.scss +1 -1
  988. package/lib/esm/appui-react/dialog/ContentDialog.d.ts +23 -23
  989. package/lib/esm/appui-react/dialog/ContentDialog.js +65 -65
  990. package/lib/esm/appui-react/dialog/ContentDialogManager.d.ts +12 -51
  991. package/lib/esm/appui-react/dialog/ContentDialogManager.d.ts.map +1 -1
  992. package/lib/esm/appui-react/dialog/ContentDialogManager.js +21 -80
  993. package/lib/esm/appui-react/dialog/ContentDialogManager.js.map +1 -1
  994. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +84 -84
  995. package/lib/esm/appui-react/dialog/DialogManagerBase.js +136 -135
  996. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  997. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts +47 -47
  998. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +128 -127
  999. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  1000. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts +35 -35
  1001. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js +51 -50
  1002. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  1003. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts +45 -45
  1004. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +116 -115
  1005. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  1006. package/lib/esm/appui-react/dialog/ModalDialogManager.d.ts +12 -42
  1007. package/lib/esm/appui-react/dialog/ModalDialogManager.d.ts.map +1 -1
  1008. package/lib/esm/appui-react/dialog/ModalDialogManager.js +21 -63
  1009. package/lib/esm/appui-react/dialog/ModalDialogManager.js.map +1 -1
  1010. package/lib/esm/appui-react/dialog/ModelessDialog.d.ts +21 -21
  1011. package/lib/esm/appui-react/dialog/ModelessDialog.js +26 -26
  1012. package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts +12 -51
  1013. package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
  1014. package/lib/esm/appui-react/dialog/ModelessDialogManager.js +22 -80
  1015. package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  1016. package/lib/esm/appui-react/dialog/StandardMessageBox.d.ts +42 -42
  1017. package/lib/esm/appui-react/dialog/StandardMessageBox.js +89 -89
  1018. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts +38 -38
  1019. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +77 -77
  1020. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +61 -61
  1021. package/lib/esm/appui-react/feedback/ElementTooltip.js +127 -126
  1022. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  1023. package/lib/esm/appui-react/feedback/ValidationTextbox.d.ts +73 -73
  1024. package/lib/esm/appui-react/feedback/ValidationTextbox.d.ts.map +1 -1
  1025. package/lib/esm/appui-react/feedback/ValidationTextbox.js +111 -110
  1026. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  1027. package/lib/esm/appui-react/feedback/ValidationTextbox.scss +4 -8
  1028. package/lib/esm/appui-react/framework/FrameworkBackstage.d.ts +43 -43
  1029. package/lib/esm/appui-react/framework/FrameworkBackstage.js +8 -8
  1030. package/lib/esm/appui-react/framework/FrameworkChildWindows.d.ts +75 -75
  1031. package/lib/esm/appui-react/framework/FrameworkChildWindows.d.ts.map +1 -1
  1032. package/lib/esm/appui-react/framework/FrameworkChildWindows.js +8 -8
  1033. package/lib/esm/appui-react/framework/FrameworkChildWindows.js.map +1 -1
  1034. package/lib/esm/appui-react/framework/FrameworkContent.d.ts +154 -154
  1035. package/lib/esm/appui-react/framework/FrameworkContent.js +24 -24
  1036. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  1037. package/lib/esm/appui-react/framework/FrameworkControls.d.ts +42 -42
  1038. package/lib/esm/appui-react/framework/FrameworkControls.js +1 -1
  1039. package/lib/esm/appui-react/framework/FrameworkControls.js.map +1 -1
  1040. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +78 -78
  1041. package/lib/esm/appui-react/framework/FrameworkDialogs.js +18 -18
  1042. package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
  1043. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +289 -285
  1044. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  1045. package/lib/esm/appui-react/framework/FrameworkFrontstages.js +52 -52
  1046. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  1047. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +99 -99
  1048. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js +1 -1
  1049. package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
  1050. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +51 -51
  1051. package/lib/esm/appui-react/framework/FrameworkToolSettings.js +13 -13
  1052. package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  1053. package/lib/esm/appui-react/framework/FrameworkVisibility.d.ts +36 -36
  1054. package/lib/esm/appui-react/framework/FrameworkVisibility.js +1 -1
  1055. package/lib/esm/appui-react/framework/FrameworkVisibility.js.map +1 -1
  1056. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts +44 -39
  1057. package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -1
  1058. package/lib/esm/appui-react/frontstage/FrontstageConfig.js +8 -8
  1059. package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -1
  1060. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +207 -205
  1061. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  1062. package/lib/esm/appui-react/frontstage/FrontstageDef.js +843 -818
  1063. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  1064. package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts +13 -13
  1065. package/lib/esm/appui-react/frontstage/FrontstageProvider.js +12 -12
  1066. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +238 -234
  1067. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  1068. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +509 -504
  1069. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  1070. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts +34 -34
  1071. package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
  1072. package/lib/esm/appui-react/frontstage/ModalFrontstage.js +42 -40
  1073. package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  1074. package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +9 -12
  1075. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts +21 -21
  1076. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  1077. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +84 -83
  1078. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  1079. package/lib/esm/appui-react/frontstage/ModalSettingsStage.scss +1 -3
  1080. package/lib/esm/appui-react/frontstage/NestedFrontstage.d.ts +13 -12
  1081. package/lib/esm/appui-react/frontstage/NestedFrontstage.d.ts.map +1 -1
  1082. package/lib/esm/appui-react/frontstage/NestedFrontstage.js +30 -26
  1083. package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  1084. package/lib/esm/appui-react/frontstage/StageUsage.d.ts +15 -14
  1085. package/lib/esm/appui-react/frontstage/StageUsage.d.ts.map +1 -1
  1086. package/lib/esm/appui-react/frontstage/StageUsage.js +20 -13
  1087. package/lib/esm/appui-react/frontstage/StageUsage.js.map +1 -1
  1088. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +70 -65
  1089. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  1090. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +75 -74
  1091. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  1092. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts +10 -10
  1093. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +33 -33
  1094. package/lib/esm/appui-react/hooks/useActiveStageId.d.ts +7 -7
  1095. package/lib/esm/appui-react/hooks/useActiveStageId.js +25 -25
  1096. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts +8 -8
  1097. package/lib/esm/appui-react/hooks/useActiveViewport.js +42 -42
  1098. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.d.ts +9 -9
  1099. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +67 -67
  1100. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.d.ts +8 -8
  1101. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.d.ts.map +1 -1
  1102. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js +22 -26
  1103. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  1104. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.d.ts +12 -12
  1105. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js +25 -25
  1106. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.d.ts +9 -9
  1107. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +67 -67
  1108. package/lib/esm/appui-react/hooks/useSolarDataProvider.d.ts +9 -9
  1109. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +61 -61
  1110. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts +5 -5
  1111. package/lib/esm/appui-react/hooks/useUiVisibility.js +22 -22
  1112. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts +39 -39
  1113. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +108 -107
  1114. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  1115. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts +64 -96
  1116. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
  1117. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js +171 -224
  1118. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  1119. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +38 -38
  1120. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +91 -90
  1121. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  1122. package/lib/esm/appui-react/messages/ActivityMessage.d.ts +9 -9
  1123. package/lib/esm/appui-react/messages/ActivityMessage.js +75 -75
  1124. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  1125. package/lib/esm/appui-react/messages/AppNotificationManager.d.ts +74 -74
  1126. package/lib/esm/appui-react/messages/AppNotificationManager.js +121 -121
  1127. package/lib/esm/appui-react/messages/HollowIcon.d.ts +9 -9
  1128. package/lib/esm/appui-react/messages/HollowIcon.js +16 -16
  1129. package/lib/esm/appui-react/messages/InputField.d.ts +37 -37
  1130. package/lib/esm/appui-react/messages/InputField.d.ts.map +1 -1
  1131. package/lib/esm/appui-react/messages/InputField.js +88 -87
  1132. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  1133. package/lib/esm/appui-react/messages/InputField.scss +8 -8
  1134. package/lib/esm/appui-react/messages/MessageLabel.d.ts +12 -12
  1135. package/lib/esm/appui-react/messages/MessageLabel.js +17 -17
  1136. package/lib/esm/appui-react/messages/MessageManager.d.ts +253 -244
  1137. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  1138. package/lib/esm/appui-react/messages/MessageManager.js +454 -429
  1139. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  1140. package/lib/esm/appui-react/messages/MessageSpan.d.ts +14 -14
  1141. package/lib/esm/appui-react/messages/MessageSpan.js +17 -17
  1142. package/lib/esm/appui-react/messages/Pointer.d.ts +69 -69
  1143. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  1144. package/lib/esm/appui-react/messages/Pointer.js +169 -168
  1145. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  1146. package/lib/esm/appui-react/messages/Pointer.scss +6 -6
  1147. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.d.ts +62 -62
  1148. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.d.ts.map +1 -1
  1149. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.js +63 -63
  1150. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  1151. package/lib/esm/appui-react/messages/StatusMessageManager.d.ts +24 -24
  1152. package/lib/esm/appui-react/messages/StatusMessageManager.js +51 -51
  1153. package/lib/esm/appui-react/messages/getToastCategory.d.ts +6 -6
  1154. package/lib/esm/appui-react/messages/getToastCategory.js +23 -23
  1155. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.d.ts +13 -13
  1156. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js +23 -22
  1157. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  1158. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.d.ts +13 -13
  1159. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js +23 -22
  1160. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  1161. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +33 -33
  1162. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +29 -29
  1163. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts +71 -71
  1164. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  1165. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +183 -179
  1166. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  1167. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +1 -21
  1168. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +117 -117
  1169. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  1170. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +145 -142
  1171. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  1172. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts +44 -44
  1173. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.d.ts.map +1 -1
  1174. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +109 -99
  1175. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  1176. package/lib/esm/appui-react/pickers/ListPicker.d.ts +114 -111
  1177. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  1178. package/lib/esm/appui-react/pickers/ListPicker.js +190 -187
  1179. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  1180. package/lib/esm/appui-react/pickers/ListPicker.scss +12 -5
  1181. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +95 -90
  1182. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  1183. package/lib/esm/appui-react/pickers/ViewSelector.js +263 -245
  1184. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  1185. package/lib/esm/appui-react/popup/CardPopup.d.ts +48 -48
  1186. package/lib/esm/appui-react/popup/CardPopup.js +85 -84
  1187. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  1188. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts +30 -30
  1189. package/lib/esm/appui-react/popup/HTMLElementPopup.js +38 -38
  1190. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts +38 -38
  1191. package/lib/esm/appui-react/popup/InputEditorPopup.js +52 -52
  1192. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts +19 -19
  1193. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +248 -248
  1194. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  1195. package/lib/esm/appui-react/popup/KeyinPalettePanel.scss +1 -1
  1196. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts +19 -19
  1197. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +43 -43
  1198. package/lib/esm/appui-react/popup/PopupManager.d.ts +105 -105
  1199. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  1200. package/lib/esm/appui-react/popup/PopupManager.js +226 -225
  1201. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  1202. package/lib/esm/appui-react/popup/PositionPopup.d.ts +28 -28
  1203. package/lib/esm/appui-react/popup/PositionPopup.js +43 -43
  1204. package/lib/esm/appui-react/popup/PositionPopup.scss +1 -1
  1205. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts +33 -33
  1206. package/lib/esm/appui-react/popup/ToolSettingsPopup.js +52 -52
  1207. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts +35 -34
  1208. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  1209. package/lib/esm/appui-react/popup/ToolbarPopup.js +54 -53
  1210. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  1211. package/lib/esm/appui-react/redux/FrameworkState.d.ts +22 -22
  1212. package/lib/esm/appui-react/redux/FrameworkState.js +17 -17
  1213. package/lib/esm/appui-react/redux/ReducerRegistry.d.ts +36 -36
  1214. package/lib/esm/appui-react/redux/ReducerRegistry.js +56 -56
  1215. package/lib/esm/appui-react/redux/SessionState.d.ts +103 -103
  1216. package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
  1217. package/lib/esm/appui-react/redux/SessionState.js +126 -126
  1218. package/lib/esm/appui-react/redux/StateManager.d.ts +43 -43
  1219. package/lib/esm/appui-react/redux/StateManager.js +94 -93
  1220. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  1221. package/lib/esm/appui-react/redux/connectIModel.d.ts +26 -26
  1222. package/lib/esm/appui-react/redux/connectIModel.js +89 -89
  1223. package/lib/esm/appui-react/redux/redux-ts.d.ts +197 -197
  1224. package/lib/esm/appui-react/redux/redux-ts.d.ts.map +1 -1
  1225. package/lib/esm/appui-react/redux/redux-ts.js +32 -32
  1226. package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts +10 -10
  1227. package/lib/esm/appui-react/safearea/SafeAreaContext.js +13 -13
  1228. package/lib/esm/appui-react/safearea/SafeAreaHelpers.d.ts +7 -7
  1229. package/lib/esm/appui-react/safearea/SafeAreaHelpers.js +11 -11
  1230. package/lib/esm/appui-react/safearea/SafeAreaInsets.d.ts +13 -13
  1231. package/lib/esm/appui-react/safearea/SafeAreaInsets.js +18 -18
  1232. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.d.ts +265 -306
  1233. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.d.ts.map +1 -1
  1234. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js +545 -690
  1235. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  1236. package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts +54 -54
  1237. package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  1238. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +197 -187
  1239. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  1240. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts +26 -26
  1241. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  1242. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +195 -196
  1243. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  1244. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +2 -2
  1245. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts +17 -17
  1246. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +49 -49
  1247. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts +27 -27
  1248. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +187 -187
  1249. package/lib/esm/appui-react/settings/ui/UiSettingsPage.scss +3 -4
  1250. package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts +28 -28
  1251. package/lib/esm/appui-react/shared/ActionButtonItemDef.js +45 -44
  1252. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  1253. package/lib/esm/appui-react/shared/AnyItemDef.d.ts +11 -11
  1254. package/lib/esm/appui-react/shared/AnyItemDef.d.ts.map +1 -1
  1255. package/lib/esm/appui-react/shared/AnyItemDef.js +8 -8
  1256. package/lib/esm/appui-react/shared/AnyToolbarItemDef.d.ts +9 -9
  1257. package/lib/esm/appui-react/shared/AnyToolbarItemDef.d.ts.map +1 -1
  1258. package/lib/esm/appui-react/shared/AnyToolbarItemDef.js +8 -8
  1259. package/lib/esm/appui-react/shared/CommandItemDef.d.ts +16 -16
  1260. package/lib/esm/appui-react/shared/CommandItemDef.js +32 -31
  1261. package/lib/esm/appui-react/shared/CommandItemDef.js.map +1 -1
  1262. package/lib/esm/appui-react/shared/CustomItemDef.d.ts +17 -17
  1263. package/lib/esm/appui-react/shared/CustomItemDef.js +29 -28
  1264. package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
  1265. package/lib/esm/appui-react/shared/CustomItemProps.d.ts +12 -12
  1266. package/lib/esm/appui-react/shared/CustomItemProps.js +8 -8
  1267. package/lib/esm/appui-react/shared/GroupItemProps.d.ts +19 -19
  1268. package/lib/esm/appui-react/shared/GroupItemProps.js +8 -8
  1269. package/lib/esm/appui-react/shared/ItemDefBase.d.ts +58 -58
  1270. package/lib/esm/appui-react/shared/ItemDefBase.js +74 -74
  1271. package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
  1272. package/lib/esm/appui-react/shared/ItemMap.d.ts +21 -21
  1273. package/lib/esm/appui-react/shared/ItemMap.js +46 -46
  1274. package/lib/esm/appui-react/shared/ItemProps.d.ts +48 -48
  1275. package/lib/esm/appui-react/shared/ItemProps.d.ts.map +1 -1
  1276. package/lib/esm/appui-react/shared/ItemProps.js +8 -8
  1277. package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
  1278. package/lib/esm/appui-react/shared/MenuItem.d.ts +36 -36
  1279. package/lib/esm/appui-react/shared/MenuItem.d.ts.map +1 -1
  1280. package/lib/esm/appui-react/shared/MenuItem.js +107 -107
  1281. package/lib/esm/appui-react/shared/SelectionScope.d.ts +13 -13
  1282. package/lib/esm/appui-react/shared/SelectionScope.js +18 -18
  1283. package/lib/esm/appui-react/shared/ToolItemDef.d.ts +17 -17
  1284. package/lib/esm/appui-react/shared/ToolItemDef.d.ts.map +1 -1
  1285. package/lib/esm/appui-react/shared/ToolItemDef.js +35 -35
  1286. package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
  1287. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +44 -44
  1288. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
  1289. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js +8 -8
  1290. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +108 -265
  1291. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  1292. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +240 -212
  1293. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  1294. package/lib/esm/appui-react/stagepanels/StagePanelLocation.d.ts +12 -12
  1295. package/lib/esm/appui-react/stagepanels/StagePanelLocation.d.ts.map +1 -1
  1296. package/lib/esm/appui-react/stagepanels/StagePanelLocation.js +17 -12
  1297. package/lib/esm/appui-react/stagepanels/StagePanelLocation.js.map +1 -1
  1298. package/lib/esm/appui-react/stagepanels/StagePanelSection.d.ts +10 -12
  1299. package/lib/esm/appui-react/stagepanels/StagePanelSection.d.ts.map +1 -1
  1300. package/lib/esm/appui-react/stagepanels/StagePanelSection.js +15 -12
  1301. package/lib/esm/appui-react/stagepanels/StagePanelSection.js.map +1 -1
  1302. package/lib/esm/appui-react/statusbar/Field.d.ts +22 -0
  1303. package/lib/esm/appui-react/statusbar/Field.d.ts.map +1 -0
  1304. package/lib/esm/appui-react/statusbar/Field.js +23 -0
  1305. package/lib/esm/appui-react/statusbar/Field.js.map +1 -0
  1306. package/lib/{cjs/appui-react/statusbar/Indicator.scss → esm/appui-react/statusbar/Field.scss} +16 -17
  1307. package/lib/esm/appui-react/statusbar/Indicator.d.ts +24 -25
  1308. package/lib/esm/appui-react/statusbar/Indicator.d.ts.map +1 -1
  1309. package/lib/esm/appui-react/statusbar/Indicator.js +25 -31
  1310. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  1311. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts +23 -23
  1312. package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts.map +1 -1
  1313. package/lib/esm/appui-react/statusbar/LabelIndicator.js +24 -25
  1314. package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -1
  1315. package/lib/esm/appui-react/statusbar/Overflow.d.ts +19 -19
  1316. package/lib/esm/appui-react/statusbar/Overflow.js +26 -26
  1317. package/lib/esm/appui-react/statusbar/OverflowPanel.d.ts +20 -20
  1318. package/lib/esm/appui-react/statusbar/OverflowPanel.js +18 -18
  1319. package/lib/esm/appui-react/statusbar/Popup.d.ts +10 -0
  1320. package/lib/esm/appui-react/statusbar/Popup.d.ts.map +1 -0
  1321. package/lib/esm/appui-react/statusbar/Popup.js +16 -0
  1322. package/lib/esm/appui-react/statusbar/Popup.js.map +1 -0
  1323. package/lib/esm/appui-react/statusbar/Separator.d.ts +10 -10
  1324. package/lib/esm/appui-react/statusbar/Separator.js +17 -17
  1325. package/lib/esm/appui-react/statusbar/Separator.scss +1 -3
  1326. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +77 -62
  1327. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  1328. package/lib/esm/appui-react/statusbar/StatusBar.js +137 -121
  1329. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  1330. package/lib/esm/appui-react/statusbar/StatusBar.scss +1 -3
  1331. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts +46 -46
  1332. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  1333. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +276 -277
  1334. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  1335. package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts +98 -66
  1336. package/lib/esm/appui-react/statusbar/StatusBarItem.d.ts.map +1 -1
  1337. package/lib/esm/appui-react/statusbar/StatusBarItem.js +55 -41
  1338. package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
  1339. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.d.ts +24 -32
  1340. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.d.ts.map +1 -1
  1341. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js +57 -48
  1342. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  1343. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts +40 -0
  1344. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts.map +1 -0
  1345. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +131 -0
  1346. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -0
  1347. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts +20 -20
  1348. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.d.ts.map +1 -1
  1349. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js +19 -19
  1350. package/lib/esm/appui-react/statusbar/dialog/Button.d.ts +20 -20
  1351. package/lib/esm/appui-react/statusbar/dialog/Button.js +15 -15
  1352. package/lib/esm/appui-react/statusbar/dialog/Dialog.d.ts +29 -29
  1353. package/lib/esm/appui-react/statusbar/dialog/Dialog.js +26 -26
  1354. package/lib/esm/appui-react/statusbar/dialog/TitleBar.d.ts +18 -18
  1355. package/lib/esm/appui-react/statusbar/dialog/TitleBar.js +15 -15
  1356. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts +9 -8
  1357. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
  1358. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js +28 -33
  1359. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  1360. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +9 -9
  1361. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  1362. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +46 -46
  1363. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  1364. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts +9 -9
  1365. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  1366. package/lib/esm/appui-react/statusfields/ActivityCenter.js +57 -55
  1367. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  1368. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +46 -46
  1369. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
  1370. package/lib/esm/appui-react/statusfields/MessageCenter.js +122 -119
  1371. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  1372. package/lib/esm/appui-react/statusfields/SectionsField.d.ts +16 -16
  1373. package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
  1374. package/lib/esm/appui-react/statusfields/SectionsField.js +76 -73
  1375. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  1376. package/lib/esm/appui-react/statusfields/SectionsField.scss +3 -4
  1377. package/lib/esm/appui-react/statusfields/SelectionInfo.d.ts +26 -26
  1378. package/lib/esm/appui-react/statusfields/SelectionInfo.d.ts.map +1 -1
  1379. package/lib/esm/appui-react/statusfields/SelectionInfo.js +45 -44
  1380. package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
  1381. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts +30 -37
  1382. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  1383. package/lib/esm/appui-react/statusfields/SelectionScope.js +56 -63
  1384. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  1385. package/lib/esm/appui-react/statusfields/SelectionScope.scss +1 -1
  1386. package/lib/esm/appui-react/statusfields/SnapMode.d.ts +22 -41
  1387. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  1388. package/lib/esm/appui-react/statusfields/SnapMode.js +94 -85
  1389. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  1390. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts +30 -30
  1391. package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
  1392. package/lib/esm/appui-react/statusfields/ViewAttributes.js +89 -88
  1393. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  1394. package/lib/esm/appui-react/statusfields/ViewAttributes.scss +0 -4
  1395. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts +31 -31
  1396. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +87 -87
  1397. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +95 -95
  1398. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  1399. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +440 -438
  1400. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  1401. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +12 -12
  1402. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts +81 -79
  1403. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  1404. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +201 -218
  1405. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  1406. package/lib/esm/appui-react/theme/ThemeManager.d.ts +55 -55
  1407. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  1408. package/lib/esm/appui-react/theme/ThemeManager.js +93 -94
  1409. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  1410. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.d.ts +15 -15
  1411. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js +48 -48
  1412. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.d.ts +15 -15
  1413. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js +54 -54
  1414. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.d.ts +19 -19
  1415. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +61 -61
  1416. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  1417. package/lib/esm/appui-react/toolbar/DragInteraction.d.ts +8 -8
  1418. package/lib/esm/appui-react/toolbar/DragInteraction.js +12 -12
  1419. package/lib/esm/appui-react/toolbar/GroupItem.d.ts +37 -37
  1420. package/lib/esm/appui-react/toolbar/GroupItem.js +73 -72
  1421. package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
  1422. package/lib/esm/appui-react/toolbar/Toolbar.d.ts +32 -0
  1423. package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -0
  1424. package/lib/esm/appui-react/toolbar/Toolbar.js +22 -0
  1425. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -0
  1426. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts +19 -20
  1427. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  1428. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +216 -220
  1429. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  1430. package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts +22 -26
  1431. package/lib/esm/appui-react/toolbar/ToolbarHelper.d.ts.map +1 -1
  1432. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +124 -134
  1433. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  1434. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts +103 -52
  1435. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
  1436. package/lib/esm/appui-react/toolbar/ToolbarItem.js +45 -34
  1437. package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
  1438. package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.d.ts +15 -13
  1439. package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.d.ts.map +1 -1
  1440. package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js +49 -24
  1441. package/lib/esm/appui-react/toolbar/ToolbarItemUtilities.js.map +1 -1
  1442. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts +46 -0
  1443. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -0
  1444. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js +244 -0
  1445. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -0
  1446. package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.d.ts +34 -0
  1447. package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -0
  1448. package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.js +22 -0
  1449. package/lib/esm/appui-react/toolbar/ToolbarWithOverflow.js.map +1 -0
  1450. package/lib/esm/appui-react/toolbar/toUIAToolbarItem.d.ts +8 -0
  1451. package/lib/esm/appui-react/toolbar/toUIAToolbarItem.d.ts.map +1 -0
  1452. package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js +22 -0
  1453. package/lib/esm/appui-react/toolbar/toUIAToolbarItem.js.map +1 -0
  1454. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.d.ts +9 -8
  1455. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.d.ts.map +1 -1
  1456. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js +28 -32
  1457. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  1458. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts +9 -9
  1459. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
  1460. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +44 -48
  1461. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  1462. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +36 -36
  1463. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  1464. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +368 -363
  1465. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  1466. package/lib/esm/appui-react/tools/FrameworkToolAdmin.d.ts +11 -11
  1467. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js +26 -26
  1468. package/lib/esm/appui-react/tools/KeyinPaletteTools.d.ts +16 -16
  1469. package/lib/esm/appui-react/tools/KeyinPaletteTools.d.ts.map +1 -1
  1470. package/lib/esm/appui-react/tools/KeyinPaletteTools.js +29 -26
  1471. package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  1472. package/lib/esm/appui-react/tools/OpenSettingsTool.d.ts +16 -16
  1473. package/lib/esm/appui-react/tools/OpenSettingsTool.d.ts.map +1 -1
  1474. package/lib/esm/appui-react/tools/OpenSettingsTool.js +31 -28
  1475. package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
  1476. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts +26 -26
  1477. package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
  1478. package/lib/esm/appui-react/tools/RestoreLayoutTool.js +59 -55
  1479. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  1480. package/lib/esm/appui-react/tools/ToolSettingsTools.d.ts +22 -22
  1481. package/lib/esm/appui-react/tools/ToolSettingsTools.js +43 -41
  1482. package/lib/esm/appui-react/tools/ToolSettingsTools.js.map +1 -1
  1483. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts +25 -25
  1484. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.d.ts.map +1 -1
  1485. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +70 -68
  1486. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  1487. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts +49 -49
  1488. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +120 -119
  1489. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  1490. package/lib/esm/appui-react/toolsettings/ToolInformation.d.ts +14 -14
  1491. package/lib/esm/appui-react/toolsettings/ToolInformation.js +39 -39
  1492. package/lib/esm/appui-react/toolsettings/ToolUiProvider.d.ts +35 -35
  1493. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js +34 -34
  1494. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +34 -0
  1495. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -0
  1496. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +498 -0
  1497. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -0
  1498. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +27 -10
  1499. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
  1500. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js +69 -15
  1501. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  1502. package/lib/esm/appui-react/ui-items-provider/ProviderItem.d.ts +9 -8
  1503. package/lib/esm/appui-react/ui-items-provider/ProviderItem.d.ts.map +1 -1
  1504. package/lib/esm/appui-react/ui-items-provider/ProviderItem.js +8 -8
  1505. package/lib/esm/appui-react/ui-items-provider/ProviderItem.js.map +1 -1
  1506. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +64 -62
  1507. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  1508. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +43 -99
  1509. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  1510. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -36
  1511. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  1512. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +83 -82
  1513. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  1514. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +25 -24
  1515. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  1516. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +37 -63
  1517. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  1518. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +34 -33
  1519. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  1520. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +48 -48
  1521. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  1522. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +25 -24
  1523. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  1524. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +37 -73
  1525. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  1526. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +32 -31
  1527. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  1528. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +58 -65
  1529. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  1530. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +93 -23
  1531. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  1532. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +201 -14
  1533. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  1534. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts +26 -8
  1535. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.d.ts.map +1 -1
  1536. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.js +8 -8
  1537. package/lib/esm/appui-react/ui-items-provider/UiItemsProvider.js.map +1 -1
  1538. package/lib/esm/appui-react/ui-items-provider/isProviderItem.d.ts +7 -0
  1539. package/lib/esm/appui-react/ui-items-provider/isProviderItem.d.ts.map +1 -0
  1540. package/lib/{cjs/appui-react/content/FloatingViewportContent.css → esm/appui-react/ui-items-provider/isProviderItem.js} +12 -9
  1541. package/lib/esm/appui-react/ui-items-provider/isProviderItem.js.map +1 -0
  1542. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +201 -201
  1543. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +340 -340
  1544. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts +27 -27
  1545. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +202 -202
  1546. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts +27 -27
  1547. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +47 -47
  1548. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +2 -3
  1549. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +49 -49
  1550. package/lib/esm/appui-react/uistate/AppUiSettings.js +86 -85
  1551. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  1552. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts +19 -19
  1553. package/lib/esm/appui-react/uistate/useUiStateStorage.js +33 -33
  1554. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  1555. package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts +83 -83
  1556. package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
  1557. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +194 -192
  1558. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  1559. package/lib/esm/appui-react/utils/PropsHelper.d.ts +21 -20
  1560. package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
  1561. package/lib/esm/appui-react/utils/PropsHelper.js +63 -62
  1562. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  1563. package/lib/esm/appui-react/utils/ToolbarButtonHelper.d.ts +17 -17
  1564. package/lib/esm/appui-react/utils/ToolbarButtonHelper.js +56 -56
  1565. package/lib/esm/appui-react/utils/ViewUtilities.d.ts +66 -66
  1566. package/lib/esm/appui-react/utils/ViewUtilities.js +94 -94
  1567. package/lib/esm/appui-react/widget-panels/Content.d.ts +6 -6
  1568. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  1569. package/lib/esm/appui-react/widget-panels/Content.js +53 -55
  1570. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  1571. package/lib/esm/appui-react/widget-panels/FloatingWidget.d.ts +6 -6
  1572. package/lib/esm/appui-react/widget-panels/FloatingWidget.js +14 -14
  1573. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +125 -125
  1574. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  1575. package/lib/esm/appui-react/widget-panels/Frontstage.js +1060 -1057
  1576. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  1577. package/lib/esm/appui-react/widget-panels/FrontstageContent.d.ts +3 -3
  1578. package/lib/esm/appui-react/widget-panels/FrontstageContent.js +17 -17
  1579. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.d.ts +8 -8
  1580. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +33 -33
  1581. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts +8 -8
  1582. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  1583. package/lib/esm/appui-react/widget-panels/StatusBar.js +24 -23
  1584. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  1585. package/lib/esm/appui-react/widget-panels/Tab.d.ts +10 -10
  1586. package/lib/esm/appui-react/widget-panels/Tab.js +29 -29
  1587. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +37 -37
  1588. package/lib/esm/appui-react/widget-panels/ToolSettings.js +146 -146
  1589. package/lib/esm/appui-react/widget-panels/Toolbars.d.ts +7 -7
  1590. package/lib/esm/appui-react/widget-panels/Toolbars.js +20 -20
  1591. package/lib/esm/appui-react/widget-panels/useTransientState.d.ts +7 -7
  1592. package/lib/esm/appui-react/widget-panels/useTransientState.js +14 -14
  1593. package/lib/esm/appui-react/widget-panels/useWidgetDirection.d.ts +8 -8
  1594. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +25 -25
  1595. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts +22 -21
  1596. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  1597. package/lib/esm/appui-react/widgets/BackstageAppButton.js +47 -47
  1598. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  1599. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts +19 -19
  1600. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  1601. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +56 -56
  1602. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  1603. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +23 -23
  1604. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  1605. package/lib/esm/appui-react/widgets/BasicToolWidget.js +57 -57
  1606. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  1607. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts +37 -37
  1608. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +44 -44
  1609. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  1610. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts +38 -38
  1611. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +100 -100
  1612. package/lib/esm/appui-react/widgets/StableWidgetDef.d.ts +8 -8
  1613. package/lib/esm/appui-react/widgets/StableWidgetDef.js +25 -25
  1614. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +27 -27
  1615. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js +39 -38
  1616. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  1617. package/lib/esm/appui-react/widgets/ToolSettingsContent.d.ts +10 -10
  1618. package/lib/esm/appui-react/widgets/ToolSettingsContent.js +12 -12
  1619. package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  1620. package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts +23 -23
  1621. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js +30 -30
  1622. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts +26 -26
  1623. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +32 -32
  1624. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  1625. package/lib/esm/appui-react/widgets/Widget.d.ts +39 -0
  1626. package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -0
  1627. package/lib/esm/appui-react/widgets/{WidgetProps.js → Widget.js} +9 -9
  1628. package/lib/esm/appui-react/widgets/Widget.js.map +1 -0
  1629. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +15 -25
  1630. package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -1
  1631. package/lib/esm/appui-react/widgets/WidgetConfig.js +8 -8
  1632. package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -1
  1633. package/lib/esm/appui-react/widgets/WidgetControl.d.ts +33 -33
  1634. package/lib/esm/appui-react/widgets/WidgetControl.d.ts.map +1 -1
  1635. package/lib/esm/appui-react/widgets/WidgetControl.js +40 -40
  1636. package/lib/esm/appui-react/widgets/WidgetControl.js.map +1 -1
  1637. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +170 -168
  1638. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  1639. package/lib/esm/appui-react/widgets/WidgetDef.js +307 -318
  1640. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  1641. package/lib/esm/appui-react/widgets/WidgetHost.d.ts +41 -41
  1642. package/lib/esm/appui-react/widgets/WidgetHost.js +86 -86
  1643. package/lib/esm/appui-react/widgets/WidgetManager.d.ts +55 -55
  1644. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  1645. package/lib/esm/appui-react/widgets/WidgetManager.js +101 -114
  1646. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  1647. package/lib/esm/appui-react/widgets/WidgetState.d.ts +13 -12
  1648. package/lib/esm/appui-react/widgets/WidgetState.d.ts.map +1 -1
  1649. package/lib/esm/appui-react/widgets/WidgetState.js +18 -12
  1650. package/lib/esm/appui-react/widgets/WidgetState.js.map +1 -1
  1651. package/lib/esm/appui-react.d.ts +336 -341
  1652. package/lib/esm/appui-react.d.ts.map +1 -1
  1653. package/lib/esm/appui-react.js +341 -346
  1654. package/lib/esm/appui-react.js.map +1 -1
  1655. package/lib/public/locales/en/UiFramework.json +0 -50
  1656. package/package.json +54 -67
  1657. package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts +0 -74
  1658. package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts.map +0 -1
  1659. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +0 -107
  1660. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +0 -1
  1661. package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.d.ts +0 -66
  1662. package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.d.ts.map +0 -1
  1663. package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js +0 -93
  1664. package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js.map +0 -1
  1665. package/lib/cjs/appui-react/content/ContentLayoutManager.d.ts +0 -48
  1666. package/lib/cjs/appui-react/content/ContentLayoutManager.d.ts.map +0 -1
  1667. package/lib/cjs/appui-react/content/ContentLayoutManager.js +0 -69
  1668. package/lib/cjs/appui-react/content/ContentLayoutManager.js.map +0 -1
  1669. package/lib/cjs/appui-react/content/ContentViewManager.d.ts +0 -63
  1670. package/lib/cjs/appui-react/content/ContentViewManager.d.ts.map +0 -1
  1671. package/lib/cjs/appui-react/content/ContentViewManager.js +0 -96
  1672. package/lib/cjs/appui-react/content/ContentViewManager.js.map +0 -1
  1673. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +0 -202
  1674. package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +0 -1
  1675. package/lib/cjs/appui-react/frontstage/FrontstageManager.js +0 -269
  1676. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +0 -1
  1677. package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.d.ts +0 -44
  1678. package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.d.ts.map +0 -1
  1679. package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.js +0 -64
  1680. package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.js.map +0 -1
  1681. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts +0 -54
  1682. package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +0 -1
  1683. package/lib/cjs/appui-react/utils/UiShowHideManager.js +0 -108
  1684. package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +0 -1
  1685. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +0 -12
  1686. package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +0 -1
  1687. package/lib/cjs/appui-react/widgets/WidgetProps.js.map +0 -1
  1688. package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts +0 -74
  1689. package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts.map +0 -1
  1690. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +0 -103
  1691. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +0 -1
  1692. package/lib/esm/appui-react/configurableui/ConfigurableUiManager.d.ts +0 -66
  1693. package/lib/esm/appui-react/configurableui/ConfigurableUiManager.d.ts.map +0 -1
  1694. package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js +0 -89
  1695. package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js.map +0 -1
  1696. package/lib/esm/appui-react/content/ContentLayoutManager.d.ts +0 -48
  1697. package/lib/esm/appui-react/content/ContentLayoutManager.d.ts.map +0 -1
  1698. package/lib/esm/appui-react/content/ContentLayoutManager.js +0 -65
  1699. package/lib/esm/appui-react/content/ContentLayoutManager.js.map +0 -1
  1700. package/lib/esm/appui-react/content/ContentViewManager.d.ts +0 -63
  1701. package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +0 -1
  1702. package/lib/esm/appui-react/content/ContentViewManager.js +0 -92
  1703. package/lib/esm/appui-react/content/ContentViewManager.js.map +0 -1
  1704. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +0 -202
  1705. package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +0 -1
  1706. package/lib/esm/appui-react/frontstage/FrontstageManager.js +0 -265
  1707. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +0 -1
  1708. package/lib/esm/appui-react/toolsettings/ToolSettingsManager.d.ts +0 -44
  1709. package/lib/esm/appui-react/toolsettings/ToolSettingsManager.d.ts.map +0 -1
  1710. package/lib/esm/appui-react/toolsettings/ToolSettingsManager.js +0 -60
  1711. package/lib/esm/appui-react/toolsettings/ToolSettingsManager.js.map +0 -1
  1712. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts +0 -54
  1713. package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +0 -1
  1714. package/lib/esm/appui-react/utils/UiShowHideManager.js +0 -105
  1715. package/lib/esm/appui-react/utils/UiShowHideManager.js.map +0 -1
  1716. package/lib/esm/appui-react/widgets/WidgetProps.d.ts +0 -12
  1717. package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +0 -1
  1718. package/lib/esm/appui-react/widgets/WidgetProps.js.map +0 -1
@@ -1,1058 +1,1061 @@
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 Frontstage
7
- */
8
- // cSpell:ignore popout
9
- import "./Frontstage.scss";
10
- import produce from "immer";
11
- import * as React from "react";
12
- import { unstable_batchedUpdates } from "react-dom";
13
- import { assert, Logger, ProcessDetector } from "@itwin/core-bentley";
14
- import { Rectangle, Size, UiStateStorageStatus } from "@itwin/core-react";
15
- import { ToolbarPopupAutoHideContext } from "@itwin/components-react";
16
- import { addFloatingWidget, addPanelWidget, addTab, addTabToWidget, convertAllPopupWidgetContainersToFloating, createLayoutStore, createNineZoneState, floatingWidgetBringToFront, FloatingWidgets, getTabLocation, getUniqueId, getWidgetPanelSectionId, insertPanelWidget, insertTabToWidget, isFloatingTabLocation, isHorizontalPanelSide, isPanelTabLocation, isPopoutTabLocation, NineZone, NineZoneStateReducer, panelSides, removeTab, removeTabFromWidget, toolSettingsTabId, WidgetPanels, } from "@itwin/appui-layout-react";
17
- import { StagePanelState, toPanelSide } from "../stagepanels/StagePanelDef";
18
- import { UiFramework } from "../UiFramework";
19
- import { useUiStateStorageHandler } from "../uistate/useUiStateStorage";
20
- import { WidgetContent } from "./Content";
21
- import { WidgetPanelsFrontstageContent } from "./FrontstageContent";
22
- import { ModalFrontstageComposer, useActiveModalFrontstageInfo } from "./ModalFrontstageComposer";
23
- import { WidgetPanelsStatusBar } from "./StatusBar";
24
- import { WidgetPanelsTab } from "./Tab";
25
- import { WidgetPanelsToolbars } from "./Toolbars";
26
- import { ToolSettingsContent, WidgetPanelsToolSettings } from "./ToolSettings";
27
- import { useEscapeSetFocusToHome } from "../hooks/useEscapeSetFocusToHome";
28
- import { useSelector } from "react-redux";
29
- import { useUiVisibility } from "../hooks/useUiVisibility";
30
- import { IModelApp } from "@itwin/core-frontend";
31
- import { FloatingWidget } from "./FloatingWidget";
32
- import { InternalFrontstageManager } from "../frontstage/InternalFrontstageManager";
33
- import { WidgetState } from "../widgets/WidgetState";
34
- import { StagePanelSection } from "../stagepanels/StagePanelSection";
35
- import { StagePanelLocation } from "../stagepanels/StagePanelLocation";
36
- import { UiItemsManager } from "../ui-items-provider/UiItemsManager";
37
- function WidgetPanelsFrontstageComponent() {
38
- const activeModalFrontstageInfo = useActiveModalFrontstageInfo();
39
- const uiIsVisible = useUiVisibility();
40
- return (React.createElement(React.Fragment, null,
41
- React.createElement(WidgetPanelsToolSettings, null),
42
- React.createElement(ToolbarPopupAutoHideContext.Provider, { value: !uiIsVisible },
43
- React.createElement(ModalFrontstageComposer, { stageInfo: activeModalFrontstageInfo }),
44
- React.createElement(WidgetPanels, { className: "uifw-widgetPanels", centerContent: React.createElement(WidgetPanelsToolbars, null) },
45
- React.createElement(WidgetPanelsFrontstageContent, null)),
46
- React.createElement(WidgetPanelsStatusBar, null),
47
- React.createElement(FloatingWidgets, null))));
48
- }
49
- const widgetContent = React.createElement(WidgetContent, null);
50
- const toolSettingsContent = React.createElement(ToolSettingsContent, null);
51
- const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
52
- /** @internal */
53
- export function useLayoutStore() {
54
- const [def, setDef] = React.useState(UiFramework.frontstages.activeFrontstageDef);
55
- const [layout, setLayout] = React.useState(() => createLayoutStore(def === null || def === void 0 ? void 0 : def.nineZoneState));
56
- React.useEffect(() => {
57
- return UiFramework.frontstages.onFrontstageActivatedEvent.addListener((args) => {
58
- unstable_batchedUpdates(() => {
59
- setDef(args.activatedFrontstageDef);
60
- setLayout(createLayoutStore(args.activatedFrontstageDef.nineZoneState));
61
- });
62
- });
63
- }, []);
64
- React.useEffect(() => {
65
- return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
66
- if (args.frontstageDef !== def || def.isStageClosing || def.isApplicationClosing)
67
- return;
68
- unstable_batchedUpdates(() => {
69
- layout.setState(args.state || defaultNineZone);
70
- });
71
- });
72
- }, [def, layout]);
73
- return [layout, def];
74
- }
75
- /** Update in-memory NineZoneState of newly activated frontstage with up to date size.
76
- * @internal
77
- */
78
- export function useUpdateNineZoneSize(frontstageDef) {
79
- React.useEffect(() => {
80
- const size = InternalFrontstageManager.nineZoneSize;
81
- let state = frontstageDef.nineZoneState;
82
- if (!size || !state)
83
- return;
84
- state = FrameworkStateReducer(state, {
85
- type: "RESIZE",
86
- size: {
87
- height: size.height,
88
- width: size.width,
89
- },
90
- }, frontstageDef);
91
- frontstageDef.nineZoneState = state;
92
- }, [frontstageDef]);
93
- }
94
- /** @internal */
95
- export function FrameworkStateReducer(state, action, frontstageDef) {
96
- state = NineZoneStateReducer(state, action);
97
- if (action.type === "RESIZE") {
98
- state = produce(state, (draft) => {
99
- for (const panelSide of panelSides) {
100
- const panel = draft.panels[panelSide];
101
- const location = toStagePanelLocation(panelSide);
102
- const panelDef = frontstageDef.getStagePanelDef(location);
103
- if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
104
- panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, action.size);
105
- if (panel.size) {
106
- panel.size = Math.min(Math.max(panel.size, panel.minSize), panel.maxSize);
107
- }
108
- }
109
- }
110
- });
111
- }
112
- return state;
113
- }
114
- /** @internal */
115
- export function useNineZoneDispatch(frontstageDef) {
116
- const dispatch = React.useCallback((action) => {
117
- if (action.type === "RESIZE") {
118
- InternalFrontstageManager.nineZoneSize = Size.create(action.size);
119
- }
120
- // istanbul ignore if
121
- if (action.type === "TOOL_SETTINGS_DRAG_START") {
122
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
123
- UiFramework.postTelemetry("Tool Settings Undocking", "28B04E07-AE73-4533-A0BA-8E2A8DC99ADF");
124
- }
125
- // istanbul ignore if
126
- if (action.type === "TOOL_SETTINGS_DOCK") {
127
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
128
- UiFramework.postTelemetry("Tool Settings Docking to Settings Bar", "BEDE684B-B3DB-4637-B3AF-DC3CBA223F94");
129
- }
130
- if (action.type === "WIDGET_TAB_POPOUT") {
131
- const tabId = action.id;
132
- frontstageDef.popoutWidget(tabId);
133
- return;
134
- }
135
- const state = frontstageDef.nineZoneState;
136
- if (!state)
137
- return;
138
- frontstageDef.nineZoneState = FrameworkStateReducer(state, action, frontstageDef);
139
- }, [frontstageDef]);
140
- return dispatch;
141
- }
142
- /** @internal */
143
- export function WidgetPanelsFrontstage() {
144
- const [layout, frontstageDef] = useLayoutStore();
145
- React.useEffect(() => {
146
- const triggerWidowCloseProcessing = () => {
147
- frontstageDef && frontstageDef.setIsApplicationClosing(true);
148
- };
149
- frontstageDef && frontstageDef.setIsApplicationClosing(false);
150
- window.addEventListener("unload", triggerWidowCloseProcessing);
151
- return () => {
152
- window.removeEventListener("unload", triggerWidowCloseProcessing);
153
- };
154
- }, [frontstageDef]);
155
- if (!frontstageDef)
156
- return null;
157
- return (React.createElement(ActiveFrontstageDefProvider, { frontstageDef: frontstageDef, layout: layout }));
158
- }
159
- const defaultNineZone = createNineZoneState();
160
- const tabElement = React.createElement(WidgetPanelsTab, null);
161
- const floatingWidgetElement = React.createElement(FloatingWidget, null);
162
- /** @internal */
163
- export function ActiveFrontstageDefProvider({ frontstageDef, layout }) {
164
- const dispatch = useNineZoneDispatch(frontstageDef);
165
- useUpdateNineZoneSize(frontstageDef);
166
- useSavedFrontstageState(frontstageDef);
167
- useSaveFrontstageSettings(frontstageDef, layout);
168
- useItemsManager(frontstageDef);
169
- const labels = useLabels();
170
- const uiIsVisible = useUiVisibility();
171
- const showWidgetIcon = useSelector((state) => {
172
- const frameworkState = state[UiFramework.frameworkStateKey];
173
- return !!frameworkState.configurableUiState.showWidgetIcon;
174
- });
175
- const autoCollapseUnpinnedPanels = useSelector((state) => {
176
- const frameworkState = state[UiFramework.frameworkStateKey];
177
- return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;
178
- });
179
- const animateToolSettings = useSelector((state) => {
180
- const frameworkState = state[UiFramework.frameworkStateKey];
181
- return !!frameworkState.configurableUiState.animateToolSettings;
182
- });
183
- const useToolAsToolSettingsLabel = useSelector((state) => {
184
- const frameworkState = state[UiFramework.frameworkStateKey];
185
- return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;
186
- });
187
- useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);
188
- const handleKeyDown = useEscapeSetFocusToHome();
189
- return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
190
- React.createElement(NineZone, { dispatch: dispatch, labels: labels, layout: layout, tab: tabElement, floatingWidget: floatingWidgetElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
191
- }
192
- /** @internal */
193
- export function useLabels() {
194
- return React.useMemo(() => ({
195
- dockToolSettingsTitle: UiFramework.translate("widget.tooltips.dockToolSettings"),
196
- moreWidgetsTitle: UiFramework.translate("widget.tooltips.moreWidgets"),
197
- moreToolSettingsTitle: UiFramework.translate("widget.tooltips.moreToolSettings"),
198
- pinPanelTitle: UiFramework.translate("widget.tooltips.pinPanel"),
199
- resizeGripTitle: UiFramework.translate("widget.tooltips.resizeGrip"),
200
- sendWidgetHomeTitle: UiFramework.translate("widget.tooltips.sendHome"),
201
- toolSettingsHandleTitle: UiFramework.translate("widget.tooltips.toolSettingsHandle"),
202
- unpinPanelTitle: UiFramework.translate("widget.tooltips.unpinPanel"),
203
- popoutActiveTab: UiFramework.translate("widget.tooltips.popoutActiveTab"),
204
- }), []);
205
- }
206
- /** @internal */
207
- export function addWidgets(state, widgets, side, widgetId) {
208
- const visibleWidgets = widgets.filter((w) => w.isVisible && (w.defaultState !== WidgetState.Floating));
209
- if (visibleWidgets.length === 0)
210
- return state;
211
- const tabs = new Array();
212
- for (const widget of visibleWidgets) {
213
- const label = getWidgetLabel(widget.label);
214
- state = addTab(state, widget.id, {
215
- label,
216
- iconSpec: widget.iconSpec,
217
- preferredPanelWidgetSize: widget.preferredPanelSize,
218
- preferredFloatingWidgetSize: widget.defaultFloatingSize,
219
- canPopout: widget.canPopout,
220
- isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
221
- hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
222
- allowedPanelTargets: widget.allowedPanelTargets,
223
- });
224
- tabs.push(widget.id);
225
- }
226
- const activeWidget = visibleWidgets.find((widget) => widget.isActive);
227
- const minimized = false;
228
- // istanbul ignore else
229
- if ((activeWidget === null || activeWidget === void 0 ? void 0 : activeWidget.defaultState) !== WidgetState.Floating) {
230
- state = addPanelWidget(state, side, widgetId, tabs, {
231
- activeTabId: activeWidget ? activeWidget.id : tabs[0],
232
- minimized,
233
- });
234
- }
235
- return state;
236
- }
237
- /** @internal */
238
- // istanbul ignore next
239
- export function appendWidgets(state, widgetDefs, location, section) {
240
- var _a;
241
- if (widgetDefs.length === 0)
242
- return state;
243
- const side = toPanelSide(location);
244
- // Add missing widget tabs.
245
- for (const widgetDef of widgetDefs) {
246
- const label = getWidgetLabel(widgetDef.label);
247
- const saveTab = state.tabs[widgetDef.id];
248
- const preferredPanelWidgetSize = saveTab ? saveTab.preferredPanelWidgetSize : widgetDef.preferredPanelSize;
249
- const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : widgetDef.defaultFloatingSize;
250
- // if a defaultFloatingSize is specified then this mean the widget can't determine its intrinsic size and must be explicitly sized
251
- const userSized = saveTab ? (saveTab.userSized || !!widgetDef.defaultFloatingSize && !!saveTab.preferredFloatingWidgetSize)
252
- : !!widgetDef.defaultFloatingSize;
253
- state = addTab(state, widgetDef.id, {
254
- label,
255
- iconSpec: widgetDef.iconSpec,
256
- canPopout: widgetDef.canPopout,
257
- preferredPanelWidgetSize,
258
- preferredFloatingWidgetSize,
259
- userSized,
260
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
261
- hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
262
- allowedPanelTargets: widgetDef.allowedPanelTargets,
263
- });
264
- if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === WidgetState.Floating) {
265
- const floatingContainerId = (_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : getUniqueId();
266
- const widgetContainerId = getWidgetId(location, section);
267
- const home = { side, widgetId: widgetContainerId, widgetIndex: 0 };
268
- const preferredPosition = widgetDef.defaultFloatingPosition;
269
- if (floatingContainerId in state.widgets) {
270
- state = addTabToWidget(state, widgetDef.id, floatingContainerId);
271
- }
272
- else {
273
- const tab = state.tabs[widgetDef.id];
274
- const size = { height: 200, width: 300, ...tab.preferredFloatingWidgetSize };
275
- const preferredPoint = preferredPosition !== null && preferredPosition !== void 0 ? preferredPosition : { x: (state.size.width - size.width) / 2, y: (state.size.height - size.height) / 2 };
276
- const nzBounds = Rectangle.createFromSize(state.size);
277
- const bounds = Rectangle.createFromSize(size).offset(preferredPoint);
278
- const containedBounds = bounds.containIn(nzBounds);
279
- state = addFloatingWidget(state, floatingContainerId, [widgetDef.id], {
280
- bounds: containedBounds.toProps(),
281
- home,
282
- userSized,
283
- }, {
284
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
285
- });
286
- }
287
- }
288
- else {
289
- const preferredWidgetIndex = section;
290
- const widgetPanelSectionId = getWidgetPanelSectionId(side, preferredWidgetIndex);
291
- if (widgetPanelSectionId in state.widgets) {
292
- state = addTabToWidget(state, widgetDef.id, widgetPanelSectionId);
293
- }
294
- else {
295
- const panel = state.panels[side];
296
- if (panel.widgets.length < panel.maxWidgetCount) {
297
- state = addPanelWidget(state, side, widgetPanelSectionId, [widgetDef.id]);
298
- }
299
- else {
300
- const widgetIndex = Math.min(preferredWidgetIndex, panel.widgets.length - 1);
301
- const widgetId = panel.widgets[widgetIndex];
302
- state = addTabToWidget(state, widgetDef.id, widgetId);
303
- }
304
- }
305
- }
306
- }
307
- return state;
308
- }
309
- function processPopoutWidgets(initialState, frontstageDef) {
310
- // istanbul ignore next
311
- if (!initialState.popoutWidgets)
312
- return initialState;
313
- // istanbul ignore next - not unit testing electron case that reopens popout windows
314
- if (initialState.popoutWidgets && ProcessDetector.isElectronAppFrontend) {
315
- if (initialState.popoutWidgets.allIds.length && ProcessDetector.isElectronAppFrontend) {
316
- for (const widgetContainerId of initialState.popoutWidgets.allIds) {
317
- frontstageDef.openPopoutWidgetContainer(initialState, widgetContainerId);
318
- }
319
- }
320
- return initialState;
321
- }
322
- return convertAllPopupWidgetContainersToFloating(initialState);
323
- }
324
- /** Adds frontstageDef widgets that are missing in NineZoneState.
325
- * @internal
326
- */
327
- export function addMissingWidgets(frontstageDef, initialState) {
328
- var _a, _b, _c, _d, _e, _f, _g, _h;
329
- let state = initialState;
330
- state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.Start);
331
- state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.End);
332
- state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.rightPanel) === null || _c === void 0 ? void 0 : _c.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.Start);
333
- state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.rightPanel) === null || _d === void 0 ? void 0 : _d.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.End);
334
- state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.topPanel) === null || _e === void 0 ? void 0 : _e.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.Start);
335
- state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.topPanel) === null || _f === void 0 ? void 0 : _f.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.End);
336
- state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.bottomPanel) === null || _g === void 0 ? void 0 : _g.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.Start);
337
- state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomPanel) === null || _h === void 0 ? void 0 : _h.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.End);
338
- return state;
339
- }
340
- /** Hide widgets with Hidden defaultState. */
341
- function hideWidgets(state, frontstageDef) {
342
- const tabs = Object.values(state.tabs);
343
- for (const tab of tabs) {
344
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
345
- if (!widgetDef)
346
- continue;
347
- if (widgetDef.defaultState === WidgetState.Hidden) {
348
- state = hideWidget(state, widgetDef);
349
- }
350
- }
351
- return state;
352
- }
353
- /** Removes NineZoneState widgets that are missing in frontstageDef.
354
- * @internal
355
- */
356
- export function removeMissingWidgets(frontstageDef, initialState) {
357
- let state = initialState;
358
- for (const [, tab] of Object.entries(state.tabs)) {
359
- if (tab.id === toolSettingsTabId)
360
- continue;
361
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
362
- if (widgetDef)
363
- continue;
364
- state = removeTab(state, tab.id);
365
- }
366
- return state;
367
- }
368
- function getWidgetLabel(label) {
369
- return label === "" ? "Widget" : label;
370
- }
371
- function toStagePanelLocation(side) {
372
- switch (side) {
373
- case "bottom":
374
- return StagePanelLocation.Bottom;
375
- case "left":
376
- return StagePanelLocation.Left;
377
- case "right":
378
- return StagePanelLocation.Right;
379
- case "top":
380
- return StagePanelLocation.Top;
381
- }
382
- }
383
- /** @internal */
384
- export function getWidgetId(location, section) {
385
- switch (location) {
386
- case StagePanelLocation.Left: {
387
- if (section === StagePanelSection.Start)
388
- return "leftStart";
389
- return "leftEnd";
390
- }
391
- case StagePanelLocation.Right: {
392
- if (section === StagePanelSection.Start)
393
- return "rightStart";
394
- return "rightEnd";
395
- }
396
- case StagePanelLocation.Top: {
397
- if (section === StagePanelSection.Start)
398
- return "topStart";
399
- return "topEnd";
400
- }
401
- case StagePanelLocation.Bottom: {
402
- if (section === StagePanelSection.Start)
403
- return "bottomStart";
404
- return "bottomEnd";
405
- }
406
- }
407
- }
408
- /** @internal */
409
- export function getPanelSectionWidgets(frontstageDef, location, section) {
410
- const stagePanel = frontstageDef.getStagePanelDef(location);
411
- const panelSection = stagePanel === null || stagePanel === void 0 ? void 0 : stagePanel.getPanelSectionDef(section);
412
- return (panelSection === null || panelSection === void 0 ? void 0 : panelSection.widgetDefs) || [];
413
- }
414
- /** @internal */
415
- export function addPanelWidgets(state, frontstageDef, location) {
416
- const side = toPanelSide(location);
417
- const start = getWidgetId(location, StagePanelSection.Start);
418
- const startWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection.Start);
419
- state = addWidgets(state, determineNewWidgets(startWidgets, state), side, start);
420
- const end = getWidgetId(location, StagePanelSection.End);
421
- const endWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection.End);
422
- state = addWidgets(state, determineNewWidgets(endWidgets, state), side, end);
423
- return state;
424
- }
425
- /** @internal */
426
- export function isFrontstageStateSettingResult(settingsResult) {
427
- if (settingsResult.status === UiStateStorageStatus.Success)
428
- return true;
429
- return false;
430
- }
431
- /** @internal */
432
- export function initializePanel(state, frontstageDef, location) {
433
- const panelSide = toPanelSide(location);
434
- state = addPanelWidgets(state, frontstageDef, location);
435
- const panelDef = frontstageDef.getStagePanelDef(location);
436
- state = produce(state, (draft) => {
437
- var _a, _b, _c;
438
- const panel = draft.panels[panelSide];
439
- panel.minSize = (_a = panelDef === null || panelDef === void 0 ? void 0 : panelDef.minSize) !== null && _a !== void 0 ? _a : panel.minSize;
440
- panel.pinned = (_b = panelDef === null || panelDef === void 0 ? void 0 : panelDef.pinned) !== null && _b !== void 0 ? _b : panel.pinned;
441
- panel.resizable = (_c = panelDef === null || panelDef === void 0 ? void 0 : panelDef.resizable) !== null && _c !== void 0 ? _c : panel.resizable;
442
- if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
443
- panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, state.size);
444
- }
445
- const size = panelDef === null || panelDef === void 0 ? void 0 : panelDef.size;
446
- panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);
447
- });
448
- return state;
449
- }
450
- function getPanelMaxSize(maxSizeSpec, panel, nineZoneSize) {
451
- if (typeof maxSizeSpec === "number") {
452
- return maxSizeSpec;
453
- }
454
- const size = isHorizontalPanelSide(panel) ? nineZoneSize.height : nineZoneSize.width;
455
- return maxSizeSpec.percentage / 100 * size;
456
- }
457
- const stateVersion = 13; // this needs to be bumped when NineZoneState is changed (to recreate the layout).
458
- /** @internal */
459
- export function initializeNineZoneState(frontstageDef) {
460
- let nineZone = defaultNineZone;
461
- nineZone = produce(nineZone, (stateDraft) => {
462
- // istanbul ignore next
463
- if (!InternalFrontstageManager.nineZoneSize)
464
- return;
465
- stateDraft.size = {
466
- height: InternalFrontstageManager.nineZoneSize.height,
467
- width: InternalFrontstageManager.nineZoneSize.width,
468
- };
469
- });
470
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Left);
471
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Right);
472
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Top);
473
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Bottom);
474
- nineZone = produce(nineZone, (stateDraft) => {
475
- var _a, _b, _c, _d;
476
- for (const [, panel] of Object.entries(stateDraft.panels)) {
477
- const expanded = panel.widgets.find((widgetId) => stateDraft.widgets[widgetId].minimized === false);
478
- const firstWidget = panel.widgets.length > 0 ? stateDraft.widgets[panel.widgets[0]] : undefined;
479
- // istanbul ignore next
480
- if (!expanded && firstWidget) {
481
- firstWidget.minimized = false;
482
- }
483
- }
484
- stateDraft.panels.left.collapsed = isPanelCollapsed((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.panelState);
485
- stateDraft.panels.right.collapsed = isPanelCollapsed((_b = frontstageDef.rightPanel) === null || _b === void 0 ? void 0 : _b.panelState);
486
- stateDraft.panels.top.collapsed = isPanelCollapsed((_c = frontstageDef.topPanel) === null || _c === void 0 ? void 0 : _c.panelState);
487
- stateDraft.panels.bottom.collapsed = isPanelCollapsed((_d = frontstageDef.bottomPanel) === null || _d === void 0 ? void 0 : _d.panelState);
488
- const toolSettingsWidgetDef = frontstageDef.toolSettings;
489
- if (toolSettingsWidgetDef) {
490
- const toolSettingsTab = stateDraft.tabs[toolSettingsTabId];
491
- toolSettingsTab.preferredPanelWidgetSize = toolSettingsWidgetDef.preferredPanelSize;
492
- }
493
- });
494
- nineZone = addMissingWidgets(frontstageDef, nineZone);
495
- nineZone = hideWidgets(nineZone, frontstageDef);
496
- nineZone = processPopoutWidgets(nineZone, frontstageDef);
497
- return nineZone;
498
- }
499
- /** Converts from saved NineZoneState to NineZoneState.
500
- * @note Restores toolSettings tab.
501
- * @note Restores tab labels.
502
- * @internal
503
- */
504
- export function restoreNineZoneState(frontstageDef, saved) {
505
- let restored = {
506
- ...saved,
507
- tabs: defaultNineZone.tabs,
508
- };
509
- for (const [, tab] of Object.entries(saved.tabs)) {
510
- // Re-add the placeholder tab in order to correctly remove it from the state if WidgetDef is not found.
511
- restored = addTab(restored, tab.id);
512
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
513
- if (!widgetDef) {
514
- Logger.logInfo(UiFramework.loggerCategory(restoreNineZoneState), "WidgetDef is not found for saved tab.", () => ({
515
- frontstageId: frontstageDef.id,
516
- tabId: tab.id,
517
- }));
518
- restored = removeTab(restored, tab.id);
519
- continue;
520
- }
521
- restored = produce(restored, (draft) => {
522
- draft.tabs[tab.id] = {
523
- ...tab,
524
- label: getWidgetLabel(widgetDef.label),
525
- hideWithUiWhenFloating: widgetDef.hideWithUiWhenFloating,
526
- iconSpec: widgetDef.iconSpec,
527
- canPopout: widgetDef.canPopout,
528
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
529
- allowedPanelTargets: widgetDef.allowedPanelTargets,
530
- };
531
- });
532
- }
533
- restored = produce(restored, (draft) => {
534
- // remove center panel section if one is found in left or right panels
535
- const oldLeftMiddleIndex = saved.panels.left.widgets.findIndex((value) => value === "leftMiddle");
536
- // istanbul ignore next
537
- if (-1 !== oldLeftMiddleIndex) {
538
- draft.panels.left.widgets = saved.panels.left.widgets.filter((value) => value !== "leftMiddle");
539
- if ("leftEnd" in draft.widgets) {
540
- draft.widgets.leftMiddle.tabs.forEach((tab) => draft.widgets.leftEnd.tabs.push(tab));
541
- }
542
- else {
543
- draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };
544
- delete draft.widgets.leftMiddle;
545
- }
546
- }
547
- const oldRightMiddleIndex = saved.panels.right.widgets.findIndex((value) => value === "rightMiddle");
548
- // istanbul ignore next
549
- if (-1 !== oldRightMiddleIndex) {
550
- draft.panels.right.widgets = saved.panels.right.widgets.filter((value) => value !== "rightMiddle");
551
- if ("rightEnd" in draft.widgets) {
552
- draft.widgets.rightMiddle.tabs.forEach((tab) => draft.widgets.rightEnd.tabs.push(tab));
553
- }
554
- else {
555
- draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };
556
- delete draft.widgets.rightMiddle;
557
- }
558
- }
559
- return;
560
- });
561
- if (InternalFrontstageManager.nineZoneSize && (0 !== InternalFrontstageManager.nineZoneSize.height || 0 !== InternalFrontstageManager.nineZoneSize.width)) {
562
- restored = FrameworkStateReducer(restored, {
563
- type: "RESIZE",
564
- size: {
565
- height: InternalFrontstageManager.nineZoneSize.height,
566
- width: InternalFrontstageManager.nineZoneSize.width,
567
- },
568
- }, frontstageDef);
569
- }
570
- return restored;
571
- }
572
- /** Prepares NineZoneState to be saved.
573
- * @note Removes toolSettings tab.
574
- * @note Removes tab labels and iconSpec.
575
- * @internal
576
- */
577
- export function packNineZoneState(state) {
578
- let packed = {
579
- ...state,
580
- tabs: {},
581
- };
582
- packed = produce(packed, (draft) => {
583
- for (const [, tab] of Object.entries(state.tabs)) {
584
- if (tab.id === toolSettingsTabId)
585
- continue;
586
- draft.tabs[tab.id] = {
587
- id: tab.id,
588
- preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
589
- allowedPanelTargets: tab.allowedPanelTargets,
590
- userSized: tab.userSized,
591
- };
592
- }
593
- });
594
- return packed;
595
- }
596
- // istanbul ignore next
597
- function packSavedWidgets(frontstageDef) {
598
- let savedWidgets = [];
599
- for (const widgetDef of frontstageDef.widgetDefs) {
600
- const id = widgetDef.id;
601
- const initialWidget = {
602
- id,
603
- };
604
- const widget = produce(initialWidget, (draft) => {
605
- if (widgetDef.tabLocation) {
606
- draft.tabLocation = { ...widgetDef.tabLocation };
607
- }
608
- if (widgetDef.popoutBounds) {
609
- draft.popoutBounds = widgetDef.popoutBounds.toProps();
610
- }
611
- });
612
- if (widget === initialWidget)
613
- continue;
614
- savedWidgets.push(widget);
615
- }
616
- // Add previously saved widgets.
617
- const prevSavedWidgets = frontstageDef.savedWidgetDefs || [];
618
- for (const prevWidget of prevSavedWidgets) {
619
- if (savedWidgets.find((w) => w.id === prevWidget.id))
620
- continue;
621
- savedWidgets.push(prevWidget);
622
- }
623
- // Limit number of saved widgets.
624
- const maxWidgets = 100;
625
- if (savedWidgets.length > maxWidgets)
626
- savedWidgets = savedWidgets.slice(0, maxWidgets);
627
- return savedWidgets;
628
- }
629
- // istanbul ignore next
630
- function restoreSavedWidgets(frontstage) {
631
- const savedWidgets = frontstage.savedWidgetDefs || [];
632
- for (const savedWidget of savedWidgets) {
633
- const widgetId = savedWidget.id;
634
- const widgetDef = frontstage.findWidgetDef(widgetId);
635
- if (!widgetDef)
636
- continue;
637
- if (savedWidget.tabLocation) {
638
- widgetDef.tabLocation = { ...savedWidget.tabLocation };
639
- }
640
- if (savedWidget.popoutBounds) {
641
- widgetDef.popoutBounds = Rectangle.create(savedWidget.popoutBounds);
642
- }
643
- }
644
- }
645
- /** @internal */
646
- export function isPanelCollapsed(panelState) {
647
- return panelState !== StagePanelState.Open;
648
- }
649
- function addHiddenWidget(state, widgetDef) {
650
- const tabLocation = widgetDef.tabLocation || widgetDef.defaultTabLocation;
651
- const tabId = widgetDef.id;
652
- const { widgetId, tabIndex } = tabLocation;
653
- if (widgetId in state.widgets) {
654
- // Add to an existing widget (by widget id).
655
- return insertTabToWidget(state, tabId, widgetId, tabIndex);
656
- }
657
- else if (tabLocation.floatingWidget) {
658
- const floatingWidget = tabLocation.floatingWidget;
659
- assert(widgetId === floatingWidget.id);
660
- // Add to a new floating widget.
661
- const nzBounds = Rectangle.createFromSize(state.size);
662
- const bounds = Rectangle.create(floatingWidget.bounds).containIn(nzBounds);
663
- return addFloatingWidget(state, floatingWidget.id, [tabId], {
664
- ...floatingWidget,
665
- bounds: bounds.toProps(),
666
- });
667
- }
668
- // Add to a panel section.
669
- const panel = state.panels[tabLocation.side];
670
- // Add to existing panel section.
671
- if (panel.widgets.length >= panel.maxWidgetCount) {
672
- const sectionIndex = Math.min(panel.maxWidgetCount - 1, tabLocation.widgetIndex);
673
- const sectionId = panel.widgets[sectionIndex];
674
- return insertTabToWidget(state, tabId, sectionId, tabLocation.tabIndex);
675
- }
676
- // Create a new panel section.
677
- const newSectionId = getUniqueId();
678
- return insertPanelWidget(state, panel.side, newSectionId, [tabId], tabLocation.widgetIndex);
679
- }
680
- /** @internal */
681
- export function setWidgetState(state, widgetDef, widgetState) {
682
- var _a, _b;
683
- if (widgetState === WidgetState.Hidden) {
684
- return hideWidget(state, widgetDef);
685
- }
686
- else if (widgetState === WidgetState.Open) {
687
- const id = widgetDef.id;
688
- let location = getTabLocation(state, id);
689
- if (!location) {
690
- state = addHiddenWidget(state, widgetDef);
691
- location = getTabLocation(state, id);
692
- }
693
- return produce(state, (draft) => {
694
- var _a;
695
- assert(!!location);
696
- const widget = draft.widgets[location.widgetId];
697
- widget.minimized = false;
698
- widget.activeTabId = id;
699
- if (isFloatingTabLocation(location)) {
700
- const floatingWidget = draft.floatingWidgets.byId[location.floatingWidgetId];
701
- floatingWidget.hidden = false;
702
- // istanbul ignore else
703
- }
704
- else if (isPanelTabLocation(location)) {
705
- const panel = draft.panels[location.side];
706
- panel.collapsed = false;
707
- if (undefined === panel.size || 0 === panel.size) {
708
- // istanbul ignore next
709
- panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
710
- }
711
- }
712
- });
713
- }
714
- else if (widgetState === WidgetState.Closed) {
715
- const id = widgetDef.id;
716
- let location = getTabLocation(state, id);
717
- if (!location) {
718
- state = addHiddenWidget(state, widgetDef);
719
- location = getTabLocation(state, id);
720
- }
721
- // TODO: should change activeTabId of a widget with multiple tabs.
722
- return produce(state, (draft) => {
723
- assert(!!location);
724
- const widget = draft.widgets[location.widgetId];
725
- if (isFloatingTabLocation(location)) {
726
- if (id === widget.activeTabId) {
727
- widget.minimized = true;
728
- }
729
- }
730
- });
731
- }
732
- else if (widgetState === WidgetState.Floating) {
733
- const id = widgetDef.id;
734
- let location = getTabLocation(state, id);
735
- if (!location) {
736
- state = addHiddenWidget(state, widgetDef);
737
- location = getTabLocation(state, id);
738
- }
739
- assert(!!location);
740
- if (isFloatingTabLocation(location))
741
- return state;
742
- // Widget is not floating.
743
- state = removeTabFromWidget(state, id);
744
- const bounds = (_b = (_a = widgetDef.tabLocation) === null || _a === void 0 ? void 0 : _a.floatingWidget) === null || _b === void 0 ? void 0 : _b.bounds;
745
- state = addFloatingWidget(state, getUniqueId(), [id], { bounds });
746
- }
747
- return state;
748
- }
749
- /** Stores widget location and hides it in the UI. */
750
- function hideWidget(state, widgetDef) {
751
- const location = getTabLocation(state, widgetDef.id);
752
- if (!location)
753
- return state;
754
- // istanbul ignore else
755
- if (isFloatingTabLocation(location)) {
756
- const floatingWidget = state.floatingWidgets.byId[location.widgetId];
757
- widgetDef.setFloatingContainerId(location.floatingWidgetId);
758
- widgetDef.tabLocation = {
759
- side: floatingWidget.home.side,
760
- tabIndex: floatingWidget.home.widgetIndex,
761
- widgetId: floatingWidget.id,
762
- widgetIndex: floatingWidget.home.widgetIndex,
763
- floatingWidget,
764
- };
765
- }
766
- else if (!isPopoutTabLocation(location)) {
767
- const widgetId = location.widgetId;
768
- const side = isPanelTabLocation(location) ? location.side : "left";
769
- const widgetIndex = isPanelTabLocation(location) ? state.panels[side].widgets.indexOf(widgetId) : 0;
770
- const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
771
- widgetDef.tabLocation = {
772
- side,
773
- tabIndex,
774
- widgetId,
775
- widgetIndex,
776
- };
777
- }
778
- return removeTabFromWidget(state, widgetDef.id);
779
- }
780
- /** @internal */
781
- export function showWidget(state, id) {
782
- const location = getTabLocation(state, id);
783
- if (!location)
784
- return state;
785
- state = produce(state, (draft) => {
786
- const widget = draft.widgets[location.widgetId];
787
- widget.activeTabId = id;
788
- widget.minimized = false;
789
- if (isPanelTabLocation(location)) {
790
- const panel = draft.panels[location.side];
791
- panel.collapsed = false;
792
- }
793
- });
794
- if (isFloatingTabLocation(location)) {
795
- state = floatingWidgetBringToFront(state, location.floatingWidgetId);
796
- }
797
- return state;
798
- }
799
- /** @internal */
800
- export function expandWidget(state, id) {
801
- const location = getTabLocation(state, id);
802
- if (!location)
803
- return state;
804
- return produce(state, (draft) => {
805
- const widget = draft.widgets[location.widgetId];
806
- if (isPanelTabLocation(location)) {
807
- const panel = draft.panels[location.side];
808
- panel.widgets.forEach((wId) => {
809
- const w = draft.widgets[wId];
810
- w.minimized = true;
811
- });
812
- }
813
- widget.minimized = false;
814
- });
815
- }
816
- /** @internal */
817
- export function setWidgetLabel(state, id, label) {
818
- if (!(id in state.tabs))
819
- return state;
820
- return produce(state, (draft) => {
821
- const tab = draft.tabs[id];
822
- tab.label = label;
823
- });
824
- }
825
- /** @internal */
826
- export function useSavedFrontstageState(frontstageDef) {
827
- const uiStateStorage = useUiStateStorageHandler();
828
- const uiStateStorageRef = React.useRef(uiStateStorage);
829
- const isMountedRef = React.useRef(false);
830
- React.useEffect(() => {
831
- isMountedRef.current = true;
832
- return () => { isMountedRef.current = false; };
833
- }, []);
834
- React.useEffect(() => {
835
- uiStateStorageRef.current = uiStateStorage;
836
- }, [uiStateStorage]);
837
- React.useEffect(() => {
838
- async function fetchFrontstageState() {
839
- if (frontstageDef.nineZoneState) {
840
- frontstageDef.nineZoneState = processPopoutWidgets(frontstageDef.nineZoneState, frontstageDef);
841
- return;
842
- }
843
- const id = frontstageDef.id;
844
- const version = frontstageDef.version;
845
- const settingResult = await uiStateStorageRef.current.getSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id));
846
- if (!isMountedRef.current)
847
- return;
848
- if (isFrontstageStateSettingResult(settingResult)) {
849
- const setting = settingResult.setting;
850
- if (setting.version >= version && setting.stateVersion >= stateVersion) {
851
- const restored = restoreNineZoneState(frontstageDef, setting.nineZone);
852
- frontstageDef.savedWidgetDefs = setting.widgets;
853
- restoreSavedWidgets(frontstageDef);
854
- let state = addMissingWidgets(frontstageDef, restored);
855
- state = hideWidgets(state, frontstageDef);
856
- state = processPopoutWidgets(state, frontstageDef);
857
- frontstageDef.nineZoneState = state;
858
- return;
859
- }
860
- }
861
- frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
862
- }
863
- void fetchFrontstageState();
864
- }, [frontstageDef]);
865
- }
866
- /** @internal */
867
- export function useSaveFrontstageSettings(frontstageDef, store) {
868
- const uiSettingsStorage = useUiStateStorageHandler();
869
- const saveSetting = React.useMemo(() => {
870
- const debounced = debounce(async (frontstage, state) => {
871
- const id = frontstage.id;
872
- const widgets = packSavedWidgets(frontstage);
873
- frontstage.savedWidgetDefs = widgets;
874
- const setting = {
875
- id,
876
- version: frontstage.version,
877
- stateVersion,
878
- nineZone: packNineZoneState(state),
879
- widgets,
880
- };
881
- await uiSettingsStorage.saveSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
882
- }, 1000);
883
- const save = (frontstage, state) => {
884
- if (state.draggedTab)
885
- return;
886
- debounced(frontstage, state);
887
- };
888
- save.cancel = debounced.cancel;
889
- return save;
890
- }, [uiSettingsStorage]);
891
- React.useEffect(() => {
892
- return () => {
893
- saveSetting.cancel();
894
- };
895
- }, [saveSetting]);
896
- React.useEffect(() => {
897
- saveSetting(frontstageDef, store.getState());
898
- }, [saveSetting, frontstageDef, store]);
899
- React.useEffect(() => {
900
- return store.subscribe(() => {
901
- saveSetting(frontstageDef, store.getState());
902
- });
903
- }, [saveSetting, frontstageDef, store]);
904
- }
905
- /** @internal */
906
- export const FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
907
- /** @internal */
908
- export function getFrontstageStateSettingName(frontstageId) {
909
- return `frontstageState[${frontstageId}]`;
910
- }
911
- // istanbul ignore next
912
- function debounce(func, duration) {
913
- let timeout;
914
- const debounced = (...args) => {
915
- const handler = () => {
916
- timeout = undefined;
917
- return func(...args);
918
- };
919
- window.clearTimeout(timeout);
920
- timeout = window.setTimeout(handler, duration);
921
- };
922
- debounced.cancel = () => {
923
- window.clearTimeout(timeout);
924
- };
925
- return debounced;
926
- }
927
- const createListener = (frontstageDef, listener) => {
928
- return (...args) => {
929
- if (!frontstageDef.nineZoneState)
930
- return;
931
- listener(...args);
932
- };
933
- };
934
- /** @internal */
935
- export function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
936
- React.useEffect(() => {
937
- const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
938
- assert(!!frontstageDef.nineZoneState);
939
- frontstageDef.nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, widgetState);
940
- });
941
- UiFramework.frontstages.onWidgetStateChangedEvent.addListener(listener);
942
- return () => {
943
- UiFramework.frontstages.onWidgetStateChangedEvent.removeListener(listener);
944
- };
945
- }, [frontstageDef]);
946
- React.useEffect(() => {
947
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
948
- assert(!!frontstageDef.nineZoneState);
949
- frontstageDef.nineZoneState = showWidget(frontstageDef.nineZoneState, widgetDef.id);
950
- });
951
- InternalFrontstageManager.onWidgetShowEvent.addListener(listener);
952
- return () => {
953
- InternalFrontstageManager.onWidgetShowEvent.removeListener(listener);
954
- };
955
- }, [frontstageDef]);
956
- React.useEffect(() => {
957
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
958
- assert(!!frontstageDef.nineZoneState);
959
- let nineZoneState = showWidget(frontstageDef.nineZoneState, widgetDef.id);
960
- nineZoneState = expandWidget(nineZoneState, widgetDef.id);
961
- frontstageDef.nineZoneState = nineZoneState;
962
- });
963
- InternalFrontstageManager.onWidgetExpandEvent.addListener(listener);
964
- return () => {
965
- InternalFrontstageManager.onWidgetExpandEvent.removeListener(listener);
966
- };
967
- }, [frontstageDef]);
968
- const uiSettingsStorage = useUiStateStorageHandler();
969
- React.useEffect(() => {
970
- const listener = (args) => {
971
- // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending
972
- void uiSettingsStorage.deleteSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(args.frontstageDef.id));
973
- if (frontstageDef.id === args.frontstageDef.id) {
974
- args.frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
975
- }
976
- else {
977
- args.frontstageDef.nineZoneState = undefined;
978
- }
979
- };
980
- InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(listener);
981
- return () => {
982
- InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(listener);
983
- };
984
- }, [uiSettingsStorage, frontstageDef]);
985
- React.useEffect(() => {
986
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
987
- assert(!!frontstageDef.nineZoneState);
988
- const label = widgetDef.label;
989
- frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, widgetDef.id, label);
990
- });
991
- InternalFrontstageManager.onWidgetLabelChangedEvent.addListener(listener);
992
- return () => {
993
- InternalFrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
994
- };
995
- }, [frontstageDef]);
996
- const defaultLabel = React.useMemo(() => UiFramework.translate("widget.labels.toolSettings"), []);
997
- React.useEffect(() => {
998
- const updateLabel = createListener(frontstageDef, () => {
999
- var _a;
1000
- const toolId = UiFramework.frontstages.activeToolId;
1001
- assert(!!frontstageDef.nineZoneState);
1002
- const label = useToolAsToolSettingsLabel ?
1003
- ((_a = IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1004
- frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, toolSettingsTabId, label);
1005
- });
1006
- // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1007
- updateLabel();
1008
- // If useTool... is true, listen for events to keep up the label up to date.
1009
- if (useToolAsToolSettingsLabel) {
1010
- UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel);
1011
- InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1012
- UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel);
1013
- UiFramework.frontstages.onToolSettingsReloadEvent.addListener(updateLabel);
1014
- }
1015
- return () => {
1016
- if (useToolAsToolSettingsLabel) {
1017
- UiFramework.frontstages.onFrontstageReadyEvent.removeListener(updateLabel);
1018
- InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1019
- UiFramework.frontstages.onToolActivatedEvent.removeListener(updateLabel);
1020
- UiFramework.frontstages.onToolSettingsReloadEvent.removeListener(updateLabel);
1021
- }
1022
- };
1023
- }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
1024
- }
1025
- /** @internal */
1026
- // istanbul ignore next
1027
- export function useItemsManager(frontstageDef) {
1028
- const refreshNineZoneState = (def) => {
1029
- // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.
1030
- def.updateWidgetDefs();
1031
- restoreSavedWidgets(def);
1032
- let state = def.nineZoneState;
1033
- if (!state)
1034
- return;
1035
- state = addMissingWidgets(def, state);
1036
- state = removeMissingWidgets(def, state);
1037
- state = hideWidgets(state, def); // TODO: should only apply to widgets provided by registered provider in onUiProviderRegisteredEvent.
1038
- def.nineZoneState = state;
1039
- };
1040
- React.useEffect(() => {
1041
- const remove = UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {
1042
- refreshNineZoneState(frontstageDef);
1043
- });
1044
- // Need to refresh anytime frontstageDef changes because uiItemsProvider may have added something to
1045
- // another stage before it was possibly unloaded in this stage.
1046
- refreshNineZoneState(frontstageDef);
1047
- return remove;
1048
- }, [frontstageDef]);
1049
- }
1050
- // istanbul ignore next
1051
- function determineNewWidgets(defs, state) {
1052
- defs = defs || [];
1053
- const uniqueDefs = defs.filter((def, index, array) => {
1054
- return index === array.findIndex((def1) => def.id === def1.id);
1055
- });
1056
- return uniqueDefs.filter((def) => !(def.id in state.tabs));
1057
- }
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 Frontstage
7
+ */
8
+ // cSpell:ignore popout
9
+ import "./Frontstage.scss";
10
+ import produce from "immer";
11
+ import * as React from "react";
12
+ import { unstable_batchedUpdates } from "react-dom";
13
+ import { assert, Logger, ProcessDetector } from "@itwin/core-bentley";
14
+ import { Rectangle, Size, UiStateStorageStatus } from "@itwin/core-react";
15
+ import { ToolbarPopupAutoHideContext } from "@itwin/components-react";
16
+ import { addFloatingWidget, addPanelWidget, addTab, addTabToWidget, convertAllPopupWidgetContainersToFloating, createLayoutStore, createNineZoneState, floatingWidgetBringToFront, FloatingWidgets, getTabLocation, getUniqueId, getWidgetPanelSectionId, insertPanelWidget, insertTabToWidget, isFloatingTabLocation, isHorizontalPanelSide, isPanelTabLocation, isPopoutTabLocation, NineZone, NineZoneStateReducer, panelSides, removeTab, removeTabFromWidget, toolSettingsTabId, WidgetPanels, } from "@itwin/appui-layout-react";
17
+ import { StagePanelState, toPanelSide } from "../stagepanels/StagePanelDef";
18
+ import { UiFramework } from "../UiFramework";
19
+ import { useUiStateStorageHandler } from "../uistate/useUiStateStorage";
20
+ import { WidgetContent } from "./Content";
21
+ import { WidgetPanelsFrontstageContent } from "./FrontstageContent";
22
+ import { ModalFrontstageComposer, useActiveModalFrontstageInfo } from "./ModalFrontstageComposer";
23
+ import { WidgetPanelsStatusBar } from "./StatusBar";
24
+ import { WidgetPanelsTab } from "./Tab";
25
+ import { WidgetPanelsToolbars } from "./Toolbars";
26
+ import { ToolSettingsContent, WidgetPanelsToolSettings } from "./ToolSettings";
27
+ import { useEscapeSetFocusToHome } from "../hooks/useEscapeSetFocusToHome";
28
+ import { useSelector } from "react-redux";
29
+ import { useUiVisibility } from "../hooks/useUiVisibility";
30
+ import { IModelApp } from "@itwin/core-frontend";
31
+ import { FloatingWidget } from "./FloatingWidget";
32
+ import { InternalFrontstageManager } from "../frontstage/InternalFrontstageManager";
33
+ import { WidgetState } from "../widgets/WidgetState";
34
+ import { StagePanelSection } from "../stagepanels/StagePanelSection";
35
+ import { StagePanelLocation } from "../stagepanels/StagePanelLocation";
36
+ import { UiItemsManager } from "../ui-items-provider/UiItemsManager";
37
+ function WidgetPanelsFrontstageComponent() {
38
+ const activeModalFrontstageInfo = useActiveModalFrontstageInfo();
39
+ const uiIsVisible = useUiVisibility();
40
+ return (React.createElement(React.Fragment, null,
41
+ React.createElement(WidgetPanelsToolSettings, null),
42
+ React.createElement(ToolbarPopupAutoHideContext.Provider, { value: !uiIsVisible },
43
+ React.createElement(ModalFrontstageComposer, { stageInfo: activeModalFrontstageInfo }),
44
+ React.createElement(WidgetPanels, { className: "uifw-widgetPanels", centerContent: React.createElement(WidgetPanelsToolbars, null) },
45
+ React.createElement(WidgetPanelsFrontstageContent, null)),
46
+ React.createElement(WidgetPanelsStatusBar, null),
47
+ React.createElement(FloatingWidgets, null))));
48
+ }
49
+ const widgetContent = React.createElement(WidgetContent, null);
50
+ const toolSettingsContent = React.createElement(ToolSettingsContent, null);
51
+ const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
52
+ /** @internal */
53
+ export function useLayoutStore() {
54
+ const [def, setDef] = React.useState(UiFramework.frontstages.activeFrontstageDef);
55
+ const [layout, setLayout] = React.useState(() => createLayoutStore(def === null || def === void 0 ? void 0 : def.nineZoneState));
56
+ React.useEffect(() => {
57
+ return UiFramework.frontstages.onFrontstageActivatedEvent.addListener((args) => {
58
+ unstable_batchedUpdates(() => {
59
+ setDef(args.activatedFrontstageDef);
60
+ setLayout(createLayoutStore(args.activatedFrontstageDef.nineZoneState));
61
+ });
62
+ });
63
+ }, []);
64
+ React.useEffect(() => {
65
+ return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
66
+ if (args.frontstageDef !== def || def.isStageClosing || def.isApplicationClosing)
67
+ return;
68
+ unstable_batchedUpdates(() => {
69
+ layout.setState(args.state || defaultNineZone);
70
+ });
71
+ });
72
+ }, [def, layout]);
73
+ return [layout, def];
74
+ }
75
+ /** Update in-memory NineZoneState of newly activated frontstage with up to date size.
76
+ * @internal
77
+ */
78
+ export function useUpdateNineZoneSize(frontstageDef) {
79
+ React.useEffect(() => {
80
+ const size = InternalFrontstageManager.nineZoneSize;
81
+ let state = frontstageDef.nineZoneState;
82
+ if (!size || !state)
83
+ return;
84
+ state = FrameworkStateReducer(state, {
85
+ type: "RESIZE",
86
+ size: {
87
+ height: size.height,
88
+ width: size.width,
89
+ },
90
+ }, frontstageDef);
91
+ frontstageDef.nineZoneState = state;
92
+ }, [frontstageDef]);
93
+ }
94
+ /** @internal */
95
+ export function FrameworkStateReducer(state, action, frontstageDef) {
96
+ state = NineZoneStateReducer(state, action);
97
+ if (action.type === "RESIZE") {
98
+ state = produce(state, (draft) => {
99
+ for (const panelSide of panelSides) {
100
+ const panel = draft.panels[panelSide];
101
+ const location = toStagePanelLocation(panelSide);
102
+ const panelDef = frontstageDef.getStagePanelDef(location);
103
+ if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
104
+ panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, action.size);
105
+ if (panel.size) {
106
+ panel.size = Math.min(Math.max(panel.size, panel.minSize), panel.maxSize);
107
+ }
108
+ }
109
+ }
110
+ });
111
+ }
112
+ return state;
113
+ }
114
+ /** @internal */
115
+ export function useNineZoneDispatch(frontstageDef) {
116
+ const dispatch = React.useCallback((action) => {
117
+ if (action.type === "RESIZE") {
118
+ InternalFrontstageManager.nineZoneSize = Size.create(action.size);
119
+ }
120
+ // istanbul ignore if
121
+ if (action.type === "TOOL_SETTINGS_DRAG_START") {
122
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
123
+ UiFramework.postTelemetry("Tool Settings Undocking", "28B04E07-AE73-4533-A0BA-8E2A8DC99ADF");
124
+ }
125
+ // istanbul ignore if
126
+ if (action.type === "TOOL_SETTINGS_DOCK") {
127
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
128
+ UiFramework.postTelemetry("Tool Settings Docking to Settings Bar", "BEDE684B-B3DB-4637-B3AF-DC3CBA223F94");
129
+ }
130
+ if (action.type === "WIDGET_TAB_POPOUT") {
131
+ const tabId = action.id;
132
+ frontstageDef.popoutWidget(tabId);
133
+ return;
134
+ }
135
+ const state = frontstageDef.nineZoneState;
136
+ if (!state)
137
+ return;
138
+ frontstageDef.nineZoneState = FrameworkStateReducer(state, action, frontstageDef);
139
+ }, [frontstageDef]);
140
+ return dispatch;
141
+ }
142
+ /** @internal */
143
+ export function WidgetPanelsFrontstage() {
144
+ const [layout, frontstageDef] = useLayoutStore();
145
+ React.useEffect(() => {
146
+ const triggerWidowCloseProcessing = () => {
147
+ frontstageDef && frontstageDef.setIsApplicationClosing(true);
148
+ };
149
+ frontstageDef && frontstageDef.setIsApplicationClosing(false);
150
+ window.addEventListener("unload", triggerWidowCloseProcessing);
151
+ return () => {
152
+ window.removeEventListener("unload", triggerWidowCloseProcessing);
153
+ };
154
+ }, [frontstageDef]);
155
+ if (!frontstageDef)
156
+ return null;
157
+ return (React.createElement(ActiveFrontstageDefProvider, { frontstageDef: frontstageDef, layout: layout }));
158
+ }
159
+ const defaultNineZone = createNineZoneState();
160
+ const tabElement = React.createElement(WidgetPanelsTab, null);
161
+ const floatingWidgetElement = React.createElement(FloatingWidget, null);
162
+ /** @internal */
163
+ export function ActiveFrontstageDefProvider({ frontstageDef, layout }) {
164
+ const dispatch = useNineZoneDispatch(frontstageDef);
165
+ useUpdateNineZoneSize(frontstageDef);
166
+ useSavedFrontstageState(frontstageDef);
167
+ useSaveFrontstageSettings(frontstageDef, layout);
168
+ useItemsManager(frontstageDef);
169
+ const labels = useLabels();
170
+ const uiIsVisible = useUiVisibility();
171
+ const showWidgetIcon = useSelector((state) => {
172
+ const frameworkState = state[UiFramework.frameworkStateKey];
173
+ return !!frameworkState.configurableUiState.showWidgetIcon;
174
+ });
175
+ const autoCollapseUnpinnedPanels = useSelector((state) => {
176
+ const frameworkState = state[UiFramework.frameworkStateKey];
177
+ return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;
178
+ });
179
+ const animateToolSettings = useSelector((state) => {
180
+ const frameworkState = state[UiFramework.frameworkStateKey];
181
+ return !!frameworkState.configurableUiState.animateToolSettings;
182
+ });
183
+ const useToolAsToolSettingsLabel = useSelector((state) => {
184
+ const frameworkState = state[UiFramework.frameworkStateKey];
185
+ return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;
186
+ });
187
+ useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);
188
+ const handleKeyDown = useEscapeSetFocusToHome();
189
+ return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
190
+ React.createElement(NineZone, { dispatch: dispatch, labels: labels, layout: layout, tab: tabElement, floatingWidget: floatingWidgetElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
191
+ }
192
+ /** @internal */
193
+ export function useLabels() {
194
+ return React.useMemo(() => ({
195
+ dockToolSettingsTitle: UiFramework.translate("widget.tooltips.dockToolSettings"),
196
+ moreWidgetsTitle: UiFramework.translate("widget.tooltips.moreWidgets"),
197
+ moreToolSettingsTitle: UiFramework.translate("widget.tooltips.moreToolSettings"),
198
+ pinPanelTitle: UiFramework.translate("widget.tooltips.pinPanel"),
199
+ resizeGripTitle: UiFramework.translate("widget.tooltips.resizeGrip"),
200
+ sendWidgetHomeTitle: UiFramework.translate("widget.tooltips.sendHome"),
201
+ toolSettingsHandleTitle: UiFramework.translate("widget.tooltips.toolSettingsHandle"),
202
+ unpinPanelTitle: UiFramework.translate("widget.tooltips.unpinPanel"),
203
+ popoutActiveTab: UiFramework.translate("widget.tooltips.popoutActiveTab"),
204
+ }), []);
205
+ }
206
+ /** @internal */
207
+ export function addWidgets(state, widgets, side, widgetId) {
208
+ var _a;
209
+ const visibleWidgets = widgets.filter((w) => w.isVisible && (w.defaultState !== WidgetState.Floating));
210
+ if (visibleWidgets.length === 0)
211
+ return state;
212
+ const tabs = new Array();
213
+ for (const widget of visibleWidgets) {
214
+ const label = getWidgetLabel(widget.label);
215
+ state = addTab(state, widget.id, {
216
+ label,
217
+ iconSpec: widget.iconSpec,
218
+ preferredPanelWidgetSize: widget.preferredPanelSize,
219
+ preferredFloatingWidgetSize: widget.defaultFloatingSize,
220
+ canPopout: widget.canPopout,
221
+ isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
222
+ hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
223
+ allowedPanelTargets: (_a = widget.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((location) => toPanelSide(location)),
224
+ });
225
+ tabs.push(widget.id);
226
+ }
227
+ const activeWidget = visibleWidgets.find((widget) => widget.isActive);
228
+ const minimized = false;
229
+ // istanbul ignore else
230
+ if ((activeWidget === null || activeWidget === void 0 ? void 0 : activeWidget.defaultState) !== WidgetState.Floating) {
231
+ state = addPanelWidget(state, side, widgetId, tabs, {
232
+ activeTabId: activeWidget ? activeWidget.id : tabs[0],
233
+ minimized,
234
+ });
235
+ }
236
+ return state;
237
+ }
238
+ /** @internal */
239
+ // istanbul ignore next
240
+ export function appendWidgets(state, widgetDefs, location, section) {
241
+ var _a, _b;
242
+ if (widgetDefs.length === 0)
243
+ return state;
244
+ const side = toPanelSide(location);
245
+ // Add missing widget tabs.
246
+ for (const widgetDef of widgetDefs) {
247
+ const label = getWidgetLabel(widgetDef.label);
248
+ const saveTab = state.tabs[widgetDef.id];
249
+ const preferredPanelWidgetSize = saveTab ? saveTab.preferredPanelWidgetSize : widgetDef.preferredPanelSize;
250
+ const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : widgetDef.defaultFloatingSize;
251
+ // if a defaultFloatingSize is specified then this mean the widget can't determine its intrinsic size and must be explicitly sized
252
+ const userSized = saveTab ? (saveTab.userSized || !!widgetDef.defaultFloatingSize && !!saveTab.preferredFloatingWidgetSize)
253
+ : !!widgetDef.defaultFloatingSize;
254
+ state = addTab(state, widgetDef.id, {
255
+ label,
256
+ iconSpec: widgetDef.iconSpec,
257
+ canPopout: widgetDef.canPopout,
258
+ preferredPanelWidgetSize,
259
+ preferredFloatingWidgetSize,
260
+ userSized,
261
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
262
+ hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
263
+ allowedPanelTargets: (_a = widgetDef.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((l) => toPanelSide(l)),
264
+ });
265
+ if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === WidgetState.Floating) {
266
+ const floatingContainerId = (_b = widgetDef.floatingContainerId) !== null && _b !== void 0 ? _b : getUniqueId();
267
+ const widgetContainerId = getWidgetId(location, section);
268
+ const home = { side, widgetId: widgetContainerId, widgetIndex: 0 };
269
+ const preferredPosition = widgetDef.defaultFloatingPosition;
270
+ if (floatingContainerId in state.widgets) {
271
+ state = addTabToWidget(state, widgetDef.id, floatingContainerId);
272
+ }
273
+ else {
274
+ const tab = state.tabs[widgetDef.id];
275
+ const size = { height: 200, width: 300, ...tab.preferredFloatingWidgetSize };
276
+ const preferredPoint = preferredPosition !== null && preferredPosition !== void 0 ? preferredPosition : { x: (state.size.width - size.width) / 2, y: (state.size.height - size.height) / 2 };
277
+ const nzBounds = Rectangle.createFromSize(state.size);
278
+ const bounds = Rectangle.createFromSize(size).offset(preferredPoint);
279
+ const containedBounds = bounds.containIn(nzBounds);
280
+ state = addFloatingWidget(state, floatingContainerId, [widgetDef.id], {
281
+ bounds: containedBounds.toProps(),
282
+ home,
283
+ userSized,
284
+ }, {
285
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
286
+ });
287
+ }
288
+ }
289
+ else {
290
+ const preferredWidgetIndex = section;
291
+ const widgetPanelSectionId = getWidgetPanelSectionId(side, preferredWidgetIndex);
292
+ if (widgetPanelSectionId in state.widgets) {
293
+ state = addTabToWidget(state, widgetDef.id, widgetPanelSectionId);
294
+ }
295
+ else {
296
+ const panel = state.panels[side];
297
+ if (panel.widgets.length < panel.maxWidgetCount) {
298
+ state = addPanelWidget(state, side, widgetPanelSectionId, [widgetDef.id]);
299
+ }
300
+ else {
301
+ const widgetIndex = Math.min(preferredWidgetIndex, panel.widgets.length - 1);
302
+ const widgetId = panel.widgets[widgetIndex];
303
+ state = addTabToWidget(state, widgetDef.id, widgetId);
304
+ }
305
+ }
306
+ }
307
+ }
308
+ return state;
309
+ }
310
+ function processPopoutWidgets(initialState, frontstageDef) {
311
+ // istanbul ignore next
312
+ if (!initialState.popoutWidgets)
313
+ return initialState;
314
+ // istanbul ignore next - not unit testing electron case that reopens popout windows
315
+ if (initialState.popoutWidgets && ProcessDetector.isElectronAppFrontend) {
316
+ if (initialState.popoutWidgets.allIds.length && ProcessDetector.isElectronAppFrontend) {
317
+ for (const widgetContainerId of initialState.popoutWidgets.allIds) {
318
+ frontstageDef.openPopoutWidgetContainer(initialState, widgetContainerId);
319
+ }
320
+ }
321
+ return initialState;
322
+ }
323
+ return convertAllPopupWidgetContainersToFloating(initialState);
324
+ }
325
+ /** Adds frontstageDef widgets that are missing in NineZoneState.
326
+ * @internal
327
+ */
328
+ export function addMissingWidgets(frontstageDef, initialState) {
329
+ var _a, _b, _c, _d, _e, _f, _g, _h;
330
+ let state = initialState;
331
+ state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.Start);
332
+ state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Left, StagePanelSection.End);
333
+ state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.rightPanel) === null || _c === void 0 ? void 0 : _c.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.Start);
334
+ state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.rightPanel) === null || _d === void 0 ? void 0 : _d.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Right, StagePanelSection.End);
335
+ state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.topPanel) === null || _e === void 0 ? void 0 : _e.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.Start);
336
+ state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.topPanel) === null || _f === void 0 ? void 0 : _f.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Top, StagePanelSection.End);
337
+ state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.bottomPanel) === null || _g === void 0 ? void 0 : _g.getPanelSectionDef(StagePanelSection.Start).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.Start);
338
+ state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomPanel) === null || _h === void 0 ? void 0 : _h.getPanelSectionDef(StagePanelSection.End).widgetDefs, state), StagePanelLocation.Bottom, StagePanelSection.End);
339
+ return state;
340
+ }
341
+ /** Hide widgets with Hidden defaultState. */
342
+ function hideWidgets(state, frontstageDef) {
343
+ const tabs = Object.values(state.tabs);
344
+ for (const tab of tabs) {
345
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
346
+ if (!widgetDef)
347
+ continue;
348
+ if (widgetDef.defaultState === WidgetState.Hidden) {
349
+ state = hideWidget(state, widgetDef);
350
+ }
351
+ }
352
+ return state;
353
+ }
354
+ /** Removes NineZoneState widgets that are missing in frontstageDef.
355
+ * @internal
356
+ */
357
+ export function removeMissingWidgets(frontstageDef, initialState) {
358
+ let state = initialState;
359
+ for (const [, tab] of Object.entries(state.tabs)) {
360
+ if (tab.id === toolSettingsTabId)
361
+ continue;
362
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
363
+ if (widgetDef)
364
+ continue;
365
+ state = removeTab(state, tab.id);
366
+ }
367
+ return state;
368
+ }
369
+ function getWidgetLabel(label) {
370
+ return label === "" ? "Widget" : label;
371
+ }
372
+ function toStagePanelLocation(side) {
373
+ switch (side) {
374
+ case "bottom":
375
+ return StagePanelLocation.Bottom;
376
+ case "left":
377
+ return StagePanelLocation.Left;
378
+ case "right":
379
+ return StagePanelLocation.Right;
380
+ case "top":
381
+ return StagePanelLocation.Top;
382
+ }
383
+ }
384
+ /** @internal */
385
+ export function getWidgetId(location, section) {
386
+ switch (location) {
387
+ case StagePanelLocation.Left: {
388
+ if (section === StagePanelSection.Start)
389
+ return "leftStart";
390
+ return "leftEnd";
391
+ }
392
+ case StagePanelLocation.Right: {
393
+ if (section === StagePanelSection.Start)
394
+ return "rightStart";
395
+ return "rightEnd";
396
+ }
397
+ case StagePanelLocation.Top: {
398
+ if (section === StagePanelSection.Start)
399
+ return "topStart";
400
+ return "topEnd";
401
+ }
402
+ case StagePanelLocation.Bottom: {
403
+ if (section === StagePanelSection.Start)
404
+ return "bottomStart";
405
+ return "bottomEnd";
406
+ }
407
+ }
408
+ }
409
+ /** @internal */
410
+ export function getPanelSectionWidgets(frontstageDef, location, section) {
411
+ const stagePanel = frontstageDef.getStagePanelDef(location);
412
+ const panelSection = stagePanel === null || stagePanel === void 0 ? void 0 : stagePanel.getPanelSectionDef(section);
413
+ return (panelSection === null || panelSection === void 0 ? void 0 : panelSection.widgetDefs) || [];
414
+ }
415
+ /** @internal */
416
+ export function addPanelWidgets(state, frontstageDef, location) {
417
+ const side = toPanelSide(location);
418
+ const start = getWidgetId(location, StagePanelSection.Start);
419
+ const startWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection.Start);
420
+ state = addWidgets(state, determineNewWidgets(startWidgets, state), side, start);
421
+ const end = getWidgetId(location, StagePanelSection.End);
422
+ const endWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection.End);
423
+ state = addWidgets(state, determineNewWidgets(endWidgets, state), side, end);
424
+ return state;
425
+ }
426
+ /** @internal */
427
+ export function isFrontstageStateSettingResult(settingsResult) {
428
+ if (settingsResult.status === UiStateStorageStatus.Success)
429
+ return true;
430
+ return false;
431
+ }
432
+ /** @internal */
433
+ export function initializePanel(state, frontstageDef, location) {
434
+ const panelSide = toPanelSide(location);
435
+ state = addPanelWidgets(state, frontstageDef, location);
436
+ const panelDef = frontstageDef.getStagePanelDef(location);
437
+ state = produce(state, (draft) => {
438
+ var _a, _b, _c;
439
+ const panel = draft.panels[panelSide];
440
+ panel.minSize = (_a = panelDef === null || panelDef === void 0 ? void 0 : panelDef.minSize) !== null && _a !== void 0 ? _a : panel.minSize;
441
+ panel.pinned = (_b = panelDef === null || panelDef === void 0 ? void 0 : panelDef.pinned) !== null && _b !== void 0 ? _b : panel.pinned;
442
+ panel.resizable = (_c = panelDef === null || panelDef === void 0 ? void 0 : panelDef.resizable) !== null && _c !== void 0 ? _c : panel.resizable;
443
+ if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
444
+ panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, state.size);
445
+ }
446
+ const size = panelDef === null || panelDef === void 0 ? void 0 : panelDef.size;
447
+ panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);
448
+ });
449
+ return state;
450
+ }
451
+ function getPanelMaxSize(maxSizeSpec, panel, nineZoneSize) {
452
+ if (typeof maxSizeSpec === "number") {
453
+ return maxSizeSpec;
454
+ }
455
+ const size = isHorizontalPanelSide(panel) ? nineZoneSize.height : nineZoneSize.width;
456
+ return maxSizeSpec.percentage / 100 * size;
457
+ }
458
+ const stateVersion = 13; // this needs to be bumped when NineZoneState is changed (to recreate the layout).
459
+ /** @internal */
460
+ export function initializeNineZoneState(frontstageDef) {
461
+ let nineZone = defaultNineZone;
462
+ nineZone = produce(nineZone, (stateDraft) => {
463
+ // istanbul ignore next
464
+ if (!InternalFrontstageManager.nineZoneSize)
465
+ return;
466
+ stateDraft.size = {
467
+ height: InternalFrontstageManager.nineZoneSize.height,
468
+ width: InternalFrontstageManager.nineZoneSize.width,
469
+ };
470
+ });
471
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Left);
472
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Right);
473
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Top);
474
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation.Bottom);
475
+ nineZone = produce(nineZone, (stateDraft) => {
476
+ var _a, _b, _c, _d;
477
+ for (const [, panel] of Object.entries(stateDraft.panels)) {
478
+ const expanded = panel.widgets.find((widgetId) => stateDraft.widgets[widgetId].minimized === false);
479
+ const firstWidget = panel.widgets.length > 0 ? stateDraft.widgets[panel.widgets[0]] : undefined;
480
+ // istanbul ignore next
481
+ if (!expanded && firstWidget) {
482
+ firstWidget.minimized = false;
483
+ }
484
+ }
485
+ stateDraft.panels.left.collapsed = isPanelCollapsed((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.panelState);
486
+ stateDraft.panels.right.collapsed = isPanelCollapsed((_b = frontstageDef.rightPanel) === null || _b === void 0 ? void 0 : _b.panelState);
487
+ stateDraft.panels.top.collapsed = isPanelCollapsed((_c = frontstageDef.topPanel) === null || _c === void 0 ? void 0 : _c.panelState);
488
+ stateDraft.panels.bottom.collapsed = isPanelCollapsed((_d = frontstageDef.bottomPanel) === null || _d === void 0 ? void 0 : _d.panelState);
489
+ const toolSettingsWidgetDef = frontstageDef.toolSettings;
490
+ if (toolSettingsWidgetDef) {
491
+ const toolSettingsTab = stateDraft.tabs[toolSettingsTabId];
492
+ toolSettingsTab.preferredPanelWidgetSize = toolSettingsWidgetDef.preferredPanelSize;
493
+ }
494
+ });
495
+ nineZone = addMissingWidgets(frontstageDef, nineZone);
496
+ nineZone = hideWidgets(nineZone, frontstageDef);
497
+ nineZone = processPopoutWidgets(nineZone, frontstageDef);
498
+ return nineZone;
499
+ }
500
+ /** Converts from saved NineZoneState to NineZoneState.
501
+ * @note Restores toolSettings tab.
502
+ * @note Restores tab labels.
503
+ * @internal
504
+ */
505
+ export function restoreNineZoneState(frontstageDef, saved) {
506
+ let restored = {
507
+ ...saved,
508
+ tabs: defaultNineZone.tabs,
509
+ };
510
+ for (const [, tab] of Object.entries(saved.tabs)) {
511
+ // Re-add the placeholder tab in order to correctly remove it from the state if WidgetDef is not found.
512
+ restored = addTab(restored, tab.id);
513
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
514
+ if (!widgetDef) {
515
+ Logger.logInfo(UiFramework.loggerCategory(restoreNineZoneState), "WidgetDef is not found for saved tab.", () => ({
516
+ frontstageId: frontstageDef.id,
517
+ tabId: tab.id,
518
+ }));
519
+ restored = removeTab(restored, tab.id);
520
+ continue;
521
+ }
522
+ restored = produce(restored, (draft) => {
523
+ var _a;
524
+ draft.tabs[tab.id] = {
525
+ ...tab,
526
+ label: getWidgetLabel(widgetDef.label),
527
+ hideWithUiWhenFloating: widgetDef.hideWithUiWhenFloating,
528
+ iconSpec: widgetDef.iconSpec,
529
+ canPopout: widgetDef.canPopout,
530
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
531
+ allowedPanelTargets: (_a = widgetDef.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((location) => toPanelSide(location)),
532
+ };
533
+ });
534
+ }
535
+ restored = produce(restored, (draft) => {
536
+ // remove center panel section if one is found in left or right panels
537
+ const oldLeftMiddleIndex = saved.panels.left.widgets.findIndex((value) => value === "leftMiddle");
538
+ // istanbul ignore next
539
+ if (-1 !== oldLeftMiddleIndex) {
540
+ draft.panels.left.widgets = saved.panels.left.widgets.filter((value) => value !== "leftMiddle");
541
+ if ("leftEnd" in draft.widgets) {
542
+ draft.widgets.leftMiddle.tabs.forEach((tab) => draft.widgets.leftEnd.tabs.push(tab));
543
+ }
544
+ else {
545
+ draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };
546
+ delete draft.widgets.leftMiddle;
547
+ }
548
+ }
549
+ const oldRightMiddleIndex = saved.panels.right.widgets.findIndex((value) => value === "rightMiddle");
550
+ // istanbul ignore next
551
+ if (-1 !== oldRightMiddleIndex) {
552
+ draft.panels.right.widgets = saved.panels.right.widgets.filter((value) => value !== "rightMiddle");
553
+ if ("rightEnd" in draft.widgets) {
554
+ draft.widgets.rightMiddle.tabs.forEach((tab) => draft.widgets.rightEnd.tabs.push(tab));
555
+ }
556
+ else {
557
+ draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };
558
+ delete draft.widgets.rightMiddle;
559
+ }
560
+ }
561
+ return;
562
+ });
563
+ if (InternalFrontstageManager.nineZoneSize && (0 !== InternalFrontstageManager.nineZoneSize.height || 0 !== InternalFrontstageManager.nineZoneSize.width)) {
564
+ restored = FrameworkStateReducer(restored, {
565
+ type: "RESIZE",
566
+ size: {
567
+ height: InternalFrontstageManager.nineZoneSize.height,
568
+ width: InternalFrontstageManager.nineZoneSize.width,
569
+ },
570
+ }, frontstageDef);
571
+ }
572
+ return restored;
573
+ }
574
+ /** Prepares NineZoneState to be saved.
575
+ * @note Removes toolSettings tab.
576
+ * @note Removes tab labels and iconSpec.
577
+ * @internal
578
+ */
579
+ export function packNineZoneState(state) {
580
+ let packed = {
581
+ ...state,
582
+ tabs: {},
583
+ };
584
+ packed = produce(packed, (draft) => {
585
+ for (const [, tab] of Object.entries(state.tabs)) {
586
+ if (tab.id === toolSettingsTabId)
587
+ continue;
588
+ draft.tabs[tab.id] = {
589
+ id: tab.id,
590
+ preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
591
+ allowedPanelTargets: tab.allowedPanelTargets,
592
+ userSized: tab.userSized,
593
+ };
594
+ }
595
+ });
596
+ return packed;
597
+ }
598
+ // istanbul ignore next
599
+ function packSavedWidgets(frontstageDef) {
600
+ let savedWidgets = [];
601
+ for (const widgetDef of frontstageDef.widgetDefs) {
602
+ const id = widgetDef.id;
603
+ const initialWidget = {
604
+ id,
605
+ };
606
+ const widget = produce(initialWidget, (draft) => {
607
+ if (widgetDef.tabLocation) {
608
+ draft.tabLocation = { ...widgetDef.tabLocation };
609
+ }
610
+ if (widgetDef.popoutBounds) {
611
+ draft.popoutBounds = widgetDef.popoutBounds.toProps();
612
+ }
613
+ });
614
+ if (widget === initialWidget)
615
+ continue;
616
+ savedWidgets.push(widget);
617
+ }
618
+ // Add previously saved widgets.
619
+ const prevSavedWidgets = frontstageDef.savedWidgetDefs || [];
620
+ for (const prevWidget of prevSavedWidgets) {
621
+ if (savedWidgets.find((w) => w.id === prevWidget.id))
622
+ continue;
623
+ savedWidgets.push(prevWidget);
624
+ }
625
+ // Limit number of saved widgets.
626
+ const maxWidgets = 100;
627
+ if (savedWidgets.length > maxWidgets)
628
+ savedWidgets = savedWidgets.slice(0, maxWidgets);
629
+ return savedWidgets;
630
+ }
631
+ // istanbul ignore next
632
+ function restoreSavedWidgets(frontstage) {
633
+ const savedWidgets = frontstage.savedWidgetDefs || [];
634
+ for (const savedWidget of savedWidgets) {
635
+ const widgetId = savedWidget.id;
636
+ const widgetDef = frontstage.findWidgetDef(widgetId);
637
+ if (!widgetDef)
638
+ continue;
639
+ if (savedWidget.tabLocation) {
640
+ widgetDef.tabLocation = { ...savedWidget.tabLocation };
641
+ }
642
+ if (savedWidget.popoutBounds) {
643
+ widgetDef.popoutBounds = Rectangle.create(savedWidget.popoutBounds);
644
+ }
645
+ }
646
+ }
647
+ /** @internal */
648
+ export function isPanelCollapsed(panelState) {
649
+ return panelState !== StagePanelState.Open;
650
+ }
651
+ function addHiddenWidget(state, widgetDef) {
652
+ const tabLocation = widgetDef.tabLocation || widgetDef.defaultTabLocation;
653
+ const tabId = widgetDef.id;
654
+ const { widgetId, tabIndex } = tabLocation;
655
+ if (widgetId in state.widgets) {
656
+ // Add to an existing widget (by widget id).
657
+ return insertTabToWidget(state, tabId, widgetId, tabIndex);
658
+ }
659
+ else if (tabLocation.floatingWidget) {
660
+ const floatingWidget = tabLocation.floatingWidget;
661
+ assert(widgetId === floatingWidget.id);
662
+ // Add to a new floating widget.
663
+ const nzBounds = Rectangle.createFromSize(state.size);
664
+ const bounds = Rectangle.create(floatingWidget.bounds).containIn(nzBounds);
665
+ return addFloatingWidget(state, floatingWidget.id, [tabId], {
666
+ ...floatingWidget,
667
+ bounds: bounds.toProps(),
668
+ });
669
+ }
670
+ // Add to a panel section.
671
+ const panel = state.panels[tabLocation.side];
672
+ // Add to existing panel section.
673
+ if (panel.widgets.length >= panel.maxWidgetCount) {
674
+ const sectionIndex = Math.min(panel.maxWidgetCount - 1, tabLocation.widgetIndex);
675
+ const sectionId = panel.widgets[sectionIndex];
676
+ return insertTabToWidget(state, tabId, sectionId, tabLocation.tabIndex);
677
+ }
678
+ // Create a new panel section.
679
+ const newSectionId = getUniqueId();
680
+ return insertPanelWidget(state, panel.side, newSectionId, [tabId], tabLocation.widgetIndex);
681
+ }
682
+ /** @internal */
683
+ export function setWidgetState(state, widgetDef, widgetState) {
684
+ var _a, _b;
685
+ if (widgetState === WidgetState.Hidden) {
686
+ return hideWidget(state, widgetDef);
687
+ }
688
+ else if (widgetState === WidgetState.Open) {
689
+ const id = widgetDef.id;
690
+ let location = getTabLocation(state, id);
691
+ if (!location) {
692
+ state = addHiddenWidget(state, widgetDef);
693
+ location = getTabLocation(state, id);
694
+ }
695
+ return produce(state, (draft) => {
696
+ var _a;
697
+ assert(!!location);
698
+ const widget = draft.widgets[location.widgetId];
699
+ widget.minimized = false;
700
+ widget.activeTabId = id;
701
+ if (isFloatingTabLocation(location)) {
702
+ const floatingWidget = draft.floatingWidgets.byId[location.floatingWidgetId];
703
+ floatingWidget.hidden = false;
704
+ // istanbul ignore else
705
+ }
706
+ else if (isPanelTabLocation(location)) {
707
+ const panel = draft.panels[location.side];
708
+ panel.collapsed = false;
709
+ if (undefined === panel.size || 0 === panel.size) {
710
+ // istanbul ignore next
711
+ panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
712
+ }
713
+ }
714
+ });
715
+ }
716
+ else if (widgetState === WidgetState.Closed) {
717
+ const id = widgetDef.id;
718
+ let location = getTabLocation(state, id);
719
+ if (!location) {
720
+ state = addHiddenWidget(state, widgetDef);
721
+ location = getTabLocation(state, id);
722
+ }
723
+ // TODO: should change activeTabId of a widget with multiple tabs.
724
+ return produce(state, (draft) => {
725
+ assert(!!location);
726
+ const widget = draft.widgets[location.widgetId];
727
+ if (isFloatingTabLocation(location)) {
728
+ if (id === widget.activeTabId) {
729
+ widget.minimized = true;
730
+ }
731
+ }
732
+ });
733
+ }
734
+ else if (widgetState === WidgetState.Floating) {
735
+ const id = widgetDef.id;
736
+ let location = getTabLocation(state, id);
737
+ if (!location) {
738
+ state = addHiddenWidget(state, widgetDef);
739
+ location = getTabLocation(state, id);
740
+ }
741
+ assert(!!location);
742
+ if (isFloatingTabLocation(location))
743
+ return state;
744
+ // Widget is not floating.
745
+ state = removeTabFromWidget(state, id);
746
+ const bounds = (_b = (_a = widgetDef.tabLocation) === null || _a === void 0 ? void 0 : _a.floatingWidget) === null || _b === void 0 ? void 0 : _b.bounds;
747
+ state = addFloatingWidget(state, getUniqueId(), [id], { bounds });
748
+ }
749
+ return state;
750
+ }
751
+ /** Stores widget location and hides it in the UI. */
752
+ function hideWidget(state, widgetDef) {
753
+ const location = getTabLocation(state, widgetDef.id);
754
+ if (!location)
755
+ return state;
756
+ // istanbul ignore else
757
+ if (isFloatingTabLocation(location)) {
758
+ const floatingWidget = state.floatingWidgets.byId[location.widgetId];
759
+ widgetDef.setFloatingContainerId(location.floatingWidgetId);
760
+ widgetDef.tabLocation = {
761
+ side: floatingWidget.home.side,
762
+ tabIndex: floatingWidget.home.widgetIndex,
763
+ widgetId: floatingWidget.id,
764
+ widgetIndex: floatingWidget.home.widgetIndex,
765
+ floatingWidget,
766
+ };
767
+ }
768
+ else if (!isPopoutTabLocation(location)) {
769
+ const widgetId = location.widgetId;
770
+ const side = isPanelTabLocation(location) ? location.side : "left";
771
+ const widgetIndex = isPanelTabLocation(location) ? state.panels[side].widgets.indexOf(widgetId) : 0;
772
+ const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
773
+ widgetDef.tabLocation = {
774
+ side,
775
+ tabIndex,
776
+ widgetId,
777
+ widgetIndex,
778
+ };
779
+ }
780
+ return removeTabFromWidget(state, widgetDef.id);
781
+ }
782
+ /** @internal */
783
+ export function showWidget(state, id) {
784
+ const location = getTabLocation(state, id);
785
+ if (!location)
786
+ return state;
787
+ state = produce(state, (draft) => {
788
+ const widget = draft.widgets[location.widgetId];
789
+ widget.activeTabId = id;
790
+ widget.minimized = false;
791
+ if (isPanelTabLocation(location)) {
792
+ const panel = draft.panels[location.side];
793
+ panel.collapsed = false;
794
+ }
795
+ });
796
+ if (isFloatingTabLocation(location)) {
797
+ state = floatingWidgetBringToFront(state, location.floatingWidgetId);
798
+ }
799
+ return state;
800
+ }
801
+ /** @internal */
802
+ export function expandWidget(state, id) {
803
+ const location = getTabLocation(state, id);
804
+ if (!location)
805
+ return state;
806
+ return produce(state, (draft) => {
807
+ const widget = draft.widgets[location.widgetId];
808
+ if (isPanelTabLocation(location)) {
809
+ const panel = draft.panels[location.side];
810
+ panel.splitterPercent =
811
+ panel.widgets.findIndex((wId) => wId === location.widgetId) === 0 ?
812
+ 100 : 0;
813
+ }
814
+ widget.minimized = false;
815
+ });
816
+ }
817
+ /** @internal */
818
+ export function setWidgetLabel(state, id, label) {
819
+ if (!(id in state.tabs))
820
+ return state;
821
+ return produce(state, (draft) => {
822
+ const tab = draft.tabs[id];
823
+ tab.label = label;
824
+ });
825
+ }
826
+ /** @internal */
827
+ export function useSavedFrontstageState(frontstageDef) {
828
+ const uiStateStorage = useUiStateStorageHandler();
829
+ const uiStateStorageRef = React.useRef(uiStateStorage);
830
+ const isMountedRef = React.useRef(false);
831
+ React.useEffect(() => {
832
+ isMountedRef.current = true;
833
+ return () => { isMountedRef.current = false; };
834
+ }, []);
835
+ React.useEffect(() => {
836
+ uiStateStorageRef.current = uiStateStorage;
837
+ }, [uiStateStorage]);
838
+ React.useEffect(() => {
839
+ async function fetchFrontstageState() {
840
+ if (frontstageDef.nineZoneState) {
841
+ frontstageDef.nineZoneState = processPopoutWidgets(frontstageDef.nineZoneState, frontstageDef);
842
+ return;
843
+ }
844
+ const id = frontstageDef.id;
845
+ const version = frontstageDef.version;
846
+ const settingResult = await uiStateStorageRef.current.getSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id));
847
+ if (!isMountedRef.current)
848
+ return;
849
+ if (isFrontstageStateSettingResult(settingResult)) {
850
+ const setting = settingResult.setting;
851
+ if (setting.version >= version && setting.stateVersion >= stateVersion) {
852
+ const restored = restoreNineZoneState(frontstageDef, setting.nineZone);
853
+ frontstageDef.savedWidgetDefs = setting.widgets;
854
+ restoreSavedWidgets(frontstageDef);
855
+ let state = addMissingWidgets(frontstageDef, restored);
856
+ state = hideWidgets(state, frontstageDef);
857
+ state = processPopoutWidgets(state, frontstageDef);
858
+ frontstageDef.nineZoneState = state;
859
+ return;
860
+ }
861
+ }
862
+ frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
863
+ }
864
+ void fetchFrontstageState();
865
+ }, [frontstageDef]);
866
+ }
867
+ /** @internal */
868
+ export function useSaveFrontstageSettings(frontstageDef, store) {
869
+ const uiSettingsStorage = useUiStateStorageHandler();
870
+ const saveSetting = React.useMemo(() => {
871
+ const debounced = debounce(async (frontstage, state) => {
872
+ const id = frontstage.id;
873
+ const widgets = packSavedWidgets(frontstage);
874
+ frontstage.savedWidgetDefs = widgets;
875
+ const setting = {
876
+ id,
877
+ version: frontstage.version,
878
+ stateVersion,
879
+ nineZone: packNineZoneState(state),
880
+ widgets,
881
+ };
882
+ await uiSettingsStorage.saveSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
883
+ }, 1000);
884
+ const save = (frontstage, state) => {
885
+ if (state.draggedTab)
886
+ return;
887
+ debounced(frontstage, state);
888
+ };
889
+ save.cancel = debounced.cancel;
890
+ return save;
891
+ }, [uiSettingsStorage]);
892
+ React.useEffect(() => {
893
+ return () => {
894
+ saveSetting.cancel();
895
+ };
896
+ }, [saveSetting]);
897
+ React.useEffect(() => {
898
+ saveSetting(frontstageDef, store.getState());
899
+ }, [saveSetting, frontstageDef, store]);
900
+ React.useEffect(() => {
901
+ return store.subscribe(() => {
902
+ saveSetting(frontstageDef, store.getState());
903
+ });
904
+ }, [saveSetting, frontstageDef, store]);
905
+ }
906
+ /** @internal */
907
+ export const FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
908
+ /** @internal */
909
+ export function getFrontstageStateSettingName(frontstageId) {
910
+ return `frontstageState[${frontstageId}]`;
911
+ }
912
+ // istanbul ignore next
913
+ function debounce(func, duration) {
914
+ let timeout;
915
+ const debounced = (...args) => {
916
+ const handler = () => {
917
+ timeout = undefined;
918
+ return func(...args);
919
+ };
920
+ window.clearTimeout(timeout);
921
+ timeout = window.setTimeout(handler, duration);
922
+ };
923
+ debounced.cancel = () => {
924
+ window.clearTimeout(timeout);
925
+ };
926
+ return debounced;
927
+ }
928
+ const createListener = (frontstageDef, listener) => {
929
+ return (...args) => {
930
+ if (!frontstageDef.nineZoneState)
931
+ return;
932
+ listener(...args);
933
+ };
934
+ };
935
+ /** @internal */
936
+ export function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
937
+ React.useEffect(() => {
938
+ const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
939
+ assert(!!frontstageDef.nineZoneState);
940
+ frontstageDef.nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, widgetState);
941
+ });
942
+ UiFramework.frontstages.onWidgetStateChangedEvent.addListener(listener);
943
+ return () => {
944
+ UiFramework.frontstages.onWidgetStateChangedEvent.removeListener(listener);
945
+ };
946
+ }, [frontstageDef]);
947
+ React.useEffect(() => {
948
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
949
+ assert(!!frontstageDef.nineZoneState);
950
+ const nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, WidgetState.Open);
951
+ frontstageDef.nineZoneState = showWidget(nineZoneState, widgetDef.id);
952
+ });
953
+ InternalFrontstageManager.onWidgetShowEvent.addListener(listener);
954
+ return () => {
955
+ InternalFrontstageManager.onWidgetShowEvent.removeListener(listener);
956
+ };
957
+ }, [frontstageDef]);
958
+ React.useEffect(() => {
959
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
960
+ assert(!!frontstageDef.nineZoneState);
961
+ let nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, WidgetState.Open);
962
+ nineZoneState = showWidget(nineZoneState, widgetDef.id);
963
+ nineZoneState = expandWidget(nineZoneState, widgetDef.id);
964
+ frontstageDef.nineZoneState = nineZoneState;
965
+ });
966
+ InternalFrontstageManager.onWidgetExpandEvent.addListener(listener);
967
+ return () => {
968
+ InternalFrontstageManager.onWidgetExpandEvent.removeListener(listener);
969
+ };
970
+ }, [frontstageDef]);
971
+ const uiSettingsStorage = useUiStateStorageHandler();
972
+ React.useEffect(() => {
973
+ const listener = (args) => {
974
+ // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending
975
+ void uiSettingsStorage.deleteSetting(FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(args.frontstageDef.id));
976
+ if (frontstageDef.id === args.frontstageDef.id) {
977
+ args.frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
978
+ }
979
+ else {
980
+ args.frontstageDef.nineZoneState = undefined;
981
+ }
982
+ };
983
+ InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(listener);
984
+ return () => {
985
+ InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(listener);
986
+ };
987
+ }, [uiSettingsStorage, frontstageDef]);
988
+ React.useEffect(() => {
989
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
990
+ assert(!!frontstageDef.nineZoneState);
991
+ const label = widgetDef.label;
992
+ frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, widgetDef.id, label);
993
+ });
994
+ InternalFrontstageManager.onWidgetLabelChangedEvent.addListener(listener);
995
+ return () => {
996
+ InternalFrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
997
+ };
998
+ }, [frontstageDef]);
999
+ const defaultLabel = React.useMemo(() => UiFramework.translate("widget.labels.toolSettings"), []);
1000
+ React.useEffect(() => {
1001
+ const updateLabel = createListener(frontstageDef, () => {
1002
+ var _a;
1003
+ const toolId = UiFramework.frontstages.activeToolId;
1004
+ assert(!!frontstageDef.nineZoneState);
1005
+ const label = useToolAsToolSettingsLabel ?
1006
+ ((_a = IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1007
+ frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, toolSettingsTabId, label);
1008
+ });
1009
+ // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1010
+ updateLabel();
1011
+ // If useTool... is true, listen for events to keep up the label up to date.
1012
+ if (useToolAsToolSettingsLabel) {
1013
+ UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel);
1014
+ InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1015
+ UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel);
1016
+ UiFramework.frontstages.onToolSettingsReloadEvent.addListener(updateLabel);
1017
+ }
1018
+ return () => {
1019
+ if (useToolAsToolSettingsLabel) {
1020
+ UiFramework.frontstages.onFrontstageReadyEvent.removeListener(updateLabel);
1021
+ InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1022
+ UiFramework.frontstages.onToolActivatedEvent.removeListener(updateLabel);
1023
+ UiFramework.frontstages.onToolSettingsReloadEvent.removeListener(updateLabel);
1024
+ }
1025
+ };
1026
+ }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
1027
+ }
1028
+ /** @internal */
1029
+ // istanbul ignore next
1030
+ export function useItemsManager(frontstageDef) {
1031
+ const refreshNineZoneState = (def) => {
1032
+ // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.
1033
+ def.updateWidgetDefs();
1034
+ restoreSavedWidgets(def);
1035
+ let state = def.nineZoneState;
1036
+ if (!state)
1037
+ return;
1038
+ state = addMissingWidgets(def, state);
1039
+ state = removeMissingWidgets(def, state);
1040
+ state = hideWidgets(state, def); // TODO: should only apply to widgets provided by registered provider in onUiProviderRegisteredEvent.
1041
+ def.nineZoneState = state;
1042
+ };
1043
+ React.useEffect(() => {
1044
+ const remove = UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {
1045
+ refreshNineZoneState(frontstageDef);
1046
+ });
1047
+ // Need to refresh anytime frontstageDef changes because uiItemsProvider may have added something to
1048
+ // another stage before it was possibly unloaded in this stage.
1049
+ refreshNineZoneState(frontstageDef);
1050
+ return remove;
1051
+ }, [frontstageDef]);
1052
+ }
1053
+ // istanbul ignore next
1054
+ function determineNewWidgets(defs, state) {
1055
+ defs = defs || [];
1056
+ const uniqueDefs = defs.filter((def, index, array) => {
1057
+ return index === array.findIndex((def1) => def.id === def1.id);
1058
+ });
1059
+ return uniqueDefs.filter((def) => !(def.id in state.tabs));
1060
+ }
1058
1061
  //# sourceMappingURL=Frontstage.js.map