@itwin/appui-react 3.0.0-dev.84 → 3.0.0-dev.88

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 (699) hide show
  1. package/CHANGELOG.md +1494 -1494
  2. package/README.md +21 -21
  3. package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
  4. package/lib/cjs/appui-react/UiFramework.js +7 -2
  5. package/lib/cjs/appui-react/UiFramework.js.map +1 -1
  6. package/lib/cjs/appui-react/UserInfo.js.map +1 -1
  7. package/lib/cjs/appui-react/_variables.scss +11 -11
  8. package/lib/cjs/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  9. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  10. package/lib/cjs/appui-react/accudraw/AccuDrawDialog.scss +14 -14
  11. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  12. package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
  13. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  14. package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +55 -55
  15. package/lib/cjs/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  16. package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  17. package/lib/cjs/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
  18. package/lib/cjs/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  19. package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
  20. package/lib/cjs/appui-react/accudraw/Calculator.scss +86 -86
  21. package/lib/cjs/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  22. package/lib/cjs/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  23. package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  24. package/lib/cjs/appui-react/accudraw/MenuButton.js.map +1 -1
  25. package/lib/cjs/appui-react/accudraw/MenuButton.scss +18 -18
  26. package/lib/cjs/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  27. package/lib/cjs/appui-react/accudraw/SquareButton.js.map +1 -1
  28. package/lib/cjs/appui-react/accudraw/SquareButton.scss +44 -44
  29. package/lib/cjs/appui-react/accudraw/backspace.svg +9 -9
  30. package/lib/cjs/appui-react/accudraw/constraint-2d.svg +11 -11
  31. package/lib/cjs/appui-react/accudraw/height-2.svg +10 -10
  32. package/lib/cjs/appui-react/accudraw/height.svg +11 -11
  33. package/lib/cjs/appui-react/backstage/Backstage.js.map +1 -1
  34. package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
  35. package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  36. package/lib/cjs/appui-react/backstage/BackstageItemProps.js.map +1 -1
  37. package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  38. package/lib/cjs/appui-react/backstage/BackstageManager.js.map +1 -1
  39. package/lib/cjs/appui-react/backstage/CommandLaunch.js.map +1 -1
  40. package/lib/cjs/appui-react/backstage/FrontstageLaunch.js.map +1 -1
  41. package/lib/cjs/appui-react/backstage/Separator.js.map +1 -1
  42. package/lib/cjs/appui-react/backstage/TaskLaunch.js.map +1 -1
  43. package/lib/cjs/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  44. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  45. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js +1 -2
  46. package/lib/cjs/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  47. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +21 -21
  48. package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  49. package/lib/cjs/appui-react/childwindow/ChildWindowManager.scss +14 -14
  50. package/lib/cjs/appui-react/childwindow/CopyStyles.js.map +1 -1
  51. package/lib/cjs/appui-react/childwindow/PopoutWidget.js.map +1 -1
  52. package/lib/cjs/appui-react/childwindow/PopoutWidget.scss +10 -10
  53. package/lib/cjs/appui-react/configurableui/ActivityTracker.js.map +1 -1
  54. package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  55. package/lib/cjs/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  56. package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js.map +1 -1
  57. package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
  58. package/lib/cjs/appui-react/configurableui/configurableui.scss +79 -79
  59. package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
  60. package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
  61. package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
  62. package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
  63. package/lib/cjs/appui-react/content/ContentLayout.scss +98 -98
  64. package/lib/cjs/appui-react/content/ContentLayoutManager.js.map +1 -1
  65. package/lib/cjs/appui-react/content/ContentViewManager.js.map +1 -1
  66. package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
  67. package/lib/cjs/appui-react/content/DefaultViewOverlay.scss +43 -43
  68. package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
  69. package/lib/cjs/appui-react/content/SavedView.js.map +1 -1
  70. package/lib/cjs/appui-react/content/SavedViewLayout.js.map +1 -1
  71. package/lib/cjs/appui-react/content/ViewportContentControl.js.map +1 -1
  72. package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
  73. package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  74. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  75. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
  76. package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  77. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  78. package/lib/cjs/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
  79. package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
  80. package/lib/cjs/appui-react/dialog/ModalDialogManager.js.map +1 -1
  81. package/lib/cjs/appui-react/dialog/ModelessDialog.js.map +1 -1
  82. package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  83. package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
  84. package/lib/cjs/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  85. package/lib/cjs/appui-react/dragdrop/ZoneTargets.js.map +1 -1
  86. package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
  87. package/lib/cjs/appui-react/feedback/ValidationTextbox.js.map +1 -1
  88. package/lib/cjs/appui-react/feedback/ValidationTextbox.scss +53 -53
  89. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +0 -1
  90. package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  91. package/lib/cjs/appui-react/frontstage/Frontstage.js +0 -6
  92. package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
  93. package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  94. package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
  95. package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
  96. package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  97. package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  98. package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +86 -86
  99. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  100. package/lib/cjs/appui-react/frontstage/ModalSettingsStage.scss +13 -13
  101. package/lib/cjs/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  102. package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  103. package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  104. package/lib/cjs/appui-react/hooks/useActiveStageId.js.map +1 -1
  105. package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
  106. package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  107. package/lib/cjs/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  108. package/lib/cjs/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  109. package/lib/cjs/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  110. package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  111. package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  112. package/lib/cjs/appui-react/imodel-components/Common.js.map +1 -1
  113. package/lib/cjs/appui-react/imodel-components/VisibilityTreeBase.scss +52 -52
  114. package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
  115. package/lib/cjs/appui-react/imodel-components/VisibilityTreeRenderer.js.map +1 -1
  116. package/lib/cjs/appui-react/imodel-components/category-tree/Categories.json +102 -102
  117. package/lib/cjs/appui-react/imodel-components/category-tree/CategoriesTree.js.map +1 -1
  118. package/lib/cjs/appui-react/imodel-components/category-tree/CategoriesTree.scss +9 -9
  119. package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
  120. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +389 -389
  121. package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.json +384 -384
  122. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  123. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.scss +9 -9
  124. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTreeSearch.json +239 -239
  125. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +5 -5
  126. package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  127. package/lib/cjs/appui-react/imodel-components/spatial-tree/SpatialBreakdown.GroupedByClass.json +78 -78
  128. package/lib/cjs/appui-react/imodel-components/spatial-tree/SpatialBreakdown.json +78 -78
  129. package/lib/cjs/appui-react/imodel-components/spatial-tree/SpatialContainmentTree.js.map +1 -1
  130. package/lib/cjs/appui-react/imodel-components/spatial-tree/SpatialContainmentTree.scss +9 -9
  131. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  132. package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  133. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
  134. package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.scss +11 -11
  135. package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
  136. package/lib/cjs/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  137. package/lib/cjs/appui-react/messages/ActivityMessagePopup.scss +14 -14
  138. package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
  139. package/lib/cjs/appui-react/messages/HollowIcon.js.map +1 -1
  140. package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
  141. package/lib/cjs/appui-react/messages/InputField.scss +82 -82
  142. package/lib/cjs/appui-react/messages/MessageLabel.js.map +1 -1
  143. package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
  144. package/lib/cjs/appui-react/messages/MessageSpan.js.map +1 -1
  145. package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
  146. package/lib/cjs/appui-react/messages/Pointer.scss +42 -42
  147. package/lib/cjs/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  148. package/lib/cjs/appui-react/messages/StatusMessageManager.js.map +1 -1
  149. package/lib/cjs/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  150. package/lib/cjs/appui-react/messages/StatusMessageRenderer.scss +27 -27
  151. package/lib/cjs/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  152. package/lib/cjs/appui-react/messages/StatusMessagesContainer.scss +52 -52
  153. package/lib/cjs/appui-react/messages/StickyMessage.js.map +1 -1
  154. package/lib/cjs/appui-react/messages/StickyMessage.scss +22 -22
  155. package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
  156. package/lib/cjs/appui-react/messages/getToastCategory.js.map +1 -1
  157. package/lib/cjs/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  158. package/lib/cjs/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  159. package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  160. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  161. package/lib/cjs/appui-react/navigationaids/SheetNavigationAid.scss +82 -82
  162. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  163. package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
  164. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  165. package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
  166. package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
  167. package/lib/cjs/appui-react/pickers/ListPicker.scss +299 -299
  168. package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
  169. package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
  170. package/lib/cjs/appui-react/popup/CardPopup.scss +22 -22
  171. package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
  172. package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
  173. package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  174. package/lib/cjs/appui-react/popup/KeyinPalettePanel.scss +30 -30
  175. package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  176. package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
  177. package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
  178. package/lib/cjs/appui-react/popup/PositionPopup.scss +28 -28
  179. package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  180. package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
  181. package/lib/cjs/appui-react/redux/FrameworkState.js.map +1 -1
  182. package/lib/cjs/appui-react/redux/ReducerRegistry.js.map +1 -1
  183. package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
  184. package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
  185. package/lib/cjs/appui-react/redux/connectIModel.js.map +1 -1
  186. package/lib/cjs/appui-react/redux/redux-ts.js.map +1 -1
  187. package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
  188. package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  189. package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  190. package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  191. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  192. package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +125 -125
  193. package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  194. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  195. package/lib/cjs/appui-react/settings/ui/UiSettingsPage.scss +66 -66
  196. package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  197. package/lib/cjs/appui-react/shared/AnyItemDef.js.map +1 -1
  198. package/lib/cjs/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
  199. package/lib/cjs/appui-react/shared/CommandItemDef.js.map +1 -1
  200. package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
  201. package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
  202. package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
  203. package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
  204. package/lib/cjs/appui-react/shared/ItemMap.js.map +1 -1
  205. package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
  206. package/lib/cjs/appui-react/shared/MenuItem.js.map +1 -1
  207. package/lib/cjs/appui-react/shared/SelectionScope.js.map +1 -1
  208. package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
  209. package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
  210. package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.scss +41 -41
  211. package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
  212. package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  213. package/lib/cjs/appui-react/stagepanels/StagePanelEnums.js.map +1 -1
  214. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
  215. package/lib/cjs/appui-react/stagepanels/StagePanelHeader.scss +25 -25
  216. package/lib/cjs/appui-react/statusbar/Overflow.js.map +1 -1
  217. package/lib/cjs/appui-react/statusbar/Overflow.scss +27 -27
  218. package/lib/cjs/appui-react/statusbar/OverflowPanel.js.map +1 -1
  219. package/lib/cjs/appui-react/statusbar/OverflowPanel.scss +22 -22
  220. package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
  221. package/lib/cjs/appui-react/statusbar/StatusBar.scss +43 -43
  222. package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  223. package/lib/cjs/appui-react/statusbar/StatusBarItem.js.map +1 -1
  224. package/lib/cjs/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  225. package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  226. package/lib/cjs/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  227. package/lib/cjs/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  228. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  229. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +1 -2
  230. package/lib/cjs/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  231. package/lib/cjs/appui-react/statusbar/withMessageCenterFieldProps.js.map +1 -1
  232. package/lib/cjs/appui-react/statusbar/withStatusFieldProps.js.map +1 -1
  233. package/lib/cjs/appui-react/statusfields/ActivityCenter.js.map +1 -1
  234. package/lib/cjs/appui-react/statusfields/ConditionalField.js.map +1 -1
  235. package/lib/cjs/appui-react/statusfields/FooterModeField.js.map +1 -1
  236. package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
  237. package/lib/cjs/appui-react/statusfields/Indicator.scss +171 -171
  238. package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
  239. package/lib/cjs/appui-react/statusfields/PromptField.js.map +1 -1
  240. package/lib/cjs/appui-react/statusfields/PromptField.scss +42 -42
  241. package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
  242. package/lib/cjs/appui-react/statusfields/SectionsField.scss +36 -36
  243. package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
  244. package/lib/cjs/appui-react/statusfields/SelectionInfo.scss +14 -14
  245. package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
  246. package/lib/cjs/appui-react/statusfields/SelectionScope.scss +37 -37
  247. package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
  248. package/lib/cjs/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  249. package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
  250. package/lib/cjs/appui-react/statusfields/ViewAttributes.scss +14 -14
  251. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  252. package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +57 -57
  253. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  254. package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +200 -200
  255. package/lib/cjs/appui-react/syncui/BooleanListener.js.map +1 -1
  256. package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  257. package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
  258. package/lib/cjs/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  259. package/lib/cjs/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  260. package/lib/cjs/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  261. package/lib/cjs/appui-react/toolbar/ActionButtonItem.js.map +1 -1
  262. package/lib/cjs/appui-react/toolbar/ActionItemButton.js.map +1 -1
  263. package/lib/cjs/appui-react/toolbar/DragInteraction.js.map +1 -1
  264. package/lib/cjs/appui-react/toolbar/GroupButtonItem.js.map +1 -1
  265. package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
  266. package/lib/cjs/appui-react/toolbar/PopupButton.js.map +1 -1
  267. package/lib/cjs/appui-react/toolbar/PopupButton.scss +9 -9
  268. package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
  269. package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
  270. package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  271. package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  272. package/lib/cjs/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  273. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
  274. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +1 -2
  275. package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  276. package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  277. package/lib/cjs/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  278. package/lib/cjs/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  279. package/lib/cjs/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
  280. package/lib/cjs/appui-react/tools/OpenSettingsTool.js.map +1 -1
  281. package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  282. package/lib/cjs/appui-react/tools/ToolSettingsTools.js.map +1 -1
  283. package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  284. package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  285. package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  286. package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  287. package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  288. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  289. package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
  290. package/lib/cjs/appui-react/uisettings/AppUiSettings.js.map +1 -1
  291. package/lib/cjs/appui-react/uisettings/UserSettingsStorage.js.map +1 -1
  292. package/lib/cjs/appui-react/uisettings/useUiSettings.js.map +1 -1
  293. package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
  294. package/lib/cjs/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  295. package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
  296. package/lib/cjs/appui-react/utils/ViewUtilities.js.map +1 -1
  297. package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
  298. package/lib/cjs/appui-react/widget-panels/Content.js +0 -8
  299. package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
  300. package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
  301. package/lib/cjs/appui-react/widget-panels/Frontstage.scss +19 -19
  302. package/lib/cjs/appui-react/widget-panels/FrontstageContent.js.map +1 -1
  303. package/lib/cjs/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  304. package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
  305. package/lib/cjs/appui-react/widget-panels/StatusBar.scss +10 -10
  306. package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
  307. package/lib/cjs/appui-react/widget-panels/Tab.scss +14 -14
  308. package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
  309. package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +24 -24
  310. package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
  311. package/lib/cjs/appui-react/widget-panels/Toolbars.scss +20 -20
  312. package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  313. package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  314. package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
  315. package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  316. package/lib/cjs/appui-react/widgets/DefaultNavigationWidget.js.map +1 -1
  317. package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
  318. package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  319. package/lib/cjs/appui-react/widgets/ReviewToolWidget.js.map +1 -1
  320. package/lib/cjs/appui-react/widgets/StableWidgetDef.js.map +1 -1
  321. package/lib/cjs/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  322. package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  323. package/lib/cjs/appui-react/widgets/ToolSettingsContent.scss +60 -60
  324. package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
  325. package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  326. package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  327. package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  328. package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
  329. package/lib/cjs/appui-react/widgets/WidgetControl.js.map +1 -1
  330. package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
  331. package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
  332. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts +0 -38
  333. package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  334. package/lib/cjs/appui-react/widgets/WidgetManager.js +4 -59
  335. package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
  336. package/lib/cjs/appui-react/widgets/WidgetProps.js.map +1 -1
  337. package/lib/cjs/appui-react/widgets/WidgetStack.js.map +1 -1
  338. package/lib/cjs/appui-react/workflow/Task.js.map +1 -1
  339. package/lib/cjs/appui-react/workflow/Workflow.js.map +1 -1
  340. package/lib/cjs/appui-react/zones/FrameworkZone.js.map +1 -1
  341. package/lib/cjs/appui-react/zones/Outline.js.map +1 -1
  342. package/lib/cjs/appui-react/zones/StatusBarZone.js.map +1 -1
  343. package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
  344. package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
  345. package/lib/cjs/appui-react/zones/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  346. package/lib/cjs/appui-react/zones/toolsettings/ToolInformation.js.map +1 -1
  347. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
  348. package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
  349. package/lib/cjs/appui-react/zones/toolsettings/ToolUiProvider.js.map +1 -1
  350. package/lib/cjs/appui-react.js.map +1 -1
  351. package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
  352. package/lib/esm/appui-react/UiFramework.js +7 -2
  353. package/lib/esm/appui-react/UiFramework.js.map +1 -1
  354. package/lib/esm/appui-react/UserInfo.js.map +1 -1
  355. package/lib/esm/appui-react/_variables.scss +11 -11
  356. package/lib/esm/appui-react/accudraw/AccuDrawCommandItems.js.map +1 -1
  357. package/lib/esm/appui-react/accudraw/AccuDrawDialog.js.map +1 -1
  358. package/lib/esm/appui-react/accudraw/AccuDrawDialog.scss +14 -14
  359. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
  360. package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.scss +27 -27
  361. package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
  362. package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +55 -55
  363. package/lib/esm/appui-react/accudraw/AccuDrawKeyboardShortcuts.js.map +1 -1
  364. package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
  365. package/lib/esm/appui-react/accudraw/AccuDrawUiSettings.js.map +1 -1
  366. package/lib/esm/appui-react/accudraw/AccuDrawWidget.js.map +1 -1
  367. package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
  368. package/lib/esm/appui-react/accudraw/Calculator.scss +86 -86
  369. package/lib/esm/appui-react/accudraw/CalculatorEngine.js.map +1 -1
  370. package/lib/esm/appui-react/accudraw/CalculatorPopup.js.map +1 -1
  371. package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
  372. package/lib/esm/appui-react/accudraw/MenuButton.js.map +1 -1
  373. package/lib/esm/appui-react/accudraw/MenuButton.scss +18 -18
  374. package/lib/esm/appui-react/accudraw/MenuButtonPopup.js.map +1 -1
  375. package/lib/esm/appui-react/accudraw/SquareButton.js.map +1 -1
  376. package/lib/esm/appui-react/accudraw/SquareButton.scss +44 -44
  377. package/lib/esm/appui-react/accudraw/backspace.svg +9 -9
  378. package/lib/esm/appui-react/accudraw/constraint-2d.svg +11 -11
  379. package/lib/esm/appui-react/accudraw/height-2.svg +10 -10
  380. package/lib/esm/appui-react/accudraw/height.svg +11 -11
  381. package/lib/esm/appui-react/backstage/Backstage.js.map +1 -1
  382. package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
  383. package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
  384. package/lib/esm/appui-react/backstage/BackstageItemProps.js.map +1 -1
  385. package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
  386. package/lib/esm/appui-react/backstage/BackstageManager.js.map +1 -1
  387. package/lib/esm/appui-react/backstage/CommandLaunch.js.map +1 -1
  388. package/lib/esm/appui-react/backstage/FrontstageLaunch.js.map +1 -1
  389. package/lib/esm/appui-react/backstage/Separator.js.map +1 -1
  390. package/lib/esm/appui-react/backstage/TaskLaunch.js.map +1 -1
  391. package/lib/esm/appui-react/backstage/useDefaultBackstageItems.js.map +1 -1
  392. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.d.ts.map +1 -1
  393. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js +2 -3
  394. package/lib/esm/appui-react/backstage/useUiItemsProviderBackstageItems.js.map +1 -1
  395. package/lib/esm/appui-react/childwindow/ChildWindowManager.js +21 -21
  396. package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
  397. package/lib/esm/appui-react/childwindow/ChildWindowManager.scss +14 -14
  398. package/lib/esm/appui-react/childwindow/CopyStyles.js.map +1 -1
  399. package/lib/esm/appui-react/childwindow/PopoutWidget.js.map +1 -1
  400. package/lib/esm/appui-react/childwindow/PopoutWidget.scss +10 -10
  401. package/lib/esm/appui-react/configurableui/ActivityTracker.js.map +1 -1
  402. package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
  403. package/lib/esm/appui-react/configurableui/ConfigurableUiControl.js.map +1 -1
  404. package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js.map +1 -1
  405. package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
  406. package/lib/esm/appui-react/configurableui/configurableui.scss +79 -79
  407. package/lib/esm/appui-react/configurableui/state.js.map +1 -1
  408. package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
  409. package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
  410. package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
  411. package/lib/esm/appui-react/content/ContentLayout.scss +98 -98
  412. package/lib/esm/appui-react/content/ContentLayoutManager.js.map +1 -1
  413. package/lib/esm/appui-react/content/ContentViewManager.js.map +1 -1
  414. package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
  415. package/lib/esm/appui-react/content/DefaultViewOverlay.scss +43 -43
  416. package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
  417. package/lib/esm/appui-react/content/SavedView.js.map +1 -1
  418. package/lib/esm/appui-react/content/SavedViewLayout.js.map +1 -1
  419. package/lib/esm/appui-react/content/ViewportContentControl.js.map +1 -1
  420. package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
  421. package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
  422. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
  423. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.scss +34 -34
  424. package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
  425. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
  426. package/lib/esm/appui-react/cursor/cursorprompt/CursorPrompt.scss +30 -30
  427. package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
  428. package/lib/esm/appui-react/dialog/ModalDialogManager.js.map +1 -1
  429. package/lib/esm/appui-react/dialog/ModelessDialog.js.map +1 -1
  430. package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
  431. package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
  432. package/lib/esm/appui-react/dialog/UiDataProvidedDialog.js.map +1 -1
  433. package/lib/esm/appui-react/dragdrop/ZoneTargets.js.map +1 -1
  434. package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
  435. package/lib/esm/appui-react/feedback/ValidationTextbox.js.map +1 -1
  436. package/lib/esm/appui-react/feedback/ValidationTextbox.scss +53 -53
  437. package/lib/esm/appui-react/frontstage/Frontstage.d.ts +0 -1
  438. package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
  439. package/lib/esm/appui-react/frontstage/Frontstage.js +0 -6
  440. package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
  441. package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
  442. package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
  443. package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
  444. package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
  445. package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
  446. package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +86 -86
  447. package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
  448. package/lib/esm/appui-react/frontstage/ModalSettingsStage.scss +13 -13
  449. package/lib/esm/appui-react/frontstage/NestedFrontstage.js.map +1 -1
  450. package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
  451. package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
  452. package/lib/esm/appui-react/hooks/useActiveStageId.js.map +1 -1
  453. package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
  454. package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
  455. package/lib/esm/appui-react/hooks/useAvailableUiItemsProviders.js.map +1 -1
  456. package/lib/esm/appui-react/hooks/useEscapeSetFocusToHome.js.map +1 -1
  457. package/lib/esm/appui-react/hooks/useFrameworkVersion.js.map +1 -1
  458. package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
  459. package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
  460. package/lib/esm/appui-react/imodel-components/Common.js.map +1 -1
  461. package/lib/esm/appui-react/imodel-components/VisibilityTreeBase.scss +52 -52
  462. package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
  463. package/lib/esm/appui-react/imodel-components/VisibilityTreeRenderer.js.map +1 -1
  464. package/lib/esm/appui-react/imodel-components/category-tree/Categories.json +102 -102
  465. package/lib/esm/appui-react/imodel-components/category-tree/CategoriesTree.js.map +1 -1
  466. package/lib/esm/appui-react/imodel-components/category-tree/CategoriesTree.scss +9 -9
  467. package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
  468. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.GroupedByClass.json +389 -389
  469. package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.json +384 -384
  470. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
  471. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.scss +9 -9
  472. package/lib/esm/appui-react/imodel-components/models-tree/ModelsTreeSearch.json +239 -239
  473. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +5 -5
  474. package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
  475. package/lib/esm/appui-react/imodel-components/spatial-tree/SpatialBreakdown.GroupedByClass.json +78 -78
  476. package/lib/esm/appui-react/imodel-components/spatial-tree/SpatialBreakdown.json +78 -78
  477. package/lib/esm/appui-react/imodel-components/spatial-tree/SpatialContainmentTree.js.map +1 -1
  478. package/lib/esm/appui-react/imodel-components/spatial-tree/SpatialContainmentTree.scss +9 -9
  479. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
  480. package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
  481. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
  482. package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.scss +11 -11
  483. package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
  484. package/lib/esm/appui-react/messages/ActivityMessagePopup.js.map +1 -1
  485. package/lib/esm/appui-react/messages/ActivityMessagePopup.scss +14 -14
  486. package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
  487. package/lib/esm/appui-react/messages/HollowIcon.js.map +1 -1
  488. package/lib/esm/appui-react/messages/InputField.js.map +1 -1
  489. package/lib/esm/appui-react/messages/InputField.scss +82 -82
  490. package/lib/esm/appui-react/messages/MessageLabel.js.map +1 -1
  491. package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
  492. package/lib/esm/appui-react/messages/MessageSpan.js.map +1 -1
  493. package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
  494. package/lib/esm/appui-react/messages/Pointer.scss +42 -42
  495. package/lib/esm/appui-react/messages/ReactNotifyMessageDetails.js.map +1 -1
  496. package/lib/esm/appui-react/messages/StatusMessageManager.js.map +1 -1
  497. package/lib/esm/appui-react/messages/StatusMessageRenderer.js.map +1 -1
  498. package/lib/esm/appui-react/messages/StatusMessageRenderer.scss +27 -27
  499. package/lib/esm/appui-react/messages/StatusMessagesContainer.js.map +1 -1
  500. package/lib/esm/appui-react/messages/StatusMessagesContainer.scss +52 -52
  501. package/lib/esm/appui-react/messages/StickyMessage.js.map +1 -1
  502. package/lib/esm/appui-react/messages/StickyMessage.scss +22 -22
  503. package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
  504. package/lib/esm/appui-react/messages/getToastCategory.js.map +1 -1
  505. package/lib/esm/appui-react/navigationaids/CubeNavigationAidControl.js.map +1 -1
  506. package/lib/esm/appui-react/navigationaids/DrawingNavigationAidControl.js.map +1 -1
  507. package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
  508. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.js.map +1 -1
  509. package/lib/esm/appui-react/navigationaids/SheetNavigationAid.scss +82 -82
  510. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
  511. package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.scss +72 -72
  512. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
  513. package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.scss +13 -13
  514. package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
  515. package/lib/esm/appui-react/pickers/ListPicker.scss +299 -299
  516. package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
  517. package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
  518. package/lib/esm/appui-react/popup/CardPopup.scss +22 -22
  519. package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
  520. package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
  521. package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
  522. package/lib/esm/appui-react/popup/KeyinPalettePanel.scss +30 -30
  523. package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
  524. package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
  525. package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
  526. package/lib/esm/appui-react/popup/PositionPopup.scss +28 -28
  527. package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
  528. package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
  529. package/lib/esm/appui-react/redux/FrameworkState.js.map +1 -1
  530. package/lib/esm/appui-react/redux/ReducerRegistry.js.map +1 -1
  531. package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
  532. package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
  533. package/lib/esm/appui-react/redux/connectIModel.js.map +1 -1
  534. package/lib/esm/appui-react/redux/redux-ts.js.map +1 -1
  535. package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
  536. package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
  537. package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
  538. package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
  539. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
  540. package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +125 -125
  541. package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
  542. package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
  543. package/lib/esm/appui-react/settings/ui/UiSettingsPage.scss +66 -66
  544. package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
  545. package/lib/esm/appui-react/shared/AnyItemDef.js.map +1 -1
  546. package/lib/esm/appui-react/shared/AnyToolbarItemDef.js.map +1 -1
  547. package/lib/esm/appui-react/shared/CommandItemDef.js.map +1 -1
  548. package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
  549. package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
  550. package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
  551. package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
  552. package/lib/esm/appui-react/shared/ItemMap.js.map +1 -1
  553. package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
  554. package/lib/esm/appui-react/shared/MenuItem.js.map +1 -1
  555. package/lib/esm/appui-react/shared/SelectionScope.js.map +1 -1
  556. package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
  557. package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
  558. package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.scss +41 -41
  559. package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
  560. package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
  561. package/lib/esm/appui-react/stagepanels/StagePanelEnums.js.map +1 -1
  562. package/lib/esm/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
  563. package/lib/esm/appui-react/stagepanels/StagePanelHeader.scss +25 -25
  564. package/lib/esm/appui-react/statusbar/Overflow.js.map +1 -1
  565. package/lib/esm/appui-react/statusbar/Overflow.scss +27 -27
  566. package/lib/esm/appui-react/statusbar/OverflowPanel.js.map +1 -1
  567. package/lib/esm/appui-react/statusbar/OverflowPanel.scss +22 -22
  568. package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
  569. package/lib/esm/appui-react/statusbar/StatusBar.scss +43 -43
  570. package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
  571. package/lib/esm/appui-react/statusbar/StatusBarItem.js.map +1 -1
  572. package/lib/esm/appui-react/statusbar/StatusBarItemUtilities.js.map +1 -1
  573. package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
  574. package/lib/esm/appui-react/statusbar/StatusBarWidgetControl.js.map +1 -1
  575. package/lib/esm/appui-react/statusbar/useDefaultStatusBarItems.js.map +1 -1
  576. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.d.ts.map +1 -1
  577. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js +2 -3
  578. package/lib/esm/appui-react/statusbar/useUiItemsProviderStatusBarItems.js.map +1 -1
  579. package/lib/esm/appui-react/statusbar/withMessageCenterFieldProps.js.map +1 -1
  580. package/lib/esm/appui-react/statusbar/withStatusFieldProps.js.map +1 -1
  581. package/lib/esm/appui-react/statusfields/ActivityCenter.js.map +1 -1
  582. package/lib/esm/appui-react/statusfields/ConditionalField.js.map +1 -1
  583. package/lib/esm/appui-react/statusfields/FooterModeField.js.map +1 -1
  584. package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
  585. package/lib/esm/appui-react/statusfields/Indicator.scss +171 -171
  586. package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
  587. package/lib/esm/appui-react/statusfields/PromptField.js.map +1 -1
  588. package/lib/esm/appui-react/statusfields/PromptField.scss +42 -42
  589. package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
  590. package/lib/esm/appui-react/statusfields/SectionsField.scss +36 -36
  591. package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
  592. package/lib/esm/appui-react/statusfields/SelectionInfo.scss +14 -14
  593. package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
  594. package/lib/esm/appui-react/statusfields/SelectionScope.scss +37 -37
  595. package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
  596. package/lib/esm/appui-react/statusfields/StatusFieldProps.js.map +1 -1
  597. package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
  598. package/lib/esm/appui-react/statusfields/ViewAttributes.scss +14 -14
  599. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
  600. package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +57 -57
  601. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
  602. package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +200 -200
  603. package/lib/esm/appui-react/syncui/BooleanListener.js.map +1 -1
  604. package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
  605. package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
  606. package/lib/esm/appui-react/timeline/AnalysisAnimationProvider.js.map +1 -1
  607. package/lib/esm/appui-react/timeline/ScheduleAnimationProvider.js.map +1 -1
  608. package/lib/esm/appui-react/timeline/SolarTimelineDataProvider.js.map +1 -1
  609. package/lib/esm/appui-react/toolbar/ActionButtonItem.js.map +1 -1
  610. package/lib/esm/appui-react/toolbar/ActionItemButton.js.map +1 -1
  611. package/lib/esm/appui-react/toolbar/DragInteraction.js.map +1 -1
  612. package/lib/esm/appui-react/toolbar/GroupButtonItem.js.map +1 -1
  613. package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
  614. package/lib/esm/appui-react/toolbar/PopupButton.js.map +1 -1
  615. package/lib/esm/appui-react/toolbar/PopupButton.scss +9 -9
  616. package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
  617. package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
  618. package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
  619. package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
  620. package/lib/esm/appui-react/toolbar/useDefaultToolbarItems.js.map +1 -1
  621. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.d.ts.map +1 -1
  622. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +2 -3
  623. package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
  624. package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
  625. package/lib/esm/appui-react/tools/FrameworkToolAdmin.js.map +1 -1
  626. package/lib/esm/appui-react/tools/KeyinPaletteTools.js.map +1 -1
  627. package/lib/esm/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
  628. package/lib/esm/appui-react/tools/OpenSettingsTool.js.map +1 -1
  629. package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
  630. package/lib/esm/appui-react/tools/ToolSettingsTools.js.map +1 -1
  631. package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
  632. package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
  633. package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
  634. package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
  635. package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
  636. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
  637. package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +212 -212
  638. package/lib/esm/appui-react/uisettings/AppUiSettings.js.map +1 -1
  639. package/lib/esm/appui-react/uisettings/UserSettingsStorage.js.map +1 -1
  640. package/lib/esm/appui-react/uisettings/useUiSettings.js.map +1 -1
  641. package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
  642. package/lib/esm/appui-react/utils/ToolbarButtonHelper.js.map +1 -1
  643. package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
  644. package/lib/esm/appui-react/utils/ViewUtilities.js.map +1 -1
  645. package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
  646. package/lib/esm/appui-react/widget-panels/Content.js +0 -8
  647. package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
  648. package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
  649. package/lib/esm/appui-react/widget-panels/Frontstage.scss +19 -19
  650. package/lib/esm/appui-react/widget-panels/FrontstageContent.js.map +1 -1
  651. package/lib/esm/appui-react/widget-panels/ModalFrontstageComposer.js.map +1 -1
  652. package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
  653. package/lib/esm/appui-react/widget-panels/StatusBar.scss +10 -10
  654. package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
  655. package/lib/esm/appui-react/widget-panels/Tab.scss +14 -14
  656. package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
  657. package/lib/esm/appui-react/widget-panels/ToolSettings.scss +24 -24
  658. package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
  659. package/lib/esm/appui-react/widget-panels/Toolbars.scss +20 -20
  660. package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
  661. package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
  662. package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
  663. package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
  664. package/lib/esm/appui-react/widgets/DefaultNavigationWidget.js.map +1 -1
  665. package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
  666. package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
  667. package/lib/esm/appui-react/widgets/ReviewToolWidget.js.map +1 -1
  668. package/lib/esm/appui-react/widgets/StableWidgetDef.js.map +1 -1
  669. package/lib/esm/appui-react/widgets/StatusBarWidgetComposerControl.js.map +1 -1
  670. package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
  671. package/lib/esm/appui-react/widgets/ToolSettingsContent.scss +60 -60
  672. package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
  673. package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
  674. package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
  675. package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
  676. package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
  677. package/lib/esm/appui-react/widgets/WidgetControl.js.map +1 -1
  678. package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
  679. package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
  680. package/lib/esm/appui-react/widgets/WidgetManager.d.ts +0 -38
  681. package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
  682. package/lib/esm/appui-react/widgets/WidgetManager.js +4 -58
  683. package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
  684. package/lib/esm/appui-react/widgets/WidgetProps.js.map +1 -1
  685. package/lib/esm/appui-react/widgets/WidgetStack.js.map +1 -1
  686. package/lib/esm/appui-react/workflow/Task.js.map +1 -1
  687. package/lib/esm/appui-react/workflow/Workflow.js.map +1 -1
  688. package/lib/esm/appui-react/zones/FrameworkZone.js.map +1 -1
  689. package/lib/esm/appui-react/zones/Outline.js.map +1 -1
  690. package/lib/esm/appui-react/zones/StatusBarZone.js.map +1 -1
  691. package/lib/esm/appui-react/zones/Zone.js.map +1 -1
  692. package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
  693. package/lib/esm/appui-react/zones/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
  694. package/lib/esm/appui-react/zones/toolsettings/ToolInformation.js.map +1 -1
  695. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
  696. package/lib/esm/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
  697. package/lib/esm/appui-react/zones/toolsettings/ToolUiProvider.js.map +1 -1
  698. package/lib/esm/appui-react.js.map +1 -1
  699. package/package.json +39 -39
@@ -1 +1 @@
1
- {"version":3,"file":"ItemDefBase.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemDefBase.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 Item\n */\n\nimport * as React from \"react\";\nimport { BadgeType, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\nimport { PropsHelper } from \"../utils/PropsHelper\";\nimport { ItemProps } from \"./ItemProps\";\nimport { IconSpec } from \"@itwin/core-react\";\n\n/** Base state for any 'stateful' React component\n * @public\n */\nexport interface BaseItemState {\n isVisible?: boolean; // Default - true\n isEnabled?: boolean; // Default - true\n isActive?: boolean; // Default - false\n isPressed?: boolean; // Default - false\n}\n\n/** The base class for Items.\n * @public\n */\nexport abstract class ItemDefBase {\n private _label: string | StringGetter | ConditionalStringValue = \"\";\n private _tooltip: string | StringGetter | ConditionalStringValue = \"\";\n private _description: string | StringGetter | ConditionalStringValue = \"\";\n\n /** @deprecated Use isHidden instead */\n public isVisible: boolean = true;\n /** @deprecated Use isDisabled instead */\n public isEnabled: boolean = true;\n public isPressed: boolean = false;\n private _isActive: boolean = false;\n public get isActive(): boolean { return this._isActive; }\n public set isActive(v: boolean) { this._isActive = v; }\n public applicationData?: any;\n\n public isHidden?: boolean | ConditionalBooleanValue;\n public isDisabled?: boolean | ConditionalBooleanValue;\n\n public badgeType?: BadgeType;\n\n /** @deprecated - use condition instead */\n public stateFunc?: (state: Readonly<BaseItemState>) => BaseItemState;\n /** @deprecated - use condition instead */\n public stateSyncIds: string[] = [];\n\n public iconSpec?: IconSpec;\n public iconElement?: React.ReactNode;\n\n public static initializeDef(me: ItemDefBase, itemProps: ItemProps): void {\n me.isVisible = (itemProps.isVisible !== undefined) ? itemProps.isVisible : true; // eslint-disable-line deprecation/deprecation\n me.isEnabled = (itemProps.isEnabled !== undefined) ? itemProps.isEnabled : true; // eslint-disable-line deprecation/deprecation\n me.isHidden = (itemProps.isHidden === undefined && itemProps.isVisible !== undefined) ? !itemProps.isVisible : itemProps.isHidden; // eslint-disable-line deprecation/deprecation\n me.isDisabled = (itemProps.isDisabled === undefined && itemProps.isEnabled !== undefined) ? !itemProps.isEnabled : itemProps.isDisabled; // eslint-disable-line deprecation/deprecation\n\n me.isPressed = (itemProps.isPressed !== undefined) ? itemProps.isPressed : false;\n me.isActive = (itemProps.isActive !== undefined) ? itemProps.isActive : false;\n\n me.badgeType = itemProps.badgeType;\n\n if (itemProps.applicationData !== undefined)\n me.applicationData = itemProps.applicationData;\n if (itemProps.iconSpec)\n me.iconSpec = itemProps.iconSpec;\n if (itemProps.icon)\n me.iconSpec = itemProps.icon;\n\n me._label = PropsHelper.getStringSpec(itemProps.label, itemProps.labelKey);\n me._tooltip = PropsHelper.getStringSpec(itemProps.tooltip, itemProps.tooltipKey);\n me._description = PropsHelper.getStringSpec(itemProps.description, itemProps.descriptionKey);\n\n // deprecated\n if (itemProps.stateFunc) // eslint-disable-line deprecation/deprecation\n me.stateFunc = itemProps.stateFunc; // eslint-disable-line deprecation/deprecation\n\n // deprecated\n if (itemProps.stateSyncIds) // eslint-disable-line deprecation/deprecation\n me.stateSyncIds = itemProps.stateSyncIds.map((value: string) => value.toLowerCase()); // eslint-disable-line deprecation/deprecation\n }\n\n constructor(itemProps: ItemProps) {\n ItemDefBase.initializeDef(this, itemProps);\n }\n\n public get trayId() { return undefined; }\n public abstract get id(): string;\n\n /** Get the label string */\n public get rawLabel(): string | StringGetter | ConditionalStringValue {\n return this._label;\n }\n\n /** Get the label string */\n public get label(): string {\n return PropsHelper.getStringFromSpec(this._label);\n }\n\n /** Set the label.\n * @param v A string or a function to get the string.\n */\n public setLabel(v: string | StringGetter | ConditionalStringValue) {\n this._label = v;\n }\n\n /** Get the tooltip string */\n public get tooltip(): string {\n return PropsHelper.getStringFromSpec(this._tooltip);\n }\n\n /** Set the tooltip.\n * @param v A string or a function to get the string.\n */\n public setTooltip(v: string | StringGetter | ConditionalStringValue) {\n this._tooltip = v;\n }\n\n /** Get the description string */\n public get description(): string {\n return PropsHelper.getStringFromSpec(this._description);\n }\n\n /** Set the description.\n * @param v A string or a function to get the string.\n */\n public setDescription(v: string | StringGetter | ConditionalStringValue) {\n this._description = v;\n }\n}\n"]}
1
+ {"version":3,"file":"ItemDefBase.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemDefBase.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,sDAAmD;AAcnD;;GAEG;AACH,MAAsB,WAAW;IA2D/B,YAAY,SAAoB;QA1DxB,WAAM,GAAmD,EAAE,CAAC;QAC5D,aAAQ,GAAmD,EAAE,CAAC;QAC9D,iBAAY,GAAmD,EAAE,CAAC;QAE1E,uCAAuC;QAChC,cAAS,GAAY,IAAI,CAAC;QACjC,yCAAyC;QAClC,cAAS,GAAY,IAAI,CAAC;QAC1B,cAAS,GAAY,KAAK,CAAC;QAC1B,cAAS,GAAY,KAAK,CAAC;QAYnC,0CAA0C;QACnC,iBAAY,GAAa,EAAE,CAAC;QAqCjC,WAAW,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;IAlDD,IAAW,QAAQ,KAAc,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACzD,IAAW,QAAQ,CAAC,CAAU,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IAgBhD,MAAM,CAAC,aAAa,CAAC,EAAe,EAAE,SAAoB;QAC/D,EAAE,CAAC,SAAS,GAAG,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,8CAA8C;QAC/H,EAAE,CAAC,SAAS,GAAG,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,8CAA8C;QAC/H,EAAE,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,8CAA8C;QACjL,EAAE,CAAC,UAAU,GAAG,CAAC,SAAS,CAAC,UAAU,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,8CAA8C;QAEvL,EAAE,CAAC,SAAS,GAAG,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QACjF,EAAE,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAE9E,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QAEnC,IAAI,SAAS,CAAC,eAAe,KAAK,SAAS;YACzC,EAAE,CAAC,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC;QACjD,IAAI,SAAS,CAAC,QAAQ;YACpB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACnC,IAAI,SAAS,CAAC,IAAI;YAChB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QAE/B,EAAE,CAAC,MAAM,GAAG,yBAAW,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3E,EAAE,CAAC,QAAQ,GAAG,yBAAW,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;QACjF,EAAE,CAAC,YAAY,GAAG,yBAAW,CAAC,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;QAE7F,aAAa;QACb,IAAI,SAAS,CAAC,SAAS,EAAE,8CAA8C;YACrE,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,8CAA8C;QAEpF,aAAa;QACb,IAAI,SAAS,CAAC,YAAY,EAAE,8CAA8C;YACxE,EAAE,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,8CAA8C;IACxI,CAAC;IAMD,IAAW,MAAM,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;IAGzC,2BAA2B;IAC3B,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,2BAA2B;IAC3B,IAAW,KAAK;QACd,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACI,QAAQ,CAAC,CAAiD;QAC/D,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,6BAA6B;IAC7B,IAAW,OAAO;QAChB,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,CAAiD;QACjE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,iCAAiC;IACjC,IAAW,WAAW;QACpB,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACI,cAAc,CAAC,CAAiD;QACrE,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IACxB,CAAC;CACF;AA1GD,kCA0GC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BadgeType, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { ItemProps } from \"./ItemProps\";\r\nimport { IconSpec } from \"@itwin/core-react\";\r\n\r\n/** Base state for any 'stateful' React component\r\n * @public\r\n */\r\nexport interface BaseItemState {\r\n isVisible?: boolean; // Default - true\r\n isEnabled?: boolean; // Default - true\r\n isActive?: boolean; // Default - false\r\n isPressed?: boolean; // Default - false\r\n}\r\n\r\n/** The base class for Items.\r\n * @public\r\n */\r\nexport abstract class ItemDefBase {\r\n private _label: string | StringGetter | ConditionalStringValue = \"\";\r\n private _tooltip: string | StringGetter | ConditionalStringValue = \"\";\r\n private _description: string | StringGetter | ConditionalStringValue = \"\";\r\n\r\n /** @deprecated Use isHidden instead */\r\n public isVisible: boolean = true;\r\n /** @deprecated Use isDisabled instead */\r\n public isEnabled: boolean = true;\r\n public isPressed: boolean = false;\r\n private _isActive: boolean = false;\r\n public get isActive(): boolean { return this._isActive; }\r\n public set isActive(v: boolean) { this._isActive = v; }\r\n public applicationData?: any;\r\n\r\n public isHidden?: boolean | ConditionalBooleanValue;\r\n public isDisabled?: boolean | ConditionalBooleanValue;\r\n\r\n public badgeType?: BadgeType;\r\n\r\n /** @deprecated - use condition instead */\r\n public stateFunc?: (state: Readonly<BaseItemState>) => BaseItemState;\r\n /** @deprecated - use condition instead */\r\n public stateSyncIds: string[] = [];\r\n\r\n public iconSpec?: IconSpec;\r\n public iconElement?: React.ReactNode;\r\n\r\n public static initializeDef(me: ItemDefBase, itemProps: ItemProps): void {\r\n me.isVisible = (itemProps.isVisible !== undefined) ? itemProps.isVisible : true; // eslint-disable-line deprecation/deprecation\r\n me.isEnabled = (itemProps.isEnabled !== undefined) ? itemProps.isEnabled : true; // eslint-disable-line deprecation/deprecation\r\n me.isHidden = (itemProps.isHidden === undefined && itemProps.isVisible !== undefined) ? !itemProps.isVisible : itemProps.isHidden; // eslint-disable-line deprecation/deprecation\r\n me.isDisabled = (itemProps.isDisabled === undefined && itemProps.isEnabled !== undefined) ? !itemProps.isEnabled : itemProps.isDisabled; // eslint-disable-line deprecation/deprecation\r\n\r\n me.isPressed = (itemProps.isPressed !== undefined) ? itemProps.isPressed : false;\r\n me.isActive = (itemProps.isActive !== undefined) ? itemProps.isActive : false;\r\n\r\n me.badgeType = itemProps.badgeType;\r\n\r\n if (itemProps.applicationData !== undefined)\r\n me.applicationData = itemProps.applicationData;\r\n if (itemProps.iconSpec)\r\n me.iconSpec = itemProps.iconSpec;\r\n if (itemProps.icon)\r\n me.iconSpec = itemProps.icon;\r\n\r\n me._label = PropsHelper.getStringSpec(itemProps.label, itemProps.labelKey);\r\n me._tooltip = PropsHelper.getStringSpec(itemProps.tooltip, itemProps.tooltipKey);\r\n me._description = PropsHelper.getStringSpec(itemProps.description, itemProps.descriptionKey);\r\n\r\n // deprecated\r\n if (itemProps.stateFunc) // eslint-disable-line deprecation/deprecation\r\n me.stateFunc = itemProps.stateFunc; // eslint-disable-line deprecation/deprecation\r\n\r\n // deprecated\r\n if (itemProps.stateSyncIds) // eslint-disable-line deprecation/deprecation\r\n me.stateSyncIds = itemProps.stateSyncIds.map((value: string) => value.toLowerCase()); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n constructor(itemProps: ItemProps) {\r\n ItemDefBase.initializeDef(this, itemProps);\r\n }\r\n\r\n public get trayId() { return undefined; }\r\n public abstract get id(): string;\r\n\r\n /** Get the label string */\r\n public get rawLabel(): string | StringGetter | ConditionalStringValue {\r\n return this._label;\r\n }\r\n\r\n /** Get the label string */\r\n public get label(): string {\r\n return PropsHelper.getStringFromSpec(this._label);\r\n }\r\n\r\n /** Set the label.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setLabel(v: string | StringGetter | ConditionalStringValue) {\r\n this._label = v;\r\n }\r\n\r\n /** Get the tooltip string */\r\n public get tooltip(): string {\r\n return PropsHelper.getStringFromSpec(this._tooltip);\r\n }\r\n\r\n /** Set the tooltip.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setTooltip(v: string | StringGetter | ConditionalStringValue) {\r\n this._tooltip = v;\r\n }\r\n\r\n /** Get the description string */\r\n public get description(): string {\r\n return PropsHelper.getStringFromSpec(this._description);\r\n }\r\n\r\n /** Set the description.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setDescription(v: string | StringGetter | ConditionalStringValue) {\r\n this._description = v;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ItemMap.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemMap.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH;;GAEG;AACH,MAAa,OAAQ,SAAQ,GAAwB;IAEnD,YAAY,KAAqB;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEM,OAAO,CAAC,IAAiB;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,KAAoB;QAClC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAlBD,0BAkBC;AAED;;GAEG;AACH,MAAa,QAAS,SAAQ,KAAkB;IAE9C,YAAY,KAAqB;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEM,OAAO,CAAC,IAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAEM,QAAQ,CAAC,KAAoB;QAClC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAtBD,4BAsBC","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 Item\n */\n\nimport { ItemDefBase } from \"./ItemDefBase\";\n\n/** Contains a map of Items.\n * @public\n */\nexport class ItemMap extends Map<string, ItemDefBase> {\n\n constructor(items?: ItemDefBase[]) {\n super();\n\n if (items && typeof items === \"object\")\n this.addItems(items);\n }\n\n public addItem(item: ItemDefBase) {\n this.set(item.id, item);\n }\n\n public addItems(items: ItemDefBase[]) {\n items.forEach((item: ItemDefBase) => {\n this.set(item.id, item);\n });\n }\n}\n\n/** Contains a list of Items.\n * @public\n */\nexport class ItemList extends Array<ItemDefBase> {\n\n constructor(items?: ItemDefBase[]) {\n super();\n\n if (items && typeof items === \"object\")\n this.addItems(items);\n }\n\n public addItem(item: ItemDefBase) {\n this.push(item);\n }\n\n public addItems(items: ItemDefBase[]) {\n items.forEach((item: ItemDefBase) => {\n this.push(item);\n });\n }\n\n public get items(): ItemDefBase[] {\n return this;\n }\n}\n"]}
1
+ {"version":3,"file":"ItemMap.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemMap.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH;;GAEG;AACH,MAAa,OAAQ,SAAQ,GAAwB;IAEnD,YAAY,KAAqB;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEM,OAAO,CAAC,IAAiB;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,KAAoB;QAClC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAlBD,0BAkBC;AAED;;GAEG;AACH,MAAa,QAAS,SAAQ,KAAkB;IAE9C,YAAY,KAAqB;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEM,OAAO,CAAC,IAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAEM,QAAQ,CAAC,KAAoB;QAClC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAiB,EAAE,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAtBD,4BAsBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { ItemDefBase } from \"./ItemDefBase\";\r\n\r\n/** Contains a map of Items.\r\n * @public\r\n */\r\nexport class ItemMap extends Map<string, ItemDefBase> {\r\n\r\n constructor(items?: ItemDefBase[]) {\r\n super();\r\n\r\n if (items && typeof items === \"object\")\r\n this.addItems(items);\r\n }\r\n\r\n public addItem(item: ItemDefBase) {\r\n this.set(item.id, item);\r\n }\r\n\r\n public addItems(items: ItemDefBase[]) {\r\n items.forEach((item: ItemDefBase) => {\r\n this.set(item.id, item);\r\n });\r\n }\r\n}\r\n\r\n/** Contains a list of Items.\r\n * @public\r\n */\r\nexport class ItemList extends Array<ItemDefBase> {\r\n\r\n constructor(items?: ItemDefBase[]) {\r\n super();\r\n\r\n if (items && typeof items === \"object\")\r\n this.addItems(items);\r\n }\r\n\r\n public addItem(item: ItemDefBase) {\r\n this.push(item);\r\n }\r\n\r\n public addItems(items: ItemDefBase[]) {\r\n items.forEach((item: ItemDefBase) => {\r\n this.push(item);\r\n });\r\n }\r\n\r\n public get items(): ItemDefBase[] {\r\n return this;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Item\n */\n\nimport { BadgeType, CommandHandler, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\nimport { IconProps } from \"@itwin/core-react\";\nimport { BaseItemState } from \"./ItemDefBase\";\n\n/** Definition that specifies properties shared between many ConfigurableUi components.\n * @public\n */\nexport interface ItemProps extends IconProps {\n /** if set, component will be visible - defaults to true\n * @deprecated use isHidden\n */\n isVisible?: boolean;\n /** if set, component will be enabled - defaults to true\n * @deprecated use isDisabled\n */\n isEnabled?: boolean;\n /** if true component will be hidden - defaults to false */\n isHidden?: boolean | ConditionalBooleanValue;\n /** if true component will be disabled - defaults to false */\n isDisabled?: boolean | ConditionalBooleanValue;\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\n isActive?: boolean;\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\n isPressed?: boolean;\n /** can be used by application to store miscellaneous data. */\n applicationData?: any;\n /** Badge to be overlaid on the item. */\n badgeType?: BadgeType;\n /** abstract icon definition, used when create itemDef from abstract item (ie. MenuItem) */\n icon?: string | ConditionalStringValue;\n\n /** if set, it is used to explicitly set the label shown by a component. */\n label?: string | StringGetter | ConditionalStringValue;\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\n labelKey?: string;\n\n /** if set, it is used to explicitly set the description shown by a component. */\n description?: string | StringGetter | ConditionalStringValue;\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */\n descriptionKey?: string;\n /** used to explicitly set the tooltip shown by a component. */\n tooltip?: string | StringGetter | ConditionalStringValue;\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\n tooltipKey?: string;\n\n /** Function called to get the new items state\n * @deprecated - use ConditionalStringValue or ConditionalBooleanValue instead\n */\n stateFunc?: (state: Readonly<BaseItemState>) => BaseItemState;\n /** Synchronize Ids to listen for\n * @deprecated - use ConditionalStringValue or ConditionalBooleanValue instead\n */\n stateSyncIds?: string[];\n}\n\n/** Properties for a Tool item with a tool id.\n * @public\n */\nexport interface ToolItemProps extends ItemProps, CommandHandler {\n toolId: string;\n}\n\n/** Properties for a Command item.\n * @public\n */\nexport interface CommandItemProps extends ItemProps, CommandHandler {\n commandId?: string;\n}\n"]}
1
+ {"version":3,"file":"ItemProps.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { BadgeType, CommandHandler, ConditionalBooleanValue, ConditionalStringValue, StringGetter } from \"@itwin/appui-abstract\";\r\nimport { IconProps } from \"@itwin/core-react\";\r\nimport { BaseItemState } from \"./ItemDefBase\";\r\n\r\n/** Definition that specifies properties shared between many ConfigurableUi components.\r\n * @public\r\n */\r\nexport interface ItemProps extends IconProps {\r\n /** if set, component will be visible - defaults to true\r\n * @deprecated use isHidden\r\n */\r\n isVisible?: boolean;\r\n /** if set, component will be enabled - defaults to true\r\n * @deprecated use isDisabled\r\n */\r\n isEnabled?: boolean;\r\n /** if true component will be hidden - defaults to false */\r\n isHidden?: boolean | ConditionalBooleanValue;\r\n /** if true component will be disabled - defaults to false */\r\n isDisabled?: boolean | ConditionalBooleanValue;\r\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\r\n isActive?: boolean;\r\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\r\n isPressed?: boolean;\r\n /** can be used by application to store miscellaneous data. */\r\n applicationData?: any;\r\n /** Badge to be overlaid on the item. */\r\n badgeType?: BadgeType;\r\n /** abstract icon definition, used when create itemDef from abstract item (ie. MenuItem) */\r\n icon?: string | ConditionalStringValue;\r\n\r\n /** if set, it is used to explicitly set the label shown by a component. */\r\n label?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n labelKey?: string;\r\n\r\n /** if set, it is used to explicitly set the description shown by a component. */\r\n description?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if description is not explicitly set. */\r\n descriptionKey?: string;\r\n /** used to explicitly set the tooltip shown by a component. */\r\n tooltip?: string | StringGetter | ConditionalStringValue;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n tooltipKey?: string;\r\n\r\n /** Function called to get the new items state\r\n * @deprecated - use ConditionalStringValue or ConditionalBooleanValue instead\r\n */\r\n stateFunc?: (state: Readonly<BaseItemState>) => BaseItemState;\r\n /** Synchronize Ids to listen for\r\n * @deprecated - use ConditionalStringValue or ConditionalBooleanValue instead\r\n */\r\n stateSyncIds?: string[];\r\n}\r\n\r\n/** Properties for a Tool item with a tool id.\r\n * @public\r\n */\r\nexport interface ToolItemProps extends ItemProps, CommandHandler {\r\n toolId: string;\r\n}\r\n\r\n/** Properties for a Command item.\r\n * @public\r\n */\r\nexport interface CommandItemProps extends ItemProps, CommandHandler {\r\n commandId?: string;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/MenuItem.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 Item\n */\n\nimport * as React from \"react\";\nimport { AbstractMenuItemProps, ConditionalBooleanValue, UiError } from \"@itwin/appui-abstract\";\nimport { ContextMenuItem, ContextSubMenu, IconSpec } from \"@itwin/core-react\";\nimport { UiFramework } from \"../UiFramework\";\nimport { ActionButtonItemDef } from \"./ActionButtonItemDef\";\nimport { CommandItemDef } from \"./CommandItemDef\";\nimport { ItemDefBase } from \"./ItemDefBase\";\n\n/** Menu Item Properties\n * @public\n */\nexport type MenuItemProps = AbstractMenuItemProps;\n\n/** Menu Item\n * @alpha\n */\nexport class MenuItem extends ItemDefBase {\n\n private _id = \"\";\n private _actionItem?: ActionButtonItemDef;\n private _submenu: MenuItem[];\n private _onSelection?: () => void;\n\n /** onSelection is an optional parameter typically supplied to allow menu parent to close context menu when a menu item is selected. */\n constructor(props: MenuItemProps, onSelection?: () => void) {\n super(props);\n\n this._id = props.id;\n this._submenu = new Array<MenuItem>();\n this._onSelection = onSelection;\n\n if (props.item) {\n this._actionItem = new CommandItemDef(props.item);\n\n // Copy over icon, label & badgeType from the item\n if (!this.iconSpec)\n this.iconSpec = this._actionItem.iconSpec;\n if (!this.label)\n this.setLabel(this._actionItem.label);\n if (!this.badgeType)\n this.badgeType = this._actionItem.badgeType;\n if (!this.isDisabled)\n this.isDisabled = this._actionItem.isDisabled;\n } else if (props.submenu) {\n props.submenu.forEach((childProps: MenuItemProps) => {\n const childItem = new MenuItem(childProps, onSelection);\n this._submenu.push(childItem);\n });\n } else {\n throw new UiError(UiFramework.loggerCategory(this), `Either 'item' or 'submenu' must be specified for '${props.id}'.`);\n }\n\n this.iconRightSpec = props.iconRight;\n }\n\n public get id(): string { return this._id; }\n\n public get submenu(): MenuItem[] {\n return this._submenu;\n }\n\n public get actionItem(): ActionButtonItemDef | undefined {\n return this._actionItem;\n }\n\n public iconRightSpec?: IconSpec;\n\n public itemPicked(): void {\n setTimeout(() => {\n // istanbul ignore else\n if (this._actionItem)\n this._actionItem.execute();\n });\n\n // istanbul ignore else\n if (this._onSelection)\n this._onSelection();\n }\n\n}\n\n/** Menu Item helper methods\n * @alpha\n */\nexport class MenuItemHelpers {\n\n public static createMenuItems(itemPropsList: MenuItemProps[], onSelection?: () => void): MenuItem[] {\n const menuItems = new Array<MenuItem>();\n itemPropsList.forEach((itemProps: MenuItemProps) => {\n menuItems.push(new MenuItem(itemProps, onSelection));\n });\n return menuItems;\n }\n\n public static createMenuItemNodes(itemList: MenuItem[]): React.ReactNode[] {\n const itemNodes: React.ReactNode[] = [];\n\n itemList.forEach((item: MenuItem, index: number) => {\n const reactItem = this.createMenuItemNode(item, index);\n // istanbul ignore else\n if (reactItem)\n itemNodes.push(reactItem);\n });\n\n return itemNodes;\n }\n\n private static createMenuItemNode(item: MenuItem, index: number): React.ReactNode {\n let node: React.ReactNode = null;\n const label = item.label;\n const iconSpec = item.iconSpec;\n const iconRightSpec = item.iconRightSpec;\n const badgeType = item.badgeType;\n const isDisabled: boolean = ConditionalBooleanValue.getValue(item.isDisabled);\n\n if (item.actionItem) {\n const sel = () => item.itemPicked();\n node = (\n <ContextMenuItem key={index} onSelect={sel} icon={iconSpec} iconRight={iconRightSpec} badgeType={badgeType} disabled={isDisabled}>\n {label}\n </ContextMenuItem>\n );\n } else {\n // istanbul ignore else\n if (item.submenu && item.submenu.length > 0) {\n const items = this.createMenuItemNodes(item.submenu);\n\n node = (\n <ContextSubMenu key={index} icon={iconSpec} label={label} badgeType={badgeType} disabled={isDisabled}>\n {items}\n </ContextSubMenu>\n );\n }\n }\n\n return node;\n }\n}\n"]}
1
+ {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/MenuItem.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractMenuItemProps, ConditionalBooleanValue, UiError } from \"@itwin/appui-abstract\";\r\nimport { ContextMenuItem, ContextSubMenu, IconSpec } from \"@itwin/core-react\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { ActionButtonItemDef } from \"./ActionButtonItemDef\";\r\nimport { CommandItemDef } from \"./CommandItemDef\";\r\nimport { ItemDefBase } from \"./ItemDefBase\";\r\n\r\n/** Menu Item Properties\r\n * @public\r\n */\r\nexport type MenuItemProps = AbstractMenuItemProps;\r\n\r\n/** Menu Item\r\n * @alpha\r\n */\r\nexport class MenuItem extends ItemDefBase {\r\n\r\n private _id = \"\";\r\n private _actionItem?: ActionButtonItemDef;\r\n private _submenu: MenuItem[];\r\n private _onSelection?: () => void;\r\n\r\n /** onSelection is an optional parameter typically supplied to allow menu parent to close context menu when a menu item is selected. */\r\n constructor(props: MenuItemProps, onSelection?: () => void) {\r\n super(props);\r\n\r\n this._id = props.id;\r\n this._submenu = new Array<MenuItem>();\r\n this._onSelection = onSelection;\r\n\r\n if (props.item) {\r\n this._actionItem = new CommandItemDef(props.item);\r\n\r\n // Copy over icon, label & badgeType from the item\r\n if (!this.iconSpec)\r\n this.iconSpec = this._actionItem.iconSpec;\r\n if (!this.label)\r\n this.setLabel(this._actionItem.label);\r\n if (!this.badgeType)\r\n this.badgeType = this._actionItem.badgeType;\r\n if (!this.isDisabled)\r\n this.isDisabled = this._actionItem.isDisabled;\r\n } else if (props.submenu) {\r\n props.submenu.forEach((childProps: MenuItemProps) => {\r\n const childItem = new MenuItem(childProps, onSelection);\r\n this._submenu.push(childItem);\r\n });\r\n } else {\r\n throw new UiError(UiFramework.loggerCategory(this), `Either 'item' or 'submenu' must be specified for '${props.id}'.`);\r\n }\r\n\r\n this.iconRightSpec = props.iconRight;\r\n }\r\n\r\n public get id(): string { return this._id; }\r\n\r\n public get submenu(): MenuItem[] {\r\n return this._submenu;\r\n }\r\n\r\n public get actionItem(): ActionButtonItemDef | undefined {\r\n return this._actionItem;\r\n }\r\n\r\n public iconRightSpec?: IconSpec;\r\n\r\n public itemPicked(): void {\r\n setTimeout(() => {\r\n // istanbul ignore else\r\n if (this._actionItem)\r\n this._actionItem.execute();\r\n });\r\n\r\n // istanbul ignore else\r\n if (this._onSelection)\r\n this._onSelection();\r\n }\r\n\r\n}\r\n\r\n/** Menu Item helper methods\r\n * @alpha\r\n */\r\nexport class MenuItemHelpers {\r\n\r\n public static createMenuItems(itemPropsList: MenuItemProps[], onSelection?: () => void): MenuItem[] {\r\n const menuItems = new Array<MenuItem>();\r\n itemPropsList.forEach((itemProps: MenuItemProps) => {\r\n menuItems.push(new MenuItem(itemProps, onSelection));\r\n });\r\n return menuItems;\r\n }\r\n\r\n public static createMenuItemNodes(itemList: MenuItem[]): React.ReactNode[] {\r\n const itemNodes: React.ReactNode[] = [];\r\n\r\n itemList.forEach((item: MenuItem, index: number) => {\r\n const reactItem = this.createMenuItemNode(item, index);\r\n // istanbul ignore else\r\n if (reactItem)\r\n itemNodes.push(reactItem);\r\n });\r\n\r\n return itemNodes;\r\n }\r\n\r\n private static createMenuItemNode(item: MenuItem, index: number): React.ReactNode {\r\n let node: React.ReactNode = null;\r\n const label = item.label;\r\n const iconSpec = item.iconSpec;\r\n const iconRightSpec = item.iconRightSpec;\r\n const badgeType = item.badgeType;\r\n const isDisabled: boolean = ConditionalBooleanValue.getValue(item.isDisabled);\r\n\r\n if (item.actionItem) {\r\n const sel = () => item.itemPicked();\r\n node = (\r\n <ContextMenuItem key={index} onSelect={sel} icon={iconSpec} iconRight={iconRightSpec} badgeType={badgeType} disabled={isDisabled}>\r\n {label}\r\n </ContextMenuItem>\r\n );\r\n } else {\r\n // istanbul ignore else\r\n if (item.submenu && item.submenu.length > 0) {\r\n const items = this.createMenuItemNodes(item.submenu);\r\n\r\n node = (\r\n <ContextSubMenu key={index} icon={iconSpec} label={label} badgeType={badgeType} disabled={isDisabled}>\r\n {items}\r\n </ContextSubMenu>\r\n );\r\n }\r\n }\r\n\r\n return node;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectionScope.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/SelectionScope.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,yDAAO,CAAA;IACP,2DAAQ,CAAA;IACR,iEAAW,CAAA;IACX,2DAAQ,CAAA;IACR,qDAAK,CAAA;AACP,CAAC,EANW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAMzB","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 Frontstage\n */\n\n/** Selection Scope enum.\n * @public\n */\nexport enum SelectionScope {\n Element,\n Assembly,\n TopAssembly,\n Category,\n Model,\n}\n"]}
1
+ {"version":3,"file":"SelectionScope.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/SelectionScope.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,yDAAO,CAAA;IACP,2DAAQ,CAAA;IACR,iEAAW,CAAA;IACX,2DAAQ,CAAA;IACR,qDAAK,CAAA;AACP,CAAC,EANW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAMzB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\n/** Selection Scope enum.\r\n * @public\r\n */\r\nexport enum SelectionScope {\r\n Element,\r\n Assembly,\r\n TopAssembly,\r\n Category,\r\n Model,\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolItemDef.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ToolItemDef.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wDAAuD;AAEvD,+DAA4D;AAG5D;;GAEG;AACH,MAAa,WAAY,SAAQ,yCAAmB;IAGlD,YAAY,aAA4B,EAAE,cAAmC;QAC3E,KAAK,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAHhC,WAAM,GAAW,EAAE,CAAC;QAKzB,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC;SAC/I;QAED,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,4DAA4D;IACrD,MAAM,CAAC,iBAAiB,CAAC,IAAiB,EAAE,QAAiB,EAAE,IAAY;QAChF,OAAO,IAAI,WAAW,CAAC;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACvG,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO;YACzB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACnC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,yBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;CACF;AA3BD,kCA2BC","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 Item\n */\n\nimport { IModelApp, Tool } from \"@itwin/core-frontend\";\nimport { OnItemExecutedFunc } from \"@itwin/appui-abstract\";\nimport { ActionButtonItemDef } from \"./ActionButtonItemDef\";\nimport { ToolItemProps } from \"./ItemProps\";\n\n/** An Item that starts the execution of a Tool.\n * @public\n */\nexport class ToolItemDef extends ActionButtonItemDef {\n public toolId: string = \"\";\n\n constructor(toolItemProps: ToolItemProps, onItemExecuted?: OnItemExecutedFunc) {\n super(toolItemProps, onItemExecuted);\n\n if (toolItemProps.execute) {\n this._commandHandler = { execute: toolItemProps.execute, parameters: toolItemProps.parameters, getCommandArgs: toolItemProps.getCommandArgs };\n }\n\n this.toolId = toolItemProps.toolId;\n }\n\n public get id(): string {\n return this.toolId;\n }\n\n /** Create a ToolItemDef that will run a registered tool. */\n public static getItemDefForTool(tool: typeof Tool, iconSpec?: string, args?: any[]): ToolItemDef {\n return new ToolItemDef({\n toolId: tool.toolId,\n iconSpec: iconSpec ? iconSpec : (tool.iconSpec && tool.iconSpec.length > 0) ? tool.iconSpec : undefined,\n label: () => tool.flyover,\n description: () => tool.description,\n execute: async () => IModelApp.tools.run(tool.toolId, args),\n });\n }\n}\n"]}
1
+ {"version":3,"file":"ToolItemDef.js","sourceRoot":"","sources":["../../../../src/appui-react/shared/ToolItemDef.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wDAAuD;AAEvD,+DAA4D;AAG5D;;GAEG;AACH,MAAa,WAAY,SAAQ,yCAAmB;IAGlD,YAAY,aAA4B,EAAE,cAAmC;QAC3E,KAAK,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAHhC,WAAM,GAAW,EAAE,CAAC;QAKzB,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC;SAC/I;QAED,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,4DAA4D;IACrD,MAAM,CAAC,iBAAiB,CAAC,IAAiB,EAAE,QAAiB,EAAE,IAAY;QAChF,OAAO,IAAI,WAAW,CAAC;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACvG,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO;YACzB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACnC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,yBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;CACF;AA3BD,kCA2BC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { IModelApp, Tool } from \"@itwin/core-frontend\";\r\nimport { OnItemExecutedFunc } from \"@itwin/appui-abstract\";\r\nimport { ActionButtonItemDef } from \"./ActionButtonItemDef\";\r\nimport { ToolItemProps } from \"./ItemProps\";\r\n\r\n/** An Item that starts the execution of a Tool.\r\n * @public\r\n */\r\nexport class ToolItemDef extends ActionButtonItemDef {\r\n public toolId: string = \"\";\r\n\r\n constructor(toolItemProps: ToolItemProps, onItemExecuted?: OnItemExecutedFunc) {\r\n super(toolItemProps, onItemExecuted);\r\n\r\n if (toolItemProps.execute) {\r\n this._commandHandler = { execute: toolItemProps.execute, parameters: toolItemProps.parameters, getCommandArgs: toolItemProps.getCommandArgs };\r\n }\r\n\r\n this.toolId = toolItemProps.toolId;\r\n }\r\n\r\n public get id(): string {\r\n return this.toolId;\r\n }\r\n\r\n /** Create a ToolItemDef that will run a registered tool. */\r\n public static getItemDefForTool(tool: typeof Tool, iconSpec?: string, args?: any[]): ToolItemDef {\r\n return new ToolItemDef({\r\n toolId: tool.toolId,\r\n iconSpec: iconSpec ? iconSpec : (tool.iconSpec && tool.iconSpec.length > 0) ? tool.iconSpec : undefined,\r\n label: () => tool.flyover,\r\n description: () => tool.description,\r\n execute: async () => IModelApp.tools.run(tool.toolId, args),\r\n });\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FrameworkStagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/FrameworkStagePanel.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 Frontstage\n */\n\nimport \"./FrameworkStagePanel.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\nimport {\n NineZoneStagePanelManagerProps, SplitterPaneTarget as NZ_SplitterPaneTarget, StagePanel as NZ_StagePanel, SafeAreaInsets, Splitter, SplitterTarget,\n StagePanelTarget, StagePanelTypeHelpers, WidgetZoneId, ZonesManagerWidgetsProps,\n} from \"@itwin/appui-layout-react\";\nimport { StagePanelChangeHandler, WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\nimport { WidgetStack, WidgetTabs } from \"../widgets/WidgetStack\";\nimport { ZoneLocation } from \"../zones/Zone\";\nimport { getNestedStagePanelKey, getStagePanelType } from \"./StagePanel\";\nimport { StagePanelState } from \"./StagePanelDef\";\nimport { WidgetDef } from \"../widgets/WidgetDef\";\n\n/** Properties of a [[FrameworkStagePanel]] component\n * @internal\n */\nexport interface FrameworkStagePanelProps {\n allowedZones?: ZoneLocation[];\n changeHandler: StagePanelChangeHandler;\n draggedWidgetId: WidgetZoneId | undefined;\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>;\n header?: React.ReactNode;\n initialSize?: number;\n isInFooterMode: boolean;\n isTargeted: boolean;\n maxSize?: number;\n minSize?: number;\n location: StagePanelLocation;\n panel: NineZoneStagePanelManagerProps;\n panelState: StagePanelState;\n renderPane: (widgetDefId: WidgetDef[\"id\"]) => React.ReactNode;\n resizable: boolean;\n widgetChangeHandler: WidgetChangeHandler;\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>; // widgets defined in StagePanel\n widgets: ZonesManagerWidgetsProps; // zone widgets\n widgetTabs: WidgetTabs;\n}\n\n/** Stage Panel React component.\n * @internal\n */\nexport class FrameworkStagePanel extends React.PureComponent<FrameworkStagePanelProps> {\n private _measurer = React.createRef<HTMLDivElement>();\n\n public override componentDidMount(): void {\n this.initializeSize();\n this.setMinMaxSize();\n }\n\n public override componentDidUpdate(): void {\n this.initializeSize();\n this.setMinMaxSize();\n }\n\n public override render(): React.ReactNode {\n const panelStateClassName = classnames(this.props.panelState === StagePanelState.Off && /* istanbul ignore next */ \"uifw-stagepanel-off\");\n const className = classnames(\"uifw-stagepanel\", panelStateClassName);\n const paneCount = this.props.stagePanelWidgets.length + this.props.panel.panes.length;\n const type = getStagePanelType(this.props.location);\n const isTargetVisible = !!this.props.draggedWidgetId && this.props.allowedZones && this.props.allowedZones.some((z) => this.props.draggedWidgetId === z);\n if (paneCount === 0) {\n if (!isTargetVisible)\n return null;\n return (\n <SafeAreaContext.Consumer>\n {(safeAreaInsets) => (\n <StagePanelTarget\n className={panelStateClassName}\n onTargetChanged={this._handleTargetChanged}\n safeAreaInsets={safeAreaInsets}\n type={type}\n />\n )}\n </SafeAreaContext.Consumer>\n );\n }\n\n const isSplitterTargetVisible = isTargetVisible && !this.props.isTargeted;\n const isVertical = StagePanelTypeHelpers.isVertical(type);\n return (\n <SafeAreaContext.Consumer>\n {(safeAreaInsets) => {\n if (this.props.isInFooterMode)\n safeAreaInsets &= ~SafeAreaInsets.Bottom;\n return (\n <NZ_StagePanel\n className={className}\n onResize={this.props.resizable ? this._handleResize : undefined}\n onToggleCollapse={this._handleToggleCollapse}\n safeAreaInsets={safeAreaInsets}\n size={this.props.panel.isCollapsed ? undefined : this.props.panel.size}\n type={type}\n >\n <div\n ref={this._measurer}\n style={{ width: \"100%\", height: \"100%\", position: \"absolute\", zIndex: -1 }}\n />\n <div className=\"uifw-content\">\n {this.props.panel.isCollapsed ? undefined : this.props.header}\n <div className=\"uifw-widgets\">\n <SplitterTarget\n isVertical={isVertical}\n onTargetChanged={this._handleTargetChanged}\n paneCount={paneCount}\n style={{\n ...isTargetVisible ? {} : { display: \"none\" },\n }}\n />\n <Splitter\n isGripHidden={this.props.panel.isCollapsed}\n isVertical={isVertical}\n >\n {this.props.stagePanelWidgets.map((widgetId) => {\n return (\n <React.Fragment key={`wd-${widgetId}`}>\n {this.props.renderPane(widgetId)}\n </React.Fragment>\n );\n })}\n {this.props.panel.panes.map((pane, index) => {\n const openWidgetId = pane.widgets.find((wId) => this.props.widgets[wId].tabIndex >= 0);\n const activeTabIndex = openWidgetId ? this.props.widgets[openWidgetId].tabIndex : 0;\n const firstWidget = this.props.widgets[pane.widgets[0]];\n return (\n <div\n key={`w-${index}`}\n style={{ height: \"100%\", position: \"relative\" }}\n >\n <WidgetStack\n activeTabIndex={activeTabIndex}\n disabledResizeHandles={undefined}\n draggedWidget={undefined}\n fillZone={true}\n getWidgetContentRef={this.props.getWidgetContentRef}\n horizontalAnchor={firstWidget.horizontalAnchor}\n isCollapsed={this.props.panel.isCollapsed}\n isFloating={false}\n isInStagePanel={true}\n openWidgetId={openWidgetId}\n verticalAnchor={firstWidget.verticalAnchor}\n widgets={pane.widgets}\n widgetTabs={this.props.widgetTabs}\n widgetChangeHandler={this.props.widgetChangeHandler}\n />\n {isSplitterTargetVisible && <SplitterPaneTarget\n onTargetChanged={this._handlePaneTargetChanged}\n paneIndex={index}\n />}\n </div>\n );\n })}\n </Splitter>\n </div>\n </div>\n </NZ_StagePanel>\n );\n }}\n </SafeAreaContext.Consumer>\n );\n }\n\n private setMinMaxSize() {\n const panel = getNestedStagePanelKey(this.props.location);\n const nestedPanelsManager = FrontstageManager.NineZoneManager.getNestedPanelsManager();\n this.props.minSize && ( /* istanbul ignore next */ nestedPanelsManager.getPanelsManager(panel.id).getPanelManager(panel.type).minSize = this.props.minSize);\n this.props.maxSize && ( /* istanbul ignore next */ nestedPanelsManager.getPanelsManager(panel.id).getPanelManager(panel.type).maxSize = this.props.maxSize);\n }\n\n private _handleResize = (resizeBy: number) => {\n this.props.changeHandler.handlePanelResize(this.props.location, resizeBy);\n };\n\n private _handleTargetChanged = (isTargeted: boolean) => {\n this.props.changeHandler.handlePanelTargetChange(isTargeted ? this.props.location : undefined);\n };\n\n private _handleToggleCollapse = () => {\n this.props.changeHandler.handleTogglePanelCollapse(this.props.location);\n };\n\n private _handlePaneTargetChanged = (paneIndex: number | undefined) => {\n this.props.changeHandler.handlePanelPaneTargetChange(this.props.location, paneIndex);\n };\n\n private initializeSize() {\n if (this.props.panel.size !== undefined || !this._measurer.current)\n return;\n\n const location = this.props.location;\n if (this.props.initialSize) {\n this.props.changeHandler.handlePanelInitialize(location, this.props.initialSize);\n return;\n }\n const clientRect = this._measurer.current.getBoundingClientRect();\n const type = getStagePanelType(location);\n const size = StagePanelTypeHelpers.isVertical(type) ? clientRect.width : clientRect.height;\n this.props.changeHandler.handlePanelInitialize(location, size);\n }\n}\n\n/** @internal */\nexport interface SplitterPaneTargetProps {\n onTargetChanged: (paneIndex: number | undefined) => void;\n paneIndex: number;\n}\n\n/** @internal */\nexport class SplitterPaneTarget extends React.PureComponent<SplitterPaneTargetProps> {\n public override render() {\n return (\n <NZ_SplitterPaneTarget\n onTargetChanged={this._handleTargetChanged}\n />\n );\n }\n\n private _handleTargetChanged = (isTargeted: boolean) => {\n const target = isTargeted ? this.props.paneIndex : undefined;\n this.props.onTargetChanged(target);\n };\n}\n"]}
1
+ {"version":3,"file":"FrameworkStagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/FrameworkStagePanel.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport \"./FrameworkStagePanel.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\r\nimport {\r\n NineZoneStagePanelManagerProps, SplitterPaneTarget as NZ_SplitterPaneTarget, StagePanel as NZ_StagePanel, SafeAreaInsets, Splitter, SplitterTarget,\r\n StagePanelTarget, StagePanelTypeHelpers, WidgetZoneId, ZonesManagerWidgetsProps,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { StagePanelChangeHandler, WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { WidgetStack, WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { getNestedStagePanelKey, getStagePanelType } from \"./StagePanel\";\r\nimport { StagePanelState } from \"./StagePanelDef\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\n\r\n/** Properties of a [[FrameworkStagePanel]] component\r\n * @internal\r\n */\r\nexport interface FrameworkStagePanelProps {\r\n allowedZones?: ZoneLocation[];\r\n changeHandler: StagePanelChangeHandler;\r\n draggedWidgetId: WidgetZoneId | undefined;\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>;\r\n header?: React.ReactNode;\r\n initialSize?: number;\r\n isInFooterMode: boolean;\r\n isTargeted: boolean;\r\n maxSize?: number;\r\n minSize?: number;\r\n location: StagePanelLocation;\r\n panel: NineZoneStagePanelManagerProps;\r\n panelState: StagePanelState;\r\n renderPane: (widgetDefId: WidgetDef[\"id\"]) => React.ReactNode;\r\n resizable: boolean;\r\n widgetChangeHandler: WidgetChangeHandler;\r\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>; // widgets defined in StagePanel\r\n widgets: ZonesManagerWidgetsProps; // zone widgets\r\n widgetTabs: WidgetTabs;\r\n}\r\n\r\n/** Stage Panel React component.\r\n * @internal\r\n */\r\nexport class FrameworkStagePanel extends React.PureComponent<FrameworkStagePanelProps> {\r\n private _measurer = React.createRef<HTMLDivElement>();\r\n\r\n public override componentDidMount(): void {\r\n this.initializeSize();\r\n this.setMinMaxSize();\r\n }\r\n\r\n public override componentDidUpdate(): void {\r\n this.initializeSize();\r\n this.setMinMaxSize();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const panelStateClassName = classnames(this.props.panelState === StagePanelState.Off && /* istanbul ignore next */ \"uifw-stagepanel-off\");\r\n const className = classnames(\"uifw-stagepanel\", panelStateClassName);\r\n const paneCount = this.props.stagePanelWidgets.length + this.props.panel.panes.length;\r\n const type = getStagePanelType(this.props.location);\r\n const isTargetVisible = !!this.props.draggedWidgetId && this.props.allowedZones && this.props.allowedZones.some((z) => this.props.draggedWidgetId === z);\r\n if (paneCount === 0) {\r\n if (!isTargetVisible)\r\n return null;\r\n return (\r\n <SafeAreaContext.Consumer>\r\n {(safeAreaInsets) => (\r\n <StagePanelTarget\r\n className={panelStateClassName}\r\n onTargetChanged={this._handleTargetChanged}\r\n safeAreaInsets={safeAreaInsets}\r\n type={type}\r\n />\r\n )}\r\n </SafeAreaContext.Consumer>\r\n );\r\n }\r\n\r\n const isSplitterTargetVisible = isTargetVisible && !this.props.isTargeted;\r\n const isVertical = StagePanelTypeHelpers.isVertical(type);\r\n return (\r\n <SafeAreaContext.Consumer>\r\n {(safeAreaInsets) => {\r\n if (this.props.isInFooterMode)\r\n safeAreaInsets &= ~SafeAreaInsets.Bottom;\r\n return (\r\n <NZ_StagePanel\r\n className={className}\r\n onResize={this.props.resizable ? this._handleResize : undefined}\r\n onToggleCollapse={this._handleToggleCollapse}\r\n safeAreaInsets={safeAreaInsets}\r\n size={this.props.panel.isCollapsed ? undefined : this.props.panel.size}\r\n type={type}\r\n >\r\n <div\r\n ref={this._measurer}\r\n style={{ width: \"100%\", height: \"100%\", position: \"absolute\", zIndex: -1 }}\r\n />\r\n <div className=\"uifw-content\">\r\n {this.props.panel.isCollapsed ? undefined : this.props.header}\r\n <div className=\"uifw-widgets\">\r\n <SplitterTarget\r\n isVertical={isVertical}\r\n onTargetChanged={this._handleTargetChanged}\r\n paneCount={paneCount}\r\n style={{\r\n ...isTargetVisible ? {} : { display: \"none\" },\r\n }}\r\n />\r\n <Splitter\r\n isGripHidden={this.props.panel.isCollapsed}\r\n isVertical={isVertical}\r\n >\r\n {this.props.stagePanelWidgets.map((widgetId) => {\r\n return (\r\n <React.Fragment key={`wd-${widgetId}`}>\r\n {this.props.renderPane(widgetId)}\r\n </React.Fragment>\r\n );\r\n })}\r\n {this.props.panel.panes.map((pane, index) => {\r\n const openWidgetId = pane.widgets.find((wId) => this.props.widgets[wId].tabIndex >= 0);\r\n const activeTabIndex = openWidgetId ? this.props.widgets[openWidgetId].tabIndex : 0;\r\n const firstWidget = this.props.widgets[pane.widgets[0]];\r\n return (\r\n <div\r\n key={`w-${index}`}\r\n style={{ height: \"100%\", position: \"relative\" }}\r\n >\r\n <WidgetStack\r\n activeTabIndex={activeTabIndex}\r\n disabledResizeHandles={undefined}\r\n draggedWidget={undefined}\r\n fillZone={true}\r\n getWidgetContentRef={this.props.getWidgetContentRef}\r\n horizontalAnchor={firstWidget.horizontalAnchor}\r\n isCollapsed={this.props.panel.isCollapsed}\r\n isFloating={false}\r\n isInStagePanel={true}\r\n openWidgetId={openWidgetId}\r\n verticalAnchor={firstWidget.verticalAnchor}\r\n widgets={pane.widgets}\r\n widgetTabs={this.props.widgetTabs}\r\n widgetChangeHandler={this.props.widgetChangeHandler}\r\n />\r\n {isSplitterTargetVisible && <SplitterPaneTarget\r\n onTargetChanged={this._handlePaneTargetChanged}\r\n paneIndex={index}\r\n />}\r\n </div>\r\n );\r\n })}\r\n </Splitter>\r\n </div>\r\n </div>\r\n </NZ_StagePanel>\r\n );\r\n }}\r\n </SafeAreaContext.Consumer>\r\n );\r\n }\r\n\r\n private setMinMaxSize() {\r\n const panel = getNestedStagePanelKey(this.props.location);\r\n const nestedPanelsManager = FrontstageManager.NineZoneManager.getNestedPanelsManager();\r\n this.props.minSize && ( /* istanbul ignore next */ nestedPanelsManager.getPanelsManager(panel.id).getPanelManager(panel.type).minSize = this.props.minSize);\r\n this.props.maxSize && ( /* istanbul ignore next */ nestedPanelsManager.getPanelsManager(panel.id).getPanelManager(panel.type).maxSize = this.props.maxSize);\r\n }\r\n\r\n private _handleResize = (resizeBy: number) => {\r\n this.props.changeHandler.handlePanelResize(this.props.location, resizeBy);\r\n };\r\n\r\n private _handleTargetChanged = (isTargeted: boolean) => {\r\n this.props.changeHandler.handlePanelTargetChange(isTargeted ? this.props.location : undefined);\r\n };\r\n\r\n private _handleToggleCollapse = () => {\r\n this.props.changeHandler.handleTogglePanelCollapse(this.props.location);\r\n };\r\n\r\n private _handlePaneTargetChanged = (paneIndex: number | undefined) => {\r\n this.props.changeHandler.handlePanelPaneTargetChange(this.props.location, paneIndex);\r\n };\r\n\r\n private initializeSize() {\r\n if (this.props.panel.size !== undefined || !this._measurer.current)\r\n return;\r\n\r\n const location = this.props.location;\r\n if (this.props.initialSize) {\r\n this.props.changeHandler.handlePanelInitialize(location, this.props.initialSize);\r\n return;\r\n }\r\n const clientRect = this._measurer.current.getBoundingClientRect();\r\n const type = getStagePanelType(location);\r\n const size = StagePanelTypeHelpers.isVertical(type) ? clientRect.width : clientRect.height;\r\n this.props.changeHandler.handlePanelInitialize(location, size);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport interface SplitterPaneTargetProps {\r\n onTargetChanged: (paneIndex: number | undefined) => void;\r\n paneIndex: number;\r\n}\r\n\r\n/** @internal */\r\nexport class SplitterPaneTarget extends React.PureComponent<SplitterPaneTargetProps> {\r\n public override render() {\r\n return (\r\n <NZ_SplitterPaneTarget\r\n onTargetChanged={this._handleTargetChanged}\r\n />\r\n );\r\n }\r\n\r\n private _handleTargetChanged = (isTargeted: boolean) => {\r\n const target = isTargeted ? this.props.paneIndex : undefined;\r\n this.props.onTargetChanged(target);\r\n };\r\n}\r\n"]}
@@ -1,42 +1,42 @@
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
- @import "~@itwin/appui-layout-react/lib/cjs/appui-layout-react/footer/dialog/variables";
6
- @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
-
8
- .uifw-stagepanel {
9
- background-color: $buic-background-widget;
10
- box-sizing: border-box;
11
-
12
- &.nz-panel-top {
13
- border-bottom: 1px solid $buic-background-widget-stroke;
14
- }
15
-
16
- &.nz-panel-left {
17
- border-right: 1px solid $buic-background-widget-stroke;
18
- }
19
-
20
- &.nz-panel-right {
21
- border-left: 1px solid $buic-background-widget-stroke;
22
- }
23
-
24
- &.nz-panel-bottom {
25
- border-top: 1px solid $buic-background-widget-stroke;
26
- }
27
-
28
- .uifw-content {
29
- display: flex;
30
- height: 100%;
31
- flex-direction: column;
32
-
33
- >.uifw-widgets {
34
- flex: 1;
35
- position: relative;
36
- }
37
- }
38
- }
39
-
40
- .uifw-stagepanel-off {
41
- display: none;
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
+ @import "~@itwin/appui-layout-react/lib/cjs/appui-layout-react/footer/dialog/variables";
6
+ @import "~@itwin/core-react/lib/cjs/core-react/style/themecolors";
7
+
8
+ .uifw-stagepanel {
9
+ background-color: $buic-background-widget;
10
+ box-sizing: border-box;
11
+
12
+ &.nz-panel-top {
13
+ border-bottom: 1px solid $buic-background-widget-stroke;
14
+ }
15
+
16
+ &.nz-panel-left {
17
+ border-right: 1px solid $buic-background-widget-stroke;
18
+ }
19
+
20
+ &.nz-panel-right {
21
+ border-left: 1px solid $buic-background-widget-stroke;
22
+ }
23
+
24
+ &.nz-panel-bottom {
25
+ border-top: 1px solid $buic-background-widget-stroke;
26
+ }
27
+
28
+ .uifw-content {
29
+ display: flex;
30
+ height: 100%;
31
+ flex-direction: column;
32
+
33
+ >.uifw-widgets {
34
+ flex: 1;
35
+ position: relative;
36
+ }
37
+ }
38
+ }
39
+
40
+ .uifw-stagepanel-off {
41
+ display: none;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.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 Frontstage\n */\n\nimport * as React from \"react\";\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\nimport {\n NestedStagePanelKey, NestedStagePanelsManagerProps, NineZoneStagePanelManagerProps, StagePanelType as NZ_StagePanelType, WidgetZoneId,\n ZonesManagerWidgetsProps,\n} from \"@itwin/appui-layout-react\";\nimport { StagePanelChangeHandler, WidgetChangeHandler, ZoneDefProvider } from \"../frontstage/FrontstageComposer\";\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\nimport { WidgetProps } from \"../widgets/WidgetProps\";\nimport { WidgetTabs } from \"../widgets/WidgetStack\";\nimport { ZoneLocation } from \"../zones/Zone\";\nimport { FrameworkStagePanel } from \"./FrameworkStagePanel\";\nimport { PanelStateChangedEventArgs, StagePanelDef, StagePanelState as StagePanelState } from \"./StagePanelDef\";\nimport { WidgetDef, WidgetStateChangedEventArgs } from \"../widgets/WidgetDef\";\n\n/** Available StagePanel locations.\n * ------------------------------------------------------------------------------------\n * TopMost\n * ------------------------------------------------------------------------------------\n * Left | Top | Right\n * |---------------------------------------------------------------|\n * | Nine-zone |\n * | |\n * | |\n * | |\n * | |\n * | |\n * |---------------------------------------------------------------|\n * | Bottom |\n * ------------------------------------------------------------------------------------\n * BottomMost\n * ------------------------------------------------------------------------------------\n */\n\n/** Properties of a Stage Panel Zone\n * @public\n */\nexport interface StagePanelZoneProps {\n /** Properties for the Widgets in this Zone.\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\n */\n widgets: Array<React.ReactElement<WidgetProps>>;\n /** Any application data to attach to this Zone. */\n applicationData?: any;\n}\n\n/** Properties of the Stage Panel Zones\n * @public\n */\nexport interface StagePanelZonesProps {\n /** Properties for the Widgets in the Start section. */\n start?: StagePanelZoneProps;\n /** Properties for the Widgets in the Middle section. */\n middle?: StagePanelZoneProps;\n /** Properties for the Widgets in the End section. */\n end?: StagePanelZoneProps;\n}\n\n/** Available units of panel maximum size. Pixels or percentage of 9-Zone App size.\n * @note Percentage of 9-Zone `height` is used for top/bottom panel and percentage of 9-Zone `width` is used for left/right panel.\n * @public\n */\nexport type StagePanelMaxSizeSpec = number | { percentage: number };\n\n/** Properties of a [[StagePanel]] component\n * @public\n */\nexport interface StagePanelProps {\n /** Describes which zones are allowed in this stage panel. */\n allowedZones?: ZoneLocation[];\n /** Any application data to attach to this Panel. */\n applicationData?: any;\n /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */\n defaultState?: StagePanelState;\n /** Stage panel header. */\n header?: React.ReactNode;\n /** Maximum size of the panel. */\n maxSize?: StagePanelMaxSizeSpec;\n /** Minimum size of the panel. */\n minSize?: number;\n /** Indicates whether the panel is pinned. Defaults to true. */\n pinned?: boolean;\n /** Indicates whether the panel is resizable. Defaults to true. */\n resizable: boolean;\n /** Default size of the panel. */\n size?: number;\n /** Properties for the Widgets in this Panel.\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\n */\n widgets?: Array<React.ReactElement<WidgetProps>>;\n\n /** Properties for the Panel Zones in this Panel.\n * @beta */\n panelZones?: StagePanelZonesProps;\n\n /** @internal */\n runtimeProps?: StagePanelRuntimeProps;\n}\n\n/** Default properties of [[StagePanel]] component.\n * @public\n */\nexport type StagePanelDefaultProps = Pick<StagePanelProps, \"resizable\">;\n\n/** Runtime Properties for the [[StagePanel]] component.\n * @internal\n */\nexport interface StagePanelRuntimeProps {\n draggedWidgetId: WidgetZoneId | undefined;\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>;\n isInFooterMode: boolean;\n isTargeted: boolean;\n panel: NineZoneStagePanelManagerProps;\n panelDef: StagePanelDef;\n stagePanelChangeHandler: StagePanelChangeHandler;\n widgetChangeHandler: WidgetChangeHandler;\n widgets: ZonesManagerWidgetsProps;\n widgetTabs: WidgetTabs;\n zoneDefProvider: ZoneDefProvider;\n}\n\ninterface StagePanelComponentState {\n panelState: StagePanelState;\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>;\n}\n\n/** Frontstage Panel React component.\n * @public\n */\nexport class StagePanel extends React.Component<StagePanelProps, StagePanelComponentState> {\n public static readonly defaultProps: StagePanelDefaultProps = {\n resizable: true,\n };\n\n public constructor(props: StagePanelProps) {\n super(props);\n\n const panelState = this.props.runtimeProps?.panelDef.panelState;\n this.state = {\n panelState: panelState === undefined ? StagePanelState.Open : panelState,\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\n };\n }\n\n public static initializeStagePanelDef(panelDef: StagePanelDef, props: StagePanelProps, panelLocation: StagePanelLocation): void {\n panelDef.initializeFromProps(props, panelLocation);\n }\n\n public override componentDidMount() {\n FrontstageManager.onPanelStateChangedEvent.addListener(this._handlePanelStateChangedEvent);\n FrontstageManager.onWidgetStateChangedEvent.addListener(this._handleWidgetStateChangedEvent);\n }\n\n public override componentDidUpdate(prevProps: StagePanelProps) {\n if (prevProps.runtimeProps?.panelDef !== this.props.runtimeProps?.panelDef) {\n this.setState({\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\n });\n }\n }\n\n public override componentWillUnmount() {\n FrontstageManager.onPanelStateChangedEvent.removeListener(this._handlePanelStateChangedEvent);\n FrontstageManager.onWidgetStateChangedEvent.removeListener(this._handleWidgetStateChangedEvent);\n }\n\n public override render(): React.ReactNode {\n const { applicationData, defaultState, runtimeProps, maxSize, size, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\n if (!runtimeProps)\n return null;\n\n const { stagePanelChangeHandler, panelDef, ...otherRuntimeProps } = runtimeProps;\n return (\n <FrameworkStagePanel\n changeHandler={stagePanelChangeHandler}\n initialSize={size}\n location={panelDef.location}\n renderPane={this._handleRenderPane}\n stagePanelWidgets={this.state.stagePanelWidgets}\n panelState={this.state.panelState}\n maxSize={typeof maxSize === \"number\" ? maxSize : undefined}\n {...props}\n {...otherRuntimeProps}\n />\n );\n }\n\n private _handleRenderPane = (widgetDefId: WidgetDef[\"id\"]): React.ReactNode => {\n const runtimeProps = this.props.runtimeProps;\n if (!runtimeProps)\n return null;\n const widgetDef = runtimeProps.panelDef.findWidgetDef(widgetDefId);\n if (!widgetDef || !widgetDef.isVisible)\n return null;\n return (\n <div\n style={{\n height: \"100%\",\n display: runtimeProps.panel.isCollapsed ? \"none\" : \"block\",\n }}\n >\n {widgetDef.reactNode}\n </div>\n );\n };\n\n private _handlePanelStateChangedEvent = ({ panelDef, panelState }: PanelStateChangedEventArgs) => {\n // istanbul ignore else\n if (panelDef !== this.props.runtimeProps?.panelDef)\n return;\n // istanbul ignore next\n this.setState({\n panelState,\n });\n };\n\n private _handleWidgetStateChangedEvent = ({ widgetDef }: WidgetStateChangedEventArgs) => {\n const runtimeProps = this.props.runtimeProps;\n if (!runtimeProps)\n return;\n if (!runtimeProps.panelDef.findWidgetDef(widgetDef.id))\n return;\n this.setState({\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\n });\n };\n\n private _getVisibleStagePanelWidgets() {\n const panelDef = this.props.runtimeProps?.panelDef;\n if (!panelDef)\n return [];\n const visibleWidgets = panelDef.widgetDefs.filter((wd) => wd.isVisible);\n return visibleWidgets.map((widgetDef) => widgetDef.id);\n }\n}\n\n/** @internal */\nexport const getStagePanelType = (location: StagePanelLocation): NZ_StagePanelType => {\n switch (location) {\n case StagePanelLocation.Bottom:\n case StagePanelLocation.BottomMost:\n return NZ_StagePanelType.Bottom;\n case StagePanelLocation.Left:\n return NZ_StagePanelType.Left;\n case StagePanelLocation.Right:\n return NZ_StagePanelType.Right;\n case StagePanelLocation.Top:\n case StagePanelLocation.TopMost:\n return NZ_StagePanelType.Top;\n }\n};\n\n/** @internal */\nexport const getNestedStagePanelKey = (location: StagePanelLocation): NestedStagePanelKey<NestedStagePanelsManagerProps> => {\n switch (location) {\n case StagePanelLocation.Bottom:\n return {\n id: \"inner\",\n type: NZ_StagePanelType.Bottom,\n };\n case StagePanelLocation.BottomMost:\n return {\n id: \"outer\",\n type: NZ_StagePanelType.Bottom,\n };\n case StagePanelLocation.Left:\n return {\n id: \"inner\",\n type: NZ_StagePanelType.Left,\n };\n case StagePanelLocation.Right:\n return {\n id: \"inner\",\n type: NZ_StagePanelType.Right,\n };\n case StagePanelLocation.Top:\n return {\n id: \"inner\",\n type: NZ_StagePanelType.Top,\n };\n case StagePanelLocation.TopMost:\n return {\n id: \"outer\",\n type: NZ_StagePanelType.Top,\n };\n }\n};\n"]}
1
+ {"version":3,"file":"StagePanel.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanel.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,0DAA2D;AAC3D,kEAGmC;AAEnC,uEAAoE;AAIpE,+DAA4D;AAC5D,mDAAgH;AAoHhH;;GAEG;AACH,MAAa,UAAW,SAAQ,KAAK,CAAC,SAAoD;IAKxF,YAAmB,KAAsB;;QACvC,KAAK,CAAC,KAAK,CAAC,CAAC;QAoDP,sBAAiB,GAAG,CAAC,WAA4B,EAAmB,EAAE;YAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC7C,IAAI,CAAC,YAAY;gBACf,OAAO,IAAI,CAAC;YACd,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS;gBACpC,OAAO,IAAI,CAAC;YACd,OAAO,CACL,6BACE,KAAK,EAAE;oBACL,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;iBAC3D,IAEA,SAAS,CAAC,SAAS,CAChB,CACP,CAAC;QACJ,CAAC,CAAC;QAEM,kCAA6B,GAAG,CAAC,EAAE,QAAQ,EAAE,UAAU,EAA8B,EAAE,EAAE;;YAC/F,uBAAuB;YACvB,IAAI,QAAQ,MAAK,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,QAAQ,CAAA;gBAChD,OAAO;YACT,uBAAuB;YACvB,IAAI,CAAC,QAAQ,CAAC;gBACZ,UAAU;aACX,CAAC,CAAC;QACL,CAAC,CAAC;QAEM,mCAA8B,GAAG,CAAC,EAAE,SAAS,EAA+B,EAAE,EAAE;YACtF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC7C,IAAI,CAAC,YAAY;gBACf,OAAO;YACT,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpD,OAAO;YACT,IAAI,CAAC,QAAQ,CAAC;gBACZ,iBAAiB,EAAE,IAAI,CAAC,4BAA4B,EAAE;aACvD,CAAC,CAAC;QACL,CAAC,CAAC;QAxFA,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,QAAQ,CAAC,UAAU,CAAC;QAChE,IAAI,CAAC,KAAK,GAAG;YACX,UAAU,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,+BAAe,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU;YACxE,iBAAiB,EAAE,IAAI,CAAC,4BAA4B,EAAE;SACvD,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAAuB,EAAE,KAAsB,EAAE,aAAiC;QACtH,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;IAEe,iBAAiB;QAC/B,qCAAiB,CAAC,wBAAwB,CAAC,WAAW,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC3F,qCAAiB,CAAC,yBAAyB,CAAC,WAAW,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC/F,CAAC;IAEe,kBAAkB,CAAC,SAA0B;;QAC3D,IAAI,CAAA,MAAA,SAAS,CAAC,YAAY,0CAAE,QAAQ,OAAK,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,QAAQ,CAAA,EAAE;YAC1E,IAAI,CAAC,QAAQ,CAAC;gBACZ,iBAAiB,EAAE,IAAI,CAAC,4BAA4B,EAAE;aACvD,CAAC,CAAC;SACJ;IACH,CAAC;IAEe,oBAAoB;QAClC,qCAAiB,CAAC,wBAAwB,CAAC,cAAc,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC9F,qCAAiB,CAAC,yBAAyB,CAAC,cAAc,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAClG,CAAC;IAEe,MAAM;QACpB,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,wDAAwD;QACrJ,IAAI,CAAC,YAAY;YACf,OAAO,IAAI,CAAC;QAEd,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,GAAG,iBAAiB,EAAE,GAAG,YAAY,CAAC;QACjF,OAAO,CACL,oBAAC,yCAAmB,IAClB,aAAa,EAAE,uBAAuB,EACtC,WAAW,EAAE,IAAI,EACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAC3B,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAClC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAC/C,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KACtD,KAAK,KACL,iBAAiB,GACrB,CACH,CAAC;IACJ,CAAC;IA0CO,4BAA4B;;QAClC,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,QAAQ,CAAC;QACnD,IAAI,CAAC,QAAQ;YACX,OAAO,EAAE,CAAC;QACZ,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACxE,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;;AAxGH,gCAyGC;AAxGwB,uBAAY,GAA2B;IAC5D,SAAS,EAAE,IAAI;CAChB,CAAC;AAwGJ,gBAAgB;AACT,MAAM,iBAAiB,GAAG,CAAC,QAA4B,EAAqB,EAAE;IACnF,QAAQ,QAAQ,EAAE;QAChB,KAAK,mCAAkB,CAAC,MAAM,CAAC;QAC/B,KAAK,mCAAkB,CAAC,UAAU;YAChC,OAAO,mCAAiB,CAAC,MAAM,CAAC;QAClC,KAAK,mCAAkB,CAAC,IAAI;YAC1B,OAAO,mCAAiB,CAAC,IAAI,CAAC;QAChC,KAAK,mCAAkB,CAAC,KAAK;YAC3B,OAAO,mCAAiB,CAAC,KAAK,CAAC;QACjC,KAAK,mCAAkB,CAAC,GAAG,CAAC;QAC5B,KAAK,mCAAkB,CAAC,OAAO;YAC7B,OAAO,mCAAiB,CAAC,GAAG,CAAC;KAChC;AACH,CAAC,CAAC;AAbW,QAAA,iBAAiB,qBAa5B;AAEF,gBAAgB;AACT,MAAM,sBAAsB,GAAG,CAAC,QAA4B,EAAsD,EAAE;IACzH,QAAQ,QAAQ,EAAE;QAChB,KAAK,mCAAkB,CAAC,MAAM;YAC5B,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,MAAM;aAC/B,CAAC;QACJ,KAAK,mCAAkB,CAAC,UAAU;YAChC,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,MAAM;aAC/B,CAAC;QACJ,KAAK,mCAAkB,CAAC,IAAI;YAC1B,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,IAAI;aAC7B,CAAC;QACJ,KAAK,mCAAkB,CAAC,KAAK;YAC3B,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,KAAK;aAC9B,CAAC;QACJ,KAAK,mCAAkB,CAAC,GAAG;YACzB,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,GAAG;aAC5B,CAAC;QACJ,KAAK,mCAAkB,CAAC,OAAO;YAC7B,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,mCAAiB,CAAC,GAAG;aAC5B,CAAC;KACL;AACH,CAAC,CAAC;AAjCW,QAAA,sBAAsB,0BAiCjC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\r\nimport {\r\n NestedStagePanelKey, NestedStagePanelsManagerProps, NineZoneStagePanelManagerProps, StagePanelType as NZ_StagePanelType, WidgetZoneId,\r\n ZonesManagerWidgetsProps,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { StagePanelChangeHandler, WidgetChangeHandler, ZoneDefProvider } from \"../frontstage/FrontstageComposer\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetProps } from \"../widgets/WidgetProps\";\r\nimport { WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { FrameworkStagePanel } from \"./FrameworkStagePanel\";\r\nimport { PanelStateChangedEventArgs, StagePanelDef, StagePanelState as StagePanelState } from \"./StagePanelDef\";\r\nimport { WidgetDef, WidgetStateChangedEventArgs } from \"../widgets/WidgetDef\";\r\n\r\n/** Available StagePanel locations.\r\n * ------------------------------------------------------------------------------------\r\n * TopMost\r\n * ------------------------------------------------------------------------------------\r\n * Left | Top | Right\r\n * |---------------------------------------------------------------|\r\n * | Nine-zone |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * | |\r\n * |---------------------------------------------------------------|\r\n * | Bottom |\r\n * ------------------------------------------------------------------------------------\r\n * BottomMost\r\n * ------------------------------------------------------------------------------------\r\n */\r\n\r\n/** Properties of a Stage Panel Zone\r\n * @public\r\n */\r\nexport interface StagePanelZoneProps {\r\n /** Properties for the Widgets in this Zone.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets: Array<React.ReactElement<WidgetProps>>;\r\n /** Any application data to attach to this Zone. */\r\n applicationData?: any;\r\n}\r\n\r\n/** Properties of the Stage Panel Zones\r\n * @public\r\n */\r\nexport interface StagePanelZonesProps {\r\n /** Properties for the Widgets in the Start section. */\r\n start?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the Middle section. */\r\n middle?: StagePanelZoneProps;\r\n /** Properties for the Widgets in the End section. */\r\n end?: StagePanelZoneProps;\r\n}\r\n\r\n/** Available units of panel maximum size. Pixels or percentage of 9-Zone App size.\r\n * @note Percentage of 9-Zone `height` is used for top/bottom panel and percentage of 9-Zone `width` is used for left/right panel.\r\n * @public\r\n */\r\nexport type StagePanelMaxSizeSpec = number | { percentage: number };\r\n\r\n/** Properties of a [[StagePanel]] component\r\n * @public\r\n */\r\nexport interface StagePanelProps {\r\n /** Describes which zones are allowed in this stage panel. */\r\n allowedZones?: ZoneLocation[];\r\n /** Any application data to attach to this Panel. */\r\n applicationData?: any;\r\n /** Default Panel state. Controls how the panel is initially displayed. Defaults to StagePanelState.Open. */\r\n defaultState?: StagePanelState;\r\n /** Stage panel header. */\r\n header?: React.ReactNode;\r\n /** Maximum size of the panel. */\r\n maxSize?: StagePanelMaxSizeSpec;\r\n /** Minimum size of the panel. */\r\n minSize?: number;\r\n /** Indicates whether the panel is pinned. Defaults to true. */\r\n pinned?: boolean;\r\n /** Indicates whether the panel is resizable. Defaults to true. */\r\n resizable: boolean;\r\n /** Default size of the panel. */\r\n size?: number;\r\n /** Properties for the Widgets in this Panel.\r\n * @note Stable `WidgetProps[\"id\"]` is generated if id is not provided to correctly save and restore App layout.\r\n * [[Frontstage]] version must be increased when Widget location is changed or new widgets are added/removed.\r\n */\r\n widgets?: Array<React.ReactElement<WidgetProps>>;\r\n\r\n /** Properties for the Panel Zones in this Panel.\r\n * @beta */\r\n panelZones?: StagePanelZonesProps;\r\n\r\n /** @internal */\r\n runtimeProps?: StagePanelRuntimeProps;\r\n}\r\n\r\n/** Default properties of [[StagePanel]] component.\r\n * @public\r\n */\r\nexport type StagePanelDefaultProps = Pick<StagePanelProps, \"resizable\">;\r\n\r\n/** Runtime Properties for the [[StagePanel]] component.\r\n * @internal\r\n */\r\nexport interface StagePanelRuntimeProps {\r\n draggedWidgetId: WidgetZoneId | undefined;\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>;\r\n isInFooterMode: boolean;\r\n isTargeted: boolean;\r\n panel: NineZoneStagePanelManagerProps;\r\n panelDef: StagePanelDef;\r\n stagePanelChangeHandler: StagePanelChangeHandler;\r\n widgetChangeHandler: WidgetChangeHandler;\r\n widgets: ZonesManagerWidgetsProps;\r\n widgetTabs: WidgetTabs;\r\n zoneDefProvider: ZoneDefProvider;\r\n}\r\n\r\ninterface StagePanelComponentState {\r\n panelState: StagePanelState;\r\n stagePanelWidgets: ReadonlyArray<WidgetDef[\"id\"]>;\r\n}\r\n\r\n/** Frontstage Panel React component.\r\n * @public\r\n */\r\nexport class StagePanel extends React.Component<StagePanelProps, StagePanelComponentState> {\r\n public static readonly defaultProps: StagePanelDefaultProps = {\r\n resizable: true,\r\n };\r\n\r\n public constructor(props: StagePanelProps) {\r\n super(props);\r\n\r\n const panelState = this.props.runtimeProps?.panelDef.panelState;\r\n this.state = {\r\n panelState: panelState === undefined ? StagePanelState.Open : panelState,\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n };\r\n }\r\n\r\n public static initializeStagePanelDef(panelDef: StagePanelDef, props: StagePanelProps, panelLocation: StagePanelLocation): void {\r\n panelDef.initializeFromProps(props, panelLocation);\r\n }\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onPanelStateChangedEvent.addListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.addListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: StagePanelProps) {\r\n if (prevProps.runtimeProps?.panelDef !== this.props.runtimeProps?.panelDef) {\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n }\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onPanelStateChangedEvent.removeListener(this._handlePanelStateChangedEvent);\r\n FrontstageManager.onWidgetStateChangedEvent.removeListener(this._handleWidgetStateChangedEvent);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const { applicationData, defaultState, runtimeProps, maxSize, size, ...props } = this.props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n if (!runtimeProps)\r\n return null;\r\n\r\n const { stagePanelChangeHandler, panelDef, ...otherRuntimeProps } = runtimeProps;\r\n return (\r\n <FrameworkStagePanel\r\n changeHandler={stagePanelChangeHandler}\r\n initialSize={size}\r\n location={panelDef.location}\r\n renderPane={this._handleRenderPane}\r\n stagePanelWidgets={this.state.stagePanelWidgets}\r\n panelState={this.state.panelState}\r\n maxSize={typeof maxSize === \"number\" ? maxSize : undefined}\r\n {...props}\r\n {...otherRuntimeProps}\r\n />\r\n );\r\n }\r\n\r\n private _handleRenderPane = (widgetDefId: WidgetDef[\"id\"]): React.ReactNode => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return null;\r\n const widgetDef = runtimeProps.panelDef.findWidgetDef(widgetDefId);\r\n if (!widgetDef || !widgetDef.isVisible)\r\n return null;\r\n return (\r\n <div\r\n style={{\r\n height: \"100%\",\r\n display: runtimeProps.panel.isCollapsed ? \"none\" : \"block\",\r\n }}\r\n >\r\n {widgetDef.reactNode}\r\n </div>\r\n );\r\n };\r\n\r\n private _handlePanelStateChangedEvent = ({ panelDef, panelState }: PanelStateChangedEventArgs) => {\r\n // istanbul ignore else\r\n if (panelDef !== this.props.runtimeProps?.panelDef)\r\n return;\r\n // istanbul ignore next\r\n this.setState({\r\n panelState,\r\n });\r\n };\r\n\r\n private _handleWidgetStateChangedEvent = ({ widgetDef }: WidgetStateChangedEventArgs) => {\r\n const runtimeProps = this.props.runtimeProps;\r\n if (!runtimeProps)\r\n return;\r\n if (!runtimeProps.panelDef.findWidgetDef(widgetDef.id))\r\n return;\r\n this.setState({\r\n stagePanelWidgets: this._getVisibleStagePanelWidgets(),\r\n });\r\n };\r\n\r\n private _getVisibleStagePanelWidgets() {\r\n const panelDef = this.props.runtimeProps?.panelDef;\r\n if (!panelDef)\r\n return [];\r\n const visibleWidgets = panelDef.widgetDefs.filter((wd) => wd.isVisible);\r\n return visibleWidgets.map((widgetDef) => widgetDef.id);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const getStagePanelType = (location: StagePanelLocation): NZ_StagePanelType => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return NZ_StagePanelType.Bottom;\r\n case StagePanelLocation.Left:\r\n return NZ_StagePanelType.Left;\r\n case StagePanelLocation.Right:\r\n return NZ_StagePanelType.Right;\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return NZ_StagePanelType.Top;\r\n }\r\n};\r\n\r\n/** @internal */\r\nexport const getNestedStagePanelKey = (location: StagePanelLocation): NestedStagePanelKey<NestedStagePanelsManagerProps> => {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.BottomMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Bottom,\r\n };\r\n case StagePanelLocation.Left:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Left,\r\n };\r\n case StagePanelLocation.Right:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Right,\r\n };\r\n case StagePanelLocation.Top:\r\n return {\r\n id: \"inner\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n case StagePanelLocation.TopMost:\r\n return {\r\n id: \"outer\",\r\n type: NZ_StagePanelType.Top,\r\n };\r\n }\r\n};\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.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 Frontstage\n */\n\nimport produce, { Draft } from \"immer\";\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\nimport { UiEvent } from \"@itwin/core-react\";\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\nimport { WidgetDef } from \"../widgets/WidgetDef\";\nimport { WidgetHost } from \"../widgets/WidgetHost\";\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\nimport { UiFramework } from \"../UiFramework\";\n\n/** Enum for StagePanel state.\n * @public\n */\nexport enum StagePanelState {\n Off,\n Minimized,\n Open,\n Popup,\n}\n\n/** Panel State Changed Event Args interface.\n * @public\n */\nexport interface PanelStateChangedEventArgs {\n panelDef: StagePanelDef;\n panelState: StagePanelState;\n}\n\n/** Widget State Changed Event class.\n * @beta\n */\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\n\n/** @internal */\nexport interface PanelSizeChangedEventArgs {\n panelDef: StagePanelDef;\n size: number | undefined;\n}\n\n/** @internal */\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\n\n/**\n * A StagePanelDef represents each Stage Panel within a Frontstage.\n * @public\n */\nexport class StagePanelDef extends WidgetHost {\n private _panelState = StagePanelState.Open;\n private _defaultState = StagePanelState.Open;\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\n private _minSize: number | undefined;\n private _size: number | undefined;\n private _defaultSize: number | undefined;\n private _resizable = true;\n private _pinned = true;\n private _applicationData?: any;\n private _location: StagePanelLocation = StagePanelLocation.Left;\n private _panelZones = new StagePanelZonesDef();\n\n /** Constructor for PanelDef.\n */\n constructor() {\n super();\n }\n\n /** @internal */\n public get maxSizeSpec() { return this._maxSizeSpec; }\n\n /** @internal */\n public get minSize() { return this._minSize; }\n\n /** Default size of the panel */\n public get size() { return this._size; }\n\n public set size(size) {\n if (this._size === size)\n return;\n\n // istanbul ignore else\n if (UiFramework.uiVersion === \"2\") {\n const frontstageDef = FrontstageManager.activeFrontstageDef;\n // istanbul ignore else\n if (frontstageDef && frontstageDef.nineZoneState) {\n const side = toPanelSide(this.location);\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\n const panel = frontstageDef.nineZoneState.panels[side];\n if (panel.size === this._size)\n return;\n size = panel.size;\n }\n }\n this._size = size;\n FrontstageManager.onPanelSizeChangedEvent.emit({\n panelDef: this,\n size,\n });\n }\n\n /** Indicates whether the panel is resizable. */\n // istanbul ignore next\n public get resizable(): boolean { return this._resizable; }\n\n /** Indicates whether the panel is pinned. */\n public get pinned(): boolean { return this._pinned; }\n\n /** Any application data to attach to this Panel. */\n public get applicationData(): any | undefined { return this._applicationData; }\n /** Location of panel. */\n public get location(): StagePanelLocation { return this._location; }\n\n /** Panel state. Defaults to PanelState.Open. */\n public get panelState() {\n return this._panelState;\n }\n\n public set panelState(panelState: StagePanelState) {\n if (panelState === this._panelState)\n return;\n const frontstageDef = FrontstageManager.activeFrontstageDef;\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\n const side = toPanelSide(this.location);\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\n const panel = nineZone.panels[side];\n switch (panelState) {\n case StagePanelState.Minimized: {\n panel.collapsed = true;\n break;\n }\n case StagePanelState.Open: {\n panel.collapsed = false;\n break;\n }\n case StagePanelState.Off: {\n panel.collapsed = true;\n break;\n }\n }\n });\n }\n this._panelState = panelState;\n FrontstageManager.onPanelStateChangedEvent.emit({\n panelDef: this,\n panelState,\n });\n }\n\n /** @internal */\n public get defaultState() { return this._defaultState; }\n\n /** @internal */\n public get defaultSize() { return this._defaultSize; }\n\n /** Panel zones.\n * @internal\n */\n public get panelZones() {\n return this._panelZones;\n }\n\n /** @internal */\n public initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void {\n if (panelLocation !== undefined)\n this._location = panelLocation;\n if (!props)\n return;\n this._size = props.size;\n this._defaultSize = props.size;\n this._maxSizeSpec = props.maxSize;\n this._minSize = props.minSize;\n if (panelLocation !== undefined)\n this._location = panelLocation;\n if (props.defaultState !== undefined) {\n this._panelState = props.defaultState;\n this._defaultState = props.defaultState;\n }\n this._resizable = props.resizable;\n if (props.pinned !== undefined)\n this._pinned = props.pinned;\n if (props.applicationData !== undefined)\n this._applicationData = props.applicationData;\n if (props.panelZones) {\n this._panelZones.initializeFromProps(props.panelZones, this._location);\n }\n\n if (props.widgets) {\n props.widgets.forEach((widgetNode, index) => {\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\n const widgetDef = new WidgetDef(stableProps);\n this.addWidgetDef(widgetDef);\n });\n }\n }\n\n /** Gets the list of Widgets. */\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\n const widgetDefs = [...super.widgetDefs];\n for (const [, panelZone] of this.panelZones) {\n widgetDefs.push(...panelZone.widgetDefs);\n }\n return widgetDefs;\n }\n\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\n * @internal\n */\n public get panelWidgetDefs() {\n return super.widgetDefs;\n }\n\n /** @internal */\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\n widgetDefs: WidgetDef[], frontstageApplicationData?: any,\n ): void {\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, widgetDefs, frontstageApplicationData);\n this.panelZones.middle.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, widgetDefs, frontstageApplicationData);\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, widgetDefs, frontstageApplicationData);\n }\n}\n\n/** @internal */\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"middle\" | \"end\">;\n\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"middle\", \"end\"];\n\n/** @internal */\nexport class StagePanelZonesDef {\n private _start = new StagePanelZoneDef();\n private _middle = new StagePanelZoneDef();\n private _end = new StagePanelZoneDef();\n\n public get start() {\n return this._start;\n }\n\n public get middle() {\n return this._middle;\n }\n\n public get end() {\n return this._end;\n }\n\n /** @internal */\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\n if (props.start) {\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\n }\n if (props.middle) {\n this.middle.initializeFromProps(props.middle, panelLocation, \"middle\");\n }\n if (props.end) {\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\n }\n }\n\n /** @internal */\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\n for (const key of stagePanelZoneDefKeys) {\n const value = this[key];\n yield [key, value];\n }\n return undefined;\n }\n}\n\n/** @internal */\nexport class StagePanelZoneDef extends WidgetHost {\n /** @internal */\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\n props.widgets.forEach((widgetNode, index) => {\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\n const widgetDef = new WidgetDef(stableProps);\n this.addWidgetDef(widgetDef);\n });\n }\n}\n\n/** @internal */\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\n switch (location) {\n case StagePanelLocation.Bottom:\n case StagePanelLocation.BottomMost:\n return \"bottom\";\n case StagePanelLocation.Left:\n return \"left\";\n case StagePanelLocation.Right:\n return \"right\";\n case StagePanelLocation.Top:\n case StagePanelLocation.TopMost:\n return \"top\";\n }\n}\n\n/** @internal */\nexport const setPanelSize = produce((\n nineZone: Draft<NineZoneState>,\n side: PanelSide,\n size: number | undefined,\n) => {\n const panel = nineZone.panels[side];\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\n});\n"]}
1
+ {"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\r\nimport { UiEvent } from \"@itwin/core-react\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelMaxSizeSpec, StagePanelProps, StagePanelZoneProps, StagePanelZonesProps } from \"./StagePanel\";\r\nimport { getStableWidgetProps, ZoneLocation } from \"../zones/Zone\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _applicationData?: any;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _panelZones = new StagePanelZonesDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() { return this._size; }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (UiFramework.uiVersion === \"2\") {\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n }\r\n this._size = size;\r\n FrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Any application data to attach to this Panel. */\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n return this._panelState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (UiFramework.uiVersion === \"2\" && frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n FrontstageManager.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** Panel zones.\r\n * @internal\r\n */\r\n public get panelZones() {\r\n return this._panelZones;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props?: StagePanelProps, panelLocation?: StagePanelLocation): void {\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (!props)\r\n return;\r\n this._size = props.size;\r\n this._defaultSize = props.size;\r\n this._maxSizeSpec = props.maxSize;\r\n this._minSize = props.minSize;\r\n if (panelLocation !== undefined)\r\n this._location = panelLocation;\r\n if (props.defaultState !== undefined) {\r\n this._panelState = props.defaultState;\r\n this._defaultState = props.defaultState;\r\n }\r\n this._resizable = props.resizable;\r\n if (props.pinned !== undefined)\r\n this._pinned = props.pinned;\r\n if (props.applicationData !== undefined)\r\n this._applicationData = props.applicationData;\r\n if (props.panelZones) {\r\n this._panelZones.initializeFromProps(props.panelZones, this._location);\r\n }\r\n\r\n if (props.widgets) {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-sp-${StagePanelLocation[this._location]}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n const widgetDefs = [...super.widgetDefs];\r\n for (const [, panelZone] of this.panelZones) {\r\n widgetDefs.push(...panelZone.widgetDefs);\r\n }\r\n return widgetDefs;\r\n }\r\n\r\n /** Gets the list of Widgets (w/o StagePanelZone widgets).\r\n * @internal\r\n */\r\n public get panelWidgetDefs() {\r\n return super.widgetDefs;\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, _section: StagePanelSection | undefined,\r\n widgetDefs: WidgetDef[], frontstageApplicationData?: any,\r\n ): void {\r\n this.panelZones.start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, widgetDefs, frontstageApplicationData);\r\n this.panelZones.middle.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Middle, widgetDefs, frontstageApplicationData);\r\n this.panelZones.end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, widgetDefs, frontstageApplicationData);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type StagePanelZoneDefKeys = keyof Pick<StagePanelZonesDef, \"start\" | \"middle\" | \"end\">;\r\n\r\nconst stagePanelZoneDefKeys: StagePanelZoneDefKeys[] = [\"start\", \"middle\", \"end\"];\r\n\r\n/** @internal */\r\nexport class StagePanelZonesDef {\r\n private _start = new StagePanelZoneDef();\r\n private _middle = new StagePanelZoneDef();\r\n private _end = new StagePanelZoneDef();\r\n\r\n public get start() {\r\n return this._start;\r\n }\r\n\r\n public get middle() {\r\n return this._middle;\r\n }\r\n\r\n public get end() {\r\n return this._end;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZonesProps, panelLocation: StagePanelLocation): void {\r\n if (props.start) {\r\n this.start.initializeFromProps(props.start, panelLocation, \"start\");\r\n }\r\n if (props.middle) {\r\n this.middle.initializeFromProps(props.middle, panelLocation, \"middle\");\r\n }\r\n if (props.end) {\r\n this.end.initializeFromProps(props.end, panelLocation, \"end\");\r\n }\r\n }\r\n\r\n /** @internal */\r\n public *[Symbol.iterator](): Iterator<[StagePanelZoneDefKeys, StagePanelZoneDef]> {\r\n for (const key of stagePanelZoneDefKeys) {\r\n const value = this[key];\r\n yield [key, value];\r\n }\r\n return undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelZoneDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromProps(props: StagePanelZoneProps, panelLocation: StagePanelLocation, panelZone: StagePanelZoneDefKeys): void {\r\n props.widgets.forEach((widgetNode, index) => {\r\n const stableId = `uifw-spz-${StagePanelLocation[panelLocation]}-${panelZone}-${index}`;\r\n const stableProps = getStableWidgetProps(widgetNode.props, stableId);\r\n const widgetDef = new WidgetDef(stableProps);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n case StagePanelLocation.BottomMost:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n case StagePanelLocation.TopMost:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanelEnums.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelEnums.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC5B,2DAAS,CAAA;IACT,mEAAO,CAAA;IACP,6DAAI,CAAA;IACJ,+DAAK,CAAA;IACL,iEAAM,CAAA;IACN,yEAAU,CAAA;AACZ,CAAC,EAPW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAO7B;AAED;;;GAGG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,2DAAK,CAAA;IACL,6DAAM,CAAA;IACN,uDAAG,CAAA;AACL,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B","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 Frontstage\n */\n\n/** Available Stage Panel locations.\n * @alpha\n * @deprecated - Use [StagePanelLocation]($appui-abstract) in bentley/appui-abstract instead.\n */\nexport enum StagePanelLocation {\n Top = 101,\n TopMost,\n Left,\n Right,\n Bottom,\n BottomMost,\n}\n\n/** Enum for Stage Panel Sections\n * @alpha\n * @deprecated - Use [StagePanelSection]($appui-abstract) in bentley/appui-abstract instead.\n */\nexport enum StagePanelSection {\n Start,\n Middle,\n End,\n}\n"]}
1
+ {"version":3,"file":"StagePanelEnums.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelEnums.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC5B,2DAAS,CAAA;IACT,mEAAO,CAAA;IACP,6DAAI,CAAA;IACJ,+DAAK,CAAA;IACL,iEAAM,CAAA;IACN,yEAAU,CAAA;AACZ,CAAC,EAPW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAO7B;AAED;;;GAGG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,2DAAK,CAAA;IACL,6DAAM,CAAA;IACN,uDAAG,CAAA;AACL,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\n/** Available Stage Panel locations.\r\n * @alpha\r\n * @deprecated - Use [StagePanelLocation]($appui-abstract) in bentley/appui-abstract instead.\r\n */\r\nexport enum StagePanelLocation {\r\n Top = 101,\r\n TopMost,\r\n Left,\r\n Right,\r\n Bottom,\r\n BottomMost,\r\n}\r\n\r\n/** Enum for Stage Panel Sections\r\n * @alpha\r\n * @deprecated - Use [StagePanelSection]($appui-abstract) in bentley/appui-abstract instead.\r\n */\r\nexport enum StagePanelSection {\r\n Start,\r\n Middle,\r\n End,\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StagePanelHeader.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelHeader.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,mCAAiC;AACjC,2CAAoC;AACpC,+BAA+B;AAG/B,uEAAoE;AACpE,mDAAkD;AAkBlD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAoC;IAAhF;;QA0BU,+BAA0B,GAAG,GAAG,EAAE;YACxC,MAAM,mBAAmB,GAAG,qCAAiB,CAAC,mBAAmB,CAAC;YAClE,qBAAqB;YACrB,IAAI,CAAC,mBAAmB;gBACtB,OAAO;YACT,MAAM,UAAU,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7E,qBAAqB;YACrB,IAAI,CAAC,UAAU;gBACb,OAAO;YACT,UAAU,CAAC,UAAU,GAAG,+BAAe,CAAC,SAAS,CAAC;QACpD,CAAC,CAAC;IACJ,CAAC;IApCiB,MAAM;QACpB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAAC,uBAAuB,EAClD,IAAI,CAAC,KAAK,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,CACL,6BACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAEvB,kCAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAQ;YAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC1B,iEAAiE;gBACjE,2BACE,SAAS,EAAC,+BAA+B,EACzC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB,EACrC,OAAO,EAAE,IAAI,CAAC,0BAA0B,EACxC,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,CAAC,GACZ,CAAC,CAAC;gBACJ,SAAS,CAEP,CACP,CAAC;IACJ,CAAC;CAaF;AArCD,4CAqCC","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 Frontstage\n */\n\nimport \"./StagePanelHeader.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\nimport { StagePanelState } from \"./StagePanelDef\";\n\n// cspell:ignore stagepanelheader\n\n/** Properties of a [[StagePanelHeader]] component\n * @alpha\n */\nexport interface StagePanelHeaderProps extends CommonProps {\n /** Describes if the collapse button is visible. */\n collapseButton?: boolean;\n /** Title of collapse button (displayed when hovered). */\n collapseButtonTitle?: string;\n /** Describes stage panel location of this header. */\n location: StagePanelLocation;\n /** Header title. */\n title?: string;\n}\n\n/** Stage panel header React component.\n * @alpha\n */\nexport class StagePanelHeader extends React.PureComponent<StagePanelHeaderProps> {\n public override render() {\n const className = classnames(\"uifw-stagepanelheader\",\n this.props.className,\n );\n return (\n <div\n className={className}\n style={this.props.style}\n >\n <span>{this.props.title}</span>\n {this.props.collapseButton ?\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <i\n className=\"uifw-collapse icon icon-close\"\n title={this.props.collapseButtonTitle}\n onClick={this._handleCollapseButtonClick}\n role=\"button\"\n tabIndex={-1}\n /> :\n undefined\n }\n </div>\n );\n }\n\n private _handleCollapseButtonClick = () => {\n const activeFrontstageDef = FrontstageManager.activeFrontstageDef;\n // istanbul ignore if\n if (!activeFrontstageDef)\n return;\n const stagePanel = activeFrontstageDef.getStagePanelDef(this.props.location);\n // istanbul ignore if\n if (!stagePanel)\n return;\n stagePanel.panelState = StagePanelState.Minimized;\n };\n}\n"]}
1
+ {"version":3,"file":"StagePanelHeader.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelHeader.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,mCAAiC;AACjC,2CAAoC;AACpC,+BAA+B;AAG/B,uEAAoE;AACpE,mDAAkD;AAkBlD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAoC;IAAhF;;QA0BU,+BAA0B,GAAG,GAAG,EAAE;YACxC,MAAM,mBAAmB,GAAG,qCAAiB,CAAC,mBAAmB,CAAC;YAClE,qBAAqB;YACrB,IAAI,CAAC,mBAAmB;gBACtB,OAAO;YACT,MAAM,UAAU,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7E,qBAAqB;YACrB,IAAI,CAAC,UAAU;gBACb,OAAO;YACT,UAAU,CAAC,UAAU,GAAG,+BAAe,CAAC,SAAS,CAAC;QACpD,CAAC,CAAC;IACJ,CAAC;IApCiB,MAAM;QACpB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAAC,uBAAuB,EAClD,IAAI,CAAC,KAAK,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,CACL,6BACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAEvB,kCAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAQ;YAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC1B,iEAAiE;gBACjE,2BACE,SAAS,EAAC,+BAA+B,EACzC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB,EACrC,OAAO,EAAE,IAAI,CAAC,0BAA0B,EACxC,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,CAAC,GACZ,CAAC,CAAC;gBACJ,SAAS,CAEP,CACP,CAAC;IACJ,CAAC;CAaF;AArCD,4CAqCC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport \"./StagePanelHeader.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { StagePanelLocation } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { StagePanelState } from \"./StagePanelDef\";\r\n\r\n// cspell:ignore stagepanelheader\r\n\r\n/** Properties of a [[StagePanelHeader]] component\r\n * @alpha\r\n */\r\nexport interface StagePanelHeaderProps extends CommonProps {\r\n /** Describes if the collapse button is visible. */\r\n collapseButton?: boolean;\r\n /** Title of collapse button (displayed when hovered). */\r\n collapseButtonTitle?: string;\r\n /** Describes stage panel location of this header. */\r\n location: StagePanelLocation;\r\n /** Header title. */\r\n title?: string;\r\n}\r\n\r\n/** Stage panel header React component.\r\n * @alpha\r\n */\r\nexport class StagePanelHeader extends React.PureComponent<StagePanelHeaderProps> {\r\n public override render() {\r\n const className = classnames(\"uifw-stagepanelheader\",\r\n this.props.className,\r\n );\r\n return (\r\n <div\r\n className={className}\r\n style={this.props.style}\r\n >\r\n <span>{this.props.title}</span>\r\n {this.props.collapseButton ?\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <i\r\n className=\"uifw-collapse icon icon-close\"\r\n title={this.props.collapseButtonTitle}\r\n onClick={this._handleCollapseButtonClick}\r\n role=\"button\"\r\n tabIndex={-1}\r\n /> :\r\n undefined\r\n }\r\n </div>\r\n );\r\n }\r\n\r\n private _handleCollapseButtonClick = () => {\r\n const activeFrontstageDef = FrontstageManager.activeFrontstageDef;\r\n // istanbul ignore if\r\n if (!activeFrontstageDef)\r\n return;\r\n const stagePanel = activeFrontstageDef.getStagePanelDef(this.props.location);\r\n // istanbul ignore if\r\n if (!stagePanel)\r\n return;\r\n stagePanel.panelState = StagePanelState.Minimized;\r\n };\r\n}\r\n"]}
@@ -1,26 +1,26 @@
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
- @import "~@itwin/appui-layout-react/lib/cjs/appui-layout-react/footer/dialog/variables";
6
-
7
- .uifw-stagepanelheader {
8
- align-items: center;
9
- height: $nz-footer-title-bar-height;
10
- justify-content: flex-end;
11
- padding: 5px 10px;
12
- box-sizing: border-box;
13
- display: grid;
14
- grid-auto-flow: column;
15
- grid-auto-columns: 1fr auto;
16
-
17
- >.uifw-collapse {
18
- cursor: pointer;
19
- justify-self: end;
20
- padding: 5px;
21
-
22
- &:focus {
23
- outline: none;
24
- }
25
- }
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
+ @import "~@itwin/appui-layout-react/lib/cjs/appui-layout-react/footer/dialog/variables";
6
+
7
+ .uifw-stagepanelheader {
8
+ align-items: center;
9
+ height: $nz-footer-title-bar-height;
10
+ justify-content: flex-end;
11
+ padding: 5px 10px;
12
+ box-sizing: border-box;
13
+ display: grid;
14
+ grid-auto-flow: column;
15
+ grid-auto-columns: 1fr auto;
16
+
17
+ >.uifw-collapse {
18
+ cursor: pointer;
19
+ justify-self: end;
20
+ padding: 5px;
21
+
22
+ &:focus {
23
+ outline: none;
24
+ }
25
+ }
26
26
  }