@itwin/appui-react 3.5.0-dev.8 → 3.6.0-dev.3
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 +70 -1
- package/lib/cjs/appui-react/UiFramework.d.ts +17 -1
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +25 -7
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js +2 -2
- package/lib/cjs/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/cjs/appui-react/backstage/Backstage.d.ts +4 -1
- package/lib/cjs/appui-react/backstage/Backstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/Backstage.js +3 -1
- package/lib/cjs/appui-react/backstage/Backstage.js.map +1 -1
- package/lib/cjs/appui-react/backstage/CommandLaunch.js +1 -1
- package/lib/cjs/appui-react/backstage/CommandLaunch.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +1 -0
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.d.ts +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.d.ts +7 -1
- package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.js +9 -1
- package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.d.ts +8 -0
- package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js +2 -2
- package/lib/cjs/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.js +1 -0
- 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 +5 -2
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.js +10 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +28 -3
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +134 -9
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +5 -5
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +8 -9
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.js +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts +13 -3
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.js +15 -7
- package/lib/cjs/appui-react/hooks/useFrameworkVersion.js.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +1 -0
- package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts +2 -0
- package/lib/cjs/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/ActivityMessagePopup.js +1 -0
- package/lib/cjs/appui-react/messages/ActivityMessagePopup.js.map +1 -1
- package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts +1 -0
- package/lib/cjs/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/StatusMessageRenderer.js.map +1 -1
- package/lib/cjs/appui-react/messages/StickyMessage.d.ts +1 -0
- package/lib/cjs/appui-react/messages/StickyMessage.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/StickyMessage.js.map +1 -1
- package/lib/cjs/appui-react/messages/ToastMessage.d.ts +1 -0
- package/lib/cjs/appui-react/messages/ToastMessage.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/ToastMessage.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts +1 -0
- package/lib/cjs/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.js +4 -2
- package/lib/cjs/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/cjs/appui-react/pickers/ListPicker.scss +2 -1
- package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts +1 -0
- package/lib/cjs/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaContext.js +2 -1
- package/lib/cjs/appui-react/safearea/SafeAreaContext.js.map +1 -1
- package/lib/cjs/appui-react/safearea/SafeAreaInsets.d.ts +13 -0
- package/lib/cjs/appui-react/safearea/SafeAreaInsets.d.ts.map +1 -0
- package/lib/cjs/appui-react/safearea/SafeAreaInsets.js +16 -0
- package/lib/cjs/appui-react/safearea/SafeAreaInsets.js.map +1 -0
- package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js +2 -1
- package/lib/cjs/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts +10 -0
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +25 -22
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +3 -2
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/cjs/appui-react/shared/GroupItemProps.d.ts +1 -0
- package/lib/cjs/appui-react/shared/GroupItemProps.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +3 -0
- 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/StagePanelConfig.d.ts +39 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js +11 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +4 -7
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Indicator.d.ts +26 -0
- package/lib/cjs/appui-react/statusbar/Indicator.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/Indicator.js +38 -0
- package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/Indicator.scss +110 -0
- package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts +24 -0
- package/lib/cjs/appui-react/statusbar/LabelIndicator.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/LabelIndicator.js +29 -0
- package/lib/cjs/appui-react/statusbar/LabelIndicator.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/LabelIndicator.scss +43 -0
- package/lib/cjs/appui-react/statusbar/Separator.d.ts +10 -0
- package/lib/cjs/appui-react/statusbar/Separator.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/Separator.js +21 -0
- package/lib/cjs/appui-react/statusbar/Separator.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +2 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/dialog/Button.d.ts +21 -0
- package/lib/cjs/appui-react/statusbar/dialog/Button.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/dialog/Button.js +20 -0
- package/lib/cjs/appui-react/statusbar/dialog/Button.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/dialog/Dialog.d.ts +30 -0
- package/lib/cjs/appui-react/statusbar/dialog/Dialog.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/dialog/Dialog.js +31 -0
- package/lib/cjs/appui-react/statusbar/dialog/Dialog.js.map +1 -0
- package/lib/cjs/appui-react/statusbar/dialog/TitleBar.d.ts +19 -0
- package/lib/cjs/appui-react/statusbar/dialog/TitleBar.d.ts.map +1 -0
- package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js +20 -0
- package/lib/cjs/appui-react/statusbar/dialog/TitleBar.js.map +1 -0
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts +1 -0
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.js +1 -0
- package/lib/cjs/appui-react/statusfields/Indicator.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js +2 -5
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/PromptField.js +2 -1
- package/lib/cjs/appui-react/statusfields/PromptField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/SectionsField.js +4 -2
- package/lib/cjs/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionInfo.js +2 -1
- package/lib/cjs/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.js +2 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.js +2 -1
- package/lib/cjs/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js +3 -2
- package/lib/cjs/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +0 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +13 -11
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts +6 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js +14 -0
- package/lib/cjs/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.d.ts +7 -1
- package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js +14 -3
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts +2 -0
- package/lib/cjs/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ActionItemButton.js +1 -0
- package/lib/cjs/appui-react/toolbar/ActionItemButton.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.d.ts +5 -0
- package/lib/cjs/appui-react/toolbar/GroupItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.js +3 -1
- package/lib/cjs/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolButton.d.ts +2 -0
- package/lib/cjs/appui-react/toolbar/ToolButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolButton.js +1 -0
- package/lib/cjs/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.js +3 -3
- package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts +1 -0
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +1 -0
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.js +17 -1
- package/lib/cjs/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +4 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.js +9 -3
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.js +8 -0
- package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +25 -19
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js +6 -3
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.js +10 -3
- package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js +1 -1
- package/lib/cjs/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js +2 -2
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/cjs/appui-react/widgets/DefaultNavigationWidget.d.ts +3 -3
- package/lib/cjs/appui-react/widgets/DefaultNavigationWidget.js +2 -2
- package/lib/cjs/appui-react/widgets/DefaultNavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidget.d.ts +3 -3
- package/lib/cjs/appui-react/widgets/ToolWidget.js +2 -2
- package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.d.ts +1 -0
- package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.js +1 -0
- package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +11 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.js +10 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -0
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +16 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +26 -18
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +2 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.js.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts +5 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.js +1 -0
- package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts +1 -0
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.js +2 -2
- package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +8 -0
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +8 -0
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +17 -1
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +26 -8
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js +2 -2
- package/lib/esm/appui-react/accudraw/FrameworkAccuDraw.js.map +1 -1
- package/lib/esm/appui-react/backstage/Backstage.d.ts +4 -1
- package/lib/esm/appui-react/backstage/Backstage.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/Backstage.js +3 -1
- package/lib/esm/appui-react/backstage/Backstage.js.map +1 -1
- package/lib/esm/appui-react/backstage/CommandLaunch.js +1 -1
- package/lib/esm/appui-react/backstage/CommandLaunch.js.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js +1 -0
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.d.ts +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/state.d.ts +7 -1
- package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/state.js +10 -2
- package/lib/esm/appui-react/configurableui/state.js.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.d.ts +8 -0
- package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js +2 -2
- package/lib/esm/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.js +1 -0
- 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 +6 -3
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.js +9 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +28 -3
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +135 -10
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +5 -5
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +8 -9
- package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.js +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts +13 -3
- package/lib/esm/appui-react/hooks/useFrameworkVersion.d.ts.map +1 -1
- package/lib/esm/appui-react/hooks/useFrameworkVersion.js +15 -7
- package/lib/esm/appui-react/hooks/useFrameworkVersion.js.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessage.d.ts +1 -0
- package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessage.js.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts +2 -0
- package/lib/esm/appui-react/messages/ActivityMessagePopup.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/ActivityMessagePopup.js +1 -0
- package/lib/esm/appui-react/messages/ActivityMessagePopup.js.map +1 -1
- package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts +1 -0
- package/lib/esm/appui-react/messages/StatusMessageRenderer.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/StatusMessageRenderer.js.map +1 -1
- package/lib/esm/appui-react/messages/StickyMessage.d.ts +1 -0
- package/lib/esm/appui-react/messages/StickyMessage.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/StickyMessage.js.map +1 -1
- package/lib/esm/appui-react/messages/ToastMessage.d.ts +1 -0
- package/lib/esm/appui-react/messages/ToastMessage.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/ToastMessage.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.d.ts +1 -0
- package/lib/esm/appui-react/pickers/ListPicker.d.ts.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.js +4 -2
- package/lib/esm/appui-react/pickers/ListPicker.js.map +1 -1
- package/lib/esm/appui-react/pickers/ListPicker.scss +2 -1
- package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts +1 -0
- package/lib/esm/appui-react/safearea/SafeAreaContext.d.ts.map +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaContext.js +2 -1
- package/lib/esm/appui-react/safearea/SafeAreaContext.js.map +1 -1
- package/lib/esm/appui-react/safearea/SafeAreaInsets.d.ts +13 -0
- package/lib/esm/appui-react/safearea/SafeAreaInsets.d.ts.map +1 -0
- package/lib/esm/appui-react/safearea/SafeAreaInsets.js +13 -0
- package/lib/esm/appui-react/safearea/SafeAreaInsets.js.map +1 -0
- package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js +2 -1
- package/lib/esm/appui-react/selection/ClearEmphasisStatusField.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts +10 -0
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +25 -22
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ActionButtonItemDef.js +3 -2
- package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/esm/appui-react/shared/GroupItemProps.d.ts +1 -0
- package/lib/esm/appui-react/shared/GroupItemProps.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/GroupItemProps.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +3 -0
- 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/StagePanelConfig.d.ts +39 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js +10 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +4 -7
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Indicator.d.ts +26 -0
- package/lib/esm/appui-react/statusbar/Indicator.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/Indicator.js +34 -0
- package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -0
- package/lib/esm/appui-react/statusbar/Indicator.scss +110 -0
- package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts +24 -0
- package/lib/esm/appui-react/statusbar/LabelIndicator.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/LabelIndicator.js +25 -0
- package/lib/esm/appui-react/statusbar/LabelIndicator.js.map +1 -0
- package/lib/esm/appui-react/statusbar/LabelIndicator.scss +43 -0
- package/lib/esm/appui-react/statusbar/Separator.d.ts +10 -0
- package/lib/esm/appui-react/statusbar/Separator.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/Separator.js +17 -0
- package/lib/esm/appui-react/statusbar/Separator.js.map +1 -0
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js +2 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusbar/dialog/Button.d.ts +21 -0
- package/lib/esm/appui-react/statusbar/dialog/Button.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/dialog/Button.js +16 -0
- package/lib/esm/appui-react/statusbar/dialog/Button.js.map +1 -0
- package/lib/esm/appui-react/statusbar/dialog/Dialog.d.ts +30 -0
- package/lib/esm/appui-react/statusbar/dialog/Dialog.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/dialog/Dialog.js +27 -0
- package/lib/esm/appui-react/statusbar/dialog/Dialog.js.map +1 -0
- package/lib/esm/appui-react/statusbar/dialog/TitleBar.d.ts +19 -0
- package/lib/esm/appui-react/statusbar/dialog/TitleBar.d.ts.map +1 -0
- package/lib/esm/appui-react/statusbar/dialog/TitleBar.js +16 -0
- package/lib/esm/appui-react/statusbar/dialog/TitleBar.js.map +1 -0
- package/lib/esm/appui-react/statusfields/Indicator.d.ts +1 -0
- package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.js +1 -0
- package/lib/esm/appui-react/statusfields/Indicator.js.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js +2 -5
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/PromptField.js +2 -1
- package/lib/esm/appui-react/statusfields/PromptField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/SectionsField.js +5 -3
- package/lib/esm/appui-react/statusfields/SectionsField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionInfo.js +2 -1
- package/lib/esm/appui-react/statusfields/SelectionInfo.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.js +2 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SnapMode.js +2 -1
- package/lib/esm/appui-react/statusfields/SnapMode.js.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/ViewAttributes.js +3 -2
- package/lib/esm/appui-react/statusfields/ViewAttributes.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +0 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +15 -13
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts +6 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.d.ts.map +1 -1
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js +14 -0
- package/lib/esm/appui-react/syncui/SyncUiEventDispatcher.js.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.d.ts +7 -1
- package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js +13 -2
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts +2 -0
- package/lib/esm/appui-react/toolbar/ActionItemButton.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ActionItemButton.js +1 -0
- package/lib/esm/appui-react/toolbar/ActionItemButton.js.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupItem.d.ts +5 -0
- package/lib/esm/appui-react/toolbar/GroupItem.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/GroupItem.js +3 -1
- package/lib/esm/appui-react/toolbar/GroupItem.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolButton.d.ts +2 -0
- package/lib/esm/appui-react/toolbar/ToolButton.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolButton.js +1 -0
- package/lib/esm/appui-react/toolbar/ToolButton.js.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.js +3 -3
- package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarComposer.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts +1 -0
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +1 -0
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts +9 -0
- package/lib/esm/appui-react/tools/RestoreLayoutTool.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/RestoreLayoutTool.js +15 -0
- package/lib/esm/appui-react/tools/RestoreLayoutTool.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +3 -3
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +3 -3
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.js.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +4 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.js +9 -3
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.js +8 -0
- package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +25 -19
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js +6 -3
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.js +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.js +10 -3
- package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/useWidgetDirection.js +1 -1
- package/lib/esm/appui-react/widget-panels/useWidgetDirection.js.map +1 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js +2 -2
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/esm/appui-react/widgets/DefaultNavigationWidget.d.ts +3 -3
- package/lib/esm/appui-react/widgets/DefaultNavigationWidget.js +2 -2
- package/lib/esm/appui-react/widgets/DefaultNavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidget.d.ts +3 -3
- package/lib/esm/appui-react/widgets/ToolWidget.js +2 -2
- package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.d.ts +1 -0
- package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.js +1 -0
- package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +11 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.js +9 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -0
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +16 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +26 -18
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts +2 -1
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetProps.js.map +1 -1
- package/lib/esm/appui-react/zones/Zone.d.ts +5 -1
- package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/Zone.js +1 -0
- package/lib/esm/appui-react/zones/Zone.js.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.d.ts +1 -0
- package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.js +2 -2
- package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/esm/appui-react.d.ts +8 -0
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +8 -0
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +11 -4
- package/package.json +34 -34
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ToolSettings.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 ToolSettings\r\n */\r\n\r\nimport \"./ToolSettings.scss\";\r\nimport * as React from \"react\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { DockedToolSetting, DockedToolSettings, ScrollableWidgetContent, ToolSettingsStateContext } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\n\r\n/** Defines a ToolSettings property entry.\r\n * @public\r\n */\r\nexport interface ToolSettingsEntry {\r\n // label node which potentially can contain a lock node as well.\r\n labelNode: React.ReactNode;\r\n // editor entry used to display and edit the property value\r\n editorNode: React.ReactNode;\r\n}\r\n\r\nfunction EmptyToolSettingsEntry(): ToolSettingsEntry {\r\n const labelString = IModelApp.localization.getLocalizedString(\"UiFramework:tools.noToolSettings\");\r\n const labelNode = <div className=\"uif-toolsetting-label-docked-horizontal-empty\">{labelString}</div>;\r\n const editorNode = <div />;\r\n return {labelNode,editorNode };\r\n}\r\n\r\n/** @internal */\r\n// istanbul ignore next - need to work on overflow unit testing\r\nfunction TsLabel({ children }: { children: React.ReactNode }) {\r\n return <div className=\"uif-toolsetting-label-docked-horizontal\">{children}</div>;\r\n}\r\n\r\n/** @internal */\r\nexport function WidgetPanelsToolSettings() {\r\n const frontstageDef = useActiveFrontstageDef();\r\n const toolSettings = React.useContext(ToolSettingsStateContext);\r\n const topCenterZone = frontstageDef?.topCenter;\r\n if (!topCenterZone || !topCenterZone.isToolSettings || toolSettings.type === \"widget\")\r\n return null;\r\n return (\r\n <ToolSettingsDockedContent />\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsDockedContent() {\r\n const settings = useHorizontalToolSettingNodes();\r\n // for the overflow to work properly each setting in the DockedToolSettings should be wrapped by a DockedToolSetting component\r\n return (\r\n <DockedToolSettings itemId={FrontstageManager.activeToolSettingsProvider?.uniqueId ?? \"none\"} key={Date.now()}>\r\n {settings && settings.map((entry, index) => <DockedToolSetting key={index}><TsLabel>{entry.labelNode}</TsLabel>{entry.editorNode}</DockedToolSetting>)}\r\n </DockedToolSettings>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useHorizontalToolSettingNodes() {\r\n const [settings, setSettings] = React.useState(FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes);\r\n React.useEffect(() => {\r\n const handleToolActivatedEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes;\r\n if (!nodes || nodes.length === 0)\r\n setSettings ([EmptyToolSettingsEntry()]);\r\n else\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolActivatedEvent.addListener(handleToolActivatedEvent);\r\n return () => {\r\n FrontstageManager.onToolActivatedEvent.removeListener(handleToolActivatedEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n React.useEffect(() => {\r\n const handleToolSettingsReloadEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes;\r\n if (!nodes || nodes.length === 0)\r\n setSettings ([EmptyToolSettingsEntry()]);\r\n else\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolSettingsReloadEvent.addListener(handleToolSettingsReloadEvent);\r\n return () => {\r\n FrontstageManager.onToolSettingsReloadEvent.removeListener(handleToolSettingsReloadEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n return settings;\r\n}\r\n\r\n/** Defines the ToolSettingsEntry entries that are used to populate a grid layout of ToolSetting properties.\r\n * Used only when the \"Use UI 2.0\" setting is true\r\n * @internal\r\n */\r\nexport interface ToolSettingsGridProps {\r\n // label node which potentially can contain a lock node as well.\r\n settings?: ToolSettingsEntry[];\r\n}\r\n\r\n/** Component that arranges an array of ToolSettingsEntry items into a two column grid layout.\r\n * The left column is considered the label column, the right column is considered the property\r\n * editor column.\r\n * @internal\r\n */\r\nexport function ToolSettingsGrid({ settings }: ToolSettingsGridProps) {\r\n return (\r\n <div className=\"uifw-standard-toolsettings-two-column-grid\">\r\n {settings && settings.map((setting: ToolSettingsEntry, index: number) => {\r\n return (\r\n <React.Fragment key={index}>\r\n <span className=\"uifw-standard-toolsettings-label-entry\">{setting.labelNode}</span>\r\n {setting.editorNode}\r\n </React.Fragment>\r\n );\r\n })}\r\n </div>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useToolSettingsNode() {\r\n const [settings, setSettings] = React.useState(FrontstageManager.activeToolSettingsProvider?.toolSettingsNode);\r\n React.useEffect(() => {\r\n const handleToolActivatedEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.toolSettingsNode;\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolActivatedEvent.addListener(handleToolActivatedEvent);\r\n return () => {\r\n FrontstageManager.onToolActivatedEvent.removeListener(handleToolActivatedEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n React.useEffect(() => {\r\n const handleToolSettingsReloadEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.toolSettingsNode;\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolSettingsReloadEvent.addListener(handleToolSettingsReloadEvent);\r\n return () => {\r\n FrontstageManager.onToolSettingsReloadEvent.removeListener(handleToolSettingsReloadEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n return settings;\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsContent() {\r\n const toolSettings = React.useContext(ToolSettingsStateContext);\r\n // This is needed to remount underlying components tree when going into widget state.\r\n if (toolSettings.type === \"docked\")\r\n return null;\r\n return <ToolSettingsWidgetContent />;\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsWidgetContent() {\r\n const floatingToolSettingsContainerRef = React.useRef<HTMLDivElement>(null);\r\n const node = useToolSettingsNode();\r\n // if no tool settings hide the floating widgets tab\r\n React.useEffect(() => {\r\n // istanbul ignore else\r\n if (floatingToolSettingsContainerRef.current) {\r\n const floatingWidgetTab = floatingToolSettingsContainerRef.current.closest(\".nz-floating-toolsettings\");\r\n // istanbul ignore else\r\n if (floatingWidgetTab) {\r\n (floatingWidgetTab as HTMLDivElement).style.visibility = !!node ? \"visible\" : /* istanbul ignore next */ \"hidden\";\r\n }\r\n }\r\n }, [node]);\r\n\r\n // istanbul ignore next\r\n const providerId = FrontstageManager.activeToolSettingsProvider?.uniqueId ?? \"none\";\r\n\r\n return (\r\n <div data-toolsettings-provider={providerId} className=\"uifw-floating-toolsettings-container\" ref={floatingToolSettingsContainerRef} >\r\n <ScrollableWidgetContent>\r\n {node}\r\n </ScrollableWidgetContent>\r\n </div>\r\n );\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ToolSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/ToolSettings.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 ToolSettings\r\n */\r\n\r\nimport \"./ToolSettings.scss\";\r\nimport * as React from \"react\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { DockedToolSetting, DockedToolSettings, ScrollableWidgetContent, ToolSettingsStateContext } from \"@itwin/appui-layout-react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\n\r\n/** Defines a ToolSettings property entry.\r\n * @public\r\n */\r\nexport interface ToolSettingsEntry {\r\n // label node which potentially can contain a lock node as well.\r\n labelNode: React.ReactNode;\r\n // editor entry used to display and edit the property value\r\n editorNode: React.ReactNode;\r\n}\r\n\r\nfunction EmptyToolSettingsEntry(): ToolSettingsEntry {\r\n const labelString = IModelApp.localization.getLocalizedString(\"UiFramework:tools.noToolSettings\");\r\n const labelNode = <div className=\"uif-toolsetting-label-docked-horizontal-empty\">{labelString}</div>;\r\n const editorNode = <div />;\r\n return {labelNode,editorNode };\r\n}\r\n\r\n/** @internal */\r\n// istanbul ignore next - need to work on overflow unit testing\r\nfunction TsLabel({ children }: { children: React.ReactNode }) {\r\n return <div className=\"uif-toolsetting-label-docked-horizontal\">{children}</div>;\r\n}\r\n\r\n/** @internal */\r\nexport function WidgetPanelsToolSettings() {\r\n const frontstageDef = useActiveFrontstageDef();\r\n const toolSettings = React.useContext(ToolSettingsStateContext);\r\n const topCenterZone = frontstageDef?.topCenter; // eslint-disable-line deprecation/deprecation\r\n if (!topCenterZone || !topCenterZone.isToolSettings || toolSettings.type === \"widget\")\r\n return null;\r\n return (\r\n <ToolSettingsDockedContent />\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsDockedContent() {\r\n const settings = useHorizontalToolSettingNodes();\r\n // for the overflow to work properly each setting in the DockedToolSettings should be wrapped by a DockedToolSetting component\r\n return (\r\n <DockedToolSettings itemId={FrontstageManager.activeToolSettingsProvider?.uniqueId ?? \"none\"} key={Date.now()}>\r\n {settings && settings.map((entry, index) => <DockedToolSetting key={index}><TsLabel>{entry.labelNode}</TsLabel>{entry.editorNode}</DockedToolSetting>)}\r\n </DockedToolSettings>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useHorizontalToolSettingNodes() {\r\n const [settings, setSettings] = React.useState(FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes);\r\n React.useEffect(() => {\r\n const handleToolActivatedEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes;\r\n if (!nodes || nodes.length === 0)\r\n setSettings ([EmptyToolSettingsEntry()]);\r\n else\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolActivatedEvent.addListener(handleToolActivatedEvent);\r\n return () => {\r\n FrontstageManager.onToolActivatedEvent.removeListener(handleToolActivatedEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n React.useEffect(() => {\r\n const handleToolSettingsReloadEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.horizontalToolSettingNodes;\r\n if (!nodes || nodes.length === 0)\r\n setSettings ([EmptyToolSettingsEntry()]);\r\n else\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolSettingsReloadEvent.addListener(handleToolSettingsReloadEvent);\r\n return () => {\r\n FrontstageManager.onToolSettingsReloadEvent.removeListener(handleToolSettingsReloadEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n return settings;\r\n}\r\n\r\n/** Defines the ToolSettingsEntry entries that are used to populate a grid layout of ToolSetting properties.\r\n * Used only when the \"Use UI 2.0\" setting is true\r\n * @internal\r\n */\r\nexport interface ToolSettingsGridProps {\r\n // label node which potentially can contain a lock node as well.\r\n settings?: ToolSettingsEntry[];\r\n}\r\n\r\n/** Component that arranges an array of ToolSettingsEntry items into a two column grid layout.\r\n * The left column is considered the label column, the right column is considered the property\r\n * editor column.\r\n * @internal\r\n */\r\nexport function ToolSettingsGrid({ settings }: ToolSettingsGridProps) {\r\n return (\r\n <div className=\"uifw-standard-toolsettings-two-column-grid\">\r\n {settings && settings.map((setting: ToolSettingsEntry, index: number) => {\r\n return (\r\n <React.Fragment key={index}>\r\n <span className=\"uifw-standard-toolsettings-label-entry\">{setting.labelNode}</span>\r\n {setting.editorNode}\r\n </React.Fragment>\r\n );\r\n })}\r\n </div>\r\n );\r\n}\r\n\r\n/** @internal */\r\nexport function useToolSettingsNode() {\r\n const [settings, setSettings] = React.useState(FrontstageManager.activeToolSettingsProvider?.toolSettingsNode);\r\n React.useEffect(() => {\r\n const handleToolActivatedEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.toolSettingsNode;\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolActivatedEvent.addListener(handleToolActivatedEvent);\r\n return () => {\r\n FrontstageManager.onToolActivatedEvent.removeListener(handleToolActivatedEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n React.useEffect(() => {\r\n const handleToolSettingsReloadEvent = () => {\r\n const nodes = FrontstageManager.activeToolSettingsProvider?.toolSettingsNode;\r\n setSettings(nodes);\r\n };\r\n FrontstageManager.onToolSettingsReloadEvent.addListener(handleToolSettingsReloadEvent);\r\n return () => {\r\n FrontstageManager.onToolSettingsReloadEvent.removeListener(handleToolSettingsReloadEvent);\r\n };\r\n }, [setSettings]);\r\n\r\n return settings;\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsContent() {\r\n const toolSettings = React.useContext(ToolSettingsStateContext);\r\n // This is needed to remount underlying components tree when going into widget state.\r\n if (toolSettings.type === \"docked\")\r\n return null;\r\n return <ToolSettingsWidgetContent />;\r\n}\r\n\r\n/** @internal */\r\nexport function ToolSettingsWidgetContent() {\r\n const floatingToolSettingsContainerRef = React.useRef<HTMLDivElement>(null);\r\n const node = useToolSettingsNode();\r\n // if no tool settings hide the floating widgets tab\r\n React.useEffect(() => {\r\n // istanbul ignore else\r\n if (floatingToolSettingsContainerRef.current) {\r\n const floatingWidgetTab = floatingToolSettingsContainerRef.current.closest(\".nz-floating-toolsettings\");\r\n // istanbul ignore else\r\n if (floatingWidgetTab) {\r\n (floatingWidgetTab as HTMLDivElement).style.visibility = !!node ? \"visible\" : /* istanbul ignore next */ \"hidden\";\r\n }\r\n }\r\n }, [node]);\r\n\r\n // istanbul ignore next\r\n const providerId = FrontstageManager.activeToolSettingsProvider?.uniqueId ?? \"none\";\r\n\r\n return (\r\n <div data-toolsettings-provider={providerId} className=\"uifw-floating-toolsettings-container\" ref={floatingToolSettingsContainerRef} >\r\n <ScrollableWidgetContent>\r\n {node}\r\n </ScrollableWidgetContent>\r\n </div>\r\n );\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,iBAAiB,CAAC;AAIzB,gBAAgB;AAChB,wBAAgB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"Toolbars.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAEH,OAAO,iBAAiB,CAAC;AAIzB,gBAAgB;AAChB,wBAAgB,oBAAoB,gBAoBnC"}
|
|
@@ -13,10 +13,17 @@ const React = require("react");
|
|
|
13
13
|
const Frontstage_1 = require("../frontstage/Frontstage");
|
|
14
14
|
/** @internal */
|
|
15
15
|
function WidgetPanelsToolbars() {
|
|
16
|
-
var _a, _b, _c, _d;
|
|
17
16
|
const frontstageDef = (0, Frontstage_1.useActiveFrontstageDef)();
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
let toolsWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.contentManipulation;
|
|
18
|
+
if (frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topLeft) { // eslint-disable-line deprecation/deprecation
|
|
19
|
+
toolsWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topLeft.getSingleWidgetDef(); // eslint-disable-line deprecation/deprecation
|
|
20
|
+
}
|
|
21
|
+
let navigationWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.viewNavigation;
|
|
22
|
+
if (frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topRight) { // eslint-disable-line deprecation/deprecation
|
|
23
|
+
navigationWidget = frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.topRight.getSingleWidgetDef(); // eslint-disable-line deprecation/deprecation
|
|
24
|
+
}
|
|
25
|
+
const tools = toolsWidget === null || toolsWidget === void 0 ? void 0 : toolsWidget.reactNode;
|
|
26
|
+
const navigation = navigationWidget === null || navigationWidget === void 0 ? void 0 : navigationWidget.reactNode;
|
|
20
27
|
return (React.createElement("div", { className: "uifw-widgetPanels-toolbars" },
|
|
21
28
|
tools,
|
|
22
29
|
navigation));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2BAAyB;AACzB,+BAA+B;AAC/B,yDAAkE;AAElE,gBAAgB;AAChB,SAAgB,oBAAoB
|
|
1
|
+
{"version":3,"file":"Toolbars.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/Toolbars.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2BAAyB;AACzB,+BAA+B;AAC/B,yDAAkE;AAElE,gBAAgB;AAChB,SAAgB,oBAAoB;IAClC,MAAM,aAAa,GAAG,IAAA,mCAAsB,GAAE,CAAC;IAE/C,IAAI,WAAW,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,mBAAmB,CAAC;IACrD,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,EAAE,EAAE,8CAA8C;QAC1E,WAAW,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,8CAA8C;KAC1G;IAED,IAAI,gBAAgB,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,cAAc,CAAC;IACrD,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,EAAE,EAAE,8CAA8C;QAC3E,gBAAgB,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,8CAA8C;KAChH;IACD,MAAM,KAAK,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAC;IACrC,MAAM,UAAU,GAAG,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC;IAC/C,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACxC,KAAK;QACL,UAAU,CACP,CACP,CAAC;AACJ,CAAC;AApBD,oDAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport \"./Toolbars.scss\";\r\nimport * as React from \"react\";\r\nimport { useActiveFrontstageDef } from \"../frontstage/Frontstage\";\r\n\r\n/** @internal */\r\nexport function WidgetPanelsToolbars() {\r\n const frontstageDef = useActiveFrontstageDef();\r\n\r\n let toolsWidget = frontstageDef?.contentManipulation;\r\n if (frontstageDef?.topLeft) { // eslint-disable-line deprecation/deprecation\r\n toolsWidget = frontstageDef?.topLeft.getSingleWidgetDef(); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n let navigationWidget = frontstageDef?.viewNavigation;\r\n if (frontstageDef?.topRight) { // eslint-disable-line deprecation/deprecation\r\n navigationWidget = frontstageDef?.topRight.getSingleWidgetDef(); // eslint-disable-line deprecation/deprecation\r\n }\r\n const tools = toolsWidget?.reactNode;\r\n const navigation = navigationWidget?.reactNode;\r\n return (\r\n <div className=\"uifw-widgetPanels-toolbars\">\r\n {tools}\r\n {navigation}\r\n </div>\r\n );\r\n}\r\n"]}
|
|
@@ -16,7 +16,7 @@ const useFrameworkVersion_1 = require("../hooks/useFrameworkVersion");
|
|
|
16
16
|
* @alpha
|
|
17
17
|
*/
|
|
18
18
|
function useWidgetDirection() {
|
|
19
|
-
const version = (0, useFrameworkVersion_1.useFrameworkVersion)();
|
|
19
|
+
const version = (0, useFrameworkVersion_1.useFrameworkVersion)(); // eslint-disable-line deprecation/deprecation
|
|
20
20
|
const tabId = React.useContext(appui_layout_react_1.TabIdContext);
|
|
21
21
|
const nineZone = React.useContext(appui_layout_react_1.NineZoneContext);
|
|
22
22
|
// istanbul ignore else
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWidgetDirection.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/useWidgetDirection.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kEAAiH;AACjH,sEAAmE;AAEnE;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,MAAM,OAAO,GAAG,IAAA,yCAAmB,GAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"useWidgetDirection.js","sourceRoot":"","sources":["../../../../src/appui-react/widget-panels/useWidgetDirection.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,kEAAiH;AACjH,sEAAmE;AAEnE;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,MAAM,OAAO,GAAG,IAAA,yCAAmB,GAAE,CAAC,CAAC,8CAA8C;IACrF,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,iCAAY,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,oCAAe,CAAC,CAAC;IACnD,uBAAuB;IACvB,IAAI,OAAO,KAAK,GAAG,EAAE;QACnB,MAAM,WAAW,GAAG,IAAA,mCAAc,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,WAAW,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,IAAI,IAAA,0CAAqB,EAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YACrF,OAAO,YAAY,CAAC;SACrB;KACF;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAZD,gDAYC","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 { getTabLocation, isHorizontalPanelSide, NineZoneContext, TabIdContext } from \"@itwin/appui-layout-react\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\n\r\n/** Returns widget direction.\r\n * I.e. \"horizontal\" when widget is in bottom/top stage panel.\r\n * @alpha\r\n */\r\nexport function useWidgetDirection(): \"horizontal\" | \"vertical\" {\r\n const version = useFrameworkVersion(); // eslint-disable-line deprecation/deprecation\r\n const tabId = React.useContext(TabIdContext);\r\n const nineZone = React.useContext(NineZoneContext);\r\n // istanbul ignore else\r\n if (version === \"2\") {\r\n const tabLocation = getTabLocation(nineZone, tabId);\r\n if (tabLocation && (\"side\" in tabLocation) && isHorizontalPanelSide(tabLocation.side)) {\r\n return \"horizontal\";\r\n }\r\n }\r\n return \"vertical\";\r\n}\r\n"]}
|
|
@@ -26,7 +26,7 @@ function BackstageAppButton(props) {
|
|
|
26
26
|
const backstageLabel = React.useMemo(() => props.label || backstageToggleCommand.tooltip, [backstageToggleCommand.tooltip, props.label]);
|
|
27
27
|
const [icon, setIcon] = React.useState(props.icon ? props.icon : appui_abstract_1.IconSpecUtilities.createWebComponentIconSpec(home_svg_1.default));
|
|
28
28
|
const isInitialMount = React.useRef(true);
|
|
29
|
-
const useSmallAppButton = "1" !== (0, useFrameworkVersion_1.useFrameworkVersion)();
|
|
29
|
+
const useSmallAppButton = "1" !== (0, useFrameworkVersion_1.useFrameworkVersion)(); // eslint-disable-line deprecation/deprecation
|
|
30
30
|
const divClassName = useSmallAppButton ? "uifw-app-button-small" : undefined;
|
|
31
31
|
const { onElementRef, proximityScale } = (0, core_react_1.useWidgetOpacityContext)();
|
|
32
32
|
const ref = React.useRef(null);
|
|
@@ -46,7 +46,7 @@ function BackstageAppButton(props) {
|
|
|
46
46
|
}
|
|
47
47
|
}, [props.icon, onElementRef]);
|
|
48
48
|
let buttonProximityScale;
|
|
49
|
-
if ("1" !== (0, useFrameworkVersion_1.useFrameworkVersion)() && UiShowHideManager_1.UiShowHideManager.useProximityOpacity && !UiFramework_1.UiFramework.isMobile()) {
|
|
49
|
+
if ("1" !== (0, useFrameworkVersion_1.useFrameworkVersion)() && UiShowHideManager_1.UiShowHideManager.useProximityOpacity && !UiFramework_1.UiFramework.isMobile()) { // eslint-disable-line deprecation/deprecation
|
|
50
50
|
buttonProximityScale = proximityScale;
|
|
51
51
|
}
|
|
52
52
|
return (React.createElement("div", { ref: ref, className: divClassName },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackstageAppButton.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BackstageAppButton.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,oEAAkE;AAClE,0DAA0D;AAC1D,kDAAkE;AAClE,kEAAsD;AACtD,oEAAiE;AACjE,sEAAmE;AACnE,gDAA6C;AAC7C,kEAA+D;AAe/D;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,KAA8B;IAC/D,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,mCAAgB,CAAC,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACzH,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACzI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,kCAAiB,CAAC,0BAA0B,CAAC,kBAAa,CAAC,CAAC,CAAC;IAC9H,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,iBAAiB,GAAG,GAAG,KAAK,IAAA,yCAAmB,GAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"BackstageAppButton.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BackstageAppButton.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,oEAAkE;AAClE,0DAA0D;AAC1D,kDAAkE;AAClE,kEAAsD;AACtD,oEAAiE;AACjE,sEAAmE;AACnE,gDAA6C;AAC7C,kEAA+D;AAe/D;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,KAA8B;IAC/D,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,mCAAgB,CAAC,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACzH,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACzI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,kCAAiB,CAAC,0BAA0B,CAAC,kBAAa,CAAC,CAAC,CAAC;IAC9H,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,iBAAiB,GAAG,GAAG,KAAK,IAAA,yCAAmB,GAAE,CAAC,CAAC,8CAA8C;IACvG,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,IAAA,oCAAuB,GAAE,CAAC;IACnE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE/C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACzC,IAAI,KAAK,CAAC,OAAO;YACf,KAAK,CAAC,OAAO,EAAE,CAAC;;YAGhB,sBAAsB,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,YAAY,CAAC,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,kCAAiB,CAAC,0BAA0B,CAAC,kBAAa,CAAC,CAAC,CAAC;SAChG;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAE/B,IAAI,oBAAwC,CAAC;IAE7C,IAAI,GAAG,KAAK,IAAA,yCAAmB,GAAE,IAAI,qCAAiB,CAAC,mBAAmB,IAAI,CAAC,yBAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,8CAA8C;QACrJ,oBAAoB,GAAG,cAAc,CAAC;KACvC;IAED,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY;QACpC,oBAAC,8BAAS,IACR,KAAK,EAAE,iBAAiB,EACxB,cAAc,EAAE,oBAAoB,EACpC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,oBAAC,iBAAI,IAAC,QAAQ,EAAE,IAAI,GAAI,EAC9B,KAAK,EAAE,cAAc,GAAI,CACvB,CACP,CAAC;AACJ,CAAC;AA3CD,gDA2CC","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 widgetIconSvg from \"@bentley/icons-generic/icons/home.svg\";\r\nimport { IconSpecUtilities } from \"@itwin/appui-abstract\";\r\nimport { Icon, useWidgetOpacityContext } from \"@itwin/core-react\";\r\nimport { AppButton } from \"@itwin/appui-layout-react\";\r\nimport { BackstageManager } from \"../backstage/BackstageManager\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\n\r\n/**\r\n * Properties for the [[BackstageAppButton]] React component\r\n * @public\r\n */\r\nexport interface BackstageAppButtonProps {\r\n /** Icon specification for the App button */\r\n icon?: string;\r\n /** If specified overrides the default label shown in tooltip. */\r\n label?: string;\r\n /** If specified overrides the default action that displays the backstage. */\r\n execute?: () => void;\r\n}\r\n\r\n/**\r\n * BackstageAppButton used to toggle display of Backstage and is shown in the corner of the ToolWidget.\r\n * @public\r\n */\r\nexport function BackstageAppButton(props: BackstageAppButtonProps) {\r\n const backstageToggleCommand = React.useMemo(() => BackstageManager.getBackstageToggleCommand(props.icon), [props.icon]);\r\n const backstageLabel = React.useMemo(() => props.label || backstageToggleCommand.tooltip, [backstageToggleCommand.tooltip, props.label]);\r\n const [icon, setIcon] = React.useState(props.icon ? props.icon : IconSpecUtilities.createWebComponentIconSpec(widgetIconSvg));\r\n const isInitialMount = React.useRef(true);\r\n const useSmallAppButton = \"1\" !== useFrameworkVersion(); // eslint-disable-line deprecation/deprecation\r\n const divClassName = useSmallAppButton ? \"uifw-app-button-small\" : undefined;\r\n const { onElementRef, proximityScale } = useWidgetOpacityContext();\r\n const ref = React.useRef<HTMLDivElement>(null);\r\n\r\n const handleClick = React.useCallback(() => {\r\n if (props.execute)\r\n props.execute();\r\n\r\n else\r\n backstageToggleCommand.execute();\r\n }, [backstageToggleCommand, props]);\r\n\r\n React.useEffect(() => {\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n onElementRef(ref);\r\n } else {\r\n setIcon(props.icon ? props.icon : IconSpecUtilities.createWebComponentIconSpec(widgetIconSvg));\r\n }\r\n }, [props.icon, onElementRef]);\r\n\r\n let buttonProximityScale: number | undefined;\r\n\r\n if (\"1\" !== useFrameworkVersion() && UiShowHideManager.useProximityOpacity && !UiFramework.isMobile()) { // eslint-disable-line deprecation/deprecation\r\n buttonProximityScale = proximityScale;\r\n }\r\n\r\n return (\r\n <div ref={ref} className={divClassName}>\r\n <AppButton\r\n small={useSmallAppButton}\r\n mouseProximity={buttonProximityScale}\r\n onClick={handleClick}\r\n icon={<Icon iconSpec={icon} />}\r\n title={backstageLabel} />\r\n </div>\r\n );\r\n}\r\n"]}
|
|
@@ -5,7 +5,7 @@ import * as React from "react";
|
|
|
5
5
|
import { ItemList } from "../shared/ItemMap";
|
|
6
6
|
/** Properties that can be used to append items to the default set of toolbar items of [[DefaultNavigationWidget]].
|
|
7
7
|
* @beta
|
|
8
|
-
* @deprecated
|
|
8
|
+
* @deprecated Use [[BasicNavigationWidget]] instead
|
|
9
9
|
*/
|
|
10
10
|
export interface DefaultNavigationProps {
|
|
11
11
|
/** Item to add before the default items in the horizontal toolbar */
|
|
@@ -20,7 +20,7 @@ export interface DefaultNavigationProps {
|
|
|
20
20
|
/** Default Navigation Widget for zone 3. Provides standard view manipulation tools and displays registered Navigation Aids as corner item.
|
|
21
21
|
* This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.
|
|
22
22
|
* @beta
|
|
23
|
-
* @deprecated use [BasicNavigationWidget]
|
|
23
|
+
* @deprecated use [[BasicNavigationWidget]] instead
|
|
24
24
|
*/
|
|
25
25
|
export declare class DefaultNavigationWidget extends React.Component<DefaultNavigationProps> {
|
|
26
26
|
private _horizontalToolbarItems;
|
|
@@ -29,7 +29,7 @@ export declare class DefaultNavigationWidget extends React.Component<DefaultNavi
|
|
|
29
29
|
}
|
|
30
30
|
/** DefaultNavigationWidget that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.
|
|
31
31
|
* @beta
|
|
32
|
-
* @deprecated use [BasicNavigationWidget]
|
|
32
|
+
* @deprecated use [[BasicNavigationWidget]] instead
|
|
33
33
|
*/
|
|
34
34
|
export declare const IModelConnectedNavigationWidget: import("react-redux").ConnectedComponent<typeof DefaultNavigationWidget, any>;
|
|
35
35
|
//# sourceMappingURL=DefaultNavigationWidget.d.ts.map
|
|
@@ -17,7 +17,7 @@ const NavigationWidget_1 = require("./NavigationWidget");
|
|
|
17
17
|
/** Default Navigation Widget for zone 3. Provides standard view manipulation tools and displays registered Navigation Aids as corner item.
|
|
18
18
|
* This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.
|
|
19
19
|
* @beta
|
|
20
|
-
* @deprecated use [BasicNavigationWidget]
|
|
20
|
+
* @deprecated use [[BasicNavigationWidget]] instead
|
|
21
21
|
*/
|
|
22
22
|
class DefaultNavigationWidget extends React.Component {
|
|
23
23
|
constructor() {
|
|
@@ -59,7 +59,7 @@ class DefaultNavigationWidget extends React.Component {
|
|
|
59
59
|
exports.DefaultNavigationWidget = DefaultNavigationWidget;
|
|
60
60
|
/** DefaultNavigationWidget that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.
|
|
61
61
|
* @beta
|
|
62
|
-
* @deprecated use [BasicNavigationWidget]
|
|
62
|
+
* @deprecated use [[BasicNavigationWidget]] instead
|
|
63
63
|
*/
|
|
64
64
|
exports.IModelConnectedNavigationWidget = (0, connectIModel_1.connectIModelConnection)(null, null)(DefaultNavigationWidget); // eslint-disable-line @typescript-eslint/naming-convention, deprecation/deprecation
|
|
65
65
|
//# sourceMappingURL=DefaultNavigationWidget.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultNavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/DefaultNavigationWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,sEAAyD;AACzD,0DAAiE;AACjE,+CAA6C;AAC7C,gDAA6C;AAC7C,yDAAsD;AAiBtD;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,KAAK,CAAC,SAAiC;IAApF;;QAEU,4BAAuB,GAAG,IAAI,kBAAQ,CAAC;YAC7C,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,eAAe;YACzB,+BAAS,CAAC,eAAe;SAC1B,CAAC,CAAC;QAEK,0BAAqB,GAAG,IAAI,kBAAQ,CAAC;YAC3C,+BAAS,CAAC,eAAe;YACzB,+BAAS,CAAC,uBAAuB;SAClC,CAAC,CAAC;IAwBL,CAAC;IAtBiB,MAAM;QACpB,MAAM,sBAAsB,GAAG,IAAI,kBAAQ,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxG,uBAAuB;QACvB,IAAI,IAAI,CAAC,uBAAuB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAChG,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAExG,MAAM,oBAAoB,GAAG,IAAI,kBAAQ,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClG,uBAAuB;QACvB,IAAI,IAAI,CAAC,qBAAqB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAElG,OAAO,CACL,oBAAC,mCAAgB,CAAC,8CAA8C;YAC9D,eAAe,EAAC,mBAAmB,EACnC,gBAAgB,EAAE,yBAAW,CAAC,mBAAmB,EAAE,EACnD,eAAe,EAAE,sBAAsB,EACvC,aAAa,EAAE,oBAAoB,GACnC,CACH,CAAC;IACJ,CAAC;CACF;AAtCD,0DAsCC;AAED;;;GAGG;AACU,QAAA,+BAA+B,GAAG,IAAA,uCAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,oFAAoF","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 { CoreTools } from \"../tools/CoreToolDefinitions\";\r\nimport { connectIModelConnection } from \"../redux/connectIModel\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { NavigationWidget } from \"./NavigationWidget\";\r\n\r\n/** Properties that can be used to append items to the default set of toolbar items of [[DefaultNavigationWidget]].\r\n * @beta\r\n * @deprecated
|
|
1
|
+
{"version":3,"file":"DefaultNavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/DefaultNavigationWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,sEAAyD;AACzD,0DAAiE;AACjE,+CAA6C;AAC7C,gDAA6C;AAC7C,yDAAsD;AAiBtD;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,KAAK,CAAC,SAAiC;IAApF;;QAEU,4BAAuB,GAAG,IAAI,kBAAQ,CAAC;YAC7C,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,eAAe;YACzB,+BAAS,CAAC,eAAe;SAC1B,CAAC,CAAC;QAEK,0BAAqB,GAAG,IAAI,kBAAQ,CAAC;YAC3C,+BAAS,CAAC,eAAe;YACzB,+BAAS,CAAC,uBAAuB;SAClC,CAAC,CAAC;IAwBL,CAAC;IAtBiB,MAAM;QACpB,MAAM,sBAAsB,GAAG,IAAI,kBAAQ,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxG,uBAAuB;QACvB,IAAI,IAAI,CAAC,uBAAuB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAChG,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB;YAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAExG,MAAM,oBAAoB,GAAG,IAAI,kBAAQ,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClG,uBAAuB;QACvB,IAAI,IAAI,CAAC,qBAAqB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAElG,OAAO,CACL,oBAAC,mCAAgB,CAAC,8CAA8C;YAC9D,eAAe,EAAC,mBAAmB,EACnC,gBAAgB,EAAE,yBAAW,CAAC,mBAAmB,EAAE,EACnD,eAAe,EAAE,sBAAsB,EACvC,aAAa,EAAE,oBAAoB,GACnC,CACH,CAAC;IACJ,CAAC;CACF;AAtCD,0DAsCC;AAED;;;GAGG;AACU,QAAA,+BAA+B,GAAG,IAAA,uCAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,oFAAoF","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 { CoreTools } from \"../tools/CoreToolDefinitions\";\r\nimport { connectIModelConnection } from \"../redux/connectIModel\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { NavigationWidget } from \"./NavigationWidget\";\r\n\r\n/** Properties that can be used to append items to the default set of toolbar items of [[DefaultNavigationWidget]].\r\n * @beta\r\n * @deprecated Use [[BasicNavigationWidget]] instead\r\n */\r\nexport interface DefaultNavigationProps {\r\n /** Item to add before the default items in the horizontal toolbar */\r\n prefixHorizontalItems?: ItemList;\r\n /** Item to add after the default items in the horizontal toolbar */\r\n suffixHorizontalItems?: ItemList;\r\n /** Item to add before the default items in the vertical toolbar */\r\n prefixVerticalItems?: ItemList;\r\n /** Item to add after the default items in the vertical toolbar */\r\n suffixVerticalItems?: ItemList;\r\n}\r\n\r\n/** Default Navigation Widget for zone 3. Provides standard view manipulation tools and displays registered Navigation Aids as corner item.\r\n * This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.\r\n * @beta\r\n * @deprecated use [[BasicNavigationWidget]] instead\r\n */\r\nexport class DefaultNavigationWidget extends React.Component<DefaultNavigationProps> { // eslint-disable-line deprecation/deprecation\r\n\r\n private _horizontalToolbarItems = new ItemList([\r\n CoreTools.rotateViewCommand,\r\n CoreTools.panViewCommand,\r\n CoreTools.fitViewCommand,\r\n CoreTools.windowAreaCommand,\r\n CoreTools.viewUndoCommand,\r\n CoreTools.viewRedoCommand,\r\n ]);\r\n\r\n private _verticalToolbarItems = new ItemList([\r\n CoreTools.walkViewCommand,\r\n CoreTools.toggleCameraViewCommand,\r\n ]);\r\n\r\n public override render() {\r\n const horizontalToolbarItems = new ItemList();\r\n if (this.props.prefixHorizontalItems) horizontalToolbarItems.addItems(this.props.prefixHorizontalItems);\r\n // istanbul ignore else\r\n if (this._horizontalToolbarItems) horizontalToolbarItems.addItems(this._horizontalToolbarItems);\r\n if (this.props.suffixHorizontalItems) horizontalToolbarItems.addItems(this.props.suffixHorizontalItems);\r\n\r\n const verticalToolbarItems = new ItemList();\r\n if (this.props.prefixVerticalItems) verticalToolbarItems.addItems(this.props.prefixVerticalItems);\r\n // istanbul ignore else\r\n if (this._verticalToolbarItems) verticalToolbarItems.addItems(this._verticalToolbarItems);\r\n if (this.props.suffixVerticalItems) verticalToolbarItems.addItems(this.props.suffixVerticalItems);\r\n\r\n return (\r\n <NavigationWidget // eslint-disable-line deprecation/deprecation\r\n navigationAidId=\"CubeNavigationAid\"\r\n iModelConnection={UiFramework.getIModelConnection()}\r\n horizontalItems={horizontalToolbarItems}\r\n verticalItems={verticalToolbarItems}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** DefaultNavigationWidget that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.\r\n * @beta\r\n * @deprecated use [[BasicNavigationWidget]] instead\r\n */\r\nexport const IModelConnectedNavigationWidget = connectIModelConnection(null, null)(DefaultNavigationWidget); // eslint-disable-line @typescript-eslint/naming-convention, deprecation/deprecation\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidget.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 { IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Direction, Tools as NZ_ToolsWidget, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { NavigationAidActivatedEventArgs, NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { NavigationWidgetProps, WidgetType } from \"./WidgetDef\";\r\n\r\n/** Definition of a Navigation Widget normally displayed in the top right zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _navigationAidId: string;\r\n private _imodel: IModelConnection | undefined;\r\n private _navigationAidControl: NavigationAidControl | undefined;\r\n private _reactNode: React.ReactNode;\r\n\r\n constructor(props: NavigationWidgetProps) {\r\n super(props);\r\n\r\n this.widgetType = WidgetType.Navigation;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Left;\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.End; // eslint-disable-line deprecation/deprecation\r\n this._navigationAidId = (props.navigationAidId !== undefined) ? props.navigationAidId : \"\";\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */ \"\";\r\n this.widgetBaseName = `[${activeStageName}]NavigationWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <NavigationWidgetWithDef navigationWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode {\r\n // istanbul ignore if\r\n if (FrontstageManager.isLoading)\r\n return null;\r\n\r\n // istanbul ignore else\r\n if (!this._navigationAidControl && this._navigationAidId) {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n const viewport = activeContentControl ? activeContentControl.viewport : /* istanbul ignore next */ undefined;\r\n\r\n this._navigationAidControl = ConfigurableUiManager.createControl(this._navigationAidId, this._navigationAidId, { imodel: this._imodel, viewport }) as NavigationAidControl;\r\n if (this._navigationAidControl.getType() !== ConfigurableUiControlType.NavigationAid) {\r\n throw new UiError(UiFramework.loggerCategory(this), `renderCornerItem: navigationAidId '${this._navigationAidId}' is registered to a control that is NOT a NavigationAid`);\r\n }\r\n this._navigationAidControl.initialize();\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._navigationAidControl) {\r\n const size = this._navigationAidControl.getSize() || \"64px\";\r\n const divStyle: React.CSSProperties = {\r\n width: size,\r\n height: size,\r\n };\r\n\r\n return (\r\n <div style={divStyle}>\r\n {this._navigationAidControl.reactNode}\r\n </div>\r\n );\r\n }\r\n\r\n // istanbul ignore next\r\n return null;\r\n }\r\n\r\n public updateNavigationAid(navigationAidId: string, imodel?: IModelConnection): void {\r\n this._navigationAidId = navigationAidId;\r\n this._imodel = imodel;\r\n this._navigationAidControl = undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidget]] React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport interface NavigationWidgetPropsEx extends NavigationWidgetProps, CommonProps {\r\n iModelConnection?: IModelConnection;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the Navigation Widget React component.\r\n * @internal\r\n */\r\ninterface NavigationWidgetState {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Navigation Widget React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidget extends React.Component<NavigationWidgetPropsEx, NavigationWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<NavigationWidgetState>;\r\n\r\n constructor(props: NavigationWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { navigationWidgetDef: new NavigationWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** Adds listeners */\r\n public override componentDidMount() {\r\n FrontstageManager.onContentControlActivatedEvent.addListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n /** Removes listeners */\r\n public override componentWillUnmount() {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n private _handleContentControlActivated = (args: ContentControlActivatedEventArgs): void => {\r\n const navigationAidId = args.activeContentControl.navigationAidControl;\r\n setTimeout(() => {\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n });\r\n };\r\n\r\n private _handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs): void => {\r\n setTimeout(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n\r\n // istanbul ignore else\r\n if (activeContentControl && args.viewport === activeContentControl.viewport) {\r\n const navigationAidId = activeContentControl.navigationAidControl;\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n }\r\n });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: NavigationWidgetPropsEx, _prevState: NavigationWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ navigationWidgetDef: new NavigationWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NavigationWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n navigationWidgetDef={this.state.navigationWidgetDef}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetWithDef]] component.\r\n */\r\ninterface Props extends CommonProps {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface NavigationWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Navigation Widget React component that's passed a NavigationWidgetDef.\r\n */\r\nclass NavigationWidgetWithDef extends React.Component<Props, NavigationWidgetWithDefState> {\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem: null };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n private _handleNavigationAidActivatedEvent = (args: NavigationAidActivatedEventArgs): void => {\r\n this.props.navigationWidgetDef.updateNavigationAid(args.navigationAidId, args.iModelConnection);\r\n const navigationAid = this.props.navigationWidgetDef.renderCornerItem();\r\n this.setState({ cornerItem: navigationAid });\r\n };\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.addListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.removeListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget isNavigation\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidget.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 { IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Direction, Tools as NZ_ToolsWidget, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { NavigationAidActivatedEventArgs, NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { NavigationWidgetProps, WidgetType } from \"./WidgetDef\";\r\n\r\n/** Definition of a Navigation Widget normally displayed in the top right zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _navigationAidId: string;\r\n private _imodel: IModelConnection | undefined;\r\n private _navigationAidControl: NavigationAidControl | undefined;\r\n private _reactNode: React.ReactNode;\r\n\r\n constructor(props: NavigationWidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.widgetType = WidgetType.Navigation;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Left;\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.End; // eslint-disable-line deprecation/deprecation\r\n this._navigationAidId = (props.navigationAidId !== undefined) ? props.navigationAidId : \"\";\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */ \"\";\r\n this.widgetBaseName = `[${activeStageName}]NavigationWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <NavigationWidgetWithDef navigationWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode {\r\n // istanbul ignore if\r\n if (FrontstageManager.isLoading)\r\n return null;\r\n\r\n // istanbul ignore else\r\n if (!this._navigationAidControl && this._navigationAidId) {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n const viewport = activeContentControl ? activeContentControl.viewport : /* istanbul ignore next */ undefined;\r\n\r\n this._navigationAidControl = ConfigurableUiManager.createControl(this._navigationAidId, this._navigationAidId, { imodel: this._imodel, viewport }) as NavigationAidControl;\r\n if (this._navigationAidControl.getType() !== ConfigurableUiControlType.NavigationAid) {\r\n throw new UiError(UiFramework.loggerCategory(this), `renderCornerItem: navigationAidId '${this._navigationAidId}' is registered to a control that is NOT a NavigationAid`);\r\n }\r\n this._navigationAidControl.initialize();\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._navigationAidControl) {\r\n const size = this._navigationAidControl.getSize() || \"64px\";\r\n const divStyle: React.CSSProperties = {\r\n width: size,\r\n height: size,\r\n };\r\n\r\n return (\r\n <div style={divStyle}>\r\n {this._navigationAidControl.reactNode}\r\n </div>\r\n );\r\n }\r\n\r\n // istanbul ignore next\r\n return null;\r\n }\r\n\r\n public updateNavigationAid(navigationAidId: string, imodel?: IModelConnection): void {\r\n this._navigationAidId = navigationAidId;\r\n this._imodel = imodel;\r\n this._navigationAidControl = undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidget]] React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport interface NavigationWidgetPropsEx extends NavigationWidgetProps, CommonProps { // eslint-disable-line deprecation/deprecation\r\n iModelConnection?: IModelConnection;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the Navigation Widget React component.\r\n * @internal\r\n */\r\ninterface NavigationWidgetState {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Navigation Widget React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidget extends React.Component<NavigationWidgetPropsEx, NavigationWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<NavigationWidgetState>;\r\n\r\n constructor(props: NavigationWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { navigationWidgetDef: new NavigationWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** Adds listeners */\r\n public override componentDidMount() {\r\n FrontstageManager.onContentControlActivatedEvent.addListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n /** Removes listeners */\r\n public override componentWillUnmount() {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n private _handleContentControlActivated = (args: ContentControlActivatedEventArgs): void => {\r\n const navigationAidId = args.activeContentControl.navigationAidControl;\r\n setTimeout(() => {\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n });\r\n };\r\n\r\n private _handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs): void => {\r\n setTimeout(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n\r\n // istanbul ignore else\r\n if (activeContentControl && args.viewport === activeContentControl.viewport) {\r\n const navigationAidId = activeContentControl.navigationAidControl;\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n }\r\n });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: NavigationWidgetPropsEx, _prevState: NavigationWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ navigationWidgetDef: new NavigationWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NavigationWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n navigationWidgetDef={this.state.navigationWidgetDef}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetWithDef]] component.\r\n */\r\ninterface Props extends CommonProps {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface NavigationWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Navigation Widget React component that's passed a NavigationWidgetDef.\r\n */\r\nclass NavigationWidgetWithDef extends React.Component<Props, NavigationWidgetWithDefState> {\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem: null };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n private _handleNavigationAidActivatedEvent = (args: NavigationAidActivatedEventArgs): void => {\r\n this.props.navigationWidgetDef.updateNavigationAid(args.navigationAidId, args.iModelConnection);\r\n const navigationAid = this.props.navigationWidgetDef.renderCornerItem();\r\n this.setState({ cornerItem: navigationAid });\r\n };\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.addListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.removeListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget isNavigation\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -80,7 +80,7 @@ function NavigationAidHost(props) {
|
|
|
80
80
|
minHeight: props.minHeight ? /* istanbul ignore next */ props.minHeight : "64px",
|
|
81
81
|
};
|
|
82
82
|
// istanbul ignore else
|
|
83
|
-
if ("1" !== (0, useFrameworkVersion_1.useFrameworkVersion)() && UiShowHideManager_1.UiShowHideManager.useProximityOpacity && !UiFramework_1.UiFramework.isMobile()) {
|
|
83
|
+
if ("1" !== (0, useFrameworkVersion_1.useFrameworkVersion)() && UiShowHideManager_1.UiShowHideManager.useProximityOpacity && !UiFramework_1.UiFramework.isMobile()) { // eslint-disable-line deprecation/deprecation
|
|
84
84
|
const navigationAidOpacity = (0.30 * proximityScale) + 0.70;
|
|
85
85
|
divStyle.opacity = `${navigationAidOpacity}`;
|
|
86
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAE/B,4EAA4G;AAC5G,kDAAsI;AACtI,kEAA2D;AAC3D,mFAAgF;AAEhF,sEAAmE;AACnE,uEAAoE;AACpE,sEAAmE;AAEnE,gDAA6C;AAC7C,kEAA+D;AAE/D,SAAS,0BAA0B,CAAC,oBAAgD,EAAE,eAAuB,EAAE,cAA0C;IACvJ,uBAAuB;IACvB,IAAI,CAAC,oBAAoB,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc,KAAK,oBAAoB,CAAC,QAAQ,CAAC;QACjG,OAAO,SAAS,CAAC;IAEnB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,yBAAW,CAAC,mBAAmB,EAAE,CAAC;IACzG,MAAM,oBAAoB,GAAG,6CAAqB,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAyB,CAAC;IAEjJ,oBAAoB,CAAC,UAAU,EAAE,CAAC;IAClC,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAYD;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,KAA6B;IAC7D,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,uCAAkB,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC3H,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,QAAQ,CAAC,CAAC;IAC1I,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAErK,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,uBAAuB;QACvB,MAAM,6BAA6B,GAAG,CAAC,IAAsC,EAAE,EAAE;YAC/E,uBAAuB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACnD,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAC7D,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;QACrE,CAAC,CAAC;QAEF,qCAAiB,CAAC,8BAA8B,CAAC,WAAW,CAAC,6BAA6B,CAAC,CAAC;QAC5F,OAAO,GAAG,EAAE;YACV,qCAAiB,CAAC,8BAA8B,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC;QACjG,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;QAChE,MAAM,OAAO,GAAG,uCAAkB,CAAC,uBAAuB,EAAE,CAAC;QAC7D,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ;YAC7B,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,uBAAuB;QACvB,MAAM,6BAA6B,GAAG,CAAC,IAAuC,EAAE,EAAE;YAChF,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,iDAAuB,CAAC,+BAA+B,CAAC,WAAW,CAAC,6BAA6B,CAAC,CAAC;QACnG,OAAO,GAAG,EAAE;YACV,iDAAuB,CAAC,+BAA+B,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC;QACxG,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,oBAAoB,EAAE,eAAe,EAAE,qBAAqB,CAAC,EAAE,CAAC,oBAAoB,EAAE,eAAe,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAE3M,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE/C,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,IAAA,oCAAuB,GAAE,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,uBAAuB;QACvB,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,YAAY,CAAC,GAAG,CAAC,CAAC;SACnB;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,QAAQ,GAAwB;QACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;QAC7E,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;KACjF,CAAC;IAEF,uBAAuB;IACvB,IAAI,GAAG,KAAK,IAAA,yCAAmB,GAAE,IAAI,qCAAiB,CAAC,mBAAmB,IAAI,CAAC,yBAAW,CAAC,QAAQ,EAAE,EAAE;QACrG,MAAM,oBAAoB,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,GAAG,IAAI,CAAC;QAC5D,QAAQ,CAAC,OAAO,GAAG,GAAG,oBAAoB,EAAE,CAAC;KAC9C;IAED,OAAO,CACL,6BAAK,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAC3B,oBAAoB,IAAI,oBAAoB,CAAC,SAAS,CACnD,CACP,CAAC;AACJ,CAAC;AArED,8CAqEC;AAgBD;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,KAAoC;IAC3E,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC1G,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,6BAAgB,EAAE,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,UAAoC,EAAE,EAAE;QAChF,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACjB,MAAM,cAAc,GAAG,IAAA,gCAAmB,EAAC,UAAU,EAAE,qCAAiB,CAAC,iBAAiB,CAAC,CAAC;IAC5F,0BAA0B;IAC1B,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,aAAjB,iBAAiB,cAAjB,iBAAiB,GAAI,oBAAC,iBAAiB,OAAG,CAAC;IAEjG,OAAO,CACL,oBAAC,iCAAoB,CAAC,QAAQ,IAC5B,KAAK,EAAE;YACL,YAAY,EAAE,cAAc;YAC5B,cAAc;SACf;QAED,oBAAC,mCAAc,IACb,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,eAAe,KAC5B,UAAU,EACd,YAAY,EAAE,qCAAiB,CAAC,sBAAsB,GACtD,CAC4B,CACjC,CAAC;AACJ,CAAC;AA1BD,4DA0BC","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 { ScreenViewport } from \"@itwin/core-frontend\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps, useProximityToMouse, useWidgetOpacityContext, WidgetElementSet, WidgetOpacityContext } from \"@itwin/core-react\";\r\nimport { NavigationArea } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControl, ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\nimport { NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\n\r\nfunction createNavigationAidControl(activeContentControl: ContentControl | undefined, navigationAidId: string, activeViewport: ScreenViewport | undefined): NavigationAidControl | undefined {\r\n // istanbul ignore else\r\n if (!activeContentControl || !navigationAidId || (activeViewport !== activeContentControl.viewport))\r\n return undefined;\r\n\r\n const viewport = activeContentControl.viewport;\r\n const imodel = viewport ? viewport.iModel : /* istanbul ignore next */ UiFramework.getIModelConnection();\r\n const navigationAidControl = ConfigurableUiManager.createControl(navigationAidId, navigationAidId, { imodel, viewport }) as NavigationAidControl;\r\n\r\n navigationAidControl.initialize();\r\n return navigationAidControl;\r\n}\r\n\r\n/** Properties for the [[NavigationAidHost]] React component\r\n * @public\r\n */\r\nexport interface NavigationAidHostProps {\r\n /** Navigation Aid Host minimum width. Defaults to \"64px\". */\r\n minWidth?: string;\r\n /** Navigation Aid Host minimum height. Defaults to \"64px\". */\r\n minHeight?: string;\r\n}\r\n\r\n/**\r\n * NavigationAidHost is a component that hosts a NavigationAid that is specific to the active content control.\r\n * @public\r\n */\r\nexport function NavigationAidHost(props: NavigationAidHostProps) {\r\n const [activeContentControl, setActiveContentControl] = React.useState(() => ContentViewManager.getActiveContentControl());\r\n const [activeContentViewport, setActiveContentViewport] = React.useState(() => /* istanbul ignore next */ activeContentControl?.viewport);\r\n const [navigationAidId, setNavigationAidId] = React.useState(() => activeContentControl ? activeContentControl.navigationAidControl : /* istanbul ignore next */ \"\");\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handleContentControlActivated = (args: ContentControlActivatedEventArgs) => {\r\n setActiveContentControl(args.activeContentControl);\r\n setActiveContentViewport(args.activeContentControl.viewport);\r\n setNavigationAidId(args.activeContentControl.navigationAidControl);\r\n };\r\n\r\n FrontstageManager.onContentControlActivatedEvent.addListener(handleContentControlActivated);\r\n return () => {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(handleContentControlActivated);\r\n };\r\n }, []);\r\n\r\n const [activeViewClass, setActiveViewClass] = React.useState(() => {\r\n const content = ContentViewManager.getActiveContentControl();\r\n if (content && content.viewport)\r\n return content.viewport.view.classFullName;\r\n return \"\";\r\n });\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs) => {\r\n setActiveViewClass(args.newName);\r\n };\r\n\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(handleViewClassFullNameChange);\r\n return () => {\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(handleViewClassFullNameChange);\r\n };\r\n }, [activeViewClass]);\r\n\r\n const navigationAidControl = React.useMemo(() => createNavigationAidControl(activeContentControl, navigationAidId, activeContentViewport), [activeContentControl, navigationAidId, activeContentViewport]);\r\n\r\n const ref = React.useRef<HTMLDivElement>(null);\r\n\r\n const isInitialMount = React.useRef(true);\r\n const { onElementRef, proximityScale } = useWidgetOpacityContext();\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore else\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n onElementRef(ref);\r\n }\r\n }, [onElementRef]);\r\n\r\n const divStyle: React.CSSProperties = {\r\n minWidth: props.minWidth ? /* istanbul ignore next */ props.minWidth : \"64px\",\r\n minHeight: props.minHeight ? /* istanbul ignore next */ props.minHeight : \"64px\",\r\n };\r\n\r\n // istanbul ignore else\r\n if (\"1\" !== useFrameworkVersion() && UiShowHideManager.useProximityOpacity && !UiFramework.isMobile()) {\r\n const navigationAidOpacity = (0.30 * proximityScale) + 0.70;\r\n divStyle.opacity = `${navigationAidOpacity}`;\r\n }\r\n\r\n return (\r\n <div style={divStyle} ref={ref}>\r\n {navigationAidControl && navigationAidControl.reactNode}\r\n </div>\r\n );\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetComposer]] React components\r\n * @public\r\n */\r\nexport interface NavigationWidgetComposerProps extends CommonProps {\r\n /** Optional Horizontal Toolbar */\r\n horizontalToolbar?: React.ReactNode;\r\n /** Optional Vertical Toolbar */\r\n verticalToolbar?: React.ReactNode;\r\n /** Optional Navigation Aid host. If not specified a default host is provided which will use registered Navigation Aids and the active content control to determine which if any Navigation Aid to display. */\r\n navigationAidHost?: React.ReactNode;\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 * Component that Composes a NavigationWidget typically using toolbars generated via [[ToolbarComposer]] class. The Navigation widget is shown in the top right of the content area\r\n * and typically holds tools to visually navigate, orient, and zoom to specific content.\r\n * @public\r\n */\r\nexport function NavigationWidgetComposer(props: NavigationWidgetComposerProps) {\r\n const { navigationAidHost, horizontalToolbar, verticalToolbar, hideNavigationAid, ...otherProps } = props;\r\n const [elementSet] = React.useState(new WidgetElementSet());\r\n const handleChildRef = React.useCallback((elementRef: React.RefObject<Element>) => {\r\n elementSet.add(elementRef);\r\n }, [elementSet]);\r\n const proximityScale = useProximityToMouse(elementSet, UiShowHideManager.snapWidgetOpacity);\r\n /* istanbul ignore next */\r\n const navigationAid = hideNavigationAid ? undefined : navigationAidHost ?? <NavigationAidHost />;\r\n\r\n return (\r\n <WidgetOpacityContext.Provider\r\n value={{\r\n onElementRef: handleChildRef,\r\n proximityScale,\r\n }}\r\n >\r\n <NavigationArea\r\n navigationAid={navigationAid}\r\n horizontalToolbar={horizontalToolbar}\r\n verticalToolbar={verticalToolbar}\r\n {...otherProps}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n </WidgetOpacityContext.Provider>\r\n );\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidgetComposer.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 { ScreenViewport } from \"@itwin/core-frontend\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps, useProximityToMouse, useWidgetOpacityContext, WidgetElementSet, WidgetOpacityContext } from \"@itwin/core-react\";\r\nimport { NavigationArea } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControl, ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { useFrameworkVersion } from \"../hooks/useFrameworkVersion\";\r\nimport { NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\n\r\nfunction createNavigationAidControl(activeContentControl: ContentControl | undefined, navigationAidId: string, activeViewport: ScreenViewport | undefined): NavigationAidControl | undefined {\r\n // istanbul ignore else\r\n if (!activeContentControl || !navigationAidId || (activeViewport !== activeContentControl.viewport))\r\n return undefined;\r\n\r\n const viewport = activeContentControl.viewport;\r\n const imodel = viewport ? viewport.iModel : /* istanbul ignore next */ UiFramework.getIModelConnection();\r\n const navigationAidControl = ConfigurableUiManager.createControl(navigationAidId, navigationAidId, { imodel, viewport }) as NavigationAidControl;\r\n\r\n navigationAidControl.initialize();\r\n return navigationAidControl;\r\n}\r\n\r\n/** Properties for the [[NavigationAidHost]] React component\r\n * @public\r\n */\r\nexport interface NavigationAidHostProps {\r\n /** Navigation Aid Host minimum width. Defaults to \"64px\". */\r\n minWidth?: string;\r\n /** Navigation Aid Host minimum height. Defaults to \"64px\". */\r\n minHeight?: string;\r\n}\r\n\r\n/**\r\n * NavigationAidHost is a component that hosts a NavigationAid that is specific to the active content control.\r\n * @public\r\n */\r\nexport function NavigationAidHost(props: NavigationAidHostProps) {\r\n const [activeContentControl, setActiveContentControl] = React.useState(() => ContentViewManager.getActiveContentControl());\r\n const [activeContentViewport, setActiveContentViewport] = React.useState(() => /* istanbul ignore next */ activeContentControl?.viewport);\r\n const [navigationAidId, setNavigationAidId] = React.useState(() => activeContentControl ? activeContentControl.navigationAidControl : /* istanbul ignore next */ \"\");\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handleContentControlActivated = (args: ContentControlActivatedEventArgs) => {\r\n setActiveContentControl(args.activeContentControl);\r\n setActiveContentViewport(args.activeContentControl.viewport);\r\n setNavigationAidId(args.activeContentControl.navigationAidControl);\r\n };\r\n\r\n FrontstageManager.onContentControlActivatedEvent.addListener(handleContentControlActivated);\r\n return () => {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(handleContentControlActivated);\r\n };\r\n }, []);\r\n\r\n const [activeViewClass, setActiveViewClass] = React.useState(() => {\r\n const content = ContentViewManager.getActiveContentControl();\r\n if (content && content.viewport)\r\n return content.viewport.view.classFullName;\r\n return \"\";\r\n });\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore next\r\n const handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs) => {\r\n setActiveViewClass(args.newName);\r\n };\r\n\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(handleViewClassFullNameChange);\r\n return () => {\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(handleViewClassFullNameChange);\r\n };\r\n }, [activeViewClass]);\r\n\r\n const navigationAidControl = React.useMemo(() => createNavigationAidControl(activeContentControl, navigationAidId, activeContentViewport), [activeContentControl, navigationAidId, activeContentViewport]);\r\n\r\n const ref = React.useRef<HTMLDivElement>(null);\r\n\r\n const isInitialMount = React.useRef(true);\r\n const { onElementRef, proximityScale } = useWidgetOpacityContext();\r\n\r\n React.useEffect(() => {\r\n // istanbul ignore else\r\n if (isInitialMount.current) {\r\n isInitialMount.current = false;\r\n onElementRef(ref);\r\n }\r\n }, [onElementRef]);\r\n\r\n const divStyle: React.CSSProperties = {\r\n minWidth: props.minWidth ? /* istanbul ignore next */ props.minWidth : \"64px\",\r\n minHeight: props.minHeight ? /* istanbul ignore next */ props.minHeight : \"64px\",\r\n };\r\n\r\n // istanbul ignore else\r\n if (\"1\" !== useFrameworkVersion() && UiShowHideManager.useProximityOpacity && !UiFramework.isMobile()) { // eslint-disable-line deprecation/deprecation\r\n const navigationAidOpacity = (0.30 * proximityScale) + 0.70;\r\n divStyle.opacity = `${navigationAidOpacity}`;\r\n }\r\n\r\n return (\r\n <div style={divStyle} ref={ref}>\r\n {navigationAidControl && navigationAidControl.reactNode}\r\n </div>\r\n );\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetComposer]] React components\r\n * @public\r\n */\r\nexport interface NavigationWidgetComposerProps extends CommonProps {\r\n /** Optional Horizontal Toolbar */\r\n horizontalToolbar?: React.ReactNode;\r\n /** Optional Vertical Toolbar */\r\n verticalToolbar?: React.ReactNode;\r\n /** Optional Navigation Aid host. If not specified a default host is provided which will use registered Navigation Aids and the active content control to determine which if any Navigation Aid to display. */\r\n navigationAidHost?: React.ReactNode;\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 * Component that Composes a NavigationWidget typically using toolbars generated via [[ToolbarComposer]] class. The Navigation widget is shown in the top right of the content area\r\n * and typically holds tools to visually navigate, orient, and zoom to specific content.\r\n * @public\r\n */\r\nexport function NavigationWidgetComposer(props: NavigationWidgetComposerProps) {\r\n const { navigationAidHost, horizontalToolbar, verticalToolbar, hideNavigationAid, ...otherProps } = props;\r\n const [elementSet] = React.useState(new WidgetElementSet());\r\n const handleChildRef = React.useCallback((elementRef: React.RefObject<Element>) => {\r\n elementSet.add(elementRef);\r\n }, [elementSet]);\r\n const proximityScale = useProximityToMouse(elementSet, UiShowHideManager.snapWidgetOpacity);\r\n /* istanbul ignore next */\r\n const navigationAid = hideNavigationAid ? undefined : navigationAidHost ?? <NavigationAidHost />;\r\n\r\n return (\r\n <WidgetOpacityContext.Provider\r\n value={{\r\n onElementRef: handleChildRef,\r\n proximityScale,\r\n }}\r\n >\r\n <NavigationArea\r\n navigationAid={navigationAid}\r\n horizontalToolbar={horizontalToolbar}\r\n verticalToolbar={verticalToolbar}\r\n {...otherProps}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n </WidgetOpacityContext.Provider>\r\n );\r\n}\r\n"]}
|
|
@@ -7,7 +7,7 @@ import { ToolbarWidgetDefBase } from "./ToolbarWidgetBase";
|
|
|
7
7
|
import { ToolWidgetProps } from "./WidgetDef";
|
|
8
8
|
/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.
|
|
9
9
|
* @public
|
|
10
|
-
* @deprecated use [ToolWidgetComposer]
|
|
10
|
+
* @deprecated use [[ToolWidgetComposer]] instead
|
|
11
11
|
*/
|
|
12
12
|
export declare class ToolWidgetDef extends ToolbarWidgetDefBase {
|
|
13
13
|
private _appButton;
|
|
@@ -19,7 +19,7 @@ export declare class ToolWidgetDef extends ToolbarWidgetDefBase {
|
|
|
19
19
|
}
|
|
20
20
|
/** Properties for the [[ToolWidget]] React component.
|
|
21
21
|
* @public
|
|
22
|
-
* @deprecated use [ToolWidgetComposer]
|
|
22
|
+
* @deprecated use [[ToolWidgetComposer]] instead
|
|
23
23
|
*/
|
|
24
24
|
export interface ToolWidgetPropsEx extends ToolWidgetProps, CommonProps {
|
|
25
25
|
button?: React.ReactNode;
|
|
@@ -34,7 +34,7 @@ interface ToolWidgetState {
|
|
|
34
34
|
}
|
|
35
35
|
/** ToolWidget React component.
|
|
36
36
|
* @public
|
|
37
|
-
* @deprecated use [ToolWidgetComposer]
|
|
37
|
+
* @deprecated use [[ToolWidgetComposer]] instead
|
|
38
38
|
*/
|
|
39
39
|
export declare class ToolWidget extends React.Component<ToolWidgetPropsEx, ToolWidgetState> {
|
|
40
40
|
/** @internal */
|
|
@@ -18,7 +18,7 @@ const WidgetDef_1 = require("./WidgetDef");
|
|
|
18
18
|
const UiFramework_1 = require("../UiFramework");
|
|
19
19
|
/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.
|
|
20
20
|
* @public
|
|
21
|
-
* @deprecated use [ToolWidgetComposer]
|
|
21
|
+
* @deprecated use [[ToolWidgetComposer]] instead
|
|
22
22
|
*/
|
|
23
23
|
class ToolWidgetDef extends ToolbarWidgetBase_1.ToolbarWidgetDefBase {
|
|
24
24
|
constructor(props) {
|
|
@@ -47,7 +47,7 @@ class ToolWidgetDef extends ToolbarWidgetBase_1.ToolbarWidgetDefBase {
|
|
|
47
47
|
exports.ToolWidgetDef = ToolWidgetDef;
|
|
48
48
|
/** ToolWidget React component.
|
|
49
49
|
* @public
|
|
50
|
-
* @deprecated use [ToolWidgetComposer]
|
|
50
|
+
* @deprecated use [[ToolWidgetComposer]] instead
|
|
51
51
|
*/
|
|
52
52
|
class ToolWidget extends React.Component {
|
|
53
53
|
constructor(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolWidget.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 { CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { AppButton, Direction, Tools as NZ_ToolsWidget } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { ToolWidgetProps, WidgetType } from \"./WidgetDef\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _appButton: CommandItemDef | undefined;\r\n private _reactNode: React.ReactNode;\r\n private _backstageLabel = UiFramework.translate(\"buttons.openBackstageMenu\");\r\n\r\n constructor(props: ToolWidgetProps) {\r\n super(props);\r\n\r\n this._appButton = props.appButton;\r\n\r\n this.widgetType = WidgetType.Tool;\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Right; // eslint-disable-line deprecation/deprecation\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */\"\";\r\n this.widgetBaseName = `[${activeStageName}]ToolWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <ToolWidgetWithDef toolWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode | undefined {\r\n if (this._appButton) {\r\n return (\r\n <AppButton // eslint-disable-line deprecation/deprecation\r\n onClick={this._appButton.execute}\r\n icon={\r\n <Icon iconSpec={this._appButton.iconSpec} />\r\n }\r\n title={this._appButton.tooltip || this._backstageLabel}\r\n />\r\n );\r\n }\r\n\r\n return undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[ToolWidget]] React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport interface ToolWidgetPropsEx extends ToolWidgetProps, CommonProps {\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ToolWidget]] React component.\r\n * @internal\r\n */\r\ninterface ToolWidgetState {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** ToolWidget React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidget extends React.Component<ToolWidgetPropsEx, ToolWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ToolWidgetState>;\r\n\r\n constructor(props: ToolWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { toolWidgetDef: new ToolWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentDidUpdate(prevProps: ToolWidgetPropsEx, _prevState: ToolWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ toolWidgetDef: new ToolWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <ToolWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n toolWidgetDef={this.state.toolWidgetDef}\r\n button={this.props.button}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the Tool Widget React component.\r\n */\r\ninterface Props extends CommonProps {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface ToolWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Tool Widget React component.\r\n */\r\nclass ToolWidgetWithDef extends React.Component<Props, ToolWidgetWithDefState> {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n const cornerItem = (this.props.button !== undefined) ? this.props.button : this.props.toolWidgetDef.renderCornerItem();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolWidget.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 { CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { AppButton, Direction, Tools as NZ_ToolsWidget } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { ToolWidgetProps, WidgetType } from \"./WidgetDef\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use [[ToolWidgetComposer]] instead\r\n */\r\nexport class ToolWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _appButton: CommandItemDef | undefined;\r\n private _reactNode: React.ReactNode;\r\n private _backstageLabel = UiFramework.translate(\"buttons.openBackstageMenu\");\r\n\r\n constructor(props: ToolWidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this._appButton = props.appButton;\r\n\r\n this.widgetType = WidgetType.Tool;\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Right; // eslint-disable-line deprecation/deprecation\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */\"\";\r\n this.widgetBaseName = `[${activeStageName}]ToolWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <ToolWidgetWithDef toolWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode | undefined {\r\n if (this._appButton) {\r\n return (\r\n <AppButton // eslint-disable-line deprecation/deprecation\r\n onClick={this._appButton.execute}\r\n icon={\r\n <Icon iconSpec={this._appButton.iconSpec} />\r\n }\r\n title={this._appButton.tooltip || this._backstageLabel}\r\n />\r\n );\r\n }\r\n\r\n return undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[ToolWidget]] React component.\r\n * @public\r\n * @deprecated use [[ToolWidgetComposer]] instead\r\n */\r\nexport interface ToolWidgetPropsEx extends ToolWidgetProps, CommonProps { // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ToolWidget]] React component.\r\n * @internal\r\n */\r\ninterface ToolWidgetState {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** ToolWidget React component.\r\n * @public\r\n * @deprecated use [[ToolWidgetComposer]] instead\r\n */\r\nexport class ToolWidget extends React.Component<ToolWidgetPropsEx, ToolWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ToolWidgetState>;\r\n\r\n constructor(props: ToolWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { toolWidgetDef: new ToolWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentDidUpdate(prevProps: ToolWidgetPropsEx, _prevState: ToolWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ toolWidgetDef: new ToolWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <ToolWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n toolWidgetDef={this.state.toolWidgetDef}\r\n button={this.props.button}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the Tool Widget React component.\r\n */\r\ninterface Props extends CommonProps {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface ToolWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Tool Widget React component.\r\n */\r\nclass ToolWidgetWithDef extends React.Component<Props, ToolWidgetWithDefState> {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n const cornerItem = (this.props.button !== undefined) ? this.props.button : this.props.toolWidgetDef.renderCornerItem();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -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;;;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
|
+
{"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) { // eslint-disable-line deprecation/deprecation\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"]}
|
|
@@ -5,6 +5,7 @@ import * as React from "react";
|
|
|
5
5
|
import { WidgetProps } from "./WidgetProps";
|
|
6
6
|
/** Widget React component.
|
|
7
7
|
* A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.
|
|
8
|
+
* @deprecated Use [[WidgetConfig]] instead.
|
|
8
9
|
* @public
|
|
9
10
|
*/
|
|
10
11
|
export declare class Widget extends React.Component<WidgetProps> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"Widget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;gBAE1C,KAAK,EAAE,WAAW;IAId,MAAM;CAIvB"}
|
|
@@ -11,6 +11,7 @@ exports.Widget = void 0;
|
|
|
11
11
|
const React = require("react");
|
|
12
12
|
/** Widget React component.
|
|
13
13
|
* A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.
|
|
14
|
+
* @deprecated Use [[WidgetConfig]] instead.
|
|
14
15
|
* @public
|
|
15
16
|
*/
|
|
16
17
|
class Widget extends React.Component {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAG/B
|
|
1
|
+
{"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAG/B;;;;GAIG;AACH,MAAa,MAAO,SAAQ,KAAK,CAAC,SAAsB;IAEtD,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;CAEF;AAVD,wBAUC","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 { WidgetProps } from \"./WidgetProps\";\r\n\r\n/** Widget React component.\r\n * A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.\r\n * @deprecated Use [[WidgetConfig]] instead.\r\n * @public\r\n */\r\nexport class Widget extends React.Component<WidgetProps> { // eslint-disable-line deprecation/deprecation\r\n\r\n constructor(props: WidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n }\r\n\r\n public override render() {\r\n return null;\r\n }\r\n\r\n}\r\n"]}
|