@itwin/appui-react 3.0.0-dev.98 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +188 -16
- package/LICENSE.md +1 -1
- package/README.md +3 -3
- package/lib/cjs/appui-react/UiFramework.d.ts +37 -22
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +53 -38
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +3 -3
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +3 -3
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts +4 -4
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +5 -4
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/cjs/appui-react/backstage/Backstage.d.ts +0 -2
- package/lib/cjs/appui-react/backstage/Backstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/Backstage.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts +2 -0
- package/lib/cjs/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposer.js +26 -8
- package/lib/cjs/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts +2 -2
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemProps.d.ts +3 -3
- package/lib/cjs/appui-react/backstage/BackstageItemProps.js +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemProps.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js +3 -3
- package/lib/cjs/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/cjs/appui-react/backstage/CommandLaunch.d.ts +2 -0
- package/lib/cjs/appui-react/backstage/CommandLaunch.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/CommandLaunch.js +1 -0
- package/lib/cjs/appui-react/backstage/CommandLaunch.js.map +1 -1
- package/lib/cjs/appui-react/backstage/FrontstageLaunch.d.ts +4 -0
- package/lib/cjs/appui-react/backstage/FrontstageLaunch.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/FrontstageLaunch.js +5 -6
- package/lib/cjs/appui-react/backstage/FrontstageLaunch.js.map +1 -1
- package/lib/cjs/appui-react/backstage/Separator.d.ts +1 -0
- package/lib/cjs/appui-react/backstage/Separator.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/Separator.js +3 -2
- package/lib/cjs/appui-react/backstage/Separator.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +4 -5
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.d.ts +10 -3
- package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.js +15 -2
- package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentControl.d.ts +1 -1
- package/lib/cjs/appui-react/content/ContentControl.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentControl.js +2 -2
- package/lib/cjs/appui-react/content/ContentControl.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.d.ts +2 -2
- package/lib/cjs/appui-react/content/ContentLayout.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.js +4 -3
- package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentViewManager.d.ts +1 -1
- package/lib/cjs/appui-react/content/ContentViewManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentViewManager.js +3 -3
- package/lib/cjs/appui-react/content/ContentViewManager.js.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.d.ts +13 -1
- package/lib/cjs/appui-react/content/IModelViewport.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js +18 -5
- package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/cjs/appui-react/content/{SavedViewLayout.d.ts → StageContentLayout.d.ts} +11 -11
- package/lib/cjs/appui-react/content/StageContentLayout.d.ts.map +1 -0
- package/lib/cjs/appui-react/content/{SavedViewLayout.js → StageContentLayout.js} +19 -17
- package/lib/cjs/appui-react/content/StageContentLayout.js.map +1 -0
- package/lib/cjs/appui-react/content/{SavedView.d.ts → ViewStateHelper.d.ts} +7 -7
- package/lib/cjs/appui-react/content/ViewStateHelper.d.ts.map +1 -0
- package/lib/cjs/appui-react/content/{SavedView.js → ViewStateHelper.js} +4 -4
- package/lib/cjs/appui-react/content/ViewStateHelper.js.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/Pane.d.ts +21 -0
- package/lib/cjs/appui-react/content/split-pane/Pane.d.ts.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/Pane.js +43 -0
- package/lib/cjs/appui-react/content/split-pane/Pane.js.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts +23 -0
- package/lib/cjs/appui-react/content/split-pane/Resizer.d.ts.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/Resizer.js +39 -0
- package/lib/cjs/appui-react/content/split-pane/Resizer.js.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts +70 -0
- package/lib/cjs/appui-react/content/split-pane/SplitPane.d.ts.map +1 -0
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js +243 -0
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -0
- package/lib/cjs/appui-react/cursor/CursorInformation.d.ts +1 -2
- package/lib/cjs/appui-react/cursor/CursorInformation.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/CursorInformation.js +1 -1
- package/lib/cjs/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +2 -2
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js +3 -3
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -2
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/cjs/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/StandardMessageBox.js +3 -0
- package/lib/cjs/appui-react/dialog/StandardMessageBox.js.map +1 -1
- package/lib/cjs/appui-react/dragdrop/ZoneTargets.d.ts.map +1 -1
- package/lib/cjs/appui-react/dragdrop/ZoneTargets.js +8 -4
- package/lib/cjs/appui-react/dragdrop/ZoneTargets.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +2 -2
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.js +4 -2
- package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +1 -0
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.js +32 -13
- package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +15 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +15 -2
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +138 -3
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +2 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts +12 -9
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.js +19 -21
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts +1 -1
- package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts.map +1 -1
- package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.js +6 -7
- package/lib/cjs/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts +3 -3
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +1 -1
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts +0 -5
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +81 -68
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +2 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.d.ts +5 -5
- package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.js +3 -2
- package/lib/cjs/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.d.ts +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.js +1 -1
- package/lib/cjs/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.d.ts +1 -2
- package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js +15 -9
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -2
- package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js +4 -3
- package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
- package/lib/cjs/appui-react/messages/ToastMessage.js +2 -1
- package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js +2 -2
- package/lib/cjs/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js +2 -1
- package/lib/cjs/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js +6 -4
- package/lib/cjs/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts +3 -0
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js +24 -9
- package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.d.ts +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.js +9 -9
- package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.d.ts +7 -4
- package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.js +3 -2
- package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts +3 -2
- package/lib/cjs/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.js +1 -1
- package/lib/cjs/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +6 -6
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts +3 -2
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.js +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.d.ts +10 -10
- package/lib/cjs/appui-react/popup/PopupManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.js +4 -4
- package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.d.ts +5 -3
- package/lib/cjs/appui-react/popup/PositionPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/PositionPopup.js +3 -2
- package/lib/cjs/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts +3 -2
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.js +1 -1
- package/lib/cjs/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts +4 -3
- package/lib/cjs/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/ToolbarPopup.js +2 -2
- package/lib/cjs/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/cjs/appui-react/redux/SessionState.d.ts +0 -6
- package/lib/cjs/appui-react/redux/SessionState.d.ts.map +1 -1
- package/lib/cjs/appui-react/redux/SessionState.js +0 -8
- package/lib/cjs/appui-react/redux/SessionState.js.map +1 -1
- package/lib/cjs/appui-react/redux/StateManager.d.ts +1 -1
- package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
- package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js +7 -7
- package/lib/cjs/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +28 -19
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/shared/CustomItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.d.ts +2 -2
- package/lib/cjs/appui-react/shared/ItemDefBase.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.js +1 -1
- package/lib/cjs/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/cjs/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/cjs/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.d.ts +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ToolItemDef.js +2 -2
- package/lib/cjs/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.js +1 -0
- package/lib/cjs/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +2 -2
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.js +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +26 -2
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +24 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelHeader.d.ts +2 -2
- package/lib/cjs/appui-react/stagepanels/StagePanelHeader.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelHeader.js +2 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js +2 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +17 -5
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts +15 -14
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.js +23 -21
- package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.scss +29 -18
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js +2 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts +1 -0
- package/lib/cjs/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.js +6 -4
- package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.scss +13 -3
- package/lib/cjs/appui-react/statusfields/SnapMode.d.ts +2 -10
- package/lib/cjs/appui-react/statusfields/SnapMode.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.js +4 -34
- package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts +0 -6
- package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js +1 -25
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +7 -7
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -12
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -3
- package/lib/cjs/appui-react/syncui/BooleanListener.d.ts +2 -2
- package/lib/cjs/appui-react/syncui/BooleanListener.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/BooleanListener.js +2 -1
- package/lib/cjs/appui-react/syncui/BooleanListener.js.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts +8 -18
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +30 -103
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ActionButtonItem.js +2 -1
- package/lib/cjs/appui-react/toolbar/ActionButtonItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ActionItemButton.js +2 -1
- package/lib/cjs/appui-react/toolbar/ActionItemButton.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupButtonItem.js +24 -20
- package/lib/cjs/appui-react/toolbar/GroupButtonItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.js +33 -29
- package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolButton.js +3 -2
- package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.js +3 -2
- package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +22 -20
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +4 -4
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/tools/MarkupToolDefinitions.d.ts +2 -2
- package/lib/cjs/appui-react/tools/MarkupToolDefinitions.js +2 -2
- package/lib/cjs/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +8 -10
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +17 -36
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +7 -9
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +12 -20
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +7 -9
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +39 -50
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +4 -4
- package/lib/{esm/appui-react/uisettings → cjs/appui-react/uistate}/AppUiSettings.d.ts +11 -9
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -0
- package/lib/cjs/appui-react/{uisettings → uistate}/AppUiSettings.js +12 -8
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts +15 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js +59 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js.map +1 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts +20 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js +38 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -0
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts +5 -5
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.js +8 -8
- package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.js +1 -4
- package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +98 -8
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +83 -93
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts +22 -0
- package/lib/cjs/appui-react/widgets/BackstageAppButton.d.ts.map +1 -0
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js +56 -0
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -0
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +1 -0
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js +3 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts +9 -0
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +10 -0
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidget.js +2 -1
- package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +1 -0
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/StableWidgetDef.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/StableWidgetDef.js +1 -1
- package/lib/cjs/appui-react/widgets/StableWidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolSettingsContent.js +2 -1
- package/lib/cjs/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidget.js +3 -2
- package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts +0 -12
- package/lib/cjs/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js +1 -36
- package/lib/cjs/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.d.ts +1 -0
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js +5 -2
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts +0 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +2 -3
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +18 -7
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.js +1 -0
- package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetStack.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetStack.js +2 -0
- package/lib/cjs/appui-react/widgets/WidgetStack.js.map +1 -1
- package/lib/cjs/appui-react/zones/FrameworkZone.js.map +1 -1
- package/lib/cjs/appui-react/zones/StatusBarZone.js.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts +1 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.js +2 -1
- package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts +4 -4
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.js +5 -4
- package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.d.ts +1 -2
- package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.js +3 -2
- package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
- package/lib/cjs/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +15 -18
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +15 -18
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +37 -22
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +52 -37
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +3 -3
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +3 -3
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts +4 -4
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +6 -5
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/esm/appui-react/backstage/Backstage.d.ts +0 -2
- package/lib/esm/appui-react/backstage/Backstage.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/Backstage.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.d.ts +2 -0
- package/lib/esm/appui-react/backstage/BackstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposer.js +27 -9
- package/lib/esm/appui-react/backstage/BackstageComposer.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts +2 -2
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemProps.d.ts +3 -3
- package/lib/esm/appui-react/backstage/BackstageItemProps.js +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemProps.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.d.ts +5 -5
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.js +3 -3
- package/lib/esm/appui-react/backstage/BackstageItemUtilities.js.map +1 -1
- package/lib/esm/appui-react/backstage/CommandLaunch.d.ts +2 -0
- package/lib/esm/appui-react/backstage/CommandLaunch.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/CommandLaunch.js +1 -0
- package/lib/esm/appui-react/backstage/CommandLaunch.js.map +1 -1
- package/lib/esm/appui-react/backstage/FrontstageLaunch.d.ts +4 -0
- package/lib/esm/appui-react/backstage/FrontstageLaunch.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/FrontstageLaunch.js +5 -6
- package/lib/esm/appui-react/backstage/FrontstageLaunch.js.map +1 -1
- package/lib/esm/appui-react/backstage/Separator.d.ts +1 -0
- package/lib/esm/appui-react/backstage/Separator.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/Separator.js +3 -2
- package/lib/esm/appui-react/backstage/Separator.js.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js +4 -5
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/esm/appui-react/configurableui/state.d.ts +10 -3
- package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/state.js +15 -2
- package/lib/esm/appui-react/configurableui/state.js.map +1 -1
- package/lib/esm/appui-react/content/ContentControl.d.ts +1 -1
- package/lib/esm/appui-react/content/ContentControl.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentControl.js +1 -1
- package/lib/esm/appui-react/content/ContentControl.js.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.d.ts +2 -2
- package/lib/esm/appui-react/content/ContentLayout.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.js +3 -2
- package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/esm/appui-react/content/ContentViewManager.d.ts +1 -1
- package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentViewManager.js +1 -1
- package/lib/esm/appui-react/content/ContentViewManager.js.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.d.ts +13 -1
- package/lib/esm/appui-react/content/IModelViewport.d.ts.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js +16 -4
- package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/esm/appui-react/content/{SavedViewLayout.d.ts → StageContentLayout.d.ts} +11 -11
- package/lib/esm/appui-react/content/StageContentLayout.d.ts.map +1 -0
- package/lib/esm/appui-react/content/{SavedViewLayout.js → StageContentLayout.js} +17 -15
- package/lib/esm/appui-react/content/StageContentLayout.js.map +1 -0
- package/lib/esm/appui-react/content/{SavedView.d.ts → ViewStateHelper.d.ts} +7 -7
- package/lib/esm/appui-react/content/ViewStateHelper.d.ts.map +1 -0
- package/lib/esm/appui-react/content/{SavedView.js → ViewStateHelper.js} +2 -2
- package/lib/esm/appui-react/content/ViewStateHelper.js.map +1 -0
- package/lib/esm/appui-react/content/split-pane/Pane.d.ts +21 -0
- package/lib/esm/appui-react/content/split-pane/Pane.d.ts.map +1 -0
- package/lib/esm/appui-react/content/split-pane/Pane.js +39 -0
- package/lib/esm/appui-react/content/split-pane/Pane.js.map +1 -0
- package/lib/esm/appui-react/content/split-pane/Resizer.d.ts +23 -0
- package/lib/esm/appui-react/content/split-pane/Resizer.d.ts.map +1 -0
- package/lib/esm/appui-react/content/split-pane/Resizer.js +35 -0
- package/lib/esm/appui-react/content/split-pane/Resizer.js.map +1 -0
- package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts +70 -0
- package/lib/esm/appui-react/content/split-pane/SplitPane.d.ts.map +1 -0
- package/lib/esm/appui-react/content/split-pane/SplitPane.js +239 -0
- package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -0
- package/lib/esm/appui-react/cursor/CursorInformation.d.ts +1 -2
- package/lib/esm/appui-react/cursor/CursorInformation.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/CursorInformation.js +2 -2
- package/lib/esm/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +2 -2
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js +2 -2
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.js +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/esm/appui-react/dialog/StandardMessageBox.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/StandardMessageBox.js +3 -0
- package/lib/esm/appui-react/dialog/StandardMessageBox.js.map +1 -1
- package/lib/esm/appui-react/dragdrop/ZoneTargets.d.ts.map +1 -1
- package/lib/esm/appui-react/dragdrop/ZoneTargets.js +8 -4
- package/lib/esm/appui-react/dragdrop/ZoneTargets.js.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +2 -2
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.js +4 -2
- package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts +1 -0
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.js +32 -13
- package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts +3 -0
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js +15 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +15 -2
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +140 -5
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +2 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveIModelConnection.js.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveViewport.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useActiveViewport.js.map +1 -1
- package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts +12 -9
- package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useFrameworkVersion.js +19 -21
- package/lib/esm/appui-react/hooks/useFrameworkVersion.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts +1 -1
- package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.d.ts.map +1 -1
- package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.js +6 -7
- package/lib/esm/appui-react/imodel-components/VisibilityTreeEventHandler.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts +3 -3
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +1 -1
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts +0 -5
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.d.ts.map +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsTree.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.d.ts.map +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +83 -70
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts +2 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.d.ts.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js +2 -2
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcutMenu.js.map +1 -1
- package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.d.ts +5 -5
- package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.d.ts.map +1 -1
- package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.js +3 -2
- package/lib/esm/appui-react/keyinbrowser/KeyinBrowser.js.map +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.d.ts +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.js +1 -1
- package/lib/esm/appui-react/messages/AppNotificationManager.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.d.ts +1 -2
- package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js +9 -3
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.d.ts +2 -2
- package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.js +4 -3
- package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
- package/lib/esm/appui-react/messages/ToastMessage.js +2 -1
- package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.js +1 -1
- package/lib/esm/appui-react/navigationaids/NavigationAidControl.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts +2 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js +2 -1
- package/lib/esm/appui-react/navigationaids/SheetsModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js +6 -4
- package/lib/esm/appui-react/navigationaids/StandardRotationNavigationAid.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.d.ts +3 -0
- package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.js +23 -9
- package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.d.ts +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.js +7 -7
- package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.d.ts +7 -4
- package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.js +3 -2
- package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.d.ts +3 -2
- package/lib/esm/appui-react/popup/InputEditorPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.js +1 -1
- package/lib/esm/appui-react/popup/InputEditorPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js +7 -7
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts +3 -2
- package/lib/esm/appui-react/popup/KeyinPalettePopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.js +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePopup.js.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.d.ts +10 -10
- package/lib/esm/appui-react/popup/PopupManager.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.js +5 -5
- package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.d.ts +5 -3
- package/lib/esm/appui-react/popup/PositionPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/PositionPopup.js +3 -2
- package/lib/esm/appui-react/popup/PositionPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts +3 -2
- package/lib/esm/appui-react/popup/ToolSettingsPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ToolSettingsPopup.js +1 -1
- package/lib/esm/appui-react/popup/ToolSettingsPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.d.ts +4 -3
- package/lib/esm/appui-react/popup/ToolbarPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/ToolbarPopup.js +2 -2
- package/lib/esm/appui-react/popup/ToolbarPopup.js.map +1 -1
- package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/esm/appui-react/redux/SessionState.d.ts +0 -6
- package/lib/esm/appui-react/redux/SessionState.d.ts.map +1 -1
- package/lib/esm/appui-react/redux/SessionState.js +0 -8
- package/lib/esm/appui-react/redux/SessionState.js.map +1 -1
- package/lib/esm/appui-react/redux/StateManager.d.ts +1 -1
- package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
- package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js +7 -7
- package/lib/esm/appui-react/selection/HideIsolateEmphasizeManager.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/UnitSystemSelector.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +28 -19
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/shared/CustomItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/CustomItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.d.ts +2 -2
- package/lib/esm/appui-react/shared/ItemDefBase.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.js +1 -1
- package/lib/esm/appui-react/shared/ItemDefBase.js.map +1 -1
- package/lib/esm/appui-react/shared/ItemProps.d.ts +2 -2
- package/lib/esm/appui-react/shared/ItemProps.js.map +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.d.ts +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ToolItemDef.js +2 -2
- package/lib/esm/appui-react/shared/ToolItemDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.js +1 -0
- package/lib/esm/appui-react/stagepanels/FrameworkStagePanel.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +2 -2
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.js +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +26 -2
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +24 -3
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelHeader.d.ts +2 -2
- package/lib/esm/appui-react/stagepanels/StagePanelHeader.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelHeader.js +2 -1
- package/lib/esm/appui-react/stagepanels/StagePanelHeader.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js +2 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js +17 -5
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.d.ts +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.d.ts +15 -14
- package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.js +23 -21
- package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.scss +29 -18
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js +2 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.d.ts +1 -0
- package/lib/esm/appui-react/statusfields/SelectionScope.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.js +6 -4
- package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.scss +13 -3
- package/lib/esm/appui-react/statusfields/SnapMode.d.ts +2 -10
- package/lib/esm/appui-react/statusfields/SnapMode.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SnapMode.js +5 -35
- package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts +0 -6
- package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.js +2 -26
- package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +7 -7
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +14 -13
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +8 -3
- package/lib/esm/appui-react/syncui/BooleanListener.d.ts +2 -2
- package/lib/esm/appui-react/syncui/BooleanListener.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/BooleanListener.js +2 -1
- package/lib/esm/appui-react/syncui/BooleanListener.js.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts +8 -18
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +29 -101
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ActionButtonItem.js +2 -1
- package/lib/esm/appui-react/toolbar/ActionButtonItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ActionItemButton.js +2 -1
- package/lib/esm/appui-react/toolbar/ActionItemButton.js.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupButtonItem.js +24 -20
- package/lib/esm/appui-react/toolbar/GroupButtonItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupItem.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupItem.js +33 -29
- package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolButton.js +3 -2
- package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.js +3 -2
- package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js +22 -20
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +4 -4
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/tools/MarkupToolDefinitions.d.ts +2 -2
- package/lib/esm/appui-react/tools/MarkupToolDefinitions.js +2 -2
- package/lib/esm/appui-react/tools/MarkupToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +8 -10
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +18 -37
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +7 -9
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js +13 -21
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +7 -9
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +40 -51
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +4 -4
- package/lib/{cjs/appui-react/uisettings → esm/appui-react/uistate}/AppUiSettings.d.ts +11 -9
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -0
- package/lib/esm/appui-react/{uisettings → uistate}/AppUiSettings.js +13 -9
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts +15 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js +55 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js.map +1 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts +20 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.js +33 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -0
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts +5 -5
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.js +9 -9
- package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.js +1 -4
- package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +98 -8
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +83 -92
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts +22 -0
- package/lib/esm/appui-react/widgets/BackstageAppButton.d.ts.map +1 -0
- package/lib/esm/appui-react/widgets/BackstageAppButton.js +52 -0
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -0
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +1 -0
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js +3 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts +9 -0
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +10 -0
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidget.js +2 -1
- package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +1 -0
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/StableWidgetDef.d.ts +1 -1
- package/lib/esm/appui-react/widgets/StableWidgetDef.js +1 -1
- package/lib/esm/appui-react/widgets/StableWidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolSettingsContent.js +2 -1
- package/lib/esm/appui-react/widgets/ToolSettingsContent.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidget.js +3 -2
- package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts +0 -12
- package/lib/esm/appui-react/widgets/ToolWidgetComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidgetComposer.js +2 -36
- package/lib/esm/appui-react/widgets/ToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.d.ts +1 -0
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js +5 -2
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts +0 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +2 -3
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +18 -7
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.js +1 -0
- package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetStack.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetStack.js +2 -0
- package/lib/esm/appui-react/widgets/WidgetStack.js.map +1 -1
- package/lib/esm/appui-react/zones/FrameworkZone.js.map +1 -1
- package/lib/esm/appui-react/zones/StatusBarZone.js.map +1 -1
- package/lib/esm/appui-react/zones/Zone.d.ts +1 -1
- package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/Zone.js +2 -1
- package/lib/esm/appui-react/zones/Zone.js.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.d.ts +4 -4
- package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.js +5 -4
- package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.d.ts +1 -2
- package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.js +2 -1
- package/lib/esm/appui-react/zones/toolsettings/ToolSettingsManager.js.map +1 -1
- package/lib/esm/appui-react/zones/toolsettings/ToolSettingsZone.js.map +1 -1
- package/lib/esm/appui-react.d.ts +15 -18
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +15 -18
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +9 -2
- package/package.json +46 -53
- package/lib/cjs/appui-react/UserInfo.d.ts +0 -58
- package/lib/cjs/appui-react/UserInfo.d.ts.map +0 -1
- package/lib/cjs/appui-react/UserInfo.js +0 -34
- package/lib/cjs/appui-react/UserInfo.js.map +0 -1
- package/lib/cjs/appui-react/content/SavedView.d.ts.map +0 -1
- package/lib/cjs/appui-react/content/SavedView.js.map +0 -1
- package/lib/cjs/appui-react/content/SavedViewLayout.d.ts.map +0 -1
- package/lib/cjs/appui-react/content/SavedViewLayout.js.map +0 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelEnums.d.ts +0 -25
- package/lib/cjs/appui-react/stagepanels/StagePanelEnums.d.ts.map +0 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelEnums.js +0 -34
- package/lib/cjs/appui-react/stagepanels/StagePanelEnums.js.map +0 -1
- package/lib/cjs/appui-react/uisettings/AppUiSettings.d.ts.map +0 -1
- package/lib/cjs/appui-react/uisettings/AppUiSettings.js.map +0 -1
- package/lib/cjs/appui-react/uisettings/UserSettingsStorage.d.ts +0 -23
- package/lib/cjs/appui-react/uisettings/UserSettingsStorage.d.ts.map +0 -1
- package/lib/cjs/appui-react/uisettings/UserSettingsStorage.js +0 -74
- package/lib/cjs/appui-react/uisettings/UserSettingsStorage.js.map +0 -1
- package/lib/cjs/appui-react/uisettings/useUiSettings.d.ts +0 -21
- package/lib/cjs/appui-react/uisettings/useUiSettings.d.ts.map +0 -1
- package/lib/cjs/appui-react/uisettings/useUiSettings.js +0 -28
- package/lib/cjs/appui-react/uisettings/useUiSettings.js.map +0 -1
- package/lib/esm/appui-react/UserInfo.d.ts +0 -58
- package/lib/esm/appui-react/UserInfo.d.ts.map +0 -1
- package/lib/esm/appui-react/UserInfo.js +0 -30
- package/lib/esm/appui-react/UserInfo.js.map +0 -1
- package/lib/esm/appui-react/content/SavedView.d.ts.map +0 -1
- package/lib/esm/appui-react/content/SavedView.js.map +0 -1
- package/lib/esm/appui-react/content/SavedViewLayout.d.ts.map +0 -1
- package/lib/esm/appui-react/content/SavedViewLayout.js.map +0 -1
- package/lib/esm/appui-react/stagepanels/StagePanelEnums.d.ts +0 -25
- package/lib/esm/appui-react/stagepanels/StagePanelEnums.d.ts.map +0 -1
- package/lib/esm/appui-react/stagepanels/StagePanelEnums.js +0 -31
- package/lib/esm/appui-react/stagepanels/StagePanelEnums.js.map +0 -1
- package/lib/esm/appui-react/uisettings/AppUiSettings.d.ts.map +0 -1
- package/lib/esm/appui-react/uisettings/AppUiSettings.js.map +0 -1
- package/lib/esm/appui-react/uisettings/UserSettingsStorage.d.ts +0 -23
- package/lib/esm/appui-react/uisettings/UserSettingsStorage.d.ts.map +0 -1
- package/lib/esm/appui-react/uisettings/UserSettingsStorage.js +0 -68
- package/lib/esm/appui-react/uisettings/UserSettingsStorage.js.map +0 -1
- package/lib/esm/appui-react/uisettings/useUiSettings.d.ts +0 -21
- package/lib/esm/appui-react/uisettings/useUiSettings.d.ts.map +0 -1
- package/lib/esm/appui-react/uisettings/useUiSettings.js +0 -23
- package/lib/esm/appui-react/uisettings/useUiSettings.js.map +0 -1
|
@@ -14,16 +14,19 @@ const appui_layout_react_1 = require("@itwin/appui-layout-react");
|
|
|
14
14
|
const Toolbar_1 = require("../toolbar/Toolbar");
|
|
15
15
|
const WidgetDef_1 = require("./WidgetDef");
|
|
16
16
|
/** A Toolbar Widget normally displayed in the top left & top right zones in the 9-Zone Layout system.
|
|
17
|
+
* @deprecated
|
|
17
18
|
* @public
|
|
18
19
|
*/
|
|
19
20
|
class ToolbarWidgetDefBase extends WidgetDef_1.WidgetDef {
|
|
20
21
|
constructor(def) {
|
|
21
22
|
super(def);
|
|
22
23
|
this._toolbarBaseName = "";
|
|
24
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
23
25
|
this.horizontalDirection = (def.horizontalDirection !== undefined) ? def.horizontalDirection : appui_layout_react_1.Direction.Bottom;
|
|
26
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
24
27
|
this.verticalDirection = (def.verticalDirection !== undefined) ? def.verticalDirection : appui_layout_react_1.Direction.Right;
|
|
25
|
-
this.horizontalPanelAlignment = appui_layout_react_1.ToolbarPanelAlignment.Start;
|
|
26
|
-
this.verticalPanelAlignment = appui_layout_react_1.ToolbarPanelAlignment.Start;
|
|
28
|
+
this.horizontalPanelAlignment = appui_layout_react_1.ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation
|
|
29
|
+
this.verticalPanelAlignment = appui_layout_react_1.ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation
|
|
27
30
|
this.horizontalItems = def.horizontalItems;
|
|
28
31
|
this.verticalItems = def.verticalItems;
|
|
29
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarWidgetBase.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolbarWidgetBase.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kDAAgD;AAChD,kEAA6E;AAE7E,gDAA6C;AAC7C,2CAA4D;AAE5D
|
|
1
|
+
{"version":3,"file":"ToolbarWidgetBase.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolbarWidgetBase.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kDAAgD;AAChD,kEAA6E;AAE7E,gDAA6C;AAC7C,2CAA4D;AAE5D;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,qBAAS;IAWjD,YAAY,GAAuB;QACjC,KAAK,CAAC,GAAG,CAAC,CAAC;QAHL,qBAAgB,GAAG,EAAE,CAAC;QAK5B,mDAAmD;QACnD,IAAI,CAAC,mBAAmB,GAAG,CAAC,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,8BAAS,CAAC,MAAM,CAAC;QAChH,mDAAmD;QACnD,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,8BAAS,CAAC,KAAK,CAAC;QAEzG,IAAI,CAAC,wBAAwB,GAAG,0CAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAC3G,IAAI,CAAC,sBAAsB,GAAG,0CAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAEzG,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACzC,CAAC;IAED,IAAW,cAAc,CAAC,QAAgB;QACxC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACnC,CAAC;IACD,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAEM,uBAAuB;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC;QAC1C,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,iBAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,aAAa,EAC9C,WAAW,EAAE,wBAAW,CAAC,UAAU,EACnC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EACnC,cAAc,EAAE,IAAI,CAAC,wBAAwB,EAC7C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB;QAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,iBAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,WAAW,EAC5C,WAAW,EAAE,wBAAW,CAAC,QAAQ,EACjC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EACjC,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAC3C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAlED,oDAkEC","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Orientation } from \"@itwin/core-react\";\r\nimport { Direction, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { Toolbar } from \"../toolbar/Toolbar\";\r\nimport { ToolbarWidgetProps, WidgetDef } from \"./WidgetDef\";\r\n\r\n/** A Toolbar Widget normally displayed in the top left & top right zones in the 9-Zone Layout system.\r\n * @deprecated\r\n * @public\r\n */\r\nexport class ToolbarWidgetDefBase extends WidgetDef {\r\n public horizontalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n public verticalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n public verticalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalItems?: ItemList;\r\n public verticalItems?: ItemList;\r\n private _toolbarBaseName = \"\";\r\n\r\n constructor(def: ToolbarWidgetProps) {\r\n super(def);\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.horizontalDirection = (def.horizontalDirection !== undefined) ? def.horizontalDirection : Direction.Bottom;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (def.verticalDirection !== undefined) ? def.verticalDirection : Direction.Right;\r\n\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n this.verticalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n\r\n this.horizontalItems = def.horizontalItems;\r\n this.verticalItems = def.verticalItems;\r\n }\r\n\r\n public set widgetBaseName(baseName: string) {\r\n this._toolbarBaseName = baseName;\r\n }\r\n public get widgetBaseName() {\r\n return this._toolbarBaseName;\r\n }\r\n\r\n public renderHorizontalToolbar(): React.ReactNode {\r\n const toolbarItems = this.horizontalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-horizontal`}\r\n orientation={Orientation.Horizontal}\r\n expandsTo={this.horizontalDirection}\r\n panelAlignment={this.horizontalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public renderVerticalToolbar(): React.ReactNode {\r\n const toolbarItems = this.verticalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-vertical`}\r\n orientation={Orientation.Vertical}\r\n expandsTo={this.verticalDirection}\r\n panelAlignment={this.verticalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewToolWidgetComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AASH;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED
|
|
1
|
+
{"version":3,"file":"ViewToolWidgetComposer.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AASH;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,eAaxE"}
|
|
@@ -25,11 +25,11 @@ const NavigationWidgetComposer_1 = require("./NavigationWidgetComposer");
|
|
|
25
25
|
* * ```
|
|
26
26
|
* <ViewToolWidgetComposer hideNavigationAid />
|
|
27
27
|
* ```
|
|
28
|
-
|
|
29
28
|
* @public
|
|
30
29
|
*/
|
|
31
30
|
function ViewToolWidgetComposer(props) {
|
|
32
31
|
const uiIsVisible = (0, BasicToolWidget_1.useUiVisibility)();
|
|
32
|
+
// istanbul ignore next
|
|
33
33
|
const className = (0, classnames_1.default)(!uiIsVisible && "nz-hidden");
|
|
34
34
|
return (React.createElement(NavigationWidgetComposer_1.NavigationWidgetComposer, { className: className, hideNavigationAid: props.hideNavigationAid, horizontalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ViewNavigation, orientation: appui_abstract_1.ToolbarOrientation.Horizontal }), verticalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ViewNavigation, orientation: appui_abstract_1.ToolbarOrientation.Vertical }) }));
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,uDAAoD;AACpD,yEAAsE;AAWtE
|
|
1
|
+
{"version":3,"file":"ViewToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,uDAAoD;AACpD,yEAAsE;AAWtE;;;;;;;;;;;;GAYG;AACH,SAAgB,sBAAsB,CAAC,KAAkC;IACvE,MAAM,WAAW,GAAG,IAAA,iCAAe,GAAE,CAAC;IACtC,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,CAAC,WAAW,IAAI,WAAW,CAC5B,CAAC;IAEF,OAAO,CACL,oBAAC,mDAAwB,IAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EACxF,iBAAiB,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,UAAU,GAAI,EACjI,eAAe,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,QAAQ,GAAI,GAC7H,CACH,CAAC;AACJ,CAAC;AAbD,wDAaC","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 Widget\r\n */\r\n\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ToolbarOrientation, ToolbarUsage } from \"@itwin/appui-abstract\";\r\nimport { ToolbarComposer } from \"../toolbar/ToolbarComposer\";\r\nimport { useUiVisibility } from \"./BasicToolWidget\";\r\nimport { NavigationWidgetComposer } from \"./NavigationWidgetComposer\";\r\n\r\n/**\r\n * Props for [[ViewToolWidgetComposer]].\r\n * @public\r\n */\r\nexport interface ViewToolWidgetComposerProps {\r\n /** If true no navigation aid will be shown. Defaults to false. */\r\n hideNavigationAid?: boolean;\r\n}\r\n\r\n/**\r\n * ViewToolWidgetComposer composes a Navigation Widget with no tools defined by default. UiItemsProviders\r\n * must be used to provide tools to populate the toolbars. See [[StandardNavigationToolsProvider]].\r\n * @example\r\n * ```\r\n * <ViewToolWidgetComposer />\r\n * ```\r\n * If no NavigationAid control is to be shown set hideNavigationAid.\r\n * * ```\r\n * <ViewToolWidgetComposer hideNavigationAid />\r\n * ```\r\n * @public\r\n */\r\nexport function ViewToolWidgetComposer(props: ViewToolWidgetComposerProps) {\r\n const uiIsVisible = useUiVisibility();\r\n // istanbul ignore next\r\n const className = classnames(\r\n !uiIsVisible && \"nz-hidden\",\r\n );\r\n\r\n return (\r\n <NavigationWidgetComposer className={className} hideNavigationAid={props.hideNavigationAid}\r\n horizontalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Horizontal} />}\r\n verticalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Vertical} />}\r\n />\r\n );\r\n}\r\n"]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
* @module Widget
|
|
3
3
|
*/
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
import { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, WidgetState } from "@itwin/appui-abstract";
|
|
6
|
-
import { UiEvent } from "@itwin/core-react";
|
|
5
|
+
import { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, UiEvent, WidgetState } from "@itwin/appui-abstract";
|
|
7
6
|
import { Direction, PanelSide } from "@itwin/appui-layout-react";
|
|
8
7
|
import { ConfigurableUiControlConstructor, ConfigurableUiControlType } from "../configurableui/ConfigurableUiControl";
|
|
9
8
|
import { CommandItemDef } from "../shared/CommandItemDef";
|
|
@@ -66,7 +65,7 @@ export interface NavigationWidgetProps extends ToolbarWidgetProps {
|
|
|
66
65
|
* @public
|
|
67
66
|
*/
|
|
68
67
|
export declare type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps;
|
|
69
|
-
/** Prototype for WidgetDef StateFunc
|
|
68
|
+
/** Prototype for WidgetDef StateFunc (UI 1.0 only deprecate ???)
|
|
70
69
|
* @public
|
|
71
70
|
*/
|
|
72
71
|
export declare type WidgetStateFunc = (state: Readonly<WidgetState>) => WidgetState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,sBAAsB,EAAE,UAAU,EAAE,YAAY,EAAW,
|
|
1
|
+
{"version":3,"file":"WidgetDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.WidgetDef = exports.WidgetType = exports.WidgetStateChangedEvent = void 0;
|
|
11
11
|
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
12
|
-
const core_react_1 = require("@itwin/core-react");
|
|
13
12
|
const ConfigurableUiControl_1 = require("../configurableui/ConfigurableUiControl");
|
|
14
13
|
const ConfigurableUiManager_1 = require("../configurableui/ConfigurableUiManager");
|
|
15
14
|
const FrontstageManager_1 = require("../frontstage/FrontstageManager");
|
|
@@ -27,7 +26,7 @@ const widgetStateNameMap = new Map([
|
|
|
27
26
|
/** Widget State Changed Event class.
|
|
28
27
|
* @public
|
|
29
28
|
*/
|
|
30
|
-
class WidgetStateChangedEvent extends
|
|
29
|
+
class WidgetStateChangedEvent extends appui_abstract_1.UiEvent {
|
|
31
30
|
}
|
|
32
31
|
exports.WidgetStateChangedEvent = WidgetStateChangedEvent;
|
|
33
32
|
/** Widget type enum.
|
|
@@ -87,7 +86,17 @@ class WidgetDef {
|
|
|
87
86
|
}
|
|
88
87
|
WidgetDef.initializeFromWidgetProps(widgetProps, this);
|
|
89
88
|
}
|
|
90
|
-
get state() {
|
|
89
|
+
get state() {
|
|
90
|
+
if ("1" === UiFramework_1.UiFramework.uiVersion)
|
|
91
|
+
return this._state;
|
|
92
|
+
const frontstageDef = FrontstageManager_1.FrontstageManager.activeFrontstageDef;
|
|
93
|
+
if (frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.findWidgetDef(this.id)) {
|
|
94
|
+
const currentState = frontstageDef.getWidgetCurrentState(this);
|
|
95
|
+
if (undefined !== currentState)
|
|
96
|
+
return currentState;
|
|
97
|
+
}
|
|
98
|
+
return this.defaultState;
|
|
99
|
+
}
|
|
91
100
|
get id() { return this._id; }
|
|
92
101
|
get classId() { return this._classId; }
|
|
93
102
|
get priority() { return this._priority; }
|
|
@@ -101,7 +110,7 @@ class WidgetDef {
|
|
|
101
110
|
get syncEventIds() { return this._syncEventIds; }
|
|
102
111
|
get stateFunc() { return this._stateFunc; }
|
|
103
112
|
get applicationData() { return this._applicationData; }
|
|
104
|
-
get isFloating() { return this.
|
|
113
|
+
get isFloating() { return this.state === appui_abstract_1.WidgetState.Floating; }
|
|
105
114
|
get iconSpec() { return this._iconSpec; }
|
|
106
115
|
get badgeType() { return this._badgeType; }
|
|
107
116
|
get widgetType() { return this._widgetType; }
|
|
@@ -134,7 +143,8 @@ class WidgetDef {
|
|
|
134
143
|
me._classId = widgetProps.classId;
|
|
135
144
|
if (widgetProps.defaultState !== undefined) {
|
|
136
145
|
me._defaultState = widgetProps.defaultState;
|
|
137
|
-
|
|
146
|
+
if ("1" === UiFramework_1.UiFramework.uiVersion)
|
|
147
|
+
me._state = widgetProps.defaultState === appui_abstract_1.WidgetState.Floating ? appui_abstract_1.WidgetState.Open : widgetProps.defaultState;
|
|
138
148
|
}
|
|
139
149
|
if (widgetProps.isFreeform !== undefined) {
|
|
140
150
|
me._isFreeform = widgetProps.isFreeform;
|
|
@@ -256,7 +266,8 @@ class WidgetDef {
|
|
|
256
266
|
setWidgetState(newState) {
|
|
257
267
|
if (this.state === newState)
|
|
258
268
|
return;
|
|
259
|
-
|
|
269
|
+
if ("1" === UiFramework_1.UiFramework.uiVersion)
|
|
270
|
+
this._state = newState;
|
|
260
271
|
this._stateChanged = true;
|
|
261
272
|
FrontstageManager_1.FrontstageManager.onWidgetStateChangedEvent.emit({ widgetDef: this, widgetState: newState });
|
|
262
273
|
this.onWidgetStateChanged();
|
|
@@ -287,7 +298,7 @@ class WidgetDef {
|
|
|
287
298
|
}
|
|
288
299
|
onWidgetStateChanged() {
|
|
289
300
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
290
|
-
this.widgetControl && UiFramework_1.UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this.
|
|
301
|
+
this.widgetControl && UiFramework_1.UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this.state)}`, "35402486-9839-441E-A5C7-46D546142D11");
|
|
291
302
|
this.widgetControl && this.widgetControl.onWidgetStateChanged();
|
|
292
303
|
// istanbul ignore next
|
|
293
304
|
this._onWidgetStateChanged && this._onWidgetStateChanged();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, UiError, WidgetState } from \"@itwin/appui-abstract\";\r\nimport { UiEvent } from \"@itwin/core-react\";\r\nimport { Direction, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { SyncUiEventArgs, SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { WidgetControl } from \"./WidgetControl\";\r\nimport { WidgetProps } from \"./WidgetProps\";\r\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\r\n\r\nconst widgetStateNameMap = new Map<WidgetState, string>([\r\n [WidgetState.Closed, \"Closed\"],\r\n [WidgetState.Floating, \"Floating\"],\r\n [WidgetState.Hidden, \"Hidden\"],\r\n [WidgetState.Open, \"Open\"],\r\n [WidgetState.Unloaded, \"Unloaded\"],\r\n]);\r\n\r\n/** Widget State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface WidgetStateChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n widgetState: WidgetState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @public\r\n */\r\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface WidgetChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** @internal */\r\nexport interface WidgetEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** Widget type enum.\r\n * @public\r\n */\r\nexport enum WidgetType {\r\n Tool,\r\n Navigation,\r\n FreeFrom,\r\n Rectangular,\r\n ToolSettings,\r\n StatusBar,\r\n}\r\n\r\n/** Properties for a Toolbar Widget.\r\n * @public\r\n */\r\nexport interface ToolbarWidgetProps extends WidgetProps {\r\n horizontalDirection?: Direction;\r\n verticalDirection?: Direction;\r\n\r\n horizontalItems?: ItemList;\r\n verticalItems?: ItemList;\r\n}\r\n\r\n/** Properties for a Tool Widget.\r\n * @public\r\n */\r\nexport interface ToolWidgetProps extends ToolbarWidgetProps {\r\n appButton?: CommandItemDef;\r\n}\r\n\r\n/** Properties for a Navigation Widget.\r\n * @public\r\n */\r\nexport interface NavigationWidgetProps extends ToolbarWidgetProps {\r\n navigationAidId?: string;\r\n}\r\n\r\n/** Union of all Widget properties.\r\n * @public\r\n */\r\nexport type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps;\r\n\r\n/** Prototype for WidgetDef StateFunc\r\n * @public\r\n */\r\nexport type WidgetStateFunc = (state: Readonly<WidgetState>) => WidgetState;\r\n\r\n/** @internal */\r\nexport interface TabLocation {\r\n widgetId: string;\r\n widgetIndex: number;\r\n side: PanelSide;\r\n tabIndex: number;\r\n}\r\n\r\n// -----------------------------------------------------------------------------\r\n\r\n/** A Widget Definition in the 9-Zone Layout system.\r\n * @public\r\n */\r\nexport class WidgetDef {\r\n private static _sId = 0;\r\n private _label: string | ConditionalStringValue | StringGetter = \"\";\r\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\r\n private _widgetReactNode: React.ReactNode;\r\n private _widgetControl!: WidgetControl;\r\n private _defaultState: WidgetState = WidgetState.Unloaded;\r\n private _state: WidgetState = WidgetState.Unloaded;\r\n private _id: string;\r\n private _classId: string | ConfigurableUiControlConstructor | undefined = undefined;\r\n private _priority: number = 0;\r\n private _isFreeform: boolean = false;\r\n private _isFloatingStateSupported: boolean = false;\r\n private _isFloatingStateWindowResizable: boolean = true;\r\n private _isToolSettings: boolean = false;\r\n private _isStatusBar: boolean = false;\r\n private _stateChanged: boolean = false;\r\n private _fillZone: boolean = false;\r\n private _syncEventIds: string[] = [];\r\n private _stateFunc?: WidgetStateFunc;\r\n private _widgetType: WidgetType = WidgetType.Rectangular;\r\n private _applicationData?: any;\r\n private _iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n private _badgeType?: BadgeType;\r\n private _onWidgetStateChanged?: () => void;\r\n private _saveTransientState?: () => void;\r\n private _restoreTransientState?: () => boolean;\r\n private _preferredPanelSize: \"fit-content\" | undefined;\r\n private _canPopout?: boolean;\r\n private _floatingContainerId?: string;\r\n private _defaultFloatingPosition: PointProps | undefined;\r\n\r\n private _tabLocation: TabLocation = {\r\n side: \"left\",\r\n tabIndex: 0,\r\n widgetId: \"\",\r\n widgetIndex: 0,\r\n };\r\n\r\n public get state(): WidgetState { return this._state; }\r\n public get id(): string { return this._id; }\r\n public get classId(): string | ConfigurableUiControlConstructor | undefined { return this._classId; }\r\n public get priority(): number { return this._priority; }\r\n public get isFreeform(): boolean { return this._isFreeform; }\r\n public get isFloatingStateSupported(): boolean { return this._isFloatingStateSupported; }\r\n public get isFloatingStateWindowResizable(): boolean { return this._isFloatingStateWindowResizable; }\r\n public get isToolSettings(): boolean { return this._isToolSettings; }\r\n public get isStatusBar(): boolean { return this._isStatusBar; }\r\n public get stateChanged(): boolean { return this._stateChanged; }\r\n public get fillZone(): boolean { return this._fillZone; }\r\n public get syncEventIds(): string[] { return this._syncEventIds; }\r\n public get stateFunc(): WidgetStateFunc | undefined { return this._stateFunc; }\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n public get isFloating(): boolean { return this._state === WidgetState.Floating; }\r\n public get iconSpec(): string | ConditionalStringValue | React.ReactNode { return this._iconSpec; }\r\n public get badgeType(): BadgeType | undefined { return this._badgeType; }\r\n\r\n public get widgetType(): WidgetType { return this._widgetType; }\r\n public set widgetType(type: WidgetType) { this._widgetType = type; }\r\n\r\n /** @internal */\r\n public get tabLocation() { return this._tabLocation; }\r\n public set tabLocation(tabLocation: TabLocation) { this._tabLocation = tabLocation; }\r\n\r\n /** @internal */\r\n public get defaultFloatingPosition() { return this._defaultFloatingPosition; }\r\n public set defaultFloatingPosition(position: PointProps | undefined) { this._defaultFloatingPosition = position; }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n constructor(widgetProps: WidgetProps) {\r\n if (widgetProps.id !== undefined)\r\n this._id = widgetProps.id;\r\n else {\r\n WidgetDef._sId++;\r\n this._id = `Widget-${WidgetDef._sId}`;\r\n }\r\n\r\n WidgetDef.initializeFromWidgetProps(widgetProps, this);\r\n }\r\n\r\n public static initializeFromWidgetProps(widgetProps: WidgetProps, me: WidgetDef) {\r\n if (widgetProps.label)\r\n me.setLabel(widgetProps.label);\r\n else if (widgetProps.labelKey)\r\n me._label = UiFramework.localization.getLocalizedString(widgetProps.labelKey);\r\n\r\n me.setCanPopout(widgetProps.canPopout);\r\n me.setFloatingContainerId(widgetProps.floatingContainerId);\r\n me.defaultFloatingPosition = widgetProps.defaultFloatingPosition ? widgetProps.defaultFloatingPosition as PointProps : undefined;\r\n\r\n if (widgetProps.priority !== undefined)\r\n me._priority = widgetProps.priority;\r\n\r\n if (widgetProps.tooltip)\r\n me.setTooltip(widgetProps.tooltip);\r\n else if (widgetProps.tooltipKey)\r\n me._tooltip = UiFramework.localization.getLocalizedString(widgetProps.tooltipKey);\r\n\r\n if (widgetProps.control !== undefined)\r\n me._classId = widgetProps.control;\r\n else if (widgetProps.classId !== undefined)\r\n me._classId = widgetProps.classId;\r\n\r\n if (widgetProps.defaultState !== undefined) {\r\n me._defaultState = widgetProps.defaultState;\r\n me._state = widgetProps.defaultState === WidgetState.Floating ? WidgetState.Open : widgetProps.defaultState;\r\n }\r\n\r\n if (widgetProps.isFreeform !== undefined) {\r\n me._isFreeform = widgetProps.isFreeform;\r\n me._widgetType = me.isFreeform ? WidgetType.FreeFrom : WidgetType.Rectangular;\r\n }\r\n\r\n if (widgetProps.isFloatingStateSupported !== undefined)\r\n me._isFloatingStateSupported = widgetProps.isFloatingStateSupported;\r\n if (widgetProps.isFloatingStateWindowResizable !== undefined)\r\n me._isFloatingStateWindowResizable = widgetProps.isFloatingStateWindowResizable;\r\n if (widgetProps.isToolSettings !== undefined)\r\n me._isToolSettings = widgetProps.isToolSettings;\r\n if (widgetProps.isStatusBar !== undefined)\r\n me._isStatusBar = widgetProps.isStatusBar;\r\n if (widgetProps.fillZone !== undefined)\r\n me._fillZone = widgetProps.fillZone;\r\n\r\n if (widgetProps.applicationData !== undefined)\r\n me._applicationData = widgetProps.applicationData;\r\n\r\n if (widgetProps.element !== undefined)\r\n me._widgetReactNode = widgetProps.element;\r\n\r\n if (widgetProps.iconSpec !== undefined)\r\n me._iconSpec = widgetProps.iconSpec;\r\n // istanbul ignore if\r\n if (widgetProps.icon !== undefined)\r\n me._iconSpec = widgetProps.icon;\r\n\r\n if (widgetProps.badgeType !== undefined)\r\n me._badgeType = widgetProps.badgeType;\r\n\r\n me._preferredPanelSize = widgetProps.preferredPanelSize;\r\n me._onWidgetStateChanged = widgetProps.onWidgetStateChanged;\r\n me._saveTransientState = widgetProps.saveTransientState;\r\n me._restoreTransientState = widgetProps.restoreTransientState;\r\n\r\n me.setUpSyncSupport(widgetProps);\r\n }\r\n\r\n public static createWidgetPropsFromAbstractProps(abstractWidgetProps: AbstractWidgetProps): WidgetProps {\r\n const widgetProps: WidgetProps = abstractWidgetProps;\r\n widgetProps.element = abstractWidgetProps.getWidgetContent();\r\n return widgetProps;\r\n }\r\n\r\n public setUpSyncSupport(props: WidgetProps) {\r\n if (props.stateFunc && props.syncEventIds && props.syncEventIds.length > 0) {\r\n this._syncEventIds = props.syncEventIds;\r\n this._stateFunc = props.stateFunc;\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n }\r\n\r\n private _handleSyncUiEvent = (args: SyncUiEventArgs): void => {\r\n if ((this.syncEventIds.length > 0) && this.syncEventIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // istanbul ignore else\r\n if (this.stateFunc) {\r\n let newState = this.state;\r\n newState = this.stateFunc(newState);\r\n this.setWidgetState(newState);\r\n }\r\n }\r\n };\r\n\r\n /** @alpha */\r\n public get preferredPanelSize() {\r\n return this._preferredPanelSize;\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 | ConditionalStringValue | StringGetter) {\r\n if (this._label === v)\r\n return;\r\n this._label = v;\r\n FrontstageManager.onWidgetLabelChangedEvent.emit({ widgetDef: this });\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 | ConditionalStringValue | StringGetter) {\r\n this._tooltip = v;\r\n }\r\n\r\n public get widgetControl(): WidgetControl | undefined {\r\n return this._widgetControl;\r\n }\r\n\r\n public getWidgetControl(type: ConfigurableUiControlType): WidgetControl | undefined {\r\n if (!this._widgetControl && this.classId) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof this.classId === \"string\") {\r\n // istanbul ignore else\r\n if (this.classId)\r\n this._widgetControl = ConfigurableUiManager.createControl(this.classId, this.id, this.applicationData) as WidgetControl;\r\n usedClassId = this.classId;\r\n } else {\r\n const info = new ConfigurableCreateInfo(this.classId.name, this.id, this.id);\r\n usedClassId = this.classId.name;\r\n this._widgetControl = new this.classId(info, this.applicationData) as WidgetControl;\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._widgetControl) {\r\n if (this._widgetControl.getType() !== type) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`);\r\n }\r\n\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n }\r\n\r\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\r\n if (!this._widgetControl && this.isStatusBar) {\r\n const info = new ConfigurableCreateInfo(\"StatusBarWidgetComposerControl\", StatusBarWidgetComposerControl.controlId, StatusBarWidgetComposerControl.controlId);\r\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n\r\n return this._widgetControl;\r\n }\r\n\r\n public get reactNode(): React.ReactNode {\r\n if (!this._widgetReactNode) {\r\n const widgetControl = this.getWidgetControl(ConfigurableUiControlType.Widget);\r\n\r\n // istanbul ignore else\r\n if (widgetControl && widgetControl.reactNode)\r\n this._widgetReactNode = widgetControl.reactNode;\r\n }\r\n\r\n return this._widgetReactNode;\r\n }\r\n\r\n public set reactNode(node: React.ReactNode) {\r\n this._widgetReactNode = node;\r\n }\r\n\r\n public setWidgetState(newState: WidgetState): void {\r\n if (this.state === newState)\r\n return;\r\n this._state = newState;\r\n this._stateChanged = true;\r\n FrontstageManager.onWidgetStateChangedEvent.emit({ widgetDef: this, widgetState: newState });\r\n this.onWidgetStateChanged();\r\n }\r\n\r\n public setCanPopout(value: boolean | undefined) {\r\n this._canPopout = value;\r\n }\r\n\r\n public get canPopout(): boolean | undefined {\r\n return (this._canPopout);\r\n }\r\n\r\n public setFloatingContainerId(value: string | undefined) {\r\n this._floatingContainerId = value;\r\n }\r\n\r\n public get floatingContainerId(): string | undefined {\r\n return (this._floatingContainerId);\r\n }\r\n\r\n public canOpen(): boolean {\r\n return (this.isFloating || this.isActive);\r\n }\r\n\r\n public get isVisible(): boolean {\r\n return WidgetState.Hidden !== this.state;\r\n }\r\n\r\n public get activeState(): WidgetState {\r\n return this.state;\r\n }\r\n\r\n public get isActive(): boolean {\r\n return WidgetState.Open === this.activeState;\r\n }\r\n\r\n public onWidgetStateChanged(): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.widgetControl && UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this._state)}`, \"35402486-9839-441E-A5C7-46D546142D11\");\r\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\r\n // istanbul ignore next\r\n this._onWidgetStateChanged && this._onWidgetStateChanged();\r\n }\r\n\r\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\r\n public saveTransientState(): void {\r\n this.widgetControl && this.widgetControl.saveTransientState();\r\n this._saveTransientState && this._saveTransientState();\r\n }\r\n\r\n /** Overwrite to restore transient DOM state.\r\n * @note Return true if the state is restored or the Widget will remount.\r\n */\r\n public restoreTransientState(): boolean {\r\n let result = true;\r\n if (this.widgetControl || this._restoreTransientState) {\r\n let result1 = false, result2 = false;\r\n if (this.widgetControl)\r\n result1 = this.widgetControl.restoreTransientState();\r\n if (this._restoreTransientState)\r\n result2 = this._restoreTransientState();\r\n result = !(result1 || result2);\r\n }\r\n return result;\r\n }\r\n\r\n /** Opens the widget and makes it visible to the user.\r\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\r\n * @alpha\r\n */\r\n public show() {\r\n FrontstageManager.onWidgetShowEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Opens the widget and expands it to fill full size of the stage panel.\r\n * @alpha\r\n */\r\n public expand() {\r\n FrontstageManager.onWidgetExpandEvent.emit({ widgetDef: this });\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,0DAAyK;AAEzK,mFAA8I;AAC9I,mFAAgF;AAChF,uEAAoE;AAGpE,2EAAwE;AACxE,gDAA6C;AAC7C,sDAAmD;AAGnD,qFAAkF;AAElF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAsB;IACtD,CAAC,4BAAW,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC9B,CAAC,4BAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;IAClC,CAAC,4BAAW,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC9B,CAAC,4BAAW,CAAC,IAAI,EAAE,MAAM,CAAC;IAC1B,CAAC,4BAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;CACnC,CAAC,CAAC;AAUH;;GAEG;AACH,MAAa,uBAAwB,SAAQ,wBAAoC;CAAI;AAArF,0DAAqF;AAYrF;;GAEG;AACH,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,uDAAU,CAAA;IACV,mDAAQ,CAAA;IACR,yDAAW,CAAA;IACX,2DAAY,CAAA;IACZ,qDAAS,CAAA;AACX,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB;AA6CD,gFAAgF;AAEhF;;GAEG;AACH,MAAa,SAAS;IAmFpB,YAAY,WAAwB;QAjF5B,WAAM,GAAmD,EAAE,CAAC;QAC5D,aAAQ,GAAmD,EAAE,CAAC;QAG9D,kBAAa,GAAgB,4BAAW,CAAC,QAAQ,CAAC;QAClD,WAAM,GAAgB,4BAAW,CAAC,QAAQ,CAAC;QAE3C,aAAQ,GAA0D,SAAS,CAAC;QAC5E,cAAS,GAAW,CAAC,CAAC;QACtB,gBAAW,GAAY,KAAK,CAAC;QAC7B,8BAAyB,GAAY,KAAK,CAAC;QAC3C,oCAA+B,GAAY,IAAI,CAAC;QAChD,oBAAe,GAAY,KAAK,CAAC;QACjC,iBAAY,GAAY,KAAK,CAAC;QAC9B,kBAAa,GAAY,KAAK,CAAC;QAC/B,cAAS,GAAY,KAAK,CAAC;QAC3B,kBAAa,GAAa,EAAE,CAAC;QAE7B,gBAAW,GAAe,UAAU,CAAC,WAAW,CAAC;QAYjD,iBAAY,GAAgB;YAClC,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,CAAC;SACf,CAAC;QA2IM,uBAAkB,GAAG,CAAC,IAAqB,EAAQ,EAAE;YAC3D,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE;gBAChI,uBAAuB;gBACvB,IAAI,IAAI,CAAC,SAAS,EAAE;oBAClB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;oBAC1B,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACpC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;iBAC/B;aACF;QACH,CAAC,CAAC;QArGA,IAAI,WAAW,CAAC,EAAE,KAAK,SAAS;YAC9B,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC;aACvB;YACH,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,GAAG,UAAU,SAAS,CAAC,IAAI,EAAE,CAAC;SACvC;QAED,SAAS,CAAC,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IArDD,IAAW,KAAK;QACd,IAAI,GAAG,KAAK,yBAAW,CAAC,SAAS;YAC/B,OAAO,IAAI,CAAC,MAAM,CAAC;QAErB,MAAM,aAAa,GAAG,qCAAiB,CAAC,mBAAmB,CAAC;QAC5D,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACzC,MAAM,YAAY,GAAG,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,SAAS,KAAK,YAAY;gBAC5B,OAAO,YAAY,CAAC;SACvB;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAW,EAAE,KAAa,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,IAAW,OAAO,KAA4D,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrG,IAAW,QAAQ,KAAa,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACxD,IAAW,UAAU,KAAc,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7D,IAAW,wBAAwB,KAAc,OAAO,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACzF,IAAW,8BAA8B,KAAc,OAAO,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;IACrG,IAAW,cAAc,KAAc,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IACrE,IAAW,WAAW,KAAc,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/D,IAAW,YAAY,KAAc,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACjE,IAAW,QAAQ,KAAc,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACzD,IAAW,YAAY,KAAe,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAClE,IAAW,SAAS,KAAkC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/E,IAAW,eAAe,KAAsB,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/E,IAAW,UAAU,KAAc,OAAO,IAAI,CAAC,KAAK,KAAK,4BAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,IAAW,QAAQ,KAAwD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACnG,IAAW,SAAS,KAA4B,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzE,IAAW,UAAU,KAAiB,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAChE,IAAW,UAAU,CAAC,IAAgB,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;IAEpE,gBAAgB;IAChB,IAAW,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,IAAW,WAAW,CAAC,WAAwB,IAAI,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC;IAErF,gBAAgB;IAChB,IAAW,uBAAuB,KAAK,OAAO,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC9E,IAAW,uBAAuB,CAAC,QAAgC,IAAI,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CAAC,CAAC,CAAC;IAElH,gBAAgB;IAChB,IAAW,YAAY,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAajD,MAAM,CAAC,yBAAyB,CAAC,WAAwB,EAAE,EAAa;QAC7E,IAAI,WAAW,CAAC,KAAK;YACnB,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;aAC5B,IAAI,WAAW,CAAC,QAAQ;YAC3B,EAAE,CAAC,MAAM,GAAG,yBAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEhF,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACvC,EAAE,CAAC,sBAAsB,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAC3D,EAAE,CAAC,uBAAuB,GAAG,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,WAAW,CAAC,uBAAqC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEjI,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;YACpC,EAAE,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;QAEtC,IAAI,WAAW,CAAC,OAAO;YACrB,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;aAChC,IAAI,WAAW,CAAC,UAAU;YAC7B,EAAE,CAAC,QAAQ,GAAG,yBAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEpF,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS;YACnC,EAAE,CAAC,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;aAC/B,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS;YACxC,EAAE,CAAC,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QAEpC,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE;YAC1C,EAAE,CAAC,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC;YAC5C,IAAI,GAAG,KAAK,yBAAW,CAAC,SAAS;gBAC/B,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,YAAY,KAAK,4BAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAAW,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;SAC/G;QAED,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS,EAAE;YACxC,EAAE,CAAC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC;YACxC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC;SAC/E;QAED,IAAI,WAAW,CAAC,wBAAwB,KAAK,SAAS;YACpD,EAAE,CAAC,yBAAyB,GAAG,WAAW,CAAC,wBAAwB,CAAC;QACtE,IAAI,WAAW,CAAC,8BAA8B,KAAK,SAAS;YAC1D,EAAE,CAAC,+BAA+B,GAAG,WAAW,CAAC,8BAA8B,CAAC;QAClF,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS;YAC1C,EAAE,CAAC,eAAe,GAAG,WAAW,CAAC,cAAc,CAAC;QAClD,IAAI,WAAW,CAAC,WAAW,KAAK,SAAS;YACvC,EAAE,CAAC,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC;QAC5C,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;YACpC,EAAE,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;QAEtC,IAAI,WAAW,CAAC,eAAe,KAAK,SAAS;YAC3C,EAAE,CAAC,gBAAgB,GAAG,WAAW,CAAC,eAAe,CAAC;QAEpD,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS;YACnC,EAAE,CAAC,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC;QAE5C,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;YACpC,EAAE,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC;QACtC,qBAAqB;QACrB,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;YAChC,EAAE,CAAC,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;QAElC,IAAI,WAAW,CAAC,SAAS,KAAK,SAAS;YACrC,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC;QAExC,EAAE,CAAC,mBAAmB,GAAG,WAAW,CAAC,kBAAkB,CAAC;QACxD,EAAE,CAAC,qBAAqB,GAAG,WAAW,CAAC,oBAAoB,CAAC;QAC5D,EAAE,CAAC,mBAAmB,GAAG,WAAW,CAAC,kBAAkB,CAAC;QACxD,EAAE,CAAC,sBAAsB,GAAG,WAAW,CAAC,qBAAqB,CAAC;QAE9D,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAEM,MAAM,CAAC,kCAAkC,CAAC,mBAAwC;QACvF,MAAM,WAAW,GAAgB,mBAAmB,CAAC;QACrD,WAAW,CAAC,OAAO,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;QAC7D,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,gBAAgB,CAAC,KAAkB;QACxC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1E,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;YAClC,6CAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SAC1E;IACH,CAAC;IAaD,aAAa;IACb,IAAW,kBAAkB;QAC3B,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,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,IAAI,CAAC,MAAM,KAAK,CAAC;YACnB,OAAO;QACT,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,qCAAiB,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,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,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAEM,gBAAgB,CAAC,IAA+B;QACrD,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,EAAE;YACxC,IAAI,WAAW,GAAW,EAAE,CAAC;YAE7B,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;gBACpC,uBAAuB;gBACvB,IAAI,IAAI,CAAC,OAAO;oBACd,IAAI,CAAC,cAAc,GAAG,6CAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAkB,CAAC;gBAC1H,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;aAC5B;iBAAM;gBACL,MAAM,IAAI,GAAG,IAAI,8CAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC7E,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBAChC,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAkB,CAAC;aACrF;YAED,uBAAuB;YACvB,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;oBAC1C,MAAM,IAAI,wBAAO,CAAC,yBAAW,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,sBAAsB,WAAW,cAAc,IAAI,aAAa,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;iBACtJ;gBAED,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;gBACrC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;aAClC;SACF;QAED,8HAA8H;QAC9H,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,WAAW,EAAE;YAC5C,MAAM,IAAI,GAAG,IAAI,8CAAsB,CAAC,gCAAgC,EAAE,+DAA8B,CAAC,SAAS,EAAE,+DAA8B,CAAC,SAAS,CAAC,CAAC;YAC9J,IAAI,CAAC,cAAc,GAAG,IAAI,+DAA8B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC1E,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;SAClC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAW,SAAS;QAClB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,iDAAyB,CAAC,MAAM,CAAC,CAAC;YAE9E,uBAAuB;YACvB,IAAI,aAAa,IAAI,aAAa,CAAC,SAAS;gBAC1C,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC;SACnD;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAW,SAAS,CAAC,IAAqB;QACxC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAEM,cAAc,CAAC,QAAqB;QACzC,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ;YACzB,OAAO;QACT,IAAI,GAAG,KAAK,yBAAW,CAAC,SAAS;YAC/B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,qCAAiB,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7F,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEM,YAAY,CAAC,KAA0B;QAC5C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAEM,sBAAsB,CAAC,KAAyB;QACrD,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,IAAW,mBAAmB;QAC5B,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACrC,CAAC;IAEM,OAAO;QACZ,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,4BAAW,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC;IAC3C,CAAC;IAED,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,4BAAW,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC;IAC/C,CAAC;IAEM,oBAAoB;QACzB,mEAAmE;QACnE,IAAI,CAAC,aAAa,IAAI,yBAAW,CAAC,aAAa,CAAC,UAAU,IAAI,CAAC,aAAa,CAAC,OAAO,iBAAiB,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,sCAAsC,CAAC,CAAC;QACnL,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;QAChE,uBAAuB;QACvB,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC7D,CAAC;IAED,kEAAkE;IAC3D,kBAAkB;QACvB,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;QAC9D,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,qBAAqB;QAC1B,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,sBAAsB,EAAE;YACrD,IAAI,OAAO,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC;YACrC,IAAI,IAAI,CAAC,aAAa;gBACpB,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;YACvD,IAAI,IAAI,CAAC,sBAAsB;gBAC7B,OAAO,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC1C,MAAM,GAAG,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC;SAChC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACI,IAAI;QACT,qCAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACI,MAAM;QACX,qCAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;;AAzWH,8BA0WC;AAzWgB,cAAI,GAAG,CAAC,CAAC","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, UiError, UiEvent, UiSyncEventArgs, WidgetState } from \"@itwin/appui-abstract\";\r\nimport { Direction, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { WidgetControl } from \"./WidgetControl\";\r\nimport { WidgetProps } from \"./WidgetProps\";\r\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\r\n\r\nconst widgetStateNameMap = new Map<WidgetState, string>([\r\n [WidgetState.Closed, \"Closed\"],\r\n [WidgetState.Floating, \"Floating\"],\r\n [WidgetState.Hidden, \"Hidden\"],\r\n [WidgetState.Open, \"Open\"],\r\n [WidgetState.Unloaded, \"Unloaded\"],\r\n]);\r\n\r\n/** Widget State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface WidgetStateChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n widgetState: WidgetState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @public\r\n */\r\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface WidgetChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** @internal */\r\nexport interface WidgetEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** Widget type enum.\r\n * @public\r\n */\r\nexport enum WidgetType {\r\n Tool,\r\n Navigation,\r\n FreeFrom,\r\n Rectangular,\r\n ToolSettings,\r\n StatusBar,\r\n}\r\n\r\n/** Properties for a Toolbar Widget.\r\n * @public\r\n */\r\nexport interface ToolbarWidgetProps extends WidgetProps {\r\n horizontalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n verticalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n horizontalItems?: ItemList;\r\n verticalItems?: ItemList;\r\n}\r\n\r\n/** Properties for a Tool Widget.\r\n * @public\r\n */\r\nexport interface ToolWidgetProps extends ToolbarWidgetProps {\r\n appButton?: CommandItemDef;\r\n}\r\n\r\n/** Properties for a Navigation Widget.\r\n * @public\r\n */\r\nexport interface NavigationWidgetProps extends ToolbarWidgetProps {\r\n navigationAidId?: string;\r\n}\r\n\r\n/** Union of all Widget properties.\r\n * @public\r\n */\r\nexport type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps;\r\n\r\n/** Prototype for WidgetDef StateFunc (UI 1.0 only deprecate ???)\r\n * @public\r\n */\r\nexport type WidgetStateFunc = (state: Readonly<WidgetState>) => WidgetState;\r\n\r\n/** @internal */\r\nexport interface TabLocation {\r\n widgetId: string;\r\n widgetIndex: number;\r\n side: PanelSide;\r\n tabIndex: number;\r\n}\r\n\r\n// -----------------------------------------------------------------------------\r\n\r\n/** A Widget Definition in the 9-Zone Layout system.\r\n * @public\r\n */\r\nexport class WidgetDef {\r\n private static _sId = 0;\r\n private _label: string | ConditionalStringValue | StringGetter = \"\";\r\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\r\n private _widgetReactNode: React.ReactNode;\r\n private _widgetControl!: WidgetControl;\r\n private _defaultState: WidgetState = WidgetState.Unloaded;\r\n private _state: WidgetState = WidgetState.Unloaded;\r\n private _id: string;\r\n private _classId: string | ConfigurableUiControlConstructor | undefined = undefined;\r\n private _priority: number = 0;\r\n private _isFreeform: boolean = false;\r\n private _isFloatingStateSupported: boolean = false;\r\n private _isFloatingStateWindowResizable: boolean = true;\r\n private _isToolSettings: boolean = false;\r\n private _isStatusBar: boolean = false;\r\n private _stateChanged: boolean = false;\r\n private _fillZone: boolean = false;\r\n private _syncEventIds: string[] = [];\r\n private _stateFunc?: WidgetStateFunc;\r\n private _widgetType: WidgetType = WidgetType.Rectangular;\r\n private _applicationData?: any;\r\n private _iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n private _badgeType?: BadgeType;\r\n private _onWidgetStateChanged?: () => void;\r\n private _saveTransientState?: () => void;\r\n private _restoreTransientState?: () => boolean;\r\n private _preferredPanelSize: \"fit-content\" | undefined;\r\n private _canPopout?: boolean;\r\n private _floatingContainerId?: string;\r\n private _defaultFloatingPosition: PointProps | undefined;\r\n\r\n private _tabLocation: TabLocation = {\r\n side: \"left\",\r\n tabIndex: 0,\r\n widgetId: \"\",\r\n widgetIndex: 0,\r\n };\r\n\r\n public get state(): WidgetState {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._state;\r\n\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (frontstageDef?.findWidgetDef(this.id)) {\r\n const currentState = frontstageDef.getWidgetCurrentState(this);\r\n if (undefined !== currentState)\r\n return currentState;\r\n }\r\n return this.defaultState;\r\n }\r\n\r\n public get id(): string { return this._id; }\r\n public get classId(): string | ConfigurableUiControlConstructor | undefined { return this._classId; }\r\n public get priority(): number { return this._priority; }\r\n public get isFreeform(): boolean { return this._isFreeform; }\r\n public get isFloatingStateSupported(): boolean { return this._isFloatingStateSupported; }\r\n public get isFloatingStateWindowResizable(): boolean { return this._isFloatingStateWindowResizable; }\r\n public get isToolSettings(): boolean { return this._isToolSettings; }\r\n public get isStatusBar(): boolean { return this._isStatusBar; }\r\n public get stateChanged(): boolean { return this._stateChanged; }\r\n public get fillZone(): boolean { return this._fillZone; }\r\n public get syncEventIds(): string[] { return this._syncEventIds; }\r\n public get stateFunc(): WidgetStateFunc | undefined { return this._stateFunc; }\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n public get isFloating(): boolean { return this.state === WidgetState.Floating; }\r\n public get iconSpec(): string | ConditionalStringValue | React.ReactNode { return this._iconSpec; }\r\n public get badgeType(): BadgeType | undefined { return this._badgeType; }\r\n\r\n public get widgetType(): WidgetType { return this._widgetType; }\r\n public set widgetType(type: WidgetType) { this._widgetType = type; }\r\n\r\n /** @internal */\r\n public get tabLocation() { return this._tabLocation; }\r\n public set tabLocation(tabLocation: TabLocation) { this._tabLocation = tabLocation; }\r\n\r\n /** @internal */\r\n public get defaultFloatingPosition() { return this._defaultFloatingPosition; }\r\n public set defaultFloatingPosition(position: PointProps | undefined) { this._defaultFloatingPosition = position; }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n constructor(widgetProps: WidgetProps) {\r\n if (widgetProps.id !== undefined)\r\n this._id = widgetProps.id;\r\n else {\r\n WidgetDef._sId++;\r\n this._id = `Widget-${WidgetDef._sId}`;\r\n }\r\n\r\n WidgetDef.initializeFromWidgetProps(widgetProps, this);\r\n }\r\n\r\n public static initializeFromWidgetProps(widgetProps: WidgetProps, me: WidgetDef) {\r\n if (widgetProps.label)\r\n me.setLabel(widgetProps.label);\r\n else if (widgetProps.labelKey)\r\n me._label = UiFramework.localization.getLocalizedString(widgetProps.labelKey);\r\n\r\n me.setCanPopout(widgetProps.canPopout);\r\n me.setFloatingContainerId(widgetProps.floatingContainerId);\r\n me.defaultFloatingPosition = widgetProps.defaultFloatingPosition ? widgetProps.defaultFloatingPosition as PointProps : undefined;\r\n\r\n if (widgetProps.priority !== undefined)\r\n me._priority = widgetProps.priority;\r\n\r\n if (widgetProps.tooltip)\r\n me.setTooltip(widgetProps.tooltip);\r\n else if (widgetProps.tooltipKey)\r\n me._tooltip = UiFramework.localization.getLocalizedString(widgetProps.tooltipKey);\r\n\r\n if (widgetProps.control !== undefined)\r\n me._classId = widgetProps.control;\r\n else if (widgetProps.classId !== undefined)\r\n me._classId = widgetProps.classId;\r\n\r\n if (widgetProps.defaultState !== undefined) {\r\n me._defaultState = widgetProps.defaultState;\r\n if (\"1\" === UiFramework.uiVersion)\r\n me._state = widgetProps.defaultState === WidgetState.Floating ? WidgetState.Open : widgetProps.defaultState;\r\n }\r\n\r\n if (widgetProps.isFreeform !== undefined) {\r\n me._isFreeform = widgetProps.isFreeform;\r\n me._widgetType = me.isFreeform ? WidgetType.FreeFrom : WidgetType.Rectangular;\r\n }\r\n\r\n if (widgetProps.isFloatingStateSupported !== undefined)\r\n me._isFloatingStateSupported = widgetProps.isFloatingStateSupported;\r\n if (widgetProps.isFloatingStateWindowResizable !== undefined)\r\n me._isFloatingStateWindowResizable = widgetProps.isFloatingStateWindowResizable;\r\n if (widgetProps.isToolSettings !== undefined)\r\n me._isToolSettings = widgetProps.isToolSettings;\r\n if (widgetProps.isStatusBar !== undefined)\r\n me._isStatusBar = widgetProps.isStatusBar;\r\n if (widgetProps.fillZone !== undefined)\r\n me._fillZone = widgetProps.fillZone;\r\n\r\n if (widgetProps.applicationData !== undefined)\r\n me._applicationData = widgetProps.applicationData;\r\n\r\n if (widgetProps.element !== undefined)\r\n me._widgetReactNode = widgetProps.element;\r\n\r\n if (widgetProps.iconSpec !== undefined)\r\n me._iconSpec = widgetProps.iconSpec;\r\n // istanbul ignore if\r\n if (widgetProps.icon !== undefined)\r\n me._iconSpec = widgetProps.icon;\r\n\r\n if (widgetProps.badgeType !== undefined)\r\n me._badgeType = widgetProps.badgeType;\r\n\r\n me._preferredPanelSize = widgetProps.preferredPanelSize;\r\n me._onWidgetStateChanged = widgetProps.onWidgetStateChanged;\r\n me._saveTransientState = widgetProps.saveTransientState;\r\n me._restoreTransientState = widgetProps.restoreTransientState;\r\n\r\n me.setUpSyncSupport(widgetProps);\r\n }\r\n\r\n public static createWidgetPropsFromAbstractProps(abstractWidgetProps: AbstractWidgetProps): WidgetProps {\r\n const widgetProps: WidgetProps = abstractWidgetProps;\r\n widgetProps.element = abstractWidgetProps.getWidgetContent();\r\n return widgetProps;\r\n }\r\n\r\n public setUpSyncSupport(props: WidgetProps) {\r\n if (props.stateFunc && props.syncEventIds && props.syncEventIds.length > 0) {\r\n this._syncEventIds = props.syncEventIds;\r\n this._stateFunc = props.stateFunc;\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n }\r\n\r\n private _handleSyncUiEvent = (args: UiSyncEventArgs): void => {\r\n if ((this.syncEventIds.length > 0) && this.syncEventIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // istanbul ignore else\r\n if (this.stateFunc) {\r\n let newState = this.state;\r\n newState = this.stateFunc(newState);\r\n this.setWidgetState(newState);\r\n }\r\n }\r\n };\r\n\r\n /** @alpha */\r\n public get preferredPanelSize() {\r\n return this._preferredPanelSize;\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 | ConditionalStringValue | StringGetter) {\r\n if (this._label === v)\r\n return;\r\n this._label = v;\r\n FrontstageManager.onWidgetLabelChangedEvent.emit({ widgetDef: this });\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 | ConditionalStringValue | StringGetter) {\r\n this._tooltip = v;\r\n }\r\n\r\n public get widgetControl(): WidgetControl | undefined {\r\n return this._widgetControl;\r\n }\r\n\r\n public getWidgetControl(type: ConfigurableUiControlType): WidgetControl | undefined {\r\n if (!this._widgetControl && this.classId) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof this.classId === \"string\") {\r\n // istanbul ignore else\r\n if (this.classId)\r\n this._widgetControl = ConfigurableUiManager.createControl(this.classId, this.id, this.applicationData) as WidgetControl;\r\n usedClassId = this.classId;\r\n } else {\r\n const info = new ConfigurableCreateInfo(this.classId.name, this.id, this.id);\r\n usedClassId = this.classId.name;\r\n this._widgetControl = new this.classId(info, this.applicationData) as WidgetControl;\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._widgetControl) {\r\n if (this._widgetControl.getType() !== type) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`);\r\n }\r\n\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n }\r\n\r\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\r\n if (!this._widgetControl && this.isStatusBar) {\r\n const info = new ConfigurableCreateInfo(\"StatusBarWidgetComposerControl\", StatusBarWidgetComposerControl.controlId, StatusBarWidgetComposerControl.controlId);\r\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n\r\n return this._widgetControl;\r\n }\r\n\r\n public get reactNode(): React.ReactNode {\r\n if (!this._widgetReactNode) {\r\n const widgetControl = this.getWidgetControl(ConfigurableUiControlType.Widget);\r\n\r\n // istanbul ignore else\r\n if (widgetControl && widgetControl.reactNode)\r\n this._widgetReactNode = widgetControl.reactNode;\r\n }\r\n\r\n return this._widgetReactNode;\r\n }\r\n\r\n public set reactNode(node: React.ReactNode) {\r\n this._widgetReactNode = node;\r\n }\r\n\r\n public setWidgetState(newState: WidgetState): void {\r\n if (this.state === newState)\r\n return;\r\n if (\"1\" === UiFramework.uiVersion)\r\n this._state = newState;\r\n this._stateChanged = true;\r\n FrontstageManager.onWidgetStateChangedEvent.emit({ widgetDef: this, widgetState: newState });\r\n this.onWidgetStateChanged();\r\n }\r\n\r\n public setCanPopout(value: boolean | undefined) {\r\n this._canPopout = value;\r\n }\r\n\r\n public get canPopout(): boolean | undefined {\r\n return (this._canPopout);\r\n }\r\n\r\n public setFloatingContainerId(value: string | undefined) {\r\n this._floatingContainerId = value;\r\n }\r\n\r\n public get floatingContainerId(): string | undefined {\r\n return (this._floatingContainerId);\r\n }\r\n\r\n public canOpen(): boolean {\r\n return (this.isFloating || this.isActive);\r\n }\r\n\r\n public get isVisible(): boolean {\r\n return WidgetState.Hidden !== this.state;\r\n }\r\n\r\n public get activeState(): WidgetState {\r\n return this.state;\r\n }\r\n\r\n public get isActive(): boolean {\r\n return WidgetState.Open === this.activeState;\r\n }\r\n\r\n public onWidgetStateChanged(): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.widgetControl && UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this.state)}`, \"35402486-9839-441E-A5C7-46D546142D11\");\r\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\r\n // istanbul ignore next\r\n this._onWidgetStateChanged && this._onWidgetStateChanged();\r\n }\r\n\r\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\r\n public saveTransientState(): void {\r\n this.widgetControl && this.widgetControl.saveTransientState();\r\n this._saveTransientState && this._saveTransientState();\r\n }\r\n\r\n /** Overwrite to restore transient DOM state.\r\n * @note Return true if the state is restored or the Widget will remount.\r\n */\r\n public restoreTransientState(): boolean {\r\n let result = true;\r\n if (this.widgetControl || this._restoreTransientState) {\r\n let result1 = false, result2 = false;\r\n if (this.widgetControl)\r\n result1 = this.widgetControl.restoreTransientState();\r\n if (this._restoreTransientState)\r\n result2 = this._restoreTransientState();\r\n result = !(result1 || result2);\r\n }\r\n return result;\r\n }\r\n\r\n /** Opens the widget and makes it visible to the user.\r\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\r\n * @alpha\r\n */\r\n public show() {\r\n FrontstageManager.onWidgetShowEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Opens the widget and expands it to fill full size of the stage panel.\r\n * @alpha\r\n */\r\n public expand() {\r\n FrontstageManager.onWidgetExpandEvent.emit({ widgetDef: this });\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetHost.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WidgetHost.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,UAAU;IAErB,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,iBAAiB,CAAgC;IAEzD;OACG;;IAGH;;OAEG;IACI,YAAY,CAAC,SAAS,EAAE,SAAS;IAKxC,gCAAgC;IAChC,IAAW,UAAU,IAAI,aAAa,CAAC,SAAS,CAAC,CAEhD;IAED,kCAAkC;IAClC,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACI,kBAAkB,IAAI,SAAS,GAAG,SAAS;IAOlD;;;OAGG;IACI,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIvD;;OAEG;IACI,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,kBAAkB,EAAE,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACrJ,UAAU,EAAE,SAAS,EAAE,EAAE,yBAAyB,CAAC,EAAE,GAAG,GACvD,IAAI;IAWP,wBAAwB;IACxB,OAAO,CAAC,cAAc;CAWvB"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
4
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
5
|
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
/* eslint-disable deprecation/deprecation */
|
|
6
7
|
/** @packageDocumentation
|
|
7
8
|
* @module Widget
|
|
8
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetHost.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,gDAA6C;AAI7C;;;GAGG;AACH,MAAa,UAAU;IAMrB;OACG;IACH;QANQ,gBAAW,GAAgB,IAAI,KAAK,EAAa,CAAC;QAElD,sBAAiB,GAA6B,EAAE,CAAC;IAIzC,CAAC;IAEjB;;OAEG;IACI,YAAY,CAAC,SAAoB;QACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,gCAAgC;IAChC,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,kCAAkC;IAClC,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAoB,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,OAAe,EAAE,UAAkB,EAAE,QAA2C,EAAE,OAAsC,EACrJ,UAAuB,EAAE,yBAA+B;;QAExD,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,kBAAkB,GAAG,MAAA,yBAAW,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,CAAC,0CAChI,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,SAAS,CAAC;QACpB,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,kBAAkB,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,wBAAwB;IAChB,cAAc;QACpB,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,kBAAkB;YACzB,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;;YAEpE,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAE9C,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAEzD,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC5C,CAAC;CACF;AA1ED,gCA0EC","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 Widget\r\n */\r\n\r\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { WidgetDef } from \"./WidgetDef\";\r\n\r\n/**\r\n * A WidgetHost represents a definition that hosts one or most Widgets in a Frontstage.\r\n * @public\r\n */\r\nexport class WidgetHost {\r\n\r\n private _widgetDefs: WidgetDef[] = new Array<WidgetDef>();\r\n private _dynamicWidgetDefs: ReadonlyArray<WidgetDef> | undefined;\r\n private _sortedWidgetDefs: ReadonlyArray<WidgetDef> = [];\r\n\r\n /** Constructor for WidgetHost.\r\n */\r\n constructor() { }\r\n\r\n /** Adds a WidgetDef to the list of Widgets.\r\n * @param widgetDef Definition of the Widget to add\r\n */\r\n public addWidgetDef(widgetDef: WidgetDef) {\r\n this._widgetDefs.push(widgetDef);\r\n this.sortWidgetDefs();\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n return this._sortedWidgetDefs;\r\n }\r\n\r\n /** Gets the number of Widgets. */\r\n public get widgetCount(): number {\r\n return this.widgetDefs.length;\r\n }\r\n\r\n /** If there is only one Widget in the Panel, gets the single WidgetDef.\r\n * @returns The single WidgetDef if there is only one Widget; otherwise, undefined is returned.\r\n */\r\n public getSingleWidgetDef(): WidgetDef | undefined {\r\n if (this.widgetCount === 1) {\r\n return this.widgetDefs[0];\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Finds a WidgetDef with a given Id.\r\n * @param id Id of the WidgetDef to find\r\n * @returns The WidgetDef if found; otherwise, undefined is returned.\r\n */\r\n public findWidgetDef(id: string): WidgetDef | undefined {\r\n return this.widgetDefs.find((widgetDef: WidgetDef) => widgetDef.id === id);\r\n }\r\n\r\n /** Updates the WidgetHost with dynamic widgets\r\n * @internal\r\n */\r\n public updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, section: StagePanelSection | undefined,\r\n widgetDefs: WidgetDef[], frontstageApplicationData?: any\r\n ): void {\r\n widgetDefs.push(...this._widgetDefs);\r\n this._dynamicWidgetDefs = UiFramework.widgetManager.getWidgetDefs(stageId, stageUsage, location, section, frontstageApplicationData)\r\n ?.filter((widgetDef) => {\r\n const duplicate = widgetDefs.find((wDef) => wDef.id === widgetDef.id);\r\n return !duplicate;\r\n });\r\n this._dynamicWidgetDefs && widgetDefs.push(...this._dynamicWidgetDefs);\r\n this.sortWidgetDefs();\r\n }\r\n\r\n /** Sorts all widgets */\r\n private sortWidgetDefs(): void {\r\n let sortedWidgetDefs = [];\r\n if (this._dynamicWidgetDefs)\r\n sortedWidgetDefs = this._widgetDefs.concat(this._dynamicWidgetDefs);\r\n else\r\n sortedWidgetDefs = this._widgetDefs.slice();\r\n\r\n sortedWidgetDefs.sort((a, b) => a.priority - b.priority);\r\n\r\n this._sortedWidgetDefs = sortedWidgetDefs;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"WidgetHost.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F,4CAA4C;AAC5C;;GAEG;;;AAGH,gDAA6C;AAI7C;;;GAGG;AACH,MAAa,UAAU;IAMrB;OACG;IACH;QANQ,gBAAW,GAAgB,IAAI,KAAK,EAAa,CAAC;QAElD,sBAAiB,GAA6B,EAAE,CAAC;IAIzC,CAAC;IAEjB;;OAEG;IACI,YAAY,CAAC,SAAoB;QACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,gCAAgC;IAChC,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,kCAAkC;IAClC,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAoB,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,OAAe,EAAE,UAAkB,EAAE,QAA2C,EAAE,OAAsC,EACrJ,UAAuB,EAAE,yBAA+B;;QAExD,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,kBAAkB,GAAG,MAAA,yBAAW,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,CAAC,0CAChI,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,SAAS,CAAC;QACpB,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,kBAAkB,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,wBAAwB;IAChB,cAAc;QACpB,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,kBAAkB;YACzB,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;;YAEpE,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAE9C,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAEzD,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC5C,CAAC;CACF;AA1ED,gCA0EC","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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport { StagePanelLocation, StagePanelSection } from \"@itwin/appui-abstract\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { ZoneLocation } from \"../zones/Zone\";\r\nimport { WidgetDef } from \"./WidgetDef\";\r\n\r\n/**\r\n * A WidgetHost represents a definition that hosts one or most Widgets in a Frontstage.\r\n * @public\r\n */\r\nexport class WidgetHost {\r\n\r\n private _widgetDefs: WidgetDef[] = new Array<WidgetDef>();\r\n private _dynamicWidgetDefs: ReadonlyArray<WidgetDef> | undefined;\r\n private _sortedWidgetDefs: ReadonlyArray<WidgetDef> = [];\r\n\r\n /** Constructor for WidgetHost.\r\n */\r\n constructor() { }\r\n\r\n /** Adds a WidgetDef to the list of Widgets.\r\n * @param widgetDef Definition of the Widget to add\r\n */\r\n public addWidgetDef(widgetDef: WidgetDef) {\r\n this._widgetDefs.push(widgetDef);\r\n this.sortWidgetDefs();\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n return this._sortedWidgetDefs;\r\n }\r\n\r\n /** Gets the number of Widgets. */\r\n public get widgetCount(): number {\r\n return this.widgetDefs.length;\r\n }\r\n\r\n /** If there is only one Widget in the Panel, gets the single WidgetDef.\r\n * @returns The single WidgetDef if there is only one Widget; otherwise, undefined is returned.\r\n */\r\n public getSingleWidgetDef(): WidgetDef | undefined {\r\n if (this.widgetCount === 1) {\r\n return this.widgetDefs[0];\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Finds a WidgetDef with a given Id.\r\n * @param id Id of the WidgetDef to find\r\n * @returns The WidgetDef if found; otherwise, undefined is returned.\r\n */\r\n public findWidgetDef(id: string): WidgetDef | undefined {\r\n return this.widgetDefs.find((widgetDef: WidgetDef) => widgetDef.id === id);\r\n }\r\n\r\n /** Updates the WidgetHost with dynamic widgets\r\n * @internal\r\n */\r\n public updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: ZoneLocation | StagePanelLocation, section: StagePanelSection | undefined,\r\n widgetDefs: WidgetDef[], frontstageApplicationData?: any\r\n ): void {\r\n widgetDefs.push(...this._widgetDefs);\r\n this._dynamicWidgetDefs = UiFramework.widgetManager.getWidgetDefs(stageId, stageUsage, location, section, frontstageApplicationData)\r\n ?.filter((widgetDef) => {\r\n const duplicate = widgetDefs.find((wDef) => wDef.id === widgetDef.id);\r\n return !duplicate;\r\n });\r\n this._dynamicWidgetDefs && widgetDefs.push(...this._dynamicWidgetDefs);\r\n this.sortWidgetDefs();\r\n }\r\n\r\n /** Sorts all widgets */\r\n private sortWidgetDefs(): void {\r\n let sortedWidgetDefs = [];\r\n if (this._dynamicWidgetDefs)\r\n sortedWidgetDefs = this._widgetDefs.concat(this._dynamicWidgetDefs);\r\n else\r\n sortedWidgetDefs = this._widgetDefs.slice();\r\n\r\n sortedWidgetDefs.sort((a, b) => a.priority - b.priority);\r\n\r\n this._sortedWidgetDefs = sortedWidgetDefs;\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetStack.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetStack.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAkB,WAAW,EAAyB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACvG,OAAO,EACL,qBAAqB,EAAE,yBAAyB,EAAc,gBAAgB,EAA2C,GAAG,EAAY,OAAO,EACjI,cAAc,EAAyB,YAAY,EAClE,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAKvE;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,KAAK,CAAC,SAAS,CAAC;IACtE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;CAChC;AAED;;GAEG;AACH,oBAAY,UAAU,GAAG;IAAE,QAAQ,EAAE,EAAE,IAAI,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC;CAAE,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACzD,aAAa,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACrE,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IACvC,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC;IACpE,OAAO,CAAC,YAAY,CAAqC;IAEzC,MAAM,IAAI,KAAK,CAAC,SAAS;IA2CzC,OAAO,CAAC,qBAAqB,CAE3B;
|
|
1
|
+
{"version":3,"file":"WidgetStack.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetStack.tsx"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ class WidgetStack extends React.PureComponent {
|
|
|
22
22
|
this._handleOnWidgetResize = (resizeBy, handle, filledHeightDiff) => {
|
|
23
23
|
this.props.widgetChangeHandler.handleResize(this.props.widgets[0], resizeBy, handle, filledHeightDiff);
|
|
24
24
|
};
|
|
25
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
25
26
|
this._handleTabDragStart = (widgetId, tabIndex, initialPosition, firstTabBounds) => {
|
|
26
27
|
if (!this._widgetStack.current)
|
|
27
28
|
return;
|
|
@@ -39,6 +40,7 @@ class WidgetStack extends React.PureComponent {
|
|
|
39
40
|
this._handleTabDragEnd = () => {
|
|
40
41
|
this.props.widgetChangeHandler.handleTabDragEnd();
|
|
41
42
|
};
|
|
43
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
42
44
|
this._handleTabClick = (widgetId, tabIndex) => {
|
|
43
45
|
this.props.widgetChangeHandler.handleTabClick(widgetId, tabIndex);
|
|
44
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetStack.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetStack.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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BadgeType, ConditionalStringValue, PointProps } from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, CommonProps, IconHelper, Rectangle, RectangleProps } from \"@itwin/core-react\";\r\nimport {\r\n DisabledResizeHandles, DraggedWidgetManagerProps, HandleMode, HorizontalAnchor, Stacked as NZ_WidgetStack, ResizeHandle, Tab, TabGroup, TabMode,\r\n TabSeparator, VerticalAnchor, VerticalAnchorHelpers, WidgetZoneId,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\n\r\n// cSpell:ignore Timedout\r\n\r\n/** Properties for a [[WidgetStack]] Tab.\r\n * @internal\r\n */\r\nexport interface WidgetTab {\r\n readonly iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n readonly title: string;\r\n readonly badgeType?: BadgeType;\r\n}\r\n\r\n/** Properties for a Widget in a [[WidgetStack]].\r\n * @internal\r\n */\r\nexport type WidgetTabs = { readonly [id in WidgetZoneId]: ReadonlyArray<WidgetTab> };\r\n\r\n/** Properties for the [[WidgetStack]] React component.\r\n * @internal\r\n */\r\nexport interface WidgetStackProps extends CommonProps {\r\n activeTabIndex: number;\r\n disabledResizeHandles: DisabledResizeHandles | undefined;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n fillZone: boolean;\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>;\r\n horizontalAnchor: HorizontalAnchor;\r\n isCollapsed: boolean;\r\n isFloating: boolean;\r\n isInStagePanel: boolean;\r\n openWidgetId: WidgetZoneId | undefined;\r\n verticalAnchor: VerticalAnchor;\r\n widgetChangeHandler: WidgetChangeHandler;\r\n widgets: ReadonlyArray<WidgetZoneId>;\r\n widgetTabs: WidgetTabs;\r\n}\r\n\r\n/** Widget stack React component.\r\n * @internal\r\n */\r\nexport class WidgetStack extends React.PureComponent<WidgetStackProps> {\r\n private _widgetStack = React.createRef<NZ_WidgetStack>();\r\n\r\n public override render(): React.ReactNode {\r\n const tabCount = this.props.widgets.reduce((acc, widgetId) => {\r\n const tabs = this.props.widgetTabs[widgetId];\r\n return acc + tabs.length;\r\n }, 0);\r\n if (tabCount === 0)\r\n return null;\r\n return (\r\n <NZ_WidgetStack\r\n className={this.props.className}\r\n contentRef={this.props.openWidgetId ? this.props.getWidgetContentRef(this.props.openWidgetId) : undefined}\r\n disabledResizeHandles={this.props.disabledResizeHandles}\r\n fillZone={this.props.fillZone || this.props.isInStagePanel}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isTabBarVisible={this.props.isInStagePanel}\r\n isDragged={!!this.props.draggedWidget}\r\n isFloating={this.props.isFloating}\r\n isOpen={!!this.props.openWidgetId}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n onResize={this.props.isInStagePanel ? undefined : this._handleOnWidgetResize}\r\n ref={this._widgetStack}\r\n style={this.props.style}\r\n tabs={<WidgetStackTabs\r\n activeTabIndex={this.props.activeTabIndex}\r\n draggedWidget={this.props.draggedWidget}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={!this.props.isInStagePanel}\r\n onTabClick={this._handleTabClick}\r\n onTabDrag={this._handleTabDrag}\r\n onTabDragEnd={this._handleTabDragEnd}\r\n onTabDragStart={this._handleTabDragStart}\r\n openWidgetId={this.props.openWidgetId}\r\n verticalAnchor={this.props.verticalAnchor}\r\n widgets={this.props.widgets}\r\n widgetTabs={this.props.widgetTabs}\r\n />}\r\n verticalAnchor={this.props.verticalAnchor}\r\n />\r\n );\r\n }\r\n\r\n private _handleOnWidgetResize = (resizeBy: number, handle: ResizeHandle, filledHeightDiff: number) => {\r\n this.props.widgetChangeHandler.handleResize(this.props.widgets[0], resizeBy, handle, filledHeightDiff);\r\n };\r\n\r\n private _handleTabDragStart = (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => {\r\n if (!this._widgetStack.current)\r\n return;\r\n\r\n const tabBounds = Rectangle.create(firstTabBounds);\r\n const stackedWidgetBounds = Rectangle.create(this._widgetStack.current.getBounds());\r\n const offsetToFirstTab = stackedWidgetBounds.topLeft().getOffsetTo(tabBounds.topLeft());\r\n const isHorizontal = this.props.verticalAnchor === VerticalAnchor.BottomPanel || this.props.verticalAnchor === VerticalAnchor.TopPanel;\r\n let widgetBounds;\r\n if (isHorizontal)\r\n widgetBounds = stackedWidgetBounds.offsetX(offsetToFirstTab.x);\r\n else\r\n widgetBounds = stackedWidgetBounds.offsetY(offsetToFirstTab.y);\r\n\r\n this.props.widgetChangeHandler.handleTabDragStart(widgetId, tabIndex, initialPosition, widgetBounds);\r\n };\r\n\r\n private _handleTabDragEnd = () => {\r\n this.props.widgetChangeHandler.handleTabDragEnd();\r\n };\r\n\r\n private _handleTabClick = (widgetId: WidgetZoneId, tabIndex: number) => {\r\n this.props.widgetChangeHandler.handleTabClick(widgetId, tabIndex);\r\n };\r\n\r\n private _handleTabDrag = (dragged: PointProps) => {\r\n this.props.widgetChangeHandler.handleTabDrag(dragged);\r\n };\r\n}\r\n\r\n/** Properties for the [[WidgetStackTabs]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabsProps {\r\n activeTabIndex: number;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n horizontalAnchor: HorizontalAnchor;\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n onTabClick: (widgetId: WidgetZoneId, tabIndex: number) => void;\r\n onTabDrag: (dragged: PointProps) => void;\r\n onTabDragEnd: () => void;\r\n onTabDragStart: (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => void;\r\n openWidgetId: WidgetZoneId | undefined;\r\n verticalAnchor: VerticalAnchor;\r\n widgets: ReadonlyArray<WidgetZoneId>;\r\n widgetTabs: WidgetTabs;\r\n}\r\n\r\n/** Tabs of [[WidgetStack]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTabs extends React.PureComponent<WidgetStackTabsProps> {\r\n public override render(): React.ReactNode {\r\n let renderIndex = -1;\r\n return this.props.widgets.map((widgetId) => {\r\n const tabs = this.props.widgetTabs[widgetId];\r\n if (tabs.length <= 0)\r\n return null;\r\n renderIndex++;\r\n // istanbul ignore next\r\n return (\r\n <React.Fragment key={widgetId}>\r\n {renderIndex < 1 ? undefined : <TabSeparator\r\n isHorizontal={VerticalAnchorHelpers.isHorizontal(this.props.verticalAnchor)}\r\n />}\r\n <WidgetStackTabGroup\r\n activeTabIndex={this.props.activeTabIndex}\r\n draggedWidget={this.props.draggedWidget}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n isStacked={this.props.widgets.length > 1}\r\n onTabClick={this.props.onTabClick}\r\n onTabDrag={this.props.onTabDrag}\r\n onTabDragEnd={this.props.onTabDragEnd}\r\n onTabDragStart={this.props.onTabDragStart}\r\n openWidgetId={this.props.openWidgetId}\r\n tabs={tabs}\r\n verticalAnchor={this.props.verticalAnchor}\r\n widgetId={widgetId}\r\n />\r\n </React.Fragment>\r\n );\r\n });\r\n }\r\n}\r\n\r\n/** Properties for the [[WidgetStackTabGroup]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabGroupProps {\r\n activeTabIndex: number;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n horizontalAnchor: HorizontalAnchor;\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n isStacked: boolean;\r\n onTabClick: (widgetId: WidgetZoneId, tabIndex: number) => void;\r\n onTabDrag: (dragged: PointProps) => void;\r\n onTabDragEnd: () => void;\r\n onTabDragStart: (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => void;\r\n openWidgetId: WidgetZoneId | undefined;\r\n tabs: ReadonlyArray<WidgetTab>;\r\n verticalAnchor: VerticalAnchor;\r\n widgetId: WidgetZoneId;\r\n}\r\n\r\n/** Widget tab group used in [[WidgetStackTabs]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTabGroup extends React.PureComponent<WidgetStackTabGroupProps> {\r\n private _firstTab = React.createRef<Tab>();\r\n\r\n public override render(): React.ReactNode {\r\n const lastPosition = this.props.draggedWidget ? this.props.draggedWidget.lastPosition : undefined;\r\n const isWidgetStackOpen = !!this.props.openWidgetId;\r\n const isWidgetOpen = this.props.openWidgetId === this.props.widgetId;\r\n const tabs = this.props.tabs.map((tab, index) => {\r\n const mode = !isWidgetStackOpen ? TabMode.Closed : isWidgetOpen && this.props.activeTabIndex === index ? TabMode.Active : TabMode.Open;\r\n return (\r\n <WidgetStackTab\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n iconSpec={tab.iconSpec}\r\n index={index}\r\n badgeType={tab.badgeType}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n key={`${this.props.widgetId}-${index}`}\r\n lastPosition={lastPosition}\r\n mode={mode}\r\n onClick={this._handleTabClick}\r\n onDrag={this.props.onTabDrag}\r\n onDragEnd={this.props.onTabDragEnd}\r\n onDragStart={this._handleTabDragStart}\r\n tabRef={index === 0 ? this._firstTab : undefined}\r\n title={tab.title}\r\n verticalAnchor={this.props.verticalAnchor}\r\n />\r\n );\r\n });\r\n\r\n if (tabs.length > 1) {\r\n return (\r\n <TabGroup\r\n handle={this.getTabHandleMode()}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n verticalAnchor={this.props.verticalAnchor}\r\n >\r\n {tabs}\r\n </TabGroup>\r\n );\r\n }\r\n\r\n return tabs;\r\n }\r\n\r\n private getTabHandleMode() {\r\n if (this.props.draggedWidget && this.props.draggedWidget.id === this.props.widgetId && this.props.draggedWidget.isUnmerge)\r\n return HandleMode.Visible;\r\n\r\n if (this.props.isStacked)\r\n return HandleMode.Hovered;\r\n\r\n return HandleMode.Timedout;\r\n }\r\n\r\n private _handleTabDragStart = (tabIndex: number, initialPosition: PointProps) => {\r\n if (!this._firstTab.current)\r\n return;\r\n\r\n const firstTabBounds = Rectangle.create(this._firstTab.current.getBounds()).toProps();\r\n this.props.onTabDragStart(this.props.widgetId, tabIndex, initialPosition, firstTabBounds);\r\n };\r\n\r\n private _handleTabClick = (tabIndex: number) => {\r\n this.props.onTabClick(this.props.widgetId, tabIndex);\r\n };\r\n}\r\n\r\n/** Properties for the [[WidgetStackTab]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabProps {\r\n horizontalAnchor: HorizontalAnchor;\r\n iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n index: number;\r\n badgeType?: BadgeType;\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n lastPosition: PointProps | undefined;\r\n mode: TabMode;\r\n onClick: (index: number) => void;\r\n onDrag: (dragged: PointProps) => void;\r\n onDragEnd: () => void;\r\n onDragStart: (index: number, initialPosition: PointProps) => void;\r\n tabRef?: React.Ref<Tab>;\r\n title: string;\r\n verticalAnchor: VerticalAnchor;\r\n}\r\n\r\n/** Tab used in [[WidgetStackTabGroup]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTab extends React.PureComponent<WidgetStackTabProps> {\r\n public override render(): React.ReactNode {\r\n return (\r\n <Tab\r\n badge={BadgeUtilities.getComponentForBadgeType(this.props.badgeType)}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n lastPosition={this.props.lastPosition}\r\n mode={this.props.mode}\r\n onClick={this._handleClick}\r\n onDrag={this.props.onDrag}\r\n onDragEnd={this.props.onDragEnd}\r\n onDragStart={this._handleDragStart}\r\n ref={this.props.tabRef}\r\n title={this.props.title}\r\n verticalAnchor={this.props.verticalAnchor}\r\n >\r\n {IconHelper.getIconReactNode(this.props.iconSpec)}\r\n </Tab>\r\n );\r\n }\r\n\r\n private _handleDragStart = (initialPosition: PointProps) => {\r\n this.props.onDragStart(this.props.index, initialPosition);\r\n };\r\n\r\n private _handleClick = () => {\r\n this.props.onClick(this.props.index);\r\n };\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"WidgetStack.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetStack.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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BadgeType, ConditionalStringValue, PointProps } from \"@itwin/appui-abstract\";\r\nimport { BadgeUtilities, CommonProps, IconHelper, Rectangle, RectangleProps } from \"@itwin/core-react\";\r\nimport {\r\n DisabledResizeHandles, DraggedWidgetManagerProps, HandleMode, HorizontalAnchor, Stacked as NZ_WidgetStack, ResizeHandle, Tab, TabGroup, TabMode,\r\n TabSeparator, VerticalAnchor, VerticalAnchorHelpers, WidgetZoneId,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\n\r\n// cSpell:ignore Timedout\r\n\r\n/** Properties for a [[WidgetStack]] Tab.\r\n * @internal\r\n */\r\nexport interface WidgetTab {\r\n readonly iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n readonly title: string;\r\n readonly badgeType?: BadgeType;\r\n}\r\n\r\n/** Properties for a Widget in a [[WidgetStack]].\r\n * @internal\r\n */\r\nexport type WidgetTabs = { readonly [id in WidgetZoneId]: ReadonlyArray<WidgetTab> }; // eslint-disable-line deprecation/deprecation\r\n\r\n/** Properties for the [[WidgetStack]] React component.\r\n * @internal\r\n */\r\nexport interface WidgetStackProps extends CommonProps {\r\n activeTabIndex: number;\r\n disabledResizeHandles: DisabledResizeHandles | undefined;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n fillZone: boolean;\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>; // eslint-disable-line deprecation/deprecation\r\n horizontalAnchor: HorizontalAnchor; // eslint-disable-line deprecation/deprecation\r\n isCollapsed: boolean;\r\n isFloating: boolean;\r\n isInStagePanel: boolean;\r\n openWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n verticalAnchor: VerticalAnchor;\r\n widgetChangeHandler: WidgetChangeHandler; // eslint-disable-line deprecation/deprecation\r\n widgets: ReadonlyArray<WidgetZoneId>; // eslint-disable-line deprecation/deprecation\r\n widgetTabs: WidgetTabs;\r\n}\r\n\r\n/** Widget stack React component.\r\n * @internal\r\n */\r\nexport class WidgetStack extends React.PureComponent<WidgetStackProps> {\r\n private _widgetStack = React.createRef<NZ_WidgetStack>();\r\n\r\n public override render(): React.ReactNode {\r\n const tabCount = this.props.widgets.reduce((acc, widgetId) => {\r\n const tabs = this.props.widgetTabs[widgetId];\r\n return acc + tabs.length;\r\n }, 0);\r\n if (tabCount === 0)\r\n return null;\r\n return (\r\n <NZ_WidgetStack\r\n className={this.props.className}\r\n contentRef={this.props.openWidgetId ? this.props.getWidgetContentRef(this.props.openWidgetId) : undefined}\r\n disabledResizeHandles={this.props.disabledResizeHandles}\r\n fillZone={this.props.fillZone || this.props.isInStagePanel}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isTabBarVisible={this.props.isInStagePanel}\r\n isDragged={!!this.props.draggedWidget}\r\n isFloating={this.props.isFloating}\r\n isOpen={!!this.props.openWidgetId}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n onResize={this.props.isInStagePanel ? undefined : this._handleOnWidgetResize}\r\n ref={this._widgetStack}\r\n style={this.props.style}\r\n tabs={<WidgetStackTabs\r\n activeTabIndex={this.props.activeTabIndex}\r\n draggedWidget={this.props.draggedWidget}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={!this.props.isInStagePanel}\r\n onTabClick={this._handleTabClick}\r\n onTabDrag={this._handleTabDrag}\r\n onTabDragEnd={this._handleTabDragEnd}\r\n onTabDragStart={this._handleTabDragStart}\r\n openWidgetId={this.props.openWidgetId}\r\n verticalAnchor={this.props.verticalAnchor}\r\n widgets={this.props.widgets}\r\n widgetTabs={this.props.widgetTabs}\r\n />}\r\n verticalAnchor={this.props.verticalAnchor}\r\n />\r\n );\r\n }\r\n\r\n private _handleOnWidgetResize = (resizeBy: number, handle: ResizeHandle, filledHeightDiff: number) => {\r\n this.props.widgetChangeHandler.handleResize(this.props.widgets[0], resizeBy, handle, filledHeightDiff);\r\n };\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n private _handleTabDragStart = (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => {\r\n if (!this._widgetStack.current)\r\n return;\r\n\r\n const tabBounds = Rectangle.create(firstTabBounds);\r\n const stackedWidgetBounds = Rectangle.create(this._widgetStack.current.getBounds());\r\n const offsetToFirstTab = stackedWidgetBounds.topLeft().getOffsetTo(tabBounds.topLeft());\r\n const isHorizontal = this.props.verticalAnchor === VerticalAnchor.BottomPanel || this.props.verticalAnchor === VerticalAnchor.TopPanel;\r\n let widgetBounds;\r\n if (isHorizontal)\r\n widgetBounds = stackedWidgetBounds.offsetX(offsetToFirstTab.x);\r\n else\r\n widgetBounds = stackedWidgetBounds.offsetY(offsetToFirstTab.y);\r\n\r\n this.props.widgetChangeHandler.handleTabDragStart(widgetId, tabIndex, initialPosition, widgetBounds);\r\n };\r\n\r\n private _handleTabDragEnd = () => {\r\n this.props.widgetChangeHandler.handleTabDragEnd();\r\n };\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n private _handleTabClick = (widgetId: WidgetZoneId, tabIndex: number) => {\r\n this.props.widgetChangeHandler.handleTabClick(widgetId, tabIndex);\r\n };\r\n\r\n private _handleTabDrag = (dragged: PointProps) => {\r\n this.props.widgetChangeHandler.handleTabDrag(dragged);\r\n };\r\n}\r\n\r\n/** Properties for the [[WidgetStackTabs]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabsProps {\r\n activeTabIndex: number;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n horizontalAnchor: HorizontalAnchor; // eslint-disable-line deprecation/deprecation\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n onTabClick: (widgetId: WidgetZoneId, tabIndex: number) => void; // eslint-disable-line deprecation/deprecation\r\n onTabDrag: (dragged: PointProps) => void;\r\n onTabDragEnd: () => void;\r\n // eslint-disable-next-line deprecation/deprecation\r\n onTabDragStart: (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => void;\r\n openWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n verticalAnchor: VerticalAnchor;\r\n widgets: ReadonlyArray<WidgetZoneId>; // eslint-disable-line deprecation/deprecation\r\n widgetTabs: WidgetTabs;\r\n}\r\n\r\n/** Tabs of [[WidgetStack]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTabs extends React.PureComponent<WidgetStackTabsProps> {\r\n public override render(): React.ReactNode {\r\n let renderIndex = -1;\r\n return this.props.widgets.map((widgetId) => {\r\n const tabs = this.props.widgetTabs[widgetId];\r\n if (tabs.length <= 0)\r\n return null;\r\n renderIndex++;\r\n // istanbul ignore next\r\n return (\r\n <React.Fragment key={widgetId}>\r\n {renderIndex < 1 ? undefined : <TabSeparator\r\n isHorizontal={VerticalAnchorHelpers.isHorizontal(this.props.verticalAnchor)}\r\n />}\r\n <WidgetStackTabGroup\r\n activeTabIndex={this.props.activeTabIndex}\r\n draggedWidget={this.props.draggedWidget}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n isStacked={this.props.widgets.length > 1}\r\n onTabClick={this.props.onTabClick}\r\n onTabDrag={this.props.onTabDrag}\r\n onTabDragEnd={this.props.onTabDragEnd}\r\n onTabDragStart={this.props.onTabDragStart}\r\n openWidgetId={this.props.openWidgetId}\r\n tabs={tabs}\r\n verticalAnchor={this.props.verticalAnchor}\r\n widgetId={widgetId}\r\n />\r\n </React.Fragment>\r\n );\r\n });\r\n }\r\n}\r\n\r\n/** Properties for the [[WidgetStackTabGroup]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabGroupProps {\r\n activeTabIndex: number;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n horizontalAnchor: HorizontalAnchor; // eslint-disable-line deprecation/deprecation\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n isStacked: boolean;\r\n onTabClick: (widgetId: WidgetZoneId, tabIndex: number) => void; // eslint-disable-line deprecation/deprecation\r\n onTabDrag: (dragged: PointProps) => void;\r\n onTabDragEnd: () => void;\r\n // eslint-disable-next-line deprecation/deprecation\r\n onTabDragStart: (widgetId: WidgetZoneId, tabIndex: number, initialPosition: PointProps, firstTabBounds: RectangleProps) => void;\r\n openWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n tabs: ReadonlyArray<WidgetTab>;\r\n verticalAnchor: VerticalAnchor;\r\n widgetId: WidgetZoneId; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Widget tab group used in [[WidgetStackTabs]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTabGroup extends React.PureComponent<WidgetStackTabGroupProps> {\r\n private _firstTab = React.createRef<Tab>();\r\n\r\n public override render(): React.ReactNode {\r\n const lastPosition = this.props.draggedWidget ? this.props.draggedWidget.lastPosition : undefined;\r\n const isWidgetStackOpen = !!this.props.openWidgetId;\r\n const isWidgetOpen = this.props.openWidgetId === this.props.widgetId;\r\n const tabs = this.props.tabs.map((tab, index) => {\r\n const mode = !isWidgetStackOpen ? TabMode.Closed : isWidgetOpen && this.props.activeTabIndex === index ? TabMode.Active : TabMode.Open;\r\n return (\r\n <WidgetStackTab\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n iconSpec={tab.iconSpec}\r\n index={index}\r\n badgeType={tab.badgeType}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n key={`${this.props.widgetId}-${index}`}\r\n lastPosition={lastPosition}\r\n mode={mode}\r\n onClick={this._handleTabClick}\r\n onDrag={this.props.onTabDrag}\r\n onDragEnd={this.props.onTabDragEnd}\r\n onDragStart={this._handleTabDragStart}\r\n tabRef={index === 0 ? this._firstTab : undefined}\r\n title={tab.title}\r\n verticalAnchor={this.props.verticalAnchor}\r\n />\r\n );\r\n });\r\n\r\n if (tabs.length > 1) {\r\n return (\r\n <TabGroup\r\n handle={this.getTabHandleMode()}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n verticalAnchor={this.props.verticalAnchor}\r\n >\r\n {tabs}\r\n </TabGroup>\r\n );\r\n }\r\n\r\n return tabs;\r\n }\r\n\r\n private getTabHandleMode() {\r\n if (this.props.draggedWidget && this.props.draggedWidget.id === this.props.widgetId && this.props.draggedWidget.isUnmerge)\r\n return HandleMode.Visible;\r\n\r\n if (this.props.isStacked)\r\n return HandleMode.Hovered;\r\n\r\n return HandleMode.Timedout;\r\n }\r\n\r\n private _handleTabDragStart = (tabIndex: number, initialPosition: PointProps) => {\r\n if (!this._firstTab.current)\r\n return;\r\n\r\n const firstTabBounds = Rectangle.create(this._firstTab.current.getBounds()).toProps();\r\n this.props.onTabDragStart(this.props.widgetId, tabIndex, initialPosition, firstTabBounds);\r\n };\r\n\r\n private _handleTabClick = (tabIndex: number) => {\r\n this.props.onTabClick(this.props.widgetId, tabIndex);\r\n };\r\n}\r\n\r\n/** Properties for the [[WidgetStackTab]] component.\r\n * @internal\r\n */\r\nexport interface WidgetStackTabProps {\r\n horizontalAnchor: HorizontalAnchor; // eslint-disable-line deprecation/deprecation\r\n iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n index: number;\r\n badgeType?: BadgeType;\r\n isCollapsed: boolean;\r\n isProtruding: boolean;\r\n lastPosition: PointProps | undefined;\r\n mode: TabMode;\r\n onClick: (index: number) => void;\r\n onDrag: (dragged: PointProps) => void;\r\n onDragEnd: () => void;\r\n onDragStart: (index: number, initialPosition: PointProps) => void;\r\n tabRef?: React.Ref<Tab>;\r\n title: string;\r\n verticalAnchor: VerticalAnchor;\r\n}\r\n\r\n/** Tab used in [[WidgetStackTabGroup]] component.\r\n * @internal\r\n */\r\nexport class WidgetStackTab extends React.PureComponent<WidgetStackTabProps> {\r\n public override render(): React.ReactNode {\r\n return (\r\n <Tab\r\n badge={BadgeUtilities.getComponentForBadgeType(this.props.badgeType)}\r\n horizontalAnchor={this.props.horizontalAnchor}\r\n isCollapsed={this.props.isCollapsed}\r\n isProtruding={this.props.isProtruding}\r\n lastPosition={this.props.lastPosition}\r\n mode={this.props.mode}\r\n onClick={this._handleClick}\r\n onDrag={this.props.onDrag}\r\n onDragEnd={this.props.onDragEnd}\r\n onDragStart={this._handleDragStart}\r\n ref={this.props.tabRef}\r\n title={this.props.title}\r\n verticalAnchor={this.props.verticalAnchor}\r\n >\r\n {IconHelper.getIconReactNode(this.props.iconSpec)}\r\n </Tab>\r\n );\r\n }\r\n\r\n private _handleDragStart = (initialPosition: PointProps) => {\r\n this.props.onDragStart(this.props.index, initialPosition);\r\n };\r\n\r\n private _handleClick = () => {\r\n this.props.onClick(this.props.index);\r\n };\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameworkZone.js","sourceRoot":"","sources":["../../../../src/appui-react/zones/FrameworkZone.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 Zone\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, RectangleProps } from \"@itwin/core-react\";\r\nimport {\r\n DisabledResizeHandles, DraggedWidgetManagerProps, Zone as NZ_Zone, WidgetManagerProps, WidgetZoneId, ZoneManagerProps, ZoneTargetType,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { TargetChangeHandler, WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { WidgetStack, WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { Outline } from \"./Outline\";\r\nimport { ZoneTargets } from \"../dragdrop/ZoneTargets\";\r\n\r\n/** Properties for the [[FrameworkZone]] component.\r\n * @internal\r\n */\r\nexport interface FrameworkZoneProps extends CommonProps {\r\n activeTabIndex: number;\r\n disabledResizeHandles: DisabledResizeHandles | undefined;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n dropTarget: ZoneTargetType | undefined
|
|
1
|
+
{"version":3,"file":"FrameworkZone.js","sourceRoot":"","sources":["../../../../src/appui-react/zones/FrameworkZone.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 Zone\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, RectangleProps } from \"@itwin/core-react\";\r\nimport {\r\n DisabledResizeHandles, DraggedWidgetManagerProps, Zone as NZ_Zone, WidgetManagerProps, WidgetZoneId, ZoneManagerProps, ZoneTargetType,\r\n} from \"@itwin/appui-layout-react\";\r\nimport { TargetChangeHandler, WidgetChangeHandler } from \"../frontstage/FrontstageComposer\";\r\nimport { SafeAreaContext } from \"../safearea/SafeAreaContext\";\r\nimport { WidgetStack, WidgetTabs } from \"../widgets/WidgetStack\";\r\nimport { Outline } from \"./Outline\";\r\nimport { ZoneTargets } from \"../dragdrop/ZoneTargets\";\r\n\r\n/** Properties for the [[FrameworkZone]] component.\r\n * @internal\r\n */\r\nexport interface FrameworkZoneProps extends CommonProps {\r\n activeTabIndex: number;\r\n disabledResizeHandles: DisabledResizeHandles | undefined;\r\n draggedWidget: DraggedWidgetManagerProps | undefined;\r\n dropTarget: ZoneTargetType | undefined; // eslint-disable-line deprecation/deprecation\r\n fillZone?: boolean;\r\n getWidgetContentRef: (id: WidgetZoneId) => React.Ref<HTMLDivElement>; // eslint-disable-line deprecation/deprecation\r\n isHidden: boolean;\r\n isInFooterMode: boolean;\r\n openWidgetId: WidgetZoneId | undefined; // eslint-disable-line deprecation/deprecation\r\n targetChangeHandler: TargetChangeHandler; // eslint-disable-line deprecation/deprecation\r\n targetedBounds?: RectangleProps;\r\n widget: WidgetManagerProps | undefined;\r\n widgetElement: React.ReactNode;\r\n widgetChangeHandler: WidgetChangeHandler; // eslint-disable-line deprecation/deprecation\r\n widgetTabs: WidgetTabs;\r\n zone: ZoneManagerProps;\r\n}\r\n\r\n/** FrameworkZone React component.\r\n * @internal\r\n */\r\nexport class FrameworkZone extends React.PureComponent<FrameworkZoneProps> {\r\n public override render(): React.ReactNode {\r\n const zIndexStyle = getFloatingZoneStyle(this.props.zone);\r\n const floatingBounds = getFloatingZoneBounds(this.props.zone);\r\n return (\r\n <SafeAreaContext.Consumer>\r\n {(safeAreaInsets) => (\r\n <span style={zIndexStyle}>\r\n <NZ_Zone\r\n bounds={floatingBounds}\r\n className={this.props.className}\r\n style={this.props.style}\r\n isFloating={!!this.props.zone.floating}\r\n isHidden={this.props.isHidden}\r\n isInFooterMode={this.props.isInFooterMode}\r\n id={this.props.zone.id}\r\n safeAreaInsets={safeAreaInsets}\r\n >\r\n {this._getWidget()}\r\n </NZ_Zone>\r\n <NZ_Zone\r\n bounds={this.props.zone.bounds}\r\n id={this.props.zone.id}\r\n isInFooterMode={this.props.isInFooterMode}\r\n safeAreaInsets={safeAreaInsets}\r\n >\r\n <ZoneTargets\r\n zoneId={this.props.zone.id}\r\n dropTarget={this.props.dropTarget}\r\n targetChangeHandler={this.props.targetChangeHandler}\r\n />\r\n </NZ_Zone>\r\n <Outline bounds={this.props.targetedBounds} />\r\n </span>\r\n )}\r\n </SafeAreaContext.Consumer>\r\n );\r\n }\r\n\r\n private _getWidget() {\r\n const widget = this.props.widget;\r\n if (!widget)\r\n return null;\r\n\r\n if (this.props.widgetElement !== undefined)\r\n return this.props.widgetElement;\r\n\r\n return (\r\n <WidgetStack\r\n activeTabIndex={this.props.activeTabIndex}\r\n disabledResizeHandles={this.props.disabledResizeHandles}\r\n draggedWidget={this.props.draggedWidget}\r\n fillZone={this.props.fillZone || this.props.zone.isLayoutChanged}\r\n getWidgetContentRef={this.props.getWidgetContentRef}\r\n horizontalAnchor={widget.horizontalAnchor}\r\n isCollapsed={false}\r\n isFloating={!!this.props.zone.floating}\r\n isInStagePanel={false}\r\n openWidgetId={this.props.openWidgetId}\r\n verticalAnchor={widget.verticalAnchor}\r\n widgets={this.props.zone.widgets}\r\n widgetTabs={this.props.widgetTabs}\r\n widgetChangeHandler={this.props.widgetChangeHandler}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const getFloatingZoneBounds = (props: ZoneManagerProps) => {\r\n return props.floating ? props.floating.bounds : props.bounds;\r\n};\r\n\r\n/** @internal */\r\nexport const getFloatingZoneStyle = (props: ZoneManagerProps) => {\r\n return props.floating ? {\r\n zIndex: props.floating.stackId,\r\n position: \"relative\" as const,\r\n } : undefined;\r\n};\r\n"]}
|