@itwin/appui-react 4.9.0 → 4.10.0-dev.1
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/lib/cjs/appui-react/UiFramework.js +4 -7
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts +4 -2
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +17 -29
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.scss +10 -17
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.scss +2 -0
- package/lib/cjs/appui-react/accudraw/SquareButton.d.ts +3 -1
- package/lib/cjs/appui-react/accudraw/SquareButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/SquareButton.js +1 -4
- package/lib/cjs/appui-react/accudraw/SquareButton.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +1 -2
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +2 -2
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js +19 -15
- package/lib/cjs/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/{configurableui.scss → ConfigurableUiContent.scss} +14 -0
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
- package/lib/cjs/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/TimeTracker.js +1 -2
- package/lib/cjs/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentLayout.js +9 -12
- package/lib/cjs/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/cjs/appui-react/content/DefaultViewOverlay.js +3 -4
- package/lib/cjs/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/cjs/appui-react/content/FloatingViewportContent.js +1 -2
- package/lib/cjs/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js +4 -7
- package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentLayoutManager.js +1 -2
- package/lib/cjs/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/cjs/appui-react/content/InternalContentViewManager.js +2 -2
- package/lib/cjs/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js +10 -12
- package/lib/cjs/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
- package/lib/cjs/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialog.js +3 -6
- package/lib/cjs/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js +2 -3
- package/lib/cjs/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.js +2 -3
- package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +10 -14
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts +2 -4
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.js +2 -3
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalFrontstage.scss +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -3
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
- package/lib/cjs/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
- package/lib/cjs/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useSolarDataProvider.js +8 -13
- package/lib/cjs/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/cjs/appui-react/layout/base/DragManager.js +1 -2
- package/lib/cjs/appui-react/layout/base/DragManager.js.map +1 -1
- package/lib/cjs/appui-react/layout/base/NineZone.js +1 -1
- package/lib/cjs/appui-react/layout/base/NineZone.js.map +1 -1
- package/lib/cjs/appui-react/layout/outline/TabOutline.js +1 -1
- package/lib/cjs/appui-react/layout/outline/TabOutline.js.map +1 -1
- package/lib/cjs/appui-react/layout/outline/WidgetOutline.js +1 -1
- package/lib/cjs/appui-react/layout/outline/WidgetOutline.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js +12 -14
- package/lib/cjs/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
- package/lib/cjs/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
- package/lib/cjs/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
- package/lib/cjs/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
- package/lib/cjs/appui-react/layout/target/TitleBarTarget.js +1 -1
- package/lib/cjs/appui-react/layout/target/TitleBarTarget.js.map +1 -1
- package/lib/cjs/appui-react/layout/tool-settings/Docked.scss +1 -1
- package/lib/cjs/appui-react/layout/widget/Button.d.ts +2 -9
- package/lib/cjs/appui-react/layout/widget/Button.d.ts.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Button.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/ContentRenderer.js +2 -2
- package/lib/cjs/appui-react/layout/widget/ContentRenderer.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/FloatingTab.js +5 -6
- package/lib/cjs/appui-react/layout/widget/FloatingTab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/FloatingWidget.js +2 -4
- package/lib/cjs/appui-react/layout/widget/FloatingWidget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/PanelWidget.js +1 -1
- package/lib/cjs/appui-react/layout/widget/PanelWidget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js +1 -1
- package/lib/cjs/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Tab.js +4 -4
- package/lib/cjs/appui-react/layout/widget/Tab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/Widget.js +2 -2
- package/lib/cjs/appui-react/layout/widget/Widget.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
- package/lib/cjs/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js +5 -8
- package/lib/cjs/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
- package/lib/cjs/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/InputField.js +2 -3
- package/lib/cjs/appui-react/messages/InputField.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageLabel.js +2 -2
- package/lib/cjs/appui-react/messages/MessageLabel.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.d.ts +15 -5
- package/lib/cjs/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js +23 -41
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageRenderer.d.ts +8 -0
- package/lib/cjs/appui-react/messages/MessageRenderer.d.ts.map +1 -0
- package/lib/cjs/appui-react/messages/MessageRenderer.js +136 -0
- package/lib/cjs/appui-react/messages/MessageRenderer.js.map +1 -0
- package/lib/cjs/appui-react/messages/Pointer.d.ts +2 -2
- package/lib/cjs/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/cjs/appui-react/messages/Pointer.js +5 -6
- package/lib/cjs/appui-react/messages/Pointer.js.map +1 -1
- package/lib/cjs/appui-react/messages/getToastCategory.d.ts +1 -1
- package/lib/cjs/appui-react/pickers/ViewSelector.js +5 -6
- package/lib/cjs/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/CardPopup.js +1 -2
- package/lib/cjs/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
- package/lib/cjs/appui-react/popup/HTMLElementPopup.js +1 -2
- package/lib/cjs/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -2
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/cjs/appui-react/popup/PopupManager.js +1 -2
- package/lib/cjs/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/cjs/appui-react/preview/PreviewFeatures.js +1 -1
- package/lib/cjs/appui-react/preview/PreviewFeatures.js.map +1 -1
- package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
- package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
- package/lib/cjs/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js +2 -2
- package/lib/cjs/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/cjs/appui-react/settings/quantityformatting/QuantityFormat.scss +1 -4
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +11 -16
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/Indicator.js +1 -2
- package/lib/cjs/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBar.js +3 -5
- package/lib/cjs/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/MessageCenter.js +5 -4
- package/lib/cjs/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.scss +1 -3
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +3 -2
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +3 -12
- package/lib/cjs/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js +3 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js +6 -4
- package/lib/cjs/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
- package/lib/cjs/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js +18 -25
- package/lib/cjs/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
- package/lib/cjs/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +8 -14
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
- package/lib/cjs/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js +1 -1
- package/lib/cjs/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts +1 -0
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js +19 -16
- package/lib/cjs/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Content.js +8 -9
- package/lib/cjs/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +10 -14
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Tab.js +1 -1
- package/lib/cjs/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js +15 -23
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.js +2 -3
- package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js +2 -2
- package/lib/cjs/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +4 -5
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.js +2 -3
- package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/cjs/appui-react/widgets/useWidget.js +1 -1
- package/lib/cjs/appui-react/widgets/useWidget.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +4 -7
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts +4 -2
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +17 -29
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.scss +10 -17
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.scss +2 -0
- package/lib/esm/appui-react/accudraw/SquareButton.d.ts +3 -1
- package/lib/esm/appui-react/accudraw/SquareButton.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/SquareButton.js +1 -4
- package/lib/esm/appui-react/accudraw/SquareButton.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js +1 -2
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +2 -2
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js +19 -15
- package/lib/esm/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/esm/appui-react/configurableui/{configurableui.scss → ConfigurableUiContent.scss} +14 -0
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js +1 -1
- package/lib/esm/appui-react/configurableui/InternalConfigurableUiManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/TimeTracker.js +1 -2
- package/lib/esm/appui-react/configurableui/TimeTracker.js.map +1 -1
- package/lib/esm/appui-react/content/ContentLayout.js +9 -12
- package/lib/esm/appui-react/content/ContentLayout.js.map +1 -1
- package/lib/esm/appui-react/content/DefaultViewOverlay.js +3 -4
- package/lib/esm/appui-react/content/DefaultViewOverlay.js.map +1 -1
- package/lib/esm/appui-react/content/FloatingViewportContent.js +1 -2
- package/lib/esm/appui-react/content/FloatingViewportContent.js.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js +4 -7
- package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentLayoutManager.js +1 -2
- package/lib/esm/appui-react/content/InternalContentLayoutManager.js.map +1 -1
- package/lib/esm/appui-react/content/InternalContentViewManager.js +2 -2
- package/lib/esm/appui-react/content/InternalContentViewManager.js.map +1 -1
- package/lib/esm/appui-react/content/split-pane/SplitPane.js +10 -12
- package/lib/esm/appui-react/content/split-pane/SplitPane.js.map +1 -1
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js +2 -3
- package/lib/esm/appui-react/cursor/cursormenu/CursorMenu.js.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialog.js +3 -6
- package/lib/esm/appui-react/dialog/ContentDialog.js.map +1 -1
- package/lib/esm/appui-react/dialog/DialogManagerBase.js +2 -3
- package/lib/esm/appui-react/dialog/DialogManagerBase.js.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.js +3 -4
- package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +10 -14
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts +2 -4
- package/lib/esm/appui-react/frontstage/ModalFrontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.js +2 -3
- package/lib/esm/appui-react/frontstage/ModalFrontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalFrontstage.scss +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -3
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +1 -2
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js +7 -11
- package/lib/esm/appui-react/hooks/useAnalysisAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js +7 -11
- package/lib/esm/appui-react/hooks/useScheduleAnimationDataProvider.js.map +1 -1
- package/lib/esm/appui-react/hooks/useSolarDataProvider.js +8 -13
- package/lib/esm/appui-react/hooks/useSolarDataProvider.js.map +1 -1
- package/lib/esm/appui-react/layout/base/DragManager.js +1 -2
- package/lib/esm/appui-react/layout/base/DragManager.js.map +1 -1
- package/lib/esm/appui-react/layout/base/NineZone.js +1 -1
- package/lib/esm/appui-react/layout/base/NineZone.js.map +1 -1
- package/lib/esm/appui-react/layout/outline/TabOutline.js +1 -1
- package/lib/esm/appui-react/layout/outline/TabOutline.js.map +1 -1
- package/lib/esm/appui-react/layout/outline/WidgetOutline.js +1 -1
- package/lib/esm/appui-react/layout/outline/WidgetOutline.js.map +1 -1
- package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js +12 -14
- package/lib/esm/appui-react/layout/state/NineZoneStateReducer.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js +1 -2
- package/lib/esm/appui-react/layout/state/internal/NineZoneStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js +2 -3
- package/lib/esm/appui-react/layout/state/internal/TabStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js +4 -4
- package/lib/esm/appui-react/layout/state/internal/WidgetStateHelpers.js.map +1 -1
- package/lib/esm/appui-react/layout/target/TitleBarTarget.js +1 -1
- package/lib/esm/appui-react/layout/target/TitleBarTarget.js.map +1 -1
- package/lib/esm/appui-react/layout/tool-settings/Docked.scss +1 -1
- package/lib/esm/appui-react/layout/widget/Button.d.ts +2 -9
- package/lib/esm/appui-react/layout/widget/Button.d.ts.map +1 -1
- package/lib/esm/appui-react/layout/widget/Button.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/ContentRenderer.js +2 -2
- package/lib/esm/appui-react/layout/widget/ContentRenderer.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/FloatingTab.js +5 -6
- package/lib/esm/appui-react/layout/widget/FloatingTab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/FloatingWidget.js +2 -4
- package/lib/esm/appui-react/layout/widget/FloatingWidget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/PanelWidget.js +1 -1
- package/lib/esm/appui-react/layout/widget/PanelWidget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js +1 -1
- package/lib/esm/appui-react/layout/widget/PreviewHorizontalPanelAlign.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/Tab.js +4 -4
- package/lib/esm/appui-react/layout/widget/Tab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/Widget.js +2 -2
- package/lib/esm/appui-react/layout/widget/Widget.js.map +1 -1
- package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js +1 -1
- package/lib/esm/appui-react/layout/widget/useIsToolSettingsTab.js.map +1 -1
- package/lib/esm/appui-react/layout/widget-panels/PanelSections.js +5 -8
- package/lib/esm/appui-react/layout/widget-panels/PanelSections.js.map +1 -1
- package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js +1 -2
- package/lib/esm/appui-react/layout/widget-panels/useAnimatePanel.js.map +1 -1
- package/lib/esm/appui-react/messages/InputField.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/InputField.js +3 -4
- package/lib/esm/appui-react/messages/InputField.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageLabel.js +2 -2
- package/lib/esm/appui-react/messages/MessageLabel.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.d.ts +15 -5
- package/lib/esm/appui-react/messages/MessageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js +23 -41
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageRenderer.d.ts +8 -0
- package/lib/esm/appui-react/messages/MessageRenderer.d.ts.map +1 -0
- package/lib/esm/appui-react/messages/MessageRenderer.js +132 -0
- package/lib/esm/appui-react/messages/MessageRenderer.js.map +1 -0
- package/lib/esm/appui-react/messages/Pointer.d.ts +2 -2
- package/lib/esm/appui-react/messages/Pointer.d.ts.map +1 -1
- package/lib/esm/appui-react/messages/Pointer.js +6 -7
- package/lib/esm/appui-react/messages/Pointer.js.map +1 -1
- package/lib/esm/appui-react/messages/getToastCategory.d.ts +1 -1
- package/lib/esm/appui-react/pickers/ViewSelector.js +5 -6
- package/lib/esm/appui-react/pickers/ViewSelector.js.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/CardPopup.js +2 -3
- package/lib/esm/appui-react/popup/CardPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/HTMLElementPopup.d.ts.map +1 -1
- package/lib/esm/appui-react/popup/HTMLElementPopup.js +2 -3
- package/lib/esm/appui-react/popup/HTMLElementPopup.js.map +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -2
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/esm/appui-react/popup/PopupManager.js +1 -2
- package/lib/esm/appui-react/popup/PopupManager.js.map +1 -1
- package/lib/esm/appui-react/preview/PreviewFeatures.js +1 -1
- package/lib/esm/appui-react/preview/PreviewFeatures.js.map +1 -1
- package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
- package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js +5 -5
- package/lib/esm/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js +2 -2
- package/lib/esm/appui-react/selection/SelectionContextItemDef.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js +2 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.js.map +1 -1
- package/lib/esm/appui-react/settings/quantityformatting/QuantityFormat.scss +1 -4
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +11 -16
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/statusbar/Indicator.js +1 -2
- package/lib/esm/appui-react/statusbar/Indicator.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBar.js +3 -5
- package/lib/esm/appui-react/statusbar/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/MessageCenter.js +6 -5
- package/lib/esm/appui-react/statusfields/MessageCenter.js.map +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.scss +1 -3
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js +1 -1
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.js.map +1 -1
- package/lib/esm/appui-react/statusfields/tileloading/TileLoadingIndicator.scss +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +3 -2
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.scss +3 -12
- package/lib/esm/appui-react/theme/ThemeManager.d.ts.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js +3 -1
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js +6 -4
- package/lib/esm/appui-react/toolbar/ToolbarHelper.js.map +1 -1
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js +3 -4
- package/lib/esm/appui-react/toolbar/useUiItemsProviderToolbarItems.js.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.d.ts.map +1 -1
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js +15 -22
- package/lib/esm/appui-react/tools/CoreToolDefinitions.js.map +1 -1
- package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js +3 -2
- package/lib/esm/appui-react/toolsettings/DefaultToolSettingsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +20 -22
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +9 -10
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +1 -2
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +8 -14
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js +1 -1
- package/lib/esm/appui-react/uiadmin/FrameworkUiAdmin.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.js +1 -1
- package/lib/esm/appui-react/uiprovider/ComponentGenerator.js.map +1 -1
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts +1 -0
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.js +19 -16
- package/lib/esm/appui-react/utils/InternalUiShowHideManager.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Content.js +8 -9
- package/lib/esm/appui-react/widget-panels/Content.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +10 -14
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Tab.js +1 -1
- package/lib/esm/appui-react/widget-panels/Tab.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.js +15 -23
- package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.scss +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.js +2 -3
- package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js +2 -2
- package/lib/esm/appui-react/widgets/NavigationWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +4 -5
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.js +2 -3
- package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/esm/appui-react/widgets/useWidget.js +1 -1
- package/lib/esm/appui-react/widgets/useWidget.js.map +1 -1
- package/package.json +12 -14
- package/lib/cjs/appui-react/messages/ActivityMessage.d.ts +0 -10
- package/lib/cjs/appui-react/messages/ActivityMessage.d.ts.map +0 -1
- package/lib/cjs/appui-react/messages/ActivityMessage.js +0 -92
- package/lib/cjs/appui-react/messages/ActivityMessage.js.map +0 -1
- package/lib/cjs/appui-react/messages/MessageSpan.d.ts +0 -15
- package/lib/cjs/appui-react/messages/MessageSpan.d.ts.map +0 -1
- package/lib/cjs/appui-react/messages/MessageSpan.js +0 -23
- package/lib/cjs/appui-react/messages/MessageSpan.js.map +0 -1
- package/lib/esm/appui-react/messages/ActivityMessage.d.ts +0 -10
- package/lib/esm/appui-react/messages/ActivityMessage.d.ts.map +0 -1
- package/lib/esm/appui-react/messages/ActivityMessage.js +0 -88
- package/lib/esm/appui-react/messages/ActivityMessage.js.map +0 -1
- package/lib/esm/appui-react/messages/MessageSpan.d.ts +0 -15
- package/lib/esm/appui-react/messages/MessageSpan.d.ts.map +0 -1
- package/lib/esm/appui-react/messages/MessageSpan.js +0 -18
- package/lib/esm/appui-react/messages/MessageSpan.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidgetComposer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport type { ScreenViewport } from \"@itwin/core-frontend\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport {\n useProximityToMouse,\n useWidgetOpacityContext,\n WidgetElementSet,\n WidgetOpacityContext,\n} from \"@itwin/core-react\";\nimport type { ViewClassFullNameChangedEventArgs } from \"@itwin/imodel-components-react\";\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\nimport * as React from \"react\";\nimport type {\n ContentControl,\n ContentControlActivatedEventArgs,\n} from \"../content/ContentControl\";\nimport { NavigationArea } from \"../layout/widget/NavigationArea\";\nimport type { NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\nimport { UiFramework } from \"../UiFramework\";\n\nfunction createNavigationAidControl(\n activeContentControl: ContentControl | undefined,\n navigationAidId: string,\n activeViewport: ScreenViewport | undefined\n): NavigationAidControl | undefined {\n // istanbul ignore else\n if (\n !activeContentControl ||\n !navigationAidId ||\n activeViewport !== activeContentControl.viewport\n )\n return undefined;\n\n const viewport = activeContentControl.viewport;\n const imodel = viewport\n ? viewport.iModel\n : /* istanbul ignore next */ UiFramework.getIModelConnection();\n const navigationAidControl = UiFramework.controls.create(\n navigationAidId,\n navigationAidId,\n { imodel, viewport }\n ) as NavigationAidControl;\n\n navigationAidControl.initialize();\n return navigationAidControl;\n}\n\n/** Properties for the [[NavigationAidHost]] React component\n * @public\n */\nexport interface NavigationAidHostProps {\n /** Navigation Aid Host minimum width. Defaults to \"64px\". */\n minWidth?: string;\n /** Navigation Aid Host minimum height. Defaults to \"64px\". */\n minHeight?: string;\n}\n\n/**\n * NavigationAidHost is a component that hosts a NavigationAid that is specific to the active content control.\n * @public\n */\nexport function NavigationAidHost(props: NavigationAidHostProps) {\n const [activeContentControl, setActiveContentControl] = React.useState(() =>\n UiFramework.content.getActiveContentControl()\n );\n const [activeContentViewport, setActiveContentViewport] = React.useState(\n () => /* istanbul ignore next */ activeContentControl?.viewport\n );\n const [navigationAidId, setNavigationAidId] = React.useState(() =>\n activeContentControl\n ? activeContentControl.navigationAidControl\n : /* istanbul ignore next */ \"\"\n );\n\n React.useEffect(() => {\n // istanbul ignore next\n const handleContentControlActivated = (\n args: ContentControlActivatedEventArgs\n ) => {\n setActiveContentControl(args.activeContentControl);\n setActiveContentViewport(args.activeContentControl.viewport);\n setNavigationAidId(args.activeContentControl.navigationAidControl);\n };\n\n UiFramework.frontstages.onContentControlActivatedEvent.addListener(\n handleContentControlActivated\n );\n return () => {\n UiFramework.frontstages.onContentControlActivatedEvent.removeListener(\n handleContentControlActivated\n );\n };\n }, []);\n\n const [activeViewClass, setActiveViewClass] = React.useState(() => {\n const content = UiFramework.content.getActiveContentControl();\n if (content && content.viewport) return content.viewport.view.classFullName;\n return \"\";\n });\n\n React.useEffect(() => {\n // istanbul ignore next\n const handleViewClassFullNameChange = (\n args: ViewClassFullNameChangedEventArgs\n ) => {\n setActiveViewClass(args.newName);\n };\n\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(\n handleViewClassFullNameChange\n );\n return () => {\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(\n handleViewClassFullNameChange\n );\n };\n }, [activeViewClass]);\n\n const navigationAidControl = React.useMemo(\n () =>\n createNavigationAidControl(\n activeContentControl,\n navigationAidId,\n activeContentViewport\n ),\n [activeContentControl, navigationAidId, activeContentViewport]\n );\n\n const ref = React.useRef<HTMLDivElement>(null);\n\n const isInitialMount = React.useRef(true);\n const { onElementRef, proximityScale } = useWidgetOpacityContext();\n\n React.useEffect(() => {\n // istanbul ignore else\n if (isInitialMount.current) {\n isInitialMount.current = false;\n onElementRef(ref);\n }\n }, [onElementRef]);\n\n const divStyle: React.CSSProperties = {\n minWidth: props.minWidth\n ? /* istanbul ignore next */ props.minWidth\n : \"64px\",\n minHeight: props.minHeight\n ? /* istanbul ignore next */ props.minHeight\n : \"64px\",\n };\n\n // istanbul ignore else\n if (UiFramework.visibility.useProximityOpacity && !UiFramework.isMobile()) {\n const navigationAidOpacity = 0.3 * proximityScale + 0.7;\n divStyle.opacity = `${navigationAidOpacity}`;\n }\n\n return (\n <div style={divStyle} ref={ref}>\n {navigationAidControl && navigationAidControl.reactNode}\n </div>\n );\n}\n\n/** Properties for the [[NavigationWidgetComposer]] React components\n * @public\n */\nexport interface NavigationWidgetComposerProps extends CommonProps {\n /** Optional Horizontal Toolbar */\n horizontalToolbar?: React.ReactNode;\n /** Optional Vertical Toolbar */\n verticalToolbar?: React.ReactNode;\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. */\n navigationAidHost?: React.ReactNode;\n /** If true no navigation aid will be shown. Defaults to false. */\n hideNavigationAid?: boolean;\n}\n\n/**\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\n * and typically holds tools to visually navigate, orient, and zoom to specific content.\n * @public\n */\nexport function NavigationWidgetComposer(props: NavigationWidgetComposerProps) {\n const {\n navigationAidHost,\n horizontalToolbar,\n verticalToolbar,\n hideNavigationAid,\n ...otherProps\n } = props;\n const [elementSet] = React.useState(new WidgetElementSet());\n const handleChildRef = React.useCallback(\n (elementRef: React.RefObject<Element>) => {\n elementSet.add(elementRef);\n },\n [elementSet]\n );\n const proximityScale = useProximityToMouse(\n elementSet,\n UiFramework.visibility.snapWidgetOpacity\n );\n /* istanbul ignore next */\n const navigationAid = hideNavigationAid\n ? undefined\n : navigationAidHost ?? <NavigationAidHost />;\n\n return (\n <WidgetOpacityContext.Provider\n value={{\n onElementRef: handleChildRef,\n proximityScale,\n }}\n >\n <NavigationArea\n navigationAid={navigationAid}\n horizontalToolbar={horizontalToolbar}\n verticalToolbar={verticalToolbar}\n {...otherProps}\n onMouseEnter={UiFramework.visibility.handleWidgetMouseEnter}\n />\n </WidgetOpacityContext.Provider>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidgetComposer.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport type { ScreenViewport } from \"@itwin/core-frontend\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport {\n useProximityToMouse,\n useWidgetOpacityContext,\n WidgetElementSet,\n WidgetOpacityContext,\n} from \"@itwin/core-react\";\nimport type { ViewClassFullNameChangedEventArgs } from \"@itwin/imodel-components-react\";\nimport { ViewportComponentEvents } from \"@itwin/imodel-components-react\";\nimport * as React from \"react\";\nimport type {\n ContentControl,\n ContentControlActivatedEventArgs,\n} from \"../content/ContentControl\";\nimport { NavigationArea } from \"../layout/widget/NavigationArea\";\nimport type { NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\nimport { UiFramework } from \"../UiFramework\";\n\nfunction createNavigationAidControl(\n activeContentControl: ContentControl | undefined,\n navigationAidId: string,\n activeViewport: ScreenViewport | undefined\n): NavigationAidControl | undefined {\n // istanbul ignore else\n if (\n !activeContentControl ||\n !navigationAidId ||\n activeViewport !== activeContentControl.viewport\n )\n return undefined;\n\n const viewport = activeContentControl.viewport;\n const imodel = viewport\n ? viewport.iModel\n : /* istanbul ignore next */ UiFramework.getIModelConnection();\n const navigationAidControl = UiFramework.controls.create(\n navigationAidId,\n navigationAidId,\n { imodel, viewport }\n ) as NavigationAidControl;\n\n navigationAidControl.initialize();\n return navigationAidControl;\n}\n\n/** Properties for the [[NavigationAidHost]] React component\n * @public\n */\nexport interface NavigationAidHostProps {\n /** Navigation Aid Host minimum width. Defaults to \"64px\". */\n minWidth?: string;\n /** Navigation Aid Host minimum height. Defaults to \"64px\". */\n minHeight?: string;\n}\n\n/**\n * NavigationAidHost is a component that hosts a NavigationAid that is specific to the active content control.\n * @public\n */\nexport function NavigationAidHost(props: NavigationAidHostProps) {\n const [activeContentControl, setActiveContentControl] = React.useState(() =>\n UiFramework.content.getActiveContentControl()\n );\n const [activeContentViewport, setActiveContentViewport] = React.useState(\n () => /* istanbul ignore next */ activeContentControl?.viewport\n );\n const [navigationAidId, setNavigationAidId] = React.useState(() =>\n activeContentControl\n ? activeContentControl.navigationAidControl\n : /* istanbul ignore next */ \"\"\n );\n\n React.useEffect(() => {\n // istanbul ignore next\n const handleContentControlActivated = (\n args: ContentControlActivatedEventArgs\n ) => {\n setActiveContentControl(args.activeContentControl);\n setActiveContentViewport(args.activeContentControl.viewport);\n setNavigationAidId(args.activeContentControl.navigationAidControl);\n };\n\n UiFramework.frontstages.onContentControlActivatedEvent.addListener(\n handleContentControlActivated\n );\n return () => {\n UiFramework.frontstages.onContentControlActivatedEvent.removeListener(\n handleContentControlActivated\n );\n };\n }, []);\n\n const [activeViewClass, setActiveViewClass] = React.useState(() => {\n const content = UiFramework.content.getActiveContentControl();\n if (content && content.viewport) return content.viewport.view.classFullName;\n return \"\";\n });\n\n React.useEffect(() => {\n // istanbul ignore next\n const handleViewClassFullNameChange = (\n args: ViewClassFullNameChangedEventArgs\n ) => {\n setActiveViewClass(args.newName);\n };\n\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(\n handleViewClassFullNameChange\n );\n return () => {\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(\n handleViewClassFullNameChange\n );\n };\n }, [activeViewClass]);\n\n const navigationAidControl = React.useMemo(\n () =>\n createNavigationAidControl(\n activeContentControl,\n navigationAidId,\n activeContentViewport\n ),\n [activeContentControl, navigationAidId, activeContentViewport]\n );\n\n const ref = React.useRef<HTMLDivElement>(null);\n\n const isInitialMount = React.useRef(true);\n const { onElementRef, proximityScale } = useWidgetOpacityContext();\n\n React.useEffect(() => {\n // istanbul ignore else\n if (isInitialMount.current) {\n isInitialMount.current = false;\n onElementRef(ref);\n }\n }, [onElementRef]);\n\n const divStyle: React.CSSProperties = {\n minWidth: props.minWidth\n ? /* istanbul ignore next */ props.minWidth\n : \"64px\",\n minHeight: props.minHeight\n ? /* istanbul ignore next */ props.minHeight\n : \"64px\",\n };\n\n // istanbul ignore else\n if (UiFramework.visibility.useProximityOpacity && !UiFramework.isMobile()) {\n const navigationAidOpacity = 0.3 * proximityScale + 0.7;\n divStyle.opacity = `${navigationAidOpacity}`;\n }\n\n return (\n <div style={divStyle} ref={ref}>\n {navigationAidControl && navigationAidControl.reactNode}\n </div>\n );\n}\n\n/** Properties for the [[NavigationWidgetComposer]] React components\n * @public\n */\nexport interface NavigationWidgetComposerProps extends CommonProps {\n /** Optional Horizontal Toolbar */\n horizontalToolbar?: React.ReactNode;\n /** Optional Vertical Toolbar */\n verticalToolbar?: React.ReactNode;\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. */\n navigationAidHost?: React.ReactNode;\n /** If true no navigation aid will be shown. Defaults to false. */\n hideNavigationAid?: boolean;\n}\n\n/**\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\n * and typically holds tools to visually navigate, orient, and zoom to specific content.\n * @public\n */\nexport function NavigationWidgetComposer(props: NavigationWidgetComposerProps) {\n const {\n navigationAidHost,\n horizontalToolbar,\n verticalToolbar,\n hideNavigationAid,\n ...otherProps\n } = props;\n const [elementSet] = React.useState(new WidgetElementSet());\n const handleChildRef = React.useCallback(\n (elementRef: React.RefObject<Element>) => {\n elementSet.add(elementRef);\n },\n [elementSet]\n );\n const proximityScale = useProximityToMouse(\n elementSet,\n UiFramework.visibility.snapWidgetOpacity\n );\n /* istanbul ignore next */\n const navigationAid = hideNavigationAid\n ? undefined\n : navigationAidHost ?? <NavigationAidHost />;\n\n return (\n <WidgetOpacityContext.Provider\n value={{\n onElementRef: handleChildRef,\n proximityScale,\n }}\n >\n <NavigationArea\n navigationAid={navigationAid}\n horizontalToolbar={horizontalToolbar}\n verticalToolbar={verticalToolbar}\n {...otherProps}\n onMouseEnter={UiFramework.visibility.handleWidgetMouseEnter}\n />\n </WidgetOpacityContext.Provider>\n );\n}\n"]}
|
|
@@ -67,8 +67,7 @@ class WidgetDef {
|
|
|
67
67
|
return !!canFloat;
|
|
68
68
|
}
|
|
69
69
|
get isFloatingStateWindowResizable() {
|
|
70
|
-
|
|
71
|
-
const canFloat = (_a = this.initialConfig) === null || _a === void 0 ? void 0 : _a.canFloat;
|
|
70
|
+
const canFloat = this.initialConfig?.canFloat;
|
|
72
71
|
if (typeof canFloat === "object") {
|
|
73
72
|
return canFloat.isResizable === undefined ? true : canFloat.isResizable;
|
|
74
73
|
}
|
|
@@ -279,7 +278,7 @@ class WidgetDef {
|
|
|
279
278
|
}
|
|
280
279
|
setWidgetState(newState) {
|
|
281
280
|
const frontstageDef = UiFramework.frontstages.activeFrontstageDef;
|
|
282
|
-
const state = frontstageDef
|
|
281
|
+
const state = frontstageDef?.nineZoneState;
|
|
283
282
|
if (!state || this.isStatusBar)
|
|
284
283
|
return;
|
|
285
284
|
if (!frontstageDef.findWidgetDef(this.id))
|
|
@@ -397,7 +396,7 @@ class WidgetDef {
|
|
|
397
396
|
*/
|
|
398
397
|
show() {
|
|
399
398
|
const frontstageDef = UiFramework.frontstages.activeFrontstageDef;
|
|
400
|
-
const state = frontstageDef
|
|
399
|
+
const state = frontstageDef?.nineZoneState;
|
|
401
400
|
if (!state)
|
|
402
401
|
return;
|
|
403
402
|
if (!frontstageDef.findWidgetDef(this.id))
|
|
@@ -412,7 +411,7 @@ class WidgetDef {
|
|
|
412
411
|
*/
|
|
413
412
|
expand() {
|
|
414
413
|
const frontstageDef = UiFramework.frontstages.activeFrontstageDef;
|
|
415
|
-
const state = frontstageDef
|
|
414
|
+
const state = frontstageDef?.nineZoneState;
|
|
416
415
|
if (!state)
|
|
417
416
|
return;
|
|
418
417
|
if (!frontstageDef.findWidgetDef(this.id))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport type * as React from \"react\";\nimport type {\n BadgeType,\n ConditionalStringValue,\n StringGetter,\n} from \"@itwin/appui-abstract\";\nimport { UiError, UiEvent } from \"@itwin/appui-abstract\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport type { ConfigurableUiControlConstructor } from \"../configurableui/ConfigurableUiControl\";\nimport {\n ConfigurableCreateInfo,\n ConfigurableUiControlType,\n} from \"../configurableui/ConfigurableUiControl\";\nimport { UiFramework } from \"../UiFramework\";\nimport { PropsHelper } from \"../utils/PropsHelper\";\nimport type { WidgetControl } from \"./WidgetControl\";\nimport type { IconSpec, SizeProps } from \"@itwin/core-react\";\nimport { IconHelper } from \"@itwin/core-react\";\nimport type { WidgetConfig } from \"./WidgetConfig\";\nimport { WidgetState } from \"./WidgetState\";\nimport { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\n\n/** Widget State Changed Event Args interface.\n * @public\n */\nexport interface WidgetStateChangedEventArgs {\n widgetDef: WidgetDef;\n widgetState: WidgetState;\n}\n\n/** Widget State Changed Event class.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> {}\n\n/** @internal */\nexport interface WidgetChangedEventArgs {\n widgetDef: WidgetDef;\n}\n\n/** @internal */\nexport interface WidgetEventArgs {\n widgetDef: WidgetDef;\n}\n\n/** Widget type enum.\n * @public\n */\nexport enum WidgetType {\n Tool,\n Navigation,\n Rectangular,\n ToolSettings,\n StatusBar,\n}\n\n// -----------------------------------------------------------------------------\n\n/** A Widget Definition in the 9-Zone Layout system.\n * @public\n */\nexport class WidgetDef {\n private static _sId = 0;\n private _label: string | ConditionalStringValue | StringGetter = \"\";\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\n private _widgetReactNode: React.ReactNode;\n private _widgetControl!: WidgetControl;\n private _defaultState: WidgetState = WidgetState.Closed;\n private _id: string;\n private _classId: string | ConfigurableUiControlConstructor | undefined =\n undefined;\n private _priority: number = 0;\n private _stateChanged: boolean = false;\n private _widgetType: WidgetType = WidgetType.Rectangular;\n private _applicationData?: any;\n private _icon?: IconSpec;\n private _internalData?: Map<string, any>;\n private _badge?: BadgeType;\n private _saveTransientState?: () => void;\n private _restoreTransientState?: () => boolean;\n private _preferredPanelSize: \"fit-content\" | undefined;\n private _defaultFloatingSize: SizeProps | undefined;\n private _canPopout?: boolean;\n private _floatingContainerId?: string;\n private _defaultFloatingPosition: XAndY | undefined;\n\n private _hideWithUiWhenFloating?: boolean;\n private _allowedPanelTargets?: ReadonlyArray<StagePanelLocation>;\n private _initialConfig?: WidgetConfig;\n\n public get state(): WidgetState {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (frontstageDef && frontstageDef.findWidgetDef(this.id)) {\n const currentState = frontstageDef.getWidgetCurrentState(this);\n // istanbul ignore else\n if (undefined !== currentState) return currentState;\n }\n return this.defaultState;\n }\n\n public get id(): string {\n return this._id;\n }\n public get classId(): string | ConfigurableUiControlConstructor | undefined {\n return this._classId;\n }\n public get priority(): number {\n return this._priority;\n }\n\n public get isFloatingStateSupported(): boolean {\n if (!this.initialConfig) return true;\n\n const allowedPanels = this.initialConfig.allowedPanels;\n if (allowedPanels && allowedPanels.length === 0) {\n return true;\n }\n\n const canFloat = this.initialConfig.canFloat;\n if (canFloat === undefined) return true;\n return !!canFloat;\n }\n\n public get isFloatingStateWindowResizable(): boolean {\n const canFloat = this.initialConfig?.canFloat;\n if (typeof canFloat === \"object\") {\n return canFloat.isResizable === undefined ? true : canFloat.isResizable;\n }\n\n return true;\n }\n\n public get isToolSettings(): boolean {\n return this._widgetType === WidgetType.ToolSettings;\n }\n public get isStatusBar(): boolean {\n return this._widgetType === WidgetType.StatusBar;\n }\n public get stateChanged(): boolean {\n return this._stateChanged;\n }\n public get applicationData(): any | undefined {\n return this._applicationData;\n }\n public get isFloating(): boolean {\n return this.state === WidgetState.Floating;\n }\n public get iconSpec(): IconSpec {\n return this._icon === IconHelper.reactIconKey\n ? IconHelper.getIconReactNode(this._icon, this._internalData)\n : this._icon;\n }\n public set iconSpec(spec: IconSpec) {\n this._icon = this._internalData\n ? IconHelper.getIconData(spec, this._internalData)\n : spec;\n }\n public get badgeType(): BadgeType | undefined {\n return this._badge;\n }\n public get initialConfig(): WidgetConfig | undefined {\n return this._initialConfig;\n }\n\n public get widgetType(): WidgetType {\n return this._widgetType;\n }\n public set widgetType(type: WidgetType) {\n this._widgetType = type;\n }\n\n /** @internal */\n public get defaultFloatingPosition() {\n return this._defaultFloatingPosition;\n }\n public set defaultFloatingPosition(position: XAndY | undefined) {\n this._defaultFloatingPosition = position;\n }\n\n /** @internal */\n public get defaultFloatingSize() {\n return this._defaultFloatingSize;\n }\n public set defaultFloatingSize(size: SizeProps | undefined) {\n this._defaultFloatingSize = size;\n }\n\n /** @internal */\n public get defaultState() {\n return this._defaultState;\n }\n\n constructor() {\n WidgetDef._sId++;\n this._id = `Widget-${WidgetDef._sId}`;\n }\n\n /** @internal */\n public static create(\n config: WidgetConfig,\n type: WidgetType = WidgetType.Rectangular\n ) {\n const def = new WidgetDef();\n def.initializeFromConfig(config, type);\n return def;\n }\n\n private initializeFromConfig(config: WidgetConfig, type: WidgetType) {\n this._widgetType = type;\n this._initialConfig = config;\n this._id = config.id;\n\n if (config.label) this._label = config.label;\n else if (config.labelKey)\n this._label = UiFramework.localization.getLocalizedString(\n config.labelKey\n );\n else if (type === WidgetType.ToolSettings) this._label = \"Tool Settings\";\n\n this.setCanPopout(config.canPopout);\n\n const canFloat = config.canFloat;\n if (typeof canFloat === \"object\") {\n this.setFloatingContainerId(canFloat.containerId);\n this.defaultFloatingPosition = canFloat.defaultPosition;\n this._hideWithUiWhenFloating = !!canFloat.hideWithUi;\n this._defaultFloatingSize = canFloat.defaultSize;\n }\n\n if (\"allowedPanels\" in config) {\n this.allowedPanelTargets = config.allowedPanels;\n } else if (type === WidgetType.ToolSettings)\n this.allowedPanelTargets = [\n StagePanelLocation.Bottom,\n StagePanelLocation.Left,\n StagePanelLocation.Right,\n ];\n\n if (config.priority !== undefined) this._priority = config.priority;\n\n if (config.tooltip) this.setTooltip(config.tooltip);\n else if (config.tooltipKey)\n this._tooltip = UiFramework.localization.getLocalizedString(\n config.tooltipKey\n );\n\n if (config.defaultState !== undefined) {\n this._defaultState = config.defaultState;\n }\n\n if (\n config.allowedPanels &&\n config.allowedPanels.length === 0 &&\n config.defaultState === WidgetState.Open\n ) {\n this._defaultState = WidgetState.Floating;\n }\n\n this._widgetReactNode = config.content;\n this._icon = config.icon;\n\n // istanbul ignore next\n if (config.icon !== undefined && this._icon === undefined)\n this._icon = config.icon;\n\n if (config.badge !== undefined) this._badge = config.badge;\n\n this._preferredPanelSize = config.preferredPanelSize;\n }\n\n /** @alpha */\n public get preferredPanelSize() {\n return this._preferredPanelSize;\n }\n\n /** Get the label string */\n public get label(): string {\n return PropsHelper.getStringFromSpec(this._label);\n }\n\n /** Set the label.\n * @param labelSpec A string or a function to get the string.\n */\n public setLabel(labelSpec: string | ConditionalStringValue | StringGetter) {\n this._label = labelSpec; // TODO: handle ConditionalStringValue\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const label = PropsHelper.getStringFromSpec(labelSpec);\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SET_LABEL\",\n id: this.id,\n label,\n });\n }\n\n /** Get the tooltip string */\n public get tooltip(): string {\n return PropsHelper.getStringFromSpec(this._tooltip);\n }\n\n /** Set the tooltip.\n * @param v A string or a function to get the string.\n */\n public setTooltip(v: string | ConditionalStringValue | StringGetter) {\n this._tooltip = v;\n }\n\n public get widgetControl(): WidgetControl | undefined {\n return this._widgetControl;\n }\n\n public getWidgetControl(\n type: ConfigurableUiControlType\n ): WidgetControl | undefined {\n if (!this._widgetControl && this.classId) {\n let usedClassId: string = \"\";\n\n if (typeof this.classId === \"string\") {\n // istanbul ignore else\n if (this.classId)\n this._widgetControl = UiFramework.controls.create(\n this.classId,\n this.id,\n this.applicationData\n ) as WidgetControl;\n usedClassId = this.classId;\n } else {\n const info = new ConfigurableCreateInfo(\n this.classId.name,\n this.id,\n this.id\n );\n usedClassId = this.classId.name;\n this._widgetControl = new this.classId(\n info,\n this.applicationData\n ) as WidgetControl;\n }\n\n // istanbul ignore else\n if (this._widgetControl) {\n if (this._widgetControl.getType() !== type) {\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`\n );\n }\n\n this._widgetControl.widgetDef = this;\n this._widgetControl.initialize();\n }\n }\n\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\n if (!this._widgetControl && this.isStatusBar) {\n const info = new ConfigurableCreateInfo(\n \"StatusBarWidgetComposerControl\",\n StatusBarWidgetComposerControl.controlId,\n StatusBarWidgetComposerControl.controlId\n );\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\n this._widgetControl.widgetDef = this;\n this._widgetControl.initialize();\n }\n\n return this._widgetControl;\n }\n\n public get reactNode(): React.ReactNode {\n if (!this._widgetReactNode) {\n const widgetControl = this.getWidgetControl(\n ConfigurableUiControlType.Widget\n );\n\n // istanbul ignore else\n if (widgetControl && widgetControl.reactNode)\n this._widgetReactNode = widgetControl.reactNode;\n }\n\n return this._widgetReactNode;\n }\n\n public set reactNode(node: React.ReactNode) {\n this._widgetReactNode = node;\n }\n\n public setWidgetState(newState: WidgetState): void {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state || this.isStatusBar) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n switch (newState) {\n case WidgetState.Closed: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_CLOSE\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Floating: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_FLOAT\",\n id: this.id,\n position: this._defaultFloatingPosition,\n });\n break;\n }\n case WidgetState.Hidden: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_HIDE\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Open: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_OPEN\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Unloaded: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UNLOAD\",\n id: this.id,\n });\n break;\n }\n }\n }\n\n /** @internal */\n public handleWidgetStateChanged(newState: WidgetState) {\n this._stateChanged = true;\n UiFramework.frontstages.onWidgetStateChangedEvent.emit({\n widgetDef: this,\n widgetState: newState,\n });\n this.onWidgetStateChanged();\n }\n\n public setCanPopout(value: boolean | undefined) {\n this._canPopout = value;\n }\n\n public get canPopout(): boolean | undefined {\n return this._canPopout;\n }\n\n public setFloatingContainerId(value: string | undefined) {\n this._floatingContainerId = value;\n }\n\n public get floatingContainerId(): string | undefined {\n return this._floatingContainerId;\n }\n\n public canOpen(): boolean {\n return this.isFloating || this.isActive;\n }\n\n public get isVisible(): boolean {\n return (\n WidgetState.Hidden !== this.state && WidgetState.Unloaded !== this.state\n );\n }\n\n public get activeState(): WidgetState {\n return this.state;\n }\n\n public get isActive(): boolean {\n return WidgetState.Open === this.activeState;\n }\n\n public set hideWithUiWhenFloating(hide: boolean | undefined) {\n this._hideWithUiWhenFloating = !!hide;\n }\n\n public get hideWithUiWhenFloating(): boolean {\n return !!this._hideWithUiWhenFloating;\n }\n\n public get allowedPanelTargets():\n | ReadonlyArray<StagePanelLocation>\n | undefined {\n return this._allowedPanelTargets;\n }\n\n public set allowedPanelTargets(\n targets: ReadonlyArray<StagePanelLocation> | undefined\n ) {\n this._allowedPanelTargets = targets;\n }\n\n public onWidgetStateChanged(): void {\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\n }\n\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\n public saveTransientState(): void {\n this.widgetControl && this.widgetControl.saveTransientState();\n this._saveTransientState && this._saveTransientState();\n }\n\n /** Overwrite to restore transient DOM state.\n * @note Return true if the state is restored or the Widget will remount.\n */\n public restoreTransientState(): boolean {\n let result = true;\n if (this.widgetControl || this._restoreTransientState) {\n let result1 = false,\n result2 = false;\n if (this.widgetControl)\n result1 = this.widgetControl.restoreTransientState();\n if (this._restoreTransientState) result2 = this._restoreTransientState();\n result = !(result1 || result2);\n }\n return result;\n }\n\n /** Opens the widget and makes it visible to the user.\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\n * @public\n */\n public show() {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SHOW\",\n id: this.id,\n });\n }\n\n /** Opens the widget and expands it to fill full size of the stage panel.\n * @public\n */\n public expand() {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_EXPAND\",\n id: this.id,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport type * as React from \"react\";\nimport type {\n BadgeType,\n ConditionalStringValue,\n StringGetter,\n} from \"@itwin/appui-abstract\";\nimport { UiError, UiEvent } from \"@itwin/appui-abstract\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport type { ConfigurableUiControlConstructor } from \"../configurableui/ConfigurableUiControl\";\nimport {\n ConfigurableCreateInfo,\n ConfigurableUiControlType,\n} from \"../configurableui/ConfigurableUiControl\";\nimport { UiFramework } from \"../UiFramework\";\nimport { PropsHelper } from \"../utils/PropsHelper\";\nimport type { WidgetControl } from \"./WidgetControl\";\nimport type { IconSpec, SizeProps } from \"@itwin/core-react\";\nimport { IconHelper } from \"@itwin/core-react\";\nimport type { WidgetConfig } from \"./WidgetConfig\";\nimport { WidgetState } from \"./WidgetState\";\nimport { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\n\n/** Widget State Changed Event Args interface.\n * @public\n */\nexport interface WidgetStateChangedEventArgs {\n widgetDef: WidgetDef;\n widgetState: WidgetState;\n}\n\n/** Widget State Changed Event class.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> {}\n\n/** @internal */\nexport interface WidgetChangedEventArgs {\n widgetDef: WidgetDef;\n}\n\n/** @internal */\nexport interface WidgetEventArgs {\n widgetDef: WidgetDef;\n}\n\n/** Widget type enum.\n * @public\n */\nexport enum WidgetType {\n Tool,\n Navigation,\n Rectangular,\n ToolSettings,\n StatusBar,\n}\n\n// -----------------------------------------------------------------------------\n\n/** A Widget Definition in the 9-Zone Layout system.\n * @public\n */\nexport class WidgetDef {\n private static _sId = 0;\n private _label: string | ConditionalStringValue | StringGetter = \"\";\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\n private _widgetReactNode: React.ReactNode;\n private _widgetControl!: WidgetControl;\n private _defaultState: WidgetState = WidgetState.Closed;\n private _id: string;\n private _classId: string | ConfigurableUiControlConstructor | undefined =\n undefined;\n private _priority: number = 0;\n private _stateChanged: boolean = false;\n private _widgetType: WidgetType = WidgetType.Rectangular;\n private _applicationData?: any;\n private _icon?: IconSpec;\n private _internalData?: Map<string, any>;\n private _badge?: BadgeType;\n private _saveTransientState?: () => void;\n private _restoreTransientState?: () => boolean;\n private _preferredPanelSize: \"fit-content\" | undefined;\n private _defaultFloatingSize: SizeProps | undefined;\n private _canPopout?: boolean;\n private _floatingContainerId?: string;\n private _defaultFloatingPosition: XAndY | undefined;\n\n private _hideWithUiWhenFloating?: boolean;\n private _allowedPanelTargets?: ReadonlyArray<StagePanelLocation>;\n private _initialConfig?: WidgetConfig;\n\n public get state(): WidgetState {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (frontstageDef && frontstageDef.findWidgetDef(this.id)) {\n const currentState = frontstageDef.getWidgetCurrentState(this);\n // istanbul ignore else\n if (undefined !== currentState) return currentState;\n }\n return this.defaultState;\n }\n\n public get id(): string {\n return this._id;\n }\n public get classId(): string | ConfigurableUiControlConstructor | undefined {\n return this._classId;\n }\n public get priority(): number {\n return this._priority;\n }\n\n public get isFloatingStateSupported(): boolean {\n if (!this.initialConfig) return true;\n\n const allowedPanels = this.initialConfig.allowedPanels;\n if (allowedPanels && allowedPanels.length === 0) {\n return true;\n }\n\n const canFloat = this.initialConfig.canFloat;\n if (canFloat === undefined) return true;\n return !!canFloat;\n }\n\n public get isFloatingStateWindowResizable(): boolean {\n const canFloat = this.initialConfig?.canFloat;\n if (typeof canFloat === \"object\") {\n return canFloat.isResizable === undefined ? true : canFloat.isResizable;\n }\n\n return true;\n }\n\n public get isToolSettings(): boolean {\n return this._widgetType === WidgetType.ToolSettings;\n }\n public get isStatusBar(): boolean {\n return this._widgetType === WidgetType.StatusBar;\n }\n public get stateChanged(): boolean {\n return this._stateChanged;\n }\n public get applicationData(): any | undefined {\n return this._applicationData;\n }\n public get isFloating(): boolean {\n return this.state === WidgetState.Floating;\n }\n public get iconSpec(): IconSpec {\n return this._icon === IconHelper.reactIconKey\n ? IconHelper.getIconReactNode(this._icon, this._internalData)\n : this._icon;\n }\n public set iconSpec(spec: IconSpec) {\n this._icon = this._internalData\n ? IconHelper.getIconData(spec, this._internalData)\n : spec;\n }\n public get badgeType(): BadgeType | undefined {\n return this._badge;\n }\n public get initialConfig(): WidgetConfig | undefined {\n return this._initialConfig;\n }\n\n public get widgetType(): WidgetType {\n return this._widgetType;\n }\n public set widgetType(type: WidgetType) {\n this._widgetType = type;\n }\n\n /** @internal */\n public get defaultFloatingPosition() {\n return this._defaultFloatingPosition;\n }\n public set defaultFloatingPosition(position: XAndY | undefined) {\n this._defaultFloatingPosition = position;\n }\n\n /** @internal */\n public get defaultFloatingSize() {\n return this._defaultFloatingSize;\n }\n public set defaultFloatingSize(size: SizeProps | undefined) {\n this._defaultFloatingSize = size;\n }\n\n /** @internal */\n public get defaultState() {\n return this._defaultState;\n }\n\n constructor() {\n WidgetDef._sId++;\n this._id = `Widget-${WidgetDef._sId}`;\n }\n\n /** @internal */\n public static create(\n config: WidgetConfig,\n type: WidgetType = WidgetType.Rectangular\n ) {\n const def = new WidgetDef();\n def.initializeFromConfig(config, type);\n return def;\n }\n\n private initializeFromConfig(config: WidgetConfig, type: WidgetType) {\n this._widgetType = type;\n this._initialConfig = config;\n this._id = config.id;\n\n if (config.label) this._label = config.label;\n else if (config.labelKey)\n this._label = UiFramework.localization.getLocalizedString(\n config.labelKey\n );\n else if (type === WidgetType.ToolSettings) this._label = \"Tool Settings\";\n\n this.setCanPopout(config.canPopout);\n\n const canFloat = config.canFloat;\n if (typeof canFloat === \"object\") {\n this.setFloatingContainerId(canFloat.containerId);\n this.defaultFloatingPosition = canFloat.defaultPosition;\n this._hideWithUiWhenFloating = !!canFloat.hideWithUi;\n this._defaultFloatingSize = canFloat.defaultSize;\n }\n\n if (\"allowedPanels\" in config) {\n this.allowedPanelTargets = config.allowedPanels;\n } else if (type === WidgetType.ToolSettings)\n this.allowedPanelTargets = [\n StagePanelLocation.Bottom,\n StagePanelLocation.Left,\n StagePanelLocation.Right,\n ];\n\n if (config.priority !== undefined) this._priority = config.priority;\n\n if (config.tooltip) this.setTooltip(config.tooltip);\n else if (config.tooltipKey)\n this._tooltip = UiFramework.localization.getLocalizedString(\n config.tooltipKey\n );\n\n if (config.defaultState !== undefined) {\n this._defaultState = config.defaultState;\n }\n\n if (\n config.allowedPanels &&\n config.allowedPanels.length === 0 &&\n config.defaultState === WidgetState.Open\n ) {\n this._defaultState = WidgetState.Floating;\n }\n\n this._widgetReactNode = config.content;\n this._icon = config.icon;\n\n // istanbul ignore next\n if (config.icon !== undefined && this._icon === undefined)\n this._icon = config.icon;\n\n if (config.badge !== undefined) this._badge = config.badge;\n\n this._preferredPanelSize = config.preferredPanelSize;\n }\n\n /** @alpha */\n public get preferredPanelSize() {\n return this._preferredPanelSize;\n }\n\n /** Get the label string */\n public get label(): string {\n return PropsHelper.getStringFromSpec(this._label);\n }\n\n /** Set the label.\n * @param labelSpec A string or a function to get the string.\n */\n public setLabel(labelSpec: string | ConditionalStringValue | StringGetter) {\n this._label = labelSpec; // TODO: handle ConditionalStringValue\n\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n if (!frontstageDef) return;\n\n const label = PropsHelper.getStringFromSpec(labelSpec);\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SET_LABEL\",\n id: this.id,\n label,\n });\n }\n\n /** Get the tooltip string */\n public get tooltip(): string {\n return PropsHelper.getStringFromSpec(this._tooltip);\n }\n\n /** Set the tooltip.\n * @param v A string or a function to get the string.\n */\n public setTooltip(v: string | ConditionalStringValue | StringGetter) {\n this._tooltip = v;\n }\n\n public get widgetControl(): WidgetControl | undefined {\n return this._widgetControl;\n }\n\n public getWidgetControl(\n type: ConfigurableUiControlType\n ): WidgetControl | undefined {\n if (!this._widgetControl && this.classId) {\n let usedClassId: string = \"\";\n\n if (typeof this.classId === \"string\") {\n // istanbul ignore else\n if (this.classId)\n this._widgetControl = UiFramework.controls.create(\n this.classId,\n this.id,\n this.applicationData\n ) as WidgetControl;\n usedClassId = this.classId;\n } else {\n const info = new ConfigurableCreateInfo(\n this.classId.name,\n this.id,\n this.id\n );\n usedClassId = this.classId.name;\n this._widgetControl = new this.classId(\n info,\n this.applicationData\n ) as WidgetControl;\n }\n\n // istanbul ignore else\n if (this._widgetControl) {\n if (this._widgetControl.getType() !== type) {\n // eslint-disable-next-line deprecation/deprecation\n throw new UiError(\n UiFramework.loggerCategory(this),\n `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`\n );\n }\n\n this._widgetControl.widgetDef = this;\n this._widgetControl.initialize();\n }\n }\n\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\n if (!this._widgetControl && this.isStatusBar) {\n const info = new ConfigurableCreateInfo(\n \"StatusBarWidgetComposerControl\",\n StatusBarWidgetComposerControl.controlId,\n StatusBarWidgetComposerControl.controlId\n );\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\n this._widgetControl.widgetDef = this;\n this._widgetControl.initialize();\n }\n\n return this._widgetControl;\n }\n\n public get reactNode(): React.ReactNode {\n if (!this._widgetReactNode) {\n const widgetControl = this.getWidgetControl(\n ConfigurableUiControlType.Widget\n );\n\n // istanbul ignore else\n if (widgetControl && widgetControl.reactNode)\n this._widgetReactNode = widgetControl.reactNode;\n }\n\n return this._widgetReactNode;\n }\n\n public set reactNode(node: React.ReactNode) {\n this._widgetReactNode = node;\n }\n\n public setWidgetState(newState: WidgetState): void {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state || this.isStatusBar) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n switch (newState) {\n case WidgetState.Closed: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_CLOSE\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Floating: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_FLOAT\",\n id: this.id,\n position: this._defaultFloatingPosition,\n });\n break;\n }\n case WidgetState.Hidden: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_HIDE\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Open: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_OPEN\",\n id: this.id,\n });\n break;\n }\n case WidgetState.Unloaded: {\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_UNLOAD\",\n id: this.id,\n });\n break;\n }\n }\n }\n\n /** @internal */\n public handleWidgetStateChanged(newState: WidgetState) {\n this._stateChanged = true;\n UiFramework.frontstages.onWidgetStateChangedEvent.emit({\n widgetDef: this,\n widgetState: newState,\n });\n this.onWidgetStateChanged();\n }\n\n public setCanPopout(value: boolean | undefined) {\n this._canPopout = value;\n }\n\n public get canPopout(): boolean | undefined {\n return this._canPopout;\n }\n\n public setFloatingContainerId(value: string | undefined) {\n this._floatingContainerId = value;\n }\n\n public get floatingContainerId(): string | undefined {\n return this._floatingContainerId;\n }\n\n public canOpen(): boolean {\n return this.isFloating || this.isActive;\n }\n\n public get isVisible(): boolean {\n return (\n WidgetState.Hidden !== this.state && WidgetState.Unloaded !== this.state\n );\n }\n\n public get activeState(): WidgetState {\n return this.state;\n }\n\n public get isActive(): boolean {\n return WidgetState.Open === this.activeState;\n }\n\n public set hideWithUiWhenFloating(hide: boolean | undefined) {\n this._hideWithUiWhenFloating = !!hide;\n }\n\n public get hideWithUiWhenFloating(): boolean {\n return !!this._hideWithUiWhenFloating;\n }\n\n public get allowedPanelTargets():\n | ReadonlyArray<StagePanelLocation>\n | undefined {\n return this._allowedPanelTargets;\n }\n\n public set allowedPanelTargets(\n targets: ReadonlyArray<StagePanelLocation> | undefined\n ) {\n this._allowedPanelTargets = targets;\n }\n\n public onWidgetStateChanged(): void {\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\n }\n\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\n public saveTransientState(): void {\n this.widgetControl && this.widgetControl.saveTransientState();\n this._saveTransientState && this._saveTransientState();\n }\n\n /** Overwrite to restore transient DOM state.\n * @note Return true if the state is restored or the Widget will remount.\n */\n public restoreTransientState(): boolean {\n let result = true;\n if (this.widgetControl || this._restoreTransientState) {\n let result1 = false,\n result2 = false;\n if (this.widgetControl)\n result1 = this.widgetControl.restoreTransientState();\n if (this._restoreTransientState) result2 = this._restoreTransientState();\n result = !(result1 || result2);\n }\n return result;\n }\n\n /** Opens the widget and makes it visible to the user.\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\n * @public\n */\n public show() {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_SHOW\",\n id: this.id,\n });\n }\n\n /** Opens the widget and expands it to fill full size of the stage panel.\n * @public\n */\n public expand() {\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\n const state = frontstageDef?.nineZoneState;\n if (!state) return;\n if (!frontstageDef.findWidgetDef(this.id)) return;\n\n frontstageDef.dispatch({\n type: \"WIDGET_TAB_EXPAND\",\n id: this.id,\n });\n }\n}\n"]}
|
|
@@ -52,7 +52,6 @@ export class WidgetHost {
|
|
|
52
52
|
* @internal
|
|
53
53
|
*/
|
|
54
54
|
updateDynamicWidgetDefs(stageId, stageUsage, location, section, allStageWidgetDefs) {
|
|
55
|
-
var _a;
|
|
56
55
|
// get widgetDefs not already in allStageWidgetDefs and add them
|
|
57
56
|
const uniqueWidgets = this._widgetDefs.filter((widgetDef) => {
|
|
58
57
|
return !allStageWidgetDefs.find((wDef) => wDef.id === widgetDef.id);
|
|
@@ -61,9 +60,9 @@ export class WidgetHost {
|
|
|
61
60
|
let dynamicWidgetDefs;
|
|
62
61
|
if (section !== undefined) {
|
|
63
62
|
dynamicWidgetDefs =
|
|
64
|
-
|
|
63
|
+
UiFramework.widgetManager.getWidgetDefs(stageId, stageUsage, location, section) ?? [];
|
|
65
64
|
}
|
|
66
|
-
const uniqueDynamicWidgetDefs = dynamicWidgetDefs
|
|
65
|
+
const uniqueDynamicWidgetDefs = dynamicWidgetDefs?.filter((widgetDef) => {
|
|
67
66
|
return !allStageWidgetDefs.find((wDef) => wDef.id === widgetDef.id);
|
|
68
67
|
});
|
|
69
68
|
// Now that we no longer support a middle panel section, yet we have existing API that allows a middle section to be
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetHost.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C;;;GAGG;AACH,MAAM,OAAO,UAAU;IAKrB;OACG;IACH;QANQ,gBAAW,GAAgB,IAAI,KAAK,EAAa,CAAC;QAElD,sBAAiB,GAA6B,EAAE,CAAC;IAI1C,CAAC;IAEhB;;OAEG;IACI,YAAY,CAAC,SAAoB;QACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,gCAAgC;IAChC,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,kCAAkC;IAClC,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAoB,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACI,uBAAuB,CAC5B,OAAe,EACf,UAAkB,EAClB,QAA4B,EAC5B,OAAsC,EACtC,kBAA+B
|
|
1
|
+
{"version":3,"file":"WidgetHost.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetHost.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Widget\n */\n\nimport type { StagePanelLocation } from \"../stagepanels/StagePanelLocation\";\nimport type { StagePanelSection } from \"../stagepanels/StagePanelSection\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { WidgetDef } from \"./WidgetDef\";\n\n/**\n * A WidgetHost represents a definition that hosts one or most Widgets in a Frontstage.\n * @public\n */\nexport class WidgetHost {\n private _widgetDefs: WidgetDef[] = new Array<WidgetDef>();\n private _dynamicWidgetDefs: ReadonlyArray<WidgetDef> | undefined;\n private _sortedWidgetDefs: ReadonlyArray<WidgetDef> = [];\n\n /** Constructor for WidgetHost.\n */\n constructor() {}\n\n /** Adds a WidgetDef to the list of Widgets.\n * @param widgetDef Definition of the Widget to add\n */\n public addWidgetDef(widgetDef: WidgetDef) {\n this._widgetDefs.push(widgetDef);\n this.sortWidgetDefs();\n }\n\n /** Gets the list of Widgets. */\n public get widgetDefs(): ReadonlyArray<WidgetDef> {\n return this._sortedWidgetDefs;\n }\n\n /** Gets the number of Widgets. */\n public get widgetCount(): number {\n return this.widgetDefs.length;\n }\n\n /** If there is only one Widget in the Panel, gets the single WidgetDef.\n * @returns The single WidgetDef if there is only one Widget; otherwise, undefined is returned.\n */\n public getSingleWidgetDef(): WidgetDef | undefined {\n if (this.widgetCount === 1) {\n return this.widgetDefs[0];\n }\n return undefined;\n }\n\n /** Finds a WidgetDef with a given Id.\n * @param id Id of the WidgetDef to find\n * @returns The WidgetDef if found; otherwise, undefined is returned.\n */\n public findWidgetDef(id: string): WidgetDef | undefined {\n return this.widgetDefs.find((widgetDef: WidgetDef) => widgetDef.id === id);\n }\n\n /** Updates the WidgetHost with dynamic widgets\n * @internal\n */\n public updateDynamicWidgetDefs(\n stageId: string,\n stageUsage: string,\n location: StagePanelLocation,\n section: StagePanelSection | undefined,\n allStageWidgetDefs: WidgetDef[]\n ): void {\n // get widgetDefs not already in allStageWidgetDefs and add them\n const uniqueWidgets = this._widgetDefs.filter((widgetDef) => {\n return !allStageWidgetDefs.find((wDef) => wDef.id === widgetDef.id);\n });\n\n allStageWidgetDefs.push(...uniqueWidgets);\n\n let dynamicWidgetDefs: readonly WidgetDef[] | undefined;\n if (section !== undefined) {\n dynamicWidgetDefs =\n UiFramework.widgetManager.getWidgetDefs(\n stageId,\n stageUsage,\n location,\n section\n ) ?? [];\n }\n\n const uniqueDynamicWidgetDefs = dynamicWidgetDefs?.filter((widgetDef) => {\n return !allStageWidgetDefs.find((wDef) => wDef.id === widgetDef.id);\n });\n\n // Now that we no longer support a middle panel section, yet we have existing API that allows a middle section to be\n // defined, the following is needed to combining middle and end panel section widgets into a single set of widgets\n if (uniqueDynamicWidgetDefs) {\n allStageWidgetDefs.push(...uniqueDynamicWidgetDefs);\n this._dynamicWidgetDefs = [...uniqueDynamicWidgetDefs];\n }\n this.sortWidgetDefs();\n }\n\n /** Sorts all widgets */\n private sortWidgetDefs(): void {\n let sortedWidgetDefs = [];\n if (this._dynamicWidgetDefs)\n sortedWidgetDefs = this._widgetDefs.concat(this._dynamicWidgetDefs);\n else sortedWidgetDefs = this._widgetDefs.slice();\n\n sortedWidgetDefs.sort((a, b) => a.priority - b.priority);\n\n this._sortedWidgetDefs = sortedWidgetDefs;\n }\n}\n"]}
|
|
@@ -35,7 +35,7 @@ export function useWidget() {
|
|
|
35
35
|
});
|
|
36
36
|
}, [frontstage, tabId]);
|
|
37
37
|
const setWidgetState = React.useCallback((widgetState) => {
|
|
38
|
-
widgetDef
|
|
38
|
+
widgetDef?.setWidgetState(widgetState);
|
|
39
39
|
}, [widgetDef]);
|
|
40
40
|
return {
|
|
41
41
|
/** State of the Widget */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/useWidget.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;GAIG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEhB,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAC;IAE5C,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAErB,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEpB,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAExD,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAEnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAE1D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,yBAAyB,CAAC,qCAAqC,CAAC,WAAW,CAChF,GAAG,EAAE;YACH,IAAI,SAAS;gBAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAE5B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,yBAAyB,CAAC,qCAAqC,CAAC,WAAW,CAChF,GAAG,EAAE;YACH,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,WAAoD,EAAE,EAAE;QACvD,SAAS,
|
|
1
|
+
{"version":3,"file":"useWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/useWidget.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD;;;;GAIG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEhB,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAC;IAE5C,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAErB,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEpB,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAExD,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAEnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAE1D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,yBAAyB,CAAC,qCAAqC,CAAC,WAAW,CAChF,GAAG,EAAE;YACH,IAAI,SAAS;gBAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAE5B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,OAAO,yBAAyB,CAAC,qCAAqC,CAAC,WAAW,CAChF,GAAG,EAAE;YACH,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,WAAoD,EAAE,EAAE;QACvD,SAAS,EAAE,cAAc,CAAC,WAA0B,CAAC,CAAC;IACxD,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO;QACL,0BAA0B;QAC1B,KAAK;QACL,sEAAsE;QACtE,cAAc;QACd;;WAEG;QACH,QAAQ,EAAE,cAAc;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,aAAqB,EAAE,UAAyB;IACpE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE5E,IAAI,WAAW,EAAE;QACf,IAAI,qBAAqB,CAAC,WAAW,CAAC,EAAE;YACtC,OAAO,UAAU,CAAC;SACnB;QAED,IAAI,mBAAmB,CAAC,WAAW,CAAC,EAAE;YACpC,OAAO,QAAQ,CAAC;SACjB;QAED,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE;YACnC,OAAO,QAAQ,CAAC;SACjB;KACF;IAED,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport { assert } from \"@itwin/core-bentley\";\nimport * as React from \"react\";\nimport type { FrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { useActiveFrontstageDef } from \"../frontstage/FrontstageDef\";\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\nimport {\n getTabLocation,\n isFloatingTabLocation,\n isPanelTabLocation,\n isPopoutTabLocation,\n} from \"../layout/state/TabLocation\";\nimport { TabIdContext } from \"../layout/widget/ContentRenderer\";\nimport { useWidgetDef } from \"../widget-panels/Content\";\nimport type { WidgetState } from \"./WidgetState\";\n\n/** Hook that returns information about the Widget in the current context.\n * @returns object that contains the WidgetLocation, WidgetState, and\n * the ability to set the state of the widget.\n * @alpha\n */\nexport function useWidget() {\n const tabId = React.useContext(TabIdContext);\n assert(!!tabId);\n\n const frontstage = useActiveFrontstageDef();\n\n assert(!!frontstage);\n\n const widgetDef = useWidgetDef();\n\n assert(!!widgetDef);\n\n const [widgetLocation, setWidgetLocation] = React.useState<\n \"docked\" | \"floating\" | \"popout\"\n >(findLocation(tabId, frontstage));\n\n const [state, setState] = React.useState(widgetDef.state);\n\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n () => {\n if (widgetDef) return setState(widgetDef.state);\n }\n );\n }, [frontstage, widgetDef]);\n\n React.useEffect(() => {\n return InternalFrontstageManager.onFrontstageNineZoneStateChangedEvent.addListener(\n () => {\n setWidgetLocation(findLocation(tabId, frontstage));\n }\n );\n }, [frontstage, tabId]);\n\n const setWidgetState = React.useCallback(\n (widgetState: Omit<WidgetState, WidgetState.Floating>) => {\n widgetDef?.setWidgetState(widgetState as WidgetState);\n },\n [widgetDef]\n );\n\n return {\n /** State of the Widget */\n state,\n /** Where the widget is located (\"docked\" | \"popout\" | \"floating\"). */\n widgetLocation,\n /** Set widget to different state\n * @param WidgetState that you want to set the widget to.\n */\n setState: setWidgetState,\n };\n}\n\nfunction findLocation(locationTabId: string, frontstage: FrontstageDef) {\n assert(!!frontstage.nineZoneState);\n const tabLocation = getTabLocation(frontstage.nineZoneState, locationTabId);\n\n if (tabLocation) {\n if (isFloatingTabLocation(tabLocation)) {\n return \"floating\";\n }\n\n if (isPopoutTabLocation(tabLocation)) {\n return \"popout\";\n }\n\n if (isPanelTabLocation(tabLocation)) {\n return \"docked\";\n }\n }\n\n return \"floating\";\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itwin/appui-react",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.10.0-dev.1",
|
|
4
4
|
"description": "UI framework",
|
|
5
5
|
"main": "lib/cjs/appui-react.js",
|
|
6
6
|
"module": "lib/esm/appui-react.js",
|
|
@@ -23,15 +23,15 @@
|
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
25
|
"@itwin/appui-abstract": "^3.7.0 || ^4.0.0",
|
|
26
|
-
"@itwin/components-react": "^4.
|
|
26
|
+
"@itwin/components-react": "^4.10.0-dev.1",
|
|
27
27
|
"@itwin/core-bentley": "^3.7.0 || ^4.0.0",
|
|
28
28
|
"@itwin/core-common": "^3.7.0 || ^4.0.0",
|
|
29
29
|
"@itwin/core-frontend": "^3.7.0 || ^4.0.0",
|
|
30
30
|
"@itwin/core-geometry": "^3.7.0 || ^4.0.0",
|
|
31
31
|
"@itwin/core-quantity": "^3.7.0 || ^4.0.0",
|
|
32
|
-
"@itwin/core-react": "^4.
|
|
32
|
+
"@itwin/core-react": "^4.10.0-dev.1",
|
|
33
33
|
"@itwin/core-telemetry": "^3.7.0 || ^4.0.0",
|
|
34
|
-
"@itwin/imodel-components-react": "^4.
|
|
34
|
+
"@itwin/imodel-components-react": "^4.10.0-dev.1",
|
|
35
35
|
"react": "^17.0.0 || ^18.0.0",
|
|
36
36
|
"react-dom": "^17.0.0 || ^18.0.0",
|
|
37
37
|
"react-redux": "^7.2.2",
|
|
@@ -89,7 +89,6 @@
|
|
|
89
89
|
"react": "^17.0.0",
|
|
90
90
|
"react-dom": "^17.0.0",
|
|
91
91
|
"react-redux": "^7.2.2",
|
|
92
|
-
"react-test-renderer": "^17.0.0",
|
|
93
92
|
"redux": "^4.1.0",
|
|
94
93
|
"rimraf": "^3.0.2",
|
|
95
94
|
"sinon": "^17.0.1",
|
|
@@ -98,9 +97,9 @@
|
|
|
98
97
|
"typemoq": "^2.1.0",
|
|
99
98
|
"typescript": "~5.0.2",
|
|
100
99
|
"upath": "^2.0.1",
|
|
101
|
-
"@itwin/components-react": "4.
|
|
102
|
-
"@itwin/core-react": "4.
|
|
103
|
-
"@itwin/imodel-components-react": "4.
|
|
100
|
+
"@itwin/components-react": "4.10.0-dev.1",
|
|
101
|
+
"@itwin/core-react": "4.10.0-dev.1",
|
|
102
|
+
"@itwin/imodel-components-react": "4.10.0-dev.1"
|
|
104
103
|
},
|
|
105
104
|
"//dependencies": [
|
|
106
105
|
"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API",
|
|
@@ -108,10 +107,10 @@
|
|
|
108
107
|
],
|
|
109
108
|
"dependencies": {
|
|
110
109
|
"@bentley/icons-generic": "^1.0.34",
|
|
111
|
-
"@itwin/itwinui-react": "^2.
|
|
112
|
-
"@itwin/itwinui-
|
|
113
|
-
"@itwin/itwinui-
|
|
114
|
-
"@itwin/itwinui-icons": "^
|
|
110
|
+
"@itwin/itwinui-react": "^3.2.4",
|
|
111
|
+
"@itwin/itwinui-react-v2": "npm:@itwin/itwinui-react@^2.11.11",
|
|
112
|
+
"@itwin/itwinui-variables": "^3.0.0",
|
|
113
|
+
"@itwin/itwinui-icons-react": "^2.8.0",
|
|
115
114
|
"@itwin/itwinui-illustrations-react": "^2.0.1",
|
|
116
115
|
"classnames": "2.3.1",
|
|
117
116
|
"immer": "9.0.6",
|
|
@@ -127,8 +126,7 @@
|
|
|
127
126
|
"require": [
|
|
128
127
|
"ignore-styles",
|
|
129
128
|
"jsdom-global/register",
|
|
130
|
-
"source-map-support/register"
|
|
131
|
-
"ts-node/register"
|
|
129
|
+
"source-map-support/register"
|
|
132
130
|
],
|
|
133
131
|
"check-coverage": true,
|
|
134
132
|
"statements": 90,
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Notification
|
|
3
|
-
*/
|
|
4
|
-
import * as React from "react";
|
|
5
|
-
/**
|
|
6
|
-
* Component wrapping the `useActivityMessage` hook to use in class components.
|
|
7
|
-
* @internal
|
|
8
|
-
*/
|
|
9
|
-
export declare function ActivityMessageRenderer(): React.JSX.Element;
|
|
10
|
-
//# sourceMappingURL=ActivityMessage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActivityMessage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/messages/ActivityMessage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAyD/B;;;GAGG;AACH,wBAAgB,uBAAuB,sBAsBtC"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
/** @packageDocumentation
|
|
7
|
-
* @module Notification
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.ActivityMessageRenderer = void 0;
|
|
11
|
-
const React = require("react");
|
|
12
|
-
const core_react_1 = require("@itwin/core-react");
|
|
13
|
-
const itwinui_react_1 = require("@itwin/itwinui-react");
|
|
14
|
-
const UiFramework_1 = require("../UiFramework");
|
|
15
|
-
const MessageManager_1 = require("../messages/MessageManager");
|
|
16
|
-
/**
|
|
17
|
-
* Hook to render an Activity message.
|
|
18
|
-
* @internal
|
|
19
|
-
*/
|
|
20
|
-
function useActivityMessage({ activityMessageInfo, dismissActivityMessage, cancelActivityMessage, }) {
|
|
21
|
-
const [cancelLabel] = React.useState(core_react_1.UiCore.translate("dialog.cancel"));
|
|
22
|
-
const recentToast = React.useRef();
|
|
23
|
-
React.useEffect(() => {
|
|
24
|
-
itwinui_react_1.toaster.setSettings({ placement: "bottom" });
|
|
25
|
-
}, []);
|
|
26
|
-
React.useEffect(() => {
|
|
27
|
-
var _a, _b;
|
|
28
|
-
if (activityMessageInfo === null || activityMessageInfo === void 0 ? void 0 : activityMessageInfo.restored) {
|
|
29
|
-
recentToast.current = itwinui_react_1.toaster.informational(React.createElement(ActivityMessageContent, { initialActivityMessageInfo: activityMessageInfo }), {
|
|
30
|
-
onRemove: dismissActivityMessage,
|
|
31
|
-
type: "persisting",
|
|
32
|
-
link: ((_a = activityMessageInfo === null || activityMessageInfo === void 0 ? void 0 : activityMessageInfo.details) === null || _a === void 0 ? void 0 : _a.supportsCancellation) &&
|
|
33
|
-
cancelActivityMessage
|
|
34
|
-
? { title: cancelLabel, onClick: cancelActivityMessage }
|
|
35
|
-
: undefined,
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
if (!activityMessageInfo) {
|
|
39
|
-
(_b = recentToast.current) === null || _b === void 0 ? void 0 : _b.close();
|
|
40
|
-
}
|
|
41
|
-
}, [
|
|
42
|
-
activityMessageInfo,
|
|
43
|
-
cancelActivityMessage,
|
|
44
|
-
cancelLabel,
|
|
45
|
-
dismissActivityMessage,
|
|
46
|
-
]);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Component wrapping the `useActivityMessage` hook to use in class components.
|
|
50
|
-
* @internal
|
|
51
|
-
*/
|
|
52
|
-
function ActivityMessageRenderer() {
|
|
53
|
-
const [activityMessageInfo, setActivityMessageInfo] = React.useState();
|
|
54
|
-
React.useEffect(() => {
|
|
55
|
-
return MessageManager_1.MessageManager.onActivityMessageUpdatedEvent.addListener((args) => {
|
|
56
|
-
setActivityMessageInfo(args);
|
|
57
|
-
});
|
|
58
|
-
}, []);
|
|
59
|
-
React.useEffect(() => {
|
|
60
|
-
return MessageManager_1.MessageManager.onActivityMessageCancelledEvent.addListener(() => {
|
|
61
|
-
setActivityMessageInfo(undefined);
|
|
62
|
-
});
|
|
63
|
-
}, []);
|
|
64
|
-
const cancelActivityMessage = React.useCallback(() => {
|
|
65
|
-
MessageManager_1.MessageManager.endActivityMessage(false);
|
|
66
|
-
}, []);
|
|
67
|
-
useActivityMessage({ activityMessageInfo, cancelActivityMessage });
|
|
68
|
-
return React.createElement(React.Fragment, null);
|
|
69
|
-
}
|
|
70
|
-
exports.ActivityMessageRenderer = ActivityMessageRenderer;
|
|
71
|
-
/**
|
|
72
|
-
* Component used to show and update activity message content.
|
|
73
|
-
* @internal
|
|
74
|
-
*/
|
|
75
|
-
function ActivityMessageContent({ initialActivityMessageInfo, }) {
|
|
76
|
-
var _a, _b;
|
|
77
|
-
const [percentCompleteLabel] = React.useState(UiFramework_1.UiFramework.translate("activityCenter.percentComplete"));
|
|
78
|
-
const [activityMessageInfo, setActivityMessageInfo] = React.useState(initialActivityMessageInfo);
|
|
79
|
-
React.useEffect(() => {
|
|
80
|
-
const handleActivityMessageUpdatedEvent = (args) => {
|
|
81
|
-
setActivityMessageInfo(args);
|
|
82
|
-
};
|
|
83
|
-
return MessageManager_1.MessageManager.onActivityMessageUpdatedEvent.addListener(handleActivityMessageUpdatedEvent);
|
|
84
|
-
}, []);
|
|
85
|
-
return (React.createElement(React.Fragment, null,
|
|
86
|
-
activityMessageInfo.message && (React.createElement(itwinui_react_1.Text, null,
|
|
87
|
-
React.createElement(React.Fragment, null, activityMessageInfo.message.reactNode ||
|
|
88
|
-
activityMessageInfo.message))),
|
|
89
|
-
!!((_a = activityMessageInfo.details) === null || _a === void 0 ? void 0 : _a.showPercentInMessage) && (React.createElement(itwinui_react_1.Text, { variant: "small" }, `${activityMessageInfo.percentage} ${percentCompleteLabel}`)),
|
|
90
|
-
((_b = activityMessageInfo.details) === null || _b === void 0 ? void 0 : _b.showProgressBar) && (React.createElement(itwinui_react_1.ProgressLinear, { value: activityMessageInfo === null || activityMessageInfo === void 0 ? void 0 : activityMessageInfo.percentage }))));
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=ActivityMessage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActivityMessage.js","sourceRoot":"","sources":["../../../../src/appui-react/messages/ActivityMessage.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport * as React from \"react\";\nimport type { ReactMessage } from \"@itwin/core-react\";\nimport { UiCore } from \"@itwin/core-react\";\nimport { ProgressLinear, Text, toaster } from \"@itwin/itwinui-react\";\nimport { UiFramework } from \"../UiFramework\";\nimport type { ActivityMessageEventArgs } from \"../messages/MessageManager\";\nimport { MessageManager } from \"../messages/MessageManager\";\n\ninterface UseActivityMessageProps {\n cancelActivityMessage?: () => void;\n dismissActivityMessage?: () => void;\n activityMessageInfo?: ActivityMessageEventArgs;\n}\n\n/**\n * Hook to render an Activity message.\n * @internal\n */\nfunction useActivityMessage({\n activityMessageInfo,\n dismissActivityMessage,\n cancelActivityMessage,\n}: UseActivityMessageProps) {\n const [cancelLabel] = React.useState(UiCore.translate(\"dialog.cancel\"));\n const recentToast = React.useRef<{ close: () => void } | undefined>();\n React.useEffect(() => {\n toaster.setSettings({ placement: \"bottom\" });\n }, []);\n\n React.useEffect(() => {\n if (activityMessageInfo?.restored) {\n recentToast.current = toaster.informational(\n <ActivityMessageContent\n initialActivityMessageInfo={activityMessageInfo}\n />,\n {\n onRemove: dismissActivityMessage,\n type: \"persisting\",\n link:\n activityMessageInfo?.details?.supportsCancellation &&\n cancelActivityMessage\n ? { title: cancelLabel, onClick: cancelActivityMessage }\n : undefined,\n }\n );\n }\n if (!activityMessageInfo) {\n recentToast.current?.close();\n }\n }, [\n activityMessageInfo,\n cancelActivityMessage,\n cancelLabel,\n dismissActivityMessage,\n ]);\n}\n\n/**\n * Component wrapping the `useActivityMessage` hook to use in class components.\n * @internal\n */\nexport function ActivityMessageRenderer() {\n const [activityMessageInfo, setActivityMessageInfo] = React.useState<\n ActivityMessageEventArgs | undefined\n >();\n React.useEffect(() => {\n return MessageManager.onActivityMessageUpdatedEvent.addListener((args) => {\n setActivityMessageInfo(args);\n });\n }, []);\n\n React.useEffect(() => {\n return MessageManager.onActivityMessageCancelledEvent.addListener(() => {\n setActivityMessageInfo(undefined);\n });\n }, []);\n\n const cancelActivityMessage = React.useCallback(() => {\n MessageManager.endActivityMessage(false);\n }, []);\n\n useActivityMessage({ activityMessageInfo, cancelActivityMessage });\n return <></>;\n}\n\n/**\n * Component used to show and update activity message content.\n * @internal\n */\nfunction ActivityMessageContent({\n initialActivityMessageInfo,\n}: {\n initialActivityMessageInfo: ActivityMessageEventArgs;\n}) {\n const [percentCompleteLabel] = React.useState(\n UiFramework.translate(\"activityCenter.percentComplete\")\n );\n const [activityMessageInfo, setActivityMessageInfo] = React.useState(\n initialActivityMessageInfo\n );\n\n React.useEffect(() => {\n const handleActivityMessageUpdatedEvent = (\n args: ActivityMessageEventArgs\n ) => {\n setActivityMessageInfo(args);\n };\n\n return MessageManager.onActivityMessageUpdatedEvent.addListener(\n handleActivityMessageUpdatedEvent\n );\n }, []);\n\n return (\n <>\n {activityMessageInfo.message && (\n <Text>\n <>\n {(activityMessageInfo.message as ReactMessage).reactNode ||\n activityMessageInfo.message}\n </>\n </Text>\n )}\n {!!activityMessageInfo.details?.showPercentInMessage && (\n <Text variant=\"small\">{`${activityMessageInfo.percentage} ${percentCompleteLabel}`}</Text>\n )}\n {activityMessageInfo.details?.showProgressBar && (\n <ProgressLinear value={activityMessageInfo?.percentage} />\n )}\n </>\n );\n}\n"]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Notification
|
|
3
|
-
*/
|
|
4
|
-
import * as React from "react";
|
|
5
|
-
import type { ClassNameProps } from "@itwin/core-react";
|
|
6
|
-
import type { NotifyMessageType } from "./ReactNotifyMessageDetails";
|
|
7
|
-
/** @internal */
|
|
8
|
-
export interface MessageSpanProps extends ClassNameProps {
|
|
9
|
-
message: NotifyMessageType;
|
|
10
|
-
}
|
|
11
|
-
/** @internal */
|
|
12
|
-
export declare function MessageSpan(props: MessageSpanProps): React.JSX.Element;
|
|
13
|
-
/** @internal */
|
|
14
|
-
export declare function MessageDiv(props: MessageSpanProps): React.JSX.Element;
|
|
15
|
-
//# sourceMappingURL=MessageSpan.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MessageSpan.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/messages/MessageSpan.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,gBAAgB;AAChB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED,gBAAgB;AAChB,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,qBAElD;AAED,gBAAgB;AAChB,wBAAgB,UAAU,CAAC,KAAK,EAAE,gBAAgB,qBAEjD"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
/** @packageDocumentation
|
|
7
|
-
* @module Notification
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.MessageDiv = exports.MessageSpan = void 0;
|
|
11
|
-
const React = require("react");
|
|
12
|
-
const core_react_1 = require("@itwin/core-react");
|
|
13
|
-
/** @internal */
|
|
14
|
-
function MessageSpan(props) {
|
|
15
|
-
return React.createElement(core_react_1.MessageRenderer, { ...props, useSpan: true });
|
|
16
|
-
}
|
|
17
|
-
exports.MessageSpan = MessageSpan;
|
|
18
|
-
/** @internal */
|
|
19
|
-
function MessageDiv(props) {
|
|
20
|
-
return React.createElement(core_react_1.MessageRenderer, { ...props });
|
|
21
|
-
}
|
|
22
|
-
exports.MessageDiv = MessageDiv;
|
|
23
|
-
//# sourceMappingURL=MessageSpan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MessageSpan.js","sourceRoot":"","sources":["../../../../src/appui-react/messages/MessageSpan.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAEH,+BAA+B;AAE/B,kDAAoD;AAQpD,gBAAgB;AAChB,SAAgB,WAAW,CAAC,KAAuB;IACjD,OAAO,oBAAC,4BAAe,OAAK,KAAK,EAAE,OAAO,SAAG,CAAC;AAChD,CAAC;AAFD,kCAEC;AAED,gBAAgB;AAChB,SAAgB,UAAU,CAAC,KAAuB;IAChD,OAAO,oBAAC,4BAAe,OAAK,KAAK,GAAI,CAAC;AACxC,CAAC;AAFD,gCAEC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport * as React from \"react\";\nimport type { ClassNameProps } from \"@itwin/core-react\";\nimport { MessageRenderer } from \"@itwin/core-react\";\nimport type { NotifyMessageType } from \"./ReactNotifyMessageDetails\";\n\n/** @internal */\nexport interface MessageSpanProps extends ClassNameProps {\n message: NotifyMessageType;\n}\n\n/** @internal */\nexport function MessageSpan(props: MessageSpanProps) {\n return <MessageRenderer {...props} useSpan />;\n}\n\n/** @internal */\nexport function MessageDiv(props: MessageSpanProps) {\n return <MessageRenderer {...props} />;\n}\n"]}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Notification
|
|
3
|
-
*/
|
|
4
|
-
import * as React from "react";
|
|
5
|
-
/**
|
|
6
|
-
* Component wrapping the `useActivityMessage` hook to use in class components.
|
|
7
|
-
* @internal
|
|
8
|
-
*/
|
|
9
|
-
export declare function ActivityMessageRenderer(): React.JSX.Element;
|
|
10
|
-
//# sourceMappingURL=ActivityMessage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActivityMessage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/messages/ActivityMessage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAyD/B;;;GAGG;AACH,wBAAgB,uBAAuB,sBAsBtC"}
|