@itwin/appui-react 4.12.0 → 4.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1009) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +4 -1
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +13 -14
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/UiFramework.json +1 -1
  7. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/Calculator.js +3 -1
  9. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  11. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  13. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  15. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  16. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  17. package/lib/cjs/appui-react/backstage/BackstageComposer.js +2 -1
  18. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  19. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
  20. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  21. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  22. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  23. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  24. package/lib/cjs/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  25. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  26. package/lib/cjs/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +11 -5
  27. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  28. package/lib/{esm/appui-react/childwindow/PopoutWidget.scss → cjs/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  29. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  30. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  31. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  32. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  33. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  34. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  35. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  36. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  37. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +5 -18
  38. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  39. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  40. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  41. package/lib/cjs/appui-react/content/ContentControl.d.ts +2 -0
  42. package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
  43. package/lib/cjs/appui-react/content/ContentControl.js +1 -0
  44. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  45. package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -0
  46. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  47. package/lib/cjs/appui-react/content/ContentLayout.js +14 -14
  48. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  49. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  50. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  51. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts +2 -2
  52. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/content/FloatingViewportContent.js +2 -3
  54. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  55. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  56. package/lib/cjs/appui-react/content/IModelViewport.js +7 -8
  57. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  58. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  59. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  60. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts +5 -5
  61. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  62. package/lib/cjs/appui-react/content/InternalContentViewManager.js +5 -7
  63. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  64. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
  65. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  66. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +2 -0
  67. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  68. package/lib/cjs/appui-react/cursor/CursorInformation.js +2 -0
  69. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  70. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  71. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  72. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  73. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  74. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  75. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  76. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  77. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  78. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +4 -24
  79. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  80. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  81. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  82. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  83. package/lib/cjs/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  84. package/lib/cjs/appui-react/dialog/ContentDialog.js +8 -7
  85. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  86. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  87. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  88. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +6 -3
  89. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  90. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  91. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  92. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +1 -2
  93. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  94. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  95. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  96. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js +2 -2
  97. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  98. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  99. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  100. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +1 -2
  101. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  102. package/lib/cjs/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  103. package/lib/cjs/appui-react/dialog/ModelessDialog.js +3 -1
  104. package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
  105. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  106. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  107. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  108. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -0
  109. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  110. package/lib/cjs/appui-react/feedback/ElementTooltip.js +6 -2
  111. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  112. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +5 -0
  113. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  114. package/lib/cjs/appui-react/framework/FrameworkContent.js +4 -0
  115. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  116. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  117. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  118. package/lib/cjs/appui-react/framework/FrameworkDialogs.js +4 -0
  119. package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
  120. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  121. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js +8 -0
  123. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  124. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  125. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  126. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js +1 -0
  127. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  128. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  129. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +23 -23
  130. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  131. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  132. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  133. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +45 -50
  134. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  135. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  136. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +7 -5
  137. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  138. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  139. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  140. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  141. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +1 -0
  142. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  143. package/lib/cjs/appui-react/hooks/useActiveStageId.js +2 -1
  144. package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
  145. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  146. package/lib/cjs/appui-react/hooks/useActiveViewport.js +2 -0
  147. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  148. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  149. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  150. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  151. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  152. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  153. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  154. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  155. package/lib/cjs/appui-react/hooks/useUiVisibility.js +1 -0
  156. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  157. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  158. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  159. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  160. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  161. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  163. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  164. package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
  165. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  166. package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
  167. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  168. package/lib/cjs/appui-react/layout/footer/_variables.scss +0 -2
  169. package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
  170. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  171. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
  172. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  173. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  174. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  175. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  176. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  177. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  178. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  179. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  180. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  181. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
  182. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  183. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +2 -2
  184. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  185. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +3 -13
  186. package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +2 -2
  187. package/lib/cjs/appui-react/layout/tool-settings/Setting.js +1 -1
  188. package/lib/cjs/appui-react/layout/tool-settings/Setting.js.map +1 -1
  189. package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -2
  190. package/lib/cjs/appui-react/layout/widget/Button.d.ts +3 -2
  191. package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
  192. package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
  193. package/lib/cjs/appui-react/layout/widget/ContentContainer.js +1 -1
  194. package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
  195. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +3 -3
  196. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  197. package/lib/cjs/appui-react/layout/widget/ContentManager.js +7 -1
  198. package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
  199. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
  200. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  201. package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
  202. package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
  203. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
  204. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  205. package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
  206. package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
  207. package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
  208. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  209. package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
  210. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  211. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  212. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  213. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
  214. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  215. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  216. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  217. package/lib/cjs/appui-react/messages/InputField.js +2 -1
  218. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  219. package/lib/cjs/appui-react/messages/MessageManager.d.ts +12 -0
  220. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  221. package/lib/cjs/appui-react/messages/MessageManager.js +18 -10
  222. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  223. package/lib/cjs/appui-react/messages/MessageRenderer.js +7 -8
  224. package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -1
  225. package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -0
  226. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  227. package/lib/cjs/appui-react/messages/Pointer.js +7 -9
  228. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  229. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  230. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  231. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +1 -0
  232. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  233. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  234. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  235. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  236. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  237. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  238. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  239. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  240. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  241. package/lib/cjs/appui-react/pickers/ListPicker.js +3 -1
  242. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  243. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +2 -0
  244. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  245. package/lib/cjs/appui-react/pickers/ViewSelector.js +8 -13
  246. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  247. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  248. package/lib/cjs/appui-react/popup/CardPopup.js +2 -3
  249. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  250. package/lib/cjs/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  251. package/lib/cjs/appui-react/popup/ComponentPopup.js +1 -1
  252. package/lib/cjs/appui-react/popup/ComponentPopup.js.map +1 -1
  253. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  254. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  255. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  256. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  257. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  258. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +7 -4
  259. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  260. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  261. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
  262. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  263. package/lib/cjs/appui-react/popup/PopupManager.d.ts +5 -1
  264. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  265. package/lib/cjs/appui-react/popup/PopupManager.js +24 -24
  266. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  267. package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
  268. package/lib/cjs/appui-react/popup/PositionPopup.js +1 -0
  269. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  270. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  271. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  272. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  273. package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -3
  274. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  275. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +7 -0
  276. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  277. package/lib/cjs/appui-react/preview/PreviewFeatures.js +2 -1
  278. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  279. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  280. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  281. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  282. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  283. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  284. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  285. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  286. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  287. package/lib/cjs/appui-react/preview/new-toolbars/Item.js +1 -1
  288. package/lib/cjs/appui-react/preview/new-toolbars/Item.js.map +1 -1
  289. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  290. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  291. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  292. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  293. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  294. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  295. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  296. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +40 -0
  297. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  298. package/lib/{esm/appui-react/layout/footer/message-center/_variables.scss → cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  299. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  300. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  301. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +25 -0
  302. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  303. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  304. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  305. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +26 -0
  306. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  307. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  308. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  309. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +45 -0
  310. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  311. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  312. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  313. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  314. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +28 -0
  315. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  316. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  317. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  318. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +18 -0
  319. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  320. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  321. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  322. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  323. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  324. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  325. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +8 -3
  326. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  327. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  328. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +1 -0
  329. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  330. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
  331. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  332. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +15 -25
  333. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  334. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  335. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  336. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -3
  337. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  338. package/lib/cjs/appui-react/statusbar/StatusBar.js +21 -13
  339. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  340. package/lib/cjs/appui-react/statusbar/StatusBar.scss +18 -0
  341. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  342. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -0
  343. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  344. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  345. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +3 -1
  346. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  347. package/lib/cjs/appui-react/statusfields/SelectionScope.js +1 -1
  348. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  349. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +2 -2
  350. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  351. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  352. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js +91 -0
  353. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  354. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  355. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  356. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  357. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js +28 -0
  358. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  359. package/lib/{esm/appui-react/layout/footer/message-center/Message.scss → cjs/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  360. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  361. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +12 -6
  362. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  363. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  364. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  365. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  366. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  367. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  368. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  369. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  370. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  371. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  372. package/lib/cjs/appui-react/syncui/UiSyncEvent.js +2 -0
  373. package/lib/cjs/appui-react/syncui/UiSyncEvent.js.map +1 -1
  374. package/lib/cjs/appui-react/theme/ThemeManager.js +2 -2
  375. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  376. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  377. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  378. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  379. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +2 -1
  380. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  381. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +7 -5
  382. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  383. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  384. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  385. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +10 -17
  386. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  387. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  388. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  389. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  390. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  391. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  392. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  393. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js +2 -1
  394. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  395. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  396. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  397. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  398. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  399. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -4
  400. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  401. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  402. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  403. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  404. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  405. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  406. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  407. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  408. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  409. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  410. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +7 -9
  411. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  412. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  413. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  414. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  415. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  416. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  417. package/lib/cjs/appui-react/uistate/AppUiSettings.js +1 -0
  418. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  419. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  420. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
  421. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  422. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  423. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  424. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  425. package/lib/cjs/appui-react/widget-panels/Content.js +11 -10
  426. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  427. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts +13 -0
  428. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  429. package/lib/cjs/appui-react/widget-panels/DockedBar.js +18 -0
  430. package/lib/cjs/appui-react/widget-panels/DockedBar.js.map +1 -0
  431. package/lib/cjs/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  432. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  433. package/lib/cjs/appui-react/widget-panels/Frontstage.js +15 -18
  434. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  435. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  436. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  437. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts +0 -1
  438. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  439. package/lib/cjs/appui-react/widget-panels/StatusBar.js +2 -5
  440. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  441. package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
  442. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  443. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  444. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  445. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +28 -53
  446. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  447. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +4 -27
  448. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  449. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  450. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  451. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -1
  452. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  453. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  455. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  456. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  457. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  458. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  459. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -0
  460. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  461. package/lib/cjs/appui-react/widgets/WidgetDef.js +10 -11
  462. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  463. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  464. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  465. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +1 -6
  466. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  467. package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -8
  468. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  469. package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
  470. package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
  471. package/lib/cjs/appui-react.d.ts +1 -1
  472. package/lib/cjs/appui-react.d.ts.map +1 -1
  473. package/lib/cjs/appui-react.js +1 -1
  474. package/lib/cjs/appui-react.js.map +1 -1
  475. package/lib/esm/appui-react/UiFramework.d.ts +4 -1
  476. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  477. package/lib/esm/appui-react/UiFramework.js +13 -14
  478. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  479. package/lib/esm/appui-react/UiFramework.json +1 -1
  480. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  481. package/lib/esm/appui-react/accudraw/Calculator.js +3 -1
  482. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  483. package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  484. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  485. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  486. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  487. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  488. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  489. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  490. package/lib/esm/appui-react/backstage/BackstageComposer.js +2 -1
  491. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  492. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
  493. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  494. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  495. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  496. package/lib/esm/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  497. package/lib/esm/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  498. package/lib/esm/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  499. package/lib/esm/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +9 -3
  500. package/lib/esm/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  501. package/lib/{cjs/appui-react/childwindow/PopoutWidget.scss → esm/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  502. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  503. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  504. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  505. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  506. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  507. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  508. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  509. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  510. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +4 -15
  511. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  512. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  513. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  514. package/lib/esm/appui-react/content/ContentControl.d.ts +2 -0
  515. package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
  516. package/lib/esm/appui-react/content/ContentControl.js +1 -0
  517. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  518. package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -0
  519. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  520. package/lib/esm/appui-react/content/ContentLayout.js +14 -14
  521. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  522. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  523. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  524. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts +2 -2
  525. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  526. package/lib/esm/appui-react/content/FloatingViewportContent.js +2 -3
  527. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  528. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  529. package/lib/esm/appui-react/content/IModelViewport.js +7 -8
  530. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  531. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  532. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  533. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts +5 -5
  534. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  535. package/lib/esm/appui-react/content/InternalContentViewManager.js +6 -8
  536. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  537. package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
  538. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  539. package/lib/esm/appui-react/cursor/CursorInformation.d.ts +2 -0
  540. package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  541. package/lib/esm/appui-react/cursor/CursorInformation.js +2 -0
  542. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  543. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  544. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  545. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  546. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  547. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  548. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  549. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  550. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  551. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +5 -23
  552. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  553. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  554. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  555. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  556. package/lib/esm/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  557. package/lib/esm/appui-react/dialog/ContentDialog.js +8 -7
  558. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  559. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  560. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  561. package/lib/esm/appui-react/dialog/DialogManagerBase.js +6 -3
  562. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  563. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  564. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  565. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +2 -3
  566. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  567. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  568. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  569. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js +2 -2
  570. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  571. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  572. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  573. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +2 -3
  574. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  575. package/lib/esm/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  576. package/lib/esm/appui-react/dialog/ModelessDialog.js +3 -1
  577. package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
  578. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  579. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  580. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  581. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -0
  582. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  583. package/lib/esm/appui-react/feedback/ElementTooltip.js +6 -2
  584. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  585. package/lib/esm/appui-react/framework/FrameworkContent.d.ts +5 -0
  586. package/lib/esm/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  587. package/lib/esm/appui-react/framework/FrameworkContent.js +4 -0
  588. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  589. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  590. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  591. package/lib/esm/appui-react/framework/FrameworkDialogs.js +4 -0
  592. package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
  593. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  594. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  595. package/lib/esm/appui-react/framework/FrameworkFrontstages.js +8 -0
  596. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  597. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  598. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  599. package/lib/esm/appui-react/framework/FrameworkToolSettings.js +1 -0
  600. package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  601. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  602. package/lib/esm/appui-react/frontstage/FrontstageDef.js +23 -23
  603. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  604. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  605. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  606. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +46 -51
  607. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  608. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  609. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +7 -5
  610. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  611. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
  612. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  613. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  614. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +1 -0
  615. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  616. package/lib/esm/appui-react/hooks/useActiveStageId.js +2 -1
  617. package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
  618. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  619. package/lib/esm/appui-react/hooks/useActiveViewport.js +2 -0
  620. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  621. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  622. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  623. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  624. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  625. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  626. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  627. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  628. package/lib/esm/appui-react/hooks/useUiVisibility.js +1 -0
  629. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  630. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  631. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  632. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  633. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  634. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  635. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  636. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  637. package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
  638. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  639. package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
  640. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  641. package/lib/esm/appui-react/layout/footer/_variables.scss +0 -2
  642. package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
  643. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  644. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
  645. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  646. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +12 -14
  647. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  648. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  649. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  650. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  651. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  652. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  653. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  654. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
  655. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  656. package/lib/esm/appui-react/layout/tool-settings/Docked.js +2 -2
  657. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  658. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +3 -13
  659. package/lib/esm/appui-react/layout/tool-settings/Handle.scss +2 -2
  660. package/lib/esm/appui-react/layout/tool-settings/Setting.js +1 -1
  661. package/lib/esm/appui-react/layout/tool-settings/Setting.js.map +1 -1
  662. package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -2
  663. package/lib/esm/appui-react/layout/widget/Button.d.ts +3 -2
  664. package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
  665. package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
  666. package/lib/esm/appui-react/layout/widget/ContentContainer.js +1 -1
  667. package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
  668. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +3 -3
  669. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  670. package/lib/esm/appui-react/layout/widget/ContentManager.js +7 -1
  671. package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
  672. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
  673. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  674. package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
  675. package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
  676. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
  677. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  678. package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
  679. package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
  680. package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
  681. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  682. package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
  683. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  684. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  685. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  686. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
  687. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  688. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  689. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  690. package/lib/esm/appui-react/messages/InputField.js +2 -1
  691. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  692. package/lib/esm/appui-react/messages/MessageManager.d.ts +12 -0
  693. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  694. package/lib/esm/appui-react/messages/MessageManager.js +18 -10
  695. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  696. package/lib/esm/appui-react/messages/MessageRenderer.js +7 -8
  697. package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -1
  698. package/lib/esm/appui-react/messages/Pointer.d.ts +2 -0
  699. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  700. package/lib/esm/appui-react/messages/Pointer.js +7 -9
  701. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  702. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  703. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  704. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -0
  705. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  706. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  707. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  708. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  709. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  710. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  711. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  712. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  713. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  714. package/lib/esm/appui-react/pickers/ListPicker.js +3 -1
  715. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  716. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +2 -0
  717. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  718. package/lib/esm/appui-react/pickers/ViewSelector.js +9 -14
  719. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  720. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  721. package/lib/esm/appui-react/popup/CardPopup.js +2 -3
  722. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  723. package/lib/esm/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  724. package/lib/esm/appui-react/popup/ComponentPopup.js +1 -1
  725. package/lib/esm/appui-react/popup/ComponentPopup.js.map +1 -1
  726. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  727. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  728. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  729. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  730. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  731. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +7 -4
  732. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  733. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  734. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
  735. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  736. package/lib/esm/appui-react/popup/PopupManager.d.ts +5 -1
  737. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  738. package/lib/esm/appui-react/popup/PopupManager.js +24 -24
  739. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  740. package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
  741. package/lib/esm/appui-react/popup/PositionPopup.js +1 -0
  742. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  743. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  744. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  745. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  746. package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -3
  747. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  748. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +7 -0
  749. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  750. package/lib/esm/appui-react/preview/PreviewFeatures.js +2 -1
  751. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  752. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  753. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  754. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  755. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  756. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  757. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  758. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  759. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  760. package/lib/esm/appui-react/preview/new-toolbars/Item.js +1 -1
  761. package/lib/esm/appui-react/preview/new-toolbars/Item.js.map +1 -1
  762. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  763. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  764. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  765. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  766. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  767. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  768. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  769. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +36 -0
  770. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  771. package/lib/{cjs/appui-react/layout/footer/message-center/_variables.scss → esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  772. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  773. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  774. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +21 -0
  775. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  776. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  777. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  778. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +22 -0
  779. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  780. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  781. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  782. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +41 -0
  783. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  784. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  785. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  786. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  787. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +25 -0
  788. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  789. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  790. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  791. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +14 -0
  792. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  793. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  794. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  795. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  796. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  797. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  798. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +8 -3
  799. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  800. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  801. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +1 -0
  802. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  803. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +3 -3
  804. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  805. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +14 -23
  806. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  807. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  808. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  809. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -3
  810. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  811. package/lib/esm/appui-react/statusbar/StatusBar.js +21 -13
  812. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  813. package/lib/esm/appui-react/statusbar/StatusBar.scss +18 -0
  814. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  815. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -0
  816. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  817. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  818. package/lib/esm/appui-react/statusfields/ActivityCenter.js +3 -1
  819. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  820. package/lib/esm/appui-react/statusfields/SelectionScope.js +2 -2
  821. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  822. package/lib/esm/appui-react/statusfields/SelectionScope.scss +2 -2
  823. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  824. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  825. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js +87 -0
  826. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  827. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  828. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  829. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  830. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js +24 -0
  831. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  832. package/lib/{cjs/appui-react/layout/footer/message-center/Message.scss → esm/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  833. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  834. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -7
  835. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  836. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  837. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  838. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  839. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  840. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  841. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  842. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  843. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  844. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  845. package/lib/esm/appui-react/syncui/UiSyncEvent.js +2 -0
  846. package/lib/esm/appui-react/syncui/UiSyncEvent.js.map +1 -1
  847. package/lib/esm/appui-react/theme/ThemeManager.js +2 -2
  848. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  849. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  850. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  851. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  852. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +3 -2
  853. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  854. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +7 -5
  855. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  856. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  857. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  858. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +10 -17
  859. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  860. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  861. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  862. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  863. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  864. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  865. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  866. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js +2 -1
  867. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  868. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  869. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  870. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  871. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  872. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -3
  873. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  874. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  875. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  876. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  877. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  878. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  879. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  880. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  881. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  882. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  883. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +7 -9
  884. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  885. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  886. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  887. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  888. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  889. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  890. package/lib/esm/appui-react/uistate/AppUiSettings.js +1 -0
  891. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  892. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  893. package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
  894. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  895. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  896. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  897. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  898. package/lib/esm/appui-react/widget-panels/Content.js +11 -10
  899. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  900. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts +13 -0
  901. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  902. package/lib/esm/appui-react/widget-panels/DockedBar.js +14 -0
  903. package/lib/esm/appui-react/widget-panels/DockedBar.js.map +1 -0
  904. package/lib/esm/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  905. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  906. package/lib/esm/appui-react/widget-panels/Frontstage.js +15 -18
  907. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  908. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  909. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  910. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts +0 -1
  911. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  912. package/lib/esm/appui-react/widget-panels/StatusBar.js +2 -5
  913. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  914. package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
  915. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  916. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  917. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  918. package/lib/esm/appui-react/widget-panels/ToolSettings.js +27 -51
  919. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  920. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +4 -27
  921. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  922. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  923. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  924. package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -1
  925. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  926. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  927. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  928. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  929. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  930. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  931. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  932. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -0
  933. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  934. package/lib/esm/appui-react/widgets/WidgetDef.js +10 -11
  935. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  936. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  937. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  938. package/lib/esm/appui-react/widgets/WidgetManager.d.ts +1 -6
  939. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  940. package/lib/esm/appui-react/widgets/WidgetManager.js +1 -6
  941. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  942. package/lib/esm/appui-react/widgets/useWidget.js +1 -1
  943. package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
  944. package/lib/esm/appui-react.d.ts +1 -1
  945. package/lib/esm/appui-react.d.ts.map +1 -1
  946. package/lib/esm/appui-react.js +1 -1
  947. package/lib/esm/appui-react.js.map +1 -1
  948. package/lib/public/locales/en/UiFramework.json +1 -1
  949. package/package.json +12 -37
  950. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  951. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +0 -1
  952. package/lib/cjs/appui-react/layout/footer/Footer.d.ts +0 -33
  953. package/lib/cjs/appui-react/layout/footer/Footer.d.ts.map +0 -1
  954. package/lib/cjs/appui-react/layout/footer/Footer.js +0 -30
  955. package/lib/cjs/appui-react/layout/footer/Footer.js.map +0 -1
  956. package/lib/cjs/appui-react/layout/footer/Footer.scss +0 -61
  957. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  958. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  959. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js +0 -32
  960. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  961. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  962. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  963. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  964. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js +0 -33
  965. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  966. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  967. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  968. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  969. package/lib/cjs/appui-react/layout/footer/message-center/Message.js +0 -26
  970. package/lib/cjs/appui-react/layout/footer/message-center/Message.js.map +0 -1
  971. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  972. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  973. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js +0 -26
  974. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  975. package/lib/cjs/appui-react/layout/footer/message-center/Tab.scss +0 -60
  976. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +0 -46
  977. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  978. package/lib/cjs/appui-react/statusfields/MessageCenter.js +0 -132
  979. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +0 -1
  980. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  981. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +0 -1
  982. package/lib/esm/appui-react/layout/footer/Footer.d.ts +0 -33
  983. package/lib/esm/appui-react/layout/footer/Footer.d.ts.map +0 -1
  984. package/lib/esm/appui-react/layout/footer/Footer.js +0 -26
  985. package/lib/esm/appui-react/layout/footer/Footer.js.map +0 -1
  986. package/lib/esm/appui-react/layout/footer/Footer.scss +0 -61
  987. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  988. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  989. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js +0 -28
  990. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  991. package/lib/esm/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  992. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  993. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  994. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js +0 -29
  995. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  996. package/lib/esm/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  997. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  998. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  999. package/lib/esm/appui-react/layout/footer/message-center/Message.js +0 -22
  1000. package/lib/esm/appui-react/layout/footer/message-center/Message.js.map +0 -1
  1001. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  1002. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  1003. package/lib/esm/appui-react/layout/footer/message-center/Tab.js +0 -22
  1004. package/lib/esm/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  1005. package/lib/esm/appui-react/layout/footer/message-center/Tab.scss +0 -60
  1006. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +0 -46
  1007. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  1008. package/lib/esm/appui-react/statusfields/MessageCenter.js +0 -128
  1009. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +0 -1
@@ -14,6 +14,7 @@ import type { ProviderItem } from "./ProviderItem";
14
14
  import type { UiItemsProvider } from "./UiItemsProvider";
15
15
  /** UiItemsProvider register event args.
16
16
  * @public
17
+ * @deprecated in 4.13.x. Event args are inferred from a listener. If explicit type is needed use a type helper.
17
18
  */
18
19
  export interface UiItemsProviderRegisteredEventArgs {
19
20
  providerId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"UiItemsManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/UiItemsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiItemsManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/UiItemsManager.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ class UiItemsManager {
31
31
  UiItemsManager._registeredUiItemsProviders.clear();
32
32
  }
33
33
  /** Event raised any time a UiProvider is registered or unregistered. */
34
+ // eslint-disable-next-line deprecation/deprecation
34
35
  static get onUiProviderRegisteredEvent() {
35
36
  if (this._abstractAdapter)
36
37
  return this._abstractAdapter.onUiProviderRegisteredEvent;
@@ -54,11 +55,11 @@ class UiItemsManager {
54
55
  * @param providerId id of the UiItemsProvider to get
55
56
  */
56
57
  static getUiItemsProvider(providerId) {
57
- var _a;
58
58
  if (this._abstractAdapter)
59
59
  return this._abstractAdapter.getUiItemsProvider(providerId);
60
- return (_a = UiItemsManager._registeredUiItemsProviders.get(providerId)) === null || _a === void 0 ? void 0 : _a.provider;
60
+ return UiItemsManager._registeredUiItemsProviders.get(providerId)?.provider;
61
61
  }
62
+ // eslint-disable-next-line deprecation/deprecation
62
63
  static sendRegisteredEvent(args) {
63
64
  UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(args);
64
65
  }
@@ -68,10 +69,9 @@ class UiItemsManager {
68
69
  * @param overrides the UI items provider to register.
69
70
  */
70
71
  static register(uiProvider, overrides) {
71
- var _a;
72
72
  if (this._abstractAdapter)
73
73
  return this._abstractAdapter.register(uiProvider, overrides);
74
- const providerId = (_a = overrides === null || overrides === void 0 ? void 0 : overrides.providerId) !== null && _a !== void 0 ? _a : uiProvider.id;
74
+ const providerId = overrides?.providerId ?? uiProvider.id;
75
75
  if (UiItemsManager.getUiItemsProvider(providerId)) {
76
76
  Logger.logInfo(UiFramework.loggerCategory(this), `UiItemsProvider (${providerId}) is already loaded`);
77
77
  }
@@ -101,11 +101,11 @@ class UiItemsManager {
101
101
  // istanbul ignore else
102
102
  const overrides = entry.overrides;
103
103
  if (undefined !== stageId &&
104
- (overrides === null || overrides === void 0 ? void 0 : overrides.stageIds) &&
104
+ overrides?.stageIds &&
105
105
  !overrides.stageIds.some((value) => value === stageId))
106
106
  return false;
107
107
  if (undefined !== stageUsage &&
108
- (overrides === null || overrides === void 0 ? void 0 : overrides.stageUsages) &&
108
+ overrides?.stageUsages &&
109
109
  !overrides.stageUsages.some((value) => value === stageUsage))
110
110
  return false;
111
111
  return true;
@@ -124,11 +124,10 @@ class UiItemsManager {
124
124
  }
125
125
  const items = [];
126
126
  UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
127
- var _a, _b;
128
127
  if (!this.allowItemsFromProvider(entry, stageId, stageUsage))
129
128
  return;
130
129
  const uiProvider = entry.provider;
131
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
130
+ const providerId = entry.overrides?.providerId ?? uiProvider.id;
132
131
  const provider = createGetPropertyAdapter(uiProvider);
133
132
  const providerItems = provider
134
133
  .provideToolbarItems(stageId, stageUsage, usage, orientation)
@@ -151,11 +150,10 @@ class UiItemsManager {
151
150
  }
152
151
  const items = [];
153
152
  UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
154
- var _a, _b;
155
153
  if (!this.allowItemsFromProvider(entry, stageId, stageUsage))
156
154
  return;
157
155
  const uiProvider = entry.provider;
158
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
156
+ const providerId = entry.overrides?.providerId ?? uiProvider.id;
159
157
  const provider = createGetPropertyAdapter(uiProvider);
160
158
  const providerItems = provider
161
159
  .provideStatusBarItems(stageId, stageUsage)
@@ -176,9 +174,8 @@ class UiItemsManager {
176
174
  }
177
175
  const items = [];
178
176
  UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
179
- var _a, _b;
180
177
  const uiProvider = entry.provider;
181
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
178
+ const providerId = entry.overrides?.providerId ?? uiProvider.id;
182
179
  const provider = createGetPropertyAdapter(uiProvider);
183
180
  // Note: We do not call this.allowItemsFromProvider here as backstage items
184
181
  // should not be considered stage specific.
@@ -204,9 +201,8 @@ class UiItemsManager {
204
201
  items.push(...abstractWidgets);
205
202
  }
206
203
  UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
207
- var _a, _b;
208
204
  const uiProvider = entry.provider;
209
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
205
+ const providerId = entry.overrides?.providerId ?? uiProvider.id;
210
206
  if (!this.allowItemsFromProvider(entry, stageId, stageUsage))
211
207
  return;
212
208
  const provider = createGetPropertyAdapter(uiProvider);
@@ -222,7 +218,7 @@ class UiItemsManager {
222
218
  }
223
219
  }
224
220
  UiItemsManager._registeredUiItemsProviders = new Map();
225
- UiItemsManager._onUiProviderRegisteredEvent = new BeUiEvent();
221
+ UiItemsManager._onUiProviderRegisteredEvent = new BeUiEvent(); // eslint-disable-line deprecation/deprecation
226
222
  UiItemsManager._abstractAdapter = createAbstractUiItemsManagerAdapter();
227
223
  export { UiItemsManager };
228
224
  function getUniqueItems(items) {
@@ -1 +1 @@
1
- {"version":3,"file":"UiItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/UiItemsManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module UiProvider\n */\n\nimport type { MarkRequired } from \"@itwin/core-bentley\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport type { BackstageItem } from \"../backstage/BackstageItem\";\nimport type { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport type { StagePanelSection } from \"../stagepanels/StagePanelSection\";\nimport type { StatusBarItem } from \"../statusbar/StatusBarItem\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport type { ToolbarOrientation, ToolbarUsage } from \"../toolbar/ToolbarItem\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { Widget } from \"../widgets/Widget\";\nimport type { ProviderItem } from \"./ProviderItem\";\nimport type { UiItemsProvider } from \"./UiItemsProvider\";\nimport {\n createAbstractUiItemsManagerAdapter,\n createGetPropertyAdapter,\n} from \"./AbstractUiItemsManager\";\n\n/** UiItemsProvider register event args.\n * @public\n */\nexport interface UiItemsProviderRegisteredEventArgs {\n providerId: string;\n}\n\n/** UiItemsProvider overrides allows the application that registers a provider to limit when it is allowed to provide items\n * @public\n */\nexport interface AllowedUiItemsProviderOverrides {\n /** allows providerId to be overridden in the items manager for cases where the same provider needs to provide different content to different stages */\n providerId?: string;\n /** if specified then the current stage's Usage will be compared before allowing any items to be provided */\n stageUsages?: string[];\n /** if specified then the current stage's Id will be compared before allowing any items to be provided */\n stageIds?: string[];\n}\n\n/** Allowed overrides applied to a UiItemsProvider the application that registers a provider to limit when it is allowed to provide items.\n * Note that if an override `providerId` is specified then either `stageIds` or `stageUsages` must be defined to limit when the provider's\n * items are allowed.\n * @public\n */\nexport type UiItemsProviderOverrides =\n | MarkRequired<AllowedUiItemsProviderOverrides, \"providerId\" | \"stageUsages\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"providerId\" | \"stageIds\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"stageIds\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"stageUsages\">\n | MarkRequired<\n AllowedUiItemsProviderOverrides,\n \"providerId\" | \"stageUsages\" | \"stageIds\"\n >;\n\n/** Interface that defines an instance of a UiItemsProvider and its application specified overrides. */\ninterface UiItemProviderEntry {\n provider: UiItemsProvider;\n overrides?: UiItemsProviderOverrides;\n}\n\n/** Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.\n * @public\n */\nexport class UiItemsManager {\n private static _registeredUiItemsProviders: Map<string, UiItemProviderEntry> =\n new Map<string, UiItemProviderEntry>();\n private static _onUiProviderRegisteredEvent =\n new BeUiEvent<UiItemsProviderRegisteredEventArgs>();\n private static _abstractAdapter = createAbstractUiItemsManagerAdapter();\n\n /** For use in unit testing\n * @internal\n */\n public static useAbstractAdapter(useAbstractAdapter: boolean) {\n if (useAbstractAdapter) {\n this._abstractAdapter = createAbstractUiItemsManagerAdapter();\n } else {\n this._abstractAdapter = undefined;\n }\n }\n\n /** For use in unit testing\n * @internal */\n public static clearAllProviders() {\n if (this._abstractAdapter) return this._abstractAdapter.clearAllProviders();\n\n UiItemsManager._registeredUiItemsProviders.clear();\n }\n\n /** Event raised any time a UiProvider is registered or unregistered. */\n public static get onUiProviderRegisteredEvent(): BeUiEvent<UiItemsProviderRegisteredEventArgs> {\n if (this._abstractAdapter)\n return this._abstractAdapter.onUiProviderRegisteredEvent;\n\n return this._onUiProviderRegisteredEvent;\n }\n\n /** Return number of registered UiProvider. */\n public static get registeredProviderIds(): string[] {\n if (this._abstractAdapter)\n return this._abstractAdapter.registeredProviderIds;\n\n const ids = [...UiItemsManager._registeredUiItemsProviders.keys()];\n return ids;\n }\n\n /** Return true if there is any registered UiProvider. */\n public static get hasRegisteredProviders(): boolean {\n if (this._abstractAdapter)\n return this._abstractAdapter.hasRegisteredProviders;\n\n return this._registeredUiItemsProviders.size > 0;\n }\n\n /**\n * Retrieves a previously loaded UiItemsProvider.\n * @param providerId id of the UiItemsProvider to get\n */\n public static getUiItemsProvider(\n providerId: string\n ): UiItemsProvider | undefined {\n if (this._abstractAdapter)\n return this._abstractAdapter.getUiItemsProvider(providerId);\n\n return UiItemsManager._registeredUiItemsProviders.get(providerId)?.provider;\n }\n\n private static sendRegisteredEvent(args: UiItemsProviderRegisteredEventArgs) {\n UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(args);\n }\n\n /**\n * Registers a UiItemsProvider with the UiItemsManager.\n * @param uiProvider the UI items provider to register.\n * @param overrides the UI items provider to register.\n */\n public static register(\n uiProvider: UiItemsProvider,\n overrides?: UiItemsProviderOverrides\n ): void {\n if (this._abstractAdapter)\n return this._abstractAdapter.register(uiProvider, overrides);\n\n const providerId = overrides?.providerId ?? uiProvider.id;\n\n if (UiItemsManager.getUiItemsProvider(providerId)) {\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider (${providerId}) is already loaded`\n );\n } else {\n UiItemsManager._registeredUiItemsProviders.set(providerId, {\n provider: uiProvider,\n overrides,\n });\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider ${uiProvider.id} registered as ${providerId} `\n );\n\n UiItemsManager.sendRegisteredEvent({ providerId });\n }\n }\n\n /** Remove a specific UiItemsProvider from the list of available providers. */\n public static unregister(providerId: string): void {\n if (this._abstractAdapter)\n return this._abstractAdapter.unregister(providerId);\n\n const provider = UiItemsManager.getUiItemsProvider(providerId);\n if (!provider) return;\n\n provider.onUnregister && provider.onUnregister();\n\n UiItemsManager._registeredUiItemsProviders.delete(providerId);\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider (${providerId}) unloaded`\n );\n\n // trigger a refresh of the ui\n UiItemsManager.sendRegisteredEvent({ providerId });\n }\n\n private static allowItemsFromProvider(\n entry: UiItemProviderEntry,\n stageId?: string,\n stageUsage?: string\n ) {\n // istanbul ignore else\n const overrides = entry.overrides;\n if (\n undefined !== stageId &&\n overrides?.stageIds &&\n !overrides.stageIds.some((value: string) => value === stageId)\n )\n return false;\n if (\n undefined !== stageUsage &&\n overrides?.stageUsages &&\n !overrides.stageUsages.some((value: string) => value === stageUsage)\n )\n return false;\n return true;\n }\n\n /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute\n * an action or specify a registered ToolId into toolbar.\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @param usage usage of the toolbar\n * @param orientation orientation of the toolbar\n * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.\n */\n public static getToolbarButtonItems(\n stageId: string,\n stageUsage: string,\n usage: ToolbarUsage,\n orientation: ToolbarOrientation\n ): ReadonlyArray<ProviderItem<ToolbarItem>> {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getToolbarButtonItems(\n stageId,\n stageUsage,\n usage,\n orientation\n );\n }\n\n const items: ProviderItem<ToolbarItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n const providerItems = provider\n .provideToolbarItems(stageId, stageUsage, usage, orientation)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.\n */\n public static getStatusBarItems(\n stageId: string,\n stageUsage: string\n ): ReadonlyArray<ProviderItem<StatusBarItem>> {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getStatusBarItems(stageId, stageUsage);\n }\n\n const items: ProviderItem<StatusBarItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n\n const providerItems = provider\n .provideStatusBarItems(stageId, stageUsage)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields\n * @returns An array of BackstageItem that will be used to create controls for the backstage menu.\n */\n public static getBackstageItems(): ReadonlyArray<\n ProviderItem<BackstageItem>\n > {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getBackstageItems();\n }\n\n const items: ProviderItem<BackstageItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n // Note: We do not call this.allowItemsFromProvider here as backstage items\n // should not be considered stage specific.\n const providerItems = provider.provideBackstageItems().map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @param location the location within the stage.\n * @param section the section within location.\n * @returns An array of widgets.\n */\n public static getWidgets(\n stageId: string,\n stageUsage: string,\n location: StagePanelLocation,\n section?: StagePanelSection\n ): ReadonlyArray<ProviderItem<Widget>> {\n const items: ProviderItem<Widget>[] = [];\n if (this._abstractAdapter) {\n const abstractWidgets = this._abstractAdapter.getWidgets(\n stageId,\n stageUsage,\n location,\n section\n );\n items.push(...abstractWidgets);\n }\n\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const provider = createGetPropertyAdapter(uiProvider);\n const providerItems = provider\n .provideWidgets(stageId, stageUsage, location, section)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n}\n\nfunction getUniqueItems<T extends { id: string }>(items: readonly T[]) {\n const uniqueItems: T[] = [];\n items.forEach((item) => {\n if (uniqueItems.find((existingItem) => item.id === existingItem.id)) return;\n uniqueItems.push(item);\n });\n return uniqueItems;\n}\n"]}
1
+ {"version":3,"file":"UiItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/UiItemsManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module UiProvider\n */\n\nimport type { MarkRequired } from \"@itwin/core-bentley\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport type { BackstageItem } from \"../backstage/BackstageItem\";\nimport type { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport type { StagePanelSection } from \"../stagepanels/StagePanelSection\";\nimport type { StatusBarItem } from \"../statusbar/StatusBarItem\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport type { ToolbarOrientation, ToolbarUsage } from \"../toolbar/ToolbarItem\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { Widget } from \"../widgets/Widget\";\nimport type { ProviderItem } from \"./ProviderItem\";\nimport type { UiItemsProvider } from \"./UiItemsProvider\";\nimport {\n createAbstractUiItemsManagerAdapter,\n createGetPropertyAdapter,\n} from \"./AbstractUiItemsManager\";\n\n/** UiItemsProvider register event args.\n * @public\n * @deprecated in 4.13.x. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface UiItemsProviderRegisteredEventArgs {\n providerId: string;\n}\n\n/** UiItemsProvider overrides allows the application that registers a provider to limit when it is allowed to provide items\n * @public\n */\nexport interface AllowedUiItemsProviderOverrides {\n /** allows providerId to be overridden in the items manager for cases where the same provider needs to provide different content to different stages */\n providerId?: string;\n /** if specified then the current stage's Usage will be compared before allowing any items to be provided */\n stageUsages?: string[];\n /** if specified then the current stage's Id will be compared before allowing any items to be provided */\n stageIds?: string[];\n}\n\n/** Allowed overrides applied to a UiItemsProvider the application that registers a provider to limit when it is allowed to provide items.\n * Note that if an override `providerId` is specified then either `stageIds` or `stageUsages` must be defined to limit when the provider's\n * items are allowed.\n * @public\n */\nexport type UiItemsProviderOverrides =\n | MarkRequired<AllowedUiItemsProviderOverrides, \"providerId\" | \"stageUsages\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"providerId\" | \"stageIds\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"stageIds\">\n | MarkRequired<AllowedUiItemsProviderOverrides, \"stageUsages\">\n | MarkRequired<\n AllowedUiItemsProviderOverrides,\n \"providerId\" | \"stageUsages\" | \"stageIds\"\n >;\n\n/** Interface that defines an instance of a UiItemsProvider and its application specified overrides. */\ninterface UiItemProviderEntry {\n provider: UiItemsProvider;\n overrides?: UiItemsProviderOverrides;\n}\n\n/** Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.\n * @public\n */\nexport class UiItemsManager {\n private static _registeredUiItemsProviders: Map<string, UiItemProviderEntry> =\n new Map<string, UiItemProviderEntry>();\n private static _onUiProviderRegisteredEvent =\n new BeUiEvent<UiItemsProviderRegisteredEventArgs>(); // eslint-disable-line deprecation/deprecation\n private static _abstractAdapter = createAbstractUiItemsManagerAdapter();\n\n /** For use in unit testing\n * @internal\n */\n public static useAbstractAdapter(useAbstractAdapter: boolean) {\n if (useAbstractAdapter) {\n this._abstractAdapter = createAbstractUiItemsManagerAdapter();\n } else {\n this._abstractAdapter = undefined;\n }\n }\n\n /** For use in unit testing\n * @internal */\n public static clearAllProviders() {\n if (this._abstractAdapter) return this._abstractAdapter.clearAllProviders();\n\n UiItemsManager._registeredUiItemsProviders.clear();\n }\n\n /** Event raised any time a UiProvider is registered or unregistered. */\n // eslint-disable-next-line deprecation/deprecation\n public static get onUiProviderRegisteredEvent(): BeUiEvent<UiItemsProviderRegisteredEventArgs> {\n if (this._abstractAdapter)\n return this._abstractAdapter.onUiProviderRegisteredEvent;\n\n return this._onUiProviderRegisteredEvent;\n }\n\n /** Return number of registered UiProvider. */\n public static get registeredProviderIds(): string[] {\n if (this._abstractAdapter)\n return this._abstractAdapter.registeredProviderIds;\n\n const ids = [...UiItemsManager._registeredUiItemsProviders.keys()];\n return ids;\n }\n\n /** Return true if there is any registered UiProvider. */\n public static get hasRegisteredProviders(): boolean {\n if (this._abstractAdapter)\n return this._abstractAdapter.hasRegisteredProviders;\n\n return this._registeredUiItemsProviders.size > 0;\n }\n\n /**\n * Retrieves a previously loaded UiItemsProvider.\n * @param providerId id of the UiItemsProvider to get\n */\n public static getUiItemsProvider(\n providerId: string\n ): UiItemsProvider | undefined {\n if (this._abstractAdapter)\n return this._abstractAdapter.getUiItemsProvider(providerId);\n\n return UiItemsManager._registeredUiItemsProviders.get(providerId)?.provider;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n private static sendRegisteredEvent(args: UiItemsProviderRegisteredEventArgs) {\n UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(args);\n }\n\n /**\n * Registers a UiItemsProvider with the UiItemsManager.\n * @param uiProvider the UI items provider to register.\n * @param overrides the UI items provider to register.\n */\n public static register(\n uiProvider: UiItemsProvider,\n overrides?: UiItemsProviderOverrides\n ): void {\n if (this._abstractAdapter)\n return this._abstractAdapter.register(uiProvider, overrides);\n\n const providerId = overrides?.providerId ?? uiProvider.id;\n\n if (UiItemsManager.getUiItemsProvider(providerId)) {\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider (${providerId}) is already loaded`\n );\n } else {\n UiItemsManager._registeredUiItemsProviders.set(providerId, {\n provider: uiProvider,\n overrides,\n });\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider ${uiProvider.id} registered as ${providerId} `\n );\n\n UiItemsManager.sendRegisteredEvent({ providerId });\n }\n }\n\n /** Remove a specific UiItemsProvider from the list of available providers. */\n public static unregister(providerId: string): void {\n if (this._abstractAdapter)\n return this._abstractAdapter.unregister(providerId);\n\n const provider = UiItemsManager.getUiItemsProvider(providerId);\n if (!provider) return;\n\n provider.onUnregister && provider.onUnregister();\n\n UiItemsManager._registeredUiItemsProviders.delete(providerId);\n Logger.logInfo(\n UiFramework.loggerCategory(this),\n `UiItemsProvider (${providerId}) unloaded`\n );\n\n // trigger a refresh of the ui\n UiItemsManager.sendRegisteredEvent({ providerId });\n }\n\n private static allowItemsFromProvider(\n entry: UiItemProviderEntry,\n stageId?: string,\n stageUsage?: string\n ) {\n // istanbul ignore else\n const overrides = entry.overrides;\n if (\n undefined !== stageId &&\n overrides?.stageIds &&\n !overrides.stageIds.some((value: string) => value === stageId)\n )\n return false;\n if (\n undefined !== stageUsage &&\n overrides?.stageUsages &&\n !overrides.stageUsages.some((value: string) => value === stageUsage)\n )\n return false;\n return true;\n }\n\n /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute\n * an action or specify a registered ToolId into toolbar.\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @param usage usage of the toolbar\n * @param orientation orientation of the toolbar\n * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.\n */\n public static getToolbarButtonItems(\n stageId: string,\n stageUsage: string,\n usage: ToolbarUsage,\n orientation: ToolbarOrientation\n ): ReadonlyArray<ProviderItem<ToolbarItem>> {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getToolbarButtonItems(\n stageId,\n stageUsage,\n usage,\n orientation\n );\n }\n\n const items: ProviderItem<ToolbarItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n const providerItems = provider\n .provideToolbarItems(stageId, stageUsage, usage, orientation)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.\n */\n public static getStatusBarItems(\n stageId: string,\n stageUsage: string\n ): ReadonlyArray<ProviderItem<StatusBarItem>> {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getStatusBarItems(stageId, stageUsage);\n }\n\n const items: ProviderItem<StatusBarItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n\n const providerItems = provider\n .provideStatusBarItems(stageId, stageUsage)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields\n * @returns An array of BackstageItem that will be used to create controls for the backstage menu.\n */\n public static getBackstageItems(): ReadonlyArray<\n ProviderItem<BackstageItem>\n > {\n if (this._abstractAdapter) {\n return this._abstractAdapter.getBackstageItems();\n }\n\n const items: ProviderItem<BackstageItem>[] = [];\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n const provider = createGetPropertyAdapter(uiProvider);\n // Note: We do not call this.allowItemsFromProvider here as backstage items\n // should not be considered stage specific.\n const providerItems = provider.provideBackstageItems().map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n\n /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets\n * @param stageId a string identifier of the active stage.\n * @param stageUsage the StageUsage of the active stage.\n * @param location the location within the stage.\n * @param section the section within location.\n * @returns An array of widgets.\n */\n public static getWidgets(\n stageId: string,\n stageUsage: string,\n location: StagePanelLocation,\n section?: StagePanelSection\n ): ReadonlyArray<ProviderItem<Widget>> {\n const items: ProviderItem<Widget>[] = [];\n if (this._abstractAdapter) {\n const abstractWidgets = this._abstractAdapter.getWidgets(\n stageId,\n stageUsage,\n location,\n section\n );\n items.push(...abstractWidgets);\n }\n\n UiItemsManager._registeredUiItemsProviders.forEach((entry) => {\n const uiProvider = entry.provider;\n const providerId = entry.overrides?.providerId ?? uiProvider.id;\n if (!this.allowItemsFromProvider(entry, stageId, stageUsage)) return;\n\n const provider = createGetPropertyAdapter(uiProvider);\n const providerItems = provider\n .provideWidgets(stageId, stageUsage, location, section)\n .map((item) => ({\n ...item,\n providerId,\n }));\n items.push(...providerItems);\n });\n\n return getUniqueItems(items);\n }\n}\n\nfunction getUniqueItems<T extends { id: string }>(items: readonly T[]) {\n const uniqueItems: T[] = [];\n items.forEach((item) => {\n if (uniqueItems.find((existingItem) => item.id === existingItem.id)) return;\n uniqueItems.push(item);\n });\n return uniqueItems;\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  /** @packageDocumentation
2
2
  * @module Admin
3
3
  */
4
- import type * as React from "react";
4
+ import * as React from "react";
5
5
  import type { XAndY } from "@itwin/core-geometry";
6
6
  import type { AbstractMenuItemProps, AbstractToolbarProps, DialogLayoutDataProvider, DialogProps, OnCancelFunc, OnItemExecutedFunc, OnNumberCommitFunc, OnValueCommitFunc, Primitives, PropertyDescription, PropertyRecord } from "@itwin/appui-abstract";
7
7
  import { RelativePosition, UiAdmin } from "@itwin/appui-abstract";
@@ -1 +1 @@
1
- {"version":3,"file":"FrameworkUiAdmin.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiadmin/FrameworkUiAdmin.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FrameworkUiAdmin.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiadmin/FrameworkUiAdmin.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EAEpB,wBAAwB,EACxB,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAIlE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAEL,sBAAsB,EACvB,MAAM,kBAAkB,CAAC;AAM1B;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,SAAQ,OAAO;IAC3C,OAAO,CAAC,yBAAyB,CACK;IAEtC;;OAEG;IACH,IAAW,wBAAwB,IAAI,sBAAsB,CAE5D;IAED,IAAW,wBAAwB,CAAC,UAAU,EAAE,sBAAsB,EAErE;IAED;;OAEG;IACH,IAAoB,cAAc,IAAI,KAAK,CAE1C;IAED;;OAEG;IACH,IAAoB,aAAa,IAAI,OAAO,CAE3C;IAED;;OAEG;IACa,cAAc,IAAI,IAAI;IAItC;;;;;;OAMG;IACa,eAAe,CAC7B,KAAK,EAAE,qBAAqB,EAAE,EAC9B,QAAQ,EAAE,KAAK,EACf,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAQV;;OAEG;IACI,SAAS,IAAI,UAAU,EAAE;IAKhC;;;;OAIG;IACa,gBAAgB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO;IASpE;;;OAGG;IACa,gBAAgB,IAAI,OAAO;IAM3C;;;;;;;;;;OAUG;IACa,WAAW,CACzB,YAAY,EAAE,oBAAoB,EAClC,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,KAAK,EACb,cAAc,EAAE,kBAAkB,EAClC,QAAQ,EAAE,YAAY,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAcV;;OAEG;IACa,WAAW,IAAI,OAAO;IAItC;;;;;;;OAOG;IACa,cAAc,CAC5B,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,qBAAqB,EAAE,EACvC,QAAQ,EAAE,KAAK,EACf,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IASV;;;;OAIG;IACa,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInD;;;;;;;;;OASG;IACa,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,KAAK,EACf,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAWV;;OAEG;IACa,cAAc,IAAI,OAAO;IAIzC;;;;;;;;OAQG;IACa,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAUV;;;;;;;;OAQG;IACa,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAWV;;;;;;;;OAQG;IACa,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAWV;;;;;;;;OAQG;IACa,eAAe,CAC7B,YAAY,EAAE,UAAU,CAAC,KAAK,EAC9B,mBAAmB,EAAE,mBAAmB,EACxC,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,YAAY,EACtB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO;IAWV,6BAA6B;IACb,eAAe,IAAI,OAAO;IAI1C;;;;;;;;;OASG;IACa,eAAe,CAC7B,cAAc,EAAE,WAAW,EAC3B,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,KAAK,EACb,QAAQ,EAAE,YAAY,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,aAAa,CAAC,EAAE,WAAW,GAC1B,OAAO;IAiBV;;;OAGG;IACa,eAAe,IAAI,OAAO;IAI1C;;;;;;;;;;;OAWG;IACa,QAAQ,CACtB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,EAC1C,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,KAAK,EACb,cAAc,EAAE,kBAAkB,EAClC,QAAQ,EAAE,YAAY,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,aAAa,CAAC,EAAE,WAAW,GAC1B,OAAO;IAiBV;;;;;;;;;;;OAWG;IACI,aAAa,CAClB,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,EAC1C,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,KAAK,EACb,cAAc,EAAE,kBAAkB,EAClC,QAAQ,EAAE,YAAY,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,aAAa,CAAC,EAAE,WAAW,GAC1B,OAAO;IAiBV;;SAEK;IACW,QAAQ,IAAI,OAAO;IAInC;;;;;;;;OAQG;IACa,qBAAqB,CACnC,YAAY,EAAE,wBAAwB,EACtC,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,KAAK,EACb,QAAQ,EAAE,YAAY,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,aAAa,CAAC,EAAE,WAAW,GAC1B,OAAO;IAYV,yCAAyC;IACzB,sBAAsB,IAAI,OAAO;IAIjD;;;;;;;OAOG;IACa,UAAU,CACxB,cAAc,EAAE,wBAAwB,EACxC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,MAAM,EACV,aAAa,CAAC,EAAE,WAAW,GAC1B,OAAO;IAUV,wCAAwC;IACxB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAGvD"}
@@ -5,6 +5,7 @@
5
5
  /** @packageDocumentation
6
6
  * @module Admin
7
7
  */
8
+ import * as React from "react";
8
9
  import { IModelApp } from "@itwin/core-frontend";
9
10
  import { RelativePosition, UiAdmin } from "@itwin/appui-abstract";
10
11
  import { CursorInformation } from "../cursor/CursorInformation";
@@ -222,7 +223,7 @@ export class FrameworkUiAdmin extends UiAdmin {
222
223
  * @deprecated in 4.11.x. Use {@link UiFramework.showComponent}
223
224
  */
224
225
  showHTMLElement(displayElement, location, offset, onCancel, relativePosition, anchorElement) {
225
- const el = anchorElement !== null && anchorElement !== void 0 ? anchorElement : UiFramework.controls.getWrapperElement();
226
+ const el = anchorElement ?? UiFramework.controls.getWrapperElement();
226
227
  // istanbul ignore if
227
228
  if (relativePosition === undefined)
228
229
  relativePosition = RelativePosition.TopRight;
@@ -249,7 +250,7 @@ export class FrameworkUiAdmin extends UiAdmin {
249
250
  */
250
251
  showCard(content, title, toolbarProps, location, offset, onItemExecuted, onCancel, relativePosition, anchorElement) {
251
252
  const placement = mapToPlacement(relativePosition);
252
- return UiFramework.showCard(content, title, toolbarProps
253
+ return UiFramework.showCard(React.createElement(CardRenderer, { content: content }), title, toolbarProps
253
254
  ? AbstractToolbarPropsToToolbarProps(toolbarProps)
254
255
  : { items: [] }, location, offset, onItemExecuted, onCancel, placement, anchorElement);
255
256
  }
@@ -323,4 +324,15 @@ function CommonToolbarItemToToolBarItem(item) {
323
324
  badge: item.badgeType,
324
325
  };
325
326
  }
327
+ function CardRenderer({ content }) {
328
+ const ref = React.useRef(null);
329
+ React.useEffect(() => {
330
+ const el = ref.current;
331
+ el?.appendChild(content);
332
+ return () => {
333
+ el?.removeChild(content);
334
+ };
335
+ }, [content]);
336
+ return React.createElement("div", { ref: ref });
337
+ }
326
338
  //# sourceMappingURL=FrameworkUiAdmin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrameworkUiAdmin.js","sourceRoot":"","sources":["../../../../src/appui-react/uiadmin/FrameworkUiAdmin.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Admin\n */\n\nimport type * as React from \"react\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type {\n AbstractMenuItemProps,\n AbstractToolbarProps,\n CommonToolbarItem,\n DialogLayoutDataProvider,\n DialogProps,\n OnCancelFunc,\n OnItemExecutedFunc,\n OnNumberCommitFunc,\n OnValueCommitFunc,\n Primitives,\n PropertyDescription,\n PropertyRecord,\n} from \"@itwin/appui-abstract\";\nimport { RelativePosition, UiAdmin } from \"@itwin/appui-abstract\";\nimport { CursorInformation } from \"../cursor/CursorInformation\";\nimport { PopupManager } from \"../popup/PopupManager\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { KeyinEntry } from \"../keyins/Keyins\";\nimport {\n getKeyinsFromToolList,\n KeyinFieldLocalization,\n} from \"../keyins/Keyins\";\nimport { mapToPlacement } from \"../utils/Placement\";\nimport type { ToolbarProps } from \"../toolbar/Toolbar\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport type { CursorMenuItemProps } from \"../shared/MenuItem\";\n\n/** Subclass of `UiAdmin` in `@itwin/core-frontend` to be used to initialize `IModelApp`.\n *\n * This implementation uses themed react components that blends in AppUI look and feel.\n *\n * ```ts\n * await IModelApp.startup({\n * uiAdmin: new FrameworkUiAdmin()\n * });\n * ```\n * @public\n */\nexport class FrameworkUiAdmin extends UiAdmin {\n private _localizedKeyinPreference: KeyinFieldLocalization =\n KeyinFieldLocalization.NonLocalized;\n\n /**\n * @deprecated in 4.11.x. Gathering and filtering of keyins is now left up to the user.\n */\n public get localizedKeyinPreference(): KeyinFieldLocalization {\n return this._localizedKeyinPreference;\n }\n\n public set localizedKeyinPreference(preference: KeyinFieldLocalization) {\n this._localizedKeyinPreference = preference;\n }\n\n /** Gets the cursor X and Y position, which is mouseEvent.pageX and mouseEvent.pageY.\n * @deprecated in 4.11.x. Please use {@link CursorInformation.cursorPosition}\n */\n public override get cursorPosition(): XAndY {\n return CursorInformation.cursorPosition;\n }\n\n /** Determines if focus is set to Home\n * @deprecated in 4.11.x. Please use {@link UiFramework.keyboardShortcuts().isFocusOnHome}\n */\n public override get isFocusOnHome(): boolean {\n return UiFramework.keyboardShortcuts.isFocusOnHome;\n }\n\n /** Sets focus to Home\n * @deprecated in 4.11.x. Please use {@link UiFramework.keyboardShortcuts().setFocusToHome}\n */\n public override setFocusToHome(): void {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }\n\n /** Show a context menu at a particular location.\n * @param items Properties of the menu items to display.\n * @param location Location of the context menu, relative to the origin of htmlElement or the overall window.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.openContextMenu}\n */\n public override showContextMenu(\n items: AbstractMenuItemProps[],\n location: XAndY,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.openContextMenu(\n items as CursorMenuItemProps[],\n location,\n htmlElement\n );\n }\n\n /**\n * @deprecated in 4.11.x. Construct your own {@link KeyinEntry[]} via {@link @itwin/core-frontend#IModelApp.tools.getToolList}.\n */\n public getKeyins(): KeyinEntry[] {\n const tools = IModelApp.tools.getToolList();\n return getKeyinsFromToolList(tools);\n }\n\n /** Show the Key-in Palette to display key-in from all registered Tools.\n * @param htmlElement The HTMLElement that anchors the Popup. If undefined, the location is relative to the overall window.\n * @return true if the Command Palette was displayed, false if it could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showKeyinPalette}. Please note, the use of feature flags to control whether the KeyinPalette can be opened has been deprecated.\n */\n public override showKeyinPalette(htmlElement?: HTMLElement): boolean {\n if (!this.featureFlags.allowKeyinPalette) return false;\n\n const tools = IModelApp.tools.getToolList();\n const keyIns = getKeyinsFromToolList(tools);\n\n return UiFramework.showKeyinPalette(keyIns, htmlElement);\n }\n\n /**\n * Hides the Key-in Palette.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideKeyinPalette}\n */\n public override hideKeyinPalette(): boolean {\n if (!this.featureFlags.allowKeyinPalette) return false;\n\n return UiFramework.hideKeyinPalette();\n }\n\n /** Show a Toolbar at a particular location.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Toolbar, relative to the origin of htmlElement or the overall window.\n * @param offset Offset of the Toolbar from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n * @deprecated in 4.11.x. Please use {@link UiFramework.showToolbar}.\n */\n public override showToolbar(\n toolbarProps: AbstractToolbarProps,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n htmlElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n\n return UiFramework.showToolbar(\n toolbarProps,\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n htmlElement\n );\n }\n\n /** Hides the toolbar.\n * @deprecated in 4.11.x. Please use {@link UiFramework.hideToolbar}.\n */\n public override hideToolbar(): boolean {\n return UiFramework.hideToolbar();\n }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param id Id of the menu button. Multiple menu buttons may be displayed.\n * @param menuItemsProps Properties of the menu items to display.\n * @param location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Please use {@link UiFramework.showMenuButton}.\n */\n public override showMenuButton(\n id: string,\n menuItemsProps: AbstractMenuItemProps[],\n location: XAndY,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showMenuButton(\n id,\n menuItemsProps as CursorMenuItemProps[],\n location,\n htmlElement\n );\n }\n\n /** Hides a menu button.\n * @param id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n * @deprecated in 4.11.x. Please use {@link UiFramework.hideMenuButton}.\n */\n public override hideMenuButton(id: string): boolean {\n return UiFramework.hideMenuButton(id);\n }\n\n /** Show a calculator at a particular location.\n * @param initialValue Value initially displayed in the calculator.\n * @param resultIcon Icon displayed to the left of the value.\n * @param location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param onOk Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showCalculator}.\n */\n public override showCalculator(\n initialValue: number,\n resultIcon: string,\n location: XAndY,\n onOk: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showCalculator(\n initialValue,\n resultIcon,\n location,\n onOk,\n onCancel,\n htmlElement\n );\n }\n\n /** Hides the calculator.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideCalculator}.\n */\n public override hideCalculator(): boolean {\n return UiFramework.hideCalculator();\n }\n\n /** Show an input editor for an angle value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showAngleEditor}.\n */\n public override showAngleEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showAngleEditor(\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showDimensionEditor(\"length\")}.\n */\n public override showLengthEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showDimensionEditor(\n \"length\",\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showDimensionEditor(\"height\")}.\n */\n public override showHeightEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showDimensionEditor(\n \"height\",\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param propertyDescription Description of the primitive value property\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public override showInputEditor(\n initialValue: Primitives.Value,\n propertyDescription: PropertyDescription,\n location: XAndY,\n onCommit: OnValueCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showInputEditor({\n initialValue,\n propertyDescription,\n location,\n onCommit,\n onCancel,\n anchorElement: htmlElement,\n });\n }\n\n /** Hides the input editor.*/\n public override hideInputEditor(): boolean {\n return UiFramework.hideInputEditor();\n }\n\n /** Show an HTML element at a particular location.\n * @param displayElement The HTMLElement to display\n * @param location Location of the display element, relative to the origin of htmlElement or the window\n * @param offset Offset of the display element from the location\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showComponent}\n */\n public override showHTMLElement(\n displayElement: HTMLElement,\n location: XAndY,\n offset: XAndY,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const el = anchorElement ?? UiFramework.controls.getWrapperElement();\n\n // istanbul ignore if\n if (relativePosition === undefined)\n relativePosition = RelativePosition.TopRight;\n\n return PopupManager.showHTMLElement(\n displayElement,\n el,\n location,\n offset,\n onCancel,\n relativePosition\n );\n }\n\n /**\n * Hides the HTML Element.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideComponent}\n */\n public override hideHTMLElement(): boolean {\n return PopupManager.hideHTMLElement();\n }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param content The HTMLElement of the content to display\n * @param title Title to display at the top of the card.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Card, relative to the origin of htmlElement or the window.\n * @param offset Offset of the Card from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public override showCard(\n content: HTMLElement,\n title: string | PropertyRecord | undefined,\n toolbarProps: AbstractToolbarProps | undefined,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.showCard(\n content,\n title,\n toolbarProps\n ? AbstractToolbarPropsToToolbarProps(toolbarProps)\n : { items: [] },\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /** Show a Card containing React-based content, a title and a toolbar at a particular location.\n * @param content The React node of the content to display\n * @param title Title to display at the top of the card.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Card, relative to the origin of htmlElement or the window.\n * @param offset Offset of the Card from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showReactCard(\n content: React.ReactNode,\n title: string | PropertyRecord | undefined,\n toolbarProps: AbstractToolbarProps | undefined,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.showCard(\n content,\n title,\n toolbarProps\n ? AbstractToolbarPropsToToolbarProps(toolbarProps)\n : { items: [] },\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /**\n * Hides the Card.\n * */\n public override hideCard(): boolean {\n return UiFramework.hideCard();\n }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param dataProvider The DialogLayoutDataProvider for the tool settings popup dialog.\n * @param location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param offset Offset of the tool settings from the location\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public override openToolSettingsPopup(\n dataProvider: DialogLayoutDataProvider,\n location: XAndY,\n offset: XAndY,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.openToolSettingsPopup(\n dataProvider,\n location,\n offset,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /** Closes the Tool Settings Ui popup. */\n public override closeToolSettingsPopup(): boolean {\n return UiFramework.closeToolSettingsPopup();\n }\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param uiDataProvider The UiDataProvider for the tool settings\n * @param title Specify title for dialog.\n * @param isModal Specify if the dialog is opened as a modal or modeless.\n * @param id Id of the dialog that is used to close it.\n * @param optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public override openDialog(\n uiDataProvider: DialogLayoutDataProvider,\n title: string,\n isModal: boolean,\n id: string,\n optionalProps?: DialogProps\n ): boolean {\n return UiFramework.openDialog(\n uiDataProvider,\n title,\n isModal,\n id,\n optionalProps\n );\n }\n\n /** Closes the Tool Settings Ui popup.*/\n public override closeDialog(dialogId: string): boolean {\n return UiFramework.closeDialog(dialogId);\n }\n}\n\n// utility functions to wean off appui-abstract\nfunction AbstractToolbarPropsToToolbarProps(\n props: AbstractToolbarProps\n): ToolbarProps {\n return {\n items: props.items.map(CommonToolbarItemToToolBarItem),\n itemId: props.toolbarId,\n };\n}\n\nfunction CommonToolbarItemToToolBarItem(item: CommonToolbarItem): ToolbarItem {\n return {\n ...item,\n badge: item.badgeType,\n };\n}\n"]}
1
+ {"version":3,"file":"FrameworkUiAdmin.js","sourceRoot":"","sources":["../../../../src/appui-react/uiadmin/FrameworkUiAdmin.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Admin\n */\n\nimport * as React from \"react\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type {\n AbstractMenuItemProps,\n AbstractToolbarProps,\n CommonToolbarItem,\n DialogLayoutDataProvider,\n DialogProps,\n OnCancelFunc,\n OnItemExecutedFunc,\n OnNumberCommitFunc,\n OnValueCommitFunc,\n Primitives,\n PropertyDescription,\n PropertyRecord,\n} from \"@itwin/appui-abstract\";\nimport { RelativePosition, UiAdmin } from \"@itwin/appui-abstract\";\nimport { CursorInformation } from \"../cursor/CursorInformation\";\nimport { PopupManager } from \"../popup/PopupManager\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { KeyinEntry } from \"../keyins/Keyins\";\nimport {\n getKeyinsFromToolList,\n KeyinFieldLocalization,\n} from \"../keyins/Keyins\";\nimport { mapToPlacement } from \"../utils/Placement\";\nimport type { ToolbarProps } from \"../toolbar/Toolbar\";\nimport type { ToolbarItem } from \"../toolbar/ToolbarItem\";\nimport type { CursorMenuItemProps } from \"../shared/MenuItem\";\n\n/** Subclass of `UiAdmin` in `@itwin/core-frontend` to be used to initialize `IModelApp`.\n *\n * This implementation uses themed react components that blends in AppUI look and feel.\n *\n * ```ts\n * await IModelApp.startup({\n * uiAdmin: new FrameworkUiAdmin()\n * });\n * ```\n * @public\n */\nexport class FrameworkUiAdmin extends UiAdmin {\n private _localizedKeyinPreference: KeyinFieldLocalization =\n KeyinFieldLocalization.NonLocalized;\n\n /**\n * @deprecated in 4.11.x. Gathering and filtering of keyins is now left up to the user.\n */\n public get localizedKeyinPreference(): KeyinFieldLocalization {\n return this._localizedKeyinPreference;\n }\n\n public set localizedKeyinPreference(preference: KeyinFieldLocalization) {\n this._localizedKeyinPreference = preference;\n }\n\n /** Gets the cursor X and Y position, which is mouseEvent.pageX and mouseEvent.pageY.\n * @deprecated in 4.11.x. Please use {@link CursorInformation.cursorPosition}\n */\n public override get cursorPosition(): XAndY {\n return CursorInformation.cursorPosition;\n }\n\n /** Determines if focus is set to Home\n * @deprecated in 4.11.x. Please use {@link UiFramework.keyboardShortcuts().isFocusOnHome}\n */\n public override get isFocusOnHome(): boolean {\n return UiFramework.keyboardShortcuts.isFocusOnHome;\n }\n\n /** Sets focus to Home\n * @deprecated in 4.11.x. Please use {@link UiFramework.keyboardShortcuts().setFocusToHome}\n */\n public override setFocusToHome(): void {\n UiFramework.keyboardShortcuts.setFocusToHome();\n }\n\n /** Show a context menu at a particular location.\n * @param items Properties of the menu items to display.\n * @param location Location of the context menu, relative to the origin of htmlElement or the overall window.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.openContextMenu}\n */\n public override showContextMenu(\n items: AbstractMenuItemProps[],\n location: XAndY,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.openContextMenu(\n items as CursorMenuItemProps[],\n location,\n htmlElement\n );\n }\n\n /**\n * @deprecated in 4.11.x. Construct your own {@link KeyinEntry[]} via {@link @itwin/core-frontend#IModelApp.tools.getToolList}.\n */\n public getKeyins(): KeyinEntry[] {\n const tools = IModelApp.tools.getToolList();\n return getKeyinsFromToolList(tools);\n }\n\n /** Show the Key-in Palette to display key-in from all registered Tools.\n * @param htmlElement The HTMLElement that anchors the Popup. If undefined, the location is relative to the overall window.\n * @return true if the Command Palette was displayed, false if it could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showKeyinPalette}. Please note, the use of feature flags to control whether the KeyinPalette can be opened has been deprecated.\n */\n public override showKeyinPalette(htmlElement?: HTMLElement): boolean {\n if (!this.featureFlags.allowKeyinPalette) return false;\n\n const tools = IModelApp.tools.getToolList();\n const keyIns = getKeyinsFromToolList(tools);\n\n return UiFramework.showKeyinPalette(keyIns, htmlElement);\n }\n\n /**\n * Hides the Key-in Palette.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideKeyinPalette}\n */\n public override hideKeyinPalette(): boolean {\n if (!this.featureFlags.allowKeyinPalette) return false;\n\n return UiFramework.hideKeyinPalette();\n }\n\n /** Show a Toolbar at a particular location.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Toolbar, relative to the origin of htmlElement or the overall window.\n * @param offset Offset of the Toolbar from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n * @deprecated in 4.11.x. Please use {@link UiFramework.showToolbar}.\n */\n public override showToolbar(\n toolbarProps: AbstractToolbarProps,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n htmlElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n\n return UiFramework.showToolbar(\n toolbarProps,\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n htmlElement\n );\n }\n\n /** Hides the toolbar.\n * @deprecated in 4.11.x. Please use {@link UiFramework.hideToolbar}.\n */\n public override hideToolbar(): boolean {\n return UiFramework.hideToolbar();\n }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param id Id of the menu button. Multiple menu buttons may be displayed.\n * @param menuItemsProps Properties of the menu items to display.\n * @param location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Please use {@link UiFramework.showMenuButton}.\n */\n public override showMenuButton(\n id: string,\n menuItemsProps: AbstractMenuItemProps[],\n location: XAndY,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showMenuButton(\n id,\n menuItemsProps as CursorMenuItemProps[],\n location,\n htmlElement\n );\n }\n\n /** Hides a menu button.\n * @param id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n * @deprecated in 4.11.x. Please use {@link UiFramework.hideMenuButton}.\n */\n public override hideMenuButton(id: string): boolean {\n return UiFramework.hideMenuButton(id);\n }\n\n /** Show a calculator at a particular location.\n * @param initialValue Value initially displayed in the calculator.\n * @param resultIcon Icon displayed to the left of the value.\n * @param location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param onOk Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showCalculator}.\n */\n public override showCalculator(\n initialValue: number,\n resultIcon: string,\n location: XAndY,\n onOk: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showCalculator(\n initialValue,\n resultIcon,\n location,\n onOk,\n onCancel,\n htmlElement\n );\n }\n\n /** Hides the calculator.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideCalculator}.\n */\n public override hideCalculator(): boolean {\n return UiFramework.hideCalculator();\n }\n\n /** Show an input editor for an angle value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showAngleEditor}.\n */\n public override showAngleEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showAngleEditor(\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showDimensionEditor(\"length\")}.\n */\n public override showLengthEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showDimensionEditor(\n \"length\",\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showDimensionEditor(\"height\")}.\n */\n public override showHeightEditor(\n initialValue: number,\n location: XAndY,\n onCommit: OnNumberCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showDimensionEditor(\n \"height\",\n initialValue,\n location,\n onCommit,\n onCancel,\n htmlElement\n );\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param initialValue Value initially displayed in the editor.\n * @param propertyDescription Description of the primitive value property\n * @param location Location of the editor, relative to the origin of htmlElement or the window.\n * @param onCommit Function called when the OK button or the Enter key is pressed.\n * @param onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public override showInputEditor(\n initialValue: Primitives.Value,\n propertyDescription: PropertyDescription,\n location: XAndY,\n onCommit: OnValueCommitFunc,\n onCancel: OnCancelFunc,\n htmlElement?: HTMLElement\n ): boolean {\n return UiFramework.showInputEditor({\n initialValue,\n propertyDescription,\n location,\n onCommit,\n onCancel,\n anchorElement: htmlElement,\n });\n }\n\n /** Hides the input editor.*/\n public override hideInputEditor(): boolean {\n return UiFramework.hideInputEditor();\n }\n\n /** Show an HTML element at a particular location.\n * @param displayElement The HTMLElement to display\n * @param location Location of the display element, relative to the origin of htmlElement or the window\n * @param offset Offset of the display element from the location\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n * @deprecated in 4.11.x. Use {@link UiFramework.showComponent}\n */\n public override showHTMLElement(\n displayElement: HTMLElement,\n location: XAndY,\n offset: XAndY,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const el = anchorElement ?? UiFramework.controls.getWrapperElement();\n\n // istanbul ignore if\n if (relativePosition === undefined)\n relativePosition = RelativePosition.TopRight;\n\n return PopupManager.showHTMLElement(\n displayElement,\n el,\n location,\n offset,\n onCancel,\n relativePosition\n );\n }\n\n /**\n * Hides the HTML Element.\n * @deprecated in 4.11.x. Use {@link UiFramework.hideComponent}\n */\n public override hideHTMLElement(): boolean {\n return PopupManager.hideHTMLElement();\n }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param content The HTMLElement of the content to display\n * @param title Title to display at the top of the card.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Card, relative to the origin of htmlElement or the window.\n * @param offset Offset of the Card from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public override showCard(\n content: HTMLElement,\n title: string | PropertyRecord | undefined,\n toolbarProps: AbstractToolbarProps | undefined,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.showCard(\n <CardRenderer content={content} />,\n title,\n toolbarProps\n ? AbstractToolbarPropsToToolbarProps(toolbarProps)\n : { items: [] },\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /** Show a Card containing React-based content, a title and a toolbar at a particular location.\n * @param content The React node of the content to display\n * @param title Title to display at the top of the card.\n * @param toolbarProps Properties of the Toolbar to display.\n * @param location Location of the Card, relative to the origin of htmlElement or the window.\n * @param offset Offset of the Card from the location.\n * @param onItemExecuted Function invoked after a Toolbar item is executed\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showReactCard(\n content: React.ReactNode,\n title: string | PropertyRecord | undefined,\n toolbarProps: AbstractToolbarProps | undefined,\n location: XAndY,\n offset: XAndY,\n onItemExecuted: OnItemExecutedFunc,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.showCard(\n content,\n title,\n toolbarProps\n ? AbstractToolbarPropsToToolbarProps(toolbarProps)\n : { items: [] },\n location,\n offset,\n onItemExecuted,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /**\n * Hides the Card.\n * */\n public override hideCard(): boolean {\n return UiFramework.hideCard();\n }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param dataProvider The DialogLayoutDataProvider for the tool settings popup dialog.\n * @param location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param offset Offset of the tool settings from the location\n * @param onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param relativePosition Position relative to the given location. Defaults to TopRight.\n * @param anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public override openToolSettingsPopup(\n dataProvider: DialogLayoutDataProvider,\n location: XAndY,\n offset: XAndY,\n onCancel: OnCancelFunc,\n relativePosition?: RelativePosition,\n anchorElement?: HTMLElement\n ): boolean {\n const placement = mapToPlacement(relativePosition);\n return UiFramework.openToolSettingsPopup(\n dataProvider,\n location,\n offset,\n onCancel,\n placement,\n anchorElement\n );\n }\n\n /** Closes the Tool Settings Ui popup. */\n public override closeToolSettingsPopup(): boolean {\n return UiFramework.closeToolSettingsPopup();\n }\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param uiDataProvider The UiDataProvider for the tool settings\n * @param title Specify title for dialog.\n * @param isModal Specify if the dialog is opened as a modal or modeless.\n * @param id Id of the dialog that is used to close it.\n * @param optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public override openDialog(\n uiDataProvider: DialogLayoutDataProvider,\n title: string,\n isModal: boolean,\n id: string,\n optionalProps?: DialogProps\n ): boolean {\n return UiFramework.openDialog(\n uiDataProvider,\n title,\n isModal,\n id,\n optionalProps\n );\n }\n\n /** Closes the Tool Settings Ui popup.*/\n public override closeDialog(dialogId: string): boolean {\n return UiFramework.closeDialog(dialogId);\n }\n}\n\n// utility functions to wean off appui-abstract\nfunction AbstractToolbarPropsToToolbarProps(\n props: AbstractToolbarProps\n): ToolbarProps {\n return {\n items: props.items.map(CommonToolbarItemToToolBarItem),\n itemId: props.toolbarId,\n };\n}\n\nfunction CommonToolbarItemToToolBarItem(item: CommonToolbarItem): ToolbarItem {\n return {\n ...item,\n badge: item.badgeType,\n };\n}\n\ninterface CardRendererProps {\n content: HTMLElement;\n}\n\nfunction CardRenderer({ content }: CardRendererProps) {\n const ref = React.useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n const el = ref.current;\n el?.appendChild(content);\n return () => {\n el?.removeChild(content);\n };\n }, [content]);\n\n return <div ref={ref} />;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentGenerator.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/ComponentGenerator.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mCAAmC,CAAC;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAKV,SAAS,EAEV,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAuLvE;;GAEG;AACH,qBAAa,kBAAkB;IACjB,OAAO,CAAC,eAAe;gBAAf,eAAe,EAAE,oBAAoB;IAEzD,IAAW,cAAc,yBAExB;IAED,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,iCAAiC;IA4BzC,OAAO,CAAC,mCAAmC;IAkC3C,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,YAAY;IAKb,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS;IAazD,oBAAoB,CACzB,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,MAAM,GACf,iBAAiB;IAWpB,6DAA6D;IACtD,sBAAsB,IAAI,iBAAiB,EAAE;CAKrD"}
1
+ {"version":3,"file":"ComponentGenerator.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/ComponentGenerator.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mCAAmC,CAAC;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAKV,SAAS,EAEV,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAoLvE;;GAEG;AACH,qBAAa,kBAAkB;IACjB,OAAO,CAAC,eAAe;gBAAf,eAAe,EAAE,oBAAoB;IAEzD,IAAW,cAAc,yBAExB;IAED,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,iCAAiC;IA4BzC,OAAO,CAAC,mCAAmC;IAkC3C,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,YAAY;IAKb,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS;IAazD,oBAAoB,CACzB,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,MAAM,GACf,iBAAiB;IAWpB,6DAA6D;IACtD,sBAAsB,IAAI,iBAAiB,EAAE;CAKrD"}
@@ -11,14 +11,12 @@ import * as React from "react";
11
11
  import { PropertyValueFormat, UiLayoutDataProvider, } from "@itwin/appui-abstract";
12
12
  import { EditorContainer } from "@itwin/components-react";
13
13
  import { assert, Logger } from "@itwin/core-bentley";
14
+ import { Label } from "@itwin/itwinui-react";
14
15
  function EditorLabel({ uiDataProvider, item, isLeftmostRecord, }) {
15
16
  const [isDisabled, setIsDisabled] = React.useState(!!item.isDisabled);
16
17
  const displayLabel = React.useMemo(() => {
17
- return item.property.displayLabel
18
- ? item.property.displayLabel
19
- : /* istanbul ignore next */ item.property.name;
18
+ return item.property.displayLabel || item.property.name;
20
19
  }, [item]);
21
- const propertyId = React.useMemo(() => `dialogItemProperty-${item.property.name}`, [item]);
22
20
  // listen for tool sync property events and update the isDisabled state
23
21
  React.useEffect(() => {
24
22
  const handleSync = (args) => {
@@ -34,8 +32,8 @@ function EditorLabel({ uiDataProvider, item, isLeftmostRecord, }) {
34
32
  };
35
33
  }, [uiDataProvider, item]);
36
34
  // istanbul ignore next
37
- const className = classnames("uifw-default-label", isDisabled && "uifw-label-disabled", !!isLeftmostRecord && "uifw-default-narrow-only-display", !isLeftmostRecord && "uifw-default-inline-label");
38
- return (React.createElement("label", { className: className, htmlFor: propertyId },
35
+ const className = classnames("uifw-default-label", !!isLeftmostRecord && "uifw-default-narrow-only-display");
36
+ return (React.createElement(Label, { className: className, htmlFor: item.property.name, disabled: isDisabled },
39
37
  displayLabel,
40
38
  ":"));
41
39
  }
@@ -44,7 +42,7 @@ function PropertyEditor({ uiDataProvider, initialItem, isLock, setFocus, }) {
44
42
  let newRecord = UiLayoutDataProvider.getPropertyRecord(initialItem);
45
43
  // istanbul ignore next
46
44
  const foundItem = isLock
47
- ? uiDataProvider.items.find((item) => { var _a; return ((_a = item.lockProperty) === null || _a === void 0 ? void 0 : _a.property.name) === initialItem.property.name; })
45
+ ? uiDataProvider.items.find((item) => item.lockProperty?.property.name === initialItem.property.name)
48
46
  : uiDataProvider.items.find((item) => item.property.name === initialItem.property.name);
49
47
  // istanbul ignore else
50
48
  if (foundItem) {
@@ -185,10 +183,10 @@ export class ComponentGenerator {
185
183
  this.getEditor(item)));
186
184
  }
187
185
  getRowWithMultipleEditors(row) {
188
- return (React.createElement("div", { className: "uifw-default-inline-editor-group" }, row.items.map((item, index) => this.getInlineLabelAndEditor(item, 0 === index))));
186
+ return (React.createElement("div", { className: "uifw-default-inline-editor-group" }, row.items.map((item, index) => this.getInlineLabelAndEditor(item, index === 0))));
189
187
  }
190
188
  getDivForRow(row) {
191
- if (1 === row.items.length)
189
+ if (row.items.length === 1)
192
190
  return this.getEditor(row.items[0]);
193
191
  return this.getRowWithMultipleEditors(row);
194
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentGenerator.js","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/ComponentGenerator.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module UiProvider\n */\n\nimport \"./DefaultDialogGridContainer.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n BaseDialogItem,\n DialogItem,\n DialogItemValue,\n DialogPropertySyncItem,\n DialogRow,\n SyncPropertiesChangeEventArgs,\n} from \"@itwin/appui-abstract\";\nimport {\n PropertyValueFormat,\n UiLayoutDataProvider,\n} from \"@itwin/appui-abstract\";\nimport type { PropertyUpdatedArgs } from \"@itwin/components-react\";\nimport { EditorContainer } from \"@itwin/components-react\";\nimport type { ToolSettingsEntry } from \"../widget-panels/ToolSettings\";\nimport { assert, Logger } from \"@itwin/core-bentley\";\n\nfunction EditorLabel({\n uiDataProvider,\n item,\n isLeftmostRecord,\n}: {\n uiDataProvider: UiLayoutDataProvider;\n item: DialogItem;\n isLeftmostRecord?: boolean;\n}) {\n const [isDisabled, setIsDisabled] = React.useState(!!item.isDisabled);\n const displayLabel = React.useMemo(() => {\n return item.property.displayLabel\n ? item.property.displayLabel\n : /* istanbul ignore next */ item.property.name;\n }, [item]);\n const propertyId = React.useMemo(\n () => `dialogItemProperty-${item.property.name}`,\n [item]\n );\n\n // listen for tool sync property events and update the isDisabled state\n React.useEffect(() => {\n const handleSync = (args: SyncPropertiesChangeEventArgs) => {\n const mySyncItem = args.properties.find(\n (syncItem: DialogPropertySyncItem) =>\n syncItem.propertyName === item.property.name\n );\n // istanbul ignore next\n if (mySyncItem) {\n setIsDisabled(!!mySyncItem.isDisabled);\n }\n };\n uiDataProvider.onSyncPropertiesChangeEvent.addListener(handleSync);\n return () => {\n uiDataProvider.onSyncPropertiesChangeEvent.removeListener(handleSync);\n };\n }, [uiDataProvider, item]);\n\n // istanbul ignore next\n const className = classnames(\n \"uifw-default-label\",\n isDisabled && \"uifw-label-disabled\",\n !!isLeftmostRecord && \"uifw-default-narrow-only-display\",\n !isLeftmostRecord && \"uifw-default-inline-label\"\n );\n return (\n <label className={className} htmlFor={propertyId}>\n {displayLabel}:\n </label>\n );\n}\n\nfunction PropertyEditor({\n uiDataProvider,\n initialItem,\n isLock,\n setFocus,\n}: {\n uiDataProvider: UiLayoutDataProvider;\n initialItem: BaseDialogItem;\n isLock?: boolean;\n setFocus?: boolean;\n}) {\n const getLatestRecordValue = React.useCallback(() => {\n let newRecord = UiLayoutDataProvider.getPropertyRecord(initialItem);\n\n // istanbul ignore next\n const foundItem = isLock\n ? uiDataProvider.items.find(\n (item) =>\n item.lockProperty?.property.name === initialItem.property.name\n )\n : uiDataProvider.items.find(\n (item) => item.property.name === initialItem.property.name\n );\n // istanbul ignore else\n if (foundItem) {\n if (isLock) {\n newRecord = newRecord.copyWithNewValue({\n value: foundItem.lockProperty!.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n });\n newRecord.isDisabled = foundItem.lockProperty!.isDisabled;\n } else {\n newRecord = newRecord.copyWithNewValue({\n value: foundItem.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n });\n newRecord.isDisabled = foundItem.isDisabled;\n }\n }\n return newRecord;\n }, [initialItem, isLock, uiDataProvider.items]);\n\n const currentRecord = getLatestRecordValue();\n const [propertyRecord, setPropertyRecord] = React.useState(currentRecord);\n\n // monitor tool for sync UI events\n React.useEffect(() => {\n const handleSync = (args: SyncPropertiesChangeEventArgs) => {\n const mySyncItem = args.properties.find(\n (syncItem: DialogPropertySyncItem) =>\n syncItem.propertyName === initialItem.property.name\n );\n // istanbul ignore else\n if (mySyncItem) {\n const newPropertyValue = propertyRecord.copyWithNewValue(\n {\n value: mySyncItem.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n displayValue: mySyncItem.value.displayValue,\n },\n mySyncItem.property\n );\n\n if (mySyncItem.property) {\n // istanbul ignore else\n if (mySyncItem.property.name === mySyncItem.propertyName) {\n newPropertyValue.isDisabled = mySyncItem.isDisabled;\n setPropertyRecord(newPropertyValue);\n } else {\n Logger.logError(\n \"PropertyEditor\",\n `Error trying to replace propertyName=${mySyncItem.propertyName} with property named ${mySyncItem.property.name}`\n );\n }\n } else {\n newPropertyValue.isDisabled = mySyncItem.isDisabled;\n setPropertyRecord(newPropertyValue);\n }\n }\n };\n uiDataProvider.onSyncPropertiesChangeEvent.addListener(handleSync);\n return () => {\n uiDataProvider.onSyncPropertiesChangeEvent.removeListener(handleSync);\n };\n }, [uiDataProvider, propertyRecord, initialItem.property.name]);\n\n const className = React.useMemo(\n () => (isLock ? \"uifw-default-property-lock\" : \"uifw-default-editor\"),\n [isLock]\n );\n // istanbul ignore next\n const handleCommit = React.useCallback(\n (commit: PropertyUpdatedArgs) => {\n // UiLayoutDataProvider supports only primitive property types\n // istanbul ignore next\n assert(\n commit.newValue.valueFormat === PropertyValueFormat.Primitive &&\n commit.propertyRecord.value.valueFormat ===\n PropertyValueFormat.Primitive\n );\n const newPropertyValue = propertyRecord.copyWithNewValue(commit.newValue);\n const syncItem: DialogPropertySyncItem = {\n value: commit.newValue as DialogItemValue,\n propertyName: initialItem.property.name,\n isDisabled: newPropertyValue.isDisabled,\n };\n uiDataProvider.applyUiPropertyChange(syncItem);\n // Now have the uiDataProvider refetch the latest property values from the tool\n uiDataProvider.reloadDialogItems(true);\n },\n [initialItem.property.name, propertyRecord, uiDataProvider]\n );\n // istanbul ignore next\n const handleCancel = () => {};\n\n return (\n <div key={initialItem.property.name} className={className}>\n <EditorContainer\n key={initialItem.property.name}\n propertyRecord={propertyRecord}\n setFocus={setFocus}\n onCommit={handleCommit}\n onCancel={handleCancel}\n />\n </div>\n );\n}\n\n/** Utility methods to generate react ui from DialogRow specs\n * @internal\n */\nexport class ComponentGenerator {\n constructor(private _uiDataProvider: UiLayoutDataProvider) {}\n\n public get uiDataProvider() {\n return this._uiDataProvider;\n }\n\n private getEditor(\n item: BaseDialogItem,\n isLock = false,\n setFocus = false\n ): React.ReactNode {\n return (\n <PropertyEditor\n key={item.property.name}\n uiDataProvider={this.uiDataProvider}\n initialItem={item}\n isLock={isLock}\n setFocus={setFocus}\n />\n );\n }\n\n private generateRowWithButtonGroupEditors(\n row: DialogRow,\n rowIndex: number\n ): React.ReactNode {\n // istanbul ignore else\n if (1 === row.items.length) {\n return (\n <div\n key={row.items[0].property.name}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n {this.getEditor(row.items[0])}\n </div>\n );\n }\n\n return (\n <div\n key={rowIndex}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item) => this.getEditor(item))}\n </div>\n </div>\n );\n }\n\n private generateEntryWithButtonGroupEditors(\n row: DialogRow,\n rowIndex: number\n ): ToolSettingsEntry {\n // istanbul ignore else\n if (1 === row.items.length) {\n return {\n labelNode: \"\",\n editorNode: (\n <div\n key={row.items[0].property.name}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n {this.getEditor(row.items[0])}\n </div>\n ),\n };\n }\n\n return {\n labelNode: \"\",\n editorNode: (\n <div\n key={rowIndex}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item) => this.getEditor(item))}\n </div>\n </div>\n ),\n };\n }\n\n private getEditorLabel(\n item: DialogItem,\n isLeftmostRecord = false\n ): React.ReactNode {\n return (\n <EditorLabel\n uiDataProvider={this.uiDataProvider}\n item={item}\n isLeftmostRecord={isLeftmostRecord}\n />\n );\n }\n\n private getLeftLockAndLabel(\n rowItem: DialogItem,\n multiplePropertiesOnRow: boolean\n ): React.ReactNode {\n const record = UiLayoutDataProvider.getPropertyRecord(rowItem);\n // istanbul ignore next\n const lockEditor = UiLayoutDataProvider.hasAssociatedLockProperty(rowItem)\n ? this.getEditor(rowItem.lockProperty!, true)\n : null;\n const label = UiLayoutDataProvider.editorWantsLabel(rowItem)\n ? this.getEditorLabel(rowItem)\n : null;\n const classNames = multiplePropertiesOnRow\n ? \"uifw-default-lock-and-label uifw-default-wide-only-display\"\n : \"uifw-default-lock-and-label\";\n return (\n <div key={`lock-${record.property.name}`} className={classNames}>\n {lockEditor}\n {label}\n </div>\n );\n }\n\n private getInlineLabelAndEditor(\n item: DialogItem,\n isLeftmostRecord: boolean\n ): React.ReactNode {\n const label = UiLayoutDataProvider.editorWantsLabel(item)\n ? this.getEditorLabel(item, isLeftmostRecord)\n : null;\n return (\n <div\n key={item.property.name}\n className=\"uifw-default-inline-label-and-editor\"\n >\n {label}\n {this.getEditor(item)}\n </div>\n );\n }\n\n private getRowWithMultipleEditors(row: DialogRow): React.ReactNode {\n return (\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item: DialogItem, index: number) =>\n this.getInlineLabelAndEditor(item, 0 === index)\n )}\n </div>\n );\n }\n\n private getDivForRow(row: DialogRow): React.ReactNode {\n if (1 === row.items.length) return this.getEditor(row.items[0]);\n return this.getRowWithMultipleEditors(row);\n }\n\n public getRow(row: DialogRow, rowIndex: number): React.ReactNode {\n if (UiLayoutDataProvider.onlyContainButtonGroupEditors(row)) {\n return this.generateRowWithButtonGroupEditors(row, rowIndex);\n } else {\n return (\n <React.Fragment key={rowIndex}>\n {this.getLeftLockAndLabel(row.items[0], row.items.length > 1)}\n {this.getDivForRow(row)}\n </React.Fragment>\n );\n }\n }\n\n public getToolSettingsEntry(\n row: DialogRow,\n rowIndex: number\n ): ToolSettingsEntry {\n if (UiLayoutDataProvider.onlyContainButtonGroupEditors(row)) {\n return this.generateEntryWithButtonGroupEditors(row, rowIndex);\n } else {\n return {\n labelNode: this.getLeftLockAndLabel(row.items[0], row.items.length > 1),\n editorNode: this.getDivForRow(row),\n };\n }\n }\n\n /** ToolSettingsEntries are used by the tool settings bar. */\n public getToolSettingsEntries(): ToolSettingsEntry[] {\n return this.uiDataProvider.rows.map((row: DialogRow, index: number) =>\n this.getToolSettingsEntry(row, index)\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ComponentGenerator.js","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/ComponentGenerator.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module UiProvider\n */\n\nimport \"./DefaultDialogGridContainer.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n BaseDialogItem,\n DialogItem,\n DialogItemValue,\n DialogPropertySyncItem,\n DialogRow,\n SyncPropertiesChangeEventArgs,\n} from \"@itwin/appui-abstract\";\nimport {\n PropertyValueFormat,\n UiLayoutDataProvider,\n} from \"@itwin/appui-abstract\";\nimport type { PropertyUpdatedArgs } from \"@itwin/components-react\";\nimport { EditorContainer } from \"@itwin/components-react\";\nimport type { ToolSettingsEntry } from \"../widget-panels/ToolSettings\";\nimport { assert, Logger } from \"@itwin/core-bentley\";\nimport { Label } from \"@itwin/itwinui-react\";\n\nfunction EditorLabel({\n uiDataProvider,\n item,\n isLeftmostRecord,\n}: {\n uiDataProvider: UiLayoutDataProvider;\n item: DialogItem;\n isLeftmostRecord?: boolean;\n}) {\n const [isDisabled, setIsDisabled] = React.useState(!!item.isDisabled);\n const displayLabel = React.useMemo(() => {\n return item.property.displayLabel || item.property.name;\n }, [item]);\n\n // listen for tool sync property events and update the isDisabled state\n React.useEffect(() => {\n const handleSync = (args: SyncPropertiesChangeEventArgs) => {\n const mySyncItem = args.properties.find(\n (syncItem: DialogPropertySyncItem) =>\n syncItem.propertyName === item.property.name\n );\n // istanbul ignore next\n if (mySyncItem) {\n setIsDisabled(!!mySyncItem.isDisabled);\n }\n };\n uiDataProvider.onSyncPropertiesChangeEvent.addListener(handleSync);\n return () => {\n uiDataProvider.onSyncPropertiesChangeEvent.removeListener(handleSync);\n };\n }, [uiDataProvider, item]);\n\n // istanbul ignore next\n const className = classnames(\n \"uifw-default-label\",\n !!isLeftmostRecord && \"uifw-default-narrow-only-display\"\n );\n return (\n <Label\n className={className}\n htmlFor={item.property.name}\n disabled={isDisabled}\n >\n {displayLabel}:\n </Label>\n );\n}\n\nfunction PropertyEditor({\n uiDataProvider,\n initialItem,\n isLock,\n setFocus,\n}: {\n uiDataProvider: UiLayoutDataProvider;\n initialItem: BaseDialogItem;\n isLock?: boolean;\n setFocus?: boolean;\n}) {\n const getLatestRecordValue = React.useCallback(() => {\n let newRecord = UiLayoutDataProvider.getPropertyRecord(initialItem);\n\n // istanbul ignore next\n const foundItem = isLock\n ? uiDataProvider.items.find(\n (item) =>\n item.lockProperty?.property.name === initialItem.property.name\n )\n : uiDataProvider.items.find(\n (item) => item.property.name === initialItem.property.name\n );\n // istanbul ignore else\n if (foundItem) {\n if (isLock) {\n newRecord = newRecord.copyWithNewValue({\n value: foundItem.lockProperty!.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n });\n newRecord.isDisabled = foundItem.lockProperty!.isDisabled;\n } else {\n newRecord = newRecord.copyWithNewValue({\n value: foundItem.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n });\n newRecord.isDisabled = foundItem.isDisabled;\n }\n }\n return newRecord;\n }, [initialItem, isLock, uiDataProvider.items]);\n\n const currentRecord = getLatestRecordValue();\n const [propertyRecord, setPropertyRecord] = React.useState(currentRecord);\n\n // monitor tool for sync UI events\n React.useEffect(() => {\n const handleSync = (args: SyncPropertiesChangeEventArgs) => {\n const mySyncItem = args.properties.find(\n (syncItem: DialogPropertySyncItem) =>\n syncItem.propertyName === initialItem.property.name\n );\n // istanbul ignore else\n if (mySyncItem) {\n const newPropertyValue = propertyRecord.copyWithNewValue(\n {\n value: mySyncItem.value.value,\n valueFormat: PropertyValueFormat.Primitive,\n displayValue: mySyncItem.value.displayValue,\n },\n mySyncItem.property\n );\n\n if (mySyncItem.property) {\n // istanbul ignore else\n if (mySyncItem.property.name === mySyncItem.propertyName) {\n newPropertyValue.isDisabled = mySyncItem.isDisabled;\n setPropertyRecord(newPropertyValue);\n } else {\n Logger.logError(\n \"PropertyEditor\",\n `Error trying to replace propertyName=${mySyncItem.propertyName} with property named ${mySyncItem.property.name}`\n );\n }\n } else {\n newPropertyValue.isDisabled = mySyncItem.isDisabled;\n setPropertyRecord(newPropertyValue);\n }\n }\n };\n uiDataProvider.onSyncPropertiesChangeEvent.addListener(handleSync);\n return () => {\n uiDataProvider.onSyncPropertiesChangeEvent.removeListener(handleSync);\n };\n }, [uiDataProvider, propertyRecord, initialItem.property.name]);\n\n const className = React.useMemo(\n () => (isLock ? \"uifw-default-property-lock\" : \"uifw-default-editor\"),\n [isLock]\n );\n // istanbul ignore next\n const handleCommit = React.useCallback(\n (commit: PropertyUpdatedArgs) => {\n // UiLayoutDataProvider supports only primitive property types\n // istanbul ignore next\n assert(\n commit.newValue.valueFormat === PropertyValueFormat.Primitive &&\n commit.propertyRecord.value.valueFormat ===\n PropertyValueFormat.Primitive\n );\n const newPropertyValue = propertyRecord.copyWithNewValue(commit.newValue);\n const syncItem: DialogPropertySyncItem = {\n value: commit.newValue as DialogItemValue,\n propertyName: initialItem.property.name,\n isDisabled: newPropertyValue.isDisabled,\n };\n uiDataProvider.applyUiPropertyChange(syncItem);\n // Now have the uiDataProvider refetch the latest property values from the tool\n uiDataProvider.reloadDialogItems(true);\n },\n [initialItem.property.name, propertyRecord, uiDataProvider]\n );\n // istanbul ignore next\n const handleCancel = () => {};\n\n return (\n <div key={initialItem.property.name} className={className}>\n <EditorContainer\n key={initialItem.property.name}\n propertyRecord={propertyRecord}\n setFocus={setFocus}\n onCommit={handleCommit}\n onCancel={handleCancel}\n />\n </div>\n );\n}\n\n/** Utility methods to generate react ui from DialogRow specs\n * @internal\n */\nexport class ComponentGenerator {\n constructor(private _uiDataProvider: UiLayoutDataProvider) {}\n\n public get uiDataProvider() {\n return this._uiDataProvider;\n }\n\n private getEditor(\n item: BaseDialogItem,\n isLock = false,\n setFocus = false\n ): React.ReactNode {\n return (\n <PropertyEditor\n key={item.property.name}\n uiDataProvider={this.uiDataProvider}\n initialItem={item}\n isLock={isLock}\n setFocus={setFocus}\n />\n );\n }\n\n private generateRowWithButtonGroupEditors(\n row: DialogRow,\n rowIndex: number\n ): React.ReactNode {\n // istanbul ignore else\n if (1 === row.items.length) {\n return (\n <div\n key={row.items[0].property.name}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n {this.getEditor(row.items[0])}\n </div>\n );\n }\n\n return (\n <div\n key={rowIndex}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item) => this.getEditor(item))}\n </div>\n </div>\n );\n }\n\n private generateEntryWithButtonGroupEditors(\n row: DialogRow,\n rowIndex: number\n ): ToolSettingsEntry {\n // istanbul ignore else\n if (1 === row.items.length) {\n return {\n labelNode: \"\",\n editorNode: (\n <div\n key={row.items[0].property.name}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n {this.getEditor(row.items[0])}\n </div>\n ),\n };\n }\n\n return {\n labelNode: \"\",\n editorNode: (\n <div\n key={rowIndex}\n className=\"uifw-default-inline-editor-group uifw-default-center-across-width\"\n >\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item) => this.getEditor(item))}\n </div>\n </div>\n ),\n };\n }\n\n private getEditorLabel(\n item: DialogItem,\n isLeftmostRecord = false\n ): React.ReactNode {\n return (\n <EditorLabel\n uiDataProvider={this.uiDataProvider}\n item={item}\n isLeftmostRecord={isLeftmostRecord}\n />\n );\n }\n\n private getLeftLockAndLabel(\n rowItem: DialogItem,\n multiplePropertiesOnRow: boolean\n ): React.ReactNode {\n const record = UiLayoutDataProvider.getPropertyRecord(rowItem);\n // istanbul ignore next\n const lockEditor = UiLayoutDataProvider.hasAssociatedLockProperty(rowItem)\n ? this.getEditor(rowItem.lockProperty!, true)\n : null;\n const label = UiLayoutDataProvider.editorWantsLabel(rowItem)\n ? this.getEditorLabel(rowItem)\n : null;\n const classNames = multiplePropertiesOnRow\n ? \"uifw-default-lock-and-label uifw-default-wide-only-display\"\n : \"uifw-default-lock-and-label\";\n return (\n <div key={`lock-${record.property.name}`} className={classNames}>\n {lockEditor}\n {label}\n </div>\n );\n }\n\n private getInlineLabelAndEditor(\n item: DialogItem,\n isLeftmostRecord: boolean\n ): React.ReactNode {\n const label = UiLayoutDataProvider.editorWantsLabel(item)\n ? this.getEditorLabel(item, isLeftmostRecord)\n : null;\n return (\n <div\n key={item.property.name}\n className=\"uifw-default-inline-label-and-editor\"\n >\n {label}\n {this.getEditor(item)}\n </div>\n );\n }\n\n private getRowWithMultipleEditors(row: DialogRow): React.ReactNode {\n return (\n <div className=\"uifw-default-inline-editor-group\">\n {row.items.map((item: DialogItem, index: number) =>\n this.getInlineLabelAndEditor(item, index === 0)\n )}\n </div>\n );\n }\n\n private getDivForRow(row: DialogRow): React.ReactNode {\n if (row.items.length === 1) return this.getEditor(row.items[0]);\n return this.getRowWithMultipleEditors(row);\n }\n\n public getRow(row: DialogRow, rowIndex: number): React.ReactNode {\n if (UiLayoutDataProvider.onlyContainButtonGroupEditors(row)) {\n return this.generateRowWithButtonGroupEditors(row, rowIndex);\n } else {\n return (\n <React.Fragment key={rowIndex}>\n {this.getLeftLockAndLabel(row.items[0], row.items.length > 1)}\n {this.getDivForRow(row)}\n </React.Fragment>\n );\n }\n }\n\n public getToolSettingsEntry(\n row: DialogRow,\n rowIndex: number\n ): ToolSettingsEntry {\n if (UiLayoutDataProvider.onlyContainButtonGroupEditors(row)) {\n return this.generateEntryWithButtonGroupEditors(row, rowIndex);\n } else {\n return {\n labelNode: this.getLeftLockAndLabel(row.items[0], row.items.length > 1),\n editorNode: this.getDivForRow(row),\n };\n }\n }\n\n /** ToolSettingsEntries are used by the tool settings bar. */\n public getToolSettingsEntries(): ToolSettingsEntry[] {\n return this.uiDataProvider.rows.map((row: DialogRow, index: number) =>\n this.getToolSettingsEntry(row, index)\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultDialogGridContainer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/DefaultDialogGridContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mCAAmC,CAAC;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAO/D;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,kBAAkB,GACnB,EAAE;IACD,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,qBAgBA;AAED,UAAU,wBAAwB;IAChC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,gBAAgB;AAEhB,wBAAgB,mBAAmB,CAAC,EAClC,kBAAkB,EAClB,kBAAkB,GACnB,EAAE,wBAAwB,qBAY1B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,cAAc,GACf,EAAE;IACD,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,qBAOA"}
1
+ {"version":3,"file":"DefaultDialogGridContainer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uiprovider/DefaultDialogGridContainer.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,mCAAmC,CAAC;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAO/D;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,kBAAkB,GACnB,EAAE;IACD,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,qBAgBA;AAED,UAAU,wBAAwB;IAChC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,gBAAgB;AAEhB,wBAAgB,mBAAmB,CAAC,EAClC,kBAAkB,EAClB,kBAAkB,GACnB,EAAE,wBAAwB,qBAS1B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,cAAc,GACf,EAAE;IACD,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,qBAOA"}