@itwin/appui-react 4.16.4 → 4.17.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 (420) hide show
  1. package/CHANGELOG.md +32 -1
  2. package/lib/cjs/appui-react/UiFramework.d.ts +5 -0
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +5 -0
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.d.ts +1 -0
  7. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.d.ts.map +1 -1
  8. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js +1 -0
  9. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +1 -0
  11. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +1 -0
  13. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts +1 -0
  15. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  17. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +1 -0
  18. package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  19. package/lib/cjs/appui-react/backstage/BackstageComposer.js +2 -0
  20. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  21. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +2 -1
  22. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  23. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js +2 -1
  24. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  25. package/lib/cjs/appui-react/childwindow/CopyStyles.d.ts.map +1 -1
  26. package/lib/cjs/appui-react/childwindow/CopyStyles.js +10 -5
  27. package/lib/cjs/appui-react/childwindow/CopyStyles.js.map +1 -1
  28. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -0
  29. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  30. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +7 -2
  31. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  32. package/lib/cjs/appui-react/content/ContentGroup.d.ts +8 -4
  33. package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
  34. package/lib/cjs/appui-react/content/ContentGroup.js +1 -1
  35. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  36. package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -1
  37. package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
  38. package/lib/cjs/appui-react/content/ContentLayout.js +44 -10
  39. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  40. package/lib/cjs/appui-react/content/ContentLayoutProps.d.ts +63 -0
  41. package/lib/cjs/appui-react/content/ContentLayoutProps.d.ts.map +1 -0
  42. package/lib/cjs/appui-react/content/ContentLayoutProps.js +10 -0
  43. package/lib/cjs/appui-react/content/ContentLayoutProps.js.map +1 -0
  44. package/lib/cjs/appui-react/content/ContentOverlay.d.ts +4 -0
  45. package/lib/cjs/appui-react/content/ContentOverlay.d.ts.map +1 -1
  46. package/lib/cjs/appui-react/content/ContentOverlay.js +33 -1
  47. package/lib/cjs/appui-react/content/ContentOverlay.js.map +1 -1
  48. package/lib/cjs/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  49. package/lib/cjs/appui-react/content/FloatingViewportContent.js +1 -1
  50. package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
  51. package/lib/cjs/appui-react/content/InternalContentLayoutManager.d.ts +1 -1
  52. package/lib/cjs/appui-react/content/InternalContentLayoutManager.d.ts.map +1 -1
  53. package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  54. package/lib/cjs/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  55. package/lib/cjs/appui-react/content/InternalContentViewManager.js +9 -3
  56. package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
  57. package/lib/cjs/appui-react/content/StageContentLayout.d.ts +1 -1
  58. package/lib/cjs/appui-react/content/StageContentLayout.d.ts.map +1 -1
  59. package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -1
  60. package/lib/cjs/appui-react/content/StandardContentLayouts.d.ts +20 -0
  61. package/lib/cjs/appui-react/content/StandardContentLayouts.d.ts.map +1 -0
  62. package/lib/cjs/appui-react/content/StandardContentLayouts.js +169 -0
  63. package/lib/cjs/appui-react/content/StandardContentLayouts.js.map +1 -0
  64. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts +1 -0
  65. package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts.map +1 -1
  66. package/lib/cjs/appui-react/content/split-pane/SplitPane.js +1 -0
  67. package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
  68. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +1 -1
  69. package/lib/cjs/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  70. package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
  71. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +3 -0
  72. package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  73. package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  74. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +1 -0
  75. package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  76. package/lib/cjs/appui-react/frontstage/FrontstageDef.js +2 -1
  77. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  78. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +2 -0
  79. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  80. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +5 -0
  81. package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  82. package/lib/cjs/appui-react/hooks/useConditionalProp.d.ts +3 -3
  83. package/lib/cjs/appui-react/hooks/useConditionalProp.d.ts.map +1 -1
  84. package/lib/cjs/appui-react/hooks/useConditionalProp.js.map +1 -1
  85. package/lib/cjs/appui-react/hooks/useConditionalValue.d.ts +1 -1
  86. package/lib/cjs/appui-react/hooks/useConditionalValue.js +1 -1
  87. package/lib/cjs/appui-react/hooks/useConditionalValue.js.map +1 -1
  88. package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  89. package/lib/cjs/appui-react/hooks/useUiVisibility.js +1 -0
  90. package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -1
  91. package/lib/cjs/appui-react/layout/base/LayoutStore.d.ts +3 -1
  92. package/lib/cjs/appui-react/layout/base/LayoutStore.d.ts.map +1 -1
  93. package/lib/cjs/appui-react/layout/base/LayoutStore.js +9 -1
  94. package/lib/cjs/appui-react/layout/base/LayoutStore.js.map +1 -1
  95. package/lib/cjs/appui-react/preview/new-toolbars/ToolGroup.scss +4 -0
  96. package/lib/cjs/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  97. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +27 -25
  98. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  99. package/lib/cjs/appui-react/shared/ConditionalValue.d.ts +10 -7
  100. package/lib/cjs/appui-react/shared/ConditionalValue.d.ts.map +1 -1
  101. package/lib/cjs/appui-react/shared/ConditionalValue.js +3 -4
  102. package/lib/cjs/appui-react/shared/ConditionalValue.js.map +1 -1
  103. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts +1 -0
  104. package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  105. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +10 -6
  106. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  107. package/lib/cjs/appui-react/statusbar/StatusBarCornerComponentContext.js +2 -0
  108. package/lib/cjs/appui-react/statusbar/StatusBarCornerComponentContext.js.map +1 -1
  109. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts +1 -0
  110. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
  111. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js +1 -0
  112. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  113. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +1 -0
  114. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  115. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +1 -0
  116. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  117. package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  118. package/lib/cjs/appui-react/statusfields/SelectionScope.js +1 -1
  119. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  120. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +2 -0
  121. package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  122. package/lib/cjs/appui-react/statusfields/SnapMode.js +59 -83
  123. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  124. package/lib/cjs/appui-react/theme/ThemeManager.d.ts +7 -8
  125. package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
  126. package/lib/cjs/appui-react/theme/ThemeManager.js +7 -8
  127. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  128. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts +1 -0
  129. package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  130. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +1 -0
  131. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  132. package/lib/cjs/appui-react/toolbar/ToolbarItem.d.ts +1 -1
  133. package/lib/cjs/appui-react/toolbar/ToolbarItem.js.map +1 -1
  134. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -1
  135. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js +11 -6
  136. package/lib/cjs/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  137. package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  138. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +23 -25
  139. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  140. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +1 -0
  141. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
  142. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js +1 -0
  143. package/lib/cjs/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  144. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +3 -2
  145. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  146. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +4 -2
  147. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  148. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +6 -2
  149. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  150. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +117 -88
  151. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  152. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +2 -2
  153. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  154. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +4 -2
  155. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  156. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +3 -2
  157. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  158. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +79 -60
  159. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  160. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +1 -0
  161. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  162. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -0
  163. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  164. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +4 -2
  165. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  166. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +6 -2
  167. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  168. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  169. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +16 -12
  170. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  171. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts +1 -0
  172. package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  173. package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
  174. package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
  175. package/lib/cjs/appui-react/utils/getActiveViewport.d.ts +10 -0
  176. package/lib/cjs/appui-react/utils/getActiveViewport.d.ts.map +1 -0
  177. package/lib/cjs/appui-react/utils/getActiveViewport.js +26 -0
  178. package/lib/cjs/appui-react/utils/getActiveViewport.js.map +1 -0
  179. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts +1 -0
  180. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  181. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +1 -0
  182. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  183. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +1 -0
  184. package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  185. package/lib/cjs/appui-react/widgets/BasicToolWidget.js +1 -0
  186. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  187. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts +1 -0
  188. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  189. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +3 -1
  190. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  191. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts +2 -0
  192. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  193. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +2 -0
  194. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  195. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts +2 -1
  196. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
  197. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js +1 -0
  198. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  199. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts +1 -0
  200. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  201. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +1 -0
  202. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  203. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +1 -1
  204. package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  205. package/lib/cjs/appui-react/widgets/WidgetDef.js +7 -7
  206. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  207. package/lib/cjs/appui-react.d.ts +3 -0
  208. package/lib/cjs/appui-react.d.ts.map +1 -1
  209. package/lib/cjs/appui-react.js +3 -0
  210. package/lib/cjs/appui-react.js.map +1 -1
  211. package/lib/esm/appui-react/UiFramework.d.ts +5 -0
  212. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  213. package/lib/esm/appui-react/UiFramework.js +6 -1
  214. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  215. package/lib/esm/appui-react/accudraw/AccuDrawDialog.d.ts +1 -0
  216. package/lib/esm/appui-react/accudraw/AccuDrawDialog.d.ts.map +1 -1
  217. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js +1 -0
  218. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  219. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +1 -0
  220. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
  221. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +1 -0
  222. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  223. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts +1 -0
  224. package/lib/esm/appui-react/accudraw/AccuDrawInputField.d.ts.map +1 -1
  225. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  226. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +1 -0
  227. package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
  228. package/lib/esm/appui-react/backstage/BackstageComposer.js +2 -0
  229. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  230. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts +2 -1
  231. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  232. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js +2 -1
  233. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  234. package/lib/esm/appui-react/childwindow/CopyStyles.d.ts.map +1 -1
  235. package/lib/esm/appui-react/childwindow/CopyStyles.js +8 -3
  236. package/lib/esm/appui-react/childwindow/CopyStyles.js.map +1 -1
  237. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -0
  238. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
  239. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +7 -2
  240. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  241. package/lib/esm/appui-react/content/ContentGroup.d.ts +8 -4
  242. package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
  243. package/lib/esm/appui-react/content/ContentGroup.js +1 -1
  244. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  245. package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -1
  246. package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
  247. package/lib/esm/appui-react/content/ContentLayout.js +45 -11
  248. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  249. package/lib/esm/appui-react/content/ContentLayoutProps.d.ts +63 -0
  250. package/lib/esm/appui-react/content/ContentLayoutProps.d.ts.map +1 -0
  251. package/lib/esm/appui-react/content/ContentLayoutProps.js +9 -0
  252. package/lib/esm/appui-react/content/ContentLayoutProps.js.map +1 -0
  253. package/lib/esm/appui-react/content/ContentOverlay.d.ts +4 -0
  254. package/lib/esm/appui-react/content/ContentOverlay.d.ts.map +1 -1
  255. package/lib/esm/appui-react/content/ContentOverlay.js +32 -0
  256. package/lib/esm/appui-react/content/ContentOverlay.js.map +1 -1
  257. package/lib/esm/appui-react/content/FloatingViewportContent.d.ts.map +1 -1
  258. package/lib/esm/appui-react/content/FloatingViewportContent.js +1 -1
  259. package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
  260. package/lib/esm/appui-react/content/InternalContentLayoutManager.d.ts +1 -1
  261. package/lib/esm/appui-react/content/InternalContentLayoutManager.d.ts.map +1 -1
  262. package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
  263. package/lib/esm/appui-react/content/InternalContentViewManager.d.ts.map +1 -1
  264. package/lib/esm/appui-react/content/InternalContentViewManager.js +9 -3
  265. package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
  266. package/lib/esm/appui-react/content/StageContentLayout.d.ts +1 -1
  267. package/lib/esm/appui-react/content/StageContentLayout.d.ts.map +1 -1
  268. package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -1
  269. package/lib/esm/appui-react/content/StandardContentLayouts.d.ts +20 -0
  270. package/lib/esm/appui-react/content/StandardContentLayouts.d.ts.map +1 -0
  271. package/lib/esm/appui-react/content/StandardContentLayouts.js +165 -0
  272. package/lib/esm/appui-react/content/StandardContentLayouts.js.map +1 -0
  273. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts +1 -0
  274. package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts.map +1 -1
  275. package/lib/esm/appui-react/content/split-pane/SplitPane.js +1 -0
  276. package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
  277. package/lib/esm/appui-react/framework/FrameworkContent.d.ts +1 -1
  278. package/lib/esm/appui-react/framework/FrameworkContent.d.ts.map +1 -1
  279. package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
  280. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +3 -0
  281. package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
  282. package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
  283. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +1 -0
  284. package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
  285. package/lib/esm/appui-react/frontstage/FrontstageDef.js +2 -1
  286. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  287. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +2 -0
  288. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
  289. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +5 -0
  290. package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
  291. package/lib/esm/appui-react/hooks/useConditionalProp.d.ts +3 -3
  292. package/lib/esm/appui-react/hooks/useConditionalProp.d.ts.map +1 -1
  293. package/lib/esm/appui-react/hooks/useConditionalProp.js.map +1 -1
  294. package/lib/esm/appui-react/hooks/useConditionalValue.d.ts +1 -1
  295. package/lib/esm/appui-react/hooks/useConditionalValue.js +1 -1
  296. package/lib/esm/appui-react/hooks/useConditionalValue.js.map +1 -1
  297. package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -1
  298. package/lib/esm/appui-react/hooks/useUiVisibility.js +1 -0
  299. package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -1
  300. package/lib/esm/appui-react/layout/base/LayoutStore.d.ts +3 -1
  301. package/lib/esm/appui-react/layout/base/LayoutStore.d.ts.map +1 -1
  302. package/lib/esm/appui-react/layout/base/LayoutStore.js +7 -0
  303. package/lib/esm/appui-react/layout/base/LayoutStore.js.map +1 -1
  304. package/lib/esm/appui-react/preview/new-toolbars/ToolGroup.scss +4 -0
  305. package/lib/esm/appui-react/selection/SelectionContextItemDef.d.ts.map +1 -1
  306. package/lib/esm/appui-react/selection/SelectionContextItemDef.js +27 -25
  307. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  308. package/lib/esm/appui-react/shared/ConditionalValue.d.ts +10 -7
  309. package/lib/esm/appui-react/shared/ConditionalValue.d.ts.map +1 -1
  310. package/lib/esm/appui-react/shared/ConditionalValue.js +2 -3
  311. package/lib/esm/appui-react/shared/ConditionalValue.js.map +1 -1
  312. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts +1 -0
  313. package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
  314. package/lib/esm/appui-react/statusbar/StatusBarComposer.js +10 -6
  315. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  316. package/lib/esm/appui-react/statusbar/StatusBarCornerComponentContext.js +2 -0
  317. package/lib/esm/appui-react/statusbar/StatusBarCornerComponentContext.js.map +1 -1
  318. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts +1 -0
  319. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.d.ts.map +1 -1
  320. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js +1 -0
  321. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  322. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts +1 -0
  323. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  324. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +1 -0
  325. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  326. package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
  327. package/lib/esm/appui-react/statusfields/SelectionScope.js +1 -1
  328. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  329. package/lib/esm/appui-react/statusfields/SnapMode.d.ts +2 -0
  330. package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
  331. package/lib/esm/appui-react/statusfields/SnapMode.js +59 -83
  332. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  333. package/lib/esm/appui-react/theme/ThemeManager.d.ts +7 -8
  334. package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
  335. package/lib/esm/appui-react/theme/ThemeManager.js +7 -8
  336. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  337. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts +1 -0
  338. package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
  339. package/lib/esm/appui-react/toolbar/ToolbarComposer.js +1 -0
  340. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  341. package/lib/esm/appui-react/toolbar/ToolbarItem.d.ts +1 -1
  342. package/lib/esm/appui-react/toolbar/ToolbarItem.js.map +1 -1
  343. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.d.ts.map +1 -1
  344. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js +11 -6
  345. package/lib/esm/appui-react/toolbar/ToolbarItemsManager.js.map +1 -1
  346. package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
  347. package/lib/esm/appui-react/tools/CoreToolDefinitions.js +23 -25
  348. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  349. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts +1 -0
  350. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.d.ts.map +1 -1
  351. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js +1 -0
  352. package/lib/esm/appui-react/ui-items-provider/BaseUiItemsProvider.js.map +1 -1
  353. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +3 -2
  354. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
  355. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +4 -2
  356. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  357. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +6 -2
  358. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -1
  359. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +117 -88
  360. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
  361. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +2 -2
  362. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
  363. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +4 -2
  364. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  365. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +3 -2
  366. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -1
  367. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +79 -60
  368. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -1
  369. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +1 -0
  370. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
  371. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -0
  372. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  373. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +4 -2
  374. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -1
  375. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +6 -2
  376. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
  377. package/lib/esm/appui-react/uiprovider/ComponentGenerator.d.ts.map +1 -1
  378. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +16 -12
  379. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  380. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts +1 -0
  381. package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
  382. package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
  383. package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
  384. package/lib/esm/appui-react/utils/getActiveViewport.d.ts +10 -0
  385. package/lib/esm/appui-react/utils/getActiveViewport.d.ts.map +1 -0
  386. package/lib/esm/appui-react/utils/getActiveViewport.js +22 -0
  387. package/lib/esm/appui-react/utils/getActiveViewport.js.map +1 -0
  388. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts +1 -0
  389. package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
  390. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +1 -0
  391. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  392. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +1 -0
  393. package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
  394. package/lib/esm/appui-react/widgets/BasicToolWidget.js +1 -0
  395. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  396. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts +1 -0
  397. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
  398. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +3 -1
  399. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  400. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts +2 -0
  401. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.d.ts.map +1 -1
  402. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +2 -0
  403. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  404. package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts +2 -1
  405. package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
  406. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js +1 -0
  407. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  408. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts +1 -0
  409. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
  410. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +1 -0
  411. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  412. package/lib/esm/appui-react/widgets/WidgetDef.d.ts +1 -1
  413. package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
  414. package/lib/esm/appui-react/widgets/WidgetDef.js +7 -7
  415. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  416. package/lib/esm/appui-react.d.ts +3 -0
  417. package/lib/esm/appui-react.d.ts.map +1 -1
  418. package/lib/esm/appui-react.js +3 -0
  419. package/lib/esm/appui-react.js.map +1 -1
  420. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"InternalContentViewManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/InternalContentViewManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EACV,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAEtF;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkB;IAC3C,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAkB;IAEhD,yCAAyC;IACzC,gBAAuB,uBAAuB,uCACD;IAE7C,wDAAwD;IACxD,WAAkB,WAAW,IAAI,OAAO,CAEvC;IAED,oDAAoD;WACtC,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAKpD,6CAA6C;IAC7C,gBAAuB,2BAA2B,2CACD;IAEjD,wDAAwD;IAGxD,gBAAuB,8BAA8B;mBACxC,MAAM;OACd;IAEL,oDAAoD;WACtC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS;IAItD,OAAO,CAAC,MAAM,CAAC,qBAAqB;IA+CpC,wCAAwC;WAE1B,uBAAuB,IAAI,cAAc,GAAG,SAAS;WAkBrD,yBAAyB,CAAC,cAAc,CAAC,EAAE,cAAc;WASzD,0BAA0B,CAAC,cAAc,CAAC,EAAE,cAAc;IAOxE,0CAA0C;WAC5B,SAAS,CACrB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAC/B,oBAAoB,UAAQ,GAC3B,IAAI;WAqEO,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM;WAiC9B,WAAW;IAgBzB,+CAA+C;WACjC,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS;IAM1D;;;OAGG;WACW,kBAAkB,CAE9B,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,oBAAoB,CAEhC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,oBAAoB,CAEhC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,yBAAyB,CAErC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WAEW,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO;IAK3E;;;OAGG;WACW,qBAAqB,CAEjC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV,8BAA8B;IAC9B,WAAkB,OAAO,wCAExB;IAED,iDAAiD;IACjD,WAAkB,OAAO,wCAExB;CACF"}
1
+ {"version":3,"file":"InternalContentViewManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/InternalContentViewManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EAAE,SAAS,EAAU,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EACV,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAEtF;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkB;IAC3C,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAkB;IAEhD,yCAAyC;IACzC,gBAAuB,uBAAuB,uCACD;IAE7C,wDAAwD;IACxD,WAAkB,WAAW,IAAI,OAAO,CAEvC;IAED,oDAAoD;WACtC,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAKpD,6CAA6C;IAC7C,gBAAuB,2BAA2B,2CACD;IAEjD,wDAAwD;IAGxD,gBAAuB,8BAA8B;mBACxC,MAAM;OACd;IAEL,oDAAoD;WACtC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,SAAS;IAItD,OAAO,CAAC,MAAM,CAAC,qBAAqB;IA+CpC,wCAAwC;WAE1B,uBAAuB,IAAI,cAAc,GAAG,SAAS;WAmBrD,yBAAyB,CAAC,cAAc,CAAC,EAAE,cAAc;WASzD,0BAA0B,CAAC,cAAc,CAAC,EAAE,cAAc;IAOxE,0CAA0C;WAC5B,SAAS,CACrB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAC/B,oBAAoB,UAAQ,GAC3B,IAAI;WAuEO,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM;WAiC9B,WAAW;IAgBzB,+CAA+C;WACjC,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS;IAM1D;;;OAGG;WACW,kBAAkB,CAE9B,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,oBAAoB,CAEhC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,oBAAoB,CAEhC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WACW,yBAAyB,CAErC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV;;;OAGG;WAEW,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO;IAK3E;;;OAGG;WACW,qBAAqB,CAEjC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO;IAKV,8BAA8B;IAC9B,WAAkB,OAAO,wCAExB;IAED,iDAAiD;IACjD,WAAkB,OAAO,wCAExB;CACF"}
@@ -73,7 +73,9 @@ export class InternalContentViewManager {
73
73
  const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;
74
74
  if (this._activeContent && activeFrontstageDef) {
75
75
  const activeContentGroup = activeFrontstageDef.contentGroup;
76
- activeContentControl = this.getControlFromElement(this._activeContent, activeContentGroup, activeFrontstageDef.floatingContentControls);
76
+ activeContentControl = this.getControlFromElement(this._activeContent, activeContentGroup,
77
+ // eslint-disable-next-line deprecation/deprecation
78
+ activeFrontstageDef.floatingContentControls);
77
79
  }
78
80
  return activeContentControl;
79
81
  }
@@ -111,8 +113,12 @@ export class InternalContentViewManager {
111
113
  return;
112
114
  }
113
115
  }
114
- const oldContentControl = this.getControlFromElement(oldContent, contentGroup, frontstageDef.floatingContentControls);
115
- const activeContentControl = this.getControlFromElement(activeContent, contentGroup, frontstageDef.floatingContentControls, true);
116
+ const oldContentControl = this.getControlFromElement(oldContent, contentGroup,
117
+ // eslint-disable-next-line deprecation/deprecation
118
+ frontstageDef.floatingContentControls);
119
+ const activeContentControl = this.getControlFromElement(activeContent, contentGroup,
120
+ // eslint-disable-next-line deprecation/deprecation
121
+ frontstageDef.floatingContentControls, true);
116
122
  // Only call setActiveView if going to or coming from a non-viewport ContentControl
117
123
  if (!activeContentControl) {
118
124
  this.onActiveContentChangedEvent.emit({
@@ -1 +1 @@
1
- {"version":3,"file":"InternalContentViewManager.js","sourceRoot":"","sources":["../../../../src/appui-react/content/InternalContentViewManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module ContentView\n */\n\nimport type * as React from \"react\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport type { ContentControl } from \"./ContentControl\";\nimport { InternalContentLayoutManager } from \"./InternalContentLayoutManager\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { ContentGroup } from \"./ContentGroup\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework\";\nimport type {\n ActiveContentChangedEventArgs,\n MouseDownChangedEventArgs,\n} from \"../framework/FrameworkContent\";\nimport { InternalContentDialogManager } from \"../dialog/InternalContentDialogManager\";\n\n/** Content View Manager class.\n * @internal\n */\nexport class InternalContentViewManager {\n private static _mouseDown: boolean = false;\n private static _activeContent?: React.ReactNode;\n\n /** Gets the [[MouseDownChangedEvent]] */\n public static readonly onMouseDownChangedEvent =\n new BeUiEvent<MouseDownChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** Determines if the mouse is down in a content view */\n public static get isMouseDown(): boolean {\n return this._mouseDown;\n }\n\n /** Sets the mouse down status for a content view */\n public static setMouseDown(mouseDown: boolean): void {\n this._mouseDown = mouseDown;\n this.onMouseDownChangedEvent.emit({ mouseDown });\n }\n\n /** Gets the [[ActiveContentChangedEvent]] */\n public static readonly onActiveContentChangedEvent =\n new BeUiEvent<ActiveContentChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** Fires when floating contents are added or removed */\n\n // eslint-disable-next-line deprecation/deprecation\n public static readonly onAvailableContentChangedEvent = new BeUiEvent<{\n contentId: string;\n }>();\n\n /** Gets the active content as a React.ReactNode. */\n public static getActive(): React.ReactNode | undefined {\n return this._activeContent;\n }\n\n private static getControlFromElement(\n content: React.ReactNode,\n activeContentGroup: ContentGroup | undefined,\n // eslint-disable-next-line deprecation/deprecation\n floatingControls: ContentControl[] | undefined,\n logIfNotFound = false\n ) {\n if (floatingControls?.length) {\n // if we find a React node that matches exactly, return its containing control\n let control = floatingControls.find(\n (contentControl) => contentControl.reactNode === content\n );\n if (control) return control;\n\n // if we don't find a React node that matches exactly, rely on the id specified by the creator\n let controlId: string;\n if (content && (content as React.ReactElement<any>).key) {\n const key = (content as React.ReactElement<any>).key as string;\n // key has format `${contentProps.id}::${this.groupId}` which is stored as unique id\n controlId = key.split(\"::\", 1)[0];\n }\n floatingControls.forEach((contentControl) => {\n const node = contentControl.reactNode;\n const key = (node as React.ReactElement<any>)?.key as string;\n const nodeId = key && key.split(\"::\", 1)[0];\n if (nodeId === controlId) control = contentControl;\n });\n if (control) return control;\n }\n\n // if it's not a floating control, look through the content area views\n if (activeContentGroup) {\n const activeContentControl =\n // eslint-disable-next-line deprecation/deprecation\n activeContentGroup.getControlFromElement(content);\n if (activeContentControl) return activeContentControl;\n }\n\n if (logIfNotFound)\n Logger.logError(\n UiFramework.loggerCategory(this),\n `getControlFromElement: no control found for element`\n );\n\n return undefined;\n }\n\n /** Return the active ContentControl. */\n // eslint-disable-next-line deprecation/deprecation\n public static getActiveContentControl(): ContentControl | undefined {\n // eslint-disable-next-line deprecation/deprecation\n let activeContentControl: ContentControl | undefined;\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n\n if (this._activeContent && activeFrontstageDef) {\n const activeContentGroup = activeFrontstageDef.contentGroup;\n activeContentControl = this.getControlFromElement(\n this._activeContent,\n activeContentGroup,\n activeFrontstageDef.floatingContentControls\n );\n }\n\n return activeContentControl;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n public static addFloatingContentControl(contentControl?: ContentControl) {\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (activeFrontstageDef && contentControl) {\n // eslint-disable-next-line deprecation/deprecation\n activeFrontstageDef.addFloatingContentControl(contentControl);\n }\n }\n\n // eslint-disable-next-line deprecation/deprecation\n public static dropFloatingContentControl(contentControl?: ContentControl) {\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (activeFrontstageDef && contentControl)\n // eslint-disable-next-line deprecation/deprecation\n activeFrontstageDef.dropFloatingContentControl(contentControl);\n }\n\n /** Sets the active [[ContentControl]]. */\n public static setActive(\n activeContent?: React.ReactNode,\n forceEventProcessing = false\n ): void {\n if (this._activeContent !== activeContent || forceEventProcessing) {\n const oldContent = this._activeContent;\n this._activeContent = activeContent;\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const contentGroup = frontstageDef.contentGroup;\n if (contentGroup) {\n const reactContent = contentGroup.contentPropsList.find(\n (contentProps) => contentProps.content === activeContent\n );\n if (reactContent) {\n this.onActiveContentChangedEvent.emit({\n id: reactContent.id,\n activeContent: reactContent.content,\n });\n return;\n }\n }\n\n const oldContentControl = this.getControlFromElement(\n oldContent,\n contentGroup,\n frontstageDef.floatingContentControls\n );\n const activeContentControl = this.getControlFromElement(\n activeContent,\n contentGroup,\n frontstageDef.floatingContentControls,\n true\n );\n\n // Only call setActiveView if going to or coming from a non-viewport ContentControl\n if (!activeContentControl) {\n this.onActiveContentChangedEvent.emit({\n activeContent,\n oldContent,\n id: undefined,\n });\n return;\n }\n const doSetActiveView =\n forceEventProcessing ||\n !activeContentControl.viewport ||\n (oldContentControl && !oldContentControl.viewport);\n\n if (doSetActiveView) {\n // eslint-disable-next-line deprecation/deprecation\n frontstageDef.setActiveView(activeContentControl, oldContentControl);\n this.onActiveContentChangedEvent.emit({\n id: activeContentControl.controlId,\n activeContent,\n oldContent,\n });\n } else {\n if (\n activeContentControl.viewport &&\n activeContentControl.viewport !== IModelApp.viewManager.selectedView\n ) {\n void IModelApp.viewManager.setSelectedView(\n activeContentControl.viewport\n );\n }\n }\n }\n }\n\n public static setActiveId(contentId?: string) {\n if (!contentId) {\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(contentId);\n return;\n }\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const contentGroup = frontstageDef.contentGroup;\n if (!contentGroup) return;\n\n const contentIndex = contentGroup.contentPropsList.findIndex(\n (content) => content.id === contentId\n );\n if (contentIndex < 0) return;\n\n const contentProps = contentGroup.contentPropsList[contentIndex];\n if (contentProps.content) {\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(contentProps.content);\n return;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n const control = contentGroup.getContentControl(contentProps, contentIndex);\n if (!control) return;\n\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(control.reactNode);\n }\n\n public static getActiveId() {\n const activeContentControl = this.getActiveContentControl();\n if (activeContentControl) {\n return activeContentControl.controlId;\n }\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const contentGroup = frontstageDef?.contentGroup;\n const activeContent = contentGroup?.contentPropsList.find(\n (contentProps) => {\n return contentProps.content === this.getActive();\n }\n );\n return activeContent?.id;\n }\n\n /** Refreshes the active [[ContentControl]]. */\n public static refreshActive(activeContent: React.ReactNode) {\n this.layouts.refreshActive();\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(activeContent, true);\n }\n\n /**\n * Determines if content displays a Sheet view.\n * @param content ContentControl to check\n */\n public static isContentSheetView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isSheetView(content.viewport);\n }\n\n /**\n * Determines if content displays a Drawing view.\n * @param content ContentControl to check\n */\n public static isContentDrawingView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isDrawingView(content.viewport);\n }\n\n /**\n * Determines if content displays a Spatial view.\n * @param content ContentControl to check\n */\n public static isContentSpatialView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isSpatialView(content.viewport);\n }\n\n /**\n * Determines if content displays a Orthographic view.\n * @param content ContentControl to check\n */\n public static isContentOrthographicView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isOrthographicView(content.viewport);\n }\n\n /**\n * Determines if content displays a 3d view.\n * @param content ContentControl to check\n */\n // eslint-disable-next-line deprecation/deprecation\n public static isContent3dView(content: ContentControl | undefined): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.is3dView(content.viewport);\n }\n\n /**\n * Determines if viewport supports use of a camera.\n * @param content ContentControl to check\n */\n public static contentSupportsCamera(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.viewSupportsCamera(content.viewport);\n }\n\n /** Manage content layouts. */\n public static get layouts() {\n return InternalContentLayoutManager;\n }\n\n /** Manage dialogs displaying managed content. */\n public static get dialogs() {\n return InternalContentDialogManager;\n }\n}\n"]}
1
+ {"version":3,"file":"InternalContentViewManager.js","sourceRoot":"","sources":["../../../../src/appui-react/content/InternalContentViewManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module ContentView\n */\n\nimport type * as React from \"react\";\nimport { ViewUtilities } from \"../utils/ViewUtilities\";\nimport type { ContentControl } from \"./ContentControl\";\nimport { InternalContentLayoutManager } from \"./InternalContentLayoutManager\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type { ContentGroup } from \"./ContentGroup\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport { UiFramework } from \"../UiFramework\";\nimport type {\n ActiveContentChangedEventArgs,\n MouseDownChangedEventArgs,\n} from \"../framework/FrameworkContent\";\nimport { InternalContentDialogManager } from \"../dialog/InternalContentDialogManager\";\n\n/** Content View Manager class.\n * @internal\n */\nexport class InternalContentViewManager {\n private static _mouseDown: boolean = false;\n private static _activeContent?: React.ReactNode;\n\n /** Gets the [[MouseDownChangedEvent]] */\n public static readonly onMouseDownChangedEvent =\n new BeUiEvent<MouseDownChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** Determines if the mouse is down in a content view */\n public static get isMouseDown(): boolean {\n return this._mouseDown;\n }\n\n /** Sets the mouse down status for a content view */\n public static setMouseDown(mouseDown: boolean): void {\n this._mouseDown = mouseDown;\n this.onMouseDownChangedEvent.emit({ mouseDown });\n }\n\n /** Gets the [[ActiveContentChangedEvent]] */\n public static readonly onActiveContentChangedEvent =\n new BeUiEvent<ActiveContentChangedEventArgs>(); // eslint-disable-line deprecation/deprecation\n\n /** Fires when floating contents are added or removed */\n\n // eslint-disable-next-line deprecation/deprecation\n public static readonly onAvailableContentChangedEvent = new BeUiEvent<{\n contentId: string;\n }>();\n\n /** Gets the active content as a React.ReactNode. */\n public static getActive(): React.ReactNode | undefined {\n return this._activeContent;\n }\n\n private static getControlFromElement(\n content: React.ReactNode,\n activeContentGroup: ContentGroup | undefined,\n // eslint-disable-next-line deprecation/deprecation\n floatingControls: ContentControl[] | undefined,\n logIfNotFound = false\n ) {\n if (floatingControls?.length) {\n // if we find a React node that matches exactly, return its containing control\n let control = floatingControls.find(\n (contentControl) => contentControl.reactNode === content\n );\n if (control) return control;\n\n // if we don't find a React node that matches exactly, rely on the id specified by the creator\n let controlId: string;\n if (content && (content as React.ReactElement<any>).key) {\n const key = (content as React.ReactElement<any>).key as string;\n // key has format `${contentProps.id}::${this.groupId}` which is stored as unique id\n controlId = key.split(\"::\", 1)[0];\n }\n floatingControls.forEach((contentControl) => {\n const node = contentControl.reactNode;\n const key = (node as React.ReactElement<any>)?.key as string;\n const nodeId = key && key.split(\"::\", 1)[0];\n if (nodeId === controlId) control = contentControl;\n });\n if (control) return control;\n }\n\n // if it's not a floating control, look through the content area views\n if (activeContentGroup) {\n const activeContentControl =\n // eslint-disable-next-line deprecation/deprecation\n activeContentGroup.getControlFromElement(content);\n if (activeContentControl) return activeContentControl;\n }\n\n if (logIfNotFound)\n Logger.logError(\n UiFramework.loggerCategory(this),\n `getControlFromElement: no control found for element`\n );\n\n return undefined;\n }\n\n /** Return the active ContentControl. */\n // eslint-disable-next-line deprecation/deprecation\n public static getActiveContentControl(): ContentControl | undefined {\n // eslint-disable-next-line deprecation/deprecation\n let activeContentControl: ContentControl | undefined;\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n\n if (this._activeContent && activeFrontstageDef) {\n const activeContentGroup = activeFrontstageDef.contentGroup;\n activeContentControl = this.getControlFromElement(\n this._activeContent,\n activeContentGroup,\n // eslint-disable-next-line deprecation/deprecation\n activeFrontstageDef.floatingContentControls\n );\n }\n\n return activeContentControl;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n public static addFloatingContentControl(contentControl?: ContentControl) {\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (activeFrontstageDef && contentControl) {\n // eslint-disable-next-line deprecation/deprecation\n activeFrontstageDef.addFloatingContentControl(contentControl);\n }\n }\n\n // eslint-disable-next-line deprecation/deprecation\n public static dropFloatingContentControl(contentControl?: ContentControl) {\n const activeFrontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (activeFrontstageDef && contentControl)\n // eslint-disable-next-line deprecation/deprecation\n activeFrontstageDef.dropFloatingContentControl(contentControl);\n }\n\n /** Sets the active [[ContentControl]]. */\n public static setActive(\n activeContent?: React.ReactNode,\n forceEventProcessing = false\n ): void {\n if (this._activeContent !== activeContent || forceEventProcessing) {\n const oldContent = this._activeContent;\n this._activeContent = activeContent;\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const contentGroup = frontstageDef.contentGroup;\n if (contentGroup) {\n const reactContent = contentGroup.contentPropsList.find(\n (contentProps) => contentProps.content === activeContent\n );\n if (reactContent) {\n this.onActiveContentChangedEvent.emit({\n id: reactContent.id,\n activeContent: reactContent.content,\n });\n return;\n }\n }\n\n const oldContentControl = this.getControlFromElement(\n oldContent,\n contentGroup,\n // eslint-disable-next-line deprecation/deprecation\n frontstageDef.floatingContentControls\n );\n const activeContentControl = this.getControlFromElement(\n activeContent,\n contentGroup,\n // eslint-disable-next-line deprecation/deprecation\n frontstageDef.floatingContentControls,\n true\n );\n\n // Only call setActiveView if going to or coming from a non-viewport ContentControl\n if (!activeContentControl) {\n this.onActiveContentChangedEvent.emit({\n activeContent,\n oldContent,\n id: undefined,\n });\n return;\n }\n const doSetActiveView =\n forceEventProcessing ||\n !activeContentControl.viewport ||\n (oldContentControl && !oldContentControl.viewport);\n\n if (doSetActiveView) {\n // eslint-disable-next-line deprecation/deprecation\n frontstageDef.setActiveView(activeContentControl, oldContentControl);\n this.onActiveContentChangedEvent.emit({\n id: activeContentControl.controlId,\n activeContent,\n oldContent,\n });\n } else {\n if (\n activeContentControl.viewport &&\n activeContentControl.viewport !== IModelApp.viewManager.selectedView\n ) {\n void IModelApp.viewManager.setSelectedView(\n activeContentControl.viewport\n );\n }\n }\n }\n }\n\n public static setActiveId(contentId?: string) {\n if (!contentId) {\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(contentId);\n return;\n }\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const contentGroup = frontstageDef.contentGroup;\n if (!contentGroup) return;\n\n const contentIndex = contentGroup.contentPropsList.findIndex(\n (content) => content.id === contentId\n );\n if (contentIndex < 0) return;\n\n const contentProps = contentGroup.contentPropsList[contentIndex];\n if (contentProps.content) {\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(contentProps.content);\n return;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n const control = contentGroup.getContentControl(contentProps, contentIndex);\n if (!control) return;\n\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(control.reactNode);\n }\n\n public static getActiveId() {\n const activeContentControl = this.getActiveContentControl();\n if (activeContentControl) {\n return activeContentControl.controlId;\n }\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const contentGroup = frontstageDef?.contentGroup;\n const activeContent = contentGroup?.contentPropsList.find(\n (contentProps) => {\n return contentProps.content === this.getActive();\n }\n );\n return activeContent?.id;\n }\n\n /** Refreshes the active [[ContentControl]]. */\n public static refreshActive(activeContent: React.ReactNode) {\n this.layouts.refreshActive();\n // eslint-disable-next-line deprecation/deprecation\n this.setActive(activeContent, true);\n }\n\n /**\n * Determines if content displays a Sheet view.\n * @param content ContentControl to check\n */\n public static isContentSheetView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isSheetView(content.viewport);\n }\n\n /**\n * Determines if content displays a Drawing view.\n * @param content ContentControl to check\n */\n public static isContentDrawingView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isDrawingView(content.viewport);\n }\n\n /**\n * Determines if content displays a Spatial view.\n * @param content ContentControl to check\n */\n public static isContentSpatialView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isSpatialView(content.viewport);\n }\n\n /**\n * Determines if content displays a Orthographic view.\n * @param content ContentControl to check\n */\n public static isContentOrthographicView(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.isOrthographicView(content.viewport);\n }\n\n /**\n * Determines if content displays a 3d view.\n * @param content ContentControl to check\n */\n // eslint-disable-next-line deprecation/deprecation\n public static isContent3dView(content: ContentControl | undefined): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.is3dView(content.viewport);\n }\n\n /**\n * Determines if viewport supports use of a camera.\n * @param content ContentControl to check\n */\n public static contentSupportsCamera(\n // eslint-disable-next-line deprecation/deprecation\n content: ContentControl | undefined\n ): boolean {\n if (!content || !content.viewport) return false;\n return ViewUtilities.viewSupportsCamera(content.viewport);\n }\n\n /** Manage content layouts. */\n public static get layouts() {\n return InternalContentLayoutManager;\n }\n\n /** Manage dialogs displaying managed content. */\n public static get dialogs() {\n return InternalContentDialogManager;\n }\n}\n"]}
@@ -5,7 +5,7 @@ import type { IModelConnection, ViewState } from "@itwin/core-frontend";
5
5
  import type { ContentCallback, ContentGroup, ContentGroupProps } from "./ContentGroup";
6
6
  import type { ContentLayoutDef } from "./ContentLayout";
7
7
  import type { ViewStateHelperProps } from "./ViewStateHelper";
8
- import type { ContentLayoutProps } from "@itwin/appui-abstract";
8
+ import type { ContentLayoutProps } from "./ContentLayoutProps";
9
9
  /** StageContentLayoutProps interface for sharing view layout information.
10
10
  * @public
11
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"StageContentLayout.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/StageContentLayout.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,cAAc,EAAE,oBAAoB,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,qCAAqC;WACvB,iBAAiB,CAC7B,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,GAAE,OAAe,EAClC,eAAe,CAAC,EAAE,eAAe,GAChC,uBAAuB;IA0B1B,gEAAgE;WAC5C,mBAAmB,CACrC,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,EAAE,uBAAuB,GAClC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAgBxC,iDAAiD;WACnC,0BAA0B,CACtC,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,uBAAuB,GAClC,OAAO;CAmBX"}
1
+ {"version":3,"file":"StageContentLayout.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/StageContentLayout.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,cAAc,EAAE,oBAAoB,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,qCAAqC;WACvB,iBAAiB,CAC7B,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,GAAE,OAAe,EAClC,eAAe,CAAC,EAAE,eAAe,GAChC,uBAAuB;IA0B1B,gEAAgE;WAC5C,mBAAmB,CACrC,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,EAAE,uBAAuB,GAClC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAgBxC,iDAAiD;WACnC,0BAA0B,CACtC,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,uBAAuB,GAClC,OAAO;CAmBX"}
@@ -1 +1 @@
1
- {"version":3,"file":"StageContentLayout.js","sourceRoot":"","sources":["../../../../src/appui-react/content/StageContentLayout.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAUH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqBpD;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B,qCAAqC;IAC9B,MAAM,CAAC,iBAAiB,CAC7B,gBAAkC,EAClC,YAA0B,EAC1B,oBAA6B,KAAK,EAClC,eAAiC;QAEjC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACrD,oHAAoH;QACpH,MAAM,iBAAiB,GAAG;YACxB,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC;YACvC,MAAM,EAAE,kBAAkB;SAC3B,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,KAAK,EAAwB,CAAC;QACzD,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;QAC9C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,cAAc,GAAG,eAAe,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvE,IAAI,iBAAiB;oBACnB,eAAe,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBACrE,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAA4B;YACpD,iBAAiB;YACjB,cAAc;SACf,CAAC;QAEF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,gEAAgE;IACzD,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACrC,gBAAkC,EAClC,UAAmC;QAEnC,MAAM,UAAU,GAAG,IAAI,KAAK,EAAyB,CAAC;QAEtD,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9B,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBACvD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,kBAAkB,CACxD,gBAAgB,EAChB,cAAc,CACf,CAAC;gBACF,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,iDAAiD;IAC1C,MAAM,CAAC,0BAA0B,CACtC,YAA0B,EAC1B,UAAmC;QAEnC,MAAM,WAAW,GAAG,IAAI,KAAK,EAAW,CAAC;QACzC,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,eAAe,CAAC,0BAA0B,CACxD,QAAQ,EACR,cAAc,CACf,CAAC;gBACF,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;YACD,KAAK,EAAE,CAAC;QACV,CAAC;QAED,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;CACF","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 ContentView\n */\n\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport type {\n ContentCallback,\n ContentGroup,\n ContentGroupProps,\n} from \"./ContentGroup\";\nimport type { ContentLayoutDef } from \"./ContentLayout\";\nimport type { ViewStateHelperProps } from \"./ViewStateHelper\";\nimport { ViewStateHelper } from \"./ViewStateHelper\";\nimport type { ContentLayoutProps } from \"@itwin/appui-abstract\";\n\n/** StageContentLayoutProps interface for sharing view layout information.\n * @public\n */\nexport interface StageContentLayoutProps {\n contentLayoutProps?: ContentLayoutProps;\n contentGroupProps: ContentGroupProps;\n viewStateProps: ViewStateHelperProps[];\n}\n\n/** ViewLayout interface for sharing view layout information.\n * @public\n */\nexport interface ViewLayout {\n contentLayoutDef: ContentLayoutDef;\n contentGroup: ContentGroup;\n viewStates: Array<ViewState | undefined>;\n}\n\n/** StageContentLayout class. Used to serialize/deserialize a View Layout with Saved Views.\n * @public\n */\nexport class StageContentLayout {\n /** Create props for a View Layout */\n public static viewLayoutToProps(\n contentLayoutDef: ContentLayoutDef,\n contentGroup: ContentGroup,\n emphasizeElements: boolean = false,\n contentCallback?: ContentCallback\n ): StageContentLayoutProps {\n const contentLayoutProps = contentLayoutDef.toJSON();\n // update layout in contentGroup to contain latest values from contentLayoutDef this way we don't need to save both.\n const contentGroupProps = {\n ...contentGroup.toJSON(contentCallback),\n layout: contentLayoutProps,\n };\n const viewStateProps = new Array<ViewStateHelperProps>();\n const viewports = contentGroup.getViewports();\n for (const viewport of viewports) {\n if (viewport) {\n const savedViewProps = ViewStateHelper.viewStateToProps(viewport.view);\n if (emphasizeElements)\n ViewStateHelper.emphasizeElementsToProps(viewport, savedViewProps);\n viewStateProps.push(savedViewProps);\n }\n }\n\n const savedViewLayoutProps: StageContentLayoutProps = {\n contentGroupProps,\n viewStateProps,\n };\n\n return savedViewLayoutProps;\n }\n\n /** Create an array of ViewStates from the StageContentLayout */\n public static async viewStatesFromProps(\n iModelConnection: IModelConnection,\n savedProps: StageContentLayoutProps\n ): Promise<Array<ViewState | undefined>> {\n const viewStates = new Array<ViewState | undefined>();\n\n if (savedProps.viewStateProps) {\n for (const savedViewProps of savedProps.viewStateProps) {\n const viewState = await ViewStateHelper.viewStateFromProps(\n iModelConnection,\n savedViewProps\n );\n viewStates.push(viewState);\n }\n }\n\n return viewStates;\n }\n\n /** Apply EmphasizeElements from the SavedView */\n public static emphasizeElementsFromProps(\n contentGroup: ContentGroup,\n savedProps: StageContentLayoutProps\n ): boolean {\n const changedList = new Array<boolean>();\n const viewports = contentGroup.getViewports();\n\n let index = 0;\n for (const savedViewProps of savedProps.viewStateProps) {\n const viewport = viewports[index];\n if (viewport) {\n const changed = ViewStateHelper.emphasizeElementsFromProps(\n viewport,\n savedViewProps\n );\n changedList.push(changed);\n }\n index++;\n }\n\n return changedList.some((changed: boolean) => changed);\n }\n}\n"]}
1
+ {"version":3,"file":"StageContentLayout.js","sourceRoot":"","sources":["../../../../src/appui-react/content/StageContentLayout.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAUH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqBpD;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B,qCAAqC;IAC9B,MAAM,CAAC,iBAAiB,CAC7B,gBAAkC,EAClC,YAA0B,EAC1B,oBAA6B,KAAK,EAClC,eAAiC;QAEjC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACrD,oHAAoH;QACpH,MAAM,iBAAiB,GAAG;YACxB,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC;YACvC,MAAM,EAAE,kBAAkB;SAC3B,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,KAAK,EAAwB,CAAC;QACzD,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;QAC9C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,cAAc,GAAG,eAAe,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvE,IAAI,iBAAiB;oBACnB,eAAe,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBACrE,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAA4B;YACpD,iBAAiB;YACjB,cAAc;SACf,CAAC;QAEF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,gEAAgE;IACzD,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACrC,gBAAkC,EAClC,UAAmC;QAEnC,MAAM,UAAU,GAAG,IAAI,KAAK,EAAyB,CAAC;QAEtD,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9B,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBACvD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,kBAAkB,CACxD,gBAAgB,EAChB,cAAc,CACf,CAAC;gBACF,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,iDAAiD;IAC1C,MAAM,CAAC,0BAA0B,CACtC,YAA0B,EAC1B,UAAmC;QAEnC,MAAM,WAAW,GAAG,IAAI,KAAK,EAAW,CAAC;QACzC,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,eAAe,CAAC,0BAA0B,CACxD,QAAQ,EACR,cAAc,CACf,CAAC;gBACF,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;YACD,KAAK,EAAE,CAAC;QACV,CAAC;QAED,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;CACF","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 ContentView\n */\n\nimport type { IModelConnection, ViewState } from \"@itwin/core-frontend\";\nimport type {\n ContentCallback,\n ContentGroup,\n ContentGroupProps,\n} from \"./ContentGroup\";\nimport type { ContentLayoutDef } from \"./ContentLayout\";\nimport type { ViewStateHelperProps } from \"./ViewStateHelper\";\nimport { ViewStateHelper } from \"./ViewStateHelper\";\nimport type { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/** StageContentLayoutProps interface for sharing view layout information.\n * @public\n */\nexport interface StageContentLayoutProps {\n contentLayoutProps?: ContentLayoutProps;\n contentGroupProps: ContentGroupProps;\n viewStateProps: ViewStateHelperProps[];\n}\n\n/** ViewLayout interface for sharing view layout information.\n * @public\n */\nexport interface ViewLayout {\n contentLayoutDef: ContentLayoutDef;\n contentGroup: ContentGroup;\n viewStates: Array<ViewState | undefined>;\n}\n\n/** StageContentLayout class. Used to serialize/deserialize a View Layout with Saved Views.\n * @public\n */\nexport class StageContentLayout {\n /** Create props for a View Layout */\n public static viewLayoutToProps(\n contentLayoutDef: ContentLayoutDef,\n contentGroup: ContentGroup,\n emphasizeElements: boolean = false,\n contentCallback?: ContentCallback\n ): StageContentLayoutProps {\n const contentLayoutProps = contentLayoutDef.toJSON();\n // update layout in contentGroup to contain latest values from contentLayoutDef this way we don't need to save both.\n const contentGroupProps = {\n ...contentGroup.toJSON(contentCallback),\n layout: contentLayoutProps,\n };\n const viewStateProps = new Array<ViewStateHelperProps>();\n const viewports = contentGroup.getViewports();\n for (const viewport of viewports) {\n if (viewport) {\n const savedViewProps = ViewStateHelper.viewStateToProps(viewport.view);\n if (emphasizeElements)\n ViewStateHelper.emphasizeElementsToProps(viewport, savedViewProps);\n viewStateProps.push(savedViewProps);\n }\n }\n\n const savedViewLayoutProps: StageContentLayoutProps = {\n contentGroupProps,\n viewStateProps,\n };\n\n return savedViewLayoutProps;\n }\n\n /** Create an array of ViewStates from the StageContentLayout */\n public static async viewStatesFromProps(\n iModelConnection: IModelConnection,\n savedProps: StageContentLayoutProps\n ): Promise<Array<ViewState | undefined>> {\n const viewStates = new Array<ViewState | undefined>();\n\n if (savedProps.viewStateProps) {\n for (const savedViewProps of savedProps.viewStateProps) {\n const viewState = await ViewStateHelper.viewStateFromProps(\n iModelConnection,\n savedViewProps\n );\n viewStates.push(viewState);\n }\n }\n\n return viewStates;\n }\n\n /** Apply EmphasizeElements from the SavedView */\n public static emphasizeElementsFromProps(\n contentGroup: ContentGroup,\n savedProps: StageContentLayoutProps\n ): boolean {\n const changedList = new Array<boolean>();\n const viewports = contentGroup.getViewports();\n\n let index = 0;\n for (const savedViewProps of savedProps.viewStateProps) {\n const viewport = viewports[index];\n if (viewport) {\n const changed = ViewStateHelper.emphasizeElementsFromProps(\n viewport,\n savedViewProps\n );\n changedList.push(changed);\n }\n index++;\n }\n\n return changedList.some((changed: boolean) => changed);\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ /** @packageDocumentation
2
+ * @module ContentView
3
+ */
4
+ import type { ContentLayoutProps } from "./ContentLayoutProps";
5
+ /**
6
+ * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.
7
+ * @public
8
+ */
9
+ export declare class StandardContentLayouts {
10
+ static readonly singleView: ContentLayoutProps;
11
+ static readonly fourQuadrants: ContentLayoutProps;
12
+ static readonly twoVerticalSplit: ContentLayoutProps;
13
+ static readonly twoHorizontalSplit: ContentLayoutProps;
14
+ static readonly threeViewsTwoOnLeft: ContentLayoutProps;
15
+ static readonly threeViewsTwoOnRight: ContentLayoutProps;
16
+ static readonly threeViewsTwoOnBottom: ContentLayoutProps;
17
+ static readonly threeViewsTwoOnTop: ContentLayoutProps;
18
+ static readonly availableLayouts: ContentLayoutProps[];
19
+ }
20
+ //# sourceMappingURL=StandardContentLayouts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardContentLayouts.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/StandardContentLayouts.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,gBAAuB,UAAU,EAAE,kBAAkB,CAGnD;IAEF,gBAAuB,aAAa,EAAE,kBAAkB,CAiCtD;IAEF,gBAAuB,gBAAgB,EAAE,kBAAkB,CASzD;IACF,gBAAuB,kBAAkB,EAAE,kBAAkB,CAU3D;IAEF,gBAAuB,mBAAmB,EAAE,kBAAkB,CAoB5D;IAEF,gBAAuB,oBAAoB,EAAE,kBAAkB,CAoB7D;IAEF,gBAAuB,qBAAqB,EAAE,kBAAkB,CAoB9D;IAEF,gBAAuB,kBAAkB,EAAE,kBAAkB,CAoB3D;IAGF,gBAAuB,gBAAgB,EAAE,kBAAkB,EAAE,CAS3D;CACH"}
@@ -0,0 +1,165 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module ContentView
7
+ */
8
+ /**
9
+ * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.
10
+ * @public
11
+ */
12
+ export class StandardContentLayouts {
13
+ }
14
+ StandardContentLayouts.singleView = {
15
+ id: "uia:singleView",
16
+ description: "Single Content View",
17
+ };
18
+ StandardContentLayouts.fourQuadrants = {
19
+ id: "uia:fourQuadrants",
20
+ description: "Four Views, two stacked on the left, two stacked on the right",
21
+ verticalSplit: {
22
+ id: "uia:fourQuadrantVerticalSplit",
23
+ percentage: 0.5,
24
+ lock: false,
25
+ minSizeLeft: 100,
26
+ minSizeRight: 100,
27
+ left: {
28
+ horizontalSplit: {
29
+ id: "uia:fourQuadrantsLeftHorizontal",
30
+ percentage: 0.5,
31
+ top: 0,
32
+ bottom: 1,
33
+ lock: false,
34
+ minSizeTop: 50,
35
+ minSizeBottom: 50,
36
+ },
37
+ },
38
+ right: {
39
+ horizontalSplit: {
40
+ id: "uia:fourQuadrantsRightHorizontal",
41
+ percentage: 0.5,
42
+ top: 2,
43
+ bottom: 3,
44
+ lock: false,
45
+ minSizeTop: 50,
46
+ minSizeBottom: 50,
47
+ },
48
+ },
49
+ },
50
+ };
51
+ StandardContentLayouts.twoVerticalSplit = {
52
+ id: "uia:twoVerticalSplit",
53
+ description: "Two Views, side by side",
54
+ verticalSplit: {
55
+ id: "uia:twoViewsVerticalSplit",
56
+ percentage: 0.5,
57
+ left: 0,
58
+ right: 1,
59
+ },
60
+ };
61
+ StandardContentLayouts.twoHorizontalSplit = {
62
+ id: "uia:twoHorizontalSplit",
63
+ description: "Two views, stack one on top of the other",
64
+ horizontalSplit: {
65
+ id: "uia:twoViewsHorizontalSplit",
66
+ percentage: 0.5,
67
+ lock: false,
68
+ top: 0,
69
+ bottom: 1,
70
+ },
71
+ };
72
+ StandardContentLayouts.threeViewsTwoOnLeft = {
73
+ id: "uia:threeViewsTwoOnLeft",
74
+ description: "Three views, one on the right with the two on the left stacked one of top of the other",
75
+ verticalSplit: {
76
+ id: "uia:twoViewsOnLeftSplit",
77
+ percentage: 0.5,
78
+ left: {
79
+ horizontalSplit: {
80
+ id: "uia:twoViewsOnLeftHorizontal",
81
+ percentage: 0.5,
82
+ top: 0,
83
+ bottom: 1,
84
+ lock: false,
85
+ minSizeTop: 50,
86
+ minSizeBottom: 50,
87
+ },
88
+ },
89
+ right: 2,
90
+ },
91
+ };
92
+ StandardContentLayouts.threeViewsTwoOnRight = {
93
+ id: "uia:threeViewsTwoOnRight",
94
+ description: "Three views, one on the left with the two on the right stacked one of top of the other",
95
+ verticalSplit: {
96
+ id: "uia:twoViewsOnRightSplit",
97
+ percentage: 0.5,
98
+ left: 0,
99
+ right: {
100
+ horizontalSplit: {
101
+ id: "uia:twoViewsOnRightHorizontal",
102
+ percentage: 0.5,
103
+ top: 1,
104
+ bottom: 2,
105
+ lock: false,
106
+ minSizeTop: 50,
107
+ minSizeBottom: 50,
108
+ },
109
+ },
110
+ },
111
+ };
112
+ StandardContentLayouts.threeViewsTwoOnBottom = {
113
+ id: "uia:threeViewsTwoOnBottom",
114
+ description: "Three Views, one on top and two side by side on the bottom",
115
+ horizontalSplit: {
116
+ id: "uia:threeViewsTwoOnBottomHorizontal",
117
+ percentage: 0.5,
118
+ lock: false,
119
+ top: 0,
120
+ bottom: {
121
+ verticalSplit: {
122
+ id: "uia:twoViewsOnBottomVertical",
123
+ percentage: 0.5,
124
+ left: 1,
125
+ right: 2,
126
+ lock: false,
127
+ minSizeLeft: 50,
128
+ minSizeRight: 50,
129
+ },
130
+ },
131
+ },
132
+ };
133
+ StandardContentLayouts.threeViewsTwoOnTop = {
134
+ id: "uia:threeViewsTwoOnTop",
135
+ description: "Three Views, two side by side on top and one on the bottom",
136
+ horizontalSplit: {
137
+ id: "uia:twoViewsOnTopHorizontal",
138
+ percentage: 0.5,
139
+ lock: false,
140
+ top: {
141
+ verticalSplit: {
142
+ id: "uia:twoViewsOnTopVertical",
143
+ percentage: 0.5,
144
+ left: 0,
145
+ right: 1,
146
+ lock: false,
147
+ minSizeLeft: 50,
148
+ minSizeRight: 50,
149
+ },
150
+ },
151
+ bottom: 2,
152
+ },
153
+ };
154
+ // provides and iterable list of standard content layouts
155
+ StandardContentLayouts.availableLayouts = [
156
+ StandardContentLayouts.singleView,
157
+ StandardContentLayouts.fourQuadrants,
158
+ StandardContentLayouts.twoVerticalSplit,
159
+ StandardContentLayouts.twoHorizontalSplit,
160
+ StandardContentLayouts.threeViewsTwoOnLeft,
161
+ StandardContentLayouts.threeViewsTwoOnRight,
162
+ StandardContentLayouts.threeViewsTwoOnBottom,
163
+ StandardContentLayouts.threeViewsTwoOnTop,
164
+ ];
165
+ //# sourceMappingURL=StandardContentLayouts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardContentLayouts.js","sourceRoot":"","sources":["../../../../src/appui-react/content/StandardContentLayouts.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module ContentView\n */\n\nimport type { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/**\n * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.\n * @public\n */\nexport class StandardContentLayouts {\n public static readonly singleView: ContentLayoutProps = {\n id: \"uia:singleView\",\n description: \"Single Content View\",\n };\n\n public static readonly fourQuadrants: ContentLayoutProps = {\n id: \"uia:fourQuadrants\",\n description:\n \"Four Views, two stacked on the left, two stacked on the right\",\n verticalSplit: {\n id: \"uia:fourQuadrantVerticalSplit\",\n percentage: 0.5,\n lock: false,\n minSizeLeft: 100,\n minSizeRight: 100,\n left: {\n horizontalSplit: {\n id: \"uia:fourQuadrantsLeftHorizontal\",\n percentage: 0.5,\n top: 0,\n bottom: 1,\n lock: false,\n minSizeTop: 50,\n minSizeBottom: 50,\n },\n },\n right: {\n horizontalSplit: {\n id: \"uia:fourQuadrantsRightHorizontal\",\n percentage: 0.5,\n top: 2,\n bottom: 3,\n lock: false,\n minSizeTop: 50,\n minSizeBottom: 50,\n },\n },\n },\n };\n\n public static readonly twoVerticalSplit: ContentLayoutProps = {\n id: \"uia:twoVerticalSplit\",\n description: \"Two Views, side by side\",\n verticalSplit: {\n id: \"uia:twoViewsVerticalSplit\",\n percentage: 0.5,\n left: 0,\n right: 1,\n },\n };\n public static readonly twoHorizontalSplit: ContentLayoutProps = {\n id: \"uia:twoHorizontalSplit\",\n description: \"Two views, stack one on top of the other\",\n horizontalSplit: {\n id: \"uia:twoViewsHorizontalSplit\",\n percentage: 0.5,\n lock: false,\n top: 0,\n bottom: 1,\n },\n };\n\n public static readonly threeViewsTwoOnLeft: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnLeft\",\n description:\n \"Three views, one on the right with the two on the left stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnLeftSplit\",\n percentage: 0.5,\n left: {\n horizontalSplit: {\n id: \"uia:twoViewsOnLeftHorizontal\",\n percentage: 0.5,\n top: 0,\n bottom: 1,\n lock: false,\n minSizeTop: 50,\n minSizeBottom: 50,\n },\n },\n right: 2,\n },\n };\n\n public static readonly threeViewsTwoOnRight: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnRight\",\n description:\n \"Three views, one on the left with the two on the right stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnRightSplit\",\n percentage: 0.5,\n left: 0,\n right: {\n horizontalSplit: {\n id: \"uia:twoViewsOnRightHorizontal\",\n percentage: 0.5,\n top: 1,\n bottom: 2,\n lock: false,\n minSizeTop: 50,\n minSizeBottom: 50,\n },\n },\n },\n };\n\n public static readonly threeViewsTwoOnBottom: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnBottom\",\n description: \"Three Views, one on top and two side by side on the bottom\",\n horizontalSplit: {\n id: \"uia:threeViewsTwoOnBottomHorizontal\",\n percentage: 0.5,\n lock: false,\n top: 0,\n bottom: {\n verticalSplit: {\n id: \"uia:twoViewsOnBottomVertical\",\n percentage: 0.5,\n left: 1,\n right: 2,\n lock: false,\n minSizeLeft: 50,\n minSizeRight: 50,\n },\n },\n },\n };\n\n public static readonly threeViewsTwoOnTop: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnTop\",\n description: \"Three Views, two side by side on top and one on the bottom\",\n horizontalSplit: {\n id: \"uia:twoViewsOnTopHorizontal\",\n percentage: 0.5,\n lock: false,\n top: {\n verticalSplit: {\n id: \"uia:twoViewsOnTopVertical\",\n percentage: 0.5,\n left: 0,\n right: 1,\n lock: false,\n minSizeLeft: 50,\n minSizeRight: 50,\n },\n },\n bottom: 2,\n },\n };\n\n // provides and iterable list of standard content layouts\n public static readonly availableLayouts: ContentLayoutProps[] = [\n StandardContentLayouts.singleView,\n StandardContentLayouts.fourQuadrants,\n StandardContentLayouts.twoVerticalSplit,\n StandardContentLayouts.twoHorizontalSplit,\n StandardContentLayouts.threeViewsTwoOnLeft,\n StandardContentLayouts.threeViewsTwoOnRight,\n StandardContentLayouts.threeViewsTwoOnBottom,\n StandardContentLayouts.threeViewsTwoOnTop,\n ];\n}\n"]}
@@ -5,6 +5,7 @@ import * as React from "react";
5
5
  /**
6
6
  * Props for [[SplitPane]] component
7
7
  * @public
8
+ * @deprecated in 4.17.0. Use `React.ComponentProps<typeof SplitPane>`
8
9
  */
9
10
  export interface SplitPaneProps {
10
11
  /** Pass false to disable resizing */
@@ -1 +1 @@
1
- {"version":3,"file":"SplitPane.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/content/split-pane/SplitPane.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAE7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;;;;;kCAQ8B;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IAClC,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,iDAAiD;IACjD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACnD,kDAAkD;IAClD,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,8EAA8E;IAC9E,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACjC,+EAA+E;IAC/E,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACjC,+CAA+C;IAC/C,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACnC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAsCD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,qBAmT9C"}
1
+ {"version":3,"file":"SplitPane.d.ts","sourceRoot":"","sources":["../../../../../src/appui-react/content/split-pane/SplitPane.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAE7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;;;;;kCAQ8B;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IAClC,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,iDAAiD;IACjD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACnD,kDAAkD;IAClD,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,8EAA8E;IAC9E,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACjC,+EAA+E;IAC/E,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACjC,+CAA+C;IAC/C,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACnC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAsCD;;;;;GAKG;AAEH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,qBAmT9C"}
@@ -44,6 +44,7 @@ function removeNullChildren(children) {
44
44
  * See https://github.com/tomkp/react-split-pane/blob/master/LICENSE.
45
45
  * @public
46
46
  */
47
+ // eslint-disable-next-line deprecation/deprecation
47
48
  export function SplitPane(props) {
48
49
  const { style, size, defaultSize, maxSize, children, paneStyle, pane1Style, pane2Style, className, paneClassName, pane1ClassName, pane2ClassName, onDragStarted, onDragFinished, step, onChange, onResizerClick, onResizerDoubleClick, } = props;
49
50
  // honor same defaults as react-split-pane
@@ -1 +1 @@
1
- {"version":3,"file":"SplitPane.js","sourceRoot":"","sources":["../../../../../src/appui-react/content/split-pane/SplitPane.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 ContentView\n */\n\nimport * as React from \"react\";\nimport classnames from \"classnames\";\nimport { Pane } from \"./Pane\";\nimport { Resizer } from \"./Resizer\";\n\n/**\n * Props for [[SplitPane]] component\n * @public\n */\nexport interface SplitPaneProps {\n /** Pass false to disable resizing */\n allowResize?: boolean;\n /** The array of two react nodes, one for each pane. */\n children: React.ReactNode[];\n /** Determines which pane maintains its size when browser window is resized.*/\n primary?: \"first\" | \"second\";\n\n minSize?: string | number;\n /** You can limit the maximal size of the 'fixed' pane using the maxSize parameter with a positive value\n * (measured in pixels but state just a number). If you wrap the SplitPane into a container component\n * (yes you can, just remember the container has to have the relative or absolute positioning), then you'll need to limit\n * the movement of the splitter (resizer) at the end of the SplitPane (otherwise it can be dragged outside the SplitPane\n * and you don't catch it never more). For this purpose use the maxSize parameter with value 0. When dragged the splitter/resizer\n * will stop at the border of the SplitPane component and think this you'll be able to pick it again and drag it back then.\n * And more: if you set the maxSize to negative value (e.g. -200), then the splitter stops 200px before the border\n * (in other words it sets the minimal size of the 'resizable' pane in this case). This can be useful also in the\n * full-screen case of use. */\n maxSize?: string | number;\n /** Default initial size of primary pane */\n defaultSize?: string | number;\n /** Size of primary pane */\n size?: string | number;\n /** You can use the step prop to only allow resizing in fixed increments. */\n step?: number;\n split?: \"vertical\" | \"horizontal\";\n /** This callback is invoked when a drag start. */\n onDragStarted?: () => void;\n /** This callback is invoked when a drag ends. */\n onDragFinished?: (newSize: number) => void;\n /** Callback is invoked with the current drag during a drag event. */\n onChange?: (newSize: number) => void;\n /** Callback is invoked if user clicks on Resizer. */\n onResizerClick?: (event: MouseEvent) => void;\n /** Callback is invoked if user double clicks on Resizer. */\n onResizerDoubleClick?: (event: MouseEvent) => void;\n /** Styling to be applied to the main container */\n style?: React.CSSProperties;\n /** Styling to be applied to both panes */\n paneStyle?: React.CSSProperties;\n /** Styling to be applied to the first pane, with precedence over paneStyle */\n pane1Style?: React.CSSProperties;\n /** Styling to be applied to the second pane, with precedence over paneStyle */\n pane2Style?: React.CSSProperties;\n /** Styling to be applied to the resizer bar */\n resizerStyle?: React.CSSProperties;\n /** Class name to be added to the SplitPane div */\n className?: string;\n /** Class name to be added to each Pane's div */\n paneClassName?: string;\n /** Class name to be added to Pane1's div */\n pane1ClassName?: string;\n /** Class name to be added to Pane2's div */\n pane2ClassName?: string;\n}\n\nfunction unFocus(ownerDoc: Document | undefined) {\n if (!ownerDoc) return;\n\n const docSelection = ownerDoc.getSelection();\n if (docSelection) {\n docSelection.empty();\n } else {\n try {\n const winSelection = ownerDoc.defaultView?.getSelection();\n winSelection?.removeAllRanges();\n } catch (_e) {}\n }\n}\n\nfunction getDefaultSize(\n defaultSize?: number | string,\n minSize?: string | number,\n maxSize?: string | number,\n draggedSize?: number\n) {\n if (typeof draggedSize === \"number\") {\n const min = typeof minSize === \"number\" ? minSize : 0;\n const max =\n typeof maxSize === \"number\" && maxSize >= 0 ? maxSize : Infinity;\n return Math.max(min, Math.min(max, draggedSize));\n }\n if (defaultSize !== undefined) {\n return defaultSize;\n }\n return minSize;\n}\n\nfunction removeNullChildren(children: React.ReactNode[]) {\n return React.Children.toArray(children).filter((c) => c);\n}\n\n/**\n * Local TypeScript implementation of `SplitPane` from `react-split-pane` package since that\n * package is not regularly maintained.\n * See https://github.com/tomkp/react-split-pane/blob/master/LICENSE.\n * @public\n */\nexport function SplitPane(props: SplitPaneProps) {\n const {\n style,\n size,\n defaultSize,\n maxSize,\n children,\n paneStyle,\n pane1Style,\n pane2Style,\n className,\n paneClassName,\n pane1ClassName,\n pane2ClassName,\n onDragStarted,\n onDragFinished,\n step,\n onChange,\n onResizerClick,\n onResizerDoubleClick,\n } = props;\n\n // honor same defaults as react-split-pane\n const allowResize = React.useMemo(\n () => (undefined !== props.allowResize ? props.allowResize : true),\n [props.allowResize]\n );\n const minSize = React.useMemo(\n () => (undefined !== props.minSize ? props.minSize : 50),\n [props.minSize]\n );\n const primary = React.useMemo(\n () => (undefined !== props.primary ? props.primary : \"first\"),\n [props.primary]\n );\n const split = React.useMemo(\n () => (undefined !== props.split ? props.split : \"vertical\"),\n [props.split]\n );\n const initialSize =\n size !== undefined ? size : getDefaultSize(defaultSize, minSize, maxSize);\n\n const [position, setPosition] = React.useState(0);\n const [draggedSize, setDraggedSize] = React.useState<number | undefined>();\n const [active, setActive] = React.useState(false);\n const [pane1Size, setPane1Size] = React.useState(() =>\n primary === \"first\" ? initialSize : undefined\n );\n const [pane2Size, setPane2Size] = React.useState(() =>\n primary === \"second\" ? initialSize : undefined\n );\n const splitPane = React.useRef<HTMLDivElement>(null);\n const pane1 = React.useRef<HTMLDivElement>(null);\n const pane2 = React.useRef<HTMLDivElement>(null);\n const notNullChildren = React.useMemo(\n () => removeNullChildren(children),\n [children]\n );\n\n React.useEffect(() => {\n primary === \"first\" ? setPane1Size(initialSize) : setPane2Size(initialSize);\n primary === \"first\" ? setPane2Size(undefined) : setPane1Size(undefined);\n }, [initialSize, primary]);\n\n const splitPaneStyle = React.useMemo(() => {\n const directionSpecificParts =\n split === \"vertical\"\n ? {\n flexDirection: \"row\",\n left: 0,\n right: 0,\n }\n : {\n bottom: 0,\n flexDirection: \"column\",\n minHeight: \"100%\",\n top: 0,\n width: \"100%\",\n };\n\n return {\n display: \"flex\",\n flex: 1,\n height: \"100%\",\n position: \"absolute\",\n outline: \"none\",\n overflow: \"hidden\",\n MozUserSelect: \"text\",\n WebkitUserSelect: \"text\",\n msUserSelect: \"text\",\n userSelect: \"text\",\n ...style,\n ...directionSpecificParts,\n } as React.CSSProperties;\n }, [split, style]);\n\n const pane1DivStyle = { ...paneStyle, ...pane1Style };\n const pane2DivStyle = { ...paneStyle, ...pane2Style };\n const resizerStyle = React.useMemo(\n () => props.resizerStyle ?? {},\n [props.resizerStyle]\n );\n const resizerClasses = React.useMemo(\n () => classnames(\"Resizer\", !allowResize && \"disabled\"),\n [allowResize]\n );\n const splitPaneClasses = React.useMemo(\n () => classnames(\"SplitPane\", className, split, !allowResize && \"disabled\"),\n [className, split, allowResize]\n );\n const pane1Classes = React.useMemo(\n () => classnames(\"Pane1\", paneClassName, pane1ClassName),\n [paneClassName, pane1ClassName]\n );\n const pane2Classes = React.useMemo(\n () => classnames(\"Pane2\", paneClassName, pane2ClassName),\n [paneClassName, pane2ClassName]\n );\n\n const initializeDrag = React.useCallback(\n (x: number, y: number) => {\n unFocus(splitPane.current?.ownerDocument);\n const newPosition = split === \"vertical\" ? x : y;\n onDragStarted && onDragStarted();\n setActive(true);\n setPosition(newPosition);\n },\n [onDragStarted, split]\n );\n\n const onTouchStart = React.useCallback(\n (event: TouchEvent) => {\n if (allowResize) {\n initializeDrag(event.touches[0].clientX, event.touches[0].clientY);\n }\n },\n [allowResize, initializeDrag]\n );\n\n const processMove = React.useCallback(\n (x: number, y: number) => {\n unFocus(splitPane.current?.ownerDocument);\n const isPrimaryFirst = primary === \"first\";\n const ref = isPrimaryFirst ? pane1.current : pane2.current;\n const ref2 = isPrimaryFirst ? pane2.current : pane1.current;\n const splitPaneDiv = splitPane.current;\n\n if (ref && ref2 && splitPaneDiv) {\n const node = ref;\n const node2 = ref2;\n if (node.getBoundingClientRect) {\n const width = node.getBoundingClientRect().width;\n const height = node.getBoundingClientRect().height;\n const current = split === \"vertical\" ? x : y;\n const oldSize = split === \"vertical\" ? width : height;\n let positionDelta = position - current;\n if (step) {\n if (Math.abs(positionDelta) < step) {\n return;\n }\n // Integer division\n positionDelta = ~~(positionDelta / step) * step;\n }\n let sizeDelta = isPrimaryFirst ? positionDelta : -positionDelta;\n\n const pane1Order = parseInt(\n node.ownerDocument?.defaultView?.getComputedStyle(node).order ??\n \"0\",\n 10\n );\n const pane2Order = parseInt(\n node2.ownerDocument?.defaultView?.getComputedStyle(node2).order ??\n \"0\",\n 10\n );\n if (pane1Order > pane2Order) {\n sizeDelta = -sizeDelta;\n }\n\n let newMaxSize = maxSize;\n if (\n typeof maxSize === \"number\" &&\n maxSize !== undefined &&\n maxSize <= 0\n ) {\n if (split === \"vertical\") {\n newMaxSize = splitPaneDiv.getBoundingClientRect().width + maxSize;\n } else {\n newMaxSize =\n splitPaneDiv.getBoundingClientRect().height + maxSize;\n }\n }\n\n let newSize = oldSize - sizeDelta;\n const newPosition = position - positionDelta;\n\n if (typeof minSize === \"number\" && newSize < minSize) {\n newSize = minSize;\n } else if (\n typeof newMaxSize === \"number\" &&\n newMaxSize !== undefined &&\n newSize > newMaxSize\n ) {\n newSize = newMaxSize;\n } else {\n setPosition(newPosition);\n }\n\n onChange && onChange(newSize);\n setDraggedSize(newSize);\n isPrimaryFirst ? setPane1Size(newSize) : setPane2Size(newSize);\n }\n }\n },\n [maxSize, minSize, onChange, position, primary, split, step]\n );\n\n const onTouchMove = React.useCallback(\n (event: TouchEvent) => {\n if (!allowResize || !active) return;\n processMove(event.touches[0].clientX, event.touches[0].clientY);\n },\n [active, allowResize, processMove]\n );\n\n const onMouseMove = React.useCallback(\n (event: MouseEvent) => {\n if (!allowResize || !active) return;\n processMove(event.clientX, event.clientY);\n },\n [active, allowResize, processMove]\n );\n\n const onMouseDown = React.useCallback(\n (event: MouseEvent) => {\n if (allowResize) {\n event.preventDefault();\n initializeDrag(event.clientX, event.clientY);\n }\n },\n [allowResize, initializeDrag]\n );\n\n const processResizeFinished = React.useCallback(() => {\n if (undefined !== draggedSize && allowResize && active) {\n onDragFinished && onDragFinished(draggedSize);\n }\n setActive(false);\n }, [draggedSize, allowResize, active, onDragFinished]);\n\n const onMouseUp = React.useCallback(\n (event: MouseEvent) => {\n event.preventDefault();\n processResizeFinished();\n },\n [processResizeFinished]\n );\n\n React.useEffect(() => {\n const ownerDoc = splitPane.current?.ownerDocument;\n if (!ownerDoc) return;\n\n ownerDoc.addEventListener(\"mouseup\", onMouseUp);\n ownerDoc.addEventListener(\"mousemove\", onMouseMove);\n ownerDoc.addEventListener(\"touchmove\", onTouchMove);\n return () => {\n ownerDoc.removeEventListener(\"mouseup\", onMouseUp);\n ownerDoc.removeEventListener(\"mousemove\", onMouseMove);\n ownerDoc.removeEventListener(\"touchmove\", onTouchMove);\n };\n }, [onMouseMove, onMouseUp, onTouchMove]);\n\n return (\n <div className={splitPaneClasses} ref={splitPane} style={splitPaneStyle}>\n <Pane\n className={pane1Classes}\n key=\"pane1\"\n eleRef={pane1}\n size={pane1Size}\n split={split}\n style={pane1DivStyle}\n >\n {notNullChildren[0]}\n </Pane>\n <Resizer\n className={resizerClasses}\n onClick={onResizerClick}\n onDoubleClick={onResizerDoubleClick}\n onMouseDown={onMouseDown}\n onTouchStart={onTouchStart}\n onTouchEnd={processResizeFinished}\n key=\"resizer\"\n split={split}\n style={resizerStyle}\n />\n <Pane\n className={pane2Classes}\n key=\"pane2\"\n eleRef={pane2}\n size={pane2Size}\n split={split}\n style={pane2DivStyle}\n >\n {notNullChildren[1]}\n </Pane>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"SplitPane.js","sourceRoot":"","sources":["../../../../../src/appui-react/content/split-pane/SplitPane.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 ContentView\n */\n\nimport * as React from \"react\";\nimport classnames from \"classnames\";\nimport { Pane } from \"./Pane\";\nimport { Resizer } from \"./Resizer\";\n\n/**\n * Props for [[SplitPane]] component\n * @public\n * @deprecated in 4.17.0. Use `React.ComponentProps<typeof SplitPane>`\n */\nexport interface SplitPaneProps {\n /** Pass false to disable resizing */\n allowResize?: boolean;\n /** The array of two react nodes, one for each pane. */\n children: React.ReactNode[];\n /** Determines which pane maintains its size when browser window is resized.*/\n primary?: \"first\" | \"second\";\n\n minSize?: string | number;\n /** You can limit the maximal size of the 'fixed' pane using the maxSize parameter with a positive value\n * (measured in pixels but state just a number). If you wrap the SplitPane into a container component\n * (yes you can, just remember the container has to have the relative or absolute positioning), then you'll need to limit\n * the movement of the splitter (resizer) at the end of the SplitPane (otherwise it can be dragged outside the SplitPane\n * and you don't catch it never more). For this purpose use the maxSize parameter with value 0. When dragged the splitter/resizer\n * will stop at the border of the SplitPane component and think this you'll be able to pick it again and drag it back then.\n * And more: if you set the maxSize to negative value (e.g. -200), then the splitter stops 200px before the border\n * (in other words it sets the minimal size of the 'resizable' pane in this case). This can be useful also in the\n * full-screen case of use. */\n maxSize?: string | number;\n /** Default initial size of primary pane */\n defaultSize?: string | number;\n /** Size of primary pane */\n size?: string | number;\n /** You can use the step prop to only allow resizing in fixed increments. */\n step?: number;\n split?: \"vertical\" | \"horizontal\";\n /** This callback is invoked when a drag start. */\n onDragStarted?: () => void;\n /** This callback is invoked when a drag ends. */\n onDragFinished?: (newSize: number) => void;\n /** Callback is invoked with the current drag during a drag event. */\n onChange?: (newSize: number) => void;\n /** Callback is invoked if user clicks on Resizer. */\n onResizerClick?: (event: MouseEvent) => void;\n /** Callback is invoked if user double clicks on Resizer. */\n onResizerDoubleClick?: (event: MouseEvent) => void;\n /** Styling to be applied to the main container */\n style?: React.CSSProperties;\n /** Styling to be applied to both panes */\n paneStyle?: React.CSSProperties;\n /** Styling to be applied to the first pane, with precedence over paneStyle */\n pane1Style?: React.CSSProperties;\n /** Styling to be applied to the second pane, with precedence over paneStyle */\n pane2Style?: React.CSSProperties;\n /** Styling to be applied to the resizer bar */\n resizerStyle?: React.CSSProperties;\n /** Class name to be added to the SplitPane div */\n className?: string;\n /** Class name to be added to each Pane's div */\n paneClassName?: string;\n /** Class name to be added to Pane1's div */\n pane1ClassName?: string;\n /** Class name to be added to Pane2's div */\n pane2ClassName?: string;\n}\n\nfunction unFocus(ownerDoc: Document | undefined) {\n if (!ownerDoc) return;\n\n const docSelection = ownerDoc.getSelection();\n if (docSelection) {\n docSelection.empty();\n } else {\n try {\n const winSelection = ownerDoc.defaultView?.getSelection();\n winSelection?.removeAllRanges();\n } catch (_e) {}\n }\n}\n\nfunction getDefaultSize(\n defaultSize?: number | string,\n minSize?: string | number,\n maxSize?: string | number,\n draggedSize?: number\n) {\n if (typeof draggedSize === \"number\") {\n const min = typeof minSize === \"number\" ? minSize : 0;\n const max =\n typeof maxSize === \"number\" && maxSize >= 0 ? maxSize : Infinity;\n return Math.max(min, Math.min(max, draggedSize));\n }\n if (defaultSize !== undefined) {\n return defaultSize;\n }\n return minSize;\n}\n\nfunction removeNullChildren(children: React.ReactNode[]) {\n return React.Children.toArray(children).filter((c) => c);\n}\n\n/**\n * Local TypeScript implementation of `SplitPane` from `react-split-pane` package since that\n * package is not regularly maintained.\n * See https://github.com/tomkp/react-split-pane/blob/master/LICENSE.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport function SplitPane(props: SplitPaneProps) {\n const {\n style,\n size,\n defaultSize,\n maxSize,\n children,\n paneStyle,\n pane1Style,\n pane2Style,\n className,\n paneClassName,\n pane1ClassName,\n pane2ClassName,\n onDragStarted,\n onDragFinished,\n step,\n onChange,\n onResizerClick,\n onResizerDoubleClick,\n } = props;\n\n // honor same defaults as react-split-pane\n const allowResize = React.useMemo(\n () => (undefined !== props.allowResize ? props.allowResize : true),\n [props.allowResize]\n );\n const minSize = React.useMemo(\n () => (undefined !== props.minSize ? props.minSize : 50),\n [props.minSize]\n );\n const primary = React.useMemo(\n () => (undefined !== props.primary ? props.primary : \"first\"),\n [props.primary]\n );\n const split = React.useMemo(\n () => (undefined !== props.split ? props.split : \"vertical\"),\n [props.split]\n );\n const initialSize =\n size !== undefined ? size : getDefaultSize(defaultSize, minSize, maxSize);\n\n const [position, setPosition] = React.useState(0);\n const [draggedSize, setDraggedSize] = React.useState<number | undefined>();\n const [active, setActive] = React.useState(false);\n const [pane1Size, setPane1Size] = React.useState(() =>\n primary === \"first\" ? initialSize : undefined\n );\n const [pane2Size, setPane2Size] = React.useState(() =>\n primary === \"second\" ? initialSize : undefined\n );\n const splitPane = React.useRef<HTMLDivElement>(null);\n const pane1 = React.useRef<HTMLDivElement>(null);\n const pane2 = React.useRef<HTMLDivElement>(null);\n const notNullChildren = React.useMemo(\n () => removeNullChildren(children),\n [children]\n );\n\n React.useEffect(() => {\n primary === \"first\" ? setPane1Size(initialSize) : setPane2Size(initialSize);\n primary === \"first\" ? setPane2Size(undefined) : setPane1Size(undefined);\n }, [initialSize, primary]);\n\n const splitPaneStyle = React.useMemo(() => {\n const directionSpecificParts =\n split === \"vertical\"\n ? {\n flexDirection: \"row\",\n left: 0,\n right: 0,\n }\n : {\n bottom: 0,\n flexDirection: \"column\",\n minHeight: \"100%\",\n top: 0,\n width: \"100%\",\n };\n\n return {\n display: \"flex\",\n flex: 1,\n height: \"100%\",\n position: \"absolute\",\n outline: \"none\",\n overflow: \"hidden\",\n MozUserSelect: \"text\",\n WebkitUserSelect: \"text\",\n msUserSelect: \"text\",\n userSelect: \"text\",\n ...style,\n ...directionSpecificParts,\n } as React.CSSProperties;\n }, [split, style]);\n\n const pane1DivStyle = { ...paneStyle, ...pane1Style };\n const pane2DivStyle = { ...paneStyle, ...pane2Style };\n const resizerStyle = React.useMemo(\n () => props.resizerStyle ?? {},\n [props.resizerStyle]\n );\n const resizerClasses = React.useMemo(\n () => classnames(\"Resizer\", !allowResize && \"disabled\"),\n [allowResize]\n );\n const splitPaneClasses = React.useMemo(\n () => classnames(\"SplitPane\", className, split, !allowResize && \"disabled\"),\n [className, split, allowResize]\n );\n const pane1Classes = React.useMemo(\n () => classnames(\"Pane1\", paneClassName, pane1ClassName),\n [paneClassName, pane1ClassName]\n );\n const pane2Classes = React.useMemo(\n () => classnames(\"Pane2\", paneClassName, pane2ClassName),\n [paneClassName, pane2ClassName]\n );\n\n const initializeDrag = React.useCallback(\n (x: number, y: number) => {\n unFocus(splitPane.current?.ownerDocument);\n const newPosition = split === \"vertical\" ? x : y;\n onDragStarted && onDragStarted();\n setActive(true);\n setPosition(newPosition);\n },\n [onDragStarted, split]\n );\n\n const onTouchStart = React.useCallback(\n (event: TouchEvent) => {\n if (allowResize) {\n initializeDrag(event.touches[0].clientX, event.touches[0].clientY);\n }\n },\n [allowResize, initializeDrag]\n );\n\n const processMove = React.useCallback(\n (x: number, y: number) => {\n unFocus(splitPane.current?.ownerDocument);\n const isPrimaryFirst = primary === \"first\";\n const ref = isPrimaryFirst ? pane1.current : pane2.current;\n const ref2 = isPrimaryFirst ? pane2.current : pane1.current;\n const splitPaneDiv = splitPane.current;\n\n if (ref && ref2 && splitPaneDiv) {\n const node = ref;\n const node2 = ref2;\n if (node.getBoundingClientRect) {\n const width = node.getBoundingClientRect().width;\n const height = node.getBoundingClientRect().height;\n const current = split === \"vertical\" ? x : y;\n const oldSize = split === \"vertical\" ? width : height;\n let positionDelta = position - current;\n if (step) {\n if (Math.abs(positionDelta) < step) {\n return;\n }\n // Integer division\n positionDelta = ~~(positionDelta / step) * step;\n }\n let sizeDelta = isPrimaryFirst ? positionDelta : -positionDelta;\n\n const pane1Order = parseInt(\n node.ownerDocument?.defaultView?.getComputedStyle(node).order ??\n \"0\",\n 10\n );\n const pane2Order = parseInt(\n node2.ownerDocument?.defaultView?.getComputedStyle(node2).order ??\n \"0\",\n 10\n );\n if (pane1Order > pane2Order) {\n sizeDelta = -sizeDelta;\n }\n\n let newMaxSize = maxSize;\n if (\n typeof maxSize === \"number\" &&\n maxSize !== undefined &&\n maxSize <= 0\n ) {\n if (split === \"vertical\") {\n newMaxSize = splitPaneDiv.getBoundingClientRect().width + maxSize;\n } else {\n newMaxSize =\n splitPaneDiv.getBoundingClientRect().height + maxSize;\n }\n }\n\n let newSize = oldSize - sizeDelta;\n const newPosition = position - positionDelta;\n\n if (typeof minSize === \"number\" && newSize < minSize) {\n newSize = minSize;\n } else if (\n typeof newMaxSize === \"number\" &&\n newMaxSize !== undefined &&\n newSize > newMaxSize\n ) {\n newSize = newMaxSize;\n } else {\n setPosition(newPosition);\n }\n\n onChange && onChange(newSize);\n setDraggedSize(newSize);\n isPrimaryFirst ? setPane1Size(newSize) : setPane2Size(newSize);\n }\n }\n },\n [maxSize, minSize, onChange, position, primary, split, step]\n );\n\n const onTouchMove = React.useCallback(\n (event: TouchEvent) => {\n if (!allowResize || !active) return;\n processMove(event.touches[0].clientX, event.touches[0].clientY);\n },\n [active, allowResize, processMove]\n );\n\n const onMouseMove = React.useCallback(\n (event: MouseEvent) => {\n if (!allowResize || !active) return;\n processMove(event.clientX, event.clientY);\n },\n [active, allowResize, processMove]\n );\n\n const onMouseDown = React.useCallback(\n (event: MouseEvent) => {\n if (allowResize) {\n event.preventDefault();\n initializeDrag(event.clientX, event.clientY);\n }\n },\n [allowResize, initializeDrag]\n );\n\n const processResizeFinished = React.useCallback(() => {\n if (undefined !== draggedSize && allowResize && active) {\n onDragFinished && onDragFinished(draggedSize);\n }\n setActive(false);\n }, [draggedSize, allowResize, active, onDragFinished]);\n\n const onMouseUp = React.useCallback(\n (event: MouseEvent) => {\n event.preventDefault();\n processResizeFinished();\n },\n [processResizeFinished]\n );\n\n React.useEffect(() => {\n const ownerDoc = splitPane.current?.ownerDocument;\n if (!ownerDoc) return;\n\n ownerDoc.addEventListener(\"mouseup\", onMouseUp);\n ownerDoc.addEventListener(\"mousemove\", onMouseMove);\n ownerDoc.addEventListener(\"touchmove\", onTouchMove);\n return () => {\n ownerDoc.removeEventListener(\"mouseup\", onMouseUp);\n ownerDoc.removeEventListener(\"mousemove\", onMouseMove);\n ownerDoc.removeEventListener(\"touchmove\", onTouchMove);\n };\n }, [onMouseMove, onMouseUp, onTouchMove]);\n\n return (\n <div className={splitPaneClasses} ref={splitPane} style={splitPaneStyle}>\n <Pane\n className={pane1Classes}\n key=\"pane1\"\n eleRef={pane1}\n size={pane1Size}\n split={split}\n style={pane1DivStyle}\n >\n {notNullChildren[0]}\n </Pane>\n <Resizer\n className={resizerClasses}\n onClick={onResizerClick}\n onDoubleClick={onResizerDoubleClick}\n onMouseDown={onMouseDown}\n onTouchStart={onTouchStart}\n onTouchEnd={processResizeFinished}\n key=\"resizer\"\n split={split}\n style={resizerStyle}\n />\n <Pane\n className={pane2Classes}\n key=\"pane2\"\n eleRef={pane2}\n size={pane2Size}\n split={split}\n style={pane2DivStyle}\n >\n {notNullChildren[1]}\n </Pane>\n </div>\n );\n}\n"]}
@@ -2,13 +2,13 @@
2
2
  * @module ContentView
3
3
  */
4
4
  /// <reference types="react" />
5
- import type { ContentLayoutProps } from "@itwin/appui-abstract";
6
5
  import { UiEvent } from "@itwin/appui-abstract";
7
6
  import type { ContentControl } from "../content/ContentControl";
8
7
  import type { ContentGroup, ContentGroupProps, ContentProps } from "../content/ContentGroup";
9
8
  import type { ContentLayoutDef } from "../content/ContentLayout";
10
9
  import { DialogChangedEvent } from "../dialog/DialogManagerBase";
11
10
  import type { FrameworkStackedDialog } from "./FrameworkDialogs";
11
+ import type { ContentLayoutProps } from "../content/ContentLayoutProps";
12
12
  /** [[MouseDownChangedEvent]] Args interface.
13
13
  * @public
14
14
  * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
@@ -1 +1 @@
1
- {"version":3,"file":"FrameworkContent.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/framework/FrameworkContent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FrameworkContent.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/framework/FrameworkContent.ts"],"names":[],"mappings":"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"}