@itwin/appui-react 3.2.0-dev.9 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -1
- package/lib/cjs/appui-react/UiFramework.d.ts +10 -0
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +22 -0
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js +4 -4
- package/lib/cjs/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js +6 -6
- package/lib/cjs/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/cjs/appui-react/accudraw/Calculator.js +3 -2
- package/lib/cjs/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js +4 -2
- package/lib/cjs/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +2 -2
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.d.ts +9 -1
- package/lib/cjs/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/cjs/appui-react/configurableui/state.js +13 -0
- package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.d.ts +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts +1 -0
- package/lib/cjs/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/cjs/appui-react/feedback/ElementTooltip.js +16 -0
- package/lib/cjs/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -0
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.js +9 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +2 -0
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +18 -9
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js +2 -2
- package/lib/cjs/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +2 -2
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/VisibilityTreeBase.scss +3 -3
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js +1 -1
- package/lib/cjs/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/cjs/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/cjs/appui-react/redux/StateManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/redux/StateManager.js +1 -0
- package/lib/cjs/appui-react/redux/StateManager.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +25 -5
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -4
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +6 -10
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js +1 -1
- package/lib/cjs/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts +3 -3
- package/lib/cjs/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/Indicator.js.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/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js +35 -33
- package/lib/cjs/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js +1 -1
- package/lib/cjs/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.d.ts +1 -0
- package/lib/cjs/appui-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/cjs/appui-react/toolbar/Toolbar.js +8 -3
- package/lib/cjs/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +5 -26
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js +16 -16
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +96 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +1 -18
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +33 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +51 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +3 -18
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +4 -3
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +31 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +79 -0
- package/lib/cjs/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +5 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.js +8 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js +3 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js.map +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js +1 -0
- package/lib/cjs/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/cjs/appui-react/utils/PropsHelper.d.ts +3 -1
- package/lib/cjs/appui-react/utils/PropsHelper.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/PropsHelper.js +10 -0
- package/lib/cjs/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.js +1 -0
- package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts +17 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +143 -129
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js +15 -2
- package/lib/cjs/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/ToolSettings.scss +17 -1
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js +3 -3
- package/lib/cjs/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +8 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +14 -4
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.d.ts +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetHost.js +106 -7
- package/lib/cjs/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.js +2 -1
- package/lib/cjs/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +3 -0
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +3 -0
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +10 -0
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +22 -0
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js +4 -4
- package/lib/esm/appui-react/accudraw/AccuDrawFieldContainer.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js +6 -6
- package/lib/esm/appui-react/accudraw/AccuDrawPopupManager.js.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.d.ts.map +1 -1
- package/lib/esm/appui-react/accudraw/Calculator.js +5 -4
- package/lib/esm/appui-react/accudraw/Calculator.js.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.d.ts.map +1 -1
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js +5 -3
- package/lib/esm/appui-react/backstage/BackstageComposerItem.js.map +1 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js +2 -2
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/configurableui/state.d.ts +9 -1
- package/lib/esm/appui-react/configurableui/state.d.ts.map +1 -1
- package/lib/esm/appui-react/configurableui/state.js +13 -0
- package/lib/esm/appui-react/configurableui/state.js.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.d.ts +1 -1
- package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts +1 -0
- package/lib/esm/appui-react/feedback/ElementTooltip.d.ts.map +1 -1
- package/lib/esm/appui-react/feedback/ElementTooltip.js +16 -0
- package/lib/esm/appui-react/feedback/ElementTooltip.js.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -0
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.js +7 -0
- package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js +2 -0
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +18 -9
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js +2 -2
- package/lib/esm/appui-react/frontstage/ModalSettingsStage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts +6 -0
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +2 -2
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/VisibilityTreeBase.scss +3 -3
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js +1 -1
- package/lib/esm/appui-react/popup/KeyinPalettePanel.js.map +1 -1
- package/lib/esm/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/esm/appui-react/redux/StateManager.d.ts.map +1 -1
- package/lib/esm/appui-react/redux/StateManager.js +1 -0
- package/lib/esm/appui-react/redux/StateManager.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.d.ts.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +25 -5
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -4
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +6 -10
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js +1 -1
- package/lib/esm/appui-react/statusbar/StatusBarComposer.js.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.d.ts +3 -3
- package/lib/esm/appui-react/statusfields/Indicator.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/Indicator.js.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/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js +20 -18
- package/lib/esm/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js +1 -1
- package/lib/esm/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.d.ts +1 -0
- package/lib/esm/appui-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/esm/appui-react/toolbar/Toolbar.js +8 -3
- package/lib/esm/appui-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts +5 -26
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js +17 -17
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts +38 -0
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.d.ts.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js +92 -0
- package/lib/esm/appui-react/ui-items-provider/StandardContentToolsUiItemsProvider.js.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts +1 -18
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts +33 -0
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.d.ts.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js +47 -0
- package/lib/esm/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.js.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts +3 -18
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js +4 -3
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarItemsProvider.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts +31 -0
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.d.ts.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js +75 -0
- package/lib/esm/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.js.map +1 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +5 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.js +8 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js +3 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js.map +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/useUiStateStorage.js +1 -0
- package/lib/esm/appui-react/uistate/useUiStateStorage.js.map +1 -1
- package/lib/esm/appui-react/utils/PropsHelper.d.ts +3 -1
- package/lib/esm/appui-react/utils/PropsHelper.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/PropsHelper.js +11 -1
- package/lib/esm/appui-react/utils/PropsHelper.js.map +1 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +1 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.js +1 -0
- package/lib/esm/appui-react/utils/UiShowHideManager.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts +17 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +144 -130
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.js +15 -2
- package/lib/esm/appui-react/widget-panels/ToolSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/ToolSettings.scss +17 -1
- package/lib/esm/appui-react/widgets/BackstageAppButton.js +3 -3
- package/lib/esm/appui-react/widgets/BackstageAppButton.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +8 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +14 -4
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.d.ts +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetHost.js +106 -7
- package/lib/esm/appui-react/widgets/WidgetHost.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetManager.js +2 -1
- package/lib/esm/appui-react/widgets/WidgetManager.js.map +1 -1
- package/lib/esm/appui-react.d.ts +3 -0
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +3 -0
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +7 -2
- package/package.json +37 -37
|
@@ -15,7 +15,10 @@ export declare enum ConfigurableUiActionId {
|
|
|
15
15
|
SetDragInteraction = "configurableui:set-drag-interaction",
|
|
16
16
|
SetFrameworkVersion = "configurableui:set-framework-version",
|
|
17
17
|
SetShowWidgetIcon = "configurableui:set-show-widget-icon",
|
|
18
|
-
|
|
18
|
+
/** @alpha */
|
|
19
|
+
AutoCollapseUnpinnedPanels = "configurableui:set-auto-collapse-unpinned-panels",
|
|
20
|
+
SetViewOverlayDisplay = "configurableui:set-view-overlay-display",
|
|
21
|
+
AnimateToolSettings = "configurableui:set-animate-tool-settings"
|
|
19
22
|
}
|
|
20
23
|
/** The portion of state managed by the ConfigurableUiReducer.
|
|
21
24
|
* @public
|
|
@@ -28,7 +31,10 @@ export interface ConfigurableUiState {
|
|
|
28
31
|
useDragInteraction: boolean;
|
|
29
32
|
frameworkVersion: FrameworkVersionId;
|
|
30
33
|
showWidgetIcon: boolean;
|
|
34
|
+
/** @alpha */
|
|
35
|
+
autoCollapseUnpinnedPanels: boolean;
|
|
31
36
|
viewOverlayDisplay: boolean;
|
|
37
|
+
animateToolSettings: boolean;
|
|
32
38
|
}
|
|
33
39
|
/** An object with a function that creates each ConfigurableUiReducer that can be handled by our reducer.
|
|
34
40
|
* @public
|
|
@@ -41,7 +47,9 @@ export declare const ConfigurableUiActions: {
|
|
|
41
47
|
setDragInteraction: (dragInteraction: boolean) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.SetDragInteraction, boolean>;
|
|
42
48
|
setFrameworkVersion: (frameworkVersion: FrameworkVersionId) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.SetFrameworkVersion, FrameworkVersionId>;
|
|
43
49
|
setShowWidgetIcon: (showWidgetIcon: boolean) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.SetShowWidgetIcon, boolean>;
|
|
50
|
+
setAutoCollapseUnpinnedPanels: (autoCollapse: boolean) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.AutoCollapseUnpinnedPanels, boolean>;
|
|
44
51
|
setViewOverlayDisplay: (displayViewOverlay: boolean) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.SetViewOverlayDisplay, boolean>;
|
|
52
|
+
setAnimateToolSettings: (animateToolSettings: boolean) => import("../redux/redux-ts").ActionWithPayload<ConfigurableUiActionId.AnimateToolSettings, boolean>;
|
|
45
53
|
};
|
|
46
54
|
/** Union of ConfigurableUi Redux actions
|
|
47
55
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/configurableui/state.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAIpD;;;GAGG;AACH,oBAAY,sBAAsB;IAChC,WAAW,gCAAgC;IAC3C,QAAQ,6BAA6B;IACrC,aAAa,kCAAkC;IAC/C,gBAAgB,sCAAsC;IACtD,kBAAkB,wCAAwC;IAC1D,mBAAmB,yCAAyC;IAC5D,iBAAiB,wCAAwC;IACzD,qBAAqB,4CAA4C;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/configurableui/state.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAIpD;;;GAGG;AACH,oBAAY,sBAAsB;IAChC,WAAW,gCAAgC;IAC3C,QAAQ,6BAA6B;IACrC,aAAa,kCAAkC;IAC/C,gBAAgB,sCAAsC;IACtD,kBAAkB,wCAAwC;IAC1D,mBAAmB,yCAAyC;IAC5D,iBAAiB,wCAAwC;IACzD,aAAa;IACb,0BAA0B,qDAAqD;IAC/E,qBAAqB,4CAA4C;IACjE,mBAAmB,6CAA6C;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa;IACb,0BAA0B,EAAE,OAAO,CAAC;IACpC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAgBD;;GAEG;AACH,eAAO,MAAM,qBAAqB;4BACR,MAAM;sBAGpB,MAAM;gCAGD,MAAM;gCAGT,MAAM;0CACoB,OAAO;4CACL,kBAAkB;wCACtB,OAAO;kDACG,OAAO;gDACT,OAAO;kDACL,OAAO;CACtD,CAAC;AAEF;;GAEG;AACH,oBAAY,0BAA0B,GAAG,YAAY,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,iCAAoC,EAAE,MAAM,EAAE,0BAA0B,GAAG,mBAAmB,CAqCxI"}
|
|
@@ -22,7 +22,10 @@ export var ConfigurableUiActionId;
|
|
|
22
22
|
ConfigurableUiActionId["SetDragInteraction"] = "configurableui:set-drag-interaction";
|
|
23
23
|
ConfigurableUiActionId["SetFrameworkVersion"] = "configurableui:set-framework-version";
|
|
24
24
|
ConfigurableUiActionId["SetShowWidgetIcon"] = "configurableui:set-show-widget-icon";
|
|
25
|
+
/** @alpha */
|
|
26
|
+
ConfigurableUiActionId["AutoCollapseUnpinnedPanels"] = "configurableui:set-auto-collapse-unpinned-panels";
|
|
25
27
|
ConfigurableUiActionId["SetViewOverlayDisplay"] = "configurableui:set-view-overlay-display";
|
|
28
|
+
ConfigurableUiActionId["AnimateToolSettings"] = "configurableui:set-animate-tool-settings";
|
|
26
29
|
})(ConfigurableUiActionId || (ConfigurableUiActionId = {}));
|
|
27
30
|
/** used on first call of ConfigurableUiReducer */
|
|
28
31
|
const initialState = {
|
|
@@ -33,7 +36,9 @@ const initialState = {
|
|
|
33
36
|
useDragInteraction: false,
|
|
34
37
|
frameworkVersion: "2",
|
|
35
38
|
showWidgetIcon: true,
|
|
39
|
+
autoCollapseUnpinnedPanels: false,
|
|
36
40
|
viewOverlayDisplay: true,
|
|
41
|
+
animateToolSettings: false,
|
|
37
42
|
};
|
|
38
43
|
/** An object with a function that creates each ConfigurableUiReducer that can be handled by our reducer.
|
|
39
44
|
* @public
|
|
@@ -52,7 +57,9 @@ export const ConfigurableUiActions = {
|
|
|
52
57
|
setDragInteraction: (dragInteraction) => createAction(ConfigurableUiActionId.SetDragInteraction, dragInteraction),
|
|
53
58
|
setFrameworkVersion: (frameworkVersion) => createAction(ConfigurableUiActionId.SetFrameworkVersion, frameworkVersion),
|
|
54
59
|
setShowWidgetIcon: (showWidgetIcon) => createAction(ConfigurableUiActionId.SetShowWidgetIcon, showWidgetIcon),
|
|
60
|
+
setAutoCollapseUnpinnedPanels: (autoCollapse) => createAction(ConfigurableUiActionId.AutoCollapseUnpinnedPanels, autoCollapse),
|
|
55
61
|
setViewOverlayDisplay: (displayViewOverlay) => createAction(ConfigurableUiActionId.SetViewOverlayDisplay, displayViewOverlay),
|
|
62
|
+
setAnimateToolSettings: (animateToolSettings) => createAction(ConfigurableUiActionId.AnimateToolSettings, animateToolSettings),
|
|
56
63
|
};
|
|
57
64
|
/** Handles actions to update ConfigurableUiState.
|
|
58
65
|
* @public
|
|
@@ -82,9 +89,15 @@ export function ConfigurableUiReducer(state = initialState, action) {
|
|
|
82
89
|
case ConfigurableUiActionId.SetShowWidgetIcon: {
|
|
83
90
|
return { ...state, showWidgetIcon: action.payload };
|
|
84
91
|
}
|
|
92
|
+
case ConfigurableUiActionId.AutoCollapseUnpinnedPanels: {
|
|
93
|
+
return { ...state, autoCollapseUnpinnedPanels: action.payload };
|
|
94
|
+
}
|
|
85
95
|
case ConfigurableUiActionId.SetViewOverlayDisplay: {
|
|
86
96
|
return { ...state, viewOverlayDisplay: action.payload };
|
|
87
97
|
}
|
|
98
|
+
case ConfigurableUiActionId.AnimateToolSettings: {
|
|
99
|
+
return { ...state, animateToolSettings: action.payload };
|
|
100
|
+
}
|
|
88
101
|
}
|
|
89
102
|
return outState;
|
|
90
103
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../src/appui-react/configurableui/state.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAgB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAG7F,mDAAmD;AAEnD;;;GAGG;AACH,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../src/appui-react/configurableui/state.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module State\r\n */\r\n\r\nimport { SnapMode } from \"@itwin/core-frontend\";\r\nimport { ActionsUnion, createAction } from \"../redux/redux-ts\";\r\nimport { SYSTEM_PREFERRED_COLOR_THEME, WIDGET_OPACITY_DEFAULT } from \"../theme/ThemeManager\";\r\nimport { FrameworkVersionId } from \"../UiFramework\";\r\n\r\n// cSpell:ignore configurableui snapmode toolprompt\r\n\r\n/** Action Ids used by Redux and to send sync UI components. Typically used to refresh visibility or enable state of control.\r\n * Since these are also used as sync ids they should be in lowercase.\r\n * @public\r\n */\r\nexport enum ConfigurableUiActionId {\r\n SetSnapMode = \"configurableui:set_snapmode\",\r\n SetTheme = \"configurableui:set_theme\",\r\n SetToolPrompt = \"configurableui:set_toolprompt\",\r\n SetWidgetOpacity = \"configurableui:set_widget_opacity\",\r\n SetDragInteraction = \"configurableui:set-drag-interaction\",\r\n SetFrameworkVersion = \"configurableui:set-framework-version\",\r\n SetShowWidgetIcon = \"configurableui:set-show-widget-icon\",\r\n /** @alpha */\r\n AutoCollapseUnpinnedPanels = \"configurableui:set-auto-collapse-unpinned-panels\",\r\n SetViewOverlayDisplay = \"configurableui:set-view-overlay-display\",\r\n AnimateToolSettings = \"configurableui:set-animate-tool-settings\",\r\n}\r\n\r\n/** The portion of state managed by the ConfigurableUiReducer.\r\n * @public\r\n */\r\nexport interface ConfigurableUiState {\r\n snapMode: number;\r\n toolPrompt: string;\r\n theme: string;\r\n widgetOpacity: number;\r\n useDragInteraction: boolean;\r\n frameworkVersion: FrameworkVersionId;\r\n showWidgetIcon: boolean;\r\n /** @alpha */\r\n autoCollapseUnpinnedPanels: boolean;\r\n viewOverlayDisplay: boolean;\r\n animateToolSettings: boolean;\r\n}\r\n\r\n/** used on first call of ConfigurableUiReducer */\r\nconst initialState: ConfigurableUiState = {\r\n snapMode: SnapMode.NearestKeypoint as number,\r\n toolPrompt: \"\",\r\n theme: SYSTEM_PREFERRED_COLOR_THEME,\r\n widgetOpacity: WIDGET_OPACITY_DEFAULT,\r\n useDragInteraction: false,\r\n frameworkVersion: \"2\",\r\n showWidgetIcon: true,\r\n autoCollapseUnpinnedPanels: false,\r\n viewOverlayDisplay: true,\r\n animateToolSettings: false,\r\n};\r\n\r\n/** An object with a function that creates each ConfigurableUiReducer that can be handled by our reducer.\r\n * @public\r\n */\r\nexport const ConfigurableUiActions = { // eslint-disable-line @typescript-eslint/naming-convention\r\n setSnapMode: (snapMode: number) => createAction(ConfigurableUiActionId.SetSnapMode, snapMode),\r\n setTheme:\r\n // istanbul ignore next\r\n (theme: string) => createAction(ConfigurableUiActionId.SetTheme, theme),\r\n setToolPrompt:\r\n // istanbul ignore next\r\n (toolPrompt: string) => createAction(ConfigurableUiActionId.SetToolPrompt, toolPrompt),\r\n setWidgetOpacity:\r\n // istanbul ignore next\r\n (opacity: number) => createAction(ConfigurableUiActionId.SetWidgetOpacity, opacity),\r\n setDragInteraction: (dragInteraction: boolean) => createAction(ConfigurableUiActionId.SetDragInteraction, dragInteraction),\r\n setFrameworkVersion: (frameworkVersion: FrameworkVersionId) => createAction(ConfigurableUiActionId.SetFrameworkVersion, frameworkVersion),\r\n setShowWidgetIcon: (showWidgetIcon: boolean) => createAction(ConfigurableUiActionId.SetShowWidgetIcon, showWidgetIcon),\r\n setAutoCollapseUnpinnedPanels: (autoCollapse: boolean) => createAction(ConfigurableUiActionId.AutoCollapseUnpinnedPanels, autoCollapse),\r\n setViewOverlayDisplay: (displayViewOverlay: boolean) => createAction(ConfigurableUiActionId.SetViewOverlayDisplay, displayViewOverlay),\r\n setAnimateToolSettings: (animateToolSettings: boolean) => createAction(ConfigurableUiActionId.AnimateToolSettings, animateToolSettings),\r\n};\r\n\r\n/** Union of ConfigurableUi Redux actions\r\n * @public\r\n */\r\nexport type ConfigurableUiActionsUnion = ActionsUnion<typeof ConfigurableUiActions>;\r\n\r\n/** Handles actions to update ConfigurableUiState.\r\n * @public\r\n */\r\nexport function ConfigurableUiReducer(state: ConfigurableUiState = initialState, action: ConfigurableUiActionsUnion): ConfigurableUiState {\r\n const outState = state;\r\n\r\n switch (action.type) {\r\n case ConfigurableUiActionId.SetSnapMode: {\r\n return { ...state, snapMode: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetToolPrompt: {\r\n return { ...state, toolPrompt: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetTheme: {\r\n return { ...state, theme: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetWidgetOpacity: {\r\n return { ...state, widgetOpacity: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetDragInteraction: {\r\n return { ...state, useDragInteraction: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetFrameworkVersion: {\r\n const frameworkVersion = (action.payload);\r\n return { ...state, frameworkVersion };\r\n }\r\n case ConfigurableUiActionId.SetShowWidgetIcon: {\r\n return { ...state, showWidgetIcon: action.payload };\r\n }\r\n case ConfigurableUiActionId.AutoCollapseUnpinnedPanels: {\r\n return { ...state, autoCollapseUnpinnedPanels: action.payload };\r\n }\r\n case ConfigurableUiActionId.SetViewOverlayDisplay: {\r\n return { ...state, viewOverlayDisplay: action.payload };\r\n }\r\n case ConfigurableUiActionId.AnimateToolSettings: {\r\n return { ...state, animateToolSettings: action.payload };\r\n }\r\n }\r\n return outState;\r\n}\r\n"]}
|
|
@@ -22,7 +22,7 @@ export interface ContentProps {
|
|
|
22
22
|
* @public
|
|
23
23
|
*/
|
|
24
24
|
export interface ContentGroupProps {
|
|
25
|
-
/** An
|
|
25
|
+
/** An id for the [[ContentGroup]]. This id is used to locate a ContentGroup and it also can be used by an ContentGroupProvider to save/restore content settings */
|
|
26
26
|
id: string;
|
|
27
27
|
/** Content Layout Id or complete set of [[ContentLayoutProps]] */
|
|
28
28
|
layout: ContentLayoutProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentGroup.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/ContentGroup.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAW,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAA0B,gCAAgC,EAA6B,MAAM,yCAAyC,CAAC;AAG9I,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,oFAAoF;IACpF,OAAO,EAAE,MAAM,GAAG,gCAAgC,CAAC;IACnD,gEAAgE;IAChE,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,
|
|
1
|
+
{"version":3,"file":"ContentGroup.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/content/ContentGroup.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAW,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAA0B,gCAAgC,EAA6B,MAAM,yCAAyC,CAAC;AAG9I,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,oFAAoF;IACpF,OAAO,EAAE,MAAM,GAAG,gCAAgC,CAAC;IACnD,gEAAgE;IAChE,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mKAAmK;IACnK,EAAE,EAAE,MAAM,CAAC;IACX,mEAAmE;IACnE,MAAM,EAAE,kBAAkB,CAAC;IAC3B,kEAAkE;IAClE,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;GAGG;AACH,8BAAsB,oBAAoB;IACxC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IAE3E;;OAEG;IACI,kBAAkB,CAAC,iBAAiB,EAAE,iBAAiB;IAI9D;;OAEG;IACI,wBAAwB,CAAC,iBAAiB,EAAE,iBAAiB;IAIpE,kFAAkF;IACrE,uBAAuB;CACrC;AAED;;GAEG;AACH,oBAAY,eAAe,GAAG,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;AAE9D;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAK;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,gBAAgB,EAAE,YAAY,EAAE,CAAC;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,cAAc,CAAqC;IAE3D,IAAW,EAAE,WAEZ;gBAEW,iBAAiB,EAAE,iBAAiB;IAQhD,sFAAsF;IAC/E,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IA+BhG,wEAAwE;IACjE,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAIpE,iFAAiF;IAC1E,eAAe,IAAI,KAAK,CAAC,SAAS,EAAE;IAgB3C,kGAAkG;IAC3F,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,cAAc,GAAG,SAAS;IAe/E,uFAAuF;IAChF,mBAAmB;IAI1B,4EAA4E;IACrE,kBAAkB,IAAI,cAAc,EAAE;IAa7C,6CAA6C;IACtC,uBAAuB,IAAI,IAAI;IAItC,uCAAuC;IAChC,iBAAiB,IAAI,IAAI;IAEhC,0CAA0C;IACnC,oBAAoB,IAAI,IAAI;IAInC;;OAEG;IACI,MAAM,CAAC,eAAe,CAAC,EAAE,eAAe,GAAG,iBAAiB;IAuBnE;;OAEG;IACI,YAAY,IAAI,KAAK,CAAC,cAAc,GAAG,SAAS,CAAC;CAczD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentGroup.js","sourceRoot":"","sources":["../../../../src/appui-react/content/ContentGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ContentView\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { ScreenViewport } from \"@itwin/core-frontend\";\r\nimport { ContentLayoutProps, UiError } from \"@itwin/appui-abstract\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { ContentControl } from \"./ContentControl\";\r\nimport { FrontstageProps } from \"../frontstage/Frontstage\";\r\n\r\n/** Properties for content displayed in a content view\r\n * @public\r\n */\r\nexport interface ContentProps {\r\n /** A unique id for the Content View within the group */\r\n id: string;\r\n /** The class name or [[ConfigurableUiControlConstructor]] of the content control */\r\n classId: string | ConfigurableUiControlConstructor;\r\n /** Optional application data passed down to the Content View */\r\n applicationData?: any;\r\n}\r\n\r\n/** Properties for a [[ContentGroup]]\r\n * @public\r\n */\r\nexport interface ContentGroupProps {\r\n /** An optional id for the [[ContentGroup]] */\r\n id: string;\r\n /** Content Layout Id or complete set of [[ContentLayoutProps]] */\r\n layout: ContentLayoutProps;\r\n /** A collection of [[ContentProps]], one for each content view */\r\n contents: ContentProps[];\r\n}\r\n\r\n/** Abstract class that can be implemented and specified by frontstage to dynamically construct\r\n * content group just prior to activating the frontstage.\r\n * @public\r\n */\r\nexport abstract class ContentGroupProvider {\r\n abstract provideContentGroup(props: FrontstageProps): Promise<ContentGroup>;\r\n\r\n /** Allow provider to update any data stored in ContentGroupProps. Typically this may\r\n * be to remove applicationData entries.\r\n */\r\n public prepareToSaveProps(contentGroupProps: ContentGroupProps) {\r\n return contentGroupProps;\r\n }\r\n\r\n /** Allow provider to update any stored ContentGroupProps be it is to be used to create ContentGroup and layouts.\r\n * Typically this may be to add applicationData to content entries.\r\n */\r\n public applyUpdatesToSavedProps(contentGroupProps: ContentGroupProps) {\r\n return contentGroupProps;\r\n }\r\n\r\n /** Allow provider to save any content group data before the stage deactivated. */\r\n public async onFrontstageDeactivated() { }\r\n}\r\n\r\n/** Callback to process content properties during toJSON method\r\n * @public\r\n */\r\nexport type ContentCallback = (content: ContentProps) => void;\r\n\r\n/** ContentGroup class. Content Groups define content displayed in content views that are laid out using a [[ContentLayout]].\r\n * @public\r\n */\r\nexport class ContentGroup {\r\n private static _sId = 0;\r\n public groupId: string;\r\n public propsId: string;\r\n public layout: ContentLayoutProps;\r\n public contentPropsList: ContentProps[];\r\n private _contentControls = new Map<string, ContentControl>();\r\n private _contentSetMap = new Map<string, ContentControl>();\r\n\r\n public get id() {\r\n return this.groupId;\r\n }\r\n\r\n constructor(contentGroupProps: ContentGroupProps) {\r\n this.layout = { ...contentGroupProps.layout };\r\n this.propsId = contentGroupProps.id;\r\n // ensure we have a unique groupId for each instance of a content group - this will be used to generate a key in the React controls\r\n this.groupId = `[${contentGroupProps.id}-${ContentGroup._sId++}]`;\r\n this.contentPropsList = contentGroupProps.contents;\r\n }\r\n\r\n /** Gets a [[ContentControl]] from the Content Group based on its [[ContentProps]]. */\r\n public getContentControl(contentProps: ContentProps, _index: number): ContentControl | undefined {\r\n // ensure we have a unique control Id for each instance of a content control - this will be used as a key for the React control - see `ContentControl.getKeyedReactNode`\r\n const id = `${contentProps.id}::${this.groupId}`;\r\n let contentControl: ContentControl | undefined;\r\n\r\n if (!this._contentControls.get(contentProps.id)) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof contentProps.classId === \"string\") {\r\n if (!this._contentControls.get(contentProps.id) && ConfigurableUiManager.isControlRegistered(contentProps.classId)) {\r\n contentControl = ConfigurableUiManager.createControl(contentProps.classId, id, contentProps.applicationData, contentProps.id) as ContentControl;\r\n usedClassId = contentProps.classId;\r\n }\r\n } else {\r\n const info = new ConfigurableCreateInfo(contentProps.classId.name, id, contentProps.id);\r\n contentControl = new contentProps.classId(info, contentProps.applicationData) as ContentControl;\r\n usedClassId = contentProps.classId.name;\r\n }\r\n\r\n if (contentControl) {\r\n if (contentControl.getType() !== ConfigurableUiControlType.Content && contentControl.getType() !== ConfigurableUiControlType.Viewport) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getContentControl error: '${usedClassId}' is NOT a ContentControl or ViewportContentControl`);\r\n }\r\n contentControl.initialize();\r\n this._contentControls.set(contentProps.id, contentControl);\r\n }\r\n }\r\n\r\n return this._contentControls.get(contentProps.id);\r\n }\r\n\r\n /** Gets a [[ContentControl]] from the Content Group with a given ID. */\r\n public getContentControlById(id: string): ContentControl | undefined {\r\n return this._contentControls.get(id);\r\n }\r\n\r\n /** Gets the React nodes representing the Content Views in this Content Group. */\r\n public getContentNodes(): React.ReactNode[] {\r\n const contentNodes: React.ReactNode[] = new Array<React.ReactNode>();\r\n\r\n this._contentSetMap.clear();\r\n\r\n this.contentPropsList.forEach((contentProps: ContentProps, index: number) => {\r\n const control = this.getContentControl(contentProps, index);\r\n if (control) {\r\n contentNodes.push(control.reactNode);\r\n this._contentSetMap.set(control.controlId, control);\r\n }\r\n });\r\n\r\n return contentNodes;\r\n }\r\n\r\n /** Gets the [[ContentControl]] associated with a given React node representing a Content View. */\r\n public getControlFromElement(node: React.ReactNode): ContentControl | undefined {\r\n if (this._contentSetMap.size === 0)\r\n this.getContentNodes();\r\n\r\n if (node && (node as React.ReactElement<any>).key) {\r\n const key = ((node as React.ReactElement<any>).key as string);\r\n // key has format `${contentProps.id}::${this.groupId}` which is stored as unique id\r\n const controlId = key.split(\"::\", 1)[0];\r\n return this._contentSetMap.get(controlId);\r\n }\r\n\r\n Logger.logError(UiFramework.loggerCategory(this), `getControlFromElement: no control found for element`);\r\n return undefined;\r\n }\r\n\r\n /** Refreshes the React nodes representing the Content Views in this Content Group.. */\r\n public refreshContentNodes() {\r\n this._contentSetMap.clear();\r\n }\r\n\r\n /** Gets an array of the content controls representing the Content Views. */\r\n public getContentControls(): ContentControl[] {\r\n const contentControls: ContentControl[] = new Array<ContentControl>();\r\n\r\n this.contentPropsList.forEach((contentProps: ContentProps, index: number) => {\r\n const control = this.getContentControl(contentProps, index);\r\n if (control) {\r\n contentControls.push(control);\r\n }\r\n });\r\n\r\n return contentControls;\r\n }\r\n\r\n /** Called when Frontstage is deactivated. */\r\n public onFrontstageDeactivated(): void {\r\n this.clearContentControls();\r\n }\r\n\r\n /** Called when Frontstage is ready. */\r\n public onFrontstageReady(): void { }\r\n\r\n /** Clears the map of content controls. */\r\n public clearContentControls(): void {\r\n this._contentControls.clear();\r\n }\r\n\r\n /** Creates [[ContentGroupProps]] for JSON purposes\r\n * @public\r\n */\r\n public toJSON(contentCallback?: ContentCallback): ContentGroupProps {\r\n const contentGroupProps: ContentGroupProps = {\r\n id: this.propsId,\r\n layout: this.layout,\r\n contents: this.contentPropsList,\r\n };\r\n\r\n contentGroupProps.contents.forEach((content: ContentProps, index: number) => {\r\n if (typeof content.classId !== \"string\") {\r\n const classId = ConfigurableUiManager.getConstructorClassId(content.classId);\r\n if (classId !== undefined)\r\n content.classId = classId;\r\n else\r\n throw new UiError(UiFramework.loggerCategory(this), `toJSON: ContentControl at index ${index} is NOT registered with a string id`);\r\n\r\n if (contentCallback)\r\n contentCallback(content);\r\n }\r\n });\r\n\r\n return contentGroupProps;\r\n }\r\n\r\n /** Gets Viewports from Viewport Content Controls\r\n * @internal\r\n */\r\n public getViewports(): Array<ScreenViewport | undefined> {\r\n const contentControls = this.getContentControls();\r\n const viewports = new Array<ScreenViewport | undefined>();\r\n\r\n contentControls.forEach((control: ContentControl) => {\r\n if (control.isViewport && control.viewport) {\r\n viewports.push(control.viewport);\r\n } else {\r\n viewports.push(undefined);\r\n }\r\n });\r\n\r\n return viewports;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ContentGroup.js","sourceRoot":"","sources":["../../../../src/appui-react/content/ContentGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ContentView\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { ScreenViewport } from \"@itwin/core-frontend\";\r\nimport { ContentLayoutProps, UiError } from \"@itwin/appui-abstract\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { ContentControl } from \"./ContentControl\";\r\nimport { FrontstageProps } from \"../frontstage/Frontstage\";\r\n\r\n/** Properties for content displayed in a content view\r\n * @public\r\n */\r\nexport interface ContentProps {\r\n /** A unique id for the Content View within the group */\r\n id: string;\r\n /** The class name or [[ConfigurableUiControlConstructor]] of the content control */\r\n classId: string | ConfigurableUiControlConstructor;\r\n /** Optional application data passed down to the Content View */\r\n applicationData?: any;\r\n}\r\n\r\n/** Properties for a [[ContentGroup]]\r\n * @public\r\n */\r\nexport interface ContentGroupProps {\r\n /** An id for the [[ContentGroup]]. This id is used to locate a ContentGroup and it also can be used by an ContentGroupProvider to save/restore content settings */\r\n id: string;\r\n /** Content Layout Id or complete set of [[ContentLayoutProps]] */\r\n layout: ContentLayoutProps;\r\n /** A collection of [[ContentProps]], one for each content view */\r\n contents: ContentProps[];\r\n}\r\n\r\n/** Abstract class that can be implemented and specified by frontstage to dynamically construct\r\n * content group just prior to activating the frontstage.\r\n * @public\r\n */\r\nexport abstract class ContentGroupProvider {\r\n abstract provideContentGroup(props: FrontstageProps): Promise<ContentGroup>;\r\n\r\n /** Allow provider to update any data stored in ContentGroupProps. Typically this may\r\n * be to remove applicationData entries.\r\n */\r\n public prepareToSaveProps(contentGroupProps: ContentGroupProps) {\r\n return contentGroupProps;\r\n }\r\n\r\n /** Allow provider to update any stored ContentGroupProps be it is to be used to create ContentGroup and layouts.\r\n * Typically this may be to add applicationData to content entries.\r\n */\r\n public applyUpdatesToSavedProps(contentGroupProps: ContentGroupProps) {\r\n return contentGroupProps;\r\n }\r\n\r\n /** Allow provider to save any content group data before the stage deactivated. */\r\n public async onFrontstageDeactivated() { }\r\n}\r\n\r\n/** Callback to process content properties during toJSON method\r\n * @public\r\n */\r\nexport type ContentCallback = (content: ContentProps) => void;\r\n\r\n/** ContentGroup class. Content Groups define content displayed in content views that are laid out using a [[ContentLayout]].\r\n * @public\r\n */\r\nexport class ContentGroup {\r\n private static _sId = 0;\r\n public groupId: string;\r\n public propsId: string;\r\n public layout: ContentLayoutProps;\r\n public contentPropsList: ContentProps[];\r\n private _contentControls = new Map<string, ContentControl>();\r\n private _contentSetMap = new Map<string, ContentControl>();\r\n\r\n public get id() {\r\n return this.groupId;\r\n }\r\n\r\n constructor(contentGroupProps: ContentGroupProps) {\r\n this.layout = { ...contentGroupProps.layout };\r\n this.propsId = contentGroupProps.id;\r\n // ensure we have a unique groupId for each instance of a content group - this will be used to generate a key in the React controls\r\n this.groupId = `[${contentGroupProps.id}-${ContentGroup._sId++}]`;\r\n this.contentPropsList = contentGroupProps.contents;\r\n }\r\n\r\n /** Gets a [[ContentControl]] from the Content Group based on its [[ContentProps]]. */\r\n public getContentControl(contentProps: ContentProps, _index: number): ContentControl | undefined {\r\n // ensure we have a unique control Id for each instance of a content control - this will be used as a key for the React control - see `ContentControl.getKeyedReactNode`\r\n const id = `${contentProps.id}::${this.groupId}`;\r\n let contentControl: ContentControl | undefined;\r\n\r\n if (!this._contentControls.get(contentProps.id)) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof contentProps.classId === \"string\") {\r\n if (!this._contentControls.get(contentProps.id) && ConfigurableUiManager.isControlRegistered(contentProps.classId)) {\r\n contentControl = ConfigurableUiManager.createControl(contentProps.classId, id, contentProps.applicationData, contentProps.id) as ContentControl;\r\n usedClassId = contentProps.classId;\r\n }\r\n } else {\r\n const info = new ConfigurableCreateInfo(contentProps.classId.name, id, contentProps.id);\r\n contentControl = new contentProps.classId(info, contentProps.applicationData) as ContentControl;\r\n usedClassId = contentProps.classId.name;\r\n }\r\n\r\n if (contentControl) {\r\n if (contentControl.getType() !== ConfigurableUiControlType.Content && contentControl.getType() !== ConfigurableUiControlType.Viewport) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getContentControl error: '${usedClassId}' is NOT a ContentControl or ViewportContentControl`);\r\n }\r\n contentControl.initialize();\r\n this._contentControls.set(contentProps.id, contentControl);\r\n }\r\n }\r\n\r\n return this._contentControls.get(contentProps.id);\r\n }\r\n\r\n /** Gets a [[ContentControl]] from the Content Group with a given ID. */\r\n public getContentControlById(id: string): ContentControl | undefined {\r\n return this._contentControls.get(id);\r\n }\r\n\r\n /** Gets the React nodes representing the Content Views in this Content Group. */\r\n public getContentNodes(): React.ReactNode[] {\r\n const contentNodes: React.ReactNode[] = new Array<React.ReactNode>();\r\n\r\n this._contentSetMap.clear();\r\n\r\n this.contentPropsList.forEach((contentProps: ContentProps, index: number) => {\r\n const control = this.getContentControl(contentProps, index);\r\n if (control) {\r\n contentNodes.push(control.reactNode);\r\n this._contentSetMap.set(control.controlId, control);\r\n }\r\n });\r\n\r\n return contentNodes;\r\n }\r\n\r\n /** Gets the [[ContentControl]] associated with a given React node representing a Content View. */\r\n public getControlFromElement(node: React.ReactNode): ContentControl | undefined {\r\n if (this._contentSetMap.size === 0)\r\n this.getContentNodes();\r\n\r\n if (node && (node as React.ReactElement<any>).key) {\r\n const key = ((node as React.ReactElement<any>).key as string);\r\n // key has format `${contentProps.id}::${this.groupId}` which is stored as unique id\r\n const controlId = key.split(\"::\", 1)[0];\r\n return this._contentSetMap.get(controlId);\r\n }\r\n\r\n Logger.logError(UiFramework.loggerCategory(this), `getControlFromElement: no control found for element`);\r\n return undefined;\r\n }\r\n\r\n /** Refreshes the React nodes representing the Content Views in this Content Group.. */\r\n public refreshContentNodes() {\r\n this._contentSetMap.clear();\r\n }\r\n\r\n /** Gets an array of the content controls representing the Content Views. */\r\n public getContentControls(): ContentControl[] {\r\n const contentControls: ContentControl[] = new Array<ContentControl>();\r\n\r\n this.contentPropsList.forEach((contentProps: ContentProps, index: number) => {\r\n const control = this.getContentControl(contentProps, index);\r\n if (control) {\r\n contentControls.push(control);\r\n }\r\n });\r\n\r\n return contentControls;\r\n }\r\n\r\n /** Called when Frontstage is deactivated. */\r\n public onFrontstageDeactivated(): void {\r\n this.clearContentControls();\r\n }\r\n\r\n /** Called when Frontstage is ready. */\r\n public onFrontstageReady(): void { }\r\n\r\n /** Clears the map of content controls. */\r\n public clearContentControls(): void {\r\n this._contentControls.clear();\r\n }\r\n\r\n /** Creates [[ContentGroupProps]] for JSON purposes\r\n * @public\r\n */\r\n public toJSON(contentCallback?: ContentCallback): ContentGroupProps {\r\n const contentGroupProps: ContentGroupProps = {\r\n id: this.propsId,\r\n layout: this.layout,\r\n contents: this.contentPropsList,\r\n };\r\n\r\n contentGroupProps.contents.forEach((content: ContentProps, index: number) => {\r\n if (typeof content.classId !== \"string\") {\r\n const classId = ConfigurableUiManager.getConstructorClassId(content.classId);\r\n if (classId !== undefined)\r\n content.classId = classId;\r\n else\r\n throw new UiError(UiFramework.loggerCategory(this), `toJSON: ContentControl at index ${index} is NOT registered with a string id`);\r\n\r\n if (contentCallback)\r\n contentCallback(content);\r\n }\r\n });\r\n\r\n return contentGroupProps;\r\n }\r\n\r\n /** Gets Viewports from Viewport Content Controls\r\n * @internal\r\n */\r\n public getViewports(): Array<ScreenViewport | undefined> {\r\n const contentControls = this.getContentControls();\r\n const viewports = new Array<ScreenViewport | undefined>();\r\n\r\n contentControls.forEach((control: ContentControl) => {\r\n if (control.isViewport && control.viewport) {\r\n viewports.push(control.viewport);\r\n } else {\r\n viewports.push(undefined);\r\n }\r\n });\r\n\r\n return viewports;\r\n }\r\n}\r\n"]}
|
|
@@ -53,6 +53,7 @@ export declare class ElementTooltip extends React.Component<CommonProps, Element
|
|
|
53
53
|
render(): JSX.Element | null;
|
|
54
54
|
componentDidMount(): void;
|
|
55
55
|
componentWillUnmount(): void;
|
|
56
|
+
private static _handleMouseMove;
|
|
56
57
|
private _handleElementTooltipChangedEvent;
|
|
57
58
|
private _handleSizeChanged;
|
|
58
59
|
private updatePosition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElementTooltip.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAA+B,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE1E;;GAEG;AACH,UAAU,mBAAmB;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,EAAE,CAAC,EAAE,KAAK,CAAC;IACX,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAI;AAE3F;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,mBAAmB,CAAC;IACnF,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAAgE;IAC1G,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAU;IAEzC,WAAkB,4BAA4B,IAAI,0BAA0B,CAAuD;IACnI,WAAkB,gBAAgB,IAAI,OAAO,CAA6C;WAE5E,WAAW,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"ElementTooltip.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAA+B,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE1E;;GAEG;AACH,UAAU,mBAAmB;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,EAAE,CAAC,EAAE,KAAK,CAAC;IACX,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAI;AAE3F;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,mBAAmB,CAAC;IACnF,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAAgE;IAC1G,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAU;IAEzC,WAAkB,4BAA4B,IAAI,0BAA0B,CAAuD;IACnI,WAAkB,gBAAgB,IAAI,OAAO,CAA6C;WAE5E,WAAW,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;WASpG,WAAW,IAAI,IAAI;IAMjC,WAAkB,eAAe,IAAI,OAAO,CAA4C;IAExF,WAAkB,eAAe,CAAC,IAAI,EAAE,OAAO,EAI9C;IAED,OAAO,CAAC,KAAK,CAGX;IACF,OAAO,CAAC,QAAQ,CAAC,CAAc;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAa;IAE/B,gBAAgB;IAChB,SAAyB,KAAK,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAO3D;gBAEU,KAAK,EAAE,WAAW;IAId,MAAM;IAwBN,iBAAiB,IAAI,IAAI;IAIzB,oBAAoB,IAAI,IAAI;IAI5C,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAe/B,OAAO,CAAC,iCAAiC,CAQvC;IAGF,OAAO,CAAC,kBAAkB,CAGxB;IAEF,OAAO,CAAC,cAAc;CAuBvB"}
|
|
@@ -58,6 +58,7 @@ export class ElementTooltip extends React.Component {
|
|
|
58
58
|
return;
|
|
59
59
|
ElementTooltip._isTooltipVisible = true;
|
|
60
60
|
ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: true, el, message, pt, options });
|
|
61
|
+
el.ownerDocument.addEventListener("mousemove", ElementTooltip._handleMouseMove);
|
|
61
62
|
}
|
|
62
63
|
static hideTooltip() {
|
|
63
64
|
ElementTooltip._isTooltipVisible = false;
|
|
@@ -86,6 +87,21 @@ export class ElementTooltip extends React.Component {
|
|
|
86
87
|
componentWillUnmount() {
|
|
87
88
|
ElementTooltip.onElementTooltipChangedEvent.removeListener(this._handleElementTooltipChangedEvent);
|
|
88
89
|
}
|
|
90
|
+
static _handleMouseMove(event) {
|
|
91
|
+
const el = event.currentTarget;
|
|
92
|
+
/* Only monitor mouse movement when an ElementTooltip is open. */
|
|
93
|
+
if (el && ElementTooltip._isTooltipHalted || !ElementTooltip._isTooltipVisible) {
|
|
94
|
+
el.removeEventListener("mousemove", ElementTooltip._handleMouseMove);
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const hoveredElement = el ? el.elementFromPoint(event.clientX, event.clientY) : undefined;
|
|
98
|
+
/* If the mouse has moved to an element that is not the view canvas, close the ElementTooltip. */
|
|
99
|
+
if (hoveredElement && hoveredElement.localName !== "canvas") {
|
|
100
|
+
ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: false, message: "" });
|
|
101
|
+
el.removeEventListener("mousemove", ElementTooltip._handleMouseMove);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
89
105
|
updatePosition() {
|
|
90
106
|
this.setState((prevState) => {
|
|
91
107
|
if (!this._element)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElementTooltip.js","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAc,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAsB,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAwBrD;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,OAAuC;CAAI;AAE3F;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAA2C;IA+CnF,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;QAlBP,UAAK,GAAc;YACzB,MAAM,EAAE,CAAC;YACT,KAAK,EAAE,CAAC;SACT,CAAC;QAIF,gBAAgB;QACS,UAAK,GAAkC;YAC9D,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE;gBACR,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;aACL;SACF,CAAC;QAsCM,sCAAiC,GAAG,CAAC,IAAoC,EAAE,EAAE;YACnF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC;gBACZ,SAAS,EAAE,IAAI,CAAC,gBAAgB;gBAChC,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,uBAAuB;QACf,uBAAkB,GAAG,CAAC,IAAe,EAAE,EAAE;YAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC;IAhDF,CAAC;IA5CM,MAAM,KAAK,4BAA4B,KAAiC,OAAO,cAAc,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAC5H,MAAM,KAAK,gBAAgB,KAAc,OAAO,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAEnF,MAAM,CAAC,WAAW,CAAC,EAAe,EAAE,OAA0B,EAAE,EAAU,EAAE,OAAwB;QACzG,qBAAqB;QACrB,IAAI,cAAc,CAAC,gBAAgB;YACjC,OAAO;QACT,cAAc,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACxC,cAAc,CAAC,4BAA4B,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACzG,CAAC;IAEM,MAAM,CAAC,WAAW;QACvB,cAAc,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACzC,cAAc,CAAC,4BAA4B,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,uBAAuB;IAChB,MAAM,KAAK,eAAe,KAAc,OAAO,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACxF,uBAAuB;IAChB,MAAM,KAAK,eAAe,CAAC,IAAa;QAC7C,cAAc,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACvC,IAAI,IAAI,IAAI,cAAc,CAAC,iBAAiB;YAC1C,cAAc,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IAuBe,MAAM;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;YACvB,OAAO,IAAI,CAAC;QAEd,MAAM,SAAS,GAAG,UAAU,CAC1B,sBAAsB,EACtB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAExB,MAAM,WAAW,GAAG,oBAAC,UAAU,IAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAI,CAAC;QAEhE,OAAO,CACL,6BAAK,SAAS,EAAC,gCAAgC;YAC7C,oBAAC,OAAO,CAAC,8CAA8C;gBACrD,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,aAAa,EAAE,IAAI,CAAC,kBAAkB,IAErC,WAAW,CACJ,CACN,CACP,CAAC;IACJ,CAAC;IAEe,iBAAiB;QAC/B,cAAc,CAAC,4BAA4B,CAAC,WAAW,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAClG,CAAC;IAEe,oBAAoB;QAClC,cAAc,CAAC,4BAA4B,CAAC,cAAc,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IACrG,CAAC;IAkBO,cAAc;QACpB,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAChB,OAAO,IAAI,CAAC;YACd,uBAAuB;YACvB,IAAI,CAAC,IAAI,CAAC,SAAS;gBACjB,OAAO,IAAI,CAAC;YAEd,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;YAChF,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnF,MAAM,gBAAgB,GAAU,2BAA2B,CAAC,cAAc,EAAE,eAAe,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAEpE,uBAAuB;YACvB,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACrC,OAAO,IAAI,CAAC;YAEd,uBAAuB;YACvB,OAAO;gBACL,QAAQ;aACT,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AAxHc,0CAA2B,GAA+B,IAAI,0BAA0B,EAAE,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Notification\r\n */\r\n\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport { ToolTipOptions } from \"@itwin/core-frontend\";\r\nimport { PointProps, UiEvent } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, Point, Rectangle, SizeProps } from \"@itwin/core-react\";\r\nimport { offsetAndContainInContainer, Tooltip } from \"@itwin/appui-layout-react\";\r\nimport { MessageDiv } from \"../messages/MessageSpan\";\r\nimport { NotifyMessageType } from \"../messages/ReactNotifyMessageDetails\";\r\n\r\n/** [[ElementTooltip]] State.\r\n * @internal\r\n */\r\ninterface ElementTooltipState {\r\n isVisible: boolean;\r\n message: NotifyMessageType;\r\n position: PointProps;\r\n options?: ToolTipOptions;\r\n}\r\n\r\n/** [[ElementTooltipChangedEvent]] arguments.\r\n * @public\r\n */\r\nexport interface ElementTooltipChangedEventArgs {\r\n isTooltipVisible: boolean;\r\n message: NotifyMessageType;\r\n el?: HTMLElement;\r\n pt?: XAndY;\r\n options?: ToolTipOptions;\r\n}\r\n\r\n/** ElementTooltip Changed Event class.\r\n * @public\r\n */\r\nexport class ElementTooltipChangedEvent extends UiEvent<ElementTooltipChangedEventArgs> { }\r\n\r\n/** ElementTooltip React component.\r\n * @public\r\n */\r\nexport class ElementTooltip extends React.Component<CommonProps, ElementTooltipState> {\r\n private static _elementTooltipChangedEvent: ElementTooltipChangedEvent = new ElementTooltipChangedEvent();\r\n private static _isTooltipVisible: boolean;\r\n private static _isTooltipHalted: boolean;\r\n\r\n public static get onElementTooltipChangedEvent(): ElementTooltipChangedEvent { return ElementTooltip._elementTooltipChangedEvent; }\r\n public static get isTooltipVisible(): boolean { return ElementTooltip._isTooltipVisible; }\r\n\r\n public static showTooltip(el: HTMLElement, message: NotifyMessageType, pt?: XAndY, options?: ToolTipOptions): void {\r\n // istanbul ignore if\r\n if (ElementTooltip._isTooltipHalted)\r\n return;\r\n ElementTooltip._isTooltipVisible = true;\r\n ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: true, el, message, pt, options });\r\n }\r\n\r\n public static hideTooltip(): void {\r\n ElementTooltip._isTooltipVisible = false;\r\n ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: false, message: \"\" });\r\n }\r\n\r\n // istanbul ignore next\r\n public static get isTooltipHalted(): boolean { return ElementTooltip._isTooltipHalted; }\r\n // istanbul ignore next\r\n public static set isTooltipHalted(halt: boolean) {\r\n ElementTooltip._isTooltipHalted = halt;\r\n if (halt && ElementTooltip._isTooltipVisible)\r\n ElementTooltip.hideTooltip();\r\n }\r\n\r\n private _size: SizeProps = {\r\n height: 0,\r\n width: 0,\r\n };\r\n private _element?: HTMLElement;\r\n private _position?: PointProps;\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ElementTooltipState> = {\r\n message: \"\",\r\n isVisible: false,\r\n position: {\r\n x: 0,\r\n y: 0,\r\n },\r\n };\r\n\r\n constructor(props: CommonProps) {\r\n super(props);\r\n }\r\n\r\n public override render() {\r\n if (!this.state.isVisible)\r\n return null;\r\n\r\n const className = classnames(\r\n \"uifw-element-tooltip\",\r\n this.props.className);\r\n\r\n const messageNode = <MessageDiv message={this.state.message} />;\r\n\r\n return (\r\n <div className=\"uifw-element-tooltip-container\">\r\n <Tooltip // eslint-disable-line deprecation/deprecation\r\n className={className}\r\n style={this.props.style}\r\n position={this.state.position}\r\n onSizeChanged={this._handleSizeChanged}\r\n >\r\n {messageNode}\r\n </Tooltip>\r\n </div>\r\n );\r\n }\r\n\r\n public override componentDidMount(): void {\r\n ElementTooltip.onElementTooltipChangedEvent.addListener(this._handleElementTooltipChangedEvent);\r\n }\r\n\r\n public override componentWillUnmount(): void {\r\n ElementTooltip.onElementTooltipChangedEvent.removeListener(this._handleElementTooltipChangedEvent);\r\n }\r\n\r\n private _handleElementTooltipChangedEvent = (args: ElementTooltipChangedEventArgs) => {\r\n this._element = args.el;\r\n this._position = args.pt;\r\n this.setState({\r\n isVisible: args.isTooltipVisible,\r\n message: args.message,\r\n });\r\n this.updatePosition();\r\n };\r\n\r\n // istanbul ignore next\r\n private _handleSizeChanged = (size: SizeProps) => {\r\n this._size = size;\r\n this.updatePosition();\r\n };\r\n\r\n private updatePosition() {\r\n this.setState((prevState) => {\r\n if (!this._element)\r\n return null;\r\n // istanbul ignore next\r\n if (!this._position)\r\n return null;\r\n\r\n const containerBounds = Rectangle.create(this._element.getBoundingClientRect());\r\n const relativeBounds = Rectangle.createFromSize(this._size).offset(this._position);\r\n const adjustedPosition: Point = offsetAndContainInContainer(relativeBounds, containerBounds.getSize(), { x: 8, y: 8 });\r\n const position = adjustedPosition.offset(containerBounds.topLeft());\r\n\r\n // istanbul ignore else\r\n if (position.equals(prevState.position))\r\n return null;\r\n\r\n // istanbul ignore next\r\n return {\r\n position,\r\n };\r\n });\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ElementTooltip.js","sourceRoot":"","sources":["../../../../src/appui-react/feedback/ElementTooltip.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Notification\r\n */\r\n\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport { ToolTipOptions } from \"@itwin/core-frontend\";\r\nimport { PointProps, UiEvent } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, Point, Rectangle, SizeProps } from \"@itwin/core-react\";\r\nimport { offsetAndContainInContainer, Tooltip } from \"@itwin/appui-layout-react\";\r\nimport { MessageDiv } from \"../messages/MessageSpan\";\r\nimport { NotifyMessageType } from \"../messages/ReactNotifyMessageDetails\";\r\n\r\n/** [[ElementTooltip]] State.\r\n * @internal\r\n */\r\ninterface ElementTooltipState {\r\n isVisible: boolean;\r\n message: NotifyMessageType;\r\n position: PointProps;\r\n options?: ToolTipOptions;\r\n}\r\n\r\n/** [[ElementTooltipChangedEvent]] arguments.\r\n * @public\r\n */\r\nexport interface ElementTooltipChangedEventArgs {\r\n isTooltipVisible: boolean;\r\n message: NotifyMessageType;\r\n el?: HTMLElement;\r\n pt?: XAndY;\r\n options?: ToolTipOptions;\r\n}\r\n\r\n/** ElementTooltip Changed Event class.\r\n * @public\r\n */\r\nexport class ElementTooltipChangedEvent extends UiEvent<ElementTooltipChangedEventArgs> { }\r\n\r\n/** ElementTooltip React component.\r\n * @public\r\n */\r\nexport class ElementTooltip extends React.Component<CommonProps, ElementTooltipState> {\r\n private static _elementTooltipChangedEvent: ElementTooltipChangedEvent = new ElementTooltipChangedEvent();\r\n private static _isTooltipVisible: boolean;\r\n private static _isTooltipHalted: boolean;\r\n\r\n public static get onElementTooltipChangedEvent(): ElementTooltipChangedEvent { return ElementTooltip._elementTooltipChangedEvent; }\r\n public static get isTooltipVisible(): boolean { return ElementTooltip._isTooltipVisible; }\r\n\r\n public static showTooltip(el: HTMLElement, message: NotifyMessageType, pt?: XAndY, options?: ToolTipOptions): void {\r\n // istanbul ignore if\r\n if (ElementTooltip._isTooltipHalted)\r\n return;\r\n ElementTooltip._isTooltipVisible = true;\r\n ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: true, el, message, pt, options });\r\n el.ownerDocument.addEventListener(\"mousemove\", ElementTooltip._handleMouseMove);\r\n }\r\n\r\n public static hideTooltip(): void {\r\n ElementTooltip._isTooltipVisible = false;\r\n ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: false, message: \"\" });\r\n }\r\n\r\n // istanbul ignore next\r\n public static get isTooltipHalted(): boolean { return ElementTooltip._isTooltipHalted; }\r\n // istanbul ignore next\r\n public static set isTooltipHalted(halt: boolean) {\r\n ElementTooltip._isTooltipHalted = halt;\r\n if (halt && ElementTooltip._isTooltipVisible)\r\n ElementTooltip.hideTooltip();\r\n }\r\n\r\n private _size: SizeProps = {\r\n height: 0,\r\n width: 0,\r\n };\r\n private _element?: HTMLElement;\r\n private _position?: PointProps;\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ElementTooltipState> = {\r\n message: \"\",\r\n isVisible: false,\r\n position: {\r\n x: 0,\r\n y: 0,\r\n },\r\n };\r\n\r\n constructor(props: CommonProps) {\r\n super(props);\r\n }\r\n\r\n public override render() {\r\n if (!this.state.isVisible)\r\n return null;\r\n\r\n const className = classnames(\r\n \"uifw-element-tooltip\",\r\n this.props.className);\r\n\r\n const messageNode = <MessageDiv message={this.state.message} />;\r\n\r\n return (\r\n <div className=\"uifw-element-tooltip-container\">\r\n <Tooltip // eslint-disable-line deprecation/deprecation\r\n className={className}\r\n style={this.props.style}\r\n position={this.state.position}\r\n onSizeChanged={this._handleSizeChanged}\r\n >\r\n {messageNode}\r\n </Tooltip>\r\n </div>\r\n );\r\n }\r\n\r\n public override componentDidMount(): void {\r\n ElementTooltip.onElementTooltipChangedEvent.addListener(this._handleElementTooltipChangedEvent);\r\n }\r\n\r\n public override componentWillUnmount(): void {\r\n ElementTooltip.onElementTooltipChangedEvent.removeListener(this._handleElementTooltipChangedEvent);\r\n }\r\n\r\n private static _handleMouseMove(event: MouseEvent){\r\n const el = event.currentTarget as Document;\r\n /* Only monitor mouse movement when an ElementTooltip is open. */\r\n if (el && ElementTooltip._isTooltipHalted || !ElementTooltip._isTooltipVisible) {\r\n el.removeEventListener(\"mousemove\", ElementTooltip._handleMouseMove);\r\n return;\r\n }\r\n const hoveredElement = el ? el.elementFromPoint(event.clientX, event.clientY) : undefined;\r\n /* If the mouse has moved to an element that is not the view canvas, close the ElementTooltip. */\r\n if (hoveredElement && hoveredElement.localName !== \"canvas\" ) {\r\n ElementTooltip.onElementTooltipChangedEvent.emit({ isTooltipVisible: false, message: \"\" });\r\n el.removeEventListener(\"mousemove\", ElementTooltip._handleMouseMove);\r\n return;\r\n }\r\n }\r\n private _handleElementTooltipChangedEvent = (args: ElementTooltipChangedEventArgs) => {\r\n this._element = args.el;\r\n this._position = args.pt;\r\n this.setState({\r\n isVisible: args.isTooltipVisible,\r\n message: args.message,\r\n });\r\n this.updatePosition();\r\n };\r\n\r\n // istanbul ignore next\r\n private _handleSizeChanged = (size: SizeProps) => {\r\n this._size = size;\r\n this.updatePosition();\r\n };\r\n\r\n private updatePosition() {\r\n this.setState((prevState) => {\r\n if (!this._element)\r\n return null;\r\n // istanbul ignore next\r\n if (!this._position)\r\n return null;\r\n\r\n const containerBounds = Rectangle.create(this._element.getBoundingClientRect());\r\n const relativeBounds = Rectangle.createFromSize(this._size).offset(this._position);\r\n const adjustedPosition: Point = offsetAndContainInContainer(relativeBounds, containerBounds.getSize(), { x: 8, y: 8 });\r\n const position = adjustedPosition.offset(containerBounds.topLeft());\r\n\r\n // istanbul ignore else\r\n if (position.equals(prevState.position))\r\n return null;\r\n\r\n // istanbul ignore next\r\n return {\r\n position,\r\n };\r\n });\r\n }\r\n}\r\n"]}
|
|
@@ -9,6 +9,7 @@ import { ContentGroup, ContentGroupProvider } from "../content/ContentGroup";
|
|
|
9
9
|
import { ToolItemDef } from "../shared/ToolItemDef";
|
|
10
10
|
import { StagePanelProps } from "../stagepanels/StagePanel";
|
|
11
11
|
import { StagePanelDef } from "../stagepanels/StagePanelDef";
|
|
12
|
+
import { WidgetDef } from "../widgets/WidgetDef";
|
|
12
13
|
import { ZoneLocation, ZoneProps } from "../zones/Zone";
|
|
13
14
|
import { ZoneDef } from "../zones/ZoneDef";
|
|
14
15
|
import { FrontstageRuntimeProps, ZoneDefProvider } from "./FrontstageComposer";
|
|
@@ -144,5 +145,9 @@ export declare const getExtendedZone: (zoneId: WidgetZoneId, zones: ZonesManager
|
|
|
144
145
|
export declare const useActiveFrontstageId: () => string;
|
|
145
146
|
/** @internal */
|
|
146
147
|
export declare function useActiveFrontstageDef(): import("./FrontstageDef").FrontstageDef | undefined;
|
|
148
|
+
/** Hook that returns the widgetDef for a specific widgetId within the active frontstage.
|
|
149
|
+
* @public
|
|
150
|
+
*/
|
|
151
|
+
export declare function useSpecificWidgetDef(widgetId: string): WidgetDef | undefined;
|
|
147
152
|
export {};
|
|
148
153
|
//# sourceMappingURL=Frontstage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/frontstage/Frontstage.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,kBAAkB,EAAkE,MAAM,uBAAuB,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAa,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EACyF,YAAY,EAAiB,gBAAgB,EAC3I,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAA0B,eAAe,EAA0B,MAAM,2BAA2B,CAAC;AAC5G,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"Frontstage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/frontstage/Frontstage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -451,4 +451,11 @@ export function useActiveFrontstageDef() {
|
|
|
451
451
|
}, []);
|
|
452
452
|
return def;
|
|
453
453
|
}
|
|
454
|
+
/** Hook that returns the widgetDef for a specific widgetId within the active frontstage.
|
|
455
|
+
* @public
|
|
456
|
+
*/
|
|
457
|
+
export function useSpecificWidgetDef(widgetId) {
|
|
458
|
+
const frontstageDef = useActiveFrontstageDef();
|
|
459
|
+
return frontstageDef === null || frontstageDef === void 0 ? void 0 : frontstageDef.findWidgetDef(widgetId);
|
|
460
|
+
}
|
|
454
461
|
//# sourceMappingURL=Frontstage.js.map
|