@itwin/appui-react 3.2.0-dev.8 → 3.2.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/CHANGELOG.md +72 -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/FrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +2 -0
- package/lib/cjs/appui-react/frontstage/FrontstageManager.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/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
- package/lib/cjs/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +39 -26
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
- 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/SelectionScope.js +1 -1
- package/lib/cjs/appui-react/statusfields/SelectionScope.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/FrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +2 -0
- package/lib/esm/appui-react/frontstage/FrontstageManager.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/imodel-components/models-tree/Hierarchy.GroupedByClass.json +2 -0
- package/lib/esm/appui-react/imodel-components/models-tree/Hierarchy.json +2 -0
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js +39 -26
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsVisibilityHandler.js.map +1 -1
- 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/SelectionScope.js +1 -1
- package/lib/esm/appui-react/statusfields/SelectionScope.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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardNavigationToolsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardNavigationToolsProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAiI;AACjI,4DAAyD;AACzD,sEAAyD;
|
|
1
|
+
{"version":3,"file":"StandardNavigationToolsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardNavigationToolsProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0DAAiI;AACjI,4DAAyD;AACzD,sEAAyD;AAGzD;;;GAGG;AACH,MAAa,+BAAgC,SAAQ,oCAAmB;IAgBtE,YAAY,UAAkB,EAAU,sBAA+C,EAAE,gBAAuF;QAC9K,KAAK,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QADE,2BAAsB,GAAtB,sBAAsB,CAAyB;IAEvF,CAAC;IAjBD;;;;;;;;OAQG;IACI,MAAM,CAAC,QAAQ,CAAC,UAAkB,EAAE,sBAA+C,EAAE,gBAAuF;QACjL,MAAM,QAAQ,GAAG,IAAI,+BAA+B,CAAC,UAAU,EAAE,sBAAsB,EAAE,gBAAgB,CAAC,CAAC;QAC3G,+BAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAMe,iCAAiC,CAAC,QAAgB,EAAE,WAAmB,EAAE,YAA0B,EAAE,kBAAsC,EAAE,aAAmB;QAC9K,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,IAAI,YAAY,KAAK,6BAAY,CAAC,cAAc,IAAI,kBAAkB,KAAK,mCAAkB,CAAC,UAAU,EAAE;YAExG,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,UAAU;gBAC9H,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAE1F,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,OAAO;gBAC3H,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAEvF,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,OAAO,EAAE;gBAC7H,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,cAAc,CAAC,CAAC,CAAC;aACtF;YAED,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,UAAU,EAAE;gBAChI,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;aACzF;YAED,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,YAAY,EAAE;gBAClI,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,eAAe,CAAC,CAAC,CAAC;gBACtF,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,eAAe,CAAC,CAAC,CAAC;aACvF;SAEF;aAAM,IAAI,YAAY,KAAK,6BAAY,CAAC,cAAc,IAAI,kBAAkB,KAAK,mCAAkB,CAAC,QAAQ,EAAE;YAE7G,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI;gBACpH,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,eAAe,CAAC,CAAC,CAAC;YAExF,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,YAAY;gBAC5H,KAAK,CAAC,IAAI,CAAC,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC;SACjG;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AArDD,0EAqDC","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 StandardUiItemsProvider\r\n */\r\n\r\nimport { BaseUiItemsProvider, CommonToolbarItem, ToolbarOrientation, ToolbarUsage, UiItemsManager } from \"@itwin/appui-abstract\";\r\nimport { ToolbarHelper } from \"../toolbar/ToolbarHelper\";\r\nimport { CoreTools } from \"../tools/CoreToolDefinitions\";\r\nimport { DefaultNavigationTools } from \"./StandardNavigationToolsUiItemsProvider\";\r\n\r\n/**\r\n * Provide standard tools for the ViewNavigationWidgetComposer.\r\n * @public\r\n */\r\nexport class StandardNavigationToolsProvider extends BaseUiItemsProvider {\r\n /**\r\n * static function to register the StandardContentToolsProvider\r\n * @param providerId - unique identifier for this instance of the provider. This is required in case separate packages want\r\n * to set up custom stage with their own subset of standard tools\r\n * @param defaultNavigationTools - if undefined all available tools are provided to stage. If defined only those\r\n * specific tool buttons are shown.\r\n * @param isSupportedStage - optional function that will be called to determine if tools should be added to current stage. If not set and\r\n * the current stage's `usage` is set to `StageUsage.General` then the provider will add items to frontstage.\r\n */\r\n public static register(providerId: string, defaultNavigationTools?: DefaultNavigationTools, isSupportedStage?: (stageId: string, stageUsage: string, stageAppData?: any) => boolean) {\r\n const provider = new StandardNavigationToolsProvider(providerId, defaultNavigationTools, isSupportedStage);\r\n UiItemsManager.register(provider);\r\n return provider;\r\n }\r\n\r\n constructor(providerId: string, private defaultNavigationTools?: DefaultNavigationTools, isSupportedStage?: (stageId: string, stageUsage: string, stageAppData?: any) => boolean) {\r\n super(providerId, isSupportedStage);\r\n }\r\n\r\n public override provideToolbarButtonItemsInternal(_stageId: string, _stageUsage: string, toolbarUsage: ToolbarUsage, toolbarOrientation: ToolbarOrientation, _stageAppData?: any): CommonToolbarItem[] {\r\n const items: CommonToolbarItem[] = [];\r\n if (toolbarUsage === ToolbarUsage.ViewNavigation && toolbarOrientation === ToolbarOrientation.Horizontal) {\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.rotateView)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.rotateViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.panView)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.panViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.fitView) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(30, CoreTools.fitViewCommand));\r\n }\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.windowArea) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(40, CoreTools.windowAreaCommand));\r\n }\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.viewUndoRedo) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(50, CoreTools.viewUndoCommand));\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(60, CoreTools.viewRedoCommand));\r\n }\r\n\r\n } else if (toolbarUsage === ToolbarUsage.ViewNavigation && toolbarOrientation === ToolbarOrientation.Vertical) {\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.walk)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.walkViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.toggleCamera)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.toggleCameraViewCommand));\r\n }\r\n return items;\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module StandardUiItemsProvider
|
|
3
|
+
*/
|
|
4
|
+
import { CommonToolbarItem, ToolbarOrientation, ToolbarUsage, UiItemsProvider } from "@itwin/appui-abstract";
|
|
5
|
+
/**
|
|
6
|
+
* Defines what tools to include from the provider. If any tools in the horizontal or vertical group are
|
|
7
|
+
* specified then only those tools will be provided to stage.
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface DefaultNavigationTools {
|
|
11
|
+
horizontal?: {
|
|
12
|
+
rotateView?: boolean;
|
|
13
|
+
panView?: boolean;
|
|
14
|
+
fitView?: boolean;
|
|
15
|
+
windowArea?: boolean;
|
|
16
|
+
viewUndoRedo?: boolean;
|
|
17
|
+
};
|
|
18
|
+
vertical?: {
|
|
19
|
+
walk?: boolean;
|
|
20
|
+
toggleCamera?: boolean;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Provide standard tools for the ViewNavigationWidgetComposer.
|
|
25
|
+
* @beta
|
|
26
|
+
*/
|
|
27
|
+
export declare class StandardNavigationToolsUiItemsProvider implements UiItemsProvider {
|
|
28
|
+
private defaultNavigationTools?;
|
|
29
|
+
get id(): string;
|
|
30
|
+
constructor(defaultNavigationTools?: DefaultNavigationTools | undefined);
|
|
31
|
+
provideToolbarButtonItems(_stageId: string, _stageUsage: string, toolbarUsage: ToolbarUsage, toolbarOrientation: ToolbarOrientation, _stageAppData?: any): CommonToolbarItem[];
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=StandardNavigationToolsUiItemsProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardNavigationToolsUiItemsProvider.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EACL,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EACrE,MAAM,uBAAuB,CAAC;AAI/B;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE;QACX,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,sCAAuC,YAAW,eAAe;IAGhE,OAAO,CAAC,sBAAsB,CAAC;IAF3C,IAAW,EAAE,IAAI,MAAM,CAAiE;gBAEpE,sBAAsB,CAAC,oCAAwB;IAE5D,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,CAAC,EAAE,GAAG,GAAG,iBAAiB,EAAE;CAiCtL"}
|
|
@@ -0,0 +1,51 @@
|
|
|
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 StandardUiItemsProvider
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.StandardNavigationToolsUiItemsProvider = void 0;
|
|
11
|
+
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
12
|
+
const ToolbarHelper_1 = require("../toolbar/ToolbarHelper");
|
|
13
|
+
const CoreToolDefinitions_1 = require("../tools/CoreToolDefinitions");
|
|
14
|
+
/**
|
|
15
|
+
* Provide standard tools for the ViewNavigationWidgetComposer.
|
|
16
|
+
* @beta
|
|
17
|
+
*/
|
|
18
|
+
class StandardNavigationToolsUiItemsProvider {
|
|
19
|
+
constructor(defaultNavigationTools) {
|
|
20
|
+
this.defaultNavigationTools = defaultNavigationTools;
|
|
21
|
+
}
|
|
22
|
+
get id() { return "appui-react:StandardNavigationToolsUiItemsProvider"; }
|
|
23
|
+
provideToolbarButtonItems(_stageId, _stageUsage, toolbarUsage, toolbarOrientation, _stageAppData) {
|
|
24
|
+
const items = [];
|
|
25
|
+
if (toolbarUsage === appui_abstract_1.ToolbarUsage.ViewNavigation && toolbarOrientation === appui_abstract_1.ToolbarOrientation.Horizontal) {
|
|
26
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.rotateView)
|
|
27
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(10, CoreToolDefinitions_1.CoreTools.rotateViewCommand));
|
|
28
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.panView)
|
|
29
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(20, CoreToolDefinitions_1.CoreTools.panViewCommand));
|
|
30
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.fitView) {
|
|
31
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(30, CoreToolDefinitions_1.CoreTools.fitViewCommand));
|
|
32
|
+
}
|
|
33
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.windowArea) {
|
|
34
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(40, CoreToolDefinitions_1.CoreTools.windowAreaCommand));
|
|
35
|
+
}
|
|
36
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.viewUndoRedo) {
|
|
37
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(50, CoreToolDefinitions_1.CoreTools.viewUndoCommand));
|
|
38
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(60, CoreToolDefinitions_1.CoreTools.viewRedoCommand));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else /* istanbul ignore else */ if (toolbarUsage === appui_abstract_1.ToolbarUsage.ViewNavigation && toolbarOrientation === appui_abstract_1.ToolbarOrientation.Vertical) {
|
|
42
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.walk)
|
|
43
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(10, CoreToolDefinitions_1.CoreTools.walkViewCommand));
|
|
44
|
+
if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.toggleCamera)
|
|
45
|
+
items.push(ToolbarHelper_1.ToolbarHelper.createToolbarItemFromItemDef(20, CoreToolDefinitions_1.CoreTools.toggleCameraViewCommand));
|
|
46
|
+
}
|
|
47
|
+
return items;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.StandardNavigationToolsUiItemsProvider = StandardNavigationToolsUiItemsProvider;
|
|
51
|
+
//# sourceMappingURL=StandardNavigationToolsUiItemsProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardNavigationToolsUiItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardNavigationToolsUiItemsProvider.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 StandardUiItemsProvider\r\n */\r\n\r\nimport {\r\n CommonToolbarItem, ToolbarOrientation, ToolbarUsage, UiItemsProvider,\r\n} from \"@itwin/appui-abstract\";\r\nimport { ToolbarHelper } from \"../toolbar/ToolbarHelper\";\r\nimport { CoreTools } from \"../tools/CoreToolDefinitions\";\r\n\r\n/**\r\n * Defines what tools to include from the provider. If any tools in the horizontal or vertical group are\r\n * specified then only those tools will be provided to stage.\r\n * @public\r\n */\r\nexport interface DefaultNavigationTools {\r\n horizontal?: {\r\n rotateView?: boolean;\r\n panView?: boolean;\r\n fitView?: boolean;\r\n windowArea?: boolean;\r\n viewUndoRedo?: boolean;\r\n };\r\n vertical?: {\r\n walk?: boolean;\r\n toggleCamera?: boolean;\r\n };\r\n}\r\n\r\n/**\r\n * Provide standard tools for the ViewNavigationWidgetComposer.\r\n * @beta\r\n */\r\nexport class StandardNavigationToolsUiItemsProvider implements UiItemsProvider {\r\n public get id(): string { return \"appui-react:StandardNavigationToolsUiItemsProvider\"; }\r\n\r\n constructor(private defaultNavigationTools?: DefaultNavigationTools) { }\r\n\r\n public provideToolbarButtonItems(_stageId: string, _stageUsage: string, toolbarUsage: ToolbarUsage, toolbarOrientation: ToolbarOrientation, _stageAppData?: any): CommonToolbarItem[] {\r\n const items: CommonToolbarItem[] = [];\r\n if (toolbarUsage === ToolbarUsage.ViewNavigation && toolbarOrientation === ToolbarOrientation.Horizontal) {\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.rotateView)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.rotateViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.panView)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.panViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.fitView) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(30, CoreTools.fitViewCommand));\r\n }\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.windowArea) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(40, CoreTools.windowAreaCommand));\r\n }\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.horizontal || this.defaultNavigationTools.horizontal.viewUndoRedo) {\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(50, CoreTools.viewUndoCommand));\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(60, CoreTools.viewRedoCommand));\r\n }\r\n\r\n } else /* istanbul ignore else */if (toolbarUsage === ToolbarUsage.ViewNavigation && toolbarOrientation === ToolbarOrientation.Vertical) {\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.walk)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.walkViewCommand));\r\n\r\n if (!this.defaultNavigationTools || !this.defaultNavigationTools.vertical || this.defaultNavigationTools.vertical.toggleCamera)\r\n items.push(ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.toggleCameraViewCommand));\r\n }\r\n return items;\r\n }\r\n}\r\n"]}
|
|
@@ -2,24 +2,9 @@
|
|
|
2
2
|
* @module StandardUiItemsProvider
|
|
3
3
|
*/
|
|
4
4
|
import { BaseUiItemsProvider, CommonStatusBarItem } from "@itwin/appui-abstract";
|
|
5
|
+
import { DefaultStatusbarItems } from "./StandardStatusbarUiItemsProvider";
|
|
5
6
|
/**
|
|
6
|
-
*
|
|
7
|
-
* specified then only those items will be added to statusbar.
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
export interface DefaultStatusbarItems {
|
|
11
|
-
messageCenter?: boolean;
|
|
12
|
-
preToolAssistanceSeparator?: boolean;
|
|
13
|
-
toolAssistance?: boolean;
|
|
14
|
-
postToolAssistanceSeparator?: boolean;
|
|
15
|
-
activityCenter?: boolean;
|
|
16
|
-
accuSnapModePicker?: boolean;
|
|
17
|
-
tileLoadIndicator?: boolean;
|
|
18
|
-
selectionScope?: boolean;
|
|
19
|
-
selectionInfo?: boolean;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Provide standard tools for the SimpleStatusbarWidget
|
|
7
|
+
* Provide standard statusbar fields for the SimpleStatusbarWidget
|
|
23
8
|
* @public
|
|
24
9
|
*/
|
|
25
10
|
export declare class StandardStatusbarItemsProvider extends BaseUiItemsProvider {
|
|
@@ -29,7 +14,7 @@ export declare class StandardStatusbarItemsProvider extends BaseUiItemsProvider
|
|
|
29
14
|
* static function to register the StandardStatusbarItemsProvider
|
|
30
15
|
* @param providerId - unique identifier for this instance of the provider. This is required in case separate packages want
|
|
31
16
|
* to set up custom stage with their own subset of standard status bar items.
|
|
32
|
-
* @param defaultItems - if undefined all available
|
|
17
|
+
* @param defaultItems - if undefined all available item are provided to stage except for activityCenter. If defined only those
|
|
33
18
|
* specific tool buttons are shown.
|
|
34
19
|
* @param isSupportedStage - optional function that will be called to determine if tools should be added to current stage. If not set and
|
|
35
20
|
* the current stage's `usage` is set to `StageUsage.General` then the provider will add items to frontstage.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardStatusbarItemsProvider.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarItemsProvider.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAoC,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"StandardStatusbarItemsProvider.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarItemsProvider.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAoC,MAAM,uBAAuB,CAAC;AAYnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E;;;GAGG;AACH,qBAAa,8BAA+B,SAAQ,mBAAmB;IACrC,OAAO,CAAC,aAAa,CAAC;gBAA1C,UAAU,EAAE,MAAM,EAAU,aAAa,CAAC,mCAAuB,EAAE,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,KAAK,OAAO;IAItK;;;;;;;;MAQE;WACY,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,qBAAqB,EAAE,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,KAAK,OAAO;IAMxJ,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,GAAG,GAAG,mBAAmB,EAAE;CA0CjI"}
|
|
@@ -22,7 +22,7 @@ const SelectionInfo_1 = require("../statusfields/SelectionInfo");
|
|
|
22
22
|
const TileLoadingIndicator_1 = require("../statusfields/tileloading/TileLoadingIndicator");
|
|
23
23
|
const SelectionScope_1 = require("../statusfields/SelectionScope");
|
|
24
24
|
/**
|
|
25
|
-
* Provide standard
|
|
25
|
+
* Provide standard statusbar fields for the SimpleStatusbarWidget
|
|
26
26
|
* @public
|
|
27
27
|
*/
|
|
28
28
|
class StandardStatusbarItemsProvider extends appui_abstract_1.BaseUiItemsProvider {
|
|
@@ -34,7 +34,7 @@ class StandardStatusbarItemsProvider extends appui_abstract_1.BaseUiItemsProvide
|
|
|
34
34
|
* static function to register the StandardStatusbarItemsProvider
|
|
35
35
|
* @param providerId - unique identifier for this instance of the provider. This is required in case separate packages want
|
|
36
36
|
* to set up custom stage with their own subset of standard status bar items.
|
|
37
|
-
* @param defaultItems - if undefined all available
|
|
37
|
+
* @param defaultItems - if undefined all available item are provided to stage except for activityCenter. If defined only those
|
|
38
38
|
* specific tool buttons are shown.
|
|
39
39
|
* @param isSupportedStage - optional function that will be called to determine if tools should be added to current stage. If not set and
|
|
40
40
|
* the current stage's `usage` is set to `StageUsage.General` then the provider will add items to frontstage.
|
|
@@ -45,6 +45,7 @@ class StandardStatusbarItemsProvider extends appui_abstract_1.BaseUiItemsProvide
|
|
|
45
45
|
return provider;
|
|
46
46
|
}
|
|
47
47
|
provideStatusBarItemsInternal(_stageId, _stageUsage, _stageAppData) {
|
|
48
|
+
var _a;
|
|
48
49
|
const statusBarItems = [];
|
|
49
50
|
if (!this._defaultItems || this._defaultItems.messageCenter) {
|
|
50
51
|
const MessageCenter = (0, withMessageCenterFieldProps_1.withMessageCenterFieldProps)(MessageCenter_1.MessageCenterField);
|
|
@@ -58,7 +59,7 @@ class StandardStatusbarItemsProvider extends appui_abstract_1.BaseUiItemsProvide
|
|
|
58
59
|
if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)
|
|
59
60
|
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PostToolAssistance", appui_abstract_1.StatusBarSection.Left, 25, React.createElement(appui_layout_react_1.FooterSeparator, null)));
|
|
60
61
|
}
|
|
61
|
-
if (
|
|
62
|
+
if ((_a = this._defaultItems) === null || _a === void 0 ? void 0 : _a.activityCenter) {
|
|
62
63
|
const ActivityCenter = (0, withStatusFieldProps_1.withStatusFieldProps)(ActivityCenter_1.ActivityCenterField);
|
|
63
64
|
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.ActivityCenter", appui_abstract_1.StatusBarSection.Left, 30, React.createElement(ActivityCenter, null)));
|
|
64
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardStatusbarItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarItemsProvider.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,+BAA+B;AAC/B,0DAAmH;AACnH,kEAA4D;AAC5D,gFAA6E;AAC7E,4FAAyF;AACzF,4EAAyE;AACzE,iEAAmE;AACnE,0FAAuF;AACvF,mEAAqE;AACrE,uDAAyD;AACzD,iEAAmE;AACnE,2FAAwF;AACxF,mEAAqE;
|
|
1
|
+
{"version":3,"file":"StandardStatusbarItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarItemsProvider.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 StandardUiItemsProvider\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { BaseUiItemsProvider, CommonStatusBarItem, StatusBarSection, UiItemsManager } from \"@itwin/appui-abstract\";\r\nimport { FooterSeparator } from \"@itwin/appui-layout-react\";\r\nimport { StatusBarItemUtilities } from \"../statusbar/StatusBarItemUtilities\";\r\nimport { ToolAssistanceField } from \"../statusfields/toolassistance/ToolAssistanceField\";\r\nimport { withStatusFieldProps } from \"../statusbar/withStatusFieldProps\";\r\nimport { MessageCenterField } from \"../statusfields/MessageCenter\";\r\nimport { withMessageCenterFieldProps } from \"../statusbar/withMessageCenterFieldProps\";\r\nimport { ActivityCenterField } from \"../statusfields/ActivityCenter\";\r\nimport { SnapModeField } from \"../statusfields/SnapMode\";\r\nimport { SelectionInfoField } from \"../statusfields/SelectionInfo\";\r\nimport { TileLoadingIndicator } from \"../statusfields/tileloading/TileLoadingIndicator\";\r\nimport { SelectionScopeField } from \"../statusfields/SelectionScope\";\r\nimport { DefaultStatusbarItems } from \"./StandardStatusbarUiItemsProvider\";\r\n\r\n/**\r\n * Provide standard statusbar fields for the SimpleStatusbarWidget\r\n * @public\r\n */\r\nexport class StandardStatusbarItemsProvider extends BaseUiItemsProvider {\r\n constructor(providerId: string, private _defaultItems?: DefaultStatusbarItems, isSupportedStage?: (stageId: string, stageUsage: string, stageAppData?: any) => boolean) {\r\n super(providerId, isSupportedStage);\r\n }\r\n\r\n /**\r\n * static function to register the StandardStatusbarItemsProvider\r\n * @param providerId - unique identifier for this instance of the provider. This is required in case separate packages want\r\n * to set up custom stage with their own subset of standard status bar items.\r\n * @param defaultItems - if undefined all available item are provided to stage except for activityCenter. If defined only those\r\n * specific tool buttons are shown.\r\n * @param isSupportedStage - optional function that will be called to determine if tools should be added to current stage. If not set and\r\n * the current stage's `usage` is set to `StageUsage.General` then the provider will add items to frontstage.\r\n */\r\n public static register(providerId: string, defaultItems?: DefaultStatusbarItems, isSupportedStage?: (stageId: string, stageUsage: string, stageAppData?: any) => boolean) {\r\n const provider = new StandardStatusbarItemsProvider(providerId, defaultItems, isSupportedStage);\r\n UiItemsManager.register(provider);\r\n return provider;\r\n }\r\n\r\n public override provideStatusBarItemsInternal(_stageId: string, _stageUsage: string, _stageAppData?: any): CommonStatusBarItem[] {\r\n const statusBarItems: CommonStatusBarItem[] = [];\r\n if (!this._defaultItems || this._defaultItems.messageCenter) {\r\n const MessageCenter = withMessageCenterFieldProps(MessageCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.MessageCenter\", StatusBarSection.Left, 10, <MessageCenter />));\r\n }\r\n if (!this._defaultItems || this._defaultItems.toolAssistance) {\r\n if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PreToolAssistance\", StatusBarSection.Left, 15, <FooterSeparator />));\r\n\r\n const ToolAssistance = withStatusFieldProps(ToolAssistanceField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ToolAssistance\", StatusBarSection.Left, 20, <ToolAssistance />));\r\n\r\n if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PostToolAssistance\", StatusBarSection.Left, 25, <FooterSeparator />));\r\n }\r\n if (this._defaultItems?.activityCenter) {\r\n const ActivityCenter = withStatusFieldProps(ActivityCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ActivityCenter\", StatusBarSection.Left, 30, <ActivityCenter />));\r\n }\r\n if (!this._defaultItems || this._defaultItems.accuSnapModePicker) {\r\n const SnapMode = withMessageCenterFieldProps(SnapModeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SnapMode\", StatusBarSection.Center, 10, <SnapMode />));\r\n }\r\n\r\n if (!this._defaultItems || this._defaultItems.tileLoadIndicator) {\r\n const TileLoadIndicator = withStatusFieldProps(TileLoadingIndicator);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.TileLoadIndicator\", StatusBarSection.Right, 10, <TileLoadIndicator />));\r\n }\r\n\r\n if (!this._defaultItems || this._defaultItems.selectionScope) {\r\n const SelectionScope = withStatusFieldProps(SelectionScopeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionScope\", StatusBarSection.Right, 20, <SelectionScope />));\r\n }\r\n\r\n if (!this._defaultItems || this._defaultItems.selectionInfo) {\r\n const SelectionInfo = withStatusFieldProps(SelectionInfoField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionInfo\", StatusBarSection.Right, 30, <SelectionInfo />));\r\n }\r\n\r\n return statusBarItems;\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module StandardUiItemsProvider
|
|
3
|
+
*/
|
|
4
|
+
import { CommonStatusBarItem, UiItemsProvider } from "@itwin/appui-abstract";
|
|
5
|
+
/**
|
|
6
|
+
* Defines what items to include from the provider. If any items are
|
|
7
|
+
* specified then only those items will be added to statusbar.
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface DefaultStatusbarItems {
|
|
11
|
+
messageCenter?: boolean;
|
|
12
|
+
preToolAssistanceSeparator?: boolean;
|
|
13
|
+
toolAssistance?: boolean;
|
|
14
|
+
postToolAssistanceSeparator?: boolean;
|
|
15
|
+
activityCenter?: boolean;
|
|
16
|
+
accuSnapModePicker?: boolean;
|
|
17
|
+
tileLoadIndicator?: boolean;
|
|
18
|
+
selectionScope?: boolean;
|
|
19
|
+
selectionInfo?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Provide standard statusbar fields for the SimpleStatusbarWidget
|
|
23
|
+
* @beta
|
|
24
|
+
*/
|
|
25
|
+
export declare class StandardStatusbarUiItemsProvider implements UiItemsProvider {
|
|
26
|
+
private _defaultItems?;
|
|
27
|
+
get id(): string;
|
|
28
|
+
constructor(_defaultItems?: DefaultStatusbarItems | undefined);
|
|
29
|
+
provideStatusBarItems(_stageId: string, _stageUsage: string, _stageAppData?: any): CommonStatusBarItem[];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=StandardStatusbarUiItemsProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardStatusbarUiItemsProvider.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,mBAAmB,EAAoB,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAa/F;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,gCAAiC,YAAW,eAAe;IAG1D,OAAO,CAAC,aAAa,CAAC;IAFlC,IAAW,EAAE,IAAI,MAAM,CAA2D;gBAE9D,aAAa,CAAC,mCAAuB;IAElD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,GAAG,GAAG,mBAAmB,EAAE;CAiDhH"}
|
|
@@ -0,0 +1,79 @@
|
|
|
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 StandardUiItemsProvider
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.StandardStatusbarUiItemsProvider = void 0;
|
|
11
|
+
const React = require("react");
|
|
12
|
+
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
13
|
+
const appui_layout_react_1 = require("@itwin/appui-layout-react");
|
|
14
|
+
const StatusBarItemUtilities_1 = require("../statusbar/StatusBarItemUtilities");
|
|
15
|
+
const ToolAssistanceField_1 = require("../statusfields/toolassistance/ToolAssistanceField");
|
|
16
|
+
const withStatusFieldProps_1 = require("../statusbar/withStatusFieldProps");
|
|
17
|
+
const MessageCenter_1 = require("../statusfields/MessageCenter");
|
|
18
|
+
const withMessageCenterFieldProps_1 = require("../statusbar/withMessageCenterFieldProps");
|
|
19
|
+
const ActivityCenter_1 = require("../statusfields/ActivityCenter");
|
|
20
|
+
const SnapMode_1 = require("../statusfields/SnapMode");
|
|
21
|
+
const SelectionInfo_1 = require("../statusfields/SelectionInfo");
|
|
22
|
+
const TileLoadingIndicator_1 = require("../statusfields/tileloading/TileLoadingIndicator");
|
|
23
|
+
const SelectionScope_1 = require("../statusfields/SelectionScope");
|
|
24
|
+
/**
|
|
25
|
+
* Provide standard statusbar fields for the SimpleStatusbarWidget
|
|
26
|
+
* @beta
|
|
27
|
+
*/
|
|
28
|
+
class StandardStatusbarUiItemsProvider {
|
|
29
|
+
constructor(_defaultItems) {
|
|
30
|
+
this._defaultItems = _defaultItems;
|
|
31
|
+
}
|
|
32
|
+
get id() { return "appui-react:StandardStatusbarUiItemsProvider"; }
|
|
33
|
+
provideStatusBarItems(_stageId, _stageUsage, _stageAppData) {
|
|
34
|
+
var _a;
|
|
35
|
+
const statusBarItems = [];
|
|
36
|
+
// istanbul ignore else
|
|
37
|
+
if (!this._defaultItems || this._defaultItems.messageCenter) {
|
|
38
|
+
const MessageCenter = (0, withMessageCenterFieldProps_1.withMessageCenterFieldProps)(MessageCenter_1.MessageCenterField);
|
|
39
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.MessageCenter", appui_abstract_1.StatusBarSection.Left, 10, React.createElement(MessageCenter, null)));
|
|
40
|
+
}
|
|
41
|
+
// istanbul ignore else
|
|
42
|
+
if (!this._defaultItems || this._defaultItems.toolAssistance) {
|
|
43
|
+
if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)
|
|
44
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PreToolAssistance", appui_abstract_1.StatusBarSection.Left, 15, React.createElement(appui_layout_react_1.FooterSeparator, null)));
|
|
45
|
+
const ToolAssistance = (0, withStatusFieldProps_1.withStatusFieldProps)(ToolAssistanceField_1.ToolAssistanceField);
|
|
46
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.ToolAssistance", appui_abstract_1.StatusBarSection.Left, 20, React.createElement(ToolAssistance, null)));
|
|
47
|
+
if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)
|
|
48
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.PostToolAssistance", appui_abstract_1.StatusBarSection.Left, 25, React.createElement(appui_layout_react_1.FooterSeparator, null)));
|
|
49
|
+
}
|
|
50
|
+
// istanbul ignore else
|
|
51
|
+
if ((_a = this._defaultItems) === null || _a === void 0 ? void 0 : _a.activityCenter) {
|
|
52
|
+
const ActivityCenter = (0, withStatusFieldProps_1.withStatusFieldProps)(ActivityCenter_1.ActivityCenterField);
|
|
53
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.ActivityCenter", appui_abstract_1.StatusBarSection.Left, 30, React.createElement(ActivityCenter, null)));
|
|
54
|
+
}
|
|
55
|
+
// istanbul ignore else
|
|
56
|
+
if (!this._defaultItems || this._defaultItems.accuSnapModePicker) {
|
|
57
|
+
const SnapMode = (0, withMessageCenterFieldProps_1.withMessageCenterFieldProps)(SnapMode_1.SnapModeField);
|
|
58
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.SnapMode", appui_abstract_1.StatusBarSection.Center, 10, React.createElement(SnapMode, null)));
|
|
59
|
+
}
|
|
60
|
+
// istanbul ignore else
|
|
61
|
+
if (!this._defaultItems || this._defaultItems.tileLoadIndicator) {
|
|
62
|
+
const TileLoadIndicator = (0, withStatusFieldProps_1.withStatusFieldProps)(TileLoadingIndicator_1.TileLoadingIndicator);
|
|
63
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.TileLoadIndicator", appui_abstract_1.StatusBarSection.Right, 10, React.createElement(TileLoadIndicator, null)));
|
|
64
|
+
}
|
|
65
|
+
// istanbul ignore else
|
|
66
|
+
if (!this._defaultItems || this._defaultItems.selectionScope) {
|
|
67
|
+
const SelectionScope = (0, withStatusFieldProps_1.withStatusFieldProps)(SelectionScope_1.SelectionScopeField);
|
|
68
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.SelectionScope", appui_abstract_1.StatusBarSection.Right, 20, React.createElement(SelectionScope, null)));
|
|
69
|
+
}
|
|
70
|
+
// istanbul ignore else
|
|
71
|
+
if (!this._defaultItems || this._defaultItems.selectionInfo) {
|
|
72
|
+
const SelectionInfo = (0, withStatusFieldProps_1.withStatusFieldProps)(SelectionInfo_1.SelectionInfoField);
|
|
73
|
+
statusBarItems.push(StatusBarItemUtilities_1.StatusBarItemUtilities.createStatusBarItem("uifw.SelectionInfo", appui_abstract_1.StatusBarSection.Right, 30, React.createElement(SelectionInfo, null)));
|
|
74
|
+
}
|
|
75
|
+
return statusBarItems;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.StandardStatusbarUiItemsProvider = StandardStatusbarUiItemsProvider;
|
|
79
|
+
//# sourceMappingURL=StandardStatusbarUiItemsProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StandardStatusbarUiItemsProvider.js","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/StandardStatusbarUiItemsProvider.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 StandardUiItemsProvider\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonStatusBarItem, StatusBarSection, UiItemsProvider } from \"@itwin/appui-abstract\";\r\nimport { FooterSeparator } from \"@itwin/appui-layout-react\";\r\nimport { StatusBarItemUtilities } from \"../statusbar/StatusBarItemUtilities\";\r\nimport { ToolAssistanceField } from \"../statusfields/toolassistance/ToolAssistanceField\";\r\nimport { withStatusFieldProps } from \"../statusbar/withStatusFieldProps\";\r\nimport { MessageCenterField } from \"../statusfields/MessageCenter\";\r\nimport { withMessageCenterFieldProps } from \"../statusbar/withMessageCenterFieldProps\";\r\nimport { ActivityCenterField } from \"../statusfields/ActivityCenter\";\r\nimport { SnapModeField } from \"../statusfields/SnapMode\";\r\nimport { SelectionInfoField } from \"../statusfields/SelectionInfo\";\r\nimport { TileLoadingIndicator } from \"../statusfields/tileloading/TileLoadingIndicator\";\r\nimport { SelectionScopeField } from \"../statusfields/SelectionScope\";\r\n\r\n/**\r\n * Defines what items to include from the provider. If any items are\r\n * specified then only those items will be added to statusbar.\r\n * @public\r\n */\r\nexport interface DefaultStatusbarItems {\r\n messageCenter?: boolean;\r\n preToolAssistanceSeparator?: boolean;\r\n toolAssistance?: boolean;\r\n postToolAssistanceSeparator?: boolean;\r\n activityCenter?: boolean;\r\n accuSnapModePicker?: boolean;\r\n tileLoadIndicator?: boolean;\r\n selectionScope?: boolean;\r\n selectionInfo?: boolean;\r\n}\r\n\r\n/**\r\n * Provide standard statusbar fields for the SimpleStatusbarWidget\r\n * @beta\r\n */\r\nexport class StandardStatusbarUiItemsProvider implements UiItemsProvider {\r\n public get id(): string { return \"appui-react:StandardStatusbarUiItemsProvider\"; }\r\n\r\n constructor(private _defaultItems?: DefaultStatusbarItems) { }\r\n\r\n public provideStatusBarItems(_stageId: string, _stageUsage: string, _stageAppData?: any): CommonStatusBarItem[] {\r\n const statusBarItems: CommonStatusBarItem[] = [];\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.messageCenter) {\r\n const MessageCenter = withMessageCenterFieldProps(MessageCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.MessageCenter\", StatusBarSection.Left, 10, <MessageCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.toolAssistance) {\r\n if (!this._defaultItems || this._defaultItems.preToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PreToolAssistance\", StatusBarSection.Left, 15, <FooterSeparator />));\r\n\r\n const ToolAssistance = withStatusFieldProps(ToolAssistanceField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ToolAssistance\", StatusBarSection.Left, 20, <ToolAssistance />));\r\n\r\n if (!this._defaultItems || this._defaultItems.postToolAssistanceSeparator)\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.PostToolAssistance\", StatusBarSection.Left, 25, <FooterSeparator />));\r\n }\r\n // istanbul ignore else\r\n if (this._defaultItems?.activityCenter) {\r\n const ActivityCenter = withStatusFieldProps(ActivityCenterField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.ActivityCenter\", StatusBarSection.Left, 30, <ActivityCenter />));\r\n }\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.accuSnapModePicker) {\r\n const SnapMode = withMessageCenterFieldProps(SnapModeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SnapMode\", StatusBarSection.Center, 10, <SnapMode />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.tileLoadIndicator) {\r\n const TileLoadIndicator = withStatusFieldProps(TileLoadingIndicator);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.TileLoadIndicator\", StatusBarSection.Right, 10, <TileLoadIndicator />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionScope) {\r\n const SelectionScope = withStatusFieldProps(SelectionScopeField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionScope\", StatusBarSection.Right, 20, <SelectionScope />));\r\n }\r\n\r\n // istanbul ignore else\r\n if (!this._defaultItems || this._defaultItems.selectionInfo) {\r\n const SelectionInfo = withStatusFieldProps(SelectionInfoField);\r\n statusBarItems.push(StatusBarItemUtilities.createStatusBarItem(\"uifw.SelectionInfo\", StatusBarSection.Right, 30, <SelectionInfo />));\r\n }\r\n\r\n return statusBarItems;\r\n }\r\n}\r\n"]}
|
|
@@ -12,6 +12,9 @@ export interface InitialAppUiSettings {
|
|
|
12
12
|
frameworkVersion: FrameworkVersionId;
|
|
13
13
|
widgetOpacity: number;
|
|
14
14
|
showWidgetIcon?: boolean;
|
|
15
|
+
/** @alpha */
|
|
16
|
+
autoCollapseUnpinnedPanels?: boolean;
|
|
17
|
+
animateToolSettings?: boolean;
|
|
15
18
|
}
|
|
16
19
|
/** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,
|
|
17
20
|
* how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor
|
|
@@ -34,6 +37,8 @@ export declare class AppUiSettings implements UserSettingsProvider {
|
|
|
34
37
|
frameworkVersion: UiStateEntry<FrameworkVersionId>;
|
|
35
38
|
widgetOpacity: UiStateEntry<number>;
|
|
36
39
|
showWidgetIcon: UiStateEntry<boolean>;
|
|
40
|
+
autoCollapseUnpinnedPanels: UiStateEntry<boolean>;
|
|
41
|
+
animateToolSettings: UiStateEntry<boolean>;
|
|
37
42
|
private setColorTheme;
|
|
38
43
|
constructor(defaults: Partial<InitialAppUiSettings>);
|
|
39
44
|
private handleSyncUiEvent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppUiSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAe,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAIvF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AppUiSettings.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAe,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAIvF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa;IACb,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,YAAW,oBAAoB;IACxD,SAAgB,UAAU,2BAA2B;IAErD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAmB;IACnD,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,sBAAsB,CAAS;IAEhC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACvC,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;IACnD,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,0BAA0B,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAClD,mBAAmB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAElD,OAAO,CAAC,aAAa,CAInB;gBAEU,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAsCnD,OAAO,CAAC,iBAAiB,CA2BvB;IAEW,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE"}
|
|
@@ -46,8 +46,12 @@ class AppUiSettings {
|
|
|
46
46
|
await this.frameworkVersion.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
|
|
47
47
|
if (args.eventIds.has("configurableui:set-show-widget-icon"))
|
|
48
48
|
await this.showWidgetIcon.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
|
|
49
|
+
if (args.eventIds.has("configurableui:set-auto-collapse-unpinned-panels"))
|
|
50
|
+
await this.autoCollapseUnpinnedPanels.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
|
|
49
51
|
if (args.eventIds.has("configurableui:set_widget_opacity"))
|
|
50
52
|
await this.widgetOpacity.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
|
|
53
|
+
if (args.eventIds.has("configurableui:set-animate-tool-settings"))
|
|
54
|
+
await this.animateToolSettings.saveSetting(UiFramework_1.UiFramework.getUiStateStorage());
|
|
51
55
|
};
|
|
52
56
|
this._settings = [];
|
|
53
57
|
this.colorTheme = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "ColorTheme", UiFramework_1.UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);
|
|
@@ -56,10 +60,14 @@ class AppUiSettings {
|
|
|
56
60
|
this._settings.push(this.dragInteraction);
|
|
57
61
|
this.showWidgetIcon = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "ShowWidgetIcon", () => UiFramework_1.UiFramework.showWidgetIcon, (value) => UiFramework_1.UiFramework.setShowWidgetIcon(value), defaults.showWidgetIcon);
|
|
58
62
|
this._settings.push(this.showWidgetIcon);
|
|
63
|
+
this.autoCollapseUnpinnedPanels = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "AutoCollapseUnpinnedPanels", () => UiFramework_1.UiFramework.autoCollapseUnpinnedPanels, (value) => UiFramework_1.UiFramework.setAutoCollapseUnpinnedPanels(value), defaults.autoCollapseUnpinnedPanels);
|
|
64
|
+
this._settings.push(this.autoCollapseUnpinnedPanels);
|
|
59
65
|
this.frameworkVersion = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "FrameworkVersion", () => UiFramework_1.UiFramework.uiVersion, (value) => UiFramework_1.UiFramework.setUiVersion(value), defaults.frameworkVersion);
|
|
60
66
|
this._settings.push(this.frameworkVersion);
|
|
61
67
|
this.widgetOpacity = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "WidgetOpacity", () => UiFramework_1.UiFramework.getWidgetOpacity(), (value) => UiFramework_1.UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);
|
|
62
68
|
this._settings.push(this.widgetOpacity);
|
|
69
|
+
this.animateToolSettings = new core_react_1.UiStateEntry(AppUiSettings._settingNamespace, "AnimateToolSettings", () => UiFramework_1.UiFramework.animateToolSettings, (value) => UiFramework_1.UiFramework.setAnimateToolSettings(value), defaults.animateToolSettings);
|
|
70
|
+
this._settings.push(this.animateToolSettings);
|
|
63
71
|
SyncUiEventDispatcher_1.SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);
|
|
64
72
|
}
|
|
65
73
|
async apply(storage) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.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 Settings\r\n */\r\n\r\nimport { UiStateEntry, UiStateStorage } from \"@itwin/core-react\";\r\nimport { UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { FrameworkVersionId, UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n// cSpell:ignore configurableui\r\n\r\n/** Default values that may be specified for [[AppUiSettings]].\r\n * @public\r\n */\r\nexport interface InitialAppUiSettings {\r\n colorTheme: string;\r\n dragInteraction: boolean;\r\n frameworkVersion: FrameworkVersionId;\r\n widgetOpacity: number;\r\n showWidgetIcon?: boolean;\r\n}\r\n\r\n/** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,\r\n * how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor\r\n * is not inside them. It is expect that an IModelApp using App UI components will create and register AppUiSettings with\r\n * defaults specific to their application. This would be done by calling the following.\r\n *\r\n * ```ts\r\n * UiFramework.registerUserSettingsProvider(new AppUiSettings(defaults));\r\n * ```\r\n *\r\n * @public\r\n */\r\nexport class AppUiSettings implements UserSettingsProvider {\r\n public readonly providerId = \"AppUiSettingsProvider\";\r\n\r\n private static _settingNamespace = \"AppUiSettings\";\r\n private _settings: Array<UiStateEntry<any>> = [];\r\n private _applyingLocalSettings = false;\r\n\r\n public colorTheme: UiStateEntry<string>;\r\n public dragInteraction: UiStateEntry<boolean>;\r\n public frameworkVersion: UiStateEntry<FrameworkVersionId>;\r\n public widgetOpacity: UiStateEntry<number>;\r\n public showWidgetIcon: UiStateEntry<boolean>;\r\n\r\n private setColorTheme = (theme: string) => {\r\n UiFramework.setColorTheme(theme);\r\n // always store to local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", theme);\r\n };\r\n\r\n constructor(defaults: Partial<InitialAppUiSettings>) {\r\n this._settings = [];\r\n\r\n this.colorTheme = new UiStateEntry<string>(AppUiSettings._settingNamespace, \"ColorTheme\", UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);\r\n this._settings.push(this.colorTheme);\r\n\r\n this.dragInteraction = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"DragInteraction\",\r\n () => UiFramework.useDragInteraction,\r\n (value: boolean) => UiFramework.setUseDragInteraction(value), defaults.dragInteraction);\r\n this._settings.push(this.dragInteraction);\r\n\r\n this.showWidgetIcon = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"ShowWidgetIcon\",\r\n () => UiFramework.showWidgetIcon,\r\n (value: boolean) => UiFramework.setShowWidgetIcon(value), defaults.showWidgetIcon);\r\n this._settings.push(this.showWidgetIcon);\r\n\r\n this.frameworkVersion = new UiStateEntry<FrameworkVersionId>(AppUiSettings._settingNamespace, \"FrameworkVersion\",\r\n () => UiFramework.uiVersion,\r\n (value: FrameworkVersionId) => UiFramework.setUiVersion(value), defaults.frameworkVersion);\r\n this._settings.push(this.frameworkVersion);\r\n\r\n this.widgetOpacity = new UiStateEntry<number>(AppUiSettings._settingNamespace, \"WidgetOpacity\",\r\n () => UiFramework.getWidgetOpacity(), (value: number) => UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);\r\n this._settings.push(this.widgetOpacity);\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);\r\n }\r\n\r\n private handleSyncUiEvent = async (args: UiSyncEventArgs) => {\r\n if (this._applyingLocalSettings)\r\n return;\r\n\r\n if (args.eventIds.has(\"configurableui:set_theme\")) {\r\n await this.colorTheme.saveSetting(UiFramework.getUiStateStorage());\r\n // always store as default theme in local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", UiFramework.getColorTheme());\r\n }\r\n\r\n if (args.eventIds.has(\"configurableui:set-drag-interaction\"))\r\n await this.dragInteraction.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-framework-version\"))\r\n await this.frameworkVersion.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-show-widget-icon\"))\r\n await this.showWidgetIcon.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set_widget_opacity\"))\r\n await this.widgetOpacity.saveSetting(UiFramework.getUiStateStorage());\r\n };\r\n\r\n public async apply(storage: UiStateStorage): Promise<void> {\r\n this._applyingLocalSettings = true;\r\n for await (const setting of this._settings) {\r\n await setting.getSettingAndApplyValue(storage);\r\n }\r\n this._applyingLocalSettings = false;\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n await this.apply(storage);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"AppUiSettings.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/AppUiSettings.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 Settings\r\n */\r\n\r\nimport { UiStateEntry, UiStateStorage } from \"@itwin/core-react\";\r\nimport { UiSyncEventArgs } from \"@itwin/appui-abstract\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { FrameworkVersionId, UiFramework, UserSettingsProvider } from \"../UiFramework\";\r\n\r\n// cSpell:ignore configurableui\r\n\r\n/** Default values that may be specified for [[AppUiSettings]].\r\n * @public\r\n */\r\nexport interface InitialAppUiSettings {\r\n colorTheme: string;\r\n dragInteraction: boolean;\r\n frameworkVersion: FrameworkVersionId;\r\n widgetOpacity: number;\r\n showWidgetIcon?: boolean;\r\n /** @alpha */\r\n autoCollapseUnpinnedPanels?: boolean;\r\n animateToolSettings?: boolean;\r\n}\r\n\r\n/** These are the UI settings that are stored in the Redux store. They control the color theme, the UI version,\r\n * how toolbar group buttons work, and the opacity of widgets in 1.0 and floating widget in 2.0 when the cursor\r\n * is not inside them. It is expect that an IModelApp using App UI components will create and register AppUiSettings with\r\n * defaults specific to their application. This would be done by calling the following.\r\n *\r\n * ```ts\r\n * UiFramework.registerUserSettingsProvider(new AppUiSettings(defaults));\r\n * ```\r\n *\r\n * @public\r\n */\r\nexport class AppUiSettings implements UserSettingsProvider {\r\n public readonly providerId = \"AppUiSettingsProvider\";\r\n\r\n private static _settingNamespace = \"AppUiSettings\";\r\n private _settings: Array<UiStateEntry<any>> = [];\r\n private _applyingLocalSettings = false;\r\n\r\n public colorTheme: UiStateEntry<string>;\r\n public dragInteraction: UiStateEntry<boolean>;\r\n public frameworkVersion: UiStateEntry<FrameworkVersionId>;\r\n public widgetOpacity: UiStateEntry<number>;\r\n public showWidgetIcon: UiStateEntry<boolean>;\r\n public autoCollapseUnpinnedPanels: UiStateEntry<boolean>;\r\n public animateToolSettings: UiStateEntry<boolean>;\r\n\r\n private setColorTheme = (theme: string) => {\r\n UiFramework.setColorTheme(theme);\r\n // always store to local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", theme);\r\n };\r\n\r\n constructor(defaults: Partial<InitialAppUiSettings>) {\r\n this._settings = [];\r\n\r\n this.colorTheme = new UiStateEntry<string>(AppUiSettings._settingNamespace, \"ColorTheme\", UiFramework.getColorTheme, this.setColorTheme, defaults.colorTheme);\r\n this._settings.push(this.colorTheme);\r\n\r\n this.dragInteraction = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"DragInteraction\",\r\n () => UiFramework.useDragInteraction,\r\n (value: boolean) => UiFramework.setUseDragInteraction(value), defaults.dragInteraction);\r\n this._settings.push(this.dragInteraction);\r\n\r\n this.showWidgetIcon = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"ShowWidgetIcon\",\r\n () => UiFramework.showWidgetIcon,\r\n (value: boolean) => UiFramework.setShowWidgetIcon(value), defaults.showWidgetIcon);\r\n this._settings.push(this.showWidgetIcon);\r\n\r\n this.autoCollapseUnpinnedPanels = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AutoCollapseUnpinnedPanels\",\r\n () => UiFramework.autoCollapseUnpinnedPanels,\r\n (value: boolean) => UiFramework.setAutoCollapseUnpinnedPanels(value), defaults.autoCollapseUnpinnedPanels);\r\n this._settings.push(this.autoCollapseUnpinnedPanels);\r\n\r\n this.frameworkVersion = new UiStateEntry<FrameworkVersionId>(AppUiSettings._settingNamespace, \"FrameworkVersion\",\r\n () => UiFramework.uiVersion,\r\n (value: FrameworkVersionId) => UiFramework.setUiVersion(value), defaults.frameworkVersion);\r\n this._settings.push(this.frameworkVersion);\r\n\r\n this.widgetOpacity = new UiStateEntry<number>(AppUiSettings._settingNamespace, \"WidgetOpacity\",\r\n () => UiFramework.getWidgetOpacity(), (value: number) => UiFramework.setWidgetOpacity(value), defaults.widgetOpacity);\r\n this._settings.push(this.widgetOpacity);\r\n\r\n this.animateToolSettings = new UiStateEntry<boolean>(AppUiSettings._settingNamespace, \"AnimateToolSettings\",\r\n () => UiFramework.animateToolSettings,\r\n (value: boolean) => UiFramework.setAnimateToolSettings(value), defaults.animateToolSettings);\r\n this._settings.push(this.animateToolSettings);\r\n\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this.handleSyncUiEvent);\r\n }\r\n\r\n private handleSyncUiEvent = async (args: UiSyncEventArgs) => {\r\n if (this._applyingLocalSettings)\r\n return;\r\n\r\n if (args.eventIds.has(\"configurableui:set_theme\")) {\r\n await this.colorTheme.saveSetting(UiFramework.getUiStateStorage());\r\n // always store as default theme in local storage to avoid flicker during startup if user is not yet logged-in\r\n window.localStorage.setItem(\"uifw:defaultTheme\", UiFramework.getColorTheme());\r\n }\r\n\r\n if (args.eventIds.has(\"configurableui:set-drag-interaction\"))\r\n await this.dragInteraction.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-framework-version\"))\r\n await this.frameworkVersion.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-show-widget-icon\"))\r\n await this.showWidgetIcon.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-auto-collapse-unpinned-panels\"))\r\n await this.autoCollapseUnpinnedPanels.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set_widget_opacity\"))\r\n await this.widgetOpacity.saveSetting(UiFramework.getUiStateStorage());\r\n\r\n if (args.eventIds.has(\"configurableui:set-animate-tool-settings\"))\r\n await this.animateToolSettings.saveSetting(UiFramework.getUiStateStorage());\r\n };\r\n\r\n public async apply(storage: UiStateStorage): Promise<void> {\r\n this._applyingLocalSettings = true;\r\n for await (const setting of this._settings) {\r\n await setting.getSettingAndApplyValue(storage);\r\n }\r\n this._applyingLocalSettings = false;\r\n }\r\n\r\n public async loadUserSettings(storage: UiStateStorage): Promise<void> {\r\n await this.apply(storage);\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserSettingsStorage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/UserSettingsStorage.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAwB,MAAM,mBAAmB,CAAC;AAE/F;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IAC3C,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"UserSettingsStorage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/UserSettingsStorage.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAwB,MAAM,mBAAmB,CAAC;AAE/F;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IAC3C,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiB1E,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAgBzF,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAc3F"}
|
|
@@ -22,6 +22,7 @@ class UserSettingsStorage {
|
|
|
22
22
|
const accessToken = await core_frontend_1.IModelApp.getAccessToken();
|
|
23
23
|
if (accessToken === "")
|
|
24
24
|
return { status: core_react_1.UiStateStorageStatus.AuthorizationError };
|
|
25
|
+
// istanbul ignore next
|
|
25
26
|
if (!core_frontend_1.IModelApp.userPreferences)
|
|
26
27
|
return { status: core_react_1.UiStateStorageStatus.Uninitialized };
|
|
27
28
|
const result = await core_frontend_1.IModelApp.userPreferences.get({ accessToken, key: `${namespace}.${name}` });
|
|
@@ -31,6 +32,7 @@ class UserSettingsStorage {
|
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
34
|
async saveSetting(namespace, name, setting) {
|
|
35
|
+
// istanbul ignore next
|
|
34
36
|
if (!core_frontend_1.IModelApp.userPreferences)
|
|
35
37
|
return { status: core_react_1.UiStateStorageStatus.Uninitialized };
|
|
36
38
|
const accessToken = await core_frontend_1.IModelApp.getAccessToken();
|
|
@@ -43,6 +45,7 @@ class UserSettingsStorage {
|
|
|
43
45
|
};
|
|
44
46
|
}
|
|
45
47
|
async deleteSetting(namespace, name) {
|
|
48
|
+
// istanbul ignore next
|
|
46
49
|
if (!core_frontend_1.IModelApp.userPreferences)
|
|
47
50
|
return { status: core_react_1.UiStateStorageStatus.Uninitialized };
|
|
48
51
|
const accessToken = await core_frontend_1.IModelApp.getAccessToken();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserSettingsStorage.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/UserSettingsStorage.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wDAAiD;AACjD,kDAA+F;AAE/F;;;;GAIG;AACH,MAAa,mBAAmB;IACvB,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,IAAY;QACrD,IAAI,SAAS,KAAK,yBAAS,CAAC,mBAAmB;YAC7C,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAE7D,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACjG,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,IAAY,EAAE,OAAY;QACpE,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QAExD,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACpH,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,IAAY;QACxD,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QAExD,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACpG,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"UserSettingsStorage.js","sourceRoot":"","sources":["../../../../src/appui-react/uistate/UserSettingsStorage.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wDAAiD;AACjD,kDAA+F;AAE/F;;;;GAIG;AACH,MAAa,mBAAmB;IACvB,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,IAAY;QACrD,IAAI,SAAS,KAAK,yBAAS,CAAC,mBAAmB;YAC7C,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAE7D,uBAAuB;QACvB,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACjG,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,IAAY,EAAE,OAAY;QACpE,uBAAuB;QACvB,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QAExD,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACpH,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,IAAY;QACxD,uBAAuB;QACvB,IAAI,CAAC,yBAAS,CAAC,eAAe;YAC5B,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,aAAa,EAAE,CAAC;QAExD,MAAM,WAAW,GAAG,MAAM,yBAAS,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,WAAW,KAAK,EAAE;YACpB,OAAO,EAAE,MAAM,EAAE,iCAAoB,CAAC,kBAAkB,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,yBAAS,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACpG,OAAO;YACL,MAAM,EAAE,iCAAoB,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;CACF;AAhDD,kDAgDC","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 UiStateStorage\r\n */\r\n\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { UiStateStorage, UiStateStorageResult, UiStateStorageStatus } from \"@itwin/core-react\";\r\n\r\n/**\r\n * Implementation of [[UiStateStorage]] that uses settings admin from [IModelApp.userPreferences]($core-frontend).\r\n * @public\r\n * @deprecated Use [IModelApp.userPreferences]($core-frontend) API directly to store user preferences as a replacement.\r\n */\r\nexport class UserSettingsStorage implements UiStateStorage {\r\n public async getSetting(namespace: string, name: string): Promise<UiStateStorageResult> {\r\n if (undefined === IModelApp.authorizationClient)\r\n return { status: UiStateStorageStatus.AuthorizationError };\r\n const accessToken = await IModelApp.getAccessToken();\r\n if (accessToken === \"\")\r\n return { status: UiStateStorageStatus.AuthorizationError };\r\n\r\n // istanbul ignore next\r\n if (!IModelApp.userPreferences)\r\n return { status: UiStateStorageStatus.Uninitialized };\r\n const result = await IModelApp.userPreferences.get({ accessToken, key: `${namespace}.${name}` });\r\n return {\r\n status: UiStateStorageStatus.Success,\r\n setting: result,\r\n };\r\n }\r\n\r\n public async saveSetting(namespace: string, name: string, setting: any): Promise<UiStateStorageResult> {\r\n // istanbul ignore next\r\n if (!IModelApp.userPreferences)\r\n return { status: UiStateStorageStatus.Uninitialized };\r\n\r\n const accessToken = await IModelApp.getAccessToken();\r\n if (accessToken === \"\")\r\n return { status: UiStateStorageStatus.AuthorizationError };\r\n\r\n const result = await IModelApp.userPreferences.save({ accessToken, content: setting, key: `${namespace}.${name}` });\r\n return {\r\n status: UiStateStorageStatus.Success,\r\n setting: result,\r\n };\r\n }\r\n\r\n public async deleteSetting(namespace: string, name: string): Promise<UiStateStorageResult> {\r\n // istanbul ignore next\r\n if (!IModelApp.userPreferences)\r\n return { status: UiStateStorageStatus.Uninitialized };\r\n\r\n const accessToken = await IModelApp.getAccessToken();\r\n if (accessToken === \"\")\r\n return { status: UiStateStorageStatus.AuthorizationError };\r\n const result = await IModelApp.userPreferences.delete({ accessToken, key: `${namespace}.${name}` });\r\n return {\r\n status: UiStateStorageStatus.Success,\r\n setting: result,\r\n };\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUiStateStorage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/useUiStateStorage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAItE,cAAc;AACd,wBAAgB,wBAAwB,IAAI,cAAc,CAEzD;AAED,gBAAgB;AAChB,eAAO,MAAM,qBAAqB,+BAA+D,CAAC;AAGlG;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"useUiStateStorage.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/uistate/useUiStateStorage.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAItE,cAAc;AACd,wBAAgB,wBAAwB,IAAI,cAAc,CAEzD;AAED,gBAAgB;AAChB,eAAO,MAAM,qBAAqB,+BAA+D,CAAC;AAGlG;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,uBAAuB,eAmBnE"}
|
|
@@ -26,6 +26,7 @@ exports.UiStateStorageContext.displayName = "uifw:UiStateStorageContext";
|
|
|
26
26
|
function UiStateStorageHandler(props) {
|
|
27
27
|
const [stateStorage, setStateStorage] = React.useState(UiFramework_1.UiFramework.getUiStateStorage());
|
|
28
28
|
React.useEffect(() => {
|
|
29
|
+
// istanbul ignore next
|
|
29
30
|
const handleSyncUiEvent = (args) => {
|
|
30
31
|
if (SyncUiEventDispatcher_1.SyncUiEventDispatcher.hasEventOfInterest(args.eventIds, [SyncUiEventDispatcher_1.SyncUiEventId.UiStateStorageChanged]))
|
|
31
32
|
setStateStorage(UiFramework_1.UiFramework.getUiStateStorage());
|