@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,1090 +1,1093 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Frontstage
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.useItemsManager = exports.useFrontstageManager = exports.getFrontstageStateSettingName = exports.FRONTSTAGE_SETTINGS_NAMESPACE = exports.useSaveFrontstageSettings = exports.useSavedFrontstageState = exports.setWidgetLabel = exports.expandWidget = exports.showWidget = exports.setWidgetState = exports.isPanelCollapsed = exports.packNineZoneState = exports.restoreNineZoneState = exports.initializeNineZoneState = exports.initializePanel = exports.isFrontstageStateSettingResult = exports.addPanelWidgets = exports.getPanelSectionWidgets = exports.getWidgetId = exports.removeMissingWidgets = exports.addMissingWidgets = exports.appendWidgets = exports.addWidgets = exports.useLabels = exports.ActiveFrontstageDefProvider = exports.WidgetPanelsFrontstage = exports.useNineZoneDispatch = exports.FrameworkStateReducer = exports.useUpdateNineZoneSize = exports.useLayoutStore = void 0;
11
- // cSpell:ignore popout
12
- require("./Frontstage.scss");
13
- const immer_1 = require("immer");
14
- const React = require("react");
15
- const react_dom_1 = require("react-dom");
16
- const core_bentley_1 = require("@itwin/core-bentley");
17
- const core_react_1 = require("@itwin/core-react");
18
- const components_react_1 = require("@itwin/components-react");
19
- const appui_layout_react_1 = require("@itwin/appui-layout-react");
20
- const StagePanelDef_1 = require("../stagepanels/StagePanelDef");
21
- const UiFramework_1 = require("../UiFramework");
22
- const useUiStateStorage_1 = require("../uistate/useUiStateStorage");
23
- const Content_1 = require("./Content");
24
- const FrontstageContent_1 = require("./FrontstageContent");
25
- const ModalFrontstageComposer_1 = require("./ModalFrontstageComposer");
26
- const StatusBar_1 = require("./StatusBar");
27
- const Tab_1 = require("./Tab");
28
- const Toolbars_1 = require("./Toolbars");
29
- const ToolSettings_1 = require("./ToolSettings");
30
- const useEscapeSetFocusToHome_1 = require("../hooks/useEscapeSetFocusToHome");
31
- const react_redux_1 = require("react-redux");
32
- const useUiVisibility_1 = require("../hooks/useUiVisibility");
33
- const core_frontend_1 = require("@itwin/core-frontend");
34
- const FloatingWidget_1 = require("./FloatingWidget");
35
- const InternalFrontstageManager_1 = require("../frontstage/InternalFrontstageManager");
36
- const WidgetState_1 = require("../widgets/WidgetState");
37
- const StagePanelSection_1 = require("../stagepanels/StagePanelSection");
38
- const StagePanelLocation_1 = require("../stagepanels/StagePanelLocation");
39
- const UiItemsManager_1 = require("../ui-items-provider/UiItemsManager");
40
- function WidgetPanelsFrontstageComponent() {
41
- const activeModalFrontstageInfo = (0, ModalFrontstageComposer_1.useActiveModalFrontstageInfo)();
42
- const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
43
- return (React.createElement(React.Fragment, null,
44
- React.createElement(ToolSettings_1.WidgetPanelsToolSettings, null),
45
- React.createElement(components_react_1.ToolbarPopupAutoHideContext.Provider, { value: !uiIsVisible },
46
- React.createElement(ModalFrontstageComposer_1.ModalFrontstageComposer, { stageInfo: activeModalFrontstageInfo }),
47
- React.createElement(appui_layout_react_1.WidgetPanels, { className: "uifw-widgetPanels", centerContent: React.createElement(Toolbars_1.WidgetPanelsToolbars, null) },
48
- React.createElement(FrontstageContent_1.WidgetPanelsFrontstageContent, null)),
49
- React.createElement(StatusBar_1.WidgetPanelsStatusBar, null),
50
- React.createElement(appui_layout_react_1.FloatingWidgets, null))));
51
- }
52
- const widgetContent = React.createElement(Content_1.WidgetContent, null);
53
- const toolSettingsContent = React.createElement(ToolSettings_1.ToolSettingsContent, null);
54
- const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
55
- /** @internal */
56
- function useLayoutStore() {
57
- const [def, setDef] = React.useState(UiFramework_1.UiFramework.frontstages.activeFrontstageDef);
58
- const [layout, setLayout] = React.useState(() => (0, appui_layout_react_1.createLayoutStore)(def === null || def === void 0 ? void 0 : def.nineZoneState));
59
- React.useEffect(() => {
60
- return UiFramework_1.UiFramework.frontstages.onFrontstageActivatedEvent.addListener((args) => {
61
- (0, react_dom_1.unstable_batchedUpdates)(() => {
62
- setDef(args.activatedFrontstageDef);
63
- setLayout((0, appui_layout_react_1.createLayoutStore)(args.activatedFrontstageDef.nineZoneState));
64
- });
65
- });
66
- }, []);
67
- React.useEffect(() => {
68
- return InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
69
- if (args.frontstageDef !== def || def.isStageClosing || def.isApplicationClosing)
70
- return;
71
- (0, react_dom_1.unstable_batchedUpdates)(() => {
72
- layout.setState(args.state || defaultNineZone);
73
- });
74
- });
75
- }, [def, layout]);
76
- return [layout, def];
77
- }
78
- exports.useLayoutStore = useLayoutStore;
79
- /** Update in-memory NineZoneState of newly activated frontstage with up to date size.
80
- * @internal
81
- */
82
- function useUpdateNineZoneSize(frontstageDef) {
83
- React.useEffect(() => {
84
- const size = InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize;
85
- let state = frontstageDef.nineZoneState;
86
- if (!size || !state)
87
- return;
88
- state = FrameworkStateReducer(state, {
89
- type: "RESIZE",
90
- size: {
91
- height: size.height,
92
- width: size.width,
93
- },
94
- }, frontstageDef);
95
- frontstageDef.nineZoneState = state;
96
- }, [frontstageDef]);
97
- }
98
- exports.useUpdateNineZoneSize = useUpdateNineZoneSize;
99
- /** @internal */
100
- function FrameworkStateReducer(state, action, frontstageDef) {
101
- state = (0, appui_layout_react_1.NineZoneStateReducer)(state, action);
102
- if (action.type === "RESIZE") {
103
- state = (0, immer_1.default)(state, (draft) => {
104
- for (const panelSide of appui_layout_react_1.panelSides) {
105
- const panel = draft.panels[panelSide];
106
- const location = toStagePanelLocation(panelSide);
107
- const panelDef = frontstageDef.getStagePanelDef(location);
108
- if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
109
- panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, action.size);
110
- if (panel.size) {
111
- panel.size = Math.min(Math.max(panel.size, panel.minSize), panel.maxSize);
112
- }
113
- }
114
- }
115
- });
116
- }
117
- return state;
118
- }
119
- exports.FrameworkStateReducer = FrameworkStateReducer;
120
- /** @internal */
121
- function useNineZoneDispatch(frontstageDef) {
122
- const dispatch = React.useCallback((action) => {
123
- if (action.type === "RESIZE") {
124
- InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize = core_react_1.Size.create(action.size);
125
- }
126
- // istanbul ignore if
127
- if (action.type === "TOOL_SETTINGS_DRAG_START") {
128
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
129
- UiFramework_1.UiFramework.postTelemetry("Tool Settings Undocking", "28B04E07-AE73-4533-A0BA-8E2A8DC99ADF");
130
- }
131
- // istanbul ignore if
132
- if (action.type === "TOOL_SETTINGS_DOCK") {
133
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
134
- UiFramework_1.UiFramework.postTelemetry("Tool Settings Docking to Settings Bar", "BEDE684B-B3DB-4637-B3AF-DC3CBA223F94");
135
- }
136
- if (action.type === "WIDGET_TAB_POPOUT") {
137
- const tabId = action.id;
138
- frontstageDef.popoutWidget(tabId);
139
- return;
140
- }
141
- const state = frontstageDef.nineZoneState;
142
- if (!state)
143
- return;
144
- frontstageDef.nineZoneState = FrameworkStateReducer(state, action, frontstageDef);
145
- }, [frontstageDef]);
146
- return dispatch;
147
- }
148
- exports.useNineZoneDispatch = useNineZoneDispatch;
149
- /** @internal */
150
- function WidgetPanelsFrontstage() {
151
- const [layout, frontstageDef] = useLayoutStore();
152
- React.useEffect(() => {
153
- const triggerWidowCloseProcessing = () => {
154
- frontstageDef && frontstageDef.setIsApplicationClosing(true);
155
- };
156
- frontstageDef && frontstageDef.setIsApplicationClosing(false);
157
- window.addEventListener("unload", triggerWidowCloseProcessing);
158
- return () => {
159
- window.removeEventListener("unload", triggerWidowCloseProcessing);
160
- };
161
- }, [frontstageDef]);
162
- if (!frontstageDef)
163
- return null;
164
- return (React.createElement(ActiveFrontstageDefProvider, { frontstageDef: frontstageDef, layout: layout }));
165
- }
166
- exports.WidgetPanelsFrontstage = WidgetPanelsFrontstage;
167
- const defaultNineZone = (0, appui_layout_react_1.createNineZoneState)();
168
- const tabElement = React.createElement(Tab_1.WidgetPanelsTab, null);
169
- const floatingWidgetElement = React.createElement(FloatingWidget_1.FloatingWidget, null);
170
- /** @internal */
171
- function ActiveFrontstageDefProvider({ frontstageDef, layout }) {
172
- const dispatch = useNineZoneDispatch(frontstageDef);
173
- useUpdateNineZoneSize(frontstageDef);
174
- useSavedFrontstageState(frontstageDef);
175
- useSaveFrontstageSettings(frontstageDef, layout);
176
- useItemsManager(frontstageDef);
177
- const labels = useLabels();
178
- const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
179
- const showWidgetIcon = (0, react_redux_1.useSelector)((state) => {
180
- const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
181
- return !!frameworkState.configurableUiState.showWidgetIcon;
182
- });
183
- const autoCollapseUnpinnedPanels = (0, react_redux_1.useSelector)((state) => {
184
- const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
185
- return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;
186
- });
187
- const animateToolSettings = (0, react_redux_1.useSelector)((state) => {
188
- const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
189
- return !!frameworkState.configurableUiState.animateToolSettings;
190
- });
191
- const useToolAsToolSettingsLabel = (0, react_redux_1.useSelector)((state) => {
192
- const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
193
- return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;
194
- });
195
- useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);
196
- const handleKeyDown = (0, useEscapeSetFocusToHome_1.useEscapeSetFocusToHome)();
197
- return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
198
- React.createElement(appui_layout_react_1.NineZone, { dispatch: dispatch, labels: labels, layout: layout, tab: tabElement, floatingWidget: floatingWidgetElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
199
- }
200
- exports.ActiveFrontstageDefProvider = ActiveFrontstageDefProvider;
201
- /** @internal */
202
- function useLabels() {
203
- return React.useMemo(() => ({
204
- dockToolSettingsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.dockToolSettings"),
205
- moreWidgetsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.moreWidgets"),
206
- moreToolSettingsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.moreToolSettings"),
207
- pinPanelTitle: UiFramework_1.UiFramework.translate("widget.tooltips.pinPanel"),
208
- resizeGripTitle: UiFramework_1.UiFramework.translate("widget.tooltips.resizeGrip"),
209
- sendWidgetHomeTitle: UiFramework_1.UiFramework.translate("widget.tooltips.sendHome"),
210
- toolSettingsHandleTitle: UiFramework_1.UiFramework.translate("widget.tooltips.toolSettingsHandle"),
211
- unpinPanelTitle: UiFramework_1.UiFramework.translate("widget.tooltips.unpinPanel"),
212
- popoutActiveTab: UiFramework_1.UiFramework.translate("widget.tooltips.popoutActiveTab"),
213
- }), []);
214
- }
215
- exports.useLabels = useLabels;
216
- /** @internal */
217
- function addWidgets(state, widgets, side, widgetId) {
218
- const visibleWidgets = widgets.filter((w) => w.isVisible && (w.defaultState !== WidgetState_1.WidgetState.Floating));
219
- if (visibleWidgets.length === 0)
220
- return state;
221
- const tabs = new Array();
222
- for (const widget of visibleWidgets) {
223
- const label = getWidgetLabel(widget.label);
224
- state = (0, appui_layout_react_1.addTab)(state, widget.id, {
225
- label,
226
- iconSpec: widget.iconSpec,
227
- preferredPanelWidgetSize: widget.preferredPanelSize,
228
- preferredFloatingWidgetSize: widget.defaultFloatingSize,
229
- canPopout: widget.canPopout,
230
- isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
231
- hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
232
- allowedPanelTargets: widget.allowedPanelTargets,
233
- });
234
- tabs.push(widget.id);
235
- }
236
- const activeWidget = visibleWidgets.find((widget) => widget.isActive);
237
- const minimized = false;
238
- // istanbul ignore else
239
- if ((activeWidget === null || activeWidget === void 0 ? void 0 : activeWidget.defaultState) !== WidgetState_1.WidgetState.Floating) {
240
- state = (0, appui_layout_react_1.addPanelWidget)(state, side, widgetId, tabs, {
241
- activeTabId: activeWidget ? activeWidget.id : tabs[0],
242
- minimized,
243
- });
244
- }
245
- return state;
246
- }
247
- exports.addWidgets = addWidgets;
248
- /** @internal */
249
- // istanbul ignore next
250
- function appendWidgets(state, widgetDefs, location, section) {
251
- var _a;
252
- if (widgetDefs.length === 0)
253
- return state;
254
- const side = (0, StagePanelDef_1.toPanelSide)(location);
255
- // Add missing widget tabs.
256
- for (const widgetDef of widgetDefs) {
257
- const label = getWidgetLabel(widgetDef.label);
258
- const saveTab = state.tabs[widgetDef.id];
259
- const preferredPanelWidgetSize = saveTab ? saveTab.preferredPanelWidgetSize : widgetDef.preferredPanelSize;
260
- const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : widgetDef.defaultFloatingSize;
261
- // if a defaultFloatingSize is specified then this mean the widget can't determine its intrinsic size and must be explicitly sized
262
- const userSized = saveTab ? (saveTab.userSized || !!widgetDef.defaultFloatingSize && !!saveTab.preferredFloatingWidgetSize)
263
- : !!widgetDef.defaultFloatingSize;
264
- state = (0, appui_layout_react_1.addTab)(state, widgetDef.id, {
265
- label,
266
- iconSpec: widgetDef.iconSpec,
267
- canPopout: widgetDef.canPopout,
268
- preferredPanelWidgetSize,
269
- preferredFloatingWidgetSize,
270
- userSized,
271
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
272
- hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
273
- allowedPanelTargets: widgetDef.allowedPanelTargets,
274
- });
275
- if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === WidgetState_1.WidgetState.Floating) {
276
- const floatingContainerId = (_a = widgetDef.floatingContainerId) !== null && _a !== void 0 ? _a : (0, appui_layout_react_1.getUniqueId)();
277
- const widgetContainerId = getWidgetId(location, section);
278
- const home = { side, widgetId: widgetContainerId, widgetIndex: 0 };
279
- const preferredPosition = widgetDef.defaultFloatingPosition;
280
- if (floatingContainerId in state.widgets) {
281
- state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, floatingContainerId);
282
- }
283
- else {
284
- const tab = state.tabs[widgetDef.id];
285
- const size = { height: 200, width: 300, ...tab.preferredFloatingWidgetSize };
286
- const preferredPoint = preferredPosition !== null && preferredPosition !== void 0 ? preferredPosition : { x: (state.size.width - size.width) / 2, y: (state.size.height - size.height) / 2 };
287
- const nzBounds = core_react_1.Rectangle.createFromSize(state.size);
288
- const bounds = core_react_1.Rectangle.createFromSize(size).offset(preferredPoint);
289
- const containedBounds = bounds.containIn(nzBounds);
290
- state = (0, appui_layout_react_1.addFloatingWidget)(state, floatingContainerId, [widgetDef.id], {
291
- bounds: containedBounds.toProps(),
292
- home,
293
- userSized,
294
- }, {
295
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
296
- });
297
- }
298
- }
299
- else {
300
- const preferredWidgetIndex = section;
301
- const widgetPanelSectionId = (0, appui_layout_react_1.getWidgetPanelSectionId)(side, preferredWidgetIndex);
302
- if (widgetPanelSectionId in state.widgets) {
303
- state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, widgetPanelSectionId);
304
- }
305
- else {
306
- const panel = state.panels[side];
307
- if (panel.widgets.length < panel.maxWidgetCount) {
308
- state = (0, appui_layout_react_1.addPanelWidget)(state, side, widgetPanelSectionId, [widgetDef.id]);
309
- }
310
- else {
311
- const widgetIndex = Math.min(preferredWidgetIndex, panel.widgets.length - 1);
312
- const widgetId = panel.widgets[widgetIndex];
313
- state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, widgetId);
314
- }
315
- }
316
- }
317
- }
318
- return state;
319
- }
320
- exports.appendWidgets = appendWidgets;
321
- function processPopoutWidgets(initialState, frontstageDef) {
322
- // istanbul ignore next
323
- if (!initialState.popoutWidgets)
324
- return initialState;
325
- // istanbul ignore next - not unit testing electron case that reopens popout windows
326
- if (initialState.popoutWidgets && core_bentley_1.ProcessDetector.isElectronAppFrontend) {
327
- if (initialState.popoutWidgets.allIds.length && core_bentley_1.ProcessDetector.isElectronAppFrontend) {
328
- for (const widgetContainerId of initialState.popoutWidgets.allIds) {
329
- frontstageDef.openPopoutWidgetContainer(initialState, widgetContainerId);
330
- }
331
- }
332
- return initialState;
333
- }
334
- return (0, appui_layout_react_1.convertAllPopupWidgetContainersToFloating)(initialState);
335
- }
336
- /** Adds frontstageDef widgets that are missing in NineZoneState.
337
- * @internal
338
- */
339
- function addMissingWidgets(frontstageDef, initialState) {
340
- var _a, _b, _c, _d, _e, _f, _g, _h;
341
- let state = initialState;
342
- state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Left, StagePanelSection_1.StagePanelSection.Start);
343
- state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Left, StagePanelSection_1.StagePanelSection.End);
344
- state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.rightPanel) === null || _c === void 0 ? void 0 : _c.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Right, StagePanelSection_1.StagePanelSection.Start);
345
- state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.rightPanel) === null || _d === void 0 ? void 0 : _d.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Right, StagePanelSection_1.StagePanelSection.End);
346
- state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.topPanel) === null || _e === void 0 ? void 0 : _e.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Top, StagePanelSection_1.StagePanelSection.Start);
347
- state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.topPanel) === null || _f === void 0 ? void 0 : _f.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Top, StagePanelSection_1.StagePanelSection.End);
348
- state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.bottomPanel) === null || _g === void 0 ? void 0 : _g.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Bottom, StagePanelSection_1.StagePanelSection.Start);
349
- state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomPanel) === null || _h === void 0 ? void 0 : _h.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Bottom, StagePanelSection_1.StagePanelSection.End);
350
- return state;
351
- }
352
- exports.addMissingWidgets = addMissingWidgets;
353
- /** Hide widgets with Hidden defaultState. */
354
- function hideWidgets(state, frontstageDef) {
355
- const tabs = Object.values(state.tabs);
356
- for (const tab of tabs) {
357
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
358
- if (!widgetDef)
359
- continue;
360
- if (widgetDef.defaultState === WidgetState_1.WidgetState.Hidden) {
361
- state = hideWidget(state, widgetDef);
362
- }
363
- }
364
- return state;
365
- }
366
- /** Removes NineZoneState widgets that are missing in frontstageDef.
367
- * @internal
368
- */
369
- function removeMissingWidgets(frontstageDef, initialState) {
370
- let state = initialState;
371
- for (const [, tab] of Object.entries(state.tabs)) {
372
- if (tab.id === appui_layout_react_1.toolSettingsTabId)
373
- continue;
374
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
375
- if (widgetDef)
376
- continue;
377
- state = (0, appui_layout_react_1.removeTab)(state, tab.id);
378
- }
379
- return state;
380
- }
381
- exports.removeMissingWidgets = removeMissingWidgets;
382
- function getWidgetLabel(label) {
383
- return label === "" ? "Widget" : label;
384
- }
385
- function toStagePanelLocation(side) {
386
- switch (side) {
387
- case "bottom":
388
- return StagePanelLocation_1.StagePanelLocation.Bottom;
389
- case "left":
390
- return StagePanelLocation_1.StagePanelLocation.Left;
391
- case "right":
392
- return StagePanelLocation_1.StagePanelLocation.Right;
393
- case "top":
394
- return StagePanelLocation_1.StagePanelLocation.Top;
395
- }
396
- }
397
- /** @internal */
398
- function getWidgetId(location, section) {
399
- switch (location) {
400
- case StagePanelLocation_1.StagePanelLocation.Left: {
401
- if (section === StagePanelSection_1.StagePanelSection.Start)
402
- return "leftStart";
403
- return "leftEnd";
404
- }
405
- case StagePanelLocation_1.StagePanelLocation.Right: {
406
- if (section === StagePanelSection_1.StagePanelSection.Start)
407
- return "rightStart";
408
- return "rightEnd";
409
- }
410
- case StagePanelLocation_1.StagePanelLocation.Top: {
411
- if (section === StagePanelSection_1.StagePanelSection.Start)
412
- return "topStart";
413
- return "topEnd";
414
- }
415
- case StagePanelLocation_1.StagePanelLocation.Bottom: {
416
- if (section === StagePanelSection_1.StagePanelSection.Start)
417
- return "bottomStart";
418
- return "bottomEnd";
419
- }
420
- }
421
- }
422
- exports.getWidgetId = getWidgetId;
423
- /** @internal */
424
- function getPanelSectionWidgets(frontstageDef, location, section) {
425
- const stagePanel = frontstageDef.getStagePanelDef(location);
426
- const panelSection = stagePanel === null || stagePanel === void 0 ? void 0 : stagePanel.getPanelSectionDef(section);
427
- return (panelSection === null || panelSection === void 0 ? void 0 : panelSection.widgetDefs) || [];
428
- }
429
- exports.getPanelSectionWidgets = getPanelSectionWidgets;
430
- /** @internal */
431
- function addPanelWidgets(state, frontstageDef, location) {
432
- const side = (0, StagePanelDef_1.toPanelSide)(location);
433
- const start = getWidgetId(location, StagePanelSection_1.StagePanelSection.Start);
434
- const startWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection_1.StagePanelSection.Start);
435
- state = addWidgets(state, determineNewWidgets(startWidgets, state), side, start);
436
- const end = getWidgetId(location, StagePanelSection_1.StagePanelSection.End);
437
- const endWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection_1.StagePanelSection.End);
438
- state = addWidgets(state, determineNewWidgets(endWidgets, state), side, end);
439
- return state;
440
- }
441
- exports.addPanelWidgets = addPanelWidgets;
442
- /** @internal */
443
- function isFrontstageStateSettingResult(settingsResult) {
444
- if (settingsResult.status === core_react_1.UiStateStorageStatus.Success)
445
- return true;
446
- return false;
447
- }
448
- exports.isFrontstageStateSettingResult = isFrontstageStateSettingResult;
449
- /** @internal */
450
- function initializePanel(state, frontstageDef, location) {
451
- const panelSide = (0, StagePanelDef_1.toPanelSide)(location);
452
- state = addPanelWidgets(state, frontstageDef, location);
453
- const panelDef = frontstageDef.getStagePanelDef(location);
454
- state = (0, immer_1.default)(state, (draft) => {
455
- var _a, _b, _c;
456
- const panel = draft.panels[panelSide];
457
- panel.minSize = (_a = panelDef === null || panelDef === void 0 ? void 0 : panelDef.minSize) !== null && _a !== void 0 ? _a : panel.minSize;
458
- panel.pinned = (_b = panelDef === null || panelDef === void 0 ? void 0 : panelDef.pinned) !== null && _b !== void 0 ? _b : panel.pinned;
459
- panel.resizable = (_c = panelDef === null || panelDef === void 0 ? void 0 : panelDef.resizable) !== null && _c !== void 0 ? _c : panel.resizable;
460
- if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
461
- panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, state.size);
462
- }
463
- const size = panelDef === null || panelDef === void 0 ? void 0 : panelDef.size;
464
- panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);
465
- });
466
- return state;
467
- }
468
- exports.initializePanel = initializePanel;
469
- function getPanelMaxSize(maxSizeSpec, panel, nineZoneSize) {
470
- if (typeof maxSizeSpec === "number") {
471
- return maxSizeSpec;
472
- }
473
- const size = (0, appui_layout_react_1.isHorizontalPanelSide)(panel) ? nineZoneSize.height : nineZoneSize.width;
474
- return maxSizeSpec.percentage / 100 * size;
475
- }
476
- const stateVersion = 13; // this needs to be bumped when NineZoneState is changed (to recreate the layout).
477
- /** @internal */
478
- function initializeNineZoneState(frontstageDef) {
479
- let nineZone = defaultNineZone;
480
- nineZone = (0, immer_1.default)(nineZone, (stateDraft) => {
481
- // istanbul ignore next
482
- if (!InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize)
483
- return;
484
- stateDraft.size = {
485
- height: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height,
486
- width: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width,
487
- };
488
- });
489
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Left);
490
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Right);
491
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Top);
492
- nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Bottom);
493
- nineZone = (0, immer_1.default)(nineZone, (stateDraft) => {
494
- var _a, _b, _c, _d;
495
- for (const [, panel] of Object.entries(stateDraft.panels)) {
496
- const expanded = panel.widgets.find((widgetId) => stateDraft.widgets[widgetId].minimized === false);
497
- const firstWidget = panel.widgets.length > 0 ? stateDraft.widgets[panel.widgets[0]] : undefined;
498
- // istanbul ignore next
499
- if (!expanded && firstWidget) {
500
- firstWidget.minimized = false;
501
- }
502
- }
503
- stateDraft.panels.left.collapsed = isPanelCollapsed((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.panelState);
504
- stateDraft.panels.right.collapsed = isPanelCollapsed((_b = frontstageDef.rightPanel) === null || _b === void 0 ? void 0 : _b.panelState);
505
- stateDraft.panels.top.collapsed = isPanelCollapsed((_c = frontstageDef.topPanel) === null || _c === void 0 ? void 0 : _c.panelState);
506
- stateDraft.panels.bottom.collapsed = isPanelCollapsed((_d = frontstageDef.bottomPanel) === null || _d === void 0 ? void 0 : _d.panelState);
507
- const toolSettingsWidgetDef = frontstageDef.toolSettings;
508
- if (toolSettingsWidgetDef) {
509
- const toolSettingsTab = stateDraft.tabs[appui_layout_react_1.toolSettingsTabId];
510
- toolSettingsTab.preferredPanelWidgetSize = toolSettingsWidgetDef.preferredPanelSize;
511
- }
512
- });
513
- nineZone = addMissingWidgets(frontstageDef, nineZone);
514
- nineZone = hideWidgets(nineZone, frontstageDef);
515
- nineZone = processPopoutWidgets(nineZone, frontstageDef);
516
- return nineZone;
517
- }
518
- exports.initializeNineZoneState = initializeNineZoneState;
519
- /** Converts from saved NineZoneState to NineZoneState.
520
- * @note Restores toolSettings tab.
521
- * @note Restores tab labels.
522
- * @internal
523
- */
524
- function restoreNineZoneState(frontstageDef, saved) {
525
- let restored = {
526
- ...saved,
527
- tabs: defaultNineZone.tabs,
528
- };
529
- for (const [, tab] of Object.entries(saved.tabs)) {
530
- // Re-add the placeholder tab in order to correctly remove it from the state if WidgetDef is not found.
531
- restored = (0, appui_layout_react_1.addTab)(restored, tab.id);
532
- const widgetDef = frontstageDef.findWidgetDef(tab.id);
533
- if (!widgetDef) {
534
- core_bentley_1.Logger.logInfo(UiFramework_1.UiFramework.loggerCategory(restoreNineZoneState), "WidgetDef is not found for saved tab.", () => ({
535
- frontstageId: frontstageDef.id,
536
- tabId: tab.id,
537
- }));
538
- restored = (0, appui_layout_react_1.removeTab)(restored, tab.id);
539
- continue;
540
- }
541
- restored = (0, immer_1.default)(restored, (draft) => {
542
- draft.tabs[tab.id] = {
543
- ...tab,
544
- label: getWidgetLabel(widgetDef.label),
545
- hideWithUiWhenFloating: widgetDef.hideWithUiWhenFloating,
546
- iconSpec: widgetDef.iconSpec,
547
- canPopout: widgetDef.canPopout,
548
- isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
549
- allowedPanelTargets: widgetDef.allowedPanelTargets,
550
- };
551
- });
552
- }
553
- restored = (0, immer_1.default)(restored, (draft) => {
554
- // remove center panel section if one is found in left or right panels
555
- const oldLeftMiddleIndex = saved.panels.left.widgets.findIndex((value) => value === "leftMiddle");
556
- // istanbul ignore next
557
- if (-1 !== oldLeftMiddleIndex) {
558
- draft.panels.left.widgets = saved.panels.left.widgets.filter((value) => value !== "leftMiddle");
559
- if ("leftEnd" in draft.widgets) {
560
- draft.widgets.leftMiddle.tabs.forEach((tab) => draft.widgets.leftEnd.tabs.push(tab));
561
- }
562
- else {
563
- draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };
564
- delete draft.widgets.leftMiddle;
565
- }
566
- }
567
- const oldRightMiddleIndex = saved.panels.right.widgets.findIndex((value) => value === "rightMiddle");
568
- // istanbul ignore next
569
- if (-1 !== oldRightMiddleIndex) {
570
- draft.panels.right.widgets = saved.panels.right.widgets.filter((value) => value !== "rightMiddle");
571
- if ("rightEnd" in draft.widgets) {
572
- draft.widgets.rightMiddle.tabs.forEach((tab) => draft.widgets.rightEnd.tabs.push(tab));
573
- }
574
- else {
575
- draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };
576
- delete draft.widgets.rightMiddle;
577
- }
578
- }
579
- return;
580
- });
581
- if (InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize && (0 !== InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height || 0 !== InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width)) {
582
- restored = FrameworkStateReducer(restored, {
583
- type: "RESIZE",
584
- size: {
585
- height: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height,
586
- width: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width,
587
- },
588
- }, frontstageDef);
589
- }
590
- return restored;
591
- }
592
- exports.restoreNineZoneState = restoreNineZoneState;
593
- /** Prepares NineZoneState to be saved.
594
- * @note Removes toolSettings tab.
595
- * @note Removes tab labels and iconSpec.
596
- * @internal
597
- */
598
- function packNineZoneState(state) {
599
- let packed = {
600
- ...state,
601
- tabs: {},
602
- };
603
- packed = (0, immer_1.default)(packed, (draft) => {
604
- for (const [, tab] of Object.entries(state.tabs)) {
605
- if (tab.id === appui_layout_react_1.toolSettingsTabId)
606
- continue;
607
- draft.tabs[tab.id] = {
608
- id: tab.id,
609
- preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
610
- allowedPanelTargets: tab.allowedPanelTargets,
611
- userSized: tab.userSized,
612
- };
613
- }
614
- });
615
- return packed;
616
- }
617
- exports.packNineZoneState = packNineZoneState;
618
- // istanbul ignore next
619
- function packSavedWidgets(frontstageDef) {
620
- let savedWidgets = [];
621
- for (const widgetDef of frontstageDef.widgetDefs) {
622
- const id = widgetDef.id;
623
- const initialWidget = {
624
- id,
625
- };
626
- const widget = (0, immer_1.default)(initialWidget, (draft) => {
627
- if (widgetDef.tabLocation) {
628
- draft.tabLocation = { ...widgetDef.tabLocation };
629
- }
630
- if (widgetDef.popoutBounds) {
631
- draft.popoutBounds = widgetDef.popoutBounds.toProps();
632
- }
633
- });
634
- if (widget === initialWidget)
635
- continue;
636
- savedWidgets.push(widget);
637
- }
638
- // Add previously saved widgets.
639
- const prevSavedWidgets = frontstageDef.savedWidgetDefs || [];
640
- for (const prevWidget of prevSavedWidgets) {
641
- if (savedWidgets.find((w) => w.id === prevWidget.id))
642
- continue;
643
- savedWidgets.push(prevWidget);
644
- }
645
- // Limit number of saved widgets.
646
- const maxWidgets = 100;
647
- if (savedWidgets.length > maxWidgets)
648
- savedWidgets = savedWidgets.slice(0, maxWidgets);
649
- return savedWidgets;
650
- }
651
- // istanbul ignore next
652
- function restoreSavedWidgets(frontstage) {
653
- const savedWidgets = frontstage.savedWidgetDefs || [];
654
- for (const savedWidget of savedWidgets) {
655
- const widgetId = savedWidget.id;
656
- const widgetDef = frontstage.findWidgetDef(widgetId);
657
- if (!widgetDef)
658
- continue;
659
- if (savedWidget.tabLocation) {
660
- widgetDef.tabLocation = { ...savedWidget.tabLocation };
661
- }
662
- if (savedWidget.popoutBounds) {
663
- widgetDef.popoutBounds = core_react_1.Rectangle.create(savedWidget.popoutBounds);
664
- }
665
- }
666
- }
667
- /** @internal */
668
- function isPanelCollapsed(panelState) {
669
- return panelState !== StagePanelDef_1.StagePanelState.Open;
670
- }
671
- exports.isPanelCollapsed = isPanelCollapsed;
672
- function addHiddenWidget(state, widgetDef) {
673
- const tabLocation = widgetDef.tabLocation || widgetDef.defaultTabLocation;
674
- const tabId = widgetDef.id;
675
- const { widgetId, tabIndex } = tabLocation;
676
- if (widgetId in state.widgets) {
677
- // Add to an existing widget (by widget id).
678
- return (0, appui_layout_react_1.insertTabToWidget)(state, tabId, widgetId, tabIndex);
679
- }
680
- else if (tabLocation.floatingWidget) {
681
- const floatingWidget = tabLocation.floatingWidget;
682
- (0, core_bentley_1.assert)(widgetId === floatingWidget.id);
683
- // Add to a new floating widget.
684
- const nzBounds = core_react_1.Rectangle.createFromSize(state.size);
685
- const bounds = core_react_1.Rectangle.create(floatingWidget.bounds).containIn(nzBounds);
686
- return (0, appui_layout_react_1.addFloatingWidget)(state, floatingWidget.id, [tabId], {
687
- ...floatingWidget,
688
- bounds: bounds.toProps(),
689
- });
690
- }
691
- // Add to a panel section.
692
- const panel = state.panels[tabLocation.side];
693
- // Add to existing panel section.
694
- if (panel.widgets.length >= panel.maxWidgetCount) {
695
- const sectionIndex = Math.min(panel.maxWidgetCount - 1, tabLocation.widgetIndex);
696
- const sectionId = panel.widgets[sectionIndex];
697
- return (0, appui_layout_react_1.insertTabToWidget)(state, tabId, sectionId, tabLocation.tabIndex);
698
- }
699
- // Create a new panel section.
700
- const newSectionId = (0, appui_layout_react_1.getUniqueId)();
701
- return (0, appui_layout_react_1.insertPanelWidget)(state, panel.side, newSectionId, [tabId], tabLocation.widgetIndex);
702
- }
703
- /** @internal */
704
- function setWidgetState(state, widgetDef, widgetState) {
705
- var _a, _b;
706
- if (widgetState === WidgetState_1.WidgetState.Hidden) {
707
- return hideWidget(state, widgetDef);
708
- }
709
- else if (widgetState === WidgetState_1.WidgetState.Open) {
710
- const id = widgetDef.id;
711
- let location = (0, appui_layout_react_1.getTabLocation)(state, id);
712
- if (!location) {
713
- state = addHiddenWidget(state, widgetDef);
714
- location = (0, appui_layout_react_1.getTabLocation)(state, id);
715
- }
716
- return (0, immer_1.default)(state, (draft) => {
717
- var _a;
718
- (0, core_bentley_1.assert)(!!location);
719
- const widget = draft.widgets[location.widgetId];
720
- widget.minimized = false;
721
- widget.activeTabId = id;
722
- if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
723
- const floatingWidget = draft.floatingWidgets.byId[location.floatingWidgetId];
724
- floatingWidget.hidden = false;
725
- // istanbul ignore else
726
- }
727
- else if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
728
- const panel = draft.panels[location.side];
729
- panel.collapsed = false;
730
- if (undefined === panel.size || 0 === panel.size) {
731
- // istanbul ignore next
732
- panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
733
- }
734
- }
735
- });
736
- }
737
- else if (widgetState === WidgetState_1.WidgetState.Closed) {
738
- const id = widgetDef.id;
739
- let location = (0, appui_layout_react_1.getTabLocation)(state, id);
740
- if (!location) {
741
- state = addHiddenWidget(state, widgetDef);
742
- location = (0, appui_layout_react_1.getTabLocation)(state, id);
743
- }
744
- // TODO: should change activeTabId of a widget with multiple tabs.
745
- return (0, immer_1.default)(state, (draft) => {
746
- (0, core_bentley_1.assert)(!!location);
747
- const widget = draft.widgets[location.widgetId];
748
- if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
749
- if (id === widget.activeTabId) {
750
- widget.minimized = true;
751
- }
752
- }
753
- });
754
- }
755
- else if (widgetState === WidgetState_1.WidgetState.Floating) {
756
- const id = widgetDef.id;
757
- let location = (0, appui_layout_react_1.getTabLocation)(state, id);
758
- if (!location) {
759
- state = addHiddenWidget(state, widgetDef);
760
- location = (0, appui_layout_react_1.getTabLocation)(state, id);
761
- }
762
- (0, core_bentley_1.assert)(!!location);
763
- if ((0, appui_layout_react_1.isFloatingTabLocation)(location))
764
- return state;
765
- // Widget is not floating.
766
- state = (0, appui_layout_react_1.removeTabFromWidget)(state, id);
767
- const bounds = (_b = (_a = widgetDef.tabLocation) === null || _a === void 0 ? void 0 : _a.floatingWidget) === null || _b === void 0 ? void 0 : _b.bounds;
768
- state = (0, appui_layout_react_1.addFloatingWidget)(state, (0, appui_layout_react_1.getUniqueId)(), [id], { bounds });
769
- }
770
- return state;
771
- }
772
- exports.setWidgetState = setWidgetState;
773
- /** Stores widget location and hides it in the UI. */
774
- function hideWidget(state, widgetDef) {
775
- const location = (0, appui_layout_react_1.getTabLocation)(state, widgetDef.id);
776
- if (!location)
777
- return state;
778
- // istanbul ignore else
779
- if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
780
- const floatingWidget = state.floatingWidgets.byId[location.widgetId];
781
- widgetDef.setFloatingContainerId(location.floatingWidgetId);
782
- widgetDef.tabLocation = {
783
- side: floatingWidget.home.side,
784
- tabIndex: floatingWidget.home.widgetIndex,
785
- widgetId: floatingWidget.id,
786
- widgetIndex: floatingWidget.home.widgetIndex,
787
- floatingWidget,
788
- };
789
- }
790
- else if (!(0, appui_layout_react_1.isPopoutTabLocation)(location)) {
791
- const widgetId = location.widgetId;
792
- const side = (0, appui_layout_react_1.isPanelTabLocation)(location) ? location.side : "left";
793
- const widgetIndex = (0, appui_layout_react_1.isPanelTabLocation)(location) ? state.panels[side].widgets.indexOf(widgetId) : 0;
794
- const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
795
- widgetDef.tabLocation = {
796
- side,
797
- tabIndex,
798
- widgetId,
799
- widgetIndex,
800
- };
801
- }
802
- return (0, appui_layout_react_1.removeTabFromWidget)(state, widgetDef.id);
803
- }
804
- /** @internal */
805
- function showWidget(state, id) {
806
- const location = (0, appui_layout_react_1.getTabLocation)(state, id);
807
- if (!location)
808
- return state;
809
- state = (0, immer_1.default)(state, (draft) => {
810
- const widget = draft.widgets[location.widgetId];
811
- widget.activeTabId = id;
812
- widget.minimized = false;
813
- if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
814
- const panel = draft.panels[location.side];
815
- panel.collapsed = false;
816
- }
817
- });
818
- if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
819
- state = (0, appui_layout_react_1.floatingWidgetBringToFront)(state, location.floatingWidgetId);
820
- }
821
- return state;
822
- }
823
- exports.showWidget = showWidget;
824
- /** @internal */
825
- function expandWidget(state, id) {
826
- const location = (0, appui_layout_react_1.getTabLocation)(state, id);
827
- if (!location)
828
- return state;
829
- return (0, immer_1.default)(state, (draft) => {
830
- const widget = draft.widgets[location.widgetId];
831
- if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
832
- const panel = draft.panels[location.side];
833
- panel.widgets.forEach((wId) => {
834
- const w = draft.widgets[wId];
835
- w.minimized = true;
836
- });
837
- }
838
- widget.minimized = false;
839
- });
840
- }
841
- exports.expandWidget = expandWidget;
842
- /** @internal */
843
- function setWidgetLabel(state, id, label) {
844
- if (!(id in state.tabs))
845
- return state;
846
- return (0, immer_1.default)(state, (draft) => {
847
- const tab = draft.tabs[id];
848
- tab.label = label;
849
- });
850
- }
851
- exports.setWidgetLabel = setWidgetLabel;
852
- /** @internal */
853
- function useSavedFrontstageState(frontstageDef) {
854
- const uiStateStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
855
- const uiStateStorageRef = React.useRef(uiStateStorage);
856
- const isMountedRef = React.useRef(false);
857
- React.useEffect(() => {
858
- isMountedRef.current = true;
859
- return () => { isMountedRef.current = false; };
860
- }, []);
861
- React.useEffect(() => {
862
- uiStateStorageRef.current = uiStateStorage;
863
- }, [uiStateStorage]);
864
- React.useEffect(() => {
865
- async function fetchFrontstageState() {
866
- if (frontstageDef.nineZoneState) {
867
- frontstageDef.nineZoneState = processPopoutWidgets(frontstageDef.nineZoneState, frontstageDef);
868
- return;
869
- }
870
- const id = frontstageDef.id;
871
- const version = frontstageDef.version;
872
- const settingResult = await uiStateStorageRef.current.getSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id));
873
- if (!isMountedRef.current)
874
- return;
875
- if (isFrontstageStateSettingResult(settingResult)) {
876
- const setting = settingResult.setting;
877
- if (setting.version >= version && setting.stateVersion >= stateVersion) {
878
- const restored = restoreNineZoneState(frontstageDef, setting.nineZone);
879
- frontstageDef.savedWidgetDefs = setting.widgets;
880
- restoreSavedWidgets(frontstageDef);
881
- let state = addMissingWidgets(frontstageDef, restored);
882
- state = hideWidgets(state, frontstageDef);
883
- state = processPopoutWidgets(state, frontstageDef);
884
- frontstageDef.nineZoneState = state;
885
- return;
886
- }
887
- }
888
- frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
889
- }
890
- void fetchFrontstageState();
891
- }, [frontstageDef]);
892
- }
893
- exports.useSavedFrontstageState = useSavedFrontstageState;
894
- /** @internal */
895
- function useSaveFrontstageSettings(frontstageDef, store) {
896
- const uiSettingsStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
897
- const saveSetting = React.useMemo(() => {
898
- const debounced = debounce(async (frontstage, state) => {
899
- const id = frontstage.id;
900
- const widgets = packSavedWidgets(frontstage);
901
- frontstage.savedWidgetDefs = widgets;
902
- const setting = {
903
- id,
904
- version: frontstage.version,
905
- stateVersion,
906
- nineZone: packNineZoneState(state),
907
- widgets,
908
- };
909
- await uiSettingsStorage.saveSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
910
- }, 1000);
911
- const save = (frontstage, state) => {
912
- if (state.draggedTab)
913
- return;
914
- debounced(frontstage, state);
915
- };
916
- save.cancel = debounced.cancel;
917
- return save;
918
- }, [uiSettingsStorage]);
919
- React.useEffect(() => {
920
- return () => {
921
- saveSetting.cancel();
922
- };
923
- }, [saveSetting]);
924
- React.useEffect(() => {
925
- saveSetting(frontstageDef, store.getState());
926
- }, [saveSetting, frontstageDef, store]);
927
- React.useEffect(() => {
928
- return store.subscribe(() => {
929
- saveSetting(frontstageDef, store.getState());
930
- });
931
- }, [saveSetting, frontstageDef, store]);
932
- }
933
- exports.useSaveFrontstageSettings = useSaveFrontstageSettings;
934
- /** @internal */
935
- exports.FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
936
- /** @internal */
937
- function getFrontstageStateSettingName(frontstageId) {
938
- return `frontstageState[${frontstageId}]`;
939
- }
940
- exports.getFrontstageStateSettingName = getFrontstageStateSettingName;
941
- // istanbul ignore next
942
- function debounce(func, duration) {
943
- let timeout;
944
- const debounced = (...args) => {
945
- const handler = () => {
946
- timeout = undefined;
947
- return func(...args);
948
- };
949
- window.clearTimeout(timeout);
950
- timeout = window.setTimeout(handler, duration);
951
- };
952
- debounced.cancel = () => {
953
- window.clearTimeout(timeout);
954
- };
955
- return debounced;
956
- }
957
- const createListener = (frontstageDef, listener) => {
958
- return (...args) => {
959
- if (!frontstageDef.nineZoneState)
960
- return;
961
- listener(...args);
962
- };
963
- };
964
- /** @internal */
965
- function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
966
- React.useEffect(() => {
967
- const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
968
- (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
969
- frontstageDef.nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, widgetState);
970
- });
971
- UiFramework_1.UiFramework.frontstages.onWidgetStateChangedEvent.addListener(listener);
972
- return () => {
973
- UiFramework_1.UiFramework.frontstages.onWidgetStateChangedEvent.removeListener(listener);
974
- };
975
- }, [frontstageDef]);
976
- React.useEffect(() => {
977
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
978
- (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
979
- frontstageDef.nineZoneState = showWidget(frontstageDef.nineZoneState, widgetDef.id);
980
- });
981
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetShowEvent.addListener(listener);
982
- return () => {
983
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetShowEvent.removeListener(listener);
984
- };
985
- }, [frontstageDef]);
986
- React.useEffect(() => {
987
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
988
- (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
989
- let nineZoneState = showWidget(frontstageDef.nineZoneState, widgetDef.id);
990
- nineZoneState = expandWidget(nineZoneState, widgetDef.id);
991
- frontstageDef.nineZoneState = nineZoneState;
992
- });
993
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetExpandEvent.addListener(listener);
994
- return () => {
995
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetExpandEvent.removeListener(listener);
996
- };
997
- }, [frontstageDef]);
998
- const uiSettingsStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
999
- React.useEffect(() => {
1000
- const listener = (args) => {
1001
- // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending
1002
- void uiSettingsStorage.deleteSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(args.frontstageDef.id));
1003
- if (frontstageDef.id === args.frontstageDef.id) {
1004
- args.frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
1005
- }
1006
- else {
1007
- args.frontstageDef.nineZoneState = undefined;
1008
- }
1009
- };
1010
- InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(listener);
1011
- return () => {
1012
- InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(listener);
1013
- };
1014
- }, [uiSettingsStorage, frontstageDef]);
1015
- React.useEffect(() => {
1016
- const listener = createListener(frontstageDef, ({ widgetDef }) => {
1017
- (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1018
- const label = widgetDef.label;
1019
- frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, widgetDef.id, label);
1020
- });
1021
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetLabelChangedEvent.addListener(listener);
1022
- return () => {
1023
- InternalFrontstageManager_1.InternalFrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
1024
- };
1025
- }, [frontstageDef]);
1026
- const defaultLabel = React.useMemo(() => UiFramework_1.UiFramework.translate("widget.labels.toolSettings"), []);
1027
- React.useEffect(() => {
1028
- const updateLabel = createListener(frontstageDef, () => {
1029
- var _a;
1030
- const toolId = UiFramework_1.UiFramework.frontstages.activeToolId;
1031
- (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1032
- const label = useToolAsToolSettingsLabel ?
1033
- ((_a = core_frontend_1.IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1034
- frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, appui_layout_react_1.toolSettingsTabId, label);
1035
- });
1036
- // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1037
- updateLabel();
1038
- // If useTool... is true, listen for events to keep up the label up to date.
1039
- if (useToolAsToolSettingsLabel) {
1040
- UiFramework_1.UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel);
1041
- InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1042
- UiFramework_1.UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel);
1043
- UiFramework_1.UiFramework.frontstages.onToolSettingsReloadEvent.addListener(updateLabel);
1044
- }
1045
- return () => {
1046
- if (useToolAsToolSettingsLabel) {
1047
- UiFramework_1.UiFramework.frontstages.onFrontstageReadyEvent.removeListener(updateLabel);
1048
- InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1049
- UiFramework_1.UiFramework.frontstages.onToolActivatedEvent.removeListener(updateLabel);
1050
- UiFramework_1.UiFramework.frontstages.onToolSettingsReloadEvent.removeListener(updateLabel);
1051
- }
1052
- };
1053
- }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
1054
- }
1055
- exports.useFrontstageManager = useFrontstageManager;
1056
- /** @internal */
1057
- // istanbul ignore next
1058
- function useItemsManager(frontstageDef) {
1059
- const refreshNineZoneState = (def) => {
1060
- // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.
1061
- def.updateWidgetDefs();
1062
- restoreSavedWidgets(def);
1063
- let state = def.nineZoneState;
1064
- if (!state)
1065
- return;
1066
- state = addMissingWidgets(def, state);
1067
- state = removeMissingWidgets(def, state);
1068
- state = hideWidgets(state, def); // TODO: should only apply to widgets provided by registered provider in onUiProviderRegisteredEvent.
1069
- def.nineZoneState = state;
1070
- };
1071
- React.useEffect(() => {
1072
- const remove = UiItemsManager_1.UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {
1073
- refreshNineZoneState(frontstageDef);
1074
- });
1075
- // Need to refresh anytime frontstageDef changes because uiItemsProvider may have added something to
1076
- // another stage before it was possibly unloaded in this stage.
1077
- refreshNineZoneState(frontstageDef);
1078
- return remove;
1079
- }, [frontstageDef]);
1080
- }
1081
- exports.useItemsManager = useItemsManager;
1082
- // istanbul ignore next
1083
- function determineNewWidgets(defs, state) {
1084
- defs = defs || [];
1085
- const uniqueDefs = defs.filter((def, index, array) => {
1086
- return index === array.findIndex((def1) => def.id === def1.id);
1087
- });
1088
- return uniqueDefs.filter((def) => !(def.id in state.tabs));
1089
- }
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Frontstage
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.useItemsManager = exports.useFrontstageManager = exports.getFrontstageStateSettingName = exports.FRONTSTAGE_SETTINGS_NAMESPACE = exports.useSaveFrontstageSettings = exports.useSavedFrontstageState = exports.setWidgetLabel = exports.expandWidget = exports.showWidget = exports.setWidgetState = exports.isPanelCollapsed = exports.packNineZoneState = exports.restoreNineZoneState = exports.initializeNineZoneState = exports.initializePanel = exports.isFrontstageStateSettingResult = exports.addPanelWidgets = exports.getPanelSectionWidgets = exports.getWidgetId = exports.removeMissingWidgets = exports.addMissingWidgets = exports.appendWidgets = exports.addWidgets = exports.useLabels = exports.ActiveFrontstageDefProvider = exports.WidgetPanelsFrontstage = exports.useNineZoneDispatch = exports.FrameworkStateReducer = exports.useUpdateNineZoneSize = exports.useLayoutStore = void 0;
11
+ // cSpell:ignore popout
12
+ require("./Frontstage.scss");
13
+ const immer_1 = require("immer");
14
+ const React = require("react");
15
+ const react_dom_1 = require("react-dom");
16
+ const core_bentley_1 = require("@itwin/core-bentley");
17
+ const core_react_1 = require("@itwin/core-react");
18
+ const components_react_1 = require("@itwin/components-react");
19
+ const appui_layout_react_1 = require("@itwin/appui-layout-react");
20
+ const StagePanelDef_1 = require("../stagepanels/StagePanelDef");
21
+ const UiFramework_1 = require("../UiFramework");
22
+ const useUiStateStorage_1 = require("../uistate/useUiStateStorage");
23
+ const Content_1 = require("./Content");
24
+ const FrontstageContent_1 = require("./FrontstageContent");
25
+ const ModalFrontstageComposer_1 = require("./ModalFrontstageComposer");
26
+ const StatusBar_1 = require("./StatusBar");
27
+ const Tab_1 = require("./Tab");
28
+ const Toolbars_1 = require("./Toolbars");
29
+ const ToolSettings_1 = require("./ToolSettings");
30
+ const useEscapeSetFocusToHome_1 = require("../hooks/useEscapeSetFocusToHome");
31
+ const react_redux_1 = require("react-redux");
32
+ const useUiVisibility_1 = require("../hooks/useUiVisibility");
33
+ const core_frontend_1 = require("@itwin/core-frontend");
34
+ const FloatingWidget_1 = require("./FloatingWidget");
35
+ const InternalFrontstageManager_1 = require("../frontstage/InternalFrontstageManager");
36
+ const WidgetState_1 = require("../widgets/WidgetState");
37
+ const StagePanelSection_1 = require("../stagepanels/StagePanelSection");
38
+ const StagePanelLocation_1 = require("../stagepanels/StagePanelLocation");
39
+ const UiItemsManager_1 = require("../ui-items-provider/UiItemsManager");
40
+ function WidgetPanelsFrontstageComponent() {
41
+ const activeModalFrontstageInfo = (0, ModalFrontstageComposer_1.useActiveModalFrontstageInfo)();
42
+ const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
43
+ return (React.createElement(React.Fragment, null,
44
+ React.createElement(ToolSettings_1.WidgetPanelsToolSettings, null),
45
+ React.createElement(components_react_1.ToolbarPopupAutoHideContext.Provider, { value: !uiIsVisible },
46
+ React.createElement(ModalFrontstageComposer_1.ModalFrontstageComposer, { stageInfo: activeModalFrontstageInfo }),
47
+ React.createElement(appui_layout_react_1.WidgetPanels, { className: "uifw-widgetPanels", centerContent: React.createElement(Toolbars_1.WidgetPanelsToolbars, null) },
48
+ React.createElement(FrontstageContent_1.WidgetPanelsFrontstageContent, null)),
49
+ React.createElement(StatusBar_1.WidgetPanelsStatusBar, null),
50
+ React.createElement(appui_layout_react_1.FloatingWidgets, null))));
51
+ }
52
+ const widgetContent = React.createElement(Content_1.WidgetContent, null);
53
+ const toolSettingsContent = React.createElement(ToolSettings_1.ToolSettingsContent, null);
54
+ const widgetPanelsFrontstage = React.createElement(WidgetPanelsFrontstageComponent, null);
55
+ /** @internal */
56
+ function useLayoutStore() {
57
+ const [def, setDef] = React.useState(UiFramework_1.UiFramework.frontstages.activeFrontstageDef);
58
+ const [layout, setLayout] = React.useState(() => (0, appui_layout_react_1.createLayoutStore)(def === null || def === void 0 ? void 0 : def.nineZoneState));
59
+ React.useEffect(() => {
60
+ return UiFramework_1.UiFramework.frontstages.onFrontstageActivatedEvent.addListener((args) => {
61
+ (0, react_dom_1.unstable_batchedUpdates)(() => {
62
+ setDef(args.activatedFrontstageDef);
63
+ setLayout((0, appui_layout_react_1.createLayoutStore)(args.activatedFrontstageDef.nineZoneState));
64
+ });
65
+ });
66
+ }, []);
67
+ React.useEffect(() => {
68
+ return InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener((args) => {
69
+ if (args.frontstageDef !== def || def.isStageClosing || def.isApplicationClosing)
70
+ return;
71
+ (0, react_dom_1.unstable_batchedUpdates)(() => {
72
+ layout.setState(args.state || defaultNineZone);
73
+ });
74
+ });
75
+ }, [def, layout]);
76
+ return [layout, def];
77
+ }
78
+ exports.useLayoutStore = useLayoutStore;
79
+ /** Update in-memory NineZoneState of newly activated frontstage with up to date size.
80
+ * @internal
81
+ */
82
+ function useUpdateNineZoneSize(frontstageDef) {
83
+ React.useEffect(() => {
84
+ const size = InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize;
85
+ let state = frontstageDef.nineZoneState;
86
+ if (!size || !state)
87
+ return;
88
+ state = FrameworkStateReducer(state, {
89
+ type: "RESIZE",
90
+ size: {
91
+ height: size.height,
92
+ width: size.width,
93
+ },
94
+ }, frontstageDef);
95
+ frontstageDef.nineZoneState = state;
96
+ }, [frontstageDef]);
97
+ }
98
+ exports.useUpdateNineZoneSize = useUpdateNineZoneSize;
99
+ /** @internal */
100
+ function FrameworkStateReducer(state, action, frontstageDef) {
101
+ state = (0, appui_layout_react_1.NineZoneStateReducer)(state, action);
102
+ if (action.type === "RESIZE") {
103
+ state = (0, immer_1.default)(state, (draft) => {
104
+ for (const panelSide of appui_layout_react_1.panelSides) {
105
+ const panel = draft.panels[panelSide];
106
+ const location = toStagePanelLocation(panelSide);
107
+ const panelDef = frontstageDef.getStagePanelDef(location);
108
+ if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
109
+ panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, action.size);
110
+ if (panel.size) {
111
+ panel.size = Math.min(Math.max(panel.size, panel.minSize), panel.maxSize);
112
+ }
113
+ }
114
+ }
115
+ });
116
+ }
117
+ return state;
118
+ }
119
+ exports.FrameworkStateReducer = FrameworkStateReducer;
120
+ /** @internal */
121
+ function useNineZoneDispatch(frontstageDef) {
122
+ const dispatch = React.useCallback((action) => {
123
+ if (action.type === "RESIZE") {
124
+ InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize = core_react_1.Size.create(action.size);
125
+ }
126
+ // istanbul ignore if
127
+ if (action.type === "TOOL_SETTINGS_DRAG_START") {
128
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
129
+ UiFramework_1.UiFramework.postTelemetry("Tool Settings Undocking", "28B04E07-AE73-4533-A0BA-8E2A8DC99ADF");
130
+ }
131
+ // istanbul ignore if
132
+ if (action.type === "TOOL_SETTINGS_DOCK") {
133
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
134
+ UiFramework_1.UiFramework.postTelemetry("Tool Settings Docking to Settings Bar", "BEDE684B-B3DB-4637-B3AF-DC3CBA223F94");
135
+ }
136
+ if (action.type === "WIDGET_TAB_POPOUT") {
137
+ const tabId = action.id;
138
+ frontstageDef.popoutWidget(tabId);
139
+ return;
140
+ }
141
+ const state = frontstageDef.nineZoneState;
142
+ if (!state)
143
+ return;
144
+ frontstageDef.nineZoneState = FrameworkStateReducer(state, action, frontstageDef);
145
+ }, [frontstageDef]);
146
+ return dispatch;
147
+ }
148
+ exports.useNineZoneDispatch = useNineZoneDispatch;
149
+ /** @internal */
150
+ function WidgetPanelsFrontstage() {
151
+ const [layout, frontstageDef] = useLayoutStore();
152
+ React.useEffect(() => {
153
+ const triggerWidowCloseProcessing = () => {
154
+ frontstageDef && frontstageDef.setIsApplicationClosing(true);
155
+ };
156
+ frontstageDef && frontstageDef.setIsApplicationClosing(false);
157
+ window.addEventListener("unload", triggerWidowCloseProcessing);
158
+ return () => {
159
+ window.removeEventListener("unload", triggerWidowCloseProcessing);
160
+ };
161
+ }, [frontstageDef]);
162
+ if (!frontstageDef)
163
+ return null;
164
+ return (React.createElement(ActiveFrontstageDefProvider, { frontstageDef: frontstageDef, layout: layout }));
165
+ }
166
+ exports.WidgetPanelsFrontstage = WidgetPanelsFrontstage;
167
+ const defaultNineZone = (0, appui_layout_react_1.createNineZoneState)();
168
+ const tabElement = React.createElement(Tab_1.WidgetPanelsTab, null);
169
+ const floatingWidgetElement = React.createElement(FloatingWidget_1.FloatingWidget, null);
170
+ /** @internal */
171
+ function ActiveFrontstageDefProvider({ frontstageDef, layout }) {
172
+ const dispatch = useNineZoneDispatch(frontstageDef);
173
+ useUpdateNineZoneSize(frontstageDef);
174
+ useSavedFrontstageState(frontstageDef);
175
+ useSaveFrontstageSettings(frontstageDef, layout);
176
+ useItemsManager(frontstageDef);
177
+ const labels = useLabels();
178
+ const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
179
+ const showWidgetIcon = (0, react_redux_1.useSelector)((state) => {
180
+ const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
181
+ return !!frameworkState.configurableUiState.showWidgetIcon;
182
+ });
183
+ const autoCollapseUnpinnedPanels = (0, react_redux_1.useSelector)((state) => {
184
+ const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
185
+ return !!frameworkState.configurableUiState.autoCollapseUnpinnedPanels;
186
+ });
187
+ const animateToolSettings = (0, react_redux_1.useSelector)((state) => {
188
+ const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
189
+ return !!frameworkState.configurableUiState.animateToolSettings;
190
+ });
191
+ const useToolAsToolSettingsLabel = (0, react_redux_1.useSelector)((state) => {
192
+ const frameworkState = state[UiFramework_1.UiFramework.frameworkStateKey];
193
+ return !!frameworkState.configurableUiState.useToolAsToolSettingsLabel;
194
+ });
195
+ useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel);
196
+ const handleKeyDown = (0, useEscapeSetFocusToHome_1.useEscapeSetFocusToHome)();
197
+ return (React.createElement("div", { className: "uifw-widgetPanels-frontstage", onKeyDown: handleKeyDown, role: "presentation" },
198
+ React.createElement(appui_layout_react_1.NineZone, { dispatch: dispatch, labels: labels, layout: layout, tab: tabElement, floatingWidget: floatingWidgetElement, showWidgetIcon: showWidgetIcon, autoCollapseUnpinnedPanels: autoCollapseUnpinnedPanels, toolSettingsContent: toolSettingsContent, widgetContent: widgetContent, animateDockedToolSettings: animateToolSettings, uiIsVisible: uiIsVisible }, widgetPanelsFrontstage)));
199
+ }
200
+ exports.ActiveFrontstageDefProvider = ActiveFrontstageDefProvider;
201
+ /** @internal */
202
+ function useLabels() {
203
+ return React.useMemo(() => ({
204
+ dockToolSettingsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.dockToolSettings"),
205
+ moreWidgetsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.moreWidgets"),
206
+ moreToolSettingsTitle: UiFramework_1.UiFramework.translate("widget.tooltips.moreToolSettings"),
207
+ pinPanelTitle: UiFramework_1.UiFramework.translate("widget.tooltips.pinPanel"),
208
+ resizeGripTitle: UiFramework_1.UiFramework.translate("widget.tooltips.resizeGrip"),
209
+ sendWidgetHomeTitle: UiFramework_1.UiFramework.translate("widget.tooltips.sendHome"),
210
+ toolSettingsHandleTitle: UiFramework_1.UiFramework.translate("widget.tooltips.toolSettingsHandle"),
211
+ unpinPanelTitle: UiFramework_1.UiFramework.translate("widget.tooltips.unpinPanel"),
212
+ popoutActiveTab: UiFramework_1.UiFramework.translate("widget.tooltips.popoutActiveTab"),
213
+ }), []);
214
+ }
215
+ exports.useLabels = useLabels;
216
+ /** @internal */
217
+ function addWidgets(state, widgets, side, widgetId) {
218
+ var _a;
219
+ const visibleWidgets = widgets.filter((w) => w.isVisible && (w.defaultState !== WidgetState_1.WidgetState.Floating));
220
+ if (visibleWidgets.length === 0)
221
+ return state;
222
+ const tabs = new Array();
223
+ for (const widget of visibleWidgets) {
224
+ const label = getWidgetLabel(widget.label);
225
+ state = (0, appui_layout_react_1.addTab)(state, widget.id, {
226
+ label,
227
+ iconSpec: widget.iconSpec,
228
+ preferredPanelWidgetSize: widget.preferredPanelSize,
229
+ preferredFloatingWidgetSize: widget.defaultFloatingSize,
230
+ canPopout: widget.canPopout,
231
+ isFloatingStateWindowResizable: widget.isFloatingStateWindowResizable,
232
+ hideWithUiWhenFloating: !!widget.hideWithUiWhenFloating,
233
+ allowedPanelTargets: (_a = widget.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((location) => (0, StagePanelDef_1.toPanelSide)(location)),
234
+ });
235
+ tabs.push(widget.id);
236
+ }
237
+ const activeWidget = visibleWidgets.find((widget) => widget.isActive);
238
+ const minimized = false;
239
+ // istanbul ignore else
240
+ if ((activeWidget === null || activeWidget === void 0 ? void 0 : activeWidget.defaultState) !== WidgetState_1.WidgetState.Floating) {
241
+ state = (0, appui_layout_react_1.addPanelWidget)(state, side, widgetId, tabs, {
242
+ activeTabId: activeWidget ? activeWidget.id : tabs[0],
243
+ minimized,
244
+ });
245
+ }
246
+ return state;
247
+ }
248
+ exports.addWidgets = addWidgets;
249
+ /** @internal */
250
+ // istanbul ignore next
251
+ function appendWidgets(state, widgetDefs, location, section) {
252
+ var _a, _b;
253
+ if (widgetDefs.length === 0)
254
+ return state;
255
+ const side = (0, StagePanelDef_1.toPanelSide)(location);
256
+ // Add missing widget tabs.
257
+ for (const widgetDef of widgetDefs) {
258
+ const label = getWidgetLabel(widgetDef.label);
259
+ const saveTab = state.tabs[widgetDef.id];
260
+ const preferredPanelWidgetSize = saveTab ? saveTab.preferredPanelWidgetSize : widgetDef.preferredPanelSize;
261
+ const preferredFloatingWidgetSize = saveTab ? saveTab.preferredFloatingWidgetSize : widgetDef.defaultFloatingSize;
262
+ // if a defaultFloatingSize is specified then this mean the widget can't determine its intrinsic size and must be explicitly sized
263
+ const userSized = saveTab ? (saveTab.userSized || !!widgetDef.defaultFloatingSize && !!saveTab.preferredFloatingWidgetSize)
264
+ : !!widgetDef.defaultFloatingSize;
265
+ state = (0, appui_layout_react_1.addTab)(state, widgetDef.id, {
266
+ label,
267
+ iconSpec: widgetDef.iconSpec,
268
+ canPopout: widgetDef.canPopout,
269
+ preferredPanelWidgetSize,
270
+ preferredFloatingWidgetSize,
271
+ userSized,
272
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
273
+ hideWithUiWhenFloating: !!widgetDef.hideWithUiWhenFloating,
274
+ allowedPanelTargets: (_a = widgetDef.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((l) => (0, StagePanelDef_1.toPanelSide)(l)),
275
+ });
276
+ if (widgetDef.isFloatingStateSupported && widgetDef.defaultState === WidgetState_1.WidgetState.Floating) {
277
+ const floatingContainerId = (_b = widgetDef.floatingContainerId) !== null && _b !== void 0 ? _b : (0, appui_layout_react_1.getUniqueId)();
278
+ const widgetContainerId = getWidgetId(location, section);
279
+ const home = { side, widgetId: widgetContainerId, widgetIndex: 0 };
280
+ const preferredPosition = widgetDef.defaultFloatingPosition;
281
+ if (floatingContainerId in state.widgets) {
282
+ state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, floatingContainerId);
283
+ }
284
+ else {
285
+ const tab = state.tabs[widgetDef.id];
286
+ const size = { height: 200, width: 300, ...tab.preferredFloatingWidgetSize };
287
+ const preferredPoint = preferredPosition !== null && preferredPosition !== void 0 ? preferredPosition : { x: (state.size.width - size.width) / 2, y: (state.size.height - size.height) / 2 };
288
+ const nzBounds = core_react_1.Rectangle.createFromSize(state.size);
289
+ const bounds = core_react_1.Rectangle.createFromSize(size).offset(preferredPoint);
290
+ const containedBounds = bounds.containIn(nzBounds);
291
+ state = (0, appui_layout_react_1.addFloatingWidget)(state, floatingContainerId, [widgetDef.id], {
292
+ bounds: containedBounds.toProps(),
293
+ home,
294
+ userSized,
295
+ }, {
296
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
297
+ });
298
+ }
299
+ }
300
+ else {
301
+ const preferredWidgetIndex = section;
302
+ const widgetPanelSectionId = (0, appui_layout_react_1.getWidgetPanelSectionId)(side, preferredWidgetIndex);
303
+ if (widgetPanelSectionId in state.widgets) {
304
+ state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, widgetPanelSectionId);
305
+ }
306
+ else {
307
+ const panel = state.panels[side];
308
+ if (panel.widgets.length < panel.maxWidgetCount) {
309
+ state = (0, appui_layout_react_1.addPanelWidget)(state, side, widgetPanelSectionId, [widgetDef.id]);
310
+ }
311
+ else {
312
+ const widgetIndex = Math.min(preferredWidgetIndex, panel.widgets.length - 1);
313
+ const widgetId = panel.widgets[widgetIndex];
314
+ state = (0, appui_layout_react_1.addTabToWidget)(state, widgetDef.id, widgetId);
315
+ }
316
+ }
317
+ }
318
+ }
319
+ return state;
320
+ }
321
+ exports.appendWidgets = appendWidgets;
322
+ function processPopoutWidgets(initialState, frontstageDef) {
323
+ // istanbul ignore next
324
+ if (!initialState.popoutWidgets)
325
+ return initialState;
326
+ // istanbul ignore next - not unit testing electron case that reopens popout windows
327
+ if (initialState.popoutWidgets && core_bentley_1.ProcessDetector.isElectronAppFrontend) {
328
+ if (initialState.popoutWidgets.allIds.length && core_bentley_1.ProcessDetector.isElectronAppFrontend) {
329
+ for (const widgetContainerId of initialState.popoutWidgets.allIds) {
330
+ frontstageDef.openPopoutWidgetContainer(initialState, widgetContainerId);
331
+ }
332
+ }
333
+ return initialState;
334
+ }
335
+ return (0, appui_layout_react_1.convertAllPopupWidgetContainersToFloating)(initialState);
336
+ }
337
+ /** Adds frontstageDef widgets that are missing in NineZoneState.
338
+ * @internal
339
+ */
340
+ function addMissingWidgets(frontstageDef, initialState) {
341
+ var _a, _b, _c, _d, _e, _f, _g, _h;
342
+ let state = initialState;
343
+ state = appendWidgets(state, determineNewWidgets((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Left, StagePanelSection_1.StagePanelSection.Start);
344
+ state = appendWidgets(state, determineNewWidgets((_b = frontstageDef.leftPanel) === null || _b === void 0 ? void 0 : _b.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Left, StagePanelSection_1.StagePanelSection.End);
345
+ state = appendWidgets(state, determineNewWidgets((_c = frontstageDef.rightPanel) === null || _c === void 0 ? void 0 : _c.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Right, StagePanelSection_1.StagePanelSection.Start);
346
+ state = appendWidgets(state, determineNewWidgets((_d = frontstageDef.rightPanel) === null || _d === void 0 ? void 0 : _d.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Right, StagePanelSection_1.StagePanelSection.End);
347
+ state = appendWidgets(state, determineNewWidgets((_e = frontstageDef.topPanel) === null || _e === void 0 ? void 0 : _e.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Top, StagePanelSection_1.StagePanelSection.Start);
348
+ state = appendWidgets(state, determineNewWidgets((_f = frontstageDef.topPanel) === null || _f === void 0 ? void 0 : _f.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Top, StagePanelSection_1.StagePanelSection.End);
349
+ state = appendWidgets(state, determineNewWidgets((_g = frontstageDef.bottomPanel) === null || _g === void 0 ? void 0 : _g.getPanelSectionDef(StagePanelSection_1.StagePanelSection.Start).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Bottom, StagePanelSection_1.StagePanelSection.Start);
350
+ state = appendWidgets(state, determineNewWidgets((_h = frontstageDef.bottomPanel) === null || _h === void 0 ? void 0 : _h.getPanelSectionDef(StagePanelSection_1.StagePanelSection.End).widgetDefs, state), StagePanelLocation_1.StagePanelLocation.Bottom, StagePanelSection_1.StagePanelSection.End);
351
+ return state;
352
+ }
353
+ exports.addMissingWidgets = addMissingWidgets;
354
+ /** Hide widgets with Hidden defaultState. */
355
+ function hideWidgets(state, frontstageDef) {
356
+ const tabs = Object.values(state.tabs);
357
+ for (const tab of tabs) {
358
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
359
+ if (!widgetDef)
360
+ continue;
361
+ if (widgetDef.defaultState === WidgetState_1.WidgetState.Hidden) {
362
+ state = hideWidget(state, widgetDef);
363
+ }
364
+ }
365
+ return state;
366
+ }
367
+ /** Removes NineZoneState widgets that are missing in frontstageDef.
368
+ * @internal
369
+ */
370
+ function removeMissingWidgets(frontstageDef, initialState) {
371
+ let state = initialState;
372
+ for (const [, tab] of Object.entries(state.tabs)) {
373
+ if (tab.id === appui_layout_react_1.toolSettingsTabId)
374
+ continue;
375
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
376
+ if (widgetDef)
377
+ continue;
378
+ state = (0, appui_layout_react_1.removeTab)(state, tab.id);
379
+ }
380
+ return state;
381
+ }
382
+ exports.removeMissingWidgets = removeMissingWidgets;
383
+ function getWidgetLabel(label) {
384
+ return label === "" ? "Widget" : label;
385
+ }
386
+ function toStagePanelLocation(side) {
387
+ switch (side) {
388
+ case "bottom":
389
+ return StagePanelLocation_1.StagePanelLocation.Bottom;
390
+ case "left":
391
+ return StagePanelLocation_1.StagePanelLocation.Left;
392
+ case "right":
393
+ return StagePanelLocation_1.StagePanelLocation.Right;
394
+ case "top":
395
+ return StagePanelLocation_1.StagePanelLocation.Top;
396
+ }
397
+ }
398
+ /** @internal */
399
+ function getWidgetId(location, section) {
400
+ switch (location) {
401
+ case StagePanelLocation_1.StagePanelLocation.Left: {
402
+ if (section === StagePanelSection_1.StagePanelSection.Start)
403
+ return "leftStart";
404
+ return "leftEnd";
405
+ }
406
+ case StagePanelLocation_1.StagePanelLocation.Right: {
407
+ if (section === StagePanelSection_1.StagePanelSection.Start)
408
+ return "rightStart";
409
+ return "rightEnd";
410
+ }
411
+ case StagePanelLocation_1.StagePanelLocation.Top: {
412
+ if (section === StagePanelSection_1.StagePanelSection.Start)
413
+ return "topStart";
414
+ return "topEnd";
415
+ }
416
+ case StagePanelLocation_1.StagePanelLocation.Bottom: {
417
+ if (section === StagePanelSection_1.StagePanelSection.Start)
418
+ return "bottomStart";
419
+ return "bottomEnd";
420
+ }
421
+ }
422
+ }
423
+ exports.getWidgetId = getWidgetId;
424
+ /** @internal */
425
+ function getPanelSectionWidgets(frontstageDef, location, section) {
426
+ const stagePanel = frontstageDef.getStagePanelDef(location);
427
+ const panelSection = stagePanel === null || stagePanel === void 0 ? void 0 : stagePanel.getPanelSectionDef(section);
428
+ return (panelSection === null || panelSection === void 0 ? void 0 : panelSection.widgetDefs) || [];
429
+ }
430
+ exports.getPanelSectionWidgets = getPanelSectionWidgets;
431
+ /** @internal */
432
+ function addPanelWidgets(state, frontstageDef, location) {
433
+ const side = (0, StagePanelDef_1.toPanelSide)(location);
434
+ const start = getWidgetId(location, StagePanelSection_1.StagePanelSection.Start);
435
+ const startWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection_1.StagePanelSection.Start);
436
+ state = addWidgets(state, determineNewWidgets(startWidgets, state), side, start);
437
+ const end = getWidgetId(location, StagePanelSection_1.StagePanelSection.End);
438
+ const endWidgets = getPanelSectionWidgets(frontstageDef, location, StagePanelSection_1.StagePanelSection.End);
439
+ state = addWidgets(state, determineNewWidgets(endWidgets, state), side, end);
440
+ return state;
441
+ }
442
+ exports.addPanelWidgets = addPanelWidgets;
443
+ /** @internal */
444
+ function isFrontstageStateSettingResult(settingsResult) {
445
+ if (settingsResult.status === core_react_1.UiStateStorageStatus.Success)
446
+ return true;
447
+ return false;
448
+ }
449
+ exports.isFrontstageStateSettingResult = isFrontstageStateSettingResult;
450
+ /** @internal */
451
+ function initializePanel(state, frontstageDef, location) {
452
+ const panelSide = (0, StagePanelDef_1.toPanelSide)(location);
453
+ state = addPanelWidgets(state, frontstageDef, location);
454
+ const panelDef = frontstageDef.getStagePanelDef(location);
455
+ state = (0, immer_1.default)(state, (draft) => {
456
+ var _a, _b, _c;
457
+ const panel = draft.panels[panelSide];
458
+ panel.minSize = (_a = panelDef === null || panelDef === void 0 ? void 0 : panelDef.minSize) !== null && _a !== void 0 ? _a : panel.minSize;
459
+ panel.pinned = (_b = panelDef === null || panelDef === void 0 ? void 0 : panelDef.pinned) !== null && _b !== void 0 ? _b : panel.pinned;
460
+ panel.resizable = (_c = panelDef === null || panelDef === void 0 ? void 0 : panelDef.resizable) !== null && _c !== void 0 ? _c : panel.resizable;
461
+ if (panelDef === null || panelDef === void 0 ? void 0 : panelDef.maxSizeSpec) {
462
+ panel.maxSize = getPanelMaxSize(panelDef.maxSizeSpec, panelSide, state.size);
463
+ }
464
+ const size = panelDef === null || panelDef === void 0 ? void 0 : panelDef.size;
465
+ panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);
466
+ });
467
+ return state;
468
+ }
469
+ exports.initializePanel = initializePanel;
470
+ function getPanelMaxSize(maxSizeSpec, panel, nineZoneSize) {
471
+ if (typeof maxSizeSpec === "number") {
472
+ return maxSizeSpec;
473
+ }
474
+ const size = (0, appui_layout_react_1.isHorizontalPanelSide)(panel) ? nineZoneSize.height : nineZoneSize.width;
475
+ return maxSizeSpec.percentage / 100 * size;
476
+ }
477
+ const stateVersion = 13; // this needs to be bumped when NineZoneState is changed (to recreate the layout).
478
+ /** @internal */
479
+ function initializeNineZoneState(frontstageDef) {
480
+ let nineZone = defaultNineZone;
481
+ nineZone = (0, immer_1.default)(nineZone, (stateDraft) => {
482
+ // istanbul ignore next
483
+ if (!InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize)
484
+ return;
485
+ stateDraft.size = {
486
+ height: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height,
487
+ width: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width,
488
+ };
489
+ });
490
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Left);
491
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Right);
492
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Top);
493
+ nineZone = initializePanel(nineZone, frontstageDef, StagePanelLocation_1.StagePanelLocation.Bottom);
494
+ nineZone = (0, immer_1.default)(nineZone, (stateDraft) => {
495
+ var _a, _b, _c, _d;
496
+ for (const [, panel] of Object.entries(stateDraft.panels)) {
497
+ const expanded = panel.widgets.find((widgetId) => stateDraft.widgets[widgetId].minimized === false);
498
+ const firstWidget = panel.widgets.length > 0 ? stateDraft.widgets[panel.widgets[0]] : undefined;
499
+ // istanbul ignore next
500
+ if (!expanded && firstWidget) {
501
+ firstWidget.minimized = false;
502
+ }
503
+ }
504
+ stateDraft.panels.left.collapsed = isPanelCollapsed((_a = frontstageDef.leftPanel) === null || _a === void 0 ? void 0 : _a.panelState);
505
+ stateDraft.panels.right.collapsed = isPanelCollapsed((_b = frontstageDef.rightPanel) === null || _b === void 0 ? void 0 : _b.panelState);
506
+ stateDraft.panels.top.collapsed = isPanelCollapsed((_c = frontstageDef.topPanel) === null || _c === void 0 ? void 0 : _c.panelState);
507
+ stateDraft.panels.bottom.collapsed = isPanelCollapsed((_d = frontstageDef.bottomPanel) === null || _d === void 0 ? void 0 : _d.panelState);
508
+ const toolSettingsWidgetDef = frontstageDef.toolSettings;
509
+ if (toolSettingsWidgetDef) {
510
+ const toolSettingsTab = stateDraft.tabs[appui_layout_react_1.toolSettingsTabId];
511
+ toolSettingsTab.preferredPanelWidgetSize = toolSettingsWidgetDef.preferredPanelSize;
512
+ }
513
+ });
514
+ nineZone = addMissingWidgets(frontstageDef, nineZone);
515
+ nineZone = hideWidgets(nineZone, frontstageDef);
516
+ nineZone = processPopoutWidgets(nineZone, frontstageDef);
517
+ return nineZone;
518
+ }
519
+ exports.initializeNineZoneState = initializeNineZoneState;
520
+ /** Converts from saved NineZoneState to NineZoneState.
521
+ * @note Restores toolSettings tab.
522
+ * @note Restores tab labels.
523
+ * @internal
524
+ */
525
+ function restoreNineZoneState(frontstageDef, saved) {
526
+ let restored = {
527
+ ...saved,
528
+ tabs: defaultNineZone.tabs,
529
+ };
530
+ for (const [, tab] of Object.entries(saved.tabs)) {
531
+ // Re-add the placeholder tab in order to correctly remove it from the state if WidgetDef is not found.
532
+ restored = (0, appui_layout_react_1.addTab)(restored, tab.id);
533
+ const widgetDef = frontstageDef.findWidgetDef(tab.id);
534
+ if (!widgetDef) {
535
+ core_bentley_1.Logger.logInfo(UiFramework_1.UiFramework.loggerCategory(restoreNineZoneState), "WidgetDef is not found for saved tab.", () => ({
536
+ frontstageId: frontstageDef.id,
537
+ tabId: tab.id,
538
+ }));
539
+ restored = (0, appui_layout_react_1.removeTab)(restored, tab.id);
540
+ continue;
541
+ }
542
+ restored = (0, immer_1.default)(restored, (draft) => {
543
+ var _a;
544
+ draft.tabs[tab.id] = {
545
+ ...tab,
546
+ label: getWidgetLabel(widgetDef.label),
547
+ hideWithUiWhenFloating: widgetDef.hideWithUiWhenFloating,
548
+ iconSpec: widgetDef.iconSpec,
549
+ canPopout: widgetDef.canPopout,
550
+ isFloatingStateWindowResizable: widgetDef.isFloatingStateWindowResizable,
551
+ allowedPanelTargets: (_a = widgetDef.allowedPanelTargets) === null || _a === void 0 ? void 0 : _a.map((location) => (0, StagePanelDef_1.toPanelSide)(location)),
552
+ };
553
+ });
554
+ }
555
+ restored = (0, immer_1.default)(restored, (draft) => {
556
+ // remove center panel section if one is found in left or right panels
557
+ const oldLeftMiddleIndex = saved.panels.left.widgets.findIndex((value) => value === "leftMiddle");
558
+ // istanbul ignore next
559
+ if (-1 !== oldLeftMiddleIndex) {
560
+ draft.panels.left.widgets = saved.panels.left.widgets.filter((value) => value !== "leftMiddle");
561
+ if ("leftEnd" in draft.widgets) {
562
+ draft.widgets.leftMiddle.tabs.forEach((tab) => draft.widgets.leftEnd.tabs.push(tab));
563
+ }
564
+ else {
565
+ draft.widgets.leftEnd = { ...draft.widgets.leftMiddle };
566
+ delete draft.widgets.leftMiddle;
567
+ }
568
+ }
569
+ const oldRightMiddleIndex = saved.panels.right.widgets.findIndex((value) => value === "rightMiddle");
570
+ // istanbul ignore next
571
+ if (-1 !== oldRightMiddleIndex) {
572
+ draft.panels.right.widgets = saved.panels.right.widgets.filter((value) => value !== "rightMiddle");
573
+ if ("rightEnd" in draft.widgets) {
574
+ draft.widgets.rightMiddle.tabs.forEach((tab) => draft.widgets.rightEnd.tabs.push(tab));
575
+ }
576
+ else {
577
+ draft.widgets.rightEnd = { ...draft.widgets.rightMiddle };
578
+ delete draft.widgets.rightMiddle;
579
+ }
580
+ }
581
+ return;
582
+ });
583
+ if (InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize && (0 !== InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height || 0 !== InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width)) {
584
+ restored = FrameworkStateReducer(restored, {
585
+ type: "RESIZE",
586
+ size: {
587
+ height: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.height,
588
+ width: InternalFrontstageManager_1.InternalFrontstageManager.nineZoneSize.width,
589
+ },
590
+ }, frontstageDef);
591
+ }
592
+ return restored;
593
+ }
594
+ exports.restoreNineZoneState = restoreNineZoneState;
595
+ /** Prepares NineZoneState to be saved.
596
+ * @note Removes toolSettings tab.
597
+ * @note Removes tab labels and iconSpec.
598
+ * @internal
599
+ */
600
+ function packNineZoneState(state) {
601
+ let packed = {
602
+ ...state,
603
+ tabs: {},
604
+ };
605
+ packed = (0, immer_1.default)(packed, (draft) => {
606
+ for (const [, tab] of Object.entries(state.tabs)) {
607
+ if (tab.id === appui_layout_react_1.toolSettingsTabId)
608
+ continue;
609
+ draft.tabs[tab.id] = {
610
+ id: tab.id,
611
+ preferredFloatingWidgetSize: tab.preferredFloatingWidgetSize,
612
+ allowedPanelTargets: tab.allowedPanelTargets,
613
+ userSized: tab.userSized,
614
+ };
615
+ }
616
+ });
617
+ return packed;
618
+ }
619
+ exports.packNineZoneState = packNineZoneState;
620
+ // istanbul ignore next
621
+ function packSavedWidgets(frontstageDef) {
622
+ let savedWidgets = [];
623
+ for (const widgetDef of frontstageDef.widgetDefs) {
624
+ const id = widgetDef.id;
625
+ const initialWidget = {
626
+ id,
627
+ };
628
+ const widget = (0, immer_1.default)(initialWidget, (draft) => {
629
+ if (widgetDef.tabLocation) {
630
+ draft.tabLocation = { ...widgetDef.tabLocation };
631
+ }
632
+ if (widgetDef.popoutBounds) {
633
+ draft.popoutBounds = widgetDef.popoutBounds.toProps();
634
+ }
635
+ });
636
+ if (widget === initialWidget)
637
+ continue;
638
+ savedWidgets.push(widget);
639
+ }
640
+ // Add previously saved widgets.
641
+ const prevSavedWidgets = frontstageDef.savedWidgetDefs || [];
642
+ for (const prevWidget of prevSavedWidgets) {
643
+ if (savedWidgets.find((w) => w.id === prevWidget.id))
644
+ continue;
645
+ savedWidgets.push(prevWidget);
646
+ }
647
+ // Limit number of saved widgets.
648
+ const maxWidgets = 100;
649
+ if (savedWidgets.length > maxWidgets)
650
+ savedWidgets = savedWidgets.slice(0, maxWidgets);
651
+ return savedWidgets;
652
+ }
653
+ // istanbul ignore next
654
+ function restoreSavedWidgets(frontstage) {
655
+ const savedWidgets = frontstage.savedWidgetDefs || [];
656
+ for (const savedWidget of savedWidgets) {
657
+ const widgetId = savedWidget.id;
658
+ const widgetDef = frontstage.findWidgetDef(widgetId);
659
+ if (!widgetDef)
660
+ continue;
661
+ if (savedWidget.tabLocation) {
662
+ widgetDef.tabLocation = { ...savedWidget.tabLocation };
663
+ }
664
+ if (savedWidget.popoutBounds) {
665
+ widgetDef.popoutBounds = core_react_1.Rectangle.create(savedWidget.popoutBounds);
666
+ }
667
+ }
668
+ }
669
+ /** @internal */
670
+ function isPanelCollapsed(panelState) {
671
+ return panelState !== StagePanelDef_1.StagePanelState.Open;
672
+ }
673
+ exports.isPanelCollapsed = isPanelCollapsed;
674
+ function addHiddenWidget(state, widgetDef) {
675
+ const tabLocation = widgetDef.tabLocation || widgetDef.defaultTabLocation;
676
+ const tabId = widgetDef.id;
677
+ const { widgetId, tabIndex } = tabLocation;
678
+ if (widgetId in state.widgets) {
679
+ // Add to an existing widget (by widget id).
680
+ return (0, appui_layout_react_1.insertTabToWidget)(state, tabId, widgetId, tabIndex);
681
+ }
682
+ else if (tabLocation.floatingWidget) {
683
+ const floatingWidget = tabLocation.floatingWidget;
684
+ (0, core_bentley_1.assert)(widgetId === floatingWidget.id);
685
+ // Add to a new floating widget.
686
+ const nzBounds = core_react_1.Rectangle.createFromSize(state.size);
687
+ const bounds = core_react_1.Rectangle.create(floatingWidget.bounds).containIn(nzBounds);
688
+ return (0, appui_layout_react_1.addFloatingWidget)(state, floatingWidget.id, [tabId], {
689
+ ...floatingWidget,
690
+ bounds: bounds.toProps(),
691
+ });
692
+ }
693
+ // Add to a panel section.
694
+ const panel = state.panels[tabLocation.side];
695
+ // Add to existing panel section.
696
+ if (panel.widgets.length >= panel.maxWidgetCount) {
697
+ const sectionIndex = Math.min(panel.maxWidgetCount - 1, tabLocation.widgetIndex);
698
+ const sectionId = panel.widgets[sectionIndex];
699
+ return (0, appui_layout_react_1.insertTabToWidget)(state, tabId, sectionId, tabLocation.tabIndex);
700
+ }
701
+ // Create a new panel section.
702
+ const newSectionId = (0, appui_layout_react_1.getUniqueId)();
703
+ return (0, appui_layout_react_1.insertPanelWidget)(state, panel.side, newSectionId, [tabId], tabLocation.widgetIndex);
704
+ }
705
+ /** @internal */
706
+ function setWidgetState(state, widgetDef, widgetState) {
707
+ var _a, _b;
708
+ if (widgetState === WidgetState_1.WidgetState.Hidden) {
709
+ return hideWidget(state, widgetDef);
710
+ }
711
+ else if (widgetState === WidgetState_1.WidgetState.Open) {
712
+ const id = widgetDef.id;
713
+ let location = (0, appui_layout_react_1.getTabLocation)(state, id);
714
+ if (!location) {
715
+ state = addHiddenWidget(state, widgetDef);
716
+ location = (0, appui_layout_react_1.getTabLocation)(state, id);
717
+ }
718
+ return (0, immer_1.default)(state, (draft) => {
719
+ var _a;
720
+ (0, core_bentley_1.assert)(!!location);
721
+ const widget = draft.widgets[location.widgetId];
722
+ widget.minimized = false;
723
+ widget.activeTabId = id;
724
+ if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
725
+ const floatingWidget = draft.floatingWidgets.byId[location.floatingWidgetId];
726
+ floatingWidget.hidden = false;
727
+ // istanbul ignore else
728
+ }
729
+ else if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
730
+ const panel = draft.panels[location.side];
731
+ panel.collapsed = false;
732
+ if (undefined === panel.size || 0 === panel.size) {
733
+ // istanbul ignore next
734
+ panel.size = (_a = panel.minSize) !== null && _a !== void 0 ? _a : 200;
735
+ }
736
+ }
737
+ });
738
+ }
739
+ else if (widgetState === WidgetState_1.WidgetState.Closed) {
740
+ const id = widgetDef.id;
741
+ let location = (0, appui_layout_react_1.getTabLocation)(state, id);
742
+ if (!location) {
743
+ state = addHiddenWidget(state, widgetDef);
744
+ location = (0, appui_layout_react_1.getTabLocation)(state, id);
745
+ }
746
+ // TODO: should change activeTabId of a widget with multiple tabs.
747
+ return (0, immer_1.default)(state, (draft) => {
748
+ (0, core_bentley_1.assert)(!!location);
749
+ const widget = draft.widgets[location.widgetId];
750
+ if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
751
+ if (id === widget.activeTabId) {
752
+ widget.minimized = true;
753
+ }
754
+ }
755
+ });
756
+ }
757
+ else if (widgetState === WidgetState_1.WidgetState.Floating) {
758
+ const id = widgetDef.id;
759
+ let location = (0, appui_layout_react_1.getTabLocation)(state, id);
760
+ if (!location) {
761
+ state = addHiddenWidget(state, widgetDef);
762
+ location = (0, appui_layout_react_1.getTabLocation)(state, id);
763
+ }
764
+ (0, core_bentley_1.assert)(!!location);
765
+ if ((0, appui_layout_react_1.isFloatingTabLocation)(location))
766
+ return state;
767
+ // Widget is not floating.
768
+ state = (0, appui_layout_react_1.removeTabFromWidget)(state, id);
769
+ const bounds = (_b = (_a = widgetDef.tabLocation) === null || _a === void 0 ? void 0 : _a.floatingWidget) === null || _b === void 0 ? void 0 : _b.bounds;
770
+ state = (0, appui_layout_react_1.addFloatingWidget)(state, (0, appui_layout_react_1.getUniqueId)(), [id], { bounds });
771
+ }
772
+ return state;
773
+ }
774
+ exports.setWidgetState = setWidgetState;
775
+ /** Stores widget location and hides it in the UI. */
776
+ function hideWidget(state, widgetDef) {
777
+ const location = (0, appui_layout_react_1.getTabLocation)(state, widgetDef.id);
778
+ if (!location)
779
+ return state;
780
+ // istanbul ignore else
781
+ if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
782
+ const floatingWidget = state.floatingWidgets.byId[location.widgetId];
783
+ widgetDef.setFloatingContainerId(location.floatingWidgetId);
784
+ widgetDef.tabLocation = {
785
+ side: floatingWidget.home.side,
786
+ tabIndex: floatingWidget.home.widgetIndex,
787
+ widgetId: floatingWidget.id,
788
+ widgetIndex: floatingWidget.home.widgetIndex,
789
+ floatingWidget,
790
+ };
791
+ }
792
+ else if (!(0, appui_layout_react_1.isPopoutTabLocation)(location)) {
793
+ const widgetId = location.widgetId;
794
+ const side = (0, appui_layout_react_1.isPanelTabLocation)(location) ? location.side : "left";
795
+ const widgetIndex = (0, appui_layout_react_1.isPanelTabLocation)(location) ? state.panels[side].widgets.indexOf(widgetId) : 0;
796
+ const tabIndex = state.widgets[location.widgetId].tabs.indexOf(widgetDef.id);
797
+ widgetDef.tabLocation = {
798
+ side,
799
+ tabIndex,
800
+ widgetId,
801
+ widgetIndex,
802
+ };
803
+ }
804
+ return (0, appui_layout_react_1.removeTabFromWidget)(state, widgetDef.id);
805
+ }
806
+ /** @internal */
807
+ function showWidget(state, id) {
808
+ const location = (0, appui_layout_react_1.getTabLocation)(state, id);
809
+ if (!location)
810
+ return state;
811
+ state = (0, immer_1.default)(state, (draft) => {
812
+ const widget = draft.widgets[location.widgetId];
813
+ widget.activeTabId = id;
814
+ widget.minimized = false;
815
+ if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
816
+ const panel = draft.panels[location.side];
817
+ panel.collapsed = false;
818
+ }
819
+ });
820
+ if ((0, appui_layout_react_1.isFloatingTabLocation)(location)) {
821
+ state = (0, appui_layout_react_1.floatingWidgetBringToFront)(state, location.floatingWidgetId);
822
+ }
823
+ return state;
824
+ }
825
+ exports.showWidget = showWidget;
826
+ /** @internal */
827
+ function expandWidget(state, id) {
828
+ const location = (0, appui_layout_react_1.getTabLocation)(state, id);
829
+ if (!location)
830
+ return state;
831
+ return (0, immer_1.default)(state, (draft) => {
832
+ const widget = draft.widgets[location.widgetId];
833
+ if ((0, appui_layout_react_1.isPanelTabLocation)(location)) {
834
+ const panel = draft.panels[location.side];
835
+ panel.splitterPercent =
836
+ panel.widgets.findIndex((wId) => wId === location.widgetId) === 0 ?
837
+ 100 : 0;
838
+ }
839
+ widget.minimized = false;
840
+ });
841
+ }
842
+ exports.expandWidget = expandWidget;
843
+ /** @internal */
844
+ function setWidgetLabel(state, id, label) {
845
+ if (!(id in state.tabs))
846
+ return state;
847
+ return (0, immer_1.default)(state, (draft) => {
848
+ const tab = draft.tabs[id];
849
+ tab.label = label;
850
+ });
851
+ }
852
+ exports.setWidgetLabel = setWidgetLabel;
853
+ /** @internal */
854
+ function useSavedFrontstageState(frontstageDef) {
855
+ const uiStateStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
856
+ const uiStateStorageRef = React.useRef(uiStateStorage);
857
+ const isMountedRef = React.useRef(false);
858
+ React.useEffect(() => {
859
+ isMountedRef.current = true;
860
+ return () => { isMountedRef.current = false; };
861
+ }, []);
862
+ React.useEffect(() => {
863
+ uiStateStorageRef.current = uiStateStorage;
864
+ }, [uiStateStorage]);
865
+ React.useEffect(() => {
866
+ async function fetchFrontstageState() {
867
+ if (frontstageDef.nineZoneState) {
868
+ frontstageDef.nineZoneState = processPopoutWidgets(frontstageDef.nineZoneState, frontstageDef);
869
+ return;
870
+ }
871
+ const id = frontstageDef.id;
872
+ const version = frontstageDef.version;
873
+ const settingResult = await uiStateStorageRef.current.getSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id));
874
+ if (!isMountedRef.current)
875
+ return;
876
+ if (isFrontstageStateSettingResult(settingResult)) {
877
+ const setting = settingResult.setting;
878
+ if (setting.version >= version && setting.stateVersion >= stateVersion) {
879
+ const restored = restoreNineZoneState(frontstageDef, setting.nineZone);
880
+ frontstageDef.savedWidgetDefs = setting.widgets;
881
+ restoreSavedWidgets(frontstageDef);
882
+ let state = addMissingWidgets(frontstageDef, restored);
883
+ state = hideWidgets(state, frontstageDef);
884
+ state = processPopoutWidgets(state, frontstageDef);
885
+ frontstageDef.nineZoneState = state;
886
+ return;
887
+ }
888
+ }
889
+ frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
890
+ }
891
+ void fetchFrontstageState();
892
+ }, [frontstageDef]);
893
+ }
894
+ exports.useSavedFrontstageState = useSavedFrontstageState;
895
+ /** @internal */
896
+ function useSaveFrontstageSettings(frontstageDef, store) {
897
+ const uiSettingsStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
898
+ const saveSetting = React.useMemo(() => {
899
+ const debounced = debounce(async (frontstage, state) => {
900
+ const id = frontstage.id;
901
+ const widgets = packSavedWidgets(frontstage);
902
+ frontstage.savedWidgetDefs = widgets;
903
+ const setting = {
904
+ id,
905
+ version: frontstage.version,
906
+ stateVersion,
907
+ nineZone: packNineZoneState(state),
908
+ widgets,
909
+ };
910
+ await uiSettingsStorage.saveSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(id), setting);
911
+ }, 1000);
912
+ const save = (frontstage, state) => {
913
+ if (state.draggedTab)
914
+ return;
915
+ debounced(frontstage, state);
916
+ };
917
+ save.cancel = debounced.cancel;
918
+ return save;
919
+ }, [uiSettingsStorage]);
920
+ React.useEffect(() => {
921
+ return () => {
922
+ saveSetting.cancel();
923
+ };
924
+ }, [saveSetting]);
925
+ React.useEffect(() => {
926
+ saveSetting(frontstageDef, store.getState());
927
+ }, [saveSetting, frontstageDef, store]);
928
+ React.useEffect(() => {
929
+ return store.subscribe(() => {
930
+ saveSetting(frontstageDef, store.getState());
931
+ });
932
+ }, [saveSetting, frontstageDef, store]);
933
+ }
934
+ exports.useSaveFrontstageSettings = useSaveFrontstageSettings;
935
+ /** @internal */
936
+ exports.FRONTSTAGE_SETTINGS_NAMESPACE = "uifw-frontstageSettings";
937
+ /** @internal */
938
+ function getFrontstageStateSettingName(frontstageId) {
939
+ return `frontstageState[${frontstageId}]`;
940
+ }
941
+ exports.getFrontstageStateSettingName = getFrontstageStateSettingName;
942
+ // istanbul ignore next
943
+ function debounce(func, duration) {
944
+ let timeout;
945
+ const debounced = (...args) => {
946
+ const handler = () => {
947
+ timeout = undefined;
948
+ return func(...args);
949
+ };
950
+ window.clearTimeout(timeout);
951
+ timeout = window.setTimeout(handler, duration);
952
+ };
953
+ debounced.cancel = () => {
954
+ window.clearTimeout(timeout);
955
+ };
956
+ return debounced;
957
+ }
958
+ const createListener = (frontstageDef, listener) => {
959
+ return (...args) => {
960
+ if (!frontstageDef.nineZoneState)
961
+ return;
962
+ listener(...args);
963
+ };
964
+ };
965
+ /** @internal */
966
+ function useFrontstageManager(frontstageDef, useToolAsToolSettingsLabel) {
967
+ React.useEffect(() => {
968
+ const listener = createListener(frontstageDef, ({ widgetDef, widgetState }) => {
969
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
970
+ frontstageDef.nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, widgetState);
971
+ });
972
+ UiFramework_1.UiFramework.frontstages.onWidgetStateChangedEvent.addListener(listener);
973
+ return () => {
974
+ UiFramework_1.UiFramework.frontstages.onWidgetStateChangedEvent.removeListener(listener);
975
+ };
976
+ }, [frontstageDef]);
977
+ React.useEffect(() => {
978
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
979
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
980
+ const nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, WidgetState_1.WidgetState.Open);
981
+ frontstageDef.nineZoneState = showWidget(nineZoneState, widgetDef.id);
982
+ });
983
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetShowEvent.addListener(listener);
984
+ return () => {
985
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetShowEvent.removeListener(listener);
986
+ };
987
+ }, [frontstageDef]);
988
+ React.useEffect(() => {
989
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
990
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
991
+ let nineZoneState = setWidgetState(frontstageDef.nineZoneState, widgetDef, WidgetState_1.WidgetState.Open);
992
+ nineZoneState = showWidget(nineZoneState, widgetDef.id);
993
+ nineZoneState = expandWidget(nineZoneState, widgetDef.id);
994
+ frontstageDef.nineZoneState = nineZoneState;
995
+ });
996
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetExpandEvent.addListener(listener);
997
+ return () => {
998
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetExpandEvent.removeListener(listener);
999
+ };
1000
+ }, [frontstageDef]);
1001
+ const uiSettingsStorage = (0, useUiStateStorage_1.useUiStateStorageHandler)();
1002
+ React.useEffect(() => {
1003
+ const listener = (args) => {
1004
+ // TODO: track restoring frontstages to support workflows: i.e. prevent loading frontstage OR saving layout when delete is pending
1005
+ void uiSettingsStorage.deleteSetting(exports.FRONTSTAGE_SETTINGS_NAMESPACE, getFrontstageStateSettingName(args.frontstageDef.id));
1006
+ if (frontstageDef.id === args.frontstageDef.id) {
1007
+ args.frontstageDef.nineZoneState = initializeNineZoneState(frontstageDef);
1008
+ }
1009
+ else {
1010
+ args.frontstageDef.nineZoneState = undefined;
1011
+ }
1012
+ };
1013
+ InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(listener);
1014
+ return () => {
1015
+ InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(listener);
1016
+ };
1017
+ }, [uiSettingsStorage, frontstageDef]);
1018
+ React.useEffect(() => {
1019
+ const listener = createListener(frontstageDef, ({ widgetDef }) => {
1020
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1021
+ const label = widgetDef.label;
1022
+ frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, widgetDef.id, label);
1023
+ });
1024
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetLabelChangedEvent.addListener(listener);
1025
+ return () => {
1026
+ InternalFrontstageManager_1.InternalFrontstageManager.onWidgetLabelChangedEvent.removeListener(listener);
1027
+ };
1028
+ }, [frontstageDef]);
1029
+ const defaultLabel = React.useMemo(() => UiFramework_1.UiFramework.translate("widget.labels.toolSettings"), []);
1030
+ React.useEffect(() => {
1031
+ const updateLabel = createListener(frontstageDef, () => {
1032
+ var _a;
1033
+ const toolId = UiFramework_1.UiFramework.frontstages.activeToolId;
1034
+ (0, core_bentley_1.assert)(!!frontstageDef.nineZoneState);
1035
+ const label = useToolAsToolSettingsLabel ?
1036
+ ((_a = core_frontend_1.IModelApp.tools.find(toolId)) === null || _a === void 0 ? void 0 : _a.flyover) || defaultLabel : defaultLabel;
1037
+ frontstageDef.nineZoneState = setWidgetLabel(frontstageDef.nineZoneState, appui_layout_react_1.toolSettingsTabId, label);
1038
+ });
1039
+ // Whenever the frontstageDef or the useTool... changes, keep the label up to date.
1040
+ updateLabel();
1041
+ // If useTool... is true, listen for events to keep up the label up to date.
1042
+ if (useToolAsToolSettingsLabel) {
1043
+ UiFramework_1.UiFramework.frontstages.onFrontstageReadyEvent.addListener(updateLabel);
1044
+ InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.addListener(updateLabel);
1045
+ UiFramework_1.UiFramework.frontstages.onToolActivatedEvent.addListener(updateLabel);
1046
+ UiFramework_1.UiFramework.frontstages.onToolSettingsReloadEvent.addListener(updateLabel);
1047
+ }
1048
+ return () => {
1049
+ if (useToolAsToolSettingsLabel) {
1050
+ UiFramework_1.UiFramework.frontstages.onFrontstageReadyEvent.removeListener(updateLabel);
1051
+ InternalFrontstageManager_1.InternalFrontstageManager.onFrontstageRestoreLayoutEvent.removeListener(updateLabel);
1052
+ UiFramework_1.UiFramework.frontstages.onToolActivatedEvent.removeListener(updateLabel);
1053
+ UiFramework_1.UiFramework.frontstages.onToolSettingsReloadEvent.removeListener(updateLabel);
1054
+ }
1055
+ };
1056
+ }, [frontstageDef, useToolAsToolSettingsLabel, defaultLabel]);
1057
+ }
1058
+ exports.useFrontstageManager = useFrontstageManager;
1059
+ /** @internal */
1060
+ // istanbul ignore next
1061
+ function useItemsManager(frontstageDef) {
1062
+ const refreshNineZoneState = (def) => {
1063
+ // Fired for both registered/unregistered. Update definitions and remove/add missing widgets.
1064
+ def.updateWidgetDefs();
1065
+ restoreSavedWidgets(def);
1066
+ let state = def.nineZoneState;
1067
+ if (!state)
1068
+ return;
1069
+ state = addMissingWidgets(def, state);
1070
+ state = removeMissingWidgets(def, state);
1071
+ state = hideWidgets(state, def); // TODO: should only apply to widgets provided by registered provider in onUiProviderRegisteredEvent.
1072
+ def.nineZoneState = state;
1073
+ };
1074
+ React.useEffect(() => {
1075
+ const remove = UiItemsManager_1.UiItemsManager.onUiProviderRegisteredEvent.addListener(() => {
1076
+ refreshNineZoneState(frontstageDef);
1077
+ });
1078
+ // Need to refresh anytime frontstageDef changes because uiItemsProvider may have added something to
1079
+ // another stage before it was possibly unloaded in this stage.
1080
+ refreshNineZoneState(frontstageDef);
1081
+ return remove;
1082
+ }, [frontstageDef]);
1083
+ }
1084
+ exports.useItemsManager = useItemsManager;
1085
+ // istanbul ignore next
1086
+ function determineNewWidgets(defs, state) {
1087
+ defs = defs || [];
1088
+ const uniqueDefs = defs.filter((def, index, array) => {
1089
+ return index === array.findIndex((def1) => def.id === def1.id);
1090
+ });
1091
+ return uniqueDefs.filter((def) => !(def.id in state.tabs));
1092
+ }
1090
1093
  //# sourceMappingURL=Frontstage.js.map