@itwin/appui-react 4.11.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 (1086) hide show
  1. package/CHANGELOG.md +26 -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 +345 -0
  7. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js +1 -1
  8. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/Calculator.js +3 -1
  11. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  13. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  15. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  17. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  18. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  19. package/lib/cjs/appui-react/backstage/BackstageComposer.js +2 -1
  20. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  21. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +3 -4
  22. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  23. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  24. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  25. package/lib/cjs/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  26. package/lib/cjs/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  27. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  28. package/lib/cjs/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +11 -5
  29. package/lib/cjs/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  30. package/lib/{esm/appui-react/childwindow/PopoutWidget.scss → cjs/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  31. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  32. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  33. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  34. package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  35. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  36. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  37. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  38. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  39. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +5 -18
  40. package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  41. package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
  42. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  43. package/lib/cjs/appui-react/content/ContentControl.d.ts +2 -0
  44. package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
  45. package/lib/cjs/appui-react/content/ContentControl.js +1 -0
  46. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  47. package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -0
  48. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/content/ContentLayout.js +14 -14
  50. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  51. package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
  52. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  53. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts +2 -2
  54. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  55. package/lib/cjs/appui-react/content/FloatingViewportContent.js +2 -3
  56. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  57. package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
  58. package/lib/cjs/appui-react/content/IModelViewport.js +7 -8
  59. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  60. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
  61. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  62. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts +5 -5
  63. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  64. package/lib/cjs/appui-react/content/InternalContentViewManager.js +5 -7
  65. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  66. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
  67. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  68. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +2 -0
  69. package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  70. package/lib/cjs/appui-react/cursor/CursorInformation.js +2 -0
  71. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  72. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  73. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  74. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  75. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  76. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  77. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  78. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  79. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  80. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +4 -24
  81. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  82. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  83. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  84. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  85. package/lib/cjs/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  86. package/lib/cjs/appui-react/dialog/ContentDialog.js +8 -7
  87. package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
  88. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  89. package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  90. package/lib/cjs/appui-react/dialog/DialogManagerBase.js +6 -3
  91. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  92. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  93. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  94. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js +1 -2
  95. package/lib/cjs/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  96. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  97. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  98. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js +2 -2
  99. package/lib/cjs/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  100. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  101. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  102. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js +1 -2
  103. package/lib/cjs/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  104. package/lib/cjs/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  105. package/lib/cjs/appui-react/dialog/ModelessDialog.js +3 -1
  106. package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
  107. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  108. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  109. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  110. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -0
  111. package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  112. package/lib/cjs/appui-react/feedback/ElementTooltip.js +6 -2
  113. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  114. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +5 -0
  115. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  116. package/lib/cjs/appui-react/framework/FrameworkContent.js +4 -0
  117. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  118. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  119. package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  120. package/lib/cjs/appui-react/framework/FrameworkDialogs.js +4 -0
  121. package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
  122. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  123. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  124. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js +8 -0
  125. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  126. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  127. package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  128. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js +1 -0
  129. package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  130. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  131. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +24 -22
  132. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  133. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  134. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +45 -50
  136. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  137. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  138. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +8 -6
  139. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  140. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +4 -4
  141. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  142. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +4 -5
  143. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  144. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  145. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js +1 -0
  146. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  147. package/lib/cjs/appui-react/hooks/useActiveStageId.js +2 -1
  148. package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
  149. package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/hooks/useActiveViewport.js +2 -0
  151. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  152. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  153. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  154. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  155. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  156. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
  157. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  158. package/lib/cjs/appui-react/hooks/useTranslation.d.ts +7 -0
  159. package/lib/cjs/appui-react/hooks/useTranslation.d.ts.map +1 -0
  160. package/lib/cjs/appui-react/{useTranslation.js → hooks/useTranslation.js} +15 -6
  161. package/lib/cjs/appui-react/hooks/useTranslation.js.map +1 -0
  162. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  163. package/lib/cjs/appui-react/hooks/useUiVisibility.js +1 -0
  164. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  165. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  166. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  167. package/lib/cjs/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  168. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  169. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  170. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  171. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  172. package/lib/cjs/appui-react/layout/StandardLayout.scss +1 -1
  173. package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
  174. package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
  175. package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
  176. package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
  177. package/lib/cjs/appui-react/layout/footer/_variables.scss +0 -2
  178. package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
  179. package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
  180. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
  181. package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  182. package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts +3 -2
  183. package/lib/cjs/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
  184. package/lib/cjs/appui-react/layout/state/NineZoneAction.js.map +1 -1
  185. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
  186. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +14 -15
  187. package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  188. package/lib/cjs/appui-react/layout/state/PanelState.d.ts +2 -5
  189. package/lib/cjs/appui-react/layout/state/PanelState.d.ts.map +1 -1
  190. package/lib/cjs/appui-react/layout/state/PanelState.js.map +1 -1
  191. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  192. package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  193. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts +4 -3
  194. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  195. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js +12 -10
  196. package/lib/cjs/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  197. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  198. package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  199. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  200. package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  201. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
  202. package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  203. package/lib/cjs/appui-react/layout/tool-settings/Docked.js +2 -2
  204. package/lib/cjs/appui-react/layout/tool-settings/Docked.js.map +1 -1
  205. package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +3 -13
  206. package/lib/cjs/appui-react/layout/tool-settings/Handle.scss +2 -2
  207. package/lib/cjs/appui-react/layout/tool-settings/Setting.js +1 -1
  208. package/lib/cjs/appui-react/layout/tool-settings/Setting.js.map +1 -1
  209. package/lib/cjs/appui-react/layout/tool-settings/Setting.scss +1 -2
  210. package/lib/cjs/appui-react/layout/widget/Button.d.ts +3 -2
  211. package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
  212. package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
  213. package/lib/cjs/appui-react/layout/widget/ContentContainer.js +1 -1
  214. package/lib/cjs/appui-react/layout/widget/ContentContainer.js.map +1 -1
  215. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts +3 -3
  216. package/lib/cjs/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  217. package/lib/cjs/appui-react/layout/widget/ContentManager.js +7 -1
  218. package/lib/cjs/appui-react/layout/widget/ContentManager.js.map +1 -1
  219. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
  220. package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  221. package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
  222. package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
  223. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
  224. package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  225. package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
  226. package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
  227. package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
  228. package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
  229. package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
  230. package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
  231. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  232. package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  233. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
  234. package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  235. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  236. package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  237. package/lib/cjs/appui-react/messages/InputField.js +2 -1
  238. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  239. package/lib/cjs/appui-react/messages/MessageManager.d.ts +12 -0
  240. package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
  241. package/lib/cjs/appui-react/messages/MessageManager.js +18 -10
  242. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  243. package/lib/cjs/appui-react/messages/MessageRenderer.js +8 -9
  244. package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -1
  245. package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -0
  246. package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
  247. package/lib/cjs/appui-react/messages/Pointer.js +7 -9
  248. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  249. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  250. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  251. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +1 -0
  252. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  253. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  254. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  255. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  256. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  257. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  258. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  259. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  260. package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
  261. package/lib/cjs/appui-react/pickers/ListPicker.js +3 -1
  262. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  263. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +2 -0
  264. package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  265. package/lib/cjs/appui-react/pickers/ViewSelector.js +8 -13
  266. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  267. package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
  268. package/lib/cjs/appui-react/popup/CardPopup.js +2 -3
  269. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  270. package/lib/cjs/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  271. package/lib/cjs/appui-react/popup/ComponentPopup.js +1 -1
  272. package/lib/cjs/appui-react/popup/ComponentPopup.js.map +1 -1
  273. package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  274. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  275. package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  276. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  277. package/lib/cjs/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  278. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +8 -5
  279. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  280. package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  281. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
  282. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  283. package/lib/cjs/appui-react/popup/PopupManager.d.ts +5 -1
  284. package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
  285. package/lib/cjs/appui-react/popup/PopupManager.js +24 -24
  286. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  287. package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
  288. package/lib/cjs/appui-react/popup/PositionPopup.js +1 -0
  289. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  290. package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  291. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  292. package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  293. package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -3
  294. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  295. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts +7 -0
  296. package/lib/cjs/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  297. package/lib/cjs/appui-react/preview/PreviewFeatures.js +8 -6
  298. package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
  299. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  300. package/lib/cjs/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  301. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  302. package/lib/cjs/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  303. package/lib/cjs/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -1
  304. package/lib/cjs/appui-react/preview/new-toolbars/Badge.js +2 -2
  305. package/lib/cjs/appui-react/preview/new-toolbars/Badge.js.map +1 -1
  306. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  307. package/lib/cjs/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  308. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  309. package/lib/cjs/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  310. package/lib/cjs/appui-react/preview/new-toolbars/Item.js +1 -1
  311. package/lib/cjs/appui-react/preview/new-toolbars/Item.js.map +1 -1
  312. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  313. package/lib/cjs/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  314. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  315. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  316. package/lib/cjs/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  317. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  318. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  319. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +40 -0
  320. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  321. package/lib/{esm/appui-react/layout/footer/message-center/_variables.scss → cjs/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  322. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  323. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  324. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +25 -0
  325. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  326. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  327. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  328. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +26 -0
  329. package/lib/cjs/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  330. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  331. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  332. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +45 -0
  333. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  334. package/lib/cjs/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  335. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  336. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  337. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +28 -0
  338. package/lib/cjs/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  339. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  340. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  341. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +18 -0
  342. package/lib/cjs/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  343. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  344. package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  345. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
  346. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  347. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  348. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +9 -4
  349. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  350. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
  351. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  352. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  353. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +2 -1
  354. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  355. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +23 -3
  356. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
  357. package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
  358. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +10 -7
  359. package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  360. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +38 -27
  361. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  362. package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
  363. package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
  364. package/lib/cjs/appui-react/statusbar/Overflow.js +1 -1
  365. package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
  366. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts +1 -3
  367. package/lib/cjs/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  368. package/lib/cjs/appui-react/statusbar/StatusBar.js +21 -13
  369. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  370. package/lib/cjs/appui-react/statusbar/StatusBar.scss +18 -0
  371. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  372. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -0
  373. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  374. package/lib/cjs/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  375. package/lib/cjs/appui-react/statusfields/ActivityCenter.js +4 -2
  376. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  377. package/lib/cjs/appui-react/statusfields/SectionsField.js +1 -1
  378. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  379. package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -2
  380. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  381. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +2 -2
  382. package/lib/cjs/appui-react/statusfields/SnapMode.js +1 -1
  383. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  384. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  385. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  386. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js +91 -0
  387. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  388. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  389. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  390. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  391. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js +28 -0
  392. package/lib/cjs/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  393. package/lib/{esm/appui-react/layout/footer/message-center/Message.scss → cjs/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  394. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  395. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +12 -6
  396. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  397. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  398. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  399. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  400. package/lib/cjs/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  401. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  402. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  403. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  404. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  405. package/lib/cjs/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  406. package/lib/cjs/appui-react/syncui/UiSyncEvent.js +2 -0
  407. package/lib/cjs/appui-react/syncui/UiSyncEvent.js.map +1 -1
  408. package/lib/cjs/appui-react/theme/ThemeManager.js +2 -2
  409. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  410. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  411. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  412. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  413. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +2 -1
  414. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  415. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +7 -5
  416. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  417. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  418. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  419. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +10 -17
  420. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  421. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  422. package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  423. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  424. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  425. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  426. package/lib/cjs/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  427. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js +2 -1
  428. package/lib/cjs/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  429. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  430. package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  431. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  432. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  433. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -4
  434. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  435. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  436. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  437. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  438. package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  439. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  440. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  441. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  442. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  443. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  444. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +7 -9
  445. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  446. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  447. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  448. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  449. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  450. package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  451. package/lib/cjs/appui-react/uistate/AppUiSettings.js +1 -0
  452. package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
  453. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  454. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
  455. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  456. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +3 -3
  457. package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  458. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  459. package/lib/cjs/appui-react/widget-panels/Content.js +12 -11
  460. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  461. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts +13 -0
  462. package/lib/cjs/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  463. package/lib/cjs/appui-react/widget-panels/DockedBar.js +18 -0
  464. package/lib/cjs/appui-react/widget-panels/DockedBar.js.map +1 -0
  465. package/lib/cjs/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  466. package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  467. package/lib/cjs/appui-react/widget-panels/Frontstage.js +17 -19
  468. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  469. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  470. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  471. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts +0 -1
  472. package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  473. package/lib/cjs/appui-react/widget-panels/StatusBar.js +2 -5
  474. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  475. package/lib/cjs/appui-react/widget-panels/Tab.d.ts.map +1 -1
  476. package/lib/cjs/appui-react/widget-panels/Tab.js +2 -3
  477. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  478. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  479. package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  480. package/lib/cjs/appui-react/widget-panels/ToolSettings.js +29 -54
  481. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  482. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +4 -27
  483. package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
  484. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  485. package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  486. package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -1
  487. package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
  488. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  489. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  490. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  491. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  492. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  493. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  494. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -0
  495. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  496. package/lib/cjs/appui-react/widgets/WidgetDef.js +10 -11
  497. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  498. package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
  499. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  500. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +1 -6
  501. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  502. package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -8
  503. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  504. package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
  505. package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
  506. package/lib/cjs/appui-react.d.ts +1 -1
  507. package/lib/cjs/appui-react.d.ts.map +1 -1
  508. package/lib/cjs/appui-react.js +1 -1
  509. package/lib/cjs/appui-react.js.map +1 -1
  510. package/lib/esm/appui-react/UiFramework.d.ts +4 -1
  511. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  512. package/lib/esm/appui-react/UiFramework.js +13 -14
  513. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  514. package/lib/esm/appui-react/UiFramework.json +345 -0
  515. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js +1 -1
  516. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  517. package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
  518. package/lib/esm/appui-react/accudraw/Calculator.js +3 -1
  519. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  520. package/lib/esm/appui-react/accudraw/CalculatorPopup.d.ts.map +1 -1
  521. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  522. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +36 -12
  523. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
  524. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +37 -19
  525. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  526. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  527. package/lib/esm/appui-react/backstage/BackstageComposer.js +2 -1
  528. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  529. package/lib/esm/appui-react/backstage/BackstageComposerItem.js +4 -5
  530. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  531. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts +8 -6
  532. package/lib/esm/appui-react/childwindow/ChildWindowConfig.d.ts.map +1 -1
  533. package/lib/esm/appui-react/childwindow/ChildWindowConfig.js.map +1 -1
  534. package/lib/esm/appui-react/childwindow/{PopoutWidget.d.ts → ChildWindowWidget.d.ts} +4 -4
  535. package/lib/esm/appui-react/childwindow/ChildWindowWidget.d.ts.map +1 -0
  536. package/lib/esm/appui-react/childwindow/{PopoutWidget.js → ChildWindowWidget.js} +9 -3
  537. package/lib/esm/appui-react/childwindow/ChildWindowWidget.js.map +1 -0
  538. package/lib/{cjs/appui-react/childwindow/PopoutWidget.scss → esm/appui-react/childwindow/ChildWindowWidget.scss} +0 -1
  539. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts +3 -3
  540. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
  541. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +25 -33
  542. package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
  543. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
  544. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  545. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts +2 -12
  546. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.d.ts.map +1 -1
  547. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +4 -15
  548. package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
  549. package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
  550. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  551. package/lib/esm/appui-react/content/ContentControl.d.ts +2 -0
  552. package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
  553. package/lib/esm/appui-react/content/ContentControl.js +1 -0
  554. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  555. package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -0
  556. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  557. package/lib/esm/appui-react/content/ContentLayout.js +14 -14
  558. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  559. package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
  560. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  561. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts +2 -2
  562. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  563. package/lib/esm/appui-react/content/FloatingViewportContent.js +2 -3
  564. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  565. package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
  566. package/lib/esm/appui-react/content/IModelViewport.js +7 -8
  567. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  568. package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
  569. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  570. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts +5 -5
  571. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  572. package/lib/esm/appui-react/content/InternalContentViewManager.js +6 -8
  573. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  574. package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
  575. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  576. package/lib/esm/appui-react/cursor/CursorInformation.d.ts +2 -0
  577. package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
  578. package/lib/esm/appui-react/cursor/CursorInformation.js +2 -0
  579. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  580. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
  581. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +3 -3
  582. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  583. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.d.ts.map +1 -1
  584. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +1 -0
  585. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  586. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +5 -19
  587. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
  588. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +5 -23
  589. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  590. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
  591. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js +1 -0
  592. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  593. package/lib/esm/appui-react/dialog/ContentDialog.d.ts.map +1 -1
  594. package/lib/esm/appui-react/dialog/ContentDialog.js +8 -7
  595. package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
  596. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +5 -2
  597. package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
  598. package/lib/esm/appui-react/dialog/DialogManagerBase.js +6 -3
  599. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  600. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts +3 -2
  601. package/lib/esm/appui-react/dialog/InternalContentDialogManager.d.ts.map +1 -1
  602. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js +2 -3
  603. package/lib/esm/appui-react/dialog/InternalContentDialogManager.js.map +1 -1
  604. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts +3 -2
  605. package/lib/esm/appui-react/dialog/InternalModalDialogManager.d.ts.map +1 -1
  606. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js +2 -2
  607. package/lib/esm/appui-react/dialog/InternalModalDialogManager.js.map +1 -1
  608. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts +3 -2
  609. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.d.ts.map +1 -1
  610. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js +2 -3
  611. package/lib/esm/appui-react/dialog/InternalModelessDialogManager.js.map +1 -1
  612. package/lib/esm/appui-react/dialog/ModelessDialog.d.ts.map +1 -1
  613. package/lib/esm/appui-react/dialog/ModelessDialog.js +3 -1
  614. package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
  615. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.d.ts.map +1 -1
  616. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js +3 -1
  617. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  618. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -0
  619. package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
  620. package/lib/esm/appui-react/feedback/ElementTooltip.js +6 -2
  621. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  622. package/lib/esm/appui-react/framework/FrameworkContent.d.ts +5 -0
  623. package/lib/esm/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  624. package/lib/esm/appui-react/framework/FrameworkContent.js +4 -0
  625. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  626. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +2 -0
  627. package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts.map +1 -1
  628. package/lib/esm/appui-react/framework/FrameworkDialogs.js +4 -0
  629. package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
  630. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +17 -1
  631. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  632. package/lib/esm/appui-react/framework/FrameworkFrontstages.js +8 -0
  633. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  634. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +2 -0
  635. package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts.map +1 -1
  636. package/lib/esm/appui-react/framework/FrameworkToolSettings.js +1 -0
  637. package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
  638. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  639. package/lib/esm/appui-react/frontstage/FrontstageDef.js +24 -22
  640. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  641. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +29 -33
  642. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  643. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +46 -51
  644. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  645. package/lib/esm/appui-react/frontstage/ModalSettingsStage.d.ts.map +1 -1
  646. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +8 -6
  647. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  648. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +4 -4
  649. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
  650. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +4 -5
  651. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  652. package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
  653. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js +1 -0
  654. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  655. package/lib/esm/appui-react/hooks/useActiveStageId.js +2 -1
  656. package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
  657. package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
  658. package/lib/esm/appui-react/hooks/useActiveViewport.js +2 -0
  659. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  660. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
  661. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  662. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
  663. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  664. package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
  665. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  666. package/lib/esm/appui-react/hooks/useTranslation.d.ts +7 -0
  667. package/lib/esm/appui-react/hooks/useTranslation.d.ts.map +1 -0
  668. package/lib/esm/appui-react/hooks/useTranslation.js +25 -0
  669. package/lib/esm/appui-react/hooks/useTranslation.js.map +1 -0
  670. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  671. package/lib/esm/appui-react/hooks/useUiVisibility.js +1 -0
  672. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  673. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.d.ts.map +1 -1
  674. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js +1 -0
  675. package/lib/esm/appui-react/keyboardshortcut/InternalKeyboardShortcut.js.map +1 -1
  676. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +1 -0
  677. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
  678. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -1
  679. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  680. package/lib/esm/appui-react/layout/StandardLayout.scss +1 -1
  681. package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
  682. package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
  683. package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
  684. package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
  685. package/lib/esm/appui-react/layout/footer/_variables.scss +0 -2
  686. package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
  687. package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
  688. package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
  689. package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
  690. package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts +3 -2
  691. package/lib/esm/appui-react/layout/state/NineZoneAction.d.ts.map +1 -1
  692. package/lib/esm/appui-react/layout/state/NineZoneAction.js.map +1 -1
  693. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.d.ts.map +1 -1
  694. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +15 -16
  695. package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
  696. package/lib/esm/appui-react/layout/state/PanelState.d.ts +2 -5
  697. package/lib/esm/appui-react/layout/state/PanelState.d.ts.map +1 -1
  698. package/lib/esm/appui-react/layout/state/PanelState.js.map +1 -1
  699. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
  700. package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
  701. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts +4 -3
  702. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.d.ts.map +1 -1
  703. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js +10 -8
  704. package/lib/esm/appui-react/layout/state/internal/PanelStateHelpers.js.map +1 -1
  705. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
  706. package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
  707. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
  708. package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
  709. package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
  710. package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
  711. package/lib/esm/appui-react/layout/tool-settings/Docked.js +2 -2
  712. package/lib/esm/appui-react/layout/tool-settings/Docked.js.map +1 -1
  713. package/lib/esm/appui-react/layout/tool-settings/Docked.scss +3 -13
  714. package/lib/esm/appui-react/layout/tool-settings/Handle.scss +2 -2
  715. package/lib/esm/appui-react/layout/tool-settings/Setting.js +1 -1
  716. package/lib/esm/appui-react/layout/tool-settings/Setting.js.map +1 -1
  717. package/lib/esm/appui-react/layout/tool-settings/Setting.scss +1 -2
  718. package/lib/esm/appui-react/layout/widget/Button.d.ts +3 -2
  719. package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
  720. package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
  721. package/lib/esm/appui-react/layout/widget/ContentContainer.js +1 -1
  722. package/lib/esm/appui-react/layout/widget/ContentContainer.js.map +1 -1
  723. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts +3 -3
  724. package/lib/esm/appui-react/layout/widget/ContentManager.d.ts.map +1 -1
  725. package/lib/esm/appui-react/layout/widget/ContentManager.js +7 -1
  726. package/lib/esm/appui-react/layout/widget/ContentManager.js.map +1 -1
  727. package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
  728. package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
  729. package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
  730. package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
  731. package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
  732. package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
  733. package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
  734. package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
  735. package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
  736. package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
  737. package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
  738. package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
  739. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
  740. package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
  741. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
  742. package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
  743. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
  744. package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
  745. package/lib/esm/appui-react/messages/InputField.js +2 -1
  746. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  747. package/lib/esm/appui-react/messages/MessageManager.d.ts +12 -0
  748. package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
  749. package/lib/esm/appui-react/messages/MessageManager.js +18 -10
  750. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  751. package/lib/esm/appui-react/messages/MessageRenderer.js +8 -9
  752. package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -1
  753. package/lib/esm/appui-react/messages/Pointer.d.ts +2 -0
  754. package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
  755. package/lib/esm/appui-react/messages/Pointer.js +7 -9
  756. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  757. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +2 -0
  758. package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
  759. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -0
  760. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  761. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.d.ts.map +1 -1
  762. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js +2 -0
  763. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  764. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -0
  765. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
  766. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +11 -3
  767. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  768. package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
  769. package/lib/esm/appui-react/pickers/ListPicker.js +3 -1
  770. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  771. package/lib/esm/appui-react/pickers/ViewSelector.d.ts +2 -0
  772. package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
  773. package/lib/esm/appui-react/pickers/ViewSelector.js +9 -14
  774. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  775. package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
  776. package/lib/esm/appui-react/popup/CardPopup.js +2 -3
  777. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  778. package/lib/esm/appui-react/popup/ComponentPopup.d.ts.map +1 -1
  779. package/lib/esm/appui-react/popup/ComponentPopup.js +1 -1
  780. package/lib/esm/appui-react/popup/ComponentPopup.js.map +1 -1
  781. package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
  782. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  783. package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
  784. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  785. package/lib/esm/appui-react/popup/KeyinPalettePanel.d.ts.map +1 -1
  786. package/lib/esm/appui-react/popup/KeyinPalettePanel.js +8 -5
  787. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  788. package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
  789. package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
  790. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  791. package/lib/esm/appui-react/popup/PopupManager.d.ts +5 -1
  792. package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
  793. package/lib/esm/appui-react/popup/PopupManager.js +24 -24
  794. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  795. package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
  796. package/lib/esm/appui-react/popup/PositionPopup.js +1 -0
  797. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  798. package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
  799. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  800. package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
  801. package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -3
  802. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  803. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts +7 -0
  804. package/lib/esm/appui-react/preview/PreviewFeatures.d.ts.map +1 -1
  805. package/lib/esm/appui-react/preview/PreviewFeatures.js +8 -6
  806. package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
  807. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js +2 -2
  808. package/lib/esm/appui-react/preview/enable-maximized-widget/useMaximizedWidget.js.map +1 -1
  809. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js +1 -1
  810. package/lib/esm/appui-react/preview/horizontal-panel-alignment/PreviewHorizontalPanelAlign.js.map +1 -1
  811. package/lib/esm/appui-react/preview/new-toolbars/Badge.d.ts.map +1 -1
  812. package/lib/esm/appui-react/preview/new-toolbars/Badge.js +3 -3
  813. package/lib/esm/appui-react/preview/new-toolbars/Badge.js.map +1 -1
  814. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js +1 -1
  815. package/lib/esm/appui-react/preview/new-toolbars/CustomItem.js.map +1 -1
  816. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js +2 -2
  817. package/lib/esm/appui-react/preview/new-toolbars/GroupItem.js.map +1 -1
  818. package/lib/esm/appui-react/preview/new-toolbars/Item.js +1 -1
  819. package/lib/esm/appui-react/preview/new-toolbars/Item.js.map +1 -1
  820. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js +1 -1
  821. package/lib/esm/appui-react/preview/new-toolbars/OverflowButton.js.map +1 -1
  822. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js +2 -3
  823. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.js.map +1 -1
  824. package/lib/esm/appui-react/preview/new-toolbars/useOverflow.js.map +1 -1
  825. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts +11 -0
  826. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.d.ts.map +1 -0
  827. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js +36 -0
  828. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.js.map +1 -0
  829. package/lib/{cjs/appui-react/layout/footer/message-center/_variables.scss → esm/appui-react/preview/reparent-popout-widgets/PopoutThemeProvider.scss} +3 -1
  830. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts +7 -0
  831. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.d.ts.map +1 -0
  832. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js +21 -0
  833. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidget.js.map +1 -0
  834. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts +9 -0
  835. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.d.ts.map +1 -0
  836. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js +22 -0
  837. package/lib/esm/appui-react/preview/reparent-popout-widgets/PopoutWidgets.js.map +1 -0
  838. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts +13 -0
  839. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.d.ts.map +1 -0
  840. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js +41 -0
  841. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.js.map +1 -0
  842. package/lib/esm/appui-react/preview/reparent-popout-widgets/ReparentedPopoutWidget.scss +8 -0
  843. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts +18 -0
  844. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.d.ts.map +1 -0
  845. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js +25 -0
  846. package/lib/esm/appui-react/preview/reparent-popout-widgets/usePopoutsStore.js.map +1 -0
  847. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts +4 -0
  848. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.d.ts.map +1 -0
  849. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js +14 -0
  850. package/lib/esm/appui-react/preview/reparent-popout-widgets/useReparentPopoutWidget.js.map +1 -0
  851. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +1 -2
  852. package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
  853. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
  854. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  855. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.d.ts.map +1 -1
  856. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +9 -4
  857. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  858. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
  859. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  860. package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
  861. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +2 -1
  862. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  863. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +23 -3
  864. package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -1
  865. package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -1
  866. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +10 -7
  867. package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
  868. package/lib/esm/appui-react/stagepanels/StagePanelDef.js +37 -25
  869. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  870. package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
  871. package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
  872. package/lib/esm/appui-react/statusbar/Overflow.js +1 -1
  873. package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
  874. package/lib/esm/appui-react/statusbar/StatusBar.d.ts +1 -3
  875. package/lib/esm/appui-react/statusbar/StatusBar.d.ts.map +1 -1
  876. package/lib/esm/appui-react/statusbar/StatusBar.js +21 -13
  877. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  878. package/lib/esm/appui-react/statusbar/StatusBar.scss +18 -0
  879. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  880. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -0
  881. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  882. package/lib/esm/appui-react/statusfields/ActivityCenter.d.ts.map +1 -1
  883. package/lib/esm/appui-react/statusfields/ActivityCenter.js +4 -2
  884. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  885. package/lib/esm/appui-react/statusfields/SectionsField.js +1 -1
  886. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  887. package/lib/esm/appui-react/statusfields/SelectionScope.js +3 -3
  888. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  889. package/lib/esm/appui-react/statusfields/SelectionScope.scss +2 -2
  890. package/lib/esm/appui-react/statusfields/SnapMode.js +1 -1
  891. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  892. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts +11 -0
  893. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.d.ts.map +1 -0
  894. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js +87 -0
  895. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.js.map +1 -0
  896. package/lib/esm/appui-react/statusfields/message-center/MessageCenterField.scss +25 -0
  897. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts +26 -0
  898. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.d.ts.map +1 -0
  899. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js +24 -0
  900. package/lib/esm/appui-react/statusfields/message-center/MessageCenterMessage.js.map +1 -0
  901. package/lib/{cjs/appui-react/layout/footer/message-center/Message.scss → esm/appui-react/statusfields/message-center/MessageCenterMessage.scss} +8 -17
  902. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
  903. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -7
  904. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  905. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts +3 -2
  906. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.d.ts.map +1 -1
  907. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js +4 -2
  908. package/lib/esm/appui-react/syncui/InternalSyncUiEventDispatcher.js.map +1 -1
  909. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
  910. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +1 -0
  911. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  912. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts +2 -0
  913. package/lib/esm/appui-react/syncui/UiSyncEvent.d.ts.map +1 -1
  914. package/lib/esm/appui-react/syncui/UiSyncEvent.js +2 -0
  915. package/lib/esm/appui-react/syncui/UiSyncEvent.js.map +1 -1
  916. package/lib/esm/appui-react/theme/ThemeManager.js +2 -2
  917. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  918. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js +1 -2
  919. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  920. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  921. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +3 -2
  922. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  923. package/lib/esm/appui-react/toolbar/ToolbarHelper.js +7 -5
  924. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  925. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
  926. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  927. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +10 -17
  928. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  929. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +5 -3
  930. package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  931. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts +4 -4
  932. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.d.ts.map +1 -1
  933. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js +4 -5
  934. package/lib/esm/appui-react/toolsettings/InternalToolSettingsManager.js.map +1 -1
  935. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js +2 -1
  936. package/lib/esm/appui-react/toolsettings/ToolUiProvider.js.map +1 -1
  937. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
  938. package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
  939. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
  940. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  941. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +2 -3
  942. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  943. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +1 -0
  944. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
  945. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +11 -15
  946. package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
  947. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts +1 -1
  948. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.d.ts.map +1 -1
  949. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +14 -2
  950. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  951. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  952. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +7 -9
  953. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  954. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.d.ts.map +1 -1
  955. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -2
  956. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  957. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +45 -158
  958. package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
  959. package/lib/esm/appui-react/uistate/AppUiSettings.js +1 -0
  960. package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
  961. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  962. package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
  963. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  964. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +3 -3
  965. package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
  966. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  967. package/lib/esm/appui-react/widget-panels/Content.js +12 -11
  968. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  969. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts +13 -0
  970. package/lib/esm/appui-react/widget-panels/DockedBar.d.ts.map +1 -0
  971. package/lib/esm/appui-react/widget-panels/DockedBar.js +14 -0
  972. package/lib/esm/appui-react/widget-panels/DockedBar.js.map +1 -0
  973. package/lib/esm/appui-react/widget-panels/{StatusBar.scss → DockedBar.scss} +10 -4
  974. package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
  975. package/lib/esm/appui-react/widget-panels/Frontstage.js +17 -19
  976. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  977. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js +2 -1
  978. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  979. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts +0 -1
  980. package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
  981. package/lib/esm/appui-react/widget-panels/StatusBar.js +2 -5
  982. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  983. package/lib/esm/appui-react/widget-panels/Tab.d.ts.map +1 -1
  984. package/lib/esm/appui-react/widget-panels/Tab.js +3 -4
  985. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  986. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +0 -12
  987. package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
  988. package/lib/esm/appui-react/widget-panels/ToolSettings.js +28 -52
  989. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  990. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +4 -27
  991. package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
  992. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  993. package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -1
  994. package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -1
  995. package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
  996. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  997. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +8 -5
  998. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  999. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.d.ts +1 -1
  1000. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js +1 -1
  1001. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  1002. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -0
  1003. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  1004. package/lib/esm/appui-react/widgets/WidgetDef.js +10 -11
  1005. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  1006. package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
  1007. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  1008. package/lib/esm/appui-react/widgets/WidgetManager.d.ts +1 -6
  1009. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  1010. package/lib/esm/appui-react/widgets/WidgetManager.js +1 -6
  1011. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  1012. package/lib/esm/appui-react/widgets/useWidget.js +1 -1
  1013. package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
  1014. package/lib/esm/appui-react.d.ts +1 -1
  1015. package/lib/esm/appui-react.d.ts.map +1 -1
  1016. package/lib/esm/appui-react.js +1 -1
  1017. package/lib/esm/appui-react.js.map +1 -1
  1018. package/lib/public/locales/en/UiFramework.json +1 -1
  1019. package/package.json +13 -39
  1020. package/lib/cjs/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  1021. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +0 -1
  1022. package/lib/cjs/appui-react/layout/footer/Footer.d.ts +0 -33
  1023. package/lib/cjs/appui-react/layout/footer/Footer.d.ts.map +0 -1
  1024. package/lib/cjs/appui-react/layout/footer/Footer.js +0 -30
  1025. package/lib/cjs/appui-react/layout/footer/Footer.js.map +0 -1
  1026. package/lib/cjs/appui-react/layout/footer/Footer.scss +0 -61
  1027. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  1028. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  1029. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js +0 -32
  1030. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  1031. package/lib/cjs/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  1032. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  1033. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  1034. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js +0 -33
  1035. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  1036. package/lib/cjs/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  1037. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  1038. package/lib/cjs/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  1039. package/lib/cjs/appui-react/layout/footer/message-center/Message.js +0 -26
  1040. package/lib/cjs/appui-react/layout/footer/message-center/Message.js.map +0 -1
  1041. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  1042. package/lib/cjs/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  1043. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js +0 -26
  1044. package/lib/cjs/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  1045. package/lib/cjs/appui-react/layout/footer/message-center/Tab.scss +0 -60
  1046. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +0 -46
  1047. package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  1048. package/lib/cjs/appui-react/statusfields/MessageCenter.js +0 -132
  1049. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +0 -1
  1050. package/lib/cjs/appui-react/useTranslation.d.ts +0 -10
  1051. package/lib/cjs/appui-react/useTranslation.d.ts.map +0 -1
  1052. package/lib/cjs/appui-react/useTranslation.js.map +0 -1
  1053. package/lib/esm/appui-react/childwindow/PopoutWidget.d.ts.map +0 -1
  1054. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +0 -1
  1055. package/lib/esm/appui-react/layout/footer/Footer.d.ts +0 -33
  1056. package/lib/esm/appui-react/layout/footer/Footer.d.ts.map +0 -1
  1057. package/lib/esm/appui-react/layout/footer/Footer.js +0 -26
  1058. package/lib/esm/appui-react/layout/footer/Footer.js.map +0 -1
  1059. package/lib/esm/appui-react/layout/footer/Footer.scss +0 -61
  1060. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts +0 -29
  1061. package/lib/esm/appui-react/layout/footer/message-center/Dialog.d.ts.map +0 -1
  1062. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js +0 -28
  1063. package/lib/esm/appui-react/layout/footer/message-center/Dialog.js.map +0 -1
  1064. package/lib/esm/appui-react/layout/footer/message-center/Dialog.scss +0 -64
  1065. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts +0 -29
  1066. package/lib/esm/appui-react/layout/footer/message-center/Indicator.d.ts.map +0 -1
  1067. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js +0 -29
  1068. package/lib/esm/appui-react/layout/footer/message-center/Indicator.js.map +0 -1
  1069. package/lib/esm/appui-react/layout/footer/message-center/Indicator.scss +0 -106
  1070. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts +0 -22
  1071. package/lib/esm/appui-react/layout/footer/message-center/Message.d.ts.map +0 -1
  1072. package/lib/esm/appui-react/layout/footer/message-center/Message.js +0 -22
  1073. package/lib/esm/appui-react/layout/footer/message-center/Message.js.map +0 -1
  1074. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts +0 -24
  1075. package/lib/esm/appui-react/layout/footer/message-center/Tab.d.ts.map +0 -1
  1076. package/lib/esm/appui-react/layout/footer/message-center/Tab.js +0 -22
  1077. package/lib/esm/appui-react/layout/footer/message-center/Tab.js.map +0 -1
  1078. package/lib/esm/appui-react/layout/footer/message-center/Tab.scss +0 -60
  1079. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +0 -46
  1080. package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +0 -1
  1081. package/lib/esm/appui-react/statusfields/MessageCenter.js +0 -128
  1082. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +0 -1
  1083. package/lib/esm/appui-react/useTranslation.d.ts +0 -10
  1084. package/lib/esm/appui-react/useTranslation.d.ts.map +0 -1
  1085. package/lib/esm/appui-react/useTranslation.js +0 -16
  1086. package/lib/esm/appui-react/useTranslation.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SheetNavigationAid.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetNavigationAid.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 NavigationAids\n */\n\nimport \"./SheetNavigationAid.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n IModelConnection,\n ScreenViewport,\n SelectedViewportChangedArgs,\n} from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { ViewIdChangedEventArgs } from \"@itwin/imodel-components-react\";\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\nimport type { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\nimport { UiFramework } from \"../UiFramework\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport { NavigationAidControl } from \"./NavigationAidControl\";\nimport type { CardSelectedEventArgs } from \"./SheetsModalFrontstage\";\nimport { CardContainer, SheetsModalFrontstage } from \"./SheetsModalFrontstage\";\nimport { IconButton, ProgressRadial } from \"@itwin/itwinui-react\";\nimport { SvgChevronLeft, SvgChevronRight } from \"@itwin/itwinui-icons-react\";\n\n/** A Sheet Navigation Aid control.\n * @alpha\n */\nexport class SheetNavigationAidControl extends NavigationAidControl {\n public static navigationAidId = \"SheetNavigationAid\";\n\n constructor(info: ConfigurableCreateInfo, options: any) {\n super(info, options);\n this.reactNode = <SheetNavigationAid iModelConnection={options.imodel} />;\n }\n\n // istanbul ignore next\n public override getSize(): string | undefined {\n return \"96px\";\n }\n}\n\n/** Data displayed about sheet\n * @alpha\n */\nexport interface SheetData {\n name: string;\n viewId: string;\n}\n\n/** Properties for the [[SheetNavigationAid]] component\n * @alpha\n */\nexport interface SheetNavigationProps extends CommonProps {\n iModelConnection: IModelConnection;\n}\n\n/** @internal */\ninterface SheetNavigationState {\n index: number;\n sheetData: SheetData[];\n}\n\n/** A Sheet Navigation Aid.\n * @alpha\n */\nexport class SheetNavigationAid extends React.Component<\n SheetNavigationProps,\n SheetNavigationState\n> {\n private _isMounted = false;\n\n /** @internal */\n public override readonly state: Readonly<SheetNavigationState> = {\n index: 0,\n sheetData: [],\n };\n\n private _viewport: ScreenViewport | undefined;\n\n constructor(props: SheetNavigationProps) {\n super(props);\n\n this._viewport = IModelApp.viewManager.selectedView;\n }\n\n /** Adds listeners when components mounts */\n public override async componentDidMount() {\n this._isMounted = true;\n\n CardContainer.onCardSelectedEvent.addListener(this._handleCardSelected);\n ViewportComponentEvents.onViewIdChangedEvent.addListener(\n this._handleViewIdChanged\n );\n\n IModelApp.viewManager.onSelectedViewportChanged.addListener(\n this._handleSelectedViewportChanged\n );\n\n const stateData = await this._setupSheets();\n\n if (this._isMounted) this.setState(stateData);\n }\n\n /** Removes listeners when component will unmount */\n public override componentWillUnmount() {\n this._isMounted = false;\n\n CardContainer.onCardSelectedEvent.removeListener(this._handleCardSelected);\n ViewportComponentEvents.onViewIdChangedEvent.removeListener(\n this._handleViewIdChanged\n );\n\n IModelApp.viewManager.onSelectedViewportChanged.removeListener(\n this._handleSelectedViewportChanged\n );\n }\n\n /** Queries for sheet info and sets as sheetData */\n private async _setupSheets(): Promise<SheetNavigationState> {\n const stateData: SheetNavigationState = {\n index: 0,\n sheetData: [],\n };\n\n // istanbul ignore else\n if (\n !this.props.iModelConnection ||\n !this.props.iModelConnection.views.getViewList\n )\n return stateData;\n\n // istanbul ignore next\n let viewId = \"\";\n // istanbul ignore next\n if (this._viewport) {\n viewId = this._viewport.view.id.toString();\n }\n\n // istanbul ignore next\n const sheets = await this.props.iModelConnection.views.getViewList({\n from: \"BisCore.SheetViewDefinition\",\n });\n // istanbul ignore next\n sheets.forEach((viewSpec: IModelConnection.ViewSpec, index: number) => {\n stateData.sheetData.push({ name: viewSpec.name, viewId: viewSpec.id });\n if (viewSpec.id === viewId) stateData.index = index;\n });\n\n // istanbul ignore next\n return stateData;\n }\n\n /** @internal */\n public override render(): React.ReactNode {\n const name =\n this.state.sheetData.length > 0\n ? /* istanbul ignore next */ this.state.sheetData[this.state.index].name\n : \"\";\n const leftIndex =\n this.state.index === 0\n ? this.state.sheetData.length - 1\n : /* istanbul ignore next */ this.state.index - 1;\n const rightIndex =\n this.state.index >= this.state.sheetData.length - 1\n ? 0\n : /* istanbul ignore next */ this.state.index + 1;\n const leftTitle = this.state.sheetData[leftIndex]\n ? /* istanbul ignore next */ this.state.sheetData[leftIndex].name\n : undefined;\n const rightTitle = this.state.sheetData[rightIndex]\n ? /* istanbul ignore next */ this.state.sheetData[rightIndex].name\n : undefined;\n\n let content: React.ReactNode;\n // istanbul ignore if\n if (this.state.sheetData.length > 0) {\n content = (\n <>\n <div className=\"sheet-title\">\n {UiFramework.translate(\"general.sheet\")}\n </div>\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <div\n className=\"sheet-name\"\n title={name}\n onClick={this._handleOnClickSheetName}\n role=\"button\"\n tabIndex={-1}\n >\n {name}\n </div>\n <div className=\"sheet-container\">\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <IconButton\n size=\"small\"\n styleType=\"borderless\"\n onClick={this._handleOnClickLeftArrow}\n tabIndex={-1}\n title={leftTitle}\n >\n <SvgChevronLeft />\n </IconButton>\n <div>\n {this.state.index + 1} {UiFramework.translate(\"general.of\")}\n {this.state.sheetData.length}\n </div>\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <IconButton\n size=\"small\"\n styleType=\"borderless\"\n onClick={this._handleOnClickRightArrow}\n role=\"button\"\n tabIndex={-1}\n title={rightTitle}\n >\n <SvgChevronRight />\n </IconButton>\n </div>\n </>\n );\n } else {\n content = <ProgressRadial size=\"x-small\" indeterminate />;\n }\n\n return (\n <div\n className={classnames(\"uifw-sheet-navigation\", this.props.className)}\n style={this.props.style}\n >\n {content}\n </div>\n );\n }\n\n /** Sets index of newly selected card */\n private _handleCardSelected = (event: CardSelectedEventArgs) => {\n event &&\n this.setState({\n index: event.index,\n });\n };\n\n /** Updates view to the next lowest index in sheetData */\n // istanbul ignore next\n private _handleOnClickLeftArrow = () => {\n this.setState(\n (prevState) => ({\n index:\n prevState.index <= 0\n ? prevState.sheetData.length - 1\n : prevState.index - 1,\n }),\n async () => this._updateView()\n );\n };\n\n /** Updates view to next highest index in sheetData */\n // istanbul ignore next\n private _handleOnClickRightArrow = () => {\n this.setState(\n (prevState) => ({\n index: (prevState.index + 1) % prevState.sheetData.length,\n }),\n async () => this._updateView()\n );\n };\n\n /** Handles a Viewport change & synchs the index */\n // istanbul ignore next\n private _handleSelectedViewportChanged = (\n args: SelectedViewportChangedArgs\n ) => {\n if (args.current) {\n this._handleViewportChanged(args.current);\n }\n };\n\n // istanbul ignore next\n private _handleViewIdChanged = (args: ViewIdChangedEventArgs) => {\n if (this._viewport === args.viewport)\n this._handleViewportChanged(args.viewport as ScreenViewport);\n };\n\n /** Handles a Viewport change & synchs the index */\n // istanbul ignore next\n private _handleViewportChanged = (viewport: ScreenViewport) => {\n const className = ViewUtilities.getBisBaseClass(\n viewport.view.classFullName\n );\n\n if (ViewUtilities.isSheet(className)) {\n this._viewport = viewport;\n\n const viewId = this._viewport.view.id.toString();\n\n const index = this.state.sheetData.findIndex((sheetData: SheetData) => {\n return viewId === sheetData.viewId;\n });\n\n if (index >= 0) this.setState({ index });\n }\n };\n\n /** Updates view to currently set sheet */\n // istanbul ignore next\n private async _updateView() {\n const viewState = await this.props.iModelConnection.views.load(\n this.state.sheetData[this.state.index].viewId\n );\n if (this._viewport) this._viewport.changeView(viewState);\n }\n\n /** Creates a new SheetsModalFrontstage */\n // istanbul ignore next\n private modalFrontstage(): ModalFrontstageInfo {\n return new SheetsModalFrontstage(\n this.state.sheetData,\n this.props.iModelConnection,\n this.state.index\n );\n }\n\n /** Opens a new SheetsModelFrontstage on sheetName click */\n // istanbul ignore next\n private _handleOnClickSheetName = () => {\n UiFramework.frontstages.openModalFrontstage(this.modalFrontstage());\n };\n}\n"]}
1
+ {"version":3,"file":"SheetNavigationAid.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetNavigationAid.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 NavigationAids\n */\n\nimport \"./SheetNavigationAid.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type {\n IModelConnection,\n ScreenViewport,\n SelectedViewportChangedArgs,\n} from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { ViewIdChangedEventArgs } from \"@itwin/imodel-components-react\";\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\nimport type { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\nimport { UiFramework } from \"../UiFramework\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport { NavigationAidControl } from \"./NavigationAidControl\";\nimport type { CardSelectedEventArgs } from \"./SheetsModalFrontstage\";\nimport { CardContainer, SheetsModalFrontstage } from \"./SheetsModalFrontstage\";\nimport { IconButton, ProgressRadial } from \"@itwin/itwinui-react\";\nimport { SvgChevronLeft, SvgChevronRight } from \"@itwin/itwinui-icons-react\";\n\n/** A Sheet Navigation Aid control.\n * @alpha\n */\nexport class SheetNavigationAidControl extends NavigationAidControl {\n public static navigationAidId = \"SheetNavigationAid\";\n\n constructor(info: ConfigurableCreateInfo, options: any) {\n super(info, options);\n this.reactNode = <SheetNavigationAid iModelConnection={options.imodel} />;\n }\n\n // istanbul ignore next\n public override getSize(): string | undefined {\n return \"96px\";\n }\n}\n\n/** Data displayed about sheet\n * @alpha\n */\nexport interface SheetData {\n name: string;\n viewId: string;\n}\n\n/** Properties for the [[SheetNavigationAid]] component\n * @alpha\n */\nexport interface SheetNavigationProps extends CommonProps {\n iModelConnection: IModelConnection;\n}\n\n/** @internal */\ninterface SheetNavigationState {\n index: number;\n sheetData: SheetData[];\n}\n\n/** A Sheet Navigation Aid.\n * @alpha\n */\nexport class SheetNavigationAid extends React.Component<\n SheetNavigationProps,\n SheetNavigationState\n> {\n private _isMounted = false;\n\n /** @internal */\n public override readonly state: Readonly<SheetNavigationState> = {\n index: 0,\n sheetData: [],\n };\n\n private _viewport: ScreenViewport | undefined;\n\n constructor(props: SheetNavigationProps) {\n super(props);\n\n this._viewport = IModelApp.viewManager.selectedView;\n }\n\n /** Adds listeners when components mounts */\n public override async componentDidMount() {\n this._isMounted = true;\n\n CardContainer.onCardSelectedEvent.addListener(this._handleCardSelected);\n ViewportComponentEvents.onViewIdChangedEvent.addListener(\n this._handleViewIdChanged\n );\n\n IModelApp.viewManager.onSelectedViewportChanged.addListener(\n this._handleSelectedViewportChanged\n );\n\n const stateData = await this._setupSheets();\n\n if (this._isMounted) this.setState(stateData);\n }\n\n /** Removes listeners when component will unmount */\n public override componentWillUnmount() {\n this._isMounted = false;\n\n CardContainer.onCardSelectedEvent.removeListener(this._handleCardSelected);\n ViewportComponentEvents.onViewIdChangedEvent.removeListener(\n this._handleViewIdChanged\n );\n\n IModelApp.viewManager.onSelectedViewportChanged.removeListener(\n this._handleSelectedViewportChanged\n );\n }\n\n /** Queries for sheet info and sets as sheetData */\n private async _setupSheets(): Promise<SheetNavigationState> {\n const stateData: SheetNavigationState = {\n index: 0,\n sheetData: [],\n };\n\n // istanbul ignore else\n if (\n !this.props.iModelConnection ||\n !this.props.iModelConnection.views.getViewList\n )\n return stateData;\n\n // istanbul ignore next\n let viewId = \"\";\n // istanbul ignore next\n if (this._viewport) {\n viewId = this._viewport.view.id.toString();\n }\n\n // istanbul ignore next\n const sheets = await this.props.iModelConnection.views.getViewList({\n from: \"BisCore.SheetViewDefinition\",\n });\n // istanbul ignore next\n sheets.forEach((viewSpec: IModelConnection.ViewSpec, index: number) => {\n stateData.sheetData.push({ name: viewSpec.name, viewId: viewSpec.id });\n if (viewSpec.id === viewId) stateData.index = index;\n });\n\n // istanbul ignore next\n return stateData;\n }\n\n /** @internal */\n public override render(): React.ReactNode {\n const name =\n this.state.sheetData.length > 0\n ? /* istanbul ignore next */ this.state.sheetData[this.state.index].name\n : \"\";\n const leftIndex =\n this.state.index === 0\n ? this.state.sheetData.length - 1\n : /* istanbul ignore next */ this.state.index - 1;\n const rightIndex =\n this.state.index >= this.state.sheetData.length - 1\n ? 0\n : /* istanbul ignore next */ this.state.index + 1;\n const leftTitle = this.state.sheetData[leftIndex]\n ? /* istanbul ignore next */ this.state.sheetData[leftIndex].name\n : undefined;\n const rightTitle = this.state.sheetData[rightIndex]\n ? /* istanbul ignore next */ this.state.sheetData[rightIndex].name\n : undefined;\n\n let content: React.ReactNode;\n // istanbul ignore if\n if (this.state.sheetData.length > 0) {\n content = (\n <>\n <div className=\"sheet-title\">\n {UiFramework.translate(\"general.sheet\")}\n </div>\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <div\n className=\"sheet-name\"\n title={name}\n onClick={this._handleOnClickSheetName}\n role=\"button\"\n tabIndex={-1}\n >\n {name}\n </div>\n <div className=\"sheet-container\">\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <IconButton\n size=\"small\"\n styleType=\"borderless\"\n onClick={this._handleOnClickLeftArrow}\n tabIndex={-1}\n title={leftTitle}\n >\n <SvgChevronLeft />\n </IconButton>\n <div>\n {this.state.index + 1} {UiFramework.translate(\"general.of\")}\n {this.state.sheetData.length}\n </div>\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <IconButton\n size=\"small\"\n styleType=\"borderless\"\n onClick={this._handleOnClickRightArrow}\n role=\"button\"\n tabIndex={-1}\n title={rightTitle}\n >\n <SvgChevronRight />\n </IconButton>\n </div>\n </>\n );\n } else {\n content = <ProgressRadial size=\"x-small\" indeterminate />;\n }\n\n return (\n <div\n className={classnames(\"uifw-sheet-navigation\", this.props.className)}\n style={this.props.style}\n >\n {content}\n </div>\n );\n }\n\n /** Sets index of newly selected card */\n // eslint-disable-next-line deprecation/deprecation\n private _handleCardSelected = (event: CardSelectedEventArgs) => {\n event &&\n this.setState({\n index: event.index,\n });\n };\n\n /** Updates view to the next lowest index in sheetData */\n // istanbul ignore next\n private _handleOnClickLeftArrow = () => {\n this.setState(\n (prevState) => ({\n index:\n prevState.index <= 0\n ? prevState.sheetData.length - 1\n : prevState.index - 1,\n }),\n async () => this._updateView()\n );\n };\n\n /** Updates view to next highest index in sheetData */\n // istanbul ignore next\n private _handleOnClickRightArrow = () => {\n this.setState(\n (prevState) => ({\n index: (prevState.index + 1) % prevState.sheetData.length,\n }),\n async () => this._updateView()\n );\n };\n\n /** Handles a Viewport change & synchs the index */\n // istanbul ignore next\n private _handleSelectedViewportChanged = (\n args: SelectedViewportChangedArgs\n ) => {\n if (args.current) {\n this._handleViewportChanged(args.current);\n }\n };\n\n // istanbul ignore next\n // eslint-disable-next-line deprecation/deprecation\n private _handleViewIdChanged = (args: ViewIdChangedEventArgs) => {\n if (this._viewport === args.viewport)\n this._handleViewportChanged(args.viewport as ScreenViewport);\n };\n\n /** Handles a Viewport change & synchs the index */\n // istanbul ignore next\n private _handleViewportChanged = (viewport: ScreenViewport) => {\n const className = ViewUtilities.getBisBaseClass(\n viewport.view.classFullName\n );\n\n if (ViewUtilities.isSheet(className)) {\n this._viewport = viewport;\n\n const viewId = this._viewport.view.id.toString();\n\n const index = this.state.sheetData.findIndex((sheetData: SheetData) => {\n return viewId === sheetData.viewId;\n });\n\n if (index >= 0) this.setState({ index });\n }\n };\n\n /** Updates view to currently set sheet */\n // istanbul ignore next\n private async _updateView() {\n const viewState = await this.props.iModelConnection.views.load(\n this.state.sheetData[this.state.index].viewId\n );\n if (this._viewport) this._viewport.changeView(viewState);\n }\n\n /** Creates a new SheetsModalFrontstage */\n // istanbul ignore next\n private modalFrontstage(): ModalFrontstageInfo {\n return new SheetsModalFrontstage(\n this.state.sheetData,\n this.props.iModelConnection,\n this.state.index\n );\n }\n\n /** Opens a new SheetsModelFrontstage on sheetName click */\n // istanbul ignore next\n private _handleOnClickSheetName = () => {\n UiFramework.frontstages.openModalFrontstage(this.modalFrontstage());\n };\n}\n"]}
@@ -20,6 +20,7 @@ export interface CardInfo {
20
20
  }
21
21
  /** Arguments for CardSelectedEvent
22
22
  * @alpha
23
+ * @deprecated in 4.13.x. Event args are inferred from a listener. If explicit type is needed use a type helper.
23
24
  */
24
25
  export interface CardSelectedEventArgs {
25
26
  id: any;
@@ -27,6 +28,7 @@ export interface CardSelectedEventArgs {
27
28
  }
28
29
  /** Class for CardSelectedEvent
29
30
  * @alpha
31
+ * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.
30
32
  */
31
33
  export declare class CardSelectedEvent extends UiEvent<CardSelectedEventArgs> {
32
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SheetsModalFrontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AAEH,qBAAa,iBAAkB,SAAQ,OAAO,CAAC,qBAAqB,CAAC;CAAG;AAExE;;GAEG;AACH,qBAAa,qBAAsB,YAAW,mBAAmB;IACxD,KAAK,SAAgE;IAC5E,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAAmB;IACtC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAc;IAElC;;;;OAIG;gBAED,MAAM,EAAE,SAAS,EAAE,EACnB,UAAU,EAAE,gBAAgB,EAC5B,YAAY,EAAE,MAAM;IAOtB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAY3B,wBAAwB;IACxB,IAAW,OAAO,IAAI,KAAK,CAAC,SAAS,CAQpC;IAED,kDAAkD;IAClD,IAAW,WAAW,IAAI,KAAK,CAAC,SAAS,CAQxC;IAED,0CAA0C;IAE1C,OAAO,CAAC,yBAAyB,CAG/B;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC;IACpE,OAAO,CAAC,MAAM,CAAC,kBAAkB,CACP;IAE1B,kCAAkC;IAClC,WAAkB,mBAAmB,IAAI,iBAAiB,CAEzD;IAED,gBAAgB;IACA,MAAM;IA8BtB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAUhB;;;OAGG;YACW,mBAAmB;CAelC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;gBAChE,KAAK,EAAE,cAAc;IAKjC,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,aAAa,CAEnB;IAEc,MAAM;CAoCvB"}
1
+ {"version":3,"file":"SheetsModalFrontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAItD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC;CACb;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AAEH,qBAAa,iBAAkB,SAAQ,OAAO,CAAC,qBAAqB,CAAC;CAAG;AAExE;;GAEG;AACH,qBAAa,qBAAsB,YAAW,mBAAmB;IACxD,KAAK,SAAgE;IAC5E,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAAmB;IACtC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAc;IAElC;;;;OAIG;gBAED,MAAM,EAAE,SAAS,EAAE,EACnB,UAAU,EAAE,gBAAgB,EAC5B,YAAY,EAAE,MAAM;IAOtB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAY3B,wBAAwB;IACxB,IAAW,OAAO,IAAI,KAAK,CAAC,SAAS,CAQpC;IAED,kDAAkD;IAClD,IAAW,WAAW,IAAI,KAAK,CAAC,SAAS,CASxC;IAED,0CAA0C;IAE1C,OAAO,CAAC,yBAAyB,CAG/B;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC;IAEpE,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAA0C;IAE3E,kCAAkC;IAElC,WAAkB,mBAAmB,IAAI,iBAAiB,CAEzD;IAED,gBAAgB;IACA,MAAM;IAgCtB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAUhB;;;OAGG;YACW,mBAAmB;CAelC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;gBAChE,KAAK,EAAE,cAAc;IAKjC,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,aAAa,CAEnB;IAEc,MAAM;CAoCvB"}
@@ -13,8 +13,10 @@ import { UiEvent } from "@itwin/appui-abstract";
13
13
  import { FlexWrapContainer, Icon, ScrollView, SearchBox, } from "@itwin/core-react";
14
14
  import { UiFramework } from "../UiFramework";
15
15
  import { SvgDocument, SvgPlaceholder } from "@itwin/itwinui-icons-react";
16
+ import { BeUiEvent } from "@itwin/core-bentley";
16
17
  /** Class for CardSelectedEvent
17
18
  * @alpha
19
+ * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.
18
20
  */
19
21
  // eslint-disable-next-line deprecation/deprecation
20
22
  export class CardSelectedEvent extends UiEvent {
@@ -63,7 +65,9 @@ export class SheetsModalFrontstage {
63
65
  }
64
66
  /** Gets components to be placed in the app bar */
65
67
  get appBarRight() {
66
- return (React.createElement(SearchBox, { placeholder: UiFramework.translate("general.search"), onValueChanged: this._handleSearchValueChanged, valueChangedDelay: 250 }));
68
+ return (
69
+ // eslint-disable-next-line deprecation/deprecation
70
+ React.createElement(SearchBox, { placeholder: UiFramework.translate("general.search"), onValueChanged: this._handleSearchValueChanged, valueChangedDelay: 250 }));
67
71
  }
68
72
  }
69
73
  /** Displays cards in SheetModalFrontstage
@@ -71,12 +75,15 @@ export class SheetsModalFrontstage {
71
75
  */
72
76
  class CardContainer extends React.Component {
73
77
  /** Get CardSelectedEvent event */
78
+ // eslint-disable-next-line deprecation/deprecation
74
79
  static get onCardSelectedEvent() {
75
80
  return CardContainer._cardSelectedEvent;
76
81
  }
77
82
  /** @internal */
78
83
  render() {
79
- return (React.createElement(ScrollView, { className: this.props.className, style: this.props.style },
84
+ return (
85
+ // eslint-disable-next-line deprecation/deprecation
86
+ React.createElement(ScrollView, { className: this.props.className, style: this.props.style },
80
87
  React.createElement(FlexWrapContainer, null, this.props.cards.map((card, _index) => {
81
88
  let includeCard = true;
82
89
  if (this.props.searchValue) {
@@ -120,7 +127,8 @@ class CardContainer extends React.Component {
120
127
  });
121
128
  }
122
129
  }
123
- CardContainer._cardSelectedEvent = new CardSelectedEvent();
130
+ // eslint-disable-next-line deprecation/deprecation
131
+ CardContainer._cardSelectedEvent = new BeUiEvent();
124
132
  export { CardContainer };
125
133
  /** Displays information about an individual sheet
126
134
  * @alpha
@@ -1 +1 @@
1
- {"version":3,"file":"SheetsModalFrontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.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 NavigationAids\n */\n\nimport \"./SheetsModalFrontstage.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { IModelConnection } from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport type { CommonProps, IconSpec } from \"@itwin/core-react\";\nimport {\n FlexWrapContainer,\n Icon,\n ScrollView,\n SearchBox,\n} from \"@itwin/core-react\";\nimport type { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { SheetData } from \"./SheetNavigationAid\";\nimport { SvgDocument, SvgPlaceholder } from \"@itwin/itwinui-icons-react\";\n\n/** Data about a sheet card\n * @alpha\n */\nexport interface CardInfo {\n index: number;\n label: string;\n iconSpec: IconSpec;\n isActive: boolean;\n viewId: any;\n}\n\n/** Arguments for CardSelectedEvent\n * @alpha\n */\nexport interface CardSelectedEventArgs {\n id: any;\n index: number;\n}\n\n/** Class for CardSelectedEvent\n * @alpha\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class CardSelectedEvent extends UiEvent<CardSelectedEventArgs> {}\n\n/** Modal frontstage displaying sheet information in cards.\n * @alpha\n */\nexport class SheetsModalFrontstage implements ModalFrontstageInfo {\n public title = UiFramework.translate(\"navigationAid.sheetsModalFrontstage\");\n private _cards: CardInfo[] = [];\n private _connection: IModelConnection;\n private _currentIndex: number;\n private _searchValue: string = \"\";\n\n /**\n * Creates a SheetsModalFrontstage\n * @param sheets Collection of sheets available in SheetNavigationAid\n * @param connection IModelConnection to query for sheet ViewState\n */\n constructor(\n sheets: SheetData[],\n connection: IModelConnection,\n currentIndex: number\n ) {\n this._connection = connection;\n this._currentIndex = currentIndex;\n this._storeSheetsAsCards(sheets);\n }\n\n /**\n * Gathers card info from available sheets\n * @param sheets SheetData from available sheets\n */\n private _storeSheetsAsCards(sheets: SheetData[]) {\n sheets.forEach((sheet: SheetData, index: number) => {\n this._cards.push({\n index,\n label: sheet.name,\n iconSpec: <SvgDocument />,\n viewId: sheet.viewId,\n isActive: index === this._currentIndex,\n });\n });\n }\n\n /** Gets set of cards */\n public get content(): React.ReactNode {\n return (\n <CardContainer\n cards={this._cards}\n searchValue={this._searchValue}\n connection={this._connection}\n />\n );\n }\n\n /** Gets components to be placed in the app bar */\n public get appBarRight(): React.ReactNode {\n return (\n <SearchBox\n placeholder={UiFramework.translate(\"general.search\")}\n onValueChanged={this._handleSearchValueChanged}\n valueChangedDelay={250}\n />\n );\n }\n\n /** Updates stage based on search value */\n // istanbul ignore next\n private _handleSearchValueChanged = (value: string): void => {\n this._searchValue = value;\n UiFramework.frontstages.updateModalFrontstage();\n };\n}\n\n/** Properties for [[CardContainer]]\n * @alpha\n */\nexport interface CardContainerProps extends CommonProps {\n cards: CardInfo[];\n searchValue: string;\n connection: IModelConnection;\n}\n\n/** Displays cards in SheetModalFrontstage\n * @alpha\n */\nexport class CardContainer extends React.Component<CardContainerProps> {\n private static _cardSelectedEvent: CardSelectedEvent =\n new CardSelectedEvent();\n\n /** Get CardSelectedEvent event */\n public static get onCardSelectedEvent(): CardSelectedEvent {\n return CardContainer._cardSelectedEvent;\n }\n\n /** @internal */\n public override render() {\n return (\n <ScrollView className={this.props.className} style={this.props.style}>\n <FlexWrapContainer>\n {this.props.cards.map((card: CardInfo, _index: number) => {\n let includeCard = true;\n if (this.props.searchValue) {\n includeCard = this.contains(card.label, this.props.searchValue);\n }\n\n if (includeCard) {\n return (\n <SheetCard\n key={card.label}\n label={card.label}\n index={card.index}\n iconSpec={card.iconSpec}\n isActive={card.isActive}\n onClick={async () => this._handleCardSelected(card)}\n />\n );\n }\n\n return null;\n })}\n </FlexWrapContainer>\n </ScrollView>\n );\n }\n\n /**\n * Determines if string contains a substring\n * @param valueA The string to search through\n * @param valueB The value to search for\n * @return True if valueB can be found in valueA, false otherwise\n */\n private contains(valueA: string, valueB: string): boolean {\n if (!valueA || !valueB) return false;\n\n if (valueB.length > valueA.length) return false;\n\n return (\n valueA.toLocaleUpperCase().indexOf(valueB.toLocaleUpperCase(), 0) !== -1\n );\n }\n\n /**\n * Updates view with ViewState for selected card.\n * @param card Data about the sheet card selected.\n */\n private async _handleCardSelected(card: CardInfo) {\n // istanbul ignore if\n if (IModelApp.viewManager && IModelApp.viewManager.selectedView) {\n const vp = IModelApp.viewManager.selectedView;\n const viewState = await this.props.connection.views.load(card.viewId);\n vp.changeView(viewState);\n }\n\n card.isActive = true;\n UiFramework.frontstages.closeModalFrontstage();\n CardContainer.onCardSelectedEvent.emit({\n id: card.viewId,\n index: card.index,\n });\n }\n}\n\n/** Properties for [[SheetCard]]\n * @alpha\n */\nexport interface SheetCardProps {\n label: string;\n index: number;\n iconSpec: IconSpec;\n isActive: boolean;\n onClick: () => void;\n}\n\n/** State for [[SheetCard]]\n * @internal\n */\ninterface SheetCardState {\n isActive: boolean;\n isPressed: boolean;\n}\n\n/** Displays information about an individual sheet\n * @alpha\n */\nexport class SheetCard extends React.Component<SheetCardProps, SheetCardState> {\n constructor(props: SheetCardProps) {\n super(props);\n this.state = { isActive: this.props.isActive, isPressed: false };\n }\n\n private _onClick = () => {\n this.setState({ isActive: true }, () => this.props.onClick());\n };\n\n private _onMouseDown = () => {\n this.setState({ isPressed: true });\n };\n\n private _onMouseLeave = () => {\n if (this.state.isPressed) this.setState({ isPressed: false });\n };\n\n public override render() {\n const { label, index } = this.props;\n\n const className = classnames(\n \"uifw-sheet-card\",\n this.state.isActive && \"is-active\",\n this.state.isPressed && \"is-pressed\"\n );\n\n const iconSpec = this.props.iconSpec ? (\n this.props.iconSpec\n ) : (\n <SvgPlaceholder />\n );\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div\n className={className}\n onClick={this._onClick}\n onMouseDown={this._onMouseDown}\n onMouseLeave={this._onMouseLeave}\n role=\"button\"\n tabIndex={-1}\n >\n {label}\n <div className=\"sheet-image-container\">\n <div className=\"icon\">\n {\" \"}\n <Icon iconSpec={iconSpec} />\n </div>\n </div>\n <div className=\"sheet-index\">{index + 1}</div>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"SheetsModalFrontstage.js","sourceRoot":"","sources":["../../../../src/appui-react/navigationaids/SheetsModalFrontstage.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 NavigationAids\n */\n\nimport \"./SheetsModalFrontstage.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { IModelConnection } from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport type { CommonProps, IconSpec } from \"@itwin/core-react\";\nimport {\n FlexWrapContainer,\n Icon,\n ScrollView,\n SearchBox,\n} from \"@itwin/core-react\";\nimport type { ModalFrontstageInfo } from \"../framework/FrameworkFrontstages\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { SheetData } from \"./SheetNavigationAid\";\nimport { SvgDocument, SvgPlaceholder } from \"@itwin/itwinui-icons-react\";\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** Data about a sheet card\n * @alpha\n */\nexport interface CardInfo {\n index: number;\n label: string;\n iconSpec: IconSpec;\n isActive: boolean;\n viewId: any;\n}\n\n/** Arguments for CardSelectedEvent\n * @alpha\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 CardSelectedEventArgs {\n id: any;\n index: number;\n}\n\n/** Class for CardSelectedEvent\n * @alpha\n * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class CardSelectedEvent extends UiEvent<CardSelectedEventArgs> {}\n\n/** Modal frontstage displaying sheet information in cards.\n * @alpha\n */\nexport class SheetsModalFrontstage implements ModalFrontstageInfo {\n public title = UiFramework.translate(\"navigationAid.sheetsModalFrontstage\");\n private _cards: CardInfo[] = [];\n private _connection: IModelConnection;\n private _currentIndex: number;\n private _searchValue: string = \"\";\n\n /**\n * Creates a SheetsModalFrontstage\n * @param sheets Collection of sheets available in SheetNavigationAid\n * @param connection IModelConnection to query for sheet ViewState\n */\n constructor(\n sheets: SheetData[],\n connection: IModelConnection,\n currentIndex: number\n ) {\n this._connection = connection;\n this._currentIndex = currentIndex;\n this._storeSheetsAsCards(sheets);\n }\n\n /**\n * Gathers card info from available sheets\n * @param sheets SheetData from available sheets\n */\n private _storeSheetsAsCards(sheets: SheetData[]) {\n sheets.forEach((sheet: SheetData, index: number) => {\n this._cards.push({\n index,\n label: sheet.name,\n iconSpec: <SvgDocument />,\n viewId: sheet.viewId,\n isActive: index === this._currentIndex,\n });\n });\n }\n\n /** Gets set of cards */\n public get content(): React.ReactNode {\n return (\n <CardContainer\n cards={this._cards}\n searchValue={this._searchValue}\n connection={this._connection}\n />\n );\n }\n\n /** Gets components to be placed in the app bar */\n public get appBarRight(): React.ReactNode {\n return (\n // eslint-disable-next-line deprecation/deprecation\n <SearchBox\n placeholder={UiFramework.translate(\"general.search\")}\n onValueChanged={this._handleSearchValueChanged}\n valueChangedDelay={250}\n />\n );\n }\n\n /** Updates stage based on search value */\n // istanbul ignore next\n private _handleSearchValueChanged = (value: string): void => {\n this._searchValue = value;\n UiFramework.frontstages.updateModalFrontstage();\n };\n}\n\n/** Properties for [[CardContainer]]\n * @alpha\n */\nexport interface CardContainerProps extends CommonProps {\n cards: CardInfo[];\n searchValue: string;\n connection: IModelConnection;\n}\n\n/** Displays cards in SheetModalFrontstage\n * @alpha\n */\nexport class CardContainer extends React.Component<CardContainerProps> {\n // eslint-disable-next-line deprecation/deprecation\n private static _cardSelectedEvent = new BeUiEvent<CardSelectedEventArgs>();\n\n /** Get CardSelectedEvent event */\n // eslint-disable-next-line deprecation/deprecation\n public static get onCardSelectedEvent(): CardSelectedEvent {\n return CardContainer._cardSelectedEvent;\n }\n\n /** @internal */\n public override render() {\n return (\n // eslint-disable-next-line deprecation/deprecation\n <ScrollView className={this.props.className} style={this.props.style}>\n {/* eslint-disable-next-line deprecation/deprecation */}\n <FlexWrapContainer>\n {this.props.cards.map((card: CardInfo, _index: number) => {\n let includeCard = true;\n if (this.props.searchValue) {\n includeCard = this.contains(card.label, this.props.searchValue);\n }\n\n if (includeCard) {\n return (\n <SheetCard\n key={card.label}\n label={card.label}\n index={card.index}\n iconSpec={card.iconSpec}\n isActive={card.isActive}\n onClick={async () => this._handleCardSelected(card)}\n />\n );\n }\n\n return null;\n })}\n </FlexWrapContainer>\n </ScrollView>\n );\n }\n\n /**\n * Determines if string contains a substring\n * @param valueA The string to search through\n * @param valueB The value to search for\n * @return True if valueB can be found in valueA, false otherwise\n */\n private contains(valueA: string, valueB: string): boolean {\n if (!valueA || !valueB) return false;\n\n if (valueB.length > valueA.length) return false;\n\n return (\n valueA.toLocaleUpperCase().indexOf(valueB.toLocaleUpperCase(), 0) !== -1\n );\n }\n\n /**\n * Updates view with ViewState for selected card.\n * @param card Data about the sheet card selected.\n */\n private async _handleCardSelected(card: CardInfo) {\n // istanbul ignore if\n if (IModelApp.viewManager && IModelApp.viewManager.selectedView) {\n const vp = IModelApp.viewManager.selectedView;\n const viewState = await this.props.connection.views.load(card.viewId);\n vp.changeView(viewState);\n }\n\n card.isActive = true;\n UiFramework.frontstages.closeModalFrontstage();\n CardContainer.onCardSelectedEvent.emit({\n id: card.viewId,\n index: card.index,\n });\n }\n}\n\n/** Properties for [[SheetCard]]\n * @alpha\n */\nexport interface SheetCardProps {\n label: string;\n index: number;\n iconSpec: IconSpec;\n isActive: boolean;\n onClick: () => void;\n}\n\n/** State for [[SheetCard]]\n * @internal\n */\ninterface SheetCardState {\n isActive: boolean;\n isPressed: boolean;\n}\n\n/** Displays information about an individual sheet\n * @alpha\n */\nexport class SheetCard extends React.Component<SheetCardProps, SheetCardState> {\n constructor(props: SheetCardProps) {\n super(props);\n this.state = { isActive: this.props.isActive, isPressed: false };\n }\n\n private _onClick = () => {\n this.setState({ isActive: true }, () => this.props.onClick());\n };\n\n private _onMouseDown = () => {\n this.setState({ isPressed: true });\n };\n\n private _onMouseLeave = () => {\n if (this.state.isPressed) this.setState({ isPressed: false });\n };\n\n public override render() {\n const { label, index } = this.props;\n\n const className = classnames(\n \"uifw-sheet-card\",\n this.state.isActive && \"is-active\",\n this.state.isPressed && \"is-pressed\"\n );\n\n const iconSpec = this.props.iconSpec ? (\n this.props.iconSpec\n ) : (\n <SvgPlaceholder />\n );\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div\n className={className}\n onClick={this._onClick}\n onMouseDown={this._onMouseDown}\n onMouseLeave={this._onMouseLeave}\n role=\"button\"\n tabIndex={-1}\n >\n {label}\n <div className=\"sheet-image-container\">\n <div className=\"icon\">\n {\" \"}\n <Icon iconSpec={iconSpec} />\n </div>\n </div>\n <div className=\"sheet-index\">{index + 1}</div>\n </div>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ListPicker.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListPicker.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.tsx"],"names":[],"mappings":"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"}
@@ -105,7 +105,9 @@ export function getListPanel(props) {
105
105
  };
106
106
  return (React.createElement(Panel, { className: "ListPickerContainer" },
107
107
  React.createElement(Title, null, props.title),
108
- props.searchBox && props.onSearchValueChange && (React.createElement(SearchBox, { className: "ListPickerSearchBox", onValueChanged: props.onSearchValueChange })),
108
+ props.searchBox && props.onSearchValueChange && (
109
+ // eslint-disable-next-line deprecation/deprecation
110
+ React.createElement(SearchBox, { className: "ListPickerSearchBox", onValueChanged: props.onSearchValueChange })),
109
111
  React.createElement(Columns, null,
110
112
  React.createElement(GroupColumn, { className: "ListPicker-column" }, props.items.map(listItemToElement)))));
111
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ListPicker.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.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 Picker\n */\n\nimport \"./ListPicker.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport {\n Columns,\n GroupColumn,\n Panel,\n PopupItem,\n Title,\n} from \"@itwin/components-react\";\nimport type { CommonProps, SizeProps } from \"@itwin/core-react\";\nimport { Icon, SearchBox } from \"@itwin/core-react\";\nimport { ToolbarDragInteractionContext } from \"../toolbar/DragInteraction\";\nimport { UiFramework } from \"../UiFramework\";\nimport {\n SvgChevronDown,\n SvgChevronRight,\n SvgList,\n} from \"@itwin/itwinui-icons-react\";\n\n/** Enum for the list picker item type\n * @beta\n */\nexport enum ListItemType {\n Item = 0,\n Separator = 1,\n Container = 2,\n}\n\n/** List picker item\n * @beta\n */\nexport interface ListItem {\n [key: string]: any;\n id?: string;\n name?: string;\n enabled: boolean;\n type?: ListItemType;\n children?: ListItem[];\n}\n\n/** Properties for the [[ListPicker]] component\n * @beta\n */\nexport interface ListPickerProps {\n title: string;\n items: ListItem[];\n iconSpec?: string | React.ReactNode;\n setEnabled: (item: ListItem, enabled: boolean) => any;\n onExpanded?: (expand: boolean) => void;\n onSizeKnown?: (size: SizeProps) => void;\n searchBox?: boolean;\n onSearchValueChange?: (search: string) => void;\n panelOnly?: boolean;\n expanded?: boolean;\n}\n\n/** Properties for the [[ListPickerItem]] component\n * @beta\n */\nexport interface ListPickerItemProps extends CommonProps {\n key: any;\n isActive?: boolean;\n isFocused?: boolean;\n onClick?: () => void;\n label?: string;\n}\n\n/** List Picker Item React component\n * @beta\n */\nexport class ListPickerItem extends React.PureComponent<ListPickerItemProps> {\n /** Renders ListPickerItem */\n public override render() {\n const itemClassName = classnames(\n \"ListPicker-item\",\n this.props.isActive && \"is-active\",\n this.props.isFocused && \"is-focused\",\n this.props.className\n );\n // TODO - if cut off, show a title\n const title: string | undefined =\n this.props.label && this.props.label.length > 25\n ? this.props.label\n : undefined;\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div\n className={itemClassName}\n onClick={this.props.onClick}\n role=\"button\"\n tabIndex={-1}\n >\n <div className=\"label\" title={title}>\n {this.props.label}\n </div>\n </div>\n );\n }\n}\n\n/** Properties for the [[ExpandableSection]] component\n * @beta\n */\nexport interface ExpandableSectionProps extends CommonProps {\n title?: string;\n expanded?: boolean;\n /** Content */\n children?: React.ReactNode;\n}\n\n/** State for the [[ExpandableSection]] component\n * @internal\n */\ninterface ExpandableSectionState {\n expanded: boolean;\n}\n\n/** Expandable Section React component\n * @beta\n */\nexport class ExpandableSection extends React.PureComponent<\n ExpandableSectionProps,\n ExpandableSectionState\n> {\n /** Creates an ExpandableSection */\n constructor(props: ExpandableSectionProps) {\n super(props);\n this.state = { expanded: !!this.props.expanded };\n }\n\n public override async componentDidUpdate(\n prevProps: Readonly<ExpandableSectionProps>\n ) {\n if (this.props.expanded !== prevProps.expanded) {\n this.setState({ expanded: true });\n }\n }\n\n private _onClick = () => {\n this.setState((prevState) => ({ expanded: !prevState.expanded }));\n };\n\n /** Renders ExpandableSection */\n public override render() {\n const className = classnames(\n \"nz-toolbar-item-expandable-group-group\",\n this.props.className\n );\n\n const icon = this.state.expanded ? (\n <Icon iconSpec={<SvgChevronDown />} />\n ) : (\n <Icon iconSpec={<SvgChevronRight />} />\n );\n\n return (\n <Panel\n className={className}\n style={this.props.style}\n key={this.props.title}\n >\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <div\n onClick={this._onClick}\n className={\n this.state.expanded\n ? \"ListPickerInnerContainer-header-expanded\"\n : \"ListPickerInnerContainer-header\"\n }\n role=\"button\"\n tabIndex={-1}\n aria-expanded={this.state.expanded}\n >\n <div className=\"ListPickerInnerContainer-header-content\">\n <div className=\"ListPickerInnerContainer-expander\">{icon}</div>\n <div className=\"ListPickerInnerContainer-title\">\n {this.props.title}\n </div>\n </div>\n </div>\n {this.state.expanded ? (\n <GroupColumn>{this.props.children}</GroupColumn>\n ) : (\n <div />\n )}\n </Panel>\n );\n }\n}\n\n/** @beta */\nexport function getListPanel(props: ListPickerProps): React.ReactNode {\n const expandSingleSection = (): boolean => {\n const populatedContainers = props.items.filter((item: ListItem) => {\n return (\n item.type === ListItemType.Container && item.children!.length !== 0\n );\n });\n return populatedContainers.length === 1;\n };\n\n const listItemToElement = (item: ListItem, itemIndex: number) => {\n switch (item.type) {\n case ListItemType.Item:\n return (\n <ListPickerItem\n {...props}\n key={itemIndex.toString()}\n label={item.name}\n isActive={item.enabled}\n onClick={\n // istanbul ignore next\n () => {\n props.setEnabled(item, !item.enabled);\n }\n }\n />\n );\n case ListItemType.Separator:\n return (\n <div key={itemIndex.toString()} className=\"ListPicker-separator\" />\n );\n case ListItemType.Container:\n if (item.children!.length !== 0) {\n return (\n <ExpandableSection\n key={itemIndex.toString()}\n title={item.name}\n className=\"ListPickerInnerContainer\"\n expanded={\n props.expanded === true\n ? !expandSingleSection()\n : expandSingleSection()\n }\n >\n <GroupColumn>{item.children!.map(listItemToElement)}</GroupColumn>\n </ExpandableSection>\n );\n } else {\n return <div key={itemIndex.toString()} />;\n }\n // istanbul ignore next\n default:\n return <div key={itemIndex.toString()} />;\n }\n };\n\n return (\n <Panel className=\"ListPickerContainer\">\n <Title>{props.title}</Title>\n {props.searchBox && props.onSearchValueChange && (\n <SearchBox\n className=\"ListPickerSearchBox\"\n onValueChanged={props.onSearchValueChange}\n />\n )}\n <Columns>\n <GroupColumn className=\"ListPicker-column\">\n {props.items.map(listItemToElement)}\n </GroupColumn>\n </Columns>\n </Panel>\n );\n}\n\n/**\n * List picker toolbar popup item.\n * Used to provide an expandable list of items to enable/disable items.\n * @beta\n */\nfunction ListPickerPopupItem(props: ListPickerProps) {\n const icon = props.iconSpec ? (\n /* istanbul ignore next */ typeof props.iconSpec === \"string\" ? (\n <Icon iconSpec={props.iconSpec} />\n ) : (\n <i className=\"icon uifw-item-svg-icon\">{props.iconSpec}</i>\n )\n ) : (\n <Icon iconSpec={<SvgList />} />\n );\n\n return (\n <ToolbarDragInteractionContext.Consumer>\n {(isEnabled) => {\n return props.panelOnly === true ? (\n getListPanel(props)\n ) : (\n <PopupItem\n hideIndicator={isEnabled}\n icon={icon}\n title={props.title}\n panel={getListPanel(props)}\n />\n );\n }}\n </ToolbarDragInteractionContext.Consumer>\n );\n}\n\n/** Properties for the [[ListPicker]] component\n * @beta\n */\nexport interface ListPickerPropsExtended extends ListPickerProps {\n enableAllFunc?: () => void;\n disableAllFunc?: () => void;\n invertFunc?: () => void;\n}\n\n/**\n * List Picker that lets the user pick from a list of items to enable/disable\n * It also provides options to enable all, disable all and invert selection\n * @beta\n */\nexport class ListPicker extends React.Component<ListPickerPropsExtended> {\n public static get Key_All() {\n return -3;\n }\n public static get Key_None() {\n return -2;\n }\n public static get Key_Invert() {\n return -1;\n }\n public static get Key_Separator() {\n return -4;\n }\n\n /** Creates a ListPicker */\n constructor(props: ListPickerPropsExtended) {\n super(props);\n }\n\n // Creates an array of items containing the separator and special requests (all, none, invert)\n private createItems(items: ListItem[]): ListItem[] {\n const newItems: ListItem[] = [];\n\n // Create special buttons (All/None/Invert)\n if (this.props.enableAllFunc) {\n let allEnabled = true;\n items.map((item: ListItem) => {\n allEnabled = allEnabled && item.enabled;\n });\n newItems.push({\n key: ListPicker.Key_All,\n name: UiFramework.translate(\"pickerButtons.all\"),\n enabled: allEnabled,\n type: ListItemType.Item,\n });\n }\n if (this.props.disableAllFunc) {\n let allDisabled = false;\n items.map((item: ListItem) => {\n allDisabled = allDisabled || item.enabled;\n });\n newItems.push({\n key: ListPicker.Key_None,\n name: UiFramework.translate(\"pickerButtons.none\"),\n enabled: !allDisabled,\n type: ListItemType.Item,\n });\n }\n if (this.props.invertFunc) {\n newItems.push({\n key: ListPicker.Key_Invert,\n name: UiFramework.translate(\"pickerButtons.invert\"),\n enabled: false,\n type: ListItemType.Item,\n });\n }\n if (\n this.props.enableAllFunc ||\n this.props.disableAllFunc ||\n this.props.invertFunc\n ) {\n newItems.push({\n key: ListPicker.Key_Separator,\n name: UiFramework.translate(\"pickerButtons.separator\"),\n enabled: false,\n type: ListItemType.Separator,\n });\n }\n\n // Push items\n items.map((item) => {\n newItems.push(item);\n });\n return newItems;\n }\n\n /**\n * Checks if item is a special item.\n * @param item Item to check\n */\n public isSpecialItem(item: ListItem) {\n return (\n item.key === ListPicker.Key_All ||\n item.key === ListPicker.Key_Invert ||\n item.key === ListPicker.Key_None ||\n item.type !== ListItemType.Item ||\n item.key === ListPicker.Key_Separator\n );\n }\n\n // Handle enabling/disabling the items\n // This will call the this.props.setEnabled function to provide the parent with a chance to process it\n private _setEnabled = (item: ListItem, enabled: boolean) => {\n if (this.isSpecialItem(item)) {\n switch (item.key) {\n case ListPicker.Key_All: {\n // istanbul ignore else\n if (this.props.enableAllFunc) this.props.enableAllFunc();\n return;\n }\n case ListPicker.Key_None: {\n // istanbul ignore else\n if (this.props.disableAllFunc) this.props.disableAllFunc();\n return;\n }\n case ListPicker.Key_Invert: {\n // istanbul ignore else\n if (this.props.invertFunc) this.props.invertFunc();\n return;\n }\n }\n }\n\n // Call on parent to do processing of the item\n this.props.setEnabled(item, enabled);\n };\n\n /** Renders ListPicker */\n public override render() {\n return (\n <ListPickerPopupItem\n {...this.props}\n title={this.props.title}\n setEnabled={this._setEnabled}\n onExpanded={this.props.onExpanded}\n items={this.createItems(this.props.items)}\n iconSpec={this.props.iconSpec}\n />\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ListPicker.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ListPicker.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 Picker\n */\n\nimport \"./ListPicker.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport {\n Columns,\n GroupColumn,\n Panel,\n PopupItem,\n Title,\n} from \"@itwin/components-react\";\nimport type { CommonProps, SizeProps } from \"@itwin/core-react\";\nimport { Icon, SearchBox } from \"@itwin/core-react\";\nimport { ToolbarDragInteractionContext } from \"../toolbar/DragInteraction\";\nimport { UiFramework } from \"../UiFramework\";\nimport {\n SvgChevronDown,\n SvgChevronRight,\n SvgList,\n} from \"@itwin/itwinui-icons-react\";\n\n/** Enum for the list picker item type\n * @beta\n */\nexport enum ListItemType {\n Item = 0,\n Separator = 1,\n Container = 2,\n}\n\n/** List picker item\n * @beta\n */\nexport interface ListItem {\n [key: string]: any;\n id?: string;\n name?: string;\n enabled: boolean;\n type?: ListItemType;\n children?: ListItem[];\n}\n\n/** Properties for the [[ListPicker]] component\n * @beta\n */\nexport interface ListPickerProps {\n title: string;\n items: ListItem[];\n iconSpec?: string | React.ReactNode;\n setEnabled: (item: ListItem, enabled: boolean) => any;\n onExpanded?: (expand: boolean) => void;\n onSizeKnown?: (size: SizeProps) => void;\n searchBox?: boolean;\n onSearchValueChange?: (search: string) => void;\n panelOnly?: boolean;\n expanded?: boolean;\n}\n\n/** Properties for the [[ListPickerItem]] component\n * @beta\n */\nexport interface ListPickerItemProps extends CommonProps {\n key: any;\n isActive?: boolean;\n isFocused?: boolean;\n onClick?: () => void;\n label?: string;\n}\n\n/** List Picker Item React component\n * @beta\n */\nexport class ListPickerItem extends React.PureComponent<ListPickerItemProps> {\n /** Renders ListPickerItem */\n public override render() {\n const itemClassName = classnames(\n \"ListPicker-item\",\n this.props.isActive && \"is-active\",\n this.props.isFocused && \"is-focused\",\n this.props.className\n );\n // TODO - if cut off, show a title\n const title: string | undefined =\n this.props.label && this.props.label.length > 25\n ? this.props.label\n : undefined;\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div\n className={itemClassName}\n onClick={this.props.onClick}\n role=\"button\"\n tabIndex={-1}\n >\n <div className=\"label\" title={title}>\n {this.props.label}\n </div>\n </div>\n );\n }\n}\n\n/** Properties for the [[ExpandableSection]] component\n * @beta\n */\nexport interface ExpandableSectionProps extends CommonProps {\n title?: string;\n expanded?: boolean;\n /** Content */\n children?: React.ReactNode;\n}\n\n/** State for the [[ExpandableSection]] component\n * @internal\n */\ninterface ExpandableSectionState {\n expanded: boolean;\n}\n\n/** Expandable Section React component\n * @beta\n */\nexport class ExpandableSection extends React.PureComponent<\n ExpandableSectionProps,\n ExpandableSectionState\n> {\n /** Creates an ExpandableSection */\n constructor(props: ExpandableSectionProps) {\n super(props);\n this.state = { expanded: !!this.props.expanded };\n }\n\n public override async componentDidUpdate(\n prevProps: Readonly<ExpandableSectionProps>\n ) {\n if (this.props.expanded !== prevProps.expanded) {\n this.setState({ expanded: true });\n }\n }\n\n private _onClick = () => {\n this.setState((prevState) => ({ expanded: !prevState.expanded }));\n };\n\n /** Renders ExpandableSection */\n public override render() {\n const className = classnames(\n \"nz-toolbar-item-expandable-group-group\",\n this.props.className\n );\n\n const icon = this.state.expanded ? (\n <Icon iconSpec={<SvgChevronDown />} />\n ) : (\n <Icon iconSpec={<SvgChevronRight />} />\n );\n\n return (\n <Panel\n className={className}\n style={this.props.style}\n key={this.props.title}\n >\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <div\n onClick={this._onClick}\n className={\n this.state.expanded\n ? \"ListPickerInnerContainer-header-expanded\"\n : \"ListPickerInnerContainer-header\"\n }\n role=\"button\"\n tabIndex={-1}\n aria-expanded={this.state.expanded}\n >\n <div className=\"ListPickerInnerContainer-header-content\">\n <div className=\"ListPickerInnerContainer-expander\">{icon}</div>\n <div className=\"ListPickerInnerContainer-title\">\n {this.props.title}\n </div>\n </div>\n </div>\n {this.state.expanded ? (\n <GroupColumn>{this.props.children}</GroupColumn>\n ) : (\n <div />\n )}\n </Panel>\n );\n }\n}\n\n/** @beta */\nexport function getListPanel(props: ListPickerProps): React.ReactNode {\n const expandSingleSection = (): boolean => {\n const populatedContainers = props.items.filter((item: ListItem) => {\n return (\n item.type === ListItemType.Container && item.children!.length !== 0\n );\n });\n return populatedContainers.length === 1;\n };\n\n const listItemToElement = (item: ListItem, itemIndex: number) => {\n switch (item.type) {\n case ListItemType.Item:\n return (\n <ListPickerItem\n {...props}\n key={itemIndex.toString()}\n label={item.name}\n isActive={item.enabled}\n onClick={\n // istanbul ignore next\n () => {\n props.setEnabled(item, !item.enabled);\n }\n }\n />\n );\n case ListItemType.Separator:\n return (\n <div key={itemIndex.toString()} className=\"ListPicker-separator\" />\n );\n case ListItemType.Container:\n if (item.children!.length !== 0) {\n return (\n <ExpandableSection\n key={itemIndex.toString()}\n title={item.name}\n className=\"ListPickerInnerContainer\"\n expanded={\n props.expanded === true\n ? !expandSingleSection()\n : expandSingleSection()\n }\n >\n <GroupColumn>{item.children!.map(listItemToElement)}</GroupColumn>\n </ExpandableSection>\n );\n } else {\n return <div key={itemIndex.toString()} />;\n }\n // istanbul ignore next\n default:\n return <div key={itemIndex.toString()} />;\n }\n };\n\n return (\n <Panel className=\"ListPickerContainer\">\n <Title>{props.title}</Title>\n {props.searchBox && props.onSearchValueChange && (\n // eslint-disable-next-line deprecation/deprecation\n <SearchBox\n className=\"ListPickerSearchBox\"\n onValueChanged={props.onSearchValueChange}\n />\n )}\n <Columns>\n <GroupColumn className=\"ListPicker-column\">\n {props.items.map(listItemToElement)}\n </GroupColumn>\n </Columns>\n </Panel>\n );\n}\n\n/**\n * List picker toolbar popup item.\n * Used to provide an expandable list of items to enable/disable items.\n * @beta\n */\nfunction ListPickerPopupItem(props: ListPickerProps) {\n const icon = props.iconSpec ? (\n /* istanbul ignore next */ typeof props.iconSpec === \"string\" ? (\n <Icon iconSpec={props.iconSpec} />\n ) : (\n <i className=\"icon uifw-item-svg-icon\">{props.iconSpec}</i>\n )\n ) : (\n <Icon iconSpec={<SvgList />} />\n );\n\n return (\n <ToolbarDragInteractionContext.Consumer>\n {(isEnabled) => {\n return props.panelOnly === true ? (\n getListPanel(props)\n ) : (\n <PopupItem\n hideIndicator={isEnabled}\n icon={icon}\n title={props.title}\n panel={getListPanel(props)}\n />\n );\n }}\n </ToolbarDragInteractionContext.Consumer>\n );\n}\n\n/** Properties for the [[ListPicker]] component\n * @beta\n */\nexport interface ListPickerPropsExtended extends ListPickerProps {\n enableAllFunc?: () => void;\n disableAllFunc?: () => void;\n invertFunc?: () => void;\n}\n\n/**\n * List Picker that lets the user pick from a list of items to enable/disable\n * It also provides options to enable all, disable all and invert selection\n * @beta\n */\nexport class ListPicker extends React.Component<ListPickerPropsExtended> {\n public static get Key_All() {\n return -3;\n }\n public static get Key_None() {\n return -2;\n }\n public static get Key_Invert() {\n return -1;\n }\n public static get Key_Separator() {\n return -4;\n }\n\n /** Creates a ListPicker */\n constructor(props: ListPickerPropsExtended) {\n super(props);\n }\n\n // Creates an array of items containing the separator and special requests (all, none, invert)\n private createItems(items: ListItem[]): ListItem[] {\n const newItems: ListItem[] = [];\n\n // Create special buttons (All/None/Invert)\n if (this.props.enableAllFunc) {\n let allEnabled = true;\n items.map((item: ListItem) => {\n allEnabled = allEnabled && item.enabled;\n });\n newItems.push({\n key: ListPicker.Key_All,\n name: UiFramework.translate(\"pickerButtons.all\"),\n enabled: allEnabled,\n type: ListItemType.Item,\n });\n }\n if (this.props.disableAllFunc) {\n let allDisabled = false;\n items.map((item: ListItem) => {\n allDisabled = allDisabled || item.enabled;\n });\n newItems.push({\n key: ListPicker.Key_None,\n name: UiFramework.translate(\"pickerButtons.none\"),\n enabled: !allDisabled,\n type: ListItemType.Item,\n });\n }\n if (this.props.invertFunc) {\n newItems.push({\n key: ListPicker.Key_Invert,\n name: UiFramework.translate(\"pickerButtons.invert\"),\n enabled: false,\n type: ListItemType.Item,\n });\n }\n if (\n this.props.enableAllFunc ||\n this.props.disableAllFunc ||\n this.props.invertFunc\n ) {\n newItems.push({\n key: ListPicker.Key_Separator,\n name: UiFramework.translate(\"pickerButtons.separator\"),\n enabled: false,\n type: ListItemType.Separator,\n });\n }\n\n // Push items\n items.map((item) => {\n newItems.push(item);\n });\n return newItems;\n }\n\n /**\n * Checks if item is a special item.\n * @param item Item to check\n */\n public isSpecialItem(item: ListItem) {\n return (\n item.key === ListPicker.Key_All ||\n item.key === ListPicker.Key_Invert ||\n item.key === ListPicker.Key_None ||\n item.type !== ListItemType.Item ||\n item.key === ListPicker.Key_Separator\n );\n }\n\n // Handle enabling/disabling the items\n // This will call the this.props.setEnabled function to provide the parent with a chance to process it\n private _setEnabled = (item: ListItem, enabled: boolean) => {\n if (this.isSpecialItem(item)) {\n switch (item.key) {\n case ListPicker.Key_All: {\n // istanbul ignore else\n if (this.props.enableAllFunc) this.props.enableAllFunc();\n return;\n }\n case ListPicker.Key_None: {\n // istanbul ignore else\n if (this.props.disableAllFunc) this.props.disableAllFunc();\n return;\n }\n case ListPicker.Key_Invert: {\n // istanbul ignore else\n if (this.props.invertFunc) this.props.invertFunc();\n return;\n }\n }\n }\n\n // Call on parent to do processing of the item\n this.props.setEnabled(item, enabled);\n };\n\n /** Renders ListPicker */\n public override render() {\n return (\n <ListPickerPopupItem\n {...this.props}\n title={this.props.title}\n setEnabled={this._setEnabled}\n onExpanded={this.props.onExpanded}\n items={this.createItems(this.props.items)}\n iconSpec={this.props.iconSpec}\n />\n );\n }\n}\n"]}
@@ -8,6 +8,7 @@ import type { IModelConnection, ViewState } from "@itwin/core-frontend";
8
8
  import type { ListItem } from "./ListPicker";
9
9
  /** [[ViewSelectorChangedEvent]] Args interface.
10
10
  * @beta
11
+ * @deprecated in 4.13.x. Event args are inferred from a listener. If explicit type is needed use a type helper.
11
12
  */
12
13
  export interface ViewSelectorChangedEventArgs {
13
14
  iModelConnection: IModelConnection;
@@ -17,6 +18,7 @@ export interface ViewSelectorChangedEventArgs {
17
18
  }
18
19
  /** ViewSelector Changed Event class.
19
20
  * @beta
21
+ * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.
20
22
  */
21
23
  export declare class ViewSelectorChangedEvent extends UiEvent<ViewSelectorChangedEventArgs> {
22
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSelector.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAMxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAO7C;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,UAAU,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AAEH,qBAAa,wBAAyB,SAAQ,OAAO,CAAC,4BAA4B,CAAC;CAAG;AAEtF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,iBAAiB,EACjB,cAAc,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,CAC/D,CAAC;AAgBF;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,SAAS,CAC/C,iBAAiB,EACjB,iBAAiB,CAClB;IACC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAClB;IACpC,OAAO,CAAC,yBAAyB,CAAC,CAAa;IAC/C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAM;IAE1B,gBAAuB,YAAY,EAAE,wBAAwB,CAK3D;IAEF,4CAA4C;IAC5C,gBAAuB,0BAA0B,2BAChB;IAEjC;OACG;WACW,kBAAkB,CAC9B,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,GACnB,IAAI;IASP,6BAA6B;gBACjB,KAAK,EAAE,iBAAiB;IAiBd,iBAAiB;IAWjB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAMrD,oBAAoB;IAMpC,OAAO,CAAC,kCAAkC,CAOxC;IAEF,OAAO,CAAC,kBAAkB;IA2D1B;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0FvC;;;OAGG;IAEU,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BrD,OAAO,CAAC,WAAW,CA+DjB;IAIF,OAAO,CAAC,WAAW,CAOjB;IAEF;;OAEG;IACa,MAAM;CA2BvB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,oEAGzB,CAAC"}
1
+ {"version":3,"file":"ViewSelector.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAMxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAO7C;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,UAAU,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AAEH,qBAAa,wBAAyB,SAAQ,OAAO,CAAC,4BAA4B,CAAC;CAAG;AAEtF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,iBAAiB,EACjB,cAAc,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,CAC/D,CAAC;AAWF;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK,CAAC,SAAS,CAC/C,iBAAiB,EACjB,iBAAiB,CAClB;IACC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CACH;IACnD,OAAO,CAAC,yBAAyB,CAAC,CAAa;IAC/C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAM;IAE1B,gBAAuB,YAAY,EAAE,wBAAwB,CAK3D;IAEF,4CAA4C;IAC5C,gBAAuB,0BAA0B,2BAChB;IAEjC;OACG;WACW,kBAAkB,CAC9B,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,GACnB,IAAI;IASP,6BAA6B;gBACjB,KAAK,EAAE,iBAAiB;IAiBd,iBAAiB;IAWjB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAMrD,oBAAoB;IAMpC,OAAO,CAAC,kCAAkC,CAOxC;IAEF,OAAO,CAAC,kBAAkB;IA2D1B;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0FvC;;;OAGG;IAEU,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BrD,OAAO,CAAC,WAAW,CA+DjB;IAIF,OAAO,CAAC,WAAW,CAOjB;IAEF;;OAEG;IACa,MAAM;CA2BvB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,oEAGzB,CAAC"}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import * as React from "react";
9
9
  import { UiEvent } from "@itwin/appui-abstract";
10
- import { Logger } from "@itwin/core-bentley";
10
+ import { BeUiEvent, Logger } from "@itwin/core-bentley";
11
11
  import { FuzzySearch, IModelApp } from "@itwin/core-frontend";
12
12
  import { connectIModelConnection } from "../redux/connectIModel";
13
13
  import { UiFramework } from "../UiFramework";
@@ -17,15 +17,11 @@ import { debounce } from "lodash";
17
17
  import svgSavedView from "@bentley/icons-generic/icons/saved-view.svg";
18
18
  /** ViewSelector Changed Event class.
19
19
  * @beta
20
+ * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.
20
21
  */
21
22
  // eslint-disable-next-line deprecation/deprecation
22
23
  export class ViewSelectorChangedEvent extends UiEvent {
23
24
  }
24
- /** ViewSelector Show Update Event class.
25
- */
26
- // eslint-disable-next-line deprecation/deprecation
27
- class ViewSelectorShowUpdateEvent extends UiEvent {
28
- }
29
25
  /** View Selector React component
30
26
  * @beta
31
27
  */
@@ -201,11 +197,10 @@ class ViewSelector extends React.Component {
201
197
  const query = { wantPrivate: false };
202
198
  const specs = await this.props.imodel.views.getViewList(query);
203
199
  specs.forEach((spec) => {
204
- var _a;
205
200
  const viewItem = {
206
201
  key: spec.id,
207
202
  name: spec.name,
208
- enabled: spec.id === ((_a = IModelApp.viewManager.selectedView) === null || _a === void 0 ? void 0 : _a.view.id)
203
+ enabled: spec.id === IModelApp.viewManager.selectedView?.view.id
209
204
  ? true
210
205
  : false,
211
206
  type: ListItemType.Item,
@@ -230,16 +225,16 @@ class ViewSelector extends React.Component {
230
225
  sheetsFiltered = [];
231
226
  unknownFiltered = [];
232
227
  views3dFuzzySearchResults.forEach(function (result) {
233
- views3dFiltered === null || views3dFiltered === void 0 ? void 0 : views3dFiltered.push(result.item);
228
+ views3dFiltered?.push(result.item);
234
229
  });
235
230
  views2dFuzzySearchResults.forEach(function (result) {
236
- views2dFiltered === null || views2dFiltered === void 0 ? void 0 : views2dFiltered.push(result.item);
231
+ views2dFiltered?.push(result.item);
237
232
  });
238
233
  sheetsFuzzySearchResults.forEach(function (result) {
239
- sheetsFiltered === null || sheetsFiltered === void 0 ? void 0 : sheetsFiltered.push(result.item);
234
+ sheetsFiltered?.push(result.item);
240
235
  });
241
236
  unknownFuzzySearchResults.forEach(function (result) {
242
- unknownFiltered === null || unknownFiltered === void 0 ? void 0 : unknownFiltered.push(result.item);
237
+ unknownFiltered?.push(result.item);
243
238
  });
244
239
  }
245
240
  }
@@ -282,7 +277,7 @@ class ViewSelector extends React.Component {
282
277
  }, 300), panelOnly: this.state.panelOnly, expanded: this.state.expand }));
283
278
  }
284
279
  }
285
- ViewSelector._onViewSelectorShowUpdateEvent = new ViewSelectorShowUpdateEvent();
280
+ ViewSelector._onViewSelectorShowUpdateEvent = new BeUiEvent();
286
281
  ViewSelector.defaultProps = {
287
282
  showSpatials: true,
288
283
  showDrawings: true,
@@ -290,7 +285,7 @@ ViewSelector.defaultProps = {
290
285
  showUnknown: true,
291
286
  };
292
287
  /** Gets the [[ViewSelectorChangedEvent]] */
293
- ViewSelector.onViewSelectorChangedEvent = new ViewSelectorChangedEvent();
288
+ ViewSelector.onViewSelectorChangedEvent = new ViewSelectorChangedEvent(); // eslint-disable-line deprecation/deprecation
294
289
  export { ViewSelector };
295
290
  /** ViewSelector that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.
296
291
  * @beta
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSelector.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.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 Picker\n */\n\nimport * as React from \"react\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport type { Id64String } from \"@itwin/core-bentley\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport { FuzzySearch, IModelApp } from \"@itwin/core-frontend\";\nimport type { SupportsViewSelectorChange } from \"../content/ContentControl\";\nimport { connectIModelConnection } from \"../redux/connectIModel\";\nimport { UiFramework } from \"../UiFramework\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport type { ListItem } from \"./ListPicker\";\nimport { ListItemType, ListPicker } from \"./ListPicker\";\nimport { debounce } from \"lodash\";\nimport svgSavedView from \"@bentley/icons-generic/icons/saved-view.svg\";\n\n// cSpell:ignore Spatials\n\n/** [[ViewSelectorChangedEvent]] Args interface.\n * @beta\n */\nexport interface ViewSelectorChangedEventArgs {\n iModelConnection: IModelConnection;\n viewDefinitionId: Id64String;\n viewState: ViewState;\n name: string;\n}\n\n/** ViewSelector Changed Event class.\n * @beta\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ViewSelectorChangedEvent extends UiEvent<ViewSelectorChangedEventArgs> {}\n\n/** Properties for the [[ViewSelector]] component\n * @beta\n */\nexport interface ViewSelectorProps {\n imodel?: IModelConnection;\n listenForShowUpdates?: boolean;\n\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n searchBox?: boolean;\n panelOnly?: boolean;\n}\n\n/** State for the [[ViewSelector]] component\n * @beta\n */\ninterface ViewSelectorState {\n items: ListItem[];\n title: string;\n initialized: boolean;\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n searchBox: boolean;\n panelOnly: boolean;\n expand: boolean;\n}\n\n/** Default properties of [[ViewSelector]] component.\n * @beta\n */\nexport type ViewSelectorDefaultProps = Pick<\n ViewSelectorProps,\n \"showSpatials\" | \"showDrawings\" | \"showSheets\" | \"showUnknown\"\n>;\n\n/** ViewSelector Show Update Event Args interface.\n */\ninterface ViewSelectorShowUpdateEventArgs {\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n}\n\n/** ViewSelector Show Update Event class.\n */\n// eslint-disable-next-line deprecation/deprecation\nclass ViewSelectorShowUpdateEvent extends UiEvent<ViewSelectorShowUpdateEventArgs> {}\n\n/** View Selector React component\n * @beta\n */\nexport class ViewSelector extends React.Component<\n ViewSelectorProps,\n ViewSelectorState\n> {\n private static readonly _onViewSelectorShowUpdateEvent =\n new ViewSelectorShowUpdateEvent();\n private _removeShowUpdateListener?: () => void;\n private _isMounted = false;\n private _searchInput = \"\";\n\n public static readonly defaultProps: ViewSelectorDefaultProps = {\n showSpatials: true,\n showDrawings: true,\n showSheets: true,\n showUnknown: true,\n };\n\n /** Gets the [[ViewSelectorChangedEvent]] */\n public static readonly onViewSelectorChangedEvent =\n new ViewSelectorChangedEvent();\n\n /** Updates the ViewSelector show settings.\n */\n public static updateShowSettings(\n showSpatials: boolean,\n showDrawings: boolean,\n showSheets: boolean,\n showUnknown: boolean\n ): void {\n ViewSelector._onViewSelectorShowUpdateEvent.emit({\n showSpatials,\n showDrawings,\n showSheets,\n showUnknown,\n });\n }\n\n /** Creates a ViewSelector */\n constructor(props: ViewSelectorProps) {\n super(props);\n\n this.state = {\n items: new Array<ListItem>(),\n title: UiFramework.translate(\"viewTypes.views\"),\n initialized: false,\n showSpatials: props.showSpatials,\n showDrawings: props.showDrawings,\n showSheets: props.showSheets,\n showUnknown: props.showUnknown,\n searchBox: props.searchBox ? props.searchBox : true,\n panelOnly: props.panelOnly ? props.panelOnly : false,\n expand: false,\n };\n }\n\n public override async componentDidMount() {\n this._isMounted = true;\n if (this.props.listenForShowUpdates)\n this._removeShowUpdateListener =\n ViewSelector._onViewSelectorShowUpdateEvent.addListener(\n this._handleViewSelectorShowUpdateEvent\n );\n\n await this.loadViews();\n }\n\n public override async componentDidUpdate(prevProps: ViewSelectorProps) {\n if (this.props.imodel !== prevProps.imodel) {\n await this.loadViews();\n }\n }\n\n public override componentWillUnmount() {\n this._isMounted = false;\n // istanbul ignore else\n if (this._removeShowUpdateListener) this._removeShowUpdateListener();\n }\n\n private _handleViewSelectorShowUpdateEvent = (\n args: ViewSelectorShowUpdateEventArgs\n ): void => {\n // istanbul ignore next\n if (!this._isMounted) return;\n\n this.setState(args, async () => this.loadViews());\n };\n\n private setStateContainers(\n views3d: ListItem[],\n views2d: ListItem[],\n sheets: ListItem[],\n unknown?: ListItem[],\n views3dFiltered?: ListItem[],\n views2dFiltered?: ListItem[],\n sheetsFiltered?: ListItem[],\n unknownFiltered?: ListItem[]\n ) {\n const views3dContainer: ListItem = {\n key: \"views3dContainer\",\n name: UiFramework.translate(\"viewTypes.spatialViews\"),\n enabled: false,\n type: ListItemType.Container,\n children: views3dFiltered ? views3dFiltered : views3d,\n };\n\n const views2dContainer: ListItem = {\n key: \"views2dContainer\",\n name: UiFramework.translate(\"viewTypes.drawings\"),\n enabled: false,\n type: ListItemType.Container,\n children: views2dFiltered ? views2dFiltered : views2d,\n };\n\n const sheetContainer: ListItem = {\n key: \"sheetContainer\",\n name: UiFramework.translate(\"viewTypes.sheets\"),\n enabled: false,\n type: ListItemType.Container,\n children: sheetsFiltered ? sheetsFiltered : sheets,\n };\n\n const containers = [views3dContainer, views2dContainer, sheetContainer];\n\n // istanbul ignore if\n if (unknown && unknown.length > 0) {\n // This should never show, but just in case we missed a type of view state\n const unknownContainer: ListItem = {\n key: \"unknownContainer\",\n name: UiFramework.translate(\"viewTypes.others\"),\n enabled: false,\n type: ListItemType.Container,\n children: unknownFiltered ? unknownFiltered : unknown,\n };\n\n if (unknown.length !== 0) containers.push(unknownContainer);\n }\n\n // istanbul ignore next\n if (!this._isMounted) return;\n\n this.setState({\n items: containers,\n title: UiFramework.translate(\"viewTypes.views\"),\n initialized: true,\n });\n }\n /**\n * Query the views and set the initial state with the iModel's views.\n */\n public async loadViews(): Promise<void> {\n // Query views and add them to state\n const views3d: ListItem[] = [];\n const views2d: ListItem[] = [];\n const sheets: ListItem[] = [];\n const unknown: ListItem[] = [];\n let views3dFiltered: ListItem[] | undefined;\n let views2dFiltered: ListItem[] | undefined;\n let sheetsFiltered: ListItem[] | undefined;\n let unknownFiltered: ListItem[] | undefined;\n const fuzzy = new FuzzySearch<ListItem>();\n\n if (this.props.imodel && this.props.imodel.views.getViewList) {\n const query = { wantPrivate: false };\n const specs = await this.props.imodel.views.getViewList(query);\n\n specs.forEach((spec: IModelConnection.ViewSpec) => {\n const viewItem: ListItem = {\n key: spec.id,\n name: spec.name,\n enabled:\n spec.id === IModelApp.viewManager.selectedView?.view.id\n ? true\n : false,\n type: ListItemType.Item,\n };\n\n const className = ViewUtilities.getBisBaseClass(spec.class);\n\n if (ViewUtilities.isSpatial(className) && this.state.showSpatials)\n views3d.push(viewItem);\n else if (ViewUtilities.isDrawing(className) && this.state.showDrawings)\n views2d.push(viewItem);\n else if (ViewUtilities.isSheet(className) && this.state.showSheets)\n sheets.push(viewItem);\n else if (this.state.showUnknown) unknown.push(viewItem);\n });\n\n if (this._searchInput.length > 0) {\n const views3dFuzzySearchResults = fuzzy.search(\n views3d,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const views2dFuzzySearchResults = fuzzy.search(\n views2d,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const sheetsFuzzySearchResults = fuzzy.search(\n sheets,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const unknownFuzzySearchResults = fuzzy.search(\n unknown,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n views3dFiltered = [];\n views2dFiltered = [];\n sheetsFiltered = [];\n unknownFiltered = [];\n views3dFuzzySearchResults.forEach(function (result) {\n views3dFiltered?.push(result.item);\n });\n views2dFuzzySearchResults.forEach(function (result) {\n views2dFiltered?.push(result.item);\n });\n sheetsFuzzySearchResults.forEach(function (result) {\n sheetsFiltered?.push(result.item);\n });\n unknownFuzzySearchResults.forEach(function (result) {\n unknownFiltered?.push(result.item);\n });\n }\n }\n\n this.setStateContainers(\n views3d,\n views2d,\n sheets,\n unknown,\n views3dFiltered,\n views2dFiltered,\n sheetsFiltered,\n unknownFiltered\n );\n }\n\n /**\n * Update state of the entries in the widget.\n * @param viewId Identifier for the relevant view\n */\n // istanbul ignore next\n public async updateState(viewId?: any): Promise<void> {\n // Wait for initialization finished\n if (!this.state.initialized) return;\n\n // Query views and add them to state\n const views3d: ListItem[] = this.state.items[0].children!;\n const views2d: ListItem[] = this.state.items[1].children!;\n const sheets: ListItem[] = this.state.items[2].children!;\n const unknown: ListItem[] =\n this.state.items.length > 3 ? this.state.items[3].children! : [];\n\n const updateChildren = (item: ListItem) => {\n if (item.key === viewId) return { ...item, enabled: true };\n else return { ...item, enabled: false };\n };\n\n this.setStateContainers(\n views3d.map(updateChildren),\n views2d.map(updateChildren),\n sheets.map(updateChildren),\n unknown.map(updateChildren)\n );\n }\n\n // enable/disable the models\n // istanbul ignore next\n private _setEnabled = async (item: ListItem, _enabled: boolean) => {\n const activeContentControl =\n UiFramework.content.getActiveContentControl() as unknown as SupportsViewSelectorChange;\n if (\n !activeContentControl ||\n !activeContentControl.supportsViewSelectorChange\n ) {\n Logger.logError(\n UiFramework.loggerCategory(this),\n `No active ContentControl for ViewSelector change`\n );\n return;\n }\n\n // Enable the item temporarily to let user see that their click was registered\n // while we query for view state and change the current view which may take a bit\n if (_enabled && item.type !== ListItemType.Container) {\n // This itemMapper simply looks through all the list items and their nested children and enables the one\n // that we have registered to enable\n // Also disable all other items\n const itemMapper: (tempItem: ListItem) => ListItem = (\n tempItem: ListItem\n ) => {\n if (tempItem.type === ListItemType.Container) {\n return { ...tempItem, children: tempItem.children!.map(itemMapper) };\n } else if (tempItem.key === item.key) {\n return { ...tempItem, enabled: true };\n } else {\n return { ...tempItem, enabled: false };\n }\n };\n\n // Create the new array with the current item enabled\n const itemsWithEnabled = this.state.items.map(itemMapper);\n\n // istanbul ignore next\n if (!this._isMounted) return;\n\n // Update the state so that we show the user it was enabled while we work in the background\n this.setState({ items: itemsWithEnabled });\n }\n\n // Load the view state using the viewSpec's ID\n const viewState = await this.props.imodel!.views.load(item.key);\n\n // Let activeContentControl process the ViewSelector change\n await activeContentControl.processViewSelectorChange(\n this.props.imodel!,\n item.key,\n viewState,\n item.name!\n );\n\n // Emit a change event\n ViewSelector.onViewSelectorChangedEvent.emit({\n iModelConnection: this.props.imodel!,\n viewDefinitionId: item.key,\n viewState,\n name: item.name!,\n });\n\n // Set state to show enabled the view that got selected\n void this.updateState(item.key);\n };\n\n // Hook on the category selector being expanded so that we may initialize if needed\n // istanbul ignore next\n private _onExpanded = (expand: boolean) => {\n if (expand)\n void this.updateState(\n IModelApp.viewManager.selectedView\n ? IModelApp.viewManager.selectedView.view.id\n : undefined\n );\n };\n\n /**\n * Renders ViewSelector component\n */\n public override render() {\n const { imodel, ...props } = this.props;\n\n return (\n <ListPicker\n {...props}\n title={this.state.title}\n setEnabled={this._setEnabled}\n items={this.state.items}\n iconSpec={svgSavedView}\n onExpanded={this._onExpanded}\n searchBox={this.state.searchBox}\n onSearchValueChange={debounce((search: string) => {\n this._searchInput = search;\n if (\n this._isMounted &&\n this.state.expand === false &&\n this._searchInput.length > 0\n )\n this.setState({ expand: true });\n void this.loadViews();\n }, 300)}\n panelOnly={this.state.panelOnly}\n expanded={this.state.expand}\n />\n );\n }\n}\n\n/** ViewSelector that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.\n * @beta\n */\nexport const IModelConnectedViewSelector = connectIModelConnection(\n null,\n null\n)(ViewSelector);\n"]}
1
+ {"version":3,"file":"ViewSelector.js","sourceRoot":"","sources":["../../../../src/appui-react/pickers/ViewSelector.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 Picker\n */\n\nimport * as React from \"react\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport type { Id64String } from \"@itwin/core-bentley\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport { FuzzySearch, IModelApp } from \"@itwin/core-frontend\";\nimport type { SupportsViewSelectorChange } from \"../content/ContentControl\";\nimport { connectIModelConnection } from \"../redux/connectIModel\";\nimport { UiFramework } from \"../UiFramework\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport type { ListItem } from \"./ListPicker\";\nimport { ListItemType, ListPicker } from \"./ListPicker\";\nimport { debounce } from \"lodash\";\nimport svgSavedView from \"@bentley/icons-generic/icons/saved-view.svg\";\n\n// cSpell:ignore Spatials\n\n/** [[ViewSelectorChangedEvent]] Args interface.\n * @beta\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 ViewSelectorChangedEventArgs {\n iModelConnection: IModelConnection;\n viewDefinitionId: Id64String;\n viewState: ViewState;\n name: string;\n}\n\n/** ViewSelector Changed Event class.\n * @beta\n * @deprecated in 4.13.x. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ViewSelectorChangedEvent extends UiEvent<ViewSelectorChangedEventArgs> {}\n\n/** Properties for the [[ViewSelector]] component\n * @beta\n */\nexport interface ViewSelectorProps {\n imodel?: IModelConnection;\n listenForShowUpdates?: boolean;\n\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n searchBox?: boolean;\n panelOnly?: boolean;\n}\n\n/** State for the [[ViewSelector]] component\n * @beta\n */\ninterface ViewSelectorState {\n items: ListItem[];\n title: string;\n initialized: boolean;\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n searchBox: boolean;\n panelOnly: boolean;\n expand: boolean;\n}\n\n/** Default properties of [[ViewSelector]] component.\n * @beta\n */\nexport type ViewSelectorDefaultProps = Pick<\n ViewSelectorProps,\n \"showSpatials\" | \"showDrawings\" | \"showSheets\" | \"showUnknown\"\n>;\n\n/** ViewSelector Show Update Event Args interface.\n */\ninterface ViewSelectorShowUpdateEventArgs {\n showSpatials: boolean;\n showDrawings: boolean;\n showSheets: boolean;\n showUnknown: boolean;\n}\n\n/** View Selector React component\n * @beta\n */\nexport class ViewSelector extends React.Component<\n ViewSelectorProps,\n ViewSelectorState\n> {\n private static readonly _onViewSelectorShowUpdateEvent =\n new BeUiEvent<ViewSelectorShowUpdateEventArgs>();\n private _removeShowUpdateListener?: () => void;\n private _isMounted = false;\n private _searchInput = \"\";\n\n public static readonly defaultProps: ViewSelectorDefaultProps = {\n showSpatials: true,\n showDrawings: true,\n showSheets: true,\n showUnknown: true,\n };\n\n /** Gets the [[ViewSelectorChangedEvent]] */\n public static readonly onViewSelectorChangedEvent =\n new ViewSelectorChangedEvent(); // eslint-disable-line deprecation/deprecation\n\n /** Updates the ViewSelector show settings.\n */\n public static updateShowSettings(\n showSpatials: boolean,\n showDrawings: boolean,\n showSheets: boolean,\n showUnknown: boolean\n ): void {\n ViewSelector._onViewSelectorShowUpdateEvent.emit({\n showSpatials,\n showDrawings,\n showSheets,\n showUnknown,\n });\n }\n\n /** Creates a ViewSelector */\n constructor(props: ViewSelectorProps) {\n super(props);\n\n this.state = {\n items: new Array<ListItem>(),\n title: UiFramework.translate(\"viewTypes.views\"),\n initialized: false,\n showSpatials: props.showSpatials,\n showDrawings: props.showDrawings,\n showSheets: props.showSheets,\n showUnknown: props.showUnknown,\n searchBox: props.searchBox ? props.searchBox : true,\n panelOnly: props.panelOnly ? props.panelOnly : false,\n expand: false,\n };\n }\n\n public override async componentDidMount() {\n this._isMounted = true;\n if (this.props.listenForShowUpdates)\n this._removeShowUpdateListener =\n ViewSelector._onViewSelectorShowUpdateEvent.addListener(\n this._handleViewSelectorShowUpdateEvent\n );\n\n await this.loadViews();\n }\n\n public override async componentDidUpdate(prevProps: ViewSelectorProps) {\n if (this.props.imodel !== prevProps.imodel) {\n await this.loadViews();\n }\n }\n\n public override componentWillUnmount() {\n this._isMounted = false;\n // istanbul ignore else\n if (this._removeShowUpdateListener) this._removeShowUpdateListener();\n }\n\n private _handleViewSelectorShowUpdateEvent = (\n args: ViewSelectorShowUpdateEventArgs\n ): void => {\n // istanbul ignore next\n if (!this._isMounted) return;\n\n this.setState(args, async () => this.loadViews());\n };\n\n private setStateContainers(\n views3d: ListItem[],\n views2d: ListItem[],\n sheets: ListItem[],\n unknown?: ListItem[],\n views3dFiltered?: ListItem[],\n views2dFiltered?: ListItem[],\n sheetsFiltered?: ListItem[],\n unknownFiltered?: ListItem[]\n ) {\n const views3dContainer: ListItem = {\n key: \"views3dContainer\",\n name: UiFramework.translate(\"viewTypes.spatialViews\"),\n enabled: false,\n type: ListItemType.Container,\n children: views3dFiltered ? views3dFiltered : views3d,\n };\n\n const views2dContainer: ListItem = {\n key: \"views2dContainer\",\n name: UiFramework.translate(\"viewTypes.drawings\"),\n enabled: false,\n type: ListItemType.Container,\n children: views2dFiltered ? views2dFiltered : views2d,\n };\n\n const sheetContainer: ListItem = {\n key: \"sheetContainer\",\n name: UiFramework.translate(\"viewTypes.sheets\"),\n enabled: false,\n type: ListItemType.Container,\n children: sheetsFiltered ? sheetsFiltered : sheets,\n };\n\n const containers = [views3dContainer, views2dContainer, sheetContainer];\n\n // istanbul ignore if\n if (unknown && unknown.length > 0) {\n // This should never show, but just in case we missed a type of view state\n const unknownContainer: ListItem = {\n key: \"unknownContainer\",\n name: UiFramework.translate(\"viewTypes.others\"),\n enabled: false,\n type: ListItemType.Container,\n children: unknownFiltered ? unknownFiltered : unknown,\n };\n\n if (unknown.length !== 0) containers.push(unknownContainer);\n }\n\n // istanbul ignore next\n if (!this._isMounted) return;\n\n this.setState({\n items: containers,\n title: UiFramework.translate(\"viewTypes.views\"),\n initialized: true,\n });\n }\n /**\n * Query the views and set the initial state with the iModel's views.\n */\n public async loadViews(): Promise<void> {\n // Query views and add them to state\n const views3d: ListItem[] = [];\n const views2d: ListItem[] = [];\n const sheets: ListItem[] = [];\n const unknown: ListItem[] = [];\n let views3dFiltered: ListItem[] | undefined;\n let views2dFiltered: ListItem[] | undefined;\n let sheetsFiltered: ListItem[] | undefined;\n let unknownFiltered: ListItem[] | undefined;\n const fuzzy = new FuzzySearch<ListItem>();\n\n if (this.props.imodel && this.props.imodel.views.getViewList) {\n const query = { wantPrivate: false };\n const specs = await this.props.imodel.views.getViewList(query);\n\n specs.forEach((spec: IModelConnection.ViewSpec) => {\n const viewItem: ListItem = {\n key: spec.id,\n name: spec.name,\n enabled:\n spec.id === IModelApp.viewManager.selectedView?.view.id\n ? true\n : false,\n type: ListItemType.Item,\n };\n\n const className = ViewUtilities.getBisBaseClass(spec.class);\n\n if (ViewUtilities.isSpatial(className) && this.state.showSpatials)\n views3d.push(viewItem);\n else if (ViewUtilities.isDrawing(className) && this.state.showDrawings)\n views2d.push(viewItem);\n else if (ViewUtilities.isSheet(className) && this.state.showSheets)\n sheets.push(viewItem);\n else if (this.state.showUnknown) unknown.push(viewItem);\n });\n\n if (this._searchInput.length > 0) {\n const views3dFuzzySearchResults = fuzzy.search(\n views3d,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const views2dFuzzySearchResults = fuzzy.search(\n views2d,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const sheetsFuzzySearchResults = fuzzy.search(\n sheets,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n const unknownFuzzySearchResults = fuzzy.search(\n unknown,\n [\"name\"],\n this._searchInput\n ).results as ListItem[];\n views3dFiltered = [];\n views2dFiltered = [];\n sheetsFiltered = [];\n unknownFiltered = [];\n views3dFuzzySearchResults.forEach(function (result) {\n views3dFiltered?.push(result.item);\n });\n views2dFuzzySearchResults.forEach(function (result) {\n views2dFiltered?.push(result.item);\n });\n sheetsFuzzySearchResults.forEach(function (result) {\n sheetsFiltered?.push(result.item);\n });\n unknownFuzzySearchResults.forEach(function (result) {\n unknownFiltered?.push(result.item);\n });\n }\n }\n\n this.setStateContainers(\n views3d,\n views2d,\n sheets,\n unknown,\n views3dFiltered,\n views2dFiltered,\n sheetsFiltered,\n unknownFiltered\n );\n }\n\n /**\n * Update state of the entries in the widget.\n * @param viewId Identifier for the relevant view\n */\n // istanbul ignore next\n public async updateState(viewId?: any): Promise<void> {\n // Wait for initialization finished\n if (!this.state.initialized) return;\n\n // Query views and add them to state\n const views3d: ListItem[] = this.state.items[0].children!;\n const views2d: ListItem[] = this.state.items[1].children!;\n const sheets: ListItem[] = this.state.items[2].children!;\n const unknown: ListItem[] =\n this.state.items.length > 3 ? this.state.items[3].children! : [];\n\n const updateChildren = (item: ListItem) => {\n if (item.key === viewId) return { ...item, enabled: true };\n else return { ...item, enabled: false };\n };\n\n this.setStateContainers(\n views3d.map(updateChildren),\n views2d.map(updateChildren),\n sheets.map(updateChildren),\n unknown.map(updateChildren)\n );\n }\n\n // enable/disable the models\n // istanbul ignore next\n private _setEnabled = async (item: ListItem, _enabled: boolean) => {\n const activeContentControl =\n UiFramework.content.getActiveContentControl() as unknown as SupportsViewSelectorChange;\n if (\n !activeContentControl ||\n !activeContentControl.supportsViewSelectorChange\n ) {\n Logger.logError(\n UiFramework.loggerCategory(this),\n `No active ContentControl for ViewSelector change`\n );\n return;\n }\n\n // Enable the item temporarily to let user see that their click was registered\n // while we query for view state and change the current view which may take a bit\n if (_enabled && item.type !== ListItemType.Container) {\n // This itemMapper simply looks through all the list items and their nested children and enables the one\n // that we have registered to enable\n // Also disable all other items\n const itemMapper: (tempItem: ListItem) => ListItem = (\n tempItem: ListItem\n ) => {\n if (tempItem.type === ListItemType.Container) {\n return { ...tempItem, children: tempItem.children!.map(itemMapper) };\n } else if (tempItem.key === item.key) {\n return { ...tempItem, enabled: true };\n } else {\n return { ...tempItem, enabled: false };\n }\n };\n\n // Create the new array with the current item enabled\n const itemsWithEnabled = this.state.items.map(itemMapper);\n\n // istanbul ignore next\n if (!this._isMounted) return;\n\n // Update the state so that we show the user it was enabled while we work in the background\n this.setState({ items: itemsWithEnabled });\n }\n\n // Load the view state using the viewSpec's ID\n const viewState = await this.props.imodel!.views.load(item.key);\n\n // Let activeContentControl process the ViewSelector change\n await activeContentControl.processViewSelectorChange(\n this.props.imodel!,\n item.key,\n viewState,\n item.name!\n );\n\n // Emit a change event\n ViewSelector.onViewSelectorChangedEvent.emit({\n iModelConnection: this.props.imodel!,\n viewDefinitionId: item.key,\n viewState,\n name: item.name!,\n });\n\n // Set state to show enabled the view that got selected\n void this.updateState(item.key);\n };\n\n // Hook on the category selector being expanded so that we may initialize if needed\n // istanbul ignore next\n private _onExpanded = (expand: boolean) => {\n if (expand)\n void this.updateState(\n IModelApp.viewManager.selectedView\n ? IModelApp.viewManager.selectedView.view.id\n : undefined\n );\n };\n\n /**\n * Renders ViewSelector component\n */\n public override render() {\n const { imodel, ...props } = this.props;\n\n return (\n <ListPicker\n {...props}\n title={this.state.title}\n setEnabled={this._setEnabled}\n items={this.state.items}\n iconSpec={svgSavedView}\n onExpanded={this._onExpanded}\n searchBox={this.state.searchBox}\n onSearchValueChange={debounce((search: string) => {\n this._searchInput = search;\n if (\n this._isMounted &&\n this.state.expand === false &&\n this._searchInput.length > 0\n )\n this.setState({ expand: true });\n void this.loadViews();\n }, 300)}\n panelOnly={this.state.panelOnly}\n expanded={this.state.expand}\n />\n );\n }\n}\n\n/** ViewSelector that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.\n * @beta\n */\nexport const IModelConnectedViewSelector = connectIModelConnection(\n null,\n null\n)(ViewSelector);\n"]}