More layering (#6541)

* layer unlayered code; fix layering

* readd os

* fix definition of recommended extensions

* protect against tests
This commit is contained in:
Anthony Dresser
2019-07-31 22:20:39 -07:00
committed by GitHub
parent 161c182a56
commit 9bfe8813b1
38 changed files with 77 additions and 67 deletions

View File

@@ -7,10 +7,7 @@ import * as Actions from './actions';
import * as nls from 'vs/nls';
import { SyncActionDescriptor } from 'vs/platform/actions/common/actions';
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { ShowCurrentReleaseNotesAction } from 'sql/workbench/update/releaseNotes';
import { IConfigurationRegistry, Extensions as ConfigExtensions } from 'vs/platform/configuration/common/configurationRegistry';
new Actions.BackupAction().registerTask();
@@ -18,10 +15,6 @@ new Actions.RestoreAction().registerTask();
new Actions.NewQueryAction().registerTask();
new Actions.ConfigureDashboardAction().registerTask();
// add product update and release notes contributions
Registry.as<IWorkbenchActionRegistry>(ActionExtensions.WorkbenchActions)
.registerWorkbenchAction(new SyncActionDescriptor(ShowCurrentReleaseNotesAction, ShowCurrentReleaseNotesAction.ID, ShowCurrentReleaseNotesAction.LABEL), 'Show Getting Started');
Registry.as<IConfigurationRegistry>(ConfigExtensions.Configuration).registerConfiguration({
'id': 'previewFeatures',
'title': nls.localize('previewFeatures.configTitle', "Preview Features"),

View File

@@ -4,17 +4,16 @@
*--------------------------------------------------------------------------------------------*/
import { localize } from 'vs/nls';
import { IAction, Action } from 'vs/base/common/actions';
import { ShowViewletAction } from 'vs/workbench/browser/viewlet';
import { Action } from 'vs/base/common/actions';
import { IViewletService } from 'vs/workbench/services/viewlet/browser/viewlet';
import { IExtension, ExtensionState, IExtensionsWorkbenchService, VIEWLET_ID, IExtensionsViewlet, AutoUpdateConfigurationKey, IExtensionContainer, EXTENSIONS_CONFIG, ExtensionsPolicy, ExtensionsPolicyKey } from 'vs/workbench/contrib/extensions/common/extensions';
import { IInstantiationService, ServicesAccessor } from 'vs/platform/instantiation/common/instantiation';
import { IExtensionsWorkbenchService, VIEWLET_ID, IExtensionsViewlet } from 'vs/workbench/contrib/extensions/common/extensions';
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
import { IExtensionRecommendation, IExtensionManagementServerService } from 'vs/workbench/services/extensionManagement/common/extensionManagement';
import { INotificationService, Severity } from 'vs/platform/notification/common/notification';
import { INotificationService } from 'vs/platform/notification/common/notification';
import { IOpenerService } from 'vs/platform/opener/common/opener';
import { CancellationToken } from 'vs/base/common/cancellation';
import { PagedModel } from 'vs/base/common/paging';
import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configuration/common/configuration';
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
function getScenarioID(scenarioType: string) {
return 'workbench.extensions.action.show' + scenarioType;
@@ -76,4 +75,4 @@ export class InstallRecommendedExtensionsByScenarioAction extends Action {
});
});
}
}
}

View File

@@ -3,8 +3,6 @@
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import 'vs/css!sql/workbench/parts/grid/media/flexbox';
import 'vs/css!sql/workbench/parts/grid/media/styles';
import 'vs/css!./media/editData';
import { ElementRef, ChangeDetectorRef, OnInit, OnDestroy, Component, Inject, forwardRef, EventEmitter } from '@angular/core';
@@ -13,8 +11,8 @@ import { VirtualizedCollection } from 'angular2-slickgrid';
import { IGridDataSet } from 'sql/workbench/parts/grid/common/interfaces';
import * as Services from 'sql/base/browser/ui/table/formatters';
import { IEditDataComponentParams, IBootstrapParams } from 'sql/platform/bootstrap/common/bootstrapParams';
import { GridParentComponent } from 'sql/workbench/parts/grid/views/gridParentComponent';
import { EditDataGridActionProvider } from 'sql/workbench/parts/grid/views/editData/editDataGridActions';
import { GridParentComponent } from 'sql/workbench/parts/editData/browser/gridParentComponent';
import { EditDataGridActionProvider } from 'sql/workbench/parts/editData/browser/editDataGridActions';
import { IQueryEditorService } from 'sql/workbench/services/queryEditor/common/queryEditorService';
import { RowNumberColumn } from 'sql/base/browser/ui/table/plugins/rowNumberColumn.plugin';
import { AutoColumnSize } from 'sql/base/browser/ui/table/plugins/autoSizeColumns.plugin';

View File

@@ -9,7 +9,7 @@ import { CommonModule } from '@angular/common';
import { BrowserModule } from '@angular/platform-browser';
import { SlickGrid } from 'angular2-slickgrid';
import { EditDataComponent } from 'sql/workbench/parts/grid/views/editData/editData.component';
import { EditDataComponent } from 'sql/workbench/parts/editData/browser/editData.component';
import { providerIterator } from 'sql/platform/bootstrap/browser/bootstrapService';
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';

View File

@@ -4,8 +4,8 @@
*--------------------------------------------------------------------------------------------*/
import { IGridInfo } from 'sql/workbench/parts/grid/common/interfaces';
import { DataService } from 'sql/workbench/parts/grid/services/dataService';
import { GridActionProvider } from 'sql/workbench/parts/grid/views/gridActions';
import { DataService } from 'sql/workbench/parts/grid/common/dataService';
import { GridActionProvider } from 'sql/workbench/parts/editData/common/gridActions';
import { localize } from 'vs/nls';
import { IAction, Action } from 'vs/base/common/actions';

View File

@@ -18,8 +18,8 @@ import { IQueryModelService } from 'sql/platform/query/common/queryModel';
import { bootstrapAngular } from 'sql/platform/bootstrap/browser/bootstrapService';
import { BareResultsGridInfo } from 'sql/workbench/parts/query/browser/queryResultsEditor';
import { IEditDataComponentParams } from 'sql/platform/bootstrap/common/bootstrapParams';
import { EditDataModule } from 'sql/workbench/parts/grid/views/editData/editData.module';
import { EDITDATA_SELECTOR } from 'sql/workbench/parts/grid/views/editData/editData.component';
import { EditDataModule } from 'sql/workbench/parts/editData/browser/editData.module';
import { EDITDATA_SELECTOR } from 'sql/workbench/parts/editData/browser/editData.component';
import { EditDataResultsInput } from 'sql/workbench/parts/editData/common/editDataResultsInput';
import { CancellationToken } from 'vs/base/common/cancellation';
import { IStorageService } from 'vs/platform/storage/common/storage';

View File

@@ -3,8 +3,8 @@
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import 'vs/css!sql/workbench/parts/grid/media/flexbox';
import 'vs/css!sql/workbench/parts/grid/media/styles';
import 'vs/css!./media/flexbox';
import 'vs/css!./media/styles';
import { Subscription, Subject } from 'rxjs/Rx';
import { ElementRef, QueryList, ChangeDetectorRef, ViewChildren } from '@angular/core';
@@ -13,8 +13,8 @@ import * as Constants from 'sql/workbench/parts/query/common/constants';
import * as LocalizedConstants from 'sql/workbench/parts/query/common/localizedConstants';
import { IGridInfo, IGridDataSet, SaveFormat } from 'sql/workbench/parts/grid/common/interfaces';
import * as Utils from 'sql/platform/connection/common/utils';
import { DataService } from 'sql/workbench/parts/grid/services/dataService';
import * as actions from 'sql/workbench/parts/grid/views/gridActions';
import { DataService } from 'sql/workbench/parts/grid/common/dataService';
import * as actions from 'sql/workbench/parts/editData/common/gridActions';
import * as GridContentEvents from 'sql/workbench/parts/grid/common/gridContentEvents';
import { ResultsVisibleContext, ResultsGridFocussedContext, ResultsMessagesFocussedContext, QueryEditorVisibleContext } from 'sql/workbench/parts/query/common/queryContext';
import { IQueryEditorService } from 'sql/workbench/services/queryEditor/common/queryEditorService';

View File

@@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
import { IGridInfo, SaveFormat } from 'sql/workbench/parts/grid/common/interfaces';
import { DataService } from 'sql/workbench/parts/grid/services/dataService';
import { DataService } from 'sql/workbench/parts/grid/common/dataService';
import { localize } from 'vs/nls';
import { IAction, Action } from 'vs/base/common/actions';

View File

@@ -13,7 +13,7 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic
import { IUntitledEditorService } from 'vs/workbench/services/untitled/common/untitledEditorService';
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
import { SaveFormat } from 'sql/workbench/parts/grid/common/interfaces';
import { IDataResource } from 'sql/workbench/services/notebook/sql/sqlSessionManager';
import { IDataResource } from 'sql/workbench/services/notebook/common/sql/sqlSessionManager';
import { ITextResourcePropertiesService } from 'vs/editor/common/services/resourceConfiguration';
import { getEolString, shouldIncludeHeaders, shouldRemoveNewLines } from 'sql/platform/query/common/queryRunner';
import { INotificationService } from 'vs/platform/notification/common/notification';

View File

@@ -8,7 +8,7 @@ import { Table } from 'sql/base/browser/ui/table/table';
import { textFormatter } from 'sql/base/browser/ui/table/formatters';
import { RowNumberColumn } from 'sql/base/browser/ui/table/plugins/rowNumberColumn.plugin';
import { escape } from 'sql/base/common/strings';
import { IDataResource } from 'sql/workbench/services/notebook/sql/sqlSessionManager';
import { IDataResource } from 'sql/workbench/services/notebook/common/sql/sqlSessionManager';
import { attachTableStyler } from 'sql/platform/theme/common/styler';
import { IThemeService } from 'vs/platform/theme/common/themeService';
import { MouseWheelSupport } from 'sql/base/browser/ui/table/plugins/mousewheelTableScroll.plugin';

View File

@@ -18,11 +18,11 @@ import { removeAnsiEscapeCodes } from 'vs/base/common/strings';
import { IGridDataProvider } from 'sql/platform/query/common/gridDataProvider';
import { INotificationService } from 'vs/platform/notification/common/notification';
import QueryRunner from 'sql/platform/query/common/queryRunner';
import product from 'vs/platform/product/node/product';
import { GridTableState } from 'sql/workbench/parts/query/common/gridPanelState';
import * as Constants from 'sql/workbench/contrib/extensions/constants';
import { IAdsTelemetryService } from 'sql/platform/telemetry/telemetry';
import * as Constants from 'sql/workbench/contrib/extensions/common/constants';
import { IAdsTelemetryService } from 'sql/platform/telemetry/common/telemetry';
import * as TelemetryKeys from 'sql/platform/telemetry/common/telemetryKeys';
import { IEnvironmentService } from 'vs/platform/environment/common/environment';
export interface IGridActionContext {
gridDataProvider: IGridDataProvider;
@@ -206,14 +206,15 @@ export class ChartDataAction extends Action {
constructor(
@IEditorService private editorService: IEditorService,
@IExtensionTipsService private readonly extensionTipsService: IExtensionTipsService
@IExtensionTipsService private readonly extensionTipsService: IExtensionTipsService,
@IEnvironmentService private readonly environmentService: IEnvironmentService
) {
super(ChartDataAction.ID, ChartDataAction.LABEL, ChartDataAction.ICON);
}
public run(context: IGridActionContext): Promise<boolean> {
const activeEditor = this.editorService.activeControl as QueryEditor;
if (product.quality !== 'stable') {
if (this.environmentService.appQuality !== 'stable') {
this.extensionTipsService.promptRecommendedExtensionsByScenario(Constants.visualizerExtensions);
}
activeEditor.chart({ batchId: context.batchId, resultId: context.resultId });

View File

@@ -25,8 +25,8 @@ import {
RunQueryKeyboardAction, RunCurrentQueryKeyboardAction, CancelQueryKeyboardAction, RefreshIntellisenseKeyboardAction, ToggleQueryResultsKeyboardAction,
RunQueryShortcutAction, RunCurrentQueryWithActualPlanKeyboardAction, FocusOnCurrentQueryKeyboardAction, ParseSyntaxAction
} from 'sql/workbench/parts/query/browser/keyboardQueryActions';
import * as gridActions from 'sql/workbench/parts/grid/views/gridActions';
import * as gridCommands from 'sql/workbench/parts/grid/views/gridCommands';
import * as gridActions from 'sql/workbench/parts/editData/common/gridActions';
import * as gridCommands from 'sql/workbench/parts/editData/browser/gridCommands';
import * as Constants from 'sql/workbench/parts/query/common/constants';
import { localize } from 'vs/nls';
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from 'vs/workbench/common/contributions';

View File

@@ -3,7 +3,7 @@
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { IAdsTelemetryService } from 'sql/platform/telemetry/telemetry';
import { IAdsTelemetryService } from 'sql/platform/telemetry/common/telemetry';
import { Registry } from 'vs/platform/registry/common/platform';
import { Extensions as WorkbenchExtensions, IWorkbenchContributionsRegistry, IWorkbenchContribution } from 'vs/workbench/common/contributions';
import { LifecyclePhase } from 'vs/platform/lifecycle/common/lifecycle';

View File

@@ -32,7 +32,7 @@ import { registerNotebookThemes } from 'sql/workbench/parts/notebook/browser/not
import { IQueryManagementService } from 'sql/platform/query/common/queryManagement';
import { notebookConstants } from 'sql/workbench/parts/notebook/common/models/modelInterfaces';
import { ILifecycleService } from 'vs/platform/lifecycle/common/lifecycle';
import { SqlNotebookProvider } from 'sql/workbench/services/notebook/sql/sqlNotebookProvider';
import { SqlNotebookProvider } from 'sql/workbench/services/notebook/common/sql/sqlNotebookProvider';
import { IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService';
import { keys } from 'vs/base/common/map';
import { IFileService, IFileStatWithMetadata } from 'vs/platform/files/common/files';

View File

@@ -9,7 +9,7 @@ import * as vscode from 'vscode';
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
import { SQL_NOTEBOOK_PROVIDER } from 'sql/workbench/services/notebook/common/notebookService';
import { LocalContentManager } from 'sql/workbench/services/notebook/common/localContentManager';
import { SqlSessionManager } from 'sql/workbench/services/notebook/sql/sqlSessionManager';
import { SqlSessionManager } from 'sql/workbench/services/notebook/common/sql/sqlSessionManager';
export class SqlNotebookManager implements nb.NotebookProvider {
private _contentManager: nb.ContentManager;
@@ -47,4 +47,4 @@ export class SqlNotebookManager implements nb.NotebookProvider {
public get standardKernels(): nb.IStandardKernel[] {
return [];
}
}
}

View File

@@ -7,7 +7,7 @@ import { URI } from 'vs/base/common/uri';
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
import { INotebookManager, INotebookProvider, SQL_NOTEBOOK_PROVIDER } from 'sql/workbench/services/notebook/common/notebookService';
import { SqlNotebookManager } from 'sql/workbench/services/notebook/sql/sqlNotebookManager';
import { SqlNotebookManager } from 'sql/workbench/services/notebook/common/sql/sqlNotebookManager';
export class SqlNotebookProvider implements INotebookProvider {
private manager: SqlNotebookManager;
@@ -27,4 +27,4 @@ export class SqlNotebookProvider implements INotebookProvider {
handleNotebookClosed(notebookUri: URI): void {
// No-op
}
}
}

View File

@@ -0,0 +1,13 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { ShowCurrentReleaseNotesAction } from 'sql/workbench/update/electron-browser/releaseNotes';
import { SyncActionDescriptor } from 'vs/platform/actions/common/actions';
import { Registry } from 'vs/platform/registry/common/platform';
// add product update and release notes contributions
Registry.as<IWorkbenchActionRegistry>(ActionExtensions.WorkbenchActions)
.registerWorkbenchAction(new SyncActionDescriptor(ShowCurrentReleaseNotesAction, ShowCurrentReleaseNotesAction.ID, ShowCurrentReleaseNotesAction.LABEL), 'Show Getting Started');