mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-03 01:25:38 -05:00
Adds welcome message for database projects (#10820)
* Removing duplicate Import command piping * Adding welcome message + buttons * Adding welcome button to Import * Correcting typos
This commit is contained in:
@@ -94,11 +94,6 @@
|
||||
"title": "%sqlDatabaseProjects.deploy%",
|
||||
"category": "%sqlDatabaseProjects.displayName%"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.import",
|
||||
"title": "%sqlDatabaseProjects.import%",
|
||||
"category": "%sqlDatabaseProjects.displayName%"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.properties",
|
||||
"title": "%sqlDatabaseProjects.properties%",
|
||||
@@ -164,10 +159,6 @@
|
||||
"command": "sqlDatabaseProjects.deploy",
|
||||
"when": "false"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.import",
|
||||
"when": "false"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.properties",
|
||||
"when": "false"
|
||||
@@ -196,11 +187,6 @@
|
||||
"when": "view == sqlDatabaseProjectsView",
|
||||
"group": "1_dbProjectsFirst@3"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.import",
|
||||
"when": "view == sqlDatabaseProjectsView",
|
||||
"group": "1_dbProjectsFirst@4"
|
||||
},
|
||||
{
|
||||
"command": "sqlDatabaseProjects.newItem",
|
||||
"when": "view == sqlDatabaseProjectsView",
|
||||
@@ -263,7 +249,13 @@
|
||||
"when": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"viewsWelcome": [
|
||||
{
|
||||
"view": "sqlDatabaseProjectsView",
|
||||
"contents": "%sqlDatabaseProjects.welcome%"
|
||||
}
|
||||
]
|
||||
},
|
||||
"dependencies": {
|
||||
"promisify-child-process": "^3.1.1",
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"sqlDatabaseProjects.close": "Close Database Project",
|
||||
"sqlDatabaseProjects.build": "Build",
|
||||
"sqlDatabaseProjects.deploy": "Publish",
|
||||
"sqlDatabaseProjects.import": "Import",
|
||||
"sqlDatabaseProjects.importDatabase": "Import New Database Project",
|
||||
"sqlDatabaseProjects.properties": "Properties",
|
||||
"sqlDatabaseProjects.schemaCompare": "Schema Compare",
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
"sqlDatabaseProjects.newItem": "Add Item...",
|
||||
"sqlDatabaseProjects.newFolder": "Add Folder",
|
||||
|
||||
"sqlDatabaseProjects.importDatabase": "Import New Database Project",
|
||||
|
||||
"sqlDatabaseProjects.addDatabaseReference": "Add Database Reference",
|
||||
|
||||
"sqlDatabaseProjects.Settings": "Database Projects",
|
||||
"sqlDatabaseProjects.netCoreInstallLocation": "Full Path to .Net Core SDK on the machine."
|
||||
"sqlDatabaseProjects.netCoreInstallLocation": "Full Path to .Net Core SDK on the machine.",
|
||||
"sqlDatabaseProjects.welcome": "No database projects currently open.\n[New Project](command:sqlDatabaseProjects.new)\n[Open Project](command:sqlDatabaseProjects.open)\n[Import Project from Database](command:sqlDatabaseProjects.importDatabase)"
|
||||
}
|
||||
|
||||
@@ -24,7 +24,6 @@ export const databaseSchemaProvider = 'DatabaseSchemaProvider';
|
||||
|
||||
// UI Strings
|
||||
|
||||
export const noOpenProjectMessage = localize('noProjectOpenMessage', "No open database project");
|
||||
export const projectNodeName = localize('projectNodeName', "Database Project");
|
||||
export const dataSourcesNodeName = localize('dataSourcesNodeName', "Data Sources");
|
||||
export const sqlConnectionStringFriendly = localize('sqlConnectionStringFriendly', "SQL connection string");
|
||||
@@ -84,6 +83,7 @@ export const dacpacFileLocationRequired = localize('dacpacFileLocationRequired',
|
||||
export const databaseLocationRequired = localize('databaseLocation', "Database location is required for adding a reference to a database");
|
||||
export const databaseNameRequired = localize('databaseNameRequired', "Database name is required for adding a reference to a different database");
|
||||
export const invalidDataSchemaProvider = localize('invalidDataSchemaProvider', "Invalid DSP in .sqlproj file");
|
||||
export const databaseSelectionRequired = localize('databaseSelectionRequired', "Database selection is required to import a project");
|
||||
export function projectAlreadyOpened(path: string) { return localize('projectAlreadyOpened', "Project '{0}' is already opened.", path); }
|
||||
export function projectAlreadyExists(name: string, path: string) { return localize('projectAlreadyExists', "A project named {0} already exists in {1}.", name, path); }
|
||||
export function noFileExist(fileName: string) { return localize('noFileExist', "File {0} doesn't exist", fileName); }
|
||||
|
||||
@@ -4,9 +4,8 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import * as vscode from 'vscode';
|
||||
import * as constants from '../common/constants';
|
||||
|
||||
import { BaseProjectTreeItem, MessageTreeItem, SpacerTreeItem } from '../models/tree/baseTreeItem';
|
||||
import { BaseProjectTreeItem, SpacerTreeItem } from '../models/tree/baseTreeItem';
|
||||
import { ProjectRootTreeItem } from '../models/tree/projectTreeItem';
|
||||
import { Project } from '../models/project';
|
||||
|
||||
@@ -25,7 +24,7 @@ export class SqlDatabaseProjectTreeViewProvider implements vscode.TreeDataProvid
|
||||
}
|
||||
|
||||
private initialize() {
|
||||
this.roots = [new MessageTreeItem(constants.noOpenProjectMessage)];
|
||||
this.roots = [];
|
||||
}
|
||||
|
||||
public getTreeItem(element: BaseProjectTreeItem): vscode.TreeItem {
|
||||
|
||||
@@ -518,6 +518,19 @@ export class ProjectsController {
|
||||
model.serverId = profile.id;
|
||||
model.database = profile.databaseName;
|
||||
}
|
||||
else {
|
||||
const connectionId = (await this.apiWrapper.openConnectionDialog()).connectionId;
|
||||
|
||||
const databaseList = await this.apiWrapper.listDatabases(connectionId);
|
||||
const database = (await this.apiWrapper.showQuickPick(databaseList.map(dbName => { return { label: dbName }; })))?.label;
|
||||
|
||||
if (!database) {
|
||||
throw new Error(constants.databaseSelectionRequired);
|
||||
}
|
||||
|
||||
model.serverId = connectionId;
|
||||
model.database = database;
|
||||
}
|
||||
|
||||
// Get project name
|
||||
let newProjName = await this.getProjectName(model.database);
|
||||
|
||||
Reference in New Issue
Block a user